aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain
diff options
context:
space:
mode:
authorDominik Schürmann <dominik@dominikschuermann.de>2014-06-16 15:20:15 +0200
committerDominik Schürmann <dominik@dominikschuermann.de>2014-06-16 15:20:15 +0200
commit21e9d0b7b4b0375c43287d4acd66ee01f2f1d5a0 (patch)
tree7267a609535686e8a51e7f847b0e230f552b25aa /OpenKeychain
parent81344389e548bbede12f9ad72824ce10cd718ea2 (diff)
parentda28c000adf57baab1c282cc6efd3f1d8eb9e392 (diff)
downloadopen-keychain-21e9d0b7b4b0375c43287d4acd66ee01f2f1d5a0.tar.gz
open-keychain-21e9d0b7b4b0375c43287d4acd66ee01f2f1d5a0.tar.bz2
open-keychain-21e9d0b7b4b0375c43287d4acd66ee01f2f1d5a0.zip
Merge pull request #656 from danielhass/supertoast-dev
Added SuperToasts with new notify-wrapper
Diffstat (limited to 'OpenKeychain')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptFileFragment.java4
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/Notify.java70
-rw-r--r--OpenKeychain/src/main/res/layout/decrypt_content.xml2
-rw-r--r--OpenKeychain/src/main/res/layout/notification_area.xml12
4 files changed, 87 insertions, 1 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptFileFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptFileFragment.java
index d953e2591..7fdab7bdd 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptFileFragment.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptFileFragment.java
@@ -39,6 +39,7 @@ import org.sufficientlysecure.keychain.helper.FileHelper;
import org.sufficientlysecure.keychain.pgp.PgpDecryptVerifyResult;
import org.sufficientlysecure.keychain.service.KeychainIntentService;
import org.sufficientlysecure.keychain.service.KeychainIntentServiceHandler;
+import org.sufficientlysecure.keychain.util.Notify;
import org.sufficientlysecure.keychain.ui.dialog.DeleteFileDialogFragment;
import org.sufficientlysecure.keychain.ui.dialog.FileDialogFragment;
import org.sufficientlysecure.keychain.util.Log;
@@ -115,7 +116,8 @@ public class DecryptFileFragment extends DecryptFragment {
}
if (mInputFilename.equals("")) {
- AppMsg.makeText(getActivity(), R.string.no_file_selected, AppMsg.STYLE_ALERT).show();
+ //AppMsg.makeText(getActivity(), R.string.no_file_selected, AppMsg.STYLE_ALERT).show();
+ Notify.showNotify(getActivity(), R.string.no_file_selected, Notify.Style.ERROR);
return;
}
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/Notify.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/Notify.java
new file mode 100644
index 000000000..67f81fb24
--- /dev/null
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/Notify.java
@@ -0,0 +1,70 @@
+/*
+ * Copyright (C) 2014 Dominik Schürmann <dominik@dominikschuermann.de>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+package org.sufficientlysecure.keychain.util;
+
+import android.app.Activity;
+import android.content.res.Resources;
+
+import com.github.johnpersano.supertoasts.SuperCardToast;
+import com.github.johnpersano.supertoasts.SuperToast;
+
+/**
+ * @author danielhass
+ * Notify wrapper which allows a more easy use of different notification libraries
+ */
+public class Notify {
+
+ public static enum Style {OK, WARN, ERROR}
+
+ /**
+ * Shows a simple in-layout notification with the CharSequence given as parameter
+ * @param activity
+ * @param text Text to show
+ * @param style Notification styling
+ */
+ public static void showNotify(Activity activity, CharSequence text, Style style) {
+
+ SuperCardToast st = new SuperCardToast(activity);
+ st.setText(text);
+ st.setDuration(SuperToast.Duration.MEDIUM);
+ switch (style){
+ case OK:
+ st.setBackground(SuperToast.Background.GREEN);
+ break;
+ case WARN:
+ st.setBackground(SuperToast.Background.ORANGE);
+ break;
+ case ERROR:
+ st.setBackground(SuperToast.Background.RED);
+ break;
+ }
+ st.show();
+
+ }
+
+ /**
+ * Shows a simple in-layout notification with the resource text from given id
+ * @param activity
+ * @param resId ResourceId of notification text
+ * @param style Notification styling
+ * @throws Resources.NotFoundException
+ */
+ public static void showNotify(Activity activity, int resId, Style style) throws Resources.NotFoundException {
+ showNotify(activity, activity.getResources().getText(resId), style);
+ }
+} \ No newline at end of file
diff --git a/OpenKeychain/src/main/res/layout/decrypt_content.xml b/OpenKeychain/src/main/res/layout/decrypt_content.xml
index a496d8b9d..866857143 100644
--- a/OpenKeychain/src/main/res/layout/decrypt_content.xml
+++ b/OpenKeychain/src/main/res/layout/decrypt_content.xml
@@ -6,6 +6,8 @@
android:layout_height="match_parent"
android:orientation="vertical">
+ <include layout="@layout/notification_area"/>
+
<android.support.v4.view.ViewPager
android:id="@+id/decrypt_pager"
android:layout_width="match_parent"
diff --git a/OpenKeychain/src/main/res/layout/notification_area.xml b/OpenKeychain/src/main/res/layout/notification_area.xml
new file mode 100644
index 000000000..d1ba265a5
--- /dev/null
+++ b/OpenKeychain/src/main/res/layout/notification_area.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<merge xmlns:android="http://schemas.android.com/apk/res/android">
+
+ <LinearLayout
+ android:id="@+id/card_container"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:background="@color/emphasis"
+ android:orientation="vertical" />
+
+</merge> \ No newline at end of file