Finished big pictures preview in chat
This commit is contained in:
parent
0afb297a63
commit
58801d484d
2 changed files with 16 additions and 3 deletions
|
@ -30,6 +30,7 @@ import android.graphics.PorterDuffXfermode;
|
||||||
import android.graphics.Rect;
|
import android.graphics.Rect;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.provider.MediaStore;
|
import android.provider.MediaStore;
|
||||||
|
import android.util.DisplayMetrics;
|
||||||
import android.util.TypedValue;
|
import android.util.TypedValue;
|
||||||
import android.widget.ImageView;
|
import android.widget.ImageView;
|
||||||
|
|
||||||
|
@ -135,8 +136,10 @@ public class ImageUtils {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static float dpToPixels(Context context, float dp) {
|
public static float dpToPixels(Context context, float dp) {
|
||||||
Resources r = context.getResources();
|
return TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dp, context.getResources().getDisplayMetrics());
|
||||||
float px = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dp, r.getDisplayMetrics());
|
}
|
||||||
return px;
|
|
||||||
|
public static float pixelsToDp(Context context, float pixels) {
|
||||||
|
return pixels / ((float) context.getResources().getDisplayMetrics().densityDpi / DisplayMetrics.DENSITY_DEFAULT);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -28,10 +28,13 @@ import android.media.ExifInterface;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.AsyncTask;
|
import android.os.AsyncTask;
|
||||||
import android.provider.MediaStore;
|
import android.provider.MediaStore;
|
||||||
|
import android.view.ViewGroup;
|
||||||
import android.widget.ImageView;
|
import android.widget.ImageView;
|
||||||
|
import android.widget.RelativeLayout;
|
||||||
|
|
||||||
import org.linphone.mediastream.Log;
|
import org.linphone.mediastream.Log;
|
||||||
import org.linphone.utils.FileUtils;
|
import org.linphone.utils.FileUtils;
|
||||||
|
import org.linphone.utils.ImageUtils;
|
||||||
|
|
||||||
import java.io.FileNotFoundException;
|
import java.io.FileNotFoundException;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
@ -137,6 +140,13 @@ public class BitmapWorkerTask extends AsyncTask<String, Void, Bitmap> {
|
||||||
final BitmapWorkerTask bitmapWorkerTask = getBitmapWorkerTask(imageView);
|
final BitmapWorkerTask bitmapWorkerTask = getBitmapWorkerTask(imageView);
|
||||||
if (this == bitmapWorkerTask && imageView != null) {
|
if (this == bitmapWorkerTask && imageView != null) {
|
||||||
imageView.setImageBitmap(bitmap);
|
imageView.setImageBitmap(bitmap);
|
||||||
|
if (bitmap.getWidth() > ImageUtils.dpToPixels(mContext, 300)) {
|
||||||
|
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(bitmap.getWidth(), ViewGroup.LayoutParams.WRAP_CONTENT);
|
||||||
|
int margin = (int) ImageUtils.dpToPixels(mContext, 5);
|
||||||
|
params.setMargins(margin, margin, margin, margin);
|
||||||
|
imageView.setLayoutParams(params);
|
||||||
|
imageView.invalidate();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue