Loading res/layout/color_option_2.xml +4 −43 Original line number Diff line number Diff line Loading @@ -42,50 +42,11 @@ android:background="@drawable/option_item_background" android:importantForAccessibility="no" /> <FrameLayout android:id="@id/foreground" <com.android.customization.picker.color.ui.view.ColorOptionIconView android:id="@+id/foreground" android:layout_width="match_parent" android:layout_height="match_parent"> <ImageView android:id="@+id/color_preview_0" android:layout_width="@dimen/component_color_chip_small_radius_default2" android:layout_height="@dimen/component_color_chip_small_radius_default2" android:layout_gravity="center" android:layout_marginRight="@dimen/color_seed_chip_margin2" android:layout_marginBottom="@dimen/color_seed_chip_margin2" android:src="@drawable/color_chip_seed_filled0" android:importantForAccessibility="no"/> <ImageView android:id="@+id/color_preview_1" android:layout_width="@dimen/component_color_chip_small_radius_default2" android:layout_height="@dimen/component_color_chip_small_radius_default2" android:layout_gravity="center" android:layout_marginLeft="@dimen/color_seed_chip_margin2" android:layout_marginBottom="@dimen/color_seed_chip_margin2" android:src="@drawable/color_chip_seed_filled2" android:importantForAccessibility="no"/> <ImageView android:id="@+id/color_preview_2" android:layout_width="@dimen/component_color_chip_small_radius_default2" android:layout_height="@dimen/component_color_chip_small_radius_default2" android:layout_gravity="center" android:layout_marginRight="@dimen/color_seed_chip_margin2" android:layout_marginTop="@dimen/color_seed_chip_margin2" android:src="@drawable/color_chip_seed_filled1" android:importantForAccessibility="no"/> <ImageView android:id="@+id/color_preview_3" android:layout_width="@dimen/component_color_chip_small_radius_default2" android:layout_height="@dimen/component_color_chip_small_radius_default2" android:layout_gravity="center" android:layout_marginLeft="@dimen/color_seed_chip_margin2" android:layout_marginTop="@dimen/color_seed_chip_margin2" android:src="@drawable/color_chip_seed_filled3" android:importantForAccessibility="no" /> </FrameLayout> android:layout_height="match_parent" android:layout_margin="@dimen/color_seed_chip_margin2"/> </FrameLayout> <TextView Loading res/layout/color_option_no_background.xml +2 −48 Original line number Diff line number Diff line Loading @@ -34,63 +34,17 @@ constraint percentage is sized to leave a padding for the outer selection outline, proportionate to 2dp for a 40dp color wheel --> <androidx.constraintlayout.widget.ConstraintLayout <com.android.customization.picker.color.ui.view.ColorOptionIconView android:id="@+id/option_tile" android:layout_width="0dp" android:layout_height="0dp" android:layout_gravity="center" android:gravity="center" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintDimensionRatio="1:1" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintWidth_percent="0.909"> <ImageView android:id="@+id/color_preview_0" android:layout_width="0dp" android:layout_height="0dp" android:adjustViewBounds="true" android:src="@drawable/color_chip_seed_filled0" app:layout_constraintHeight_percent=".505" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintWidth_percent=".505" /> <ImageView android:id="@+id/color_preview_1" android:layout_width="0dp" android:layout_height="0dp" android:adjustViewBounds="true" android:src="@drawable/color_chip_seed_filled2" app:layout_constraintHeight_percent=".505" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintWidth_percent=".505" /> <ImageView android:id="@+id/color_preview_2" android:layout_width="0dp" android:layout_height="0dp" android:adjustViewBounds="true" android:src="@drawable/color_chip_seed_filled1" app:layout_constraintHeight_percent=".505" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintWidth_percent=".505" /> <ImageView android:id="@+id/color_preview_3" android:layout_width="0dp" android:layout_height="0dp" android:adjustViewBounds="true" android:src="@drawable/color_chip_seed_filled3" app:layout_constraintHeight_percent=".505" app:layout_constraintRight_toRightOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintWidth_percent=".505" /> </androidx.constraintlayout.widget.ConstraintLayout> app:layout_constraintWidth_percent="0.909" /> <ImageView android:id="@+id/option_selected" Loading src/com/android/customization/picker/clock/ui/binder/ClockSettingsBinder.kt +5 −1 Original line number Diff line number Diff line Loading @@ -142,7 +142,11 @@ object ClockSettingsBinder { (view.resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK == Configuration.UI_MODE_NIGHT_YES) ColorOptionIconBinder.bind(item, payload, darkMode) ColorOptionIconBinder.bind( item.requireViewById(R.id.foreground), payload, darkMode ) OptionItemBinder.bind( view = item, viewModel = colorOptions[index], Loading src/com/android/customization/picker/color/ui/binder/ColorOptionIconBinder.kt +14 −26 Original line number Diff line number Diff line Loading @@ -17,41 +17,29 @@ package com.android.customization.picker.color.ui.binder import android.graphics.BlendMode import android.graphics.BlendModeColorFilter import android.view.ViewGroup import android.widget.ImageView import com.android.customization.picker.color.ui.view.ColorOptionIconView import com.android.customization.picker.color.ui.viewmodel.ColorOptionIconViewModel import com.android.wallpaper.R object ColorOptionIconBinder { fun bind( view: ViewGroup, view: ColorOptionIconView, viewModel: ColorOptionIconViewModel, darkTheme: Boolean, ) { val color0View: ImageView = view.requireViewById(R.id.color_preview_0) val color1View: ImageView = view.requireViewById(R.id.color_preview_1) val color2View: ImageView = view.requireViewById(R.id.color_preview_2) val color3View: ImageView = view.requireViewById(R.id.color_preview_3) if (darkTheme) { color0View.drawable.colorFilter = BlendModeColorFilter(viewModel.darkThemeColor0, BlendMode.SRC) color1View.drawable.colorFilter = BlendModeColorFilter(viewModel.darkThemeColor1, BlendMode.SRC) color2View.drawable.colorFilter = BlendModeColorFilter(viewModel.darkThemeColor2, BlendMode.SRC) color3View.drawable.colorFilter = BlendModeColorFilter(viewModel.darkThemeColor3, BlendMode.SRC) view.bindColor( viewModel.darkThemeColor0, viewModel.darkThemeColor1, viewModel.darkThemeColor2, viewModel.darkThemeColor3, ) } else { color0View.drawable.colorFilter = BlendModeColorFilter(viewModel.lightThemeColor0, BlendMode.SRC) color1View.drawable.colorFilter = BlendModeColorFilter(viewModel.lightThemeColor1, BlendMode.SRC) color2View.drawable.colorFilter = BlendModeColorFilter(viewModel.lightThemeColor2, BlendMode.SRC) color3View.drawable.colorFilter = BlendModeColorFilter(viewModel.lightThemeColor3, BlendMode.SRC) view.bindColor( viewModel.darkThemeColor0, viewModel.darkThemeColor1, viewModel.darkThemeColor2, viewModel.darkThemeColor3, ) } } } src/com/android/customization/picker/color/ui/binder/ColorPickerBinder.kt +3 −3 Original line number Diff line number Diff line Loading @@ -19,7 +19,6 @@ package com.android.customization.picker.color.ui.binder import android.content.res.Configuration import android.view.View import android.view.ViewGroup import android.widget.TextView import androidx.lifecycle.Lifecycle import androidx.lifecycle.LifecycleOwner Loading @@ -28,6 +27,7 @@ import androidx.lifecycle.repeatOnLifecycle import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView import com.android.customization.picker.color.ui.adapter.ColorTypeTabAdapter import com.android.customization.picker.color.ui.view.ColorOptionIconView import com.android.customization.picker.color.ui.viewmodel.ColorOptionIconViewModel import com.android.customization.picker.color.ui.viewmodel.ColorPickerViewModel import com.android.customization.picker.common.ui.view.ItemSpacing Loading Loading @@ -63,11 +63,11 @@ object ColorPickerBinder { layoutResourceId = R.layout.color_option_2, lifecycleOwner = lifecycleOwner, bindIcon = { foregroundView: View, colorIcon: ColorOptionIconViewModel -> val viewGroup = foregroundView as? ViewGroup val colorOptionIconView = foregroundView as? ColorOptionIconView val night = (view.resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK == Configuration.UI_MODE_NIGHT_YES) viewGroup?.let { ColorOptionIconBinder.bind(viewGroup, colorIcon, night) } colorOptionIconView?.let { ColorOptionIconBinder.bind(it, colorIcon, night) } } ) colorOptionContainerView.adapter = colorOptionAdapter Loading Loading
res/layout/color_option_2.xml +4 −43 Original line number Diff line number Diff line Loading @@ -42,50 +42,11 @@ android:background="@drawable/option_item_background" android:importantForAccessibility="no" /> <FrameLayout android:id="@id/foreground" <com.android.customization.picker.color.ui.view.ColorOptionIconView android:id="@+id/foreground" android:layout_width="match_parent" android:layout_height="match_parent"> <ImageView android:id="@+id/color_preview_0" android:layout_width="@dimen/component_color_chip_small_radius_default2" android:layout_height="@dimen/component_color_chip_small_radius_default2" android:layout_gravity="center" android:layout_marginRight="@dimen/color_seed_chip_margin2" android:layout_marginBottom="@dimen/color_seed_chip_margin2" android:src="@drawable/color_chip_seed_filled0" android:importantForAccessibility="no"/> <ImageView android:id="@+id/color_preview_1" android:layout_width="@dimen/component_color_chip_small_radius_default2" android:layout_height="@dimen/component_color_chip_small_radius_default2" android:layout_gravity="center" android:layout_marginLeft="@dimen/color_seed_chip_margin2" android:layout_marginBottom="@dimen/color_seed_chip_margin2" android:src="@drawable/color_chip_seed_filled2" android:importantForAccessibility="no"/> <ImageView android:id="@+id/color_preview_2" android:layout_width="@dimen/component_color_chip_small_radius_default2" android:layout_height="@dimen/component_color_chip_small_radius_default2" android:layout_gravity="center" android:layout_marginRight="@dimen/color_seed_chip_margin2" android:layout_marginTop="@dimen/color_seed_chip_margin2" android:src="@drawable/color_chip_seed_filled1" android:importantForAccessibility="no"/> <ImageView android:id="@+id/color_preview_3" android:layout_width="@dimen/component_color_chip_small_radius_default2" android:layout_height="@dimen/component_color_chip_small_radius_default2" android:layout_gravity="center" android:layout_marginLeft="@dimen/color_seed_chip_margin2" android:layout_marginTop="@dimen/color_seed_chip_margin2" android:src="@drawable/color_chip_seed_filled3" android:importantForAccessibility="no" /> </FrameLayout> android:layout_height="match_parent" android:layout_margin="@dimen/color_seed_chip_margin2"/> </FrameLayout> <TextView Loading
res/layout/color_option_no_background.xml +2 −48 Original line number Diff line number Diff line Loading @@ -34,63 +34,17 @@ constraint percentage is sized to leave a padding for the outer selection outline, proportionate to 2dp for a 40dp color wheel --> <androidx.constraintlayout.widget.ConstraintLayout <com.android.customization.picker.color.ui.view.ColorOptionIconView android:id="@+id/option_tile" android:layout_width="0dp" android:layout_height="0dp" android:layout_gravity="center" android:gravity="center" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintDimensionRatio="1:1" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintWidth_percent="0.909"> <ImageView android:id="@+id/color_preview_0" android:layout_width="0dp" android:layout_height="0dp" android:adjustViewBounds="true" android:src="@drawable/color_chip_seed_filled0" app:layout_constraintHeight_percent=".505" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintWidth_percent=".505" /> <ImageView android:id="@+id/color_preview_1" android:layout_width="0dp" android:layout_height="0dp" android:adjustViewBounds="true" android:src="@drawable/color_chip_seed_filled2" app:layout_constraintHeight_percent=".505" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintWidth_percent=".505" /> <ImageView android:id="@+id/color_preview_2" android:layout_width="0dp" android:layout_height="0dp" android:adjustViewBounds="true" android:src="@drawable/color_chip_seed_filled1" app:layout_constraintHeight_percent=".505" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintWidth_percent=".505" /> <ImageView android:id="@+id/color_preview_3" android:layout_width="0dp" android:layout_height="0dp" android:adjustViewBounds="true" android:src="@drawable/color_chip_seed_filled3" app:layout_constraintHeight_percent=".505" app:layout_constraintRight_toRightOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintWidth_percent=".505" /> </androidx.constraintlayout.widget.ConstraintLayout> app:layout_constraintWidth_percent="0.909" /> <ImageView android:id="@+id/option_selected" Loading
src/com/android/customization/picker/clock/ui/binder/ClockSettingsBinder.kt +5 −1 Original line number Diff line number Diff line Loading @@ -142,7 +142,11 @@ object ClockSettingsBinder { (view.resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK == Configuration.UI_MODE_NIGHT_YES) ColorOptionIconBinder.bind(item, payload, darkMode) ColorOptionIconBinder.bind( item.requireViewById(R.id.foreground), payload, darkMode ) OptionItemBinder.bind( view = item, viewModel = colorOptions[index], Loading
src/com/android/customization/picker/color/ui/binder/ColorOptionIconBinder.kt +14 −26 Original line number Diff line number Diff line Loading @@ -17,41 +17,29 @@ package com.android.customization.picker.color.ui.binder import android.graphics.BlendMode import android.graphics.BlendModeColorFilter import android.view.ViewGroup import android.widget.ImageView import com.android.customization.picker.color.ui.view.ColorOptionIconView import com.android.customization.picker.color.ui.viewmodel.ColorOptionIconViewModel import com.android.wallpaper.R object ColorOptionIconBinder { fun bind( view: ViewGroup, view: ColorOptionIconView, viewModel: ColorOptionIconViewModel, darkTheme: Boolean, ) { val color0View: ImageView = view.requireViewById(R.id.color_preview_0) val color1View: ImageView = view.requireViewById(R.id.color_preview_1) val color2View: ImageView = view.requireViewById(R.id.color_preview_2) val color3View: ImageView = view.requireViewById(R.id.color_preview_3) if (darkTheme) { color0View.drawable.colorFilter = BlendModeColorFilter(viewModel.darkThemeColor0, BlendMode.SRC) color1View.drawable.colorFilter = BlendModeColorFilter(viewModel.darkThemeColor1, BlendMode.SRC) color2View.drawable.colorFilter = BlendModeColorFilter(viewModel.darkThemeColor2, BlendMode.SRC) color3View.drawable.colorFilter = BlendModeColorFilter(viewModel.darkThemeColor3, BlendMode.SRC) view.bindColor( viewModel.darkThemeColor0, viewModel.darkThemeColor1, viewModel.darkThemeColor2, viewModel.darkThemeColor3, ) } else { color0View.drawable.colorFilter = BlendModeColorFilter(viewModel.lightThemeColor0, BlendMode.SRC) color1View.drawable.colorFilter = BlendModeColorFilter(viewModel.lightThemeColor1, BlendMode.SRC) color2View.drawable.colorFilter = BlendModeColorFilter(viewModel.lightThemeColor2, BlendMode.SRC) color3View.drawable.colorFilter = BlendModeColorFilter(viewModel.lightThemeColor3, BlendMode.SRC) view.bindColor( viewModel.darkThemeColor0, viewModel.darkThemeColor1, viewModel.darkThemeColor2, viewModel.darkThemeColor3, ) } } }
src/com/android/customization/picker/color/ui/binder/ColorPickerBinder.kt +3 −3 Original line number Diff line number Diff line Loading @@ -19,7 +19,6 @@ package com.android.customization.picker.color.ui.binder import android.content.res.Configuration import android.view.View import android.view.ViewGroup import android.widget.TextView import androidx.lifecycle.Lifecycle import androidx.lifecycle.LifecycleOwner Loading @@ -28,6 +27,7 @@ import androidx.lifecycle.repeatOnLifecycle import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView import com.android.customization.picker.color.ui.adapter.ColorTypeTabAdapter import com.android.customization.picker.color.ui.view.ColorOptionIconView import com.android.customization.picker.color.ui.viewmodel.ColorOptionIconViewModel import com.android.customization.picker.color.ui.viewmodel.ColorPickerViewModel import com.android.customization.picker.common.ui.view.ItemSpacing Loading Loading @@ -63,11 +63,11 @@ object ColorPickerBinder { layoutResourceId = R.layout.color_option_2, lifecycleOwner = lifecycleOwner, bindIcon = { foregroundView: View, colorIcon: ColorOptionIconViewModel -> val viewGroup = foregroundView as? ViewGroup val colorOptionIconView = foregroundView as? ColorOptionIconView val night = (view.resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK == Configuration.UI_MODE_NIGHT_YES) viewGroup?.let { ColorOptionIconBinder.bind(viewGroup, colorIcon, night) } colorOptionIconView?.let { ColorOptionIconBinder.bind(it, colorIcon, night) } } ) colorOptionContainerView.adapter = colorOptionAdapter Loading