auto import from //branches/cupcake/...@132276
diff --git a/res/drawable/ic_launcher_browser.png b/res/drawable/ic_launcher_browser.png
index 63f5d8f..f58b84a 100755
--- a/res/drawable/ic_launcher_browser.png
+++ b/res/drawable/ic_launcher_browser.png
Binary files differ
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index 05ed190..e301545 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -15,18 +15,12 @@
 -->
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for application_name (1935869255545976415) -->
-    <skip />
-    <!-- no translation found for tab_bookmarks (2305793036003473653) -->
-    <skip />
-    <!-- no translation found for tab_most_visited (1077402532455000703) -->
-    <skip />
-    <!-- no translation found for tab_history (1979267558744613746) -->
-    <skip />
-    <!-- no translation found for added_to_bookmarks (1020224130695956728) -->
-    <skip />
-    <!-- no translation found for removed_from_bookmarks (6063705902028438800) -->
-    <skip />
+    <string name="application_name">"Prohlížeč"</string>
+    <string name="tab_bookmarks">"Záložky"</string>
+    <string name="tab_most_visited">"Nejčastěji navštěvované"</string>
+    <string name="tab_history">"Historie"</string>
+    <string name="added_to_bookmarks">"Přidáno k záložkám"</string>
+    <string name="removed_from_bookmarks">"Odstraněno ze záložek"</string>
     <string name="sign_in_to">"Přihlásit se: <xliff:g id="HOSTNAME">%s1</xliff:g> <xliff:g id="REALM">%s2</xliff:g>"</string>
     <string name="username">"Název"</string>
     <string name="password">"Heslo"</string>
@@ -81,16 +75,13 @@
     <string name="bookmark_url_not_valid">"Adresa URL není platná."</string>
     <string name="delete_bookmark">"Smazat"</string>
     <string name="bookmark_page">"Přidat poslední zobrazenou stránku do záložek"</string>
-    <!-- no translation found for current_page (7510129573681663135) -->
-    <skip />
+    <string name="current_page">"od"</string>
     <string name="delete_bookmark_warning">"Záložka <xliff:g id="BOOKMARK">%s</xliff:g> bude smazána."</string>
     <string name="open_in_new_window">"Otevřít v novém okně"</string>
     <string name="new_window">"Nové okno"</string>
-    <!-- no translation found for goto_dot (3895839050522602723) -->
-    <skip />
+    <string name="goto_dot">"Přejít"</string>
     <string name="find_dot">"Vyhledat na stránce"</string>
-    <!-- no translation found for select_dot (6299170761900561967) -->
-    <skip />
+    <string name="select_dot">"Označit text"</string>
     <string name="view_tabs">"Přehled okna"</string>
     <string name="view_tabs_condensed">"Windows"</string>
     <string name="tab_picker_title">"Aktuální okna"</string>
@@ -215,8 +206,7 @@
     <string name="clear_history">"Vymazat historii"</string>
     <string name="browser_history">"Nedávno navštívené stránky"</string>
     <string name="empty_history">"Historie prohlížeče je prázdná."</string>
-    <!-- no translation found for add_new_bookmark (8086367791400349049) -->
-    <skip />
+    <string name="add_new_bookmark">"Přidat záložku..."</string>
     <string name="no_database">"Databáze neexistuje."</string>
     <string name="search_hint">"Zadejte webovou adresu"</string>
     <string name="search_button_text">"Přejít"</string>
@@ -261,23 +251,68 @@
     <string name="download_length_required">"Nelze stáhnout. Velikost položky nelze určit."</string>
     <string name="download_precondition_failed">"Stahování bylo přerušeno a nelze v něm pokračovat."</string>
     <string name="activity_instrumentation_test_runner">"Testovací verze prohlížeče"</string>
-    <!-- no translation found for search_google (1231765426260855357) -->
-    <skip />
+    <string name="search_google">"Prohledat Google"</string>
     <string name="permlab_readHistoryBookmarks">"čtení historie a záložek prohlížeče"</string>
     <string name="permdesc_readHistoryBookmarks">"Umožňuje aplikaci číst všechny navštívené adresy URL a záložky prohlížeče."</string>
     <string name="permlab_writeHistoryBookmarks">"zápis historie a záložek prohlížeče"</string>
     <string name="permdesc_writeHistoryBookmarks">"Umožní aplikaci změnit historii či záložky prohlížeče uložené v telefonu. Škodlivé aplikace mohou pomocí tohoto nastavení vymazat či pozměnit data prohlížeče."</string>
-    <string name="query_data_message">"Níže uvedený web se pokouší do vašeho počítače uložit informace pomocí služby Gears."</string>
-    <string name="location_message">"Níže uvedený web se pomocí služby Gears pokouší získat přístup k informacím o vaší poloze."</string>
-    <string name="shortcut_message">"Tento web se na vašem počítači pokouší vytvořit zástupce. Chcete to povolit?"</string>
+    <!-- no translation found for query_data_prompt (5474381240981604223) -->
+    <skip />
+    <!-- no translation found for query_data_message (8789381063185445197) -->
+    <skip />
+    <!-- no translation found for location_prompt (226262202057302423) -->
+    <skip />
+    <!-- no translation found for location_message (6790400729681341258) -->
+    <skip />
+    <!-- no translation found for shortcut_prompt (437193299088893596) -->
+    <skip />
+    <!-- no translation found for shortcut_message (4793042709293755892) -->
+    <skip />
     <string name="settings_message">"Níže uvedená tabulka zobrazuje oprávnění, která jste udělili jednotlivým webům, které se pokusily použít službu Gears."</string>
-    <string name="filepicker_message">"Vybírání souborů služby Gears"</string>
+    <!-- no translation found for filepicker_message (4929726371602896039) -->
+    <skip />
+    <!-- no translation found for image_message (5450245866521896891) -->
+    <skip />
     <string name="settings_title">"Nastavení služby Gears"</string>
     <string name="privacy_policy">"Chcete-li zjistit, jak bude vaše poloha využita, přečtěte si zásady ochrany osobních údajů těchto stránek."</string>
-    <string name="permission_button_alwaysdeny">"Nikdy nepovolit tento web"</string>
-    <string name="permission_button_allow">"Povolit"</string>
-    <string name="permission_button_deny">"Odepřít"</string>
-    <string name="shortcut_button_alwaysdeny">"Nikdy nepovolovat tento odkaz"</string>
+    <!-- no translation found for settings_storage_title (7089119630457156408) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_on (2733295483569432111) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_off (1338039396087898813) -->
+    <skip />
+    <!-- no translation found for settings_location_title (4953062923509886651) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_on (1496219621849158879) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_off (5216466051810596189) -->
+    <skip />
+    <!-- no translation found for settings_remove_site (1822247070226589958) -->
+    <skip />
+    <!-- no translation found for settings_empty (2008952224378583146) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove_title (5360857296753219635) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove (3214500052347860516) -->
+    <skip />
+    <!-- no translation found for storage_notification (6534213782873968255) -->
+    <skip />
+    <!-- no translation found for storage_notification_alwaysdeny (5473208033665783513) -->
+    <skip />
+    <!-- no translation found for location_notification (3495804750470905804) -->
+    <skip />
+    <!-- no translation found for location_notification_alwaysdeny (6184925953783312629) -->
+    <skip />
+    <!-- no translation found for shortcut_notification (1659700220868444568) -->
+    <skip />
+    <!-- no translation found for permission_button_alwaysdeny (3837055994905214848) -->
+    <skip />
+    <!-- no translation found for permission_button_allow (7301874925704148242) -->
+    <skip />
+    <!-- no translation found for permission_button_deny (104712269725153018) -->
+    <skip />
+    <!-- no translation found for shortcut_button_alwaysdeny (4172277731325126605) -->
+    <skip />
     <string name="shortcut_button_allow">"OK"</string>
     <string name="shortcut_button_deny">"Zrušit"</string>
     <string name="settings_button_allow">"Použít"</string>
@@ -294,6 +329,5 @@
     <string name="denied">"Odepřeno"</string>
     <string name="unrecognized_dialog_message">"Nerozpoznaný typ dialogu"</string>
     <string name="default_button">"OK"</string>
-    <!-- no translation found for zoom_overview_button_text (4146579940085488881) -->
-    <skip />
+    <string name="zoom_overview_button_text">"Přehled"</string>
 </resources>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index b57af1f..3a4bb6d 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -15,18 +15,12 @@
 -->
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for application_name (1935869255545976415) -->
-    <skip />
-    <!-- no translation found for tab_bookmarks (2305793036003473653) -->
-    <skip />
-    <!-- no translation found for tab_most_visited (1077402532455000703) -->
-    <skip />
-    <!-- no translation found for tab_history (1979267558744613746) -->
-    <skip />
-    <!-- no translation found for added_to_bookmarks (1020224130695956728) -->
-    <skip />
-    <!-- no translation found for removed_from_bookmarks (6063705902028438800) -->
-    <skip />
+    <string name="application_name">"Browser"</string>
+    <string name="tab_bookmarks">"Lesezeichen"</string>
+    <string name="tab_most_visited">"Meistbesucht"</string>
+    <string name="tab_history">"Verlauf"</string>
+    <string name="added_to_bookmarks">"Zu Lesezeichen hinzugefügt"</string>
+    <string name="removed_from_bookmarks">"Aus Lesezeichen entfernt"</string>
     <string name="sign_in_to">"Bei <xliff:g id="HOSTNAME">%s1</xliff:g> \"<xliff:g id="REALM">%s2</xliff:g>\" anmelden"</string>
     <string name="username">"Name"</string>
     <string name="password">"Passwort"</string>
@@ -81,16 +75,13 @@
     <string name="bookmark_url_not_valid">"URL ist nicht gültig."</string>
     <string name="delete_bookmark">"Löschen"</string>
     <string name="bookmark_page">"Lesezeichen für zuletzt besuchte Seite"</string>
-    <!-- no translation found for current_page (7510129573681663135) -->
-    <skip />
+    <string name="current_page">"von"</string>
     <string name="delete_bookmark_warning">"Lesezeichen \"<xliff:g id="BOOKMARK">%s</xliff:g>\" wird gelöscht."</string>
     <string name="open_in_new_window">"In neuem Fenster öffnen"</string>
     <string name="new_window">"Neues Fenster"</string>
-    <!-- no translation found for goto_dot (3895839050522602723) -->
-    <skip />
+    <string name="goto_dot">"Los"</string>
     <string name="find_dot">"Auf Seite suchen"</string>
-    <!-- no translation found for select_dot (6299170761900561967) -->
-    <skip />
+    <string name="select_dot">"Text auswählen"</string>
     <string name="view_tabs">"Fensterübersicht"</string>
     <string name="view_tabs_condensed">"Windows"</string>
     <string name="tab_picker_title">"Aktuelle Fenster"</string>
@@ -215,8 +206,7 @@
     <string name="clear_history">"Verlauf löschen"</string>
     <string name="browser_history">"Zuletzt besuchte Seiten"</string>
     <string name="empty_history">"Browserverlauf ist leer."</string>
-    <!-- no translation found for add_new_bookmark (8086367791400349049) -->
-    <skip />
+    <string name="add_new_bookmark">"Lesezeichen hinzufügen..."</string>
     <string name="no_database">"Keine Datenbank!"</string>
     <string name="search_hint">"Webadresse eingeben"</string>
     <string name="search_button_text">"Los"</string>
@@ -261,23 +251,68 @@
     <string name="download_length_required">"Download kann nicht gestartet werden, da die Größe des Elements nicht bestimmt werden kann."</string>
     <string name="download_precondition_failed">"Download wurde unterbrochen und kann nicht fortgesetzt werden."</string>
     <string name="activity_instrumentation_test_runner">"Browser Test Runner"</string>
-    <!-- no translation found for search_google (1231765426260855357) -->
-    <skip />
+    <string name="search_google">"In Google suchen"</string>
     <string name="permlab_readHistoryBookmarks">"Browserverlauf und Lesezeichen lesen"</string>
     <string name="permdesc_readHistoryBookmarks">"Ermöglicht der Anwendung, alle URLs, die mit dem Browser besucht wurden, sowie alle Lesezeichen des Browsers zu lesen."</string>
     <string name="permlab_writeHistoryBookmarks">"Browserverlauf und Lesezeichen schreiben"</string>
     <string name="permdesc_writeHistoryBookmarks">"Ermöglicht einer Anwendung, den auf Ihrem Telefon gespeicherten Browserverlauf und die Lesezeichen zu ändern. Schädliche Anwendungen können so Ihre Browserdaten löschen oder ändern."</string>
-    <string name="query_data_message">"Die folgende Website möchte mit Gears Informationen auf Ihrem Computer speichern."</string>
-    <string name="location_message">"Die folgende Website möchte mit Gears auf Informationen zu Ihrem Ort zugreifen."</string>
-    <string name="shortcut_message">"Diese Website möchte einen Shortcut auf Ihrem Computer erstellen. Sind Sie damit einverstanden?"</string>
+    <!-- no translation found for query_data_prompt (5474381240981604223) -->
+    <skip />
+    <!-- no translation found for query_data_message (8789381063185445197) -->
+    <skip />
+    <!-- no translation found for location_prompt (226262202057302423) -->
+    <skip />
+    <!-- no translation found for location_message (6790400729681341258) -->
+    <skip />
+    <!-- no translation found for shortcut_prompt (437193299088893596) -->
+    <skip />
+    <!-- no translation found for shortcut_message (4793042709293755892) -->
+    <skip />
     <string name="settings_message">"Die folgende Tabelle zeigt die Berechtigungen, die Sie jeder Website erteilt haben, die versucht hat, Gears zu verwenden."</string>
-    <string name="filepicker_message">"Gears File Picker"</string>
+    <!-- no translation found for filepicker_message (4929726371602896039) -->
+    <skip />
+    <!-- no translation found for image_message (5450245866521896891) -->
+    <skip />
     <string name="settings_title">"Gears-Einstellungen"</string>
     <string name="privacy_policy">"Lesen Sie die Datenschutzbestimmungen dieser Website, um herauszufinden, wie Ihr Ort verwendet wird."</string>
-    <string name="permission_button_alwaysdeny">"Diese Website niemals zulassen"</string>
-    <string name="permission_button_allow">"Zulassen"</string>
-    <string name="permission_button_deny">"Ablehnen"</string>
-    <string name="shortcut_button_alwaysdeny">"Diesen Shortcut niemals zulassen"</string>
+    <!-- no translation found for settings_storage_title (7089119630457156408) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_on (2733295483569432111) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_off (1338039396087898813) -->
+    <skip />
+    <!-- no translation found for settings_location_title (4953062923509886651) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_on (1496219621849158879) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_off (5216466051810596189) -->
+    <skip />
+    <!-- no translation found for settings_remove_site (1822247070226589958) -->
+    <skip />
+    <!-- no translation found for settings_empty (2008952224378583146) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove_title (5360857296753219635) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove (3214500052347860516) -->
+    <skip />
+    <!-- no translation found for storage_notification (6534213782873968255) -->
+    <skip />
+    <!-- no translation found for storage_notification_alwaysdeny (5473208033665783513) -->
+    <skip />
+    <!-- no translation found for location_notification (3495804750470905804) -->
+    <skip />
+    <!-- no translation found for location_notification_alwaysdeny (6184925953783312629) -->
+    <skip />
+    <!-- no translation found for shortcut_notification (1659700220868444568) -->
+    <skip />
+    <!-- no translation found for permission_button_alwaysdeny (3837055994905214848) -->
+    <skip />
+    <!-- no translation found for permission_button_allow (7301874925704148242) -->
+    <skip />
+    <!-- no translation found for permission_button_deny (104712269725153018) -->
+    <skip />
+    <!-- no translation found for shortcut_button_alwaysdeny (4172277731325126605) -->
+    <skip />
     <string name="shortcut_button_allow">"OK"</string>
     <string name="shortcut_button_deny">"Abbrechen"</string>
     <string name="settings_button_allow">"Anwenden"</string>
@@ -294,6 +329,5 @@
     <string name="denied">"Abgelehnt"</string>
     <string name="unrecognized_dialog_message">"Unbekannter Dialogtyp"</string>
     <string name="default_button">"OK"</string>
-    <!-- no translation found for zoom_overview_button_text (4146579940085488881) -->
-    <skip />
+    <string name="zoom_overview_button_text">"Übersicht"</string>
 </resources>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 4cf4ce2..7032535 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -15,18 +15,12 @@
 -->
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for application_name (1935869255545976415) -->
-    <skip />
-    <!-- no translation found for tab_bookmarks (2305793036003473653) -->
-    <skip />
-    <!-- no translation found for tab_most_visited (1077402532455000703) -->
-    <skip />
-    <!-- no translation found for tab_history (1979267558744613746) -->
-    <skip />
-    <!-- no translation found for added_to_bookmarks (1020224130695956728) -->
-    <skip />
-    <!-- no translation found for removed_from_bookmarks (6063705902028438800) -->
-    <skip />
+    <string name="application_name">"Navegador web"</string>
+    <string name="tab_bookmarks">"Marcadores"</string>
+    <string name="tab_most_visited">"Más visitados"</string>
+    <string name="tab_history">"Historial"</string>
+    <string name="added_to_bookmarks">"Añadido a marcadores"</string>
+    <string name="removed_from_bookmarks">"Eliminado de marcadores"</string>
     <string name="sign_in_to">"Acceder a <xliff:g id="HOSTNAME">%s1</xliff:g> \"<xliff:g id="REALM">%s2</xliff:g>\""</string>
     <string name="username">"Nombre"</string>
     <string name="password">"Contraseña"</string>
@@ -81,16 +75,13 @@
     <string name="bookmark_url_not_valid">"La URL no es válida."</string>
     <string name="delete_bookmark">"Suprimir"</string>
     <string name="bookmark_page">"Marcar como última página vista"</string>
-    <!-- no translation found for current_page (7510129573681663135) -->
-    <skip />
+    <string name="current_page">"de"</string>
     <string name="delete_bookmark_warning">"Se eliminará el marcador \"<xliff:g id="BOOKMARK">%s</xliff:g>\"."</string>
     <string name="open_in_new_window">"Abrir en ventana nueva"</string>
     <string name="new_window">"Nueva ventana"</string>
-    <!-- no translation found for goto_dot (3895839050522602723) -->
-    <skip />
+    <string name="goto_dot">"Ir"</string>
     <string name="find_dot">"Buscar en la página"</string>
-    <!-- no translation found for select_dot (6299170761900561967) -->
-    <skip />
+    <string name="select_dot">"Seleccionar texto"</string>
     <string name="view_tabs">"Visión general de ventanas"</string>
     <string name="view_tabs_condensed">"Windows"</string>
     <string name="tab_picker_title">"Ventanas actuales"</string>
@@ -120,7 +111,7 @@
     <string name="clear">"Borrar"</string>
     <string name="replace">"Sustituir"</string>
     <string name="browser_bookmarks_page_bookmarks_text">"Marcadores"</string>
