diff --git a/res/layout-port/search_bar.xml b/res/layout-port/search_bar.xml
index 5c20ec0..09c6e09 100644
--- a/res/layout-port/search_bar.xml
+++ b/res/layout-port/search_bar.xml
@@ -24,6 +24,7 @@
    <!-- Global search icon -->
    <com.android.launcher2.HolographicLinearLayout
         style="@style/SearchButton"
+        launcher:sourceImageViewId="@+id/search_button"
         android:id="@+id/search_button_container"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
@@ -45,6 +46,7 @@
     <!-- Voice search icon -->
     <com.android.launcher2.HolographicLinearLayout
         style="@style/SearchButton.Voice"
+        launcher:sourceImageViewId="@+id/voice_button"
         android:id="@+id/voice_button_container"
         android:layout_width="@dimen/search_bar_height"
         android:layout_height="match_parent"
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index 905c84c..5b429b7 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -84,14 +84,10 @@
     <string name="uninstall_system_app_text" msgid="6429814133777046491">"Това е системно приложение и не може да се деинсталира."</string>
     <string name="dream_name" msgid="2847171357608437154">"Ракетна площадка"</string>
     <string name="folder_hint_text" msgid="8633351560105748141">"Папка без име"</string>
-    <!-- no translation found for default_scroll_format (4057140866420001240) -->
-    <skip />
-    <!-- no translation found for workspace_scroll_format (7911126267695001437) -->
-    <skip />
-    <!-- no translation found for apps_customize_apps_scroll_format (5494241912377704885) -->
-    <skip />
-    <!-- no translation found for apps_customize_widgets_scroll_format (5383009742241717437) -->
-    <skip />
+    <string name="default_scroll_format" msgid="4057140866420001240">"Страница %1$d от %2$d"</string>
+    <string name="workspace_scroll_format" msgid="7911126267695001437">"Работно пространство %1$d от %2$d"</string>
+    <string name="apps_customize_apps_scroll_format" msgid="5494241912377704885">"Страница с приложения %1$d от %2$d"</string>
+    <string name="apps_customize_widgets_scroll_format" msgid="5383009742241717437">"Страница с приспособления %1$d от %2$d"</string>
     <string name="workspace_cling_title" msgid="738396473989890567">"Настанете се като у дома си"</string>
     <string name="workspace_cling_move_item" msgid="791013895761065070">"Тук можете да поставите любимите си приложения."</string>
     <string name="workspace_cling_open_all_apps" msgid="2459977609848572588">"За да видите всичките си приложения, докоснете кръга."</string>
@@ -101,16 +97,10 @@
     <string name="folder_cling_move_item" msgid="270598675060435169">"За да преместите приложение, го докоснете и задръжте."</string>
     <string name="folder_cling_create_folder" msgid="8352867485656129478">"За да създадете нова папка на началния си екран, поставете едно приложение върху друго."</string>
     <string name="cling_dismiss" msgid="2780907108735868381">"OK"</string>
-    <!-- no translation found for folder_opened (4129072635480822768) -->
-    <skip />
-    <!-- no translation found for folder_tap_to_close (4076794242530255812) -->
-    <skip />
-    <!-- no translation found for folder_tap_to_rename (2125528923948315223) -->
-    <skip />
-    <!-- no translation found for folder_closed (3130534551370511932) -->
-    <skip />
-    <!-- no translation found for folder_renamed (781234745487414781) -->
-    <skip />
-    <!-- no translation found for folder_name_format (4513766553514769310) -->
-    <skip />
+    <string name="folder_opened" msgid="4129072635480822768">"Папката е отворена %1$d на %2$d"</string>
+    <string name="folder_tap_to_close" msgid="4076794242530255812">"Докоснете, за да затворите папката"</string>
+    <string name="folder_tap_to_rename" msgid="2125528923948315223">"Докоснете, за да преименувате"</string>
+    <string name="folder_closed" msgid="3130534551370511932">"Папката бе затворена"</string>
+    <string name="folder_renamed" msgid="781234745487414781">"Папката е преименувана на „%1$s“"</string>
+    <string name="folder_name_format" msgid="4513766553514769310">"Папка: %1$s"</string>
 </resources>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index 84e1644..1b48b8b 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -84,14 +84,10 @@
     <string name="uninstall_system_app_text" msgid="6429814133777046491">"Dette er en systemapp, som ikke kan afinstalleres."</string>
     <string name="dream_name" msgid="2847171357608437154">"Rocket Launcher"</string>
     <string name="folder_hint_text" msgid="8633351560105748141">"Unavngiven mappe"</string>
-    <!-- no translation found for default_scroll_format (4057140866420001240) -->
-    <skip />
-    <!-- no translation found for workspace_scroll_format (7911126267695001437) -->
-    <skip />
-    <!-- no translation found for apps_customize_apps_scroll_format (5494241912377704885) -->
-    <skip />
-    <!-- no translation found for apps_customize_widgets_scroll_format (5383009742241717437) -->
-    <skip />
+    <string name="default_scroll_format" msgid="4057140866420001240">"Side %1$d ud af %2$d"</string>
+    <string name="workspace_scroll_format" msgid="7911126267695001437">"Arbejdsplads %1$d ud af %2$d"</string>
+    <string name="apps_customize_apps_scroll_format" msgid="5494241912377704885">"Apps-side %1$d ud af %2$d"</string>
+    <string name="apps_customize_widgets_scroll_format" msgid="5383009742241717437">"Widgets-side %1$d ud af %2$d"</string>
     <string name="workspace_cling_title" msgid="738396473989890567">"Føl dig hjemme"</string>
     <string name="workspace_cling_move_item" msgid="791013895761065070">"Du kan sætte dine yndlingsapps her."</string>
     <string name="workspace_cling_open_all_apps" msgid="2459977609848572588">"Tryk på cirklen for at få vist alle dine apps."</string>
@@ -101,16 +97,10 @@
     <string name="folder_cling_move_item" msgid="270598675060435169">"Tryk på en app, og hold den nede for at flytte den."</string>
     <string name="folder_cling_create_folder" msgid="8352867485656129478">"Du kan oprette en ny mappe på din startskærm ved at stable apps oven på hinanden."</string>
     <string name="cling_dismiss" msgid="2780907108735868381">"OK"</string>
-    <!-- no translation found for folder_opened (4129072635480822768) -->
-    <skip />
-    <!-- no translation found for folder_tap_to_close (4076794242530255812) -->
-    <skip />
-    <!-- no translation found for folder_tap_to_rename (2125528923948315223) -->
-    <skip />
-    <!-- no translation found for folder_closed (3130534551370511932) -->
-    <skip />
-    <!-- no translation found for folder_renamed (781234745487414781) -->
-    <skip />
-    <!-- no translation found for folder_name_format (4513766553514769310) -->
-    <skip />
+    <string name="folder_opened" msgid="4129072635480822768">"Mappen blev åbnet, %1$d af %2$d"</string>
+    <string name="folder_tap_to_close" msgid="4076794242530255812">"Tryk for at lukke mappen"</string>
+    <string name="folder_tap_to_rename" msgid="2125528923948315223">"Tryk for at omdøbe"</string>
+    <string name="folder_closed" msgid="3130534551370511932">"Mappen er lukket"</string>
+    <string name="folder_renamed" msgid="781234745487414781">"Mappen blev omdøbt til %1$s"</string>
+    <string name="folder_name_format" msgid="4513766553514769310">"Mappe: %1$s"</string>
 </resources>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index 092f6de..a125524 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -86,8 +86,8 @@
     <string name="folder_hint_text" msgid="8633351560105748141">"Unbenannter Ordner"</string>
     <string name="default_scroll_format" msgid="4057140866420001240">"Seite %1$d von %2$d"</string>
     <string name="workspace_scroll_format" msgid="7911126267695001437">"Arbeitsbereich %1$d von %2$d"</string>
-    <string name="apps_customize_apps_scroll_format" msgid="5494241912377704885">"Apps-Seite %1$d von %2$d"</string>
-    <string name="apps_customize_widgets_scroll_format" msgid="5383009742241717437">"Widgets-Seite %1$d von %2$d"</string>
+    <string name="apps_customize_apps_scroll_format" msgid="5494241912377704885">"App-Seite %1$d von %2$d"</string>
+    <string name="apps_customize_widgets_scroll_format" msgid="5383009742241717437">"Widget-Seite %1$d von %2$d"</string>
     <string name="workspace_cling_title" msgid="738396473989890567">"Fühlen Sie sich wie zu Hause"</string>
     <string name="workspace_cling_move_item" msgid="791013895761065070">"Hier können Sie Ihre Lieblings-Apps ablegen."</string>
     <string name="workspace_cling_open_all_apps" msgid="2459977609848572588">"Berühren Sie den Kreis für eine Übersicht aller Apps."</string>
@@ -99,7 +99,7 @@
     <string name="cling_dismiss" msgid="2780907108735868381">"OK"</string>
     <string name="folder_opened" msgid="4129072635480822768">"Ordner geöffnet, %1$d von %2$d"</string>
     <string name="folder_tap_to_close" msgid="4076794242530255812">"Ordner durch Berühren schließen"</string>
