diff options
author | Hyunyoung Song <hyunyoungs@google.com> | 2015-04-08 19:01:34 -0700 |
---|---|---|
committer | Hyunyoung Song <hyunyoungs@google.com> | 2015-04-08 19:01:34 -0700 |
commit | 3f471440a8b6b71d4c15501a96befd3b715c9e8f (patch) | |
tree | d5da39d089eed5096a4b10204153d5d6bb798624 /res/layout | |
parent | 85e3d4cc5ea4e554639868069f4fd409731f7bbb (diff) | |
download | android_packages_apps_Trebuchet-3f471440a8b6b71d4c15501a96befd3b715c9e8f.tar.gz android_packages_apps_Trebuchet-3f471440a8b6b71d4c15501a96befd3b715c9e8f.tar.bz2 android_packages_apps_Trebuchet-3f471440a8b6b71d4c15501a96befd3b715c9e8f.zip |
WidgetTray revamp work
- RecyclerView is rendering
- Animation is connected
- Drag and drop is now handled
- UI tweaking: background, margins, more to come.
- Flicker and preview not loading issue:
fixed height for the horizontal scroll view.
- Shortcuts are added
- Widget Preview loading should support shortPress for drop
- UI tweaks left: overlay of arrow when there are more items to scroll
- icons are added in the section header
- Sorting of widget sections and widget horizontal list
- Adding all the padding constants to dimen.xml file
- RecyclerView should only support one view type
For items to be addressed in follow up patches OR CLs,
TODO is added to the comment.
b/19897708
Change-Id: Ibfc4da1696a23d20bada93db46e126706eb13cdc
Diffstat (limited to 'res/layout')
-rw-r--r-- | res/layout/apps_customize_pane.xml | 62 | ||||
-rw-r--r-- | res/layout/apps_list_row_view.xml | 2 | ||||
-rw-r--r-- | res/layout/widget_cell.xml (renamed from res/layout/apps_customize_widget.xml) | 64 | ||||
-rw-r--r-- | res/layout/widgets_list_row_view.xml | 89 | ||||
-rw-r--r-- | res/layout/widgets_view.xml | 49 |
5 files changed, 161 insertions, 105 deletions
diff --git a/res/layout/apps_customize_pane.xml b/res/layout/apps_customize_pane.xml deleted file mode 100644 index e42576ffe..000000000 --- a/res/layout/apps_customize_pane.xml +++ /dev/null @@ -1,62 +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. ---> -<com.android.launcher3.AppsCustomizeTabHost - xmlns:android="http://schemas.android.com/apk/res/android" - xmlns:launcher="http://schemas.android.com/apk/res-auto" - android:clipChildren="false"> - - <LinearLayout - android:id="@+id/content" - android:layout_width="match_parent" - android:layout_height="match_parent" - android:clipChildren="false" - android:orientation="vertical"> - - <FrameLayout - android:layout_width="match_parent" - android:layout_height="0dp" - android:layout_weight="1" - android:clipChildren="false"> - <FrameLayout - android:id="@+id/fake_page_container" - android:layout_width="match_parent" - android:layout_height="match_parent" - android:clipChildren="false" - android:clipToPadding="false"> - <FrameLayout - android:id="@+id/fake_page" - android:layout_width="match_parent" - android:layout_height="match_parent" - android:visibility="invisible" - android:clipToPadding="false" /> - </FrameLayout> - <com.android.launcher3.AppsCustomizePagedView - android:id="@+id/apps_customize_pane_content" - android:layout_width="match_parent" - android:layout_height="match_parent" - launcher:widgetCountX="@integer/apps_customize_widget_cell_count_x" - launcher:widgetCountY="@integer/apps_customize_widget_cell_count_y" - launcher:maxGap="@dimen/workspace_max_gap" - launcher:pageIndicator="@+id/apps_customize_page_indicator" /> - </FrameLayout> - <include - android:id="@+id/apps_customize_page_indicator" - layout="@layout/page_indicator" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_gravity="center" /> - </LinearLayout> -</com.android.launcher3.AppsCustomizeTabHost> diff --git a/res/layout/apps_list_row_view.xml b/res/layout/apps_list_row_view.xml index 83c175bb8..e80285b95 100644 --- a/res/layout/apps_list_row_view.xml +++ b/res/layout/apps_list_row_view.xml @@ -30,4 +30,4 @@ android:textColor="@color/apps_view_section_text_color" android:textSize="@dimen/apps_view_section_text_size" android:focusable="false" /> -</LinearLayout>
\ No newline at end of file +</LinearLayout> diff --git a/res/layout/apps_customize_widget.xml b/res/layout/widget_cell.xml index a8344e3ff..1286a622b 100644 --- a/res/layout/apps_customize_widget.xml +++ b/res/layout/widget_cell.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<!-- Copyright (C) 2011 The Android Open Source Project +<!-- 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. @@ -13,58 +13,26 @@ See the License for the specific language governing permissions and limitations under the License. --> -<com.android.launcher3.PagedViewWidget +<com.android.launcher3.widget.WidgetCell xmlns:android="http://schemas.android.com/apk/res/android" xmlns:launcher="http://schemas.android.com/apk/res-auto" - android:layout_width="match_parent" - android:layout_height="match_parent" + android:layout_width="wrap_content" + android:layout_height="wrap_content" android:layout_weight="1" android:orientation="vertical" - android:background="@drawable/focusable_view_bg" android:focusable="true"> <LinearLayout - android:orientation="horizontal" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_weight="1"> - <FrameLayout - android:id="@+id/left_border" - android:layout_width="1dp" - android:layout_height="match_parent" - android:background="@color/widget_text_panel" - android:visibility="gone" /> - - <!-- The preview of the widget or shortcut. --> - <com.android.launcher3.PagedViewWidgetImageView - android:id="@+id/widget_preview" - style="@style/PagedViewWidgetImageView" - android:layout_width="match_parent" - android:layout_height="match_parent" - android:layout_weight="1" - android:paddingTop="@dimen/app_widget_preview_padding_top" - android:paddingEnd="@dimen/app_widget_preview_padding_right" - android:paddingRight="@dimen/app_widget_preview_padding_right" - android:scaleType="matrix" /> - <FrameLayout - android:id="@+id/right_border" - android:layout_width="1dp" - android:layout_height="match_parent" - android:background="@color/widget_text_panel" - android:visibility="gone" /> - </LinearLayout> - - <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" - android:paddingTop="@dimen/app_widget_preview_label_vertical_padding" - android:paddingBottom="@dimen/app_widget_preview_label_vertical_padding" - android:paddingLeft="@dimen/app_widget_preview_label_horizontal_padding" - android:paddingRight="@dimen/app_widget_preview_label_horizontal_padding" - android:background="@color/widget_text_panel" + android:paddingTop="@dimen/widget_preview_label_vertical_padding" + android:paddingBottom="@dimen/widget_preview_label_vertical_padding" + android:paddingLeft="@dimen/widget_preview_label_horizontal_padding" + android:paddingRight="@dimen/widget_preview_label_horizontal_padding" android:orientation="horizontal"> + <!-- The name of the widget. --> <TextView android:id="@+id/widget_name" @@ -91,6 +59,7 @@ android:layout_height="wrap_content" android:layout_gravity="center" android:layout_marginStart="5dp" + android:layout_marginLeft="5dp" android:layout_weight="0" android:gravity="start" @@ -101,5 +70,16 @@ android:shadowColor="#B0000000" /> </LinearLayout> + <!-- The image of the widget. --> + <com.android.launcher3.widget.WidgetImageView + android:id="@+id/widget_preview" + style="@style/WidgetImageView" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_weight="1" + android:paddingTop="@dimen/widget_preview_padding_top" + android:paddingEnd="@dimen/widget_preview_padding_right" + android:paddingRight="@dimen/widget_preview_padding_right" + android:scaleType="matrix" /> -</com.android.launcher3.PagedViewWidget> +</com.android.launcher3.widget.WidgetCell> diff --git a/res/layout/widgets_list_row_view.xml b/res/layout/widgets_list_row_view.xml new file mode 100644 index 000000000..c7863c7c3 --- /dev/null +++ b/res/layout/widgets_list_row_view.xml @@ -0,0 +1,89 @@ +<?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. +--> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/widgets_cell_list_container" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="vertical" + android:layout_marginLeft="8dp" + android:layout_marginRight="8dp" + android:layout_marginTop="8dp" + android:layout_marginBottom="8dp" + android:focusable="true" + android:background="@drawable/focusable_view_bg" + android:descendantFocusability="afterDescendants"> + + <!-- Section info --> + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="horizontal" + android:focusable="true" + android:background="@drawable/focusable_view_bg" + android:descendantFocusability="afterDescendants"> + <ImageView + android:id="@+id/section_image" + android:layout_width="@dimen/widget_section_height" + android:layout_height="@dimen/widget_section_height" + android:paddingLeft="@dimen/widget_section_icon_padding" + android:paddingRight="@dimen/widget_section_icon_padding" + android:paddingTop="@dimen/widget_section_icon_padding" + android:paddingBottom="@dimen/widget_section_icon_padding" + android:background="@color/widget_text_panel" + /> + <TextView + android:id="@+id/section" + android:layout_width="match_parent" + android:layout_height="@dimen/widget_section_height" + android:paddingTop="8dp" + android:paddingLeft="16dp" + android:paddingRight="16dp" + android:gravity="start|center_vertical" + android:textColor="@color/widgets_view_section_text_color" + android:background="@color/widget_text_panel" + android:textSize="20sp" + android:focusable="false" /> + </LinearLayout> + + <!-- Widget list --> + <RelativeLayout + android:layout_width="match_parent" + android:layout_height="match_parent" + android:layout_gravity="end" + > + <!-- TODO(hyunyoungs): replace the indicator with actual assets. --> + <FrameLayout + android:id="@+id/scrollable_indicator" + android:layout_gravity="center_vertical" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:background="@drawable/ic_pageindicator_default" + android:visibility="invisible" + /> + <HorizontalScrollView + android:id="@+id/widgets_scroll_container" + android:layout_width="match_parent" + android:layout_height="@dimen/widget_cell_height" + android:scrollbars="none" > + <LinearLayout + android:id="@+id/widgets_cell_list" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:orientation="horizontal" /> + </HorizontalScrollView> + </RelativeLayout> +</LinearLayout> diff --git a/res/layout/widgets_view.xml b/res/layout/widgets_view.xml new file mode 100644 index 000000000..8e7ed161a --- /dev/null +++ b/res/layout/widgets_view.xml @@ -0,0 +1,49 @@ +<?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. +--> +<!-- 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.widget.WidgetsContainerView + xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/widgets_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:paddingTop="@dimen/widget_container_inset" + android:paddingBottom="@dimen/widget_container_inset" + android:descendantFocusability="afterDescendants"> + + <!-- Temporary until finalizing on animation. --> + <include + android:id="@+id/widgets_reveal_view" + layout="@layout/apps_reveal_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:layout_gravity="center" /> + + <LinearLayout + android:id="@+id/content" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:clipChildren="false" + android:orientation="vertical"> + + <android.support.v7.widget.RecyclerView + android:id="@+id/widgets_list_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:background="@drawable/quantum_panel_dark"/> + </LinearLayout> +</com.android.launcher3.widget.WidgetsContainerView>
\ No newline at end of file |