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

Commit 0ab0199c authored by Fabian Kozynski's avatar Fabian Kozynski
Browse files

New headers

This CL leverages the flagged MotionLayout to implement the new QS Headers.
It's flagged behind the flags COMBINED_QS_HEADERS(501) and NEW_QS_HEADERS(505).

This CL does not have final dimensions.

Test: manual
Test: automated tests in upcoming CL
Bug: 215584502

Change-Id: I13eebd73bbb18225279fb47919b2600c69ebce7b
parent 7023f28b
Loading
Loading
Loading
Loading
+48 −10
Original line number Diff line number Diff line
@@ -14,7 +14,7 @@
  ~ See the License for the specific language governing permissions and
  ~ limitations under the License.
  -->
<androidx.constraintlayout.motion.widget.MotionLayout
<com.android.systemui.util.NoRemeasureMotionLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/split_shade_status_bar"
@@ -32,10 +32,37 @@
    <androidx.constraintlayout.widget.Guideline
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/center"
        app:layout_constraintGuide_percent="0.5"
        android:id="@+id/begin_guide"
        android:orientation="vertical"
        app:layout_constraintGuide_begin="0dp"/>

    <androidx.constraintlayout.widget.Guideline
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/end_guide"
        android:orientation="vertical"
        app:layout_constraintGuide_end="0dp"
        />

    <androidx.constraintlayout.widget.Guideline
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/center_left"
        android:orientation="vertical" />

    <androidx.constraintlayout.widget.Guideline
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/center_right"
        android:orientation="vertical" />

    <androidx.constraintlayout.widget.Barrier
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/barrier"
        app:barrierDirection="start"
        app:constraint_referenced_ids="statusIcons,privacy_container" />

    <com.android.systemui.statusbar.policy.Clock
        android:id="@+id/clock"
        android:layout_width="wrap_content"
@@ -45,9 +72,13 @@
        android:paddingEnd="@dimen/status_bar_left_clock_end_padding"
        android:singleLine="true"
        android:textAppearance="@style/TextAppearance.QS.Status"
        android:transformPivotX="0sp"
        android:transformPivotY="20sp"
        android:scaleX="1"
        android:scaleY="1"
    />

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

    <include
@@ -81,7 +113,7 @@
        app:layout_constraintHeight_min="@dimen/large_screen_shade_header_min_height"
        android:paddingEnd="@dimen/signal_cluster_battery_padding"
        android:layout_width="wrap_content"
        android:layout_height="48dp"
        android:layout_height="@dimen/large_screen_shade_header_min_height"
        app:layout_constraintStart_toEndOf="@id/carrier_group"
        app:layout_constraintEnd_toStartOf="@id/batteryRemainingIcon"
        app:layout_constraintTop_toTopOf="@id/clock"
@@ -92,8 +124,9 @@
    <com.android.systemui.battery.BatteryMeterView
        android:id="@+id/batteryRemainingIcon"
        android:layout_width="wrap_content"
        android:layout_height="48dp"
        android:layout_height="@dimen/large_screen_shade_header_min_height"
        app:layout_constraintHeight_min="@dimen/large_screen_shade_header_min_height"
        app:layout_constrainedWidth="true"
        app:textAppearance="@style/TextAppearance.QS.Status"
        app:layout_constraintStart_toEndOf="@id/statusIcons"
        app:layout_constraintEnd_toEndOf="parent"
@@ -104,13 +137,18 @@
    <FrameLayout
        android:id="@+id/privacy_container"
        android:layout_width="wrap_content"
        android:layout_height="48dp"
        android:layout_height="@dimen/large_screen_shade_header_min_height"
        android:gravity="center"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintEnd_toEndOf="@id/end_guide"
        app:layout_constraintTop_toTopOf="@id/date"
        app:layout_constraintBottom_toBottomOf="@id/date"
        >
        <include layout="@layout/ongoing_privacy_chip"/>
    </FrameLayout>

</androidx.constraintlayout.motion.widget.MotionLayout>
 No newline at end of file
    <Space
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:id="@+id/space"
    />
</com.android.systemui.util.NoRemeasureMotionLayout>
 No newline at end of file
+3 −1
Original line number Diff line number Diff line
@@ -553,7 +553,7 @@
    <dimen name="qs_dual_tile_padding_horizontal">6dp</dimen>
    <dimen name="qs_panel_elevation">4dp</dimen>
    <dimen name="qs_panel_padding_bottom">@dimen/footer_actions_height</dimen>
    <dimen name="qs_panel_padding_top">48dp</dimen>
    <dimen name="qs_panel_padding_top">80dp</dimen>

    <dimen name="qs_data_usage_text_size">14sp</dimen>
    <dimen name="qs_data_usage_usage_text_size">36sp</dimen>
