[automerger skipped] Import translations. DO NOT MERGE
am: 406edaa81d -s ours
am skip reason: subject contains skip directive
Change-Id: Ifad6bd7584e2c530b160c10c7dc9c0ba5ed068e6
diff --git a/Android.bp b/Android.bp
new file mode 100644
index 0000000..ec6d1fe
--- /dev/null
+++ b/Android.bp
@@ -0,0 +1,29 @@
+android_app {
+ name: "DeskClock",
+ resource_dirs: ["res"],
+ sdk_version: "current",
+ overrides: ["AlarmClock"],
+ srcs: [
+ "src/**/*.java",
+ "gen/**/*.java",
+ ],
+ product_specific: true,
+ static_libs: [
+ "androidx.annotation_annotation",
+ "androidx.collection_collection",
+ "androidx.arch.core_core-common",
+ "androidx.lifecycle_lifecycle-common",
+ "com.google.android.material_material",
+ "androidx.lifecycle_lifecycle-runtime",
+ "androidx.percentlayout_percentlayout",
+ "androidx.transition_transition",
+ "androidx.core_core",
+ "androidx.legacy_legacy-support-core-ui",
+ "androidx.media_media",
+ "androidx.legacy_legacy-support-v13",
+ "androidx.preference_preference",
+ "androidx.appcompat_appcompat",
+ "androidx.gridlayout_gridlayout",
+ "androidx.recyclerview_recyclerview",
+ ],
+}
diff --git a/Android.mk b/Android.mk
deleted file mode 100644
index 851ea44..0000000
--- a/Android.mk
+++ /dev/null
@@ -1,30 +0,0 @@
-LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_RESOURCE_DIR := packages/apps/DeskClock/res
-
-LOCAL_MODULE_TAGS := optional
-LOCAL_SDK_VERSION := current
-
-LOCAL_PACKAGE_NAME := DeskClock
-LOCAL_OVERRIDES_PACKAGES := AlarmClock
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src gen)
-
-LOCAL_STATIC_ANDROID_LIBRARIES := \
- $(ANDROID_SUPPORT_DESIGN_TARGETS) \
- android-support-percent \
- android-support-transition \
- android-support-compat \
- android-support-core-ui \
- android-support-media-compat \
- android-support-v13 \
- android-support-v14-preference \
- android-support-v7-appcompat \
- android-support-v7-gridlayout \
- android-support-v7-preference \
- android-support-v7-recyclerview
-
-LOCAL_USE_AAPT2 := true
-
-include $(BUILD_PACKAGE)
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 601edde..cf42713 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -22,7 +22,7 @@
<original-package android:name="com.android.alarmclock" />
<original-package android:name="com.android.deskclock" />
- <uses-sdk android:minSdkVersion="19" android:targetSdkVersion="25" />
+ <uses-sdk android:minSdkVersion="19" android:targetSdkVersion="28" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
diff --git a/CleanSpec.mk b/CleanSpec.mk
index b84e1b6..9949917 100644
--- a/CleanSpec.mk
+++ b/CleanSpec.mk
@@ -43,6 +43,7 @@
#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/core_intermediates)
#$(call add-clean-step, find $(OUT_DIR) -type f -name "IGTalkSession*" -print0 | xargs -0 rm -f)
#$(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/*)
+$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/DeskClock)
# ************************************************
# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
diff --git a/OWNERS b/OWNERS
new file mode 100644
index 0000000..fe9f33f
--- /dev/null
+++ b/OWNERS
@@ -0,0 +1,3 @@
+# This project has no significant updates recently.
+# Please update this list if you find better candidates.
+rtenneti@google.com
diff --git a/res/layout-land/clock_fragment.xml b/res/layout-land/clock_fragment.xml
index b9bb893..a29a09d 100644
--- a/res/layout-land/clock_fragment.xml
+++ b/res/layout-land/clock_fragment.xml
@@ -50,7 +50,7 @@
</LinearLayout>
<!-- World Clock List: 33% of total width. Right gutter is applied in world_clock_item. -->
- <android.support.v7.widget.RecyclerView
+ <androidx.recyclerview.widget.RecyclerView
android:id="@+id/cities"
android:layout_width="0dp"
android:layout_height="wrap_content"
diff --git a/res/layout-land/stopwatch_fragment.xml b/res/layout-land/stopwatch_fragment.xml
index 103c6dc..2501896 100644
--- a/res/layout-land/stopwatch_fragment.xml
+++ b/res/layout-land/stopwatch_fragment.xml
@@ -44,7 +44,7 @@
</FrameLayout>
- <android.support.v7.widget.RecyclerView
+ <androidx.recyclerview.widget.RecyclerView
android:id="@+id/laps_list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
diff --git a/res/layout-w320dp-h320dp-land/stopwatch_fragment.xml b/res/layout-w320dp-h320dp-land/stopwatch_fragment.xml
index 14c1327..8692824 100644
--- a/res/layout-w320dp-h320dp-land/stopwatch_fragment.xml
+++ b/res/layout-w320dp-h320dp-land/stopwatch_fragment.xml
@@ -50,7 +50,7 @@
</com.android.deskclock.TimerCircleFrameLayout>
- <android.support.v7.widget.RecyclerView
+ <androidx.recyclerview.widget.RecyclerView
android:id="@+id/laps_list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
diff --git a/res/layout-w320dp-h320dp/timer_item.xml b/res/layout-w320dp-h320dp/timer_item.xml
index 07e8037..fac8f2b 100644
--- a/res/layout-w320dp-h320dp/timer_item.xml
+++ b/res/layout-w320dp-h320dp/timer_item.xml
@@ -22,7 +22,7 @@
android:layout_height="match_parent"
android:orientation="vertical">
- <android.support.percent.PercentFrameLayout
+ <androidx.percentlayout.widget.PercentFrameLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
@@ -83,7 +83,7 @@
</com.android.deskclock.TimerCircleFrameLayout>
- </android.support.percent.PercentFrameLayout>
+ </androidx.percentlayout.widget.PercentFrameLayout>
<Space
android:layout_width="match_parent"
diff --git a/res/layout/alarm_activity.xml b/res/layout/alarm_activity.xml
index d446114..61bff34 100644
--- a/res/layout/alarm_activity.xml
+++ b/res/layout/alarm_activity.xml
@@ -23,7 +23,7 @@
android:fitsSystemWindows="true"
android:layoutDirection="ltr">
- <android.support.v7.widget.GridLayout
+ <androidx.gridlayout.widget.GridLayout
android:id="@+id/content"
android:layout_width="match_parent"
android:layout_height="match_parent"
@@ -125,7 +125,7 @@
app:layout_columnSpan="3"
app:layout_gravity="bottom|center_horizontal" />
- </android.support.v7.widget.GridLayout>
+ </androidx.gridlayout.widget.GridLayout>
<LinearLayout
android:id="@+id/alert"
diff --git a/res/layout/alarm_time_collapsed.xml b/res/layout/alarm_time_collapsed.xml
index 6c0e3c7..fa8f112 100644
--- a/res/layout/alarm_time_collapsed.xml
+++ b/res/layout/alarm_time_collapsed.xml
@@ -15,7 +15,7 @@
limitations under the License.
-->
-<android.support.v7.widget.GridLayout
+<androidx.gridlayout.widget.GridLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
@@ -36,7 +36,7 @@
app:layout_gravity="center_vertical"
app:layout_row="0" />
- <android.support.v7.widget.SwitchCompat
+ <androidx.appcompat.widget.SwitchCompat
android:id="@+id/onoff"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -127,4 +127,4 @@
app:layout_gravity="fill_horizontal"
app:layout_row="3" />
-</android.support.v7.widget.GridLayout>
+</androidx.gridlayout.widget.GridLayout>
diff --git a/res/layout/alarm_time_expanded.xml b/res/layout/alarm_time_expanded.xml
index 8c3513c..4958683 100644
--- a/res/layout/alarm_time_expanded.xml
+++ b/res/layout/alarm_time_expanded.xml
@@ -15,7 +15,7 @@
limitations under the License.
-->
-<android.support.v7.widget.GridLayout
+<androidx.gridlayout.widget.GridLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
@@ -36,7 +36,7 @@
app:layout_gravity="center_vertical"
app:layout_row="0" />
- <android.support.v7.widget.SwitchCompat
+ <androidx.appcompat.widget.SwitchCompat
android:id="@+id/onoff"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -181,4 +181,4 @@
app:layout_row="7"
app:srcCompat="@drawable/ic_caret_up" />
-</android.support.v7.widget.GridLayout>
+</androidx.gridlayout.widget.GridLayout>
diff --git a/res/layout/alarm_volume_preference.xml b/res/layout/alarm_volume_preference.xml
index 9929502..109c7be 100644
--- a/res/layout/alarm_volume_preference.xml
+++ b/res/layout/alarm_volume_preference.xml
@@ -35,7 +35,7 @@
android:layout_height="wrap_content"
android:ellipsize="marquee"
android:singleLine="true"
- android:textAppearance="@style/Preference_TextAppearanceMaterialSubhead" />
+ android:textAppearance="?android:attr/textAppearanceListItem" />
<LinearLayout
android:layout_width="match_parent"
diff --git a/res/layout/clock_fragment.xml b/res/layout/clock_fragment.xml
index 97b7641..ec97381 100644
--- a/res/layout/clock_fragment.xml
+++ b/res/layout/clock_fragment.xml
@@ -15,7 +15,7 @@
-->
<!-- Guttered content. The gutters are applied in world_clock_item and main_clock_frame. -->
-<android.support.v7.widget.RecyclerView
+<androidx.recyclerview.widget.RecyclerView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/cities"
android:layout_width="0dp"
diff --git a/res/layout/desk_clock.xml b/res/layout/desk_clock.xml
index e5e2f63..d25e4f6 100644
--- a/res/layout/desk_clock.xml
+++ b/res/layout/desk_clock.xml
@@ -15,7 +15,7 @@
limitations under the License.
-->
-<android.support.design.widget.CoordinatorLayout
+<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
@@ -25,20 +25,20 @@
android:fitsSystemWindows="true"
app:statusBarBackground="@null">
- <android.support.design.widget.AppBarLayout
+ <com.google.android.material.appbar.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@null"
app:elevation="0dp">
- <android.support.v7.widget.Toolbar
+ <androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:contentInsetStart="0dp"
tools:ignore="RtlSymmetry">
- <android.support.design.widget.TabLayout
+ <com.google.android.material.tabs.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="match_parent"
@@ -49,7 +49,7 @@
app:tabPaddingEnd="0dp"
app:tabPaddingStart="0dp" />
- </android.support.v7.widget.Toolbar>
+ </androidx.appcompat.widget.Toolbar>
<View
android:id="@+id/tab_hairline"
@@ -59,14 +59,14 @@
android:background="@color/hairline"
android:importantForAccessibility="no" />
- </android.support.design.widget.AppBarLayout>
+ </com.google.android.material.appbar.AppBarLayout>
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
- <android.support.v4.view.ViewPager
+ <androidx.viewpager.widget.ViewPager
android:id="@+id/desk_clock_pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
@@ -101,7 +101,7 @@
</FrameLayout>
- <android.support.design.widget.FloatingActionButton
+ <com.google.android.material.floatingactionbutton.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -128,4 +128,4 @@
</LinearLayout>
-</android.support.design.widget.CoordinatorLayout>
+</androidx.coordinatorlayout.widget.CoordinatorLayout>
diff --git a/res/layout/expired_timers_activity.xml b/res/layout/expired_timers_activity.xml
index 34ef57e..6129bb2 100644
--- a/res/layout/expired_timers_activity.xml
+++ b/res/layout/expired_timers_activity.xml
@@ -37,7 +37,7 @@
</ScrollView>
- <android.support.design.widget.FloatingActionButton
+ <com.google.android.material.floatingactionbutton.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
diff --git a/res/layout/ringtone_picker.xml b/res/layout/ringtone_picker.xml
index 183b8bf..d2127fe 100644
--- a/res/layout/ringtone_picker.xml
+++ b/res/layout/ringtone_picker.xml
@@ -22,7 +22,7 @@
<include layout="@layout/drop_shadow" />
- <android.support.v7.widget.RecyclerView
+ <androidx.recyclerview.widget.RecyclerView
android:id="@+id/ringtone_content"
android:layout_width="match_parent"
android:layout_height="match_parent" />
diff --git a/res/layout/stopwatch_fragment.xml b/res/layout/stopwatch_fragment.xml
index 236d845..12a3903 100644
--- a/res/layout/stopwatch_fragment.xml
+++ b/res/layout/stopwatch_fragment.xml
@@ -23,7 +23,7 @@
android:gravity="center"
android:orientation="vertical">
- <android.support.percent.PercentFrameLayout
+ <androidx.percentlayout.widget.PercentFrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center">
@@ -45,9 +45,9 @@
</com.android.deskclock.TimerCircleFrameLayout>
- </android.support.percent.PercentFrameLayout>
+ </androidx.percentlayout.widget.PercentFrameLayout>
- <android.support.v7.widget.RecyclerView
+ <androidx.recyclerview.widget.RecyclerView
android:id="@+id/laps_list"
android:layout_width="match_parent"
android:layout_height="0dp"
diff --git a/res/layout/timer_setup_digits.xml b/res/layout/timer_setup_digits.xml
index 22e49ad..99fd9d2 100644
--- a/res/layout/timer_setup_digits.xml
+++ b/res/layout/timer_setup_digits.xml
@@ -15,7 +15,7 @@
limitations under the License.
-->
-<android.support.v7.widget.GridLayout
+<androidx.gridlayout.widget.GridLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
@@ -124,4 +124,4 @@
app:layout_column="1"
app:layout_columnWeight="1" />
-</android.support.v7.widget.GridLayout>
+</androidx.gridlayout.widget.GridLayout>
diff --git a/res/values/styles.xml b/res/values/styles.xml
index 64d05e8..d4de3c9 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -103,12 +103,12 @@
<style name="Widget.ActionBar" parent="Widget.AppCompat.ActionBar">
<item name="android:background">@null</item>
- <!-- Attributes from android.support.v7.appcompat -->
+ <!-- Attributes from androidx.appcompat.appcompat -->
<item name="displayOptions">showTitle|homeAsUp</item>
</style>
<style name="Widget.ActionBar.NoTitle">
- <!-- Attributes from android.support.v7.appcompat -->
+ <!-- Attributes from androidx.appcompat.appcompat -->
<item name="displayOptions">homeAsUp</item>
</style>
diff --git a/res/values/themes.xml b/res/values/themes.xml
index 5847add..c1681ee 100644
--- a/res/values/themes.xml
+++ b/res/values/themes.xml
@@ -27,7 +27,7 @@
<item name="android:windowBackground">@color/default_background</item>
<item name="android:windowContentOverlay">@null</item>
- <!-- Attributes from android.support.v7.appcompat -->
+ <!-- Attributes from androidx.appcompat.appcompat -->
<item name="colorAccent">#DA4336</item>
<item name="colorBackgroundFloating">#303030</item>
<item name="colorControlActivated">@android:color/white</item>
@@ -38,32 +38,32 @@
</style>
<style name="Theme.DeskClock.Settings">
- <!-- Attributes from android.support.v7.appcompat -->
+ <!-- Attributes from androidx.appcompat.appcompat -->
<item name="actionBarStyle">@style/Widget.ActionBar</item>
<item name="colorControlActivated">?attr/colorAccent</item>
<item name="windowActionBar">true</item>
<item name="windowNoTitle">false</item>
- <!-- Attributes from android.support.v7.preference -->
+ <!-- Attributes from androidx.preference.-->
<item name="preferenceTheme">@style/PreferenceThemeOverlay.v14.Material</item>
</style>
<style name="Theme.DeskClock.RingtonePicker">
- <!-- Attributes from android.support.v7.appcompat -->
+ <!-- Attributes from androidx.appcompat.appcompat -->
<item name="actionBarStyle">@style/Widget.ActionBar</item>
<item name="windowActionBar">true</item>
<item name="windowNoTitle">false</item>
</style>
<style name="Theme.DeskClock.CitySelection">
- <!-- Attributes from android.support.v7.appcompat -->
+ <!-- Attributes from androidx.appcompat.appcompat -->
<item name="actionBarStyle">@style/Widget.ActionBar.NoTitle</item>
<item name="windowActionBar">true</item>
<item name="windowNoTitle">false</item>
</style>
<style name="ThemeOverlay.Control.Accent" parent="ThemeOverlay.AppCompat">
- <!-- Attributes from android.support.v7.appcompat -->
+ <!-- Attributes from androidx.appcompat.appcompat -->
<item name="colorControlActivated">?attr/colorAccent</item>
</style>
diff --git a/src/com/android/alarmclock/DigitalAppWidgetProvider.java b/src/com/android/alarmclock/DigitalAppWidgetProvider.java
index 7f322ad..3be07ec 100644
--- a/src/com/android/alarmclock/DigitalAppWidgetProvider.java
+++ b/src/com/android/alarmclock/DigitalAppWidgetProvider.java
@@ -28,7 +28,7 @@
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Bundle;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import android.text.TextUtils;
import android.text.format.DateFormat;
import android.util.ArraySet;
diff --git a/src/com/android/deskclock/AlarmClockFragment.java b/src/com/android/deskclock/AlarmClockFragment.java
index d5c0223..5c02d03 100644
--- a/src/com/android/deskclock/AlarmClockFragment.java
+++ b/src/com/android/deskclock/AlarmClockFragment.java
@@ -24,10 +24,10 @@
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.os.SystemClock;
-import android.support.annotation.NonNull;
-import android.support.design.widget.Snackbar;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import com.google.android.material.snackbar.Snackbar;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
diff --git a/src/com/android/deskclock/AlarmRecyclerView.java b/src/com/android/deskclock/AlarmRecyclerView.java
index f9c63bc..13bffcf 100644
--- a/src/com/android/deskclock/AlarmRecyclerView.java
+++ b/src/com/android/deskclock/AlarmRecyclerView.java
@@ -17,8 +17,8 @@
package com.android.deskclock;
import android.content.Context;
-import android.support.annotation.Nullable;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.Nullable;
+import androidx.recyclerview.widget.RecyclerView;
import android.util.AttributeSet;
import android.view.MotionEvent;
diff --git a/src/com/android/deskclock/AlarmUtils.java b/src/com/android/deskclock/AlarmUtils.java
index 4082925..db60ace 100644
--- a/src/com/android/deskclock/AlarmUtils.java
+++ b/src/com/android/deskclock/AlarmUtils.java
@@ -17,8 +17,8 @@
package com.android.deskclock;
import android.content.Context;
-import android.support.annotation.VisibleForTesting;
-import android.support.design.widget.Snackbar;
+import androidx.annotation.VisibleForTesting;
+import com.google.android.material.snackbar.Snackbar;
import android.text.format.DateFormat;
import android.text.format.DateUtils;
import android.view.View;
diff --git a/src/com/android/deskclock/AnalogClock.java b/src/com/android/deskclock/AnalogClock.java
index 2024fc7..32e6621 100644
--- a/src/com/android/deskclock/AnalogClock.java
+++ b/src/com/android/deskclock/AnalogClock.java
@@ -20,7 +20,7 @@
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
-import android.support.v7.widget.AppCompatImageView;
+import androidx.appcompat.widget.AppCompatImageView;
import android.text.format.DateFormat;
import android.util.AttributeSet;
import android.widget.FrameLayout;
diff --git a/src/com/android/deskclock/AnimatorUtils.java b/src/com/android/deskclock/AnimatorUtils.java
index 770b7c7..9b3cc6f 100644
--- a/src/com/android/deskclock/AnimatorUtils.java
+++ b/src/com/android/deskclock/AnimatorUtils.java
@@ -26,8 +26,8 @@
import android.graphics.drawable.Animatable;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.LayerDrawable;
-import android.support.v4.graphics.drawable.DrawableCompat;
-import android.support.v4.view.animation.FastOutSlowInInterpolator;
+import androidx.core.graphics.drawable.DrawableCompat;
+import androidx.interpolator.view.animation.FastOutSlowInInterpolator;
import android.util.Property;
import android.view.View;
import android.view.animation.Interpolator;
diff --git a/src/com/android/deskclock/BaseActivity.java b/src/com/android/deskclock/BaseActivity.java
index 1d99d1f..143f238 100644
--- a/src/com/android/deskclock/BaseActivity.java
+++ b/src/com/android/deskclock/BaseActivity.java
@@ -22,8 +22,8 @@
import android.animation.ValueAnimator.AnimatorUpdateListener;
import android.graphics.drawable.ColorDrawable;
import android.os.Bundle;
-import android.support.annotation.ColorInt;
-import android.support.v7.app.AppCompatActivity;
+import androidx.annotation.ColorInt;
+import androidx.appcompat.app.AppCompatActivity;
import android.view.View;
import static com.android.deskclock.AnimatorUtils.ARGB_EVALUATOR;
diff --git a/src/com/android/deskclock/ClockFragment.java b/src/com/android/deskclock/ClockFragment.java
index 7afe72d..1536b55 100644
--- a/src/com/android/deskclock/ClockFragment.java
+++ b/src/com/android/deskclock/ClockFragment.java
@@ -28,9 +28,9 @@
import android.os.Bundle;
import android.os.Handler;
import android.provider.Settings;
-import android.support.annotation.NonNull;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
import android.text.format.DateUtils;
import android.view.GestureDetector;
import android.view.LayoutInflater;
diff --git a/src/com/android/deskclock/DeskClock.java b/src/com/android/deskclock/DeskClock.java
index 6554a35..e53fbeb 100644
--- a/src/com/android/deskclock/DeskClock.java
+++ b/src/com/android/deskclock/DeskClock.java
@@ -24,13 +24,13 @@
import android.content.Intent;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
-import android.support.annotation.StringRes;
-import android.support.design.widget.Snackbar;
-import android.support.design.widget.TabLayout;
-import android.support.v4.view.ViewPager;
-import android.support.v4.view.ViewPager.OnPageChangeListener;
-import android.support.v7.app.ActionBar;
-import android.support.v7.widget.Toolbar;
+import androidx.annotation.StringRes;
+import com.google.android.material.snackbar.Snackbar;
+import com.google.android.material.tabs.TabLayout;
+import androidx.viewpager.widget.ViewPager;
+import androidx.viewpager.widget.ViewPager.OnPageChangeListener;
+import androidx.appcompat.app.ActionBar;
+import androidx.appcompat.widget.Toolbar;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.MenuItem;
@@ -53,9 +53,9 @@
import com.android.deskclock.uidata.UiDataModel;
import com.android.deskclock.widget.toast.SnackbarManager;
-import static android.support.v4.view.ViewPager.SCROLL_STATE_DRAGGING;
-import static android.support.v4.view.ViewPager.SCROLL_STATE_IDLE;
-import static android.support.v4.view.ViewPager.SCROLL_STATE_SETTLING;
+import static androidx.viewpager.widget.ViewPager.SCROLL_STATE_DRAGGING;
+import static androidx.viewpager.widget.ViewPager.SCROLL_STATE_IDLE;
+import static androidx.viewpager.widget.ViewPager.SCROLL_STATE_SETTLING;
import static android.text.format.DateUtils.SECOND_IN_MILLIS;
import static com.android.deskclock.AnimatorUtils.getScaleAnimator;
diff --git a/src/com/android/deskclock/DeskClockBackupAgent.java b/src/com/android/deskclock/DeskClockBackupAgent.java
index 791cb05..4b66659 100644
--- a/src/com/android/deskclock/DeskClockBackupAgent.java
+++ b/src/com/android/deskclock/DeskClockBackupAgent.java
@@ -26,7 +26,7 @@
import android.content.Intent;
import android.os.ParcelFileDescriptor;
import android.os.SystemClock;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import com.android.deskclock.alarms.AlarmStateManager;
import com.android.deskclock.data.DataModel;
diff --git a/src/com/android/deskclock/DeskClockFragment.java b/src/com/android/deskclock/DeskClockFragment.java
index 68e2ee6..a9e3fc6 100644
--- a/src/com/android/deskclock/DeskClockFragment.java
+++ b/src/com/android/deskclock/DeskClockFragment.java
@@ -17,8 +17,8 @@
package com.android.deskclock;
import android.app.Fragment;
-import android.support.annotation.ColorInt;
-import android.support.annotation.NonNull;
+import androidx.annotation.ColorInt;
+import androidx.annotation.NonNull;
import android.view.KeyEvent;
import android.widget.Button;
import android.widget.ImageView;
diff --git a/src/com/android/deskclock/DropShadowController.java b/src/com/android/deskclock/DropShadowController.java
index 19e1b7a..53edd77 100644
--- a/src/com/android/deskclock/DropShadowController.java
+++ b/src/com/android/deskclock/DropShadowController.java
@@ -17,7 +17,7 @@
package com.android.deskclock;
import android.animation.ValueAnimator;
-import android.support.v7.widget.RecyclerView;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.View;
import android.widget.AbsListView;
import android.widget.ListView;
diff --git a/src/com/android/deskclock/FabContainer.java b/src/com/android/deskclock/FabContainer.java
index 2f18061..2813e70 100644
--- a/src/com/android/deskclock/FabContainer.java
+++ b/src/com/android/deskclock/FabContainer.java
@@ -1,6 +1,6 @@
package com.android.deskclock;
-import android.support.annotation.IntDef;
+import androidx.annotation.IntDef;
/**
* Implemented by containers that house the fab and its associated buttons. Also implemented by
diff --git a/src/com/android/deskclock/FabController.java b/src/com/android/deskclock/FabController.java
index 13bb42b..bab7f46 100644
--- a/src/com/android/deskclock/FabController.java
+++ b/src/com/android/deskclock/FabController.java
@@ -1,6 +1,6 @@
package com.android.deskclock;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
diff --git a/src/com/android/deskclock/FragmentTabPagerAdapter.java b/src/com/android/deskclock/FragmentTabPagerAdapter.java
index 3b154d5..3682c86 100644
--- a/src/com/android/deskclock/FragmentTabPagerAdapter.java
+++ b/src/com/android/deskclock/FragmentTabPagerAdapter.java
@@ -19,8 +19,8 @@
import android.app.Fragment;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
-import android.support.v13.app.FragmentCompat;
-import android.support.v4.view.PagerAdapter;
+import androidx.legacy.app.FragmentCompat;
+import androidx.viewpager.widget.PagerAdapter;
import android.util.ArrayMap;
import android.view.View;
import android.view.ViewGroup;
diff --git a/src/com/android/deskclock/ItemAdapter.java b/src/com/android/deskclock/ItemAdapter.java
index e1cd4d3..a417636 100644
--- a/src/com/android/deskclock/ItemAdapter.java
+++ b/src/com/android/deskclock/ItemAdapter.java
@@ -17,8 +17,8 @@
package com.android.deskclock;
import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.RecyclerView;
import android.util.SparseArray;
import android.view.View;
import android.view.ViewGroup;
@@ -26,7 +26,7 @@
import java.util.ArrayList;
import java.util.List;
-import static android.support.v7.widget.RecyclerView.NO_ID;
+import static androidx.recyclerview.widget.RecyclerView.NO_ID;
/**
* Base adapter class for displaying a collection of items. Provides functionality for handling
diff --git a/src/com/android/deskclock/ItemAnimator.java b/src/com/android/deskclock/ItemAnimator.java
index 3b65d56..756d4e9 100644
--- a/src/com/android/deskclock/ItemAnimator.java
+++ b/src/com/android/deskclock/ItemAnimator.java
@@ -21,11 +21,11 @@
import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
import android.animation.PropertyValuesHolder;
-import android.support.annotation.NonNull;
-import android.support.v4.util.ArrayMap;
-import android.support.v7.widget.RecyclerView.State;
-import android.support.v7.widget.RecyclerView.ViewHolder;
-import android.support.v7.widget.SimpleItemAnimator;
+import androidx.annotation.NonNull;
+import androidx.collection.ArrayMap;
+import androidx.recyclerview.widget.RecyclerView.State;
+import androidx.recyclerview.widget.RecyclerView.ViewHolder;
+import androidx.recyclerview.widget.SimpleItemAnimator;
import android.view.View;
import java.util.ArrayList;
diff --git a/src/com/android/deskclock/LabelDialogFragment.java b/src/com/android/deskclock/LabelDialogFragment.java
index 63a1ee4..0fa0eab 100644
--- a/src/com/android/deskclock/LabelDialogFragment.java
+++ b/src/com/android/deskclock/LabelDialogFragment.java
@@ -26,9 +26,9 @@
import android.content.res.ColorStateList;
import android.graphics.Color;
import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.v7.app.AlertDialog;
-import android.support.v7.widget.AppCompatEditText;
+import androidx.annotation.NonNull;
+import androidx.appcompat.app.AlertDialog;
+import androidx.appcompat.widget.AppCompatEditText;
import android.text.Editable;
import android.text.InputType;
import android.text.TextUtils;
diff --git a/src/com/android/deskclock/ThemeUtils.java b/src/com/android/deskclock/ThemeUtils.java
index 08ee012..a6d3156 100644
--- a/src/com/android/deskclock/ThemeUtils.java
+++ b/src/com/android/deskclock/ThemeUtils.java
@@ -21,8 +21,8 @@
import android.content.res.TypedArray;
import android.graphics.Color;
import android.graphics.drawable.Drawable;
-import android.support.annotation.AttrRes;
-import android.support.annotation.ColorInt;
+import androidx.annotation.AttrRes;
+import androidx.annotation.ColorInt;
public final class ThemeUtils {
diff --git a/src/com/android/deskclock/Utils.java b/src/com/android/deskclock/Utils.java
index 6f09a43..0c9daf6 100644
--- a/src/com/android/deskclock/Utils.java
+++ b/src/com/android/deskclock/Utils.java
@@ -37,14 +37,14 @@
import android.os.Bundle;
import android.os.Looper;
import android.provider.Settings;
-import android.support.annotation.AnyRes;
-import android.support.annotation.DrawableRes;
-import android.support.annotation.StringRes;
-import android.support.graphics.drawable.VectorDrawableCompat;
-import android.support.v4.os.BuildCompat;
-import android.support.v4.view.AccessibilityDelegateCompat;
-import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat;
-import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat.AccessibilityActionCompat;
+import androidx.annotation.AnyRes;
+import androidx.annotation.DrawableRes;
+import androidx.annotation.StringRes;
+import androidx.vectordrawable.graphics.drawable.VectorDrawableCompat;
+import androidx.core.os.BuildCompat;
+import androidx.core.view.AccessibilityDelegateCompat;
+import androidx.core.view.accessibility.AccessibilityNodeInfoCompat;
+import androidx.core.view.accessibility.AccessibilityNodeInfoCompat.AccessibilityActionCompat;
import android.text.Spannable;
import android.text.SpannableString;
import android.text.TextUtils;
diff --git a/src/com/android/deskclock/VerticalViewPager.java b/src/com/android/deskclock/VerticalViewPager.java
index 027523f..da630ca 100644
--- a/src/com/android/deskclock/VerticalViewPager.java
+++ b/src/com/android/deskclock/VerticalViewPager.java
@@ -17,7 +17,7 @@
package com.android.deskclock;
import android.content.Context;
-import android.support.v4.view.ViewPager;
+import androidx.viewpager.widget.ViewPager;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.View;
diff --git a/src/com/android/deskclock/actionbarmenu/SearchMenuItemController.java b/src/com/android/deskclock/actionbarmenu/SearchMenuItemController.java
index 9e8eb6f..3777a47 100644
--- a/src/com/android/deskclock/actionbarmenu/SearchMenuItemController.java
+++ b/src/com/android/deskclock/actionbarmenu/SearchMenuItemController.java
@@ -18,8 +18,8 @@
import android.content.Context;
import android.os.Bundle;
-import android.support.v7.widget.SearchView;
-import android.support.v7.widget.SearchView.OnQueryTextListener;
+import androidx.appcompat.widget.SearchView;
+import androidx.appcompat.widget.SearchView.OnQueryTextListener;
import android.text.InputType;
import android.view.Menu;
import android.view.MenuItem;
diff --git a/src/com/android/deskclock/alarms/AlarmActivity.java b/src/com/android/deskclock/alarms/AlarmActivity.java
index a4321e4..88632c7 100644
--- a/src/com/android/deskclock/alarms/AlarmActivity.java
+++ b/src/com/android/deskclock/alarms/AlarmActivity.java
@@ -37,9 +37,9 @@
import android.os.Bundle;
import android.os.Handler;
import android.os.IBinder;
-import android.support.annotation.NonNull;
-import android.support.v4.graphics.ColorUtils;
-import android.support.v4.view.animation.PathInterpolatorCompat;
+import androidx.annotation.NonNull;
+import androidx.core.graphics.ColorUtils;
+import androidx.core.view.animation.PathInterpolatorCompat;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.View;
diff --git a/src/com/android/deskclock/alarms/AlarmNotifications.java b/src/com/android/deskclock/alarms/AlarmNotifications.java
index df711d2..3e2c7e3 100644
--- a/src/com/android/deskclock/alarms/AlarmNotifications.java
+++ b/src/com/android/deskclock/alarms/AlarmNotifications.java
@@ -25,9 +25,9 @@
import android.content.res.Resources;
import android.os.Build;
import android.service.notification.StatusBarNotification;
-import android.support.v4.app.NotificationCompat;
-import android.support.v4.app.NotificationManagerCompat;
-import android.support.v4.content.ContextCompat;
+import androidx.core.app.NotificationCompat;
+import androidx.core.app.NotificationManagerCompat;
+import androidx.core.content.ContextCompat;
import com.android.deskclock.AlarmClockFragment;
import com.android.deskclock.AlarmUtils;
diff --git a/src/com/android/deskclock/alarms/AlarmStateManager.java b/src/com/android/deskclock/alarms/AlarmStateManager.java
index f0a8db5..0f70a0f 100644
--- a/src/com/android/deskclock/alarms/AlarmStateManager.java
+++ b/src/com/android/deskclock/alarms/AlarmStateManager.java
@@ -28,7 +28,7 @@
import android.os.Handler;
import android.os.PowerManager;
import android.provider.Settings;
-import android.support.v4.app.NotificationManagerCompat;
+import androidx.core.app.NotificationManagerCompat;
import android.text.format.DateFormat;
import android.widget.Toast;
diff --git a/src/com/android/deskclock/alarms/AlarmUpdateHandler.java b/src/com/android/deskclock/alarms/AlarmUpdateHandler.java
index 2a25350..8f6fc5d 100644
--- a/src/com/android/deskclock/alarms/AlarmUpdateHandler.java
+++ b/src/com/android/deskclock/alarms/AlarmUpdateHandler.java
@@ -19,7 +19,7 @@
import android.content.ContentResolver;
import android.content.Context;
import android.os.AsyncTask;
-import android.support.design.widget.Snackbar;
+import com.google.android.material.snackbar.Snackbar;
import android.text.format.DateFormat;
import android.view.View;
import android.view.ViewGroup;
diff --git a/src/com/android/deskclock/alarms/TimePickerDialogFragment.java b/src/com/android/deskclock/alarms/TimePickerDialogFragment.java
index 5301529..33fc757 100644
--- a/src/com/android/deskclock/alarms/TimePickerDialogFragment.java
+++ b/src/com/android/deskclock/alarms/TimePickerDialogFragment.java
@@ -24,7 +24,7 @@
import android.content.Context;
import android.content.DialogInterface;
import android.os.Bundle;
-import android.support.v7.app.AlertDialog;
+import androidx.appcompat.app.AlertDialog;
import android.text.format.DateFormat;
import android.widget.TimePicker;
diff --git a/src/com/android/deskclock/alarms/dataadapter/CollapsedAlarmViewHolder.java b/src/com/android/deskclock/alarms/dataadapter/CollapsedAlarmViewHolder.java
index dfbfc43..70ed1bb 100644
--- a/src/com/android/deskclock/alarms/dataadapter/CollapsedAlarmViewHolder.java
+++ b/src/com/android/deskclock/alarms/dataadapter/CollapsedAlarmViewHolder.java
@@ -22,7 +22,7 @@
import android.animation.ObjectAnimator;
import android.content.Context;
import android.graphics.Rect;
-import android.support.v7.widget.RecyclerView.ViewHolder;
+import androidx.recyclerview.widget.RecyclerView.ViewHolder;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
diff --git a/src/com/android/deskclock/alarms/dataadapter/ExpandedAlarmViewHolder.java b/src/com/android/deskclock/alarms/dataadapter/ExpandedAlarmViewHolder.java
index 21647c2..59a26e0 100644
--- a/src/com/android/deskclock/alarms/dataadapter/ExpandedAlarmViewHolder.java
+++ b/src/com/android/deskclock/alarms/dataadapter/ExpandedAlarmViewHolder.java
@@ -27,8 +27,8 @@
import android.graphics.drawable.Drawable;
import android.graphics.drawable.LayerDrawable;
import android.os.Vibrator;
-import android.support.v4.content.ContextCompat;
-import android.support.v7.widget.RecyclerView.ViewHolder;
+import androidx.core.content.ContextCompat;
+import androidx.recyclerview.widget.RecyclerView.ViewHolder;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
diff --git a/src/com/android/deskclock/controller/Controller.java b/src/com/android/deskclock/controller/Controller.java
index 26ada45..76f839a 100644
--- a/src/com/android/deskclock/controller/Controller.java
+++ b/src/com/android/deskclock/controller/Controller.java
@@ -18,7 +18,7 @@
import android.app.Activity;
import android.content.Context;
-import android.support.annotation.StringRes;
+import androidx.annotation.StringRes;
import com.android.deskclock.Utils;
import com.android.deskclock.events.EventTracker;
diff --git a/src/com/android/deskclock/controller/EventController.java b/src/com/android/deskclock/controller/EventController.java
index c746ba7..457756a 100644
--- a/src/com/android/deskclock/controller/EventController.java
+++ b/src/com/android/deskclock/controller/EventController.java
@@ -16,7 +16,7 @@
package com.android.deskclock.controller;
-import android.support.annotation.StringRes;
+import androidx.annotation.StringRes;
import com.android.deskclock.events.EventTracker;
diff --git a/src/com/android/deskclock/controller/ShortcutController.java b/src/com/android/deskclock/controller/ShortcutController.java
index 063989e..8eba32f 100644
--- a/src/com/android/deskclock/controller/ShortcutController.java
+++ b/src/com/android/deskclock/controller/ShortcutController.java
@@ -26,7 +26,7 @@
import android.os.Build;
import android.os.UserManager;
import android.provider.AlarmClock;
-import android.support.annotation.StringRes;
+import androidx.annotation.StringRes;
import com.android.deskclock.DeskClock;
import com.android.deskclock.HandleApiCalls;
diff --git a/src/com/android/deskclock/data/CityDAO.java b/src/com/android/deskclock/data/CityDAO.java
index 5b5789c..c75298a 100644
--- a/src/com/android/deskclock/data/CityDAO.java
+++ b/src/com/android/deskclock/data/CityDAO.java
@@ -20,7 +20,7 @@
import android.content.SharedPreferences;
import android.content.res.Resources;
import android.content.res.TypedArray;
-import android.support.annotation.VisibleForTesting;
+import androidx.annotation.VisibleForTesting;
import android.text.TextUtils;
import android.util.ArrayMap;
diff --git a/src/com/android/deskclock/data/CustomRingtone.java b/src/com/android/deskclock/data/CustomRingtone.java
index bd847c6..d243027 100644
--- a/src/com/android/deskclock/data/CustomRingtone.java
+++ b/src/com/android/deskclock/data/CustomRingtone.java
@@ -17,7 +17,7 @@
package com.android.deskclock.data;
import android.net.Uri;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
/**
* A read-only domain object representing a custom ringtone chosen from the file system.
diff --git a/src/com/android/deskclock/data/DataModel.java b/src/com/android/deskclock/data/DataModel.java
index eed209d..1b43232 100644
--- a/src/com/android/deskclock/data/DataModel.java
+++ b/src/com/android/deskclock/data/DataModel.java
@@ -24,7 +24,7 @@
import android.net.Uri;
import android.os.Handler;
import android.os.Looper;
-import android.support.annotation.StringRes;
+import androidx.annotation.StringRes;
import android.view.View;
import com.android.deskclock.Predicate;
diff --git a/src/com/android/deskclock/data/SettingsDAO.java b/src/com/android/deskclock/data/SettingsDAO.java
index 7e9408f..78e8e1a 100644
--- a/src/com/android/deskclock/data/SettingsDAO.java
+++ b/src/com/android/deskclock/data/SettingsDAO.java
@@ -21,7 +21,7 @@
import android.content.res.Resources;
import android.net.Uri;
import android.provider.Settings;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import android.text.format.DateUtils;
import com.android.deskclock.R;
diff --git a/src/com/android/deskclock/data/SilentSettingsModel.java b/src/com/android/deskclock/data/SilentSettingsModel.java
index 4e41dfe..b50702a 100644
--- a/src/com/android/deskclock/data/SilentSettingsModel.java
+++ b/src/com/android/deskclock/data/SilentSettingsModel.java
@@ -30,7 +30,7 @@
import android.os.AsyncTask;
import android.os.Build;
import android.os.Handler;
-import android.support.v4.app.NotificationManagerCompat;
+import androidx.core.app.NotificationManagerCompat;
import com.android.deskclock.Utils;
import com.android.deskclock.data.DataModel.SilentSetting;
diff --git a/src/com/android/deskclock/data/StopwatchModel.java b/src/com/android/deskclock/data/StopwatchModel.java
index 7d1e4ec..3d4bc60 100644
--- a/src/com/android/deskclock/data/StopwatchModel.java
+++ b/src/com/android/deskclock/data/StopwatchModel.java
@@ -22,8 +22,8 @@
import android.content.Intent;
import android.content.IntentFilter;
import android.content.SharedPreferences;
-import android.support.annotation.VisibleForTesting;
-import android.support.v4.app.NotificationManagerCompat;
+import androidx.annotation.VisibleForTesting;
+import androidx.core.app.NotificationManagerCompat;
import java.util.ArrayList;
import java.util.Collections;
diff --git a/src/com/android/deskclock/data/StopwatchNotificationBuilder.java b/src/com/android/deskclock/data/StopwatchNotificationBuilder.java
index 6e62f06..4ca8c7b 100644
--- a/src/com/android/deskclock/data/StopwatchNotificationBuilder.java
+++ b/src/com/android/deskclock/data/StopwatchNotificationBuilder.java
@@ -22,12 +22,12 @@
import android.content.Intent;
import android.content.res.Resources;
import android.os.SystemClock;
-import android.support.annotation.DrawableRes;
-import android.support.annotation.StringRes;
-import android.support.v4.app.NotificationCompat;
-import android.support.v4.app.NotificationCompat.Action;
-import android.support.v4.app.NotificationCompat.Builder;
-import android.support.v4.content.ContextCompat;
+import androidx.annotation.DrawableRes;
+import androidx.annotation.StringRes;
+import androidx.core.app.NotificationCompat;
+import androidx.core.app.NotificationCompat.Action;
+import androidx.core.app.NotificationCompat.Builder;
+import androidx.core.content.ContextCompat;
import android.widget.RemoteViews;
import com.android.deskclock.R;
diff --git a/src/com/android/deskclock/data/TimerModel.java b/src/com/android/deskclock/data/TimerModel.java
index 241cf76..d24a5a6 100644
--- a/src/com/android/deskclock/data/TimerModel.java
+++ b/src/com/android/deskclock/data/TimerModel.java
@@ -28,8 +28,8 @@
import android.content.SharedPreferences;
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
import android.net.Uri;
-import android.support.annotation.StringRes;
-import android.support.v4.app.NotificationManagerCompat;
+import androidx.annotation.StringRes;
+import androidx.core.app.NotificationManagerCompat;
import android.util.ArraySet;
import com.android.deskclock.AlarmAlertWakeLock;
diff --git a/src/com/android/deskclock/data/TimerNotificationBuilder.java b/src/com/android/deskclock/data/TimerNotificationBuilder.java
index 2119869..4d93053 100644
--- a/src/com/android/deskclock/data/TimerNotificationBuilder.java
+++ b/src/com/android/deskclock/data/TimerNotificationBuilder.java
@@ -25,9 +25,9 @@
import android.content.res.Resources;
import android.os.Build;
import android.os.SystemClock;
-import android.support.annotation.DrawableRes;
-import android.support.v4.app.NotificationCompat;
-import android.support.v4.content.ContextCompat;
+import androidx.annotation.DrawableRes;
+import androidx.core.app.NotificationCompat;
+import androidx.core.content.ContextCompat;
import android.text.TextUtils;
import android.widget.RemoteViews;
@@ -41,8 +41,8 @@
import java.util.ArrayList;
import java.util.List;
-import static android.support.v4.app.NotificationCompat.Action;
-import static android.support.v4.app.NotificationCompat.Builder;
+import static androidx.core.app.NotificationCompat.Action;
+import static androidx.core.app.NotificationCompat.Builder;
import static android.text.format.DateUtils.MINUTE_IN_MILLIS;
import static android.text.format.DateUtils.SECOND_IN_MILLIS;
diff --git a/src/com/android/deskclock/data/TimerStringFormatter.java b/src/com/android/deskclock/data/TimerStringFormatter.java
index cbdc780..6ce6881 100644
--- a/src/com/android/deskclock/data/TimerStringFormatter.java
+++ b/src/com/android/deskclock/data/TimerStringFormatter.java
@@ -17,7 +17,7 @@
package com.android.deskclock.data;
import android.content.Context;
-import android.support.annotation.StringRes;
+import androidx.annotation.StringRes;
import com.android.deskclock.R;
import com.android.deskclock.Utils;
diff --git a/src/com/android/deskclock/data/Weekdays.java b/src/com/android/deskclock/data/Weekdays.java
index 9f4f64a..b5ba73b 100644
--- a/src/com/android/deskclock/data/Weekdays.java
+++ b/src/com/android/deskclock/data/Weekdays.java
@@ -17,7 +17,7 @@
package com.android.deskclock.data;
import android.content.Context;
-import android.support.annotation.VisibleForTesting;
+import androidx.annotation.VisibleForTesting;
import android.util.ArrayMap;
import com.android.deskclock.R;
diff --git a/src/com/android/deskclock/data/WidgetModel.java b/src/com/android/deskclock/data/WidgetModel.java
index 27fdd2e..e05b8ff 100644
--- a/src/com/android/deskclock/data/WidgetModel.java
+++ b/src/com/android/deskclock/data/WidgetModel.java
@@ -17,7 +17,7 @@
package com.android.deskclock.data;
import android.content.SharedPreferences;
-import android.support.annotation.StringRes;
+import androidx.annotation.StringRes;
import com.android.deskclock.R;
import com.android.deskclock.events.Events;
diff --git a/src/com/android/deskclock/events/EventTracker.java b/src/com/android/deskclock/events/EventTracker.java
index d7b30c0..e92d657 100644
--- a/src/com/android/deskclock/events/EventTracker.java
+++ b/src/com/android/deskclock/events/EventTracker.java
@@ -16,7 +16,7 @@
package com.android.deskclock.events;
-import android.support.annotation.StringRes;
+import androidx.annotation.StringRes;
public interface EventTracker {
/**
diff --git a/src/com/android/deskclock/events/Events.java b/src/com/android/deskclock/events/Events.java
index 01e7701..5e5129c 100644
--- a/src/com/android/deskclock/events/Events.java
+++ b/src/com/android/deskclock/events/Events.java
@@ -16,7 +16,7 @@
package com.android.deskclock.events;
-import android.support.annotation.StringRes;
+import androidx.annotation.StringRes;
import com.android.deskclock.R;
import com.android.deskclock.controller.Controller;
diff --git a/src/com/android/deskclock/events/LogEventTracker.java b/src/com/android/deskclock/events/LogEventTracker.java
index 70dfc9b..870f8a3 100644
--- a/src/com/android/deskclock/events/LogEventTracker.java
+++ b/src/com/android/deskclock/events/LogEventTracker.java
@@ -16,7 +16,7 @@
package com.android.deskclock.events;
import android.content.Context;
-import android.support.annotation.StringRes;
+import androidx.annotation.StringRes;
import com.android.deskclock.LogUtils;
diff --git a/src/com/android/deskclock/events/ShortcutEventTracker.java b/src/com/android/deskclock/events/ShortcutEventTracker.java
index c56a925..4b956ce 100644
--- a/src/com/android/deskclock/events/ShortcutEventTracker.java
+++ b/src/com/android/deskclock/events/ShortcutEventTracker.java
@@ -20,7 +20,7 @@
import android.content.Context;
import android.content.pm.ShortcutManager;
import android.os.Build;
-import android.support.annotation.StringRes;
+import androidx.annotation.StringRes;
import android.util.ArraySet;
import com.android.deskclock.R;
diff --git a/src/com/android/deskclock/provider/ClockProvider.java b/src/com/android/deskclock/provider/ClockProvider.java
index 51be7e8..83480f3 100644
--- a/src/com/android/deskclock/provider/ClockProvider.java
+++ b/src/com/android/deskclock/provider/ClockProvider.java
@@ -28,7 +28,7 @@
import android.database.sqlite.SQLiteQueryBuilder;
import android.net.Uri;
import android.os.Build;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import android.text.TextUtils;
import android.util.ArrayMap;
diff --git a/src/com/android/deskclock/ringtone/AddCustomRingtoneHolder.java b/src/com/android/deskclock/ringtone/AddCustomRingtoneHolder.java
index 4b3ecab..ff37551 100644
--- a/src/com/android/deskclock/ringtone/AddCustomRingtoneHolder.java
+++ b/src/com/android/deskclock/ringtone/AddCustomRingtoneHolder.java
@@ -20,7 +20,7 @@
import com.android.deskclock.ItemAdapter;
-import static android.support.v7.widget.RecyclerView.NO_ID;
+import static androidx.recyclerview.widget.RecyclerView.NO_ID;
final class AddCustomRingtoneHolder extends ItemAdapter.ItemHolder<Uri> {
diff --git a/src/com/android/deskclock/ringtone/HeaderHolder.java b/src/com/android/deskclock/ringtone/HeaderHolder.java
index 5620842..4c52efe 100644
--- a/src/com/android/deskclock/ringtone/HeaderHolder.java
+++ b/src/com/android/deskclock/ringtone/HeaderHolder.java
@@ -17,11 +17,11 @@
package com.android.deskclock.ringtone;
import android.net.Uri;
-import android.support.annotation.StringRes;
+import androidx.annotation.StringRes;
import com.android.deskclock.ItemAdapter;
-import static android.support.v7.widget.RecyclerView.NO_ID;
+import static androidx.recyclerview.widget.RecyclerView.NO_ID;
final class HeaderHolder extends ItemAdapter.ItemHolder<Uri> {
diff --git a/src/com/android/deskclock/ringtone/RingtoneHolder.java b/src/com/android/deskclock/ringtone/RingtoneHolder.java
index 5873a83..37c52b6 100644
--- a/src/com/android/deskclock/ringtone/RingtoneHolder.java
+++ b/src/com/android/deskclock/ringtone/RingtoneHolder.java
@@ -22,7 +22,7 @@
import com.android.deskclock.Utils;
import com.android.deskclock.data.DataModel;
-import static android.support.v7.widget.RecyclerView.NO_ID;
+import static androidx.recyclerview.widget.RecyclerView.NO_ID;
abstract class RingtoneHolder extends ItemAdapter.ItemHolder<Uri> {
diff --git a/src/com/android/deskclock/ringtone/RingtonePickerActivity.java b/src/com/android/deskclock/ringtone/RingtonePickerActivity.java
index 46d1e2a..40ddb04 100644
--- a/src/com/android/deskclock/ringtone/RingtonePickerActivity.java
+++ b/src/com/android/deskclock/ringtone/RingtonePickerActivity.java
@@ -32,10 +32,10 @@
import android.os.AsyncTask;
import android.os.Bundle;
import android.provider.MediaStore;
-import android.support.annotation.VisibleForTesting;
-import android.support.v7.app.AlertDialog;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.VisibleForTesting;
+import androidx.appcompat.app.AlertDialog;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
diff --git a/src/com/android/deskclock/ringtone/RingtoneViewHolder.java b/src/com/android/deskclock/ringtone/RingtoneViewHolder.java
index 396b41d..3e0a0b8 100644
--- a/src/com/android/deskclock/ringtone/RingtoneViewHolder.java
+++ b/src/com/android/deskclock/ringtone/RingtoneViewHolder.java
@@ -17,7 +17,7 @@
package com.android.deskclock.ringtone;
import android.graphics.PorterDuff;
-import android.support.v4.content.ContextCompat;
+import androidx.core.content.ContextCompat;
import android.view.ContextMenu;
import android.view.LayoutInflater;
import android.view.Menu;
diff --git a/src/com/android/deskclock/settings/AlarmVolumePreference.java b/src/com/android/deskclock/settings/AlarmVolumePreference.java
index 9cb04c2..b1eb8ce 100644
--- a/src/com/android/deskclock/settings/AlarmVolumePreference.java
+++ b/src/com/android/deskclock/settings/AlarmVolumePreference.java
@@ -23,8 +23,8 @@
import android.media.AudioManager;
import android.os.Build;
import android.provider.Settings;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceViewHolder;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceViewHolder;
import android.util.AttributeSet;
import android.view.View;
import android.widget.ImageView;
diff --git a/src/com/android/deskclock/settings/ScreensaverSettingsActivity.java b/src/com/android/deskclock/settings/ScreensaverSettingsActivity.java
index 3b2b766..edc0554 100644
--- a/src/com/android/deskclock/settings/ScreensaverSettingsActivity.java
+++ b/src/com/android/deskclock/settings/ScreensaverSettingsActivity.java
@@ -22,7 +22,7 @@
import android.preference.ListPreference;
import android.preference.Preference;
import android.preference.PreferenceFragment;
-import android.support.v7.app.AppCompatActivity;
+import androidx.appcompat.app.AppCompatActivity;
import android.view.MenuItem;
import com.android.deskclock.R;
diff --git a/src/com/android/deskclock/settings/SettingsActivity.java b/src/com/android/deskclock/settings/SettingsActivity.java
index 59a7b73..dcb5707 100644
--- a/src/com/android/deskclock/settings/SettingsActivity.java
+++ b/src/com/android/deskclock/settings/SettingsActivity.java
@@ -21,12 +21,12 @@
import android.os.Bundle;
import android.os.Vibrator;
import android.provider.Settings;
-import android.support.v7.preference.ListPreference;
-import android.support.v7.preference.ListPreferenceDialogFragmentCompat;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceDialogFragmentCompat;
-import android.support.v7.preference.PreferenceFragmentCompat;
-import android.support.v7.preference.TwoStatePreference;
+import androidx.preference.ListPreference;
+import androidx.preference.ListPreferenceDialogFragmentCompat;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceDialogFragmentCompat;
+import androidx.preference.PreferenceFragmentCompat;
+import androidx.preference.TwoStatePreference;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
diff --git a/src/com/android/deskclock/settings/SimpleMenuPreference.java b/src/com/android/deskclock/settings/SimpleMenuPreference.java
index fa04ef7..579ad57 100644
--- a/src/com/android/deskclock/settings/SimpleMenuPreference.java
+++ b/src/com/android/deskclock/settings/SimpleMenuPreference.java
@@ -17,9 +17,9 @@
package com.android.deskclock.settings;
import android.content.Context;
-import android.support.annotation.NonNull;
-import android.support.v4.content.ContextCompat;
-import android.support.v7.preference.DropDownPreference;
+import androidx.annotation.NonNull;
+import androidx.core.content.ContextCompat;
+import androidx.preference.DropDownPreference;
import android.util.AttributeSet;
import android.view.View;
import android.view.ViewGroup;
diff --git a/src/com/android/deskclock/stopwatch/LapsAdapter.java b/src/com/android/deskclock/stopwatch/LapsAdapter.java
index cb755ff..e3afaf2 100644
--- a/src/com/android/deskclock/stopwatch/LapsAdapter.java
+++ b/src/com/android/deskclock/stopwatch/LapsAdapter.java
@@ -17,8 +17,8 @@
package com.android.deskclock.stopwatch;
import android.content.Context;
-import android.support.annotation.VisibleForTesting;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.VisibleForTesting;
+import androidx.recyclerview.widget.RecyclerView;
import android.text.format.DateUtils;
import android.view.LayoutInflater;
import android.view.View;
diff --git a/src/com/android/deskclock/stopwatch/StopwatchFragment.java b/src/com/android/deskclock/stopwatch/StopwatchFragment.java
index 0026b06..fe91b37 100644
--- a/src/com/android/deskclock/stopwatch/StopwatchFragment.java
+++ b/src/com/android/deskclock/stopwatch/StopwatchFragment.java
@@ -26,12 +26,12 @@
import android.graphics.Canvas;
import android.graphics.drawable.GradientDrawable;
import android.os.Bundle;
-import android.support.annotation.ColorInt;
-import android.support.annotation.NonNull;
-import android.support.v4.graphics.ColorUtils;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
-import android.support.v7.widget.SimpleItemAnimator;
+import androidx.annotation.ColorInt;
+import androidx.annotation.NonNull;
+import androidx.core.graphics.ColorUtils;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+import androidx.recyclerview.widget.SimpleItemAnimator;
import android.transition.TransitionManager;
import android.view.LayoutInflater;
import android.view.MotionEvent;
diff --git a/src/com/android/deskclock/timer/ExpiredTimersActivity.java b/src/com/android/deskclock/timer/ExpiredTimersActivity.java
index 2f9c260..30ed121 100644
--- a/src/com/android/deskclock/timer/ExpiredTimersActivity.java
+++ b/src/com/android/deskclock/timer/ExpiredTimersActivity.java
@@ -18,7 +18,7 @@
import android.content.pm.ActivityInfo;
import android.os.Bundle;
import android.os.SystemClock;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import android.text.TextUtils;
import android.transition.AutoTransition;
import android.transition.TransitionManager;
diff --git a/src/com/android/deskclock/timer/TimerFragment.java b/src/com/android/deskclock/timer/TimerFragment.java
index d29dca1..8b30105 100644
--- a/src/com/android/deskclock/timer/TimerFragment.java
+++ b/src/com/android/deskclock/timer/TimerFragment.java
@@ -24,9 +24,9 @@
import android.content.Intent;
import android.os.Bundle;
import android.os.SystemClock;
-import android.support.annotation.NonNull;
-import android.support.annotation.VisibleForTesting;
-import android.support.v4.view.ViewPager;
+import androidx.annotation.NonNull;
+import androidx.annotation.VisibleForTesting;
+import androidx.viewpager.widget.ViewPager;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.View;
diff --git a/src/com/android/deskclock/timer/TimerItem.java b/src/com/android/deskclock/timer/TimerItem.java
index 0d5fb79..d122d77 100644
--- a/src/com/android/deskclock/timer/TimerItem.java
+++ b/src/com/android/deskclock/timer/TimerItem.java
@@ -19,7 +19,7 @@
import android.content.Context;
import android.content.res.ColorStateList;
import android.os.SystemClock;
-import android.support.v4.view.ViewCompat;
+import androidx.core.view.ViewCompat;
import android.text.TextUtils;
import android.util.AttributeSet;
import android.widget.Button;
diff --git a/src/com/android/deskclock/timer/TimerPagerAdapter.java b/src/com/android/deskclock/timer/TimerPagerAdapter.java
index c4892df..5255f16 100644
--- a/src/com/android/deskclock/timer/TimerPagerAdapter.java
+++ b/src/com/android/deskclock/timer/TimerPagerAdapter.java
@@ -20,8 +20,8 @@
import android.app.Fragment;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
-import android.support.v13.app.FragmentCompat;
-import android.support.v4.view.PagerAdapter;
+import androidx.legacy.app.FragmentCompat;
+import androidx.viewpager.widget.PagerAdapter;
import android.util.ArrayMap;
import android.view.View;
import android.view.ViewGroup;
diff --git a/src/com/android/deskclock/timer/TimerSetupView.java b/src/com/android/deskclock/timer/TimerSetupView.java
index 5dd624e..557a7d6 100644
--- a/src/com/android/deskclock/timer/TimerSetupView.java
+++ b/src/com/android/deskclock/timer/TimerSetupView.java
@@ -20,8 +20,8 @@
import android.content.res.ColorStateList;
import android.content.res.Resources;
import android.graphics.PorterDuff;
-import android.support.annotation.IdRes;
-import android.support.v4.view.ViewCompat;
+import androidx.annotation.IdRes;
+import androidx.core.view.ViewCompat;
import android.text.BidiFormatter;
import android.text.TextUtils;
import android.text.format.DateUtils;
diff --git a/src/com/android/deskclock/uidata/PeriodicCallbackModel.java b/src/com/android/deskclock/uidata/PeriodicCallbackModel.java
index de4595c..4b522d1 100644
--- a/src/com/android/deskclock/uidata/PeriodicCallbackModel.java
+++ b/src/com/android/deskclock/uidata/PeriodicCallbackModel.java
@@ -21,7 +21,7 @@
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Handler;
-import android.support.annotation.VisibleForTesting;
+import androidx.annotation.VisibleForTesting;
import com.android.deskclock.LogUtils;
diff --git a/src/com/android/deskclock/uidata/UiDataModel.java b/src/com/android/deskclock/uidata/UiDataModel.java
index 4ff7e20..f7a6917 100644
--- a/src/com/android/deskclock/uidata/UiDataModel.java
+++ b/src/com/android/deskclock/uidata/UiDataModel.java
@@ -19,8 +19,8 @@
import android.content.Context;
import android.content.SharedPreferences;
import android.graphics.Typeface;
-import android.support.annotation.DrawableRes;
-import android.support.annotation.StringRes;
+import androidx.annotation.DrawableRes;
+import androidx.annotation.StringRes;
import com.android.deskclock.AlarmClockFragment;
import com.android.deskclock.ClockFragment;
diff --git a/src/com/android/deskclock/widget/AutoSizingTextView.java b/src/com/android/deskclock/widget/AutoSizingTextView.java
index cc3303a..7e41997 100644
--- a/src/com/android/deskclock/widget/AutoSizingTextView.java
+++ b/src/com/android/deskclock/widget/AutoSizingTextView.java
@@ -17,7 +17,7 @@
package com.android.deskclock.widget;
import android.content.Context;
-import android.support.v7.widget.AppCompatTextView;
+import androidx.appcompat.widget.AppCompatTextView;
import android.util.AttributeSet;
/**
diff --git a/src/com/android/deskclock/widget/TextTime.java b/src/com/android/deskclock/widget/TextTime.java
index e07c40f..3e93124 100644
--- a/src/com/android/deskclock/widget/TextTime.java
+++ b/src/com/android/deskclock/widget/TextTime.java
@@ -22,7 +22,7 @@
import android.net.Uri;
import android.os.Handler;
import android.provider.Settings;
-import android.support.annotation.VisibleForTesting;
+import androidx.annotation.VisibleForTesting;
import android.text.format.DateFormat;
import android.util.AttributeSet;
import android.widget.TextView;
diff --git a/src/com/android/deskclock/widget/selector/AlarmSelectionAdapter.java b/src/com/android/deskclock/widget/selector/AlarmSelectionAdapter.java
index c781e46..1361e72 100644
--- a/src/com/android/deskclock/widget/selector/AlarmSelectionAdapter.java
+++ b/src/com/android/deskclock/widget/selector/AlarmSelectionAdapter.java
@@ -16,8 +16,8 @@
package com.android.deskclock.widget.selector;
import android.content.Context;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
diff --git a/src/com/android/deskclock/widget/toast/SnackbarManager.java b/src/com/android/deskclock/widget/toast/SnackbarManager.java
index a3e65c6..95d91b2 100644
--- a/src/com/android/deskclock/widget/toast/SnackbarManager.java
+++ b/src/com/android/deskclock/widget/toast/SnackbarManager.java
@@ -16,7 +16,7 @@
package com.android.deskclock.widget.toast;
-import android.support.design.widget.Snackbar;
+import com.google.android.material.snackbar.Snackbar;
import java.lang.ref.WeakReference;
diff --git a/src/com/android/deskclock/widget/toast/SnackbarSlidingBehavior.java b/src/com/android/deskclock/widget/toast/SnackbarSlidingBehavior.java
index 3685bfe..84cbcff 100644
--- a/src/com/android/deskclock/widget/toast/SnackbarSlidingBehavior.java
+++ b/src/com/android/deskclock/widget/toast/SnackbarSlidingBehavior.java
@@ -17,9 +17,9 @@
package com.android.deskclock.widget.toast;
import android.content.Context;
-import android.support.annotation.Keep;
-import android.support.design.widget.CoordinatorLayout;
-import android.support.design.widget.Snackbar;
+import androidx.annotation.Keep;
+import androidx.coordinatorlayout.widget.CoordinatorLayout;
+import com.google.android.material.snackbar.Snackbar;
import android.util.AttributeSet;
import android.view.View;
diff --git a/src/com/android/deskclock/worldclock/CitySelectionActivity.java b/src/com/android/deskclock/worldclock/CitySelectionActivity.java
index 7229113..d8954d0 100644
--- a/src/com/android/deskclock/worldclock/CitySelectionActivity.java
+++ b/src/com/android/deskclock/worldclock/CitySelectionActivity.java
@@ -18,7 +18,7 @@
import android.content.Context;
import android.os.Bundle;
-import android.support.v7.widget.SearchView;
+import androidx.appcompat.widget.SearchView;
import android.text.TextUtils;
import android.text.format.DateFormat;
import android.util.ArraySet;