Merge "Handle ransferring state in output switcher" into rvc-dev am: b669fff40c

Change-Id: Ibd5b7c7dfc2435253f969ba9f497e7a9dc1924f9
This commit is contained in:
Automerger Merge Worker
2020-03-16 13:39:19 +00:00
4 changed files with 103 additions and 1 deletions

View File

@@ -112,6 +112,11 @@ public class MediaDeviceUpdateWorker extends SliceBackgroundWorker
notifySliceChange();
}
@Override
public void onRequestFailed(int reason) {
notifySliceChange();
}
public Collection<MediaDevice> getMediaDevices() {
return mMediaDevices;
}
@@ -119,6 +124,9 @@ public class MediaDeviceUpdateWorker extends SliceBackgroundWorker
public void connectDevice(MediaDevice device) {
ThreadUtils.postOnBackgroundThread(() -> {
mLocalMediaManager.connectDevice(device);
ThreadUtils.postOnMainThread(() -> {
notifySliceChange();
});
});
}

View File

@@ -42,6 +42,7 @@ import com.android.settings.Utils;
import com.android.settings.slices.CustomSliceable;
import com.android.settings.slices.SliceBackgroundWorker;
import com.android.settings.slices.SliceBroadcastReceiver;
import com.android.settingslib.media.LocalMediaManager;
import com.android.settingslib.media.MediaDevice;
import com.android.settingslib.media.MediaOutputSliceConstants;
@@ -246,6 +247,15 @@ public class MediaOutputSlice implements CustomSliceable {
rowBuilder.setTitle(deviceName);
rowBuilder.setPrimaryAction(SliceAction.create(broadcastAction, deviceIcon,
ListBuilder.ICON_IMAGE, deviceName));
switch (device.getState()) {
case LocalMediaManager.MediaDeviceState.STATE_CONNECTING:
rowBuilder.setSubtitle(mContext.getText(R.string.media_output_switching));
break;
case LocalMediaManager.MediaDeviceState.STATE_CONNECTING_FAILED:
rowBuilder.setSubtitle(mContext.getText(
R.string.media_output_switch_error_text));
break;
}
}
return rowBuilder;