@@ -564,6 +564,8 @@
    <dimen name="qs_footer_icon_size">20dp</dimen>
    <dimen name="qs_header_row_min_height">48dp</dimen>

    <dimen name="qs_header_non_clickable_element_height">24dp</dimen>

    <dimen name="qs_footer_padding">20dp</dimen>
    <dimen name="qs_security_footer_height">88dp</dimen>
    <dimen name="qs_security_footer_single_line_height">48dp</dimen>
+91 −2
Original line number Diff line number Diff line
@@ -25,20 +25,109 @@
        <KeyFrameSet>
            <!-- These positions are to prevent visual movement of @id/date -->
            <KeyPosition
                app:keyPositionType="pathRelative"
                app:keyPositionType="deltaRelative"
                app:percentX="0"
                app:percentY="0"
                app:framePosition="49"
                app:percentWidth="1"
                app:percentHeight="1"
                app:curveFit="linear"
                app:motionTarget="@id/date" />
            <KeyPosition
                app:keyPositionType="pathRelative"
                app:keyPositionType="deltaRelative"
                app:percentX="1"
                app:percentY="0.51"
                app:framePosition="51"
                app:percentWidth="1"
                app:percentHeight="1"
                app:curveFit="linear"
                app:motionTarget="@id/date" />
            <KeyAttribute
                app:motionTarget="@id/date"
                app:framePosition="30"
                android:alpha="0"
                />
            <KeyAttribute
                app:motionTarget="@id/date"
                app:framePosition="70"
                android:alpha="0"
                />
            <KeyPosition
                app:keyPositionType="pathRelative"
                app:percentX="0"
                app:percentY="0"
                app:framePosition="0"
                app:curveFit="linear"
                app:motionTarget="@id/statusIcons" />
            <KeyPosition
                app:keyPositionType="pathRelative"
                app:percentX="0"
                app:percentY="0"
                app:framePosition="50"
                app:curveFit="linear"
                app:motionTarget="@id/statusIcons" />
            <KeyPosition
                app:keyPositionType="deltaRelative"
                app:percentX="1"
                app:percentY="0.51"
                app:framePosition="51"
                app:curveFit="linear"
                app:motionTarget="@id/statusIcons" />
            <KeyAttribute
                app:motionTarget="@id/statusIcons"
                app:framePosition="30"
                android:alpha="0"
                />
            <KeyAttribute
                app:motionTarget="@id/statusIcons"
                app:framePosition="70"
                android:alpha="0"
                />
            <KeyPosition
                app:keyPositionType="deltaRelative"
                app:percentX="0"
                app:percentY="0"
                app:framePosition="50"
                app:percentWidth="1"
                app:percentHeight="1"
                app:curveFit="linear"
                app:motionTarget="@id/batteryRemainingIcon" />
            <KeyPosition
                app:keyPositionType="deltaRelative"
                app:percentX="1"
                app:percentY="0.51"
                app:framePosition="51"
                app:percentWidth="1"
                app:percentHeight="1"
                app:curveFit="linear"
                app:motionTarget="@id/batteryRemainingIcon" />
            <KeyAttribute
                app:motionTarget="@id/batteryRemainingIcon"
                app:framePosition="30"
                android:alpha="0"
                />
            <KeyAttribute
                app:motionTarget="@id/batteryRemainingIcon"
                app:framePosition="70"
                android:alpha="0"
                />
            <KeyPosition
                app:motionTarget="@id/carrier_group"
                app:percentX="1"
                app:percentY="0.51"
                app:framePosition="51"
                app:percentWidth="1"
                app:percentHeight="1"
                app:curveFit="linear"
                app:keyPositionType="deltaRelative" />
            <KeyAttribute
                app:motionTarget="@id/carrier_group"
                app:framePosition="0"
                android:alpha="0" />
            <KeyAttribute
                app:motionTarget="@id/carrier_group"
                app:framePosition="70"
                android:alpha="0" />
        </KeyFrameSet>
    </Transition>

+38 −1
Original line number Diff line number Diff line
@@ -29,6 +29,11 @@
            app:layout_constraintTop_toTopOf="parent"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toStartOf="@id/date"
            app:layout_constraintHorizontal_bias="0"
        />
        <Transform
            android:scaleX="1"
            android:scaleY="1"
            />
    </Constraint>

