From 8581afb66bd02b1938cab80e22479fa9ec562a79 Mon Sep 17 00:00:00 2001 From: M66B Date: Fri, 28 May 2021 20:22:01 +0200 Subject: [PATCH] Refactoring --- .../java/eu/faircode/email/ActivityMain.java | 2 +- .../java/eu/faircode/email/ActivitySetup.java | 2 +- .../email/FragmentOptionsNotifications.java | 2 +- .../main/java/eu/faircode/email/Helper.java | 50 +++++++++++++++++ app/src/main/java/eu/faircode/email/Log.java | 54 +------------------ 5 files changed, 55 insertions(+), 55 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/ActivityMain.java b/app/src/main/java/eu/faircode/email/ActivityMain.java index 3d3782ed3d..1982a9ca28 100644 --- a/app/src/main/java/eu/faircode/email/ActivityMain.java +++ b/app/src/main/java/eu/faircode/email/ActivityMain.java @@ -41,7 +41,7 @@ public class ActivityMain extends ActivityBase implements FragmentManager.OnBack protected void onCreate(Bundle savedInstanceState) { getSupportFragmentManager().addOnBackStackChangedListener(this); - if (!Log.isSupportedDevice() && Helper.isPlayStoreInstall()) { + if (!Helper.isSupportedDevice() && Helper.isPlayStoreInstall()) { setTheme(R.style.AppThemeBlueOrangeLight); super.onCreate(savedInstanceState); setContentView(R.layout.activity_unsupported); diff --git a/app/src/main/java/eu/faircode/email/ActivitySetup.java b/app/src/main/java/eu/faircode/email/ActivitySetup.java index aef81171fe..3b830ea74f 100644 --- a/app/src/main/java/eu/faircode/email/ActivitySetup.java +++ b/app/src/main/java/eu/faircode/email/ActivitySetup.java @@ -1001,7 +1001,7 @@ public class ActivitySetup extends ActivityBase implements FragmentManager.OnBac if ("biometrics".equals(key) || "pin".equals(key)) continue; - if ("alert_once".equals(key) && !Log.isXiaomi()) + if ("alert_once".equals(key) && !Helper.isXiaomi()) continue; if ("background_service".equals(key) && diff --git a/app/src/main/java/eu/faircode/email/FragmentOptionsNotifications.java b/app/src/main/java/eu/faircode/email/FragmentOptionsNotifications.java index 0131334516..36f68d3e93 100644 --- a/app/src/main/java/eu/faircode/email/FragmentOptionsNotifications.java +++ b/app/src/main/java/eu/faircode/email/FragmentOptionsNotifications.java @@ -480,7 +480,7 @@ public class FragmentOptionsNotifications extends FragmentBase implements Shared : R.color.lightColorBackground_cards)); } - swAlertOnce.setVisibility(Log.isXiaomi() || BuildConfig.DEBUG ? View.VISIBLE : View.GONE); + swAlertOnce.setVisibility(Helper.isXiaomi() || BuildConfig.DEBUG ? View.VISIBLE : View.GONE); // https://developer.android.com/training/notify-user/group tvNoGrouping.setVisibility(Build.VERSION.SDK_INT < Build.VERSION_CODES.N ? View.VISIBLE : View.GONE); diff --git a/app/src/main/java/eu/faircode/email/Helper.java b/app/src/main/java/eu/faircode/email/Helper.java index 58c8fe4f3f..e77394df82 100644 --- a/app/src/main/java/eu/faircode/email/Helper.java +++ b/app/src/main/java/eu/faircode/email/Helper.java @@ -825,6 +825,56 @@ public class Helper { return 0; } + static boolean isSupportedDevice() { + if ("Amazon".equals(Build.BRAND) && Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { + /* + java.lang.IllegalArgumentException: Comparison method violates its general contract! + java.lang.IllegalArgumentException: Comparison method violates its general contract! + at java.util.TimSort.mergeHi(TimSort.java:864) + at java.util.TimSort.mergeAt(TimSort.java:481) + at java.util.TimSort.mergeCollapse(TimSort.java:406) + at java.util.TimSort.sort(TimSort.java:210) + at java.util.TimSort.sort(TimSort.java:169) + at java.util.Arrays.sort(Arrays.java:2010) + at java.util.Collections.sort(Collections.java:1883) + at android.view.ViewGroup$ChildListForAccessibility.init(ViewGroup.java:7181) + at android.view.ViewGroup$ChildListForAccessibility.obtain(ViewGroup.java:7138) + at android.view.ViewGroup.dispatchPopulateAccessibilityEventInternal(ViewGroup.java:2734) + at android.view.View.dispatchPopulateAccessibilityEvent(View.java:5617) + at android.view.View.sendAccessibilityEventUncheckedInternal(View.java:5582) + at android.view.View.sendAccessibilityEventUnchecked(View.java:5566) + at android.view.View.sendAccessibilityEventInternal(View.java:5543) + at android.view.View.sendAccessibilityEvent(View.java:5512) + at android.view.View.onFocusChanged(View.java:5449) + at android.view.View.handleFocusGainInternal(View.java:5229) + at android.view.ViewGroup.handleFocusGainInternal(ViewGroup.java:651) + at android.view.View.requestFocusNoSearch(View.java:7950) + at android.view.View.requestFocus(View.java:7929) + at android.view.ViewGroup.requestFocus(ViewGroup.java:2612) + at android.view.ViewGroup.onRequestFocusInDescendants(ViewGroup.java:2657) + at android.view.ViewGroup.requestFocus(ViewGroup.java:2613) + at android.view.View.requestFocus(View.java:7896) + at android.view.View.requestFocus(View.java:7875) + at androidx.recyclerview.widget.RecyclerView.recoverFocusFromState(SourceFile:3788) + at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep3(SourceFile:4023) + at androidx.recyclerview.widget.RecyclerView.dispatchLayout(SourceFile:3652) + at androidx.recyclerview.widget.RecyclerView.consumePendingUpdateOperations(SourceFile:1877) + at androidx.recyclerview.widget.RecyclerView$w.run(SourceFile:5044) + at android.view.Choreographer$CallbackRecord.run(Choreographer.java:781) + at android.view.Choreographer.doCallbacks(Choreographer.java:592) + at android.view.Choreographer.doFrame(Choreographer.java:559) + at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:767) + */ + return false; + } + + return true; + } + + static boolean isXiaomi() { + return "Xiaomi".equalsIgnoreCase(Build.MANUFACTURER); + } + static boolean isSurfaceDuo() { return ("Microsoft".equalsIgnoreCase(Build.MANUFACTURER) && "Surface Duo".equals(Build.MODEL)); } diff --git a/app/src/main/java/eu/faircode/email/Log.java b/app/src/main/java/eu/faircode/email/Log.java index 70544558c3..e22e0715e8 100644 --- a/app/src/main/java/eu/faircode/email/Log.java +++ b/app/src/main/java/eu/faircode/email/Log.java @@ -576,7 +576,7 @@ public class Log { } static boolean isOwnFault(Throwable ex) { - if (!isSupportedDevice()) + if (!Helper.isSupportedDevice()) return false; if (ex instanceof OutOfMemoryError || @@ -2141,54 +2141,4 @@ public class Log { static InternetAddress myAddress() throws UnsupportedEncodingException { return new InternetAddress("marcel+fairemail@faircode.eu", "FairCode", StandardCharsets.UTF_8.name()); } - - static boolean isSupportedDevice() { - if ("Amazon".equals(Build.BRAND) && Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { - /* - java.lang.IllegalArgumentException: Comparison method violates its general contract! - java.lang.IllegalArgumentException: Comparison method violates its general contract! - at java.util.TimSort.mergeHi(TimSort.java:864) - at java.util.TimSort.mergeAt(TimSort.java:481) - at java.util.TimSort.mergeCollapse(TimSort.java:406) - at java.util.TimSort.sort(TimSort.java:210) - at java.util.TimSort.sort(TimSort.java:169) - at java.util.Arrays.sort(Arrays.java:2010) - at java.util.Collections.sort(Collections.java:1883) - at android.view.ViewGroup$ChildListForAccessibility.init(ViewGroup.java:7181) - at android.view.ViewGroup$ChildListForAccessibility.obtain(ViewGroup.java:7138) - at android.view.ViewGroup.dispatchPopulateAccessibilityEventInternal(ViewGroup.java:2734) - at android.view.View.dispatchPopulateAccessibilityEvent(View.java:5617) - at android.view.View.sendAccessibilityEventUncheckedInternal(View.java:5582) - at android.view.View.sendAccessibilityEventUnchecked(View.java:5566) - at android.view.View.sendAccessibilityEventInternal(View.java:5543) - at android.view.View.sendAccessibilityEvent(View.java:5512) - at android.view.View.onFocusChanged(View.java:5449) - at android.view.View.handleFocusGainInternal(View.java:5229) - at android.view.ViewGroup.handleFocusGainInternal(ViewGroup.java:651) - at android.view.View.requestFocusNoSearch(View.java:7950) - at android.view.View.requestFocus(View.java:7929) - at android.view.ViewGroup.requestFocus(ViewGroup.java:2612) - at android.view.ViewGroup.onRequestFocusInDescendants(ViewGroup.java:2657) - at android.view.ViewGroup.requestFocus(ViewGroup.java:2613) - at android.view.View.requestFocus(View.java:7896) - at android.view.View.requestFocus(View.java:7875) - at androidx.recyclerview.widget.RecyclerView.recoverFocusFromState(SourceFile:3788) - at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep3(SourceFile:4023) - at androidx.recyclerview.widget.RecyclerView.dispatchLayout(SourceFile:3652) - at androidx.recyclerview.widget.RecyclerView.consumePendingUpdateOperations(SourceFile:1877) - at androidx.recyclerview.widget.RecyclerView$w.run(SourceFile:5044) - at android.view.Choreographer$CallbackRecord.run(Choreographer.java:781) - at android.view.Choreographer.doCallbacks(Choreographer.java:592) - at android.view.Choreographer.doFrame(Choreographer.java:559) - at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:767) - */ - return false; - } - - return true; - } - - static boolean isXiaomi() { - return "Xiaomi".equalsIgnoreCase(Build.MANUFACTURER); - } -} \ No newline at end of file +}