Loading libs/WindowManager/Shell/src/com/android/wm/shell/startingsurface/StartingSurfaceDrawer.java +2 −3 Original line number Diff line number Diff line Loading @@ -269,6 +269,8 @@ public class StartingSurfaceDrawer { // touchable or focusable by the user. We also add in the ALT_FOCUSABLE_IM // flag because we do know that the next window will take input // focus, so we want to get the IME window up on top of us right away. // Touches will only pass through to the host activity window and will be blocked from // passing to any other windows. windowFlags |= WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE | WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE | WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM; Loading @@ -276,9 +278,6 @@ public class StartingSurfaceDrawer { params.token = appToken; params.packageName = activityInfo.packageName; params.privateFlags |= WindowManager.LayoutParams.SYSTEM_FLAG_SHOW_FOR_ALL_USERS; // Setting as trusted overlay to let touches pass through. This is safe because this // window is controlled by the system. params.privateFlags |= WindowManager.LayoutParams.PRIVATE_FLAG_TRUSTED_OVERLAY; if (!context.getResources().getCompatibilityInfo().supportsScreen()) { params.privateFlags |= WindowManager.LayoutParams.PRIVATE_FLAG_COMPATIBLE_WINDOW; Loading services/core/java/com/android/server/wm/ActivityRecordInputSink.java +4 −4 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import android.compat.annotation.Disabled; import android.os.IBinder; import android.os.InputConstants; import android.os.Looper; import android.os.Process; import android.util.Slog; import android.view.InputChannel; import android.view.InputEvent; Loading Loading @@ -113,14 +114,13 @@ class ActivityRecordInputSink { } private InputWindowHandle createInputWindowHandle() { InputWindowHandle inputWindowHandle = new InputWindowHandle( mActivityRecord.getInputApplicationHandle(false), InputWindowHandle inputWindowHandle = new InputWindowHandle(null, mActivityRecord.getDisplayId()); inputWindowHandle.replaceTouchableRegionWithCrop( mActivityRecord.getParentSurfaceControl()); inputWindowHandle.name = mName; inputWindowHandle.ownerUid = mActivityRecord.getUid(); inputWindowHandle.ownerPid = mActivityRecord.getPid(); inputWindowHandle.ownerUid = Process.myUid(); inputWindowHandle.ownerPid = Process.myPid(); inputWindowHandle.layoutParamsFlags = WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL | WindowManager.LayoutParams.FLAG_SPLIT_TOUCH; Loading Loading
libs/WindowManager/Shell/src/com/android/wm/shell/startingsurface/StartingSurfaceDrawer.java +2 −3 Original line number Diff line number Diff line Loading @@ -269,6 +269,8 @@ public class StartingSurfaceDrawer { // touchable or focusable by the user. We also add in the ALT_FOCUSABLE_IM // flag because we do know that the next window will take input // focus, so we want to get the IME window up on top of us right away. // Touches will only pass through to the host activity window and will be blocked from // passing to any other windows. windowFlags |= WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE | WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE | WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM; Loading @@ -276,9 +278,6 @@ public class StartingSurfaceDrawer { params.token = appToken; params.packageName = activityInfo.packageName; params.privateFlags |= WindowManager.LayoutParams.SYSTEM_FLAG_SHOW_FOR_ALL_USERS; // Setting as trusted overlay to let touches pass through. This is safe because this // window is controlled by the system. params.privateFlags |= WindowManager.LayoutParams.PRIVATE_FLAG_TRUSTED_OVERLAY; if (!context.getResources().getCompatibilityInfo().supportsScreen()) { params.privateFlags |= WindowManager.LayoutParams.PRIVATE_FLAG_COMPATIBLE_WINDOW; Loading
services/core/java/com/android/server/wm/ActivityRecordInputSink.java +4 −4 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import android.compat.annotation.Disabled; import android.os.IBinder; import android.os.InputConstants; import android.os.Looper; import android.os.Process; import android.util.Slog; import android.view.InputChannel; import android.view.InputEvent; Loading Loading @@ -113,14 +114,13 @@ class ActivityRecordInputSink { } private InputWindowHandle createInputWindowHandle() { InputWindowHandle inputWindowHandle = new InputWindowHandle( mActivityRecord.getInputApplicationHandle(false), InputWindowHandle inputWindowHandle = new InputWindowHandle(null, mActivityRecord.getDisplayId()); inputWindowHandle.replaceTouchableRegionWithCrop( mActivityRecord.getParentSurfaceControl()); inputWindowHandle.name = mName; inputWindowHandle.ownerUid = mActivityRecord.getUid(); inputWindowHandle.ownerPid = mActivityRecord.getPid(); inputWindowHandle.ownerUid = Process.myUid(); inputWindowHandle.ownerPid = Process.myPid(); inputWindowHandle.layoutParamsFlags = WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL | WindowManager.LayoutParams.FLAG_SPLIT_TOUCH; Loading