diff options
| -rw-r--r-- | packages/SystemUI/accessibility/accessibilitymenu/src/com/android/systemui/accessibility/accessibilitymenu/view/A11yMenuOverlayLayout.java | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/packages/SystemUI/accessibility/accessibilitymenu/src/com/android/systemui/accessibility/accessibilitymenu/view/A11yMenuOverlayLayout.java b/packages/SystemUI/accessibility/accessibilitymenu/src/com/android/systemui/accessibility/accessibilitymenu/view/A11yMenuOverlayLayout.java index 7bdb8f9a00d2..e61522b7530f 100644 --- a/packages/SystemUI/accessibility/accessibilitymenu/src/com/android/systemui/accessibility/accessibilitymenu/view/A11yMenuOverlayLayout.java +++ b/packages/SystemUI/accessibility/accessibilitymenu/src/com/android/systemui/accessibility/accessibilitymenu/view/A11yMenuOverlayLayout.java @@ -24,6 +24,7 @@ import android.content.res.Configuration; import android.graphics.Insets; import android.graphics.PixelFormat; import android.graphics.Rect; +import android.hardware.display.DisplayManager; import android.os.Handler; import android.os.Looper; import android.view.Display; @@ -73,6 +74,7 @@ public class A11yMenuOverlayLayout { private final AccessibilityMenuService mService; private final WindowManager mWindowManager; + private final DisplayManager mDisplayManager; private ViewGroup mLayout; private WindowManager.LayoutParams mLayoutParameter; private A11yMenuViewPager mA11yMenuViewPager; @@ -82,6 +84,7 @@ public class A11yMenuOverlayLayout { public A11yMenuOverlayLayout(AccessibilityMenuService service) { mService = service; mWindowManager = mService.getSystemService(WindowManager.class); + mDisplayManager = mService.getSystemService(DisplayManager.class); configureLayout(); mHandler = new Handler(Looper.getMainLooper()); mAccessibilityManager = mService.getSystemService(AccessibilityManager.class); @@ -161,9 +164,9 @@ public class A11yMenuOverlayLayout { /** Updates a11y menu layout position by configuring layout params. */ private void updateLayoutPosition() { - Display display = mLayout.getDisplay(); + final Display display = mDisplayManager.getDisplay(Display.DEFAULT_DISPLAY); final int orientation = mService.getResources().getConfiguration().orientation; - if (orientation == Configuration.ORIENTATION_LANDSCAPE) { + if (display != null && orientation == Configuration.ORIENTATION_LANDSCAPE) { switch (display.getRotation()) { case Surface.ROTATION_90: case Surface.ROTATION_180: |