-    <string name="menu_preferences">"Configuración"</string>
+    <string name="menu_preferences">"Ajustes"</string>
     <string name="pref_content_title">"Configuración de contenido de la página"</string>
     <string name="pref_content_load_images">"Cargar imágenes"</string>
     <string name="pref_content_load_images_summary">"Mostrar imágenes en páginas web"</string>
@@ -215,8 +206,7 @@
     <string name="clear_history">"Borrar historial"</string>
     <string name="browser_history">"Páginas visitadas recientemente"</string>
     <string name="empty_history">"El historial del navegador está vacío."</string>
-    <!-- no translation found for add_new_bookmark (8086367791400349049) -->
-    <skip />
+    <string name="add_new_bookmark">"Añadir marcador…"</string>
     <string name="no_database">"No hay ninguna base de datos."</string>
     <string name="search_hint">"Introduce la dirección web."</string>
     <string name="search_button_text">"Ir"</string>
@@ -261,23 +251,68 @@
     <string name="download_length_required">"No se puede realizar la descarga, porque no es posible determinar el tamaño del elemento."</string>
     <string name="download_precondition_failed">"La descarga se ha interrumpido y no se puede reanudar."</string>
     <string name="activity_instrumentation_test_runner">"Realizador de pruebas del navegador"</string>
-    <!-- no translation found for search_google (1231765426260855357) -->
-    <skip />
+    <string name="search_google">"Búsqueda de Google"</string>
     <string name="permlab_readHistoryBookmarks">"leer información de marcadores y del historial del navegador"</string>
     <string name="permdesc_readHistoryBookmarks">"Permite que la aplicación lea todas las URL que ha visitado el navegador y todos sus marcadores."</string>
     <string name="permlab_writeHistoryBookmarks">"escribir en marcadores y en el historial del navegador"</string>
     <string name="permdesc_writeHistoryBookmarks">"Permite que una aplicación modifique la información de los marcadores o del historial del navegador almacenada en el teléfono. Las aplicaciones malintencionadas pueden utilizar este permiso para borrar o modificar los datos del navegador."</string>
-    <string name="query_data_message">"El sitio web especificado a continuación desea almacenar información en tu equipo mediante Gears."</string>
-    <string name="location_message">"El sitio web especificado a continuación desea acceder a información sobre tu ubicación mediante Gears."</string>
-    <string name="shortcut_message">"¿Quieres permitir que este sitio web cree un acceso directo en tu equipo?"</string>
+    <!-- no translation found for query_data_prompt (5474381240981604223) -->
+    <skip />
+    <!-- no translation found for query_data_message (8789381063185445197) -->
+    <skip />
+    <!-- no translation found for location_prompt (226262202057302423) -->
+    <skip />
+    <!-- no translation found for location_message (6790400729681341258) -->
+    <skip />
+    <!-- no translation found for shortcut_prompt (437193299088893596) -->
+    <skip />
+    <!-- no translation found for shortcut_message (4793042709293755892) -->
+    <skip />
     <string name="settings_message">"En la tabla que aparece a continuación se muestran los permisos que has concedido a los distintos sitios web que han intentado utilizar Gears."</string>
-    <string name="filepicker_message">"Selector de archivos de Gears"</string>
+    <!-- no translation found for filepicker_message (4929726371602896039) -->
+    <skip />
+    <!-- no translation found for image_message (5450245866521896891) -->
+    <skip />
     <string name="settings_title">"Configuración de Gears"</string>
     <string name="privacy_policy">"Lee la política de privacidad del sitio para saber cómo se utilizará tu ubicación."</string>
-    <string name="permission_button_alwaysdeny">"No permitir nunca este sitio"</string>
-    <string name="permission_button_allow">"Permitir"</string>
-    <string name="permission_button_deny">"Denegar"</string>
-    <string name="shortcut_button_alwaysdeny">"No permitir nunca este acceso directo"</string>
+    <!-- no translation found for settings_storage_title (7089119630457156408) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_on (2733295483569432111) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_off (1338039396087898813) -->
+    <skip />
+    <!-- no translation found for settings_location_title (4953062923509886651) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_on (1496219621849158879) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_off (5216466051810596189) -->
+    <skip />
+    <!-- no translation found for settings_remove_site (1822247070226589958) -->
+    <skip />
+    <!-- no translation found for settings_empty (2008952224378583146) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove_title (5360857296753219635) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove (3214500052347860516) -->
+    <skip />
+    <!-- no translation found for storage_notification (6534213782873968255) -->
+    <skip />
+    <!-- no translation found for storage_notification_alwaysdeny (5473208033665783513) -->
+    <skip />
+    <!-- no translation found for location_notification (3495804750470905804) -->
+    <skip />
+    <!-- no translation found for location_notification_alwaysdeny (6184925953783312629) -->
+    <skip />
+    <!-- no translation found for shortcut_notification (1659700220868444568) -->
+    <skip />
+    <!-- no translation found for permission_button_alwaysdeny (3837055994905214848) -->
+    <skip />
+    <!-- no translation found for permission_button_allow (7301874925704148242) -->
+    <skip />
+    <!-- no translation found for permission_button_deny (104712269725153018) -->
+    <skip />
+    <!-- no translation found for shortcut_button_alwaysdeny (4172277731325126605) -->
+    <skip />
     <string name="shortcut_button_allow">"Aceptar"</string>
     <string name="shortcut_button_deny">"Cancelar"</string>
     <string name="settings_button_allow">"Aplicar"</string>
@@ -294,6 +329,5 @@
     <string name="denied">"Denegado"</string>
     <string name="unrecognized_dialog_message">"Tipo de cuadro de diálogo no reconocido"</string>
     <string name="default_button">"Aceptar"</string>
-    <!-- no translation found for zoom_overview_button_text (4146579940085488881) -->
-    <skip />
+    <string name="zoom_overview_button_text">"Información general"</string>
 </resources>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index e26e86d..0b2df36 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -15,18 +15,12 @@
 -->
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for application_name (1935869255545976415) -->
-    <skip />
-    <!-- no translation found for tab_bookmarks (2305793036003473653) -->
-    <skip />
-    <!-- no translation found for tab_most_visited (1077402532455000703) -->
-    <skip />
-    <!-- no translation found for tab_history (1979267558744613746) -->
-    <skip />
-    <!-- no translation found for added_to_bookmarks (1020224130695956728) -->
-    <skip />
-    <!-- no translation found for removed_from_bookmarks (6063705902028438800) -->
-    <skip />
+    <string name="application_name">"Navigateur"</string>
+    <string name="tab_bookmarks">"Favoris"</string>
+    <string name="tab_most_visited">"Les plus consultés"</string>
+    <string name="tab_history">"Historique"</string>
+    <string name="added_to_bookmarks">"Ajouté aux favoris"</string>
+    <string name="removed_from_bookmarks">"Supprimé des favoris"</string>
     <string name="sign_in_to">"Connectez-vous à <xliff:g id="HOSTNAME">%s1</xliff:g> \"<xliff:g id="REALM">%s2</xliff:g>\""</string>
     <string name="username">"Nom"</string>
     <string name="password">"Mot de passe"</string>
@@ -81,16 +75,13 @@
     <string name="bookmark_url_not_valid">"L\'URL est incorrecte."</string>
     <string name="delete_bookmark">"Supprimer"</string>
     <string name="bookmark_page">"Dernière page de favori consultée"</string>
-    <!-- no translation found for current_page (7510129573681663135) -->
-    <skip />
+    <string name="current_page">"de"</string>
     <string name="delete_bookmark_warning">"Le favori \"<xliff:g id="BOOKMARK">%s</xliff:g>\" sera supprimé."</string>
     <string name="open_in_new_window">"Ouvrir dans une nouvelle fenêtre"</string>
     <string name="new_window">"Nouvelle fenêtre"</string>
-    <!-- no translation found for goto_dot (3895839050522602723) -->
-    <skip />
+    <string name="goto_dot">"OK"</string>
     <string name="find_dot">"Rechercher sur la page"</string>
-    <!-- no translation found for select_dot (6299170761900561967) -->
-    <skip />
+    <string name="select_dot">"Sélectionner le texte"</string>
     <string name="view_tabs">"Vue d\'ensemble des fenêtres"</string>
     <string name="view_tabs_condensed">"Windows"</string>
     <string name="tab_picker_title">"Fenêtres actuelles"</string>
@@ -124,7 +115,7 @@
     <string name="pref_content_title">"Paramètres du contenu de la page"</string>
     <string name="pref_content_load_images">"Charger les images"</string>
     <string name="pref_content_load_images_summary">"Afficher les images des pages Web"</string>
-    <string name="pref_content_block_popups">"Bloquer les fenêtres contextuelles"</string>
+    <string name="pref_content_block_popups">"Bloquer les fenêtres pop-up"</string>
     <string name="pref_content_javascript">"Activer JavaScript"</string>
     <string name="pref_content_open_in_background">"Ouvrir à l\'arrière-plan"</string>
     <string name="pref_content_open_in_background_summary">"Les nouvelles fenêtres s\'ouvrent derrière la fenêtre actuelle"</string>
@@ -153,7 +144,7 @@
     <string name="pref_security_save_form_data">"Mémoriser les données de formulaire"</string>
     <string name="pref_security_save_form_data_summary">"Mémoriser les données saisies dans les formulaires pour les utiliser ultérieurement"</string>
     <string name="pref_security_show_security_warning">"Afficher les avertissements de sécurité"</string>
-    <string name="pref_security_show_security_warning_summary">"Afficher un avertissement lorsqu\'un site présente des problèmes de sécurité"</string>
+    <string name="pref_security_show_security_warning_summary">"Afficher un avertissement en cas de problème de sécurité d\'un site"</string>
     <string name="pref_security_accept_cookies">"Accepter les cookies"</string>
     <string name="pref_security_accept_cookies_summary">"Autoriser les sites à enregistrer et lire les données \"cookie\""</string>
     <string name="pref_text_size">"Définir la taille du texte"</string>
@@ -215,8 +206,7 @@
     <string name="clear_history">"Effacer l\'historique"</string>
     <string name="browser_history">"Dernières pages consultées"</string>
     <string name="empty_history">"L\'historique du navigateur est vide."</string>
-    <!-- no translation found for add_new_bookmark (8086367791400349049) -->
-    <skip />
+    <string name="add_new_bookmark">"Ajouter aux favoris..."</string>
     <string name="no_database">"Aucune base de données !"</string>
     <string name="search_hint">"Saisir l\'adresse Web"</string>
     <string name="search_button_text">"Aller"</string>
@@ -261,23 +251,68 @@
     <string name="download_length_required">"Téléchargement impossible. La taille de l\'élément n\'a pas pu être déterminée."</string>
     <string name="download_precondition_failed">"Téléchargement interrompu. Impossible de reprendre le téléchargement."</string>
     <string name="activity_instrumentation_test_runner">"Testeur de navigateur"</string>
-    <!-- no translation found for search_google (1231765426260855357) -->
-    <skip />
+    <string name="search_google">"Recherche Google"</string>
     <string name="permlab_readHistoryBookmarks">"lire l\'historique du navigateur et les favoris"</string>
     <string name="permdesc_readHistoryBookmarks">"Permet à l\'application de lire toutes les URL visitées par le navigateur et tous les favoris."</string>
     <string name="permlab_writeHistoryBookmarks">"écrire l\'historique du navigateur et les favoris"</string>
     <string name="permdesc_writeHistoryBookmarks">"Permet à une application de modifier l\'historique du navigateur ou les favoris enregistrés sur votre téléphone. Des applications malveillantes peuvent utiliser cette fonction pour effacer ou modifier les données de votre navigateur."</string>
-    <string name="query_data_message">"Le site Web ci-dessous tente d\'enregistrer des informations sur votre ordinateur avec Google Gears."</string>
-    <string name="location_message">"Le site Web ci-dessous tente d\'accéder à des informations sur votre emplacement avec Google Gears."</string>
-    <string name="shortcut_message">"Voulez-vous autoriser ce site Web à créer un raccourci sur votre ordinateur ?"</string>
+    <!-- no translation found for query_data_prompt (5474381240981604223) -->
+    <skip />
+    <!-- no translation found for query_data_message (8789381063185445197) -->
+    <skip />
+    <!-- no translation found for location_prompt (226262202057302423) -->
+    <skip />
+    <!-- no translation found for location_message (6790400729681341258) -->
+    <skip />
+    <!-- no translation found for shortcut_prompt (437193299088893596) -->
+    <skip />
+    <!-- no translation found for shortcut_message (4793042709293755892) -->
+    <skip />
     <string name="settings_message">"Le tableau ci-dessous indique les fonctions que vous avez autorisées pour chaque site ayant tenté d\'utiliser Google Gears."</string>
-    <string name="filepicker_message">"Sélecteur de fichiers Google Gears"</string>
+    <!-- no translation found for filepicker_message (4929726371602896039) -->
+    <skip />
+    <!-- no translation found for image_message (5450245866521896891) -->
+    <skip />
     <string name="settings_title">"Paramètres Google Gears"</string>
     <string name="privacy_policy">"Lisez la politique de confidentialité du site pour voir comment votre emplacement sera utilisé."</string>
-    <string name="permission_button_alwaysdeny">"Ne jamais autoriser ce site"</string>
-    <string name="permission_button_allow">"Autoriser"</string>
-    <string name="permission_button_deny">"Refuser"</string>
-    <string name="shortcut_button_alwaysdeny">"Ne jamais autoriser ce raccourci"</string>
+    <!-- no translation found for settings_storage_title (7089119630457156408) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_on (2733295483569432111) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_off (1338039396087898813) -->
+    <skip />
+    <!-- no translation found for settings_location_title (4953062923509886651) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_on (1496219621849158879) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_off (5216466051810596189) -->
+    <skip />
+    <!-- no translation found for settings_remove_site (1822247070226589958) -->
+    <skip />
+    <!-- no translation found for settings_empty (2008952224378583146) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove_title (5360857296753219635) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove (3214500052347860516) -->
+    <skip />
+    <!-- no translation found for storage_notification (6534213782873968255) -->
+    <skip />
+    <!-- no translation found for storage_notification_alwaysdeny (5473208033665783513) -->
+    <skip />
+    <!-- no translation found for location_notification (3495804750470905804) -->
+    <skip />
+    <!-- no translation found for location_notification_alwaysdeny (6184925953783312629) -->
+    <skip />
+    <!-- no translation found for shortcut_notification (1659700220868444568) -->
+    <skip />
+    <!-- no translation found for permission_button_alwaysdeny (3837055994905214848) -->
+    <skip />
+    <!-- no translation found for permission_button_allow (7301874925704148242) -->
+    <skip />
+    <!-- no translation found for permission_button_deny (104712269725153018) -->
+    <skip />
+    <!-- no translation found for shortcut_button_alwaysdeny (4172277731325126605) -->
+    <skip />
     <string name="shortcut_button_allow">"OK"</string>
     <string name="shortcut_button_deny">"Annuler"</string>
     <string name="settings_button_allow">"Appliquer"</string>
@@ -294,6 +329,5 @@
     <string name="denied">"Refusé"</string>
     <string name="unrecognized_dialog_message">"Type de boîte de dialogue inconnu"</string>
     <string name="default_button">"OK"</string>
-    <!-- no translation found for zoom_overview_button_text (4146579940085488881) -->
-    <skip />
+    <string name="zoom_overview_button_text">"Présentation"</string>
 </resources>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index 1f58874..4b30d3b 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -15,18 +15,12 @@
 -->
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for application_name (1935869255545976415) -->
-    <skip />
-    <!-- no translation found for tab_bookmarks (2305793036003473653) -->
-    <skip />
-    <!-- no translation found for tab_most_visited (1077402532455000703) -->
-    <skip />
-    <!-- no translation found for tab_history (1979267558744613746) -->
-    <skip />
-    <!-- no translation found for added_to_bookmarks (1020224130695956728) -->
-    <skip />
-    <!-- no translation found for removed_from_bookmarks (6063705902028438800) -->
-    <skip />
+    <string name="application_name">"Browser"</string>
+    <string name="tab_bookmarks">"Segnalibri"</string>
+    <string name="tab_most_visited">"I più visitati"</string>
+    <string name="tab_history">"Cronologia"</string>
+    <string name="added_to_bookmarks">"Aggiunto a segnalibri"</string>
+    <string name="removed_from_bookmarks">"Rimosso da segnalibri"</string>
     <string name="sign_in_to">"Accedi a <xliff:g id="HOSTNAME">%s1</xliff:g> \"<xliff:g id="REALM">%s2</xliff:g>\""</string>
     <string name="username">"Nome"</string>
     <string name="password">"Password"</string>
@@ -81,16 +75,13 @@
     <string name="bookmark_url_not_valid">"URL non valido."</string>
     <string name="delete_bookmark">"Elimina"</string>
     <string name="bookmark_page">"Aggiungi ultima pagina visualizzata in segnalibri"</string>
-    <!-- no translation found for current_page (7510129573681663135) -->
-    <skip />
+    <string name="current_page">"da"</string>
     <string name="delete_bookmark_warning">"Il segnalibro \"<xliff:g id="BOOKMARK">%s</xliff:g>\" verrà eliminato."</string>
     <string name="open_in_new_window">"Apri in nuova finestra"</string>
     <string name="new_window">"Nuova finestra"</string>
-    <!-- no translation found for goto_dot (3895839050522602723) -->
-    <skip />
+    <string name="goto_dot">"Vai"</string>
     <string name="find_dot">"Trova nella pagina"</string>
-    <!-- no translation found for select_dot (6299170761900561967) -->
-    <skip />
+    <string name="select_dot">"Seleziona testo"</string>
     <string name="view_tabs">"Anteprima finestre"</string>
     <string name="view_tabs_condensed">"Finestre"</string>
     <string name="tab_picker_title">"Finestre correnti"</string>
@@ -215,8 +206,7 @@
     <string name="clear_history">"Cancella cronologia"</string>
     <string name="browser_history">"Pagine visitate di recente"</string>
     <string name="empty_history">"La cronologia del browser è vuota."</string>
-    <!-- no translation found for add_new_bookmark (8086367791400349049) -->
-    <skip />
+    <string name="add_new_bookmark">"Aggiungi segnalibro…"</string>
     <string name="no_database">"Nessun database"</string>
     <string name="search_hint">"Digita l\'indirizzo web"</string>
     <string name="search_button_text">"Vai"</string>
@@ -261,23 +251,68 @@
     <string name="download_length_required">"Impossibile effettuare il download. Impossibile determinare le dimensioni dell\'elemento."</string>
     <string name="download_precondition_failed">"Download interrotto. Impossibile ripristinarlo."</string>
     <string name="activity_instrumentation_test_runner">"Browser Test Runner"</string>
-    <!-- no translation found for search_google (1231765426260855357) -->
-    <skip />
+    <string name="search_google">"Cerca su Google"</string>
     <string name="permlab_readHistoryBookmarks">"leggere cronologia e segnalibri del browser"</string>
     <string name="permdesc_readHistoryBookmarks">"Consente all\'applicazione di leggere tutti gli URL visitati e tutti i segnalibri del browser."</string>
     <string name="permlab_writeHistoryBookmarks">"creare cronologia e segnalibri del browser"</string>
     <string name="permdesc_writeHistoryBookmarks">"Consente a un\'applicazione di modificare la cronologia o i segnalibri del browser memorizzati sul telefono. Le applicazioni dannose possono sfruttare questa possibilità per cancellare o modificare i dati del browser."</string>
