Loading core/java/android/view/Window.java +3 −0 Original line number Diff line number Diff line Loading @@ -743,6 +743,9 @@ public abstract class Window { public void setFlags(int flags, int mask) { final WindowManager.LayoutParams attrs = getAttributes(); attrs.flags = (attrs.flags&~mask) | (flags&mask); if ((mask&WindowManager.LayoutParams.FLAG_NEEDS_MENU_KEY) != 0) { attrs.privateFlags |= WindowManager.LayoutParams.PRIVATE_FLAG_SET_NEEDS_MENU_KEY; } mForcedWindowFlags |= mask; if (mCallback != null) { mCallback.onWindowAttributesChanged(attrs); Loading core/java/android/view/WindowManager.java +10 −0 Original line number Diff line number Diff line Loading @@ -823,6 +823,16 @@ public interface WindowManager extends ViewManager { */ public static final int PRIVATE_FLAG_WANTS_OFFSET_NOTIFICATIONS = 0x00000004; /** * This is set for a window that has explicitly specified its * FLAG_NEEDS_MENU_KEY, so we know the value on this window is the * appropriate one to use. If this is not set, we should look at * windows behind it to determine the appropriate value. * * @hide */ public static final int PRIVATE_FLAG_SET_NEEDS_MENU_KEY = 0x00000008; /** * Control flags that are private to the platform. * @hide Loading core/java/android/view/WindowManagerPolicy.java +8 −0 Original line number Diff line number Diff line Loading @@ -237,6 +237,14 @@ public interface WindowManagerPolicy { */ public WindowManager.LayoutParams getAttrs(); /** * Return whether this window needs the menu key shown. Must be called * with window lock held, because it may need to traverse down through * window list to determine the result. * @param bottom The bottom-most window to consider when determining this. */ public boolean getNeedsMenuLw(WindowState bottom); /** * Retrieve the current system UI visibility flags associated with * this window. Loading policy/src/com/android/internal/policy/impl/KeyguardViewManager.java +1 −0 Original line number Diff line number Diff line Loading @@ -138,6 +138,7 @@ public class KeyguardViewManager implements KeyguardWindowController { lp.privateFlags |= WindowManager.LayoutParams.PRIVATE_FLAG_FORCE_HARDWARE_ACCELERATED; } lp.privateFlags |= WindowManager.LayoutParams.PRIVATE_FLAG_SET_NEEDS_MENU_KEY; lp.setTitle("Keyguard"); mWindowLayoutParams = lp; Loading policy/src/com/android/internal/policy/impl/PhoneWindow.java +2 −0 Original line number Diff line number Diff line Loading @@ -2582,6 +2582,8 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { if (targetPreHoneycomb || (targetPreIcs && targetHcNeedsOptions && noActionBar)) { addFlags(WindowManager.LayoutParams.FLAG_NEEDS_MENU_KEY); } else { clearFlags(WindowManager.LayoutParams.FLAG_NEEDS_MENU_KEY); } if (mAlwaysReadCloseOnTouchAttr || getContext().getApplicationInfo().targetSdkVersion Loading Loading
core/java/android/view/Window.java +3 −0 Original line number Diff line number Diff line Loading @@ -743,6 +743,9 @@ public abstract class Window { public void setFlags(int flags, int mask) { final WindowManager.LayoutParams attrs = getAttributes(); attrs.flags = (attrs.flags&~mask) | (flags&mask); if ((mask&WindowManager.LayoutParams.FLAG_NEEDS_MENU_KEY) != 0) { attrs.privateFlags |= WindowManager.LayoutParams.PRIVATE_FLAG_SET_NEEDS_MENU_KEY; } mForcedWindowFlags |= mask; if (mCallback != null) { mCallback.onWindowAttributesChanged(attrs); Loading
core/java/android/view/WindowManager.java +10 −0 Original line number Diff line number Diff line Loading @@ -823,6 +823,16 @@ public interface WindowManager extends ViewManager { */ public static final int PRIVATE_FLAG_WANTS_OFFSET_NOTIFICATIONS = 0x00000004; /** * This is set for a window that has explicitly specified its * FLAG_NEEDS_MENU_KEY, so we know the value on this window is the * appropriate one to use. If this is not set, we should look at * windows behind it to determine the appropriate value. * * @hide */ public static final int PRIVATE_FLAG_SET_NEEDS_MENU_KEY = 0x00000008; /** * Control flags that are private to the platform. * @hide Loading
core/java/android/view/WindowManagerPolicy.java +8 −0 Original line number Diff line number Diff line Loading @@ -237,6 +237,14 @@ public interface WindowManagerPolicy { */ public WindowManager.LayoutParams getAttrs(); /** * Return whether this window needs the menu key shown. Must be called * with window lock held, because it may need to traverse down through * window list to determine the result. * @param bottom The bottom-most window to consider when determining this. */ public boolean getNeedsMenuLw(WindowState bottom); /** * Retrieve the current system UI visibility flags associated with * this window. Loading
policy/src/com/android/internal/policy/impl/KeyguardViewManager.java +1 −0 Original line number Diff line number Diff line Loading @@ -138,6 +138,7 @@ public class KeyguardViewManager implements KeyguardWindowController { lp.privateFlags |= WindowManager.LayoutParams.PRIVATE_FLAG_FORCE_HARDWARE_ACCELERATED; } lp.privateFlags |= WindowManager.LayoutParams.PRIVATE_FLAG_SET_NEEDS_MENU_KEY; lp.setTitle("Keyguard"); mWindowLayoutParams = lp; Loading
policy/src/com/android/internal/policy/impl/PhoneWindow.java +2 −0 Original line number Diff line number Diff line Loading @@ -2582,6 +2582,8 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { if (targetPreHoneycomb || (targetPreIcs && targetHcNeedsOptions && noActionBar)) { addFlags(WindowManager.LayoutParams.FLAG_NEEDS_MENU_KEY); } else { clearFlags(WindowManager.LayoutParams.FLAG_NEEDS_MENU_KEY); } if (mAlwaysReadCloseOnTouchAttr || getContext().getApplicationInfo().targetSdkVersion Loading