build(uhr): alarms, ringing, timer, stopwatch, world clock, bedtime, settings, widgets
- exact alarms via setAlarmClock, rescheduled on boot/time/zone change and app update - foreground ringing service: alarm-stream audio with gradual volume, vibration, full-screen screen with slide to snooze/stop, silence-after, missed notification - timers and stopwatch keep timestamps only; live countdown/chronometer notifications - world clock offline from the time zone database (no network permission at all) - own alarm tone, own analog face and launcher icon - next-ring logic unit-tested incl. DST gaps and zone changes; screenshot tests Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="200dp" android:height="200dp" android:viewportWidth="200" android:viewportHeight="200">
|
||||
<path android:fillColor="#40FFFFFF" android:pathData="M100,14m-5,0a5,5 0 1,0 10,0a5,5 0 1,0 -10,0"/>
|
||||
<path android:fillColor="#40FFFFFF" android:pathData="M186,100m-5,0a5,5 0 1,0 10,0a5,5 0 1,0 -10,0"/>
|
||||
<path android:fillColor="#40FFFFFF" android:pathData="M100,186m-5,0a5,5 0 1,0 10,0a5,5 0 1,0 -10,0"/>
|
||||
<path android:fillColor="#40FFFFFF" android:pathData="M14,100m-5,0a5,5 0 1,0 10,0a5,5 0 1,0 -10,0"/>
|
||||
</vector>
|
||||
@@ -0,0 +1,3 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="200dp" android:height="200dp" android:viewportWidth="200" android:viewportHeight="200">
|
||||
<path android:strokeColor="#FFA8C7FA" android:strokeWidth="14" android:strokeLineCap="round" android:pathData="M100,100 L100,52"/>
|
||||
</vector>
|
||||
@@ -0,0 +1,4 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="200dp" android:height="200dp" android:viewportWidth="200" android:viewportHeight="200">
|
||||
<path android:strokeColor="#FFFFFFFF" android:strokeWidth="8" android:strokeLineCap="round" android:pathData="M100,100 L100,30"/>
|
||||
<path android:fillColor="#FFFFFFFF" android:pathData="M100,100m-9,0a9,9 0 1,0 18,0a9,9 0 1,0 -18,0"/>
|
||||
</vector>
|
||||
@@ -0,0 +1 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="108dp" android:height="108dp" android:viewportWidth="108" android:viewportHeight="108"><path android:fillColor="#FF2F5EA8" android:pathData="M0,0h108v108h-108z"/></vector>
|
||||
@@ -0,0 +1,6 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="108dp" android:height="108dp" android:viewportWidth="108" android:viewportHeight="108">
|
||||
<path android:fillColor="#FFD6E3FF" android:pathData="M82.22,54.00 L82.03,55.22 L81.50,56.41 L80.77,57.52 L79.99,58.58 L79.33,59.62 L78.91,60.67 L78.75,61.80 L78.80,63.03 L78.94,64.33 L79.02,65.67 L78.88,66.95 L78.43,68.11 L77.66,69.07 L76.61,69.84 L75.42,70.44 L74.22,70.96 L73.13,71.53 L72.23,72.23 L71.53,73.13 L70.96,74.22 L70.44,75.42 L69.84,76.61 L69.07,77.66 L68.11,78.43 L66.95,78.88 L65.67,79.02 L64.33,78.94 L63.03,78.80 L61.80,78.75 L60.67,78.91 L59.62,79.33 L58.58,79.99 L57.52,80.77 L56.41,81.50 L55.22,82.03 L54.00,82.22 L52.78,82.03 L51.59,81.50 L50.48,80.77 L49.42,79.99 L48.38,79.33 L47.33,78.91 L46.20,78.75 L44.97,78.80 L43.67,78.94 L42.33,79.02 L41.05,78.88 L39.89,78.43 L38.93,77.66 L38.16,76.61 L37.56,75.42 L37.04,74.22 L36.47,73.13 L35.77,72.23 L34.87,71.53 L33.78,70.96 L32.58,70.44 L31.39,69.84 L30.34,69.07 L29.57,68.11 L29.12,66.95 L28.98,65.67 L29.06,64.33 L29.20,63.03 L29.25,61.80 L29.09,60.67 L28.67,59.62 L28.01,58.58 L27.23,57.52 L26.50,56.41 L25.97,55.22 L25.79,54.00 L25.97,52.78 L26.50,51.59 L27.23,50.48 L28.01,49.42 L28.67,48.38 L29.09,47.33 L29.25,46.20 L29.20,44.97 L29.06,43.67 L28.98,42.33 L29.12,41.05 L29.57,39.89 L30.34,38.93 L31.39,38.16 L32.58,37.56 L33.78,37.04 L34.87,36.47 L35.77,35.77 L36.47,34.87 L37.04,33.78 L37.56,32.58 L38.16,31.39 L38.93,30.34 L39.89,29.57 L41.05,29.12 L42.33,28.98 L43.67,29.06 L44.97,29.20 L46.20,29.25 L47.33,29.09 L48.38,28.67 L49.42,28.01 L50.48,27.23 L51.59,26.50 L52.78,25.97 L54.00,25.79 L55.22,25.97 L56.41,26.50 L57.52,27.23 L58.58,28.01 L59.62,28.67 L60.67,29.09 L61.80,29.25 L63.03,29.20 L64.33,29.06 L65.67,28.98 L66.95,29.12 L68.11,29.57 L69.07,30.34 L69.84,31.39 L70.44,32.58 L70.96,33.78 L71.53,34.87 L72.23,35.77 L73.13,36.47 L74.22,37.04 L75.42,37.56 L76.61,38.16 L77.66,38.93 L78.43,39.89 L78.88,41.05 L79.02,42.33 L78.94,43.67 L78.80,44.97 L78.75,46.20 L78.91,47.33 L79.33,48.38 L79.99,49.42 L80.77,50.48 L81.50,51.59 L82.03,52.78 Z"/>
|
||||
<path android:strokeColor="#FF0B2A55" android:strokeWidth="5.5" android:strokeLineCap="round" android:pathData="M54,54 L54,38"/>
|
||||
<path android:strokeColor="#FF2F5EA8" android:strokeWidth="3.5" android:strokeLineCap="round" android:pathData="M54,54 L66,64"/>
|
||||
<path android:fillColor="#FF0B2A55" android:pathData="M54,54m-3.5,0a3.5,3.5 0 1,0 7,0a3.5,3.5 0 1,0 -7,0"/>
|
||||
</vector>
|
||||
@@ -0,0 +1,6 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="108dp" android:height="108dp" android:viewportWidth="108" android:viewportHeight="108">
|
||||
<path android:fillColor="#FF000000" android:pathData="M82.22,54.00 L82.03,55.22 L81.50,56.41 L80.77,57.52 L79.99,58.58 L79.33,59.62 L78.91,60.67 L78.75,61.80 L78.80,63.03 L78.94,64.33 L79.02,65.67 L78.88,66.95 L78.43,68.11 L77.66,69.07 L76.61,69.84 L75.42,70.44 L74.22,70.96 L73.13,71.53 L72.23,72.23 L71.53,73.13 L70.96,74.22 L70.44,75.42 L69.84,76.61 L69.07,77.66 L68.11,78.43 L66.95,78.88 L65.67,79.02 L64.33,78.94 L63.03,78.80 L61.80,78.75 L60.67,78.91 L59.62,79.33 L58.58,79.99 L57.52,80.77 L56.41,81.50 L55.22,82.03 L54.00,82.22 L52.78,82.03 L51.59,81.50 L50.48,80.77 L49.42,79.99 L48.38,79.33 L47.33,78.91 L46.20,78.75 L44.97,78.80 L43.67,78.94 L42.33,79.02 L41.05,78.88 L39.89,78.43 L38.93,77.66 L38.16,76.61 L37.56,75.42 L37.04,74.22 L36.47,73.13 L35.77,72.23 L34.87,71.53 L33.78,70.96 L32.58,70.44 L31.39,69.84 L30.34,69.07 L29.57,68.11 L29.12,66.95 L28.98,65.67 L29.06,64.33 L29.20,63.03 L29.25,61.80 L29.09,60.67 L28.67,59.62 L28.01,58.58 L27.23,57.52 L26.50,56.41 L25.97,55.22 L25.79,54.00 L25.97,52.78 L26.50,51.59 L27.23,50.48 L28.01,49.42 L28.67,48.38 L29.09,47.33 L29.25,46.20 L29.20,44.97 L29.06,43.67 L28.98,42.33 L29.12,41.05 L29.57,39.89 L30.34,38.93 L31.39,38.16 L32.58,37.56 L33.78,37.04 L34.87,36.47 L35.77,35.77 L36.47,34.87 L37.04,33.78 L37.56,32.58 L38.16,31.39 L38.93,30.34 L39.89,29.57 L41.05,29.12 L42.33,28.98 L43.67,29.06 L44.97,29.20 L46.20,29.25 L47.33,29.09 L48.38,28.67 L49.42,28.01 L50.48,27.23 L51.59,26.50 L52.78,25.97 L54.00,25.79 L55.22,25.97 L56.41,26.50 L57.52,27.23 L58.58,28.01 L59.62,28.67 L60.67,29.09 L61.80,29.25 L63.03,29.20 L64.33,29.06 L65.67,28.98 L66.95,29.12 L68.11,29.57 L69.07,30.34 L69.84,31.39 L70.44,32.58 L70.96,33.78 L71.53,34.87 L72.23,35.77 L73.13,36.47 L74.22,37.04 L75.42,37.56 L76.61,38.16 L77.66,38.93 L78.43,39.89 L78.88,41.05 L79.02,42.33 L78.94,43.67 L78.80,44.97 L78.75,46.20 L78.91,47.33 L79.33,48.38 L79.99,49.42 L80.77,50.48 L81.50,51.59 L82.03,52.78 Z"/>
|
||||
<path android:strokeColor="#FFFFFFFF" android:strokeWidth="5.5" android:strokeLineCap="round" android:pathData="M54,54 L54,38"/>
|
||||
<path android:strokeColor="#FFFFFFFF" android:strokeWidth="3.5" android:strokeLineCap="round" android:pathData="M54,54 L66,64"/>
|
||||
<path android:fillColor="#FFFFFFFF" android:pathData="M54,54m-3.5,0a3.5,3.5 0 1,0 7,0a3.5,3.5 0 1,0 -7,0"/>
|
||||
</vector>
|
||||
@@ -0,0 +1 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="24dp" android:height="24dp" android:viewportWidth="24" android:viewportHeight="24"><path android:fillColor="#FFFFFFFF" android:pathData="M12,4a8,8 0 1,0 0,16a8,8 0 1,0 0,-16zM12,18a6,6 0 1,1 0,-12a6,6 0 1,1 0,12zM12.5,8H11v5l3.9,2.4 0.8,-1.2 -3.2,-1.9zM6.2,2.3L2.3,5.6 3.6,7.1 7.4,3.9zM17.8,2.3l-1.3,1.5 3.8,3.2 1.3,-1.5z"/></vector>
|
||||
@@ -0,0 +1 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="24dp" android:height="24dp" android:viewportWidth="24" android:viewportHeight="24"><path android:fillColor="#FFFFFFFF" android:pathData="M12.3,22h-0.1a10.3,10.3 0 0,1 -7.3,-3A10.3,10.3 0 0,1 9.1,1.8a1,1 0 0,1 1.3,1.2 8.2,8.2 0 0,0 10.6,10.6 1,1 0,0 1 1.2,1.3A10.3,10.3 0 0,1 12.3,22z"/></vector>
|
||||
@@ -0,0 +1 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="24dp" android:height="24dp" android:viewportWidth="24" android:viewportHeight="24"><path android:fillColor="#FFFFFFFF" android:pathData="M6,2v6h0.01L6,8.01 10,12l-4,4 0.01,0.01H6V22h12v-5.99h-0.01L18,16l-4,-4 4,-3.99 -0.01,-0.01H18V2H6zM16,16.5V20H8v-3.5l4,-4 4,4zM12,11.5l-4,-4V4h8v3.5l-4,4z"/></vector>
|
||||
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<AnalogClock xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent" android:layout_height="match_parent" android:padding="8dp"
|
||||
android:dial="@drawable/analog_dial" android:hand_hour="@drawable/analog_hour" android:hand_minute="@drawable/analog_minute" />
|
||||
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:gravity="center">
|
||||
<TextClock android:id="@+id/w_time" android:layout_width="wrap_content" android:layout_height="wrap_content"
|
||||
android:format24Hour="HH:mm" android:format12Hour="h:mm" android:fontFamily="sans-serif-light"
|
||||
android:textSize="80sp" android:includeFontPadding="false" android:textColor="#FFFFFFFF" android:shadowColor="#66000000" android:shadowRadius="8" android:shadowDy="2" />
|
||||
<TextClock android:layout_width="wrap_content" android:layout_height="wrap_content"
|
||||
android:format24Hour="EEEE, d. MMMM" android:format12Hour="EEEE, MMMM d" android:fontFamily="sans-serif-medium"
|
||||
android:textSize="16sp" android:textColor="#FFFFFFFF" android:shadowColor="#66000000" android:shadowRadius="8" android:shadowDy="2" />
|
||||
<TextView android:id="@+id/w_next" android:layout_width="wrap_content" android:layout_height="wrap_content"
|
||||
android:layout_marginTop="2dp" android:textSize="14sp" android:textColor="#E6FFFFFF" android:shadowColor="#66000000" android:shadowRadius="8" android:shadowDy="2" />
|
||||
</LinearLayout>
|
||||
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal"
|
||||
android:gravity="center" android:paddingHorizontal="20dp">
|
||||
<ImageView android:id="@+id/w_next_icon" android:layout_width="24dp" android:layout_height="24dp" android:src="@drawable/ic_stat_alarm" android:importantForAccessibility="no" />
|
||||
<TextView android:id="@+id/w_next_text" android:layout_width="wrap_content" android:layout_height="wrap_content"
|
||||
android:layout_marginStart="10dp" android:fontFamily="sans-serif-medium" android:textSize="16sp" android:maxLines="1" android:ellipsize="end" />
|
||||
</LinearLayout>
|
||||
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<background android:drawable="@drawable/ic_launcher_background"/>
|
||||
<foreground android:drawable="@drawable/ic_launcher_foreground"/>
|
||||
<monochrome android:drawable="@drawable/ic_launcher_monochrome"/>
|
||||
</adaptive-icon>
|
||||
Binary file not shown.
@@ -0,0 +1,130 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="tab_alarm">Wecker</string>
|
||||
<string name="tab_clock">Uhr</string>
|
||||
<string name="tab_timer">Timer</string>
|
||||
<string name="tab_stopwatch">Stoppuhr</string>
|
||||
<string name="tab_bedtime">Schlafen</string>
|
||||
<string name="more">Weitere Optionen</string>
|
||||
<string name="settings">Einstellungen</string>
|
||||
<string name="back">Zurück</string>
|
||||
<string name="add">Hinzufügen</string>
|
||||
<string name="delete">Löschen</string>
|
||||
<string name="undo">Rückgängig</string>
|
||||
<string name="on">An</string>
|
||||
<string name="off">Aus</string>
|
||||
<string name="never">Nie</string>
|
||||
<string name="later">Später</string>
|
||||
<string name="open_settings">Einstellungen öffnen</string>
|
||||
|
||||
<string name="alarm">Wecker</string>
|
||||
<string name="alarms">Wecker</string>
|
||||
<string name="no_alarms">Noch keine Wecker. Tippe auf +, um einen zu stellen.</string>
|
||||
<string name="wake_up">Aufwachen</string>
|
||||
<string name="other_alarms">Weitere</string>
|
||||
<string name="alarm_deleted">Wecker gelöscht</string>
|
||||
<string name="alarm_set_in">Klingelt %1$s</string>
|
||||
<string name="in_days_hours">in %1$d T. %2$d Std.</string>
|
||||
<string name="in_hours_minutes">in %1$d Std. %2$d Min.</string>
|
||||
<string name="in_minutes">in %1$d Min.</string>
|
||||
<string name="today">Heute</string>
|
||||
<string name="tomorrow">Morgen</string>
|
||||
<string name="yesterday">Gestern</string>
|
||||
<string name="every_day">Jeden Tag</string>
|
||||
<string name="weekdays">Werktags</string>
|
||||
<string name="weekends">Am Wochenende</string>
|
||||
<string name="not_scheduled">Nicht geplant</string>
|
||||
<string name="snoozed_until">Schlummert bis %1$s</string>
|
||||
<string name="paused_until">Pausiert · nächstes Mal %1$s</string>
|
||||
<string name="paused_until_date">Pausiert bis %1$s</string>
|
||||
<string name="pause_alarm">Wecker pausieren</string>
|
||||
<string name="pause_until">Pausieren bis einschließlich</string>
|
||||
<string name="resume">Nicht pausieren</string>
|
||||
<string name="skip_next">Nächsten Weckruf überspringen</string>
|
||||
<string name="add_label">Name hinzufügen</string>
|
||||
<string name="vibrate">Vibration</string>
|
||||
<string name="alarm_sound">Weckton</string>
|
||||
<string name="sound_default">Standard (Morgenklang)</string>
|
||||
<string name="sound_silent">Ohne Ton</string>
|
||||
<string name="add_own_sound">+ Eigene Audiodatei wählen</string>
|
||||
<string name="pick_time">Uhrzeit wählen</string>
|
||||
<string name="use_dial">Zifferblatt</string>
|
||||
<string name="use_keyboard">Tastatur</string>
|
||||
|
||||
<string name="snooze">Schlummern</string>
|
||||
<string name="stop">Stopp</string>
|
||||
<string name="dismiss_now">Jetzt beenden</string>
|
||||
|
||||
<string name="clock">Uhr</string>
|
||||
<string name="add_city">Stadt hinzufügen</string>
|
||||
<string name="search_city">Stadt oder Zeitzone</string>
|
||||
<string name="same_time">Gleiche Zeit</string>
|
||||
<string name="hours_offset">%1$s Std.</string>
|
||||
|
||||
<string name="timer">Timer</string>
|
||||
<string name="timer_of">Timer · %1$s</string>
|
||||
<string name="timer_done">Timer abgelaufen</string>
|
||||
<string name="plus_minute">+1:00</string>
|
||||
<string name="pause">Pause</string>
|
||||
<string name="paused">Pausiert</string>
|
||||
<string name="start">Start</string>
|
||||
<string name="reset">Zurücksetzen</string>
|
||||
<string name="backspace">Löschen</string>
|
||||
<string name="n_timers">%1$d Timer</string>
|
||||
|
||||
<string name="stopwatch">Stoppuhr</string>
|
||||
<string name="lap">Runde</string>
|
||||
<string name="lap_n">Runde %1$d</string>
|
||||
|
||||
<string name="bedtime">Schlafenszeit</string>
|
||||
<string name="bedtime_intro_title">Ein fester Schlafrhythmus</string>
|
||||
<string name="bedtime_intro">Lege fest, wann du schlafen gehst und aufstehst. Du wirst rechtzeitig erinnert, und der Wecker zum Aufwachen wird automatisch gestellt.</string>
|
||||
<string name="get_started">Los geht\'s</string>
|
||||
<string name="sleep_duration">%1$d Std. %2$d Min. Schlaf</string>
|
||||
<string name="bedtime_schedule">Zeitplan aktiv</string>
|
||||
<string name="bedtime_reminder">Erinnerung</string>
|
||||
<string name="at_bedtime">Zur Schlafenszeit</string>
|
||||
<string name="minutes_before">%1$d Min. vorher</string>
|
||||
|
||||
<string name="silence_after">Automatisch stumm nach</string>
|
||||
<string name="snooze_length">Schlummerdauer</string>
|
||||
<string name="alarm_volume">Lautstärke</string>
|
||||
<string name="gradual_volume">Langsam lauter werden</string>
|
||||
<string name="volume_buttons">Lautstärketasten beim Klingeln</string>
|
||||
<string name="vb_volume">Lautstärke ändern</string>
|
||||
<string name="vb_nothing">Nichts tun</string>
|
||||
<string name="week_start">Woche beginnt am</string>
|
||||
<string name="timer_vibrate">Timer vibriert</string>
|
||||
<string name="style">Darstellung</string>
|
||||
<string name="digital">Digital</string>
|
||||
<string name="analog">Analog</string>
|
||||
<string name="show_seconds">Sekunden anzeigen</string>
|
||||
<string name="theme">Design</string>
|
||||
<string name="theme_system">System</string>
|
||||
<string name="theme_light">Hell</string>
|
||||
<string name="theme_dark">Dunkel</string>
|
||||
<string name="n_minutes">%1$d Minuten</string>
|
||||
<string name="n_seconds">%1$d Sekunden</string>
|
||||
|
||||
<string name="ch_ringing">Klingeln</string>
|
||||
<string name="ch_upcoming">Anstehende Wecker</string>
|
||||
<string name="ch_missed">Verpasste Wecker</string>
|
||||
<string name="ch_running">Laufende Timer und Stoppuhr</string>
|
||||
<string name="ch_bedtime">Schlafenszeit</string>
|
||||
<string name="notif_upcoming">Wecker um %1$s</string>
|
||||
<string name="notif_snoozed">Schlummert bis %1$s</string>
|
||||
<string name="notif_missed">Wecker verpasst</string>
|
||||
<string name="notif_bedtime">Bald ist Schlafenszeit</string>
|
||||
<string name="notif_bedtime_text">Leg das Handy weg und komm zur Ruhe.</string>
|
||||
|
||||
<string name="fsi_title">Wecker im Vollbild</string>
|
||||
<string name="fsi_text">Damit der Wecker auch über dem Sperrbildschirm erscheint, braucht die App die Erlaubnis für Vollbild-Benachrichtigungen. Ohne sie klingelt er trotzdem, aber nur als Benachrichtigung.</string>
|
||||
|
||||
<string name="no_alarm_set">Kein Wecker gestellt</string>
|
||||
<string name="widget_digital_name">Uhrzeit</string>
|
||||
<string name="widget_digital_desc">Große Uhrzeit, Datum und nächster Wecker</string>
|
||||
<string name="widget_analog_name">Analoge Uhr</string>
|
||||
<string name="widget_analog_desc">Zifferblatt in deinen Farben</string>
|
||||
<string name="widget_next_name">Nächster Wecker</string>
|
||||
<string name="widget_next_desc">Wann der nächste Wecker klingelt</string>
|
||||
</resources>
|
||||
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:description="@string/widget_analog_desc"
|
||||
android:initialLayout="@layout/glance_default_loading_layout"
|
||||
android:minWidth="110dp" android:minHeight="110dp" android:targetCellWidth="2" android:targetCellHeight="2"
|
||||
android:minResizeWidth="80dp" android:minResizeHeight="40dp"
|
||||
android:resizeMode="horizontal|vertical" android:updatePeriodMillis="0"
|
||||
android:widgetCategory="home_screen|keyguard" />
|
||||
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:description="@string/widget_digital_desc"
|
||||
android:initialLayout="@layout/glance_default_loading_layout"
|
||||
android:minWidth="250dp" android:minHeight="110dp" android:targetCellWidth="4" android:targetCellHeight="2"
|
||||
android:minResizeWidth="80dp" android:minResizeHeight="40dp"
|
||||
android:resizeMode="horizontal|vertical" android:updatePeriodMillis="0"
|
||||
android:widgetCategory="home_screen|keyguard" />
|
||||
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:description="@string/widget_next_desc"
|
||||
android:initialLayout="@layout/glance_default_loading_layout"
|
||||
android:minWidth="180dp" android:minHeight="48dp" android:targetCellWidth="3" android:targetCellHeight="1"
|
||||
android:minResizeWidth="80dp" android:minResizeHeight="40dp"
|
||||
android:resizeMode="horizontal|vertical" android:updatePeriodMillis="0"
|
||||
android:widgetCategory="home_screen|keyguard" />
|
||||
Reference in New Issue
Block a user