-    <string name="query_data_message">"Il sito web sotto desidera memorizzare informazioni sul computer tramite Gears."</string>
-    <string name="location_message">"Il sito web sotto desidera accedere alle informazioni sulla tua posizione tramite Gears."</string>
-    <string name="shortcut_message">"Il sito web desidera creare un collegamento sul computer. Consenti questa operazione?"</string>
+    <!-- no translation found for query_data_prompt (5474381240981604223) -->
+    <skip />
+    <!-- no translation found for query_data_message (8789381063185445197) -->
+    <skip />
+    <!-- no translation found for location_prompt (226262202057302423) -->
+    <skip />
+    <!-- no translation found for location_message (6790400729681341258) -->
+    <skip />
+    <!-- no translation found for shortcut_prompt (437193299088893596) -->
+    <skip />
+    <!-- no translation found for shortcut_message (4793042709293755892) -->
+    <skip />
     <string name="settings_message">"Nella tabella che segue vengono riportate le autorizzazioni concesse a ogni sito che ha provato a usare Gears."</string>
-    <string name="filepicker_message">"Selettore file Gears"</string>
+    <!-- no translation found for filepicker_message (4929726371602896039) -->
+    <skip />
+    <!-- no translation found for image_message (5450245866521896891) -->
+    <skip />
     <string name="settings_title">"Impostazioni Gears"</string>
     <string name="privacy_policy">"Per conoscere la modalità di utilizzo della tua posizione, leggi le norme sulla privacy del sito."</string>
-    <string name="permission_button_alwaysdeny">"Non consentire mai il sito"</string>
-    <string name="permission_button_allow">"Consenti"</string>
-    <string name="permission_button_deny">"Nega"</string>
-    <string name="shortcut_button_alwaysdeny">"Non consentire mai il collegamento"</string>
+    <!-- no translation found for settings_storage_title (7089119630457156408) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_on (2733295483569432111) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_off (1338039396087898813) -->
+    <skip />
+    <!-- no translation found for settings_location_title (4953062923509886651) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_on (1496219621849158879) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_off (5216466051810596189) -->
+    <skip />
+    <!-- no translation found for settings_remove_site (1822247070226589958) -->
+    <skip />
+    <!-- no translation found for settings_empty (2008952224378583146) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove_title (5360857296753219635) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove (3214500052347860516) -->
+    <skip />
+    <!-- no translation found for storage_notification (6534213782873968255) -->
+    <skip />
+    <!-- no translation found for storage_notification_alwaysdeny (5473208033665783513) -->
+    <skip />
+    <!-- no translation found for location_notification (3495804750470905804) -->
+    <skip />
+    <!-- no translation found for location_notification_alwaysdeny (6184925953783312629) -->
+    <skip />
+    <!-- no translation found for shortcut_notification (1659700220868444568) -->
+    <skip />
+    <!-- no translation found for permission_button_alwaysdeny (3837055994905214848) -->
+    <skip />
+    <!-- no translation found for permission_button_allow (7301874925704148242) -->
+    <skip />
+    <!-- no translation found for permission_button_deny (104712269725153018) -->
+    <skip />
+    <!-- no translation found for shortcut_button_alwaysdeny (4172277731325126605) -->
+    <skip />
     <string name="shortcut_button_allow">"OK"</string>
     <string name="shortcut_button_deny">"Annulla"</string>
     <string name="settings_button_allow">"Applica"</string>
@@ -294,6 +329,5 @@
     <string name="denied">"Negato"</string>
     <string name="unrecognized_dialog_message">"Tipo di finestra non riconosciuto"</string>
     <string name="default_button">"OK"</string>
-    <!-- no translation found for zoom_overview_button_text (4146579940085488881) -->
-    <skip />
+    <string name="zoom_overview_button_text">"Panoramica"</string>
 </resources>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index 1fc66d2..6c62bb9 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -15,18 +15,12 @@
 -->
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for application_name (1935869255545976415) -->
-    <skip />
-    <!-- no translation found for tab_bookmarks (2305793036003473653) -->
-    <skip />
-    <!-- no translation found for tab_most_visited (1077402532455000703) -->
-    <skip />
-    <!-- no translation found for tab_history (1979267558744613746) -->
-    <skip />
-    <!-- no translation found for added_to_bookmarks (1020224130695956728) -->
-    <skip />
-    <!-- no translation found for removed_from_bookmarks (6063705902028438800) -->
-    <skip />
+    <string name="application_name">"ブラウザ"</string>
+    <string name="tab_bookmarks">"ブックマーク"</string>
+    <string name="tab_most_visited">"よくアクセスするサイト"</string>
+    <string name="tab_history">"履歴"</string>
+    <string name="added_to_bookmarks">"ブックマークに追加しました"</string>
+    <string name="removed_from_bookmarks">"ブックマークから削除しました"</string>
     <string name="sign_in_to">"<xliff:g id="HOSTNAME">%s1</xliff:g>に「<xliff:g id="REALM">%s2</xliff:g>」でログイン"</string>
     <string name="username">"名前"</string>
     <string name="password">"パスワード"</string>
@@ -54,14 +48,14 @@
     <string name="org_unit">"組織単位:"</string>
     <string name="issued_by">"発行者:"</string>
     <string name="validity_period">"有効期間:"</string>
-    <string name="issued_on">"発行日:"</string>
+    <string name="issued_on">"発行:"</string>
     <string name="expires_on">"有効期限:"</string>
     <string name="retrieving_creds_dlg_msg">"ログイン詳細を取得中..."</string>
     <string name="close">"閉じる"</string>
     <string name="close_window">"このウィンドウを閉じます。"</string>
     <string name="stopping">"停止中..."</string>
     <string name="stop">"停止"</string>
-    <string name="reload">"リフレッシュ"</string>
+    <string name="reload">"再読み込み"</string>
     <string name="forward">"進む"</string>
     <string name="save">"OK"</string>
     <string name="do_not_save">"キャンセル"</string>
@@ -73,29 +67,26 @@
     <string name="create_shortcut_bookmark">"ショートカットをホームに追加"</string>
     <string name="open_bookmark">"開く"</string>
     <string name="remove_bookmark">"ブックマークを削除"</string>
-    <string name="remove_history_item">"履歴から削除"</string>
+    <string name="remove_history_item">"履歴から消去"</string>
     <string name="bookmark_saved">"ブックマークを保存しました。"</string>
-    <string name="bookmark_needs_title">"ブックマークには名前を指定する必要があります。"</string>
-    <string name="bookmark_needs_url">"ブックマークには場所を指定する必要があります。"</string>
+    <string name="bookmark_needs_title">"名前を指定してください。"</string>
+    <string name="bookmark_needs_url">"場所を指定してください。"</string>
     <string name="empty_bookmark">"空のブックマークは作成できません。"</string>
     <string name="bookmark_url_not_valid">"無効なURLです。"</string>
     <string name="delete_bookmark">"削除"</string>
     <string name="bookmark_page">"最後に表示したページをブックマークする"</string>
-    <!-- no translation found for current_page (7510129573681663135) -->
-    <skip />
+    <string name="current_page">"ブックマークするページ"</string>
     <string name="delete_bookmark_warning">"ブックマーク「<xliff:g id="BOOKMARK">%s</xliff:g>」を削除します。"</string>
     <string name="open_in_new_window">"新しいウィンドウで開く"</string>
-    <string name="new_window">"新しいウィンドウ"</string>
-    <!-- no translation found for goto_dot (3895839050522602723) -->
-    <skip />
+    <string name="new_window">"新規ウィンドウ"</string>
+    <string name="goto_dot">"移動"</string>
     <string name="find_dot">"このページの検索"</string>
-    <!-- no translation found for select_dot (6299170761900561967) -->
-    <skip />
+    <string name="select_dot">"テキストを選択"</string>
     <string name="view_tabs">"ウィンドウリスト"</string>
     <string name="view_tabs_condensed">"ウィンドウ"</string>
     <string name="tab_picker_title">"現在のウィンドウ"</string>
     <string name="tab_picker_view_tab">"表示"</string>
-    <string name="tab_picker_new_tab">"新しいウィンドウ"</string>
+    <string name="tab_picker_new_tab">"新規ウィンドウ"</string>
     <string name="tab_picker_remove_tab">"閉じる"</string>
     <string name="tab_picker_bookmark">"ブックマーク"</string>
     <string name="tab_picker_send_url">"リンクを共有"</string>
@@ -117,7 +108,7 @@
     <string name="contextmenu_add_contact">"連絡先を追加"</string>
     <string name="contextmenu_send_mail">"メールを送信"</string>
     <string name="contextmenu_map">"地図"</string>
-    <string name="clear">"クリア"</string>
+    <string name="clear">"消去"</string>
     <string name="replace">"入れ替え"</string>
     <string name="browser_bookmarks_page_bookmarks_text">"ブックマーク"</string>
     <string name="menu_preferences">"設定"</string>
@@ -125,33 +116,33 @@
     <string name="pref_content_load_images">"画像のロード"</string>
     <string name="pref_content_load_images_summary">"ウェブページに画像を表示"</string>
     <string name="pref_content_block_popups">"ポップアップウィンドウをブロック"</string>
-    <string name="pref_content_javascript">"JavaScriptを有効化"</string>
+    <string name="pref_content_javascript">"JavaScript有効"</string>
     <string name="pref_content_open_in_background">"バックグラウンドで開く"</string>
-    <string name="pref_content_open_in_background_summary">"現在のウィンドウの後ろに新しいウィンドウを開く"</string>
+    <string name="pref_content_open_in_background_summary">"新しいウィンドウを現在のウィンドウの後ろに開きます"</string>
     <string name="pref_content_homepage">"ホームページ設定"</string>
     <string name="pref_content_autofit">"ページの自動調整"</string>
     <string name="pref_content_autofit_summary">"ウェブページの大きさを画面に合わせて表示します"</string>
     <string name="pref_privacy_title">"プライバシー設定"</string>
-    <string name="pref_privacy_clear_cache">"キャッシュをクリア"</string>
-    <string name="pref_privacy_clear_cache_summary">"キャッシュされたページコンテンツをすべて削除"</string>
-    <string name="pref_privacy_clear_cache_dlg">"キャッシュをクリアします。"</string>
-    <string name="pref_privacy_clear_cookies">"全Cookieデータをクリア"</string>
-    <string name="pref_privacy_clear_cookies_summary">"ブラウザのCookieをすべてクリア"</string>
-    <string name="pref_privacy_clear_cookies_dlg">"Cookieをすべてクリアします。"</string>
-    <string name="pref_privacy_clear_history">"履歴をクリア"</string>
-    <string name="pref_privacy_clear_history_summary">"ブラウザの閲覧履歴をクリア"</string>
-    <string name="pref_privacy_clear_history_dlg">"ブラウザの閲覧履歴をクリアします。"</string>
+    <string name="pref_privacy_clear_cache">"キャッシュを消去"</string>
+    <string name="pref_privacy_clear_cache_summary">"キャッシュされたページコンテンツをすべて削除します"</string>
+    <string name="pref_privacy_clear_cache_dlg">"キャッシュを消去します。"</string>
+    <string name="pref_privacy_clear_cookies">"Cookieデータを全消去"</string>
+    <string name="pref_privacy_clear_cookies_summary">"ブラウザのCookieをすべて消去します"</string>
+    <string name="pref_privacy_clear_cookies_dlg">"Cookieをすべて消去します。"</string>
+    <string name="pref_privacy_clear_history">"履歴消去"</string>
+    <string name="pref_privacy_clear_history_summary">"ブラウザの閲覧履歴を消去します"</string>
+    <string name="pref_privacy_clear_history_dlg">"ブラウザの閲覧履歴を消去します。"</string>
     <string name="pref_privacy_clear_form_data">"フォームデータをクリア"</string>
-    <string name="pref_privacy_clear_form_data_summary">"保存されているフォームデータをすべてクリア"</string>
-    <string name="pref_privacy_clear_form_data_dlg">"保存されているフォームデータをすべてクリアします。"</string>
-    <string name="pref_privacy_clear_passwords">"パスワードをクリア"</string>
-    <string name="pref_privacy_clear_passwords_summary">"保存されているパスワードをすべてクリア"</string>
-    <string name="pref_privacy_clear_passwords_dlg">"保存されているパスワードをすべてクリアします。"</string>
+    <string name="pref_privacy_clear_form_data_summary">"保存されているフォームデータをすべて消去します"</string>
+    <string name="pref_privacy_clear_form_data_dlg">"保存されているフォームデータをすべて消去します。"</string>
+    <string name="pref_privacy_clear_passwords">"パスワードを消去"</string>
+    <string name="pref_privacy_clear_passwords_summary">"保存されているパスワードをすべて消去します"</string>
+    <string name="pref_privacy_clear_passwords_dlg">"保存されているパスワードをすべて消去します。"</string>
     <string name="pref_security_title">"セキュリティ設定"</string>
     <string name="pref_security_remember_passwords">"パスワードを保存"</string>
-    <string name="pref_security_remember_passwords_summary">"ウェブサイト用のユーザー名とパスワードを保存"</string>
+    <string name="pref_security_remember_passwords_summary">"ウェブサイトのユーザー名とパスワードを保存します"</string>
     <string name="pref_security_save_form_data">"フォームデータを保存"</string>
-    <string name="pref_security_save_form_data_summary">"フォームに入力したデータを保存して後で再利用する"</string>
+    <string name="pref_security_save_form_data_summary">"フォームに入力したデータを保存して後で再利用します"</string>
     <string name="pref_security_show_security_warning">"セキュリティ警告を表示"</string>
     <string name="pref_security_show_security_warning_summary">"サイトの安全性に問題がある場合に警告を表示"</string>
     <string name="pref_security_accept_cookies">"Cookieの受け入れ"</string>
@@ -164,18 +155,18 @@
     <item>"大"</item>
     <item>"最大"</item>
   </string-array>
-    <string name="pref_text_size_dialogtitle">"テキストサイズ"</string>
+    <string name="pref_text_size_dialogtitle">"文字サイズ"</string>
     <string name="pref_extras_title">"詳細な設定"</string>
-    <string name="pref_extras_gears_enable">"Gearsを有効化"</string>
-    <string name="pref_extras_gears_enable_summary">"ブラウザの機能を拡張するアプリケーション"</string>
+    <string name="pref_extras_gears_enable">"Gears有効"</string>
+    <string name="pref_extras_gears_enable_summary">"ブラウザの機能を拡張するアプリケーションです"</string>
     <string name="pref_extras_gears_settings">"Gears設定"</string>
     <string name="pref_plugin_installed">"プラグインリスト"</string>
-    <string name="pref_plugin_installed_empty_list">"プラグインがインストールされていません。"</string>
+    <string name="pref_plugin_installed_empty_list">"プラグインはインストールされていません。"</string>
     <string name="pref_extras_gears_settings_summary">"ブラウザの機能を拡張するアプリケーション"</string>
-    <string name="pref_extras_reset_default">"設定のリセット"</string>
-    <string name="pref_extras_reset_default_summary">"全ブラウザデータをクリアし、設定をすべてデフォルトに戻す"</string>
-    <string name="pref_extras_reset_default_dlg">"全ブラウザデータをクリアし、設定をデフォルト値に戻します。"</string>
-    <string name="pref_extras_reset_default_dlg_title">"設定をリセット"</string>
+    <string name="pref_extras_reset_default">"初期設定にリセット"</string>
+    <string name="pref_extras_reset_default_summary">"ブラウザデータを消去して初期設定に戻します"</string>
+    <string name="pref_extras_reset_default_dlg">"ブラウザデータをすべて消去して初期設定に戻します。"</string>
+    <string name="pref_extras_reset_default_dlg_title">"初期設定にリセット"</string>
     <string name="pref_development_title">"デバッグ"</string>
     <string name="pref_development_viewport">"Use wide viewport"</string>
     <string name="pref_development_single_column_rendering">"Single column rendering"</string>
@@ -212,11 +203,10 @@
     <string name="browserFrameFormResubmitMessage">"表示しようとしているページには、送信済みのデータ (「POSTDATA」) があります。データを再送すると、以前このページのフォームで実行した操作 (検索やオンライン購入など) が繰り返されます。"</string>
     <string name="loadSuspendedTitle">"ネットワークに接続していません"</string>
     <string name="loadSuspended">"再接続時にロードを続行します。"</string>
-    <string name="clear_history">"履歴をクリア"</string>
+    <string name="clear_history">"履歴消去"</string>
     <string name="browser_history">"最近閲覧したページ"</string>
     <string name="empty_history">"ブラウザ履歴はありません。"</string>
-    <!-- no translation found for add_new_bookmark (8086367791400349049) -->
-    <skip />
+    <string name="add_new_bookmark">"ブックマークを追加..."</string>
     <string name="no_database">"データベースがありません。"</string>
     <string name="search_hint">"ウェブアドレスを入力してください"</string>
     <string name="search_button_text">"移動"</string>
@@ -231,23 +221,23 @@
     <string name="download_title">"ダウンロード履歴"</string>
     <string name="download_unknown_filename">"&lt;不明&gt;"</string>
     <string name="download_menu_open">"開く"</string>
-    <string name="download_menu_clear">"リストからクリア"</string>
+    <string name="download_menu_clear">"リストから消去"</string>
     <string name="download_menu_cancel">"ダウンロードをキャンセル"</string>
     <string name="download_menu_cancel_all">"全ダウンロードをキャンセル"</string>
-    <string name="download_menu_clear_all">"リストをクリア"</string>
-    <string name="download_clear_dlg_title">"クリア"</string>
-    <string name="download_clear_dlg_msg">"リストの項目をすべてクリアし、ブラウザのキャッシュから削除します。"</string>
+    <string name="download_menu_clear_all">"リストを消去"</string>
+    <string name="download_clear_dlg_title">"消去"</string>
+    <string name="download_clear_dlg_msg">"リストの項目をすべて消去し、ブラウザのキャッシュから削除します。"</string>
     <string name="download_cancel_dlg_title">"ダウンロードをキャンセル"</string>
-    <string name="download_cancel_dlg_msg">"全<xliff:g id="DOWNLOAD_COUNT">%d</xliff:g>件のダウンロードをキャンセルし、ダウンロード履歴からクリアします。"</string>
+    <string name="download_cancel_dlg_msg">"全<xliff:g id="DOWNLOAD_COUNT">%d</xliff:g>件のダウンロードをキャンセルし、ダウンロード履歴から消去します。"</string>
     <string name="download_file_error_dlg_title">"容量不足です"</string>
