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

Commit 8b474b09 authored by Hawkwood Glazier's avatar Hawkwood Glazier
Browse files

React to axis changes from picker

Bug: 364673969
Test: Manual
Flag: com.android.systemui.clock_reactive_variants
Change-Id: I380c6ad914f38ddaedaecf45f2a12952fb6c0c4b
parent c624da5f
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -27,7 +27,7 @@ import com.android.systemui.plugins.clocks.ClockAnimations
import com.android.systemui.plugins.clocks.ClockEvents
import com.android.systemui.plugins.clocks.ClockFaceConfig
import com.android.systemui.plugins.clocks.ClockFaceEvents
import com.android.systemui.plugins.clocks.ClockReactiveSetting
import com.android.systemui.plugins.clocks.ClockFontAxisSetting
import com.android.systemui.plugins.clocks.ThemeConfig
import com.android.systemui.plugins.clocks.WeatherData
import com.android.systemui.plugins.clocks.ZenData
@@ -103,7 +103,9 @@ class ComposedDigitalLayerController(
                view.onZenDataChanged(data)
            }

            override fun onReactiveAxesChanged(axes: List<ClockReactiveSetting>) {}
            override fun onFontAxesChanged(axes: List<ClockFontAxisSetting>) {
                view.updateAxes(axes)
            }

            override var isReactiveTouchInteractionEnabled
                get() = view.isReactiveTouchInteractionEnabled
