From 33bc407e7ac9145654e4cb96afe3d2a23d22b47b Mon Sep 17 00:00:00 2001 From: Christian Hagau Date: Mon, 23 Oct 2017 00:00:00 +0000 Subject: [PATCH 1/2] Add @CheckResult to Notify.create() to prevent misuse --- .../org/sufficientlysecure/keychain/ui/util/Notify.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/util/Notify.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/util/Notify.java index 71f6ecc1a..84f97ba4a 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/util/Notify.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/util/Notify.java @@ -18,6 +18,7 @@ package org.sufficientlysecure.keychain.ui.util; import android.app.Activity; +import android.support.annotation.CheckResult; import android.support.v4.app.Fragment; import android.view.View; import android.view.ViewGroup; @@ -55,6 +56,7 @@ public class Notify { public static final int LENGTH_LONG = 3500; public static final int LENGTH_SHORT = 1500; + @CheckResult public static Showable create(final Activity activity, String text, int duration, Style style, final ActionListener actionListener, Integer actionResId) { final Snackbar snackbar = Snackbar.with(activity) @@ -134,28 +136,34 @@ public class Notify { }; } + @CheckResult public static Showable create(Activity activity, String text, int duration, Style style) { return create(activity, text, duration, style, null, null); } + @CheckResult public static Showable create(Activity activity, String text, Style style) { return create(activity, text, LENGTH_LONG, style); } + @CheckResult public static Showable create(Activity activity, int textResId, Style style, ActionListener actionListener, int actionResId) { return create(activity, textResId, LENGTH_LONG, style, actionListener, actionResId); } + @CheckResult public static Showable create(Activity activity, int textResId, int duration, Style style, ActionListener actionListener, int actionResId) { return create(activity, activity.getString(textResId), duration, style, actionListener, actionResId); } + @CheckResult public static Showable create(Activity activity, int textResId, int duration, Style style) { return create(activity, activity.getString(textResId), duration, style); } + @CheckResult public static Showable create(Activity activity, int textResId, Style style) { return create(activity, activity.getString(textResId), style); } From 80be81adb3d830b3b6a5ca2bfe1a4e1b891e5cf5 Mon Sep 17 00:00:00 2001 From: Christian Hagau Date: Mon, 23 Oct 2017 00:00:00 +0000 Subject: [PATCH 2/2] Fix showing of some notifications --- .../org/sufficientlysecure/keychain/ui/DecryptFragment.java | 2 +- .../keychain/ui/ViewKeyAdvShareFragment.java | 4 ++-- .../keychain/ui/linked/LinkedIdCreateHttpsStep2Fragment.java | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptFragment.java index eac15e398..756f56535 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptFragment.java @@ -201,7 +201,7 @@ public abstract class DecryptFragment extends Fragment implements LoaderManager. startActivity(viewKeyIntent); } catch (PgpKeyNotFoundException e) { - Notify.create(getActivity(), R.string.error_key_not_found, Style.ERROR); + Notify.create(getActivity(), R.string.error_key_not_found, Style.ERROR).show(); } } diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyAdvShareFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyAdvShareFragment.java index 54ed34693..086dfbaf0 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyAdvShareFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyAdvShareFragment.java @@ -207,7 +207,7 @@ public class ViewKeyAdvShareFragment extends LoaderFragment implements if (toClipboard) { ClipboardManager clipMan = (ClipboardManager) activity.getSystemService(Context.CLIPBOARD_SERVICE); if (clipMan == null) { - Notify.create(activity, R.string.error_clipboard_copy, Style.ERROR); + Notify.create(activity, R.string.error_clipboard_copy, Style.ERROR).show(); return; } @@ -278,7 +278,7 @@ public class ViewKeyAdvShareFragment extends LoaderFragment implements if (toClipboard) { ClipboardManager clipMan = (ClipboardManager) activity.getSystemService(Context.CLIPBOARD_SERVICE); if (clipMan == null) { - Notify.create(activity, R.string.error_clipboard_copy, Style.ERROR); + Notify.create(activity, R.string.error_clipboard_copy, Style.ERROR).show(); return; } diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateHttpsStep2Fragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateHttpsStep2Fragment.java index d1f2c0ce1..7b8e4c4b4 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateHttpsStep2Fragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateHttpsStep2Fragment.java @@ -126,7 +126,7 @@ public class LinkedIdCreateHttpsStep2Fragment extends LinkedIdCreateFinalFragmen private void proofSave () { String state = Environment.getExternalStorageState(); if (!Environment.MEDIA_MOUNTED.equals(state)) { - Notify.create(getActivity(), "External storage not available!", Style.ERROR); + Notify.create(getActivity(), "External storage not available!", Style.ERROR).show(); return; }