Don't provide IME insets to the PIP window
The PIP window will be moved up to avoid overlapping with IME when IME is showing. The time of overlapping is very short. We don't want the PIP window to change its layout during so. Fix: 160346523 Test: atest InsetsStateControllerTest Change-Id: I23be3afe2913210f6ac64aa1c19aae567e539756
This commit is contained in:
@@ -17,6 +17,7 @@
|
||||
package com.android.server.wm;
|
||||
|
||||
import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW;
|
||||
import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED;
|
||||
import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED;
|
||||
import static android.os.Trace.TRACE_TAG_WINDOW_MANAGER;
|
||||
import static android.view.InsetsState.ITYPE_CAPTION_BAR;
|
||||
@@ -218,6 +219,9 @@ class InsetsStateController {
|
||||
state.removeSource(ITYPE_STATUS_BAR);
|
||||
state.removeSource(ITYPE_NAVIGATION_BAR);
|
||||
state.removeSource(ITYPE_EXTRA_NAVIGATION_BAR);
|
||||
if (windowingMode == WINDOWING_MODE_PINNED) {
|
||||
state.removeSource(ITYPE_IME);
|
||||
}
|
||||
}
|
||||
|
||||
return state;
|
||||
|
||||
@@ -86,6 +86,7 @@ public class InsetsStateControllerTest extends WindowTestsBase {
|
||||
|
||||
assertNull(getController().getInsetsForWindow(app).peekSource(ITYPE_STATUS_BAR));
|
||||
assertNull(getController().getInsetsForWindow(app).peekSource(ITYPE_NAVIGATION_BAR));
|
||||
assertNull(getController().getInsetsForWindow(app).peekSource(ITYPE_IME));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
Reference in New Issue
Block a user