DO NOT MERGE: Downbranch merge conflict[Output Swithcer] Update color

Bug: 223298232
Test: Verified on device
Change-Id: I7ed0ebb88f3d3eb82e6cea67d4f560da0b11f26b
This commit is contained in:
shaoweishen
2022-03-10 11:53:03 +00:00
committed by Shaowei Shen
parent f05f4ec6b8
commit 2460ef4306
11 changed files with 67 additions and 50 deletions

View File

@@ -4,6 +4,6 @@
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="@color/media_dialog_inactive_item_main_content"
android:fillColor="@color/media_dialog_item_main_content"
android:pathData="M12,22q-2.075,0 -3.9,-0.788 -1.825,-0.787 -3.175,-2.137 -1.35,-1.35 -2.137,-3.175Q2,14.075 2,12t0.788,-3.9q0.787,-1.825 2.137,-3.175 1.35,-1.35 3.175,-2.137Q9.925,2 12,2t3.9,0.788q1.825,0.787 3.175,2.137 1.35,1.35 2.137,3.175Q22,9.925 22,12t-0.788,3.9q-0.787,1.825 -2.137,3.175 -1.35,1.35 -3.175,2.137Q14.075,22 12,22zM12,12zM12,20q3.325,0 5.663,-2.337Q20,15.325 20,12t-2.337,-5.662Q15.325,4 12,4T6.338,6.338Q4,8.675 4,12q0,3.325 2.338,5.663Q8.675,20 12,20z"/>
</vector>

View File

@@ -21,6 +21,6 @@
android:viewportHeight="24"
android:tint="?attr/colorControlNormal">
<path
android:fillColor="@color/media_dialog_item_status"
android:fillColor="@color/media_dialog_item_main_content"
android:pathData="M9,16.2L4.8,12l-1.4,1.4L9,19 21,7l-1.4,-1.4L9,16.2z"/>
</vector>

View File

@@ -21,6 +21,6 @@
android:viewportHeight="24"
android:tint="?attr/colorControlNormal">
<path
android:fillColor="@color/media_dialog_inactive_item_main_content"
android:fillColor="@color/media_dialog_item_main_content"
android:pathData="M11,7h2v2h-2zM11,11h2v6h-2zM12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM12,20c-4.41,0 -8,-3.59 -8,-8s3.59,-8 8,-8 8,3.59 8,8 -3.59,8 -8,8z"/>
</vector>

View File

@@ -83,7 +83,7 @@
android:ellipsize="end"
android:maxLines="1"
android:fontFamily="@*android:string/config_headlineFontFamilyMedium"
android:textColor="@color/media_dialog_inactive_item_main_content"
android:textColor="@color/media_dialog_item_main_content"
android:textSize="16sp"/>
<TextView
android:id="@+id/subtitle"
@@ -91,7 +91,7 @@
android:layout_height="wrap_content"
android:ellipsize="end"
android:maxLines="1"
android:textColor="@color/media_dialog_inactive_item_main_content"
android:textColor="@color/media_dialog_item_main_content"
android:textSize="14sp"
android:fontFamily="@*android:string/config_bodyFontFamily"
android:visibility="gone"/>

View File

@@ -67,10 +67,12 @@
<!-- media output dialog-->
<color name="media_dialog_background">@color/material_dynamic_neutral10</color>
<color name="media_dialog_active_item_main_content">@color/material_dynamic_neutral10</color>
<color name="media_dialog_inactive_item_main_content">@color/material_dynamic_neutral10</color>
<color name="media_dialog_item_status">@color/material_dynamic_neutral10</color>
<color name="media_dialog_item_background">@color/material_dynamic_secondary95</color>
<color name="media_dialog_item_main_content">@color/material_dynamic_primary90</color>
<color name="media_dialog_item_background">@color/material_dynamic_neutral_variant20</color>
<color name="media_dialog_connected_item_background">@color/material_dynamic_secondary20</color>
<color name="media_dialog_seekbar_progress">@color/material_dynamic_secondary40</color>
<color name="media_dialog_button_background">@color/material_dynamic_primary70</color>
<color name="media_dialog_solid_button_text">@color/material_dynamic_secondary20</color>
<!-- Biometric dialog colors -->
<color name="biometric_dialog_gray">#ffcccccc</color>