-    <string name="download_file_error_dlg_msg">"<xliff:g id="FILENAME">%s</xliff:g>をダウンロードできませんでした。"\n"携帯電話の空き領域を増やしてもう一度試してください。"</string>
+    <string name="download_file_error_dlg_msg">"<xliff:g id="FILENAME">%s</xliff:g>をダウンロードできませんでした。"\n"端末の空き領域を増やしてからやり直してください。"</string>
     <string name="download_failed_generic_dlg_title">"ダウンロードに失敗しました"</string>
     <string name="download_no_sdcard_dlg_title">"SDカードがありません"</string>
     <string name="download_no_sdcard_dlg_msg">"<xliff:g id="FILENAME">%s</xliff:g>をダウンロードするにはSDカードが必要です。"</string>
     <string name="download_sdcard_busy_dlg_title">"SDカードは利用できません"</string>
     <string name="download_sdcard_busy_dlg_msg">"SDカードはビジーです。ダウンロードできるようにするには、[ホーム]&gt;[設定]&gt;[SDカードと携帯電話のメモリ]の順に選択して[USBメモリに使用]をオフにします。"</string>
-    <string name="download_no_application">"このファイルを開けるアプリケーションがありません。"</string>
-    <string name="retry">"再試行"</string>
+    <string name="download_no_application">"このファイルを開くアプリケーションがありません。"</string>
+    <string name="retry">"やり直す"</string>
     <string name="no_downloads">"ダウンロード履歴はありません。"</string>
     <string name="download_error">"ダウンロードできませんでした。"</string>
     <string name="download_success">"<xliff:g id="FILE">%s</xliff:g>のダウンロードが終了しました。"</string>
@@ -261,23 +251,68 @@
     <string name="download_length_required">"項目のサイズを特定できないため、ダウンロードできません。"</string>
     <string name="download_precondition_failed">"ダウンロードが中断されました。再開できません。"</string>
     <string name="activity_instrumentation_test_runner">"Browser Test Runner"</string>
-    <!-- no translation found for search_google (1231765426260855357) -->
-    <skip />
+    <string name="search_google">"Google検索"</string>
     <string name="permlab_readHistoryBookmarks">"ブラウザの履歴とブックマークの読み取り"</string>
     <string name="permdesc_readHistoryBookmarks">"ブラウザでアクセスしたすべてのURLとブックマークの読み取りをアプリケーションに許可します。"</string>
     <string name="permlab_writeHistoryBookmarks">"ブラウザの履歴とブックマークの書き込み"</string>
     <string name="permdesc_writeHistoryBookmarks">"携帯電話に保存されたブラウザの履歴やブックマークの変更をアプリケーションに許可します。これにより悪意のあるアプリケーションが、ブラウザのデータを消去または変更する恐れがあります。"</string>
-    <string name="query_data_message">"下記のウェブサイトがGearsを使用してコンピュータに情報を保存しようとしています。"</string>
-    <string name="location_message">"下記のウェブサイトがGearsを使用して、現在地に関する情報にアクセスしようとしています。"</string>
-    <string name="shortcut_message">"このウェブサイトはコンピュータ上にショートカットを作成しようとしています。作成を許可しますか?"</string>
+    <!-- no translation found for query_data_prompt (5474381240981604223) -->
+    <skip />
+    <!-- no translation found for query_data_message (8789381063185445197) -->
+    <skip />
+    <!-- no translation found for location_prompt (226262202057302423) -->
+    <skip />
+    <!-- no translation found for location_message (6790400729681341258) -->
+    <skip />
+    <!-- no translation found for shortcut_prompt (437193299088893596) -->
+    <skip />
+    <!-- no translation found for shortcut_message (4793042709293755892) -->
+    <skip />
     <string name="settings_message">"Gearsを使用しようとしたサイトに許可した権限は、以下の表のとおりです。"</string>
-    <string name="filepicker_message">"Gears File Picker"</string>
+    <!-- no translation found for filepicker_message (4929726371602896039) -->
+    <skip />
+    <!-- no translation found for image_message (5450245866521896891) -->
+    <skip />
     <string name="settings_title">"Gears設定"</string>
     <string name="privacy_policy">"サイトのプライバシーポリシーを読んで、現在地の情報がどのように使用されるのか確認してください。"</string>
-    <string name="permission_button_alwaysdeny">"このサイトを常に拒否する"</string>
-    <string name="permission_button_allow">"許可"</string>
-    <string name="permission_button_deny">"拒否"</string>
-    <string name="shortcut_button_alwaysdeny">"このショートカットを常に拒否する"</string>
+    <!-- no translation found for settings_storage_title (7089119630457156408) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_on (2733295483569432111) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_off (1338039396087898813) -->
+    <skip />
+    <!-- no translation found for settings_location_title (4953062923509886651) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_on (1496219621849158879) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_off (5216466051810596189) -->
+    <skip />
+    <!-- no translation found for settings_remove_site (1822247070226589958) -->
+    <skip />
+    <!-- no translation found for settings_empty (2008952224378583146) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove_title (5360857296753219635) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove (3214500052347860516) -->
+    <skip />
+    <!-- no translation found for storage_notification (6534213782873968255) -->
+    <skip />
+    <!-- no translation found for storage_notification_alwaysdeny (5473208033665783513) -->
+    <skip />
+    <!-- no translation found for location_notification (3495804750470905804) -->
+    <skip />
+    <!-- no translation found for location_notification_alwaysdeny (6184925953783312629) -->
+    <skip />
+    <!-- no translation found for shortcut_notification (1659700220868444568) -->
+    <skip />
+    <!-- no translation found for permission_button_alwaysdeny (3837055994905214848) -->
+    <skip />
+    <!-- no translation found for permission_button_allow (7301874925704148242) -->
+    <skip />
+    <!-- no translation found for permission_button_deny (104712269725153018) -->
+    <skip />
+    <!-- no translation found for shortcut_button_alwaysdeny (4172277731325126605) -->
+    <skip />
     <string name="shortcut_button_allow">"OK"</string>
     <string name="shortcut_button_deny">"キャンセル"</string>
     <string name="settings_button_allow">"適用"</string>
@@ -294,6 +329,5 @@
     <string name="denied">"拒否されました"</string>
     <string name="unrecognized_dialog_message">"不明な種類のダイアログです"</string>
     <string name="default_button">"OK"</string>
-    <!-- no translation found for zoom_overview_button_text (4146579940085488881) -->
-    <skip />
+    <string name="zoom_overview_button_text">"全体表示"</string>
 </resources>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index 05aba8a..42db923 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -15,18 +15,12 @@
 -->
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for application_name (1935869255545976415) -->
-    <skip />
-    <!-- no translation found for tab_bookmarks (2305793036003473653) -->
-    <skip />
-    <!-- no translation found for tab_most_visited (1077402532455000703) -->
-    <skip />
-    <!-- no translation found for tab_history (1979267558744613746) -->
-    <skip />
-    <!-- no translation found for added_to_bookmarks (1020224130695956728) -->
-    <skip />
-    <!-- no translation found for removed_from_bookmarks (6063705902028438800) -->
-    <skip />
+    <string name="application_name">"브라우저"</string>
+    <string name="tab_bookmarks">"북마크"</string>
+    <string name="tab_most_visited">"최다 방문 웹사이트"</string>
+    <string name="tab_history">"기록"</string>
+    <string name="added_to_bookmarks">"북마크에 추가되었습니다."</string>
+    <string name="removed_from_bookmarks">"북마크에서 삭제"</string>
     <string name="sign_in_to">"<xliff:g id="HOSTNAME">%s1</xliff:g> \'<xliff:g id="REALM">%s2</xliff:g>\'에 로그인"</string>
     <string name="username">"이름"</string>
     <string name="password">"비밀번호"</string>
@@ -81,16 +75,13 @@
     <string name="bookmark_url_not_valid">"URL이 올바르지 않습니다."</string>
     <string name="delete_bookmark">"삭제"</string>
     <string name="bookmark_page">"마지막으로 본 페이지를 북마크 설정"</string>
-    <!-- no translation found for current_page (7510129573681663135) -->
-    <skip />
+    <string name="current_page">"북마크할 페이지"</string>
     <string name="delete_bookmark_warning">"\'<xliff:g id="BOOKMARK">%s</xliff:g>\' 북마크가 삭제됩니다."</string>
     <string name="open_in_new_window">"새 창에서 열기"</string>
     <string name="new_window">"새 창"</string>
-    <!-- no translation found for goto_dot (3895839050522602723) -->
-    <skip />
+    <string name="goto_dot">"실행"</string>
     <string name="find_dot">"검색 페이지"</string>
-    <!-- no translation found for select_dot (6299170761900561967) -->
-    <skip />
+    <string name="select_dot">"텍스트 선택"</string>
     <string name="view_tabs">"창 세부정보"</string>
     <string name="view_tabs_condensed">"Windows"</string>
     <string name="tab_picker_title">"현재 창"</string>
@@ -215,8 +206,7 @@
     <string name="clear_history">"기록 지우기"</string>
     <string name="browser_history">"최근에 방문한 페이지"</string>
     <string name="empty_history">"브라우저 기록이 비어 있습니다."</string>
-    <!-- no translation found for add_new_bookmark (8086367791400349049) -->
-    <skip />
+    <string name="add_new_bookmark">"북마크에 추가..."</string>
     <string name="no_database">"데이터베이스 없음"</string>
     <string name="search_hint">"웹 주소 입력"</string>
     <string name="search_button_text">"이동"</string>
@@ -261,23 +251,68 @@
     <string name="download_length_required">"항목의 크기를 확인할 수 없으므로 다운로드할 수 없습니다."</string>
     <string name="download_precondition_failed">"다운로드 중단됨. 다시 시작할 수 없습니다."</string>
     <string name="activity_instrumentation_test_runner">"브라우저 테스트 실행기"</string>
-    <!-- no translation found for search_google (1231765426260855357) -->
-    <skip />
+    <string name="search_google">"Google 검색"</string>
     <string name="permlab_readHistoryBookmarks">"브라우저의 기록 및 북마크 읽기"</string>
     <string name="permdesc_readHistoryBookmarks">"응용프로그램이 브라우저에서 방문한 모든 URL과 브라우저의 북마크를 모두 읽을 수 있습니다."</string>
     <string name="permlab_writeHistoryBookmarks">"브라우저의 기록 및 북마크 쓰기"</string>
     <string name="permdesc_writeHistoryBookmarks">"응용프로그램이 전화기에 저장된 브라우저의 기록 또는 북마크를 수정할 수 있습니다. 악성 응용프로그램은 이 기능을 이용하여 브라우저의 데이터를 지우거나 수정할 수 있습니다."</string>
-    <string name="query_data_message">"아래 웹사이트가 Gears를 사용하여 컴퓨터에 정보를 저장하려고 합니다."</string>
-    <string name="location_message">"아래 웹사이트가 Gears를 사용하여 사용자 위치에 대한 정보에 액세스하려고 합니다."</string>
-    <string name="shortcut_message">"웹사이트가 컴퓨터에 바로가기를 만들려고 합니다. 허용하시겠습니까?"</string>
+    <!-- no translation found for query_data_prompt (5474381240981604223) -->
+    <skip />
+    <!-- no translation found for query_data_message (8789381063185445197) -->
+    <skip />
+    <!-- no translation found for location_prompt (226262202057302423) -->
+    <skip />
+    <!-- no translation found for location_message (6790400729681341258) -->
+    <skip />
+    <!-- no translation found for shortcut_prompt (437193299088893596) -->
+    <skip />
+    <!-- no translation found for shortcut_message (4793042709293755892) -->
+    <skip />
     <string name="settings_message">"아래 표는 Gears를 사용하려고 시도한 각 사이트에 부여한 권한을 보여줍니다."</string>
-    <string name="filepicker_message">"Gears 파일 선택기"</string>
+    <!-- no translation found for filepicker_message (4929726371602896039) -->
+    <skip />
+    <!-- no translation found for image_message (5450245866521896891) -->
+    <skip />
     <string name="settings_title">"Gears 설정"</string>
     <string name="privacy_policy">"위치가 어떻게 사용되는지 보려면 사이트의 개인정보 보호정책을 읽어보세요."</string>
-    <string name="permission_button_alwaysdeny">"이 사이트를 허용하지 않음"</string>
-    <string name="permission_button_allow">"허용"</string>
-    <string name="permission_button_deny">"거부"</string>
-    <string name="shortcut_button_alwaysdeny">"이 바로가기를 허용하지 않음"</string>
+    <!-- no translation found for settings_storage_title (7089119630457156408) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_on (2733295483569432111) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_off (1338039396087898813) -->
+    <skip />
+    <!-- no translation found for settings_location_title (4953062923509886651) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_on (1496219621849158879) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_off (5216466051810596189) -->
+    <skip />
+    <!-- no translation found for settings_remove_site (1822247070226589958) -->
+    <skip />
+    <!-- no translation found for settings_empty (2008952224378583146) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove_title (5360857296753219635) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove (3214500052347860516) -->
+    <skip />
+    <!-- no translation found for storage_notification (6534213782873968255) -->
+    <skip />
+    <!-- no translation found for storage_notification_alwaysdeny (5473208033665783513) -->
+    <skip />
+    <!-- no translation found for location_notification (3495804750470905804) -->
+    <skip />
+    <!-- no translation found for location_notification_alwaysdeny (6184925953783312629) -->
+    <skip />
+    <!-- no translation found for shortcut_notification (1659700220868444568) -->
+    <skip />
+    <!-- no translation found for permission_button_alwaysdeny (3837055994905214848) -->
+    <skip />
+    <!-- no translation found for permission_button_allow (7301874925704148242) -->
+    <skip />
+    <!-- no translation found for permission_button_deny (104712269725153018) -->
+    <skip />
+    <!-- no translation found for shortcut_button_alwaysdeny (4172277731325126605) -->
+    <skip />
     <string name="shortcut_button_allow">"확인"</string>
     <string name="shortcut_button_deny">"취소"</string>
     <string name="settings_button_allow">"적용"</string>
@@ -294,6 +329,5 @@
     <string name="denied">"거부됨"</string>
     <string name="unrecognized_dialog_message">"인식할 수 없는 대화상자 유형"</string>
     <string name="default_button">"확인"</string>
-    <!-- no translation found for zoom_overview_button_text (4146579940085488881) -->
-    <skip />
+    <string name="zoom_overview_button_text">"전체보기"</string>
 </resources>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index 20fe7df..34f268e 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -256,17 +256,63 @@
     <string name="permdesc_readHistoryBookmarks">"Allows the application to read all the URLs that the Browser has visited, and all of the Browser\\\\\\\'s bookmarks."</string>
     <string name="permlab_writeHistoryBookmarks">"write Browser\\\\\\\'s history and bookmarks"</string>
     <string name="permdesc_writeHistoryBookmarks">"Allows an application to modify the Browser\\\\\\\'s history or bookmarks stored on your phone. Malicious applications can use this to erase or modify your Browser\\\\\\\'s data."</string>
-    <string name="query_data_message">"Nettsiden under ønsker å lagre informasjon på datamaskinen ved hjelp av Gears."</string>
-    <string name="location_message">"Nettsiden under ønsker å finne ut hvor du er ved hjelp av Gears."</string>
-    <string name="shortcut_message">"Denne nettsiden ønsker å lage en snarvei på datamaskinen. Ønsker du å tillate dette?"</string>
+    <!-- no translation found for query_data_prompt (5474381240981604223) -->
+    <skip />
+    <!-- no translation found for query_data_message (8789381063185445197) -->
+    <skip />
+    <!-- no translation found for location_prompt (226262202057302423) -->
+    <skip />
+    <!-- no translation found for location_message (6790400729681341258) -->
+    <skip />
+    <!-- no translation found for shortcut_prompt (437193299088893596) -->
+    <skip />
+    <!-- no translation found for shortcut_message (4793042709293755892) -->
+    <skip />
     <string name="settings_message">"Tabellen under viser rettighetent du har gitt til hver side som har prøvd å bruke Gears."</string>
-    <string name="filepicker_message">"Gears filplukker"</string>
+    <!-- no translation found for filepicker_message (4929726371602896039) -->
+    <skip />
+    <!-- no translation found for image_message (5450245866521896891) -->
+    <skip />
     <string name="settings_title">"Gears-innstillinger"</string>
     <string name="privacy_policy">"Les sidens personvernspolicy for å se hvordan informasjonen vil bli brukt."</string>
-    <string name="permission_button_alwaysdeny">"Aldri tillat for denne siden"</string>
-    <string name="permission_button_allow">"Tillat"</string>
-    <string name="permission_button_deny">"Nekt"</string>
-    <string name="shortcut_button_alwaysdeny">"Aldri tillat denne snarveien"</string>
+    <!-- no translation found for settings_storage_title (7089119630457156408) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_on (2733295483569432111) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_off (1338039396087898813) -->
+    <skip />
+    <!-- no translation found for settings_location_title (4953062923509886651) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_on (1496219621849158879) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_off (5216466051810596189) -->
+    <skip />
+    <!-- no translation found for settings_remove_site (1822247070226589958) -->
+    <skip />
+    <!-- no translation found for settings_empty (2008952224378583146) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove_title (5360857296753219635) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove (3214500052347860516) -->
+    <skip />
+    <!-- no translation found for storage_notification (6534213782873968255) -->
+    <skip />
+    <!-- no translation found for storage_notification_alwaysdeny (5473208033665783513) -->
+    <skip />
+    <!-- no translation found for location_notification (3495804750470905804) -->
+    <skip />
+    <!-- no translation found for location_notification_alwaysdeny (6184925953783312629) -->
+    <skip />
+    <!-- no translation found for shortcut_notification (1659700220868444568) -->
+    <skip />
+    <!-- no translation found for permission_button_alwaysdeny (3837055994905214848) -->
+    <skip />
+    <!-- no translation found for permission_button_allow (7301874925704148242) -->
+    <skip />
+    <!-- no translation found for permission_button_deny (104712269725153018) -->
+    <skip />
+    <!-- no translation found for shortcut_button_alwaysdeny (4172277731325126605) -->
+    <skip />
     <string name="shortcut_button_allow">"OK"</string>
     <string name="shortcut_button_deny">"Avbryt"</string>
     <string name="settings_button_allow">"Bruk"</string>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index ebb9f24..e548ea7 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -15,18 +15,12 @@
 -->
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for application_name (1935869255545976415) -->
-    <skip />
-    <!-- no translation found for tab_bookmarks (2305793036003473653) -->
-    <skip />
-    <!-- no translation found for tab_most_visited (1077402532455000703) -->
-    <skip />
-    <!-- no translation found for tab_history (1979267558744613746) -->
-    <skip />
-    <!-- no translation found for added_to_bookmarks (1020224130695956728) -->
-    <skip />
-    <!-- no translation found for removed_from_bookmarks (6063705902028438800) -->
-    <skip />
+    <string name="application_name">"Browser"</string>
+    <string name="tab_bookmarks">"Bladwijzers"</string>
+    <string name="tab_most_visited">"Meest bezocht"</string>
+    <string name="tab_history">"Geschiedenis"</string>
+    <string name="added_to_bookmarks">"Toegevoegd aan bladwijzers"</string>
+    <string name="removed_from_bookmarks">"Verwijderd uit bladwijzers"</string>
     <string name="sign_in_to">"Aanmelden bij <xliff:g id="HOSTNAME">%s1</xliff:g> \'<xliff:g id="REALM">%s2</xliff:g>\'"</string>
     <string name="username">"Naam"</string>
     <string name="password">"Wachtwoord"</string>
