diff options
author | Tony Wickham <twickham@google.com> | 2017-04-13 23:07:57 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2017-04-13 23:07:57 +0000 |
commit | 14780f60c5ef7981c6d7e5c6bee10eef0f67bced (patch) | |
tree | 46ba13b6e6a591e6519e5eb4219188a0a10a0bb6 | |
parent | 5474521b759cb2f78f8f44f7c057b2a7e730677c (diff) | |
parent | 3741f8d9da4f59faedf6812efbcdd59429ab0217 (diff) | |
download | android_packages_apps_Trebuchet-14780f60c5ef7981c6d7e5c6bee10eef0f67bced.tar.gz android_packages_apps_Trebuchet-14780f60c5ef7981c6d7e5c6bee10eef0f67bced.tar.bz2 android_packages_apps_Trebuchet-14780f60c5ef7981c6d7e5c6bee10eef0f67bced.zip |
Merge "Update widgets bottom sheet to match redlines" into ub-launcher3-dorval
am: 3741f8d9da
Change-Id: If6fbb0dcd5ea8a947c586bddc624b98436863f92
-rw-r--r-- | res/layout/widgets_and_more.xml | 50 | ||||
-rw-r--r-- | res/values/strings.xml | 4 | ||||
-rw-r--r-- | src/com/android/launcher3/popup/SystemShortcut.java | 2 | ||||
-rw-r--r-- | src/com/android/launcher3/widget/WidgetsAndMore.java | 62 |
4 files changed, 28 insertions, 90 deletions
diff --git a/res/layout/widgets_and_more.xml b/res/layout/widgets_and_more.xml index 7a6d00688..6764aa7cb 100644 --- a/res/layout/widgets_and_more.xml +++ b/res/layout/widgets_and_more.xml @@ -19,7 +19,8 @@ android:orientation="vertical" android:layout_width="match_parent" android:layout_height="wrap_content" - android:padding="8dp" + android:paddingStart="16dp" + android:paddingTop="28dp" android:background="?android:attr/colorPrimary" android:elevation="@dimen/deep_shortcuts_elevation" android:layout_gravity="bottom"> @@ -27,54 +28,27 @@ <TextView android:id="@+id/title" android:layout_width="match_parent" - android:layout_height="48dp" - android:gravity="center_horizontal|bottom" - android:fontFamily="sans-serif" - android:textStyle="bold" - android:textColor="?android:attr/textColorPrimary" - android:textSize="20sp"/> - - <TextView - android:layout_width="match_parent" - android:layout_height="48dp" - android:gravity="center_horizontal|top" + android:layout_height="wrap_content" + android:gravity="center_horizontal" android:fontFamily="sans-serif" android:textColor="?android:attr/textColorPrimary" - android:textSize="16sp" - android:text="@string/long_press_widget_to_add"/> + android:textSize="24sp"/> <TextView - android:id="@+id/widgets_header" android:layout_width="match_parent" android:layout_height="wrap_content" + android:gravity="center_horizontal" + android:paddingTop="4dp" android:fontFamily="sans-serif" - android:textColor="?android:attr/textColorPrimary" - android:textSize="16sp" - android:textStyle="bold" - android:text="@string/widget_button_text"/> + android:textColor="?android:attr/textColorTertiary" + android:textSize="14sp" + android:text="@string/long_press_widget_to_add"/> <include layout="@layout/widgets_scroll_container" android:id="@+id/widgets" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_marginTop="@dimen/widget_row_padding" - android:layout_marginBottom="@dimen/widget_row_padding"/> - - <TextView - android:id="@+id/shortcuts_header" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:fontFamily="sans-serif" - android:textColor="?android:attr/textColorPrimary" - android:textSize="16sp" - android:textStyle="bold" - android:text="@string/widgets_bottom_sheet_custom_shortcuts_section_title"/> - - <include layout="@layout/widgets_scroll_container" - android:id="@+id/shortcuts" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_marginTop="@dimen/widget_row_padding" - android:layout_marginBottom="@dimen/widget_row_padding" /> + android:layout_marginTop="45dp" + android:layout_marginBottom="40dp"/> </com.android.launcher3.widget.WidgetsAndMore>
\ No newline at end of file diff --git a/res/values/strings.xml b/res/values/strings.xml index eddae621e..4bee87d33 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -205,8 +205,8 @@ <string name="app_waiting_download_title"><xliff:g id="name" example="Messenger">%1$s</xliff:g> waiting to install</string> <!-- Strings for widgets & more in the popup container/bottom sheet --> - <string name="widgets_and_more" translatable="false">Widgets & more</string> - <string name="widgets_bottom_sheet_custom_shortcuts_section_title" translatable="false">Custom shortcuts</string> + <!-- Title for a bottom sheet that shows widgets for a particular app --> + <string name="widgets_bottom_sheet_title"><xliff:g id="name" example="Messenger">%1$s</xliff:g> widgets</string> <!-- Strings for accessibility actions --> <!-- Accessibility action to add an app to workspace. [CHAR_LIMIT=30] --> diff --git a/src/com/android/launcher3/popup/SystemShortcut.java b/src/com/android/launcher3/popup/SystemShortcut.java index 889fc5278..a44471d6c 100644 --- a/src/com/android/launcher3/popup/SystemShortcut.java +++ b/src/com/android/launcher3/popup/SystemShortcut.java @@ -45,7 +45,7 @@ public abstract class SystemShortcut { public static class Widgets extends SystemShortcut { public Widgets() { - super(R.drawable.ic_widget, R.string.widgets_and_more); + super(R.drawable.ic_widget, R.string.widget_button_text); } @Override diff --git a/src/com/android/launcher3/widget/WidgetsAndMore.java b/src/com/android/launcher3/widget/WidgetsAndMore.java index a8e7e3826..401337b16 100644 --- a/src/com/android/launcher3/widget/WidgetsAndMore.java +++ b/src/com/android/launcher3/widget/WidgetsAndMore.java @@ -24,6 +24,7 @@ import android.graphics.Rect; import android.support.v4.view.animation.FastOutSlowInInterpolator; import android.util.AttributeSet; import android.view.ContextThemeWrapper; +import android.view.Gravity; import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.View; @@ -49,8 +50,6 @@ import com.android.launcher3.userevent.nano.LauncherLogProto; import com.android.launcher3.util.PackageUserKey; import com.android.launcher3.util.TouchController; -import java.util.ArrayList; -import java.util.Iterator; import java.util.List; /** @@ -99,7 +98,8 @@ public class WidgetsAndMore extends AbstractFloatingView implements Insettable, public void populateAndShow(ItemInfo itemInfo) { mOriginalItemInfo = itemInfo; - ((TextView) findViewById(R.id.title)).setText(mOriginalItemInfo.title); + ((TextView) findViewById(R.id.title)).setText(getContext().getString( + R.string.widgets_bottom_sheet_title, mOriginalItemInfo.title)); onWidgetsBound(); @@ -116,70 +116,33 @@ public class WidgetsAndMore extends AbstractFloatingView implements Insettable, protected void onWidgetsBound() { List<WidgetItem> widgets = mLauncher.getWidgetsForPackageUser(new PackageUserKey( mOriginalItemInfo.getTargetComponent().getPackageName(), mOriginalItemInfo.user)); - List<WidgetItem> shortcuts = new ArrayList<>(); - // Transfer configurable widgets to shortcuts - Iterator<WidgetItem> widgetsIter = widgets.iterator(); - WidgetItem nextWidget; - while (widgetsIter.hasNext()) { - nextWidget = widgetsIter.next(); - if (nextWidget.activityInfo != null) { - shortcuts.add(nextWidget); - widgetsIter.remove(); - } - } ViewGroup widgetRow = (ViewGroup) findViewById(R.id.widgets); ViewGroup widgetCells = (ViewGroup) widgetRow.findViewById(R.id.widgets_cell_list); - ViewGroup shortcutRow = (ViewGroup) findViewById(R.id.shortcuts); - ViewGroup shortcutCells = (ViewGroup) shortcutRow.findViewById(R.id.widgets_cell_list); - widgetCells.removeAllViews(); - shortcutCells.removeAllViews(); for (int i = 0; i < widgets.size(); i++) { - addItemCell(widgetCells); + WidgetCell widget = addItemCell(widgetCells); + widget.applyFromCellItem(widgets.get(i), LauncherAppState.getInstance(mLauncher) + .getWidgetCache()); + widget.ensurePreview(); + widget.setVisibility(View.VISIBLE); if (i < widgets.size() - 1) { addDivider(widgetCells); } } - for (int i = 0; i < shortcuts.size(); i++) { - addItemCell(shortcutCells); - if (i < shortcuts.size() - 1) { - addDivider(shortcutCells); - } - } - // Bind the views in the horizontal tray regions. - if (widgetCells.getChildCount() > 0) { - for (int i = 0; i < widgets.size(); i++) { - WidgetCell widget = (WidgetCell) widgetCells.getChildAt(i*2); // skip dividers - widget.applyFromCellItem(widgets.get(i), LauncherAppState.getInstance(mLauncher) - .getWidgetCache()); - widget.ensurePreview(); - widget.setVisibility(View.VISIBLE); - } - } else { - removeView(findViewById(R.id.widgets_header)); - } - if (shortcutCells.getChildCount() > 0) { - for (int i = 0; i < shortcuts.size(); i++) { - WidgetCell shortcut = (WidgetCell) shortcutCells.getChildAt(i*2); // skip dividers - shortcut.applyFromCellItem(shortcuts.get(i), LauncherAppState.getInstance(mLauncher) - .getWidgetCache()); - shortcut.ensurePreview(); - shortcut.setVisibility(View.VISIBLE); - } - } else { - removeView(findViewById(R.id.shortcuts_header)); - } + // If there is only one widget, we want to center it instead of left-align. + WidgetsAndMore.LayoutParams params = (WidgetsAndMore.LayoutParams) widgetRow.getLayoutParams(); + params.gravity = widgets.size() == 1 ? Gravity.CENTER_HORIZONTAL : Gravity.START; } private void addDivider(ViewGroup parent) { LayoutInflater.from(getContext()).inflate(R.layout.widget_list_divider, parent, true); } - private void addItemCell(ViewGroup parent) { + private WidgetCell addItemCell(ViewGroup parent) { WidgetCell widget = (WidgetCell) LayoutInflater.from(getContext()).inflate( R.layout.widget_cell, parent, false); @@ -188,6 +151,7 @@ public class WidgetsAndMore extends AbstractFloatingView implements Insettable, widget.setAnimatePreview(false); parent.addView(widget); + return widget; } @Override |