From cb99b78ae53cbae1295f129cbbe035485ffedb38 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Mon, 26 Nov 2018 16:06:33 +0100 Subject: [PATCH] Fixed spacing between images in files upload list --- .../main/java/org/linphone/chat/ChatMessagesFragment.java | 8 +++++++- app/src/main/java/org/linphone/utils/ImageUtils.java | 8 ++++++++ app/src/main/res/layout/image_upload_cell.xml | 2 +- 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/org/linphone/chat/ChatMessagesFragment.java b/app/src/main/java/org/linphone/chat/ChatMessagesFragment.java index b92bf6357..572b827c5 100644 --- a/app/src/main/java/org/linphone/chat/ChatMessagesFragment.java +++ b/app/src/main/java/org/linphone/chat/ChatMessagesFragment.java @@ -59,6 +59,7 @@ import org.linphone.LinphoneManager; import org.linphone.settings.LinphonePreferences; import org.linphone.LinphoneService; import org.linphone.utils.FileUtils; +import org.linphone.utils.ImageUtils; import org.linphone.utils.LinphoneUtils; import org.linphone.R; import org.linphone.LinphoneActivity; @@ -838,6 +839,11 @@ public class ChatMessagesFragment extends Fragment implements ChatRoomListener, mSendMessageButton.setEnabled(true); } + private Bitmap scaleToFitHeight(Bitmap b, int height) { + float factor = height / (float) b.getHeight(); + return Bitmap.createScaledBitmap(b, (int) (b.getWidth() * factor), height, true); + } + private void addImageToPendingList(String path) { if (path == null) { Log.e("Can't add image to pending list because it's path is null..."); @@ -850,7 +856,7 @@ public class ChatMessagesFragment extends Fragment implements ChatRoomListener, ImageView image = pendingImage.findViewById(R.id.pendingImageForUpload); Bitmap bm = BitmapFactory.decodeFile(path); if (bm == null) return; - image.setImageBitmap(bm); + image.setImageBitmap(scaleToFitHeight(bm, (int) ImageUtils.dpToPixels(mContext, 100))); ImageView remove = pendingImage.findViewById(R.id.remove); remove.setTag(pendingImage); diff --git a/app/src/main/java/org/linphone/utils/ImageUtils.java b/app/src/main/java/org/linphone/utils/ImageUtils.java index f852365ab..bd60dad8e 100644 --- a/app/src/main/java/org/linphone/utils/ImageUtils.java +++ b/app/src/main/java/org/linphone/utils/ImageUtils.java @@ -20,6 +20,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ import android.content.Context; +import android.content.res.Resources; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; @@ -29,6 +30,7 @@ import android.graphics.PorterDuffXfermode; import android.graphics.Rect; import android.net.Uri; import android.provider.MediaStore; +import android.util.TypedValue; import android.widget.ImageView; import org.linphone.R; @@ -131,4 +133,10 @@ public class ImageUtils { return output; } + + public static float dpToPixels(Context context, float dp) { + Resources r = context.getResources(); + float px = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dp, r.getDisplayMetrics()); + return px; + } } diff --git a/app/src/main/res/layout/image_upload_cell.xml b/app/src/main/res/layout/image_upload_cell.xml index 709bfe6bb..01fe3e63e 100644 --- a/app/src/main/res/layout/image_upload_cell.xml +++ b/app/src/main/res/layout/image_upload_cell.xml @@ -1,6 +1,6 @@