@@ -81,16 +75,13 @@
     <string name="bookmark_url_not_valid">"URL is ongeldig."</string>
     <string name="delete_bookmark">"Verwijderen"</string>
     <string name="bookmark_page">"Bladwijzer maken voor de laatst weergegeven pagina"</string>
-    <!-- no translation found for current_page (7510129573681663135) -->
-    <skip />
+    <string name="current_page">"van"</string>
     <string name="delete_bookmark_warning">"Bladwijzer \'<xliff:g id="BOOKMARK">%s</xliff:g>\' wordt verwijderd."</string>
     <string name="open_in_new_window">"Openen in een nieuw venster"</string>
     <string name="new_window">"Nieuw venster"</string>
-    <!-- no translation found for goto_dot (3895839050522602723) -->
-    <skip />
+    <string name="goto_dot">"Ga"</string>
     <string name="find_dot">"Zoeken op pagina"</string>
-    <!-- no translation found for select_dot (6299170761900561967) -->
-    <skip />
+    <string name="select_dot">"Tekst selecteren"</string>
     <string name="view_tabs">"Vensteroverzicht"</string>
     <string name="view_tabs_condensed">"Windows"</string>
     <string name="tab_picker_title">"Huidige vensters"</string>
@@ -215,8 +206,7 @@
     <string name="clear_history">"Geschiedenis wissen"</string>
     <string name="browser_history">"Onlangs bezochte pagina\'s"</string>
     <string name="empty_history">"Browsergeschiedenis is leeg."</string>
-    <!-- no translation found for add_new_bookmark (8086367791400349049) -->
-    <skip />
+    <string name="add_new_bookmark">"Bladwijzer toevoegen…"</string>
     <string name="no_database">"Geen database."</string>
     <string name="search_hint">"Typ het webadres"</string>
     <string name="search_button_text">"Ga"</string>
@@ -261,23 +251,68 @@
     <string name="download_length_required">"Kan niet downloaden. De grootte van het item kan niet worden vastgesteld."</string>
     <string name="download_precondition_failed">"Download is onderbroken. Deze kan niet worden voortgezet."</string>
     <string name="activity_instrumentation_test_runner">"Browser Test Runner"</string>
-    <!-- no translation found for search_google (1231765426260855357) -->
-    <skip />
+    <string name="search_google">"Zoeken met Google"</string>
     <string name="permlab_readHistoryBookmarks">"browsergeschiedenis en bladwijzers lezen"</string>
     <string name="permdesc_readHistoryBookmarks">"Hiermee kan een toepassing de URL\'s lezen die u via de browser heeft bezocht, evenals alle bladwijzers van de browser."</string>
     <string name="permlab_writeHistoryBookmarks">"browsergeschiedenis en bladwijzers schrijven"</string>
     <string name="permdesc_writeHistoryBookmarks">"Hiermee kan een toepassing de op uw telefoon opgeslagen browsergeschiedenis of bladwijzers wijzigen. Schadelijke toepassingen kunnen hiermee uw browsergegevens verwijderen of wijzigen."</string>
-    <string name="query_data_message">"De onderstaande website probeer gegevens op uw computer op te slaan met Google Gears."</string>
-    <string name="location_message">"De onderstaande website probeert via Gears informatie over uw locatie te krijgen."</string>
-    <string name="shortcut_message">"Deze website probeert een snelkoppeling te maken op uw computer. Wilt u dit toestaan?"</string>
+    <!-- no translation found for query_data_prompt (5474381240981604223) -->
+    <skip />
+    <!-- no translation found for query_data_message (8789381063185445197) -->
+    <skip />
+    <!-- no translation found for location_prompt (226262202057302423) -->
+    <skip />
+    <!-- no translation found for location_message (6790400729681341258) -->
+    <skip />
+    <!-- no translation found for shortcut_prompt (437193299088893596) -->
+    <skip />
+    <!-- no translation found for shortcut_message (4793042709293755892) -->
+    <skip />
     <string name="settings_message">"De onderstaande tabel geeft de toestemming weer die u heeft verleend aan elke site die Gears heeft geprobeerd te gebruiken."</string>
-    <string name="filepicker_message">"Bestandenkiezer van Google Gears"</string>
+    <!-- no translation found for filepicker_message (4929726371602896039) -->
+    <skip />
+    <!-- no translation found for image_message (5450245866521896891) -->
+    <skip />
     <string name="settings_title">"Instellingen van Gears"</string>
     <string name="privacy_policy">"U kunt het privacybeleid van de site raadplegen voor meer informatie over hoe uw locatie wordt gebruikt."</string>
-    <string name="permission_button_alwaysdeny">"Deze site nooit toestaan"</string>
-    <string name="permission_button_allow">"Toestaan"</string>
-    <string name="permission_button_deny">"Weigeren"</string>
-    <string name="shortcut_button_alwaysdeny">"Deze snelkoppeling nooit toestaan"</string>
+    <!-- no translation found for settings_storage_title (7089119630457156408) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_on (2733295483569432111) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_off (1338039396087898813) -->
+    <skip />
+    <!-- no translation found for settings_location_title (4953062923509886651) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_on (1496219621849158879) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_off (5216466051810596189) -->
+    <skip />
+    <!-- no translation found for settings_remove_site (1822247070226589958) -->
+    <skip />
+    <!-- no translation found for settings_empty (2008952224378583146) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove_title (5360857296753219635) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove (3214500052347860516) -->
+    <skip />
+    <!-- no translation found for storage_notification (6534213782873968255) -->
+    <skip />
+    <!-- no translation found for storage_notification_alwaysdeny (5473208033665783513) -->
+    <skip />
+    <!-- no translation found for location_notification (3495804750470905804) -->
+    <skip />
+    <!-- no translation found for location_notification_alwaysdeny (6184925953783312629) -->
+    <skip />
+    <!-- no translation found for shortcut_notification (1659700220868444568) -->
+    <skip />
+    <!-- no translation found for permission_button_alwaysdeny (3837055994905214848) -->
+    <skip />
+    <!-- no translation found for permission_button_allow (7301874925704148242) -->
+    <skip />
+    <!-- no translation found for permission_button_deny (104712269725153018) -->
+    <skip />
+    <!-- no translation found for shortcut_button_alwaysdeny (4172277731325126605) -->
+    <skip />
     <string name="shortcut_button_allow">"OK"</string>
     <string name="shortcut_button_deny">"Annuleren"</string>
     <string name="settings_button_allow">"Toepassen"</string>
@@ -294,6 +329,5 @@
     <string name="denied">"Geweigerd"</string>
     <string name="unrecognized_dialog_message">"Dialoogtype wordt niet herkend"</string>
     <string name="default_button">"OK"</string>
-    <!-- no translation found for zoom_overview_button_text (4146579940085488881) -->
-    <skip />
+    <string name="zoom_overview_button_text">"Overzicht"</string>
 </resources>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index bf62311..f113a89 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -15,18 +15,12 @@
 -->
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for application_name (1935869255545976415) -->
-    <skip />
-    <!-- no translation found for tab_bookmarks (2305793036003473653) -->
-    <skip />
-    <!-- no translation found for tab_most_visited (1077402532455000703) -->
-    <skip />
-    <!-- no translation found for tab_history (1979267558744613746) -->
-    <skip />
-    <!-- no translation found for added_to_bookmarks (1020224130695956728) -->
-    <skip />
-    <!-- no translation found for removed_from_bookmarks (6063705902028438800) -->
-    <skip />
+    <string name="application_name">"Przeglądarka"</string>
+    <string name="tab_bookmarks">"Zakładki"</string>
+    <string name="tab_most_visited">"Najczęściej odwiedzane"</string>
+    <string name="tab_history">"Historia"</string>
+    <string name="added_to_bookmarks">"Dodano do zakładek"</string>
+    <string name="removed_from_bookmarks">"Usunięto z zakładek"</string>
     <string name="sign_in_to">"Zaloguj się w witrynie <xliff:g id="HOSTNAME">%s1</xliff:g> „<xliff:g id="REALM">%s2</xliff:g>”"</string>
     <string name="username">"Nazwa"</string>
     <string name="password">"Hasło"</string>
@@ -81,16 +75,13 @@
     <string name="bookmark_url_not_valid">"Adres URL jest nieprawidłowy."</string>
     <string name="delete_bookmark">"Usuń"</string>
     <string name="bookmark_page">"Dodaj do zakładek ostatnio wyświetlaną stronę"</string>
-    <!-- no translation found for current_page (7510129573681663135) -->
-    <skip />
+    <string name="current_page">"z"</string>
     <string name="delete_bookmark_warning">"Zakładka „<xliff:g id="BOOKMARK">%s</xliff:g>” zostanie usunięta."</string>
     <string name="open_in_new_window">"Otwórz w nowym oknie"</string>
     <string name="new_window">"Nowe okno"</string>
-    <!-- no translation found for goto_dot (3895839050522602723) -->
-    <skip />
+    <string name="goto_dot">"Idź"</string>
     <string name="find_dot">"Znajdź na stronie"</string>
-    <!-- no translation found for select_dot (6299170761900561967) -->
-    <skip />
+    <string name="select_dot">"Wybierz tekst"</string>
     <string name="view_tabs">"Przegląd okien"</string>
     <string name="view_tabs_condensed">"Windows"</string>
     <string name="tab_picker_title">"Bieżące okna"</string>
@@ -215,8 +206,7 @@
     <string name="clear_history">"Wyczyść historię"</string>
     <string name="browser_history">"Ostatnio odwiedzane strony"</string>
     <string name="empty_history">"Historia przeglądarki jest pusta."</string>
-    <!-- no translation found for add_new_bookmark (8086367791400349049) -->
-    <skip />
+    <string name="add_new_bookmark">"Dodaj do zakładek..."</string>
     <string name="no_database">"Brak bazy danych!"</string>
     <string name="search_hint">"Wpisz adres WWW"</string>
     <string name="search_button_text">"Idź"</string>
@@ -261,23 +251,68 @@
     <string name="download_length_required">"Pobieranie niemożliwe. Nie można ustalić rozmiaru elementu."</string>
     <string name="download_precondition_failed">"Pobieranie zostało przerwane. Nie można go wznowić."</string>
     <string name="activity_instrumentation_test_runner">"Uruchamianie testów przeglądarki"</string>
-    <!-- no translation found for search_google (1231765426260855357) -->
-    <skip />
+    <string name="search_google">"Szukanie Google"</string>
     <string name="permlab_readHistoryBookmarks">"odczytywanie historii i zakładek przeglądarki"</string>
     <string name="permdesc_readHistoryBookmarks">"Zezwala aplikacji na odczytanie wszystkich adresów URL odwiedzonych przy użyciu przeglądarki oraz wszystkich zakładek przeglądarki."</string>
     <string name="permlab_writeHistoryBookmarks">"zapisać historię i zakładki przeglądarki"</string>
     <string name="permdesc_writeHistoryBookmarks">"Pozwala aplikacji na zmianę historii lub zakładek przeglądarki zapisanych w telefonie. Szkodliwe aplikacje mogą to wykorzystać, aby usunąć lub zmienić dane przeglądarki."</string>
-    <string name="query_data_message">"Poniższa witryna chce przechowywać informacje w Twoim komputerze przy użyciu Gears."</string>
-    <string name="location_message">"Poniższa witryna chce uzyskać informacje o Twojej lokalizacji przy użyciu Gears."</string>
-    <string name="shortcut_message">"Ta witryna chce utworzyć skrót w Twoim komputerze. Czy chcesz na to zezwolić?"</string>
+    <!-- no translation found for query_data_prompt (5474381240981604223) -->
+    <skip />
+    <!-- no translation found for query_data_message (8789381063185445197) -->
+    <skip />
+    <!-- no translation found for location_prompt (226262202057302423) -->
+    <skip />
+    <!-- no translation found for location_message (6790400729681341258) -->
+    <skip />
+    <!-- no translation found for shortcut_prompt (437193299088893596) -->
+    <skip />
+    <!-- no translation found for shortcut_message (4793042709293755892) -->
+    <skip />
     <string name="settings_message">"W poniższej tabeli przedstawiono uprawnienia udzielone każdej z witryn próbujących użyć Gears."</string>
-    <string name="filepicker_message">"Gears — wybieranie pliku"</string>
+    <!-- no translation found for filepicker_message (4929726371602896039) -->
+    <skip />
+    <!-- no translation found for image_message (5450245866521896891) -->
+    <skip />
     <string name="settings_title">"Gears — ustawienia"</string>
     <string name="privacy_policy">"Przeczytaj zasady zachowania poufności informacji witryny, aby dowiedzieć się, jak będą użyte informacje o twojej lokalizacji."</string>
-    <string name="permission_button_alwaysdeny">"Nigdy nie zezwalaj tej witrynie"</string>
-    <string name="permission_button_allow">"Zezwól"</string>
-    <string name="permission_button_deny">"Odmów"</string>
-    <string name="shortcut_button_alwaysdeny">"Nigdy nie zezwalaj temu skrótowi"</string>
+    <!-- no translation found for settings_storage_title (7089119630457156408) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_on (2733295483569432111) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_off (1338039396087898813) -->
+    <skip />
+    <!-- no translation found for settings_location_title (4953062923509886651) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_on (1496219621849158879) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_off (5216466051810596189) -->
+    <skip />
+    <!-- no translation found for settings_remove_site (1822247070226589958) -->
+    <skip />
+    <!-- no translation found for settings_empty (2008952224378583146) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove_title (5360857296753219635) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove (3214500052347860516) -->
+    <skip />
+    <!-- no translation found for storage_notification (6534213782873968255) -->
+    <skip />
+    <!-- no translation found for storage_notification_alwaysdeny (5473208033665783513) -->
+    <skip />
+    <!-- no translation found for location_notification (3495804750470905804) -->
+    <skip />
+    <!-- no translation found for location_notification_alwaysdeny (6184925953783312629) -->
+    <skip />
+    <!-- no translation found for shortcut_notification (1659700220868444568) -->
+    <skip />
+    <!-- no translation found for permission_button_alwaysdeny (3837055994905214848) -->
+    <skip />
+    <!-- no translation found for permission_button_allow (7301874925704148242) -->
+    <skip />
+    <!-- no translation found for permission_button_deny (104712269725153018) -->
+    <skip />
+    <!-- no translation found for shortcut_button_alwaysdeny (4172277731325126605) -->
+    <skip />
     <string name="shortcut_button_allow">"OK"</string>
     <string name="shortcut_button_deny">"Anuluj"</string>
     <string name="settings_button_allow">"Zastosuj"</string>
@@ -294,6 +329,5 @@
     <string name="denied">"Odmówiono"</string>
     <string name="unrecognized_dialog_message">"Nierozpoznany typ okna dialogowego"</string>
     <string name="default_button">"OK"</string>
-    <!-- no translation found for zoom_overview_button_text (4146579940085488881) -->
-    <skip />
+    <string name="zoom_overview_button_text">"Widok ogólny"</string>
 </resources>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index e82021a..01f8dc3 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -15,18 +15,12 @@
 -->
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for application_name (1935869255545976415) -->
-    <skip />
-    <!-- no translation found for tab_bookmarks (2305793036003473653) -->
-    <skip />
-    <!-- no translation found for tab_most_visited (1077402532455000703) -->
-    <skip />
-    <!-- no translation found for tab_history (1979267558744613746) -->
-    <skip />
-    <!-- no translation found for added_to_bookmarks (1020224130695956728) -->
-    <skip />
-    <!-- no translation found for removed_from_bookmarks (6063705902028438800) -->
-    <skip />
+    <string name="application_name">"Браузер"</string>
+    <string name="tab_bookmarks">"Закладки"</string>
+    <string name="tab_most_visited">"Часто посещаемые"</string>
+    <string name="tab_history">"История"</string>
+    <string name="added_to_bookmarks">"Добавлено в закладки"</string>
+    <string name="removed_from_bookmarks">"Удалено из закладок"</string>
     <string name="sign_in_to">"Регистрация в <xliff:g id="HOSTNAME">%s1</xliff:g> \"<xliff:g id="REALM">%s2</xliff:g>\""</string>
     <string name="username">"Название"</string>
     <string name="password">"Пароль"</string>
@@ -81,16 +75,13 @@
     <string name="bookmark_url_not_valid">"URL недействителен."</string>
     <string name="delete_bookmark">"Удаление"</string>
     <string name="bookmark_page">"Добавить в закладки последнюю просмотренную страницу"</string>
-    <!-- no translation found for current_page (7510129573681663135) -->
-    <skip />
+    <string name="current_page">"из"</string>
     <string name="delete_bookmark_warning">"Закладка \"<xliff:g id="BOOKMARK">%s</xliff:g>\" будет удалена."</string>
     <string name="open_in_new_window">"Открыть в новом окне"</string>
     <string name="new_window">"Новое окно"</string>
-    <!-- no translation found for goto_dot (3895839050522602723) -->
-    <skip />
+    <string name="goto_dot">"Выбрать"</string>
     <string name="find_dot">"Найти на странице"</string>
-    <!-- no translation found for select_dot (6299170761900561967) -->
-    <skip />
+    <string name="select_dot">"Выбрать текст"</string>
     <string name="view_tabs">"Обзор окон"</string>
     <string name="view_tabs_condensed">"Окна"</string>
     <string name="tab_picker_title">"Текущие окна"</string>
@@ -215,8 +206,7 @@
     <string name="clear_history">"Очистить историю"</string>
     <string name="browser_history">"Недавно посещенные страницы"</string>
     <string name="empty_history">"История бразуера пуста."</string>
-    <!-- no translation found for add_new_bookmark (8086367791400349049) -->
-    <skip />
+    <string name="add_new_bookmark">"Добавить закладку…"</string>
     <string name="no_database">"Нет базы данных!"</string>
     <string name="search_hint">"Введите веб-адрес"</string>
     <string name="search_button_text">"Перейти"</string>
@@ -261,23 +251,68 @@
     <string name="download_length_required">"Загрузка невозможна. Не удается определить размер элемента."</string>
     <string name="download_precondition_failed">"Загрузка прервана и не может быть продолжена."</string>
     <string name="activity_instrumentation_test_runner">"Проверка браузера"</string>
-    <!-- no translation found for search_google (1231765426260855357) -->
-    <skip />
+    <string name="search_google">"Поиск в Google"</string>
     <string name="permlab_readHistoryBookmarks">"считывать историю и закладки браузера"</string>
     <string name="permdesc_readHistoryBookmarks">"Позволяет приложению считывать все URL, открытые через браузер, и все закладки браузера."</string>
     <string name="permlab_writeHistoryBookmarks">"записывать историю и закладки браузера"</string>
     <string name="permdesc_writeHistoryBookmarks">"Позволяет приложению изменять сохраненные в телефоне историю и закладки браузера. Вредоносное ПО сможет стирать или изменять данные браузера."</string>