-    <string name="folder_tap_to_rename" msgid="2125528923948315223">"Umbenennen durch Berühren bestätigen"</string>
+    <string name="folder_tap_to_rename" msgid="2125528923948315223">"Umbenennung durch Berühren bestätigen"</string>
     <string name="folder_closed" msgid="3130534551370511932">"Ordner wurde geschlossen"</string>
     <string name="folder_renamed" msgid="781234745487414781">"Ordner umbenannt in %1$s"</string>
     <string name="folder_name_format" msgid="4513766553514769310">"Ordner: %1$s"</string>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index 8de7350..72dd217 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -97,7 +97,7 @@
     <string name="folder_cling_move_item" msgid="270598675060435169">"Para mover una aplicación, tócala &amp; mantenla presionada."</string>
     <string name="folder_cling_create_folder" msgid="8352867485656129478">"Para crear una carpeta nueva en tu pantalla principal, coloca una aplicación encima de la otra."</string>
     <string name="cling_dismiss" msgid="2780907108735868381">"Aceptar"</string>
-    <string name="folder_opened" msgid="4129072635480822768">"Se abrió la carpeta, %1$d de %2$d."</string>
+    <string name="folder_opened" msgid="4129072635480822768">"Se abrió la carpeta, %1$d por %2$d."</string>
     <string name="folder_tap_to_close" msgid="4076794242530255812">"Toca para cerrar la carpeta."</string>
     <string name="folder_tap_to_rename" msgid="2125528923948315223">"Toca para cambiar el nombre de la carpeta."</string>
     <string name="folder_closed" msgid="3130534551370511932">"Se cerró la carpeta."</string>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index d7ec0c9..6d4b63e 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -85,9 +85,9 @@
     <string name="dream_name" msgid="2847171357608437154">"Aknavető"</string>
     <string name="folder_hint_text" msgid="8633351560105748141">"Névtelen mappa"</string>
     <string name="default_scroll_format" msgid="4057140866420001240">"%2$d/%1$d. oldal"</string>
-    <string name="workspace_scroll_format" msgid="7911126267695001437">"%2$d/%1$d. munkahelyi oldal"</string>
-    <string name="apps_customize_apps_scroll_format" msgid="5494241912377704885">"%2$d/%1$d. alkalmazások oldal"</string>
-    <string name="apps_customize_widgets_scroll_format" msgid="5383009742241717437">"%2$d/%1$d. modulok oldal"</string>
+    <string name="workspace_scroll_format" msgid="7911126267695001437">"%2$d/%1$d. munkaterület"</string>
+    <string name="apps_customize_apps_scroll_format" msgid="5494241912377704885">"%2$d/%1$d. alkalmazásoldal"</string>
+    <string name="apps_customize_widgets_scroll_format" msgid="5383009742241717437">"%2$d/%1$d. moduloldal"</string>
     <string name="workspace_cling_title" msgid="738396473989890567">"Érezze magát otthon"</string>
     <string name="workspace_cling_move_item" msgid="791013895761065070">"Ide rakhatja kedvenc alkalmazásait."</string>
     <string name="workspace_cling_open_all_apps" msgid="2459977609848572588">"Az összes saját alkalmazás megtekintéséhez érintse meg a kört."</string>
@@ -97,7 +97,7 @@
     <string name="folder_cling_move_item" msgid="270598675060435169">"Ha egy alkalmazást át szeretne helyezni, érintse meg, és tartsa lenyomva."</string>
     <string name="folder_cling_create_folder" msgid="8352867485656129478">"Ha egy új mappát szeretne létrehozni a kezdőképernyőn, helyezzen egymásra két alkalmazást."</string>
     <string name="cling_dismiss" msgid="2780907108735868381">"OK"</string>
-    <string name="folder_opened" msgid="4129072635480822768">"Mappa megnyitva, %1$d tőle: %2$d"</string>
+    <string name="folder_opened" msgid="4129072635480822768">"Megnyitott mappa: %1$d x %2$d"</string>
     <string name="folder_tap_to_close" msgid="4076794242530255812">"Érintse meg a mappa bezárásához"</string>
     <string name="folder_tap_to_rename" msgid="2125528923948315223">"Átnevezéshez érintse meg"</string>
     <string name="folder_closed" msgid="3130534551370511932">"Mappa lezárva"</string>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index 84ff82e..a7214d8 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -97,7 +97,7 @@
     <string name="folder_cling_move_item" msgid="270598675060435169">"Untuk memindahkan apl, sentuh &amp; tahan apl tersebut."</string>
     <string name="folder_cling_create_folder" msgid="8352867485656129478">"Untuk membuat map baru di layar Utama Anda, tumpuk satu apl di atas apl yang lain."</string>
     <string name="cling_dismiss" msgid="2780907108735868381">"OK"</string>
