Data URL fixes - bookmarks, save, and wallpaper
Bug 5383517
Images kept in data URLs can now be selected and this fixes the
Save and Set Wallpaper options. It also removes the bookmarking
capability.
Change-Id: I461bdcb4c950f6fcd8db8b38f4c599212106b027
diff --git a/src/com/android/browser/NavigationBarTablet.java b/src/com/android/browser/NavigationBarTablet.java
index c22b1a0..be3a9ab 100644
--- a/src/com/android/browser/NavigationBarTablet.java
+++ b/src/com/android/browser/NavigationBarTablet.java
@@ -151,6 +151,12 @@
}
@Override
+ public void onTabDataChanged(Tab tab) {
+ super.onTabDataChanged(tab);
+ showHideStar(tab);
+ }
+
+ @Override
public void setCurrentUrlIsBookmark(boolean isBookmark) {
mStar.setActivated(isBookmark);
}
@@ -235,7 +241,7 @@
}
mGoButton.setVisibility(View.GONE);
mVoiceSearch.setVisibility(View.GONE);
- mStar.setVisibility(View.VISIBLE);
+ showHideStar(mUiController.getCurrentTab());
mClearButton.setVisibility(View.GONE);
if (mTitleBar.useQuickControls()) {
mSearchButton.setVisibility(View.GONE);
@@ -321,4 +327,16 @@
combo.start();
}
+ private void showHideStar(Tab tab) {
+ // hide the bookmark star for data URLs
+ if (tab != null && tab.inForeground()) {
+ int starVisibility = View.VISIBLE;
+ String url = tab.getUrl();
+ if (DataUri.isDataUri(url)) {
+ starVisibility = View.GONE;
+ }
+ mStar.setVisibility(starVisibility);
+ }
+ }
+
}