merge in ics-release history after reset to master
diff --git a/res/layout-land/hotseat.xml b/res/layout-land/hotseat.xml
index f82d541..dca30bf 100644
--- a/res/layout-land/hotseat.xml
+++ b/res/layout-land/hotseat.xml
@@ -18,7 +18,7 @@
xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher"
android:background="@drawable/hotseat_bg_panel"
launcher:cellCountX="1"
- launcher:cellCountY="-1">
+ launcher:cellCountY="5">
<com.android.launcher2.CellLayout
android:id="@+id/layout"
android:layout_width="match_parent"
diff --git a/res/layout-port/hotseat.xml b/res/layout-port/hotseat.xml
index 53f3c20..19da944 100644
--- a/res/layout-port/hotseat.xml
+++ b/res/layout-port/hotseat.xml
@@ -17,7 +17,7 @@
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher"
android:background="@drawable/hotseat_bg_panel"
- launcher:cellCountX="-1"
+ launcher:cellCountX="5"
launcher:cellCountY="1">
<com.android.launcher2.CellLayout
android:id="@+id/layout"
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index edcaa1d..ff757ee 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"Приспособления"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Тапети"</string>
<string name="out_of_space" msgid="8365249326091984698">"На този начален екран няма повече място."</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"Това приспособление е твърде голямо за трамплина."</string>
<string name="shortcut_installed" msgid="7071557296331322355">"Прекият път за „<xliff:g id="NAME">%s</xliff:g>“ бе създаден."</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"Прекият път към „<xliff:g id="NAME">%s</xliff:g>“ бе премахнат."</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"Прекият път за „<xliff:g id="NAME">%s</xliff:g>“ вече съществува."</string>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index da4d203..b7080da 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"Widgets"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Empaperats"</string>
<string name="out_of_space" msgid="8365249326091984698">"Ja no queda espai en aquesta pantalla Inici."</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"Aquest widget és massa gran per al hotseat."</string>
<string name="shortcut_installed" msgid="7071557296331322355">"S\'ha creat la drecera \"<xliff:g id="NAME">%s</xliff:g>\"."</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"S\'ha eliminat la drecera \"<xliff:g id="NAME">%s</xliff:g>\"."</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"La drecera \"<xliff:g id="NAME">%s</xliff:g>\" ja existeix."</string>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index c873c11..6430623 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"Widgety"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Tapety"</string>
<string name="out_of_space" msgid="8365249326091984698">"Na této ploše již není místo."</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"Widget je pro hotseat příliš velký."</string>
<string name="shortcut_installed" msgid="7071557296331322355">"Zástupce <xliff:g id="NAME">%s</xliff:g> byl vytvořen."</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"Zástupce <xliff:g id="NAME">%s</xliff:g> byl odebrán."</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"Zástupce <xliff:g id="NAME">%s</xliff:g> již existuje."</string>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index ea43e53..a1bb6ad 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"Widgets"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Hintergründe"</string>
<string name="out_of_space" msgid="8365249326091984698">"Auf dem Startbildschirm ist kein Platz mehr vorhanden."</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"Dieses Widget ist zu groß für den Hotseat."</string>
<string name="shortcut_installed" msgid="7071557296331322355">"\"<xliff:g id="NAME">%s</xliff:g>\"-Verknüpfung wurde erstellt."</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"\"<xliff:g id="NAME">%s</xliff:g>\"-Verknüpfung wurde entfernt."</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"\"<xliff:g id="NAME">%s</xliff:g>\"-Verknüpfung ist bereits vorhanden."</string>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 1442794..981a2eb 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"Widgets"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Fondos de pantalla"</string>
<string name="out_of_space" msgid="8365249326091984698">"No queda espacio en el escritorio."</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"Este widget es demasiado grande para la barra de accesos directos."</string>
<string name="shortcut_installed" msgid="7071557296331322355">"Se ha creado el acceso directo \"<xliff:g id="NAME">%s</xliff:g>\"."</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"Se ha eliminado el acceso directo \"<xliff:g id="NAME">%s</xliff:g>\"."</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"El acceso directo \"<xliff:g id="NAME">%s</xliff:g>\" ya existe."</string>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index b0a4272..208a8fb 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"ابزارک ها"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"تصاویر زمینه"</string>
<string name="out_of_space" msgid="8365249326091984698">"اتاق دیگری در این صفحه اصلی موجود نیست."</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"این ابزارک بیش از حد برای صندلی داغ بزرگ است."</string>
<string name="shortcut_installed" msgid="7071557296331322355">"میانبر \"<xliff:g id="NAME">%s</xliff:g>\" ایجاد شد."</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"میانبر \"<xliff:g id="NAME">%s</xliff:g>\" حذف شد."</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"میانبر \"<xliff:g id="NAME">%s</xliff:g>\" در حال حاضر وجود دارد."</string>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 8cbb410..4b36598 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"Widgets"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Fonds d\'écran"</string>
<string name="out_of_space" msgid="8365249326091984698">"Plus d\'espace libre sur l\'écran d\'accueil."</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"Ce widget est trop volumineux pour la barre d\'accès rapide."</string>
<string name="shortcut_installed" msgid="7071557296331322355">"Le raccourci \"<xliff:g id="NAME">%s</xliff:g>\" a été créé."</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"Le raccourci \"<xliff:g id="NAME">%s</xliff:g>\" a été supprimé."</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"Le raccourci \"<xliff:g id="NAME">%s</xliff:g>\" existe déjà."</string>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index f382c52..9cf67e4 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"Widgeti"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Pozadinske slike"</string>
<string name="out_of_space" msgid="8365249326091984698">"Na ovom početnom zaslonu više nema mjesta."</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"Ovaj je widget prevelik za hotseat."</string>
<string name="shortcut_installed" msgid="7071557296331322355">"Izrađen je prečac za \"<xliff:g id="NAME">%s</xliff:g>\"."</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"Prečac za \"<xliff:g id="NAME">%s</xliff:g>\" je uklonjen."</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"Prečac za \"<xliff:g id="NAME">%s</xliff:g>\" već postoji."</string>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index 94b93d5..f304606 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"רכיבי Widget"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"טפטים"</string>
<string name="out_of_space" msgid="8365249326091984698">"אין עוד מקום במסך דף הבית הזה."</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"Widget זה גדול מדי עבור אזור העגינה."</string>
<string name="shortcut_installed" msgid="7071557296331322355">"הקיצור \'<xliff:g id="NAME">%s</xliff:g>\' נוצר."</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"הקיצור \'<xliff:g id="NAME">%s</xliff:g>\' הוסר."</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"הקיצור \'<xliff:g id="NAME">%s</xliff:g>\' כבר קיים."</string>
diff --git a/res/values-land/dimens.xml b/res/values-land/dimens.xml
index 85465b4..ea761ce 100644
--- a/res/values-land/dimens.xml
+++ b/res/values-land/dimens.xml
@@ -22,8 +22,8 @@
<!-- Workspace -->
<dimen name="workspace_cell_width">106dp</dimen>
<dimen name="workspace_cell_height">74dp</dimen>
- <dimen name="hotseat_cell_width">68dp</dimen>
- <dimen name="hotseat_cell_height">74dp</dimen>
+ <dimen name="hotseat_cell_width">64dp</dimen>
+ <dimen name="hotseat_cell_height">58dp</dimen>
<!-- Block spacing on each side of the screen -->
<dimen name="workspace_left_padding">0dp</dimen>
<dimen name="workspace_right_padding">0dp</dimen>
diff --git a/res/values-large/styles.xml b/res/values-large/styles.xml
index 41bd9cd..265eff8 100644
--- a/res/values-large/styles.xml
+++ b/res/values-large/styles.xml
@@ -20,7 +20,7 @@
<resources>
<!-- Workspace -->
<style name="WorkspaceIcon.Portrait">
- <item name="android:drawablePadding">4dp</item>
+ <item name="android:drawablePadding">0dp</item>
<item name="android:paddingLeft">4dp</item>
<item name="android:paddingRight">4dp</item>
<item name="android:paddingTop">4dp</item>
@@ -35,7 +35,7 @@
<item name="android:textSize">13dip</item>
</style>
<style name="WorkspaceIcon.Landscape">
- <item name="android:drawablePadding">4dp</item>
+ <item name="android:drawablePadding">0dp</item>
<item name="android:paddingLeft">4dp</item>
<item name="android:paddingRight">4dp</item>
<item name="android:paddingTop">4dp</item>
@@ -49,10 +49,6 @@
<item name="android:paddingBottom">0dp</item>
<item name="android:textSize">13dip</item>
</style>
- <style name="WorkspaceIcon.AppsCustomize">
- <item name="android:drawablePadding">2dp</item>
- <item name="android:textSize">13dip</item>
- </style>
<style name="Theme" parent="android:Theme.Holo.Wallpaper.NoTitleBar">
<item name="android:windowActionModeOverlay">true</item>
@@ -62,6 +58,24 @@
<item name="android:screenOrientation">unspecified</item>
</style>
+ <style name="WorkspaceIcon.Portrait.AppsCustomize">
+ <item name="android:background">@null</item>
+ <item name="android:paddingTop">4dp</item>
+ <item name="android:paddingBottom">0dp</item>
+ <item name="android:paddingLeft">0dp</item>
+ <item name="android:paddingRight">0dp</item>
+ <item name="android:drawablePadding">4dp</item>
+ <item name="android:includeFontPadding">false</item>
+ <item name="android:textSize">13dip</item>
+ </style>
+ <style name="WorkspaceIcon.Landscape.AppsCustomize">
+ <item name="android:background">@null</item>
+ <item name="android:paddingTop">4dp</item>
+ <item name="android:paddingBottom">0dp</item>
+ <item name="android:drawablePadding">4dp</item>
+ <item name="android:includeFontPadding">false</item>
+ <item name="android:textSize">13dip</item>
+ </style>
<style name="TabIndicator.AppsCustomize">
<item name="android:paddingLeft">40dp</item>
<item name="android:paddingRight">40dp</item>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index 48d12da..9dab04e 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"Valdikliai"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Darbalaukio fonai"</string>
<string name="out_of_space" msgid="8365249326091984698">"Šiame pagrindiniame ekrane vietos nebėra."</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"Šis valdiklis per didelis keliems žaidėjams."</string>
<string name="shortcut_installed" msgid="7071557296331322355">"Sukurtas „<xliff:g id="NAME">%s</xliff:g>“ spartusis klavišas."</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"Spartusis klavišas „<xliff:g id="NAME">%s</xliff:g>“ pašalintas."</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"Spartusis klavišas „<xliff:g id="NAME">%s</xliff:g>“ jau yra."</string>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index 55621c9..2c25ed1 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"Widgets"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Imagens de fundo"</string>
<string name="out_of_space" msgid="8365249326091984698">"Não existe espaço suficiente neste ecrã principal."</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"Este widget é demasiado grande para a barra inferior."</string>
<string name="shortcut_installed" msgid="7071557296331322355">"O atalho \"<xliff:g id="NAME">%s</xliff:g>\" foi criado."</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"O atalho \"<xliff:g id="NAME">%s</xliff:g>\" foi removido."</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"O atalho \"<xliff:g id="NAME">%s</xliff:g>\" já existe."</string>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index 903d27d..04bf1c8 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"Obiecte widget"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Imagini de fundal"</string>
<string name="out_of_space" msgid="8365249326091984698">"Niciun spaţiu rămas pe acest Ecran de pornire."</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"Acest widget este prea mare pentru hotseat."</string>
<string name="shortcut_installed" msgid="7071557296331322355">"Comanda rapidă „<xliff:g id="NAME">%s</xliff:g>”·a fost creată."</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"Comanda rapidă „<xliff:g id="NAME">%s</xliff:g>” a fost eliminată."</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"Comanda rapidă „<xliff:g id="NAME">%s</xliff:g>” deja există."</string>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index bf052fe..5667645 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"Виджеты"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Обои"</string>
<string name="out_of_space" msgid="8365249326091984698">"На этом главном экране нет свободного места."</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"Виджет слишком велик для хот-сита."</string>
<string name="shortcut_installed" msgid="7071557296331322355">"Ярлык \"<xliff:g id="NAME">%s</xliff:g>\" создан"</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"Ярлык \"<xliff:g id="NAME">%s</xliff:g>\" удален."</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"Ярлык \"<xliff:g id="NAME">%s</xliff:g>\" уже существует."</string>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index ea1c5e1..54c6130 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"Miniaplikácie"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Tapety"</string>
<string name="out_of_space" msgid="8365249326091984698">"Na tejto ploche už nie je miesto"</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"Táto miniaplikácia je pre hotseat príliš veľká."</string>
<string name="shortcut_installed" msgid="7071557296331322355">"Odkaz <xliff:g id="NAME">%s</xliff:g> bol vytvorený."</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"Odkaz <xliff:g id="NAME">%s</xliff:g> bol odstránený."</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"Odkaz <xliff:g id="NAME">%s</xliff:g> už existuje."</string>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index 6de1c27..5bfd0a4 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"Виџети"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Позадине"</string>
<string name="out_of_space" msgid="8365249326091984698">"Нема више простора на овом почетном екрану."</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"Овај виџет је превелики за траку актуелности."</string>
<string name="shortcut_installed" msgid="7071557296331322355">"Пречица „<xliff:g id="NAME">%s</xliff:g>“ је направљена."</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"Пречица „<xliff:g id="NAME">%s</xliff:g>“ је уклоњена."</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"Пречица „<xliff:g id="NAME">%s</xliff:g>“ већ постоји."</string>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index d5aa941..3db725f 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"Widgetar"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Bakgrundsbilder"</string>
<string name="out_of_space" msgid="8365249326091984698">"Det finns inte plats för mer på den här startsidan."</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"Denna widget är för stor för Hotseat."</string>
<string name="shortcut_installed" msgid="7071557296331322355">"Genvägen \"<xliff:g id="NAME">%s</xliff:g>\" har skapats."</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"Genvägen \"<xliff:g id="NAME">%s</xliff:g>\" har tagits bort."</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"Genvägen \"<xliff:g id="NAME">%s</xliff:g>\" finns redan."</string>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 8a7cfeb..2e881f0 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"窗口小部件"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"壁纸"</string>
<string name="out_of_space" msgid="8365249326091984698">"此主屏幕上已没有空间。"</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"该窗口小部件太大,超出基座区域可用空间。"</string>
<string name="shortcut_installed" msgid="7071557296331322355">"已创建“<xliff:g id="NAME">%s</xliff:g>”快捷方式。"</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"已删除“<xliff:g id="NAME">%s</xliff:g>”快捷方式。"</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"“<xliff:g id="NAME">%s</xliff:g>”快捷方式已存在。"</string>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index 916df7c..12acc8a 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -41,8 +41,7 @@
<string name="group_widgets" msgid="6704978494073105844">"小工具"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"桌布"</string>
<string name="out_of_space" msgid="8365249326091984698">"主螢幕已無空間"</string>
- <!-- no translation found for invalid_hotseat_item (6545340627805449250) -->
- <skip />
+ <string name="invalid_hotseat_item" msgid="6545340627805449250">"這個小工具太大,超出可用的空間。"</string>
<string name="shortcut_installed" msgid="7071557296331322355">"已建立「<xliff:g id="NAME">%s</xliff:g>」捷徑。"</string>
<string name="shortcut_uninstalled" msgid="2129499669449749995">"已移除「<xliff:g id="NAME">%s</xliff:g>」捷徑。"</string>
<string name="shortcut_duplicate" msgid="4757756326465060694">"「<xliff:g id="NAME">%s</xliff:g>」捷徑已經存在。"</string>
diff --git a/res/values/colors.xml b/res/values/colors.xml
index 1efeb9e..ece0fd8 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -23,6 +23,9 @@
<color name="delete_target_hover_tint">#DAFF0000</color>
<color name="info_target_hover_tint">#DA0099CC</color>
+ <!-- The alpha/color to apply to the drag image -->
+ <color name="drag_view_multiply_color">#CCFFFFFF</color>
+
<color name="bubble_dark_background">#20000000</color>
<color name="appwidget_error_color">#FCCC</color>
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 5289ebd..641f8ea 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -19,7 +19,7 @@
<dimen name="qsb_bar_height">40dp</dimen>
<dimen name="workspace_cell_width">80dp</dimen>
<dimen name="workspace_cell_height">100dp</dimen>
- <dimen name="hotseat_cell_width">80dp</dimen>
+ <dimen name="hotseat_cell_width">64dp</dimen>
<dimen name="hotseat_cell_height">64dp</dimen>
<dimen name="workspace_width_gap">-1dp</dimen>
<dimen name="workspace_height_gap">-1dp</dimen>
diff --git a/res/xml/default_workspace.xml b/res/xml/default_workspace.xml
index db5e232..f6e363c 100644
--- a/res/xml/default_workspace.xml
+++ b/res/xml/default_workspace.xml
@@ -38,9 +38,6 @@
launcher:packageName="com.google.android.gm"
launcher:className="com.google.android.gm.ConversationListActivityGmail" />
<favorite
- launcher:packageName="com.google.android.talk"
- launcher:className="com.google.android.talk.SigningInActivity" />
- <favorite
launcher:packageName="com.google.android.apps.maps"
launcher:className="com.google.android.maps.MapsActivity" />
<favorite
@@ -78,21 +75,28 @@
launcher:packageName="com.android.contacts"
launcher:className="com.android.contacts.activities.DialtactsActivity"
launcher:container="-101"
- launcher:screen="1"
- launcher:x="1"
+ launcher:screen="0"
+ launcher:x="0"
launcher:y="0" />
<favorite
launcher:packageName="com.android.contacts"
launcher:className="com.android.contacts.activities.PeopleActivity"
launcher:container="-101"
- launcher:screen="2"
- launcher:x="2"
+ launcher:screen="1"
+ launcher:x="1"
+ launcher:y="0" />
+ <favorite
+ launcher:packageName="com.google.android.talk"
+ launcher:className="com.google.android.talk.SigningInActivity"
+ launcher:container="-101"
+ launcher:screen="3"
+ launcher:x="3"
launcher:y="0" />
<favorite
launcher:packageName="com.android.browser"
launcher:className="com.android.browser.BrowserActivity"
launcher:container="-101"
- launcher:screen="3"
- launcher:x="3"
+ launcher:screen="4"
+ launcher:x="4"
launcher:y="0" />
</favorites>
diff --git a/src/com/android/launcher2/AppsCustomizePagedView.java b/src/com/android/launcher2/AppsCustomizePagedView.java
index 53d154f..893e91d 100644
--- a/src/com/android/launcher2/AppsCustomizePagedView.java
+++ b/src/com/android/launcher2/AppsCustomizePagedView.java
@@ -33,6 +33,7 @@
import android.graphics.Bitmap;
import android.graphics.Bitmap.Config;
import android.graphics.Canvas;
+import android.graphics.PorterDuff;
import android.graphics.Rect;
import android.graphics.drawable.Drawable;
import android.os.AsyncTask;
@@ -172,6 +173,7 @@
private Canvas mCanvas;
private Drawable mDefaultWidgetBackground;
private IconCache mIconCache;
+ private int mDragViewMultiplyColor;
// Dimens
private int mContentWidth;
@@ -202,7 +204,8 @@
// Save the default widget preview background
Resources resources = context.getResources();
mDefaultWidgetBackground = resources.getDrawable(R.drawable.default_widget_preview_holo);
- mAppIconSize = getResources().getDimensionPixelSize(R.dimen.app_icon_size);
+ mAppIconSize = resources.getDimensionPixelSize(R.dimen.app_icon_size);
+ mDragViewMultiplyColor = resources.getColor(R.color.drag_view_multiply_color);
TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.PagedView, 0, 0);
// TODO-APPS_CUSTOMIZE: remove these unnecessary attrs after
@@ -409,7 +412,7 @@
createItemInfo.spanY = spanXY[1];
b = Bitmap.createBitmap(w, h, Bitmap.Config.ARGB_8888);
- renderDrawableToBitmap(preview, b, 0, 0, w, h, 1, 1);
+ renderDrawableToBitmap(preview, b, 0, 0, w, h, 1, 1, mDragViewMultiplyColor);
} else {
// Workaround for the fact that we don't keep the original ResolveInfo associated with
// the shortcut around. To get the icon, we just render the preview image (which has
@@ -420,6 +423,7 @@
mCanvas.save();
preview.draw(mCanvas);
mCanvas.restore();
+ mCanvas.drawColor(mDragViewMultiplyColor, PorterDuff.Mode.MULTIPLY);
mCanvas.setBitmap(null);
createItemInfo.spanX = createItemInfo.spanY = 1;
}
@@ -745,6 +749,10 @@
}
private void renderDrawableToBitmap(Drawable d, Bitmap bitmap, int x, int y, int w, int h,
float scaleX, float scaleY) {
+ renderDrawableToBitmap(d, bitmap, x, y, w, h, scaleX, scaleY, 0xFFFFFFFF);
+ }
+ private void renderDrawableToBitmap(Drawable d, Bitmap bitmap, int x, int y, int w, int h,
+ float scaleX, float scaleY, int multiplyColor) {
if (bitmap != null) {
Canvas c = new Canvas(bitmap);
c.scale(scaleX, scaleY);
@@ -752,6 +760,9 @@
d.setBounds(x, y, x + w, y + h);
d.draw(c);
d.setBounds(oldBounds); // Restore the bounds
+ if (multiplyColor != 0xFFFFFFFF) {
+ c.drawColor(mDragViewMultiplyColor, PorterDuff.Mode.MULTIPLY);
+ }
c.setBitmap(null);
}
}
@@ -828,7 +839,7 @@
preview = Bitmap.createBitmap(bitmapWidth, bitmapHeight, Config.ARGB_8888);
renderDrawableToBitmap(mDefaultWidgetBackground, preview, 0, 0, expectedWidth,
- expectedHeight, 1f,1f);
+ expectedHeight, 1f, 1f);
// Draw the icon in the top left corner
try {
diff --git a/src/com/android/launcher2/AppsCustomizeTabHost.java b/src/com/android/launcher2/AppsCustomizeTabHost.java
index 2f5cc40..25001b1 100644
--- a/src/com/android/launcher2/AppsCustomizeTabHost.java
+++ b/src/com/android/launcher2/AppsCustomizeTabHost.java
@@ -39,7 +39,6 @@
private static final String APPS_TAB_TAG = "APPS";
private static final String WIDGETS_TAB_TAG = "WIDGETS";
- private static final int sTabBarFadeInDuration = 150;
private final LayoutInflater mLayoutInflater;
private ViewGroup mTabs;
@@ -130,7 +129,7 @@
// Set the width and show the tab bar (if we have a loading graphic, we can switch
// it off here)
mTabs.getLayoutParams().width = contentWidth;
- mTabsContainer.animate().alpha(1f).setDuration(sTabBarFadeInDuration);
+ mTabsContainer.setAlpha(1f);
}
}
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
@@ -238,6 +237,9 @@
// blip early in the animation
buildLayer();
}
+ if (!toWorkspace && !LauncherApplication.isScreenLarge()) {
+ mAppsCustomizePane.showScrollingIndicator(false);
+ }
}
@Override
@@ -247,7 +249,7 @@
}
if (!toWorkspace && !LauncherApplication.isScreenLarge()) {
- mAppsCustomizePane.flashScrollingIndicator();
+ mAppsCustomizePane.hideScrollingIndicator(false);
}
}
}
diff --git a/src/com/android/launcher2/Hotseat.java b/src/com/android/launcher2/Hotseat.java
index 491691e..c53a743 100644
--- a/src/com/android/launcher2/Hotseat.java
+++ b/src/com/android/launcher2/Hotseat.java
@@ -27,7 +27,8 @@
import com.android.launcher.R;
public class Hotseat extends FrameLayout {
- static final String TAG = "Hotseat";
+ private static final String TAG = "Hotseat";
+ private static final int sAllAppsButtonRank = 2; // In the middle of the dock
private Launcher mLauncher;
private CellLayout mContent;
@@ -75,6 +76,9 @@
int getCellYFromOrder(int rank) {
return mIsLandscape ? (mContent.getCountY() - (rank + 1)) : 0;
}
+ public static boolean isAllAppsButtonRank(int rank) {
+ return rank == sAllAppsButtonRank;
+ }
@Override
protected void onFinishInflate() {
@@ -110,8 +114,8 @@
// Note: We do this to ensure that the hotseat is always laid out in the orientation of
// the hotseat in order regardless of which orientation they were added
- int x = getCellXFromOrder(0);
- int y = getCellYFromOrder(0);
+ int x = getCellXFromOrder(sAllAppsButtonRank);
+ int y = getCellYFromOrder(sAllAppsButtonRank);
mContent.addViewToCellLayout(allAppsButton, -1, 0, new CellLayout.LayoutParams(x,y,1,1),
true);
}
diff --git a/src/com/android/launcher2/IconCache.java b/src/com/android/launcher2/IconCache.java
index 04f97f3..b2ebe2a 100644
--- a/src/com/android/launcher2/IconCache.java
+++ b/src/com/android/launcher2/IconCache.java
@@ -24,7 +24,6 @@
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.drawable.Drawable;
-import android.util.Pair;
import android.util.DisplayMetrics;
import java.util.HashMap;
@@ -45,7 +44,6 @@
private final Bitmap mDefaultIcon;
private final LauncherApplication mContext;
private final PackageManager mPackageManager;
- private final Utilities.BubbleText mBubble;
private final HashMap<ComponentName, CacheEntry> mCache =
new HashMap<ComponentName, CacheEntry>(INITIAL_ICON_CACHE_CAPACITY);
private int mIconDpi;
@@ -53,9 +51,18 @@
public IconCache(LauncherApplication context) {
mContext = context;
mPackageManager = context.getPackageManager();
- mBubble = new Utilities.BubbleText(context);
+ int density = context.getResources().getDisplayMetrics().densityDpi;
if (LauncherApplication.isScreenLarge()) {
- mIconDpi = DisplayMetrics.DENSITY_HIGH;
+ if (density == DisplayMetrics.DENSITY_LOW) {
+ mIconDpi = DisplayMetrics.DENSITY_MEDIUM;
+ } else if (density == DisplayMetrics.DENSITY_MEDIUM) {
+ mIconDpi = DisplayMetrics.DENSITY_HIGH;
+ } else if (density == DisplayMetrics.DENSITY_HIGH) {
+ mIconDpi = DisplayMetrics.DENSITY_XHIGH;
+ } else if (density == DisplayMetrics.DENSITY_XHIGH) {
+ // We'll need to use a denser icon, or some sort of a mipmap
+ mIconDpi = DisplayMetrics.DENSITY_XHIGH;
+ }
} else {
mIconDpi = context.getResources().getDisplayMetrics().densityDpi;
}
diff --git a/src/com/android/launcher2/Launcher.java b/src/com/android/launcher2/Launcher.java
index bb7bdf5..1b105d2 100644
--- a/src/com/android/launcher2/Launcher.java
+++ b/src/com/android/launcher2/Launcher.java
@@ -2119,6 +2119,7 @@
if (!springLoaded) {
mWorkspace.showDockDivider(false);
}
+ mWorkspace.showScrollingIndicator(false);
}
@Override
public void onAnimationEnd(Animator animation) {
@@ -2126,7 +2127,7 @@
if (fromView instanceof LauncherTransitionable) {
((LauncherTransitionable) fromView).onLauncherTransitionEnd(alphaAnim,true);
}
- mWorkspace.flashScrollingIndicator();
+ mWorkspace.hideScrollingIndicator(false);
}
});
diff --git a/src/com/android/launcher2/LauncherModel.java b/src/com/android/launcher2/LauncherModel.java
index 1573483..206de14 100644
--- a/src/com/android/launcher2/LauncherModel.java
+++ b/src/com/android/launcher2/LauncherModel.java
@@ -816,26 +816,37 @@
// check & update map of what's occupied; used to discard overlapping/invalid items
private boolean checkItemPlacement(ItemInfo occupied[][][], ItemInfo item) {
- if (item.container != LauncherSettings.Favorites.CONTAINER_DESKTOP) {
+ int containerIndex = item.screen;
+ if (item.container == LauncherSettings.Favorites.CONTAINER_HOTSEAT) {
+ // We use the last index to refer to the hotseat
+ containerIndex = Launcher.SCREEN_COUNT;
+ // Return early if we detect that an item is under the hotseat button
+ if (Hotseat.isAllAppsButtonRank(item.screen)) {
+ return false;
+ }
+ } else if (item.container != LauncherSettings.Favorites.CONTAINER_DESKTOP) {
+ // Skip further checking if it is not the hotseat or workspace container
return true;
}
+
for (int x = item.cellX; x < (item.cellX+item.spanX); x++) {
for (int y = item.cellY; y < (item.cellY+item.spanY); y++) {
- if (occupied[item.screen][x][y] != null) {
+ if (occupied[containerIndex][x][y] != null) {
Log.e(TAG, "Error loading shortcut " + item
- + " into cell (" + item.screen + ":"
+ + " into cell (" + containerIndex + "-" + item.screen + ":"
+ x + "," + y
+ ") occupied by "
- + occupied[item.screen][x][y]);
+ + occupied[containerIndex][x][y]);
return false;
}
}
}
for (int x = item.cellX; x < (item.cellX+item.spanX); x++) {
for (int y = item.cellY; y < (item.cellY+item.spanY); y++) {
- occupied[item.screen][x][y] = item;
+ occupied[containerIndex][x][y] = item;
}
}
+
return true;
}
@@ -858,8 +869,9 @@
final Cursor c = contentResolver.query(
LauncherSettings.Favorites.CONTENT_URI, null, null, null, null);
+ // +1 for the hotseat (it can be larger than the workspace)
final ItemInfo occupied[][][] =
- new ItemInfo[Launcher.SCREEN_COUNT][mCellCountX][mCellCountY];
+ new ItemInfo[Launcher.SCREEN_COUNT + 1][mCellCountX + 1][mCellCountY + 1];
try {
final int idIndex = c.getColumnIndexOrThrow(LauncherSettings.Favorites._ID);
diff --git a/src/com/android/launcher2/LauncherProvider.java b/src/com/android/launcher2/LauncherProvider.java
index 6ca16de..53f7b42 100644
--- a/src/com/android/launcher2/LauncherProvider.java
+++ b/src/com/android/launcher2/LauncherProvider.java
@@ -737,7 +737,7 @@
// hotset. This screen can't be at position 0 because AllApps is in the
// zeroth position.
if (container == LauncherSettings.Favorites.CONTAINER_HOTSEAT &&
- Integer.valueOf(screen) <= 0) {
+ Hotseat.isAllAppsButtonRank(Integer.valueOf(screen))) {
throw new RuntimeException("Invalid screen position for hotseat item");
}
diff --git a/src/com/android/launcher2/PagedView.java b/src/com/android/launcher2/PagedView.java
index 24feb41..d228fef 100644
--- a/src/com/android/launcher2/PagedView.java
+++ b/src/com/android/launcher2/PagedView.java
@@ -131,7 +131,7 @@
private PageSwitchListener mPageSwitchListener;
private ArrayList<Boolean> mDirtyPageContent;
- private boolean mDirtyPageAlpha;
+ private boolean mDirtyPageAlpha = true;
// choice modes
protected static final int CHOICE_MODE_NONE = 0;
@@ -323,7 +323,7 @@
// a method that subclasses can override to add behavior
protected void onPageBeginMoving() {
- showScrollingIndicator();
+ showScrollingIndicator(false);
}
// a method that subclasses can override to add behavior
@@ -478,6 +478,8 @@
mMaxScrollX = 0;
}
+ updateScrollingIndicatorPosition();
+
setMeasuredDimension(widthSize, heightSize);
}
@@ -1685,11 +1687,11 @@
};
protected void flashScrollingIndicator() {
removeCallbacks(hideScrollingIndicatorRunnable);
- showScrollingIndicator();
+ showScrollingIndicator(false);
postDelayed(hideScrollingIndicatorRunnable, sScrollIndicatorFlashDuration);
}
- protected void showScrollingIndicator() {
+ protected void showScrollingIndicator(boolean immediately) {
if (getChildCount() <= 1) return;
if (!isScrollingIndicatorEnabled()) return;
@@ -1701,9 +1703,13 @@
if (mScrollIndicatorAnimator != null) {
mScrollIndicatorAnimator.cancel();
}
- mScrollIndicatorAnimator = ObjectAnimator.ofFloat(mScrollIndicator, "alpha", 1f);
- mScrollIndicatorAnimator.setDuration(sScrollIndicatorFadeInDuration);
- mScrollIndicatorAnimator.start();
+ if (immediately) {
+ mScrollIndicator.setAlpha(1f);
+ } else {
+ mScrollIndicatorAnimator = ObjectAnimator.ofFloat(mScrollIndicator, "alpha", 1f);
+ mScrollIndicatorAnimator.setDuration(sScrollIndicatorFadeInDuration);
+ mScrollIndicatorAnimator.start();
+ }
}
}
@@ -1762,7 +1768,7 @@
private void updateScrollingIndicatorPosition() {
if (!isScrollingIndicatorEnabled()) return;
-
+ if (mScrollIndicator == null) return;
int numPages = getChildCount();
int pageWidth = getMeasuredWidth();
int maxPageWidth = (numPages * getChildWidth(0)) + ((numPages - 1) * mPageSpacing);
diff --git a/src/com/android/launcher2/Utilities.java b/src/com/android/launcher2/Utilities.java
index b537f7a..1175fad 100644
--- a/src/com/android/launcher2/Utilities.java
+++ b/src/com/android/launcher2/Utilities.java
@@ -265,120 +265,6 @@
sDisabledPaint.setAlpha(0x88);
}
- static class BubbleText {
- private static final int MAX_LINES = 2;
-
- private final TextPaint mTextPaint;
-
- private final RectF mBubbleRect = new RectF();
-
- private final float mTextWidth;
- private final int mLeading;
- private final int mFirstLineY;
- private final int mLineHeight;
-
- private final int mBitmapWidth;
- private final int mBitmapHeight;
- private final int mDensity;
-
- BubbleText(Context context) {
- final Resources resources = context.getResources();
-
- final DisplayMetrics metrics = resources.getDisplayMetrics();
- final float scale = metrics.density;
- mDensity = metrics.densityDpi;
-
- final float paddingLeft = 2.0f * scale;
- final float paddingRight = 2.0f * scale;
- final float cellWidth = resources.getDimension(R.dimen.title_texture_width);
-
- RectF bubbleRect = mBubbleRect;
- bubbleRect.left = 0;
- bubbleRect.top = 0;
- bubbleRect.right = (int) cellWidth;
-
- mTextWidth = cellWidth - paddingLeft - paddingRight;
-
- TextPaint textPaint = mTextPaint = new TextPaint();
- textPaint.setTypeface(Typeface.DEFAULT);
- textPaint.setTextSize(13*scale);
- textPaint.setColor(0xffffffff);
- textPaint.setAntiAlias(true);
- if (TEXT_BURN) {
- textPaint.setShadowLayer(8, 0, 0, 0xff000000);
- }
-
- float ascent = -textPaint.ascent();
- float descent = textPaint.descent();
- float leading = 0.0f;//(ascent+descent) * 0.1f;
- mLeading = (int)(leading + 0.5f);
- mFirstLineY = (int)(leading + ascent + 0.5f);
- mLineHeight = (int)(leading + ascent + descent + 0.5f);
-
- mBitmapWidth = (int)(mBubbleRect.width() + 0.5f);
- mBitmapHeight = roundToPow2((int)((MAX_LINES * mLineHeight) + leading + 0.5f));
-
- mBubbleRect.offsetTo((mBitmapWidth-mBubbleRect.width())/2, 0);
-
- if (false) {
- Log.d(TAG, "mBitmapWidth=" + mBitmapWidth + " mBitmapHeight="
- + mBitmapHeight + " w=" + ((int)(mBubbleRect.width() + 0.5f))
- + " h=" + ((int)((MAX_LINES * mLineHeight) + leading + 0.5f)));
- }
- }
-
- /** You own the bitmap after this and you must call recycle on it. */
- Bitmap createTextBitmap(String text) {
- Bitmap b = Bitmap.createBitmap(mBitmapWidth, mBitmapHeight, Bitmap.Config.ALPHA_8);
- b.setDensity(mDensity);
- Canvas c = new Canvas(b);
-
- StaticLayout layout = new StaticLayout(text, mTextPaint, (int)mTextWidth,
- Alignment.ALIGN_CENTER, 1, 0, true);
- int lineCount = layout.getLineCount();
- if (lineCount > MAX_LINES) {
- lineCount = MAX_LINES;
- }
- //if (!TEXT_BURN && lineCount > 0) {
- //RectF bubbleRect = mBubbleRect;
- //bubbleRect.bottom = height(lineCount);
- //c.drawRoundRect(bubbleRect, mCornerRadius, mCornerRadius, mRectPaint);
- //}
- for (int i=0; i<lineCount; i++) {
- //int x = (int)((mBubbleRect.width() - layout.getLineMax(i)) / 2.0f);
- //int y = mFirstLineY + (i * mLineHeight);
- final String lineText = text.substring(layout.getLineStart(i), layout.getLineEnd(i));
- int x = (int)(mBubbleRect.left
- + ((mBubbleRect.width() - mTextPaint.measureText(lineText)) * 0.5f));
- int y = mFirstLineY + (i * mLineHeight);
- c.drawText(lineText, x, y, mTextPaint);
- }
-
- c.setBitmap(null);
- return b;
- }
-
- private int height(int lineCount) {
- return (int)((lineCount * mLineHeight) + mLeading + mLeading + 0.0f);
- }
-
- int getBubbleWidth() {
- return (int)(mBubbleRect.width() + 0.5f);
- }
-
- int getMaxBubbleHeight() {
- return height(MAX_LINES);
- }
-
- int getBitmapWidth() {
- return mBitmapWidth;
- }
-
- int getBitmapHeight() {
- return mBitmapHeight;
- }
- }
-
/** Only works for positive numbers. */
static int roundToPow2(int n) {
int orig = n;
diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java
index ce3aad4..a45d2b8 100644
--- a/src/com/android/launcher2/Workspace.java
+++ b/src/com/android/launcher2/Workspace.java
@@ -17,12 +17,12 @@
package com.android.launcher2;
import android.animation.Animator;
+import android.animation.Animator.AnimatorListener;
import android.animation.AnimatorListenerAdapter;
import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
import android.animation.TimeInterpolator;
import android.animation.ValueAnimator;
-import android.animation.Animator.AnimatorListener;
import android.animation.ValueAnimator.AnimatorUpdateListener;
import android.app.AlertDialog;
import android.app.WallpaperManager;
@@ -33,15 +33,14 @@
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
-import android.content.pm.PackageManager;
import android.content.res.Resources;
import android.content.res.TypedArray;
import android.graphics.Bitmap;
import android.graphics.Camera;
import android.graphics.Canvas;
-import android.graphics.Color;
import android.graphics.Matrix;
import android.graphics.Paint;
+import android.graphics.PorterDuff;
import android.graphics.Rect;
import android.graphics.RectF;
import android.graphics.Region.Op;
@@ -183,6 +182,7 @@
private Bitmap mDragOutline = null;
private final Rect mTempRect = new Rect();
private final int[] mTempXY = new int[2];
+ private int mDragViewMultiplyColor;
// Paint used to draw external drop outline
private final Paint mExternalDragOutlinePaint = new Paint();
@@ -306,6 +306,7 @@
mSpringLoadedShrinkFactor =
res.getInteger(R.integer.config_workspaceSpringLoadShrinkPercentage) / 100.0f;
+ mDragViewMultiplyColor = res.getColor(R.color.drag_view_multiply_color);
// if the value is manually specified, use that instead
cellCountX = a.getInt(R.styleable.Workspace_cellCountX, cellCountX);
@@ -1964,6 +1965,7 @@
canvas.setBitmap(b);
drawDragView(v, canvas, padding, true);
mOutlineHelper.applyOuterBlur(b, canvas, outlineColor);
+ canvas.drawColor(mDragViewMultiplyColor, PorterDuff.Mode.MULTIPLY);
canvas.setBitmap(null);
return b;