-    <string name="folder_opened" msgid="4129072635480822768">"Map dibuka, %1$d dari %2$d"</string>
+    <string name="folder_opened" msgid="4129072635480822768">"Map dibuka, %1$d kali %2$d"</string>
     <string name="folder_tap_to_close" msgid="4076794242530255812">"Ketuk untuk menutup map"</string>
     <string name="folder_tap_to_rename" msgid="2125528923948315223">"Ketuk untuk mengubah nama"</string>
     <string name="folder_closed" msgid="3130534551370511932">"Map ditutup"</string>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index e629a24..2b12981 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -84,14 +84,10 @@
     <string name="uninstall_system_app_text" msgid="6429814133777046491">"Tai sistemos programa ir jos negalima pašalinti."</string>
     <string name="dream_name" msgid="2847171357608437154">"Raketinis prieštankinis šautuvas"</string>
     <string name="folder_hint_text" msgid="8633351560105748141">"Aplankas be pavadinimo"</string>
-    <!-- no translation found for default_scroll_format (4057140866420001240) -->
-    <skip />
-    <!-- no translation found for workspace_scroll_format (7911126267695001437) -->
-    <skip />
-    <!-- no translation found for apps_customize_apps_scroll_format (5494241912377704885) -->
-    <skip />
-    <!-- no translation found for apps_customize_widgets_scroll_format (5383009742241717437) -->
-    <skip />
+    <string name="default_scroll_format" msgid="4057140866420001240">"%1$d psl. iš %2$d"</string>
+    <string name="workspace_scroll_format" msgid="7911126267695001437">"Darbo sritis: %1$d iš %2$d"</string>
+    <string name="apps_customize_apps_scroll_format" msgid="5494241912377704885">"Programų puslapis: %1$d iš %2$d"</string>
+    <string name="apps_customize_widgets_scroll_format" msgid="5383009742241717437">"Valdiklių puslapis: %1$d iš %2$d"</string>
     <string name="workspace_cling_title" msgid="738396473989890567">"Jauskitės kaip namie"</string>
     <string name="workspace_cling_move_item" msgid="791013895761065070">"Čia galite dėti mėgstamiausias savo programas."</string>
     <string name="workspace_cling_open_all_apps" msgid="2459977609848572588">"Jei norite matyti visas programas, palieskite apskritimą."</string>
@@ -101,16 +97,10 @@
     <string name="folder_cling_move_item" msgid="270598675060435169">"Jei norite perkelti programą, palieskite ją ir laikykite."</string>
     <string name="folder_cling_create_folder" msgid="8352867485656129478">"Jei pagrindiniame ekrane norite sukurti naują aplanką, uždėkite vieną programą ant kitos."</string>
     <string name="cling_dismiss" msgid="2780907108735868381">"Gerai"</string>
-    <!-- no translation found for folder_opened (4129072635480822768) -->
-    <skip />
-    <!-- no translation found for folder_tap_to_close (4076794242530255812) -->
-    <skip />
-    <!-- no translation found for folder_tap_to_rename (2125528923948315223) -->
-    <skip />
-    <!-- no translation found for folder_closed (3130534551370511932) -->
-    <skip />
-    <!-- no translation found for folder_renamed (781234745487414781) -->
-    <skip />
-    <!-- no translation found for folder_name_format (4513766553514769310) -->
-    <skip />
+    <string name="folder_opened" msgid="4129072635480822768">"Aplankas atidarytas, %1$d ir %2$d"</string>
+    <string name="folder_tap_to_close" msgid="4076794242530255812">"Palieskite, kad uždarytumėte aplanką"</string>
+    <string name="folder_tap_to_rename" msgid="2125528923948315223">"Palieskite, kad pervardytumėte"</string>
+    <string name="folder_closed" msgid="3130534551370511932">"Aplankas uždarytas"</string>
+    <string name="folder_renamed" msgid="781234745487414781">"Aplankas pervardytas į %1$s"</string>
+    <string name="folder_name_format" msgid="4513766553514769310">"Aplankas: %1$s"</string>
 </resources>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index c8a28d1..4b6065c 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -22,7 +22,7 @@
     <string name="application_name" msgid="8424725141379931883">"Utskytingsrampe"</string>
     <string name="uid_name" msgid="3371120195364560632">"Android-kjerneapplikasjoner"</string>
     <string name="folder_name" msgid="8551881338202938211"></string>
-    <string name="chooser_wallpaper" msgid="6063168087625352235">"Valg av bakgrunnsbilde fra"</string>
+    <string name="chooser_wallpaper" msgid="6063168087625352235">"Velg bakgrunnsbilde fra"</string>
     <string name="wallpaper_instructions" msgid="4215640646180727542">"Velg bakgrunnsbilde"</string>
     <string name="pick_wallpaper" msgid="5630222540525626723">"Bakgrunner"</string>
     <string name="activity_not_found" msgid="217823393239365967">"Appen er ikke installert."</string>
@@ -46,7 +46,7 @@
     <string name="shortcut_uninstalled" msgid="2129499669449749995">"Fjernet snarveien «<xliff:g id="NAME">%s</xliff:g>»."</string>
     <string name="shortcut_duplicate" msgid="4757756326465060694">"Snarveien «<xliff:g id="NAME">%s</xliff:g>» fins allerede."</string>
     <string name="title_select_shortcut" msgid="2858897527672831763">"Velg snarvei"</string>