-    <string name="query_data_message">"Указанный ниже веб-сайт пытается сохранить данные на вашем компьютере с помощью Gears."</string>
-    <string name="location_message">"Указанный ниже веб-сайт пытается получить данные о вашем местоположении с помощью Gears."</string>
-    <string name="shortcut_message">"Этот веб-сайт пытается создать ярлык на вашем компьютере. Разрешить?"</string>
+    <!-- no translation found for query_data_prompt (5474381240981604223) -->
+    <skip />
+    <!-- no translation found for query_data_message (8789381063185445197) -->
+    <skip />
+    <!-- no translation found for location_prompt (226262202057302423) -->
+    <skip />
+    <!-- no translation found for location_message (6790400729681341258) -->
+    <skip />
+    <!-- no translation found for shortcut_prompt (437193299088893596) -->
+    <skip />
+    <!-- no translation found for shortcut_message (4793042709293755892) -->
+    <skip />
     <string name="settings_message">"В таблице ниже показаны разрешения, которые вы дали сайтам, пытавшимся использовать Gears."</string>
-    <string name="filepicker_message">"Выбор файлов Gears"</string>
+    <!-- no translation found for filepicker_message (4929726371602896039) -->
+    <skip />
+    <!-- no translation found for image_message (5450245866521896891) -->
+    <skip />
     <string name="settings_title">"Настройки Gears"</string>
     <string name="privacy_policy">"Прочитайте политику конфиденциальности сайта, чтобы узнать, как будут использованы данные о вашем местоположении."</string>
-    <string name="permission_button_alwaysdeny">"Никогда для этого сайта"</string>
-    <string name="permission_button_allow">"Разрешить"</string>
-    <string name="permission_button_deny">"Запретить"</string>
-    <string name="shortcut_button_alwaysdeny">"Никогда для этого ярлыка"</string>
+    <!-- no translation found for settings_storage_title (7089119630457156408) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_on (2733295483569432111) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_off (1338039396087898813) -->
+    <skip />
+    <!-- no translation found for settings_location_title (4953062923509886651) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_on (1496219621849158879) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_off (5216466051810596189) -->
+    <skip />
+    <!-- no translation found for settings_remove_site (1822247070226589958) -->
+    <skip />
+    <!-- no translation found for settings_empty (2008952224378583146) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove_title (5360857296753219635) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove (3214500052347860516) -->
+    <skip />
+    <!-- no translation found for storage_notification (6534213782873968255) -->
+    <skip />
+    <!-- no translation found for storage_notification_alwaysdeny (5473208033665783513) -->
+    <skip />
+    <!-- no translation found for location_notification (3495804750470905804) -->
+    <skip />
+    <!-- no translation found for location_notification_alwaysdeny (6184925953783312629) -->
+    <skip />
+    <!-- no translation found for shortcut_notification (1659700220868444568) -->
+    <skip />
+    <!-- no translation found for permission_button_alwaysdeny (3837055994905214848) -->
+    <skip />
+    <!-- no translation found for permission_button_allow (7301874925704148242) -->
+    <skip />
+    <!-- no translation found for permission_button_deny (104712269725153018) -->
+    <skip />
+    <!-- no translation found for shortcut_button_alwaysdeny (4172277731325126605) -->
+    <skip />
     <string name="shortcut_button_allow">"ОК"</string>
     <string name="shortcut_button_deny">"Отмена"</string>
     <string name="settings_button_allow">"Применить"</string>
@@ -294,6 +329,5 @@
     <string name="denied">"Запрещено"</string>
     <string name="unrecognized_dialog_message">"Неизвестный тип диалога"</string>
     <string name="default_button">"ОК"</string>
-    <!-- no translation found for zoom_overview_button_text (4146579940085488881) -->
-    <skip />
+    <string name="zoom_overview_button_text">"Обзор"</string>
 </resources>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 8a4d47b..9838012 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -15,18 +15,12 @@
 -->
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for application_name (1935869255545976415) -->
-    <skip />
-    <!-- no translation found for tab_bookmarks (2305793036003473653) -->
-    <skip />
-    <!-- no translation found for tab_most_visited (1077402532455000703) -->
-    <skip />
-    <!-- no translation found for tab_history (1979267558744613746) -->
-    <skip />
-    <!-- no translation found for added_to_bookmarks (1020224130695956728) -->
-    <skip />
-    <!-- no translation found for removed_from_bookmarks (6063705902028438800) -->
-    <skip />
+    <string name="application_name">"浏览器"</string>
+    <string name="tab_bookmarks">"书签"</string>
+    <string name="tab_most_visited">"访问最多的网站"</string>
+    <string name="tab_history">"历史记录"</string>
+    <string name="added_to_bookmarks">"添加到书签"</string>
+    <string name="removed_from_bookmarks">"从书签中删除"</string>
     <string name="sign_in_to">"登录至 <xliff:g id="HOSTNAME">%s1</xliff:g>“<xliff:g id="REALM">%s2</xliff:g>”"</string>
     <string name="username">"名称"</string>
     <string name="password">"密码"</string>
@@ -81,16 +75,13 @@
     <string name="bookmark_url_not_valid">"网址无效。"</string>
     <string name="delete_bookmark">"删除"</string>
     <string name="bookmark_page">"将上次查看过的页面加为书签"</string>
-    <!-- no translation found for current_page (7510129573681663135) -->
-    <skip />
+    <string name="current_page">"来源"</string>
     <string name="delete_bookmark_warning">"会删除书签“<xliff:g id="BOOKMARK">%s</xliff:g>”。"</string>
     <string name="open_in_new_window">"在新窗口中打开"</string>
     <string name="new_window">"新窗口"</string>
-    <!-- no translation found for goto_dot (3895839050522602723) -->
-    <skip />
+    <string name="goto_dot">"开始"</string>
     <string name="find_dot">"在页面上查找"</string>
-    <!-- no translation found for select_dot (6299170761900561967) -->
-    <skip />
+    <string name="select_dot">"选择文本"</string>
     <string name="view_tabs">"窗口概述"</string>
     <string name="view_tabs_condensed">"窗口"</string>
     <string name="tab_picker_title">"当前窗口"</string>
@@ -215,8 +206,7 @@
     <string name="clear_history">"清除历史记录"</string>
     <string name="browser_history">"最近访问过的页面"</string>
     <string name="empty_history">"浏览器历史记录为空。"</string>
-    <!-- no translation found for add_new_bookmark (8086367791400349049) -->
-    <skip />
+    <string name="add_new_bookmark">"添加书签..."</string>
     <string name="no_database">"没有数据库!"</string>
     <string name="search_hint">"键入网址"</string>
     <string name="search_button_text">"转至"</string>
@@ -261,23 +251,68 @@
     <string name="download_length_required">"无法下载。无法确定该项的大小。"</string>
     <string name="download_precondition_failed">"下载中断,无法重新开始。"</string>
     <string name="activity_instrumentation_test_runner">"浏览器测试运行器"</string>
-    <!-- no translation found for search_google (1231765426260855357) -->
-    <skip />
+    <string name="search_google">"使用 Google 进行搜索"</string>
     <string name="permlab_readHistoryBookmarks">"读取浏览器的历史记录和书签"</string>
     <string name="permdesc_readHistoryBookmarks">"允许应用程序读取浏览器访问过的所有网址以及浏览器的所有书签。"</string>
     <string name="permlab_writeHistoryBookmarks">"写入浏览器的历史记录和书签"</string>
     <string name="permdesc_writeHistoryBookmarks">"允许应用程序修改您手机中存储的浏览器的历史记录或书签。恶意应用程序可能会利用此权限清除或修改您浏览器的数据。"</string>
-    <string name="query_data_message">"下面的网站想要使用 Gears 在您的计算机上存储信息。"</string>
-    <string name="location_message">"下面的网站想要使用 Gears 访问关于您的位置的信息。"</string>
-    <string name="shortcut_message">"该网站想要在您的计算机上创建快捷方式。是否允许创建?"</string>
+    <!-- no translation found for query_data_prompt (5474381240981604223) -->
+    <skip />
+    <!-- no translation found for query_data_message (8789381063185445197) -->
+    <skip />
+    <!-- no translation found for location_prompt (226262202057302423) -->
+    <skip />
+    <!-- no translation found for location_message (6790400729681341258) -->
+    <skip />
+    <!-- no translation found for shortcut_prompt (437193299088893596) -->
+    <skip />
+    <!-- no translation found for shortcut_message (4793042709293755892) -->
+    <skip />
     <string name="settings_message">"下表显示了您授予尝试使用 Gears 的各个网站的权限。"</string>
-    <string name="filepicker_message">"Gears 文件选择器"</string>
+    <!-- no translation found for filepicker_message (4929726371602896039) -->
+    <skip />
+    <!-- no translation found for image_message (5450245866521896891) -->
+    <skip />
     <string name="settings_title">"Gears 设置"</string>
     <string name="privacy_policy">"阅读网站的隐私政策,以了解会如何使用您的位置。"</string>
-    <string name="permission_button_alwaysdeny">"始终拒绝该网站"</string>
-    <string name="permission_button_allow">"允许"</string>
-    <string name="permission_button_deny">"拒绝"</string>
-    <string name="shortcut_button_alwaysdeny">"始终拒绝使用该快捷方式"</string>
+    <!-- no translation found for settings_storage_title (7089119630457156408) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_on (2733295483569432111) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_off (1338039396087898813) -->
+    <skip />
+    <!-- no translation found for settings_location_title (4953062923509886651) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_on (1496219621849158879) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_off (5216466051810596189) -->
+    <skip />
+    <!-- no translation found for settings_remove_site (1822247070226589958) -->
+    <skip />
+    <!-- no translation found for settings_empty (2008952224378583146) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove_title (5360857296753219635) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove (3214500052347860516) -->
+    <skip />
+    <!-- no translation found for storage_notification (6534213782873968255) -->
+    <skip />
+    <!-- no translation found for storage_notification_alwaysdeny (5473208033665783513) -->
+    <skip />
+    <!-- no translation found for location_notification (3495804750470905804) -->
+    <skip />
+    <!-- no translation found for location_notification_alwaysdeny (6184925953783312629) -->
+    <skip />
+    <!-- no translation found for shortcut_notification (1659700220868444568) -->
+    <skip />
+    <!-- no translation found for permission_button_alwaysdeny (3837055994905214848) -->
+    <skip />
+    <!-- no translation found for permission_button_allow (7301874925704148242) -->
+    <skip />
+    <!-- no translation found for permission_button_deny (104712269725153018) -->
+    <skip />
+    <!-- no translation found for shortcut_button_alwaysdeny (4172277731325126605) -->
+    <skip />
     <string name="shortcut_button_allow">"确定"</string>
     <string name="shortcut_button_deny">"取消"</string>
     <string name="settings_button_allow">"应用"</string>
@@ -294,6 +329,5 @@
     <string name="denied">"已拒绝"</string>
     <string name="unrecognized_dialog_message">"未识别的对话类型"</string>
     <string name="default_button">"确定"</string>
-    <!-- no translation found for zoom_overview_button_text (4146579940085488881) -->
-    <skip />
+    <string name="zoom_overview_button_text">"概览"</string>
 </resources>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index 45a2321..7ae4355 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -15,18 +15,12 @@
 -->
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for application_name (1935869255545976415) -->
-    <skip />
-    <!-- no translation found for tab_bookmarks (2305793036003473653) -->
-    <skip />
-    <!-- no translation found for tab_most_visited (1077402532455000703) -->
-    <skip />
-    <!-- no translation found for tab_history (1979267558744613746) -->
-    <skip />
-    <!-- no translation found for added_to_bookmarks (1020224130695956728) -->
-    <skip />
-    <!-- no translation found for removed_from_bookmarks (6063705902028438800) -->
-    <skip />
+    <string name="application_name">"瀏覽器"</string>
+    <string name="tab_bookmarks">"書籤"</string>
+    <string name="tab_most_visited">"常用網頁"</string>
+    <string name="tab_history">"紀錄"</string>
+    <string name="added_to_bookmarks">"已加入書籤"</string>
+    <string name="removed_from_bookmarks">"已自書籤中移除"</string>
     <string name="sign_in_to">"登入到 <xliff:g id="HOSTNAME">%s1</xliff:g>「<xliff:g id="REALM">%s2</xliff:g>」"</string>
     <string name="username">"名字"</string>
     <string name="password">"密碼"</string>
@@ -81,16 +75,13 @@
     <string name="bookmark_url_not_valid">"網址無效。"</string>
     <string name="delete_bookmark">"刪除"</string>
     <string name="bookmark_page">"最後瀏覽的書籤頁面"</string>
-    <!-- no translation found for current_page (7510129573681663135) -->
-    <skip />
+    <string name="current_page">"來源"</string>
     <string name="delete_bookmark_warning">"<xliff:g id="BOOKMARK">%s</xliff:g>"</string>
     <string name="open_in_new_window">"在新視窗開啟"</string>
     <string name="new_window">"新視窗"</string>
-    <!-- no translation found for goto_dot (3895839050522602723) -->
-    <skip />
+    <string name="goto_dot">"前往"</string>
     <string name="find_dot">"在頁面中尋找"</string>
-    <!-- no translation found for select_dot (6299170761900561967) -->
-    <skip />
+    <string name="select_dot">"選取文字"</string>
     <string name="view_tabs">"視窗總覽"</string>
     <string name="view_tabs_condensed">"視窗"</string>
     <string name="tab_picker_title">"目前視窗"</string>
@@ -215,8 +206,7 @@
     <string name="clear_history">"清除紀錄"</string>
     <string name="browser_history">"最近瀏覽的頁面"</string>
     <string name="empty_history">"瀏覽記錄是空的。"</string>
-    <!-- no translation found for add_new_bookmark (8086367791400349049) -->
-    <skip />
+    <string name="add_new_bookmark">"加入書籤…"</string>
     <string name="no_database">"沒有資料!"</string>
     <string name="search_hint">"輸入網頁位址"</string>
     <string name="search_button_text">"前往"</string>
@@ -261,23 +251,68 @@
     <string name="download_length_required">"無法下載。物件大小無法估計。"</string>
     <string name="download_precondition_failed">"下載中斷。無法續傳。"</string>
     <string name="activity_instrumentation_test_runner">"Browser Test Runner"</string>
-    <!-- no translation found for search_google (1231765426260855357) -->
-    <skip />
+    <string name="search_google">"搜尋 Google"</string>
     <string name="permlab_readHistoryBookmarks">"讀取瀏覽器的瀏覽記錄和書籤"</string>
     <string name="permdesc_readHistoryBookmarks">"允許應用程式讀取瀏覽器造訪過的所有 URL 和瀏覽器所有的書籤。"</string>
     <string name="permlab_writeHistoryBookmarks">"寫入瀏覽器的瀏覽記錄和書籤"</string>
     <string name="permdesc_writeHistoryBookmarks">"允許應用程式修改儲存在電話上的瀏覽器記錄或書籤。惡意應用程式可能會使用此選項來清除或修改您瀏覽器的資料。"</string>
-    <string name="query_data_message">"下列網站想要使用 Gears 在您的電腦上儲存資訊。"</string>
-    <string name="location_message">"下列網站想要使用 Gears 來存取您的位置資訊。"</string>
-    <string name="shortcut_message">"此網站想要在您的電腦上建立捷徑。是否允許此動作?"</string>
+    <!-- no translation found for query_data_prompt (5474381240981604223) -->
+    <skip />
+    <!-- no translation found for query_data_message (8789381063185445197) -->
+    <skip />
+    <!-- no translation found for location_prompt (226262202057302423) -->
+    <skip />
+    <!-- no translation found for location_message (6790400729681341258) -->
+    <skip />
+    <!-- no translation found for shortcut_prompt (437193299088893596) -->
+    <skip />
+    <!-- no translation found for shortcut_message (4793042709293755892) -->
+    <skip />
     <string name="settings_message">"下表列出您為每個想要使用 Gears 之網站所授予的權限。"</string>
-    <string name="filepicker_message">"Gears File Picker"</string>
+    <!-- no translation found for filepicker_message (4929726371602896039) -->
+    <skip />
+    <!-- no translation found for image_message (5450245866521896891) -->
+    <skip />
     <string name="settings_title">"裝置設定"</string>
     <string name="privacy_policy">"讀取網站的隱私權政策,以瞭解網站將如何使用您的位置資訊。"</string>
-    <string name="permission_button_alwaysdeny">"永遠不允許此網站"</string>
-    <string name="permission_button_allow">"允許"</string>
-    <string name="permission_button_deny">"拒絕"</string>
-    <string name="shortcut_button_alwaysdeny">"永遠不允許此捷徑"</string>
+    <!-- no translation found for settings_storage_title (7089119630457156408) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_on (2733295483569432111) -->
+    <skip />
+    <!-- no translation found for settings_storage_subtitle_off (1338039396087898813) -->
+    <skip />
+    <!-- no translation found for settings_location_title (4953062923509886651) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_on (1496219621849158879) -->
+    <skip />
+    <!-- no translation found for settings_location_subtitle_off (5216466051810596189) -->
+    <skip />
+    <!-- no translation found for settings_remove_site (1822247070226589958) -->
+    <skip />
+    <!-- no translation found for settings_empty (2008952224378583146) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove_title (5360857296753219635) -->
+    <skip />
+    <!-- no translation found for settings_confirmation_remove (3214500052347860516) -->
+    <skip />
+    <!-- no translation found for storage_notification (6534213782873968255) -->
+    <skip />
+    <!-- no translation found for storage_notification_alwaysdeny (5473208033665783513) -->
+    <skip />
+    <!-- no translation found for location_notification (3495804750470905804) -->
+    <skip />
+    <!-- no translation found for location_notification_alwaysdeny (6184925953783312629) -->
+    <skip />
+    <!-- no translation found for shortcut_notification (1659700220868444568) -->
+    <skip />
+    <!-- no translation found for permission_button_alwaysdeny (3837055994905214848) -->
+    <skip />
+    <!-- no translation found for permission_button_allow (7301874925704148242) -->
+    <skip />
+    <!-- no translation found for permission_button_deny (104712269725153018) -->
+    <skip />
+    <!-- no translation found for shortcut_button_alwaysdeny (4172277731325126605) -->
+    <skip />
     <string name="shortcut_button_allow">"確定"</string>
     <string name="shortcut_button_deny">"取消"</string>
     <string name="settings_button_allow">"套用"</string>
@@ -294,6 +329,5 @@
     <string name="denied">"遭拒"</string>
     <string name="unrecognized_dialog_message">"無法辨識的對話類型"</string>
     <string name="default_button">"確定"</string>
-    <!-- no translation found for zoom_overview_button_text (4146579940085488881) -->
-    <skip />
+    <string name="zoom_overview_button_text">"總覽"</string>
 </resources>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 912ed44..78ce306 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -644,7 +644,7 @@
     <string name="query_data_prompt">Allow storage</string>
     <string name="query_data_message">This web site would like to store information on your phone.</string>
     <string name="location_prompt">Access your location</string>
-    <string name="location_message">This web site would like to have access to your location</string>
+    <string name="location_message">This web site would like to have access to your location.</string>
     <string name="shortcut_prompt">Create a shortcut</string>
     <string name="shortcut_message">This web site would like to create a shortcut to this page on your home screen.</string>
     <string name="settings_message">The table below shows the permissions you have granted to each site that has attempted to use Gears.</string>
