Merge "show IME when titlebar is selected in tab switcher"
diff --git a/res/values-be/strings.xml b/res/values-be/strings.xml
index 927de05..fc91f30 100644
--- a/res/values-be/strings.xml
+++ b/res/values-be/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Капіяваць URL-адрас старонкі"</string>
     <string name="share_page" msgid="593756995297268343">"Адправіць старонку"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"Захаваць для чытання ў аўтаномным рэжыме"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"Захаванне..."</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"Немагчыма захаваць для чытання ў аўтаномным рэжыме."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"Закладак: <xliff:g id="BOOKMARK_COUNT">%d</xliff:g>"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Ачысцiць тэчку"</string>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index 6290383..e74bdc5 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Копиране на URL адреса на страницата"</string>
     <string name="share_page" msgid="593756995297268343">"Споделяне на страницата"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"Запазване за четене офлайн"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"Запазва се…"</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"Не можа да се запази за четене офлайн."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"<xliff:g id="BOOKMARK_COUNT">%d</xliff:g> отметки"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Празна папка"</string>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index 5a6173c..59fb73f 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Kopírovat adresu URL stránky"</string>
     <string name="share_page" msgid="593756995297268343">"Sdílet stránku"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"Uložit ke čtení offline"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"Ukládání…"</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"Uložení ke čtení offline se nezdařilo."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"Počet záložek: <xliff:g id="BOOKMARK_COUNT">%d</xliff:g>"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Prázdná složka"</string>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index 8730e7a..cd04f72 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -102,7 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Copiar la URL de la página"</string>
     <string name="share_page" msgid="593756995297268343">"Compartir página"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"Guardar para leer sin conexión"</string>
-    <string name="saving_snapshot" msgid="1693789062351182809">"Guardando..."</string>
+    <string name="saving_snapshot" msgid="1693789062351182809">"Guardando…"</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"La página no se guardó para leer sin conexión."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"<xliff:g id="BOOKMARK_COUNT">%d</xliff:g> Marcadores"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Vaciar carpeta"</string>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index 8baad4c..022b294 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"کپی URL صفحه"</string>
     <string name="share_page" msgid="593756995297268343">"اشتراک گذاری صفحه"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"ذخیره برای مطالعه در حالت آفلاین"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"در حال ذخیره…"</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"برای خواندن آفلاین قابل ذخیره نیست."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"<xliff:g id="BOOKMARK_COUNT">%d</xliff:g> نشانک"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"پوشه خالی"</string>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index 9827a59..d4b490d 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Kopioi sivun URL-osoite"</string>
     <string name="share_page" msgid="593756995297268343">"Jaa sivu"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"Tallenna offline-tilassa luettavaksi"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"Tallennetaan..."</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"Ei voitu tallentaa offline-käyttöä varten."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"<xliff:g id="BOOKMARK_COUNT">%d</xliff:g> kirjanmerkkiä"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Tyhjä kansio"</string>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index 6bb492d..5061ebc 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"पृष्ठ url की प्रतिलिपि बनाएं"</string>
     <string name="share_page" msgid="593756995297268343">"पृष्ठ शेयर करें"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"ऑफ़लाइन पढ़ने के लिए सहेजें"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"सहेजा जा रहा है…"</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"ऑफ़लाइन पढ़ने के लिए सहेजा नहीं जा सका."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"<xliff:g id="BOOKMARK_COUNT">%d</xliff:g> बुकमार्क"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"रिक्त फ़ोल्डर"</string>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index 89a19ac..ec6836c 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Kopiraj URL stranice"</string>
     <string name="share_page" msgid="593756995297268343">"Dijeli stranicu"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"Spremi za izvanmrežno čitanje"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"Spremanje..."</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"Spremanje za izvanmrežno čitanje nije uspjelo."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"Br. oznaka: <xliff:g id="BOOKMARK_COUNT">%d</xliff:g>"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Prazna mapa"</string>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index 89d27aa..12ce9e0 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Salin URL laman"</string>
     <string name="share_page" msgid="593756995297268343">"Bagikan lama"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"Simpan untuk dibaca secara offline"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"Menyimpan..."</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"Tidak dapat menyimpan untuk dibaca secara offline."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"<xliff:g id="BOOKMARK_COUNT">%d</xliff:g> bookmark"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Folder kosong"</string>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index 5b4e2b0..6e91db5 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"ページのURLをコピー"</string>
     <string name="share_page" msgid="593756995297268343">"ページを共有"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"オフラインで読めるよう保存"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"保存中…"</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"オフラインでの閲覧用に保存できませんでした。"</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"<xliff:g id="BOOKMARK_COUNT">%d</xliff:g>件のブックマーク"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"空のフォルダ"</string>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index 0e47f86..b59d57b 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"페이지 URL 복사"</string>
     <string name="share_page" msgid="593756995297268343">"페이지 공유"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"오프라인 보기로 저장"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"저장 중..."</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"오프라인 읽기용으로 저장하지 못했습니다."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"북마크 <xliff:g id="BOOKMARK_COUNT">%d</xliff:g>개"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"빈 폴더"</string>
