Loading core/java/android/view/IWindowManager.aidl +6 −0 Original line number Original line Diff line number Diff line Loading @@ -29,6 +29,7 @@ import android.graphics.Bitmap; import android.graphics.GraphicBuffer; import android.graphics.GraphicBuffer; import android.graphics.Point; import android.graphics.Point; import android.graphics.Rect; import android.graphics.Rect; import android.graphics.Region; import android.os.Bundle; import android.os.Bundle; import android.os.IRemoteCallback; import android.os.IRemoteCallback; import android.os.ParcelFileDescriptor; import android.os.ParcelFileDescriptor; Loading Loading @@ -377,4 +378,9 @@ interface IWindowManager * associated with that InputConsumer. * associated with that InputConsumer. */ */ boolean destroyInputConsumer(String name); boolean destroyInputConsumer(String name); /** * Return the touch region for the current IME window, or an empty region if there is none. */ Region getCurrentImeTouchRegion(); } } services/core/java/com/android/server/wm/WindowManagerService.java +11 −0 Original line number Original line Diff line number Diff line Loading @@ -6187,6 +6187,17 @@ public class WindowManagerService extends IWindowManager.Stub } } } } @Override public Region getCurrentImeTouchRegion() { synchronized (mWindowMap) { final Region r = new Region(); if (mInputMethodWindow != null) { mInputMethodWindow.getTouchableRegion(r); } return r; } } @Override @Override public boolean hasNavigationBar() { public boolean hasNavigationBar() { return mPolicy.hasNavigationBar(); return mPolicy.hasNavigationBar(); Loading Loading
core/java/android/view/IWindowManager.aidl +6 −0 Original line number Original line Diff line number Diff line Loading @@ -29,6 +29,7 @@ import android.graphics.Bitmap; import android.graphics.GraphicBuffer; import android.graphics.GraphicBuffer; import android.graphics.Point; import android.graphics.Point; import android.graphics.Rect; import android.graphics.Rect; import android.graphics.Region; import android.os.Bundle; import android.os.Bundle; import android.os.IRemoteCallback; import android.os.IRemoteCallback; import android.os.ParcelFileDescriptor; import android.os.ParcelFileDescriptor; Loading Loading @@ -377,4 +378,9 @@ interface IWindowManager * associated with that InputConsumer. * associated with that InputConsumer. */ */ boolean destroyInputConsumer(String name); boolean destroyInputConsumer(String name); /** * Return the touch region for the current IME window, or an empty region if there is none. */ Region getCurrentImeTouchRegion(); } }
services/core/java/com/android/server/wm/WindowManagerService.java +11 −0 Original line number Original line Diff line number Diff line Loading @@ -6187,6 +6187,17 @@ public class WindowManagerService extends IWindowManager.Stub } } } } @Override public Region getCurrentImeTouchRegion() { synchronized (mWindowMap) { final Region r = new Region(); if (mInputMethodWindow != null) { mInputMethodWindow.getTouchableRegion(r); } return r; } } @Override @Override public boolean hasNavigationBar() { public boolean hasNavigationBar() { return mPolicy.hasNavigationBar(); return mPolicy.hasNavigationBar(); Loading