Saved Pages tab

 Bug: 4982126
 Add saved pages tab
 Remove "save page" menu option
 Add "save for offline reading" menu option
 Smooth animation to combo view

Change-Id: Ia67552a6f6a5474a6dfcff6790a341d4d36d5a77
diff --git a/res/layout/snapshot_item.xml b/res/layout/snapshot_item.xml
new file mode 100644
index 0000000..76cd501
--- /dev/null
+++ b/res/layout/snapshot_item.xml
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2011 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<RelativeLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:padding="@dimen/combo_horizontalSpacing">
+    <ImageView
+        android:id="@+id/thumb"
+        android:src="@drawable/thumbnail_bookmarks_widget_no_bookmark_holo"
+        android:layout_width="@dimen/bookmarkThumbnailWidth"
+        android:layout_height="@dimen/bookmarkThumbnailHeight"
+        android:scaleType="centerCrop"
+        android:cropToPadding="true"
+        android:background="@drawable/border_thumb_bookmarks_widget_holo" />
+    <TextView
+        android:id="@+id/title"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_alignBottom="@id/thumb"
+        android:layout_alignLeft="@id/thumb"
+        android:layout_alignRight="@id/thumb"
+        android:background="@drawable/overlay_url_bookmark_widget_holo"
+        android:singleLine="true"
+        android:ellipsize="end"
+        android:textSize="12sp"
+        android:typeface="sans"
+        android:textColor="@android:color/white"
+        android:paddingLeft="2dip"
+        android:paddingRight="2dip" />
+    <ImageView
+        android:id="@+id/divider"
+        android:src="?android:attr/dividerVertical"
+        android:layout_width="wrap_content"
+        android:layout_height="24dip"
+        android:layout_below="@+id/thumb"
+        android:layout_alignLeft="@+id/thumb"
+        android:scaleType="fitXY"
+        android:layout_marginTop="12dip" />
+    <TextView android:id="@+id/date"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_toRightOf="@id/divider"
+        android:layout_alignTop="@id/divider"
+        android:layout_alignBottom="@id/divider"
+        android:paddingLeft="8dip"
+        android:gravity="center_vertical"
+        android:typeface="sans"
+        android:textSize="14sp"
+        android:textColor="#AAAAAA" />
+    <TextView android:id="@+id/size"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_alignTop="@id/divider"
+        android:layout_alignBottom="@id/divider"
+        android:layout_alignRight="@+id/thumb"
+        android:paddingRight="2dip"
+        android:gravity="center_vertical"
+        android:typeface="sans"
+        android:textSize="14sp"
+        android:textColor="#AAAAAA" />
+</RelativeLayout>
diff --git a/res/layout/snapshots.xml b/res/layout/snapshots.xml
new file mode 100644
index 0000000..48d2883
--- /dev/null
+++ b/res/layout/snapshots.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2011 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<FrameLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:paddingTop="@dimen/combo_paddingTop">
+
+    <GridView
+        android:id="@+id/grid"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:layout_gravity="center_horizontal"
+        android:numColumns="auto_fit"
+        android:stretchMode="none"
+        android:gravity="center" />
+    <TextView
+        android:id="@android:id/empty"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center"
+        android:textAppearance="?android:attr/textAppearanceLarge"
+        android:text="@string/empty_bookmarks_folder"
+        android:visibility="gone" />
+
+</FrameLayout>
diff --git a/res/menu-sw600dp/browser.xml b/res/menu-sw600dp/browser.xml
index 23366e7..29b6117 100644
--- a/res/menu-sw600dp/browser.xml
+++ b/res/menu-sw600dp/browser.xml
@@ -32,11 +32,8 @@
             android:title="@string/share_page"
             android:icon="@drawable/ic_share_holo_dark"
             android:alphabeticShortcut="s" />
-        <item android:id="@+id/save_webarchive_menu_id"
-            android:title="@string/menu_save_webarchive" />
-        <item
-            android:id="@+id/freeze_tab_menu_id"
-            android:title="@string/menu_freeze_tab" />
+        <item android:id="@+id/save_snapshot_menu_id"
+            android:title="@string/menu_save_snapshot" />
         <item android:id="@+id/page_info_menu_id"
             android:title="@string/page_info"
             android:icon="@drawable/ic_pageinfo_holo_dark"
diff --git a/res/menu/browser.xml b/res/menu/browser.xml
index 6eadcba..630bb87 100644
--- a/res/menu/browser.xml
+++ b/res/menu/browser.xml
@@ -62,11 +62,8 @@
             android:icon="@drawable/ic_share_holo_dark"
             android:alphabeticShortcut="s" />
         <item
-            android:id="@+id/save_webarchive_menu_id"
-            android:title="@string/menu_save_webarchive" />
-        <item
-            android:id="@+id/freeze_tab_menu_id"
-            android:title="@string/menu_freeze_tab" />
+            android:id="@+id/save_snapshot_menu_id"
+            android:title="@string/menu_save_snapshot" />
         <item
             android:id="@+id/page_info_menu_id"
             android:title="@string/page_info"
diff --git a/res/menu/snapshots_context.xml b/res/menu/snapshots_context.xml
new file mode 100644
index 0000000..01880dd
--- /dev/null
+++ b/res/menu/snapshots_context.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2011 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<menu xmlns:android="http://schemas.android.com/apk/res/android">
+    <group android:id="@+id/CONTEXT_MENU">
+        <item
+            android:id="@+id/delete_context_menu_id"
+            android:title="@string/remove_bookmark"/>
+    </group>
+</menu>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 9dbaea4..624f763 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -34,6 +34,8 @@
     <string name="tab_most_visited">Most visited</string>
     <!-- Name of tab containing the user's complete history, organized by time of last visit -->
     <string name="tab_history">History</string>
+    <!-- Name of tab containing the user's saved pages, organized by time created [CHAR LIMIT=20] -->
+    <string name="tab_snapshots">Saved Pages</string>
     <!-- Toast shown when a history item's star is clicked, converting it to a bookmark -->
     <string name="added_to_bookmarks">Added to bookmarks</string>
     <!-- Toast shown when a history item's star is clicked off, removing its bookmark -->
@@ -213,15 +215,10 @@
     <string name="copy_page_url">Copy page url</string>
     <!-- Menu item -->
     <string name="share_page">Share page</string>
-    <!-- Menu item to freeze a tab. This will make a view-only
-            snapshot of the page in a new tab. [CHAR LIMIT=50] -->
-    <string name="menu_freeze_tab">Freeze tab</string>
-    <!-- Menu item for saving a page. [CHAR LIMIT=30] -->
-    <string name="menu_save_webarchive">Save page</string>
-    <!-- Toast informing the user that the page has been saved. [CHAR LIMIT=50] -->
-    <string name="webarchive_saved">Page saved.</string>
-    <!-- Toast informing the user that saving the page has failed. [CHAR LIMIT=50] -->
-    <string name="webarchive_failed">Failed to save page.</string>
+    <!-- Menu item for saving a page for offline reading. This is a view-only snapshot of the page. [CHAR LIMIT=50] -->
+    <string name="menu_save_snapshot">Save for offline reading</string>
+    <!-- Toast informing the user that saving the page for offline reading has failed. [CHAR LIMIT=50] -->
+    <string name="snapshot_failed">Failed to save for offline reading.</string>
     <!-- The number of bookmarks in a folder [CHAR LIMT=50] -->
     <string name="contextheader_folder_bookmarkcount"><xliff:g id="bookmark_count">%d</xliff:g> bookmarks</string>
     <!-- No bookmarks in the folder [CHAR LIMIT=50] -->