diff --git a/res/values-ms/strings.xml b/res/values-ms/strings.xml
index bc9e562..23a1125 100644
--- a/res/values-ms/strings.xml
+++ b/res/values-ms/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Salin URL halaman"</string>
     <string name="share_page" msgid="593756995297268343">"Kongsi halaman"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"Simpan untuk pembacaan di luar talian"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"Menyimpan..."</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"Tidak dapat disimpan untuk pembacaan di luar talian."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"<xliff:g id="BOOKMARK_COUNT">%d</xliff:g> penanda halaman"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Folder kosong"</string>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index c64788b..330928a 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Kopiuj URL strony"</string>
     <string name="share_page" msgid="593756995297268343">"Udostępnij stronę"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"Zapisz do czytania offline"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"Zapisywanie…"</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"Nie można zapisać do czytania w trybie offline."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"Zakładki: <xliff:g id="BOOKMARK_COUNT">%d</xliff:g>"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Pusty folder"</string>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index 52a1031..35b52c1 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Copiar URL da página"</string>
     <string name="share_page" msgid="593756995297268343">"Partilhar página"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"Guardar para leitura off-line"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"A guardar..."</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"Não foi possível guardar para leitura off-line."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"<xliff:g id="BOOKMARK_COUNT">%d</xliff:g> marcadores"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Pasta vazia"</string>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index 35445bb..5b2e63e 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Copiar URL da página"</string>
     <string name="share_page" msgid="593756995297268343">"Compartilhar página"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"Salvar para leitura off-line"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"Salvando…"</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"Não foi possível salvar para leitura off-line."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"<xliff:g id="BOOKMARK_COUNT">%d</xliff:g> favoritos"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Pasta vazia"</string>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index 81f00d0..3a29a76 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Copiaţi adresa URL a paginii"</string>
     <string name="share_page" msgid="593756995297268343">"Distribuiţi pagina"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"Salvaţi pentru lectură offline"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"Se salvează..."</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"Nu s-a putut salva pentru citire offline."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"<xliff:g id="BOOKMARK_COUNT">%d</xliff:g> (de) marcaje"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Dosar gol"</string>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index 5843255..87e8037 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Kopírovať adresu URL stránky"</string>
     <string name="share_page" msgid="593756995297268343">"Zdieľať stránku"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"Uložiť na čítanie offline"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"Prebieha ukladanie..."</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"Nepodarilo sa uložiť na čítanie v režime offline."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"Počet záložiek: <xliff:g id="BOOKMARK_COUNT">%d</xliff:g>"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Prázdny priečinok"</string>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index 72d2996..f0997d5 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Копирај URL адресу странице"</string>
     <string name="share_page" msgid="593756995297268343">"Дели страницу"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"Сачувај за читање ван мреже"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"Чување…"</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"Није било могуће сачувати за читање ван мреже."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"<xliff:g id="BOOKMARK_COUNT">%d</xliff:g> обележивача"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Празан директоријум"</string>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index b41ef9a..28aaec8 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Nakili URL ya ukurasa"</string>
     <string name="share_page" msgid="593756995297268343">"Shiriki ukurasa"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"Hifadhi kwa usomaji wa nje ya mtandao"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"Inahifadhi…"</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"Haikuweza kuhifadhi usomaji mkondoni."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"Alamisho <xliff:g id="BOOKMARK_COUNT">%d</xliff:g>"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Folda iko tupu"</string>
diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml
index 4a4997f..8df58bf 100644
--- a/res/values-th/strings.xml
+++ b/res/values-th/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"คัดลอก URL ของหน้าเว็บ"</string>
     <string name="share_page" msgid="593756995297268343">"แบ่งปันหน้าเว็บ"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"บันทึกไว้อ่านออฟไลน์"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"กำลังบันทึก…"</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"ไม่สามารถบันทึกไว้อ่านแบบออฟไลน์ได้"</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"บุ๊กมาร์ก <xliff:g id="BOOKMARK_COUNT">%d</xliff:g> รายการ"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"โฟลเดอร์ว่าง"</string>
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
index a668e3f..7784ac0 100644
--- a/res/values-tl/strings.xml
+++ b/res/values-tl/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Kopyahin ang URL ng pahina"</string>
     <string name="share_page" msgid="593756995297268343">"Ibahagi ang pahina"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"I-save para sa offline na pagbabasa"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"Sine-save..."</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"Hindi ma-save para sa offline na pagbabasa."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"<xliff:g id="BOOKMARK_COUNT">%d</xliff:g> (na) bookmark"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Walang lamang folder"</string>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index 75b8135..35539f3 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Sayfa URL\'sini kopyala"</string>
     <string name="share_page" msgid="593756995297268343">"Sayfayı paylaş"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"Çevrimdışı okuma için kaydet"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"Kaydediliyor…"</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"Çevrimdışı okuma için kaydedilemedi."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"<xliff:g id="BOOKMARK_COUNT">%d</xliff:g> yer işareti"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Boş klasör"</string>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index 53a26d3..3ab6a62 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"Sao chép url của trang"</string>
     <string name="share_page" msgid="593756995297268343">"Chia sẻ trang"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"Lưu để đọc ngoại tuyến"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"Đang lưu…"</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"Không thể lưu để đọc ngoại tuyến."</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"<xliff:g id="BOOKMARK_COUNT">%d</xliff:g> dấu trang"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"Thư mục trống"</string>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index eef5ead..106ed3c 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"复制网页网址"</string>
     <string name="share_page" msgid="593756995297268343">"分享网页"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"保存以供离线阅读"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"正在保存..."</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"无法保存以供离线阅读。"</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"<xliff:g id="BOOKMARK_COUNT">%d</xliff:g> 个书签"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"空文件夹"</string>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index 159cf8d..646cb45 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -102,8 +102,7 @@
     <string name="copy_page_url" msgid="1188679152608889555">"複製網頁網址"</string>
     <string name="share_page" msgid="593756995297268343">"分享網頁"</string>
     <string name="menu_save_snapshot" msgid="6935080344031126139">"儲存頁面以供離線閱讀"</string>
-    <!-- no translation found for saving_snapshot (1693789062351182809) -->
-    <skip />
+    <string name="saving_snapshot" msgid="1693789062351182809">"儲存中…"</string>
     <string name="snapshot_failed" msgid="4584580873565876033">"無法儲存網頁以供離線閱讀。"</string>
     <string name="contextheader_folder_bookmarkcount" msgid="353987136645619089">"<xliff:g id="BOOKMARK_COUNT">%d</xliff:g> 個書籤"</string>
     <string name="contextheader_folder_empty" msgid="974171637803391651">"空資料夾"</string>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 90ec428..8adc741 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -591,6 +591,8 @@
     <string name="pref_development_error_console" translatable="false">Show JavaScript Console</string>
     <!-- Do not translate. Development option to reset the prologin time [CHAR LIMIT=20] -->
     <string name="pref_development_reset_prelogin" translatable="false">Reset prelogin</string>
+    <!-- Do not translate. Development option to add more bookmarks [CHAR LIMIT=20] -->
+    <string name="pref_development_add_bookmarks" tranlsatable="false">Moar bookmarks!</string>
     <!-- Settings screen, setting option name -->
     <string name="pref_default_text_encoding">Text encoding</string>
     <!-- Options in the Default encoding dialog box -->
