Merge "Align Keyguard statusBar margin padding to phone's" into sc-qpr1-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
2974556789
@@ -30,7 +30,6 @@
|
||||
android:id="@+id/status_icon_area"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="match_parent"
|
||||
android:paddingEnd="@dimen/system_icons_keyguard_padding_end"
|
||||
android:paddingTop="@dimen/status_bar_padding_top"
|
||||
android:layout_alignParentEnd="true"
|
||||
android:gravity="center_vertical|end" >
|
||||
@@ -39,6 +38,7 @@
|
||||
android:layout_height="match_parent"
|
||||
android:layout_weight="1"
|
||||
android:layout_marginStart="@dimen/system_icons_super_container_margin_start"
|
||||
android:layout_marginEnd="@dimen/status_bar_padding_end"
|
||||
android:gravity="center_vertical|end">
|
||||
<include layout="@layout/system_icons" />
|
||||
</FrameLayout>
|
||||
|
||||
@@ -96,7 +96,8 @@ public class KeyguardStatusBarView extends RelativeLayout implements
|
||||
private final UserManager mUserManager;
|
||||
|
||||
private int mSystemIconsSwitcherHiddenExpandedMargin;
|
||||
private int mSystemIconsBaseMargin;
|
||||
private int mStatusBarPaddingEnd;
|
||||
private int mMinDotWidth;
|
||||
private View mSystemIconsContainer;
|
||||
private TintedIconManager mIconManager;
|
||||
private List<String> mBlockedIcons = new ArrayList<>();
|
||||
@@ -157,14 +158,7 @@ public class KeyguardStatusBarView extends RelativeLayout implements
|
||||
mMultiUserAvatar.setLayoutParams(lp);
|
||||
|
||||
// System icons
|
||||
lp = (MarginLayoutParams) mSystemIconsContainer.getLayoutParams();
|
||||
lp.setMarginStart(getResources().getDimensionPixelSize(
|
||||
R.dimen.system_icons_super_container_margin_start));
|
||||
mSystemIconsContainer.setLayoutParams(lp);
|
||||
mSystemIconsContainer.setPaddingRelative(mSystemIconsContainer.getPaddingStart(),
|
||||
mSystemIconsContainer.getPaddingTop(),
|
||||
getResources().getDimensionPixelSize(R.dimen.system_icons_keyguard_padding_end),
|
||||
mSystemIconsContainer.getPaddingBottom());
|
||||
updateSystemIconsLayoutParams();
|
||||
|
||||
// Respect font size setting.
|
||||
mCarrierLabel.setTextSize(TypedValue.COMPLEX_UNIT_PX,
|
||||
@@ -194,8 +188,10 @@ public class KeyguardStatusBarView extends RelativeLayout implements
|
||||
Resources res = getResources();
|
||||
mSystemIconsSwitcherHiddenExpandedMargin = res.getDimensionPixelSize(
|
||||
R.dimen.system_icons_switcher_hidden_expanded_margin);
|
||||
mSystemIconsBaseMargin = res.getDimensionPixelSize(
|
||||
R.dimen.system_icons_super_container_avatarless_margin_end);
|
||||
mStatusBarPaddingEnd = res.getDimensionPixelSize(
|
||||
R.dimen.status_bar_padding_end);
|
||||
mMinDotWidth = res.getDimensionPixelSize(
|
||||
R.dimen.ongoing_appops_dot_min_padding);
|
||||
mCutoutSideNudge = getResources().getDimensionPixelSize(
|
||||
R.dimen.display_cutout_margin_consumption);
|
||||
mShowPercentAvailable = getContext().getResources().getBoolean(
|
||||
@@ -243,16 +239,24 @@ public class KeyguardStatusBarView extends RelativeLayout implements
|
||||
private void updateSystemIconsLayoutParams() {
|
||||
LinearLayout.LayoutParams lp =
|
||||
(LinearLayout.LayoutParams) mSystemIconsContainer.getLayoutParams();
|
||||
// If the avatar icon is gone, we need to have some end margin to display the system icons
|
||||
// correctly.
|
||||
int baseMarginEnd = mMultiUserAvatar.getVisibility() == View.GONE
|
||||
? mSystemIconsBaseMargin
|
||||
: 0;
|
||||
|
||||
int marginStart = getResources().getDimensionPixelSize(
|
||||
R.dimen.system_icons_super_container_margin_start);
|
||||
|
||||
// Use status_bar_padding_end to replace original
|
||||
// system_icons_super_container_avatarless_margin_end to prevent different end alignment
|
||||
// between PhoneStatusBarView and KeyguardStatusBarView
|
||||
int baseMarginEnd = mStatusBarPaddingEnd;
|
||||
int marginEnd =
|
||||
mKeyguardUserSwitcherEnabled ? mSystemIconsSwitcherHiddenExpandedMargin
|
||||
: baseMarginEnd;
|
||||
marginEnd = calculateMargin(marginEnd, mPadding.second);
|
||||
if (marginEnd != lp.getMarginEnd()) {
|
||||
|
||||
// Align PhoneStatusBar right margin/padding, only use
|
||||
// 1. status bar layout: mPadding(consider round_corner + privacy dot)
|
||||
// 2. icon container: R.dimen.status_bar_padding_end
|
||||
|
||||
if (marginEnd != lp.getMarginEnd() || marginStart != lp.getMarginStart()) {
|
||||
lp.setMarginStart(marginStart);
|
||||
lp.setMarginEnd(marginEnd);
|
||||
mSystemIconsContainer.setLayoutParams(lp);
|
||||
}
|
||||
@@ -287,7 +291,13 @@ public class KeyguardStatusBarView extends RelativeLayout implements
|
||||
mPadding =
|
||||
StatusBarWindowView.paddingNeededForCutoutAndRoundedCorner(
|
||||
mDisplayCutout, cornerCutoutMargins, mRoundedCornerPadding);
|
||||
setPadding(mPadding.first, waterfallTop, mPadding.second, 0);
|
||||
|
||||
// consider privacy dot space
|
||||
final int minLeft = isLayoutRtl() ? Math.max(mMinDotWidth, mPadding.first) : mPadding.first;
|
||||
final int minRight = isLayoutRtl() ? mPadding.second :
|
||||
Math.max(mMinDotWidth, mPadding.second);
|
||||
|
||||
setPadding(minLeft, waterfallTop, minRight, 0);
|
||||
}
|
||||
|
||||
private boolean updateLayoutParamsNoCutout() {
|
||||
|
||||
Reference in New Issue
Block a user