View File

@@ -176,10 +176,12 @@
<!-- media output dialog-->
<color name="media_dialog_background" android:lstar="98">@color/material_dynamic_neutral90</color>
<color name="media_dialog_active_item_main_content">@color/material_dynamic_primary10</color>
<color name="media_dialog_inactive_item_main_content">@color/material_dynamic_primary40</color>
<color name="media_dialog_item_status">@color/material_dynamic_primary10</color>
<color name="media_dialog_item_main_content">@color/material_dynamic_primary20</color>
<color name="media_dialog_item_background">@color/material_dynamic_secondary95</color>
<color name="media_dialog_connected_item_background">@color/material_dynamic_primary90</color>
<color name="media_dialog_seekbar_progress">@color/material_dynamic_secondary40</color>
<color name="media_dialog_button_background">@color/material_dynamic_primary40</color>
<color name="media_dialog_solid_button_text">@color/material_dynamic_neutral95</color>
<!-- controls -->
<color name="control_primary_text">#E6FFFFFF</color>

View File

@@ -486,7 +486,7 @@
<style name="MediaOutputItemInactiveTitle">
<item name="android:textSize">16sp</item>
<item name="android:textColor">@color/media_dialog_inactive_item_main_content</item>
<item name="android:textColor">@color/media_dialog_item_main_content</item>
</style>
<style name="TunerSettings" parent="@android:style/Theme.DeviceDefault.Settings">

View File