@@ -665,12 +665,12 @@
     <string name="settings_empty">No permissions set</string>
 
     <string name="settings_confirmation_remove_title">Remove this site</string>
-    <string name="settings_confirmation_remove">All permissions will be canceled, and any data stored on your phone by the site will be deleted</string>
+    <string name="settings_confirmation_remove">All permissions will be cleared, and any data stored on your phone by the site will be deleted.</string>
 
-    <string name="storage_notification">This site will store information on this phone.\n Change this setting in:\n Settings->Gears Settings</string>
-    <string name="storage_notification_alwaysdeny">This site will never store information on this phone.\n Change this setting in:\n Settings->Gears Settings</string>
-    <string name="location_notification">This site will now access your location.\n Change this setting in:\n Settings->Gears Settings</string>
-    <string name="location_notification_alwaysdeny">This site will never access your location.\n Change this setting in:\n Settings->Gears Settings</string>
+    <string name="storage_notification">This site will store information on this phone.\n Change this setting in:\n Settings -> Gears Settings</string>
+    <string name="storage_notification_alwaysdeny">This site will never store information on this phone.\n Change this setting in:\n Settings -> Gears Settings</string>
+    <string name="location_notification">This site can access your current location.\n Change this setting in:\n Settings -> Gears Settings</string>
+    <string name="location_notification_alwaysdeny">This site will not access your current location.\n Change this setting in:\n Settings -> Gears Settings</string>
     <string name="shortcut_notification">Shortcut created</string>
 
     <string name="permission_button_alwaysdeny">Never Allow</string>
diff --git a/src/com/android/browser/BrowserActivity.java b/src/com/android/browser/BrowserActivity.java
index d8fd3fa..0ca4248 100644
--- a/src/com/android/browser/BrowserActivity.java
+++ b/src/com/android/browser/BrowserActivity.java
@@ -16,26 +16,28 @@
 
 package com.android.browser;
 
+import com.google.android.googleapps.IGoogleLoginService;
+import com.google.android.googlelogin.GoogleLoginServiceConstants;
+
 import android.app.Activity;
 import android.app.ActivityManager;
 import android.app.AlertDialog;
-import android.app.SearchManager;
 import android.app.ProgressDialog;
+import android.app.SearchManager;
 import android.content.ActivityNotFoundException;
-import android.content.res.AssetManager;
 import android.content.BroadcastReceiver;
 import android.content.ComponentName;
 import android.content.ContentResolver;
 import android.content.ContentValues;
 import android.content.Context;
-import android.content.DialogInterface.OnCancelListener;
 import android.content.DialogInterface;
 import android.content.Intent;
 import android.content.IntentFilter;
 import android.content.ServiceConnection;
-import android.content.pm.ActivityInfo;
+import android.content.DialogInterface.OnCancelListener;
 import android.content.pm.PackageManager;
 import android.content.pm.ResolveInfo;
+import android.content.res.AssetManager;
 import android.content.res.Configuration;
 import android.content.res.Resources;
 import android.database.Cursor;
@@ -75,10 +77,10 @@
 import android.os.SystemProperties;
 import android.preference.PreferenceManager;
 import android.provider.Browser;
-import android.provider.Contacts.Intents.Insert;
 import android.provider.Contacts;
 import android.provider.Downloads;
 import android.provider.MediaStore;
+import android.provider.Contacts.Intents.Insert;
 import android.text.IClipboard;
 import android.text.TextUtils;
 import android.text.format.DateFormat;
@@ -86,8 +88,6 @@
 import android.util.Config;
 import android.util.Log;
 import android.view.ContextMenu;
-import android.view.ContextMenu.ContextMenuInfo;
-import android.view.MenuItem.OnMenuItemClickListener;
 import android.view.Gravity;
 import android.view.KeyEvent;
 import android.view.LayoutInflater;
@@ -98,6 +98,8 @@
 import android.view.ViewGroup;
 import android.view.Window;
 import android.view.WindowManager;
+import android.view.ContextMenu.ContextMenuInfo;
+import android.view.MenuItem.OnMenuItemClickListener;
 import android.view.animation.AlphaAnimation;
 import android.view.animation.Animation;
 import android.view.animation.AnimationSet;
@@ -120,17 +122,13 @@
 import android.widget.LinearLayout;
 import android.widget.TextView;
 import android.widget.Toast;
-import android.widget.ZoomRingController;
-
-import com.google.android.googleapps.IGoogleLoginService;
-import com.google.android.googlelogin.GoogleLoginServiceConstants;
 
 import java.io.BufferedOutputStream;
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.FileOutputStream;
-import java.io.InputStream;
 import java.io.IOException;
+import java.io.InputStream;
 import java.net.MalformedURLException;
 import java.net.URI;
 import java.net.URL;
@@ -141,9 +139,9 @@
 import java.util.HashMap;
 import java.util.List;
 import java.util.Locale;
+import java.util.Vector;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
-import java.util.Vector;
 import java.util.zip.ZipEntry;
 import java.util.zip.ZipFile;
 
@@ -205,7 +203,7 @@
                     if (googleUser == null || !hostedUser.equals(googleUser)) {
                         String domain = hostedUser.substring(hostedUser.lastIndexOf('@')+1);
                         homepage = "http://www.google.com/m/a/" + domain + "?client=ms-" +
-                            SystemProperties.get("ro.com.google.clientid", "unknown");
+                            SystemProperties.get("persist.sys.com.google.clientid", "unknown");
                     }
                 } catch (RemoteException ignore) {
                     // Login service died; carry on
@@ -745,9 +743,6 @@
                     }
                 }
             };
-            
-        // Show a tutorial for the new zoom interaction (the method ensure we only show it once)
-        ZoomRingController.showZoomTutorialOnce(this);
     }
 
     @Override
@@ -1589,10 +1584,8 @@
                 PackageManager pm = getPackageManager();
                 Intent send = new Intent(Intent.ACTION_SEND);
                 send.setType("text/plain");
-                List<ResolveInfo> list = pm.queryIntentActivities(send,
-                        PackageManager.MATCH_DEFAULT_ONLY);
-                menu.findItem(R.id.share_page_menu_id).setVisible(
-                        list.size() > 0);
+                ResolveInfo ri = pm.resolveActivity(send, PackageManager.MATCH_DEFAULT_ONLY);
+                menu.findItem(R.id.share_page_menu_id).setVisible(ri != null);
 
                 // If there is only 1 window, the text will be "New window"
                 final MenuItem windows = menu.findItem(R.id.windows_menu_id);
@@ -1699,10 +1692,8 @@
                 PackageManager pm = getPackageManager();
                 Intent send = new Intent(Intent.ACTION_SEND);
                 send.setType("text/plain");
-                List<ResolveInfo> list = pm.queryIntentActivities(send,
-                        PackageManager.MATCH_DEFAULT_ONLY);
-                menu.findItem(R.id.share_link_context_menu_id).setVisible(
-                        list.size() > 0);
+                ResolveInfo ri = pm.resolveActivity(send, PackageManager.MATCH_DEFAULT_ONLY);
+                menu.findItem(R.id.share_link_context_menu_id).setVisible(ri != null);
                 if (type == WebView.HitTestResult.SRC_ANCHOR_TYPE) {
                     break;
                 }
@@ -3337,8 +3328,8 @@
             //     that matches.
             Intent intent = new Intent(Intent.ACTION_VIEW);
             intent.setDataAndType(Uri.parse(url), mimetype);