diff --git a/res/xml/debug_preferences.xml b/res/xml/debug_preferences.xml
index 029bc4f..1653549 100644
--- a/res/xml/debug_preferences.xml
+++ b/res/xml/debug_preferences.xml
@@ -91,4 +91,8 @@
         android:key="reset_prelogin"
         android:title="@string/pref_development_reset_prelogin" />
 
+    <Preference
+        android:key="add_bookmarks"
+        android:title="@string/pref_development_add_bookmarks" />
+
 </PreferenceScreen>
diff --git a/src/com/android/browser/BrowserBookmarksAdapterItem.java b/src/com/android/browser/BrowserBookmarksAdapterItem.java
index 913b0fd..ee2ed70 100644
--- a/src/com/android/browser/BrowserBookmarksAdapterItem.java
+++ b/src/com/android/browser/BrowserBookmarksAdapterItem.java
@@ -15,7 +15,6 @@
  */
 package com.android.browser;
 
-import android.graphics.Bitmap;
 import android.graphics.drawable.BitmapDrawable;
 
 public class BrowserBookmarksAdapterItem {
diff --git a/src/com/android/browser/BrowserBookmarksPage.java b/src/com/android/browser/BrowserBookmarksPage.java
index 5a609b1..a038a2d 100644
--- a/src/com/android/browser/BrowserBookmarksPage.java
+++ b/src/com/android/browser/BrowserBookmarksPage.java
@@ -161,6 +161,10 @@
 
     @Override
     public void onLoaderReset(Loader<Cursor> loader) {
+        if (loader.getId() >= LOADER_BOOKMARKS) {
+            BrowserBookmarksAdapter adapter = mBookmarkAdapters.get(loader.getId());
+            adapter.changeCursor(null);
+        }
     }
 
     @Override
diff --git a/src/com/android/browser/PreferenceKeys.java b/src/com/android/browser/PreferenceKeys.java
index ff42aaf..f7dc0e0 100644
--- a/src/com/android/browser/PreferenceKeys.java
+++ b/src/com/android/browser/PreferenceKeys.java
@@ -76,6 +76,7 @@
     static final String PREF_SMALL_SCREEN = "small_screen";
     static final String PREF_WIDE_VIEWPORT = "wide_viewport";
     static final String PREF_RESET_PRELOGIN = "reset_prelogin";
+    static final String PREF_ADD_BOOKMARKS = "add_bookmarks";
 
     // ----------------------
     // Keys for lab_preferences.xml
diff --git a/src/com/android/browser/preferences/DebugPreferencesFragment.java b/src/com/android/browser/preferences/DebugPreferencesFragment.java
index 24821d1..80347bd 100644
--- a/src/com/android/browser/preferences/DebugPreferencesFragment.java
+++ b/src/com/android/browser/preferences/DebugPreferencesFragment.java
@@ -25,6 +25,7 @@
 import com.android.browser.GoogleAccountLogin;
 import com.android.browser.PreferenceKeys;
 import com.android.browser.R;
+import com.android.browser.provider.BrowserProvider2;
 
 public class DebugPreferencesFragment extends PreferenceFragment
         implements OnPreferenceClickListener {
@@ -37,6 +38,8 @@
 
         Preference e = findPreference(PreferenceKeys.PREF_RESET_PRELOGIN);
         e.setOnPreferenceClickListener(this);
+        e = findPreference(PreferenceKeys.PREF_ADD_BOOKMARKS);
+        e.setOnPreferenceClickListener(this);
     }
 
     @Override
@@ -47,6 +50,11 @@
                     .apply();
             return true;
         }
+        if (PreferenceKeys.PREF_ADD_BOOKMARKS.equals(preference.getKey())) {
+            getActivity().getContentResolver().insert(
+                    BrowserProvider2.DEBUG_ADD_BOOKMARKS_URI, null);
+            return true;
+        }
         return false;
     }
 }
