Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(414)

Unified Diff: ui/android/java/src/org/chromium/ui/display/DisplayAndroidManager.java

Issue 2523273002: Implement Virtual Display class for Android. (Closed)
Patch Set: Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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(),

Powered by Google App Engine
This is Rietveld 408576698