diff --git a/app/src/main/java/com/emanuelef/remote_capture/Utils.java b/app/src/main/java/com/emanuelef/remote_capture/Utils.java
index f9fa7805..087d627f 100644
--- a/app/src/main/java/com/emanuelef/remote_capture/Utils.java
+++ b/app/src/main/java/com/emanuelef/remote_capture/Utils.java
@@ -43,6 +43,7 @@ import android.content.res.Resources;
import android.database.Cursor;
import android.graphics.Bitmap;
import android.graphics.Canvas;
+import android.graphics.Point;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.net.ConnectivityManager;
@@ -68,9 +69,12 @@ import android.text.TextUtils;
import android.text.method.LinkMovementMethod;
import android.text.style.StyleSpan;
import android.util.Patterns;
+import android.view.Display;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
+import android.view.WindowManager;
+import android.view.WindowMetrics;
import android.widget.ImageView;
import android.widget.TableLayout;
import android.widget.TableRow;
@@ -217,6 +221,21 @@ public class Utils {
return primaryLocale;
}
+ @SuppressWarnings("deprecation")
+ public static int getSmallerDisplayDimension(Context ctx) {
+ WindowManager manager = (WindowManager) ctx.getSystemService(Context.WINDOW_SERVICE);
+
+ if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
+ WindowMetrics windowMetrics = manager.getCurrentWindowMetrics();
+ return Math.min(windowMetrics.getBounds().width(), windowMetrics.getBounds().width());
+ } else {
+ Display display = manager.getDefaultDisplay();
+ Point point = new Point();
+ display.getSize(point);
+ return Math.min(point.x, point.y);
+ }
+ }
+
public static String getCountryName(Context context, String country_code) {
Locale cur_locale = getPrimaryLocale(context);
return(new Locale(cur_locale.getCountry(), country_code)).getDisplayCountry();
diff --git a/app/src/main/java/com/emanuelef/remote_capture/activities/AboutActivity.java b/app/src/main/java/com/emanuelef/remote_capture/activities/AboutActivity.java
index 5b5afe77..f14a9607 100644
--- a/app/src/main/java/com/emanuelef/remote_capture/activities/AboutActivity.java
+++ b/app/src/main/java/com/emanuelef/remote_capture/activities/AboutActivity.java
@@ -21,9 +21,7 @@ package com.emanuelef.remote_capture.activities;
import android.app.Service;
import android.content.Intent;
-import android.content.res.Resources;
import android.graphics.Bitmap;
-import android.graphics.Point;
import android.net.ConnectivityManager;
import android.net.LinkProperties;
import android.net.Network;
@@ -35,13 +33,11 @@ import android.os.Looper;
import android.os.SystemClock;
import android.text.method.LinkMovementMethod;
import android.util.TypedValue;
-import android.view.Display;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
-import android.view.WindowManager;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.LinearLayout;
@@ -337,12 +333,7 @@ public class AboutActivity extends BaseActivity implements MenuProvider {
maxDp,
getResources().getDisplayMetrics()
);
-
- WindowManager manager = (WindowManager) getSystemService(WINDOW_SERVICE);
- Display display = manager.getDefaultDisplay();
- Point point = new Point();
- display.getSize(point);
- int smallerDimension = Math.min(Math.min(point.x, point.y) / 2, maxPx);
+ int smallerDimension = Math.min(Utils.getSmallerDisplayDimension(this) / 2, maxPx);
String device_name = Utils.getDeviceName(this);
if(device_name == null)
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index fd8326be..11010827 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -295,7 +295,7 @@
Overview
HTTP request
HTTP response
- Payload is truncated. Enable \"%1$s\" to show it in full
+ Payload is truncated. To show it in full, stop the capture and enable \"%1$s\" from the PCAPdroid settings
WebSocket
HTTP
Payload