-            if (getPackageManager().queryIntentActivities(intent,
-                        PackageManager.MATCH_DEFAULT_ONLY).size() != 0) {
+            if (getPackageManager().resolveActivity(intent,
+                        PackageManager.MATCH_DEFAULT_ONLY) != null) {
                 // someone knows how to handle this mime type with this scheme, don't download.
                 try {
                     startActivity(intent);
@@ -4392,7 +4383,7 @@
                     R.string.google_search_base, l.getLanguage(),
                     l.getCountry().toLowerCase())
                     + "client=ms-"
-                    + SystemProperties.get("ro.com.google.clientid", "unknown")
+                    + SystemProperties.get("persist.sys.com.google.clientid", "unknown")
                     + "&source=android-" + GOOGLE_SEARCH_SOURCE_SUGGEST + "&q=%s";
         } else {
             QuickSearch_G = url;
diff --git a/src/com/android/browser/BrowserHistoryPage.java b/src/com/android/browser/BrowserHistoryPage.java
index f7e97c0..c529fe8 100644
--- a/src/com/android/browser/BrowserHistoryPage.java
+++ b/src/com/android/browser/BrowserHistoryPage.java
@@ -183,10 +183,8 @@
         PackageManager pm = getPackageManager();
         Intent send = new Intent(Intent.ACTION_SEND);
         send.setType("text/plain");
-        List<ResolveInfo> list = pm.queryIntentActivities(send,
-                PackageManager.MATCH_DEFAULT_ONLY);
-        menu.findItem(R.id.share_link_context_menu_id).setVisible(
-                list.size() > 0);
+        ResolveInfo ri = pm.resolveActivity(send, PackageManager.MATCH_DEFAULT_ONLY);
+        menu.findItem(R.id.share_link_context_menu_id).setVisible(ri != null);
         
         super.onCreateContextMenu(menu, v, menuInfo);
     }
diff --git a/src/com/android/browser/BrowserSettings.java b/src/com/android/browser/BrowserSettings.java
index 06ccf01..35b4096 100644
--- a/src/com/android/browser/BrowserSettings.java
+++ b/src/com/android/browser/BrowserSettings.java
@@ -53,7 +53,7 @@
     // Public variables for settings
     // NOTE: these defaults need to be kept in sync with the XML
     // until the performance of PreferenceManager.setDefaultValues()
-    // is improved. 
+    // is improved.
     private boolean loadsImagesAutomatically = true;
     private boolean javaScriptEnabled = true;
     private boolean pluginsEnabled = true;
@@ -64,12 +64,12 @@
     private boolean saveFormData = true;
     private boolean openInBackground = false;
     private String defaultTextEncodingName;
-    private String homeUrl = "http://www.google.com/m?client=ms-" + 
-        SystemProperties.get("ro.com.google.clientid", "unknown");
+    private String homeUrl = "http://www.google.com/m?client=ms-" +
+        SystemProperties.get("persist.sys.com.google.clientid", "unknown");
     private boolean loginInitialized = false;
     private boolean autoFitPage = true;
     private boolean showDebugSettings = false;
-    
+
     // Development settings
     public WebSettings.LayoutAlgorithm layoutAlgorithm =
         WebSettings.LayoutAlgorithm.NARROW_COLUMNS;
@@ -78,7 +78,7 @@
     private boolean tracing = false;
     private boolean lightTouch = false;
     private boolean navDump = false;
-    // Browser only settings 
+    // Browser only settings
     private boolean doFlick = false;
 
     // Private preconfigured values
@@ -88,17 +88,17 @@
     private static int defaultFixedFontSize = 13;
     private static WebSettings.TextSize textSize =
         WebSettings.TextSize.NORMAL;
-    
+
     // Preference keys that are used outside this class
     public final static String PREF_CLEAR_CACHE = "privacy_clear_cache";
     public final static String PREF_CLEAR_COOKIES = "privacy_clear_cookies";
     public final static String PREF_CLEAR_HISTORY = "privacy_clear_history";
     public final static String PREF_HOMEPAGE = "homepage";
-    public final static String PREF_CLEAR_FORM_DATA = 
+    public final static String PREF_CLEAR_FORM_DATA =
             "privacy_clear_form_data";
-    public final static String PREF_CLEAR_PASSWORDS = 
+    public final static String PREF_CLEAR_PASSWORDS =
             "privacy_clear_passwords";
-    public final static String PREF_EXTRAS_RESET_DEFAULTS = 
+    public final static String PREF_EXTRAS_RESET_DEFAULTS =
             "reset_default_preferences";
     public final static String PREF_DEBUG_SETTINGS = "debug_menu";
     public final static String PREF_GEARS_SETTINGS = "gears_settings";
@@ -119,7 +119,7 @@
     public final static int MAX_TEXTVIEW_LEN = 80;
 
     private TabControl mTabControl;
-    
+
     // Single instance of the BrowserSettings for use in the Browser app.
     private static BrowserSettings sSingleton;
 
@@ -127,7 +127,7 @@
     // observer.
     private HashMap<WebSettings,Observer> mWebSettingsToObservers =
         new HashMap<WebSettings,Observer>();
- 
+
     /*
      * An observer wrapper for updating a WebSettings object with the new
      * settings after a call to BrowserSettings.update().
@@ -179,7 +179,7 @@
             s.setAllowFileAccess(false);
         }
     }
-   
+
     /**
      * Load settings from the browser app's database.
      * NOTE: Strings used for the preferences must match those specified
@@ -190,7 +190,7 @@
      *            observers of this object.
      */
     public void loadFromDb(Context ctx) {
-        SharedPreferences p = 
+        SharedPreferences p =
                 PreferenceManager.getDefaultSharedPreferences(ctx);
 
         // Set the default value for the plugins path to the application's
@@ -203,27 +203,27 @@
         //PreferenceManager.setDefaultValues(ctx, R.xml.browser_preferences);
         syncSharedPreferences(p);
     }
-    
+
     /* package */ void syncSharedPreferences(SharedPreferences p) {
-        homeUrl = 
+        homeUrl =
             p.getString(PREF_HOMEPAGE, homeUrl);
-        loadsImagesAutomatically = p.getBoolean("load_images", 
+        loadsImagesAutomatically = p.getBoolean("load_images",
                 loadsImagesAutomatically);
-        javaScriptEnabled = p.getBoolean("enable_javascript", 
+        javaScriptEnabled = p.getBoolean("enable_javascript",
                 javaScriptEnabled);
-        pluginsEnabled = p.getBoolean("enable_plugins", 
+        pluginsEnabled = p.getBoolean("enable_plugins",
                 pluginsEnabled);
         pluginsPath = p.getString("plugins_path", pluginsPath);
         javaScriptCanOpenWindowsAutomatically = !p.getBoolean(
-            "block_popup_windows", 
+            "block_popup_windows",
             !javaScriptCanOpenWindowsAutomatically);
-        showSecurityWarnings = p.getBoolean("show_security_warnings", 
+        showSecurityWarnings = p.getBoolean("show_security_warnings",
                 showSecurityWarnings);
-        rememberPasswords = p.getBoolean("remember_passwords", 
+        rememberPasswords = p.getBoolean("remember_passwords",
                 rememberPasswords);
-        saveFormData = p.getBoolean("save_formdata", 
+        saveFormData = p.getBoolean("save_formdata",
                 saveFormData);
-        boolean accept_cookies = p.getBoolean("accept_cookies", 
+        boolean accept_cookies = p.getBoolean("accept_cookies",
                 CookieManager.getInstance().acceptCookie());
         CookieManager.getInstance().setAcceptCookie(accept_cookies);
         openInBackground = p.getBoolean("open_in_background", openInBackground);
@@ -240,23 +240,23 @@
         defaultTextEncodingName =
                 p.getString(PREF_DEFAULT_TEXT_ENCODING,
                         defaultTextEncodingName);
-        
-        showDebugSettings = 
+
+        showDebugSettings =
                 p.getBoolean(PREF_DEBUG_SETTINGS, showDebugSettings);
         // Debug menu items have precidence if the menu is visible
         if (showDebugSettings) {
-            boolean small_screen = p.getBoolean("small_screen", 
-                    layoutAlgorithm == 
+            boolean small_screen = p.getBoolean("small_screen",
+                    layoutAlgorithm ==
                     WebSettings.LayoutAlgorithm.SINGLE_COLUMN);
             if (small_screen) {
                 layoutAlgorithm = WebSettings.LayoutAlgorithm.SINGLE_COLUMN;
             } else {
-                boolean normal_layout = p.getBoolean("normal_layout", 
+                boolean normal_layout = p.getBoolean("normal_layout",
                         layoutAlgorithm == WebSettings.LayoutAlgorithm.NORMAL);
                 if (normal_layout) {
                     layoutAlgorithm = WebSettings.LayoutAlgorithm.NORMAL;
                 } else {
-                    layoutAlgorithm = 
+                    layoutAlgorithm =
                             WebSettings.LayoutAlgorithm.NARROW_COLUMNS;
                 }
             }
@@ -271,7 +271,7 @@
         }
         update();
     }
-    
+
     public String getPluginsPath() {
         return pluginsPath;
     }
@@ -279,23 +279,23 @@
     public String getHomePage() {
         return homeUrl;
     }
-    
+
     public void setHomePage(Context context, String url) {
         Editor ed = PreferenceManager.
-                getDefaultSharedPreferences(context).edit();      
+                getDefaultSharedPreferences(context).edit();
         ed.putString(PREF_HOMEPAGE, url);
         ed.commit();
         homeUrl = url;
     }
-    
+
     public boolean isLoginInitialized() {
         return loginInitialized;
     }
-    
+
     public void setLoginInitialized(Context context) {
         loginInitialized = true;
         Editor ed = PreferenceManager.
-                getDefaultSharedPreferences(context).edit();      
+                getDefaultSharedPreferences(context).edit();
         ed.putBoolean("login_initialized", loginInitialized);
         ed.commit();
     }
@@ -327,11 +327,11 @@
     public boolean doFlick() {
         return doFlick;
     }
-    
+
     public boolean showDebugSettings() {
         return showDebugSettings;
     }
-    
+
     public void toggleDebugSettings() {
         showDebugSettings = !showDebugSettings;
         navDump = showDebugSettings;
@@ -341,7 +341,7 @@
     /**
      * Add a WebSettings object to the list of observers that will be updated
      * when update() is called.
-     * 
+     *
      * @param s A WebSettings object that is strictly tied to the life of a
      *            WebView.
      */
@@ -423,12 +423,12 @@
         db.clearUsernamePassword();
         db.clearHttpAuthUsernamePassword();
     }
-    
+
     /*package*/ void resetDefaultPreferences(Context context) {
-        SharedPreferences p = 
+        SharedPreferences p =
             PreferenceManager.getDefaultSharedPreferences(context);
         p.edit().clear().commit();
-        PreferenceManager.setDefaultValues(context, R.xml.browser_preferences, 
+        PreferenceManager.setDefaultValues(context, R.xml.browser_preferences,
                 true);
     }
 
diff --git a/src/com/android/browser/GearsBaseDialog.java b/src/com/android/browser/GearsBaseDialog.java
index 3379537..638ba27 100644
--- a/src/com/android/browser/GearsBaseDialog.java
+++ b/src/com/android/browser/GearsBaseDialog.java
@@ -68,6 +68,7 @@
   public static final int UPDATE_ICON = 5;
   public static final int REQUEST_ICON = 6;
   public static final int PAUSE_REQUEST_ICON = 7;
+  public static final int CLEAR_REQUEST_ICON = 8;
 
   protected final String LOCAL_DATA_STRING = "localData";
   protected final String LOCAL_STORAGE_STRING = "localStorage";
@@ -256,7 +257,12 @@
     if (rsc == 0) {
       return;
     }
-    View view = v.findViewById(rsc);
+    View view;
+    if (v == null) {
+      view = findViewById(rsc);
+    } else {
+      view = v.findViewById(rsc);
+    }
     if (view != null) {
       view.setVisibility(View.GONE);
     }
@@ -269,7 +275,12 @@
     if (rsc == 0) {
       return;
     }
-    View view = v.findViewById(rsc);
+    View view;
+    if (v == null) {
+      view = findViewById(rsc);
+    } else {
+      view = v.findViewById(rsc);
+    }
     if (view != null) {
       view.setVisibility(View.VISIBLE);
     }
diff --git a/src/com/android/browser/GearsFilePickerDialog.java b/src/com/android/browser/GearsFilePickerDialog.java
index 0bb28d4..10cc03f 100644
--- a/src/com/android/browser/GearsFilePickerDialog.java
+++ b/src/com/android/browser/GearsFilePickerDialog.java
@@ -18,6 +18,7 @@
 
 import android.app.Activity;
 import android.content.Context;
+import android.database.Cursor;
 import android.graphics.Bitmap;
 import android.graphics.BitmapFactory;
 import android.graphics.Color;
@@ -27,6 +28,7 @@
 import android.os.Looper;
 import android.os.Message;
 import android.provider.MediaStore;
+import android.provider.MediaStore.Images.Media;
 import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.MotionEvent;
@@ -41,6 +43,7 @@
 import java.io.File;
 import java.io.FileOutputStream;
 import java.io.IOException;
+import java.io.RandomAccessFile;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
@@ -66,6 +69,7 @@
   private static String SINGLE_FILE = "SINGLE_FILE";
 
   private static ImagesLoad mImagesLoader;
+  private static SystemThumbnails mSystemThumbnails;
   private FilePickerAdapter mAdapter;
   private String mSelectionMode;
   private boolean mMultipleSelection;
@@ -117,12 +121,19 @@
     view.setAdapter(mAdapter);
     view.setOnTouchListener(this);
 
+    showView(null, R.id.selection);
     setSelectionText();
 
     mImagesLoader = new ImagesLoad(mAdapter);
     mImagesLoader.setAdapterView(view);
-    Thread thread = new Thread(mImagesLoader);
-    thread.start();
+    Thread imagesLoaderThread = new Thread(mImagesLoader);
+    imagesLoaderThread.setPriority(Thread.MIN_PRIORITY);
+    imagesLoaderThread.start();
+
+    mSystemThumbnails = new SystemThumbnails();
+    Thread systemThumbnailsThread = new Thread(mSystemThumbnails);
+    systemThumbnailsThread.setPriority(Thread.MIN_PRIORITY);
+    systemThumbnailsThread.start();
   }
 
   public void setSelectionText() {
@@ -164,19 +175,89 @@
   }
 
   /**
+   * Utility class encapsulating thumbnails information
+   * for a file (file image id and magic number)
+   */
+  class SystemThumbnailInfo {
+    private long mID;
+    private long mMagicNumber;
+    SystemThumbnailInfo(long anID, long magicNumber) {
+      mID = anID;
+      mMagicNumber = magicNumber;
+    }
+    public long getID() {
+      return mID;
+    }
+    public long getMagicNumber() {
+      return mMagicNumber;
+    }
+  }
+
+  /**
+   * Utility class to pre-fetch the thumbnails information
+   */
+  class SystemThumbnails implements Runnable {
+    private Map<String, SystemThumbnailInfo> mThumbnails;
+
+    SystemThumbnails() {
+      mThumbnails = Collections.synchronizedMap(new HashMap());
+    }
+
+    public void run() {
+      Uri query = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
+      Cursor cursor = mActivity.managedQuery(query,
+          new String[] { "_id", "mini_thumb_magic", "_data" },
+          null, null, null);
+
+      if (cursor != null) {
+        int count = cursor.getCount();
+        for (int i = 0; i < count; i++) {
+          cursor.moveToPosition(i);
+          SystemThumbnailInfo info = new SystemThumbnailInfo(cursor.getLong(0),
+                                                             cursor.getLong(1));
+          mThumbnails.put(cursor.getString(2), info);
+        }
+      }
+    }
+
+    public SystemThumbnailInfo getThumb(String path) {
+      SystemThumbnailInfo ret = mThumbnails.get(path);
+      if (ret == null) {
+        Uri query = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
+        Cursor cursor = mActivity.managedQuery(query,
+          new String[] { "_id", "mini_thumb_magic", "_data" },
+              "_data = ?", new String[] { path }, null);
+        if (cursor != null && cursor.moveToFirst()) {
+          long longid = cursor.getLong(0);
+          long miniThumbMagic = cursor.getLong(1);
+          ret = new SystemThumbnailInfo(longid, miniThumbMagic);
+          mThumbnails.put(path, ret);
+        }
+      }
+      return ret;
+    }
+  }
+
+  /**
    * Utility class to load and generate thumbnails
    * for image files
    */
   class ImagesLoad implements Runnable {
-    private Map mImagesMap;
     private Vector mImagesPath;
     private BaseAdapter mAdapter;
     private AdapterView mAdapterView;
     private Vector<FilePickerElement> mElements;
     private Handler mLoaderHandler;
+    // We use the same value as in Camera.app's ImageManager.java
+    private static final int BYTES_PER_MINI_THUMB = 10000;
+    private final byte[] mMiniThumbData = new byte[BYTES_PER_MINI_THUMB];
+    private final int MINI_THUMB_DATA_FILE_VERSION = 3;
+    private final int THUMBNAIL_SIZE = 128;
+    private Map<Uri, RandomAccessFile> mThumbFiles;
 
     ImagesLoad(BaseAdapter adapter) {
       mAdapter = adapter;
+      mThumbFiles = Collections.synchronizedMap(new HashMap());
     }
 
     public void signalChanges() {
@@ -185,57 +266,130 @@
       mHandler.sendMessage(message);
     }
 
-    /**
-     * TODO: use the same thumbnails as the photo app
-     * (bug: http://b/issue?id=1497927)
-     */
-    public String getThumbnailPath(String path) {
-      File f = new File(path);
-      String myPath = f.getParent() + "/.thumbnails";
-      File d = new File(myPath);
-      if (!d.exists()) {
-        d.mkdirs();
+    private String getMiniThumbFileFromUri(Uri uri) {
+      if (uri == null) {
+        return null;
       }
-      return myPath + "/" + f.getName();
+      String directoryName =
+          Environment.getExternalStorageDirectory().toString() +
+          "/dcim/.thumbnails";
+      String path = directoryName + "/.thumbdata" +
+          MINI_THUMB_DATA_FILE_VERSION + "-" + uri.hashCode();
+      return path;
     }
 
-    public boolean saveImage(String path, Bitmap image) {
-      boolean ret = false;
+    private Bitmap getMiniThumbFor(Uri uri, long longid, long magic) {
+      RandomAccessFile thumbFile = mThumbFiles.get(uri);
       try {
-        FileOutputStream outStream = new FileOutputStream(path);
-        ret = image.compress(Bitmap.CompressFormat.JPEG, 100, outStream);
-      } catch (IOException e) {
-        Log.e(TAG, "IOException ", e);
+        if (thumbFile == null) {
+          String path = getMiniThumbFileFromUri(uri);
+          File f = new File(path);
+          if (f.exists()) {
+            thumbFile = new RandomAccessFile(f, "rw");
+            mThumbFiles.put(uri, thumbFile);
+          }
+        }
+      } catch (IOException ex) {
       }
-      return ret;
+      if (thumbFile == null) {
+        return null;
+      }
+      byte[] data = getMiniThumbFromFile(thumbFile, longid,
+                                         mMiniThumbData, magic);
+      if (data != null) {
+        return BitmapFactory.decodeByteArray(data, 0, data.length);
+      }
+      return null;
     }
 
+    private byte [] getMiniThumbFromFile(RandomAccessFile r,
+                                         long id,
+                                         byte [] data,
+                                         long magicCheck) {
+      if (r == null)
+        return null;
+      long pos = id * BYTES_PER_MINI_THUMB;
+      RandomAccessFile f = r;
+      synchronized (f) {
+        try {
+          f.seek(pos);
+          if (f.readByte() == 1) {
+            long magic = f.readLong();
+            if (magic != magicCheck) {
+              return null;
+            }
+            int length = f.readInt();
+            f.read(data, 0, length);
+            return data;
+          } else {
+            return null;
+          }
+        } catch (IOException ex) {
+          long fileLength;
+          try {
+            fileLength = f.length();
+          } catch (IOException ex1) {
+            fileLength = -1;
+          }
+          return null;
+        }
+      }
+    }
+
+    /*
+     * Returns a thumbnail saved by the Camera application
+     * We pre-cached the information (image id and magic number)
+     * when starting the filepicker.
+     */
+    public Bitmap getSystemThumbnail(FilePickerElement elem) {
+      if (elem.askedForSystemThumbnail() == false) {
+        elem.setAskedForSystemThumbnail(true);
+        String path = elem.getPath();
+        SystemThumbnailInfo thumbInfo = mSystemThumbnails.getThumb(path);
+        if (thumbInfo != null) {
+          Uri query = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
+          Bitmap bmp = getMiniThumbFor(query, thumbInfo.getID(),
+                                       thumbInfo.getMagicNumber());
+          if (bmp != null) {
+            return bmp;
+          }
+        }
+      }
+      return null;
+    }
+
+    /*
+     * Generate a thumbnail for a given element
+     */
     public Bitmap generateImage(FilePickerElement elem) {
       String path = elem.getPath();
       Bitmap finalImage = null;
       try {
-        String thumbnailPath = getThumbnailPath(path);
-        if (enableSavedThumbnails) {
-          File thumbnail = new File(thumbnailPath);
-          if (thumbnail.exists()) {
-            finalImage = BitmapFactory.decodeFile(thumbnailPath);
-            if (finalImage != null) {
-              return finalImage;
-            }
-          }
+
+        // First we try to get the thumbnail from the system
+        // (created by the Camera application)
+
+        finalImage = getSystemThumbnail(elem);
+        if (finalImage != null) {
+          return finalImage;
         }
+
+        // No thumbnail was found, so we have to create one
+        //
+        // First we get the image information and
+        // determine the sampleSize
+
         BitmapFactory.Options options = new BitmapFactory.Options();
         options.inJustDecodeBounds = true;
         BitmapFactory.decodeFile(path, options);
 
         int width = options.outWidth;
         int height = options.outHeight;
-        int size = 128;
         int sampleSize = 1;
-        if (width > size || height > size) {
+        if (width > THUMBNAIL_SIZE || height > THUMBNAIL_SIZE) {
           sampleSize = 2;
-          while ((width / sampleSize > size)
-                 || (height / sampleSize > size)) {
+          while ((width / sampleSize > 2*THUMBNAIL_SIZE)
+                 || (height / sampleSize > 2*THUMBNAIL_SIZE)) {
             sampleSize += 2;
           }
         }
@@ -245,16 +399,37 @@
         if (originalImage == null) {
           return null;
         }
-        finalImage = Bitmap.createScaledBitmap(originalImage, size, size, true);
-        if (enableSavedThumbnails) {
-          if (saveImage(thumbnailPath, finalImage)) {
-            if (mDebug) {
-              Log.v(TAG, "Saved thumbnail for file " + path);
-            }
-          } else {
-            Log.e(TAG, "Could NOT Save thumbnail for file " + path);
-          }
+
+        // Let's rescale the image to a THUMBNAIL_SIZE
+
+        width = originalImage.getWidth();
+        height = originalImage.getHeight();
+
+        if (width > height) {
+          width = (int) (width * (THUMBNAIL_SIZE / (double) height));
+          height = THUMBNAIL_SIZE;
+        } else {
+          height = (int) (height * (THUMBNAIL_SIZE / (double) width));
+          width = THUMBNAIL_SIZE;
         }
+        originalImage = Bitmap.createScaledBitmap(originalImage,
+                                                  width, height, true);
+
+        // We can now crop the image to a THUMBNAIL_SIZE rectangle
+
+        width = originalImage.getWidth();
+        height = originalImage.getHeight();
+        int d = 0;
+        if (width > height) {
+          d = (width - height) / 2;
+          finalImage = Bitmap.createBitmap(originalImage, d, 0,
+                                           THUMBNAIL_SIZE, THUMBNAIL_SIZE);
+        } else {
+          d = (height - width) / 2;
+          finalImage = Bitmap.createBitmap(originalImage, 0, d,
+                                           THUMBNAIL_SIZE, THUMBNAIL_SIZE);
+        }
+
         originalImage.recycle();
       } catch (java.lang.OutOfMemoryError e) {
         Log.e(TAG, "Intercepted OOM ", e);
@@ -267,24 +442,41 @@
                                        GearsBaseDialog.PAUSE_REQUEST_ICON);
       mLoaderHandler.sendMessageAtFrontOfQueue(message);
     }
-    public void postIconRequest(FilePickerElement item, int position) {
+
+    public void clearIconRequests() {
+      Message message = Message.obtain(mLoaderHandler,
+                                       GearsBaseDialog.CLEAR_REQUEST_ICON);
+      mLoaderHandler.sendMessageAtFrontOfQueue(message);
+    }
+
+    public void postIconRequest(FilePickerElement item,
+                                int position,
+                                boolean front) {
       if (item == null) {
         return;
       }
-      Message message = mLoaderHandler.obtainMessage(
-          GearsBaseDialog.REQUEST_ICON, position, 0, item);
-      mLoaderHandler.sendMessage(message);
+      if (item.isImage() && (item.getThumbnail() == null))  {
+        Message message = mLoaderHandler.obtainMessage(
+            GearsBaseDialog.REQUEST_ICON, position, 0, item);
+        if (front) {
+          mLoaderHandler.sendMessageAtFrontOfQueue(message);
+        } else {
+          mLoaderHandler.sendMessage(message);
+        }
+      }
     }
 
-    public void generateIcon(FilePickerElement elem) {
+    public boolean generateIcon(FilePickerElement elem) {
       if (elem.isImage()) {
         if (elem.getThumbnail() == null) {
           Bitmap image = generateImage(elem);
           if (image != null) {
             elem.setThumbnail(image);
+            return true;
           }
         }
       }
+      return false;
     }
 
     public void setAdapterView(AdapterView view) {
@@ -295,8 +487,12 @@
       Looper.prepare();
       mLoaderHandler = new Handler() {
         public void handleMessage(Message msg) {
-          int visibleElements = 10;
-          if (msg.what == GearsBaseDialog.PAUSE_REQUEST_ICON) {
+          if (msg.what == GearsBaseDialog.CLEAR_REQUEST_ICON) {
+            mLoaderHandler.removeMessages(
+                GearsBaseDialog.PAUSE_REQUEST_ICON);
+            mLoaderHandler.removeMessages(
+                GearsBaseDialog.REQUEST_ICON);
+          } else if (msg.what == GearsBaseDialog.PAUSE_REQUEST_ICON) {
             try {
               // We are busy (likely) scrolling the view,
               // so we just pause the loading.
@@ -307,24 +503,15 @@
               Log.e(TAG, "InterruptedException ", e);
             }
           } else if (msg.what == GearsBaseDialog.REQUEST_ICON) {
+            FilePickerElement elem = (FilePickerElement) msg.obj;
+            if (generateIcon(elem)) {
+              signalChanges();
+            }
             try {
-              Thread.sleep(10);
+              Thread.sleep(50);
             } catch (InterruptedException e) {
               Log.e(TAG, "InterruptedException ", e);
             }
-            FilePickerElement elem = (FilePickerElement) msg.obj;
-            int firstVisiblePosition = mAdapterView.getFirstVisiblePosition();
-            // If the elements are not visible, we slow down the update
-            // TODO: replace this by a low-priority thread
-            if ((msg.arg1 < firstVisiblePosition - visibleElements)
-                && msg.arg1 > firstVisiblePosition + visibleElements) {
-              try {
-                Thread.sleep(100);
-              } catch (InterruptedException e) {
-              }
-            }
-            generateIcon(elem);
-            signalChanges();
           }
         }
       };
@@ -348,6 +535,7 @@
     private String mExtension;
     private Bitmap mThumbnail;
     private boolean mIsImage;
+    private boolean mAskedForSystemThumbnail;
 
     public FilePickerElement(String name, BaseAdapter adapter) {
       this(name, adapter, null);
@@ -365,6 +553,7 @@
       mParent = parent;
       mIsSelected = false;
       mChildren = null;
+      mAskedForSystemThumbnail = false;
     }
 
     public FilePickerElement(String path,
@@ -378,10 +567,19 @@
       mParent = parent;
       mAdapter = adapter;
       mExtension = null;
+      mAskedForSystemThumbnail = false;
 
       setIcons();
     }
 
+    public void setAskedForSystemThumbnail(boolean value) {
+      mAskedForSystemThumbnail = value;
+    }
+
+    public boolean askedForSystemThumbnail() {
+      return mAskedForSystemThumbnail;
+    }
+
     public void setIcons() {
       if (mPath.isDirectory()) {
         if (mDirectoryIcon == null) {
@@ -486,10 +684,7 @@
     public void refresh() {
       mChildren = null;
       Vector children = getChildren();
-      for (int i = 0; i < children.size(); i++) {
-        FilePickerElement elem = (FilePickerElement) children.get(i);
-        mImagesLoader.postIconRequest(elem, i);
-      }
+      mImagesLoader.clearIconRequests();
     }
 
     public Vector getChildren() {
@@ -519,11 +714,19 @@
     public FilePickerElement getChild(int position) {
       Vector children = getChildren();
       if (children != null) {
-        return (FilePickerElement) children.get(position);
+        FilePickerElement elem = (FilePickerElement) children.get(position);
+        return elem;
       }
       return null;
     }
 
+    /*
+     * Depending on the type, we return either
+     * the icon (mIcon) or the back icon (mBackIcon).
+     * If we can load a system thumbnail we do this
+     * synchronously and return it, else we ask the
+     * mImagesLoader to generate a thumbnail for us.
+     */
     public Bitmap getIcon(int position) {
       if (mIsParent) {
         return mBackIcon;
@@ -532,7 +735,12 @@
         if (mThumbnail != null) {
           return mThumbnail;
         } else {
-          mImagesLoader.postIconRequest(this, position);
+          Bitmap image = mImagesLoader.getSystemThumbnail(this);
+          if (image != null) {
+            mThumbnail = image;
+            return mThumbnail;
+          }
+          mImagesLoader.postIconRequest(this, position, true);
         }
       }
       return mIcon;
@@ -586,9 +794,6 @@
       mImagesMap = Collections.synchronizedMap(new HashMap());
       mImagesSelected = new HashMap();
 
-      Uri requests[] = { MediaStore.Images.Media.INTERNAL_CONTENT_URI,
-                         MediaStore.Images.Media.EXTERNAL_CONTENT_URI };
-
       String startingPath = Environment.getExternalStorageDirectory().getPath();
       mRootElement = new FilePickerElement(startingPath, "SD Card", this);
       mCurrentElement = mRootElement;