diff --git a/art/ic_send_videocam_away.svg b/art/ic_send_videocam_away.svg new file mode 100644 index 0000000000000000000000000000000000000000..52b8478cfa03526a59014d3883bbbad6ea389836 --- /dev/null +++ b/art/ic_send_videocam_away.svg @@ -0,0 +1,54 @@ + + + + + + image/svg+xml + + + + + + + + diff --git a/art/ic_send_videocam_dnd.svg b/art/ic_send_videocam_dnd.svg new file mode 100644 index 0000000000000000000000000000000000000000..254e3859a1180b3fd8ec69fe795cd64fe0b5c9cf --- /dev/null +++ b/art/ic_send_videocam_dnd.svg @@ -0,0 +1,54 @@ + + + + + + image/svg+xml + + + + + + + + diff --git a/art/ic_send_videocam_offline.svg b/art/ic_send_videocam_offline.svg new file mode 100644 index 0000000000000000000000000000000000000000..91a7778d6557a17ddac6c1e8dc7d863a5fe215b7 --- /dev/null +++ b/art/ic_send_videocam_offline.svg @@ -0,0 +1,54 @@ + + + + + + image/svg+xml + + + + + + + + diff --git a/art/ic_send_videocam_offline_white.svg b/art/ic_send_videocam_offline_white.svg new file mode 100644 index 0000000000000000000000000000000000000000..67f5563a6337794307065c4e5f9eea4a8ecf654c --- /dev/null +++ b/art/ic_send_videocam_offline_white.svg @@ -0,0 +1,54 @@ + + + + + + image/svg+xml + + + + + + + + diff --git a/art/ic_send_videocam_online.svg b/art/ic_send_videocam_online.svg new file mode 100644 index 0000000000000000000000000000000000000000..e4f671b1dafdf9c1efd1cf352ebd919a4e1bbeb0 --- /dev/null +++ b/art/ic_send_videocam_online.svg @@ -0,0 +1,55 @@ + + + + + + image/svg+xml + + + + + + + + + diff --git a/art/render.rb b/art/render.rb index e20b951c7c318616c96ef3cb7ff3ea4995a8ca76..4c947f93cc806ef968823661cdafc55a9b95643a 100755 --- a/art/render.rb +++ b/art/render.rb @@ -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], diff --git a/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java b/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java index 44c31b45b207f9eeffbffa9ea2522c22fba6841b..8ec813ae276710789ca34abd8eb346d891bcf65e 100644 --- a/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java +++ b/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java @@ -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,20 +568,30 @@ 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(); final int mode = conversation.getMode(); @@ -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 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 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()); } } diff --git a/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java b/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java index bdfc29956f0a9d3a13f9ebd4ef4a045c7ac69f11..d0af53c3b08d6583de81a97e26438a8eb3cf1c47 100644 --- a/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java +++ b/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java @@ -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 { diff --git a/src/main/res/drawable-hdpi/ic_attach_videocam.png b/src/main/res/drawable-hdpi/ic_attach_videocam.png new file mode 100644 index 0000000000000000000000000000000000000000..84cff7d9146d357de775e66c89303c38a1720e0e Binary files /dev/null and b/src/main/res/drawable-hdpi/ic_attach_videocam.png differ diff --git a/src/main/res/drawable-hdpi/ic_attach_videocam_white.png b/src/main/res/drawable-hdpi/ic_attach_videocam_white.png new file mode 100644 index 0000000000000000000000000000000000000000..d83e0d50c3dd1aa384568f658f815b35819462a0 Binary files /dev/null and b/src/main/res/drawable-hdpi/ic_attach_videocam_white.png differ diff --git a/src/main/res/drawable-hdpi/ic_send_videocam_away.png b/src/main/res/drawable-hdpi/ic_send_videocam_away.png new file mode 100644 index 0000000000000000000000000000000000000000..c4f3dbdf5a50f26059a616706478b33bd1ef50c7 Binary files /dev/null and b/src/main/res/drawable-hdpi/ic_send_videocam_away.png differ diff --git a/src/main/res/drawable-hdpi/ic_send_videocam_dnd.png b/src/main/res/drawable-hdpi/ic_send_videocam_dnd.png new file mode 100644 index 0000000000000000000000000000000000000000..9a1060012066ee9d04ff99aa858dc6213001842e Binary files /dev/null and b/src/main/res/drawable-hdpi/ic_send_videocam_dnd.png differ diff --git a/src/main/res/drawable-hdpi/ic_send_videocam_offline.png b/src/main/res/drawable-hdpi/ic_send_videocam_offline.png new file mode 100644 index 0000000000000000000000000000000000000000..ae5a88fd5db42e489ca405fdf9003ced11c8c2cd Binary files /dev/null and b/src/main/res/drawable-hdpi/ic_send_videocam_offline.png differ diff --git a/src/main/res/drawable-hdpi/ic_send_videocam_offline_white.png b/src/main/res/drawable-hdpi/ic_send_videocam_offline_white.png new file mode 100644 index 0000000000000000000000000000000000000000..aeab525bf7fb75b77a531654986fca4c712a9ed9 Binary files /dev/null and b/src/main/res/drawable-hdpi/ic_send_videocam_offline_white.png differ diff --git a/src/main/res/drawable-hdpi/ic_send_videocam_online.png b/src/main/res/drawable-hdpi/ic_send_videocam_online.png new file mode 100644 index 0000000000000000000000000000000000000000..ece12febbc99008bb48a3bcc9782c637dcdba66f Binary files /dev/null and b/src/main/res/drawable-hdpi/ic_send_videocam_online.png differ diff --git a/src/main/res/drawable-mdpi/ic_attach_videocam.png b/src/main/res/drawable-mdpi/ic_attach_videocam.png new file mode 100644 index 0000000000000000000000000000000000000000..3d6208975c24df9f96af04917051f623fd80d5a6 Binary files /dev/null and b/src/main/res/drawable-mdpi/ic_attach_videocam.png differ diff --git a/src/main/res/drawable-mdpi/ic_attach_videocam_white.png b/src/main/res/drawable-mdpi/ic_attach_videocam_white.png new file mode 100644 index 0000000000000000000000000000000000000000..d146209a5145962cfa3226918807fb663d2c7267 Binary files /dev/null and b/src/main/res/drawable-mdpi/ic_attach_videocam_white.png differ diff --git a/src/main/res/drawable-mdpi/ic_send_videocam_away.png b/src/main/res/drawable-mdpi/ic_send_videocam_away.png new file mode 100644 index 0000000000000000000000000000000000000000..bc71ca3e81b9d4207079b7749cc49b6da57405a1 Binary files /dev/null and b/src/main/res/drawable-mdpi/ic_send_videocam_away.png differ diff --git a/src/main/res/drawable-mdpi/ic_send_videocam_dnd.png b/src/main/res/drawable-mdpi/ic_send_videocam_dnd.png new file mode 100644 index 0000000000000000000000000000000000000000..15f07b9df57d7607877f4cca59bf1c50c76fee44 Binary files /dev/null and b/src/main/res/drawable-mdpi/ic_send_videocam_dnd.png differ diff --git a/src/main/res/drawable-mdpi/ic_send_videocam_offline.png b/src/main/res/drawable-mdpi/ic_send_videocam_offline.png new file mode 100644 index 0000000000000000000000000000000000000000..39126bf2df02ffcf650885c640f2c6899ac99da7 Binary files /dev/null and b/src/main/res/drawable-mdpi/ic_send_videocam_offline.png differ diff --git a/src/main/res/drawable-mdpi/ic_send_videocam_offline_white.png b/src/main/res/drawable-mdpi/ic_send_videocam_offline_white.png new file mode 100644 index 0000000000000000000000000000000000000000..04048266c8e728f8e5308b8ea0d9bd0204ba75a6 Binary files /dev/null and b/src/main/res/drawable-mdpi/ic_send_videocam_offline_white.png differ diff --git a/src/main/res/drawable-mdpi/ic_send_videocam_online.png b/src/main/res/drawable-mdpi/ic_send_videocam_online.png new file mode 100644 index 0000000000000000000000000000000000000000..071498ee84f18c3887aa53d2fddda632dc185d41 Binary files /dev/null and b/src/main/res/drawable-mdpi/ic_send_videocam_online.png differ diff --git a/src/main/res/drawable-xhdpi/ic_attach_videocam.png b/src/main/res/drawable-xhdpi/ic_attach_videocam.png new file mode 100644 index 0000000000000000000000000000000000000000..44bb7737cd26c46b876871e967a23ae175436345 Binary files /dev/null and b/src/main/res/drawable-xhdpi/ic_attach_videocam.png differ diff --git a/src/main/res/drawable-xhdpi/ic_attach_videocam_white.png b/src/main/res/drawable-xhdpi/ic_attach_videocam_white.png new file mode 100644 index 0000000000000000000000000000000000000000..1b2583d34e8bafff26a20f89c9d7cacf4525617e Binary files /dev/null and b/src/main/res/drawable-xhdpi/ic_attach_videocam_white.png differ diff --git a/src/main/res/drawable-xhdpi/ic_send_videocam_away.png b/src/main/res/drawable-xhdpi/ic_send_videocam_away.png new file mode 100644 index 0000000000000000000000000000000000000000..321443f52c8c306759a9adccac3dc0144ffdb9bc Binary files /dev/null and b/src/main/res/drawable-xhdpi/ic_send_videocam_away.png differ diff --git a/src/main/res/drawable-xhdpi/ic_send_videocam_dnd.png b/src/main/res/drawable-xhdpi/ic_send_videocam_dnd.png new file mode 100644 index 0000000000000000000000000000000000000000..c3e0fbf369878efdadf24f171dd2e0ccde296143 Binary files /dev/null and b/src/main/res/drawable-xhdpi/ic_send_videocam_dnd.png differ diff --git a/src/main/res/drawable-xhdpi/ic_send_videocam_offline.png b/src/main/res/drawable-xhdpi/ic_send_videocam_offline.png new file mode 100644 index 0000000000000000000000000000000000000000..d9b8750fbc8c77f8c1530cdad4d2ac1dc1c94432 Binary files /dev/null and b/src/main/res/drawable-xhdpi/ic_send_videocam_offline.png differ diff --git a/src/main/res/drawable-xhdpi/ic_send_videocam_offline_white.png b/src/main/res/drawable-xhdpi/ic_send_videocam_offline_white.png new file mode 100644 index 0000000000000000000000000000000000000000..0dd153812433cfdbea2412d163969d2f880e6abb Binary files /dev/null and b/src/main/res/drawable-xhdpi/ic_send_videocam_offline_white.png differ diff --git a/src/main/res/drawable-xhdpi/ic_send_videocam_online.png b/src/main/res/drawable-xhdpi/ic_send_videocam_online.png new file mode 100644 index 0000000000000000000000000000000000000000..96cd271f3e1076514a4d8f74d7141b06ee0be4f4 Binary files /dev/null and b/src/main/res/drawable-xhdpi/ic_send_videocam_online.png differ diff --git a/src/main/res/drawable-xxhdpi/ic_attach_videocam.png b/src/main/res/drawable-xxhdpi/ic_attach_videocam.png new file mode 100644 index 0000000000000000000000000000000000000000..68eb877815876041340cb93f4a753cd65b291e02 Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ic_attach_videocam.png differ diff --git a/src/main/res/drawable-xxhdpi/ic_attach_videocam_white.png b/src/main/res/drawable-xxhdpi/ic_attach_videocam_white.png new file mode 100644 index 0000000000000000000000000000000000000000..44c28e2f2830f927973beaa3a143ddfe439f20ed Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ic_attach_videocam_white.png differ diff --git a/src/main/res/drawable-xxhdpi/ic_send_videocam_away.png b/src/main/res/drawable-xxhdpi/ic_send_videocam_away.png new file mode 100644 index 0000000000000000000000000000000000000000..f86475ff98a6fee8011f5c4f51530a70b84d8c51 Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ic_send_videocam_away.png differ diff --git a/src/main/res/drawable-xxhdpi/ic_send_videocam_dnd.png b/src/main/res/drawable-xxhdpi/ic_send_videocam_dnd.png new file mode 100644 index 0000000000000000000000000000000000000000..fd1d5d5ebaf167d9e7eba60299bb8483a080276d Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ic_send_videocam_dnd.png differ diff --git a/src/main/res/drawable-xxhdpi/ic_send_videocam_offline.png b/src/main/res/drawable-xxhdpi/ic_send_videocam_offline.png new file mode 100644 index 0000000000000000000000000000000000000000..0d5f52d92cc9ab3b3cae7cbfd4a6f1889c8b69e4 Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ic_send_videocam_offline.png differ diff --git a/src/main/res/drawable-xxhdpi/ic_send_videocam_offline_white.png b/src/main/res/drawable-xxhdpi/ic_send_videocam_offline_white.png new file mode 100644 index 0000000000000000000000000000000000000000..8df2bf1900df033084d6d944ccaab7f2831a990e Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ic_send_videocam_offline_white.png differ diff --git a/src/main/res/drawable-xxhdpi/ic_send_videocam_online.png b/src/main/res/drawable-xxhdpi/ic_send_videocam_online.png new file mode 100644 index 0000000000000000000000000000000000000000..400b4a63935d039c161f8d4c79cd344522a1462c Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ic_send_videocam_online.png differ diff --git a/src/main/res/drawable-xxxhdpi/ic_attach_videocam.png b/src/main/res/drawable-xxxhdpi/ic_attach_videocam.png new file mode 100644 index 0000000000000000000000000000000000000000..992d6aaedb09fccca431f99ab09a507bd2443186 Binary files /dev/null and b/src/main/res/drawable-xxxhdpi/ic_attach_videocam.png differ diff --git a/src/main/res/drawable-xxxhdpi/ic_attach_videocam_white.png b/src/main/res/drawable-xxxhdpi/ic_attach_videocam_white.png new file mode 100644 index 0000000000000000000000000000000000000000..ed20c0706292403018b019329a4608db85d99e06 Binary files /dev/null and b/src/main/res/drawable-xxxhdpi/ic_attach_videocam_white.png differ diff --git a/src/main/res/drawable-xxxhdpi/ic_send_videocam_away.png b/src/main/res/drawable-xxxhdpi/ic_send_videocam_away.png new file mode 100644 index 0000000000000000000000000000000000000000..174b4ec604901c8b5352cd403ed38d4accb81a4f Binary files /dev/null and b/src/main/res/drawable-xxxhdpi/ic_send_videocam_away.png differ diff --git a/src/main/res/drawable-xxxhdpi/ic_send_videocam_dnd.png b/src/main/res/drawable-xxxhdpi/ic_send_videocam_dnd.png new file mode 100644 index 0000000000000000000000000000000000000000..5abe11829710626dc60d47d174bf5273fb8342a5 Binary files /dev/null and b/src/main/res/drawable-xxxhdpi/ic_send_videocam_dnd.png differ diff --git a/src/main/res/drawable-xxxhdpi/ic_send_videocam_offline.png b/src/main/res/drawable-xxxhdpi/ic_send_videocam_offline.png new file mode 100644 index 0000000000000000000000000000000000000000..488d28bfe1f3bcf6c91ea638d81c277472586134 Binary files /dev/null and b/src/main/res/drawable-xxxhdpi/ic_send_videocam_offline.png differ diff --git a/src/main/res/drawable-xxxhdpi/ic_send_videocam_offline_white.png b/src/main/res/drawable-xxxhdpi/ic_send_videocam_offline_white.png new file mode 100644 index 0000000000000000000000000000000000000000..704c63c4d1ab36f58523f6b7545778f9c5abd203 Binary files /dev/null and b/src/main/res/drawable-xxxhdpi/ic_send_videocam_offline_white.png differ diff --git a/src/main/res/drawable-xxxhdpi/ic_send_videocam_online.png b/src/main/res/drawable-xxxhdpi/ic_send_videocam_online.png new file mode 100644 index 0000000000000000000000000000000000000000..79b1b985ca3a28167bedbdab5938341a882ecc82 Binary files /dev/null and b/src/main/res/drawable-xxxhdpi/ic_send_videocam_online.png differ diff --git a/src/main/res/menu/attachment_choices.xml b/src/main/res/menu/attachment_choices.xml index 28372c0a3b4d87669ac1cba3a5c9827551105c30..62e3f9acbbe57a385c1e0804f11363ba0a57640c 100644 --- a/src/main/res/menu/attachment_choices.xml +++ b/src/main/res/menu/attachment_choices.xml @@ -2,14 +2,14 @@ + android:id="@+id/attach_choose_file" + android:title="@string/choose_file" + android:icon="?attr/ic_attach_document"/> + android:id="@+id/attach_choose_picture" + android:title="@string/attach_choose_picture" + android:icon="?attr/ic_attach_photo"/> + android:id="@+id/attach_record_video" + android:title="@string/attach_record_video" + android:icon="?attr/ic_attach_videocam"/> + android:id="@+id/attach_record_voice" + android:title="@string/attach_record_voice" + android:icon="?attr/ic_attach_record"/> + + \ No newline at end of file diff --git a/src/main/res/values-v21/themes.xml b/src/main/res/values-v21/themes.xml index 8e57ef2d054506f08f2ab85bc12f6119bd0d4ac0..36c07d78e06d461d543b2c3a5e640e1b90fa82a3 100644 --- a/src/main/res/values-v21/themes.xml +++ b/src/main/res/values-v21/themes.xml @@ -29,9 +29,11 @@ @drawable/ic_send_photo_offline @drawable/ic_send_picture_offline @drawable/ic_send_text_offline + @drawable/ic_send_videocam_offline @drawable/ic_send_voice_offline @drawable/ic_attach_camera + @drawable/ic_attach_videocam @drawable/ic_attach_document @drawable/ic_attach_location @drawable/ic_attach_photo @@ -107,9 +109,11 @@ @drawable/ic_send_photo_offline_white @drawable/ic_send_picture_offline_white @drawable/ic_send_text_offline_white + @drawable/ic_send_videocam_offline_white @drawable/ic_send_voice_offline_white @drawable/ic_attach_camera_white + @drawable/ic_attach_videocam_white @drawable/ic_attach_document_white @drawable/ic_attach_location_white @drawable/ic_attach_photo_white diff --git a/src/main/res/values/arrays.xml b/src/main/res/values/arrays.xml index 3ce79deecc7e03f67e6e0a436f438e13544676f4..63838b7e36a2f377460da72be5acdf0f5f0fa02e 100644 --- a/src/main/res/values/arrays.xml +++ b/src/main/res/values/arrays.xml @@ -52,6 +52,7 @@ @string/none @string/recently_used @string/attach_take_picture + @string/attach_record_video @string/attach_choose_picture @string/attach_record_voice @string/send_location @@ -60,10 +61,11 @@ none recent - photo - picture - voice - location + TAKE_PHOTO + RECORD_VIDEO + CHOOSE_PICTURE + RECORD_VOICE + SEND_LOCATION diff --git a/src/main/res/values/attrs.xml b/src/main/res/values/attrs.xml index 33637e5b5f4d5a805f666b7014204d4cc9f4a5cb..f844894ba27cfe5b99d60042334cd80a3346b4f3 100644 --- a/src/main/res/values/attrs.xml +++ b/src/main/res/values/attrs.xml @@ -20,9 +20,11 @@ + + diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml index 5e86ca708d6b1089793588cf01ad6e03dbbd4dd6..0be4878c0fbd3b0d811069c494d819c6934447f3 100644 --- a/src/main/res/values/strings.xml +++ b/src/main/res/values/strings.xml @@ -724,4 +724,5 @@ Network is unreachable Certificate does not contain a Jabber ID partial + Record video diff --git a/src/main/res/values/themes.xml b/src/main/res/values/themes.xml index c4c925f325ab7e27de05c1a41c4b416c16bb0966..61ebb09246daa040d5d686537f5080b4f8781a71 100644 --- a/src/main/res/values/themes.xml +++ b/src/main/res/values/themes.xml @@ -25,9 +25,11 @@ @drawable/ic_send_photo_offline @drawable/ic_send_picture_offline @drawable/ic_send_text_offline + @drawable/ic_send_videocam_offline @drawable/ic_send_voice_offline @drawable/ic_attach_camera + @drawable/ic_attach_videocam @drawable/ic_attach_document @drawable/ic_attach_location @drawable/ic_attach_photo @@ -100,9 +102,11 @@ @drawable/ic_send_photo_offline_white @drawable/ic_send_picture_offline_white @drawable/ic_send_text_offline_white + @drawable/ic_send_videocam_offline_white @drawable/ic_send_voice_offline_white @drawable/ic_attach_camera_white + @drawable/ic_attach_videocam_white @drawable/ic_attach_document_white @drawable/ic_attach_location_white @drawable/ic_attach_photo_white