From 5428113706a88669b693f8ac56360b48071ef3af Mon Sep 17 00:00:00 2001 From: vanitasvitae Date: Fri, 30 Dec 2016 22:02:32 +0100 Subject: [PATCH] Added option to copy images to clipboard. Also caught mysterious classcastexception in settings. --- .../com/github/dfa/diaspora_android/util/AppSettings.java | 7 ++++++- .../dfa/diaspora_android/web/ContextMenuWebView.java | 3 +++ app/src/main/res/values/strings.xml | 1 + 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/github/dfa/diaspora_android/util/AppSettings.java b/app/src/main/java/com/github/dfa/diaspora_android/util/AppSettings.java index 36acfc72..41a3198c 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/util/AppSettings.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/util/AppSettings.java @@ -285,7 +285,12 @@ public class AppSettings { * @return whether proxy is enabled or not */ public boolean isProxyHttpEnabled() { - return getBoolean(prefApp, R.string.pref_key__http_proxy_enabled, false); + try { + return getBoolean(prefApp, R.string.pref_key__http_proxy_enabled, false); + } catch (ClassCastException e) { + setProxyHttpEnabled(false); + return false; + } } public boolean wasProxyEnabled() { diff --git a/app/src/main/java/com/github/dfa/diaspora_android/web/ContextMenuWebView.java b/app/src/main/java/com/github/dfa/diaspora_android/web/ContextMenuWebView.java index 8dd20368..490082dc 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/web/ContextMenuWebView.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/web/ContextMenuWebView.java @@ -52,6 +52,7 @@ public class ContextMenuWebView extends NestedWebView { public static final int ID_SAVE_IMAGE = 10; public static final int ID_IMAGE_EXTERNAL_BROWSER = 11; + public static final int ID_COPY_IMAGE_LINK = 15; public static final int ID_COPY_LINK = 12; public static final int ID_SHARE_LINK = 13; public static final int ID_SHARE_IMAGE = 14; @@ -177,6 +178,7 @@ public class ContextMenuWebView extends NestedWebView { break; //Copy url to clipboard + case ID_COPY_IMAGE_LINK: case ID_COPY_LINK: if (url != null) { ClipboardManager clipboard = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE); @@ -209,6 +211,7 @@ public class ContextMenuWebView extends NestedWebView { menu.add(0, ID_SAVE_IMAGE, 0, context.getString(R.string.context_menu_save_image)).setOnMenuItemClickListener(handler); menu.add(0, ID_IMAGE_EXTERNAL_BROWSER, 0, context.getString(R.string.context_menu_open_external_browser)).setOnMenuItemClickListener(handler); menu.add(0, ID_SHARE_IMAGE, 0, context.getString(R.string.context_menu_share_image)).setOnMenuItemClickListener(handler); + menu.add(0, ID_COPY_IMAGE_LINK, 0, context.getString(R.string.context_menu_copy_image_link)).setOnMenuItemClickListener(handler); } else if (result.getType() == HitTestResult.ANCHOR_TYPE || result.getType() == HitTestResult.SRC_ANCHOR_TYPE) { // Menu options for a hyperlink. diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 634a2d84..3aa41ef8 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -90,6 +90,7 @@ Share image Open in external browser… Copy link address to clipboard + Copy image address to clipboard