Merge "Save space in small width screens" into sc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
842ebcdb44
19
packages/SystemUI/res/values-w390dp/config.xml
Normal file
19
packages/SystemUI/res/values-w390dp/config.xml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
<!--
|
||||||
|
~ Copyright (C) 2021 The Android Open Source Project
|
||||||
|
~
|
||||||
|
~ Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
~ you may not use this file except in compliance with the License.
|
||||||
|
~ You may obtain a copy of the License at
|
||||||
|
~
|
||||||
|
~ http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
~
|
||||||
|
~ Unless required by applicable law or agreed to in writing, software
|
||||||
|
~ distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
~ See the License for the specific language governing permissions and
|
||||||
|
~ limitations under the License.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<resources>
|
||||||
|
<bool name="config_showBatteryEstimateQSBH">true</bool>
|
||||||
|
</resources>
|
||||||
@@ -539,6 +539,11 @@
|
|||||||
<item>@*android:string/status_bar_headset</item>
|
<item>@*android:string/status_bar_headset</item>
|
||||||
</string-array>
|
</string-array>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Whether to show estimate in QS header. Default to false in case there's not enough
|
||||||
|
space -->
|
||||||
|
<bool name="config_showBatteryEstimateQSBH">false</bool>
|
||||||
|
|
||||||
<!-- A path similar to frameworks/base/core/res/res/values/config.xml
|
<!-- A path similar to frameworks/base/core/res/res/values/config.xml
|
||||||
config_mainBuiltInDisplayCutout that describes a path larger than the exact path of a display
|
config_mainBuiltInDisplayCutout that describes a path larger than the exact path of a display
|
||||||
cutout. If present as well as config_enableDisplayCutoutProtection is set to true, then
|
cutout. If present as well as config_enableDisplayCutoutProtection is set to true, then
|
||||||
|
|||||||
@@ -195,6 +195,7 @@ public class BatteryMeterView extends LinearLayout implements
|
|||||||
* @param mode desired mode (none, on, off)
|
* @param mode desired mode (none, on, off)
|
||||||
*/
|
*/
|
||||||
public void setPercentShowMode(@BatteryPercentMode int mode) {
|
public void setPercentShowMode(@BatteryPercentMode int mode) {
|
||||||
|
if (mode == mShowPercentMode) return;
|
||||||
mShowPercentMode = mode;
|
mShowPercentMode = mode;
|
||||||
updateShowPercent();
|
updateShowPercent();
|
||||||
}
|
}
|
||||||
@@ -330,7 +331,7 @@ public class BatteryMeterView extends LinearLayout implements
|
|||||||
if (mBatteryPercentView == null) {
|
if (mBatteryPercentView == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (estimate != null) {
|
if (estimate != null && mShowPercentMode == MODE_ESTIMATE) {
|
||||||
mBatteryPercentView.setText(estimate);
|
mBatteryPercentView.setText(estimate);
|
||||||
setContentDescription(getContext().getString(
|
setContentDescription(getContext().getString(
|
||||||
R.string.accessibility_battery_level_with_estimate,
|
R.string.accessibility_battery_level_with_estimate,
|
||||||
@@ -485,6 +486,7 @@ public class BatteryMeterView extends LinearLayout implements
|
|||||||
pw.println(" mTextColor: #" + Integer.toHexString(mTextColor));
|
pw.println(" mTextColor: #" + Integer.toHexString(mTextColor));
|
||||||
pw.println(" mBatteryStateUnknown: " + mBatteryStateUnknown);
|
pw.println(" mBatteryStateUnknown: " + mBatteryStateUnknown);
|
||||||
pw.println(" mLevel: " + mLevel);
|
pw.println(" mLevel: " + mLevel);
|
||||||
|
pw.println(" mMode: " + mShowPercentMode);
|
||||||
}
|
}
|
||||||
|
|
||||||
private final class SettingObserver extends ContentObserver {
|
private final class SettingObserver extends ContentObserver {
|
||||||
|
|||||||
@@ -95,6 +95,9 @@ public class QuickStatusBarHeader extends FrameLayout {
|
|||||||
private List<String> mRssiIgnoredSlots;
|
private List<String> mRssiIgnoredSlots;
|
||||||
private boolean mIsSingleCarrier;
|
private boolean mIsSingleCarrier;
|
||||||
|
|
||||||
|
private boolean mHasCenterCutout;
|
||||||
|
private boolean mConfigShowBatteryEstimate;
|
||||||
|
|
||||||
public QuickStatusBarHeader(Context context, AttributeSet attrs) {
|
public QuickStatusBarHeader(Context context, AttributeSet attrs) {
|
||||||
super(context, attrs);
|
super(context, attrs);
|
||||||
}
|
}
|
||||||
@@ -203,9 +206,19 @@ public class QuickStatusBarHeader extends FrameLayout {
|
|||||||
mPrivacyContainer.setLayoutParams(lp);
|
mPrivacyContainer.setLayoutParams(lp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void updateBatteryMode() {
|
||||||
|
if (mConfigShowBatteryEstimate && !mHasCenterCutout) {
|
||||||
|
mBatteryRemainingIcon.setPercentShowMode(BatteryMeterView.MODE_ESTIMATE);
|
||||||
|
} else {
|
||||||
|
mBatteryRemainingIcon.setPercentShowMode(BatteryMeterView.MODE_ON);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void updateResources() {
|
void updateResources() {
|
||||||
Resources resources = mContext.getResources();
|
Resources resources = mContext.getResources();
|
||||||
|
|
||||||
|
mConfigShowBatteryEstimate = resources.getBoolean(R.bool.config_showBatteryEstimateQSBH);
|
||||||
|
|
||||||
mRoundedCornerPadding = resources.getDimensionPixelSize(
|
mRoundedCornerPadding = resources.getDimensionPixelSize(
|
||||||
R.dimen.rounded_corner_content_padding);
|
R.dimen.rounded_corner_content_padding);
|
||||||
|
|
||||||
@@ -246,6 +259,7 @@ public class QuickStatusBarHeader extends FrameLayout {
|
|||||||
.getDimensionPixelSize(R.dimen.qqs_layout_margin_top);
|
.getDimensionPixelSize(R.dimen.qqs_layout_margin_top);
|
||||||
mHeaderQsPanel.setLayoutParams(qqsLP);
|
mHeaderQsPanel.setLayoutParams(qqsLP);
|
||||||
|
|
||||||
|
updateBatteryMode();
|
||||||
updateHeadersPadding();
|
updateHeadersPadding();
|
||||||
updateAnimators();
|
updateAnimators();
|
||||||
}
|
}
|
||||||
@@ -384,14 +398,14 @@ public class QuickStatusBarHeader extends FrameLayout {
|
|||||||
mClockIconsSeparatorLayoutParams.width = 0;
|
mClockIconsSeparatorLayoutParams.width = 0;
|
||||||
setSeparatorVisibility(false);
|
setSeparatorVisibility(false);
|
||||||
mShowClockIconsSeparator = false;
|
mShowClockIconsSeparator = false;
|
||||||
mBatteryRemainingIcon.setPercentShowMode(BatteryMeterView.MODE_ESTIMATE);
|
mHasCenterCutout = false;
|
||||||
} else {
|
} else {
|
||||||
datePrivacySeparatorLayoutParams.width = topCutout.width();
|
datePrivacySeparatorLayoutParams.width = topCutout.width();
|
||||||
mDatePrivacySeparator.setVisibility(View.VISIBLE);
|
mDatePrivacySeparator.setVisibility(View.VISIBLE);
|
||||||
mClockIconsSeparatorLayoutParams.width = topCutout.width();
|
mClockIconsSeparatorLayoutParams.width = topCutout.width();
|
||||||
mShowClockIconsSeparator = true;
|
mShowClockIconsSeparator = true;
|
||||||
setSeparatorVisibility(mKeyguardExpansionFraction == 0f);
|
setSeparatorVisibility(mKeyguardExpansionFraction == 0f);
|
||||||
mBatteryRemainingIcon.setPercentShowMode(BatteryMeterView.MODE_ON);
|
mHasCenterCutout = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
mDatePrivacySeparator.setLayoutParams(datePrivacySeparatorLayoutParams);
|
mDatePrivacySeparator.setLayoutParams(datePrivacySeparatorLayoutParams);
|
||||||
@@ -399,6 +413,8 @@ public class QuickStatusBarHeader extends FrameLayout {
|
|||||||
mCutOutPaddingLeft = padding.first;
|
mCutOutPaddingLeft = padding.first;
|
||||||
mCutOutPaddingRight = padding.second;
|
mCutOutPaddingRight = padding.second;
|
||||||
mWaterfallTopInset = cutout == null ? 0 : cutout.getWaterfallInsets().top;
|
mWaterfallTopInset = cutout == null ? 0 : cutout.getWaterfallInsets().top;
|
||||||
|
|
||||||
|
updateBatteryMode();
|
||||||
updateHeadersPadding();
|
updateHeadersPadding();
|
||||||
return super.onApplyWindowInsets(insets);
|
return super.onApplyWindowInsets(insets);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user