added dedicated 'record video' attachment button. fixes #2592
thank you @BlauerHunger
54
art/ic_send_videocam_away.svg
Normal file
|
@ -0,0 +1,54 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="48"
|
||||
height="48"
|
||||
viewBox="0 0 24 24"
|
||||
id="svg2"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="ic_send_videocam_away.svg">
|
||||
<metadata
|
||||
id="metadata12">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs10" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="956"
|
||||
inkscape:window-height="567"
|
||||
id="namedview8"
|
||||
showgrid="false"
|
||||
inkscape:zoom="4.9166667"
|
||||
inkscape:cx="-8.3389831"
|
||||
inkscape:cy="24"
|
||||
inkscape:window-x="960"
|
||||
inkscape:window-y="609"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="svg2" />
|
||||
<path
|
||||
d="M17 10.5V7c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1v10c0 .55.45 1 1 1h12c.55 0 1-.45 1-1v-3.5l4 4v-11l-4 4z"
|
||||
id="path6"
|
||||
style="fill:#ff9800;fill-opacity:0.627451" />
|
||||
</svg>
|
After Width: | Height: | Size: 1.6 KiB |
54
art/ic_send_videocam_dnd.svg
Normal file
|
@ -0,0 +1,54 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="48"
|
||||
height="48"
|
||||
viewBox="0 0 24 24"
|
||||
id="svg2"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="ic_send_videocam_dnd.svg">
|
||||
<metadata
|
||||
id="metadata12">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs10" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="956"
|
||||
inkscape:window-height="567"
|
||||
id="namedview8"
|
||||
showgrid="false"
|
||||
inkscape:zoom="4.9166667"
|
||||
inkscape:cx="-8.3389831"
|
||||
inkscape:cy="24"
|
||||
inkscape:window-x="960"
|
||||
inkscape:window-y="609"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="svg2" />
|
||||
<path
|
||||
d="M17 10.5V7c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1v10c0 .55.45 1 1 1h12c.55 0 1-.45 1-1v-3.5l4 4v-11l-4 4z"
|
||||
id="path6"
|
||||
style="fill:#f44336;fill-opacity:0.627451" />
|
||||
</svg>
|
After Width: | Height: | Size: 1.6 KiB |
54
art/ic_send_videocam_offline.svg
Normal file
|
@ -0,0 +1,54 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="48"
|
||||
height="48"
|
||||
viewBox="0 0 24 24"
|
||||
id="svg2"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="ic_send_videocam_offline.svg">
|
||||
<metadata
|
||||
id="metadata12">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs10" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="956"
|
||||
inkscape:window-height="567"
|
||||
id="namedview8"
|
||||
showgrid="false"
|
||||
inkscape:zoom="4.9166667"
|
||||
inkscape:cx="-8.3389831"
|
||||
inkscape:cy="24"
|
||||
inkscape:window-x="960"
|
||||
inkscape:window-y="609"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="svg2" />
|
||||
<path
|
||||
d="M17 10.5V7c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1v10c0 .55.45 1 1 1h12c.55 0 1-.45 1-1v-3.5l4 4v-11l-4 4z"
|
||||
id="path6"
|
||||
style="fill:#000000;fill-opacity:0.627451" />
|
||||
</svg>
|
After Width: | Height: | Size: 1.6 KiB |
54
art/ic_send_videocam_offline_white.svg
Normal file
|
@ -0,0 +1,54 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="48"
|
||||
height="48"
|
||||
viewBox="0 0 24 24"
|
||||
id="svg2"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="ic_send_videocam_offline_white.svg">
|
||||
<metadata
|
||||
id="metadata12">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs10" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="956"
|
||||
inkscape:window-height="567"
|
||||
id="namedview8"
|
||||
showgrid="false"
|
||||
inkscape:zoom="4.9166667"
|
||||
inkscape:cx="10.5688"
|
||||
inkscape:cy="23.898305"
|
||||
inkscape:window-x="960"
|
||||
inkscape:window-y="609"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="svg2" />
|
||||
<path
|
||||
d="M17 10.5V7c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1v10c0 .55.45 1 1 1h12c.55 0 1-.45 1-1v-3.5l4 4v-11l-4 4z"
|
||||
id="path6"
|
||||
style="fill:#ffffff;fill-opacity:0.627451" />
|
||||
</svg>
|
After Width: | Height: | Size: 1.6 KiB |
55
art/ic_send_videocam_online.svg
Normal file
|
@ -0,0 +1,55 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="48"
|
||||
height="48"
|
||||
viewBox="0 0 24 24"
|
||||
id="svg2"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="ic_send_videocam_online.svg">
|
||||
<metadata
|
||||
id="metadata10">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs8" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1916"
|
||||
inkscape:window-height="1036"
|
||||
id="namedview6"
|
||||
showgrid="false"
|
||||
inkscape:zoom="4.9166667"
|
||||
inkscape:cx="6.5084746"
|
||||
inkscape:cy="24"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="20"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="svg2" />
|
||||
<path
|
||||
d="M17 10.5V7c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1v10c0 .55.45 1 1 1h12c.55 0 1-.45 1-1v-3.5l4 4v-11l-4 4z"
|
||||
id="path4"
|
||||
style="fill:#259b24;fill-opacity:0.627451" />
|
||||
</svg>
|
After Width: | Height: | Size: 1.6 KiB |
|
@ -47,6 +47,11 @@ images = {
|
|||
'ic_send_picture_offline_white.svg' => ['ic_send_picture_offline_white', 36],
|
||||
'ic_send_picture_away.svg' => ['ic_send_picture_away', 36],
|
||||
'ic_send_picture_dnd.svg' => ['ic_send_picture_dnd', 36],
|
||||
'ic_send_videocam_online.svg' => ['ic_send_videocam_online', 36],
|
||||
'ic_send_videocam_offline.svg' => ['ic_send_videocam_offline', 36],
|
||||
'ic_send_videocam_offline_white.svg' => ['ic_send_videocam_offline_white', 36],
|
||||
'ic_send_videocam_away.svg' => ['ic_send_videocam_away', 36],
|
||||
'ic_send_videocam_dnd.svg' => ['ic_send_videocam_dnd', 36],
|
||||
'ic_notifications_none_white80.svg' => ['ic_notifications_none_white80', 24],
|
||||
'ic_notifications_off_white80.svg' => ['ic_notifications_off_white80', 24],
|
||||
'ic_notifications_paused_white80.svg' => ['ic_notifications_paused_white80', 24],
|
||||
|
|
|
@ -72,6 +72,8 @@ import eu.siacs.conversations.xmpp.jid.Jid;
|
|||
public class ConversationActivity extends XmppActivity
|
||||
implements OnAccountUpdate, OnConversationUpdate, OnRosterUpdate, OnUpdateBlocklist, XmppConnectionService.OnShowErrorToast {
|
||||
|
||||
public static final String RECENTLY_USED_QUICK_ACTION = "recently_used_quick_action";
|
||||
|
||||
public static final String ACTION_VIEW_CONVERSATION = "eu.siacs.conversations.action.VIEW";
|
||||
public static final String CONVERSATION = "conversationUuid";
|
||||
public static final String EXTRA_DOWNLOAD_UUID = "eu.siacs.conversations.download_uuid";
|
||||
|
@ -92,6 +94,7 @@ public class ConversationActivity extends XmppActivity
|
|||
public static final int ATTACHMENT_CHOICE_RECORD_VOICE = 0x0304;
|
||||
public static final int ATTACHMENT_CHOICE_LOCATION = 0x0305;
|
||||
public static final int ATTACHMENT_CHOICE_INVALID = 0x0306;
|
||||
public static final int ATTACHMENT_CHOICE_RECORD_VIDEO = 0x0307;
|
||||
private static final String STATE_OPEN_CONVERSATION = "state_open_conversation";
|
||||
private static final String STATE_PANEL_OPEN = "state_panel_open";
|
||||
private static final String STATE_PENDING_URI = "state_pending_uri";
|
||||
|
@ -500,14 +503,17 @@ public class ConversationActivity extends XmppActivity
|
|||
intent.setType("image/*");
|
||||
chooser = true;
|
||||
break;
|
||||
case ATTACHMENT_CHOICE_RECORD_VIDEO:
|
||||
intent.setAction(MediaStore.ACTION_VIDEO_CAPTURE);
|
||||
break;
|
||||
case ATTACHMENT_CHOICE_TAKE_PHOTO:
|
||||
Uri uri = xmppConnectionService.getFileBackend().getTakePhotoUri();
|
||||
mPendingImageUris.clear();
|
||||
mPendingImageUris.add(uri);
|
||||
intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);
|
||||
intent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
|
||||
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
|
||||
intent.setAction(MediaStore.ACTION_IMAGE_CAPTURE);
|
||||
intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);
|
||||
mPendingImageUris.clear();
|
||||
mPendingImageUris.add(uri);
|
||||
break;
|
||||
case ATTACHMENT_CHOICE_CHOOSE_FILE:
|
||||
chooser = true;
|
||||
|
@ -562,19 +568,29 @@ public class ConversationActivity extends XmppActivity
|
|||
return;
|
||||
}
|
||||
}
|
||||
final ConversationFragment.SendButtonAction action;
|
||||
switch (attachmentChoice) {
|
||||
case ATTACHMENT_CHOICE_LOCATION:
|
||||
getPreferences().edit().putString("recently_used_quick_action", "location").apply();
|
||||
action = ConversationFragment.SendButtonAction.SEND_LOCATION;
|
||||
break;
|
||||
case ATTACHMENT_CHOICE_RECORD_VOICE:
|
||||
getPreferences().edit().putString("recently_used_quick_action", "voice").apply();
|
||||
action = ConversationFragment.SendButtonAction.RECORD_VOICE;
|
||||
break;
|
||||
case ATTACHMENT_CHOICE_RECORD_VIDEO:
|
||||
action = ConversationFragment.SendButtonAction.RECORD_VIDEO;
|
||||
break;
|
||||
case ATTACHMENT_CHOICE_TAKE_PHOTO:
|
||||
getPreferences().edit().putString("recently_used_quick_action", "photo").apply();
|
||||
action = ConversationFragment.SendButtonAction.TAKE_PHOTO;
|
||||
break;
|
||||
case ATTACHMENT_CHOICE_CHOOSE_IMAGE:
|
||||
getPreferences().edit().putString("recently_used_quick_action", "picture").apply();
|
||||
action = ConversationFragment.SendButtonAction.CHOOSE_PICTURE;
|
||||
break;
|
||||
default:
|
||||
action = null;
|
||||
break;
|
||||
}
|
||||
if (action != null) {
|
||||
getPreferences().edit().putString(RECENTLY_USED_QUICK_ACTION,action.toString()).apply();
|
||||
}
|
||||
final Conversation conversation = getSelectedConversation();
|
||||
final int encryption = conversation.getNextEncryption();
|
||||
|
@ -805,6 +821,9 @@ public class ConversationActivity extends XmppActivity
|
|||
case R.id.attach_take_picture:
|
||||
attachFile(ATTACHMENT_CHOICE_TAKE_PHOTO);
|
||||
break;
|
||||
case R.id.attach_record_video:
|
||||
attachFile(ATTACHMENT_CHOICE_RECORD_VIDEO);
|
||||
break;
|
||||
case R.id.attach_choose_file:
|
||||
attachFile(ATTACHMENT_CHOICE_CHOOSE_FILE);
|
||||
break;
|
||||
|
@ -1414,8 +1433,9 @@ public class ConversationActivity extends XmppActivity
|
|||
attachImageToConversation(getSelectedConversation(), i.next());
|
||||
}
|
||||
}
|
||||
} else if (requestCode == ATTACHMENT_CHOICE_CHOOSE_FILE || requestCode == ATTACHMENT_CHOICE_RECORD_VOICE) {
|
||||
} else if (requestCode == ATTACHMENT_CHOICE_CHOOSE_FILE || requestCode == ATTACHMENT_CHOICE_RECORD_VOICE || requestCode == ATTACHMENT_CHOICE_RECORD_VIDEO) {
|
||||
final List<Uri> uris = extractUriFromIntent(data);
|
||||
Log.d(Config.LOGTAG,"uris "+uris.toString());
|
||||
final Conversation c = getSelectedConversation();
|
||||
final OnPresenceSelected callback = new OnPresenceSelected() {
|
||||
@Override
|
||||
|
@ -1424,7 +1444,7 @@ public class ConversationActivity extends XmppActivity
|
|||
mPendingFileUris.addAll(uris);
|
||||
if (xmppConnectionServiceBound) {
|
||||
for (Iterator<Uri> i = mPendingFileUris.iterator(); i.hasNext(); i.remove()) {
|
||||
Log.d(Config.LOGTAG,"ConversationsActivity.onActivityResult() - attaching file to conversations. CHOOSE_FILE/RECORD_VOICE");
|
||||
Log.d(Config.LOGTAG,"ConversationsActivity.onActivityResult() - attaching file to conversations. CHOOSE_FILE/RECORD_VOICE/RECORD_VIDEO");
|
||||
attachFileToConversation(c, i.next());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -46,7 +46,6 @@ import java.util.ArrayList;
|
|||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.ListIterator;
|
||||
import java.util.UUID;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
|
||||
|
@ -72,7 +71,6 @@ import eu.siacs.conversations.ui.adapter.MessageAdapter;
|
|||
import eu.siacs.conversations.ui.adapter.MessageAdapter.OnContactPictureClicked;
|
||||
import eu.siacs.conversations.ui.adapter.MessageAdapter.OnContactPictureLongClicked;
|
||||
import eu.siacs.conversations.ui.widget.ListSelectionManager;
|
||||
import eu.siacs.conversations.utils.GeoHelper;
|
||||
import eu.siacs.conversations.utils.NickValidityChecker;
|
||||
import eu.siacs.conversations.utils.UIHelper;
|
||||
import eu.siacs.conversations.xmpp.XmppConnection;
|
||||
|
@ -331,6 +329,9 @@ public class ConversationFragment extends Fragment implements EditMessage.Keyboa
|
|||
case TAKE_PHOTO:
|
||||
activity.attachFile(ConversationActivity.ATTACHMENT_CHOICE_TAKE_PHOTO);
|
||||
break;
|
||||
case RECORD_VIDEO:
|
||||
activity.attachFile(ConversationActivity.ATTACHMENT_CHOICE_RECORD_VIDEO);
|
||||
break;
|
||||
case SEND_LOCATION:
|
||||
activity.attachFile(ConversationActivity.ATTACHMENT_CHOICE_LOCATION);
|
||||
break;
|
||||
|
@ -1152,7 +1153,16 @@ public class ConversationFragment extends Fragment implements EditMessage.Keyboa
|
|||
mSendingPgpMessage.set(false);
|
||||
}
|
||||
|
||||
enum SendButtonAction {TEXT, TAKE_PHOTO, SEND_LOCATION, RECORD_VOICE, CANCEL, CHOOSE_PICTURE}
|
||||
enum SendButtonAction {TEXT, TAKE_PHOTO, SEND_LOCATION, RECORD_VOICE, CANCEL, CHOOSE_PICTURE, RECORD_VIDEO;
|
||||
|
||||
public static SendButtonAction valueOfOrDefault(String setting, SendButtonAction text) {
|
||||
try {
|
||||
return valueOf(setting);
|
||||
} catch (IllegalArgumentException e) {
|
||||
return TEXT;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private int getSendButtonImageResource(SendButtonAction action, Presence.Status status) {
|
||||
switch (action) {
|
||||
|
@ -1169,6 +1179,19 @@ public class ConversationFragment extends Fragment implements EditMessage.Keyboa
|
|||
default:
|
||||
return activity.getThemeResource(R.attr.ic_send_text_offline, R.drawable.ic_send_text_offline);
|
||||
}
|
||||
case RECORD_VIDEO:
|
||||
switch (status) {
|
||||
case CHAT:
|
||||
case ONLINE:
|
||||
return R.drawable.ic_send_videocam_online;
|
||||
case AWAY:
|
||||
return R.drawable.ic_send_videocam_away;
|
||||
case XA:
|
||||
case DND:
|
||||
return R.drawable.ic_send_videocam_dnd;
|
||||
default:
|
||||
return activity.getThemeResource(R.attr.ic_send_videocam_offline, R.drawable.ic_send_videocam_offline);
|
||||
}
|
||||
case TAKE_PHOTO:
|
||||
switch (status) {
|
||||
case CHAT:
|
||||
|
@ -1268,26 +1291,14 @@ public class ConversationFragment extends Fragment implements EditMessage.Keyboa
|
|||
} else {
|
||||
String setting = activity.getPreferences().getString("quick_action", activity.getResources().getString(R.string.quick_action));
|
||||
if (!setting.equals("none") && UIHelper.receivedLocationQuestion(conversation.getLatestMessage())) {
|
||||
setting = "location";
|
||||
} else if (setting.equals("recent")) {
|
||||
setting = activity.getPreferences().getString("recently_used_quick_action", "text");
|
||||
}
|
||||
switch (setting) {
|
||||
case "photo":
|
||||
action = SendButtonAction.TAKE_PHOTO;
|
||||
break;
|
||||
case "location":
|
||||
action = SendButtonAction.SEND_LOCATION;
|
||||
break;
|
||||
case "voice":
|
||||
action = SendButtonAction.RECORD_VOICE;
|
||||
break;
|
||||
case "picture":
|
||||
action = SendButtonAction.CHOOSE_PICTURE;
|
||||
break;
|
||||
default:
|
||||
action = SendButtonAction.TEXT;
|
||||
break;
|
||||
action = SendButtonAction.SEND_LOCATION;
|
||||
} else {
|
||||
if (setting.equals("recent")) {
|
||||
setting = activity.getPreferences().getString(ConversationActivity.RECENTLY_USED_QUICK_ACTION, SendButtonAction.TEXT.toString());
|
||||
action = SendButtonAction.valueOfOrDefault(setting,SendButtonAction.TEXT);
|
||||
} else {
|
||||
action = SendButtonAction.valueOfOrDefault(setting,SendButtonAction.TEXT);
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
|
BIN
src/main/res/drawable-hdpi/ic_attach_videocam.png
Normal file
After Width: | Height: | Size: 277 B |
BIN
src/main/res/drawable-hdpi/ic_attach_videocam_white.png
Normal file
After Width: | Height: | Size: 173 B |
BIN
src/main/res/drawable-hdpi/ic_send_videocam_away.png
Normal file
After Width: | Height: | Size: 487 B |
BIN
src/main/res/drawable-hdpi/ic_send_videocam_dnd.png
Normal file
After Width: | Height: | Size: 540 B |
BIN
src/main/res/drawable-hdpi/ic_send_videocam_offline.png
Normal file
After Width: | Height: | Size: 435 B |
BIN
src/main/res/drawable-hdpi/ic_send_videocam_offline_white.png
Normal file
After Width: | Height: | Size: 447 B |
BIN
src/main/res/drawable-hdpi/ic_send_videocam_online.png
Normal file
After Width: | Height: | Size: 533 B |
BIN
src/main/res/drawable-mdpi/ic_attach_videocam.png
Normal file
After Width: | Height: | Size: 215 B |
BIN
src/main/res/drawable-mdpi/ic_attach_videocam_white.png
Normal file
After Width: | Height: | Size: 131 B |
BIN
src/main/res/drawable-mdpi/ic_send_videocam_away.png
Normal file
After Width: | Height: | Size: 365 B |
BIN
src/main/res/drawable-mdpi/ic_send_videocam_dnd.png
Normal file
After Width: | Height: | Size: 397 B |
BIN
src/main/res/drawable-mdpi/ic_send_videocam_offline.png
Normal file
After Width: | Height: | Size: 341 B |
BIN
src/main/res/drawable-mdpi/ic_send_videocam_offline_white.png
Normal file
After Width: | Height: | Size: 340 B |
BIN
src/main/res/drawable-mdpi/ic_send_videocam_online.png
Normal file
After Width: | Height: | Size: 401 B |
BIN
src/main/res/drawable-xhdpi/ic_attach_videocam.png
Normal file
After Width: | Height: | Size: 276 B |
BIN
src/main/res/drawable-xhdpi/ic_attach_videocam_white.png
Normal file
After Width: | Height: | Size: 178 B |
BIN
src/main/res/drawable-xhdpi/ic_send_videocam_away.png
Normal file
After Width: | Height: | Size: 502 B |
BIN
src/main/res/drawable-xhdpi/ic_send_videocam_dnd.png
Normal file
After Width: | Height: | Size: 542 B |
BIN
src/main/res/drawable-xhdpi/ic_send_videocam_offline.png
Normal file
After Width: | Height: | Size: 479 B |
BIN
src/main/res/drawable-xhdpi/ic_send_videocam_offline_white.png
Normal file
After Width: | Height: | Size: 470 B |
BIN
src/main/res/drawable-xhdpi/ic_send_videocam_online.png
Normal file
After Width: | Height: | Size: 543 B |
BIN
src/main/res/drawable-xxhdpi/ic_attach_videocam.png
Normal file
After Width: | Height: | Size: 373 B |
BIN
src/main/res/drawable-xxhdpi/ic_attach_videocam_white.png
Normal file
After Width: | Height: | Size: 234 B |
BIN
src/main/res/drawable-xxhdpi/ic_send_videocam_away.png
Normal file
After Width: | Height: | Size: 705 B |
BIN
src/main/res/drawable-xxhdpi/ic_send_videocam_dnd.png
Normal file
After Width: | Height: | Size: 777 B |
BIN
src/main/res/drawable-xxhdpi/ic_send_videocam_offline.png
Normal file
After Width: | Height: | Size: 650 B |
BIN
src/main/res/drawable-xxhdpi/ic_send_videocam_offline_white.png
Normal file
After Width: | Height: | Size: 670 B |
BIN
src/main/res/drawable-xxhdpi/ic_send_videocam_online.png
Normal file
After Width: | Height: | Size: 775 B |
BIN
src/main/res/drawable-xxxhdpi/ic_attach_videocam.png
Normal file
After Width: | Height: | Size: 429 B |
BIN
src/main/res/drawable-xxxhdpi/ic_attach_videocam_white.png
Normal file
After Width: | Height: | Size: 290 B |
BIN
src/main/res/drawable-xxxhdpi/ic_send_videocam_away.png
Normal file
After Width: | Height: | Size: 821 B |
BIN
src/main/res/drawable-xxxhdpi/ic_send_videocam_dnd.png
Normal file
After Width: | Height: | Size: 884 B |
BIN
src/main/res/drawable-xxxhdpi/ic_send_videocam_offline.png
Normal file
After Width: | Height: | Size: 772 B |
BIN
src/main/res/drawable-xxxhdpi/ic_send_videocam_offline_white.png
Normal file
After Width: | Height: | Size: 777 B |
BIN
src/main/res/drawable-xxxhdpi/ic_send_videocam_online.png
Normal file
After Width: | Height: | Size: 897 B |
|
@ -2,19 +2,9 @@
|
|||
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
|
||||
|
||||
<item
|
||||
android:id="@+id/attach_location"
|
||||
android:title="@string/send_location"
|
||||
android:icon="?attr/ic_attach_location"/>
|
||||
|
||||
<item
|
||||
android:id="@+id/attach_record_voice"
|
||||
android:title="@string/attach_record_voice"
|
||||
android:icon="?attr/ic_attach_record"/>
|
||||
|
||||
<item
|
||||
android:id="@+id/attach_take_picture"
|
||||
android:title="@string/attach_take_picture"
|
||||
android:icon="?attr/ic_attach_camera"/>
|
||||
android:id="@+id/attach_choose_file"
|
||||
android:title="@string/choose_file"
|
||||
android:icon="?attr/ic_attach_document"/>
|
||||
|
||||
<item
|
||||
android:id="@+id/attach_choose_picture"
|
||||
|
@ -22,8 +12,23 @@
|
|||
android:icon="?attr/ic_attach_photo"/>
|
||||
|
||||
<item
|
||||
android:id="@+id/attach_choose_file"
|
||||
android:title="@string/choose_file"
|
||||
android:icon="?attr/ic_attach_document"/>
|
||||
android:id="@+id/attach_take_picture"
|
||||
android:title="@string/attach_take_picture"
|
||||
android:icon="?attr/ic_attach_camera"/>
|
||||
|
||||
<item
|
||||
android:id="@+id/attach_record_video"
|
||||
android:title="@string/attach_record_video"
|
||||
android:icon="?attr/ic_attach_videocam"/>
|
||||
|
||||
<item
|
||||
android:id="@+id/attach_record_voice"
|
||||
android:title="@string/attach_record_voice"
|
||||
android:icon="?attr/ic_attach_record"/>
|
||||
|
||||
<item
|
||||
android:id="@+id/attach_location"
|
||||
android:title="@string/send_location"
|
||||
android:icon="?attr/ic_attach_location"/>
|
||||
|
||||
</menu>
|
|
@ -29,9 +29,11 @@
|
|||
<item name="attr/ic_send_photo_offline">@drawable/ic_send_photo_offline</item>
|
||||
<item name="attr/ic_send_picture_offline">@drawable/ic_send_picture_offline</item>
|
||||
<item name="attr/ic_send_text_offline">@drawable/ic_send_text_offline</item>
|
||||
<item name="attr/ic_send_videocam_offline">@drawable/ic_send_videocam_offline</item>
|
||||
<item name="attr/ic_send_voice_offline">@drawable/ic_send_voice_offline</item>
|
||||
|
||||
<item name="attr/ic_attach_camera">@drawable/ic_attach_camera</item>
|
||||
<item name="attr/ic_attach_videocam">@drawable/ic_attach_videocam</item>
|
||||
<item name="attr/ic_attach_document">@drawable/ic_attach_document</item>
|
||||
<item name="attr/ic_attach_location">@drawable/ic_attach_location</item>
|
||||
<item name="attr/ic_attach_photo">@drawable/ic_attach_photo</item>
|
||||
|
@ -107,9 +109,11 @@
|
|||
<item name="attr/ic_send_photo_offline">@drawable/ic_send_photo_offline_white</item>
|
||||
<item name="attr/ic_send_picture_offline">@drawable/ic_send_picture_offline_white</item>
|
||||
<item name="attr/ic_send_text_offline">@drawable/ic_send_text_offline_white</item>
|
||||
<item name="attr/ic_send_videocam_offline">@drawable/ic_send_videocam_offline_white</item>
|
||||
<item name="attr/ic_send_voice_offline">@drawable/ic_send_voice_offline_white</item>
|
||||
|
||||
<item name="attr/ic_attach_camera">@drawable/ic_attach_camera_white</item>
|
||||
<item name="attr/ic_attach_videocam">@drawable/ic_attach_videocam_white</item>
|
||||
<item name="attr/ic_attach_document">@drawable/ic_attach_document_white</item>
|
||||
<item name="attr/ic_attach_location">@drawable/ic_attach_location_white</item>
|
||||
<item name="attr/ic_attach_photo">@drawable/ic_attach_photo_white</item>
|
||||
|
|
|
@ -52,6 +52,7 @@
|
|||
<item>@string/none</item>
|
||||
<item>@string/recently_used</item>
|
||||
<item>@string/attach_take_picture</item>
|
||||
<item>@string/attach_record_video</item>
|
||||
<item>@string/attach_choose_picture</item>
|
||||
<item>@string/attach_record_voice</item>
|
||||
<item>@string/send_location</item>
|
||||
|
@ -60,10 +61,11 @@
|
|||
<string-array name="quick_action_values">
|
||||
<item>none</item>
|
||||
<item>recent</item>
|
||||
<item>photo</item>
|
||||
<item>picture</item>
|
||||
<item>voice</item>
|
||||
<item>location</item>
|
||||
<item>TAKE_PHOTO</item>
|
||||
<item>RECORD_VIDEO</item>
|
||||
<item>CHOOSE_PICTURE</item>
|
||||
<item>RECORD_VOICE</item>
|
||||
<item>SEND_LOCATION</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="picture_compression_values">
|
||||
|
|
|
@ -20,9 +20,11 @@
|
|||
<attr name="ic_send_photo_offline" format="reference"/>
|
||||
<attr name="ic_send_picture_offline" format="reference"/>
|
||||
<attr name="ic_send_text_offline" format="reference"/>
|
||||
<attr name="ic_send_videocam_offline" format="reference"/>
|
||||
<attr name="ic_send_voice_offline" format="reference"/>
|
||||
|
||||
<attr name="ic_attach_camera" format="reference"/>
|
||||
<attr name="ic_attach_videocam" format="reference"/>
|
||||
<attr name="ic_attach_document" format="reference"/>
|
||||
<attr name="ic_attach_location" format="reference"/>
|
||||
<attr name="ic_attach_photo" format="reference"/>
|
||||
|
|
|
@ -724,4 +724,5 @@
|
|||
<string name="network_is_unreachable">Network is unreachable</string>
|
||||
<string name="certificate_does_not_contain_jid">Certificate does not contain a Jabber ID</string>
|
||||
<string name="server_info_partial">partial</string>
|
||||
<string name="attach_record_video">Record video</string>
|
||||
</resources>
|
||||
|
|
|
@ -25,9 +25,11 @@
|
|||
<item name="attr/ic_send_photo_offline">@drawable/ic_send_photo_offline</item>
|
||||
<item name="attr/ic_send_picture_offline">@drawable/ic_send_picture_offline</item>
|
||||
<item name="attr/ic_send_text_offline">@drawable/ic_send_text_offline</item>
|
||||
<item name="attr/ic_send_videocam_offline">@drawable/ic_send_videocam_offline</item>
|
||||
<item name="attr/ic_send_voice_offline">@drawable/ic_send_voice_offline</item>
|
||||
|
||||
<item name="attr/ic_attach_camera">@drawable/ic_attach_camera</item>
|
||||
<item name="attr/ic_attach_videocam">@drawable/ic_attach_videocam</item>
|
||||
<item name="attr/ic_attach_document">@drawable/ic_attach_document</item>
|
||||
<item name="attr/ic_attach_location">@drawable/ic_attach_location</item>
|
||||
<item name="attr/ic_attach_photo">@drawable/ic_attach_photo</item>
|
||||
|
@ -100,9 +102,11 @@
|
|||
<item name="attr/ic_send_photo_offline">@drawable/ic_send_photo_offline_white</item>
|
||||
<item name="attr/ic_send_picture_offline">@drawable/ic_send_picture_offline_white</item>
|
||||
<item name="attr/ic_send_text_offline">@drawable/ic_send_text_offline_white</item>
|
||||
<item name="attr/ic_send_videocam_offline">@drawable/ic_send_videocam_offline_white</item>
|
||||
<item name="attr/ic_send_voice_offline">@drawable/ic_send_voice_offline_white</item>
|
||||
|
||||
<item name="attr/ic_attach_camera">@drawable/ic_attach_camera_white</item>
|
||||
<item name="attr/ic_attach_videocam">@drawable/ic_attach_videocam_white</item>
|
||||
<item name="attr/ic_attach_document">@drawable/ic_attach_document_white</item>
|
||||
<item name="attr/ic_attach_location">@drawable/ic_attach_location_white</item>
|
||||
<item name="attr/ic_attach_photo">@drawable/ic_attach_photo_white</item>
|
||||
|
|