From d4c16b5a8546e617fd77705b2ca097c04543e0ce Mon Sep 17 00:00:00 2001 From: Daniel Gultsch Date: Mon, 18 Sep 2017 11:51:47 +0200 Subject: [PATCH] added dedicated 'record video' attachment button. fixes #2592 thank you @BlauerHunger --- art/ic_send_videocam_away.svg | 54 +++++++++++++++++ art/ic_send_videocam_dnd.svg | 54 +++++++++++++++++ art/ic_send_videocam_offline.svg | 54 +++++++++++++++++ art/ic_send_videocam_offline_white.svg | 54 +++++++++++++++++ art/ic_send_videocam_online.svg | 55 +++++++++++++++++ art/render.rb | 5 ++ .../ui/ConversationActivity.java | 38 +++++++++--- .../ui/ConversationFragment.java | 57 +++++++++++------- .../res/drawable-hdpi/ic_attach_videocam.png | Bin 0 -> 277 bytes .../ic_attach_videocam_white.png | Bin 0 -> 173 bytes .../drawable-hdpi/ic_send_videocam_away.png | Bin 0 -> 487 bytes .../drawable-hdpi/ic_send_videocam_dnd.png | Bin 0 -> 540 bytes .../ic_send_videocam_offline.png | Bin 0 -> 435 bytes .../ic_send_videocam_offline_white.png | Bin 0 -> 447 bytes .../drawable-hdpi/ic_send_videocam_online.png | Bin 0 -> 533 bytes .../res/drawable-mdpi/ic_attach_videocam.png | Bin 0 -> 215 bytes .../ic_attach_videocam_white.png | Bin 0 -> 131 bytes .../drawable-mdpi/ic_send_videocam_away.png | Bin 0 -> 365 bytes .../drawable-mdpi/ic_send_videocam_dnd.png | Bin 0 -> 397 bytes .../ic_send_videocam_offline.png | Bin 0 -> 341 bytes .../ic_send_videocam_offline_white.png | Bin 0 -> 340 bytes .../drawable-mdpi/ic_send_videocam_online.png | Bin 0 -> 401 bytes .../res/drawable-xhdpi/ic_attach_videocam.png | Bin 0 -> 276 bytes .../ic_attach_videocam_white.png | Bin 0 -> 178 bytes .../drawable-xhdpi/ic_send_videocam_away.png | Bin 0 -> 502 bytes .../drawable-xhdpi/ic_send_videocam_dnd.png | Bin 0 -> 542 bytes .../ic_send_videocam_offline.png | Bin 0 -> 479 bytes .../ic_send_videocam_offline_white.png | Bin 0 -> 470 bytes .../ic_send_videocam_online.png | Bin 0 -> 543 bytes .../drawable-xxhdpi/ic_attach_videocam.png | Bin 0 -> 373 bytes .../ic_attach_videocam_white.png | Bin 0 -> 234 bytes .../drawable-xxhdpi/ic_send_videocam_away.png | Bin 0 -> 705 bytes .../drawable-xxhdpi/ic_send_videocam_dnd.png | Bin 0 -> 777 bytes .../ic_send_videocam_offline.png | Bin 0 -> 650 bytes .../ic_send_videocam_offline_white.png | Bin 0 -> 670 bytes .../ic_send_videocam_online.png | Bin 0 -> 775 bytes .../drawable-xxxhdpi/ic_attach_videocam.png | Bin 0 -> 429 bytes .../ic_attach_videocam_white.png | Bin 0 -> 290 bytes .../ic_send_videocam_away.png | Bin 0 -> 821 bytes .../drawable-xxxhdpi/ic_send_videocam_dnd.png | Bin 0 -> 884 bytes .../ic_send_videocam_offline.png | Bin 0 -> 772 bytes .../ic_send_videocam_offline_white.png | Bin 0 -> 777 bytes .../ic_send_videocam_online.png | Bin 0 -> 897 bytes src/main/res/menu/attachment_choices.xml | 37 +++++++----- src/main/res/values-v21/themes.xml | 4 ++ src/main/res/values/arrays.xml | 10 +-- src/main/res/values/attrs.xml | 2 + src/main/res/values/strings.xml | 1 + src/main/res/values/themes.xml | 4 ++ 49 files changed, 377 insertions(+), 52 deletions(-) create mode 100644 art/ic_send_videocam_away.svg create mode 100644 art/ic_send_videocam_dnd.svg create mode 100644 art/ic_send_videocam_offline.svg create mode 100644 art/ic_send_videocam_offline_white.svg create mode 100644 art/ic_send_videocam_online.svg create mode 100644 src/main/res/drawable-hdpi/ic_attach_videocam.png create mode 100644 src/main/res/drawable-hdpi/ic_attach_videocam_white.png create mode 100644 src/main/res/drawable-hdpi/ic_send_videocam_away.png create mode 100644 src/main/res/drawable-hdpi/ic_send_videocam_dnd.png create mode 100644 src/main/res/drawable-hdpi/ic_send_videocam_offline.png create mode 100644 src/main/res/drawable-hdpi/ic_send_videocam_offline_white.png create mode 100644 src/main/res/drawable-hdpi/ic_send_videocam_online.png create mode 100644 src/main/res/drawable-mdpi/ic_attach_videocam.png create mode 100644 src/main/res/drawable-mdpi/ic_attach_videocam_white.png create mode 100644 src/main/res/drawable-mdpi/ic_send_videocam_away.png create mode 100644 src/main/res/drawable-mdpi/ic_send_videocam_dnd.png create mode 100644 src/main/res/drawable-mdpi/ic_send_videocam_offline.png create mode 100644 src/main/res/drawable-mdpi/ic_send_videocam_offline_white.png create mode 100644 src/main/res/drawable-mdpi/ic_send_videocam_online.png create mode 100644 src/main/res/drawable-xhdpi/ic_attach_videocam.png create mode 100644 src/main/res/drawable-xhdpi/ic_attach_videocam_white.png create mode 100644 src/main/res/drawable-xhdpi/ic_send_videocam_away.png create mode 100644 src/main/res/drawable-xhdpi/ic_send_videocam_dnd.png create mode 100644 src/main/res/drawable-xhdpi/ic_send_videocam_offline.png create mode 100644 src/main/res/drawable-xhdpi/ic_send_videocam_offline_white.png create mode 100644 src/main/res/drawable-xhdpi/ic_send_videocam_online.png create mode 100644 src/main/res/drawable-xxhdpi/ic_attach_videocam.png create mode 100644 src/main/res/drawable-xxhdpi/ic_attach_videocam_white.png create mode 100644 src/main/res/drawable-xxhdpi/ic_send_videocam_away.png create mode 100644 src/main/res/drawable-xxhdpi/ic_send_videocam_dnd.png create mode 100644 src/main/res/drawable-xxhdpi/ic_send_videocam_offline.png create mode 100644 src/main/res/drawable-xxhdpi/ic_send_videocam_offline_white.png create mode 100644 src/main/res/drawable-xxhdpi/ic_send_videocam_online.png create mode 100644 src/main/res/drawable-xxxhdpi/ic_attach_videocam.png create mode 100644 src/main/res/drawable-xxxhdpi/ic_attach_videocam_white.png create mode 100644 src/main/res/drawable-xxxhdpi/ic_send_videocam_away.png create mode 100644 src/main/res/drawable-xxxhdpi/ic_send_videocam_dnd.png create mode 100644 src/main/res/drawable-xxxhdpi/ic_send_videocam_offline.png create mode 100644 src/main/res/drawable-xxxhdpi/ic_send_videocam_offline_white.png create mode 100644 src/main/res/drawable-xxxhdpi/ic_send_videocam_online.png diff --git a/art/ic_send_videocam_away.svg b/art/ic_send_videocam_away.svg new file mode 100644 index 000000000..52b8478cf --- /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 000000000..254e3859a --- /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 000000000..91a7778d6 --- /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 000000000..67f5563a6 --- /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 000000000..e4f671b1d --- /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 e20b951c7..4c947f93c 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 44c31b45b..8ec813ae2 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,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 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 bdfc29956..d0af53c3b 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 GIT binary patch literal 277 zcmeAS@N?(olHy`uVBq!ia0vp^Dj>|k0wldT1B8JTQfYHsudy3** z#|92rd5JWmJ#C*OB>p)__!KDCF6v245J|k0wldT1B8K8iKmNWh{y5d1PRu~2?kC7U;UT= zr_N^cXMNj}ZsyAiX8k|Xl(j>y|G(%AHdBGz0OmV0ZmSQK*5Dp-y;YjHK@;M7UB8wRq z1m=J+quN<36QH1EiEBhjaDG}zd16s2LwR|*US?i)adKios$PCk`s{Z$QVa}?DV{El zAsLNtFIsy!JBl@2p^tC;t^5{T~Edw21D?U782Og?dEi5OFy#HFdq z_mb_B4wbZP-Ig(4B>34O!S>gjQ=H1Lo3swGmRdgey8Cn2&zHW_>Nr_1Bs8YJ4iH^< z)^0=6-HnOCS00yjpQ(s%h+PkPwdRhXP(`>av*Zj*jH%@hQRNJsg;{=0PQ`3>e zg&H1`W<2hUSB~vHe?#b-K$!FK%YTyvfudqF4;P(I+&NXxr?NxRU$U&VNZ4wg-kP>c zi-fzp#o0I>?pTs2(C013mbgPFAwX_AFVCrmIXBevlkcv|Irf|Bl%lNL9ns#~8=~hm z#@#7v4Be4_U~;KW)1^m36(;XRYU9_>Ogmr|DyDo*XZoe|dF$SMGTdlxd;YTx5WUy` a!g^UdN~Ckw@ls%*a7 literal 0 HcmV?d00001 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 GIT binary patch literal 540 zcmV+%0^|LOP)Z&WKgOvw5+FX-kG>dnz* z26hSPsIDGG_ZPE30S?1#6Ij#|Sk!VB#^8$0yt6Qne*oazblh1Od&EP<@;(f4 z&cXnI0ArlfFu)w=JPa_yMFIxs<01nC^l(a8(58=`Zl#&({VuKpT!hUlVW*k#M`qmF zE@%>gZimkZmSQK*5Dp-y;YjHK@;M7UB8wRq z1m=J+quN<36QH1EiEBhjaDG}zd16s2LwR|*US?i)adKios$PCk`s{Z$QVa}?2A(dC zAsLNtZ|M3lJ4!S>OxJ8QIhYXer-gfgqrwhWu7j2ZcUX=xeuz*JS77PPS8!nJ2)aIZ z)8^Sm!uzhD^Lbt!wAER}H4udUZl1;Z`nAQ8V?t>&O%KZ6`}N0z%j^*Ax8E@nZYt}2 zoO$DNLeKQdZtc$I+yB^}KEF5jNL6$3n{Bxs2anBk<_*35m-k%39IH7^Q*ZE;ZpujZ z-4MTc1^YElSJ@5cG)}drF4T~o*4uP7FOimNqP5kRk6-Gq?Czeo<9b2M+Bq+cs?BO2)x|%W3-+LEU`YM_ YJ~pjeyI-uE2n=8bPgg&ebxsLQ0IPGim;e9( literal 0 HcmV?d00001 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 GIT binary patch literal 447 zcmeAS@N?(olHy`uVBq!ia0vp^W+2SL1|)l2v+e>ZmSQK*5Dp-y;YjHK@;M7UB8wRq z1m=J+quN<36QH1EiEBhjaDG}zd16s2LwR|*US?i)adKios$PCk`s{Z$QVa}?Hl8ky zAsLNtZ)p3mIEuJEEN*mAb6i}}65HUgfm@`h^uZ1GB$3?*HgP(!8B{Pa9(48LJ`&>l zt1SIl*pL3T&!-37T`(ocOLOTJ`_oy?@AfgzVc5NTCm+N61I;sQd2cS^DE{vIK*~a{ z$YF!}gJWmvyoB%EZRng?t0Q%PMb5tSRRJZ><)*M%UlA>cm=)aY`{=vW($?qYE4&}9 z*|vkt`?~yOxQ5fg^)1qzlrT}^j37;q(I-`U-Bi?u)`cFxbEhcr&` zN>52xs~VA=+IF^0=N!*&=68#`jStJr5IU0DmY9|plO=Ja@MWUFVN=HDe>>6=F7Su{ z&iN_x)@`HMy!^Cx?}De*6kUybGxcZx>C!J8d#14Mp1zxPUUzZU?%lu53b@{|>Px)r n{i*-%z39A^U=N4<{>vnK$S*{#n)@d(uo*mE{an^LB{Ts54R^V; literal 0 HcmV?d00001 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 GIT binary patch literal 533 zcmV+w0_y#VP)4Qkd7rAS zN}a&lx_M=orKoydsk4XO?=HF&_TwnPov=hvfE!_nqX7HEjG_RG!`NfvC_wiI{mYnn zA09SL=dJx>L~I-dSR9s?gtFH3t|-Q}>AbyRF>${!Xq(1a8}`XK z&h{|CFwTWAz#z_*Fd$)^OJP8QIAz!@GkcluPRVHA=l;>4&7d3IyfQ2*MneWiskSpW zh=$R<@|3{gVR$*gqt>bArjOGtcvwxbWFiE5$Q5(l-d^u*QEv(%gb+dq@h5x$ X#9@RPrZ_z;00000NkvXXu0mjfY)s!= literal 0 HcmV?d00001 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 GIT binary patch literal 215 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM0wlfaz7_*1rX+877l!}s{b%+Ad7K3vkw8&y zVGw3ym^BBap1s7=*OmPtCl{~2{FAkAkwBpgPZ!4!i_>o>ZR9A*tg;4My*4}+H>LpTb_x&<@ejTkwNf!fS8f~f*1iYdEL1Ofp#)@y85}Sb4q9e E0H$e32><{9 literal 0 HcmV?d00001 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 GIT binary patch literal 131 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM0wlfaz7~ThPZ!4!i_^&o609!G|JDCLW>R0E zB@$rzfKlM-fB6Xu7?;Q_nyA4m@N`K=MMHs9q13<2G0Z3Zl&)S@Vb}iFVci(~H*k$- dvd9Bg24TD2RUWTqYyg_d;OXk;vd$@?2>^H7D%Jo1 literal 0 HcmV?d00001 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 GIT binary patch literal 365 zcmeAS@N?(olHy`uVBq!ia0vp^Dj>|k1|%Oc%$NbBSc;uILpXq-h9ji|$mcBZh%9Dc z;1&j9Muu5)B!GgFC9V-A!TD(=<%vb94CUqJdYO6I#mR{Use1WE>9gP2NC6eS@^o^F{)6FaYI?o+_ z%2ks8^JU3*kAEt`T2sB2#wA+3n73w5^@W`tpPZIntm4_a{$licvBcNQ>uYXY3N_-{ z61HRBftW{W7V^zn=_d``-@Pd_iz<&e;;6pv_RR-%T+V3$JkD+xWO)2G=m&4Twxc)k z1Z$G*_k?dt`$8Qy7B%vHsTVwcig}gHha5Jo+v?m~_e!oH^X&>eWtql1!|1aYn5fjFr${{;|zGm=r^>bP0 Hl+XkKB^{5k literal 0 HcmV?d00001 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 GIT binary patch literal 397 zcmeAS@N?(olHy`uVBq!ia0vp^Dj>|k1|%Oc%$NbBSc;uILpXq-h9ji|$mcBZh%9Dc z;1&j9Muu5)B!GgFC9V-A!TD(=<%vb94CUqJdYO6I#mR{Use1WE>9gP2NHH)la(TKq zhD5Z!y<(Vm$U&g>p}83g=R+mln8v0Mfq+*oc{{v=p2%oEun5aq#IeHZps3GerYUUG z7PiJNx|?LnI%~g7^zQjjCNlb7HhHVGiGBC;K=uda3~xQkr_8x#w<&4cM)`vM@ynkU z)!TW;DB8OnVQ^44Y+q=5XRnRzpS#O<+Lk*oWCtZ>kRa7c5+kFMlQ$BcL5w;H7jdZWG`@L?dvw)oU~ENYq^5>(*_9>_5imdQ;zRGw%sFz6UOUHx3vIVCg!03~#jH2?qr literal 0 HcmV?d00001 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 GIT binary patch literal 341 zcmeAS@N?(olHy`uVBq!ia0vp^Dj>|k1|%Oc%$NbBSc;uILpXq-h9ji|$mcBZh%9Dc z;1&j9Muu5)B!GgFC9V-A!TD(=<%vb94CUqJdYO6I#mR{Use1WE>9gP2NC6dH@^oDiT8#(OOGEmX>QlU5;`kiq}z=moKmBL?T{I(Hr3%+$7Rf#cld;P2BG1g&+rZ?(T8 zcq>b-L_^lklVWTOqTVl5dL=V^m$+zSots0+^_U024YOFp^9_#ss-EGBzftxqTW90? flKDW_{J+Wg(@(A=hP9#s=sN~aS3j3^P6z#lE literal 0 HcmV?d00001 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 GIT binary patch literal 340 zcmeAS@N?(olHy`uVBq!ia0vp^Dj>|k1|%Oc%$NbBSc;uILpXq-h9ji|$mcBZh%9Dc z;1&j9Muu5)B!GgFC9V-A!TD(=<%vb94CUqJdYO6I#mR{Use1WE>9gP2NC6dH^mK6y ziD-R$Z6og?0|AGN^&M**!WJ|Lxh+T(*O<}FbS#nCg_BjgMYJh}D@fqA%I*#89loCq zPO;Yvm#{hic~77azY~XU0Yh5ryB7_MJN8W3EhYG}K3(`}L#QK<1NR!yGeS3x6!V(s zb_Aa1QPgRWz3`-Am07|!DYhO*O&*D+B7=bR_$|*4Ok-ioag3a)U#i8vbQ6C0d_*Z4l^%kJ#7(8A5T-G@yGywn^3Uvhl literal 0 HcmV?d00001 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 GIT binary patch literal 401 zcmV;C0dD?@P)2Iya6FoOw4rtVo0#tda%$!T2YQ5=P%D~+Fx=HU|E)BeT(s6_&6LiaJK+Xs=OfR z!U1>w%D=^*ri*ERHDB$%&Rl$`5uR1U001#?JvooZqs8d-qxXIh&l3}NrLUAt^26x4-%Oz<*?Q3DYim!4H$>RblOr2-Pj zMu1)Zq!P%H8zJsXP-?%-&-}UsrMg2UDD|bzp%Rb;+1EzIclw!Mhae9ENl*!BPkDi$ vtEWLHjeCyA+xhnO=y3d0?H$XqtpD04`Hou#7&0wit-8i1P{VA?WB#e=TEhdWQvYUbxG_IFf9iU6 znPUmdw==)HqPfGNUSNmcf^>EzTk{DQjF~-c^%Gu1G6tXLUXa7Uwa4CII{%ra{U>}r zygT4wpl>bP0l+XkKgGOKQ literal 0 HcmV?d00001 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 GIT binary patch literal 178 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA0wn)(8}b0DN>3NZkP61P*9^Is4S8Gw;|*rq z@i^Z5O~`&LSF^H2(&3uW+b>MJ-#(mEy!`0wC)efFl5M{lznoI4x{+;s;upRj$rU~^>bP0l+XkKQP@0n literal 0 HcmV?d00001 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 GIT binary patch literal 502 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@ZgvM!EX7WqAsj$Z!;#Vf4nJ zh^c}wqi2xH2cV#2iEBhjaDG}zd16s2LwR|*US?i)adKios$PCk`s{Z$QVa}?#hxyX zAr*7p-ZBhgaujfTXwJ>Pfa~Zdts>^$4?=2BvfP$EQ<=x4e=u@Gh!>wiPvgXkU*2uo zboFu@)b+t2b-D; z8Qf%cBpq6F&iUs|;nQ<;1Ja_NAManZX}+Pp3>xv5B7nOj^78jZwavwQ-aL9e^@W4T?P$5HMy@i0mgmf7Wu@lyO2QFj> zs`Kn%zimA&bcJ+Fu}p{fiMdRo8Uc-P!f}g({5|eu)?1$)p4}}@UEz>8rm>9o{Fi#6`O7xW znz&~E{x!bE$5ZW+XKhYBFgf+wxAn)QwbdMwxMY8ay?Fj?P36<2*OJZu>2FhlflKB0 Y<*agq+c&)W4vZrPPgg&ebxsLQ07;3&)c^nh literal 0 HcmV?d00001 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 GIT binary patch literal 542 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@ZgvM!EX7WqAsj$Z!;#Vf4nJ zh^c}wqi2xH2cV#2iEBhjaDG}zd16s2LwR|*US?i)adKios$PCk`s{Z$QVa}?vproL zLn`LHy=Caf6ew`)WBxo70Vj_OlV=2YI6EyDjdQbYtdiQpz{$(osUFCr*wMT1BZHXr zZfmZYf9t-!d2`zSc1{_i5*%o6zm zEWA%d**PRm81o6}OemLO$f(q{V&(kA(D+jJ^gd&e(q85k?kD|?Tm}J*Y+45#SS404 zFpF}CdEDD;-o`a$VShmF=R1;G0r~r)(kH5)_gKip_;2DNR;C)|Rvwlgu3XX_A38;> z1On`XemFSn_2}hb3F*Hw!@*&z$1(@5n_>3X>;>;e96RN<$<}d|_vJf+E7d+rR)4-~ z_54rHOw-z{FP@#tna|g7!o%-vyyC^)tf;d6xAjx?UhBr)jnC=qfPxh->lpUAZF)VS T#N{(EE*U&s{an^LB{Ts5ygJZ| literal 0 HcmV?d00001 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 GIT binary patch literal 479 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@ZgvM!EX7WqAsj$Z!;#Vf4nJ zh^c}wqi2xH2cV#2iEBhjaDG}zd16s2LwR|*US?i)adKios$PCk`s{Z$QVa}?F`h1t zAr*7p-rDQS>?q*y@VNg27S59noFa^>6C4d4STFFJIC%KDIdC_;;Sg%!=o83HKhGRd z{J#77wb$y_7MTu{R6Idwky%sm?E{(xEN}kZD|L%x`hI}-!^GMjVFmAaEEv;nihCF^ z^GWVIoqW8w`apDchH=G>!sG1!r_ZxK*ZBEFg2{zlf7jLt?R_k>gW;R<;foHTB}W@G zSzq-rU*aL4fmC2mPDuVcaFGHtBK^x)-zye3O=BH7ZyJ9d(!> zu`)}+qbtNxK*eR197kA>Nvp#KrzI;{nkG(MCc@$7(#00lx9i;fD3<5Dlw8GElu1mR za_y$Nr{QV8%>+PxA5;}^xYsze{_b7wIL&dXpAH%6klk?X~3NwL` O!QkoY=d#Wzp$Py=BeT^2 literal 0 HcmV?d00001 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 GIT binary patch literal 470 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@ZgvM!EX7WqAsj$Z!;#Vf4nJ zh^c}wqi2xH2cV#2iEBhjaDG}zd16s2LwR|*US?i)adKios$PCk`s{Z$QVa}?!JaOT zAr*7p-a6=e*g>H6VSON%1JkTVz6T<+6hjz7n0=Q>Ie0R9oIYq*cr(4)Y0b^=bKPHG zT)#IW%D@-~f<;qTT-(Jc*BJfa(-LXla+Yrgsx_ag|N6jPn8$r*^F9lMH(w5HSiI(1 z)!H*F8{aLf`Q!6MHhXROfyqXz*`gkw{po$HuxB%K-jqty0IuN24(^T5jx_o)o$Y0o zWr-4EpTr&|#V*9&)xqq^?0U4ZrBUgz!zPD|g$!na>}!u0EBsAf8FW{n>9NB;hlesN z4mL_5h)t}&y6g<17l=PF{&XOu(M$9G0qw?#L99(bJYF(6<}8`gsGt{g%RxX`vs58M zPP0}aLTqKXgModJd1FGHis^;IYi|EvFW~X*UBY&&yZE`vdkeR!$!Sv;e&oD2?cu~r px9)MtN<6BW^N4faOgMNa?#L3g-e~*UN?;r?c)I$ztaD0e0szxgx(NUP literal 0 HcmV?d00001 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 GIT binary patch literal 543 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@ZgvM!EX7WqAsj$Z!;#Vf4nJ zh^c}wqi2xH2cV#2iEBhjaDG}zd16s2LwR|*US?i)adKios$PCk`s{Z$QVa}?b39!f zLn`LHy}mZ+aDYJD!~9I{ZN{vO!go)aHmqa|&0`AY-(hv&dV#2G!}^!DDXR`EEVvx? z;`}4Sn<~pqHvg2{Yk9Ns`3zRPKa{*W!;U z7Lo0C{|*>Uam$Q%(bpDdXJE+<-0S6kxo+P1UFYv6pPr*RA?K^o`Saf$kL*jf>9W?E z9esL@W`Jt`x%gwUj|1=Alv(#q!D8c?+f0@d&G`ZrJGee#Fy#y};R|SXNPWa`j(KV? zvjv}s65j)pfE5-EhaD6jGn`{;?PF#*8^9iV@K;8ue#6V&)Tgi5fMOQhTex|qG&UL; z1hBE4I^ZBFq0zkBfvcv~?sDjYXXURMyUtHY-^DeBXHwbP0l+XkKT}IN; literal 0 HcmV?d00001 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 GIT binary patch literal 373 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY0wn)GsXhawn3BBRT^Rni_n+Ah4nJ za0`PlBg3pY5H=O_J^EYyar+c+8>e`7#P_+T^vI)?!CR?$kpT^a_r-JqYJ(X z7p{5lc*Aqi(khU>^W1}FxdA2ZQLo&x=I5u~d-PH5(Qp0ZjP-q1O$^CBhQ}n5H>Mqm zXq1hb;+8H^aFBCx*)J!F+sWOB-b~^)Sy3R|zxHB1|Jl~ewLfb!nCBcW31FJ~Y=PE+ zm8A;(OmkuuD5&#m96HI^RrJS^v(H@Ph zQBv~(_A|Uaeg>M$g-&EJ3;(E>F0WfsuqEq@i4qW8@}AzdO6rx>m9XRe^SrNqJ^A{6 z_JW14-f=$P%=XJsxKGL9nM=c&PKKGnj7I8ADSj*`=EzL26jUe%O0+bb;bi0#P;hAY zVbJ!!)MTxg4$1QpGp6miFw->gXv^UbE&RFbCo1eqX+H3+wUgDrAoXZjOp)pL z6+2Sorr+_N>C1J@)QmI6bJp9)l;#s@*95(v@$6|ZY@Sko}vkca%>dh#e{G7+;gzf2ssZ)Dc*;cPA(J_cHHBD+fxN3zc zH&0m1*@%P@j$}Ks3T0xs+mBg+xFei6Facx z=%sb8a>6sWN4=Ndwl58+;;vytI?px9=F(#cb1|7~-!FMu)Vx;v!#qy;=(XlIb}=pg z^B{C}2Aj8l*xN;tI)Omu=?hA;4jT2!o=srwkvyBw+9L{N^$G%6SNqa7aAmm}N2qRH zB)Mjh)J2}K$d?&x(vBxHG7pCF?Cjn>^~c-9gPH{lHK!uyi|KsQPS3oq_Qyw-*WWVn zke%ekOHH!HEHcaW-iAFeZ(O`a`Je0WIc2RbA5Hl?-yCSIoLb`g#Nf@gS|_vj6Q9-Q z6?W<>l|PiRza;aMX%Fx2n*3Tx^wgTe~DWM4fB<&+M literal 0 HcmV?d00001 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 GIT binary patch literal 777 zcmeAS@N?(olHy`uVBq!ia0vp^IUvlz1|<8_!p{OJmSQK*5Dp-y;YjHK@;M7UB8wRq z6fHoQ(RG?(0#H!0#5JNMI6tkVJh3R1p}f3YFEcN@I61K(RWH9NefB#WDFz0nHcuDF zkcv5P@9fPIb(CoT_io(|mFgEute&;@X-~Ggy6xtkpBturmYaJ1 z!uhMxzNy;^qmn!)P0lL4Rlt9Y`(S$S@#6Zh@O3}WRIyrLpBHJgymJ1{NtQd)>et6{ zStZ-do2?h-|9YLYUc~EH+;+w4j<>_bYt#Q9pY&$edr9T_3wOQJe!hESLFv`%zbEd_ zwO*XL^?yXsy^Sj8^?5d1c71hume)4Vb;FUQW0N?hg}jLnIylKw&|4`&Xl0ToOSfLC zPG>^k(mqu|omq+?fut2c6-~U7Kot`fCVR4co~As_#Xx^2P;Pdl{%JAqPk+9jdim^H z%B<5{=j!LUEvwn6(j?lR(5e`b$Pp&dB-)0-G*ecWeRjux!_1r6mcOTDTOUjdIl0x> z{=ZGQNmJ#9lPb|b>Xc}20%MVja>Rm#iv@L>6oJH~g^L7r7AXRWO;;{*OmjGu!Q!nF zYSN@SMM>(QP`7Mv0&|DtS?!4H;k7Rw1^xW@)@c(db_~5Z&7LK-=pvO<}Lf4f4^w2 z+{-U}ylzG2&px|*kN*ia+e>?j%WE=IzV4d5?p9~rlF0bzVtw)Zb$=%QwnIrAKu*Jp Ye~fyaBJT=p+ZsV~p00i_>zopr0Mgq`*#H0l literal 0 HcmV?d00001 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 GIT binary patch literal 650 zcmeAS@N?(olHy`uVBq!ia0vp^IUvlz1|<8_!p{OJmSQK*5Dp-y;YjHK@;M7UB8wRq z6fHoQ(RG?(0#H!0#5JNMI6tkVJh3R1p}f3YFEcN@I61K(RWH9NefB#WDFy~6c25__ zkcv5P@7QNe2^4YoxL9q$G6Bc(1qsSrkEC?&I%^$#kmRCUB05daDZoW=%O(MrXjKDG z55sdz`>Nkp>*p8MoelZ^_o0FDQ3H98Nh+Qws4Ldv+5AMt@FgD!XS!%w^!6c$2Puk`EK4u$LLG8^ur`=@aYxsS$mFHSq zq>e#E_R@_95_G2?XKLPhNkvRzO=}vEe|6R|rsmKrIc}b?rQSeAt$9Gf$k^n@gGRf6 zDqVRyS=qWJ#Ik{=RUY|OzE-iOUDsSkOd`jMZFbK=wd4&aC31`~nNP!%&CPEVy>H-O zYzCy=4{)=&8b_Sjkiph1Ep#@)^6p|uo%Pu!%~xNDolPj+rYGan8b@z&MGdn>kJz^Ka-6pi z(|5X6o%YO6?PuNJo#}1wTT7THsd%EGCC3(}?U+&|UBPsRah;jv#hag{e{k*T?Z{uu zKbbGgtCGcrRd2iXxtV1=GA>7cPi)^YMN(_&8^+%;b0RkEeqE>ewCZiUm*(uCQ+v0)KeUYD+85D~mLx$)qvNM)c@ z=hmdggR9m`a`S|xzKuxOutgB4RC6&<(5UU`ul+HnZP?5fPx~#t?al_E>`RFpBevN+ z2i1}{oWx{KyWJO)x8dnMMtL_~^BYC=4dFapX&YKPB*e}pcrIQfx#mzu2HWZ_WhTw0 z8`6NprZ6C}#SKVYvz~R(>V@Rlgt=dUI{Ku8Pb*0}Zf6(4tlH~s8-MlibThGtbXhpclFt)#$7rIxY zukmolihm2;j+iM09n6x?+;{Zd#Amzbymz0qpCMoA(eD?BJy2o~7@4zvvmec!<{)yk)ig{-61hnN?-I&-mY*-&Xey?$V#0ZyEYMbzNWOLg&*rw-|m;swv+y^Rv{{ z^B2CVi;K<4d3@u@B$eW=Gjnx#r$2MP z&y44`Tx|a4?BA7j_F=ZU`ZG?R`*}u|GkETIS=)}MOS1Q+SFo}o&Xi+r1fsj*{HH|a&qR) zJGqn3KD~8L-b{J&rlXTM!ep96+Y(w8BN92nBrupadgg4IUu=IcE$#iBJHKOYbDAwa zb?3>Y@2Affxhl_SznCyZSL&e6(=N9S43>)obpmc*4kUU!K=(^3i8+iYME(y!p=c>`7gl zj&9Ui`F)FLe>eN?Z=OD{&E+%Kwhf=ly*Jt3U%Ip?ZFlwLy=x~J^DWAZs{b4nJ za0`PlBg3pY5H=O_J^EYyau`t6(rpm7#Qt5T^vIyZoR#^*O%E*#P#9ne%3yP zVpeIvOUx&)IT`02)D_st$FxLLQSivNHyvDMY4;{e-W7emnM$na|AF z^tyS?%m=?!@>DG3RcCSBOJB&=^gD5#*9ZIFFpkd+#n)#p*Lhg>?bMRxeGQt`SN6@^ z`)TR(y#Lqaw_aZOqwBoIg9YWbuNHogjD7X&=LJ7|n3t8fzHqDSnoPgzwD1MUA)c;& JF6*2Ung9}St(pJ; literal 0 HcmV?d00001 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 GIT binary patch literal 290 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD0wg^q?%xcgUV6GXhEy=Vz2%$L>L9?7s4sjZ z`dg=nZ3NGX*QczyQwj`vc|$kX%>MU4_u27-XQ1Fsx=&8bpK^6=W#{+5{x0v--*iiI zK6_5eHWRkq-woYo`i}j$!>)2&V!wgH0wW@j83QAeoL2*oWZ@_>deZ&>ak+XyvA!1j^LK3P nm_Pheb$}Qopa5qqD6eI%v1Ev>S}gk$=xGK|S3j3^P6cu@pObhHwBu4M$1`kk47*5n0T@ zpyLg~j7x2&tpo~6mbgZg1m~xflqVLYGL)B>>t*I;7bhncr0V4trO$q6BgMeLw8_)O zF{EP7+pG3|p^gl0AC2|(8?Utq9NoZ|b3r!XX7t1hFS+jVZ7@pYH8Huer_WSE+GE4Q zP0Yd-kHzNAoM~PE?x*g9*(aYoiJPF}ISDsfrT;{($6V*)M!fH*$%G#y>Cz>w!(QJOeoaue>yK`<2=E`mJ3S-Y9?BbDS%{N@f`>~)lx&1BD{j}45xYfEer91hP?k~3JK z=qt)EaiL&Y4?9nWM(}ZEC>_Fw36B#u-Nkdz;iXwk=-8NX@ z)@r=2y5mHH)HP=pwktcXDH|=|+afcOv2@YZ4xSatx^5{Bb2D|7m|q2W3rYqokLo

