From 2b134a1d7920308ba789e7b958d22c8d464782bc Mon Sep 17 00:00:00 2001 From: Ming-Shin Lu Date: Wed, 26 Aug 2020 23:38:25 +0800 Subject: [PATCH] Add DisplayContent#forceDesktopMode As WMS#mForceDesktopModeOnExternalDisplays is a flag to force enable desktop mode on public secondary display. Since some code points didn't check if the display is public & secondary display, it may cause some issues like Bubbles using private virtual display but the content can show system decorations and IME always failed to show, if user enabled force desktop mode config from developer option. Add DC#forceDesktopMode to make sure the check is proper and consistent. Fix: 163333691 Test: manual as test steps: 1) Enable "Force Desktop Mode on External display" from Settings -> Developer option. 2) Launch Message or FB messenger with chat head bubbles 3) Taping EditText and check if soft-keyboard can show up correctly. Test: atest DisplayContentTests#testForceDesktopMode Merged-In: I6ec52b6b1642fd547ebc222ae1bf9a2958e5fb2d Change-Id: I6ec52b6b1642fd547ebc222ae1bf9a2958e5fb2d --- .../com/android/server/wm/DisplayContent.java | 8 ++++-- .../android/server/wm/DisplayRotation.java | 4 +-- .../server/wm/DisplayWindowSettings.java | 10 +++----- .../server/wm/DisplayContentTests.java | 25 +++++++++++++++++++ 4 files changed, 36 insertions(+), 11 deletions(-) diff --git a/services/core/java/com/android/server/wm/DisplayContent.java b/services/core/java/com/android/server/wm/DisplayContent.java index abfb9c99de6b9..553aad1a43cd7 100644 --- a/services/core/java/com/android/server/wm/DisplayContent.java +++ b/services/core/java/com/android/server/wm/DisplayContent.java @@ -3554,7 +3554,11 @@ class DisplayContent extends WindowContainer