summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--res/drawable-ldrtl/all_apps_fastscroll_bg.xml (renamed from res/drawable-ldrtl/apps_list_fastscroll_bg.xml)2
-rw-r--r--res/drawable/all_apps_fastscroll_bg.xml (renamed from res/drawable/apps_list_fastscroll_bg.xml)2
-rw-r--r--res/drawable/all_apps_scrollbar_thumb.xml (renamed from res/drawable/apps_list_scrollbar_thumb.xml)4
-rw-r--r--res/drawable/all_apps_search_bg.xml (renamed from res/drawable/apps_search_bg.xml)0
-rw-r--r--res/drawable/apps_list_search_bg.xml23
-rw-r--r--res/layout-land/launcher.xml2
-rw-r--r--res/layout-port/launcher.xml2
-rw-r--r--res/layout-sw600dp/all_apps.xml (renamed from res/layout-sw600dp/apps_view.xml)10
-rw-r--r--res/layout-sw720dp/launcher.xml2
-rw-r--r--res/layout/all_apps.xml (renamed from res/layout/apps_view.xml)8
-rw-r--r--res/layout/all_apps_container.xml (renamed from res/layout/apps_list_view.xml)22
-rw-r--r--res/layout/all_apps_empty_search.xml (renamed from res/layout/apps_empty_view.xml)2
-rw-r--r--res/layout/all_apps_icon.xml (renamed from res/layout/apps_grid_icon_view.xml)4
-rw-r--r--res/layout/all_apps_prediction_bar_icon.xml (renamed from res/layout/apps_prediction_bar_icon_view.xml)0
-rw-r--r--res/layout/all_apps_reveal.xml (renamed from res/layout/apps_reveal_view.xml)0
-rw-r--r--res/layout/app_icon.xml (renamed from res/layout/application.xml)0
-rw-r--r--res/layout/widgets_view.xml2
-rw-r--r--res/values-sw340dp-port/config.xml18
-rw-r--r--res/values-sw600dp/dimens.xml10
-rw-r--r--res/values-sw600dp/styles.xml21
-rw-r--r--res/values-sw720dp-land/dimens.xml4
-rw-r--r--res/values-sw720dp/config.xml2
-rw-r--r--res/values-sw720dp/dimens.xml6
-rw-r--r--res/values/attrs.xml27
-rw-r--r--res/values/colors.xml6
-rw-r--r--res/values/config.xml18
-rw-r--r--res/values/dimens.xml69
-rw-r--r--res/values/strings.xml10
-rw-r--r--src/com/android/launcher3/AppInfo.java2
-rw-r--r--src/com/android/launcher3/BaseRecyclerView.java (renamed from src/com/android/launcher3/BaseContainerRecyclerView.java)8
-rw-r--r--src/com/android/launcher3/DeviceProfile.java33
-rw-r--r--src/com/android/launcher3/Launcher.java21
-rw-r--r--src/com/android/launcher3/LauncherStateTransitionAnimation.java15
-rw-r--r--src/com/android/launcher3/LauncherTransitionable.java30
-rw-r--r--src/com/android/launcher3/WidgetPreviewLoader.java2
-rw-r--r--src/com/android/launcher3/WorkspaceStateTransitionAnimation.java4
-rw-r--r--src/com/android/launcher3/allapps/AllAppsContainerView.java (renamed from src/com/android/launcher3/AppsContainerView.java)87
-rw-r--r--src/com/android/launcher3/allapps/AllAppsGridAdapter.java (renamed from src/com/android/launcher3/AppsGridAdapter.java)42
-rw-r--r--src/com/android/launcher3/allapps/AllAppsRecyclerView.java (renamed from src/com/android/launcher3/AppsContainerRecyclerView.java)41
-rw-r--r--src/com/android/launcher3/allapps/AllAppsRecyclerViewContainerView.java (renamed from src/com/android/launcher3/AppsRecyclerViewContainer.java)20
-rw-r--r--src/com/android/launcher3/allapps/AllAppsSearchEditView.java (renamed from src/com/android/launcher3/AppsContainerSearchEditTextView.java)10
-rw-r--r--src/com/android/launcher3/allapps/AlphabeticalAppsList.java (renamed from src/com/android/launcher3/AlphabeticalAppsList.java)13
-rw-r--r--src/com/android/launcher3/widget/WidgetsRecyclerView.java (renamed from src/com/android/launcher3/widget/WidgetsContainerRecyclerView.java)12
43 files changed, 293 insertions, 323 deletions
diff --git a/res/drawable-ldrtl/apps_list_fastscroll_bg.xml b/res/drawable-ldrtl/all_apps_fastscroll_bg.xml
index 772975a71..4777f70bb 100644
--- a/res/drawable-ldrtl/apps_list_fastscroll_bg.xml
+++ b/res/drawable-ldrtl/all_apps_fastscroll_bg.xml
@@ -16,7 +16,7 @@
-->
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
- <solid android:color="@color/apps_view_scrollbar_thumb_color" />
+ <solid android:color="@color/all_apps_scrollbar_thumb_color" />
<size
android:width="64dp"
android:height="64dp" />
diff --git a/res/drawable/apps_list_fastscroll_bg.xml b/res/drawable/all_apps_fastscroll_bg.xml
index 780d3b0c3..6b7448459 100644
--- a/res/drawable/apps_list_fastscroll_bg.xml
+++ b/res/drawable/all_apps_fastscroll_bg.xml
@@ -16,7 +16,7 @@
-->
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
- <solid android:color="@color/apps_view_scrollbar_thumb_color" />
+ <solid android:color="@color/all_apps_scrollbar_thumb_color" />
<size
android:width="64dp"
android:height="64dp" />
diff --git a/res/drawable/apps_list_scrollbar_thumb.xml b/res/drawable/all_apps_scrollbar_thumb.xml
index 318d40678..649a963b1 100644
--- a/res/drawable/apps_list_scrollbar_thumb.xml
+++ b/res/drawable/all_apps_scrollbar_thumb.xml
@@ -16,6 +16,6 @@
-->
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
- <solid android:color="@color/apps_view_scrollbar_thumb_color" />
- <size android:width="@dimen/apps_view_fast_scroll_bar_width" />
+ <solid android:color="@color/all_apps_scrollbar_thumb_color" />
+ <size android:width="@dimen/all_apps_fast_scroll_bar_width" />
</shape> \ No newline at end of file
diff --git a/res/drawable/apps_search_bg.xml b/res/drawable/all_apps_search_bg.xml
index 57eb5825e..57eb5825e 100644
--- a/res/drawable/apps_search_bg.xml
+++ b/res/drawable/all_apps_search_bg.xml
diff --git a/res/drawable/apps_list_search_bg.xml b/res/drawable/apps_list_search_bg.xml
deleted file mode 100644
index 9bb6d81b2..000000000
--- a/res/drawable/apps_list_search_bg.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
- Copyright (C) 2015 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.
--->
-<shape xmlns:android="http://schemas.android.com/apk/res/android"
- android:shape="rectangle">
- <solid android:color="@color/quantum_panel_bg_color" />
- <corners
- android:bottomLeftRadius="2dp"
- android:bottomRightRadius="2dp" />
-</shape> \ No newline at end of file
diff --git a/res/layout-land/launcher.xml b/res/layout-land/launcher.xml
index 113b319ff..bf9296f7d 100644
--- a/res/layout-land/launcher.xml
+++ b/res/layout-land/launcher.xml
@@ -61,7 +61,7 @@
android:layout_height="match_parent"
android:visibility="invisible" />
- <include layout="@layout/apps_view"
+ <include layout="@layout/all_apps"
android:id="@+id/apps_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
diff --git a/res/layout-port/launcher.xml b/res/layout-port/launcher.xml
index 7202f7b32..8ff7762a9 100644
--- a/res/layout-port/launcher.xml
+++ b/res/layout-port/launcher.xml
@@ -71,7 +71,7 @@
android:layout_height="match_parent"
android:visibility="invisible" />
- <include layout="@layout/apps_view"
+ <include layout="@layout/all_apps"
android:id="@+id/apps_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
diff --git a/res/layout-sw600dp/apps_view.xml b/res/layout-sw600dp/all_apps.xml
index e6e0ec358..368e6abdd 100644
--- a/res/layout-sw600dp/apps_view.xml
+++ b/res/layout-sw600dp/all_apps.xml
@@ -13,21 +13,21 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<com.android.launcher3.AppsContainerView
+<com.android.launcher3.allapps.AllAppsContainerView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/apps_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:padding="@dimen/apps_container_inset"
+ android:padding="@dimen/all_apps_container_inset"
android:descendantFocusability="afterDescendants">
<include
- layout="@layout/apps_reveal_view"
+ layout="@layout/all_apps_reveal"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center" />
<include
- layout="@layout/apps_list_view"
+ layout="@layout/all_apps_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center" />
-</com.android.launcher3.AppsContainerView> \ No newline at end of file
+</com.android.launcher3.allapps.AllAppsContainerView> \ No newline at end of file
diff --git a/res/layout-sw720dp/launcher.xml b/res/layout-sw720dp/launcher.xml
index 8a9f3e913..b27f33bbf 100644
--- a/res/layout-sw720dp/launcher.xml
+++ b/res/layout-sw720dp/launcher.xml
@@ -71,7 +71,7 @@
android:layout_height="match_parent"
android:visibility="invisible" />
- <include layout="@layout/apps_view"
+ <include layout="@layout/all_apps"
android:id="@+id/apps_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
diff --git a/res/layout/apps_view.xml b/res/layout/all_apps.xml
index 7f09f7795..b907c34f1 100644
--- a/res/layout/apps_view.xml
+++ b/res/layout/all_apps.xml
@@ -16,20 +16,20 @@
<!-- The top and bottom paddings are defined in this container, but since we want
the list view to span the full width (for touch interception purposes), we
will bake the left/right padding into that view's background itself. -->
-<com.android.launcher3.AppsContainerView
+<com.android.launcher3.allapps.AllAppsContainerView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/apps_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:descendantFocusability="afterDescendants">
<include
- layout="@layout/apps_reveal_view"
+ layout="@layout/all_apps_reveal"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center" />
<include
- layout="@layout/apps_list_view"
+ layout="@layout/all_apps_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center" />
-</com.android.launcher3.AppsContainerView> \ No newline at end of file
+</com.android.launcher3.allapps.AllAppsContainerView> \ No newline at end of file
diff --git a/res/layout/apps_list_view.xml b/res/layout/all_apps_container.xml
index 040498359..a20ab46d8 100644
--- a/res/layout/apps_list_view.xml
+++ b/res/layout/all_apps_container.xml
@@ -14,7 +14,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<com.android.launcher3.AppsRecyclerViewContainer
+<com.android.launcher3.allapps.AllAppsRecyclerViewContainerView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/apps_list"
android:layout_width="match_parent"
@@ -23,12 +23,12 @@
android:focusableInTouchMode="true"
android:visibility="gone" >
- <com.android.launcher3.AppsContainerRecyclerView
+ <com.android.launcher3.allapps.AllAppsRecyclerView
android:id="@+id/apps_list_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_horizontal|top"
- android:layout_marginTop="@dimen/apps_search_bar_height"
+ android:layout_marginTop="@dimen/all_apps_search_bar_height"
android:clipToPadding="false"
android:descendantFocusability="afterDescendants"
android:focusable="true" />
@@ -37,7 +37,7 @@
android:id="@+id/prediction_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_marginTop="@dimen/apps_search_bar_height"
+ android:layout_marginTop="@dimen/all_apps_search_bar_height"
android:orientation="horizontal"
android:descendantFocusability="afterDescendants"
android:focusable="true"
@@ -49,8 +49,8 @@
<FrameLayout
android:id="@+id/header"
android:layout_width="match_parent"
- android:layout_height="@dimen/apps_search_bar_height"
- android:background="@drawable/apps_search_bg" >
+ android:layout_height="@dimen/all_apps_search_bar_height"
+ android:background="@drawable/all_apps_search_bg" >
<LinearLayout
android:id="@+id/app_search_container"
@@ -71,14 +71,14 @@
android:paddingTop="13dp"
android:src="@drawable/ic_arrow_back_grey" />
- <com.android.launcher3.AppsContainerSearchEditTextView
- android:id="@+id/app_search_box"
+ <com.android.launcher3.allapps.AllAppsSearchEditView
+ android:id="@+id/apps_search_box"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/transparent"
android:focusableInTouchMode="true"
android:gravity="fill_horizontal"
- android:hint="@string/apps_view_search_bar_hint"
+ android:hint="@string/all_apps_search_bar_hint"
android:imeOptions="actionDone|flagNoExtractUi"
android:maxLines="1"
android:paddingBottom="16dp"
@@ -98,10 +98,10 @@
android:layout_gravity="end|center_vertical"
android:layout_marginEnd="6dp"
android:layout_marginRight="6dp"
- android:contentDescription="@string/apps_view_search_bar_hint"
+ android:contentDescription="@string/all_apps_search_bar_hint"
android:paddingBottom="13dp"
android:paddingTop="13dp"
android:src="@drawable/ic_search_grey" />
</FrameLayout>
-</com.android.launcher3.AppsRecyclerViewContainer> \ No newline at end of file
+</com.android.launcher3.allapps.AllAppsRecyclerViewContainerView> \ No newline at end of file
diff --git a/res/layout/apps_empty_view.xml b/res/layout/all_apps_empty_search.xml
index e4c4e2e8c..f60c4a09a 100644
--- a/res/layout/apps_empty_view.xml
+++ b/res/layout/all_apps_empty_search.xml
@@ -21,7 +21,7 @@
android:gravity="center"
android:paddingTop="24dp"
android:paddingBottom="24dp"
- android:paddingRight="@dimen/apps_grid_view_start_margin"
+ android:paddingRight="@dimen/all_apps_grid_view_start_margin"
android:textSize="16sp"
android:textColor="#4c4c4c"
android:focusable="false" />
diff --git a/res/layout/apps_grid_icon_view.xml b/res/layout/all_apps_icon.xml
index 7165f383d..10ed25c47 100644
--- a/res/layout/apps_grid_icon_view.xml
+++ b/res/layout/all_apps_icon.xml
@@ -21,8 +21,8 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left|center_vertical"
- android:paddingTop="@dimen/apps_icon_top_bottom_padding"
- android:paddingBottom="@dimen/apps_icon_top_bottom_padding"
+ android:paddingTop="@dimen/all_apps_icon_top_bottom_padding"
+ android:paddingBottom="@dimen/all_apps_icon_top_bottom_padding"
android:focusable="true"
android:background="@drawable/focusable_view_bg"
launcher:iconDisplay="all_apps" />
diff --git a/res/layout/apps_prediction_bar_icon_view.xml b/res/layout/all_apps_prediction_bar_icon.xml
index 1e75d14b6..1e75d14b6 100644
--- a/res/layout/apps_prediction_bar_icon_view.xml
+++ b/res/layout/all_apps_prediction_bar_icon.xml
diff --git a/res/layout/apps_reveal_view.xml b/res/layout/all_apps_reveal.xml
index 2951ea4f4..2951ea4f4 100644
--- a/res/layout/apps_reveal_view.xml
+++ b/res/layout/all_apps_reveal.xml
diff --git a/res/layout/application.xml b/res/layout/app_icon.xml
index 831cee5b0..831cee5b0 100644
--- a/res/layout/application.xml
+++ b/res/layout/app_icon.xml
diff --git a/res/layout/widgets_view.xml b/res/layout/widgets_view.xml
index 196dc45e5..2615ddbdd 100644
--- a/res/layout/widgets_view.xml
+++ b/res/layout/widgets_view.xml
@@ -34,7 +34,7 @@
android:focusable="false"
android:visibility="invisible" />
- <com.android.launcher3.widget.WidgetsContainerRecyclerView
+ <com.android.launcher3.widget.WidgetsRecyclerView
android:id="@+id/widgets_list_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
diff --git a/res/values-sw340dp-port/config.xml b/res/values-sw340dp-port/config.xml
deleted file mode 100644
index 5f71077c7..000000000
--- a/res/values-sw340dp-port/config.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2011 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.
--->
-
-<resources>
-</resources>
diff --git a/res/values-sw600dp/dimens.xml b/res/values-sw600dp/dimens.xml
index c366ef31b..994c1925f 100644
--- a/res/values-sw600dp/dimens.xml
+++ b/res/values-sw600dp/dimens.xml
@@ -17,11 +17,11 @@
<resources>
<dimen name="app_icon_size">64dp</dimen>
-<!-- Apps view -->
- <dimen name="apps_container_inset">18dp</dimen>
- <dimen name="apps_grid_view_start_margin">0dp</dimen>
- <dimen name="apps_view_section_text_size">26sp</dimen>
- <dimen name="apps_icon_top_bottom_padding">12dp</dimen>
+<!-- All Apps -->
+ <dimen name="all_apps_container_inset">18dp</dimen>
+ <dimen name="all_apps_grid_view_start_margin">0dp</dimen>
+ <dimen name="all_apps_grid_section_text_size">26sp</dimen>
+ <dimen name="all_apps_icon_top_bottom_padding">12dp</dimen>
<!-- Cling -->
<dimen name="cling_migration_logo_height">400dp</dimen>
diff --git a/res/values-sw600dp/styles.xml b/res/values-sw600dp/styles.xml
deleted file mode 100644
index bcbbafdbb..000000000
--- a/res/values-sw600dp/styles.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-* Copyright (C) 2012 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.
-*/
--->
-
-<resources>
-</resources>
diff --git a/res/values-sw720dp-land/dimens.xml b/res/values-sw720dp-land/dimens.xml
index ca13db05b..514980fe0 100644
--- a/res/values-sw720dp-land/dimens.xml
+++ b/res/values-sw720dp-land/dimens.xml
@@ -15,10 +15,6 @@
-->
<resources>
-<!-- AppsCustomize -->
- <integer name="apps_customize_widget_cell_count_x">4</integer>
- <integer name="apps_customize_widget_cell_count_y">2</integer>
-
<!-- the area at the edge of the screen that makes the workspace go left
or right while you're dragging. -->
<dimen name="scroll_zone">100dip</dimen>
diff --git a/res/values-sw720dp/config.xml b/res/values-sw720dp/config.xml
index af6751e60..94cffcb55 100644
--- a/res/values-sw720dp/config.xml
+++ b/res/values-sw720dp/config.xml
@@ -2,7 +2,7 @@
<bool name="config_largeHeap">true</bool>
<bool name="is_large_tablet">true</bool>
-<!-- AllApps/Customize/AppsCustomize -->
+<!-- All Apps & Widgets -->
<!-- Out of 100, the percent to shrink the workspace during spring loaded mode. -->
<integer name="config_workspaceSpringLoadShrinkPercentage">90</integer>
diff --git a/res/values-sw720dp/dimens.xml b/res/values-sw720dp/dimens.xml
index 39b0c8006..89942f741 100644
--- a/res/values-sw720dp/dimens.xml
+++ b/res/values-sw720dp/dimens.xml
@@ -16,8 +16,10 @@
<resources>
<dimen name="app_icon_size">72dp</dimen>
- <dimen name="apps_search_bar_height">54dp</dimen>
- <dimen name="apps_icon_top_bottom_padding">16dp</dimen>
+
+<!-- All Apps -->
+ <dimen name="all_apps_search_bar_height">54dp</dimen>
+ <dimen name="all_apps_icon_top_bottom_padding">16dp</dimen>
<!-- QSB -->
<dimen name="toolbar_button_vertical_padding">8dip</dimen>
diff --git a/res/values/attrs.xml b/res/values/attrs.xml
index 782d050b5..827332ad7 100644
--- a/res/values/attrs.xml
+++ b/res/values/attrs.xml
@@ -72,16 +72,6 @@
<attr name="maxGap" format="dimension" />
</declare-styleable>
- <!-- StrokedTextView specific attributes. -->
- <declare-styleable name="StrokedTextView">
- <!-- The color of the stroke outline -->
- <attr name="strokeColor" format="color" />
- <!-- The color of the text -->
- <attr name="strokeTextColor" format="color" />
- <!-- The width of the stroke -->
- <attr name="strokeWidth" format="float" />
- </declare-styleable>
-
<!-- PagedView specific attributes. These attributes are used to customize
a PagedView view in XML files. -->
<declare-styleable name="PagedView">
@@ -93,23 +83,6 @@
<attr name="pageIndicator" format="reference" />
</declare-styleable>
- <!-- AppsCustomizePagedView specific attributes. These attributes are used to
- customize an AppsCustomizePagedView in xml files. -->
- <declare-styleable name="AppsCustomizePagedView">
- <!-- Max number of cells of applications horizontally -->
- <attr name="maxAppCellCountX" format="integer" />
- <!-- Max number of cells of applications vertically -->
- <attr name="maxAppCellCountY" format="integer" />
- <!-- Horizontal spacing between widgets and wallpapers -->
- <attr name="widgetCellWidthGap" format="dimension" />
- <!-- Vertical spacing between widgets -->
- <attr name="widgetCellHeightGap" format="dimension" />
- <!-- Number of widgets horizontally -->
- <attr name="widgetCountX" format="integer" />
- <!-- Number of widgets vertically -->
- <attr name="widgetCountY" format="integer" />
- </declare-styleable>
-
<!-- XML attributes used by default_workspace.xml -->
<declare-styleable name="Favorite">
<attr name="className" format="string" />
diff --git a/res/values/colors.xml b/res/values/colors.xml
index a5db2fc40..e2b8a2ea7 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -36,9 +36,9 @@
<color name="outline_color">#FFFFFFFF</color>
<color name="widget_text_panel">#FF374248</color>
- <!-- Apps view -->
- <color name="apps_view_scrollbar_thumb_color">#009688</color>
- <color name="apps_view_section_text_color">#009688</color>
+ <!-- All Apps -->
+ <color name="all_apps_scrollbar_thumb_color">#009688</color>
+ <color name="all_apps_grid_section_text_color">#009688</color>
<!-- Widgets view -->
<color name="widgets_view_section_text_color">#FFFFFF</color>
diff --git a/res/values/config.xml b/res/values/config.xml
index b6e633c10..fbce3a41f 100644
--- a/res/values/config.xml
+++ b/res/values/config.xml
@@ -1,8 +1,5 @@
<resources>
<!-- Dynamic Grid -->
- <integer name="config_dynamic_grid_max_long_edge_cell_count">6</integer>
- <integer name="config_dynamic_grid_max_short_edge_cell_count">5</integer>
- <integer name="config_dynamic_grid_min_edge_cell_count">3</integer>
<!-- Out of 100, the percent of space the overview bar should try and take vertically. -->
<integer name="config_dynamic_grid_overview_icon_zone_percentage">20</integer>
<!-- Out of 100, the percent to shrink the workspace during overview mode. -->
@@ -24,21 +21,20 @@
<!-- DragController -->
<integer name="config_flingToDeleteMinVelocity">-1500</integer>
-<!-- AllApps/Customize/AppsCustomize -->
+<!-- AllApps & Launcher transitions -->
<!-- The alpha of the AppsCustomize bg in spring loaded mode -->
<integer name="config_workspaceScrimAlpha">55</integer>
- <integer name="config_workspaceUnshrinkTime">100</integer>
+ <integer name="config_allAppsTransitionTime">100</integer>
<integer name="config_overviewTransitionTime">250</integer>
<!-- Out of 100, the percent to shrink the workspace during spring loaded mode. -->
<integer name="config_workspaceSpringLoadShrinkPercentage">80</integer>
- <!-- Fade/zoom in/out duration & scale in the AllApps transition.
- Note: This should be less than the workspaceShrinkTime as they happen together. -->
- <integer name="config_appsCustomizeRevealTime">220</integer>
- <integer name="config_appsCustomizeWorkspaceShrinkTime">300</integer>
-
- <integer name="config_appsCustomizeItemsAlphaStagger">60</integer>
+ <!-- Fade/zoom in/out duration & scale in a Launcher overlay transition.
+ Note: This should be less than the config_overlayTransitionTime as they happen together. -->
+ <integer name="config_overlayRevealTime">220</integer>
+ <integer name="config_overlayTransitionTime">300</integer>
+ <integer name="config_overlayItemsAlphaStagger">60</integer>
<!-- This constant stores the ratio of the all apps button drawable which
is used for internal (baked-in) padding -->
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 3e5fe3a83..246adcdad 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -15,13 +15,14 @@
-->
<resources>
+ <dimen name="app_icon_size">48dp</dimen>
+
<!-- Dynamic Grid -->
<dimen name="dynamic_grid_edge_margin">6dp</dimen>
<dimen name="dynamic_grid_search_bar_max_width">500dp</dimen>
<dimen name="dynamic_grid_search_bar_height">56dp</dimen>
<dimen name="dynamic_grid_page_indicator_height">20dp</dimen>
<dimen name="dynamic_grid_icon_drawable_padding">4dp</dimen>
- <dimen name="dynamic_grid_all_apps_cell_padding">18dp</dimen>
<dimen name="dynamic_grid_workspace_page_spacing">8dp</dimen>
<dimen name="dynamic_grid_overview_min_icon_zone_height">80dp</dimen>
<dimen name="dynamic_grid_overview_max_icon_zone_height">120dp</dimen>
@@ -48,48 +49,29 @@
<dimen name="toolbar_button_vertical_padding">4dip</dimen>
<dimen name="toolbar_button_horizontal_padding">12dip</dimen>
-<!-- Apps view -->
- <dimen name="apps_container_width">0dp</dimen>
- <dimen name="apps_container_inset">8dp</dimen>
- <dimen name="apps_grid_view_start_margin">56dp</dimen>
- <dimen name="apps_grid_section_y_offset">8dp</dimen>
- <dimen name="apps_view_section_text_size">24sp</dimen>
- <dimen name="apps_view_fast_scroll_bar_width">4dp</dimen>
- <dimen name="apps_view_fast_scroll_bar_min_height">64dp</dimen>
- <dimen name="apps_view_fast_scroll_scrubber_touch_inset">-16dp</dimen>
- <dimen name="apps_view_fast_scroll_popup_size">72dp</dimen>
- <dimen name="apps_view_fast_scroll_text_size">48dp</dimen>
- <dimen name="apps_search_bar_height">52dp</dimen>
- <dimen name="apps_icon_top_bottom_padding">8dp</dimen>
- <dimen name="apps_prediction_icon_top_bottom_padding">12dp</dimen>
-
+<!-- All Apps -->
<!-- Note: This needs to match the fixed insets for the search box. -->
<dimen name="container_fixed_bounds_inset">8dp</dimen>
-<!-- AllApps/Customize/AppsCustomize -->
- <dimen name="app_icon_size">48dp</dimen>
-
- <!-- Drag padding to add to the bottom of drop targets -->
- <dimen name="drop_target_drag_padding">14dp</dimen>
- <dimen name="drop_target_text_size">14sp</dimen>
+ <dimen name="all_apps_container_inset">8dp</dimen>
+ <dimen name="all_apps_grid_view_start_margin">56dp</dimen>
+ <dimen name="all_apps_grid_section_y_offset">8dp</dimen>
+ <dimen name="all_apps_grid_section_text_size">24sp</dimen>
+ <dimen name="all_apps_search_bar_height">52dp</dimen>
+ <dimen name="all_apps_icon_top_bottom_padding">8dp</dimen>
+ <dimen name="all_apps_icon_left_right_padding">18dp</dimen>
+ <dimen name="all_apps_prediction_icon_top_bottom_padding">12dp</dimen>
+
+ <dimen name="all_apps_fast_scroll_bar_width">4dp</dimen>
+ <dimen name="all_apps_fast_scroll_bar_min_height">64dp</dimen>
+ <dimen name="all_apps_fast_scroll_scrubber_touch_inset">-16dp</dimen>
+ <dimen name="all_apps_fast_scroll_popup_size">72dp</dimen>
+ <dimen name="all_apps_fast_scroll_text_size">48dp</dimen>
<dimen name="all_apps_header_max_elevation">4dp</dimen>
<dimen name="all_apps_header_scroll_to_elevation">16dp</dimen>
<dimen name="all_apps_header_shadow_height">6dp</dimen>
-<!-- Dragging -->
- <!-- the area at the edge of the screen that makes the workspace go left
- or right while you're dragging. -->
- <dimen name="scroll_zone">20dp</dimen>
-
- <!-- When dragging an item, how much bigger (fixed dps) the dragged view
- should be. If 0, it will not be scaled at all. -->
- <dimen name="dragViewScale">12dp</dimen>
-
- <!-- Elevation for the drag view. It should be larger than elevation of all other drag sources
- and drop targets like all-apps and folders -->
- <dimen name="drag_elevation">30dp</dimen>
-
<!-- Widget tray -->
<dimen name="widget_container_inset">8dp</dimen>
<dimen name="widget_preview_label_vertical_padding">8dp</dimen>
@@ -109,6 +91,23 @@
<dimen name="shortcut_preview_padding_right">0dp</dimen>
<dimen name="shortcut_preview_padding_top">0dp</dimen>
+<!-- Dragging -->
+ <!-- Drag padding to add to the bottom of drop targets -->
+ <dimen name="drop_target_drag_padding">14dp</dimen>
+ <dimen name="drop_target_text_size">14sp</dimen>
+
+ <!-- the area at the edge of the screen that makes the workspace go left
+ or right while you're dragging. -->
+ <dimen name="scroll_zone">20dp</dimen>
+
+ <!-- When dragging an item, how much bigger (fixed dps) the dragged view
+ should be. If 0, it will not be scaled at all. -->
+ <dimen name="dragViewScale">12dp</dimen>
+
+ <!-- Elevation for the drag view. It should be larger than elevation of all other drag sources
+ and drop targets like all-apps and folders -->
+ <dimen name="drag_elevation">30dp</dimen>
+
<!-- Theme -->
<dimen name="quantum_panel_outer_padding">4dp</dimen>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 18f97c84d..a8c668d61 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -47,20 +47,20 @@
<string name="toggle_weight_watcher">Show Mem</string>
- <!-- AppsCustomize pane -->
+ <!-- Widgets -->
<!-- Message to tell the user to press and hold on a widget to add it [CHAR_LIMIT=50] -->
<string name="long_press_widget_to_add">Touch &amp; hold to pick up a widget.</string>
<!-- The format string for the dimensions of a widget in the drawer -->
<!-- There is a special version of this format string for Farsi -->
<string name="widget_dims_format">%1$d \u00d7 %2$d</string>
- <!-- Apps view -->
+ <!-- All Apps -->
<!-- Search bar text in the apps view. [CHAR_LIMIT=50] -->
- <string name="apps_view_search_bar_hint">Search Apps</string>
+ <string name="all_apps_search_bar_hint">Search Apps</string>
<!-- Loading apps text. [CHAR_LIMIT=50] -->
- <string name="loading_apps_message">Loading Apps&#8230;</string>
+ <string name="all_apps_loading_message">Loading Apps&#8230;</string>
<!-- No-search-results text. [CHAR_LIMIT=50] -->
- <string name="apps_view_no_search_results">No Apps found matching \"<xliff:g id="query" example="Android">%1$s</xliff:g>\"</string>
+ <string name="all_apps_no_search_results">No Apps found matching \"<xliff:g id="query" example="Android">%1$s</xliff:g>\"</string>
<!-- Drag and drop -->
<skip />
diff --git a/src/com/android/launcher3/AppInfo.java b/src/com/android/launcher3/AppInfo.java
index 58a57a1fe..9c87ced54 100644
--- a/src/com/android/launcher3/AppInfo.java
+++ b/src/com/android/launcher3/AppInfo.java
@@ -38,7 +38,7 @@ public class AppInfo extends ItemInfo {
/**
* The intent used to start the application.
*/
- Intent intent;
+ public Intent intent;
/**
* A bitmap version of the application icon.
diff --git a/src/com/android/launcher3/BaseContainerRecyclerView.java b/src/com/android/launcher3/BaseRecyclerView.java
index e52d88708..b63ef788a 100644
--- a/src/com/android/launcher3/BaseContainerRecyclerView.java
+++ b/src/com/android/launcher3/BaseRecyclerView.java
@@ -26,7 +26,7 @@ import com.android.launcher3.util.Thunk;
* A base {@link RecyclerView}, which will NOT intercept a touch sequence unless the scrolling
* velocity is below a predefined threshold.
*/
-public class BaseContainerRecyclerView extends RecyclerView
+public class BaseRecyclerView extends RecyclerView
implements RecyclerView.OnItemTouchListener {
private static final int SCROLL_DELTA_THRESHOLD_DP = 4;
@@ -35,15 +35,15 @@ public class BaseContainerRecyclerView extends RecyclerView
@Thunk int mDy = 0;
private float mDeltaThreshold;
- public BaseContainerRecyclerView(Context context) {
+ public BaseRecyclerView(Context context) {
this(context, null);
}
- public BaseContainerRecyclerView(Context context, AttributeSet attrs) {
+ public BaseRecyclerView(Context context, AttributeSet attrs) {
this(context, attrs, 0);
}
- public BaseContainerRecyclerView(Context context, AttributeSet attrs, int defStyleAttr) {
+ public BaseRecyclerView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
mDeltaThreshold = getResources().getDisplayMetrics().density * SCROLL_DELTA_THRESHOLD_DP;
diff --git a/src/com/android/launcher3/DeviceProfile.java b/src/com/android/launcher3/DeviceProfile.java
index 8f2056569..bee6cb093 100644
--- a/src/com/android/launcher3/DeviceProfile.java
+++ b/src/com/android/launcher3/DeviceProfile.java
@@ -70,7 +70,7 @@ public class DeviceProfile {
public int iconSizePx;
public int iconTextSizePx;
public int iconDrawablePaddingPx;
- private final int iconDrawablePaddingOriginalPx;
+ public int iconDrawablePaddingOriginalPx;
public int cellWidthPx;
public int cellHeightPx;
@@ -88,11 +88,8 @@ public class DeviceProfile {
private int hotseatBarHeightPx;
// All apps
- private int allAppsCellWidthPx;
- public int allAppsCellHeightPx;
- private final int allAppsCellPaddingPx;
- public int appsViewNumCols;
- public int appsViewNumPredictiveCols;
+ public int allAppsNumCols;
+ public int allAppsNumPredictiveCols;
public int allAppsButtonVisualSize;
public final int allAppsIconSizePx;
public final int allAppsIconTextSizePx;
@@ -129,8 +126,6 @@ public class DeviceProfile {
res.getDimensionPixelSize(R.dimen.dynamic_grid_page_indicator_height);
defaultPageSpacingPx =
res.getDimensionPixelSize(R.dimen.dynamic_grid_workspace_page_spacing);
- allAppsCellPaddingPx =
- res.getDimensionPixelSize(R.dimen.dynamic_grid_all_apps_cell_padding);
overviewModeMinIconZoneHeightPx =
res.getDimensionPixelSize(R.dimen.dynamic_grid_overview_min_icon_zone_height);
overviewModeMaxIconZoneHeightPx =
@@ -143,7 +138,6 @@ public class DeviceProfile {
res.getInteger(R.integer.config_dynamic_grid_overview_icon_zone_percentage) / 100f;
overviewModeScaleFactor =
res.getInteger(R.integer.config_dynamic_grid_overview_scale_percentage) / 100f;
-
iconDrawablePaddingOriginalPx =
res.getDimensionPixelSize(R.dimen.dynamic_grid_icon_drawable_padding);
@@ -230,25 +224,22 @@ public class DeviceProfile {
folderBackgroundOffset = -edgeMarginPx;
folderIconSizePx = iconSizePx + 2 * -folderBackgroundOffset;
- // All Apps
- allAppsCellWidthPx = allAppsIconSizePx;
- allAppsCellHeightPx = allAppsIconSizePx + drawablePadding + allAppsIconTextSizePx;
-
- int appsContainerViewWidthPx = res.getDimensionPixelSize(R.dimen.apps_container_width);
- updateAppsViewNumCols(res, appsContainerViewWidthPx);
+ updateAppsViewNumCols(res, 0);
}
public boolean updateAppsViewNumCols(Resources res, int containerWidth) {
int appsViewLeftMarginPx =
- res.getDimensionPixelSize(R.dimen.apps_grid_view_start_margin);
+ res.getDimensionPixelSize(R.dimen.all_apps_grid_view_start_margin);
+ int allAppsCellPaddingPx =
+ res.getDimensionPixelSize(R.dimen.all_apps_icon_left_right_padding);
int availableAppsWidthPx = (containerWidth > 0) ? containerWidth : availableWidthPx;
int numAppsCols = (availableAppsWidthPx - appsViewLeftMarginPx) /
- (allAppsCellWidthPx + 2 * allAppsCellPaddingPx);
+ (allAppsIconSizePx + 2 * allAppsCellPaddingPx);
int numPredictiveAppCols = isPhone ? 4 : numAppsCols;
- if ((numAppsCols != appsViewNumCols) ||
- (numPredictiveAppCols != appsViewNumPredictiveCols)) {
- appsViewNumCols = numAppsCols;
- appsViewNumPredictiveCols = numPredictiveAppCols;
+ if ((numAppsCols != allAppsNumCols) ||
+ (numPredictiveAppCols != allAppsNumPredictiveCols)) {
+ allAppsNumCols = numAppsCols;
+ allAppsNumPredictiveCols = numPredictiveAppCols;
return true;
}
return false;
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index c923c9582..5dd64e0e2 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -98,6 +98,7 @@ import android.widget.Toast;
import com.android.launcher3.DropTarget.DragObject;
import com.android.launcher3.PagedView.PageSwitchListener;
import com.android.launcher3.accessibility.LauncherAccessibilityDelegate;
+import com.android.launcher3.allapps.AllAppsContainerView;
import com.android.launcher3.compat.AppWidgetManagerCompat;
import com.android.launcher3.compat.LauncherActivityInfoCompat;
import com.android.launcher3.compat.LauncherAppsCompat;
@@ -272,7 +273,7 @@ public class Launcher extends Activity
private SearchDropTargetBar mSearchDropTargetBar;
// Main container view for the all apps screen.
- @Thunk AppsContainerView mAppsView;
+ @Thunk AllAppsContainerView mAppsView;
// Main container view and the model for the widget tray screen.
@Thunk WidgetsContainerView mWidgetsView;
@@ -1475,7 +1476,7 @@ public class Launcher extends Activity
mDragLayer.findViewById(R.id.search_drop_target_bar);
// Setup Apps
- mAppsView = (AppsContainerView) findViewById(R.id.apps_view);
+ mAppsView = (AllAppsContainerView) findViewById(R.id.apps_view);
if (isAllAppsSearchOverridden()) {
mAppsView.hideHeaderBar();
}
@@ -1524,8 +1525,6 @@ public class Launcher extends Activity
* Creates a view representing a shortcut.
*
* @param info The data structure describing the shortcut.
- *
- * @return A View inflated from R.layout.application.
*/
View createShortcut(ShortcutInfo info) {
return createShortcut((ViewGroup) mWorkspace.getChildAt(mWorkspace.getCurrentPage()), info);
@@ -1540,7 +1539,7 @@ public class Launcher extends Activity
* @return A View inflated from layoutResId.
*/
public View createShortcut(ViewGroup parent, ShortcutInfo info) {
- BubbleTextView favorite = (BubbleTextView) mInflater.inflate(R.layout.application,
+ BubbleTextView favorite = (BubbleTextView) mInflater.inflate(R.layout.app_icon,
parent, false);
favorite.applyFromShortcutInfo(info, mIconCache);
favorite.setCompoundDrawablePadding(mDeviceProfile.iconDrawablePaddingPx);
@@ -1875,7 +1874,7 @@ public class Launcher extends Activity
return mDragLayer;
}
- public AppsContainerView getAppsView() {
+ public AllAppsContainerView getAppsView() {
return mAppsView;
}
@@ -3347,7 +3346,7 @@ public class Launcher extends Activity
}
}
- protected void showWorkspace(boolean animated) {
+ public void showWorkspace(boolean animated) {
showWorkspace(WorkspaceStateTransitionAnimation.SCROLL_TO_CURRENT_PAGE, animated, null,
true);
}
@@ -4813,14 +4812,6 @@ public class Launcher extends Activity
}
}
-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);
-}
-
interface DebugIntents {
static final String DELETE_DATABASE = "com.android.launcher3.action.DELETE_DATABASE";
static final String MIGRATE_DATABASE = "com.android.launcher3.action.MIGRATE_DATABASE";
diff --git a/src/com/android/launcher3/LauncherStateTransitionAnimation.java b/src/com/android/launcher3/LauncherStateTransitionAnimation.java
index ce13da66e..f373fde2d 100644
--- a/src/com/android/launcher3/LauncherStateTransitionAnimation.java
+++ b/src/com/android/launcher3/LauncherStateTransitionAnimation.java
@@ -23,14 +23,13 @@ import android.animation.ObjectAnimator;
import android.animation.PropertyValuesHolder;
import android.animation.TimeInterpolator;
import android.annotation.SuppressLint;
-import android.annotation.TargetApi;
import android.content.res.Resources;
-import android.os.Build;
import android.util.Log;
import android.view.View;
import android.view.ViewAnimationUtils;
import android.view.animation.AccelerateInterpolator;
import android.view.animation.DecelerateInterpolator;
+import com.android.launcher3.allapps.AllAppsContainerView;
import com.android.launcher3.util.Thunk;
import com.android.launcher3.widget.WidgetsContainerView;
import java.util.HashMap;
@@ -129,7 +128,7 @@ public class LauncherStateTransitionAnimation {
* Starts an animation to the apps view.
*/
public void startAnimationToAllApps(final boolean animated) {
- final AppsContainerView toView = mLauncher.getAppsView();
+ final AllAppsContainerView toView = mLauncher.getAppsView();
PrivateTransitionCallbacks cb = new PrivateTransitionCallbacks() {
private int[] mAllAppsToPanelDelta;
@@ -233,9 +232,9 @@ public class LauncherStateTransitionAnimation {
final boolean hideSearchBar, final PrivateTransitionCallbacks pCb) {
final Resources res = mLauncher.getResources();
final boolean material = Utilities.isLmpOrAbove();
- final int revealDuration = res.getInteger(R.integer.config_appsCustomizeRevealTime);
+ final int revealDuration = res.getInteger(R.integer.config_overlayRevealTime);
final int itemsAlphaStagger =
- res.getInteger(R.integer.config_appsCustomizeItemsAlphaStagger);
+ res.getInteger(R.integer.config_overlayItemsAlphaStagger);
final View allAppsButtonView = mLauncher.getAllAppsButton();
final View fromView = mLauncher.getWorkspace();
@@ -428,7 +427,7 @@ public class LauncherStateTransitionAnimation {
private void startAnimationToWorkspaceFromAllApps(final Launcher.State fromState,
final Workspace.State toWorkspaceState, final int toWorkspacePage,
final boolean animated, final Runnable onCompleteRunnable) {
- AppsContainerView appsView = mLauncher.getAppsView();
+ AllAppsContainerView appsView = mLauncher.getAppsView();
PrivateTransitionCallbacks cb = new PrivateTransitionCallbacks() {
int[] mAllAppsToPanelDelta;
@@ -530,9 +529,9 @@ public class LauncherStateTransitionAnimation {
final PrivateTransitionCallbacks pCb) {
final Resources res = mLauncher.getResources();
final boolean material = Utilities.isLmpOrAbove();
- final int revealDuration = res.getInteger(R.integer.config_appsCustomizeRevealTime);
+ final int revealDuration = res.getInteger(R.integer.config_overlayRevealTime);
final int itemsAlphaStagger =
- res.getInteger(R.integer.config_appsCustomizeItemsAlphaStagger);
+ res.getInteger(R.integer.config_overlayItemsAlphaStagger);
final View allAppsButtonView = mLauncher.getAllAppsButton();
final View toView = mLauncher.getWorkspace();
diff --git a/src/com/android/launcher3/LauncherTransitionable.java b/src/com/android/launcher3/LauncherTransitionable.java
new file mode 100644
index 000000000..9442abcde
--- /dev/null
+++ b/src/com/android/launcher3/LauncherTransitionable.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright (C) 2015 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.
+ */
+
+package com.android.launcher3;
+
+import android.view.View;
+
+/**
+ * An interface to get callbacks during a launcher transition.
+ */
+public 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/launcher3/WidgetPreviewLoader.java b/src/com/android/launcher3/WidgetPreviewLoader.java
index 1cf3bc469..e8cc48685 100644
--- a/src/com/android/launcher3/WidgetPreviewLoader.java
+++ b/src/com/android/launcher3/WidgetPreviewLoader.java
@@ -25,7 +25,6 @@ import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.os.AsyncTask;
import android.os.Handler;
-import android.os.Process;
import android.util.Log;
import android.util.LongSparseArray;
import com.android.launcher3.compat.AppWidgetManagerCompat;
@@ -34,7 +33,6 @@ import com.android.launcher3.compat.UserManagerCompat;
import com.android.launcher3.util.ComponentKey;
import com.android.launcher3.util.Thunk;
import com.android.launcher3.widget.WidgetCell;
-import junit.framework.Assert;
import java.util.ArrayList;
import java.util.Collections;
diff --git a/src/com/android/launcher3/WorkspaceStateTransitionAnimation.java b/src/com/android/launcher3/WorkspaceStateTransitionAnimation.java
index 42ba36ef6..340066d64 100644
--- a/src/com/android/launcher3/WorkspaceStateTransitionAnimation.java
+++ b/src/com/android/launcher3/WorkspaceStateTransitionAnimation.java
@@ -163,9 +163,9 @@ public class WorkspaceStateTransitionAnimation {
DeviceProfile grid = mLauncher.getDeviceProfile();
Resources res = launcher.getResources();
- mAllAppsTransitionTime = res.getInteger(R.integer.config_workspaceUnshrinkTime);
+ mAllAppsTransitionTime = res.getInteger(R.integer.config_allAppsTransitionTime);
mOverviewTransitionTime = res.getInteger(R.integer.config_overviewTransitionTime);
- mOverlayTransitionTime = res.getInteger(R.integer.config_appsCustomizeWorkspaceShrinkTime);
+ mOverlayTransitionTime = res.getInteger(R.integer.config_overlayTransitionTime);
mSpringLoadedShrinkFactor =
res.getInteger(R.integer.config_workspaceSpringLoadShrinkPercentage) / 100f;
mWorkspaceScrimAlpha = res.getInteger(R.integer.config_workspaceScrimAlpha) / 100f;
diff --git a/src/com/android/launcher3/AppsContainerView.java b/src/com/android/launcher3/allapps/AllAppsContainerView.java
index 3bfe26b56..60f9ab347 100644
--- a/src/com/android/launcher3/AppsContainerView.java
+++ b/src/com/android/launcher3/allapps/AllAppsContainerView.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.launcher3;
+package com.android.launcher3.allapps;
import android.annotation.SuppressLint;
import android.annotation.TargetApi;
@@ -22,6 +22,7 @@ import android.content.Context;
import android.content.res.Resources;
import android.graphics.Point;
import android.graphics.Rect;
+import android.graphics.drawable.Drawable;
import android.graphics.drawable.GradientDrawable;
import android.graphics.drawable.InsetDrawable;
import android.os.Build;
@@ -40,7 +41,24 @@ import android.view.inputmethod.EditorInfo;
import android.view.inputmethod.InputMethodManager;
import android.widget.FrameLayout;
import android.widget.TextView;
-
+import com.android.launcher3.AppInfo;
+import com.android.launcher3.BaseContainerView;
+import com.android.launcher3.BubbleTextView;
+import com.android.launcher3.CellLayout;
+import com.android.launcher3.CheckLongPressHelper;
+import com.android.launcher3.DeleteDropTarget;
+import com.android.launcher3.DeviceProfile;
+import com.android.launcher3.DragSource;
+import com.android.launcher3.DropTarget;
+import com.android.launcher3.Folder;
+import com.android.launcher3.Insettable;
+import com.android.launcher3.ItemInfo;
+import com.android.launcher3.Launcher;
+import com.android.launcher3.LauncherAppState;
+import com.android.launcher3.LauncherTransitionable;
+import com.android.launcher3.R;
+import com.android.launcher3.Utilities;
+import com.android.launcher3.Workspace;
import com.android.launcher3.util.Thunk;
import java.util.List;
@@ -52,6 +70,7 @@ import java.util.regex.Pattern;
*/
interface HeaderElevationController {
void onScroll(int scrollY);
+ void updateBackgroundPadding(Drawable bg);
void disable();
}
@@ -62,8 +81,8 @@ interface HeaderElevationController {
final class HeaderElevationControllerV16 implements HeaderElevationController {
private final View mShadow;
-
private final float mScrollToElevation;
+ private final Rect mTmpRect = new Rect();
public HeaderElevationControllerV16(View header) {
Resources res = header.getContext().getResources();
@@ -90,6 +109,15 @@ final class HeaderElevationControllerV16 implements HeaderElevationController {
}
@Override
+ public void updateBackgroundPadding(Drawable bg) {
+ bg.getPadding(mTmpRect);
+ FrameLayout.LayoutParams lp = (FrameLayout.LayoutParams) mShadow.getLayoutParams();
+ lp.leftMargin = mTmpRect.left;
+ lp.rightMargin = mTmpRect.right;
+ mShadow.requestLayout();
+ }
+
+ @Override
public void disable() {
ViewGroup parent = (ViewGroup) mShadow.getParent();
if (parent != null) {
@@ -128,15 +156,20 @@ final class HeaderElevationControllerVL implements HeaderElevationController {
}
@Override
+ public void updateBackgroundPadding(Drawable bg) {
+ // Do nothing, the background padding on the header view is already applied
+ }
+
+ @Override
public void disable() { }
}
/**
* The all apps view container.
*/
-public class AppsContainerView extends BaseContainerView implements DragSource, Insettable,
+public class AllAppsContainerView extends BaseContainerView implements DragSource, Insettable,
TextWatcher, TextView.OnEditorActionListener, LauncherTransitionable,
- AlphabeticalAppsList.AdapterChangedCallback, AppsGridAdapter.PredictionBarSpacerCallbacks,
+ AlphabeticalAppsList.AdapterChangedCallback, AllAppsGridAdapter.PredictionBarSpacerCallbacks,
View.OnTouchListener, View.OnClickListener, View.OnLongClickListener,
ViewTreeObserver.OnPreDrawListener {
@@ -155,18 +188,18 @@ public class AppsContainerView extends BaseContainerView implements DragSource,
@Thunk Launcher mLauncher;
@Thunk AlphabeticalAppsList mApps;
private LayoutInflater mLayoutInflater;
- private AppsGridAdapter mAdapter;
+ private AllAppsGridAdapter mAdapter;
private RecyclerView.LayoutManager mLayoutManager;
private RecyclerView.ItemDecoration mItemDecoration;
private FrameLayout mContentView;
- @Thunk AppsContainerRecyclerView mAppsRecyclerView;
+ @Thunk AllAppsRecyclerView mAppsRecyclerView;
private ViewGroup mPredictionBarView;
private View mHeaderView;
private View mSearchBarContainerView;
private View mSearchButtonView;
private View mDismissSearchButtonView;
- private AppsContainerSearchEditTextView mSearchBarEditView;
+ private AllAppsSearchEditView mSearchBarEditView;
private HeaderElevationController mElevationController;
@@ -188,15 +221,15 @@ public class AppsContainerView extends BaseContainerView implements DragSource,
private CheckLongPressHelper mPredictionIconCheckForLongPress;
private View mPredictionIconUnderTouch;
- public AppsContainerView(Context context) {
+ public AllAppsContainerView(Context context) {
this(context, null);
}
- public AppsContainerView(Context context, AttributeSet attrs) {
+ public AllAppsContainerView(Context context, AttributeSet attrs) {
this(context, attrs, 0);
}
- public AppsContainerView(Context context, AttributeSet attrs, int defStyleAttr) {
+ public AllAppsContainerView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
LauncherAppState app = LauncherAppState.getInstance();
Resources res = context.getResources();
@@ -205,18 +238,19 @@ public class AppsContainerView extends BaseContainerView implements DragSource,
DeviceProfile grid = mLauncher.getDeviceProfile();
mContainerInset = context.getResources().getDimensionPixelSize(
- R.dimen.apps_container_inset);
- mPredictionBarHeight = grid.allAppsCellHeightPx +
- 2 * res.getDimensionPixelSize(R.dimen.apps_prediction_icon_top_bottom_padding);
+ R.dimen.all_apps_container_inset);
+ mPredictionBarHeight = grid.allAppsIconSizePx + grid.iconDrawablePaddingOriginalPx +
+ grid.allAppsIconTextSizePx +
+ 2 * res.getDimensionPixelSize(R.dimen.all_apps_prediction_icon_top_bottom_padding);
mLayoutInflater = LayoutInflater.from(context);
- mNumAppsPerRow = grid.appsViewNumCols;
- mNumPredictedAppsPerRow = grid.appsViewNumPredictiveCols;
+ mNumAppsPerRow = grid.allAppsNumCols;
+ mNumPredictedAppsPerRow = grid.allAppsNumPredictiveCols;
mApps = new AlphabeticalAppsList(context, mNumAppsPerRow, mNumPredictedAppsPerRow);
mApps.setAdapterChangedCallback(this);
- mAdapter = new AppsGridAdapter(context, mApps, mNumAppsPerRow, this, this, mLauncher, this);
- mAdapter.setEmptySearchText(res.getString(R.string.loading_apps_message));
+ mAdapter = new AllAppsGridAdapter(context, mApps, mNumAppsPerRow, this, this, mLauncher, this);
+ mAdapter.setEmptySearchText(res.getString(R.string.all_apps_loading_message));
mAdapter.setNumAppsPerRow(mNumAppsPerRow);
mAdapter.setPredictionRowHeight(mPredictionBarHeight);
mLayoutManager = mAdapter.getLayoutManager();
@@ -340,13 +374,13 @@ public class AppsContainerView extends BaseContainerView implements DragSource,
mSearchBarContainerView = findViewById(R.id.app_search_container);
mDismissSearchButtonView = mSearchBarContainerView.findViewById(R.id.dismiss_search_button);
mDismissSearchButtonView.setOnClickListener(this);
- mSearchBarEditView = (AppsContainerSearchEditTextView) findViewById(R.id.app_search_box);
+ mSearchBarEditView = (AllAppsSearchEditView) findViewById(R.id.apps_search_box);
if (mSearchBarEditView != null) {
mSearchBarEditView.addTextChangedListener(this);
mSearchBarEditView.setOnEditorActionListener(this);
if (DISMISS_SEARCH_ON_BACK) {
mSearchBarEditView.setOnBackKeyListener(
- new AppsContainerSearchEditTextView.OnBackKeyListener() {
+ new AllAppsSearchEditView.OnBackKeyListener() {
@Override
public void onBackKey() {
// Only hide the search field if there is no query, or if there
@@ -360,7 +394,7 @@ public class AppsContainerView extends BaseContainerView implements DragSource,
});
}
}
- mAppsRecyclerView = (AppsContainerRecyclerView) findViewById(R.id.apps_list_view);
+ mAppsRecyclerView = (AllAppsRecyclerView) findViewById(R.id.apps_list_view);
mAppsRecyclerView.setApps(mApps);
mAppsRecyclerView.setNumAppsPerRow(mNumAppsPerRow, mNumPredictedAppsPerRow);
mAppsRecyclerView.setPredictionBarHeight(mPredictionBarHeight);
@@ -388,7 +422,7 @@ public class AppsContainerView extends BaseContainerView implements DragSource,
} else {
// Otherwise, inflate a new icon
icon = (BubbleTextView) mLayoutInflater.inflate(
- R.layout.apps_prediction_bar_icon_view, mPredictionBarView, false);
+ R.layout.all_apps_prediction_bar_icon, mPredictionBarView, false);
icon.setFocusable(true);
mPredictionBarView.addView(icon);
}
@@ -416,8 +450,8 @@ public class AppsContainerView extends BaseContainerView implements DragSource,
LauncherAppState app = LauncherAppState.getInstance();
DeviceProfile grid = mLauncher.getDeviceProfile();
if (grid.updateAppsViewNumCols(getContext().getResources(), mFixedBounds.width())) {
- mNumAppsPerRow = grid.appsViewNumCols;
- mNumPredictedAppsPerRow = grid.appsViewNumPredictiveCols;
+ mNumAppsPerRow = grid.allAppsNumCols;
+ mNumPredictedAppsPerRow = grid.allAppsNumPredictiveCols;
mAppsRecyclerView.setNumAppsPerRow(mNumAppsPerRow, mNumPredictedAppsPerRow);
mAdapter.setNumAppsPerRow(mNumAppsPerRow);
mApps.setNumAppsPerRow(mNumAppsPerRow, mNumPredictedAppsPerRow);
@@ -493,6 +527,7 @@ public class AppsContainerView extends BaseContainerView implements DragSource,
mContentView.setBackground(background);
mAppsRecyclerView.updateBackgroundPadding(background);
mAdapter.updateBackgroundPadding(background);
+ mElevationController.updateBackgroundPadding(background);
getRevealView().setBackground(background.getConstantState().newDrawable());
}
@@ -632,7 +667,7 @@ public class AppsContainerView extends BaseContainerView implements DragSource,
if (queryText.isEmpty()) {
mApps.setFilter(null);
} else {
- String formatStr = getResources().getString(R.string.apps_view_no_search_results);
+ String formatStr = getResources().getString(R.string.all_apps_no_search_results);
mAdapter.setEmptySearchText(String.format(formatStr, queryText));
// Do an intersection of the words in the query and each title, and filter out all the
@@ -679,7 +714,7 @@ public class AppsContainerView extends BaseContainerView implements DragSource,
List<AlphabeticalAppsList.AdapterItem> items = mApps.getAdapterItems();
for (int i = 0; i < items.size(); i++) {
AlphabeticalAppsList.AdapterItem item = items.get(i);
- if (item.viewType == AppsGridAdapter.ICON_VIEW_TYPE) {
+ if (item.viewType == AllAppsGridAdapter.ICON_VIEW_TYPE) {
mAppsRecyclerView.getChildAt(i).performClick();
getInputMethodManager().hideSoftInputFromWindow(getWindowToken(), 0);
return true;
diff --git a/src/com/android/launcher3/AppsGridAdapter.java b/src/com/android/launcher3/allapps/AllAppsGridAdapter.java
index a593a5715..e010270ce 100644
--- a/src/com/android/launcher3/AppsGridAdapter.java
+++ b/src/com/android/launcher3/allapps/AllAppsGridAdapter.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.launcher3;
+package com.android.launcher3.allapps;
import android.content.Context;
import android.content.res.Resources;
@@ -29,6 +29,12 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
+import com.android.launcher3.AppInfo;
+import com.android.launcher3.BubbleTextView;
+import com.android.launcher3.DeviceProfile;
+import com.android.launcher3.Launcher;
+import com.android.launcher3.R;
+import com.android.launcher3.Utilities;
import com.android.launcher3.util.Thunk;
import java.util.HashMap;
@@ -38,7 +44,7 @@ import java.util.List;
/**
* The grid view adapter of all the apps.
*/
-class AppsGridAdapter extends RecyclerView.Adapter<AppsGridAdapter.ViewHolder> {
+class AllAppsGridAdapter extends RecyclerView.Adapter<AllAppsGridAdapter.ViewHolder> {
public static final String TAG = "AppsGridAdapter";
private static final boolean DEBUG = false;
@@ -48,7 +54,7 @@ class AppsGridAdapter extends RecyclerView.Adapter<AppsGridAdapter.ViewHolder> {
// A normal icon
public static final int ICON_VIEW_TYPE = 1;
// The message shown when there are no filtered results
- public static final int EMPTY_VIEW_TYPE = 2;
+ public static final int EMPTY_SEARCH_VIEW_TYPE = 2;
// The spacer used for the prediction bar
public static final int PREDICTION_BAR_SPACER_TYPE = 3;
@@ -88,7 +94,7 @@ class AppsGridAdapter extends RecyclerView.Adapter<AppsGridAdapter.ViewHolder> {
return mAppsPerRow;
}
- if (mApps.getAdapterItems().get(position).viewType != AppsGridAdapter.ICON_VIEW_TYPE) {
+ if (mApps.getAdapterItems().get(position).viewType != AllAppsGridAdapter.ICON_VIEW_TYPE) {
// Both the section breaks and predictive bar span the full width
return mAppsPerRow;
} else {
@@ -255,7 +261,7 @@ class AppsGridAdapter extends RecyclerView.Adapter<AppsGridAdapter.ViewHolder> {
private boolean shouldDrawItemDivider(ViewHolder holder,
List<AlphabeticalAppsList.AdapterItem> items) {
int pos = holder.getPosition();
- return items.get(pos).viewType == AppsGridAdapter.PREDICTION_BAR_SPACER_TYPE;
+ return items.get(pos).viewType == AllAppsGridAdapter.PREDICTION_BAR_SPACER_TYPE;
}
/**
@@ -267,12 +273,12 @@ class AppsGridAdapter extends RecyclerView.Adapter<AppsGridAdapter.ViewHolder> {
AlphabeticalAppsList.AdapterItem item = items.get(pos);
// Ensure it's an icon
- if (item.viewType != AppsGridAdapter.ICON_VIEW_TYPE) {
+ if (item.viewType != AllAppsGridAdapter.ICON_VIEW_TYPE) {
return false;
}
// Draw the section header for the first item in each section
return (childIndex == 0) ||
- (items.get(pos - 1).viewType == AppsGridAdapter.SECTION_BREAK_VIEW_TYPE);
+ (items.get(pos - 1).viewType == AllAppsGridAdapter.SECTION_BREAK_VIEW_TYPE);
}
}
@@ -299,7 +305,7 @@ class AppsGridAdapter extends RecyclerView.Adapter<AppsGridAdapter.ViewHolder> {
@Thunk Paint mSectionTextPaint;
@Thunk Paint mPredictedAppsDividerPaint;
- public AppsGridAdapter(Context context, AlphabeticalAppsList apps, int appsPerRow,
+ public AllAppsGridAdapter(Context context, AlphabeticalAppsList apps, int appsPerRow,
PredictionBarSpacerCallbacks pbCb, View.OnTouchListener touchListener,
View.OnClickListener iconClickListener, View.OnLongClickListener iconLongClickListener) {
Resources res = context.getResources();
@@ -316,14 +322,14 @@ class AppsGridAdapter extends RecyclerView.Adapter<AppsGridAdapter.ViewHolder> {
mTouchListener = touchListener;
mIconClickListener = iconClickListener;
mIconLongClickListener = iconLongClickListener;
- mStartMargin = res.getDimensionPixelSize(R.dimen.apps_grid_view_start_margin);
- mSectionHeaderOffset = res.getDimensionPixelSize(R.dimen.apps_grid_section_y_offset);
- mPaddingStart = res.getDimensionPixelSize(R.dimen.apps_container_inset);
+ mStartMargin = res.getDimensionPixelSize(R.dimen.all_apps_grid_view_start_margin);
+ mSectionHeaderOffset = res.getDimensionPixelSize(R.dimen.all_apps_grid_section_y_offset);
+ mPaddingStart = res.getDimensionPixelSize(R.dimen.all_apps_container_inset);
mSectionTextPaint = new Paint();
mSectionTextPaint.setTextSize(res.getDimensionPixelSize(
- R.dimen.apps_view_section_text_size));
- mSectionTextPaint.setColor(res.getColor(R.color.apps_view_section_text_color));
+ R.dimen.all_apps_grid_section_text_size));
+ mSectionTextPaint.setColor(res.getColor(R.color.all_apps_grid_section_text_color));
mSectionTextPaint.setAntiAlias(true);
mPredictedAppsDividerPaint = new Paint();
@@ -394,8 +400,8 @@ class AppsGridAdapter extends RecyclerView.Adapter<AppsGridAdapter.ViewHolder> {
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
switch (viewType) {
- case EMPTY_VIEW_TYPE:
- return new ViewHolder(mLayoutInflater.inflate(R.layout.apps_empty_view, parent,
+ case EMPTY_SEARCH_VIEW_TYPE:
+ return new ViewHolder(mLayoutInflater.inflate(R.layout.all_apps_empty_search, parent,
false));
case SECTION_BREAK_VIEW_TYPE:
return new ViewHolder(new View(parent.getContext()));
@@ -408,7 +414,7 @@ class AppsGridAdapter extends RecyclerView.Adapter<AppsGridAdapter.ViewHolder> {
return new ViewHolder(v);
case ICON_VIEW_TYPE:
BubbleTextView icon = (BubbleTextView) mLayoutInflater.inflate(
- R.layout.apps_grid_icon_view, parent, false);
+ R.layout.all_apps_icon, parent, false);
icon.setOnTouchListener(mTouchListener);
icon.setOnClickListener(mIconClickListener);
icon.setOnLongClickListener(mIconLongClickListener);
@@ -437,7 +443,7 @@ class AppsGridAdapter extends RecyclerView.Adapter<AppsGridAdapter.ViewHolder> {
}
});
break;
- case EMPTY_VIEW_TYPE:
+ case EMPTY_SEARCH_VIEW_TYPE:
TextView emptyViewText = (TextView) holder.mContent.findViewById(R.id.empty_text);
emptyViewText.setText(mEmptySearchText);
break;
@@ -456,7 +462,7 @@ class AppsGridAdapter extends RecyclerView.Adapter<AppsGridAdapter.ViewHolder> {
@Override
public int getItemViewType(int position) {
if (mApps.hasNoFilteredResults()) {
- return EMPTY_VIEW_TYPE;
+ return EMPTY_SEARCH_VIEW_TYPE;
}
AlphabeticalAppsList.AdapterItem item = mApps.getAdapterItems().get(position);
diff --git a/src/com/android/launcher3/AppsContainerRecyclerView.java b/src/com/android/launcher3/allapps/AllAppsRecyclerView.java
index 109be7e02..e95fa325a 100644
--- a/src/com/android/launcher3/AppsContainerRecyclerView.java
+++ b/src/com/android/launcher3/allapps/AllAppsRecyclerView.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.launcher3;
+package com.android.launcher3.allapps;
import android.animation.ObjectAnimator;
import android.content.Context;
@@ -29,6 +29,11 @@ import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewConfiguration;
+import com.android.launcher3.BaseRecyclerView;
+import com.android.launcher3.DeviceProfile;
+import com.android.launcher3.Launcher;
+import com.android.launcher3.R;
+import com.android.launcher3.Utilities;
import java.util.List;
@@ -36,7 +41,7 @@ import java.util.List;
* A RecyclerView with custom fastscroll support. This is the main container for the all apps
* icons.
*/
-public class AppsContainerRecyclerView extends BaseContainerRecyclerView {
+public class AllAppsRecyclerView extends BaseRecyclerView {
/**
* The current scroll state of the recycler view. We use this in updateVerticalScrollbarBounds()
@@ -82,38 +87,38 @@ public class AppsContainerRecyclerView extends BaseContainerRecyclerView {
private Launcher mLauncher;
- public AppsContainerRecyclerView(Context context) {
+ public AllAppsRecyclerView(Context context) {
this(context, null);
}
- public AppsContainerRecyclerView(Context context, AttributeSet attrs) {
+ public AllAppsRecyclerView(Context context, AttributeSet attrs) {
this(context, attrs, 0);
}
- public AppsContainerRecyclerView(Context context, AttributeSet attrs, int defStyleAttr) {
+ public AllAppsRecyclerView(Context context, AttributeSet attrs, int defStyleAttr) {
this(context, attrs, defStyleAttr, 0);
}
- public AppsContainerRecyclerView(Context context, AttributeSet attrs, int defStyleAttr,
+ public AllAppsRecyclerView(Context context, AttributeSet attrs, int defStyleAttr,
int defStyleRes) {
super(context, attrs, defStyleAttr);
mLauncher = (Launcher) context;
Resources res = context.getResources();
- int fastScrollerSize = res.getDimensionPixelSize(R.dimen.apps_view_fast_scroll_popup_size);
- mScrollbar = res.getDrawable(R.drawable.apps_list_scrollbar_thumb);
- mFastScrollerBg = res.getDrawable(R.drawable.apps_list_fastscroll_bg);
+ int fastScrollerSize = res.getDimensionPixelSize(R.dimen.all_apps_fast_scroll_popup_size);
+ mScrollbar = res.getDrawable(R.drawable.all_apps_scrollbar_thumb);
+ mFastScrollerBg = res.getDrawable(R.drawable.all_apps_fastscroll_bg);
mFastScrollerBg.setBounds(0, 0, fastScrollerSize, fastScrollerSize);
mFastScrollTextPaint = new Paint();
mFastScrollTextPaint.setColor(Color.WHITE);
mFastScrollTextPaint.setAntiAlias(true);
mFastScrollTextPaint.setTextSize(res.getDimensionPixelSize(
- R.dimen.apps_view_fast_scroll_text_size));
- mScrollbarWidth = res.getDimensionPixelSize(R.dimen.apps_view_fast_scroll_bar_width);
+ R.dimen.all_apps_fast_scroll_text_size));
+ mScrollbarWidth = res.getDimensionPixelSize(R.dimen.all_apps_fast_scroll_bar_width);
mScrollbarMinHeight =
- res.getDimensionPixelSize(R.dimen.apps_view_fast_scroll_bar_min_height);
+ res.getDimensionPixelSize(R.dimen.all_apps_fast_scroll_bar_min_height);
mScrollbarInset =
- res.getDimensionPixelSize(R.dimen.apps_view_fast_scroll_scrubber_touch_inset);
+ res.getDimensionPixelSize(R.dimen.all_apps_fast_scroll_scrubber_touch_inset);
setFastScrollerAlpha(getFastScrollerAlpha());
setOverScrollMode(View.OVER_SCROLL_NEVER);
}
@@ -135,10 +140,10 @@ public class AppsContainerRecyclerView extends BaseContainerRecyclerView {
DeviceProfile grid = mLauncher.getDeviceProfile();
RecyclerView.RecycledViewPool pool = getRecycledViewPool();
int approxRows = (int) Math.ceil(grid.availableHeightPx / grid.allAppsIconSizePx);
- pool.setMaxRecycledViews(AppsGridAdapter.PREDICTION_BAR_SPACER_TYPE, 1);
- pool.setMaxRecycledViews(AppsGridAdapter.EMPTY_VIEW_TYPE, 1);
- pool.setMaxRecycledViews(AppsGridAdapter.ICON_VIEW_TYPE, approxRows * mNumAppsPerRow);
- pool.setMaxRecycledViews(AppsGridAdapter.SECTION_BREAK_VIEW_TYPE, approxRows);
+ pool.setMaxRecycledViews(AllAppsGridAdapter.PREDICTION_BAR_SPACER_TYPE, 1);
+ pool.setMaxRecycledViews(AllAppsGridAdapter.EMPTY_SEARCH_VIEW_TYPE, 1);
+ pool.setMaxRecycledViews(AllAppsGridAdapter.ICON_VIEW_TYPE, approxRows * mNumAppsPerRow);
+ pool.setMaxRecycledViews(AllAppsGridAdapter.SECTION_BREAK_VIEW_TYPE, approxRows);
}
public void updateBackgroundPadding(Drawable background) {
@@ -511,7 +516,7 @@ public class AppsContainerRecyclerView extends BaseContainerRecyclerView {
int position = getChildPosition(child);
if (position != NO_POSITION) {
AlphabeticalAppsList.AdapterItem item = items.get(position);
- if (item.viewType == AppsGridAdapter.ICON_VIEW_TYPE) {
+ if (item.viewType == AllAppsGridAdapter.ICON_VIEW_TYPE) {
stateOut.rowIndex = findRowForAppIndex(item.appIndex);
stateOut.rowTopOffset = getLayoutManager().getDecoratedTop(child);
stateOut.rowHeight = child.getHeight();
diff --git a/src/com/android/launcher3/AppsRecyclerViewContainer.java b/src/com/android/launcher3/allapps/AllAppsRecyclerViewContainerView.java
index 6411bace4..8a8afde51 100644
--- a/src/com/android/launcher3/AppsRecyclerViewContainer.java
+++ b/src/com/android/launcher3/allapps/AllAppsRecyclerViewContainerView.java
@@ -13,29 +13,37 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.launcher3;
+package com.android.launcher3.allapps;
import android.content.Context;
import android.graphics.Bitmap;
import android.util.AttributeSet;
import android.view.ViewGroup;
import android.widget.FrameLayout;
-
+import com.android.launcher3.BubbleTextView;
import com.android.launcher3.BubbleTextView.BubbleTextShadowHandler;
+import com.android.launcher3.ClickShadowView;
+import com.android.launcher3.DeviceProfile;
+import com.android.launcher3.Launcher;
-public class AppsRecyclerViewContainer extends FrameLayout implements BubbleTextShadowHandler {
+/**
+ * A container for RecyclerView to allow for the click shadow view to be shown behind an icon that
+ * is launching.
+ */
+public class AllAppsRecyclerViewContainerView extends FrameLayout
+ implements BubbleTextShadowHandler {
private final ClickShadowView mTouchFeedbackView;
- public AppsRecyclerViewContainer(Context context) {
+ public AllAppsRecyclerViewContainerView(Context context) {
this(context, null);
}
- public AppsRecyclerViewContainer(Context context, AttributeSet attrs) {
+ public AllAppsRecyclerViewContainerView(Context context, AttributeSet attrs) {
this(context, attrs, 0);
}
- public AppsRecyclerViewContainer(Context context, AttributeSet attrs, int defStyleAttr) {
+ public AllAppsRecyclerViewContainerView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
Launcher launcher = (Launcher) context;
diff --git a/src/com/android/launcher3/AppsContainerSearchEditTextView.java b/src/com/android/launcher3/allapps/AllAppsSearchEditView.java
index c688237b2..b7dcd66ed 100644
--- a/src/com/android/launcher3/AppsContainerSearchEditTextView.java
+++ b/src/com/android/launcher3/allapps/AllAppsSearchEditView.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.launcher3;
+package com.android.launcher3.allapps;
import android.content.Context;
import android.util.AttributeSet;
@@ -24,7 +24,7 @@ import android.widget.EditText;
/**
* The edit text for the search container
*/
-public class AppsContainerSearchEditTextView extends EditText {
+public class AllAppsSearchEditView extends EditText {
/**
* Implemented by listeners of the back key.
@@ -35,15 +35,15 @@ public class AppsContainerSearchEditTextView extends EditText {
private OnBackKeyListener mBackKeyListener;
- public AppsContainerSearchEditTextView(Context context) {
+ public AllAppsSearchEditView(Context context) {
this(context, null);
}
- public AppsContainerSearchEditTextView(Context context, AttributeSet attrs) {
+ public AllAppsSearchEditView(Context context, AttributeSet attrs) {
this(context, attrs, 0);
}
- public AppsContainerSearchEditTextView(Context context, AttributeSet attrs, int defStyleAttr) {
+ public AllAppsSearchEditView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
diff --git a/src/com/android/launcher3/AlphabeticalAppsList.java b/src/com/android/launcher3/allapps/AlphabeticalAppsList.java
index 623e4aa73..3d1503d46 100644
--- a/src/com/android/launcher3/AlphabeticalAppsList.java
+++ b/src/com/android/launcher3/allapps/AlphabeticalAppsList.java
@@ -1,9 +1,12 @@
-package com.android.launcher3;
+package com.android.launcher3.allapps;
import android.content.ComponentName;
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
+import com.android.launcher3.AppInfo;
+import com.android.launcher3.DeviceProfile;
+import com.android.launcher3.Launcher;
import com.android.launcher3.compat.AlphabeticIndexCompat;
import com.android.launcher3.model.AppNameComparator;
@@ -81,7 +84,7 @@ public class AlphabeticalAppsList {
public static AdapterItem asSectionBreak(int pos, SectionInfo section) {
AdapterItem item = new AdapterItem();
- item.viewType = AppsGridAdapter.SECTION_BREAK_VIEW_TYPE;
+ item.viewType = AllAppsGridAdapter.SECTION_BREAK_VIEW_TYPE;
item.position = pos;
item.sectionInfo = section;
section.sectionBreakItem = item;
@@ -90,7 +93,7 @@ public class AlphabeticalAppsList {
public static AdapterItem asPredictionBarSpacer(int pos) {
AdapterItem item = new AdapterItem();
- item.viewType = AppsGridAdapter.PREDICTION_BAR_SPACER_TYPE;
+ item.viewType = AllAppsGridAdapter.PREDICTION_BAR_SPACER_TYPE;
item.position = pos;
return item;
}
@@ -98,7 +101,7 @@ public class AlphabeticalAppsList {
public static AdapterItem asApp(int pos, SectionInfo section, String sectionName,
int sectionAppIndex, AppInfo appInfo, int appIndex) {
AdapterItem item = new AdapterItem();
- item.viewType = AppsGridAdapter.ICON_VIEW_TYPE;
+ item.viewType = AllAppsGridAdapter.ICON_VIEW_TYPE;
item.position = pos;
item.sectionInfo = section;
item.sectionName = sectionName;
@@ -516,7 +519,7 @@ public class AlphabeticalAppsList {
*/
private void mergeSections() {
// Go through each section and try and merge some of the sections
- if (AppsContainerView.GRID_MERGE_SECTIONS && !hasFilter()) {
+ if (AllAppsContainerView.GRID_MERGE_SECTIONS && !hasFilter()) {
int sectionAppCount = 0;
for (int i = 0; i < mSections.size(); i++) {
SectionInfo section = mSections.get(i);
diff --git a/src/com/android/launcher3/widget/WidgetsContainerRecyclerView.java b/src/com/android/launcher3/widget/WidgetsRecyclerView.java
index 6f15324c1..31ef5d6fc 100644
--- a/src/com/android/launcher3/widget/WidgetsContainerRecyclerView.java
+++ b/src/com/android/launcher3/widget/WidgetsRecyclerView.java
@@ -18,22 +18,22 @@ package com.android.launcher3.widget;
import android.content.Context;
import android.util.AttributeSet;
-import com.android.launcher3.BaseContainerRecyclerView;
+import com.android.launcher3.BaseRecyclerView;
/**
- * The widgets recycler view container.
+ * The widgets recycler view.
*/
-public class WidgetsContainerRecyclerView extends BaseContainerRecyclerView {
+public class WidgetsRecyclerView extends BaseRecyclerView {
- public WidgetsContainerRecyclerView(Context context) {
+ public WidgetsRecyclerView(Context context) {
this(context, null);
}
- public WidgetsContainerRecyclerView(Context context, AttributeSet attrs) {
+ public WidgetsRecyclerView(Context context, AttributeSet attrs) {
this(context, attrs, 0);
}
- public WidgetsContainerRecyclerView(Context context, AttributeSet attrs, int defStyleAttr) {
+ public WidgetsRecyclerView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}