@@ -119,7 +119,9 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
mCheckBox.setVisibility(View.GONE);
mStatusIcon.setVisibility(View.GONE);
mContainerLayout.setOnClickListener(null);
mTitleText.setTextColor(mController.getColorInactiveItem());
mTitleText.setTextColor(mController.getColorItemContent());
mSubTitleText.setTextColor(mController.getColorItemContent());
mTwoLineTitleText.setTextColor(mController.getColorItemContent());
mSeekBar.getProgressDrawable().setColorFilter(
new PorterDuffColorFilter(mController.getColorSeekbarProgress(),
PorterDuff.Mode.SRC_IN));
@@ -140,7 +142,7 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
&& !mController.hasAdjustVolumeUserRestriction()) {
mProgressBar.getIndeterminateDrawable().setColorFilter(
new PorterDuffColorFilter(
mController.getColorInactiveItem(),
mController.getColorItemContent(),
PorterDuff.Mode.SRC_IN));
setSingleLineLayout(getItemTitle(device), true /* bFocused */,
false /* showSeekBar*/,
@@ -155,7 +157,7 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
mTitleIcon.setAlpha(DEVICE_CONNECTED_ALPHA);
mStatusIcon.setImageDrawable(
mContext.getDrawable(R.drawable.media_output_status_failed));
mStatusIcon.setColorFilter(mController.getColorInactiveItem());
mStatusIcon.setColorFilter(mController.getColorItemContent());
setTwoLineLayout(device, false /* bFocused */,
false /* showSeekBar */, false /* showProgressBar */,
true /* showSubtitle */, true /* showStatus */);
@@ -163,7 +165,7 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
mContainerLayout.setOnClickListener(v -> onItemClick(v, device));
} else if (mController.getSelectedMediaDevice().size() > 1
&& isDeviceIncluded(mController.getSelectedMediaDevice(), device)) {
mTitleText.setTextColor(mController.getColorActiveItem());
mTitleText.setTextColor(mController.getColorItemContent());
setSingleLineLayout(getItemTitle(device), true /* bFocused */,
true /* showSeekBar */,
false /* showProgressBar */, false /* showStatus */);
@@ -173,13 +175,13 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
mCheckBox.setOnCheckedChangeListener((buttonView, isChecked) -> {
onCheckBoxClicked(false, device);
});
setCheckBoxColor(mCheckBox, mController.getColorActiveItem());
setCheckBoxColor(mCheckBox, mController.getColorItemContent());
initSeekbar(device);
} else if (!mController.hasAdjustVolumeUserRestriction() && currentlyConnected) {
mStatusIcon.setImageDrawable(
mContext.getDrawable(R.drawable.media_output_status_check));
mStatusIcon.setColorFilter(mController.getColorActiveItem());
mTitleText.setTextColor(mController.getColorActiveItem());
mStatusIcon.setColorFilter(mController.getColorItemContent());
mTitleText.setTextColor(mController.getColorItemContent());
setSingleLineLayout(getItemTitle(device), true /* bFocused */,
true /* showSeekBar */,
false /* showProgressBar */, true /* showStatus */);
@@ -192,7 +194,7 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
mCheckBox.setOnCheckedChangeListener((buttonView, isChecked) -> {
onCheckBoxClicked(true, device);
});
setCheckBoxColor(mCheckBox, mController.getColorInactiveItem());
setCheckBoxColor(mCheckBox, mController.getColorItemContent());
setSingleLineLayout(getItemTitle(device), false /* bFocused */,
false /* showSeekBar */,
false /* showProgressBar */, false /* showStatus */);
@@ -214,7 +216,7 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
@Override
void onBind(int customizedItem, boolean topMargin, boolean bottomMargin) {
if (customizedItem == CUSTOMIZED_ITEM_PAIR_NEW) {
mTitleText.setTextColor(mController.getColorInactiveItem());
mTitleText.setTextColor(mController.getColorItemContent());
mCheckBox.setVisibility(View.GONE);
setSingleLineLayout(mContext.getText(R.string.media_output_dialog_pairing_new),
false /* bFocused */);

View File

@@ -170,14 +170,16 @@ public abstract class MediaOutputBaseAdapter extends
void setSingleLineLayout(CharSequence title, boolean bFocused, boolean showSeekBar,
boolean showProgressBar, boolean showStatus) {
mTwoLineLayout.setVisibility(View.GONE);
boolean isActive = showSeekBar || showProgressBar;
final Drawable backgroundDrawable =
showSeekBar || showProgressBar
isActive
? mContext.getDrawable(R.drawable.media_output_item_background_active)
.mutate() : mContext.getDrawable(
R.drawable.media_output_item_background)
.mutate();
backgroundDrawable.setColorFilter(new PorterDuffColorFilter(
mController.getColorItemBackground(),
isActive ? mController.getColorConnectedItemBackground()
: mController.getColorItemBackground(),
PorterDuff.Mode.SRC_IN));
mItemLayout.setBackground(backgroundDrawable);
mProgressBar.setVisibility(showProgressBar ? View.VISIBLE : View.GONE);
@@ -366,7 +368,7 @@ public abstract class MediaOutputBaseAdapter extends
.mutate();
drawable.setColorFilter(
new PorterDuffColorFilter(Utils.getColorStateListDefaultColor(mContext,
R.color.media_dialog_active_item_main_content),
R.color.media_dialog_item_main_content),
PorterDuff.Mode.SRC_IN));
return drawable;
}

View File

@@ -216,6 +216,7 @@ public abstract class MediaOutputBaseDialog extends SystemUIDialog implements
PorterDuff.Mode.SRC_IN);
mDoneButton.getBackground().setColorFilter(buttonColorFilter);
mStopButton.getBackground().setColorFilter(buttonColorFilter);
mDoneButton.setTextColor(mAdapter.getController().getColorPositiveButtonText());
}
mHeaderIcon.setVisibility(View.VISIBLE);
mHeaderIcon.setImageIcon(icon);

View File

@@ -110,11 +110,12 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback,
private MediaOutputMetricLogger mMetricLogger;
private int mColorActiveItem;
private int mColorInactiveItem;
private int mColorItemContent;
private int mColorSeekbarProgress;
private int mColorButtonBackground;
private int mColorItemBackground;
private int mColorConnectedItemBackground;
private int mColorPositiveButtonText;
@Inject
public MediaOutputController(@NonNull Context context, String packageName,
@@ -133,16 +134,18 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback,
mMetricLogger = new MediaOutputMetricLogger(mContext, mPackageName);
mDialogLaunchAnimator = dialogLaunchAnimator;
mNearbyMediaDevicesManager = nearbyMediaDevicesManagerOptional.orElse(null);
mColorActiveItem = Utils.getColorStateListDefaultColor(mContext,
R.color.media_dialog_active_item_main_content);
mColorInactiveItem = Utils.getColorStateListDefaultColor(mContext,
R.color.media_dialog_inactive_item_main_content);
mColorItemContent = Utils.getColorStateListDefaultColor(mContext,
R.color.media_dialog_item_main_content);
mColorSeekbarProgress = Utils.getColorStateListDefaultColor(mContext,
android.R.color.system_accent1_200);
R.color.media_dialog_seekbar_progress);
mColorButtonBackground = Utils.getColorStateListDefaultColor(mContext,
R.color.media_dialog_item_background);
R.color.media_dialog_button_background);
mColorItemBackground = Utils.getColorStateListDefaultColor(mContext,
android.R.color.system_accent2_50);
R.color.media_dialog_item_background);
mColorConnectedItemBackground = Utils.getColorStateListDefaultColor(mContext,
R.color.media_dialog_connected_item_background);
mColorPositiveButtonText = Utils.getColorStateListDefaultColor(mContext,
R.color.media_dialog_solid_button_text);
}
void start(@NonNull Callback cb) {
@@ -322,8 +325,7 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback,
}
void setColorFilter(Drawable drawable, boolean isActive) {
drawable.setColorFilter(new PorterDuffColorFilter(isActive
? mColorActiveItem : mColorInactiveItem,
drawable.setColorFilter(new PorterDuffColorFilter(mColorItemContent,
PorterDuff.Mode.SRC_IN));
}
@@ -358,26 +360,32 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback,
ColorScheme mCurrentColorScheme = new ColorScheme(wallpaperColors,
isDarkTheme);
if (isDarkTheme) {
mColorActiveItem = mCurrentColorScheme.getNeutral1().get(10);
mColorInactiveItem = mCurrentColorScheme.getNeutral1().get(10);
mColorSeekbarProgress = mCurrentColorScheme.getAccent1().get(2);
mColorButtonBackground = mCurrentColorScheme.getAccent1().get(2);
mColorItemBackground = mCurrentColorScheme.getAccent2().get(0);
mColorItemContent = mCurrentColorScheme.getAccent1().get(2); // A1-100
mColorSeekbarProgress = mCurrentColorScheme.getAccent2().get(7); // A2-600
mColorButtonBackground = mCurrentColorScheme.getAccent1().get(4); // A1-300
mColorItemBackground = mCurrentColorScheme.getNeutral2().get(9); // N2-800
mColorConnectedItemBackground = mCurrentColorScheme.getAccent2().get(9); // A2-800
mColorPositiveButtonText = mCurrentColorScheme.getAccent2().get(9); // A2-800
} else {
mColorActiveItem = mCurrentColorScheme.getNeutral1().get(10);
mColorInactiveItem = mCurrentColorScheme.getAccent1().get(7);
mColorSeekbarProgress = mCurrentColorScheme.getAccent1().get(3);
mColorButtonBackground = mCurrentColorScheme.getAccent1().get(3);
mColorItemBackground = mCurrentColorScheme.getAccent2().get(0);
mColorItemContent = mCurrentColorScheme.getAccent1().get(9); // A1-800
mColorSeekbarProgress = mCurrentColorScheme.getAccent1().get(4); // A1-300
mColorButtonBackground = mCurrentColorScheme.getAccent1().get(7); // A1-600
mColorItemBackground = mCurrentColorScheme.getAccent2().get(1); // A2-50
mColorConnectedItemBackground = mCurrentColorScheme.getAccent1().get(2); // A1-100
mColorPositiveButtonText = mCurrentColorScheme.getNeutral1().get(1); // N1-50
}
}
public int getColorActiveItem() {
return mColorActiveItem;
public int getColorConnectedItemBackground() {
return mColorConnectedItemBackground;
}
public int getColorInactiveItem() {
return mColorInactiveItem;
public int getColorPositiveButtonText() {
return mColorPositiveButtonText;
}
public int getColorItemContent() {
return mColorItemContent;
}
public int getColorSeekbarProgress() {