Improved a bit the chat message file download layout

This commit is contained in:
Sylvain Berfini 2021-01-29 12:07:12 +01:00
parent 9a548ff388
commit 5d78281931
3 changed files with 34 additions and 24 deletions

View file

@ -76,8 +76,6 @@ class ChatMessageViewModel(
// TODO FIXME : find a way to refresh outgoing message downloaded // TODO FIXME : find a way to refresh outgoing message downloaded
if (state == ChatMessage.State.FileTransferDone && !message.isOutgoing) { if (state == ChatMessage.State.FileTransferDone && !message.isOutgoing) {
Log.i("[Chat Message] File transfer done") Log.i("[Chat Message] File transfer done")
// No need to refresh content lists on outgoing messages after file transfer is done
// It will even cause the app to crash if updateContentsList isn't called right after
updateContentsList() updateContentsList()
if (!message.isEphemeral && corePreferences.makePublicMediaFilesDownloaded) { if (!message.isEphemeral && corePreferences.makePublicMediaFilesDownloaded) {

View file

@ -95,43 +95,50 @@
<ImageView <ImageView
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:src="@drawable/download" android:contentDescription="@string/chat_message_download_file"
android:padding="10dp" /> android:padding="5dp"
android:src="@drawable/download" />
<LinearLayout <LinearLayout
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="vertical" android:orientation="vertical"
android:gravity="center" android:gravity="center_vertical"
android:padding="10dp"> android:layout_marginLeft="5dp"
android:layout_marginRight="5dp">
<TextView <TextView
style="@style/button_small_font" style="@style/button_small_font"
android:text="@{data.fileName + ` (` + data.fileSize + `)`}" android:text="@{data.fileName}"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:textAlignment="center" android:ellipsize="end"
android:textColor="@drawable/assistant_button_text_color" /> android:textColor="@drawable/assistant_button_text_color" />
<TextView <LinearLayout
style="@style/button_font"
android:text="@string/chat_message_download_file"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:textColor="@drawable/assistant_button_text_color" android:gravity="center_vertical"
android:layout_marginTop="5dp" android:orientation="horizontal">
android:ellipsize="end"
android:visibility="@{data.downloadEnabled ? View.VISIBLE : View.GONE}" />
<ProgressBar <TextView
android:layout_width="100dp" style="@style/button_tiny_font"
android:layout_height="wrap_content" android:text="@{data.fileSize}"
android:layout_gravity="center" android:layout_width="wrap_content"
style="@style/Widget.AppCompat.ProgressBar.Horizontal" android:layout_height="wrap_content"
android:max="101" android:layout_marginRight="5dp"
android:layout_marginTop="5dp" android:textColor="@drawable/assistant_button_text_color" />
android:visibility="@{data.downloadProgress > 0 ? View.VISIBLE : View.GONE, default=gone}"
android:progress="@{data.downloadProgress, default=50}"/> <ProgressBar
android:layout_width="100dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
style="@style/Widget.AppCompat.ProgressBar.Horizontal"
android:max="100"
android:visibility="@{data.downloadProgress > 0 ? View.VISIBLE : View.GONE, default=gone}"
android:progress="@{data.downloadProgress, default=50}"/>
</LinearLayout>
</LinearLayout> </LinearLayout>

View file

@ -247,6 +247,11 @@
<item name="android:textSize">13sp</item> <item name="android:textSize">13sp</item>
</style> </style>
<style name="button_tiny_font" parent="@android:style/TextAppearance.Small">
<item name="android:textColor">?attr/primarySubtextDarkColor</item>
<item name="android:textSize">10sp</item>
</style>
<style name="standard_small_text_font" parent="@android:style/TextAppearance.Medium"> <style name="standard_small_text_font" parent="@android:style/TextAppearance.Medium">
<item name="android:textColor">?attr/primarySubtextDarkColor</item> <item name="android:textColor">?attr/primarySubtextDarkColor</item>
<item name="android:textSize">15sp</item> <item name="android:textSize">15sp</item>