-    <string name="title_select_application" msgid="1793455815754848652">"Valg av app"</string>
+    <string name="title_select_application" msgid="1793455815754848652">"Velg app"</string>
     <string name="all_apps_button_label" msgid="2578400570124163469">"Apper"</string>
     <string name="all_apps_home_button_label" msgid="1022222300329398558">"Startsiden"</string>
     <string name="delete_zone_label_workspace" msgid="7153615831493049150">"Fjern"</string>
@@ -66,8 +66,8 @@
     <string name="menu_notifications" msgid="6424587053194766192">"Varslinger"</string>
     <string name="menu_settings" msgid="3946232973327980394">"Systeminnstillinger"</string>
     <string name="menu_help" msgid="4901160661634590633">"Hjelp"</string>
-    <string name="cab_menu_delete_app" msgid="4089398025537640349">"Avinstaller app"</string>
-    <string name="cab_menu_app_info" msgid="914548323652698884">"Informasjon om app"</string>
+    <string name="cab_menu_delete_app" msgid="4089398025537640349">"Avinstaller appen"</string>
+    <string name="cab_menu_app_info" msgid="914548323652698884">"Informasjon om appen"</string>
     <string name="cab_app_selection_text" msgid="6378522164293415735">"Én app er valgt"</string>
     <string name="cab_widget_selection_text" msgid="962527270506951955">"1 modul valgt"</string>
     <string name="cab_folder_selection_text" msgid="8916111874189565067">"1 mappe valgt"</string>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index dd798b9..32b79dd 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -84,10 +84,10 @@
     <string name="uninstall_system_app_text" msgid="6429814133777046491">"Ово је системска апликација и не може да се деинсталира."</string>
     <string name="dream_name" msgid="2847171357608437154">"Rocket Launcher"</string>
     <string name="folder_hint_text" msgid="8633351560105748141">"Неименовани директоријум"</string>
-    <string name="default_scroll_format" msgid="4057140866420001240">"Страница %1$d од %2$d"</string>
+    <string name="default_scroll_format" msgid="4057140866420001240">"Страница %1$d. од %2$d"</string>
     <string name="workspace_scroll_format" msgid="7911126267695001437">"Радни простор %1$d од %2$d"</string>
-    <string name="apps_customize_apps_scroll_format" msgid="5494241912377704885">"Страница апликације %1$d од %2$d"</string>
-    <string name="apps_customize_widgets_scroll_format" msgid="5383009742241717437">"Страница видџета %1$d од %2$d"</string>
+    <string name="apps_customize_apps_scroll_format" msgid="5494241912377704885">"Страница апликације %1$d. од %2$d"</string>
+    <string name="apps_customize_widgets_scroll_format" msgid="5383009742241717437">"Страница видџета %1$d. од %2$d"</string>
     <string name="workspace_cling_title" msgid="738396473989890567">"Осећајте се као код куће"</string>
     <string name="workspace_cling_move_item" msgid="791013895761065070">"Овде можете да ставите омиљене апликације."</string>
     <string name="workspace_cling_open_all_apps" msgid="2459977609848572588">"Да бисте видели све апликације, додирните круг."</string>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 3ea47fc..5058d2e 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -84,14 +84,10 @@
     <string name="uninstall_system_app_text" msgid="6429814133777046491">"这是系统应用程序，无法卸载。"</string>
     <string name="dream_name" msgid="2847171357608437154">"Rocket Launcher"</string>
     <string name="folder_hint_text" msgid="8633351560105748141">"未命名文件夹"</string>
-    <!-- no translation found for default_scroll_format (4057140866420001240) -->
-    <skip />
-    <!-- no translation found for workspace_scroll_format (7911126267695001437) -->
-    <skip />
-    <!-- no translation found for apps_customize_apps_scroll_format (5494241912377704885) -->
-    <skip />
-    <!-- no translation found for apps_customize_widgets_scroll_format (5383009742241717437) -->
-    <skip />
+    <string name="default_scroll_format" msgid="4057140866420001240">"第 %1$d 页，共 %2$d 页"</string>
+    <string name="workspace_scroll_format" msgid="7911126267695001437">"工作区：第 %1$d 页，共 %2$d 页"</string>
+    <string name="apps_customize_apps_scroll_format" msgid="5494241912377704885">"应用程序：第 %1$d 页，共 %2$d 页"</string>
+    <string name="apps_customize_widgets_scroll_format" msgid="5383009742241717437">"窗口小部件：第 %1$d 页，共 %2$d 页"</string>
     <string name="workspace_cling_title" msgid="738396473989890567">"随意浏览"</string>
     <string name="workspace_cling_move_item" msgid="791013895761065070">"您可以在此处放置自己喜爱的应用程序。"</string>
     <string name="workspace_cling_open_all_apps" msgid="2459977609848572588">"要查看您的所有应用程序，请触摸该圆圈。"</string>
