From a5be4d6cfd439539328c6b1d36fefa445833a871 Mon Sep 17 00:00:00 2001 From: Maciej Miszczyk Date: Tue, 14 Jan 2020 10:32:03 +0100 Subject: [PATCH] Add configuration option of disallowing subdomains --- .../im/delight/android/webview/AdvancedWebView.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/Source/library/src/main/java/im/delight/android/webview/AdvancedWebView.java b/Source/library/src/main/java/im/delight/android/webview/AdvancedWebView.java index b5a9353..bfc8977 100644 --- a/Source/library/src/main/java/im/delight/android/webview/AdvancedWebView.java +++ b/Source/library/src/main/java/im/delight/android/webview/AdvancedWebView.java @@ -80,6 +80,7 @@ public interface Listener { protected WeakReference mActivity; protected WeakReference mFragment; protected Listener mListener; + protected boolean mAllowSubdomains = true; protected final List mPermittedHostnames = new LinkedList(); /** File upload callback for platform versions prior to Android 5.0 */ protected ValueCallback mFileUploadCallbackFirst; @@ -340,6 +341,14 @@ public void addHttpHeader(final String name, final String value) { public void removeHttpHeader(final String name) { mHttpHeaders.remove(name); } + + public void setAllowSubdomains(boolean b){ + mAllowSubdomains = b; + } + + public boolean getAllowSubdomains(){ + return mAllowSubdomains; + } public void addPermittedHostname(String hostname) { mPermittedHostnames.add(hostname); @@ -503,7 +512,7 @@ public void onReceivedError(WebView view, int errorCode, String description, Str @Override public boolean shouldOverrideUrlLoading(final WebView view, final String url) { - if (!isPermittedUrl(url)) { + if (!isPermittedUrl(url, mAllowSubdomains)) { // if a listener is available if (mListener != null) { // inform the listener about the request