Merge "Fixed too much padding in QQS with top corner cutout"

This commit is contained in:
Shawn Lin
2020-02-19 14:25:25 +00:00
committed by Android (Google) Code Review

View File

@@ -436,23 +436,22 @@ public class QuickStatusBarHeader extends RelativeLayout implements
@Override
public WindowInsets onApplyWindowInsets(WindowInsets insets) {
// Handle padding of SystemIconsView
DisplayCutout cutout = insets.getDisplayCutout();
// Handle padding of QuickStatusBarHeader
Pair<Integer, Integer> cornerCutoutPadding = StatusBarWindowView.cornerCutoutMargins(
cutout, getDisplay());
Pair<Integer, Integer> padding =
StatusBarWindowView.paddingNeededForCutoutAndRoundedCorner(
cutout, cornerCutoutPadding, mRoundedCornerPadding);
setPadding(padding.first, 0, padding.second, getPaddingBottom());
// Handle padding of SystemIconsView
final int waterfallTopInset = cutout == null ? 0 : cutout.getWaterfallInsets().top;
mSystemIconsView.setPaddingRelative(
getResources().getDimensionPixelSize(R.dimen.status_bar_padding_start),
waterfallTopInset,
getResources().getDimensionPixelSize(R.dimen.status_bar_padding_end),
0);
int statusBarPaddingLeft = isLayoutRtl()
? getResources().getDimensionPixelSize(R.dimen.status_bar_padding_end)
: getResources().getDimensionPixelSize(R.dimen.status_bar_padding_start);
int statusBarPaddingRight = isLayoutRtl()
? getResources().getDimensionPixelSize(R.dimen.status_bar_padding_start)
: getResources().getDimensionPixelSize(R.dimen.status_bar_padding_end);
mSystemIconsView.setPadding(padding.first + statusBarPaddingLeft, waterfallTopInset,
padding.second + statusBarPaddingRight, 0);
return super.onApplyWindowInsets(insets);
}