diff options
| -rw-r--r-- | packages/SystemUI/res/values/dimens.xml | 4 | ||||
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/phone/FloatingRotationButton.java | 15 |
2 files changed, 13 insertions, 6 deletions
diff --git a/packages/SystemUI/res/values/dimens.xml b/packages/SystemUI/res/values/dimens.xml index 19874948cb54..c04d28a6cda8 100644 --- a/packages/SystemUI/res/values/dimens.xml +++ b/packages/SystemUI/res/values/dimens.xml @@ -38,7 +38,6 @@ <dimen name="navigation_handle_sample_horizontal_margin">10dp</dimen> <dimen name="navigation_home_handle_width">72dp</dimen> - <!-- Size of the nav bar edge panels, should be greater to the edge sensitivity + the drag threshold --> <dimen name="navigation_edge_panel_width">70dp</dimen> @@ -57,6 +56,9 @@ <!-- Luminance change threshold that allows applying new value if difference was exceeded --> <item name="navigation_luminance_change_threshold" type="dimen" format="float">0.05</item> + <dimen name="floating_rotation_button_diameter">40dp</dimen> + <dimen name="floating_rotation_button_margin">4dp</dimen> + <!-- Height of notification icons in the status bar --> <dimen name="status_bar_icon_size">@*android:dimen/status_bar_icon_size</dimen> diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/FloatingRotationButton.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/FloatingRotationButton.java index 215aa77920d9..6286d4d7febf 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/FloatingRotationButton.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/FloatingRotationButton.java @@ -17,6 +17,7 @@ package com.android.systemui.statusbar.phone; import android.content.Context; +import android.content.res.Resources; import android.graphics.PixelFormat; import android.view.ContextThemeWrapper; import android.view.Gravity; @@ -35,6 +36,8 @@ public class FloatingRotationButton implements RotationButton { private final Context mContext; private final WindowManager mWindowManager; private final KeyButtonView mKeyButtonView; + private final int mDiameter; + private final int mMargin; private KeyButtonDrawable mKeyButtonDrawable; private boolean mIsShowing; private boolean mCanShow = true; @@ -46,6 +49,11 @@ public class FloatingRotationButton implements RotationButton { mWindowManager = (WindowManager) mContext.getSystemService(Context.WINDOW_SERVICE); mKeyButtonView = (KeyButtonView) LayoutInflater.from(mContext).inflate( R.layout.rotate_suggestion, null); + mKeyButtonView.setVisibility(View.VISIBLE); + + Resources resources = mContext.getResources(); + mDiameter = resources.getDimensionPixelSize(R.dimen.floating_rotation_button_diameter); + mMargin = resources.getDimensionPixelSize(R.dimen.floating_rotation_button_margin); } @Override @@ -66,11 +74,8 @@ public class FloatingRotationButton implements RotationButton { mIsShowing = true; int flags = WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE | WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN; - float density = mContext.getResources().getDisplayMetrics().density; - int diameter = (int) density * 48; - int margin = (int) density * 4; - final WindowManager.LayoutParams lp = new WindowManager.LayoutParams(diameter, diameter, - margin, margin, WindowManager.LayoutParams.TYPE_NAVIGATION_BAR_PANEL, flags, + final WindowManager.LayoutParams lp = new WindowManager.LayoutParams(mDiameter, mDiameter, + mMargin, mMargin, WindowManager.LayoutParams.TYPE_NAVIGATION_BAR_PANEL, flags, PixelFormat.TRANSLUCENT); lp.privateFlags |= WindowManager.LayoutParams.PRIVATE_FLAG_SHOW_FOR_ALL_USERS; lp.setTitle("FloatingRotationButton"); |