diff options
| author | John Reck <jreck@google.com> | 2011-01-18 09:53:35 -0800 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2011-01-18 09:53:35 -0800 |
| commit | 0e64d3c230a0fafff311d39c52b043ef137bf318 (patch) | |
| tree | 89d186145bd0175602a0aefe0930ab177627b0cb /src/com/android/browser | |
| parent | afe67aa948e73c2b5fc55c012db35738d283c59d (diff) | |
| parent | 438bf46c98890b5fe1356e75b4bc759033c6fc57 (diff) | |
| download | packages_apps_Browser-0e64d3c230a0fafff311d39c52b043ef137bf318.tar.gz packages_apps_Browser-0e64d3c230a0fafff311d39c52b043ef137bf318.tar.bz2 packages_apps_Browser-0e64d3c230a0fafff311d39c52b043ef137bf318.zip | |
Merge "Fix "Most Visited" page loading" into honeycomb
Diffstat (limited to 'src/com/android/browser')
| -rw-r--r-- | src/com/android/browser/Tab.java | 10 | ||||
| -rw-r--r-- | src/com/android/browser/homepages/HomeProvider.java | 21 |
2 files changed, 31 insertions, 0 deletions
diff --git a/src/com/android/browser/Tab.java b/src/com/android/browser/Tab.java index 0347ef596..83db214e1 100644 --- a/src/com/android/browser/Tab.java +++ b/src/com/android/browser/Tab.java @@ -16,6 +16,7 @@ package com.android.browser; +import com.android.browser.homepages.HomeProvider; import com.android.common.speech.LoggingEvents; import android.app.Activity; @@ -50,6 +51,7 @@ import android.webkit.WebBackForwardList; import android.webkit.WebBackForwardListClient; import android.webkit.WebChromeClient; import android.webkit.WebHistoryItem; +import android.webkit.WebResourceResponse; import android.webkit.WebStorage; import android.webkit.WebView; import android.webkit.WebViewClient; @@ -792,6 +794,14 @@ class Tab { } @Override + public WebResourceResponse shouldInterceptRequest(WebView view, + String url) { + WebResourceResponse res = HomeProvider.shouldInterceptRequest( + mActivity, url); + return res; + } + + @Override public boolean shouldOverrideKeyEvent(WebView view, KeyEvent event) { if (!mInForeground) { return false; diff --git a/src/com/android/browser/homepages/HomeProvider.java b/src/com/android/browser/homepages/HomeProvider.java index 5c368ebac..98fcfbef8 100644 --- a/src/com/android/browser/homepages/HomeProvider.java +++ b/src/com/android/browser/homepages/HomeProvider.java @@ -16,15 +16,20 @@ */
package com.android.browser.homepages;
+import com.android.browser.BrowserSettings;
+
import android.content.ContentProvider;
import android.content.ContentValues;
+import android.content.Context;
import android.content.res.AssetFileDescriptor;
import android.database.Cursor;
import android.net.Uri;
import android.os.ParcelFileDescriptor;
import android.util.Log;
+import android.webkit.WebResourceResponse;
import java.io.IOException;
+import java.io.InputStream;
public class HomeProvider extends ContentProvider {
@@ -78,4 +83,20 @@ public class HomeProvider extends ContentProvider { }
}
+ public static WebResourceResponse shouldInterceptRequest(Context context,
+ String url) {
+ try {
+ boolean useMostVisited = BrowserSettings.getInstance().useMostVisitedHomepage();
+ if (useMostVisited && url.startsWith("content://")) {
+ Uri uri = Uri.parse(url);
+ if (AUTHORITY.equals(uri.getAuthority())) {
+ InputStream ins = context.getContentResolver()
+ .openInputStream(uri);
+ return new WebResourceResponse("text/html", "utf-8", ins);
+ }
+ }
+ } catch (Exception e) {}
+ return null;
+ }
+
}
|
