| Index: ui/android/java/src/org/chromium/ui/display/DisplayAndroidManager.java
|
| diff --git a/ui/android/java/src/org/chromium/ui/display/DisplayAndroidManager.java b/ui/android/java/src/org/chromium/ui/display/DisplayAndroidManager.java
|
| index 6175f940303e80ee9df4afbc5c65cb358a2d988d..e6bb8eb5329aa1eff984a14038fd3685699fbe2a 100644
|
| --- a/ui/android/java/src/org/chromium/ui/display/DisplayAndroidManager.java
|
| +++ b/ui/android/java/src/org/chromium/ui/display/DisplayAndroidManager.java
|
| @@ -112,7 +112,7 @@ import org.chromium.ui.gfx.DeviceDisplayInfo;
|
| @Override
|
| public void onConfigurationChanged(Configuration newConfig) {
|
| updateDeviceDisplayInfo();
|
| - mIdMap.get(mMainSdkDisplayId).updateFromDisplay(
|
| + ((DisplayAndroidImpl) mIdMap.get(mMainSdkDisplayId)).updateFromDisplay(
|
| getDefaultDisplayForContext(getContext()));
|
| }
|
|
|
| @@ -171,7 +171,7 @@ import org.chromium.ui.gfx.DeviceDisplayInfo;
|
| @Override
|
| public void onDisplayChanged(int sdkDisplayId) {
|
| updateDeviceDisplayInfo();
|
| - DisplayAndroid displayAndroid = mIdMap.get(sdkDisplayId);
|
| + DisplayAndroidImpl displayAndroid = (DisplayAndroidImpl) mIdMap.get(sdkDisplayId);
|
| if (displayAndroid != null) {
|
| displayAndroid.updateFromDisplay(getDisplayManager().getDisplay(sdkDisplayId));
|
| }
|
| @@ -278,13 +278,25 @@ import org.chromium.ui.gfx.DeviceDisplayInfo;
|
|
|
| private DisplayAndroid addDisplay(Display display) {
|
| int sdkDisplayId = display.getDisplayId();
|
| - DisplayAndroid displayAndroid = new DisplayAndroid(display);
|
| + DisplayAndroidImpl displayAndroid = new DisplayAndroidImpl(display);
|
| mIdMap.put(sdkDisplayId, displayAndroid);
|
|
|
| displayAndroid.updateFromDisplay(display);
|
| return displayAndroid;
|
| }
|
|
|
| + /* package */ void addVirtualDisplay(VirtualDisplayAndroid display) {
|
| + mIdMap.put(display.getSdkDisplayId(), display);
|
| + }
|
| +
|
| + /* package */ void removeVirtualDisplay(VirtualDisplayAndroid display) {
|
| + DisplayAndroid displayAndroid = mIdMap.get(display.getSdkDisplayId());
|
| + assert displayAndroid == display;
|
| +
|
| + if (mNativePointer != 0) nativeRemoveDisplay(mNativePointer, display.getSdkDisplayId());
|
| + mIdMap.remove(display.getSdkDisplayId());
|
| + }
|
| +
|
| /* package */ void updateDisplayOnNativeSide(DisplayAndroid displayAndroid) {
|
| if (mNativePointer == 0) return;
|
| nativeUpdateDisplay(mNativePointer, displayAndroid.getSdkDisplayId(),
|
|
|