Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c4c02d63 authored by Fabian Kozynski's avatar Fabian Kozynski Committed by Automerger Merge Worker
Browse files

Merge "Replace DateView with VariableDateView (1/2)" into sc-qpr1-dev am: c8f21f3b

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15545786

Change-Id: I7e8da039c30b991eb0f3ffc4128875e388d2b93d
parents 65ef8174 c8f21f3b
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -21,6 +21,9 @@
    <!-- Skeleton string format for displaying the date when an alarm is set. -->
    <string name="abbrev_wday_month_day_no_year_alarm">EEEMMMd</string>

    <!-- Skeleton string format for displaying the date shorter. -->
    <string name="abbrev_month_day_no_year">MMMd</string>

    <!-- Skeleton string format for displaying the time in 12-hour format. -->
    <string name="clock_12hr_format">hm</string>

+29 −8
Original line number Diff line number Diff line
@@ -26,6 +26,15 @@
    android:focusable="true"
    android:theme="@style/Theme.SystemUI.QuickSettings.Header">

    <LinearLayout
        android:id="@+id/clock_container"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:orientation="horizontal"
        android:layout_gravity="center_vertical|start"
        android:gravity="center_vertical|start"
        >

        <com.android.systemui.statusbar.policy.Clock
            android:id="@+id/clock"
            android:layout_width="wrap_content"
@@ -38,6 +47,18 @@
            android:singleLine="true"
            android:textAppearance="@style/TextAppearance.QS.Status" />

        <com.android.systemui.statusbar.policy.VariableDateView
            android:id="@+id/date_clock"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:gravity="center_vertical|start"
            android:singleLine="true"
            android:textAppearance="@style/TextAppearance.QS.Status"
            systemui:longDatePattern="@string/abbrev_wday_month_day_no_year_alarm"
            systemui:shortDatePattern="@string/abbrev_month_day_no_year"
        />
    </LinearLayout>

    <include layout="@layout/qs_carrier_group"
        android:id="@+id/carrier_group"
        android:layout_width="0dp"
+4 −2
Original line number Diff line number Diff line
@@ -36,7 +36,7 @@
        android:layout_weight="1"
        android:gravity="center_vertical|start" >

        <com.android.systemui.statusbar.policy.DateView
        <com.android.systemui.statusbar.policy.VariableDateView
            android:id="@+id/date"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
@@ -44,7 +44,9 @@
            android:gravity="center_vertical"
            android:singleLine="true"
            android:textAppearance="@style/TextAppearance.QS.Status"
            systemui:datePattern="@string/abbrev_wday_month_day_no_year_alarm" />
            systemui:longDatePattern="@string/abbrev_wday_month_day_no_year_alarm"
            systemui:shortDatePattern="@string/abbrev_month_day_no_year"
        />
    </FrameLayout>

    <android.widget.Space
+4 −0
Original line number Diff line number Diff line
@@ -69,6 +69,10 @@
    <declare-styleable name="DateView">
        <attr name="datePattern" format="string" />
    </declare-styleable>
    <declare-styleable name="VariableDateView">
        <attr name="longDatePattern" format="string" />
        <attr name="shortDatePattern" format="string" />
    </declare-styleable>
    <declare-styleable name="PseudoGridView">
        <attr name="numColumns" format="integer" />
        <attr name="verticalSpacing" format="dimension" />
+17 −5
Original line number Diff line number Diff line
@@ -42,6 +42,7 @@ import com.android.systemui.statusbar.phone.StatusBarIconController.TintedIconMa
import com.android.systemui.statusbar.phone.StatusBarWindowView;
import com.android.systemui.statusbar.phone.StatusIconContainer;
import com.android.systemui.statusbar.policy.Clock;
import com.android.systemui.statusbar.policy.VariableDateView;

import java.util.List;

