Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(283)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java

Issue 1542943006: [Offline pages] Removing permission prompt when accessing offline page (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixing a comment based on CR Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java
index 49d3decbda66eac6bd81e878614b9976b5518d03..2bebd710a4028bfbbba10d03983d6852b823b825 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java
@@ -25,6 +25,7 @@ import android.util.Log;
import org.chromium.base.ApplicationState;
import org.chromium.base.ApplicationStatus;
+import org.chromium.base.PathUtils;
import org.chromium.base.ThreadUtils;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ChromeActivity;
@@ -281,10 +282,17 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat
}
@Override
- public boolean shouldRequestFileAccess(Tab tab) {
+ public boolean shouldRequestFileAccess(String url, Tab tab) {
// If the tab is null, then do not attempt to prompt for access.
if (tab == null) return false;
+ // If the url points inside of Chromium's data directory, no permissions are necessary.
+ // This is required to prevent permission prompt when uses wants to access offline pages.
+ if (url.startsWith("file://" + PathUtils.getDataDirectory(
+ mActivity.getApplicationContext()))) {
+ return false;
+ }
+
return !tab.getWindowAndroid().hasPermission(permission.WRITE_EXTERNAL_STORAGE)
&& tab.getWindowAndroid().canRequestPermission(permission.WRITE_EXTERNAL_STORAGE);
}

Powered by Google App Engine
This is Rietveld 408576698