From 74a9a609acf2a1be6a85a9ba8d3ff54470c28978 Mon Sep 17 00:00:00 2001 From: arthurhung Date: Tue, 8 Sep 2020 16:26:59 +0800 Subject: [PATCH] Fix navigation input consumer not working when first window is invisible The nav InputConsumer should be the top window without being related to some window or it may be hidden if the window is not visible. Test: atest com.android.server.wm Test: atest WindowInsetsControllerTests Bug: 167940326 Change-Id: I842114e68eaedaa008972a0a84c6b6394174f232 --- services/core/java/com/android/server/wm/InputMonitor.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/wm/InputMonitor.java b/services/core/java/com/android/server/wm/InputMonitor.java index 4efd687b7bb40..5abc39e879fa9 100644 --- a/services/core/java/com/android/server/wm/InputMonitor.java +++ b/services/core/java/com/android/server/wm/InputMonitor.java @@ -533,7 +533,8 @@ final class InputMonitor { } if (mAddNavInputConsumerHandle) { - mNavInputConsumer.show(mInputTransaction, w); + // We set the layer to z=MAX-1 so that it's always on top. + mNavInputConsumer.show(mInputTransaction, Integer.MAX_VALUE - 1); mAddNavInputConsumerHandle = false; }