Merge "Set display size to all displays" into tm-qpr-dev am: 0066afbe15

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/20664686

Change-Id: Ib3d9210dab71e6aa600bfa9f6f9ec5b68ab68dbc
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Piotr Wilczyński
2023-01-20 10:11:00 +00:00
committed by Automerger Merge Worker
5 changed files with 33 additions and 32 deletions

View File

@@ -18,9 +18,7 @@ package com.android.settings.accessibility;
import android.content.Context;
import android.content.res.Resources;
import android.view.Display;
import com.android.settingslib.display.DisplayDensityConfiguration;
import com.android.settingslib.display.DisplayDensityUtils;
import java.util.Arrays;
@@ -31,11 +29,13 @@ import java.util.stream.Collectors;
* Data class for storing the configurations related to the display size.
*/
class DisplaySizeData extends PreviewSizeData<Integer> {
private final DisplayDensityUtils mDensity;
DisplaySizeData(Context context) {
super(context);
final DisplayDensityUtils density = new DisplayDensityUtils(getContext());
final int initialIndex = density.getCurrentIndex();
mDensity = new DisplayDensityUtils(getContext());
final int initialIndex = mDensity.getCurrentIndexForDefaultDisplay();
if (initialIndex < 0) {
// Failed to obtain default density, which means we failed to
// connect to the window manager service. Just use the current
@@ -46,9 +46,10 @@ class DisplaySizeData extends PreviewSizeData<Integer> {
setInitialIndex(0);
setValues(Collections.singletonList(densityDpi));
} else {
setDefaultValue(density.getDefaultDensity());
setDefaultValue(mDensity.getDefaultDensityForDefaultDisplay());
setInitialIndex(initialIndex);
setValues(Arrays.stream(density.getValues()).boxed().collect(Collectors.toList()));
setValues(Arrays.stream(mDensity.getDefaultDisplayDensityValues()).boxed()
.collect(Collectors.toList()));
}
}
@@ -56,10 +57,9 @@ class DisplaySizeData extends PreviewSizeData<Integer> {
void commit(int currentProgress) {
final int densityDpi = getValues().get(currentProgress);
if (densityDpi == getDefaultValue()) {
DisplayDensityConfiguration.clearForcedDisplayDensity(Display.DEFAULT_DISPLAY);
mDensity.clearForcedDisplayDensity();
} else {
DisplayDensityConfiguration.setForcedDisplayDensity(Display.DEFAULT_DISPLAY,
densityDpi);
mDensity.setForcedDisplayDensity(currentProgress);
}
}
}