@@ -47,9 +52,38 @@

    <Constraint
        android:id="@+id/carrier_group">
        <Layout
            app:layout_constraintWidth_min="48dp"
            android:layout_width="0dp"
            android:layout_height="0dp"
            app:layout_constrainedWidth="true"
            android:layout_gravity="end|center_vertical"
            android:layout_marginStart="8dp"
            app:layout_constraintStart_toEndOf="@id/date"
            app:layout_constraintEnd_toStartOf="@id/statusIcons"
            app:layout_constraintTop_toTopOf="@id/clock"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintHorizontal_bias="1"
            />
        <PropertySet
            android:alpha="1"
        />
    </Constraint>

    <Constraint
        android:id="@+id/statusIcons">
        <Layout
            app:layout_constraintHeight_min="@dimen/large_screen_shade_header_min_height"
            android:layout_width="wrap_content"
            android:layout_height="@dimen/large_screen_shade_header_min_height"
            app:layout_constraintStart_toEndOf="@id/carrier_group"
            app:layout_constraintEnd_toStartOf="@id/batteryRemainingIcon"
            app:layout_constraintTop_toTopOf="@id/clock"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintHorizontal_bias="1"
            />
        <PropertySet
            android:alpha="1"
            app:customFloatValue="1"
        />
    </Constraint>

@@ -64,6 +98,9 @@
            app:layout_constraintTop_toTopOf="@id/clock"
            app:layout_constraintBottom_toBottomOf="parent"
        />
        <PropertySet
            android:alpha="1"
        />
    </Constraint>

    <Constraint
+39 −8
Original line number Diff line number Diff line
@@ -26,22 +26,27 @@
        <Layout
            android:layout_width="wrap_content"
            android:layout_height="0dp"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintStart_toStartOf="@id/begin_guide"
            app:layout_constraintTop_toTopOf="parent"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toStartOf="@id/date"
            app:layout_constraintHorizontal_bias="0"
            app:layout_constraintHorizontal_chainStyle="packed"
        />
        <Transform
            android:scaleX="1"
            android:scaleY="1"
            />
    </Constraint>

    <Constraint
        android:id="@+id/date">
        <Layout
            android:layout_width="wrap_content"
            android:layout_width="0dp"
            android:layout_height="0dp"
            app:layout_constrainedWidth="true"
            app:layout_constraintStart_toEndOf="@id/clock"
            app:layout_constraintEnd_toStartOf="@id/carrier_group"
            app:layout_constraintEnd_toStartOf="@id/barrier"
            app:layout_constraintTop_toTopOf="parent"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintHorizontal_bias="0"
@@ -50,17 +55,41 @@

    <Constraint
        android:id="@+id/statusIcons">
        <Layout
            android:layout_width="0dp"
            android:layout_height="@dimen/qs_header_non_clickable_element_height"
            app:layout_constraintHeight_min="@dimen/qs_header_non_clickable_element_height"
            app:layout_constraintStart_toEndOf="@id/date"
            app:layout_constraintEnd_toStartOf="@id/batteryRemainingIcon"
            app:layout_constraintTop_toTopOf="@id/date"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintHorizontal_bias="1"
            />
    </Constraint>

    <Constraint
        android:id="@+id/batteryRemainingIcon">
        <Layout
            android:layout_width="wrap_content"
            android:layout_height="@dimen/qs_header_non_clickable_element_height"
            app:layout_constrainedWidth="true"
            app:layout_constraintHeight_min="@dimen/qs_header_non_clickable_element_height"
            app:layout_constraintStart_toEndOf="@id/statusIcons"
            app:layout_constraintEnd_toEndOf="@id/end_guide"
            app:layout_constraintTop_toTopOf="@id/date"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintHorizontal_bias="1"
            />
    </Constraint>

    <Constraint
        android:id="@+id/carrier_group">
        <CustomAttribute
            app:attributeName="alpha"
            app:customFloatValue="0"
        <Layout
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintTop_toTopOf="parent"
            />
        <PropertySet
            app:alpha="0"
        />
    </Constraint>

@@ -69,9 +98,11 @@
        <Layout
            android:layout_width="wrap_content"
            android:layout_height="0dp"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toEndOf="@id/date"
            app:layout_constraintEnd_toEndOf="@id/end_guide"
            app:layout_constraintTop_toTopOf="@id/date"
            app:layout_constraintBottom_toBottomOf="@id/date"
            app:layout_constraintHorizontal_bias="1"
        />
    </Constraint>

Loading