+2 −2
Original line number Diff line number Diff line
@@ -33,8 +33,8 @@ import com.android.systemui.plugins.clocks.ClockEvents
import com.android.systemui.plugins.clocks.ClockFaceConfig
import com.android.systemui.plugins.clocks.ClockFaceController
import com.android.systemui.plugins.clocks.ClockFaceEvents
import com.android.systemui.plugins.clocks.ClockFontAxisSetting
import com.android.systemui.plugins.clocks.ClockMessageBuffers
import com.android.systemui.plugins.clocks.ClockReactiveSetting
import com.android.systemui.plugins.clocks.ClockSettings
import com.android.systemui.plugins.clocks.DefaultClockFaceLayout
import com.android.systemui.plugins.clocks.ThemeConfig
@@ -264,7 +264,7 @@ class DefaultClockController(

        override fun onZenDataChanged(data: ZenData) {}

        override fun onReactiveAxesChanged(axes: List<ClockReactiveSetting>) {}
        override fun onFontAxesChanged(axes: List<ClockFontAxisSetting>) {}
    }

    open inner class DefaultClockAnimations(
+46 −17
Original line number Diff line number Diff line
@@ -21,12 +21,12 @@ import com.android.systemui.log.core.LogLevel
import com.android.systemui.log.core.LogcatOnlyMessageBuffer
import com.android.systemui.plugins.clocks.AxisType
import com.android.systemui.plugins.clocks.ClockController
import com.android.systemui.plugins.clocks.ClockFontAxis
import com.android.systemui.plugins.clocks.ClockId
import com.android.systemui.plugins.clocks.ClockMessageBuffers
import com.android.systemui.plugins.clocks.ClockMetadata
import com.android.systemui.plugins.clocks.ClockPickerConfig
import com.android.systemui.plugins.clocks.ClockProvider
import com.android.systemui.plugins.clocks.ClockReactiveAxis
import com.android.systemui.plugins.clocks.ClockSettings
import com.android.systemui.shared.clocks.view.HorizontalAlignment
import com.android.systemui.shared.clocks.view.VerticalAlignment
@@ -91,15 +91,42 @@ class DefaultClockProvider(
            axes =
                if (isClockReactiveVariantsEnabled)
                    listOf(
                        ClockReactiveAxis(
                            key = "wdth",
                            type = AxisType.Slider,
                            maxValue = 1000f,
                            minValue = 100f,
                        ClockFontAxis(
                            key = "wght",
                            type = AxisType.Float,
                            minValue = 1f,
                            currentValue = 400f,
                            maxValue = 1000f,
                            name = "Weight",
                            description = "Glyph Weight",
                        ),
                        ClockFontAxis(
                            key = "wdth",
                            type = AxisType.Float,
                            minValue = 25f,
                            currentValue = 100f,
                            maxValue = 151f,
                            name = "Width",
                            description = "Glyph Width",
                        )
                        ),
                        ClockFontAxis(
                            key = "ROND",
                            type = AxisType.Boolean,
                            minValue = 0f,
                            currentValue = 0f,
                            maxValue = 100f,
                            name = "Round",
                            description = "Glyph Roundness",
                        ),
                        ClockFontAxis(
                            key = "slnt",
                            type = AxisType.Boolean,
                            minValue = 0f,
                            currentValue = 0f,
                            maxValue = -10f,
                            name = "Slant",
                            description = "Glyph Slant",
                        ),
                    )
                else listOf(),
        )
@@ -121,12 +148,12 @@ class DefaultClockProvider(
                                        FontTextStyle(
                                            lineHeight = 147.25f,
                                            fontVariation =
                                                "'wght' 603, 'wdth' 100, 'opsz' 144, 'ROND' 100",
                                                "'wght' 603, 'wdth' 100, 'opsz' 144, 'ROND' 100, 'slnt' 0",
                                        ),
                                    aodStyle =
                                        FontTextStyle(
                                            fontVariation =
                                                "'wght' 74, 'wdth' 43, 'opsz' 144, 'ROND' 100",
                                                "'wght' 74, 'wdth' 43, 'opsz' 144, 'ROND' 100, 'slnt' 0",
                                            fillColorLight = "#FFFFFFFF",
                                            outlineColor = "#00000000",
                                            renderType = RenderType.CHANGE_WEIGHT,
@@ -147,12 +174,12 @@ class DefaultClockProvider(
                                        FontTextStyle(
                                            lineHeight = 147.25f,
                                            fontVariation =
                                                "'wght' 603, 'wdth' 100, 'opsz' 144, 'ROND' 100",
                                                "'wght' 603, 'wdth' 100, 'opsz' 144, 'ROND' 100, 'slnt' 0",
                                        ),
                                    aodStyle =
                                        FontTextStyle(
                                            fontVariation =
                                                "'wght' 74, 'wdth' 43, 'opsz' 144, 'ROND' 100",
                                                "'wght' 74, 'wdth' 43, 'opsz' 144, 'ROND' 100, 'slnt' 0",
                                            fillColorLight = "#FFFFFFFF",
                                            outlineColor = "#00000000",
                                            renderType = RenderType.CHANGE_WEIGHT,
@@ -173,12 +200,12 @@ class DefaultClockProvider(
                                        FontTextStyle(
                                            lineHeight = 147.25f,
                                            fontVariation =
                                                "'wght' 603, 'wdth' 100, 'opsz' 144, 'ROND' 100",
                                                "'wght' 603, 'wdth' 100, 'opsz' 144, 'ROND' 100, 'slnt' 0",
                                        ),
                                    aodStyle =
                                        FontTextStyle(
                                            fontVariation =
                                                "'wght' 74, 'wdth' 43, 'opsz' 144, 'ROND' 100",
                                                "'wght' 74, 'wdth' 43, 'opsz' 144, 'ROND' 100, 'slnt' 0",
                                            fillColorLight = "#FFFFFFFF",
                                            outlineColor = "#00000000",
                                            renderType = RenderType.CHANGE_WEIGHT,
@@ -199,12 +226,12 @@ class DefaultClockProvider(
                                        FontTextStyle(
                                            lineHeight = 147.25f,
                                            fontVariation =
                                                "'wght' 603, 'wdth' 100, 'opsz' 144, 'ROND' 100",
                                                "'wght' 603, 'wdth' 100, 'opsz' 144, 'ROND' 100, 'slnt' 0",
                                        ),
                                    aodStyle =
                                        FontTextStyle(
                                            fontVariation =
                                                "'wght' 74, 'wdth' 43, 'opsz' 144, 'ROND' 100",
                                                "'wght' 74, 'wdth' 43, 'opsz' 144, 'ROND' 100, 'slnt' 0",
                                            fillColorLight = "#FFFFFFFF",
                                            outlineColor = "#00000000",
                                            renderType = RenderType.CHANGE_WEIGHT,
@@ -229,12 +256,14 @@ class DefaultClockProvider(
                        timespec = DigitalTimespec.TIME_FULL_FORMAT,
                        style =
                            FontTextStyle(
                                fontVariation = "'wght' 600, 'wdth' 100, 'opsz' 144, 'ROND' 100",
                                fontVariation =
                                    "'wght' 600, 'wdth' 100, 'opsz' 144, 'ROND' 100, 'slnt' 0",
                                fontSizeScale = 0.98f,
                            ),
                        aodStyle =
                            FontTextStyle(
                                fontVariation = "'wght' 133, 'wdth' 43, 'opsz' 144, 'ROND' 100",
                                fontVariation =
                                    "'wght' 133, 'wdth' 43, 'opsz' 144, 'ROND' 100, 'slnt' 0",
                                fillColorLight = "#FFFFFFFF",
                                outlineColor = "#00000000",
                                renderType = RenderType.CHANGE_WEIGHT,
+4 −4
Original line number Diff line number Diff line
@@ -23,8 +23,8 @@ import com.android.systemui.plugins.clocks.AlarmData
import com.android.systemui.plugins.clocks.ClockConfig
import com.android.systemui.plugins.clocks.ClockController
import com.android.systemui.plugins.clocks.ClockEvents
import com.android.systemui.plugins.clocks.ClockFontAxisSetting
import com.android.systemui.plugins.clocks.ClockMessageBuffers
import com.android.systemui.plugins.clocks.ClockReactiveSetting
import com.android.systemui.plugins.clocks.ThemeConfig
import com.android.systemui.plugins.clocks.WeatherData
import com.android.systemui.plugins.clocks.ZenData
@@ -113,9 +113,9 @@ class FlexClockController(
                largeClock.events.onZenDataChanged(data)
            }

            override fun onReactiveAxesChanged(axes: List<ClockReactiveSetting>) {
                smallClock.events.onReactiveAxesChanged(axes)
                largeClock.events.onReactiveAxesChanged(axes)
            override fun onFontAxesChanged(axes: List<ClockFontAxisSetting>) {
                smallClock.events.onFontAxesChanged(axes)
                largeClock.events.onFontAxesChanged(axes)
            }
        }

+5 −2
Original line number Diff line number Diff line
@@ -32,7 +32,7 @@ import com.android.systemui.plugins.clocks.ClockFaceConfig
import com.android.systemui.plugins.clocks.ClockFaceController
import com.android.systemui.plugins.clocks.ClockFaceEvents
import com.android.systemui.plugins.clocks.ClockFaceLayout
import com.android.systemui.plugins.clocks.ClockReactiveSetting
import com.android.systemui.plugins.clocks.ClockFontAxisSetting
import com.android.systemui.plugins.clocks.DefaultClockFaceLayout
import com.android.systemui.plugins.clocks.ThemeConfig
import com.android.systemui.plugins.clocks.WeatherData
@@ -136,13 +136,16 @@ class FlexClockFaceController(

        override fun onFontSettingChanged(fontSizePx: Float) {
            layerController.faceEvents.onFontSettingChanged(fontSizePx)
            view.requestLayout()
        }

        override fun onThemeChanged(theme: ThemeConfig) {
            layerController.faceEvents.onThemeChanged(theme)
        }

        override fun onReactiveAxesChanged(axes: List<ClockReactiveSetting>) {}
        override fun onFontAxesChanged(axes: List<ClockFontAxisSetting>) {
            layerController.events.onFontAxesChanged(axes)
        }

        /**
         * targetRegion passed to all customized clock applies counter translationY of
Loading