Use isSavable API for offline reading
This helps in saving pages for offline reading only
for valid mimetypes.
diff --git a/src/com/android/browser/Controller.java b/src/com/android/browser/Controller.java
index 80a5a42..353fea9 100644
--- a/src/com/android/browser/Controller.java
+++ b/src/com/android/browser/Controller.java
@@ -1971,7 +1971,7 @@
// items defined in res/menu/browser.xml should be enabled
boolean isLiveScheme = false;
boolean isPageFinished = false;
-
+ boolean isSavable = false;
resetMenuItems(menu);
if (tab != null) {
@@ -1980,6 +1980,7 @@
isLive = !tab.isSnapshot();
isLiveScheme = UrlUtils.isLiveScheme(tab.getWebView().getUrl());
isPageFinished = (tab.getPageFinishedStatus() || !tab.inPageLoad());
+ isSavable = tab.getWebView().isSavable();
}
final MenuItem forward = menu.findItem(R.id.forward_menu_id);
@@ -2008,7 +2009,7 @@
setMenuItemVisibility(menu, R.id.add_to_homescreen,
isLive && isLiveScheme && isPageFinished);
setMenuItemVisibility(menu, R.id.save_snapshot_menu_id,
- isLive && isLiveScheme && isPageFinished);
+ isLive && isLiveScheme && isPageFinished && isSavable);
// history and snapshots item are the members of COMBO menu group,
// so if show history item, only make snapshots item invisible.
menu.findItem(R.id.snapshots_menu_id).setVisible(false);