diff --git a/src/com/android/browser/provider/BrowserProvider2.java b/src/com/android/browser/provider/BrowserProvider2.java
index a66c333..34a153e 100644
--- a/src/com/android/browser/provider/BrowserProvider2.java
+++ b/src/com/android/browser/provider/BrowserProvider2.java
@@ -75,6 +75,9 @@
     static final Uri LEGACY_AUTHORITY_URI = new Uri.Builder()
             .authority(LEGACY_AUTHORITY).scheme("content").build();
 
+    public static final Uri DEBUG_ADD_BOOKMARKS_URI = Uri.withAppendedPath(
+            BrowserContract.AUTHORITY_URI, "debug-add-bookmarks");
+
     public static interface Thumbnails {
         public static final Uri CONTENT_URI = Uri.withAppendedPath(
                 BrowserContract.AUTHORITY_URI, "thumbnails");
@@ -149,6 +152,7 @@
     static final int THUMBNAILS = 10;
     static final int THUMBNAILS_ID = 11;
     static final int OMNIBOX_SUGGESTIONS = 20;
+    static final int DEBUG_ADD_BOOKMARKS = 30;
 
     static final int BOOKMARKS = 1000;
     static final int BOOKMARKS_ID = 1001;
@@ -230,6 +234,9 @@
         matcher.addURI(authority, "thumbnails/#", THUMBNAILS_ID);
         matcher.addURI(authority, "omnibox_suggestions", OMNIBOX_SUGGESTIONS);
 
+        // Debug
+        matcher.addURI(authority, "debug-add-bookmarks", DEBUG_ADD_BOOKMARKS);
+
         // Legacy
         matcher.addURI(LEGACY_AUTHORITY, "searches", SEARCHES);
         matcher.addURI(LEGACY_AUTHORITY, "searches/#", SEARCHES_ID);
@@ -1482,6 +1489,11 @@
                 break;
             }
 
+            case DEBUG_ADD_BOOKMARKS: {
+                mOpenHelper.addDefaultBookmarks(db, FIXED_ID_ROOT);
+                break;
+            }
+
             default: {
                 throw new UnsupportedOperationException("Unknown insert URI " + uri);
             }
diff --git a/src/com/android/browser/provider/SnapshotProvider.java b/src/com/android/browser/provider/SnapshotProvider.java
index 291e93b..b8b6bcf 100644
--- a/src/com/android/browser/provider/SnapshotProvider.java
+++ b/src/com/android/browser/provider/SnapshotProvider.java
@@ -88,7 +88,7 @@
                     Snapshots.BACKGROUND + " INTEGER," +
                     Snapshots.VIEWSTATE + " BLOB NOT NULL," +
                     Snapshots.VIEWSTATE_PATH + " TEXT," +
-                    Snapshots.VIEWSTATE_SIZE + "INTEGER" +
+                    Snapshots.VIEWSTATE_SIZE + " INTEGER" +
                     ");");
         }
 
diff --git a/src/com/android/browser/util/ThreadedCursorAdapter.java b/src/com/android/browser/util/ThreadedCursorAdapter.java
index fe59ad1..d0bf715 100644
--- a/src/com/android/browser/util/ThreadedCursorAdapter.java
+++ b/src/com/android/browser/util/ThreadedCursorAdapter.java
@@ -21,8 +21,8 @@
 import android.os.HandlerThread;
 import android.os.Message;
 import android.os.Process;
+import android.os.SystemProperties;
 import android.util.Log;
-import android.util.SparseArray;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.Adapter;
@@ -32,12 +32,12 @@
 import com.android.browser.R;
 
 import java.lang.ref.WeakReference;
