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

Commit bd24d074 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Fix large screen QS header" into tm-qpr-dev

parents df9d2dc2 f1be8693
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -124,6 +124,11 @@
        </KeyFrameSet>
    </Transition>

    <Transition
        android:id="@+id/large_screen_header_transition"
        app:constraintSetStart="@id/large_screen_header_constraint"
        app:constraintSetEnd="@id/large_screen_header_constraint"/>

    <Include app:constraintSet="@xml/large_screen_shade_header"/>

    <Include app:constraintSet="@xml/qs_header"/>
+15 −6
Original line number Diff line number Diff line
@@ -101,6 +101,8 @@ class LargeScreenShadeHeaderController @Inject constructor(
        @VisibleForTesting
        internal val HEADER_TRANSITION_ID = R.id.header_transition
        @VisibleForTesting
        internal val LARGE_SCREEN_HEADER_TRANSITION_ID = R.id.large_screen_header_transition
        @VisibleForTesting
        internal val QQS_HEADER_CONSTRAINT = R.id.qqs_header_constraint
        @VisibleForTesting
        internal val QS_HEADER_CONSTRAINT = R.id.qs_header_constraint
@@ -429,8 +431,11 @@ class LargeScreenShadeHeaderController @Inject constructor(
        }
        header as MotionLayout
        if (largeScreenActive) {
            header.getConstraintSet(LARGE_SCREEN_HEADER_CONSTRAINT).applyTo(header)
            logInstantEvent("Large screen constraints set")
            header.setTransition(HEADER_TRANSITION_ID)
            header.transitionToStart()
        } else {
            logInstantEvent("Small screen constraints set")
            header.setTransition(HEADER_TRANSITION_ID)
            header.transitionToStart()
            updatePosition()
@@ -440,13 +445,17 @@ class LargeScreenShadeHeaderController @Inject constructor(

    private fun updatePosition() {
        if (header is MotionLayout && !largeScreenActive && visible) {
            logInstantEvent("updatePosition: $qsExpandedFraction")
            header.progress = qsExpandedFraction
        }
    }

    private fun logInstantEvent(message: String) {
        Trace.instantForTrack(
                TRACE_TAG_APP,
                "LargeScreenHeaderController - updatePosition",
                "position: $qsExpandedFraction"
                "LargeScreenHeaderController",
                message
        )
            header.progress = qsExpandedFraction
        }
    }

    private fun updateListeners() {