summaryrefslogtreecommitdiff
path: root/core/java/android/view/Display.java
diff options
context:
space:
mode:
authorAndrii Kulian <akulian@google.com>2017-03-23 18:31:59 -0700
committerAndrii Kulian <akulian@google.com>2017-04-03 19:45:14 +0000
commitcd097993399f94aa663c5fad50e444b75e6ee5dd (patch)
treedf8fcde4f7132ba91c512da86eb5150d8ed702b8 /core/java/android/view/Display.java
parent3f2bbcbe92cd2500746153ed2378278c1b2a53e2 (diff)
Update display contents when metrics change
There are two separate overrides for display metrics in DisplayManager and WindowManager: - In DM - LogicalDisplay#mOverrideDisplayInfo, in most cases not null. - In WM - DisplayContent#mBaseDisplayWidth/Height/Density, different from #mInitialDisplayWidth/Height/Density values when some metrics are forced. When display was resized its windows weren't updated because of two problems: old LogicaDisplay#mOverrideDisplayInfo was preventing WM from detecting the change and override (base) display metrics were never updated by resize. When display size changes: - Before this CL: DM receives DISPLAY_CHANGED event, it updates internal values and WM is notified about them with a message. In most cases there is an override obtained from WM and WM doesn't get new values from LogicalDisplay#getDisplayInfoLocked(). - With this CL: WM will requests real updated values from DM without any overrides and will decide whether to apply them or not: if there is no override in WM - it will apply values from WM, otherwise it will keep the override. Also it will always update initial display metrics if there is a real change detected. Bug: 35258051 Bug: 34164473 Bug: 36518752 Test: android.server.cts.ActivityManagerDisplayTests Test: #testDisplayResize Test: #testForceDisplayMetrics Change-Id: I2495c27797f11f9aaee4ea06648a8ccd29ac5b62
Diffstat (limited to 'core/java/android/view/Display.java')
-rw-r--r--core/java/android/view/Display.java4
1 files changed, 2 insertions, 2 deletions
diff --git a/core/java/android/view/Display.java b/core/java/android/view/Display.java
index 5494377ceebd..6dedbde01995 100644
--- a/core/java/android/view/Display.java
+++ b/core/java/android/view/Display.java
@@ -50,7 +50,7 @@ import java.util.Arrays;
* <li>The real display area specifies the part of the display that contains content
* including the system decorations. Even so, the real display area may be smaller than the
* physical size of the display if the window manager is emulating a smaller display
- * using (adb shell am display-size). Use the following methods to query the
+ * using (adb shell wm size). Use the following methods to query the
* real display area: {@link #getRealSize}, {@link #getRealMetrics}.</li>
* </ul>
* </p><p>
@@ -947,7 +947,7 @@ public final class Display {
* The size is adjusted based on the current rotation of the display.
* </p><p>
* The real size may be smaller than the physical size of the screen when the
- * window manager is emulating a smaller display (using adb shell am display-size).
+ * window manager is emulating a smaller display (using adb shell wm size).
* </p>
*
* @param outSize Set to the real size of the display.