-import java.util.HashMap;
 
 public abstract class ThreadedCursorAdapter<T> extends BaseAdapter {
 
-    private static final String LOGTAG = "tca";
+    private static final String LOGTAG = "BookmarksThreadedAdapter";
     private static final boolean DEBUG = false;
+    private static boolean sEnableBitmapRecycling = true;
 
     private Context mContext;
     private Object mCursorLock = new Object();
@@ -46,6 +46,15 @@
     private Handler mLoadHandler;
     private Handler mHandler;
     private int mSize;
+    private boolean mHasCursor;
+    private long mGeneration;
+
+    static {
+        // TODO: Remove this once recycling is either stabilized or scrapped
+        sEnableBitmapRecycling = SystemProperties
+                .getBoolean("com.android.browser.recycling", sEnableBitmapRecycling);
+        Log.d(LOGTAG, "Bitmap recycling enabled: " + sEnableBitmapRecycling);
+    }
 
     private class LoadContainer {
         WeakReference<View> view;
@@ -53,10 +62,12 @@
         T bind_object;
         Adapter owner;
         boolean loaded;
+        long generation;
     }
 
     public ThreadedCursorAdapter(Context context, Cursor c) {
         mContext = context;
+        mHasCursor = (c != null);
         mCursorAdapter = new CursorAdapter(context, c, 0) {
 
             @Override
@@ -73,6 +84,7 @@
             public void notifyDataSetChanged() {
                 super.notifyDataSetChanged();
                 mSize = getCount();
+                mGeneration++;
                 ThreadedCursorAdapter.this.notifyDataSetChanged();
             }
 
@@ -80,6 +92,7 @@
             public void notifyDataSetInvalidated() {
                 super.notifyDataSetInvalidated();
                 mSize = getCount();
+                mGeneration++;
                 ThreadedCursorAdapter.this.notifyDataSetInvalidated();
             }
 
@@ -109,7 +122,9 @@
                 View view = container.view.get();
                 if (view == null
                         || container.owner != ThreadedCursorAdapter.this
-                        || container.position != msg.what) {
+                        || container.position != msg.what
+                        || view.getWindowToken() == null
+                        || container.generation != mGeneration) {
                     return;
                 }
                 container.loaded = true;
@@ -142,7 +157,12 @@
         }
         synchronized (mCursorLock) {
             Cursor c = (Cursor) mCursorAdapter.getItem(position);
-            container.bind_object = getRowObject(c, container.bind_object);
+            if (c == null || c.isClosed()) {
+                return;
+            }
+            final T recycleObject = sEnableBitmapRecycling
+                    ? container.bind_object : null;
+            container.bind_object = getRowObject(c, recycleObject);
         }
         mHandler.obtainMessage(position, container).sendToTarget();
     }
@@ -161,14 +181,18 @@
         }
         if (container.position == position
                 && container.owner == this
-                && container.loaded) {
+                && container.loaded
+                && container.generation == mGeneration) {
             bindView(convertView, container.bind_object);
         } else {
             bindView(convertView, cachedLoadObject());
-            container.position = position;
-            container.loaded = false;
-            container.owner = this;
-            mLoadHandler.obtainMessage(position, container).sendToTarget();
+            if (mHasCursor) {
+                container.position = position;
+                container.loaded = false;
+                container.owner = this;
+                container.generation = mGeneration;
+                mLoadHandler.obtainMessage(position, container).sendToTarget();
+            }
         }
         return convertView;
     }
@@ -181,7 +205,10 @@
     }
 
     public void changeCursor(Cursor cursor) {
+        mLoadHandler.removeCallbacksAndMessages(null);
+        mHandler.removeCallbacksAndMessages(null);
         synchronized (mCursorLock) {
+            mHasCursor = (cursor != null);
             mCursorAdapter.changeCursor(cursor);
         }
     }
diff --git a/src/com/android/browser/view/PieMenu.java b/src/com/android/browser/view/PieMenu.java
index 1fd0e99..e41ebb2 100644
--- a/src/com/android/browser/view/PieMenu.java
+++ b/src/com/android/browser/view/PieMenu.java
@@ -194,20 +194,22 @@
     private void show(boolean show) {
         mOpen = show;
         if (mOpen) {
+            // ensure clean state
+            mAnimating = false;
+            mCurrentItem = null;
+            mOpenItem = null;
+            mPieView = null;
             mController.stopEditingUrl();
             mCurrentItems = mItems;
+            for (PieItem item : mCurrentItems) {
+                item.setSelected(false);
+            }
             if (mController != null) {
                 boolean changed = mController.onOpen();
             }
             layoutPie();
             animateOpen();
         }
-        if (!show) {
-            mAnimating = false;
-            mCurrentItem = null;
-            mOpenItem = null;
-            mPieView = null;
-        }
         invalidate();
     }