diff options
-rw-r--r-- | res/drawable/ic_setting.xml | 2 | ||||
-rw-r--r-- | res/drawable/ic_wallpaper.xml | 2 | ||||
-rw-r--r-- | res/drawable/ic_widget.xml | 2 | ||||
-rw-r--r-- | res/layout-land/launcher.xml | 2 | ||||
-rw-r--r-- | res/layout-port/launcher.xml | 1 | ||||
-rw-r--r-- | res/layout-sw720dp/launcher.xml | 1 | ||||
-rw-r--r-- | res/layout/drop_target_bar_horz.xml | 1 | ||||
-rw-r--r-- | res/layout/drop_target_bar_vert.xml | 1 | ||||
-rw-r--r-- | res/layout/hotseat.xml | 1 | ||||
-rw-r--r-- | res/layout/overview_panel.xml | 4 | ||||
-rw-r--r-- | res/layout/page_indicator.xml | 1 | ||||
-rw-r--r-- | res/values/colors.xml | 5 | ||||
-rw-r--r-- | res/values/styles.xml | 14 | ||||
-rw-r--r-- | src/com/android/launcher3/CellLayout.java | 3 | ||||
-rw-r--r-- | src/com/android/launcher3/Launcher.java | 5 | ||||
-rw-r--r-- | src/com/android/launcher3/PagedView.java | 8 | ||||
-rw-r--r-- | src/com/android/launcher3/WidgetPreviewLoader.java | 9 | ||||
-rw-r--r-- | src/com/android/launcher3/Workspace.java | 9 | ||||
-rw-r--r-- | src/com/android/launcher3/folder/FolderIcon.java | 3 | ||||
-rw-r--r-- | src/com/android/launcher3/folder/FolderPagedView.java | 4 | ||||
-rw-r--r-- | src/com/android/launcher3/pageindicators/CaretDrawable.java | 2 |
21 files changed, 47 insertions, 33 deletions
diff --git a/res/drawable/ic_setting.xml b/res/drawable/ic_setting.xml index e89c158c8..b0009c59e 100644 --- a/res/drawable/ic_setting.xml +++ b/res/drawable/ic_setting.xml @@ -19,6 +19,6 @@ Copyright (C) 2016 The Android Open Source Project android:viewportWidth="48.0" android:viewportHeight="48.0"> <path - android:fillColor="@color/workspace_icon_text_color" + android:fillColor="?android:attr/textColorPrimary" android:pathData="M38.86 25.95c.08-.64 .14-1.29 .14-1.95s-.06-1.31-.14-1.95l4.23-3.31c.38-.3 .49-.84 .24-1.28l-4-6.93c-.25-.43-.77-.61-1.22-.43l-4.98 2.01c-1.03-.79-2.16-1.46-3.38-1.97L29 4.84c-.09-.47-.5-.84-1-.84h-8c-.5 0-.91 .37-.99 .84l-.75 5.3c-1.22 .51-2.35 1.17-3.38 1.97L9.9 10.1c-.45-.17-.97 0-1.22 .43l-4 6.93c-.25 .43-.14 .97 .24 1.28l4.22 3.31C9.06 22.69 9 23.34 9 24s.06 1.31 .14 1.95l-4.22 3.31c-.38 .3-.49 .84-.24 1.28l4 6.93c.25 .43 .77 .61 1.22 .43l4.98-2.01c1.03 .79 2.16 1.46 3.38 1.97l.75 5.3c.08 .47 .49 .84 .99 .84h8c.5 0 .91-.37 .99-.84l.75-5.3c1.22-.51 2.35-1.17 3.38-1.97l4.98 2.01c.45 .17 .97 0 1.22-.43l4-6.93c.25-.43 .14-.97-.24-1.28l-4.22-3.31zM24 31c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7z"/> </vector> diff --git a/res/drawable/ic_wallpaper.xml b/res/drawable/ic_wallpaper.xml index b7fcfbf55..30f6d1ae4 100644 --- a/res/drawable/ic_wallpaper.xml +++ b/res/drawable/ic_wallpaper.xml @@ -19,6 +19,6 @@ Copyright (C) 2016 The Android Open Source Project android:viewportWidth="48.0" android:viewportHeight="48.0"> <path - android:fillColor="@color/workspace_icon_text_color" + android:fillColor="?android:attr/textColorPrimary" android:pathData="M8 8h14V4H8C5.79 4 4 5.79 4 8v14h4V8zm12 18l-8 10h24l-6-8-4.06 5.42L20 26zm14-9c0-1.66-1.34-3-3-3s-3 1.34-3 3 1.34 3 3 3 3-1.34 3-3zm6-13H26v4h14v14h4V8c0-2.21-1.79-4-4-4zm0 36H26v4h14c2.21 0 4-1.79 4-4V26h-4v14zM8 26H4v14c0 2.21 1.79 4 4 4h14v-4H8V26z"/> </vector> diff --git a/res/drawable/ic_widget.xml b/res/drawable/ic_widget.xml index 97706e36d..6c1469daa 100644 --- a/res/drawable/ic_widget.xml +++ b/res/drawable/ic_widget.xml @@ -19,6 +19,6 @@ Copyright (C) 2016 The Android Open Source Project android:viewportWidth="48.0" android:viewportHeight="48.0"> <path - android:fillColor="@color/workspace_icon_text_color" + android:fillColor="?android:attr/textColorPrimary" android:pathData="M26 26v16h16V26H26zM6 42h16V26H6v16zM6 6v16h16V6H6zm27.31-2.63L22 14.69 33.31 26l11.31-11.31L33.31 3.37z"/> </vector> diff --git a/res/layout-land/launcher.xml b/res/layout-land/launcher.xml index ef0dfdcc6..6c1b1d3ca 100644 --- a/res/layout-land/launcher.xml +++ b/res/layout-land/launcher.xml @@ -35,6 +35,7 @@ <!-- The workspace contains 5 screens of cells --> <!-- DO NOT CHANGE THE ID --> <com.android.launcher3.Workspace + android:theme="@style/HomeScreenElementTheme" android:id="@+id/workspace" android:layout_width="match_parent" android:layout_height="match_parent" @@ -59,6 +60,7 @@ <com.android.launcher3.pageindicators.PageIndicatorCaretLandscape android:id="@+id/page_indicator" + android:theme="@style/HomeScreenElementTheme" android:layout_width="@dimen/dynamic_grid_page_indicator_height" android:layout_height="@dimen/dynamic_grid_page_indicator_height" android:layout_gravity="bottom|left"/> diff --git a/res/layout-port/launcher.xml b/res/layout-port/launcher.xml index dd981dd20..1fdf546b8 100644 --- a/res/layout-port/launcher.xml +++ b/res/layout-port/launcher.xml @@ -36,6 +36,7 @@ <!-- The workspace contains 5 screens of cells --> <!-- DO NOT CHANGE THE ID --> <com.android.launcher3.Workspace + android:theme="@style/HomeScreenElementTheme" android:id="@+id/workspace" android:layout_width="match_parent" android:layout_height="match_parent" diff --git a/res/layout-sw720dp/launcher.xml b/res/layout-sw720dp/launcher.xml index 06cb55040..9ef339402 100644 --- a/res/layout-sw720dp/launcher.xml +++ b/res/layout-sw720dp/launcher.xml @@ -35,6 +35,7 @@ <!-- The workspace contains 5 screens of cells --> <!-- DO NOT CHANGE THE ID --> <com.android.launcher3.Workspace + android:theme="@style/HomeScreenElementTheme" android:layout_gravity="center" android:id="@+id/workspace" android:layout_width="match_parent" diff --git a/res/layout/drop_target_bar_horz.xml b/res/layout/drop_target_bar_horz.xml index ee22d1e74..fcbb54e39 100644 --- a/res/layout/drop_target_bar_horz.xml +++ b/res/layout/drop_target_bar_horz.xml @@ -17,6 +17,7 @@ <com.android.launcher3.DropTargetBar xmlns:android="http://schemas.android.com/apk/res/android" xmlns:launcher="http://schemas.android.com/apk/res-auto" + android:theme="@style/HomeScreenElementTheme" android:layout_width="match_parent" android:layout_height="@dimen/dynamic_grid_drop_target_size" android:layout_gravity="center_horizontal|top" diff --git a/res/layout/drop_target_bar_vert.xml b/res/layout/drop_target_bar_vert.xml index 10b1d7cc8..54d9dfe3a 100644 --- a/res/layout/drop_target_bar_vert.xml +++ b/res/layout/drop_target_bar_vert.xml @@ -15,6 +15,7 @@ limitations under the License. --> <com.android.launcher3.DropTargetBar + android:theme="@style/HomeScreenElementTheme" xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="@dimen/dynamic_grid_drop_target_size" android:orientation="vertical" diff --git a/res/layout/hotseat.xml b/res/layout/hotseat.xml index f5b5bbf71..582a83fbe 100644 --- a/res/layout/hotseat.xml +++ b/res/layout/hotseat.xml @@ -14,6 +14,7 @@ limitations under the License. --> <com.android.launcher3.Hotseat + android:theme="@style/HomeScreenElementTheme" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:launcher="http://schemas.android.com/apk/res-auto"> <com.android.launcher3.CellLayout diff --git a/res/layout/overview_panel.xml b/res/layout/overview_panel.xml index 209172143..78a0f1596 100644 --- a/res/layout/overview_panel.xml +++ b/res/layout/overview_panel.xml @@ -14,8 +14,10 @@ See the License for the specific language governing permissions and limitations under the License. --> -<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" xmlns:launcher="http://schemas.android.com/apk/res-auto" + android:theme="@style/HomeScreenElementTheme" launcher:layout_ignoreInsets="true" android:layout_width="match_parent" android:layout_height="wrap_content" diff --git a/res/layout/page_indicator.xml b/res/layout/page_indicator.xml index 2e1b57f56..e29e5b162 100644 --- a/res/layout/page_indicator.xml +++ b/res/layout/page_indicator.xml @@ -16,6 +16,7 @@ <com.android.launcher3.pageindicators.PageIndicatorLineCaret xmlns:android="http://schemas.android.com/apk/res/android" + android:theme="@style/HomeScreenElementTheme" android:layout_width="match_parent" android:layout_height="@dimen/dynamic_grid_page_indicator_height"> <ImageView diff --git a/res/values/colors.xml b/res/values/colors.xml index a02df16e1..ba0c16402 100644 --- a/res/values/colors.xml +++ b/res/values/colors.xml @@ -25,13 +25,8 @@ <color name="focused_background">#80c6c5c5</color> - <color name="workspace_icon_text_color">#FFF</color> - <color name="workspace_edge_effect_color">#FFFFFFFF</color> - <color name="default_shadow_color_no_alpha">#FF000000</color> - <color name="outline_color">#FFFFFFFF</color> - <color name="spring_loaded_panel_color">#40FFFFFF</color> <color name="spring_loaded_highlighted_panel_border_color">#FFF</color> diff --git a/res/values/styles.xml b/res/values/styles.xml index 8a46e839f..26ddb9c6a 100644 --- a/res/values/styles.xml +++ b/res/values/styles.xml @@ -29,6 +29,17 @@ <style name="LauncherTheme" parent="@style/BaseLauncherTheme"></style> + <!-- + Theme overrides to element on homescreen, i.e., which are drawn on top on wallpaper. + Various foreground colors are overridden to be white so that they are properly visible on + various wallpapers + --> + <style name="HomeScreenElementTheme" parent="@style/LauncherTheme"> + <item name="android:colorEdgeEffect">@android:color/white</item> + <item name="android:textColorPrimary">@android:color/white</item> + <item name="android:textColorSecondary">@android:color/white</item> + </style> + <!-- Theme for the widget container. Overridden on API 26. --> <style name="WidgetContainerTheme" parent="@android:style/Theme.DeviceDefault.Settings"> <item name="android:colorEdgeEffect">?android:attr/textColorSecondaryInverse</item> @@ -76,7 +87,6 @@ <!-- Icon displayed on the worksapce --> <style name="BaseIcon.Workspace"> <item name="customShadows">true</item> - <item name="android:textColor">@color/workspace_icon_text_color</item> <item name="android:shadowRadius">2.0</item> <item name="android:shadowColor">#B0000000</item> </style> @@ -86,7 +96,7 @@ <item name="android:drawablePadding">7.5dp</item> <item name="android:paddingLeft">16dp</item> <item name="android:paddingRight">16dp</item> - <item name="android:textColor">@color/workspace_icon_text_color</item> + <item name="android:textColor">?android:attr/textColorPrimary</item> <item name="android:textSize">@dimen/drop_target_text_size</item> <item name="android:singleLine">true</item> <item name="android:ellipsize">end</item> diff --git a/src/com/android/launcher3/CellLayout.java b/src/com/android/launcher3/CellLayout.java index e0fcbf04d..cac6c065a 100644 --- a/src/com/android/launcher3/CellLayout.java +++ b/src/com/android/launcher3/CellLayout.java @@ -57,6 +57,7 @@ import com.android.launcher3.graphics.DragPreviewProvider; import com.android.launcher3.util.CellAndSpan; import com.android.launcher3.util.GridOccupancy; import com.android.launcher3.util.ParcelableSparseArray; +import com.android.launcher3.util.Themes; import com.android.launcher3.util.Thunk; import java.lang.annotation.Retention; @@ -236,7 +237,7 @@ public class CellLayout extends ViewGroup implements BubbleTextShadowHandler { for (int i = 0; i < mDragOutlines.length; i++) { mDragOutlines[i] = new Rect(-1, -1, -1, -1); } - mDragOutlinePaint.setColor(getResources().getColor(R.color.outline_color)); + mDragOutlinePaint.setColor(Themes.getAttrColor(context, android.R.attr.textColorPrimary)); // When dragging things around the home screens, we show a green outline of // where the item will land. The outlines gradually fade out, leaving a trail diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index 14b9c8290..c5cefa678 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -65,6 +65,7 @@ import android.view.HapticFeedbackConstants; import android.view.KeyEvent; import android.view.KeyboardShortcutGroup; import android.view.KeyboardShortcutInfo; +import android.view.LayoutInflater; import android.view.Menu; import android.view.MotionEvent; import android.view.View; @@ -1432,8 +1433,8 @@ public class Launcher extends BaseActivity * @return A View inflated from layoutResId. */ public View createShortcut(ViewGroup parent, ShortcutInfo info) { - BubbleTextView favorite = (BubbleTextView) getLayoutInflater().inflate(R.layout.app_icon, - parent, false); + BubbleTextView favorite = (BubbleTextView) LayoutInflater.from(parent.getContext()) + .inflate(R.layout.app_icon, parent, false); favorite.applyFromShortcutInfo(info); favorite.setCompoundDrawablePadding(mDeviceProfile.iconDrawablePaddingPx); favorite.setOnClickListener(this); diff --git a/src/com/android/launcher3/PagedView.java b/src/com/android/launcher3/PagedView.java index fb6a611e7..31e3dda32 100644 --- a/src/com/android/launcher3/PagedView.java +++ b/src/com/android/launcher3/PagedView.java @@ -50,6 +50,7 @@ import android.view.animation.Interpolator; import com.android.launcher3.anim.PropertyListBuilder; import com.android.launcher3.pageindicators.PageIndicator; import com.android.launcher3.util.LauncherEdgeEffect; +import com.android.launcher3.util.Themes; import com.android.launcher3.util.Thunk; import java.util.ArrayList; @@ -226,11 +227,10 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc mMinSnapVelocity = (int) (MIN_SNAP_VELOCITY * density); setOnHierarchyChangeListener(this); setWillNotDraw(false); - } - protected void setEdgeGlowColor(int color) { - mEdgeGlowLeft.setColor(color); - mEdgeGlowRight.setColor(color); + int edgeEffectColor = Themes.getAttrColor(getContext(), android.R.attr.colorEdgeEffect); + mEdgeGlowLeft.setColor(edgeEffectColor); + mEdgeGlowRight.setColor(edgeEffectColor); } protected void setDefaultInterpolator(Interpolator interpolator) { diff --git a/src/com/android/launcher3/WidgetPreviewLoader.java b/src/com/android/launcher3/WidgetPreviewLoader.java index 689cc9b3e..6dc65d9a5 100644 --- a/src/com/android/launcher3/WidgetPreviewLoader.java +++ b/src/com/android/launcher3/WidgetPreviewLoader.java @@ -416,19 +416,20 @@ public class WidgetPreviewLoader { float shadowBlur = res.getDimension(R.dimen.widget_preview_shadow_blur); float keyShadowDistance = res.getDimension(R.dimen.widget_preview_key_shadow_distance); float corner = res.getDimension(R.dimen.widget_preview_corner_radius); + int shadowColor = ColorUtils.setAlphaComponent( + res.getColor(R.color.default_shadow_color_no_alpha), + ShadowGenerator.AMBIENT_SHADOW_ALPHA); RectF bounds = new RectF(shadowBlur, shadowBlur, width - shadowBlur, height - shadowBlur - keyShadowDistance); p.setColor(Color.WHITE); // Key shadow - p.setShadowLayer(shadowBlur, 0, keyShadowDistance, - ShadowGenerator.KEY_SHADOW_ALPHA << 24); + p.setShadowLayer(shadowBlur, 0, keyShadowDistance, shadowColor); c.drawRoundRect(bounds, corner, corner, p); // Ambient shadow - p.setShadowLayer(shadowBlur, 0, 0, - ColorUtils.setAlphaComponent(Color.BLACK, ShadowGenerator.AMBIENT_SHADOW_ALPHA)); + p.setShadowLayer(shadowBlur, 0, 0, shadowColor); c.drawRoundRect(bounds, corner, corner, p); p.clearShadowLayer(); diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java index 56aa69e5c..6d52ea3da 100644 --- a/src/com/android/launcher3/Workspace.java +++ b/src/com/android/launcher3/Workspace.java @@ -43,6 +43,7 @@ import android.util.AttributeSet; import android.util.Log; import android.util.Property; import android.util.SparseArray; +import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.View; import android.view.ViewDebug; @@ -528,8 +529,6 @@ public class Workspace extends PagedView // Set the wallpaper dimensions when Launcher starts up setWallpaperDimension(); - - setEdgeGlowColor(getResources().getColor(R.color.workspace_edge_effect_color)); } @Override @@ -622,7 +621,7 @@ public class Workspace extends PagedView if (qsb == null) { // In transposed layout, we add the QSB in the Grid. As workspace does not touch the // edges, we do not need a full width QSB. - qsb = mLauncher.getLayoutInflater().inflate( + qsb = LayoutInflater.from(getContext()).inflate( mLauncher.getDeviceProfile().isVerticalBarLayout() ? R.layout.qsb_container : R.layout.qsb_blocker_view, firstPage, false); @@ -707,7 +706,7 @@ public class Workspace extends PagedView // Inflate the cell layout, but do not add it automatically so that we can get the newly // created CellLayout. - CellLayout newScreen = (CellLayout) mLauncher.getLayoutInflater().inflate( + CellLayout newScreen = (CellLayout) LayoutInflater.from(getContext()).inflate( R.layout.workspace_screen, this, false /* attachToRoot */); newScreen.setOnLongClickListener(mLongClickListener); newScreen.setOnClickListener(mLauncher); @@ -725,7 +724,7 @@ public class Workspace extends PagedView public void createCustomContentContainer() { CellLayout customScreen = (CellLayout) - mLauncher.getLayoutInflater().inflate(R.layout.workspace_screen, this, false); + LayoutInflater.from(getContext()).inflate(R.layout.workspace_screen, this, false); customScreen.disableDragTarget(); customScreen.disableJailContent(); diff --git a/src/com/android/launcher3/folder/FolderIcon.java b/src/com/android/launcher3/folder/FolderIcon.java index 96d56759d..604540022 100644 --- a/src/com/android/launcher3/folder/FolderIcon.java +++ b/src/com/android/launcher3/folder/FolderIcon.java @@ -177,7 +177,8 @@ public class FolderIcon extends FrameLayout implements FolderListener { } DeviceProfile grid = launcher.getDeviceProfile(); - FolderIcon icon = (FolderIcon) LayoutInflater.from(launcher).inflate(resId, group, false); + FolderIcon icon = (FolderIcon) LayoutInflater.from(group.getContext()) + .inflate(resId, group, false); // For performance and compatibility reasons we render the preview using a software layer. // In particular, hardware path clipping has spotty ecosystem support and bad performance. diff --git a/src/com/android/launcher3/folder/FolderPagedView.java b/src/com/android/launcher3/folder/FolderPagedView.java index eecce183a..532e5a6c7 100644 --- a/src/com/android/launcher3/folder/FolderPagedView.java +++ b/src/com/android/launcher3/folder/FolderPagedView.java @@ -35,17 +35,14 @@ import com.android.launcher3.InvariantDeviceProfile; import com.android.launcher3.ItemInfo; import com.android.launcher3.Launcher; import com.android.launcher3.LauncherAppState; -import com.android.launcher3.LauncherModel; import com.android.launcher3.PagedView; import com.android.launcher3.R; import com.android.launcher3.ShortcutAndWidgetContainer; import com.android.launcher3.ShortcutInfo; import com.android.launcher3.Utilities; import com.android.launcher3.Workspace.ItemOperator; -import com.android.launcher3.dragndrop.DragController; import com.android.launcher3.keyboard.ViewGroupFocusHelper; import com.android.launcher3.pageindicators.PageIndicator; -import com.android.launcher3.util.Themes; import com.android.launcher3.util.Thunk; import java.util.ArrayList; @@ -108,7 +105,6 @@ public class FolderPagedView extends PagedView { mIsRtl = Utilities.isRtl(getResources()); setImportantForAccessibility(IMPORTANT_FOR_ACCESSIBILITY_YES); - setEdgeGlowColor(Themes.getAttrColor(context, android.R.attr.colorEdgeEffect)); mFocusIndicatorHelper = new ViewGroupFocusHelper(this); } diff --git a/src/com/android/launcher3/pageindicators/CaretDrawable.java b/src/com/android/launcher3/pageindicators/CaretDrawable.java index 0a00e24e9..32e57a9f6 100644 --- a/src/com/android/launcher3/pageindicators/CaretDrawable.java +++ b/src/com/android/launcher3/pageindicators/CaretDrawable.java @@ -46,7 +46,7 @@ public class CaretDrawable extends Drawable { final int strokeWidth = res.getDimensionPixelSize(R.dimen.all_apps_caret_stroke_width); final int shadowSpread = res.getDimensionPixelSize(R.dimen.all_apps_caret_shadow_spread); - mCaretPaint.setColor(res.getColor(R.color.workspace_icon_text_color)); + mCaretPaint.setColor(Themes.getAttrColor(context, android.R.attr.textColorPrimary)); mCaretPaint.setAntiAlias(true); mCaretPaint.setStrokeWidth(strokeWidth); mCaretPaint.setStyle(Paint.Style.STROKE); |