summaryrefslogtreecommitdiffstats
path: root/src/com/android/browser/Bookmarks.java
diff options
context:
space:
mode:
authorBen Murdoch <benm@google.com>2009-10-12 10:29:00 +0100
committerBen Murdoch <benm@google.com>2009-10-14 10:59:12 +0100
commitde353621650d17a412b6ffe2cbf0366db5f11c40 (patch)
treed2fc420b0e279d642432e994c1d8432671cd7fdd /src/com/android/browser/Bookmarks.java
parent94b10fe271909535c559527a5b5edcdc61b435a0 (diff)
downloadpackages_apps_Browser-de353621650d17a412b6ffe2cbf0366db5f11c40.tar.gz
packages_apps_Browser-de353621650d17a412b6ffe2cbf0366db5f11c40.tar.bz2
packages_apps_Browser-de353621650d17a412b6ffe2cbf0366db5f11c40.zip
Don't allow the user to save bookmarks with a scheme that the Browser cannot directly handle.
Change-Id: I9cbdfeaaeef4ded3dac1623854ecb9c5c603eb91
Diffstat (limited to 'src/com/android/browser/Bookmarks.java')
-rw-r--r--src/com/android/browser/Bookmarks.java25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/com/android/browser/Bookmarks.java b/src/com/android/browser/Bookmarks.java
index c8aaee700..8d98f8995 100644
--- a/src/com/android/browser/Bookmarks.java
+++ b/src/com/android/browser/Bookmarks.java
@@ -41,6 +41,18 @@ import java.util.Date;
private static String[] SELECTION_ARGS;
+ // We only want the user to be able to bookmark content that
+ // the browser can handle directly.
+ private static final String acceptableBookmarkSchemes[] = {
+ "http:",
+ "https:",
+ "about:",
+ "data:",
+ "javascript:",
+ "file:",
+ "content:"
+ };
+
/**
* Add a bookmark to the database.
* @param context Context of the calling Activity. This is used to make
@@ -214,4 +226,17 @@ import java.util.Date;
bm.compress(Bitmap.CompressFormat.PNG, 100, os);
return os.toByteArray();
}
+
+ /* package */ static boolean urlHasAcceptableScheme(String url) {
+ if (url == null) {
+ return false;
+ }
+
+ for (int i = 0; i < acceptableBookmarkSchemes.length; i++) {
+ if (url.startsWith(acceptableBookmarkSchemes[i])) {
+ return true;
+ }
+ }
+ return false;
+ }
}