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

Commit 46319ff0 authored by George Lin's avatar George Lin Committed by Android (Google) Code Review
Browse files

Merge "Remove the flag isCarouselInTransition" into udc-dev

parents c78b9ad3 b0d72c20
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
@@ -106,9 +106,7 @@ object ClockCarouselViewBinder {
            LifecycleEventObserver { source, event ->
                when (event) {
                    Lifecycle.Event.ON_RESUME -> {
                        clockViewFactory.registerTimeTicker(source) {
                            !carouselView.isCarouselInTransition
                        }
                        clockViewFactory.registerTimeTicker(source)
                    }
                    Lifecycle.Event.ON_PAUSE -> {
                        clockViewFactory.unregisterTimeTicker(source)
+0 −6
Original line number Diff line number Diff line
@@ -36,8 +36,6 @@ class ClockCarouselView(
        attrs,
    ) {

    var isCarouselInTransition = false

    val carousel: Carousel
    private val motionLayout: MotionLayout
    private lateinit var adapter: ClockCarouselAdapter
@@ -72,7 +70,6 @@ class ClockCarouselView(
                    startId: Int,
                    endId: Int
                ) {
                    isCarouselInTransition = true
                    val scalingDownClockId = adapter.clockIds[carousel.currentIndex]
                    val scalingUpIdx =
                        if (endId == R.id.next) (carousel.currentIndex + 1) % adapter.count()
@@ -125,7 +122,6 @@ class ClockCarouselView(
                }

                override fun onTransitionCompleted(motionLayout: MotionLayout?, currentId: Int) {
                    isCarouselInTransition = false
                    setCardAnimationState(currentId == R.id.start)
                }

@@ -197,8 +193,6 @@ class ClockCarouselView(

            clockHostView.removeAllViews()
            val clockView = onGetClockController(clockIds[index]).largeClock.view
            // Making sure the large clock tick to the correct time
            onGetClockController(clockIds[index]).largeClock.events.onTimeTick()
            // The clock view might still be attached to an existing parent. Detach before adding to
            // another parent.
            (clockView.parent as? ViewGroup)?.removeView(clockView)
+1 −9
Original line number Diff line number Diff line
@@ -67,21 +67,13 @@ class ClockViewFactory(
    }

    fun registerTimeTicker(owner: LifecycleOwner) {
        registerTimeTicker(owner, null)
    }

    fun registerTimeTicker(owner: LifecycleOwner, shouldTimeTick: (() -> Boolean)?) {
        val hashCode = owner.hashCode()
        if (timeTickListeners.keys.contains(hashCode)) {
            return
        }

        timeTickListeners[hashCode] =
            TimeTicker.registerNewReceiver(activity.applicationContext) {
                if (shouldTimeTick == null || shouldTimeTick()) {
                    onTimeTick()
                }
            }
            TimeTicker.registerNewReceiver(activity.applicationContext) { onTimeTick() }
    }

    private fun onTimeTick() {