@@ -101,16 +97,10 @@
     <string name="folder_cling_move_item" msgid="270598675060435169">"要移动应用程序，请触摸并按住该应用程序。"</string>
     <string name="folder_cling_create_folder" msgid="8352867485656129478">"要在主屏幕上创建新文件夹，请将一个应用程序叠放到另一个上。"</string>
     <string name="cling_dismiss" msgid="2780907108735868381">"确定"</string>
-    <!-- no translation found for folder_opened (4129072635480822768) -->
-    <skip />
-    <!-- no translation found for folder_tap_to_close (4076794242530255812) -->
-    <skip />
-    <!-- no translation found for folder_tap_to_rename (2125528923948315223) -->
-    <skip />
-    <!-- no translation found for folder_closed (3130534551370511932) -->
-    <skip />
-    <!-- no translation found for folder_renamed (781234745487414781) -->
-    <skip />
-    <!-- no translation found for folder_name_format (4513766553514769310) -->
-    <skip />
+    <string name="folder_opened" msgid="4129072635480822768">"文件夹已打开，尺寸为 %1$d x %2$d"</string>
+    <string name="folder_tap_to_close" msgid="4076794242530255812">"点按可关闭文件夹"</string>
+    <string name="folder_tap_to_rename" msgid="2125528923948315223">"点按即可重命名"</string>
+    <string name="folder_closed" msgid="3130534551370511932">"文件夹已关闭"</string>
+    <string name="folder_renamed" msgid="781234745487414781">"已将文件夹重命名为“%1$s”"</string>
+    <string name="folder_name_format" msgid="4513766553514769310">"文件夹：%1$s"</string>
 </resources>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index 4d28eb1..baaf1e2 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -84,14 +84,10 @@
     <string name="uninstall_system_app_text" msgid="6429814133777046491">"這是系統應用程式，不可解除安裝。"</string>
     <string name="dream_name" msgid="2847171357608437154">"Rocket Launcher"</string>
     <string name="folder_hint_text" msgid="8633351560105748141">"未命名的資料夾"</string>
-    <!-- no translation found for default_scroll_format (4057140866420001240) -->
-    <skip />
-    <!-- no translation found for workspace_scroll_format (7911126267695001437) -->
-    <skip />
-    <!-- no translation found for apps_customize_apps_scroll_format (5494241912377704885) -->
-    <skip />
-    <!-- no translation found for apps_customize_widgets_scroll_format (5383009742241717437) -->
-    <skip />
+    <string name="default_scroll_format" msgid="4057140866420001240">"第 %1$d 頁，共 %2$d 頁"</string>
+    <string name="workspace_scroll_format" msgid="7911126267695001437">"第 %1$d 個工作區，共 %2$d 個"</string>
+    <string name="apps_customize_apps_scroll_format" msgid="5494241912377704885">"應用程式：第 %1$d 頁，共 %2$d 頁"</string>
+    <string name="apps_customize_widgets_scroll_format" msgid="5383009742241717437">"小工具：第 %1$d 頁，共 %2$d 頁"</string>
     <string name="workspace_cling_title" msgid="738396473989890567">"當作自己家"</string>
     <string name="workspace_cling_move_item" msgid="791013895761065070">"您可以將最愛的應用程式放在這裡。"</string>
     <string name="workspace_cling_open_all_apps" msgid="2459977609848572588">"如要查看您所有的應用程式，請輕觸圓圈。"</string>
@@ -101,16 +97,10 @@
     <string name="folder_cling_move_item" msgid="270598675060435169">"如要移動應用程式，請輕觸並按住目標。"</string>
     <string name="folder_cling_create_folder" msgid="8352867485656129478">"如要在主螢幕建立新資料夾，請將應用程式一個個堆疊起來。"</string>
     <string name="cling_dismiss" msgid="2780907108735868381">"確定"</string>
-    <!-- no translation found for folder_opened (4129072635480822768) -->
-    <skip />
-    <!-- no translation found for folder_tap_to_close (4076794242530255812) -->
-    <skip />
-    <!-- no translation found for folder_tap_to_rename (2125528923948315223) -->
-    <skip />
-    <!-- no translation found for folder_closed (3130534551370511932) -->
-    <skip />
-    <!-- no translation found for folder_renamed (781234745487414781) -->
-    <skip />
-    <!-- no translation found for folder_name_format (4513766553514769310) -->
-    <skip />
+    <string name="folder_opened" msgid="4129072635480822768">"已開啟資料夾，%1$d x %2$d"</string>
+    <string name="folder_tap_to_close" msgid="4076794242530255812">"輕按即可關閉資料夾"</string>
+    <string name="folder_tap_to_rename" msgid="2125528923948315223">"輕按即可重新命名"</string>
+    <string name="folder_closed" msgid="3130534551370511932">"已關閉資料夾"</string>
+    <string name="folder_renamed" msgid="781234745487414781">"已將資料夾重新命名為「%1$s」"</string>
+    <string name="folder_name_format" msgid="4513766553514769310">"資料夾：%1$s"</string>
 </resources>
