summaryrefslogtreecommitdiffstats
path: root/src/com/android/browser
diff options
context:
space:
mode:
authorJohn Reck <jreck@google.com>2011-01-18 09:53:35 -0800
committerAndroid (Google) Code Review <android-gerrit@google.com>2011-01-18 09:53:35 -0800
commit0e64d3c230a0fafff311d39c52b043ef137bf318 (patch)
tree89d186145bd0175602a0aefe0930ab177627b0cb /src/com/android/browser
parentafe67aa948e73c2b5fc55c012db35738d283c59d (diff)
parent438bf46c98890b5fe1356e75b4bc759033c6fc57 (diff)
downloadpackages_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.java10
-rw-r--r--src/com/android/browser/homepages/HomeProvider.java21
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;
+ }
+
}