FVdQ&MBb@ E0BbQ!O8@`> literal 0 HcmV?d00001 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 GIT binary patch literal 884 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q4M;wBd$a>cu@pObhHwBu4M$1`kk47*5n0T@ zpyLg~j7x2&tpo~6mbgZg1m~xflqVLYGL)B>>t*I;7bhncr0V4trO$q6BgMeL^wHDB zF{EP7+iQ+qGL8~$58s!k33=-GJkTSs~7D|HGyWmQS91_vGyB`DqU)KYtf76qVaifJAK$4y?xbyn7Xa_af>fGMg zi2T}@S-Wkmt@wkg7(E|0-@mpaSF`3#(sgUOlb_{1ZhgBYwOjArrtS)r>-qvgS3_-t z7)95gu25mpin{*MgC%5*-J^*dD?DnCDhmb_{_1g8TCnJgY`=@cQ3)lv&W0|75TJ(C z{1ZS8r*2&UYM8QC1gJs7d*uJ>=C z8X1s=NK2pw0VP3!MFJ$DfJI@;eqJcQ!NRDT^}MQZsuR_QOUMR0pwdI7K&8D7(*<|3rd;a2e(lE0mp7|7ukMi9@9^z% ze)bzD_57X1dv_SUyi|NycR|AI==Ezia%-1cu@pObhHwBu4M$1`kk47*5n0T@ zpyLg~j7x2&tpo~6mbgZg1m~xflqVLYGL)B>>t*I;7bhncr0V4trO$q6BgMeL)adEr z7*a9k?KQ=9v7r)e54V3&3lZa1

e|mBeNIBBG#&=~%Hz8k8)+P-}6 zGkYo73+z|JuO4qMUw`!cRr9O))$&F0{OoymL*muv>B@!suMWSudv5;D>EGG%YG+os z{a8|E_Oti-;x;$766=E3w`%PQe^++1eR+6bZT9zzOYScGc;!Ze9Pgc7WybrSeyGUG zaafb>Wuv+v+dy}o(1n}6y~|lj(k?&NWSo1|^%0P~coamQbp?r>JPIO@>V2Hja4unc zg_nc-_H3Y5<=eJEt%16N{+us5rgZ`hF!4Sb%w#p`DNw8I(Mdq%eF-;#%2!8Q0TrH_ z*1w!(%ciG5vo=m_xZ&cEqoiOaC@`C&!k3y~lp1z2Vx|Ma(WL z3%2UYPi(lhy~Ksdsx4Jn=t7~64tpSD$9-fthR kzj}Y!UQqHy2M-$lF*a`U>)SBZAqynu>FVdQ&MBb@07CFXl>h($ literal 0 HcmV?d00001 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 GIT binary patch literal 777 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q4M;wBd$a>cu@pObhHwBu4M$1`kk47*5n0T@ zpyLg~j7x2&tpo~6mbgZg1m~xflqVLYGL)B>>t*I;7bhncr0V4trO$q6BgMeL)aL2p z7*a9k?bVIBVulQD56^1|Wo9aBum-oNZD3q|Kq--bmdTfwo7|Kf{oN-t^(p;laQyZ+ z{r9}|hW9$Jr|L5T?Lh}O;xcV_=$!VP#P6v$X^v{;&0o@!e@=elKIyiK`O+!Jd(VH4 zpT)LC=k#io_(^+mckWjH?zzrObN@EG6UBQoOiL;%j|4xrIr;o>EZ@RN2TwaU8{IkT zJ7YdGpWalHwe_meg6_8H>hE=HA3EE_vVGb0@Y=n-k;z+1Z9H!`_(|uzjs3hkMtRv*5K;02Ry9Y9iKTNjZ0 zu&oD3Uf2c_-%te-pHS5aBnzrQvH?}yK+>QJq(-2sS6wjRdlgV+!1bzrAi3QQs6OEQ zE+AWADvOIKW1y=;h@e0yVdjGf}9x)w(cqm z9KT3SY+$>T?7}4FlMfVhuyq9reiZ@=UULQt-nj-8WQulES>Tx?I!3Z&W^3+tM5Ej zT=aU{Y<1r4d6V~K@7SKcJ)3uW(7NfVncJ>^V%_CgbiW{f{ku;k(^qRQHK}f$#Tw#O z=~E;scy)*Or>#>ymA`Jb35Q1iX%%tLbCc$5`*$owZqlCNB+K& UWq+zopr0LEo44FCWD literal 0 HcmV?d00001 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 GIT binary patch literal 897 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q4M;wBd$a>cu@pObhHwBu4M$1`kk47*5n0T@ zpyLg~j7x2&tpo~6mbgZg1m~xflqVLYGL)B>>t*I;7bhncr0V4trO$q6BgMeL^v~19 zF{EP7+w1oJB91c0KBlK|x;>WH5$tbjIpQR(ofC7PapN{a#f8_x4_IF~)phC`8+X<^ zgN0k4wdlC4vl9{yJTJ|C|G>B+A|%Rzc)W!n)R`Fj$FjMZ>^u-y}ADA zOYY}YGfQfxSH^CZTE+jmtKv|_^XsebUwvJ*eci5or}vy;+V!LA+nkC+md~#rTmAfe z(!7lux9>~cnkqKod*0=&)$jL|`zPn-zge4Kx&8}NQIU37^xo&C_Q%$g+DuAxDB6{` z?P|H;JtH@pNvRGVVQVT>n6%=~fXJvfATmt)qX$dKl5LMBa;&h(J*F%e5O}N4U1>p5 ziD18rgX;?|xz2`7*HdkT7*p5225LAJ#s$>V5@k@CxGtX;>oz)WFfm!Qn_6(g-#Fzwx#9ndSx|(_5CdClr;KydwAn z1p^)h^>;KFO(=3uBJ* zkm|w`(y>lSX+cwopdh2@vbP-^D;#p&TpU`nw3V2&BBX&zA11lGIM@mpEA4LBv+m5c z4~MG^!d%K2En{coex2L@dD`N+mzke$$={hNHsSNX6Tr~FqjN7>E`R=;Xtxxx3#Td! zO76{#eEW6k^z6R(bNQ0z74E4`61&iJHNZG0ZF}6Ee?fmED>Rnx4%=P(=;^FX(^~UN zOT+(cT}O2kJZII+im|Qw^yBk)>*>=!y<4_Kx@eWod5v@X=l35w`{!WB&nM1)A8{u_ ckj#=t`WF|P$nIWUDhJ|vy85}Sb4q9e0C+%QjsO4v literal 0 HcmV?d00001 diff --git a/src/main/res/menu/attachment_choices.xml b/src/main/res/menu/attachment_choices.xml index 28372c0a3..62e3f9acb 100644 --- a/src/main/res/menu/attachment_choices.xml +++ b/src/main/res/menu/attachment_choices.xml @@ -2,19 +2,9 @@

- - - - + 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"/> + + + + + + \ 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 8e57ef2d0..36c07d78e 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 3ce79deec..63838b7e3 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 33637e5b5..f844894ba 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 5e86ca708..0be4878c0 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 c4c925f32..61ebb0924 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