diff --git a/res/values/attrs.xml b/res/values/attrs.xml
index 800aeaa..5fe1abd 100644
--- a/res/values/attrs.xml
+++ b/res/values/attrs.xml
@@ -80,6 +80,12 @@
         <attr name="strokeWidth" format="float" />
     </declare-styleable>
 
+    <!-- HolographicLinearLayout specific attributes. -->
+    <declare-styleable name="HolographicLinearLayout">
+        <!-- The source view to generate and apply the drawable states to/from -->
+        <attr name="sourceImageViewId" format="integer" />
+    </declare-styleable>
+
     <!-- PagedViewIcon specific attributes. These attributes are used to customize
          a PagedViewIcon view in XML files. -->
     <declare-styleable name="PagedViewIcon">
diff --git a/src/com/android/launcher2/Cling.java b/src/com/android/launcher2/Cling.java
index 9f27586..32b1de4 100644
--- a/src/com/android/launcher2/Cling.java
+++ b/src/com/android/launcher2/Cling.java
@@ -28,7 +28,6 @@
 import android.graphics.drawable.Drawable;
 import android.util.AttributeSet;
 import android.util.DisplayMetrics;
-import android.view.View;
 import android.widget.FrameLayout;
 
 import com.android.launcher.R;
@@ -54,8 +53,6 @@
     private Drawable mHandTouchGraphic;
     private int mPunchThroughGraphicCenterRadius;
     private int mAppIconSize;
-    private int mTabBarHeight;
-    private int mTabBarHorizontalPadding;
     private int mButtonBarHeight;
     private float mRevealRadius;
     private int[] mPositionData;
@@ -89,9 +86,6 @@
                 r.getDimensionPixelSize(R.dimen.clingPunchThroughGraphicCenterRadius);
             mAppIconSize = r.getDimensionPixelSize(R.dimen.app_icon_size);
             mRevealRadius = mAppIconSize * 1f;
-            mTabBarHeight = r.getDimensionPixelSize(R.dimen.apps_customize_tab_bar_height);
-            mTabBarHorizontalPadding =
-                r.getDimensionPixelSize(R.dimen.toolbar_button_horizontal_padding);
             mButtonBarHeight = r.getDimensionPixelSize(R.dimen.button_bar_height);
 
             mErasePaint = new Paint();
diff --git a/src/com/android/launcher2/HolographicLinearLayout.java b/src/com/android/launcher2/HolographicLinearLayout.java
index 986a063..c6a8d6a 100644
--- a/src/com/android/launcher2/HolographicLinearLayout.java
+++ b/src/com/android/launcher2/HolographicLinearLayout.java
@@ -17,13 +17,21 @@
 package com.android.launcher2;
 
 import android.content.Context;
+import android.content.res.TypedArray;
 import android.graphics.Canvas;
+import android.graphics.drawable.Drawable;
+import android.graphics.drawable.StateListDrawable;
 import android.util.AttributeSet;
+import android.widget.ImageView;
 import android.widget.LinearLayout;
 
+import com.android.launcher.R;
+
 public class HolographicLinearLayout extends LinearLayout {
 
     private final HolographicViewHelper mHolographicHelper;
+    private ImageView mImageView;
+    private int mImageViewId;
 
     public HolographicLinearLayout(Context context) {
         this(context, null);
@@ -36,16 +44,37 @@
     public HolographicLinearLayout(Context context, AttributeSet attrs, int defStyle) {
         super(context, attrs, defStyle);
 
+        TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.HolographicLinearLayout,
+                defStyle, 0);
+        mImageViewId = a.getResourceId(R.styleable.HolographicLinearLayout_sourceImageViewId, -1);
+        a.recycle();
+
         setWillNotDraw(false);
         mHolographicHelper = new HolographicViewHelper(context);
     }
 
     @Override
+    protected void drawableStateChanged() {
+        super.drawableStateChanged();
+
+        if (mImageView != null) {
+            Drawable d = mImageView.getDrawable();
+            if (d instanceof StateListDrawable) {
+                StateListDrawable sld = (StateListDrawable) d;
+                sld.setState(getDrawableState());
+            }
+        }
+    }
+
+    @Override
     protected void onDraw(Canvas canvas) {
         super.onDraw(canvas);
 
         // One time call to generate the pressed/focused state -- must be called after
         // measure/layout
-        mHolographicHelper.generatePressedFocusedStates(this);
+        if (mImageView == null) {
+            mImageView = (ImageView) findViewById(mImageViewId);
+        }
+        mHolographicHelper.generatePressedFocusedStates(mImageView);
     }
 }
