Loading services/core/java/com/android/server/wm/InputMonitor.java +10 −6 Original line number Original line Diff line number Diff line Loading @@ -497,13 +497,17 @@ final class InputMonitor { resetInputConsumers(mInputTransaction); resetInputConsumers(mInputTransaction); // Update recents input consumer layer if active // Update recents input consumer layer if active if (mAddRecentsAnimationInputConsumerHandle final ActivityRecord activeRecents = getWeak(mActiveRecentsActivity); && getWeak(mActiveRecentsActivity) != null) { if (mAddRecentsAnimationInputConsumerHandle && activeRecents != null final WindowContainer layer = getWeak(mActiveRecentsLayerRef); && activeRecents.getSurfaceControl() != null) { mRecentsAnimationInputConsumer.show(mInputTransaction, WindowContainer layer = getWeak(mActiveRecentsLayerRef); layer != null ? layer : getWeak(mActiveRecentsActivity)); layer = layer != null ? layer : activeRecents; // Handle edge-case for SUW where windows don't exist yet if (layer.getSurfaceControl() != null) { mRecentsAnimationInputConsumer.show(mInputTransaction, layer); mAddRecentsAnimationInputConsumerHandle = false; mAddRecentsAnimationInputConsumerHandle = false; } } } mDisplayContent.forAllWindows(this, true /* traverseTopToBottom */); mDisplayContent.forAllWindows(this, true /* traverseTopToBottom */); updateInputFocusRequest(mRecentsAnimationInputConsumer); updateInputFocusRequest(mRecentsAnimationInputConsumer); Loading Loading
services/core/java/com/android/server/wm/InputMonitor.java +10 −6 Original line number Original line Diff line number Diff line Loading @@ -497,13 +497,17 @@ final class InputMonitor { resetInputConsumers(mInputTransaction); resetInputConsumers(mInputTransaction); // Update recents input consumer layer if active // Update recents input consumer layer if active if (mAddRecentsAnimationInputConsumerHandle final ActivityRecord activeRecents = getWeak(mActiveRecentsActivity); && getWeak(mActiveRecentsActivity) != null) { if (mAddRecentsAnimationInputConsumerHandle && activeRecents != null final WindowContainer layer = getWeak(mActiveRecentsLayerRef); && activeRecents.getSurfaceControl() != null) { mRecentsAnimationInputConsumer.show(mInputTransaction, WindowContainer layer = getWeak(mActiveRecentsLayerRef); layer != null ? layer : getWeak(mActiveRecentsActivity)); layer = layer != null ? layer : activeRecents; // Handle edge-case for SUW where windows don't exist yet if (layer.getSurfaceControl() != null) { mRecentsAnimationInputConsumer.show(mInputTransaction, layer); mAddRecentsAnimationInputConsumerHandle = false; mAddRecentsAnimationInputConsumerHandle = false; } } } mDisplayContent.forAllWindows(this, true /* traverseTopToBottom */); mDisplayContent.forAllWindows(this, true /* traverseTopToBottom */); updateInputFocusRequest(mRecentsAnimationInputConsumer); updateInputFocusRequest(mRecentsAnimationInputConsumer); Loading