Remove default impls from clock plugins
This appears to prevent crashes from dynamic loading failures when building and deploying sysui & wpp from sysui studio instead of building through soong. Bug: 279049213 Test: Deployed wpp & sysui from sysui studio Change-Id: I6225f9529898ef8c6f4953957fb83cf0cd2abda0
This commit is contained in:
@@ -33,6 +33,7 @@ import com.android.systemui.plugins.ClockFaceConfig
|
|||||||
import com.android.systemui.plugins.ClockFaceController
|
import com.android.systemui.plugins.ClockFaceController
|
||||||
import com.android.systemui.plugins.ClockFaceEvents
|
import com.android.systemui.plugins.ClockFaceEvents
|
||||||
import com.android.systemui.plugins.ClockSettings
|
import com.android.systemui.plugins.ClockSettings
|
||||||
|
import com.android.systemui.plugins.WeatherData
|
||||||
import java.io.PrintWriter
|
import java.io.PrintWriter
|
||||||
import java.util.Locale
|
import java.util.Locale
|
||||||
import java.util.TimeZone
|
import java.util.TimeZone
|
||||||
@@ -227,6 +228,8 @@ class DefaultClockController(
|
|||||||
|
|
||||||
clocks.forEach { it.refreshFormat() }
|
clocks.forEach { it.refreshFormat() }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override fun onWeatherDataChanged(data: WeatherData) {}
|
||||||
}
|
}
|
||||||
|
|
||||||
open inner class DefaultClockAnimations(
|
open inner class DefaultClockAnimations(
|
||||||
@@ -273,6 +276,8 @@ class DefaultClockController(
|
|||||||
// the top margin change in recomputePadding to make clock be centered
|
// the top margin change in recomputePadding to make clock be centered
|
||||||
view.translationY = 0.5f * view.bottom * (1 - swipingFraction)
|
view.translationY = 0.5f * view.bottom * (1 - swipingFraction)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override fun onPositionUpdated(fromLeft: Int, direction: Int, fraction: Float) {}
|
||||||
}
|
}
|
||||||
|
|
||||||
inner class LargeClockAnimations(
|
inner class LargeClockAnimations(
|
||||||
|
|||||||
@@ -74,18 +74,10 @@ interface ClockController {
|
|||||||
resources: Resources,
|
resources: Resources,
|
||||||
dozeFraction: Float,
|
dozeFraction: Float,
|
||||||
foldFraction: Float,
|
foldFraction: Float,
|
||||||
) {
|
)
|
||||||
events.onColorPaletteChanged(resources)
|
|
||||||
smallClock.animations.doze(dozeFraction)
|
|
||||||
largeClock.animations.doze(dozeFraction)
|
|
||||||
smallClock.animations.fold(foldFraction)
|
|
||||||
largeClock.animations.fold(foldFraction)
|
|
||||||
smallClock.events.onTimeTick()
|
|
||||||
largeClock.events.onTimeTick()
|
|
||||||
}
|
|
||||||
|
|
||||||
/** Optional method for dumping debug information */
|
/** Optional method for dumping debug information */
|
||||||
fun dump(pw: PrintWriter) {}
|
fun dump(pw: PrintWriter)
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Interface for a specific clock face version rendered by the clock */
|
/** Interface for a specific clock face version rendered by the clock */
|
||||||
@@ -109,37 +101,37 @@ interface ClockFaceController {
|
|||||||
/** Events that should call when various rendering parameters change */
|
/** Events that should call when various rendering parameters change */
|
||||||
interface ClockEvents {
|
interface ClockEvents {
|
||||||
/** Call whenever timezone changes */
|
/** Call whenever timezone changes */
|
||||||
fun onTimeZoneChanged(timeZone: TimeZone) {}
|
fun onTimeZoneChanged(timeZone: TimeZone)
|
||||||
|
|
||||||
/** Call whenever the text time format changes (12hr vs 24hr) */
|
/** Call whenever the text time format changes (12hr vs 24hr) */
|
||||||
fun onTimeFormatChanged(is24Hr: Boolean) {}
|
fun onTimeFormatChanged(is24Hr: Boolean)
|
||||||
|
|
||||||
/** Call whenever the locale changes */
|
/** Call whenever the locale changes */
|
||||||
fun onLocaleChanged(locale: Locale) {}
|
fun onLocaleChanged(locale: Locale)
|
||||||
|
|
||||||
/** Call whenever the color palette should update */
|
/** Call whenever the color palette should update */
|
||||||
fun onColorPaletteChanged(resources: Resources) {}
|
fun onColorPaletteChanged(resources: Resources)
|
||||||
|
|
||||||
/** Call if the seed color has changed and should be updated */
|
/** Call if the seed color has changed and should be updated */
|
||||||
fun onSeedColorChanged(seedColor: Int?) {}
|
fun onSeedColorChanged(seedColor: Int?)
|
||||||
|
|
||||||
/** Call whenever the weather data should update */
|
/** Call whenever the weather data should update */
|
||||||
fun onWeatherDataChanged(data: WeatherData) {}
|
fun onWeatherDataChanged(data: WeatherData)
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Methods which trigger various clock animations */
|
/** Methods which trigger various clock animations */
|
||||||
interface ClockAnimations {
|
interface ClockAnimations {
|
||||||
/** Runs an enter animation (if any) */
|
/** Runs an enter animation (if any) */
|
||||||
fun enter() {}
|
fun enter()
|
||||||
|
|
||||||
/** Sets how far into AOD the device currently is. */
|
/** Sets how far into AOD the device currently is. */
|
||||||
fun doze(fraction: Float) {}
|
fun doze(fraction: Float)
|
||||||
|
|
||||||
/** Sets how far into the folding animation the device is. */
|
/** Sets how far into the folding animation the device is. */
|
||||||
fun fold(fraction: Float) {}
|
fun fold(fraction: Float)
|
||||||
|
|
||||||
/** Runs the battery animation (if any). */
|
/** Runs the battery animation (if any). */
|
||||||
fun charge() {}
|
fun charge()
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Runs when the clock's position changed during the move animation.
|
* Runs when the clock's position changed during the move animation.
|
||||||
@@ -150,32 +142,32 @@ interface ClockAnimations {
|
|||||||
* @param fraction fraction of the clock movement. 0 means it is at the beginning, and 1 means
|
* @param fraction fraction of the clock movement. 0 means it is at the beginning, and 1 means
|
||||||
* it finished moving.
|
* it finished moving.
|
||||||
*/
|
*/
|
||||||
fun onPositionUpdated(fromLeft: Int, direction: Int, fraction: Float) {}
|
fun onPositionUpdated(fromLeft: Int, direction: Int, fraction: Float)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Runs when swiping clock picker, swipingFraction: 1.0 -> clock is scaled up in the preview,
|
* Runs when swiping clock picker, swipingFraction: 1.0 -> clock is scaled up in the preview,
|
||||||
* 0.0 -> clock is scaled down in the shade; previewRatio is previewSize / screenSize
|
* 0.0 -> clock is scaled down in the shade; previewRatio is previewSize / screenSize
|
||||||
*/
|
*/
|
||||||
fun onPickerCarouselSwiping(swipingFraction: Float) {}
|
fun onPickerCarouselSwiping(swipingFraction: Float)
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Events that have specific data about the related face */
|
/** Events that have specific data about the related face */
|
||||||
interface ClockFaceEvents {
|
interface ClockFaceEvents {
|
||||||
/** Call every time tick */
|
/** Call every time tick */
|
||||||
fun onTimeTick() {}
|
fun onTimeTick()
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Region Darkness specific to the clock face.
|
* Region Darkness specific to the clock face.
|
||||||
* - isRegionDark = dark theme -> clock should be light
|
* - isRegionDark = dark theme -> clock should be light
|
||||||
* - !isRegionDark = light theme -> clock should be dark
|
* - !isRegionDark = light theme -> clock should be dark
|
||||||
*/
|
*/
|
||||||
fun onRegionDarknessChanged(isRegionDark: Boolean) {}
|
fun onRegionDarknessChanged(isRegionDark: Boolean)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Call whenever font settings change. Pass in a target font size in pixels. The specific clock
|
* Call whenever font settings change. Pass in a target font size in pixels. The specific clock
|
||||||
* design is allowed to ignore this target size on a case-by-case basis.
|
* design is allowed to ignore this target size on a case-by-case basis.
|
||||||
*/
|
*/
|
||||||
fun onFontSettingChanged(fontSizePx: Float) {}
|
fun onFontSettingChanged(fontSizePx: Float)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Target region information for the clock face. For small clock, this will match the bounds of
|
* Target region information for the clock face. For small clock, this will match the bounds of
|
||||||
@@ -184,7 +176,7 @@ interface ClockFaceEvents {
|
|||||||
* render within the centered targetRect to avoid obstructing other elements. The specified
|
* render within the centered targetRect to avoid obstructing other elements. The specified
|
||||||
* targetRegion is relative to the parent view.
|
* targetRegion is relative to the parent view.
|
||||||
*/
|
*/
|
||||||
fun onTargetRegionChanged(targetRegion: Rect?) {}
|
fun onTargetRegionChanged(targetRegion: Rect?)
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Tick rates for clocks */
|
/** Tick rates for clocks */
|
||||||
|
|||||||
Reference in New Issue
Block a user