diff --git a/src/com/android/launcher2/HolographicViewHelper.java b/src/com/android/launcher2/HolographicViewHelper.java
index c68a5ea..11e81b4 100644
--- a/src/com/android/launcher2/HolographicViewHelper.java
+++ b/src/com/android/launcher2/HolographicViewHelper.java
@@ -20,12 +20,12 @@
 import android.content.res.Resources;
 import android.graphics.Bitmap;
 import android.graphics.Canvas;
+import android.graphics.PorterDuff;
 import android.graphics.drawable.StateListDrawable;
-import android.view.View;
+import android.widget.ImageView;
 
 public class HolographicViewHelper {
 
-    private final HolographicOutlineHelper mOutlineHelper = new HolographicOutlineHelper();
     private final Canvas mTempCanvas = new Canvas();
 
     private boolean mStatesUpdated;
@@ -39,16 +39,17 @@
     /**
      * Generate the pressed/focused states if necessary.
      */
-    void generatePressedFocusedStates(View v) {
-        if (!mStatesUpdated) {
+    void generatePressedFocusedStates(ImageView v) {
+        if (!mStatesUpdated && v != null) {
             mStatesUpdated = true;
-            Bitmap outline = createGlowingOutline(v, mTempCanvas, mHighlightColor, mHighlightColor);
+            Bitmap outline = createGlowingOutline(v, mTempCanvas);
             FastBitmapDrawable d = new FastBitmapDrawable(outline);
 
             StateListDrawable states = new StateListDrawable();
             states.addState(new int[] {android.R.attr.state_pressed}, d);
             states.addState(new int[] {android.R.attr.state_focused}, d);
-            v.setBackgroundDrawable(states);
+            states.addState(new int[] {}, v.getDrawable());
+            v.setImageDrawable(states);
         }
     }
 
@@ -56,16 +57,16 @@
      * Returns a new bitmap to be used as the object outline, e.g. to visualize the drop location.
      * Responsibility for the bitmap is transferred to the caller.
      */
-    private Bitmap createGlowingOutline(View v, Canvas canvas, int outlineColor, int glowColor) {
+    private Bitmap createGlowingOutline(ImageView v, Canvas canvas) {
         final int padding = HolographicOutlineHelper.MAX_OUTER_BLUR_RADIUS;
         final Bitmap b = Bitmap.createBitmap(
                 v.getWidth() + padding, v.getHeight() + padding, Bitmap.Config.ARGB_8888);
 
         canvas.setBitmap(b);
         canvas.save();
-            v.draw(canvas);
+            v.getDrawable().draw(canvas);
         canvas.restore();
-        mOutlineHelper.applyOuterBlur(b, canvas, outlineColor);
+        canvas.drawColor(mHighlightColor, PorterDuff.Mode.SRC_IN);
         canvas.setBitmap(null);
 
         return b;
diff --git a/src/com/android/launcher2/LauncherModel.java b/src/com/android/launcher2/LauncherModel.java
index c06bc0c..1755903 100644
--- a/src/com/android/launcher2/LauncherModel.java
+++ b/src/com/android/launcher2/LauncherModel.java
@@ -28,7 +28,9 @@
 import android.content.Intent;
 import android.content.Intent.ShortcutIconResource;
 import android.content.pm.ActivityInfo;
+import android.content.pm.PackageInfo;
 import android.content.pm.PackageManager;
+import android.content.pm.PackageManager.NameNotFoundException;
 import android.content.pm.ResolveInfo;
 import android.content.res.Configuration;
 import android.content.res.Resources;
@@ -1629,6 +1631,17 @@
             return null;
         }
 
+        try {
+            PackageInfo pi = manager.getPackageInfo(componentName.getPackageName(), 0);
+            if (!pi.applicationInfo.enabled) {
+                // If we return null here, the corresponding item will be removed from the launcher
+                // db and will not appear in the workspace.
+                return null;
+            }
+        } catch (NameNotFoundException e) {
+            Log.d(TAG, "getPackInfo failed for package " + componentName.getPackageName());
+        }
+
         // TODO: See if the PackageManager knows about this case.  If it doesn't
         // then return null & delete this.
 
diff --git a/src/com/android/launcher2/Utilities.java b/src/com/android/launcher2/Utilities.java
index e5169a2..d7562a9 100644
--- a/src/com/android/launcher2/Utilities.java
+++ b/src/com/android/launcher2/Utilities.java
@@ -43,8 +43,6 @@
 final class Utilities {
     private static final String TAG = "Launcher.Utilities";
 
-    private static final boolean TEXT_BURN = false;
-
     private static int sIconWidth = -1;
     private static int sIconHeight = -1;
     private static int sIconTextureWidth = -1;
