diff --git a/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java b/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java index 8303884291e47c03d4c63cf07dbdbc157800ee44..fee7c149320f1053fa518c708bad16eaf37316a0 100644 --- a/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java +++ b/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java @@ -842,7 +842,8 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke case ATTACHMENT_CHOICE_CHOOSE_FILE: case ATTACHMENT_CHOICE_RECORD_VIDEO: case ATTACHMENT_CHOICE_RECORD_VOICE: - final List fileUris = Attachment.extractAttachments(getActivity(), data, Attachment.Type.FILE); + final Attachment.Type type = requestCode == ATTACHMENT_CHOICE_RECORD_VOICE ? Attachment.Type.RECORDING : Attachment.Type.FILE; + final List fileUris = Attachment.extractAttachments(getActivity(), data, type); mediaPreviewAdapter.addMediaPreviews(fileUris); toggleInputMethod(); break; @@ -850,7 +851,8 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke double latitude = data.getDoubleExtra("latitude", 0); double longitude = data.getDoubleExtra("longitude", 0); Uri geo = Uri.parse("geo:" + String.valueOf(latitude) + "," + String.valueOf(longitude)); - attachLocationToConversation(conversation, geo); + mediaPreviewAdapter.addMediaPreviews(Attachment.of(getActivity(), geo, Attachment.Type.LOCATION)); + toggleInputMethod(); break; case REQUEST_INVITE_TO_CONVERSATION: XmppActivity.ConferenceInvite invite = XmppActivity.ConferenceInvite.parse(data); @@ -869,8 +871,10 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke final PresenceSelector.OnPresenceSelected callback = () -> { for (Iterator i = attachments.iterator(); i.hasNext(); i.remove()) { final Attachment attachment = i.next(); - if (attachment.getType() == Attachment.Type.IMAGE) { - Log.d(Config.LOGTAG, "ConversationsActivity.commitAttachments() - attaching image to conversations. CHOOSE_IMAGE"); + if (attachment.getType() == Attachment.Type.LOCATION) { + attachLocationToConversation(conversation, attachment.getUri()); + } else if (attachment.getType() == Attachment.Type.IMAGE) { + Log.d(Config.LOGTAG, "ConversationsActivity.commitAttachments() - attaching image to conversations. CHOOSE_IMAGE"); attachImageToConversation(conversation, attachment.getUri()); } else { Log.d(Config.LOGTAG, "ConversationsActivity.commitAttachments() - attaching file to conversations. CHOOSE_FILE/RECORD_VOICE/RECORD_VIDEO"); diff --git a/src/main/java/eu/siacs/conversations/ui/ConversationsOverviewFragment.java b/src/main/java/eu/siacs/conversations/ui/ConversationsOverviewFragment.java index 3c89103c3a72c429fca95d0f959c04a43643145b..f1957c6f20db95d7abda72ffab32ea058cd25e63 100644 --- a/src/main/java/eu/siacs/conversations/ui/ConversationsOverviewFragment.java +++ b/src/main/java/eu/siacs/conversations/ui/ConversationsOverviewFragment.java @@ -58,11 +58,11 @@ import eu.siacs.conversations.entities.Conversation; import eu.siacs.conversations.ui.adapter.ConversationAdapter; import eu.siacs.conversations.ui.interfaces.OnConversationArchived; import eu.siacs.conversations.ui.interfaces.OnConversationSelected; -import eu.siacs.conversations.ui.util.Color; import eu.siacs.conversations.ui.util.MenuDoubleTabUtil; import eu.siacs.conversations.ui.util.PendingActionHelper; import eu.siacs.conversations.ui.util.PendingItem; import eu.siacs.conversations.ui.util.ScrollState; +import eu.siacs.conversations.ui.util.StyledAttributes; import eu.siacs.conversations.utils.ThemeHelper; import static android.support.v7.widget.helper.ItemTouchHelper.LEFT; @@ -99,7 +99,7 @@ public class ConversationsOverviewFragment extends XmppFragment { super.onChildDraw(c, recyclerView, viewHolder, dX, dY, actionState, isCurrentlyActive); if(actionState != ItemTouchHelper.ACTION_STATE_IDLE){ Paint paint = new Paint(); - paint.setColor(Color.get(activity,R.attr.conversations_overview_background)); + paint.setColor(StyledAttributes.getColor(activity,R.attr.conversations_overview_background)); paint.setStyle(Paint.Style.FILL); c.drawRect(viewHolder.itemView.getLeft(),viewHolder.itemView.getTop() ,viewHolder.itemView.getRight(),viewHolder.itemView.getBottom(), paint); diff --git a/src/main/java/eu/siacs/conversations/ui/SearchActivity.java b/src/main/java/eu/siacs/conversations/ui/SearchActivity.java index 5f1cb78549a1c909ffd64e12428f3e1d1424b307..3b337e0c2877e426a9aef4cc82f6d04e80177764 100644 --- a/src/main/java/eu/siacs/conversations/ui/SearchActivity.java +++ b/src/main/java/eu/siacs/conversations/ui/SearchActivity.java @@ -35,7 +35,6 @@ import android.support.v7.widget.Toolbar; import android.text.Editable; import android.text.InputType; import android.text.TextWatcher; -import android.util.Log; import android.view.ContextMenu; import android.view.Menu; import android.view.MenuItem; @@ -47,21 +46,18 @@ import java.lang.ref.WeakReference; import java.util.ArrayList; import java.util.List; -import eu.siacs.conversations.Config; import eu.siacs.conversations.R; import eu.siacs.conversations.databinding.ActivitySearchBinding; import eu.siacs.conversations.entities.Contact; import eu.siacs.conversations.entities.Conversation; import eu.siacs.conversations.entities.Conversational; import eu.siacs.conversations.entities.Message; -import eu.siacs.conversations.entities.StubConversation; import eu.siacs.conversations.services.MessageSearchTask; import eu.siacs.conversations.ui.adapter.MessageAdapter; import eu.siacs.conversations.ui.interfaces.OnSearchResultsAvailable; import eu.siacs.conversations.ui.util.ChangeWatcher; -import eu.siacs.conversations.ui.util.Color; import eu.siacs.conversations.ui.util.DateSeparator; -import eu.siacs.conversations.ui.util.Drawable; +import eu.siacs.conversations.ui.util.StyledAttributes; import eu.siacs.conversations.ui.util.ListViewUtils; import eu.siacs.conversations.ui.util.PendingItem; import eu.siacs.conversations.ui.util.ShareUtil; @@ -217,12 +213,12 @@ public class SearchActivity extends XmppActivity implements TextWatcher, OnSearc private void changeBackground(boolean hasSearch, boolean hasResults) { if (hasSearch) { if (hasResults) { - binding.searchResults.setBackgroundColor(Color.get(this, R.attr.color_background_secondary)); + binding.searchResults.setBackgroundColor(StyledAttributes.getColor(this, R.attr.color_background_secondary)); } else { - binding.searchResults.setBackground(Drawable.get(this, R.attr.activity_background_no_results)); + binding.searchResults.setBackground(StyledAttributes.getDrawable(this, R.attr.activity_background_no_results)); } } else { - binding.searchResults.setBackground(Drawable.get(this, R.attr.activity_background_search)); + binding.searchResults.setBackground(StyledAttributes.getDrawable(this, R.attr.activity_background_search)); } } diff --git a/src/main/java/eu/siacs/conversations/ui/SettingsActivity.java b/src/main/java/eu/siacs/conversations/ui/SettingsActivity.java index ebdff2c0048361a7ede888a66bc10d6ad94e1fd6..a6ebacf47b69e8092f245c512775bbb0e6be9188 100644 --- a/src/main/java/eu/siacs/conversations/ui/SettingsActivity.java +++ b/src/main/java/eu/siacs/conversations/ui/SettingsActivity.java @@ -38,7 +38,7 @@ import eu.siacs.conversations.crypto.OmemoSetting; import eu.siacs.conversations.entities.Account; import eu.siacs.conversations.services.ExportLogsService; import eu.siacs.conversations.services.MemorizingTrustManager; -import eu.siacs.conversations.ui.util.Color; +import eu.siacs.conversations.ui.util.StyledAttributes; import eu.siacs.conversations.utils.GeoHelper; import eu.siacs.conversations.utils.TimeframeUtils; import rocks.xmpp.addr.Jid; @@ -74,7 +74,7 @@ public class SettingsActivity extends XmppActivity implements mSettingsFragment.setActivityIntent(getIntent()); this.mTheme = findTheme(); setTheme(this.mTheme); - getWindow().getDecorView().setBackgroundColor(Color.get(this, R.attr.color_background_primary)); + getWindow().getDecorView().setBackgroundColor(StyledAttributes.getColor(this, R.attr.color_background_primary)); setSupportActionBar(findViewById(R.id.toolbar)); configureActionBar(getSupportActionBar()); } diff --git a/src/main/java/eu/siacs/conversations/ui/adapter/AccountAdapter.java b/src/main/java/eu/siacs/conversations/ui/adapter/AccountAdapter.java index 77334955e0d0d2f23a4b35fa5193c6c5998042e2..d5dca11b5d7f2346522e81d2a8b6eedb87b8df21 100644 --- a/src/main/java/eu/siacs/conversations/ui/adapter/AccountAdapter.java +++ b/src/main/java/eu/siacs/conversations/ui/adapter/AccountAdapter.java @@ -25,7 +25,7 @@ import eu.siacs.conversations.R; import eu.siacs.conversations.entities.Account; import eu.siacs.conversations.ui.ManageAccountActivity; import eu.siacs.conversations.ui.XmppActivity; -import eu.siacs.conversations.ui.util.Color; +import eu.siacs.conversations.ui.util.StyledAttributes; import eu.siacs.conversations.utils.UIHelper; public class AccountAdapter extends ArrayAdapter { @@ -65,14 +65,14 @@ public class AccountAdapter extends ArrayAdapter { statusView.setText(getContext().getString(account.getStatus().getReadableId())); switch (account.getStatus()) { case ONLINE: - statusView.setTextColor(Color.get(activity, R.attr.TextColorOnline)); + statusView.setTextColor(StyledAttributes.getColor(activity, R.attr.TextColorOnline)); break; case DISABLED: case CONNECTING: - statusView.setTextColor(Color.get(activity, android.R.attr.textColorSecondary)); + statusView.setTextColor(StyledAttributes.getColor(activity, android.R.attr.textColorSecondary)); break; default: - statusView.setTextColor(Color.get(activity, R.attr.TextColorError)); + statusView.setTextColor(StyledAttributes.getColor(activity, R.attr.TextColorError)); break; } final SwitchCompat tglAccountState = view.findViewById(R.id.tgl_account_status); diff --git a/src/main/java/eu/siacs/conversations/ui/adapter/ConversationAdapter.java b/src/main/java/eu/siacs/conversations/ui/adapter/ConversationAdapter.java index e204b09bb6420988a96461a1f2571a6588d0edcc..8e53caea6aaedb965ff5b73dd71b76d969448dae 100644 --- a/src/main/java/eu/siacs/conversations/ui/adapter/ConversationAdapter.java +++ b/src/main/java/eu/siacs/conversations/ui/adapter/ConversationAdapter.java @@ -26,9 +26,8 @@ import eu.siacs.conversations.entities.Conversation; import eu.siacs.conversations.entities.Message; import eu.siacs.conversations.entities.Transferable; import eu.siacs.conversations.ui.ConversationFragment; -import eu.siacs.conversations.ui.ConversationsOverviewFragment; import eu.siacs.conversations.ui.XmppActivity; -import eu.siacs.conversations.ui.util.Color; +import eu.siacs.conversations.ui.util.StyledAttributes; import eu.siacs.conversations.ui.widget.UnreadCountCustomView; import eu.siacs.conversations.utils.EmojiWrapper; import eu.siacs.conversations.utils.IrregularUnicodeDetector; @@ -93,9 +92,9 @@ public class ConversationAdapter extends RecyclerView.Adapter { @@ -48,8 +47,29 @@ public class MediaPreviewAdapter extends RecyclerView.Adapter { int pos = mediaPreviews.indexOf(attachment); mediaPreviews.remove(pos); @@ -72,6 +92,7 @@ public class MediaPreviewAdapter extends RecyclerView.Adapter of(final Context context, Uri uri, Type type) { - final String mime = MimeUtils.guessMimeTypeFromUri(context, uri); + final String mime = type == Type.LOCATION ?null :MimeUtils.guessMimeTypeFromUri(context, uri); return Collections.singletonList(new Attachment(uri, type, mime)); } @@ -100,6 +101,10 @@ public class Attachment { return uris; } + public boolean renderThumbnail() { + return type == Type.IMAGE || (type == Type.FILE && mime != null && (mime.startsWith("video/") || mime.startsWith("image/"))); + } + public Uri getUri() { return uri; } diff --git a/src/main/java/eu/siacs/conversations/ui/util/Drawable.java b/src/main/java/eu/siacs/conversations/ui/util/Drawable.java deleted file mode 100644 index 993ef49aaf5106ca48ed487448e417c53724b212..0000000000000000000000000000000000000000 --- a/src/main/java/eu/siacs/conversations/ui/util/Drawable.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) 2018, Daniel Gultsch All rights reserved. - * - * Redistribution and use in source and binary forms, with or without modification, - * are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation and/or - * other materials provided with the distribution. - * - * 3. Neither the name of the copyright holder nor the names of its contributors - * may be used to endorse or promote products derived from this software without - * specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package eu.siacs.conversations.ui.util; - -import android.content.Context; -import android.content.res.TypedArray; -import android.support.annotation.AttrRes; - -public class Drawable { - public static android.graphics.drawable.Drawable get(Context context, @AttrRes int id) { - TypedArray typedArray = context.obtainStyledAttributes(new int[]{id}); - android.graphics.drawable.Drawable drawable = typedArray.getDrawable(0); - typedArray.recycle(); - return drawable; - } -} diff --git a/src/main/java/eu/siacs/conversations/ui/util/Color.java b/src/main/java/eu/siacs/conversations/ui/util/StyledAttributes.java similarity index 75% rename from src/main/java/eu/siacs/conversations/ui/util/Color.java rename to src/main/java/eu/siacs/conversations/ui/util/StyledAttributes.java index ac3dcaf6d6aef32465af68cbdec88cc47ce2b713..2b0b3f6e371fb17b5fe8419d261df6abb3398863 100644 --- a/src/main/java/eu/siacs/conversations/ui/util/Color.java +++ b/src/main/java/eu/siacs/conversations/ui/util/StyledAttributes.java @@ -29,19 +29,30 @@ package eu.siacs.conversations.ui.util; - import android.content.Context; import android.content.res.TypedArray; import android.support.annotation.AttrRes; import android.support.annotation.ColorInt; -public class Color { +public class StyledAttributes { + public static android.graphics.drawable.Drawable getDrawable(Context context, @AttrRes int id) { + TypedArray typedArray = context.obtainStyledAttributes(new int[]{id}); + android.graphics.drawable.Drawable drawable = typedArray.getDrawable(0); + typedArray.recycle(); + return drawable; + } - public static @ColorInt int get(Context context, @AttrRes int attr) { + public static float getFloat(Context context, @AttrRes int id) { + TypedArray typedArray = context.obtainStyledAttributes(new int[]{id}); + float value = typedArray.getFloat(0,0f); + typedArray.recycle(); + return value; + } + + public static @ColorInt int getColor(Context context, @AttrRes int attr) { TypedArray typedArray = context.obtainStyledAttributes(new int[]{attr}); int color = typedArray.getColor(0,0); typedArray.recycle(); return color; } - } diff --git a/src/main/java/eu/siacs/conversations/utils/IrregularUnicodeDetector.java b/src/main/java/eu/siacs/conversations/utils/IrregularUnicodeDetector.java index ad1a1f8a96eeb0e0972933bf715d77c161a55048..42329c41a24058e373420dce47f79817631a8765 100644 --- a/src/main/java/eu/siacs/conversations/utils/IrregularUnicodeDetector.java +++ b/src/main/java/eu/siacs/conversations/utils/IrregularUnicodeDetector.java @@ -50,7 +50,7 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; import eu.siacs.conversations.R; -import eu.siacs.conversations.ui.util.Color; +import eu.siacs.conversations.ui.util.StyledAttributes; import rocks.xmpp.addr.Jid; public class IrregularUnicodeDetector { @@ -73,7 +73,7 @@ public class IrregularUnicodeDetector { } public static Spannable style(Context context, Jid jid) { - return style(jid, Color.get(context, R.attr.color_warning)); + return style(jid, StyledAttributes.getColor(context, R.attr.color_warning)); } private static Spannable style(Jid jid, @ColorInt int color) { diff --git a/src/main/res/drawable-hdpi/ic_description_black_48dp.png b/src/main/res/drawable-hdpi/ic_description_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..dd23b93ac24f290c0fd00a5776de8433fe05ccb9 Binary files /dev/null and b/src/main/res/drawable-hdpi/ic_description_black_48dp.png differ diff --git a/src/main/res/drawable-hdpi/ic_description_white_48dp.png b/src/main/res/drawable-hdpi/ic_description_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..9b7071b710e270543eef0565af39a9702c3729e8 Binary files /dev/null and b/src/main/res/drawable-hdpi/ic_description_white_48dp.png differ diff --git a/src/main/res/drawable-hdpi/ic_headset_black_48dp.png b/src/main/res/drawable-hdpi/ic_headset_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..baf3ee295d5a60b92ef94ed77c52c98d1c7303ae Binary files /dev/null and b/src/main/res/drawable-hdpi/ic_headset_black_48dp.png differ diff --git a/src/main/res/drawable-hdpi/ic_headset_white_48dp.png b/src/main/res/drawable-hdpi/ic_headset_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..82db5427b7613252c64dec1dbb782f4d987a0cfa Binary files /dev/null and b/src/main/res/drawable-hdpi/ic_headset_white_48dp.png differ diff --git a/src/main/res/drawable-hdpi/ic_mic_black_48dp.png b/src/main/res/drawable-hdpi/ic_mic_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..ad8299e77f4bed83b5bea3851b4341c9e6a1cf75 Binary files /dev/null and b/src/main/res/drawable-hdpi/ic_mic_black_48dp.png differ diff --git a/src/main/res/drawable-hdpi/ic_mic_white_48dp.png b/src/main/res/drawable-hdpi/ic_mic_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..b0389382e4ef99837d898958cc880a77151a8bdb Binary files /dev/null and b/src/main/res/drawable-hdpi/ic_mic_white_48dp.png differ diff --git a/src/main/res/drawable-hdpi/ic_room_black_48dp.png b/src/main/res/drawable-hdpi/ic_room_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..5a21dfae62dffddf641878825ffac0c96b36291a Binary files /dev/null and b/src/main/res/drawable-hdpi/ic_room_black_48dp.png differ diff --git a/src/main/res/drawable-hdpi/ic_room_white_48dp.png b/src/main/res/drawable-hdpi/ic_room_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..078b10d4fb334b98e6a51010ca48513017046656 Binary files /dev/null and b/src/main/res/drawable-hdpi/ic_room_white_48dp.png differ diff --git a/src/main/res/drawable-mdpi/ic_description_black_48dp.png b/src/main/res/drawable-mdpi/ic_description_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..8470bc03fe5f4358e2aa428c818b4d72107c74e2 Binary files /dev/null and b/src/main/res/drawable-mdpi/ic_description_black_48dp.png differ diff --git a/src/main/res/drawable-mdpi/ic_description_white_48dp.png b/src/main/res/drawable-mdpi/ic_description_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..53083487f1450fc4cf91c419338eb930bc03a1df Binary files /dev/null and b/src/main/res/drawable-mdpi/ic_description_white_48dp.png differ diff --git a/src/main/res/drawable-mdpi/ic_headset_black_48dp.png b/src/main/res/drawable-mdpi/ic_headset_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..f2664dcde2705ebf36252d28c5a116286b9fca14 Binary files /dev/null and b/src/main/res/drawable-mdpi/ic_headset_black_48dp.png differ diff --git a/src/main/res/drawable-mdpi/ic_headset_white_48dp.png b/src/main/res/drawable-mdpi/ic_headset_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..d7a741b61245a862d82bec218e0fd907f087d1b1 Binary files /dev/null and b/src/main/res/drawable-mdpi/ic_headset_white_48dp.png differ diff --git a/src/main/res/drawable-mdpi/ic_mic_black_48dp.png b/src/main/res/drawable-mdpi/ic_mic_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..cac51c37a38c0ae7800b2f93c2d567508b417c52 Binary files /dev/null and b/src/main/res/drawable-mdpi/ic_mic_black_48dp.png differ diff --git a/src/main/res/drawable-mdpi/ic_mic_white_48dp.png b/src/main/res/drawable-mdpi/ic_mic_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..9f44db5d21785d6d92316645fe5bf23ae994b77e Binary files /dev/null and b/src/main/res/drawable-mdpi/ic_mic_white_48dp.png differ diff --git a/src/main/res/drawable-mdpi/ic_room_black_48dp.png b/src/main/res/drawable-mdpi/ic_room_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..b2696b6d4fcaee7f5fcb82563ea8ffc653c5768c Binary files /dev/null and b/src/main/res/drawable-mdpi/ic_room_black_48dp.png differ diff --git a/src/main/res/drawable-mdpi/ic_room_white_48dp.png b/src/main/res/drawable-mdpi/ic_room_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..814ca8ddc442ae97d8a78693c841e33141f96759 Binary files /dev/null and b/src/main/res/drawable-mdpi/ic_room_white_48dp.png differ diff --git a/src/main/res/drawable-xhdpi/ic_description_black_48dp.png b/src/main/res/drawable-xhdpi/ic_description_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..687d5f8577006a5a0444141952283ca447d72d92 Binary files /dev/null and b/src/main/res/drawable-xhdpi/ic_description_black_48dp.png differ diff --git a/src/main/res/drawable-xhdpi/ic_description_white_48dp.png b/src/main/res/drawable-xhdpi/ic_description_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..f89ffeb30b15061225d9c74d4f01db83c405bdc1 Binary files /dev/null and b/src/main/res/drawable-xhdpi/ic_description_white_48dp.png differ diff --git a/src/main/res/drawable-xhdpi/ic_headset_black_48dp.png b/src/main/res/drawable-xhdpi/ic_headset_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..974457ee1dc25f4c8e68fb4908cd1d5eb4639e0c Binary files /dev/null and b/src/main/res/drawable-xhdpi/ic_headset_black_48dp.png differ diff --git a/src/main/res/drawable-xhdpi/ic_headset_white_48dp.png b/src/main/res/drawable-xhdpi/ic_headset_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..0f0b2e15443da158d9c5b8c558ab88a408b95868 Binary files /dev/null and b/src/main/res/drawable-xhdpi/ic_headset_white_48dp.png differ diff --git a/src/main/res/drawable-xhdpi/ic_mic_black_48dp.png b/src/main/res/drawable-xhdpi/ic_mic_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..cf70b63bebaf755b4c6697fb7959f07a7484c8e0 Binary files /dev/null and b/src/main/res/drawable-xhdpi/ic_mic_black_48dp.png differ diff --git a/src/main/res/drawable-xhdpi/ic_mic_white_48dp.png b/src/main/res/drawable-xhdpi/ic_mic_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..2f1e60c55db59ab6460005a84c2e5fdf8c380dd7 Binary files /dev/null and b/src/main/res/drawable-xhdpi/ic_mic_white_48dp.png differ diff --git a/src/main/res/drawable-xhdpi/ic_room_black_48dp.png b/src/main/res/drawable-xhdpi/ic_room_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..7c2217e4651ee42cb7d34855d6b00689221ba304 Binary files /dev/null and b/src/main/res/drawable-xhdpi/ic_room_black_48dp.png differ diff --git a/src/main/res/drawable-xhdpi/ic_room_white_48dp.png b/src/main/res/drawable-xhdpi/ic_room_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..8bcb6f620d5eef21f9322626451aedf0e83cb510 Binary files /dev/null and b/src/main/res/drawable-xhdpi/ic_room_white_48dp.png differ diff --git a/src/main/res/drawable-xxhdpi/ic_description_black_48dp.png b/src/main/res/drawable-xxhdpi/ic_description_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..3d52dc2dab2136ffac5d32581e7ec2e6237a9cf6 Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ic_description_black_48dp.png differ diff --git a/src/main/res/drawable-xxhdpi/ic_description_white_48dp.png b/src/main/res/drawable-xxhdpi/ic_description_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..e841544963976ed0e7be2666cd2ccb262d5dea62 Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ic_description_white_48dp.png differ diff --git a/src/main/res/drawable-xxhdpi/ic_headset_black_48dp.png b/src/main/res/drawable-xxhdpi/ic_headset_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..bfbefd0a1ff75da49f8a1cd802a4ed22c8504f5b Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ic_headset_black_48dp.png differ diff --git a/src/main/res/drawable-xxhdpi/ic_headset_white_48dp.png b/src/main/res/drawable-xxhdpi/ic_headset_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..89b9910476f70957c233add97612f0fdf2facb43 Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ic_headset_white_48dp.png differ diff --git a/src/main/res/drawable-xxhdpi/ic_mic_black_48dp.png b/src/main/res/drawable-xxhdpi/ic_mic_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..0b214ab22513acb0809822139e8ec641729c976c Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ic_mic_black_48dp.png differ diff --git a/src/main/res/drawable-xxhdpi/ic_mic_white_48dp.png b/src/main/res/drawable-xxhdpi/ic_mic_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..ad0460c0a800207e4064328d05994b4ca9656764 Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ic_mic_white_48dp.png differ diff --git a/src/main/res/drawable-xxhdpi/ic_room_black_48dp.png b/src/main/res/drawable-xxhdpi/ic_room_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..a1d6c467655bdee8f7026034ad8cc668dceca8f6 Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ic_room_black_48dp.png differ diff --git a/src/main/res/drawable-xxhdpi/ic_room_white_48dp.png b/src/main/res/drawable-xxhdpi/ic_room_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..42ab08cf74b76cc3b490611d39bf98b666c1018a Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ic_room_white_48dp.png differ diff --git a/src/main/res/drawable-xxxhdpi/ic_description_black_48dp.png b/src/main/res/drawable-xxxhdpi/ic_description_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..c3c2720c71d2d16910fe1274bd76a5f178ec9c5b Binary files /dev/null and b/src/main/res/drawable-xxxhdpi/ic_description_black_48dp.png differ diff --git a/src/main/res/drawable-xxxhdpi/ic_description_white_48dp.png b/src/main/res/drawable-xxxhdpi/ic_description_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..2942f7ee7ea91bbc8f020fb115cc48829ff7209b Binary files /dev/null and b/src/main/res/drawable-xxxhdpi/ic_description_white_48dp.png differ diff --git a/src/main/res/drawable-xxxhdpi/ic_headset_black_48dp.png b/src/main/res/drawable-xxxhdpi/ic_headset_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..e5f79759d2d42ee42715d885cd82c13f0655b7cb Binary files /dev/null and b/src/main/res/drawable-xxxhdpi/ic_headset_black_48dp.png differ diff --git a/src/main/res/drawable-xxxhdpi/ic_headset_white_48dp.png b/src/main/res/drawable-xxxhdpi/ic_headset_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..25b99ec5a0abba45e2596b6f8e39b1f05e40ee9f Binary files /dev/null and b/src/main/res/drawable-xxxhdpi/ic_headset_white_48dp.png differ diff --git a/src/main/res/drawable-xxxhdpi/ic_mic_black_48dp.png b/src/main/res/drawable-xxxhdpi/ic_mic_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..e365a0f6d4a4b7bfb1b15dc93ed5eab4ba4d1f1f Binary files /dev/null and b/src/main/res/drawable-xxxhdpi/ic_mic_black_48dp.png differ diff --git a/src/main/res/drawable-xxxhdpi/ic_mic_white_48dp.png b/src/main/res/drawable-xxxhdpi/ic_mic_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..89f1608b1e4ca9191cfbe78add779e214663467d Binary files /dev/null and b/src/main/res/drawable-xxxhdpi/ic_mic_white_48dp.png differ diff --git a/src/main/res/drawable-xxxhdpi/ic_room_black_48dp.png b/src/main/res/drawable-xxxhdpi/ic_room_black_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..bfcc27a40a24e875feaa4cd243a192dac0538c64 Binary files /dev/null and b/src/main/res/drawable-xxxhdpi/ic_room_black_48dp.png differ diff --git a/src/main/res/drawable-xxxhdpi/ic_room_white_48dp.png b/src/main/res/drawable-xxxhdpi/ic_room_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..3baf20ac556df42fa98c3bb9e36408fd5f63bbd7 Binary files /dev/null and b/src/main/res/drawable-xxxhdpi/ic_room_white_48dp.png differ diff --git a/src/main/res/layout/media_preview.xml b/src/main/res/layout/media_preview.xml index ad7d5d0341bdf03c833f46ff600c699e768b1783..07da56f4e2d5edd27d5b526f33ac6a56b55e9580 100644 --- a/src/main/res/layout/media_preview.xml +++ b/src/main/res/layout/media_preview.xml @@ -9,6 +9,7 @@ android:layout_height="@dimen/media_preview_size" android:background="@color/black54" android:layout_centerInParent="true" + android:scaleType="center" android:layout_margin="12dp"/> + + + + + + diff --git a/src/main/res/values/themes.xml b/src/main/res/values/themes.xml index 85a30f669ba38b6011345fca558f21d170959f3f..47d975634f3bce405894adb22ad9ccd89975bc20 100644 --- a/src/main/res/values/themes.xml +++ b/src/main/res/values/themes.xml @@ -63,6 +63,11 @@ 24dp 16dp + @drawable/ic_description_black_48dp + @drawable/ic_mic_black_48dp + @drawable/ic_headset_black_48dp + @drawable/ic_room_black_48dp + @drawable/ic_group_add_white_24dp @drawable/ic_person_add_white_24dp @drawable/ic_cancel_black_24dp @@ -164,6 +169,11 @@ 24dp 16dp + @drawable/ic_description_white_48dp + @drawable/ic_mic_white_48dp + @drawable/ic_headset_white_48dp + @drawable/ic_room_white_48dp + @drawable/ic_group_add_white_24dp @drawable/ic_person_add_white_24dp @drawable/ic_cancel_white_24dp