Merge "[Output Switcher] Follow up change of output switcher for mertial next" into sc-v2-dev
This commit is contained in:
@@ -2878,7 +2878,7 @@
|
|||||||
<!-- Summary for media output group with the active device count [CHAR LIMIT=NONE] -->
|
<!-- Summary for media output group with the active device count [CHAR LIMIT=NONE] -->
|
||||||
<string name="media_output_dialog_multiple_devices"><xliff:g id="count" example="2">%1$d</xliff:g> devices selected</string>
|
<string name="media_output_dialog_multiple_devices"><xliff:g id="count" example="2">%1$d</xliff:g> devices selected</string>
|
||||||
<!-- Summary for disconnected status [CHAR LIMIT=50] -->
|
<!-- Summary for disconnected status [CHAR LIMIT=50] -->
|
||||||
<string name="media_output_dialog_disconnected"><xliff:g id="device_name" example="My device">%1$s</xliff:g> (disconnected)</string>
|
<string name="media_output_dialog_disconnected">(disconnected)</string>
|
||||||
<!-- Summary for connecting error message [CHAR LIMIT=NONE] -->
|
<!-- Summary for connecting error message [CHAR LIMIT=NONE] -->
|
||||||
<string name="media_output_dialog_connect_failed">Couldn\'t connect. Try again.</string>
|
<string name="media_output_dialog_connect_failed">Couldn\'t connect. Try again.</string>
|
||||||
<!-- Title for pairing item [CHAR LIMIT=60] -->
|
<!-- Title for pairing item [CHAR LIMIT=60] -->
|
||||||
|
|||||||
@@ -16,14 +16,10 @@
|
|||||||
|
|
||||||
package com.android.systemui.media.dialog;
|
package com.android.systemui.media.dialog;
|
||||||
|
|
||||||
import static android.text.Spanned.SPAN_EXCLUSIVE_EXCLUSIVE;
|
|
||||||
|
|
||||||
import android.graphics.PorterDuff;
|
import android.graphics.PorterDuff;
|
||||||
import android.graphics.PorterDuffColorFilter;
|
import android.graphics.PorterDuffColorFilter;
|
||||||
import android.graphics.drawable.Drawable;
|
import android.graphics.drawable.Drawable;
|
||||||
import android.text.SpannableString;
|
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.text.style.ForegroundColorSpan;
|
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
@@ -99,23 +95,6 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
|
|||||||
return mController.getMediaDevices().size();
|
return mController.getMediaDevices().size();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
CharSequence getItemTitle(MediaDevice device) {
|
|
||||||
if (device.getDeviceType() == MediaDevice.MediaDeviceType.TYPE_BLUETOOTH_DEVICE
|
|
||||||
&& !device.isConnected()) {
|
|
||||||
final CharSequence deviceName = device.getName();
|
|
||||||
// Append status to title only for the disconnected Bluetooth device.
|
|
||||||
final SpannableString spannableTitle = new SpannableString(
|
|
||||||
mContext.getString(R.string.media_output_dialog_disconnected, deviceName));
|
|
||||||
spannableTitle.setSpan(new ForegroundColorSpan(
|
|
||||||
Utils.getColorAttrDefaultColor(mContext, android.R.attr.textColorSecondary)),
|
|
||||||
deviceName.length(),
|
|
||||||
spannableTitle.length(), SPAN_EXCLUSIVE_EXCLUSIVE);
|
|
||||||
return spannableTitle;
|
|
||||||
}
|
|
||||||
return super.getItemTitle(device);
|
|
||||||
}
|
|
||||||
|
|
||||||
class MediaDeviceViewHolder extends MediaDeviceBaseViewHolder {
|
class MediaDeviceViewHolder extends MediaDeviceBaseViewHolder {
|
||||||
|
|
||||||
MediaDeviceViewHolder(View view) {
|
MediaDeviceViewHolder(View view) {
|
||||||
@@ -166,6 +145,14 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
|
|||||||
false /* showProgressBar */, false /* showSubtitle */);
|
false /* showProgressBar */, false /* showSubtitle */);
|
||||||
initSeekbar(device);
|
initSeekbar(device);
|
||||||
mCurrentActivePosition = position;
|
mCurrentActivePosition = position;
|
||||||
|
} else if (
|
||||||
|
device.getDeviceType() == MediaDevice.MediaDeviceType.TYPE_BLUETOOTH_DEVICE
|
||||||
|
&& !device.isConnected()) {
|
||||||
|
setTwoLineLayout(device, false /* bFocused */,
|
||||||
|
false /* showSeekBar */, false /* showProgressBar */,
|
||||||
|
true /* showSubtitle */);
|
||||||
|
mSubTitleText.setText(R.string.media_output_dialog_disconnected);
|
||||||
|
mContainerLayout.setOnClickListener(v -> onItemClick(v, device));
|
||||||
} else {
|
} else {
|
||||||
setSingleLineLayout(getItemTitle(device), false /* bFocused */);
|
setSingleLineLayout(getItemTitle(device), false /* bFocused */);
|
||||||
mContainerLayout.setOnClickListener(v -> onItemClick(v, device));
|
mContainerLayout.setOnClickListener(v -> onItemClick(v, device));
|
||||||
@@ -175,7 +162,6 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
void onBind(int customizedItem, boolean topMargin, boolean bottomMargin) {
|
void onBind(int customizedItem, boolean topMargin, boolean bottomMargin) {
|
||||||
super.onBind(customizedItem, topMargin, bottomMargin);
|
|
||||||
if (customizedItem == CUSTOMIZED_ITEM_PAIR_NEW) {
|
if (customizedItem == CUSTOMIZED_ITEM_PAIR_NEW) {
|
||||||
mCheckBox.setVisibility(View.GONE);
|
mCheckBox.setVisibility(View.GONE);
|
||||||
mAddIcon.setVisibility(View.GONE);
|
mAddIcon.setVisibility(View.GONE);
|
||||||
|
|||||||
@@ -153,9 +153,7 @@ public abstract class MediaOutputBaseAdapter extends
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
void onBind(int customizedItem, boolean topMargin, boolean bottomMargin) {
|
abstract void onBind(int customizedItem, boolean topMargin, boolean bottomMargin);
|
||||||
// TODO (b/201718621): clean up method after adjustment
|
|
||||||
}
|
|
||||||
|
|
||||||
void setSingleLineLayout(CharSequence title, boolean bFocused) {
|
void setSingleLineLayout(CharSequence title, boolean bFocused) {
|
||||||
mTwoLineLayout.setVisibility(View.GONE);
|
mTwoLineLayout.setVisibility(View.GONE);
|
||||||
|
|||||||
@@ -126,7 +126,6 @@ public class MediaOutputGroupAdapter extends MediaOutputBaseAdapter {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
void onBind(int customizedItem, boolean topMargin, boolean bottomMargin) {
|
void onBind(int customizedItem, boolean topMargin, boolean bottomMargin) {
|
||||||
super.onBind(customizedItem, topMargin, bottomMargin);
|
|
||||||
if (customizedItem == CUSTOMIZED_ITEM_GROUP) {
|
if (customizedItem == CUSTOMIZED_ITEM_GROUP) {
|
||||||
setTwoLineLayout(mContext.getText(R.string.media_output_dialog_group),
|
setTwoLineLayout(mContext.getText(R.string.media_output_dialog_group),
|
||||||
true /* bFocused */, true /* showSeekBar */, false /* showProgressBar */,
|
true /* bFocused */, true /* showSeekBar */, false /* showProgressBar */,
|
||||||
|
|||||||
@@ -212,12 +212,14 @@ public class MediaOutputAdapterTest extends SysuiTestCase {
|
|||||||
mMediaOutputAdapter.onBindViewHolder(mViewHolder, 1);
|
mMediaOutputAdapter.onBindViewHolder(mViewHolder, 1);
|
||||||
|
|
||||||
assertThat(mViewHolder.mAddIcon.getVisibility()).isEqualTo(View.GONE);
|
assertThat(mViewHolder.mAddIcon.getVisibility()).isEqualTo(View.GONE);
|
||||||
assertThat(mViewHolder.mTwoLineLayout.getVisibility()).isEqualTo(View.GONE);
|
|
||||||
assertThat(mViewHolder.mProgressBar.getVisibility()).isEqualTo(View.GONE);
|
assertThat(mViewHolder.mProgressBar.getVisibility()).isEqualTo(View.GONE);
|
||||||
assertThat(mViewHolder.mBottomDivider.getVisibility()).isEqualTo(View.GONE);
|
assertThat(mViewHolder.mBottomDivider.getVisibility()).isEqualTo(View.GONE);
|
||||||
assertThat(mViewHolder.mTitleText.getVisibility()).isEqualTo(View.VISIBLE);
|
assertThat(mViewHolder.mTitleText.getVisibility()).isEqualTo(View.GONE);
|
||||||
assertThat(mViewHolder.mTitleText.getText().toString()).isEqualTo(
|
assertThat(mViewHolder.mTwoLineLayout.getVisibility()).isEqualTo(View.VISIBLE);
|
||||||
mContext.getString(R.string.media_output_dialog_disconnected, TEST_DEVICE_NAME_2));
|
assertThat(mViewHolder.mTwoLineTitleText.getText().toString()).isEqualTo(
|
||||||
|
TEST_DEVICE_NAME_2);
|
||||||
|
assertThat(mViewHolder.mSubTitleText.getText().toString()).isEqualTo(
|
||||||
|
mContext.getString(R.string.media_output_dialog_disconnected));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|||||||
Reference in New Issue
Block a user