merge in jb-release history after reset to jb-dev
diff --git a/res/drawable-hdpi/gardening_crosshairs.png b/res/drawable-hdpi/gardening_crosshairs.png
deleted file mode 100644
index d2d263c..0000000
--- a/res/drawable-hdpi/gardening_crosshairs.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/gardening_crosshairs.png b/res/drawable-mdpi/gardening_crosshairs.png
deleted file mode 100644
index 9d9f3c1..0000000
--- a/res/drawable-mdpi/gardening_crosshairs.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-sw600dp-hdpi/ic_no_applications.png b/res/drawable-sw600dp-hdpi/ic_no_applications.png
deleted file mode 100644
index 933d091..0000000
--- a/res/drawable-sw600dp-hdpi/ic_no_applications.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-sw600dp-hdpi/tab_selected_focused_holo.9.png b/res/drawable-sw600dp-hdpi/tab_selected_focused_holo.9.png
deleted file mode 100644
index 1ba35d5..0000000
--- a/res/drawable-sw600dp-hdpi/tab_selected_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-sw600dp-hdpi/tab_selected_holo.9.png b/res/drawable-sw600dp-hdpi/tab_selected_holo.9.png
deleted file mode 100644
index ef913cc..0000000
--- a/res/drawable-sw600dp-hdpi/tab_selected_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-sw600dp-hdpi/tab_selected_pressed_focused_holo.9.png b/res/drawable-sw600dp-hdpi/tab_selected_pressed_focused_holo.9.png
deleted file mode 100644
index d7e9688..0000000
--- a/res/drawable-sw600dp-hdpi/tab_selected_pressed_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-sw600dp-hdpi/tab_selected_pressed_holo.9.png b/res/drawable-sw600dp-hdpi/tab_selected_pressed_holo.9.png
deleted file mode 100644
index b8b1fcf..0000000
--- a/res/drawable-sw600dp-hdpi/tab_selected_pressed_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-sw600dp-mdpi/ic_home_add_holo_dark.png b/res/drawable-sw600dp-mdpi/ic_home_add_holo_dark.png
deleted file mode 100644
index 7f04589..0000000
--- a/res/drawable-sw600dp-mdpi/ic_home_add_holo_dark.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-sw600dp-mdpi/ic_no_applications.png b/res/drawable-sw600dp-mdpi/ic_no_applications.png
deleted file mode 100644
index a4f695a..0000000
--- a/res/drawable-sw600dp-mdpi/ic_no_applications.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-sw600dp-mdpi/tab_selected_focused_holo.9.png b/res/drawable-sw600dp-mdpi/tab_selected_focused_holo.9.png
deleted file mode 100644
index 782ae35..0000000
--- a/res/drawable-sw600dp-mdpi/tab_selected_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-sw600dp-mdpi/tab_selected_holo.9.png b/res/drawable-sw600dp-mdpi/tab_selected_holo.9.png
deleted file mode 100644
index 255d072..0000000
--- a/res/drawable-sw600dp-mdpi/tab_selected_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-sw600dp-mdpi/tab_selected_pressed_focused_holo.9.png b/res/drawable-sw600dp-mdpi/tab_selected_pressed_focused_holo.9.png
deleted file mode 100644
index 10152bb..0000000
--- a/res/drawable-sw600dp-mdpi/tab_selected_pressed_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-sw600dp-mdpi/tab_selected_pressed_holo.9.png b/res/drawable-sw600dp-mdpi/tab_selected_pressed_holo.9.png
deleted file mode 100644
index 822ed51..0000000
--- a/res/drawable-sw600dp-mdpi/tab_selected_pressed_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xhdpi/gardening_crosshairs.png b/res/drawable-xhdpi/gardening_crosshairs.png
deleted file mode 100644
index 3168463..0000000
--- a/res/drawable-xhdpi/gardening_crosshairs.png
+++ /dev/null
Binary files differ
diff --git a/res/layout-land/launcher.xml b/res/layout-land/launcher.xml
index 0c1a195..35f1a08 100644
--- a/res/layout-land/launcher.xml
+++ b/res/layout-land/launcher.xml
@@ -27,8 +27,10 @@
android:id="@+id/workspace"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:paddingLeft="@dimen/qsb_bar_height"
- android:paddingRight="@dimen/button_bar_height"
+ android:paddingLeft="@dimen/workspace_left_padding"
+ android:paddingRight="@dimen/workspace_right_padding"
+ android:paddingTop="@dimen/workspace_top_padding"
+ android:paddingBottom="@dimen/workspace_bottom_padding"
launcher:defaultScreen="2"
launcher:cellCountX="@integer/cell_count_x"
launcher:cellCountY="@integer/cell_count_y"
diff --git a/res/layout-port/launcher.xml b/res/layout-port/launcher.xml
index f6ff2e8..6030382 100644
--- a/res/layout-port/launcher.xml
+++ b/res/layout-port/launcher.xml
@@ -44,8 +44,10 @@
android:id="@+id/workspace"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:paddingTop="@dimen/qsb_bar_height_inset"
- android:paddingBottom="@dimen/button_bar_height"
+ android:paddingLeft="@dimen/workspace_left_padding"
+ android:paddingRight="@dimen/workspace_right_padding"
+ android:paddingTop="@dimen/workspace_top_padding"
+ android:paddingBottom="@dimen/workspace_bottom_padding"
launcher:defaultScreen="2"
launcher:cellCountX="@integer/cell_count_x"
launcher:cellCountY="@integer/cell_count_y"
diff --git a/res/layout-sw720dp/workspace.xml b/res/layout-sw720dp/workspace.xml
index 327afaf..5658a4b 100644
--- a/res/layout-sw720dp/workspace.xml
+++ b/res/layout-sw720dp/workspace.xml
@@ -19,7 +19,10 @@
<com.android.launcher2.Workspace
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher"
- android:paddingTop="@dimen/workspace_content_large_only_top_margin"
+ android:paddingLeft="@dimen/workspace_left_padding"
+ android:paddingRight="@dimen/workspace_right_padding"
+ android:paddingTop="@dimen/workspace_top_padding"
+ android:paddingBottom="@dimen/workspace_bottom_padding"
launcher:defaultScreen="2"
launcher:pageSpacing="@dimen/workspace_page_spacing">
<include android:id="@+id/cell1" layout="@layout/workspace_screen" />
diff --git a/res/layout-sw720dp/workspace_screen.xml b/res/layout-sw720dp/workspace_screen.xml
deleted file mode 100644
index 52f9def..0000000
--- a/res/layout-sw720dp/workspace_screen.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2008 The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-<com.android.launcher2.CellLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher"
-
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:paddingLeft="@dimen/workspace_left_padding"
- android:paddingRight="@dimen/workspace_right_padding"
- android:paddingTop="@dimen/workspace_top_padding"
- android:paddingBottom="@dimen/workspace_bottom_padding"
- android:hapticFeedbackEnabled="false"
-
- launcher:cellWidth="@dimen/workspace_cell_width"
- launcher:cellHeight="@dimen/workspace_cell_height"
- launcher:widthGap="@dimen/workspace_width_gap"
- launcher:heightGap="@dimen/workspace_height_gap"
- launcher:maxGap="@dimen/workspace_max_gap" />
diff --git a/res/layout/workspace_screen.xml b/res/layout/workspace_screen.xml
index 23e1def..d6e66f6 100644
--- a/res/layout/workspace_screen.xml
+++ b/res/layout/workspace_screen.xml
@@ -17,16 +17,17 @@
<com.android.launcher2.CellLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher"
- style="@style/WorkspaceScreen"
- android:paddingLeft="@dimen/workspace_left_padding"
- android:paddingRight="@dimen/workspace_right_padding"
- android:paddingTop="@dimen/workspace_top_padding"
- android:paddingBottom="@dimen/workspace_bottom_padding"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:paddingLeft="@dimen/cell_layout_left_padding"
+ android:paddingRight="@dimen/cell_layout_right_padding"
+ android:paddingTop="@dimen/cell_layout_top_padding"
+ android:paddingBottom="@dimen/cell_layout_bottom_padding"
android:hapticFeedbackEnabled="false"
launcher:cellWidth="@dimen/workspace_cell_width"
launcher:cellHeight="@dimen/workspace_cell_height"
launcher:widthGap="@dimen/workspace_width_gap"
launcher:heightGap="@dimen/workspace_height_gap"
- launcher:maxGap="@dimen/workspace_max_gap" />
+ launcher:maxGap="@dimen/workspace_max_gap" />
\ No newline at end of file
diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
index 9d33b97..4d8b381 100644
--- a/res/values-af/strings.xml
+++ b/res/values-af/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Kortpaaie"</string>
<string name="group_widgets" msgid="6704978494073105844">"Legstukke"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Muurpapier"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Geen spasie op tuisskerms oor nie."</string>
<string name="out_of_space" msgid="8365249326091984698">"Geen meer spasie op tuisskerm nie."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Geen plek meer op die warmlaai nie."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Hierdie legstuk is te groot vir die hoofposisie."</string>
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
index d3bd40f..375ba31 100644
--- a/res/values-am/strings.xml
+++ b/res/values-am/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"አቋራጮች"</string>
<string name="group_widgets" msgid="6704978494073105844">"ፍርግሞች"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"ልጣፍ"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"የመነሻ ማያ ገጾችህ ላይ ተጨማሪ ቦታ የለም።"</string>
<string name="out_of_space" msgid="8365249326091984698">"በዚህ መነሻ ማያ ላይ ምንም ቦታ የለም።"</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"በመትከያ ቦታው ላይ ተጨማሪ ክፍል የለም።"</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"ይህ ፍርግም ለማስቀመጫው በጣም ትልቅ ነው።"</string>
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
index be0f2b0..d86eeb8 100644
--- a/res/values-ar/strings.xml
+++ b/res/values-ar/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"الاختصارات"</string>
<string name="group_widgets" msgid="6704978494073105844">"الأدوات"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"الخلفيات"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"ليس هناك مساحة أخرى في الشاشات الرئيسية."</string>
<string name="out_of_space" msgid="8365249326091984698">"ليس هناك مساحة أخرى في هذه الشاشة الرئيسية."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"ليست هناك مساحة أخرى في منطقة الإرساء القابلة للتخصيص."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"حجم هذه الأداة كبير للغاية بحيث لا يتسع له الموقع المهم."</string>
diff --git a/res/values-be/strings.xml b/res/values-be/strings.xml
index ebc4b02..d04ee34 100644
--- a/res/values-be/strings.xml
+++ b/res/values-be/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Хуткі доступ"</string>
<string name="group_widgets" msgid="6704978494073105844">"Віджэты"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Шпалеры"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"На галоўных экранах больш няма месца."</string>
<string name="out_of_space" msgid="8365249326091984698">"На Галоўнай старонцы больш няма месца."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"На Hotseat больш няма месца."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Гэты віджэт занадта вялікі для hotseat."</string>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index d76931c..dc0814a 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Преки пътища"</string>
<string name="group_widgets" msgid="6704978494073105844">"Приспособления"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Тапети"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"На началните ви екрани няма повече място."</string>
<string name="out_of_space" msgid="8365249326091984698">"На този начален екран няма повече място."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"В трамплина няма повече място."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Това приспособление е твърде голямо за трамплина."</string>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index 0530068..a71b9f1 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Dreceres"</string>
<string name="group_widgets" msgid="6704978494073105844">"Widgets"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Empaperats"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"No queda espai a les pantalles d\'inici."</string>
<string name="out_of_space" msgid="8365249326091984698">"Ja no queda espai en aquesta pantalla Inici."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"No queda espai al hotseat."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Aquest widget és massa gran per al hotseat."</string>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index ad1ce99..fb61ec7 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Zástupce"</string>
<string name="group_widgets" msgid="6704978494073105844">"Widgety"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Tapety"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Na plochách již není místo."</string>
<string name="out_of_space" msgid="8365249326091984698">"Na této ploše již není místo."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"V části hotseat již není místo."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Widget je pro hotseat příliš velký."</string>
@@ -95,9 +94,9 @@
<string name="workspace_cling_move_item" msgid="791013895761065070">"Sem můžete umístit své oblíbené aplikace."</string>
<string name="workspace_cling_open_all_apps" msgid="2459977609848572588">"Chcete-li zobrazit všechny aplikace, dotkněte se kruhu."</string>
<string name="all_apps_cling_title" msgid="2559734712581447107">"Vybrat několik aplikací"</string>
- <string name="all_apps_cling_add_item" msgid="5665035103260318891">"Chcete-li na plochu přidat aplikaci, dotkněte se jí a podržte."</string>
+ <string name="all_apps_cling_add_item" msgid="5665035103260318891">"Chcete-li na plochu přidat aplikaci, dotkněte se jí a přidržte ji."</string>
<string name="folder_cling_title" msgid="4308949882377840953">"Uspořádat aplikace pomocí složek"</string>
- <string name="folder_cling_move_item" msgid="270598675060435169">"Chcete-li aplikaci přesunout, dotkněte se jí a podržte ji."</string>
+ <string name="folder_cling_move_item" msgid="270598675060435169">"Chcete-li aplikaci přesunout, dotkněte se jí a přidržte ji."</string>
<string name="folder_cling_create_folder" msgid="8352867485656129478">"Chcete-li na ploše vytvořit novou složku, přesuňte jednu aplikaci na druhou."</string>
<string name="cling_dismiss" msgid="2780907108735868381">"OK"</string>
<string name="folder_opened" msgid="1262064100943801533">"Složka otevřena, rozměry <xliff:g id="WIDTH">%1$d</xliff:g> × <xliff:g id="HEIGHT">%2$d</xliff:g>"</string>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index 316f989..0014d40 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Genveje"</string>
<string name="group_widgets" msgid="6704978494073105844">"Widgets"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Tapeter"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Der er ikke mere plads på dine startskærme."</string>
<string name="out_of_space" msgid="8365249326091984698">"Der er ikke mere plads på Startskærmen."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Der er ikke mere plads i hotseatet."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Denne widget er for stor til hotseat."</string>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index 865720b..92f1809 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Verknüpfungen"</string>
<string name="group_widgets" msgid="6704978494073105844">"Widgets"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Hintergründe"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Auf Ihrem Startbildschirm ist kein Platz mehr vorhanden."</string>
<string name="out_of_space" msgid="8365249326091984698">"Auf dem Startbildschirm ist kein Platz mehr vorhanden."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Auf der App-Leiste ist kein Platz mehr vorhanden."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Dieses Widget ist zu groß für die App-Leiste."</string>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index 9545425..2d12ca9 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Συντομεύσεις"</string>
<string name="group_widgets" msgid="6704978494073105844">"Γραφικά στοιχεία"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Ταπετσαρίες"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Δεν υπάρχει άλλος χώρος στις Αρχικές οθόνες σας."</string>
<string name="out_of_space" msgid="8365249326091984698">"Δεν υπάρχει χώρος σε αυτήν την αρχική οθόνη."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Δεν υπάρχει άλλος χώρος στο hotseat."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Αυτό το γραφικό στοιχείο είναι πολύ μεγάλο για το hotseat."</string>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index 7005487..941fa8e 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Shortcuts"</string>
<string name="group_widgets" msgid="6704978494073105844">"Widgets"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Wallpaper"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"No more room on your Home screens."</string>
<string name="out_of_space" msgid="8365249326091984698">"No more room on this Home screen."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"No more room on the hotseat."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"This widget is too large for the hot-seat."</string>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index f461cbd..fecbc40 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Accesos directos"</string>
<string name="group_widgets" msgid="6704978494073105844">"Widgets"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Papeles tapiz"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"No hay más espacio en tu pantalla principal."</string>
<string name="out_of_space" msgid="8365249326091984698">"No hay más espacio en esta pantalla de la página principal"</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"No queda espacio en la barra de accesos directos."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Este widget es demasiado grande para el banquillo."</string>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 81933e3..dda1d9e 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Accesos directos"</string>
<string name="group_widgets" msgid="6704978494073105844">"Widgets"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Fondos de pantalla"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"No queda espacio en las pantallas del escritorio."</string>
<string name="out_of_space" msgid="8365249326091984698">"No queda espacio en el escritorio."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"No queda espacio en la barra de accesos directos."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Este widget es demasiado grande para la barra de accesos directos."</string>
diff --git a/res/values-et/strings.xml b/res/values-et/strings.xml
index 46c64fa..93fd351 100644
--- a/res/values-et/strings.xml
+++ b/res/values-et/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Otseteed"</string>
<string name="group_widgets" msgid="6704978494073105844">"Vidinad"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Taustapildid"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Teie avakuvadel ei ole enam ruumi."</string>
<string name="out_of_space" msgid="8365249326091984698">"Sellel avalehel pole enam ruumi."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Kohandataval dokialal pole rohkem ruumi."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"See vidin on tööpunkti jaoks liiga suur."</string>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index 51c30f2..ea42c45 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"میانبرها"</string>
<string name="group_widgets" msgid="6704978494073105844">"ابزارک ها"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"تصاویر زمینه"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"فضای بیشتری در صفحات نمایش اصلی شما موجود نیست."</string>
<string name="out_of_space" msgid="8365249326091984698">"اتاق دیگری در این صفحه اصلی موجود نیست."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"فضای بیشتری در صندلی داغ نیست."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"این ابزارک بیش از حد برای صندلی داغ بزرگ است."</string>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index 7731f19..a069565 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Pikakuvakkeet"</string>
<string name="group_widgets" msgid="6704978494073105844">"Widgetit"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Taustakuvat"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Aloitusruuduilla ei ole enää tilaa."</string>
<string name="out_of_space" msgid="8365249326091984698">"Etusivulla ei ole enää tilaa."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Hotseatissa ei ole enää tilaa."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Tämä widget on liian suuri tähän paikkaan."</string>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 4021dbf..515ae7f 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Raccourcis"</string>
<string name="group_widgets" msgid="6704978494073105844">"Widgets"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Fonds d\'écran"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Vous n\'avez plus d\'espace libre sur vos écrans d\'accueil."</string>
<string name="out_of_space" msgid="8365249326091984698">"Plus d\'espace libre sur l\'écran d\'accueil."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Vous n\'avez plus de place sur la barre d\'accès rapide."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Ce widget est trop volumineux pour la barre d\'accès rapide."</string>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index 8b99ed1..200382c 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"शॉर्टकट"</string>
<string name="group_widgets" msgid="6704978494073105844">"विजेट"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"वॉलपेपर"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"आपकी मुखपृष्ठ स्क्रीन पर अधिक स्थान नहीं है."</string>
<string name="out_of_space" msgid="8365249326091984698">"इस होम स्क्रीन पर और स्थान नहीं है."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"हॉटसीट पर अधिक स्थान नहीं है."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"हॉटसीट के लिए यह विजेट बहुत बड़ा है."</string>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index 6a48459..4da1f90 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Prečaci"</string>
<string name="group_widgets" msgid="6704978494073105844">"Widgeti"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Pozadinske slike"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Na vašim početnim zaslonima više nema mjesta."</string>
<string name="out_of_space" msgid="8365249326091984698">"Na ovom početnom zaslonu više nema mjesta."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Na hotseatu više nema mjesta."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Ovaj je widget prevelik za hotseat."</string>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index a829ce2..7c5b878 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Parancsikonok"</string>
<string name="group_widgets" msgid="6704978494073105844">"Modulok"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Háttérképek"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Nincs több hely a Kezdőképernyőkön."</string>
<string name="out_of_space" msgid="8365249326091984698">"Nincs több hely ezen a főoldalon."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Nincs több hely a hotseaten."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Ez a modul túl nagy a hotseat számára."</string>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index 5692442..f85e480 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Pintasan"</string>
<string name="group_widgets" msgid="6704978494073105844">"Widget"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Wallpaper"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Tidak ada ruang lagi pada layar Utama Anda."</string>
<string name="out_of_space" msgid="8365249326091984698">"Tidak ada ruang lagi pada layar Utama ini."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Tidak ada ruang lagi di hotseat."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Widget ini terlalu besar untuk hotseat tersebut."</string>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index ffad4a0..8381be2 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Scorciatoie"</string>
<string name="group_widgets" msgid="6704978494073105844">"Widget"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Sfondi"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Spazio nelle schermate Home esaurito."</string>
<string name="out_of_space" msgid="8365249326091984698">"Spazio nella schermata Home esaurito."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Spazio nell\'area hotseat esaurito."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Questo widget è troppo grande per l\'area hotseat."</string>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index 80d795f..4978ea5 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"קיצורי דרך"</string>
<string name="group_widgets" msgid="6704978494073105844">"רכיבי Widget"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"טפטים"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"אין יותר מקום במסכי דף הבית."</string>
<string name="out_of_space" msgid="8365249326091984698">"אין עוד מקום במסך דף הבית הזה."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"אין יותר מקום בפס היישומים."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Widget זה גדול מדי עבור אזור העגינה."</string>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index ad43c34..9038cc2 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"ショートカット"</string>
<string name="group_widgets" msgid="6704978494073105844">"ウィジェット"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"壁紙"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"ホーム画面に空きスペースがありません。"</string>
<string name="out_of_space" msgid="8365249326091984698">"ホーム画面に空きスペースがありません。"</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"ホットシートに空きスペースがありません。"</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"このウィジェットはホットシートには大きすぎます。"</string>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index dceb1b5..8b6e563 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"바로가기"</string>
<string name="group_widgets" msgid="6704978494073105844">"위젯"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"배경화면"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"홈 화면에 더 이상 공간이 없습니다."</string>
<string name="out_of_space" msgid="8365249326091984698">"홈 화면에 더 이상 공간이 없습니다."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"즐겨찾는 앱 모음에 더 이상 빈 공간이 없습니다."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"이 위젯은 핫시트에 너무 큽니다."</string>
diff --git a/res/values-land/dimens.xml b/res/values-land/dimens.xml
index 5f03510..e94d780 100644
--- a/res/values-land/dimens.xml
+++ b/res/values-land/dimens.xml
@@ -20,25 +20,28 @@
<dimen name="toolbar_button_horizontal_padding">4dip</dimen>
<!-- Workspace -->
- <dimen name="workspace_cell_width">106dp</dimen>
- <dimen name="workspace_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>
- <!-- We need top/bottom padding for portals to look right, but
- really only in spring loaded mode... -->
- <dimen name="workspace_top_padding">0dp</dimen>
- <dimen name="workspace_bottom_padding">0dp</dimen>
<!-- We really want the page spacing to be the max of either the button bar
- height or the qsb bar height -->
+ height or the qsb bar height -->
<dimen name="workspace_page_spacing">-1dp</dimen>
<dimen name="workspace_divider_padding_left">0dp</dimen>
<dimen name="workspace_divider_padding_right">0dp</dimen>
<dimen name="workspace_divider_padding_top">12dp</dimen>
<dimen name="workspace_divider_padding_bottom">12dp</dimen>
+ <!-- Block spacing on each side of the screen. And also padding
+ for the portals to look right. -->
+ <dimen name="cell_layout_left_padding">@dimen/cell_layout_left_padding_land</dimen>
+ <dimen name="cell_layout_right_padding">@dimen/cell_layout_right_padding_land</dimen>
+ <dimen name="cell_layout_top_padding">@dimen/cell_layout_top_padding_land</dimen>
+ <dimen name="cell_layout_bottom_padding">@dimen/cell_layout_bottom_padding_land</dimen>
+ <!-- Workspace padding -->
+ <dimen name="workspace_left_padding">@dimen/workspace_left_padding_land</dimen>
+ <dimen name="workspace_right_padding">@dimen/workspace_right_padding_land</dimen>
+ <dimen name="workspace_top_padding">@dimen/workspace_top_padding_land</dimen>
+ <dimen name="workspace_bottom_padding">@dimen/workspace_bottom_padding_land</dimen>
+
<dimen name="app_icon_padding_top">6dp</dimen>
<!-- height of the bottom row of controls -->
@@ -72,4 +75,10 @@
<!-- Folders -->
<!-- The size of the image which sits behind the preview of the folder contents -->
<dimen name="folder_preview_size">58dp</dimen>
+
+<!-- Workspace cell size -->
+ <dimen name="workspace_cell_width">@dimen/workspace_cell_width_land</dimen>
+ <dimen name="workspace_cell_height">@dimen/workspace_cell_height_land</dimen>
+ <dimen name="workspace_width_gap">@dimen/workspace_width_gap_land</dimen>
+ <dimen name="workspace_height_gap">@dimen/workspace_height_gap_land</dimen>
</resources>
diff --git a/res/values-land/styles.xml b/res/values-land/styles.xml
index 71ab658..f4519ab 100644
--- a/res/values-land/styles.xml
+++ b/res/values-land/styles.xml
@@ -18,12 +18,6 @@
-->
<resources>
-<!-- Workspace -->
- <style name="WorkspaceScreen">
- <item name="android:layout_width">wrap_content</item>
- <item name="android:layout_height">wrap_content</item>
- </style>
-
<!-- Search Bar -->
<style name="QSBBar">
<item name="android:orientation">vertical</item>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index f1d7bca..73810a9 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Spartieji klavišai"</string>
<string name="group_widgets" msgid="6704978494073105844">"Valdikliai"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Darbalaukio fonai"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Pagrindiniuose ekranuose vietos nebėra."</string>
<string name="out_of_space" msgid="8365249326091984698">"Šiame pagrindiniame ekrane vietos nebėra."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Įtvirtintoje srityje nebėra vietos."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Šis valdiklis per didelis keliems žaidėjams."</string>
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
index 6af92c5..8eaffc4 100644
--- a/res/values-lv/strings.xml
+++ b/res/values-lv/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Saīsnes"</string>
<string name="group_widgets" msgid="6704978494073105844">"Logrīki"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Tapetes"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Sākuma ekrānos vairs nav vietas."</string>
<string name="out_of_space" msgid="8365249326091984698">"Šajā sākuma ekrānā vairs nav vietas."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Režīmā Hotseat vairs nav vietas."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Šis logrīks ir pārāk liels režīmam “hotseat”."</string>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index 361126c..b795c05 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Snarveier"</string>
<string name="group_widgets" msgid="6704978494073105844">"Skrivebordselementer"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Bakgrunner"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Det er ikke mer plass på startsidene dine."</string>
<string name="out_of_space" msgid="8365249326091984698">"Ikke nok plass på skrivebordet."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Dokksonen er full."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Denne modulen er for stor for hotseat-feltet."</string>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index fbd9f31..3758b55 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Sneltoetsen"</string>
<string name="group_widgets" msgid="6704978494073105844">"Widgets"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Achtergronden"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Er is geen ruimte meer op uw startschermen."</string>
<string name="out_of_space" msgid="8365249326091984698">"Er is geen ruimte meer op dit startscherm."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Er is geen ruimte meer op de hotseat."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Deze widget is te groot voor de hotseat."</string>
diff --git a/res/values-port/dimens.xml b/res/values-port/dimens.xml
index b7e8170..969d335 100644
--- a/res/values-port/dimens.xml
+++ b/res/values-port/dimens.xml
@@ -22,12 +22,18 @@
<dimen name="qsb_padding_right">3dp</dimen>
<!-- Workspace -->
- <dimen name="workspace_left_padding">0dp</dimen>
- <dimen name="workspace_right_padding">0dp</dimen>
<!-- Block spacing on each side of the screen. And also padding
for the portals to look right. -->
- <dimen name="workspace_top_padding">6dp</dimen>
- <dimen name="workspace_bottom_padding">0dp</dimen>
+ <dimen name="cell_layout_left_padding">@dimen/cell_layout_left_padding_port</dimen>
+ <dimen name="cell_layout_right_padding">@dimen/cell_layout_right_padding_port</dimen>
+ <dimen name="cell_layout_top_padding">@dimen/cell_layout_top_padding_port</dimen>
+ <dimen name="cell_layout_bottom_padding">@dimen/cell_layout_bottom_padding_port</dimen>
+ <!-- Workspace padding -->
+ <dimen name="workspace_left_padding">@dimen/workspace_left_padding_port</dimen>
+ <dimen name="workspace_right_padding">@dimen/workspace_right_padding_port</dimen>
+ <dimen name="workspace_top_padding">@dimen/workspace_top_padding_port</dimen>
+ <dimen name="workspace_bottom_padding">@dimen/workspace_bottom_padding_port</dimen>
+
<dimen name="workspace_page_spacing">-1dp</dimen>
<!-- AppsCustomize -->
@@ -44,4 +50,10 @@
<dimen name="apps_customize_widget_cell_height_gap">10dp</dimen>
<integer name="apps_customize_widget_cell_count_x">2</integer>
<integer name="apps_customize_widget_cell_count_y">3</integer>
+
+<!-- Workspace cell size -->
+ <dimen name="workspace_cell_width">@dimen/workspace_cell_width_port</dimen>
+ <dimen name="workspace_cell_height">@dimen/workspace_cell_height_port</dimen>
+ <dimen name="workspace_width_gap">@dimen/workspace_width_gap_port</dimen>
+ <dimen name="workspace_height_gap">@dimen/workspace_height_gap_port</dimen>
</resources>
diff --git a/res/values-port/styles.xml b/res/values-port/styles.xml
index 20369c9..386653e 100644
--- a/res/values-port/styles.xml
+++ b/res/values-port/styles.xml
@@ -24,12 +24,6 @@
<item name="android:paddingRight">8dp</item>
</style>
-<!-- Workspace -->
- <style name="WorkspaceScreen">
- <item name="android:layout_width">wrap_content</item>
- <item name="android:layout_height">wrap_content</item>
- </style>
-
<!-- AppsCustomize -->
<style name="TabIndicator.AppsCustomize">
<item name="android:maxWidth">130dp</item>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index 728dbea..8f0a4f3 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Atalhos"</string>
<string name="group_widgets" msgid="6704978494073105844">"Widgets"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Imagens de fundo"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Sem espaço nos Ecrãs principais."</string>
<string name="out_of_space" msgid="8365249326091984698">"Não existe espaço suficiente neste ecrã principal."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Não existe espaço suficiente na barra personalizável."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Este widget é demasiado grande para a barra inferior."</string>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index 2ef8d9b..e5fff9c 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Atalhos"</string>
<string name="group_widgets" msgid="6704978494073105844">"Widgets"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Papéis de parede"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Não há mais espaço nas telas iniciais."</string>
<string name="out_of_space" msgid="8365249326091984698">"Não há mais espaço nesta tela da Página inicial."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Não há mais espaço no hotseat."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Este widget é muito grande para o hotseat."</string>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index 0fca956..957310a 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Comenzi rapide"</string>
<string name="group_widgets" msgid="6704978494073105844">"Obiecte widget"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Imagini de fundal"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Nu mai este loc pe ecranele de pornire."</string>
<string name="out_of_space" msgid="8365249326091984698">"Niciun spaţiu rămas pe acest Ecran de pornire."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Nu mai există loc în bara de lansare rapidă."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Acest widget este prea mare pentru hotseat."</string>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index 4aa80be..f12d681 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Ярлыки"</string>
<string name="group_widgets" msgid="6704978494073105844">"Виджеты"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Обои"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"На главных экранах всё занято."</string>
<string name="out_of_space" msgid="8365249326091984698">"На этом экране всё занято."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Нет свободного места в слоте."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Виджет слишком велик для слота."</string>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index 2463869..55d2b6b 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Odkazy"</string>
<string name="group_widgets" msgid="6704978494073105844">"Miniaplikácie"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Tapety"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Na plochách už nie je miesto."</string>
<string name="out_of_space" msgid="8365249326091984698">"Na tejto ploche už nie je miesto"</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"V časti hotseat už nie je miesto."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Táto miniaplikácia je pre hotseat príliš veľká."</string>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index 915c589..d8df7f4 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Bližnjice"</string>
<string name="group_widgets" msgid="6704978494073105844">"Pripomočki"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Slike za ozadje"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Na začetnih zaslonih ni več prostora."</string>
<string name="out_of_space" msgid="8365249326091984698">"Na tem začetnem zaslonu ni več prostora."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"V vrstici z ikonami ni več prostora."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Ta pripomoček je prevelik za podnožje."</string>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index 808d88e..9aa5aef 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Пречице"</string>
<string name="group_widgets" msgid="6704978494073105844">"Виџети"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Позадине"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Нема више простора на Почетним екранима."</string>
<string name="out_of_space" msgid="8365249326091984698">"Нема више простора на овом почетном екрану."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Нема више простора на траци актуелности."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Овај виџет је превелики за траку актуелности."</string>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index b3ee3e1..46bd262 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Genvägar"</string>
<string name="group_widgets" msgid="6704978494073105844">"Widgetar"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Bakgrundsbilder"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Det finns inte plats för mer på dina startskärmar."</string>
<string name="out_of_space" msgid="8365249326091984698">"Det finns inte plats för mer på den här startsidan."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Utrymmet på Hotseat är fullt."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Denna widget är för stor för Hotseat."</string>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index bb8e6f7..83db081 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Njia za mkato"</string>
<string name="group_widgets" msgid="6704978494073105844">"Wijeti"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Mandhari"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Hakuna nafasi zaidi kwenye skrini zako za nyumbani."</string>
<string name="out_of_space" msgid="8365249326091984698">"Hakuna nafasi katika skrini hii ya nyumbani."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Hakuna nafasi zaidi kwenye eneo kali."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Wijeti hii ni kubwa zaidi kwa hotseat."</string>
diff --git a/res/values-sw340dp/dimens.xml b/res/values-sw340dp/dimens.xml
index 2a2dac6..42fbb47 100644
--- a/res/values-sw340dp/dimens.xml
+++ b/res/values-sw340dp/dimens.xml
@@ -18,14 +18,6 @@
<!-- Drag padding to add to the bottom of drop targets -->
<dimen name="drop_target_drag_padding">20dp</dimen>
-<!-- Workspace -->
- <dimen name="workspace_width_gap">0dp</dimen>
- <dimen name="workspace_height_gap">0dp</dimen>
- <dimen name="workspace_top_padding">8dp</dimen>
- <dimen name="workspace_bottom_padding">8dp</dimen>
- <dimen name="workspace_left_padding">8dp</dimen>
- <dimen name="workspace_right_padding">8dp</dimen>
-
<!-- Hotseat -->
<dimen name="hotseat_width_gap">0dp</dimen>
<dimen name="hotseat_height_gap">0dp</dimen>
@@ -37,4 +29,20 @@
<dimen name="button_bar_width_left_padding">8dp</dimen>
<dimen name="button_bar_width_right_padding">8dp</dimen>
<dimen name="button_bar_height_plus_padding">80dp</dimen>
+
+<!-- CellLayout padding land / port-->
+ <dimen name="cell_layout_left_padding_port">8dp</dimen>
+ <dimen name="cell_layout_left_padding_land">8dp</dimen>
+ <dimen name="cell_layout_right_padding_port">8dp</dimen>
+ <dimen name="cell_layout_right_padding_land">8dp</dimen>
+ <dimen name="cell_layout_top_padding_port">8dp</dimen>
+ <dimen name="cell_layout_top_padding_land">8dp</dimen>
+ <dimen name="cell_layout_bottom_padding_port">8dp</dimen>
+ <dimen name="cell_layout_bottom_padding_land">8dp</dimen>
+
+<!-- Workspace cell size -->
+ <dimen name="workspace_width_gap_land">0dp</dimen>
+ <dimen name="workspace_width_gap_port">0dp</dimen>
+ <dimen name="workspace_height_gap_land">0dp</dimen>
+ <dimen name="workspace_height_gap_port">0dp</dimen>
</resources>
diff --git a/res/values-sw600dp-land/dimens.xml b/res/values-sw600dp-land/dimens.xml
index 7db0a8a..3e18417 100644
--- a/res/values-sw600dp-land/dimens.xml
+++ b/res/values-sw600dp-land/dimens.xml
@@ -22,12 +22,6 @@
<!-- Hotseat -->
<dimen name="hotseat_cell_width">75dp</dimen>
<dimen name="hotseat_cell_height">75dp</dimen>
-
-<!-- Workspace -->
- <dimen name="workspace_cell_width">96dp</dimen>
- <dimen name="workspace_cell_height">86dp</dimen>
- <dimen name="workspace_width_gap">32dp</dimen>
- <dimen name="workspace_height_gap">0dp</dimen>
<dimen name="workspace_icon_text_size">11sp</dimen>
<!-- Folders -->
diff --git a/res/values-sw600dp-port/dimens.xml b/res/values-sw600dp-port/dimens.xml
index 9565992..c813725 100644
--- a/res/values-sw600dp-port/dimens.xml
+++ b/res/values-sw600dp-port/dimens.xml
@@ -17,8 +17,6 @@
<resources>
<!-- Workspace -->
<integer name="app_icon_scale_percent">-1</integer>
- <dimen name="workspace_width_gap">0dp</dimen>
- <dimen name="workspace_height_gap">32dp</dimen>
<!-- AppsCustomize -->
<dimen name="apps_customize_cell_width">96dp</dimen>
diff --git a/res/values-sw600dp/dimens.xml b/res/values-sw600dp/dimens.xml
index a0d7ec8..0797632 100644
--- a/res/values-sw600dp/dimens.xml
+++ b/res/values-sw600dp/dimens.xml
@@ -20,10 +20,6 @@
<dimen name="app_icon_drawable_padding">3dp</dimen>
<dimen name="app_icon_padding_top">4dp</dimen>
-<!-- Workspace -->
- <dimen name="workspace_cell_width">96dp</dimen>
- <dimen name="workspace_cell_height">96dp</dimen>
-
<!-- Hotseat -->
<dimen name="hotseat_width_gap">-1dp</dimen>
<dimen name="hotseat_height_gap">-1dp</dimen>
@@ -50,4 +46,15 @@
<dimen name="apps_customize_tab_bar_margin_top">8dp</dimen>
<dimen name="apps_customize_widget_cell_width_gap">36dp</dimen>
<dimen name="apps_customize_widget_cell_height_gap">36dp</dimen>
+
+<!-- Workspace cell size -->
+ <dimen name="workspace_cell_width_land">96dp</dimen>
+ <dimen name="workspace_cell_width_port">96dp</dimen>
+ <dimen name="workspace_cell_height_land">86dp</dimen>
+ <dimen name="workspace_cell_height_port">96dp</dimen>
+ <dimen name="workspace_width_gap_land">32dp</dimen>
+ <dimen name="workspace_width_gap_port">0dp</dimen>
+ <dimen name="workspace_height_gap_land">0dp</dimen>
+ <dimen name="workspace_height_gap_port">32dp</dimen>
+
</resources>
diff --git a/res/values-sw720dp-land/dimens.xml b/res/values-sw720dp-land/dimens.xml
index e7fe32c..8252450 100644
--- a/res/values-sw720dp-land/dimens.xml
+++ b/res/values-sw720dp-land/dimens.xml
@@ -22,13 +22,6 @@
<dimen name="apps_customize_pageLayoutPaddingRight">16dp</dimen>
<!-- Workspace -->
- <dimen name="workspace_left_padding">24dip</dimen>
- <dimen name="workspace_right_padding">24dip</dimen>
- <!-- We need padding on the screens for portals to look right -->
- <dimen name="workspace_top_padding">12dip</dimen>
- <dimen name="workspace_bottom_padding">12dip</dimen>
- <dimen name="workspace_width_gap">32dp</dimen>
- <dimen name="workspace_height_gap">2dp</dimen>
<dimen name="workspace_page_spacing">50dp</dimen>
<!-- the area at the edge of the screen that makes the workspace go left
diff --git a/res/values-sw720dp-port/dimens.xml b/res/values-sw720dp-port/dimens.xml
index 2e0d74a..9cf37ff 100644
--- a/res/values-sw720dp-port/dimens.xml
+++ b/res/values-sw720dp-port/dimens.xml
@@ -31,13 +31,6 @@
<!-- the area at the edge of the screen that makes the workspace go left
or right while you're dragging. -->
<dimen name="scroll_zone">40dp</dimen>
-
- <dimen name="workspace_left_padding">15dip</dimen>
- <dimen name="workspace_right_padding">15dip</dimen>
- <dimen name="workspace_top_padding">25dip</dimen>
- <dimen name="workspace_bottom_padding">25dip</dimen>
- <dimen name="workspace_width_gap">0dp</dimen>
- <dimen name="workspace_height_gap">32dp</dimen>
<dimen name="workspace_page_spacing">24dp</dimen>
<integer name="apps_customize_cling_focused_x">2</integer>
diff --git a/res/values-sw720dp/dimens.xml b/res/values-sw720dp/dimens.xml
index 62bf9a8..37f62b8 100644
--- a/res/values-sw720dp/dimens.xml
+++ b/res/values-sw720dp/dimens.xml
@@ -24,8 +24,6 @@
<!-- This should be @dimen/qsb_bar_height - @dimen/workspace_top_padding
to fix the extra space given to draw portals -->
<dimen name="workspace_content_large_only_top_margin">36dp</dimen>
- <dimen name="workspace_cell_width">96dip</dimen>
- <dimen name="workspace_cell_height">96dip</dimen>
<dimen name="folder_cell_width">96dp</dimen>
<dimen name="folder_cell_height">96dp</dimen>
@@ -53,4 +51,34 @@
the drag view should be offset from the position of the original view. -->
<dimen name="dragViewOffsetX">0dp</dimen>
<dimen name="dragViewOffsetY">0dp</dimen>
+
+<!-- CellLayout padding land / port-->
+ <dimen name="cell_layout_left_padding_port">15dp</dimen>
+ <dimen name="cell_layout_left_padding_land">24dp</dimen>
+ <dimen name="cell_layout_right_padding_port">15dp</dimen>
+ <dimen name="cell_layout_right_padding_land">24dp</dimen>
+ <dimen name="cell_layout_top_padding_port">25dp</dimen>
+ <dimen name="cell_layout_top_padding_land">12dp</dimen>
+ <dimen name="cell_layout_bottom_padding_port">25dp</dimen>
+ <dimen name="cell_layout_bottom_padding_land">12dp</dimen>
+
+<!-- Workspace padding -->
+ <dimen name="workspace_left_padding_port">0dp</dimen>
+ <dimen name="workspace_left_padding_land">0dp</dimen>
+ <dimen name="workspace_right_padding_port">0dp</dimen>
+ <dimen name="workspace_right_padding_land">0dp</dimen>
+ <dimen name="workspace_top_padding_port">@dimen/workspace_content_large_only_top_margin</dimen>
+ <dimen name="workspace_top_padding_land">@dimen/workspace_content_large_only_top_margin</dimen>
+ <dimen name="workspace_bottom_padding_port">0dp</dimen>
+ <dimen name="workspace_bottom_padding_land">0dp</dimen>
+
+<!-- Workspace cell size -->
+ <dimen name="workspace_cell_width_land">96dp</dimen>
+ <dimen name="workspace_cell_width_port">96dp</dimen>
+ <dimen name="workspace_cell_height_land">96dp</dimen>
+ <dimen name="workspace_cell_height_port">96dp</dimen>
+ <dimen name="workspace_width_gap_land">32dp</dimen>
+ <dimen name="workspace_width_gap_port">0dp</dimen>
+ <dimen name="workspace_height_gap_land">2dp</dimen>
+ <dimen name="workspace_height_gap_port">32dp</dimen>
</resources>
diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml
index 1e70ead..ba6d0c6 100644
--- a/res/values-th/strings.xml
+++ b/res/values-th/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"ทางลัด"</string>
<string name="group_widgets" msgid="6704978494073105844">"วิดเจ็ต"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"วอลเปเปอร์"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"ไม่มีที่ว่างในหน้าจอหลักของคุณ"</string>
<string name="out_of_space" msgid="8365249326091984698">"ไม่มีที่ว่างในหน้าจอหลักนี้"</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"ไม่มีที่ว่างใน hotseat"</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"วิดเจ็ตนี้มีขนาดใหญ่เกินไปสำหรับ hotseat"</string>
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
index 49167fa..9e79b89 100644
--- a/res/values-tl/strings.xml
+++ b/res/values-tl/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Mga Shortcut"</string>
<string name="group_widgets" msgid="6704978494073105844">"Mga Widget"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Mga Wallpaper"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Wala nang puwang sa iyong mga Home screen."</string>
<string name="out_of_space" msgid="8365249326091984698">"Wala nang lugar sa Home screen na ito."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Wala nang lugar sa hotseat."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Masyadong malaki ang widget na ito para sa hotseat."</string>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index da08e56..81ba10a 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Kısayollar"</string>
<string name="group_widgets" msgid="6704978494073105844">"Widget\'lar"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Duvar Kağıtları"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Ana ekranlarınızda başka yer kalmadı."</string>
<string name="out_of_space" msgid="8365249326091984698">"Bu Ana Sayfada yer yok."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Favori kısayollarda yer yok"</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Bu widget, hotseat için çok büyük."</string>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index a8b094d..bf8f165 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Ярлики"</string>
<string name="group_widgets" msgid="6704978494073105844">"Віджети"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Фонові мал."</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"На головних екранах більше немає місця."</string>
<string name="out_of_space" msgid="8365249326091984698">"Немає більше місця на гол. екрані."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"На гарячій панелі більше немає місця."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Цей віджет завеликий для Hotseat."</string>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index a777208..345e4b2 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Lối tắt"</string>
<string name="group_widgets" msgid="6704978494073105844">"Tiện ích"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Hình nền"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Không còn chỗ trên Màn hình chính của bạn."</string>
<string name="out_of_space" msgid="8365249326091984698">"Không còn khoảng trống trên Màn hình chính này."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Không còn chỗ trên vùng gắn."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Tiện ích này quá lớn cho điểm giới hạn."</string>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index 800ceb4..e5c072e 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"捷徑"</string>
<string name="group_widgets" msgid="6704978494073105844">"小工具"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"桌布"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"主螢幕已無空間。"</string>
<string name="out_of_space" msgid="8365249326091984698">"主螢幕已無空間"</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"停駐區已無可用空間。"</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"這個小工具過大,超出可用的空間。"</string>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index 5f90995..ddff5b7 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -40,8 +40,7 @@
<string name="group_shortcuts" msgid="9133529424900391877">"Izinqamuleli"</string>
<string name="group_widgets" msgid="6704978494073105844">"Izinqunjwana"</string>
<string name="group_wallpapers" msgid="1568191644272224858">"Amaphephadonga"</string>
- <!-- no translation found for completely_out_of_space (1759078539443491182) -->
- <skip />
+ <string name="completely_out_of_space" msgid="1759078539443491182">"Akusenagumbi ezikrinini zakho zekhaya."</string>
<string name="out_of_space" msgid="8365249326091984698">"Asisekho isikhala kulesi sikrini Sasekhaya."</string>
<string name="hotseat_out_of_space" msgid="6304886797358479361">"Akusenagumbi ku-hotseat."</string>
<string name="invalid_hotseat_item" msgid="6545340627805449250">"Le wijethi inkulu kakhulu ukuba ibe esihlalweni esishisayo"</string>
diff --git a/res/values/config.xml b/res/values/config.xml
index 1890125..bfd2bf5 100644
--- a/res/values/config.xml
+++ b/res/values/config.xml
@@ -42,8 +42,6 @@
<!-- The transition duration for the background of the drop targets -->
<integer name="config_dropTargetBgTransitionDuration">0</integer>
- <integer name="config_crosshairsFadeInTime">600</integer>
-
<!-- The duration (in ms) of the fade animation on the object outlines, used when
we are dragging objects around on the home screen. -->
<integer name="config_dragOutlineFadeTime">900</integer>
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 45e544a..d3b9c1e 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -30,10 +30,6 @@
<dimen name="qsb_padding_left">0dp</dimen>
<dimen name="qsb_padding_right">0dp</dimen>
<dimen name="search_bar_height">40dp</dimen>
- <dimen name="workspace_cell_width">80dp</dimen>
- <dimen name="workspace_cell_height">100dp</dimen>
- <dimen name="workspace_width_gap">-1dp</dimen>
- <dimen name="workspace_height_gap">-1dp</dimen>
<dimen name="workspace_max_gap">16dp</dimen>
<dimen name="folder_cell_width">74dp</dimen>
<dimen name="folder_cell_height">82dp</dimen>
@@ -119,4 +115,34 @@
<dimen name="folder_name_padding">10dp</dimen>
<dimen name="folder_width_gap">0dp</dimen>
<dimen name="folder_height_gap">0dp</dimen>
+
+<!-- CellLayout padding -->
+ <dimen name="cell_layout_left_padding_port">0dp</dimen>
+ <dimen name="cell_layout_left_padding_land">0dp</dimen>
+ <dimen name="cell_layout_right_padding_port">0dp</dimen>
+ <dimen name="cell_layout_right_padding_land">0dp</dimen>
+ <dimen name="cell_layout_top_padding_port">6dp</dimen>
+ <dimen name="cell_layout_top_padding_land">0dp</dimen>
+ <dimen name="cell_layout_bottom_padding_port">0dp</dimen>
+ <dimen name="cell_layout_bottom_padding_land">0dp</dimen>
+
+<!-- Workspace padding -->
+ <dimen name="workspace_left_padding_port">0dp</dimen>
+ <dimen name="workspace_left_padding_land">@dimen/qsb_bar_height</dimen>
+ <dimen name="workspace_right_padding_port">0dp</dimen>
+ <dimen name="workspace_right_padding_land">@dimen/button_bar_height</dimen>
+ <dimen name="workspace_top_padding_port">@dimen/qsb_bar_height_inset</dimen>
+ <dimen name="workspace_top_padding_land">0dp</dimen>
+ <dimen name="workspace_bottom_padding_port">@dimen/button_bar_height</dimen>
+ <dimen name="workspace_bottom_padding_land">0dp</dimen>
+
+<!-- Workspace cell size -->
+ <dimen name="workspace_cell_width_land">106dp</dimen>
+ <dimen name="workspace_cell_width_port">80dp</dimen>
+ <dimen name="workspace_cell_height_land">74dp</dimen>
+ <dimen name="workspace_cell_height_port">100dp</dimen>
+ <dimen name="workspace_width_gap_land">-1dp</dimen>
+ <dimen name="workspace_width_gap_port">-1dp</dimen>
+ <dimen name="workspace_height_gap_land">-1dp</dimen>
+ <dimen name="workspace_height_gap_port">-1dp</dimen>
</resources>
diff --git a/src/com/android/launcher2/AppsCustomizePagedView.java b/src/com/android/launcher2/AppsCustomizePagedView.java
index 00a35a5..3936e59 100644
--- a/src/com/android/launcher2/AppsCustomizePagedView.java
+++ b/src/com/android/launcher2/AppsCustomizePagedView.java
@@ -706,7 +706,7 @@
// Start the drag
alphaClipPaint = null;
- mLauncher.lockScreenOrientationOnLargeUI();
+ mLauncher.lockScreenOrientation();
mLauncher.getWorkspace().onDragStartedWithItem(createItemInfo, outline, alphaClipPaint);
mDragController.startDrag(image, preview, this, createItemInfo,
DragController.DRAG_ACTION_COPY, null, scale);
@@ -758,11 +758,16 @@
// drop in Workspace
mLauncher.exitSpringLoadedDragMode();
}
- mLauncher.unlockScreenOrientationOnLargeUI();
+ mLauncher.unlockScreenOrientation();
}
@Override
- public void onLauncherTransitionStart(Launcher l, boolean animated, boolean toWorkspace) {
+ public View getContent() {
+ return null;
+ }
+
+ @Override
+ public void onLauncherTransitionPrepare(Launcher l, boolean animated, boolean toWorkspace) {
mInTransition = true;
if (toWorkspace) {
cancelAllTasks();
@@ -770,8 +775,7 @@
}
@Override
- public View getContent() {
- return null;
+ public void onLauncherTransitionStart(Launcher l, boolean animated, boolean toWorkspace) {
}
@Override
@@ -1421,7 +1425,7 @@
float alpha;
- if (!LauncherApplication.isScreenLarge() || scrollProgress < 0) {
+ if (scrollProgress < 0) {
alpha = scrollProgress < 0 ? mAlphaInterpolator.getInterpolation(
1 - Math.abs(scrollProgress)) : 1.0f;
} else {
diff --git a/src/com/android/launcher2/AppsCustomizeTabHost.java b/src/com/android/launcher2/AppsCustomizeTabHost.java
index 34b7c09..7a2c247 100644
--- a/src/com/android/launcher2/AppsCustomizeTabHost.java
+++ b/src/com/android/launcher2/AppsCustomizeTabHost.java
@@ -164,8 +164,9 @@
}
public boolean onInterceptTouchEvent(MotionEvent ev) {
- // If we are mid transition then intercept touch events here so we can ignore them
- if (mInTransition) {
+ // If we are mid transitioning to the workspace, then intercept touch events here so we
+ // can ignore them, otherwise we just let all apps handle the touch events.
+ if (mInTransition && mTransitioningToWorkspace) {
return true;
}
return super.onInterceptTouchEvent(ev);
@@ -173,11 +174,9 @@
@Override
public boolean onTouchEvent(MotionEvent event) {
- // Allow touch events to fall through if we are transitioning to the workspace
- if (mInTransition) {
- if (mTransitioningToWorkspace) {
- return super.onTouchEvent(event);
- }
+ // Allow touch events to fall through to the workspace if we are transitioning there
+ if (mInTransition && mTransitioningToWorkspace) {
+ return super.onTouchEvent(event);
}
// Intercept all touch events up to the bottom of the AppsCustomizePane so they do not fall
@@ -376,8 +375,8 @@
/* LauncherTransitionable overrides */
@Override
- public void onLauncherTransitionStart(Launcher l, boolean animated, boolean toWorkspace) {
- mAppsCustomizePane.onLauncherTransitionStart(l, animated, toWorkspace);
+ public void onLauncherTransitionPrepare(Launcher l, boolean animated, boolean toWorkspace) {
+ mAppsCustomizePane.onLauncherTransitionPrepare(l, animated, toWorkspace);
mInTransition = true;
mTransitioningToWorkspace = toWorkspace;
@@ -404,7 +403,10 @@
mAppsCustomizePane.reset();
mResetAfterTransition = false;
}
+ }
+ @Override
+ public void onLauncherTransitionStart(Launcher l, boolean animated, boolean toWorkspace) {
if (animated) {
enableAndBuildHardwareLayer();
}
diff --git a/src/com/android/launcher2/CellLayout.java b/src/com/android/launcher2/CellLayout.java
index a19ccea..24e4047 100644
--- a/src/com/android/launcher2/CellLayout.java
+++ b/src/com/android/launcher2/CellLayout.java
@@ -58,8 +58,6 @@
static final String TAG = "CellLayout";
private Launcher mLauncher;
- private int mOriginalCellWidth;
- private int mOriginalCellHeight;
private int mCellWidth;
private int mCellHeight;
@@ -122,10 +120,6 @@
private BubbleTextView mPressedOrFocusedIcon;
- private Drawable mCrosshairsDrawable = null;
- private InterruptibleInOutAnimator mCrosshairsAnimator = null;
- private float mCrosshairsVisibility = 0.0f;
-
private HashMap<CellLayout.LayoutParams, Animator> mReorderAnimators = new
HashMap<CellLayout.LayoutParams, Animator>();
private HashMap<View, ReorderHintAnimation>
@@ -182,10 +176,8 @@
TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.CellLayout, defStyle, 0);
- mOriginalCellWidth =
- mCellWidth = a.getDimensionPixelSize(R.styleable.CellLayout_cellWidth, 10);
- mOriginalCellHeight =
- mCellHeight = a.getDimensionPixelSize(R.styleable.CellLayout_cellHeight, 10);
+ mCellWidth = a.getDimensionPixelSize(R.styleable.CellLayout_cellWidth, 10);
+ mCellHeight = a.getDimensionPixelSize(R.styleable.CellLayout_cellHeight, 10);
mWidthGap = mOriginalWidthGap = a.getDimensionPixelSize(R.styleable.CellLayout_widthGap, 0);
mHeightGap = mOriginalHeightGap = a.getDimensionPixelSize(R.styleable.CellLayout_heightGap, 0);
mMaxGap = a.getDimensionPixelSize(R.styleable.CellLayout_maxGap, 0);
@@ -227,19 +219,8 @@
// Initialize the data structures used for the drag visualization.
- mCrosshairsDrawable = res.getDrawable(R.drawable.gardening_crosshairs);
mEaseOutInterpolator = new DecelerateInterpolator(2.5f); // Quint ease out
- // Set up the animation for fading the crosshairs in and out
- int animDuration = res.getInteger(R.integer.config_crosshairsFadeInTime);
- mCrosshairsAnimator = new InterruptibleInOutAnimator(animDuration, 0.0f, 1.0f);
- mCrosshairsAnimator.getAnimator().addUpdateListener(new AnimatorUpdateListener() {
- public void onAnimationUpdate(ValueAnimator animation) {
- mCrosshairsVisibility = ((Float) animation.getAnimatedValue()).floatValue();
- invalidate();
- }
- });
- mCrosshairsAnimator.getAnimator().setInterpolator(mEaseOutInterpolator);
mDragCell[0] = mDragCell[1] = -1;
for (int i = 0; i < mDragOutlines.length; i++) {
@@ -422,38 +403,6 @@
bg.draw(canvas);
}
- if (mCrosshairsVisibility > 0.0f) {
- final int countX = mCountX;
- final int countY = mCountY;
-
- final float MAX_ALPHA = 0.4f;
- final int MAX_VISIBLE_DISTANCE = 600;
- final float DISTANCE_MULTIPLIER = 0.002f;
-
- final Drawable d = mCrosshairsDrawable;
- final int width = d.getIntrinsicWidth();
- final int height = d.getIntrinsicHeight();
-
- int x = getPaddingLeft() - (mWidthGap / 2) - (width / 2);
- for (int col = 0; col <= countX; col++) {
- int y = getPaddingTop() - (mHeightGap / 2) - (height / 2);
- for (int row = 0; row <= countY; row++) {
- mTmpPointF.set(x - mDragCenter.x, y - mDragCenter.y);
- float dist = mTmpPointF.length();
- // Crosshairs further from the drag point are more faint
- float alpha = Math.min(MAX_ALPHA,
- DISTANCE_MULTIPLIER * (MAX_VISIBLE_DISTANCE - dist));
- if (alpha > 0.0f) {
- d.setBounds(x, y, x + width, y + height);
- d.setAlpha((int) (alpha * 255 * mCrosshairsVisibility));
- d.draw(canvas);
- }
- y += mCellHeight + mHeightGap;
- }
- x += mCellWidth + mWidthGap;
- }
- }
-
final Paint paint = mDragOutlinePaint;
for (int i = 0; i < mDragOutlines.length; i++) {
final float alpha = mDragOutlineAlphas[i];
@@ -961,6 +910,54 @@
return r;
}
+ final int LANDSCAPE = 0;
+ final int PORTRAIT = 1;
+ void getCellLayoutMetrics(int measureWidth, int measureHeight, int orientation, Rect metrics) {
+ int numWidthGaps = mCountX - 1;
+ int numHeightGaps = mCountY - 1;
+
+ int widthGap;
+ int heightGap;
+ int cellWidth;
+ int cellHeight;
+ int paddingLeft;
+ int paddingRight;
+ int paddingTop;
+ int paddingBottom;
+
+ Resources res = getContext().getResources();
+ if (orientation == LANDSCAPE) {
+ cellWidth = res.getDimensionPixelSize(R.dimen.workspace_cell_width_land);
+ cellHeight = res.getDimensionPixelSize(R.dimen.workspace_cell_height_land);
+ widthGap = res.getDimensionPixelSize(R.dimen.workspace_width_gap_land);
+ heightGap = res.getDimensionPixelSize(R.dimen.workspace_height_gap_land);
+ paddingLeft = res.getDimensionPixelSize(R.dimen.cell_layout_left_padding_land);
+ paddingRight = res.getDimensionPixelSize(R.dimen.cell_layout_right_padding_land);
+ paddingTop = res.getDimensionPixelSize(R.dimen.cell_layout_top_padding_land);
+ paddingBottom = res.getDimensionPixelSize(R.dimen.cell_layout_bottom_padding_land);
+ } else {
+ // PORTRAIT
+ cellWidth = res.getDimensionPixelSize(R.dimen.workspace_cell_width_port);
+ cellHeight = res.getDimensionPixelSize(R.dimen.workspace_cell_height_port);
+ widthGap = res.getDimensionPixelSize(R.dimen.workspace_width_gap_port);
+ heightGap = res.getDimensionPixelSize(R.dimen.workspace_height_gap_port);
+ paddingLeft = res.getDimensionPixelSize(R.dimen.cell_layout_left_padding_port);
+ paddingRight = res.getDimensionPixelSize(R.dimen.cell_layout_right_padding_port);
+ paddingTop = res.getDimensionPixelSize(R.dimen.cell_layout_top_padding_port);
+ paddingBottom = res.getDimensionPixelSize(R.dimen.cell_layout_bottom_padding_port);
+ }
+
+ if (widthGap < 0 || heightGap < 0) {
+ int hSpace = measureWidth - paddingLeft - paddingRight;
+ int vSpace = measureHeight - paddingTop - paddingBottom;
+ int hFreeSpace = hSpace - (mCountX * cellWidth);
+ int vFreeSpace = vSpace - (mCountY * cellHeight);
+ widthGap = Math.min(mMaxGap, numWidthGaps > 0 ? (hFreeSpace / numWidthGaps) : 0);
+ heightGap = Math.min(mMaxGap, numHeightGaps > 0 ? (vFreeSpace / numHeightGaps) : 0);
+ }
+ metrics.set(cellWidth, cellHeight, widthGap, heightGap);
+ }
+
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
// TODO: currently ignoring padding
@@ -979,10 +976,10 @@
int numHeightGaps = mCountY - 1;
if (mOriginalWidthGap < 0 || mOriginalHeightGap < 0) {
- int hSpace = widthSpecSize - getPaddingLeft() - getPaddingRight();
- int vSpace = heightSpecSize - getPaddingTop() - getPaddingBottom();
- int hFreeSpace = hSpace - (mCountX * mOriginalCellWidth);
- int vFreeSpace = vSpace - (mCountY * mOriginalCellHeight);
+ int hSpace = widthSpecSize - mPaddingLeft - mPaddingRight;
+ int vSpace = heightSpecSize - mPaddingTop - mPaddingBottom;
+ int hFreeSpace = hSpace - (mCountX * mCellWidth);
+ int vFreeSpace = vSpace - (mCountY * mCellHeight);
mWidthGap = Math.min(mMaxGap, numWidthGaps > 0 ? (hFreeSpace / numWidthGaps) : 0);
mHeightGap = Math.min(mMaxGap,numHeightGaps > 0 ? (vFreeSpace / numHeightGaps) : 0);
mShortcutsAndWidgets.setCellDimensions(mCellWidth, mCellHeight, mWidthGap, mHeightGap);
@@ -1205,9 +1202,6 @@
}
if (dragOutline == null && v == null) {
- if (mCrosshairsDrawable != null) {
- invalidate();
- }
return;
}
@@ -1262,11 +1256,6 @@
mDragOutlineAnims[mDragOutlineCurrent].setTag(dragOutline);
mDragOutlineAnims[mDragOutlineCurrent].animateIn();
}
-
- // If we are drawing crosshairs, the entire CellLayout needs to be invalidated
- if (mCrosshairsDrawable != null) {
- invalidate();
- }
}
public void clearDragOutlines() {
@@ -2545,12 +2534,6 @@
*/
void onDragEnter() {
mDragEnforcer.onDragEnter();
- if (!mDragging) {
- // Fade in the drag indicators
- if (mCrosshairsAnimator != null) {
- mCrosshairsAnimator.animateIn();
- }
- }
mDragging = true;
}
@@ -2564,11 +2547,6 @@
// Guard against that case.
if (mDragging) {
mDragging = false;
-
- // Fade out the drag indicators
- if (mCrosshairsAnimator != null) {
- mCrosshairsAnimator.animateOut();
- }
}
// Invalidate the drag data
diff --git a/src/com/android/launcher2/DragController.java b/src/com/android/launcher2/DragController.java
index c9bebe3..d63743f 100644
--- a/src/com/android/launcher2/DragController.java
+++ b/src/com/android/launcher2/DragController.java
@@ -517,6 +517,7 @@
mScrollState = SCROLL_OUTSIDE_ZONE;
mScrollRunnable.setDirection(SCROLL_RIGHT);
mDragScroller.onExitScrollArea();
+ mLauncher.getDragLayer().onExitScrollArea();
}
}
@@ -561,6 +562,7 @@
if (mScrollState == SCROLL_OUTSIDE_ZONE) {
mScrollState = SCROLL_WAITING_IN_ZONE;
if (mDragScroller.onEnterScrollArea(x, y, SCROLL_LEFT)) {
+ mLauncher.getDragLayer().onEnterScrollArea(SCROLL_LEFT);
mScrollRunnable.setDirection(SCROLL_LEFT);
mHandler.postDelayed(mScrollRunnable, delay);
}
@@ -569,6 +571,7 @@
if (mScrollState == SCROLL_OUTSIDE_ZONE) {
mScrollState = SCROLL_WAITING_IN_ZONE;
if (mDragScroller.onEnterScrollArea(x, y, SCROLL_RIGHT)) {
+ mLauncher.getDragLayer().onEnterScrollArea(SCROLL_RIGHT);
mScrollRunnable.setDirection(SCROLL_RIGHT);
mHandler.postDelayed(mScrollRunnable, delay);
}
@@ -831,6 +834,7 @@
mScrollState = SCROLL_OUTSIDE_ZONE;
mDistanceSinceScroll = 0;
mDragScroller.onExitScrollArea();
+ mLauncher.getDragLayer().onExitScrollArea();
if (isDragging()) {
// Force an update so that we can requeue the scroller if necessary
diff --git a/src/com/android/launcher2/DragLayer.java b/src/com/android/launcher2/DragLayer.java
index 69ed053..379e599 100644
--- a/src/com/android/launcher2/DragLayer.java
+++ b/src/com/android/launcher2/DragLayer.java
@@ -23,7 +23,11 @@
import android.animation.ValueAnimator.AnimatorUpdateListener;
import android.content.Context;
import android.content.res.Resources;
+import android.graphics.Canvas;
+import android.graphics.PorterDuff;
+import android.graphics.PorterDuffColorFilter;
import android.graphics.Rect;
+import android.graphics.drawable.Drawable;
import android.util.AttributeSet;
import android.view.KeyEvent;
import android.view.MotionEvent;
@@ -85,6 +89,9 @@
setMotionEventSplittingEnabled(false);
setChildrenDrawingOrderEnabled(true);
setOnHierarchyChangeListener(this);
+
+ mLeftHoverDrawable = getResources().getDrawable(R.drawable.page_hover_left_holo);
+ mRightHoverDrawable = getResources().getDrawable(R.drawable.page_hover_right_holo);
}
public void setup(Launcher launcher, DragController controller) {
@@ -720,4 +727,44 @@
return i;
}
}
+
+ private boolean mInScrollArea;
+ private Drawable mLeftHoverDrawable;
+ private Drawable mRightHoverDrawable;
+
+ void onEnterScrollArea(int direction) {
+ mInScrollArea = true;
+ invalidate();
+ }
+
+ void onExitScrollArea() {
+ mInScrollArea = false;
+ invalidate();
+ }
+
+ @Override
+ protected void dispatchDraw(Canvas canvas) {
+ super.dispatchDraw(canvas);
+
+ if (mInScrollArea && !LauncherApplication.isScreenLarge()) {
+ Workspace workspace = mLauncher.getWorkspace();
+ int width = workspace.getWidth();
+ Rect childRect = new Rect();
+ getDescendantRectRelativeToSelf(workspace.getChildAt(0), childRect);
+
+ int page = workspace.getNextPage();
+ CellLayout leftPage = (CellLayout) workspace.getChildAt(page - 1);
+ CellLayout rightPage = (CellLayout) workspace.getChildAt(page + 1);
+
+ if (leftPage != null && leftPage.getIsDragOverlapping()) {
+ mLeftHoverDrawable.setBounds(0, childRect.top,
+ mLeftHoverDrawable.getIntrinsicWidth(), childRect.bottom);
+ mLeftHoverDrawable.draw(canvas);
+ } else if (rightPage != null && rightPage.getIsDragOverlapping()) {
+ mRightHoverDrawable.setBounds(width - mRightHoverDrawable.getIntrinsicWidth(),
+ childRect.top, width, childRect.bottom);
+ mRightHoverDrawable.draw(canvas);
+ }
+ }
+ }
}
diff --git a/src/com/android/launcher2/InstallShortcutReceiver.java b/src/com/android/launcher2/InstallShortcutReceiver.java
index eda82e0..66b3f5f 100644
--- a/src/com/android/launcher2/InstallShortcutReceiver.java
+++ b/src/com/android/launcher2/InstallShortcutReceiver.java
@@ -113,6 +113,10 @@
if (intent != null) {
if (intent.getAction() == null) {
intent.setAction(Intent.ACTION_VIEW);
+ } else if (intent.getAction().equals(Intent.ACTION_MAIN) &&
+ intent.getCategories().contains(Intent.CATEGORY_LAUNCHER)) {
+ intent.addFlags(
+ Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
}
// By default, we allow for duplicate entries (located in
diff --git a/src/com/android/launcher2/Launcher.java b/src/com/android/launcher2/Launcher.java
index 2829e3c..fb27d02 100644
--- a/src/com/android/launcher2/Launcher.java
+++ b/src/com/android/launcher2/Launcher.java
@@ -568,7 +568,13 @@
if (isWidgetDrop) {
int appWidgetId = data != null ?
data.getIntExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, -1) : -1;
- completeTwoStageWidgetDrop(resultCode, appWidgetId);
+ if (appWidgetId < 0) {
+ Log.e(TAG, "Error: appWidgetId (EXTRA_APPWIDGET_ID) was not returned from the \\" +
+ "widget configuration activity.");
+ completeTwoStageWidgetDrop(RESULT_CANCELED, appWidgetId);
+ } else {
+ completeTwoStageWidgetDrop(resultCode, appWidgetId);
+ }
return;
}
@@ -2166,6 +2172,12 @@
}
}
+ private void dispatchOnLauncherTransitionPrepare(View v, boolean animated, boolean toWorkspace) {
+ if (v instanceof LauncherTransitionable) {
+ ((LauncherTransitionable) v).onLauncherTransitionPrepare(this, animated, toWorkspace);
+ }
+ }
+
private void dispatchOnLauncherTransitionStart(View v, boolean animated, boolean toWorkspace) {
if (v instanceof LauncherTransitionable) {
((LauncherTransitionable) v).onLauncherTransitionStart(this, animated, toWorkspace);
@@ -2246,7 +2258,7 @@
final int fadeDuration = res.getInteger(R.integer.config_appsCustomizeFadeInTime);
final float scale = (float) res.getInteger(R.integer.config_appsCustomizeZoomScaleFactor);
final View fromView = mWorkspace;
- final View toView = mAppsCustomizeTabHost;
+ final AppsCustomizeTabHost toView = mAppsCustomizeTabHost;
final int startDelay =
res.getInteger(R.integer.config_workspaceAppsCustomizeAnimationStagger);
@@ -2326,8 +2338,8 @@
boolean delayAnim = false;
final ViewTreeObserver observer;
- dispatchOnLauncherTransitionStart(fromView, animated, false);
- dispatchOnLauncherTransitionStart(toView, animated, false);
+ dispatchOnLauncherTransitionPrepare(fromView, animated, false);
+ dispatchOnLauncherTransitionPrepare(toView, animated, false);
// If any of the objects being animated haven't been measured/laid out
// yet, delay the animation until we get a layout pass
@@ -2351,6 +2363,8 @@
if (mStateAnimation == stateAnimation) {
// Need to update pivots for zoom if layout changed
setPivotsForZoom(toView, scale);
+ dispatchOnLauncherTransitionStart(fromView, animated, false);
+ dispatchOnLauncherTransitionStart(toView, animated, false);
mStateAnimation.start();
}
}
@@ -2361,6 +2375,8 @@
observer.addOnGlobalLayoutListener(delayedStart);
} else {
setPivotsForZoom(toView, scale);
+ dispatchOnLauncherTransitionStart(fromView, animated, false);
+ dispatchOnLauncherTransitionStart(toView, animated, false);
mStateAnimation.start();
}
} else {
@@ -2376,8 +2392,10 @@
mWorkspace.hideScrollingIndicator(true);
hideDockDivider();
}
+ dispatchOnLauncherTransitionPrepare(fromView, animated, false);
dispatchOnLauncherTransitionStart(fromView, animated, false);
dispatchOnLauncherTransitionEnd(fromView, animated, false);
+ dispatchOnLauncherTransitionPrepare(toView, animated, false);
dispatchOnLauncherTransitionStart(toView, animated, false);
dispatchOnLauncherTransitionEnd(toView, animated, false);
updateWallpaperVisibility(false);
@@ -2442,8 +2460,8 @@
mStateAnimation = new AnimatorSet();
- dispatchOnLauncherTransitionStart(fromView, animated, true);
- dispatchOnLauncherTransitionStart(toView, animated, true);
+ dispatchOnLauncherTransitionPrepare(fromView, animated, true);
+ dispatchOnLauncherTransitionPrepare(toView, animated, true);
mStateAnimation.addListener(new AnimatorListenerAdapter() {
@Override
@@ -2452,7 +2470,9 @@
fromView.setVisibility(View.GONE);
dispatchOnLauncherTransitionEnd(fromView, animated, true);
dispatchOnLauncherTransitionEnd(toView, animated, true);
- mWorkspace.hideScrollingIndicator(false);
+ if (mWorkspace != null) {
+ mWorkspace.hideScrollingIndicator(false);
+ }
if (onCompleteRunnable != null) {
onCompleteRunnable.run();
}
@@ -2463,11 +2483,15 @@
if (workspaceAnim != null) {
mStateAnimation.play(workspaceAnim);
}
+ dispatchOnLauncherTransitionStart(fromView, animated, true);
+ dispatchOnLauncherTransitionStart(toView, animated, true);
mStateAnimation.start();
} else {
fromView.setVisibility(View.GONE);
+ dispatchOnLauncherTransitionPrepare(fromView, animated, true);
dispatchOnLauncherTransitionStart(fromView, animated, true);
dispatchOnLauncherTransitionEnd(fromView, animated, true);
+ dispatchOnLauncherTransitionPrepare(toView, animated, true);
dispatchOnLauncherTransitionStart(toView, animated, true);
dispatchOnLauncherTransitionEnd(toView, animated, true);
mWorkspace.hideScrollingIndicator(false);
@@ -3298,20 +3322,16 @@
return oriMap[(d.getRotation() + indexOffset) % 4];
}
- public void lockScreenOrientationOnLargeUI() {
- if (LauncherApplication.isScreenLarge()) {
- setRequestedOrientation(mapConfigurationOriActivityInfoOri(getResources()
- .getConfiguration().orientation));
- }
+ public void lockScreenOrientation() {
+ setRequestedOrientation(mapConfigurationOriActivityInfoOri(getResources()
+ .getConfiguration().orientation));
}
- public void unlockScreenOrientationOnLargeUI() {
- if (LauncherApplication.isScreenLarge()) {
- mHandler.postDelayed(new Runnable() {
- public void run() {
- setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);
- }
- }, mRestoreScreenOrientationDelay);
- }
+ public void unlockScreenOrientation() {
+ mHandler.postDelayed(new Runnable() {
+ public void run() {
+ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);
+ }
+ }, mRestoreScreenOrientationDelay);
}
/* Cling related */
@@ -3455,6 +3475,7 @@
interface LauncherTransitionable {
View getContent();
+ void onLauncherTransitionPrepare(Launcher l, boolean animated, boolean toWorkspace);
void onLauncherTransitionStart(Launcher l, boolean animated, boolean toWorkspace);
void onLauncherTransitionStep(Launcher l, float t);
void onLauncherTransitionEnd(Launcher l, boolean animated, boolean toWorkspace);
diff --git a/src/com/android/launcher2/LauncherModel.java b/src/com/android/launcher2/LauncherModel.java
index 37235e9..8f6ca4f 100644
--- a/src/com/android/launcher2/LauncherModel.java
+++ b/src/com/android/launcher2/LauncherModel.java
@@ -1070,6 +1070,15 @@
info = getShortcutInfo(c, context, iconTypeIndex,
iconPackageIndex, iconResourceIndex, iconIndex,
titleIndex);
+
+ // App shortcuts that used to be automatically added to Launcher
+ // didn't always have the correct intent flags set, so do that here
+ if (intent.getAction().equals(Intent.ACTION_MAIN) &&
+ intent.getCategories().contains(Intent.CATEGORY_LAUNCHER)) {
+ intent.addFlags(
+ Intent.FLAG_ACTIVITY_NEW_TASK |
+ Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
+ }
}
if (info != null) {
diff --git a/src/com/android/launcher2/PagedView.java b/src/com/android/launcher2/PagedView.java
index 83b688d..4bcb4c7 100644
--- a/src/com/android/launcher2/PagedView.java
+++ b/src/com/android/launcher2/PagedView.java
@@ -270,6 +270,9 @@
int getCurrentPage() {
return mCurrentPage;
}
+ int getNextPage() {
+ return (mNextPage != INVALID_PAGE) ? mNextPage : mCurrentPage;
+ }
int getPageCount() {
return getChildCount();
@@ -1858,9 +1861,8 @@
}
protected String getCurrentPageDescription() {
- int page = (mNextPage != INVALID_PAGE) ? mNextPage : mCurrentPage;
return String.format(getContext().getString(R.string.default_scroll_format),
- page + 1, getChildCount());
+ getNextPage() + 1, getChildCount());
}
@Override
diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java
index dd2ced0..e9dffc5 100644
--- a/src/com/android/launcher2/Workspace.java
+++ b/src/com/android/launcher2/Workspace.java
@@ -38,6 +38,8 @@
import android.graphics.Paint;
import android.graphics.Point;
import android.graphics.PointF;
+import android.graphics.PorterDuff;
+import android.graphics.PorterDuffColorFilter;
import android.graphics.Rect;
import android.graphics.Region.Op;
import android.graphics.drawable.Drawable;
@@ -174,7 +176,7 @@
private final int[] mTempXY = new int[2];
private float mOverscrollFade = 0;
private boolean mOverscrollTransformsSet;
- public static final int DRAG_BITMAP_PADDING = 0;
+ public static final int DRAG_BITMAP_PADDING = 2;
// Camera and Matrix used to determine the final position of a neighboring CellLayout
private final Matrix mMatrix = new Matrix();
@@ -375,13 +377,13 @@
public void onDragStart(DragSource source, Object info, int dragAction) {
mIsDragOccuring = true;
updateChildrenLayersEnabled();
- mLauncher.lockScreenOrientationOnLargeUI();
+ mLauncher.lockScreenOrientation();
}
public void onDragEnd() {
mIsDragOccuring = false;
updateChildrenLayersEnabled();
- mLauncher.unlockScreenOrientationOnLargeUI();
+ mLauncher.unlockScreenOrientation();
}
/**
@@ -1314,38 +1316,6 @@
}
@Override
- protected void dispatchDraw(Canvas canvas) {
- super.dispatchDraw(canvas);
-
- if (mInScrollArea && !LauncherApplication.isScreenLarge()) {
- final int width = getWidth();
- final int height = getHeight();
- final int pageHeight = getChildAt(0).getHeight();
-
- // Set the height of the outline to be the height of the page
- final int offset = (height - pageHeight - getPaddingTop() - getPaddingBottom()) / 2;
- final int paddingTop = getPaddingTop() + offset;
- final int paddingBottom = getPaddingBottom() + offset;
-
- final int page = (mNextPage != INVALID_PAGE ? mNextPage : mCurrentPage);
- final CellLayout leftPage = (CellLayout) getChildAt(page - 1);
- final CellLayout rightPage = (CellLayout) getChildAt(page + 1);
-
- if (leftPage != null && leftPage.getIsDragOverlapping()) {
- final Drawable d = getResources().getDrawable(R.drawable.page_hover_left_holo);
- d.setBounds(getScrollX(), paddingTop, getScrollX() + d.getIntrinsicWidth(),
- height - paddingBottom);
- d.draw(canvas);
- } else if (rightPage != null && rightPage.getIsDragOverlapping()) {
- final Drawable d = getResources().getDrawable(R.drawable.page_hover_right_holo);
- d.setBounds(getScrollX() + width - d.getIntrinsicWidth(), paddingTop,
- getScrollX() + width, height - paddingBottom);
- d.draw(canvas);
- }
- }
- }
-
- @Override
protected boolean onRequestFocusInDescendants(int direction, Rect previouslyFocusedRect) {
if (!mLauncher.isAllAppsVisible()) {
final Folder openFolder = getOpenFolder();
@@ -1564,7 +1534,7 @@
AnimatorSet anim = animated ? new AnimatorSet() : null;
// Stop any scrolling, move to the current page right away
- setCurrentPage((mNextPage != INVALID_PAGE) ? mNextPage : mCurrentPage);
+ setCurrentPage(getNextPage());
final State oldState = mState;
final boolean oldStateIsNormal = (oldState == State.NORMAL);
@@ -1745,12 +1715,16 @@
}
@Override
- public void onLauncherTransitionStart(Launcher l, boolean animated, boolean toWorkspace) {
+ public void onLauncherTransitionPrepare(Launcher l, boolean animated, boolean toWorkspace) {
mIsSwitchingState = true;
cancelScrollingIndicatorAnimations();
}
@Override
+ public void onLauncherTransitionStart(Launcher l, boolean animated, boolean toWorkspace) {
+ }
+
+ @Override
public void onLauncherTransitionStep(Launcher l, float t) {
mTransitionProgress = t;
}
@@ -3285,7 +3259,7 @@
* screen while a scroll is in progress.
*/
public CellLayout getCurrentDropLayout() {
- return (CellLayout) getChildAt(mNextPage == INVALID_PAGE ? mCurrentPage : mNextPage);
+ return (CellLayout) getChildAt(getNextPage());
}
/**
@@ -3437,7 +3411,7 @@
if (!isSmall() && !mIsSwitchingState) {
mInScrollArea = true;
- final int page = (mNextPage != INVALID_PAGE ? mNextPage : mCurrentPage) +
+ final int page = getNextPage() +
(direction == DragController.SCROLL_LEFT ? -1 : 1);
// We always want to exit the current layout to ensure parity of enter / exit