diff options
Diffstat (limited to 'core/java')
| -rw-r--r-- | core/java/android/view/IWindowManager.aidl | 6 | ||||
| -rw-r--r-- | core/java/com/android/internal/policy/PhoneWindow.java | 92 |
2 files changed, 55 insertions, 43 deletions
diff --git a/core/java/android/view/IWindowManager.aidl b/core/java/android/view/IWindowManager.aidl index 092702ca30cf..0398b8f07f4b 100644 --- a/core/java/android/view/IWindowManager.aidl +++ b/core/java/android/view/IWindowManager.aidl @@ -223,10 +223,12 @@ interface IWindowManager /** * Determine the preferred edge of the screen to pin the compact options menu against. - * @return a Gravity value for the options menu panel + * + * @param displayId Id of the display where the menu window currently resides. + * @return a Gravity value for the options menu panel. * @hide */ - int getPreferredOptionsPanelGravity(); + int getPreferredOptionsPanelGravity(int displayId); /** * Lock the device orientation to the specified rotation, or to the diff --git a/core/java/com/android/internal/policy/PhoneWindow.java b/core/java/com/android/internal/policy/PhoneWindow.java index ac7dc8e29b55..87515173e8de 100644 --- a/core/java/com/android/internal/policy/PhoneWindow.java +++ b/core/java/com/android/internal/policy/PhoneWindow.java @@ -19,15 +19,54 @@ package com.android.internal.policy; import static android.provider.Settings.Global.DEVELOPMENT_FORCE_RESIZABLE_ACTIVITIES; import static android.view.ViewGroup.LayoutParams.MATCH_PARENT; import static android.view.ViewGroup.LayoutParams.WRAP_CONTENT; -import static android.view.WindowManager.LayoutParams.*; +import static android.view.WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS; +import static android.view.WindowManager.LayoutParams.FLAG_FULLSCREEN; +import static android.view.WindowManager.LayoutParams.FLAG_LAYOUT_INSET_DECOR; +import static android.view.WindowManager.LayoutParams.FLAG_LAYOUT_IN_OVERSCAN; +import static android.view.WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN; +import static android.view.WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS; +import static android.view.WindowManager.LayoutParams.FLAG_SHOW_WALLPAPER; +import static android.view.WindowManager.LayoutParams.FLAG_SPLIT_TOUCH; +import static android.view.WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION; +import static android.view.WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS; +import static android.view.WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_DEFAULT; +import static android.view.WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_NEVER; +import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_FORCE_DRAW_STATUS_BAR_BACKGROUND; import android.annotation.NonNull; import android.app.ActivityManager; +import android.app.KeyguardManager; import android.app.SearchManager; +import android.content.Context; +import android.content.Intent; +import android.content.pm.PackageManager; +import android.content.res.Configuration; +import android.content.res.Resources.Theme; +import android.content.res.TypedArray; +import android.graphics.Color; +import android.graphics.drawable.Drawable; +import android.media.AudioManager; +import android.media.session.MediaController; import android.media.session.MediaSessionManager; -import android.os.UserHandle; - +import android.net.Uri; +import android.os.Bundle; +import android.os.Handler; +import android.os.Parcel; +import android.os.Parcelable; +import android.os.RemoteException; +import android.os.ServiceManager; +import android.provider.Settings; import android.text.TextUtils; +import android.transition.Scene; +import android.transition.Transition; +import android.transition.TransitionInflater; +import android.transition.TransitionManager; +import android.transition.TransitionSet; +import android.util.AndroidRuntimeException; +import android.util.EventLog; +import android.util.Log; +import android.util.SparseArray; +import android.util.TypedValue; import android.view.ContextThemeWrapper; import android.view.Gravity; import android.view.IRotationWatcher.Stub; @@ -52,6 +91,13 @@ import android.view.ViewRootImpl; import android.view.ViewRootImpl.ActivityConfigCallback; import android.view.Window; import android.view.WindowManager; +import android.view.animation.Animation; +import android.view.animation.AnimationUtils; +import android.widget.FrameLayout; +import android.widget.ImageView; +import android.widget.ProgressBar; +import android.widget.TextView; + import com.android.internal.R; import com.android.internal.view.menu.ContextMenuBuilder; import com.android.internal.view.menu.IconMenuPresenter; @@ -64,43 +110,6 @@ import com.android.internal.view.menu.MenuView; import com.android.internal.widget.DecorContentParent; import com.android.internal.widget.SwipeDismissLayout; -import android.app.ActivityManager; -import android.app.KeyguardManager; -import android.content.Context; -import android.content.Intent; -import android.content.pm.PackageManager; -import android.content.res.Configuration; -import android.content.res.Resources.Theme; -import android.content.res.TypedArray; -import android.graphics.Color; -import android.graphics.drawable.Drawable; -import android.media.AudioManager; -import android.media.session.MediaController; -import android.net.Uri; -import android.os.Bundle; -import android.os.Handler; -import android.os.Parcel; -import android.os.Parcelable; -import android.os.RemoteException; -import android.os.ServiceManager; -import android.provider.Settings; -import android.transition.Scene; -import android.transition.Transition; -import android.transition.TransitionInflater; -import android.transition.TransitionManager; -import android.transition.TransitionSet; -import android.util.AndroidRuntimeException; -import android.util.EventLog; -import android.util.Log; -import android.util.SparseArray; -import android.util.TypedValue; -import android.view.animation.Animation; -import android.view.animation.AnimationUtils; -import android.widget.FrameLayout; -import android.widget.ImageView; -import android.widget.ProgressBar; -import android.widget.TextView; - import java.lang.ref.WeakReference; import java.util.ArrayList; @@ -1377,7 +1386,8 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { */ private int getOptionsPanelGravity() { try { - return WindowManagerHolder.sWindowManager.getPreferredOptionsPanelGravity(); + return WindowManagerHolder.sWindowManager.getPreferredOptionsPanelGravity( + getContext().getDisplay().getDisplayId()); } catch (RemoteException ex) { Log.e(TAG, "Couldn't getOptionsPanelGravity; using default", ex); return Gravity.CENTER | Gravity.BOTTOM; |
