Six widgets, each with minimal settings, styled with M3 Expressive shapes and Material You colours, and sized proportionally to the placed widget (SizeMode.Exact + LocalSize): - Analog clock (new): nine faces on MaterialShapes dials (Round, Numeral, Day, Cookie, Sunny, Scallop, Clover, Square, Petal) with per-face hands, a seconds dot and Google-Clock-style orbiting date on some faces, and a day/date pill on others. Style picker previews inflate the real views. - Digital clock: rebuilt as RemoteViews faces (Classic, Thin, Bold, Pill, Stacked) shared by the widget and its config previews; world clocks are opt-in and only on the card faces. - Next alarm and Timers: shape badges, icon buttons, proportional readouts; a lone timer on a tall widget gets a stacked layout. - Stopwatch (new): large readout with play/pause pill and lap/reset. - Quick timer (new): a Scallop that is a timer of its own — tap to start a transient timer of its configured duration, tap again to reset/stop. Colours resolve in the launcher (widget_* palette resources, GlanceTheme's dynamic colours) so widgets follow day/night and the wallpaper. Data widgets collect their flows inside the composition so a live Glance session never shows stale state, chronometer bases use elapsedRealtime, and config activities close cleanly on an invalid widget id.
14 lines
578 B
XML
14 lines
578 B
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- Slim hour hand: a narrow capsule, fully rounded at both ends. See
|
|
`widget_analog_hour_hand.xml` for the pivot convention and the 480dp
|
|
intrinsic size. -->
|
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
|
android:width="480dp"
|
|
android:height="480dp"
|
|
android:viewportWidth="100"
|
|
android:viewportHeight="100">
|
|
<path
|
|
android:pathData="M47.75,30 A2.25,2.25 0 0,1 52.25,30 L52.25,50 A2.25,2.25 0 0,1 47.75,50 Z"
|
|
android:fillColor="@color/widget_analog_hand_hour" />
|
|
</vector>
|