@@ -62,11 +63,14 @@ public class QuickStatusBarHeader extends FrameLayout {
    protected QuickQSPanel mHeaderQsPanel;
    private View mDatePrivacyView;
    private View mDateView;
    // DateView next to clock. Visible on QQS
    private VariableDateView mClockDateView;
    private View mSecurityHeaderView;
    private View mClockIconsView;
    private View mContainer;

    private View mQSCarriers;
    private ViewGroup mClockContainer;
    private Clock mClockView;
    private Space mDatePrivacySeparator;
    private View mClockIconsSeparator;
@@ -86,7 +90,6 @@ public class QuickStatusBarHeader extends FrameLayout {
    private int mWaterfallTopInset;
    private int mCutOutPaddingLeft;
    private int mCutOutPaddingRight;
    private float mViewAlpha = 1.0f;
    private float mKeyguardExpansionFraction;
    private int mTextColorPrimary = Color.TRANSPARENT;
    private int mTopViewMeasureHeight;
@@ -123,12 +126,14 @@ public class QuickStatusBarHeader extends FrameLayout {
        mIconContainer = findViewById(R.id.statusIcons);
        mPrivacyChip = findViewById(R.id.privacy_chip);
        mDateView = findViewById(R.id.date);
        mClockDateView = findViewById(R.id.date_clock);
        mSecurityHeaderView = findViewById(R.id.header_text_container);
        mClockIconsSeparator = findViewById(R.id.separator);
        mRightLayout = findViewById(R.id.rightLayout);
        mDateContainer = findViewById(R.id.date_container);
        mPrivacyContainer = findViewById(R.id.privacy_container);

        mClockContainer = findViewById(R.id.clock_container);
        mClockView = findViewById(R.id.clock);
        mDatePrivacySeparator = findViewById(R.id.space);
        // Tint for the battery icons are handled in setupHost()
@@ -177,7 +182,7 @@ public class QuickStatusBarHeader extends FrameLayout {
        super.onMeasure(widthMeasureSpec, heightMeasureSpec);
        if (mDatePrivacyView.getMeasuredHeight() != mTopViewMeasureHeight) {
            mTopViewMeasureHeight = mDatePrivacyView.getMeasuredHeight();
            updateAnimators();
            post(this::updateAnimators);
        }
    }

@@ -280,7 +285,8 @@ public class QuickStatusBarHeader extends FrameLayout {
        TouchAnimator.Builder builder = new TouchAnimator.Builder()
                .addFloat(mSecurityHeaderView, "alpha", 0, 1)
                // These views appear on expanding down
                .addFloat(mClockView, "alpha", 0, 1)
                .addFloat(mDateView, "alpha", 0, 0, 1)
                .addFloat(mClockDateView, "alpha", 1, 0, 0)
                .addFloat(mQSCarriers, "alpha", 0, 1)
                .setListener(new TouchAnimator.ListenerAdapter() {
                    @Override
@@ -289,10 +295,14 @@ public class QuickStatusBarHeader extends FrameLayout {
                        if (!mIsSingleCarrier) {
                            mIconContainer.addIgnoredSlots(mRssiIgnoredSlots);
                        }
                        // Make it gone so there's enough room for carrier names
                        mClockDateView.setVisibility(View.GONE);
                    }

                    @Override
                    public void onAnimationStarted() {
                        mClockDateView.setVisibility(View.VISIBLE);
                        mClockDateView.setFreezeSwitching(true);
                        setSeparatorVisibility(false);
                        if (!mIsSingleCarrier) {
                            mIconContainer.addIgnoredSlots(mRssiIgnoredSlots);
@@ -302,6 +312,7 @@ public class QuickStatusBarHeader extends FrameLayout {
                    @Override
                    public void onAnimationAtStart() {
                        super.onAnimationAtStart();
                        mClockDateView.setFreezeSwitching(false);
                        setSeparatorVisibility(mShowClockIconsSeparator);
                        // In QQS we never ignore RSSI.
                        mIconContainer.removeIgnoredSlots(mRssiIgnoredSlots);
@@ -434,10 +445,11 @@ public class QuickStatusBarHeader extends FrameLayout {
        mClockIconsSeparator.setVisibility(visible ? View.VISIBLE : View.GONE);
        mQSCarriers.setVisibility(visible ? View.GONE : View.VISIBLE);

        LinearLayout.LayoutParams lp = (LinearLayout.LayoutParams) mClockView.getLayoutParams();
        LinearLayout.LayoutParams lp =
                (LinearLayout.LayoutParams) mClockContainer.getLayoutParams();
        lp.width = visible ? 0 : WRAP_CONTENT;
        lp.weight = visible ? 1f : 0f;
        mClockView.setLayoutParams(lp);
        mClockContainer.setLayoutParams(lp);

        lp = (LinearLayout.LayoutParams) mRightLayout.getLayoutParams();
        lp.width = visible ? 0 : WRAP_CONTENT;
Loading