Loading packages/SystemUI/customization/src/com/android/systemui/shared/clocks/ClockRegistry.kt +6 −6 Original line number Diff line number Diff line Loading @@ -30,15 +30,15 @@ import com.android.systemui.log.core.Logger import com.android.systemui.log.core.MessageBuffer import com.android.systemui.log.core.MessageInitializer import com.android.systemui.log.core.MessagePrinter import com.android.systemui.plugins.ClockController import com.android.systemui.plugins.ClockId import com.android.systemui.plugins.ClockMetadata import com.android.systemui.plugins.ClockProvider import com.android.systemui.plugins.ClockProviderPlugin import com.android.systemui.plugins.ClockSettings import com.android.systemui.plugins.PluginLifecycleManager import com.android.systemui.plugins.PluginListener import com.android.systemui.plugins.PluginManager import com.android.systemui.plugins.clocks.ClockController import com.android.systemui.plugins.clocks.ClockId import com.android.systemui.plugins.clocks.ClockMetadata import com.android.systemui.plugins.clocks.ClockProvider import com.android.systemui.plugins.clocks.ClockProviderPlugin import com.android.systemui.plugins.clocks.ClockSettings import com.android.systemui.util.Assert import java.io.PrintWriter import java.util.concurrent.ConcurrentHashMap Loading packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockController.kt +14 −10 Original line number Diff line number Diff line Loading @@ -25,16 +25,18 @@ import android.widget.FrameLayout import androidx.annotation.VisibleForTesting import com.android.systemui.customization.R import com.android.systemui.log.core.MessageBuffer import com.android.systemui.plugins.ClockAnimations import com.android.systemui.plugins.ClockConfig import com.android.systemui.plugins.ClockController import com.android.systemui.plugins.ClockEvents import com.android.systemui.plugins.ClockFaceConfig import com.android.systemui.plugins.ClockFaceController import com.android.systemui.plugins.ClockFaceEvents import com.android.systemui.plugins.ClockSettings import com.android.systemui.plugins.DefaultClockFaceLayout import com.android.systemui.plugins.WeatherData import com.android.systemui.plugins.clocks.AlarmData import com.android.systemui.plugins.clocks.ClockAnimations 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.ClockFaceConfig import com.android.systemui.plugins.clocks.ClockFaceController import com.android.systemui.plugins.clocks.ClockFaceEvents import com.android.systemui.plugins.clocks.ClockSettings import com.android.systemui.plugins.clocks.DefaultClockFaceLayout import com.android.systemui.plugins.clocks.WeatherData import com.android.systemui.plugins.clocks.ZenData import java.io.PrintWriter import java.util.Locale import java.util.TimeZone Loading Loading @@ -256,6 +258,8 @@ class DefaultClockController( } override fun onWeatherDataChanged(data: WeatherData) {} override fun onAlarmDataChanged(data: AlarmData) {} override fun onZenDataChanged(data: ZenData) {} } open inner class DefaultClockAnimations( Loading packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockProvider.kt +5 −5 Original line number Diff line number Diff line Loading @@ -18,11 +18,11 @@ import android.content.res.Resources import android.graphics.drawable.Drawable import android.view.LayoutInflater import com.android.systemui.customization.R import com.android.systemui.plugins.ClockController import com.android.systemui.plugins.ClockId import com.android.systemui.plugins.ClockMetadata import com.android.systemui.plugins.ClockProvider import com.android.systemui.plugins.ClockSettings import com.android.systemui.plugins.clocks.ClockController import com.android.systemui.plugins.clocks.ClockId import com.android.systemui.plugins.clocks.ClockMetadata import com.android.systemui.plugins.clocks.ClockProvider import com.android.systemui.plugins.clocks.ClockSettings private val TAG = DefaultClockProvider::class.simpleName const val DEFAULT_CLOCK_ID = "DEFAULT" Loading packages/SystemUI/docs/clock-plugins.md +3 −3 Original line number Diff line number Diff line Loading @@ -12,7 +12,7 @@ responsible for maintaining the view within the hierarchy and propagating events clock controller. ### Clock Library Code [ClockProvider and ClockController](../plugin/src/com/android/systemui/plugins/ClockProviderPlugin.kt) [ClockProvider and ClockController](../plugin/src/com/android/systemui/plugins/clocks/ClockProviderPlugin.kt) serve as the interface between the lockscreen (or other host application) and the clock that is being rendered. Implementing these interfaces is the primary integration point for rendering clocks in SystemUI. Many of the methods have an empty default implementation and are optional for Loading @@ -29,12 +29,12 @@ versions of android. The [ClockRegistry](../customization/src/com/android/systemui/shared/clocks/ClockRegistry.kt) determines which clock should be shown, and handles creating them. It does this by maintaining a list of [ClockProviders](../plugin/src/com/android/systemui/plugins/ClockProviderPlugin.kt) and list of [ClockProviders](../plugin/src/com/android/systemui/plugins/clocks/ClockProviderPlugin.kt) and delegating work to them as appropriate. The DefaultClockProvider is compiled in so that it is guaranteed to be available, and additional ClockProviders are loaded at runtime via [PluginManager](../plugin_core/src/com/android/systemui/plugins/PluginManager.java). [ClockPlugin](../plugin/src/com/android/systemui/plugins/ClockPlugin.java) is deprecated and no [ClockPlugin](../plugin/src/com/android/systemui/plugins/clocks/ClockPlugin.java) is deprecated and no longer used by keyguard to render clocks. The host code has been disabled but most of it is still present in the source tree, although it will likely be removed in a later patch. Loading packages/SystemUI/docs/plugin_hooks.md +1 −1 Original line number Diff line number Diff line Loading @@ -52,7 +52,7 @@ Expected interface: [NotificationSwipeActionHelper](/frameworks/base/packages/Sy Use: Control over swipes/input for notification views, can be used to control what happens when you swipe/long-press ### Action: com.android.systemui.action.PLUGIN_CLOCK_PROVIDER Expected interface: [ClockProviderPlugin](/frameworks/base/packages/SystemUI/plugin/src/com/android/systemui/plugins/ClockProviderPlugin.kt) Expected interface: [ClockProviderPlugin](/frameworks/base/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockProviderPlugin.kt) Use: Allows replacement of the keyguard main clock. See [additional Documentation](./clock-plugins.md). Loading Loading
packages/SystemUI/customization/src/com/android/systemui/shared/clocks/ClockRegistry.kt +6 −6 Original line number Diff line number Diff line Loading @@ -30,15 +30,15 @@ import com.android.systemui.log.core.Logger import com.android.systemui.log.core.MessageBuffer import com.android.systemui.log.core.MessageInitializer import com.android.systemui.log.core.MessagePrinter import com.android.systemui.plugins.ClockController import com.android.systemui.plugins.ClockId import com.android.systemui.plugins.ClockMetadata import com.android.systemui.plugins.ClockProvider import com.android.systemui.plugins.ClockProviderPlugin import com.android.systemui.plugins.ClockSettings import com.android.systemui.plugins.PluginLifecycleManager import com.android.systemui.plugins.PluginListener import com.android.systemui.plugins.PluginManager import com.android.systemui.plugins.clocks.ClockController import com.android.systemui.plugins.clocks.ClockId import com.android.systemui.plugins.clocks.ClockMetadata import com.android.systemui.plugins.clocks.ClockProvider import com.android.systemui.plugins.clocks.ClockProviderPlugin import com.android.systemui.plugins.clocks.ClockSettings import com.android.systemui.util.Assert import java.io.PrintWriter import java.util.concurrent.ConcurrentHashMap Loading
packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockController.kt +14 −10 Original line number Diff line number Diff line Loading @@ -25,16 +25,18 @@ import android.widget.FrameLayout import androidx.annotation.VisibleForTesting import com.android.systemui.customization.R import com.android.systemui.log.core.MessageBuffer import com.android.systemui.plugins.ClockAnimations import com.android.systemui.plugins.ClockConfig import com.android.systemui.plugins.ClockController import com.android.systemui.plugins.ClockEvents import com.android.systemui.plugins.ClockFaceConfig import com.android.systemui.plugins.ClockFaceController import com.android.systemui.plugins.ClockFaceEvents import com.android.systemui.plugins.ClockSettings import com.android.systemui.plugins.DefaultClockFaceLayout import com.android.systemui.plugins.WeatherData import com.android.systemui.plugins.clocks.AlarmData import com.android.systemui.plugins.clocks.ClockAnimations 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.ClockFaceConfig import com.android.systemui.plugins.clocks.ClockFaceController import com.android.systemui.plugins.clocks.ClockFaceEvents import com.android.systemui.plugins.clocks.ClockSettings import com.android.systemui.plugins.clocks.DefaultClockFaceLayout import com.android.systemui.plugins.clocks.WeatherData import com.android.systemui.plugins.clocks.ZenData import java.io.PrintWriter import java.util.Locale import java.util.TimeZone Loading Loading @@ -256,6 +258,8 @@ class DefaultClockController( } override fun onWeatherDataChanged(data: WeatherData) {} override fun onAlarmDataChanged(data: AlarmData) {} override fun onZenDataChanged(data: ZenData) {} } open inner class DefaultClockAnimations( Loading
packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockProvider.kt +5 −5 Original line number Diff line number Diff line Loading @@ -18,11 +18,11 @@ import android.content.res.Resources import android.graphics.drawable.Drawable import android.view.LayoutInflater import com.android.systemui.customization.R import com.android.systemui.plugins.ClockController import com.android.systemui.plugins.ClockId import com.android.systemui.plugins.ClockMetadata import com.android.systemui.plugins.ClockProvider import com.android.systemui.plugins.ClockSettings import com.android.systemui.plugins.clocks.ClockController import com.android.systemui.plugins.clocks.ClockId import com.android.systemui.plugins.clocks.ClockMetadata import com.android.systemui.plugins.clocks.ClockProvider import com.android.systemui.plugins.clocks.ClockSettings private val TAG = DefaultClockProvider::class.simpleName const val DEFAULT_CLOCK_ID = "DEFAULT" Loading
packages/SystemUI/docs/clock-plugins.md +3 −3 Original line number Diff line number Diff line Loading @@ -12,7 +12,7 @@ responsible for maintaining the view within the hierarchy and propagating events clock controller. ### Clock Library Code [ClockProvider and ClockController](../plugin/src/com/android/systemui/plugins/ClockProviderPlugin.kt) [ClockProvider and ClockController](../plugin/src/com/android/systemui/plugins/clocks/ClockProviderPlugin.kt) serve as the interface between the lockscreen (or other host application) and the clock that is being rendered. Implementing these interfaces is the primary integration point for rendering clocks in SystemUI. Many of the methods have an empty default implementation and are optional for Loading @@ -29,12 +29,12 @@ versions of android. The [ClockRegistry](../customization/src/com/android/systemui/shared/clocks/ClockRegistry.kt) determines which clock should be shown, and handles creating them. It does this by maintaining a list of [ClockProviders](../plugin/src/com/android/systemui/plugins/ClockProviderPlugin.kt) and list of [ClockProviders](../plugin/src/com/android/systemui/plugins/clocks/ClockProviderPlugin.kt) and delegating work to them as appropriate. The DefaultClockProvider is compiled in so that it is guaranteed to be available, and additional ClockProviders are loaded at runtime via [PluginManager](../plugin_core/src/com/android/systemui/plugins/PluginManager.java). [ClockPlugin](../plugin/src/com/android/systemui/plugins/ClockPlugin.java) is deprecated and no [ClockPlugin](../plugin/src/com/android/systemui/plugins/clocks/ClockPlugin.java) is deprecated and no longer used by keyguard to render clocks. The host code has been disabled but most of it is still present in the source tree, although it will likely be removed in a later patch. Loading
packages/SystemUI/docs/plugin_hooks.md +1 −1 Original line number Diff line number Diff line Loading @@ -52,7 +52,7 @@ Expected interface: [NotificationSwipeActionHelper](/frameworks/base/packages/Sy Use: Control over swipes/input for notification views, can be used to control what happens when you swipe/long-press ### Action: com.android.systemui.action.PLUGIN_CLOCK_PROVIDER Expected interface: [ClockProviderPlugin](/frameworks/base/packages/SystemUI/plugin/src/com/android/systemui/plugins/ClockProviderPlugin.kt) Expected interface: [ClockProviderPlugin](/frameworks/base/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockProviderPlugin.kt) Use: Allows replacement of the keyguard main clock. See [additional Documentation](./clock-plugins.md). Loading