diff --git a/app/build.gradle b/app/build.gradle
index dafde2cf6..7ad953ca8 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -27,7 +27,7 @@ android {
versionCode 1010000
versionName getVersionName()
- testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
+ testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
minSdkVersion 14
targetSdkVersion 25
/*
@@ -135,17 +135,17 @@ android {
}
dependencies {
- implementation 'com.android.support:support-v4:28.0.0'
- implementation 'com.android.support:appcompat-v7:28.0.0'
- implementation 'com.android.support:gridlayout-v7:28.0.0'
- implementation 'com.android.support:support-annotations:28.0.0'
- implementation 'com.android.support:recyclerview-v7:28.0.0'
- implementation 'com.android.support:cardview-v7:28.0.0'
- implementation 'com.android.support:design:28.0.0'
- implementation 'com.android.support:support-vector-drawable:28.0.0'
- implementation 'com.android.support.constraint:constraint-layout:1.1.3'
- implementation 'com.android.support:palette-v7:28.0.0'
- implementation 'com.android.support:preference-v14:28.0.0'
+ implementation 'androidx.legacy:legacy-support-v4:1.0.0'
+ implementation 'androidx.appcompat:appcompat:1.0.0'
+ implementation 'androidx.gridlayout:gridlayout:1.0.0'
+ implementation 'androidx.annotation:annotation:1.0.0'
+ implementation 'androidx.recyclerview:recyclerview:1.0.0'
+ implementation 'androidx.cardview:cardview:1.0.0'
+ implementation 'com.google.android.material:material:1.0.0'
+ implementation 'androidx.vectordrawable:vectordrawable:1.0.0'
+ implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
+ implementation 'androidx.palette:palette:1.0.0'
+ implementation 'androidx.legacy:legacy-preference-v14:1.0.0'
implementation 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'
implementation 'com.google.zxing:core:3.3.3'
@@ -169,17 +169,17 @@ dependencies {
fullImplementation 'org.nanohttpd:nanohttpd:2.3.1'
testImplementation 'org.robolectric:robolectric:3.8'
- testImplementation "com.android.support.test:monitor:1.0.2"
+ testImplementation 'androidx.test:monitor:1.1.1'
testImplementation 'org.bouncycastle:bcprov-jdk15on:1.60'
testImplementation 'junit:junit:4.13'
testImplementation 'org.hamcrest:hamcrest:2.2'
testImplementation 'org.mockito:mockito-core:2.7.22'
- androidTestImplementation 'com.android.support:support-annotations:27.1.1'
- androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
- androidTestImplementation 'com.android.support.test:runner:1.0.2'
- androidTestImplementation 'com.android.support.test:rules:1.0.2'
- androidTestImplementation 'com.android.support.test.uiautomator:uiautomator-v18:2.1.3'
+ androidTestImplementation 'androidx.annotation:annotation:1.0.0'
+ androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0'
+ androidTestImplementation 'androidx.test.ext:junit:1.1.1'
+ androidTestImplementation 'androidx.test:rules:1.1.1'
+ androidTestImplementation 'androidx.test.uiautomator:uiautomator:2.2.0'
}
checkstyle {
diff --git a/app/src/androidTest/java/org/fdroid/fdroid/AssetUtils.java b/app/src/androidTest/java/org/fdroid/fdroid/AssetUtils.java
index 6d5265dfb..65a299b7d 100644
--- a/app/src/androidTest/java/org/fdroid/fdroid/AssetUtils.java
+++ b/app/src/androidTest/java/org/fdroid/fdroid/AssetUtils.java
@@ -1,7 +1,7 @@
package org.fdroid.fdroid;
import android.content.Context;
-import android.support.annotation.Nullable;
+import androidx.annotation.Nullable;
import android.util.Log;
import java.io.File;
diff --git a/app/src/androidTest/java/org/fdroid/fdroid/CleanCacheServiceTest.java b/app/src/androidTest/java/org/fdroid/fdroid/CleanCacheServiceTest.java
index 45ae00550..7178bd34a 100644
--- a/app/src/androidTest/java/org/fdroid/fdroid/CleanCacheServiceTest.java
+++ b/app/src/androidTest/java/org/fdroid/fdroid/CleanCacheServiceTest.java
@@ -1,8 +1,8 @@
package org.fdroid.fdroid;
import android.app.Instrumentation;
-import android.support.test.InstrumentationRegistry;
-import android.support.test.runner.AndroidJUnit4;
+import androidx.test.platform.app.InstrumentationRegistry;
+import androidx.test.ext.junit.runners.AndroidJUnit4;
import org.apache.commons.io.FileUtils;
import org.fdroid.fdroid.compat.FileCompatTest;
diff --git a/app/src/androidTest/java/org/fdroid/fdroid/LocalizationTest.java b/app/src/androidTest/java/org/fdroid/fdroid/LocalizationTest.java
index 6a4ccf187..442d9c3b2 100644
--- a/app/src/androidTest/java/org/fdroid/fdroid/LocalizationTest.java
+++ b/app/src/androidTest/java/org/fdroid/fdroid/LocalizationTest.java
@@ -5,8 +5,8 @@ import android.content.Context;
import android.content.res.AssetManager;
import android.content.res.Configuration;
import android.content.res.Resources;
-import android.support.test.InstrumentationRegistry;
-import android.support.test.runner.AndroidJUnit4;
+import androidx.test.platform.app.InstrumentationRegistry;
+import androidx.test.ext.junit.runners.AndroidJUnit4;
import android.text.TextUtils;
import android.util.DisplayMetrics;
import android.util.Log;
diff --git a/app/src/androidTest/java/org/fdroid/fdroid/MainActivityEspressoTest.java b/app/src/androidTest/java/org/fdroid/fdroid/MainActivityEspressoTest.java
index ab330b888..0b7341d13 100644
--- a/app/src/androidTest/java/org/fdroid/fdroid/MainActivityEspressoTest.java
+++ b/app/src/androidTest/java/org/fdroid/fdroid/MainActivityEspressoTest.java
@@ -5,17 +5,17 @@ import android.app.ActivityManager;
import android.app.Instrumentation;
import android.content.Context;
import android.os.Build;
-import android.support.test.InstrumentationRegistry;
-import android.support.test.espresso.IdlingPolicies;
-import android.support.test.espresso.ViewInteraction;
-import android.support.test.filters.LargeTest;
-import android.support.test.rule.ActivityTestRule;
-import android.support.test.rule.GrantPermissionRule;
-import android.support.test.runner.AndroidJUnit4;
-import android.support.test.uiautomator.UiDevice;
-import android.support.test.uiautomator.UiObject;
-import android.support.test.uiautomator.UiObjectNotFoundException;
-import android.support.test.uiautomator.UiSelector;
+import androidx.test.platform.app.InstrumentationRegistry;
+import androidx.test.espresso.IdlingPolicies;
+import androidx.test.espresso.ViewInteraction;
+import androidx.test.filters.LargeTest;
+import androidx.test.rule.ActivityTestRule;
+import androidx.test.rule.GrantPermissionRule;
+import androidx.test.ext.junit.runners.AndroidJUnit4;
+import androidx.test.uiautomator.UiDevice;
+import androidx.test.uiautomator.UiObject;
+import androidx.test.uiautomator.UiObjectNotFoundException;
+import androidx.test.uiautomator.UiSelector;
import android.util.Log;
import android.view.View;
import org.fdroid.fdroid.views.BannerUpdatingRepos;
@@ -32,19 +32,19 @@ import org.junit.runner.RunWith;
import java.io.IOException;
import java.util.concurrent.TimeUnit;
-import static android.support.test.espresso.Espresso.onView;
-import static android.support.test.espresso.action.ViewActions.click;
-import static android.support.test.espresso.action.ViewActions.swipeDown;
-import static android.support.test.espresso.action.ViewActions.swipeLeft;
-import static android.support.test.espresso.action.ViewActions.swipeRight;
-import static android.support.test.espresso.action.ViewActions.swipeUp;
-import static android.support.test.espresso.action.ViewActions.typeText;
-import static android.support.test.espresso.assertion.ViewAssertions.doesNotExist;
-import static android.support.test.espresso.assertion.ViewAssertions.matches;
-import static android.support.test.espresso.matcher.ViewMatchers.isDisplayed;
-import static android.support.test.espresso.matcher.ViewMatchers.withContentDescription;
-import static android.support.test.espresso.matcher.ViewMatchers.withId;
-import static android.support.test.espresso.matcher.ViewMatchers.withText;
+import static androidx.test.espresso.Espresso.onView;
+import static androidx.test.espresso.action.ViewActions.click;
+import static androidx.test.espresso.action.ViewActions.swipeDown;
+import static androidx.test.espresso.action.ViewActions.swipeLeft;
+import static androidx.test.espresso.action.ViewActions.swipeRight;
+import static androidx.test.espresso.action.ViewActions.swipeUp;
+import static androidx.test.espresso.action.ViewActions.typeText;
+import static androidx.test.espresso.assertion.ViewAssertions.doesNotExist;
+import static androidx.test.espresso.assertion.ViewAssertions.matches;
+import static androidx.test.espresso.matcher.ViewMatchers.isDisplayed;
+import static androidx.test.espresso.matcher.ViewMatchers.withContentDescription;
+import static androidx.test.espresso.matcher.ViewMatchers.withId;
+import static androidx.test.espresso.matcher.ViewMatchers.withText;
import static org.hamcrest.Matchers.allOf;
import static org.hamcrest.Matchers.not;
import static org.junit.Assert.assertTrue;
diff --git a/app/src/androidTest/java/org/fdroid/fdroid/UiWatchers.java b/app/src/androidTest/java/org/fdroid/fdroid/UiWatchers.java
index 46d933b3c..0109a4097 100644
--- a/app/src/androidTest/java/org/fdroid/fdroid/UiWatchers.java
+++ b/app/src/androidTest/java/org/fdroid/fdroid/UiWatchers.java
@@ -16,11 +16,11 @@
package org.fdroid.fdroid;
-import android.support.test.uiautomator.UiDevice;
-import android.support.test.uiautomator.UiObject;
-import android.support.test.uiautomator.UiObjectNotFoundException;
-import android.support.test.uiautomator.UiSelector;
-import android.support.test.uiautomator.UiWatcher;
+import androidx.test.uiautomator.UiDevice;
+import androidx.test.uiautomator.UiObject;
+import androidx.test.uiautomator.UiObjectNotFoundException;
+import androidx.test.uiautomator.UiSelector;
+import androidx.test.uiautomator.UiWatcher;
import android.util.Log;
import java.util.ArrayList;
diff --git a/app/src/androidTest/java/org/fdroid/fdroid/compat/FileCompatTest.java b/app/src/androidTest/java/org/fdroid/fdroid/compat/FileCompatTest.java
index e56971a15..93e42bbe4 100644
--- a/app/src/androidTest/java/org/fdroid/fdroid/compat/FileCompatTest.java
+++ b/app/src/androidTest/java/org/fdroid/fdroid/compat/FileCompatTest.java
@@ -4,8 +4,8 @@ import android.app.Instrumentation;
import android.content.Context;
import android.os.Build;
import android.os.Environment;
-import android.support.test.InstrumentationRegistry;
-import android.support.test.runner.AndroidJUnit4;
+import androidx.test.platform.app.InstrumentationRegistry;
+import androidx.test.ext.junit.runners.AndroidJUnit4;
import android.util.Log;
import org.fdroid.fdroid.AssetUtils;
diff --git a/app/src/androidTest/java/org/fdroid/fdroid/installer/ApkVerifierTest.java b/app/src/androidTest/java/org/fdroid/fdroid/installer/ApkVerifierTest.java
index cf8f267f7..d40cce4a9 100644
--- a/app/src/androidTest/java/org/fdroid/fdroid/installer/ApkVerifierTest.java
+++ b/app/src/androidTest/java/org/fdroid/fdroid/installer/ApkVerifierTest.java
@@ -22,9 +22,9 @@ package org.fdroid.fdroid.installer;
import android.app.Instrumentation;
import android.net.Uri;
import android.os.Build;
-import android.support.annotation.NonNull;
-import android.support.test.InstrumentationRegistry;
-import android.support.test.runner.AndroidJUnit4;
+import androidx.annotation.NonNull;
+import androidx.test.platform.app.InstrumentationRegistry;
+import androidx.test.ext.junit.runners.AndroidJUnit4;
import android.util.Log;
import org.fdroid.fdroid.AssetUtils;
import org.fdroid.fdroid.Utils;
diff --git a/app/src/androidTest/java/org/fdroid/fdroid/nearby/BonjourManagerTest.java b/app/src/androidTest/java/org/fdroid/fdroid/nearby/BonjourManagerTest.java
index 41db1ed8c..f44d6b799 100644
--- a/app/src/androidTest/java/org/fdroid/fdroid/nearby/BonjourManagerTest.java
+++ b/app/src/androidTest/java/org/fdroid/fdroid/nearby/BonjourManagerTest.java
@@ -1,8 +1,8 @@
package org.fdroid.fdroid.nearby;
import android.content.Context;
-import android.support.test.InstrumentationRegistry;
-import android.support.test.runner.AndroidJUnit4;
+import androidx.test.platform.app.InstrumentationRegistry;
+import androidx.test.ext.junit.runners.AndroidJUnit4;
import org.fdroid.fdroid.FDroidApp;
import org.junit.Test;
import org.junit.runner.RunWith;
diff --git a/app/src/androidTest/java/org/fdroid/fdroid/nearby/LocalHTTPDManagerTest.java b/app/src/androidTest/java/org/fdroid/fdroid/nearby/LocalHTTPDManagerTest.java
index 23af0b7a4..c43ee0155 100644
--- a/app/src/androidTest/java/org/fdroid/fdroid/nearby/LocalHTTPDManagerTest.java
+++ b/app/src/androidTest/java/org/fdroid/fdroid/nearby/LocalHTTPDManagerTest.java
@@ -4,10 +4,10 @@ import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
-import android.support.test.InstrumentationRegistry;
-import android.support.test.filters.LargeTest;
-import android.support.test.runner.AndroidJUnit4;
-import android.support.v4.content.LocalBroadcastManager;
+import androidx.test.platform.app.InstrumentationRegistry;
+import androidx.test.filters.LargeTest;
+import androidx.test.ext.junit.runners.AndroidJUnit4;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import android.util.Log;
import org.fdroid.fdroid.FDroidApp;
import org.fdroid.fdroid.Netstat;
diff --git a/app/src/androidTest/java/org/fdroid/fdroid/updater/SwapRepoEmulatorTest.java b/app/src/androidTest/java/org/fdroid/fdroid/updater/SwapRepoEmulatorTest.java
index 3d5a0264e..ef5f05a13 100644
--- a/app/src/androidTest/java/org/fdroid/fdroid/updater/SwapRepoEmulatorTest.java
+++ b/app/src/androidTest/java/org/fdroid/fdroid/updater/SwapRepoEmulatorTest.java
@@ -6,8 +6,8 @@ import android.content.Intent;
import android.content.pm.ApplicationInfo;
import android.content.pm.ResolveInfo;
import android.os.Looper;
-import android.support.test.InstrumentationRegistry;
-import android.support.test.filters.LargeTest;
+import androidx.test.platform.app.InstrumentationRegistry;
+import androidx.test.filters.LargeTest;
import android.text.TextUtils;
import android.util.Log;
import org.fdroid.fdroid.BuildConfig;
diff --git a/app/src/basic/java/org/fdroid/fdroid/nearby/WifiStateChangeService.java b/app/src/basic/java/org/fdroid/fdroid/nearby/WifiStateChangeService.java
index 24ebdaa4f..145c9e567 100644
--- a/app/src/basic/java/org/fdroid/fdroid/nearby/WifiStateChangeService.java
+++ b/app/src/basic/java/org/fdroid/fdroid/nearby/WifiStateChangeService.java
@@ -21,7 +21,7 @@ package org.fdroid.fdroid.nearby;
import android.content.Context;
import android.content.Intent;
-import android.support.annotation.Nullable;
+import androidx.annotation.Nullable;
/**
* Dummy version for basic app flavor.
diff --git a/app/src/basic/java/org/fdroid/fdroid/views/main/MainViewController.java b/app/src/basic/java/org/fdroid/fdroid/views/main/MainViewController.java
index d8225193b..0ac429535 100644
--- a/app/src/basic/java/org/fdroid/fdroid/views/main/MainViewController.java
+++ b/app/src/basic/java/org/fdroid/fdroid/views/main/MainViewController.java
@@ -19,10 +19,10 @@
package org.fdroid.fdroid.views.main;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.Nullable;
+import androidx.fragment.app.Fragment;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.recyclerview.widget.RecyclerView;
import android.widget.FrameLayout;
import org.fdroid.fdroid.R;
import org.fdroid.fdroid.views.PreferencesFragment;
diff --git a/app/src/basic/res/xml/preferences.xml b/app/src/basic/res/xml/preferences.xml
index c473f4cd0..858bcb562 100644
--- a/app/src/basic/res/xml/preferences.xml
+++ b/app/src/basic/res/xml/preferences.xml
@@ -1,30 +1,30 @@
-
-
+
-
+
-
-
+
+
-
-
+
-
-
+
-
-
+
+
-
+
-
+
-
-
+
-
-
+
-
+
-
+
-
-
+
-
-
+
-
+
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/BluetoothManager.java b/app/src/full/java/org/fdroid/fdroid/nearby/BluetoothManager.java
index e9445185e..0ffa9b913 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/BluetoothManager.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/BluetoothManager.java
@@ -10,7 +10,7 @@ import android.os.Handler;
import android.os.HandlerThread;
import android.os.Message;
import android.os.Process;
-import android.support.v4.content.LocalBroadcastManager;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import android.text.TextUtils;
import android.util.Log;
import org.fdroid.fdroid.R;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/BonjourManager.java b/app/src/full/java/org/fdroid/fdroid/nearby/BonjourManager.java
index 1daa0a5a4..0e319f96d 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/BonjourManager.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/BonjourManager.java
@@ -7,7 +7,7 @@ import android.os.Handler;
import android.os.HandlerThread;
import android.os.Message;
import android.os.Process;
-import android.support.v4.content.LocalBroadcastManager;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import android.text.TextUtils;
import android.util.Log;
import org.fdroid.fdroid.FDroidApp;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/LocalHTTPDManager.java b/app/src/full/java/org/fdroid/fdroid/nearby/LocalHTTPDManager.java
index 1acbb8c81..82edfcac0 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/LocalHTTPDManager.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/LocalHTTPDManager.java
@@ -6,7 +6,7 @@ import android.os.Handler;
import android.os.HandlerThread;
import android.os.Message;
import android.os.Process;
-import android.support.v4.content.LocalBroadcastManager;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import android.util.Log;
import org.fdroid.fdroid.FDroidApp;
import org.fdroid.fdroid.Preferences;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/LocalRepoManager.java b/app/src/full/java/org/fdroid/fdroid/nearby/LocalRepoManager.java
index 172c6450f..ff6ac545d 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/LocalRepoManager.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/LocalRepoManager.java
@@ -10,8 +10,8 @@ import android.graphics.Bitmap.Config;
import android.graphics.Canvas;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import android.text.TextUtils;
import android.util.Log;
import org.fdroid.fdroid.FDroidApp;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/LocalRepoService.java b/app/src/full/java/org/fdroid/fdroid/nearby/LocalRepoService.java
index 03151cbf0..4a7ea268c 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/LocalRepoService.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/LocalRepoService.java
@@ -4,7 +4,7 @@ import android.app.IntentService;
import android.content.Context;
import android.content.Intent;
import android.os.Process;
-import android.support.v4.content.LocalBroadcastManager;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import org.fdroid.fdroid.FDroidApp;
import org.fdroid.fdroid.R;
import org.fdroid.fdroid.Utils;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/SDCardScannerService.java b/app/src/full/java/org/fdroid/fdroid/nearby/SDCardScannerService.java
index d0531fec4..733038613 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/SDCardScannerService.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/SDCardScannerService.java
@@ -28,7 +28,7 @@ import android.net.Uri;
import android.os.Build;
import android.os.Environment;
import android.os.Process;
-import android.support.v4.content.ContextCompat;
+import androidx.core.content.ContextCompat;
import android.util.Log;
import org.fdroid.fdroid.IndexUpdater;
import org.fdroid.fdroid.IndexV1Updater;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/SelectAppsView.java b/app/src/full/java/org/fdroid/fdroid/nearby/SelectAppsView.java
index 9d01ecf82..4e7940fce 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/SelectAppsView.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/SelectAppsView.java
@@ -8,12 +8,12 @@ import android.graphics.PorterDuff;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.LoaderManager;
-import android.support.v4.content.CursorLoader;
-import android.support.v4.content.Loader;
-import android.support.v4.widget.CursorAdapter;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.loader.app.LoaderManager;
+import androidx.loader.content.CursorLoader;
+import androidx.loader.content.Loader;
+import androidx.cursoradapter.widget.CursorAdapter;
import android.text.TextUtils;
import android.util.AttributeSet;
import android.view.ContextThemeWrapper;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/StartSwapView.java b/app/src/full/java/org/fdroid/fdroid/nearby/StartSwapView.java
index fe04772da..39bf1d89b 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/StartSwapView.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/StartSwapView.java
@@ -7,9 +7,9 @@ import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.net.wifi.WifiConfiguration;
-import android.support.annotation.Nullable;
-import android.support.v4.content.LocalBroadcastManager;
-import android.support.v7.widget.SwitchCompat;
+import androidx.annotation.Nullable;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
+import androidx.appcompat.widget.SwitchCompat;
import android.text.TextUtils;
import android.util.AttributeSet;
import android.view.LayoutInflater;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/SwapService.java b/app/src/full/java/org/fdroid/fdroid/nearby/SwapService.java
index b2b9e76e7..c8d8a1a17 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/SwapService.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/SwapService.java
@@ -16,10 +16,10 @@ import android.net.wifi.WifiManager;
import android.os.AsyncTask;
import android.os.Build;
import android.os.IBinder;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.NotificationCompat;
-import android.support.v4.content.LocalBroadcastManager;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.core.app.NotificationCompat;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import android.text.TextUtils;
import android.util.Log;
import cc.mvdan.accesspoint.WifiApControl;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/SwapSuccessView.java b/app/src/full/java/org/fdroid/fdroid/nearby/SwapSuccessView.java
index 14a343f26..acdb8411d 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/SwapSuccessView.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/SwapSuccessView.java
@@ -12,13 +12,13 @@ import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.LoaderManager;
-import android.support.v4.content.CursorLoader;
-import android.support.v4.content.Loader;
-import android.support.v4.content.LocalBroadcastManager;
-import android.support.v4.widget.CursorAdapter;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.loader.app.LoaderManager;
+import androidx.loader.content.CursorLoader;
+import androidx.loader.content.Loader;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
+import androidx.cursoradapter.widget.CursorAdapter;
import android.text.TextUtils;
import android.util.AttributeSet;
import android.util.Log;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/SwapView.java b/app/src/full/java/org/fdroid/fdroid/nearby/SwapView.java
index f400d1ef6..a7901ef07 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/SwapView.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/SwapView.java
@@ -3,8 +3,8 @@ package org.fdroid.fdroid.nearby;
import android.annotation.TargetApi;
import android.content.Context;
import android.content.res.TypedArray;
-import android.support.annotation.ColorInt;
-import android.support.annotation.LayoutRes;
+import androidx.annotation.ColorInt;
+import androidx.annotation.LayoutRes;
import android.util.AttributeSet;
import android.widget.RelativeLayout;
import org.fdroid.fdroid.R;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/SwapWorkflowActivity.java b/app/src/full/java/org/fdroid/fdroid/nearby/SwapWorkflowActivity.java
index a75ab838f..e7d98bfe0 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/SwapWorkflowActivity.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/SwapWorkflowActivity.java
@@ -17,17 +17,17 @@ import android.os.Build;
import android.os.Bundle;
import android.os.IBinder;
import android.provider.Settings;
-import android.support.annotation.LayoutRes;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.annotation.StringRes;
-import android.support.v4.content.LocalBroadcastManager;
-import android.support.v4.view.MenuItemCompat;
-import android.support.v7.app.AlertDialog;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.SearchView;
-import android.support.v7.widget.SwitchCompat;
-import android.support.v7.widget.Toolbar;
+import androidx.annotation.LayoutRes;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.annotation.StringRes;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
+import androidx.core.view.MenuItemCompat;
+import androidx.appcompat.app.AlertDialog;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.appcompat.widget.SearchView;
+import androidx.appcompat.widget.SwitchCompat;
+import androidx.appcompat.widget.Toolbar;
import android.text.TextUtils;
import android.util.Log;
import android.view.LayoutInflater;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/TreeUriScannerIntentService.java b/app/src/full/java/org/fdroid/fdroid/nearby/TreeUriScannerIntentService.java
index 2f027a641..54d8033dc 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/TreeUriScannerIntentService.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/TreeUriScannerIntentService.java
@@ -28,7 +28,7 @@ import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.os.Process;
-import android.support.v4.provider.DocumentFile;
+import androidx.documentfile.provider.DocumentFile;
import android.util.Log;
import android.widget.Toast;
import org.apache.commons.io.FileUtils;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/TreeUriUtils.java b/app/src/full/java/org/fdroid/fdroid/nearby/TreeUriUtils.java
index 3098a7a34..2770b0650 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/TreeUriUtils.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/TreeUriUtils.java
@@ -7,7 +7,7 @@ import android.net.Uri;
import android.os.Build;
import android.os.storage.StorageManager;
import android.provider.DocumentsContract;
-import android.support.annotation.Nullable;
+import androidx.annotation.Nullable;
import java.io.File;
import java.lang.reflect.Array;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/UsbDeviceAttachedReceiver.java b/app/src/full/java/org/fdroid/fdroid/nearby/UsbDeviceAttachedReceiver.java
index d5fdfb90f..f9ed28cd1 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/UsbDeviceAttachedReceiver.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/UsbDeviceAttachedReceiver.java
@@ -33,8 +33,8 @@ import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
-import android.support.annotation.Nullable;
-import android.support.annotation.RequiresApi;
+import androidx.annotation.Nullable;
+import androidx.annotation.RequiresApi;
import android.text.TextUtils;
import android.util.Log;
import org.fdroid.fdroid.views.main.MainActivity;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/UsbDeviceDetachedReceiver.java b/app/src/full/java/org/fdroid/fdroid/nearby/UsbDeviceDetachedReceiver.java
index 540f813cc..bb902b705 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/UsbDeviceDetachedReceiver.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/UsbDeviceDetachedReceiver.java
@@ -33,8 +33,8 @@ import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
-import android.support.annotation.Nullable;
-import android.support.annotation.RequiresApi;
+import androidx.annotation.Nullable;
+import androidx.annotation.RequiresApi;
import android.text.TextUtils;
import android.util.Log;
import org.fdroid.fdroid.views.main.MainActivity;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/WifiStateChangeService.java b/app/src/full/java/org/fdroid/fdroid/nearby/WifiStateChangeService.java
index e1f185d61..8bf0ba673 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/WifiStateChangeService.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/WifiStateChangeService.java
@@ -10,8 +10,8 @@ import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.os.Build;
-import android.support.annotation.Nullable;
-import android.support.v4.content.LocalBroadcastManager;
+import androidx.annotation.Nullable;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import android.text.TextUtils;
import android.util.Log;
import cc.mvdan.accesspoint.WifiApControl;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/peers/BluetoothPeer.java b/app/src/full/java/org/fdroid/fdroid/nearby/peers/BluetoothPeer.java
index 75964a738..515853873 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/peers/BluetoothPeer.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/peers/BluetoothPeer.java
@@ -3,7 +3,7 @@ package org.fdroid.fdroid.nearby.peers;
import android.bluetooth.BluetoothClass.Device;
import android.bluetooth.BluetoothDevice;
import android.os.Parcel;
-import android.support.annotation.Nullable;
+import androidx.annotation.Nullable;
import android.text.TextUtils;
import org.fdroid.fdroid.R;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/peers/BonjourPeer.java b/app/src/full/java/org/fdroid/fdroid/nearby/peers/BonjourPeer.java
index 582cc4d3a..3035a073f 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/peers/BonjourPeer.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/peers/BonjourPeer.java
@@ -2,7 +2,7 @@ package org.fdroid.fdroid.nearby.peers;
import android.net.Uri;
import android.os.Parcel;
-import android.support.annotation.Nullable;
+import androidx.annotation.Nullable;
import android.text.TextUtils;
import org.fdroid.fdroid.FDroidApp;
diff --git a/app/src/full/java/org/fdroid/fdroid/nearby/peers/Peer.java b/app/src/full/java/org/fdroid/fdroid/nearby/peers/Peer.java
index 42d03d758..77e44a55b 100644
--- a/app/src/full/java/org/fdroid/fdroid/nearby/peers/Peer.java
+++ b/app/src/full/java/org/fdroid/fdroid/nearby/peers/Peer.java
@@ -1,7 +1,7 @@
package org.fdroid.fdroid.nearby.peers;
import android.os.Parcelable;
-import android.support.annotation.DrawableRes;
+import androidx.annotation.DrawableRes;
/**
* TODO This model assumes that "peers" from Bluetooth, Bonjour, and WiFi are
diff --git a/app/src/full/java/org/fdroid/fdroid/panic/CalculatorActivity.java b/app/src/full/java/org/fdroid/fdroid/panic/CalculatorActivity.java
index e81bd3864..e706093ad 100644
--- a/app/src/full/java/org/fdroid/fdroid/panic/CalculatorActivity.java
+++ b/app/src/full/java/org/fdroid/fdroid/panic/CalculatorActivity.java
@@ -1,9 +1,9 @@
package org.fdroid.fdroid.panic;
import android.os.Bundle;
-import android.support.annotation.Nullable;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.Toolbar;
+import androidx.annotation.Nullable;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.appcompat.widget.Toolbar;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
diff --git a/app/src/full/java/org/fdroid/fdroid/panic/DestructiveCheckBoxPreference.java b/app/src/full/java/org/fdroid/fdroid/panic/DestructiveCheckBoxPreference.java
index 2fe0d9d4e..e09e0afe3 100644
--- a/app/src/full/java/org/fdroid/fdroid/panic/DestructiveCheckBoxPreference.java
+++ b/app/src/full/java/org/fdroid/fdroid/panic/DestructiveCheckBoxPreference.java
@@ -2,8 +2,8 @@ package org.fdroid.fdroid.panic;
import android.content.Context;
import android.content.res.Resources;
-import android.support.v7.preference.CheckBoxPreference;
-import android.support.v7.preference.PreferenceViewHolder;
+import androidx.preference.CheckBoxPreference;
+import androidx.preference.PreferenceViewHolder;
import android.util.AttributeSet;
import org.fdroid.fdroid.FDroidApp;
import org.fdroid.fdroid.R;
diff --git a/app/src/full/java/org/fdroid/fdroid/panic/DestructivePreference.java b/app/src/full/java/org/fdroid/fdroid/panic/DestructivePreference.java
index 36c5432c8..53a613e74 100644
--- a/app/src/full/java/org/fdroid/fdroid/panic/DestructivePreference.java
+++ b/app/src/full/java/org/fdroid/fdroid/panic/DestructivePreference.java
@@ -1,8 +1,8 @@
package org.fdroid.fdroid.panic;
import android.content.Context;
-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 org.fdroid.fdroid.FDroidApp;
import org.fdroid.fdroid.R;
diff --git a/app/src/full/java/org/fdroid/fdroid/panic/ExitActivity.java b/app/src/full/java/org/fdroid/fdroid/panic/ExitActivity.java
index 4665500db..e7153e023 100644
--- a/app/src/full/java/org/fdroid/fdroid/panic/ExitActivity.java
+++ b/app/src/full/java/org/fdroid/fdroid/panic/ExitActivity.java
@@ -3,7 +3,7 @@ package org.fdroid.fdroid.panic;
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
-import android.support.v7.app.AppCompatActivity;
+import androidx.appcompat.app.AppCompatActivity;
public class ExitActivity extends AppCompatActivity {
diff --git a/app/src/full/java/org/fdroid/fdroid/panic/HidingManager.java b/app/src/full/java/org/fdroid/fdroid/panic/HidingManager.java
index f8afb217c..d9a69a56a 100644
--- a/app/src/full/java/org/fdroid/fdroid/panic/HidingManager.java
+++ b/app/src/full/java/org/fdroid/fdroid/panic/HidingManager.java
@@ -7,8 +7,8 @@ import android.content.Intent;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.ServiceInfo;
-import android.support.v4.app.NotificationManagerCompat;
-import android.support.v7.app.AlertDialog;
+import androidx.core.app.NotificationManagerCompat;
+import androidx.appcompat.app.AlertDialog;
import org.fdroid.fdroid.BuildConfig;
import org.fdroid.fdroid.R;
import org.fdroid.fdroid.views.main.MainActivity;
diff --git a/app/src/full/java/org/fdroid/fdroid/panic/PanicPreferencesActivity.java b/app/src/full/java/org/fdroid/fdroid/panic/PanicPreferencesActivity.java
index 7b771007a..5b6513784 100644
--- a/app/src/full/java/org/fdroid/fdroid/panic/PanicPreferencesActivity.java
+++ b/app/src/full/java/org/fdroid/fdroid/panic/PanicPreferencesActivity.java
@@ -1,9 +1,9 @@
package org.fdroid.fdroid.panic;
import android.os.Bundle;
-import android.support.v7.app.ActionBar;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.Toolbar;
+import androidx.appcompat.app.ActionBar;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.appcompat.widget.Toolbar;
import android.view.MenuItem;
import org.fdroid.fdroid.FDroidApp;
import org.fdroid.fdroid.R;
diff --git a/app/src/full/java/org/fdroid/fdroid/panic/PanicPreferencesFragment.java b/app/src/full/java/org/fdroid/fdroid/panic/PanicPreferencesFragment.java
index ba9b2fbb9..60269b4c3 100644
--- a/app/src/full/java/org/fdroid/fdroid/panic/PanicPreferencesFragment.java
+++ b/app/src/full/java/org/fdroid/fdroid/panic/PanicPreferencesFragment.java
@@ -13,15 +13,15 @@ import android.graphics.PorterDuff;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Bundle;
-import android.support.annotation.ColorInt;
-import android.support.annotation.Nullable;
-import android.support.v14.preference.PreferenceFragment;
-import android.support.v4.content.ContextCompat;
-import android.support.v7.app.AlertDialog;
-import android.support.v7.preference.CheckBoxPreference;
-import android.support.v7.preference.ListPreference;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceCategory;
+import androidx.annotation.ColorInt;
+import androidx.annotation.Nullable;
+import androidx.preference.PreferenceFragment;
+import androidx.core.content.ContextCompat;
+import androidx.appcompat.app.AlertDialog;
+import androidx.preference.CheckBoxPreference;
+import androidx.preference.ListPreference;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceCategory;
import android.text.TextUtils;
import android.util.TypedValue;
import info.guardianproject.panic.Panic;
diff --git a/app/src/full/java/org/fdroid/fdroid/panic/PanicResponderActivity.java b/app/src/full/java/org/fdroid/fdroid/panic/PanicResponderActivity.java
index b03b5480e..3e4959315 100644
--- a/app/src/full/java/org/fdroid/fdroid/panic/PanicResponderActivity.java
+++ b/app/src/full/java/org/fdroid/fdroid/panic/PanicResponderActivity.java
@@ -7,8 +7,8 @@ import android.content.Context;
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
-import android.support.v4.content.LocalBroadcastManager;
-import android.support.v7.app.AppCompatActivity;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
+import androidx.appcompat.app.AppCompatActivity;
import android.util.Log;
import info.guardianproject.panic.Panic;
import info.guardianproject.panic.PanicResponder;
diff --git a/app/src/full/java/org/fdroid/fdroid/panic/SelectInstalledAppListAdapter.java b/app/src/full/java/org/fdroid/fdroid/panic/SelectInstalledAppListAdapter.java
index 6fcaeb452..a79c61b16 100644
--- a/app/src/full/java/org/fdroid/fdroid/panic/SelectInstalledAppListAdapter.java
+++ b/app/src/full/java/org/fdroid/fdroid/panic/SelectInstalledAppListAdapter.java
@@ -1,7 +1,7 @@
package org.fdroid.fdroid.panic;
import android.app.Activity;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import android.view.View;
import android.view.ViewGroup;
import org.fdroid.fdroid.Preferences;
diff --git a/app/src/full/java/org/fdroid/fdroid/panic/SelectInstalledAppListItemController.java b/app/src/full/java/org/fdroid/fdroid/panic/SelectInstalledAppListItemController.java
index 63f560edd..ed9410172 100644
--- a/app/src/full/java/org/fdroid/fdroid/panic/SelectInstalledAppListItemController.java
+++ b/app/src/full/java/org/fdroid/fdroid/panic/SelectInstalledAppListItemController.java
@@ -1,8 +1,8 @@
package org.fdroid.fdroid.panic;
import android.app.Activity;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import android.view.View;
import org.fdroid.fdroid.AppUpdateStatusManager;
import org.fdroid.fdroid.data.App;
diff --git a/app/src/full/java/org/fdroid/fdroid/panic/SelectInstalledAppsActivity.java b/app/src/full/java/org/fdroid/fdroid/panic/SelectInstalledAppsActivity.java
index f9f630e96..f5d68348b 100644
--- a/app/src/full/java/org/fdroid/fdroid/panic/SelectInstalledAppsActivity.java
+++ b/app/src/full/java/org/fdroid/fdroid/panic/SelectInstalledAppsActivity.java
@@ -25,14 +25,14 @@ import android.database.Cursor;
import android.graphics.LightingColorFilter;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.v4.app.LoaderManager;
-import android.support.v4.content.CursorLoader;
-import android.support.v4.content.Loader;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
-import android.support.v7.widget.Toolbar;
+import androidx.annotation.NonNull;
+import androidx.loader.app.LoaderManager;
+import androidx.loader.content.CursorLoader;
+import androidx.loader.content.Loader;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+import androidx.appcompat.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
diff --git a/app/src/full/java/org/fdroid/fdroid/views/main/CategoriesViewBinder.java b/app/src/full/java/org/fdroid/fdroid/views/main/CategoriesViewBinder.java
index c0a995e1d..cde674d31 100644
--- a/app/src/full/java/org/fdroid/fdroid/views/main/CategoriesViewBinder.java
+++ b/app/src/full/java/org/fdroid/fdroid/views/main/CategoriesViewBinder.java
@@ -3,14 +3,14 @@ package org.fdroid.fdroid.views.main;
import android.content.Intent;
import android.database.Cursor;
import android.os.Bundle;
-import android.support.design.widget.FloatingActionButton;
-import android.support.v4.app.LoaderManager;
-import android.support.v4.content.CursorLoader;
-import android.support.v4.content.Loader;
-import android.support.v4.widget.SwipeRefreshLayout;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
+import com.google.android.material.floatingactionbutton.FloatingActionButton;
+import androidx.loader.app.LoaderManager;
+import androidx.loader.content.CursorLoader;
+import androidx.loader.content.Loader;
+import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.TextView;
diff --git a/app/src/full/java/org/fdroid/fdroid/views/main/MainViewController.java b/app/src/full/java/org/fdroid/fdroid/views/main/MainViewController.java
index 277f5d41d..d00e9341d 100644
--- a/app/src/full/java/org/fdroid/fdroid/views/main/MainViewController.java
+++ b/app/src/full/java/org/fdroid/fdroid/views/main/MainViewController.java
@@ -1,9 +1,9 @@
package org.fdroid.fdroid.views.main;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.Nullable;
+import androidx.fragment.app.Fragment;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.recyclerview.widget.RecyclerView;
import android.widget.FrameLayout;
import org.fdroid.fdroid.R;
import org.fdroid.fdroid.views.PreferencesFragment;
diff --git a/app/src/full/java/org/fdroid/fdroid/views/main/NearbyViewBinder.java b/app/src/full/java/org/fdroid/fdroid/views/main/NearbyViewBinder.java
index bf0a84349..0434bfadd 100644
--- a/app/src/full/java/org/fdroid/fdroid/views/main/NearbyViewBinder.java
+++ b/app/src/full/java/org/fdroid/fdroid/views/main/NearbyViewBinder.java
@@ -13,9 +13,9 @@ import android.os.Build;
import android.os.Environment;
import android.os.storage.StorageManager;
import android.os.storage.StorageVolume;
-import android.support.annotation.RequiresApi;
-import android.support.v4.app.ActivityCompat;
-import android.support.v4.content.ContextCompat;
+import androidx.annotation.RequiresApi;
+import androidx.core.app.ActivityCompat;
+import androidx.core.content.ContextCompat;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
diff --git a/app/src/full/res/layout/activity_calculator.xml b/app/src/full/res/layout/activity_calculator.xml
index 2115cdd0a..4527ef735 100644
--- a/app/src/full/res/layout/activity_calculator.xml
+++ b/app/src/full/res/layout/activity_calculator.xml
@@ -1,12 +1,12 @@
-
-
-
+
diff --git a/app/src/full/res/layout/activity_panic_settings.xml b/app/src/full/res/layout/activity_panic_settings.xml
index 1d06ce14f..d77584d31 100644
--- a/app/src/full/res/layout/activity_panic_settings.xml
+++ b/app/src/full/res/layout/activity_panic_settings.xml
@@ -5,7 +5,7 @@
android:layout_height="match_parent"
android:orientation="vertical">
-
-
@@ -57,4 +57,4 @@
app:layout_constraintStart_toStartOf="@+id/launcherIcon"
app:layout_constraintTop_toBottomOf="@+id/launcherIcon" />
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/full/res/layout/main_tab_categories.xml b/app/src/full/res/layout/main_tab_categories.xml
index c83c1ea6f..79877d5fe 100644
--- a/app/src/full/res/layout/main_tab_categories.xml
+++ b/app/src/full/res/layout/main_tab_categories.xml
@@ -1,5 +1,5 @@
-
-
-
@@ -36,7 +36,7 @@
android:visibility="gone"
android:text="@string/categories__empty_state__no_categories" />
-
-
-
-
\ No newline at end of file
+
+
+
\ No newline at end of file
diff --git a/app/src/full/res/layout/main_tab_swap.xml b/app/src/full/res/layout/main_tab_swap.xml
index dff52eb34..1ca688aac 100644
--- a/app/src/full/res/layout/main_tab_swap.xml
+++ b/app/src/full/res/layout/main_tab_swap.xml
@@ -1,5 +1,5 @@
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/full/res/layout/swap_activity.xml b/app/src/full/res/layout/swap_activity.xml
index 6d25e3a3d..563acd477 100644
--- a/app/src/full/res/layout/swap_activity.xml
+++ b/app/src/full/res/layout/swap_activity.xml
@@ -6,7 +6,7 @@
android:layout_height="match_parent"
android:orientation="vertical">
-
-
-
diff --git a/app/src/full/res/xml/preferences_panic.xml b/app/src/full/res/xml/preferences_panic.xml
index 081ad24c9..390443ee4 100644
--- a/app/src/full/res/xml/preferences_panic.xml
+++ b/app/src/full/res/xml/preferences_panic.xml
@@ -1,19 +1,19 @@
-
-
-
-
-
+
-
-
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 653d777c5..f3cbd6f17 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -119,7 +119,7 @@
android:resource="@xml/apk_file_provider"/>
diff --git a/app/src/main/java/com/google/zxing/integration/android/IntentIntegrator.java b/app/src/main/java/com/google/zxing/integration/android/IntentIntegrator.java
index 4d8d49f0f..24ad413eb 100644
--- a/app/src/main/java/com/google/zxing/integration/android/IntentIntegrator.java
+++ b/app/src/main/java/com/google/zxing/integration/android/IntentIntegrator.java
@@ -25,7 +25,7 @@ import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.net.Uri;
import android.os.Bundle;
-import android.support.v4.app.Fragment;
+import androidx.fragment.app.Fragment;
import android.util.Log;
import java.util.Arrays;
diff --git a/app/src/main/java/org/fdroid/fdroid/AboutActivity.java b/app/src/main/java/org/fdroid/fdroid/AboutActivity.java
index 7655dfb80..53498465c 100644
--- a/app/src/main/java/org/fdroid/fdroid/AboutActivity.java
+++ b/app/src/main/java/org/fdroid/fdroid/AboutActivity.java
@@ -1,8 +1,8 @@
package org.fdroid.fdroid;
import android.os.Bundle;
-import android.support.annotation.Nullable;
-import android.support.v7.app.AppCompatActivity;
+import androidx.annotation.Nullable;
+import androidx.appcompat.app.AppCompatActivity;
import android.view.View;
import android.widget.TextView;
diff --git a/app/src/main/java/org/fdroid/fdroid/AddRepoIntentService.java b/app/src/main/java/org/fdroid/fdroid/AddRepoIntentService.java
index 7df483c64..396e04b48 100644
--- a/app/src/main/java/org/fdroid/fdroid/AddRepoIntentService.java
+++ b/app/src/main/java/org/fdroid/fdroid/AddRepoIntentService.java
@@ -5,8 +5,8 @@ import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import android.text.TextUtils;
import android.util.Log;
import org.fdroid.fdroid.data.Repo;
diff --git a/app/src/main/java/org/fdroid/fdroid/AppUpdateStatusManager.java b/app/src/main/java/org/fdroid/fdroid/AppUpdateStatusManager.java
index 4db8c3ca2..861059a06 100644
--- a/app/src/main/java/org/fdroid/fdroid/AppUpdateStatusManager.java
+++ b/app/src/main/java/org/fdroid/fdroid/AppUpdateStatusManager.java
@@ -9,10 +9,10 @@ import android.content.SharedPreferences;
import android.content.pm.PackageManager;
import android.os.Parcel;
import android.os.Parcelable;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.TaskStackBuilder;
-import android.support.v4.content.LocalBroadcastManager;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.core.app.TaskStackBuilder;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import org.fdroid.fdroid.data.Apk;
import org.fdroid.fdroid.data.App;
import org.fdroid.fdroid.data.AppProvider;
diff --git a/app/src/main/java/org/fdroid/fdroid/CleanCacheService.java b/app/src/main/java/org/fdroid/fdroid/CleanCacheService.java
index ebff5c465..7131a5ae5 100644
--- a/app/src/main/java/org/fdroid/fdroid/CleanCacheService.java
+++ b/app/src/main/java/org/fdroid/fdroid/CleanCacheService.java
@@ -10,8 +10,8 @@ import android.content.Intent;
import android.os.Build;
import android.os.Process;
import android.os.SystemClock;
-import android.support.annotation.NonNull;
-import android.support.v4.app.JobIntentService;
+import androidx.annotation.NonNull;
+import androidx.core.app.JobIntentService;
import org.apache.commons.io.FileUtils;
import org.fdroid.fdroid.installer.ApkCache;
diff --git a/app/src/main/java/org/fdroid/fdroid/CompatibilityChecker.java b/app/src/main/java/org/fdroid/fdroid/CompatibilityChecker.java
index d8d81fffc..0b84ec7fa 100644
--- a/app/src/main/java/org/fdroid/fdroid/CompatibilityChecker.java
+++ b/app/src/main/java/org/fdroid/fdroid/CompatibilityChecker.java
@@ -4,7 +4,7 @@ import android.content.Context;
import android.content.pm.FeatureInfo;
import android.content.pm.PackageManager;
import android.os.Build;
-import android.support.annotation.Nullable;
+import androidx.annotation.Nullable;
import org.fdroid.fdroid.compat.SupportedArchitectures;
import org.fdroid.fdroid.data.Apk;
diff --git a/app/src/main/java/org/fdroid/fdroid/DeleteCacheService.java b/app/src/main/java/org/fdroid/fdroid/DeleteCacheService.java
index eec11f260..fbbb4baca 100644
--- a/app/src/main/java/org/fdroid/fdroid/DeleteCacheService.java
+++ b/app/src/main/java/org/fdroid/fdroid/DeleteCacheService.java
@@ -3,9 +3,9 @@ package org.fdroid.fdroid;
import android.content.Context;
import android.content.Intent;
import android.os.Process;
-import android.support.annotation.NonNull;
-import android.support.v4.app.JobIntentService;
-import android.support.v4.content.ContextCompat;
+import androidx.annotation.NonNull;
+import androidx.core.app.JobIntentService;
+import androidx.core.content.ContextCompat;
import android.util.Log;
import org.apache.commons.io.FileUtils;
diff --git a/app/src/main/java/org/fdroid/fdroid/FDroidApp.java b/app/src/main/java/org/fdroid/fdroid/FDroidApp.java
index 7d2ddf1c1..9d9769380 100644
--- a/app/src/main/java/org/fdroid/fdroid/FDroidApp.java
+++ b/app/src/main/java/org/fdroid/fdroid/FDroidApp.java
@@ -40,8 +40,8 @@ import android.net.Uri;
import android.os.Build;
import android.os.Environment;
import android.os.StrictMode;
-import android.support.annotation.Nullable;
-import android.support.v4.util.LongSparseArray;
+import androidx.annotation.Nullable;
+import androidx.collection.LongSparseArray;
import android.text.TextUtils;
import android.util.Base64;
import android.util.Log;
diff --git a/app/src/main/java/org/fdroid/fdroid/IndexUpdater.java b/app/src/main/java/org/fdroid/fdroid/IndexUpdater.java
index f425a0c07..c10b0ca69 100644
--- a/app/src/main/java/org/fdroid/fdroid/IndexUpdater.java
+++ b/app/src/main/java/org/fdroid/fdroid/IndexUpdater.java
@@ -27,7 +27,7 @@ import android.content.ContentResolver;
import android.content.ContentValues;
import android.content.Context;
import android.content.pm.PackageInfo;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import android.text.TextUtils;
import android.util.Log;
import org.fdroid.fdroid.data.Apk;
diff --git a/app/src/main/java/org/fdroid/fdroid/IndexV1Updater.java b/app/src/main/java/org/fdroid/fdroid/IndexV1Updater.java
index fcc9eeac1..1bef52238 100644
--- a/app/src/main/java/org/fdroid/fdroid/IndexV1Updater.java
+++ b/app/src/main/java/org/fdroid/fdroid/IndexV1Updater.java
@@ -25,7 +25,7 @@ package org.fdroid.fdroid;
import android.content.ContentValues;
import android.content.Context;
import android.net.Uri;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import android.text.TextUtils;
import android.util.Log;
import com.fasterxml.jackson.annotation.JsonAutoDetect;
diff --git a/app/src/main/java/org/fdroid/fdroid/NfcNotEnabledActivity.java b/app/src/main/java/org/fdroid/fdroid/NfcNotEnabledActivity.java
index 344003e80..30a0d128d 100644
--- a/app/src/main/java/org/fdroid/fdroid/NfcNotEnabledActivity.java
+++ b/app/src/main/java/org/fdroid/fdroid/NfcNotEnabledActivity.java
@@ -6,7 +6,7 @@ import android.nfc.NfcAdapter;
import android.os.Build;
import android.os.Bundle;
import android.provider.Settings;
-import android.support.v7.app.AppCompatActivity;
+import androidx.appcompat.app.AppCompatActivity;
// aka Android 4.0 aka Ice Cream Sandwich
public class NfcNotEnabledActivity extends AppCompatActivity {
diff --git a/app/src/main/java/org/fdroid/fdroid/NotificationHelper.java b/app/src/main/java/org/fdroid/fdroid/NotificationHelper.java
index ac5149a69..db7e3cc29 100644
--- a/app/src/main/java/org/fdroid/fdroid/NotificationHelper.java
+++ b/app/src/main/java/org/fdroid/fdroid/NotificationHelper.java
@@ -12,10 +12,10 @@ import android.graphics.Point;
import android.graphics.Typeface;
import android.graphics.drawable.Drawable;
import android.os.Build;
-import android.support.v4.app.NotificationCompat;
-import android.support.v4.app.NotificationManagerCompat;
-import android.support.v4.content.ContextCompat;
-import android.support.v4.content.LocalBroadcastManager;
+import androidx.core.app.NotificationCompat;
+import androidx.core.app.NotificationManagerCompat;
+import androidx.core.content.ContextCompat;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import android.text.SpannableStringBuilder;
import android.text.Spanned;
import android.text.TextUtils;
diff --git a/app/src/main/java/org/fdroid/fdroid/Preferences.java b/app/src/main/java/org/fdroid/fdroid/Preferences.java
index 6fc26abbd..f614a815c 100644
--- a/app/src/main/java/org/fdroid/fdroid/Preferences.java
+++ b/app/src/main/java/org/fdroid/fdroid/Preferences.java
@@ -28,7 +28,7 @@ import android.content.SharedPreferences;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Build;
-import android.support.v7.preference.PreferenceManager;
+import androidx.preference.PreferenceManager;
import android.text.format.DateUtils;
import android.util.Log;
import org.fdroid.fdroid.installer.PrivilegedInstaller;
@@ -239,7 +239,7 @@ public final class Preferences implements SharedPreferences.OnSharedPreferenceCh
/**
* The original preference was a {@link String}, now it must be a {@link Integer}
- * since {@link android.support.v7.preference.SeekBarPreference} uses it
+ * since {@link androidx.preference.SeekBarPreference} uses it
* directly.
*/
private boolean migrateUpdateIntervalStringToInt(SharedPreferences.Editor editor) {
diff --git a/app/src/main/java/org/fdroid/fdroid/ProgressBufferedInputStream.java b/app/src/main/java/org/fdroid/fdroid/ProgressBufferedInputStream.java
index 25aad6dc9..dea378149 100644
--- a/app/src/main/java/org/fdroid/fdroid/ProgressBufferedInputStream.java
+++ b/app/src/main/java/org/fdroid/fdroid/ProgressBufferedInputStream.java
@@ -1,6 +1,6 @@
package org.fdroid.fdroid;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import java.io.BufferedInputStream;
import java.io.IOException;
diff --git a/app/src/main/java/org/fdroid/fdroid/UpdateJobService.java b/app/src/main/java/org/fdroid/fdroid/UpdateJobService.java
index 88ed0b674..bc4dd8abc 100644
--- a/app/src/main/java/org/fdroid/fdroid/UpdateJobService.java
+++ b/app/src/main/java/org/fdroid/fdroid/UpdateJobService.java
@@ -6,7 +6,7 @@ import android.app.job.JobService;
/**
* Interface between the new {@link android.app.job.JobScheduler} API and
- * {@link UpdateService}, which is based on {@link android.support.v4.app.JobIntentService}.
+ * {@link UpdateService}, which is based on {@link androidx.core.app.JobIntentService}.
*
* @see Project Volta: Scheduling jobs
*/
diff --git a/app/src/main/java/org/fdroid/fdroid/UpdateService.java b/app/src/main/java/org/fdroid/fdroid/UpdateService.java
index 035ae93f3..f97dff024 100644
--- a/app/src/main/java/org/fdroid/fdroid/UpdateService.java
+++ b/app/src/main/java/org/fdroid/fdroid/UpdateService.java
@@ -34,10 +34,10 @@ import android.os.AsyncTask;
import android.os.Build;
import android.os.Process;
import android.os.SystemClock;
-import android.support.annotation.NonNull;
-import android.support.v4.app.JobIntentService;
-import android.support.v4.app.NotificationCompat;
-import android.support.v4.content.LocalBroadcastManager;
+import androidx.annotation.NonNull;
+import androidx.core.app.JobIntentService;
+import androidx.core.app.NotificationCompat;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import android.text.TextUtils;
import android.util.Log;
import android.widget.Toast;
diff --git a/app/src/main/java/org/fdroid/fdroid/Utils.java b/app/src/main/java/org/fdroid/fdroid/Utils.java
index 359f9556e..7b1798568 100644
--- a/app/src/main/java/org/fdroid/fdroid/Utils.java
+++ b/app/src/main/java/org/fdroid/fdroid/Utils.java
@@ -32,10 +32,10 @@ import android.os.Build;
import android.os.Handler;
import android.os.Looper;
import android.os.StatFs;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.annotation.RequiresApi;
-import android.support.v4.widget.SwipeRefreshLayout;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.annotation.RequiresApi;
+import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import android.text.Editable;
import android.text.Html;
import android.text.SpannableStringBuilder;
@@ -864,7 +864,7 @@ public final class Utils {
* Converts a {@code long} bytes value, like from {@link File#length()}, to
* an {@code int} value that is kilobytes, suitable for things like
* {@link android.widget.ProgressBar#setMax(int)} or
- * {@link android.support.v4.app.NotificationCompat.Builder#setProgress(int, int, boolean)}
+ * {@link androidx.core.app.NotificationCompat.Builder#setProgress(int, int, boolean)}
*/
public static int bytesToKb(long bytes) {
return (int) (bytes / 1024);
@@ -874,7 +874,7 @@ public final class Utils {
* Converts two {@code long} bytes values, like from {@link File#length()}, to
* an {@code int} value that is a percentage, suitable for things like
* {@link android.widget.ProgressBar#setMax(int)} or
- * {@link android.support.v4.app.NotificationCompat.Builder#setProgress(int, int, boolean)}.
+ * {@link androidx.core.app.NotificationCompat.Builder#setProgress(int, int, boolean)}.
* {@code total} must never be zero!
*/
public static int getPercent(long current, long total) {
diff --git a/app/src/main/java/org/fdroid/fdroid/acra/CrashReportActivity.java b/app/src/main/java/org/fdroid/fdroid/acra/CrashReportActivity.java
index 039ad75c8..a761076dc 100644
--- a/app/src/main/java/org/fdroid/fdroid/acra/CrashReportActivity.java
+++ b/app/src/main/java/org/fdroid/fdroid/acra/CrashReportActivity.java
@@ -2,7 +2,7 @@ package org.fdroid.fdroid.acra;
import android.content.DialogInterface;
import android.os.Bundle;
-import android.support.v7.app.AlertDialog;
+import androidx.appcompat.app.AlertDialog;
import android.widget.EditText;
import org.acra.dialog.BaseCrashReportDialog;
diff --git a/app/src/main/java/org/fdroid/fdroid/acra/CrashReportSender.java b/app/src/main/java/org/fdroid/fdroid/acra/CrashReportSender.java
index 54d85c584..2e1a09ea7 100644
--- a/app/src/main/java/org/fdroid/fdroid/acra/CrashReportSender.java
+++ b/app/src/main/java/org/fdroid/fdroid/acra/CrashReportSender.java
@@ -4,7 +4,7 @@ package org.fdroid.fdroid.acra;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import org.acra.ReportField;
import org.acra.collections.ImmutableSet;
import org.acra.collector.CrashReportData;
diff --git a/app/src/main/java/org/fdroid/fdroid/acra/CrashReportSenderFactory.java b/app/src/main/java/org/fdroid/fdroid/acra/CrashReportSenderFactory.java
index 463417b11..5007be493 100644
--- a/app/src/main/java/org/fdroid/fdroid/acra/CrashReportSenderFactory.java
+++ b/app/src/main/java/org/fdroid/fdroid/acra/CrashReportSenderFactory.java
@@ -1,7 +1,7 @@
package org.fdroid.fdroid.acra;
import android.content.Context;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import org.acra.config.ACRAConfiguration;
import org.acra.sender.ReportSender;
diff --git a/app/src/main/java/org/fdroid/fdroid/data/Apk.java b/app/src/main/java/org/fdroid/fdroid/data/Apk.java
index b696cb9e9..284d54304 100644
--- a/app/src/main/java/org/fdroid/fdroid/data/Apk.java
+++ b/app/src/main/java/org/fdroid/fdroid/data/Apk.java
@@ -10,8 +10,8 @@ import android.os.Build;
import android.os.Environment;
import android.os.Parcel;
import android.os.Parcelable;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import android.text.TextUtils;
import android.webkit.MimeTypeMap;
import com.fasterxml.jackson.annotation.JacksonInject;
diff --git a/app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java b/app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java
index 0d8157ba7..47467b470 100644
--- a/app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java
+++ b/app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java
@@ -6,8 +6,8 @@ import android.content.Context;
import android.content.UriMatcher;
import android.database.Cursor;
import android.net.Uri;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import android.util.Log;
import org.fdroid.fdroid.Utils;
import org.fdroid.fdroid.data.Schema.AntiFeatureTable;
diff --git a/app/src/main/java/org/fdroid/fdroid/data/App.java b/app/src/main/java/org/fdroid/fdroid/data/App.java
index ee0d0d5a7..380546697 100644
--- a/app/src/main/java/org/fdroid/fdroid/data/App.java
+++ b/app/src/main/java/org/fdroid/fdroid/data/App.java
@@ -15,8 +15,8 @@ import android.os.Environment;
import android.os.LocaleList;
import android.os.Parcel;
import android.os.Parcelable;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import android.text.TextUtils;
import android.util.Log;
diff --git a/app/src/main/java/org/fdroid/fdroid/data/AppPrefsProvider.java b/app/src/main/java/org/fdroid/fdroid/data/AppPrefsProvider.java
index 6e5c752f2..6b5c3211d 100644
--- a/app/src/main/java/org/fdroid/fdroid/data/AppPrefsProvider.java
+++ b/app/src/main/java/org/fdroid/fdroid/data/AppPrefsProvider.java
@@ -5,8 +5,8 @@ import android.content.Context;
import android.content.UriMatcher;
import android.database.Cursor;
import android.net.Uri;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import org.fdroid.fdroid.data.Schema.AppPrefsTable;
import org.fdroid.fdroid.data.Schema.AppPrefsTable.Cols;
diff --git a/app/src/main/java/org/fdroid/fdroid/data/AppProvider.java b/app/src/main/java/org/fdroid/fdroid/data/AppProvider.java
index 1b1939674..f2b7dd0a9 100644
--- a/app/src/main/java/org/fdroid/fdroid/data/AppProvider.java
+++ b/app/src/main/java/org/fdroid/fdroid/data/AppProvider.java
@@ -6,8 +6,8 @@ import android.content.Context;
import android.content.UriMatcher;
import android.database.Cursor;
import android.net.Uri;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import android.text.TextUtils;
import android.util.Log;
import org.fdroid.fdroid.Preferences;
diff --git a/app/src/main/java/org/fdroid/fdroid/data/CategoryProvider.java b/app/src/main/java/org/fdroid/fdroid/data/CategoryProvider.java
index db45311e0..8186fda0a 100644
--- a/app/src/main/java/org/fdroid/fdroid/data/CategoryProvider.java
+++ b/app/src/main/java/org/fdroid/fdroid/data/CategoryProvider.java
@@ -5,7 +5,7 @@ import android.content.Context;
import android.content.UriMatcher;
import android.database.Cursor;
import android.net.Uri;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import org.fdroid.fdroid.data.Schema.AppMetadataTable;
import org.fdroid.fdroid.data.Schema.CatJoinTable;
import org.fdroid.fdroid.data.Schema.CategoryTable;
diff --git a/app/src/main/java/org/fdroid/fdroid/data/FDroidProvider.java b/app/src/main/java/org/fdroid/fdroid/data/FDroidProvider.java
index a30030a1a..42e03e85b 100644
--- a/app/src/main/java/org/fdroid/fdroid/data/FDroidProvider.java
+++ b/app/src/main/java/org/fdroid/fdroid/data/FDroidProvider.java
@@ -8,7 +8,7 @@ import android.content.OperationApplicationException;
import android.content.UriMatcher;
import android.database.sqlite.SQLiteDatabase;
import android.net.Uri;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import org.fdroid.fdroid.BuildConfig;
diff --git a/app/src/main/java/org/fdroid/fdroid/data/InstalledAppProvider.java b/app/src/main/java/org/fdroid/fdroid/data/InstalledAppProvider.java
index b60491eb0..5ab21d636 100644
--- a/app/src/main/java/org/fdroid/fdroid/data/InstalledAppProvider.java
+++ b/app/src/main/java/org/fdroid/fdroid/data/InstalledAppProvider.java
@@ -9,8 +9,8 @@ import android.content.pm.PackageManager;
import android.content.res.Resources;
import android.database.Cursor;
import android.net.Uri;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import android.text.TextUtils;
import android.util.Log;
import org.fdroid.fdroid.R;
diff --git a/app/src/main/java/org/fdroid/fdroid/data/InstalledAppProviderService.java b/app/src/main/java/org/fdroid/fdroid/data/InstalledAppProviderService.java
index b001f97a7..d3113392e 100644
--- a/app/src/main/java/org/fdroid/fdroid/data/InstalledAppProviderService.java
+++ b/app/src/main/java/org/fdroid/fdroid/data/InstalledAppProviderService.java
@@ -7,9 +7,9 @@ import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Process;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.JobIntentService;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.core.app.JobIntentService;
import android.util.Log;
import org.acra.ACRA;
import org.fdroid.fdroid.AppUpdateStatusManager;
diff --git a/app/src/main/java/org/fdroid/fdroid/data/PackageProvider.java b/app/src/main/java/org/fdroid/fdroid/data/PackageProvider.java
index bd70850de..197b53f35 100644
--- a/app/src/main/java/org/fdroid/fdroid/data/PackageProvider.java
+++ b/app/src/main/java/org/fdroid/fdroid/data/PackageProvider.java
@@ -5,7 +5,7 @@ import android.content.Context;
import android.content.UriMatcher;
import android.database.Cursor;
import android.net.Uri;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import org.fdroid.fdroid.data.Schema.PackageTable;
import org.fdroid.fdroid.data.Schema.PackageTable.Cols;
diff --git a/app/src/main/java/org/fdroid/fdroid/data/QueryBuilder.java b/app/src/main/java/org/fdroid/fdroid/data/QueryBuilder.java
index 5e78883ae..e2c38da3f 100644
--- a/app/src/main/java/org/fdroid/fdroid/data/QueryBuilder.java
+++ b/app/src/main/java/org/fdroid/fdroid/data/QueryBuilder.java
@@ -1,6 +1,6 @@
package org.fdroid.fdroid.data;
-import android.support.annotation.Nullable;
+import androidx.annotation.Nullable;
import android.text.TextUtils;
import java.util.ArrayList;
diff --git a/app/src/main/java/org/fdroid/fdroid/data/RepoPersister.java b/app/src/main/java/org/fdroid/fdroid/data/RepoPersister.java
index 019b73c46..a7a367346 100644
--- a/app/src/main/java/org/fdroid/fdroid/data/RepoPersister.java
+++ b/app/src/main/java/org/fdroid/fdroid/data/RepoPersister.java
@@ -6,7 +6,7 @@ import android.content.Context;
import android.content.OperationApplicationException;
import android.net.Uri;
import android.os.RemoteException;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import org.fdroid.fdroid.CompatibilityChecker;
import org.fdroid.fdroid.IndexUpdater;
diff --git a/app/src/main/java/org/fdroid/fdroid/data/RepoProvider.java b/app/src/main/java/org/fdroid/fdroid/data/RepoProvider.java
index c097e9e94..de16f160c 100644
--- a/app/src/main/java/org/fdroid/fdroid/data/RepoProvider.java
+++ b/app/src/main/java/org/fdroid/fdroid/data/RepoProvider.java
@@ -7,8 +7,8 @@ import android.content.Context;
import android.content.UriMatcher;
import android.database.Cursor;
import android.net.Uri;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import android.text.TextUtils;
import android.util.Log;
import org.fdroid.fdroid.AppUpdateStatusManager;
diff --git a/app/src/main/java/org/fdroid/fdroid/data/RepoPushRequest.java b/app/src/main/java/org/fdroid/fdroid/data/RepoPushRequest.java
index 7ac81ae95..98610d6ad 100644
--- a/app/src/main/java/org/fdroid/fdroid/data/RepoPushRequest.java
+++ b/app/src/main/java/org/fdroid/fdroid/data/RepoPushRequest.java
@@ -19,7 +19,7 @@
package org.fdroid.fdroid.data;
-import android.support.annotation.Nullable;
+import androidx.annotation.Nullable;
import org.fdroid.fdroid.Utils;
import java.util.Arrays;
diff --git a/app/src/main/java/org/fdroid/fdroid/data/RepoXMLHandler.java b/app/src/main/java/org/fdroid/fdroid/data/RepoXMLHandler.java
index 1a04961f9..745898771 100644
--- a/app/src/main/java/org/fdroid/fdroid/data/RepoXMLHandler.java
+++ b/app/src/main/java/org/fdroid/fdroid/data/RepoXMLHandler.java
@@ -21,8 +21,8 @@ package org.fdroid.fdroid.data;
import android.Manifest;
import android.os.Build;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import org.fdroid.fdroid.Utils;
import org.fdroid.fdroid.data.Schema.ApkTable;
import org.xml.sax.Attributes;
diff --git a/app/src/main/java/org/fdroid/fdroid/data/TempApkProvider.java b/app/src/main/java/org/fdroid/fdroid/data/TempApkProvider.java
index 1fb532f6a..1e688dcf0 100644
--- a/app/src/main/java/org/fdroid/fdroid/data/TempApkProvider.java
+++ b/app/src/main/java/org/fdroid/fdroid/data/TempApkProvider.java
@@ -5,7 +5,7 @@ import android.content.Context;
import android.content.UriMatcher;
import android.database.sqlite.SQLiteDatabase;
import android.net.Uri;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import org.fdroid.fdroid.data.Schema.ApkTable;
import org.fdroid.fdroid.data.Schema.ApkTable.Cols;
diff --git a/app/src/main/java/org/fdroid/fdroid/data/TempAppProvider.java b/app/src/main/java/org/fdroid/fdroid/data/TempAppProvider.java
index aa7a91719..2b5be0655 100644
--- a/app/src/main/java/org/fdroid/fdroid/data/TempAppProvider.java
+++ b/app/src/main/java/org/fdroid/fdroid/data/TempAppProvider.java
@@ -7,7 +7,7 @@ import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteException;
import android.net.Uri;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import android.text.TextUtils;
import org.fdroid.fdroid.data.Schema.ApkTable;
import org.fdroid.fdroid.data.Schema.AppMetadataTable;
diff --git a/app/src/main/java/org/fdroid/fdroid/installer/ApkFileProvider.java b/app/src/main/java/org/fdroid/fdroid/installer/ApkFileProvider.java
index c1f9fe615..e84cd52eb 100644
--- a/app/src/main/java/org/fdroid/fdroid/installer/ApkFileProvider.java
+++ b/app/src/main/java/org/fdroid/fdroid/installer/ApkFileProvider.java
@@ -24,7 +24,7 @@ import android.content.Intent;
import android.content.pm.PackageInfo;
import android.net.Uri;
import android.os.Build;
-import android.support.v4.content.FileProvider;
+import androidx.core.content.FileProvider;
import org.fdroid.fdroid.BuildConfig;
import org.fdroid.fdroid.data.Apk;
import org.fdroid.fdroid.data.SanitizedFile;
diff --git a/app/src/main/java/org/fdroid/fdroid/installer/ApkVerifier.java b/app/src/main/java/org/fdroid/fdroid/installer/ApkVerifier.java
index fc827122a..b97738fc7 100644
--- a/app/src/main/java/org/fdroid/fdroid/installer/ApkVerifier.java
+++ b/app/src/main/java/org/fdroid/fdroid/installer/ApkVerifier.java
@@ -23,7 +23,7 @@ import android.content.Context;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.net.Uri;
-import android.support.annotation.Nullable;
+import androidx.annotation.Nullable;
import android.text.TextUtils;
import android.util.Log;
import org.fdroid.fdroid.Utils;
diff --git a/app/src/main/java/org/fdroid/fdroid/installer/DefaultInstaller.java b/app/src/main/java/org/fdroid/fdroid/installer/DefaultInstaller.java
index 9a164e703..4b7d3edc1 100644
--- a/app/src/main/java/org/fdroid/fdroid/installer/DefaultInstaller.java
+++ b/app/src/main/java/org/fdroid/fdroid/installer/DefaultInstaller.java
@@ -24,7 +24,7 @@ import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import org.fdroid.fdroid.data.Apk;
/**
diff --git a/app/src/main/java/org/fdroid/fdroid/installer/DefaultInstallerActivity.java b/app/src/main/java/org/fdroid/fdroid/installer/DefaultInstallerActivity.java
index f72bf28c5..a9e82a383 100644
--- a/app/src/main/java/org/fdroid/fdroid/installer/DefaultInstallerActivity.java
+++ b/app/src/main/java/org/fdroid/fdroid/installer/DefaultInstallerActivity.java
@@ -29,7 +29,7 @@ import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
-import android.support.v4.app.FragmentActivity;
+import androidx.fragment.app.FragmentActivity;
import android.util.Log;
import org.fdroid.fdroid.R;
diff --git a/app/src/main/java/org/fdroid/fdroid/installer/ErrorDialogActivity.java b/app/src/main/java/org/fdroid/fdroid/installer/ErrorDialogActivity.java
index 9e38794e1..0c7cd6837 100644
--- a/app/src/main/java/org/fdroid/fdroid/installer/ErrorDialogActivity.java
+++ b/app/src/main/java/org/fdroid/fdroid/installer/ErrorDialogActivity.java
@@ -23,9 +23,9 @@ import android.app.Activity;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
-import android.support.annotation.Nullable;
-import android.support.v4.app.FragmentActivity;
-import android.support.v7.app.AlertDialog;
+import androidx.annotation.Nullable;
+import androidx.fragment.app.FragmentActivity;
+import androidx.appcompat.app.AlertDialog;
import android.view.ContextThemeWrapper;
import org.fdroid.fdroid.FDroidApp;
diff --git a/app/src/main/java/org/fdroid/fdroid/installer/FileInstaller.java b/app/src/main/java/org/fdroid/fdroid/installer/FileInstaller.java
index 7a2f5cd41..853ff8329 100644
--- a/app/src/main/java/org/fdroid/fdroid/installer/FileInstaller.java
+++ b/app/src/main/java/org/fdroid/fdroid/installer/FileInstaller.java
@@ -23,7 +23,7 @@ import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import org.fdroid.fdroid.data.Apk;
public class FileInstaller extends Installer {
diff --git a/app/src/main/java/org/fdroid/fdroid/installer/FileInstallerActivity.java b/app/src/main/java/org/fdroid/fdroid/installer/FileInstallerActivity.java
index 42a4cdbd6..7896ac3fe 100644
--- a/app/src/main/java/org/fdroid/fdroid/installer/FileInstallerActivity.java
+++ b/app/src/main/java/org/fdroid/fdroid/installer/FileInstallerActivity.java
@@ -6,11 +6,11 @@ import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.v4.app.ActivityCompat;
-import android.support.v4.app.FragmentActivity;
-import android.support.v4.content.ContextCompat;
-import android.support.v7.app.AlertDialog;
+import androidx.annotation.NonNull;
+import androidx.core.app.ActivityCompat;
+import androidx.fragment.app.FragmentActivity;
+import androidx.core.content.ContextCompat;
+import androidx.appcompat.app.AlertDialog;
import android.view.ContextThemeWrapper;
import android.widget.Toast;
import org.apache.commons.io.FileUtils;
diff --git a/app/src/main/java/org/fdroid/fdroid/installer/InstallHistoryService.java b/app/src/main/java/org/fdroid/fdroid/installer/InstallHistoryService.java
index de13a6cb0..4fd271d23 100644
--- a/app/src/main/java/org/fdroid/fdroid/installer/InstallHistoryService.java
+++ b/app/src/main/java/org/fdroid/fdroid/installer/InstallHistoryService.java
@@ -26,7 +26,7 @@ import android.content.Intent;
import android.content.IntentFilter;
import android.net.Uri;
import android.os.Process;
-import android.support.v4.content.LocalBroadcastManager;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import android.text.TextUtils;
import org.fdroid.fdroid.Utils;
import org.fdroid.fdroid.data.Apk;
diff --git a/app/src/main/java/org/fdroid/fdroid/installer/InstallManagerService.java b/app/src/main/java/org/fdroid/fdroid/installer/InstallManagerService.java
index 03b863010..7a7cc2c62 100644
--- a/app/src/main/java/org/fdroid/fdroid/installer/InstallManagerService.java
+++ b/app/src/main/java/org/fdroid/fdroid/installer/InstallManagerService.java
@@ -10,8 +10,8 @@ import android.content.SharedPreferences;
import android.content.pm.PackageInfo;
import android.net.Uri;
import android.os.IBinder;
-import android.support.annotation.NonNull;
-import android.support.v4.content.LocalBroadcastManager;
+import androidx.annotation.NonNull;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import android.text.TextUtils;
import android.util.Log;
import org.apache.commons.io.FileUtils;
diff --git a/app/src/main/java/org/fdroid/fdroid/installer/Installer.java b/app/src/main/java/org/fdroid/fdroid/installer/Installer.java
index 7c3e7e761..a5bd7f872 100644
--- a/app/src/main/java/org/fdroid/fdroid/installer/Installer.java
+++ b/app/src/main/java/org/fdroid/fdroid/installer/Installer.java
@@ -28,8 +28,8 @@ import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Build;
import android.os.PatternMatcher;
-import android.support.annotation.NonNull;
-import android.support.v4.content.LocalBroadcastManager;
+import androidx.annotation.NonNull;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import android.text.TextUtils;
import org.fdroid.fdroid.BuildConfig;
import org.fdroid.fdroid.Utils;
diff --git a/app/src/main/java/org/fdroid/fdroid/installer/InstallerFactory.java b/app/src/main/java/org/fdroid/fdroid/installer/InstallerFactory.java
index 6b5874d78..a3ccd59b1 100644
--- a/app/src/main/java/org/fdroid/fdroid/installer/InstallerFactory.java
+++ b/app/src/main/java/org/fdroid/fdroid/installer/InstallerFactory.java
@@ -21,7 +21,7 @@
package org.fdroid.fdroid.installer;
import android.content.Context;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import android.text.TextUtils;
import org.fdroid.fdroid.Utils;
import org.fdroid.fdroid.data.Apk;
diff --git a/app/src/main/java/org/fdroid/fdroid/installer/InstallerService.java b/app/src/main/java/org/fdroid/fdroid/installer/InstallerService.java
index ac927d392..fe38c8326 100644
--- a/app/src/main/java/org/fdroid/fdroid/installer/InstallerService.java
+++ b/app/src/main/java/org/fdroid/fdroid/installer/InstallerService.java
@@ -24,8 +24,8 @@ import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;
-import android.support.annotation.NonNull;
-import android.support.v4.app.JobIntentService;
+import androidx.annotation.NonNull;
+import androidx.core.app.JobIntentService;
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.filefilter.WildcardFileFilter;
import org.fdroid.fdroid.Utils;
diff --git a/app/src/main/java/org/fdroid/fdroid/installer/PrivilegedInstaller.java b/app/src/main/java/org/fdroid/fdroid/installer/PrivilegedInstaller.java
index f44a5d974..47e26c817 100644
--- a/app/src/main/java/org/fdroid/fdroid/installer/PrivilegedInstaller.java
+++ b/app/src/main/java/org/fdroid/fdroid/installer/PrivilegedInstaller.java
@@ -29,7 +29,7 @@ import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.IBinder;
import android.os.RemoteException;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import android.util.Log;
import org.fdroid.fdroid.BuildConfig;
import org.fdroid.fdroid.Preferences;
diff --git a/app/src/main/java/org/fdroid/fdroid/net/BluetoothDownloader.java b/app/src/main/java/org/fdroid/fdroid/net/BluetoothDownloader.java
index 15f6b7849..32eee69ae 100644
--- a/app/src/main/java/org/fdroid/fdroid/net/BluetoothDownloader.java
+++ b/app/src/main/java/org/fdroid/fdroid/net/BluetoothDownloader.java
@@ -1,7 +1,7 @@
package org.fdroid.fdroid.net;
import android.net.Uri;
-import android.support.annotation.Nullable;
+import androidx.annotation.Nullable;
import android.util.Log;
import org.apache.commons.io.input.BoundedInputStream;
import org.fdroid.fdroid.Utils;
diff --git a/app/src/main/java/org/fdroid/fdroid/net/ConnectivityMonitorService.java b/app/src/main/java/org/fdroid/fdroid/net/ConnectivityMonitorService.java
index f805bdf63..d5243e0b1 100644
--- a/app/src/main/java/org/fdroid/fdroid/net/ConnectivityMonitorService.java
+++ b/app/src/main/java/org/fdroid/fdroid/net/ConnectivityMonitorService.java
@@ -7,8 +7,8 @@ import android.content.IntentFilter;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Build;
-import android.support.annotation.NonNull;
-import android.support.v4.app.JobIntentService;
+import androidx.annotation.NonNull;
+import androidx.core.app.JobIntentService;
import android.util.Log;
import com.nostra13.universalimageloader.core.ImageLoader;
import org.fdroid.fdroid.FDroidApp;
diff --git a/app/src/main/java/org/fdroid/fdroid/net/Downloader.java b/app/src/main/java/org/fdroid/fdroid/net/Downloader.java
index b7661fe9f..ce2f2aed8 100644
--- a/app/src/main/java/org/fdroid/fdroid/net/Downloader.java
+++ b/app/src/main/java/org/fdroid/fdroid/net/Downloader.java
@@ -1,7 +1,7 @@
package org.fdroid.fdroid.net;
import android.net.Uri;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import android.text.format.DateUtils;
import org.fdroid.fdroid.ProgressListener;
import org.fdroid.fdroid.Utils;
diff --git a/app/src/main/java/org/fdroid/fdroid/net/DownloaderService.java b/app/src/main/java/org/fdroid/fdroid/net/DownloaderService.java
index f96e90607..23b9f5963 100644
--- a/app/src/main/java/org/fdroid/fdroid/net/DownloaderService.java
+++ b/app/src/main/java/org/fdroid/fdroid/net/DownloaderService.java
@@ -29,7 +29,7 @@ import android.os.Looper;
import android.os.Message;
import android.os.PatternMatcher;
import android.os.Process;
-import android.support.v4.content.LocalBroadcastManager;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import android.text.TextUtils;
import android.util.Log;
import android.util.LogPrinter;
diff --git a/app/src/main/java/org/fdroid/fdroid/net/TreeUriDownloader.java b/app/src/main/java/org/fdroid/fdroid/net/TreeUriDownloader.java
index e706879b5..9f750ff04 100644
--- a/app/src/main/java/org/fdroid/fdroid/net/TreeUriDownloader.java
+++ b/app/src/main/java/org/fdroid/fdroid/net/TreeUriDownloader.java
@@ -3,7 +3,7 @@ package org.fdroid.fdroid.net;
import android.annotation.TargetApi;
import android.content.Context;
import android.net.Uri;
-import android.support.v4.provider.DocumentFile;
+import androidx.documentfile.provider.DocumentFile;
import org.fdroid.fdroid.FDroidApp;
import java.io.BufferedInputStream;
@@ -25,7 +25,7 @@ import java.net.ProtocolException;
* The base repo URL of such a repo looks like:
* {@code content://com.android.externalstorage.documents/tree/1AFB-2402%3A/document/1AFB-2402%3Atesty.at.or.at%2Ffdroid%2Frepo}
*
- * @see android.support.v4.provider.DocumentFile#fromTreeUri(Context, Uri)
+ * @see DocumentFile#fromTreeUri(Context, Uri)
* @see Open Files using Storage Access Framework
* @see Using Scoped Directory Access
*/
diff --git a/app/src/main/java/org/fdroid/fdroid/privileged/views/AppSecurityPermissions.java b/app/src/main/java/org/fdroid/fdroid/privileged/views/AppSecurityPermissions.java
index e41bf35f1..c6f0d3356 100644
--- a/app/src/main/java/org/fdroid/fdroid/privileged/views/AppSecurityPermissions.java
+++ b/app/src/main/java/org/fdroid/fdroid/privileged/views/AppSecurityPermissions.java
@@ -31,9 +31,9 @@ import android.graphics.Color;
import android.graphics.drawable.Drawable;
import android.os.Build;
import android.os.Parcel;
-import android.support.v4.content.ContextCompat;
-import android.support.v4.graphics.drawable.DrawableCompat;
-import android.support.v7.app.AlertDialog;
+import androidx.core.content.ContextCompat;
+import androidx.core.graphics.drawable.DrawableCompat;
+import androidx.appcompat.app.AlertDialog;
import android.text.SpannableStringBuilder;
import android.text.TextUtils;
import android.util.AttributeSet;
diff --git a/app/src/main/java/org/fdroid/fdroid/privileged/views/InstallConfirmActivity.java b/app/src/main/java/org/fdroid/fdroid/privileged/views/InstallConfirmActivity.java
index 051884d78..cfff26048 100644
--- a/app/src/main/java/org/fdroid/fdroid/privileged/views/InstallConfirmActivity.java
+++ b/app/src/main/java/org/fdroid/fdroid/privileged/views/InstallConfirmActivity.java
@@ -25,8 +25,8 @@ import android.content.Intent;
import android.content.pm.ApplicationInfo;
import android.net.Uri;
import android.os.Bundle;
-import android.support.v4.app.FragmentActivity;
-import android.support.v4.view.ViewPager;
+import androidx.fragment.app.FragmentActivity;
+import androidx.viewpager.widget.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
diff --git a/app/src/main/java/org/fdroid/fdroid/privileged/views/TabsAdapter.java b/app/src/main/java/org/fdroid/fdroid/privileged/views/TabsAdapter.java
index 7c03dbe2c..0677c83f8 100644
--- a/app/src/main/java/org/fdroid/fdroid/privileged/views/TabsAdapter.java
+++ b/app/src/main/java/org/fdroid/fdroid/privileged/views/TabsAdapter.java
@@ -20,9 +20,9 @@ package org.fdroid.fdroid.privileged.views;
import android.app.Activity;
import android.content.Context;
import android.graphics.Rect;
-import android.support.annotation.NonNull;
-import android.support.v4.view.PagerAdapter;
-import android.support.v4.view.ViewPager;
+import androidx.annotation.NonNull;
+import androidx.viewpager.widget.PagerAdapter;
+import androidx.viewpager.widget.ViewPager;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TabHost;
diff --git a/app/src/main/java/org/fdroid/fdroid/privileged/views/UninstallDialogActivity.java b/app/src/main/java/org/fdroid/fdroid/privileged/views/UninstallDialogActivity.java
index 2538cefb8..753b0ac6e 100644
--- a/app/src/main/java/org/fdroid/fdroid/privileged/views/UninstallDialogActivity.java
+++ b/app/src/main/java/org/fdroid/fdroid/privileged/views/UninstallDialogActivity.java
@@ -25,9 +25,9 @@ import android.content.Intent;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.os.Bundle;
-import android.support.annotation.Nullable;
-import android.support.v4.app.FragmentActivity;
-import android.support.v7.app.AlertDialog;
+import androidx.annotation.Nullable;
+import androidx.fragment.app.FragmentActivity;
+import androidx.appcompat.app.AlertDialog;
import android.view.ContextThemeWrapper;
import org.fdroid.fdroid.FDroidApp;
diff --git a/app/src/main/java/org/fdroid/fdroid/qr/CameraCharacteristicsMinApiLevel21.java b/app/src/main/java/org/fdroid/fdroid/qr/CameraCharacteristicsMinApiLevel21.java
index 639e14d2a..07964ec1f 100644
--- a/app/src/main/java/org/fdroid/fdroid/qr/CameraCharacteristicsMinApiLevel21.java
+++ b/app/src/main/java/org/fdroid/fdroid/qr/CameraCharacteristicsMinApiLevel21.java
@@ -6,7 +6,7 @@ import android.hardware.camera2.CameraAccessException;
import android.hardware.camera2.CameraCharacteristics;
import android.hardware.camera2.CameraManager;
import android.os.Build;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import android.util.Log;
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
diff --git a/app/src/main/java/org/fdroid/fdroid/views/AppDetailsActivity.java b/app/src/main/java/org/fdroid/fdroid/views/AppDetailsActivity.java
index 3d89b06ba..4dae4e34c 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/AppDetailsActivity.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/AppDetailsActivity.java
@@ -35,14 +35,14 @@ import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
-import android.support.annotation.Nullable;
-import android.support.design.widget.CoordinatorLayout;
-import android.support.v4.content.LocalBroadcastManager;
-import android.support.v7.app.AlertDialog;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
-import android.support.v7.widget.Toolbar;
+import androidx.annotation.Nullable;
+import androidx.coordinatorlayout.widget.CoordinatorLayout;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
+import androidx.appcompat.app.AlertDialog;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+import androidx.appcompat.widget.Toolbar;
import android.text.TextUtils;
import android.util.Log;
import android.view.Menu;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/AppDetailsRecyclerViewAdapter.java b/app/src/main/java/org/fdroid/fdroid/views/AppDetailsRecyclerViewAdapter.java
index 4613290ad..075826871 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/AppDetailsRecyclerViewAdapter.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/AppDetailsRecyclerViewAdapter.java
@@ -9,18 +9,18 @@ import android.content.res.Resources;
import android.graphics.Rect;
import android.net.Uri;
import android.os.Build;
-import android.support.annotation.DrawableRes;
-import android.support.annotation.LayoutRes;
-import android.support.annotation.NonNull;
-import android.support.v4.content.ContextCompat;
-import android.support.v4.content.FileProvider;
-import android.support.v4.view.ViewCompat;
-import android.support.v4.widget.TextViewCompat;
-import android.support.v7.app.AlertDialog;
-import android.support.v7.widget.GridLayout;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.LinearSmoothScroller;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.DrawableRes;
+import androidx.annotation.LayoutRes;
+import androidx.annotation.NonNull;
+import androidx.core.content.ContextCompat;
+import androidx.core.content.FileProvider;
+import androidx.core.view.ViewCompat;
+import androidx.core.widget.TextViewCompat;
+import androidx.appcompat.app.AlertDialog;
+import androidx.gridlayout.widget.GridLayout;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.LinearSmoothScroller;
+import androidx.recyclerview.widget.RecyclerView;
import android.text.Html;
import android.text.Spannable;
import android.text.Spanned;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/BannerUpdatingRepos.java b/app/src/main/java/org/fdroid/fdroid/views/BannerUpdatingRepos.java
index 81d3e8d1c..4597d9786 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/BannerUpdatingRepos.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/BannerUpdatingRepos.java
@@ -4,7 +4,7 @@ import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
-import android.support.v4.content.LocalBroadcastManager;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import android.util.AttributeSet;
import android.view.Gravity;
import android.view.View;
@@ -15,7 +15,7 @@ import org.fdroid.fdroid.UpdateService;
* Widget which reflects whether or not a repo update is currently in progress or not. If so, shows
* some sort of feedback to the user.
*/
-public class BannerUpdatingRepos extends android.support.v7.widget.AppCompatTextView {
+public class BannerUpdatingRepos extends androidx.appcompat.widget.AppCompatTextView {
public BannerUpdatingRepos(Context context) {
this(context, null);
diff --git a/app/src/main/java/org/fdroid/fdroid/views/FixAppBarLayoutBehavior.java b/app/src/main/java/org/fdroid/fdroid/views/FixAppBarLayoutBehavior.java
index 6103dc930..07d9aff0b 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/FixAppBarLayoutBehavior.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/FixAppBarLayoutBehavior.java
@@ -17,9 +17,9 @@
package org.fdroid.fdroid.views;
import android.content.Context;
-import android.support.design.widget.AppBarLayout;
-import android.support.design.widget.CoordinatorLayout;
-import android.support.v4.view.ViewCompat;
+import com.google.android.material.appbar.AppBarLayout;
+import androidx.coordinatorlayout.widget.CoordinatorLayout;
+import androidx.core.view.ViewCompat;
import android.util.AttributeSet;
import android.view.View;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/InstallHistoryActivity.java b/app/src/main/java/org/fdroid/fdroid/views/InstallHistoryActivity.java
index b513b8c8b..8efc42ba8 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/InstallHistoryActivity.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/InstallHistoryActivity.java
@@ -25,9 +25,9 @@ import android.content.Intent;
import android.database.Cursor;
import android.os.Bundle;
import android.os.ParcelFileDescriptor;
-import android.support.v4.app.ShareCompat;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.Toolbar;
+import androidx.core.app.ShareCompat;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.appcompat.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/LinearLayoutManagerSnapHelper.java b/app/src/main/java/org/fdroid/fdroid/views/LinearLayoutManagerSnapHelper.java
index 8ca0d88cb..476fad3c0 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/LinearLayoutManagerSnapHelper.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/LinearLayoutManagerSnapHelper.java
@@ -1,10 +1,10 @@
package org.fdroid.fdroid.views;
-import android.support.annotation.NonNull;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.LinearSnapHelper;
-import android.support.v7.widget.OrientationHelper;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.LinearSnapHelper;
+import androidx.recyclerview.widget.OrientationHelper;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.View;
@SuppressWarnings("LineLength")
diff --git a/app/src/main/java/org/fdroid/fdroid/views/LiveSeekBarPreference.java b/app/src/main/java/org/fdroid/fdroid/views/LiveSeekBarPreference.java
index 11916434c..7ee68b404 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/LiveSeekBarPreference.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/LiveSeekBarPreference.java
@@ -1,8 +1,8 @@
package org.fdroid.fdroid.views;
import android.content.Context;
-import android.support.v7.preference.PreferenceViewHolder;
-import android.support.v7.preference.SeekBarPreference;
+import androidx.preference.PreferenceViewHolder;
+import androidx.preference.SeekBarPreference;
import android.util.AttributeSet;
import android.view.View;
import android.widget.SeekBar;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/ManageReposActivity.java b/app/src/main/java/org/fdroid/fdroid/views/ManageReposActivity.java
index d4fb83d8f..e0a931685 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/ManageReposActivity.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/ManageReposActivity.java
@@ -35,15 +35,15 @@ import android.net.wifi.WifiManager;
import android.os.AsyncTask;
import android.os.Build;
import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.v4.app.LoaderManager;
-import android.support.v4.app.NavUtils;
-import android.support.v4.app.TaskStackBuilder;
-import android.support.v4.content.CursorLoader;
-import android.support.v4.content.Loader;
-import android.support.v7.app.AlertDialog;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.Toolbar;
+import androidx.annotation.NonNull;
+import androidx.loader.app.LoaderManager;
+import androidx.core.app.NavUtils;
+import androidx.core.app.TaskStackBuilder;
+import androidx.loader.content.CursorLoader;
+import androidx.loader.content.Loader;
+import androidx.appcompat.app.AlertDialog;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.appcompat.widget.Toolbar;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/OverscrollLinearLayoutManager.java b/app/src/main/java/org/fdroid/fdroid/views/OverscrollLinearLayoutManager.java
index 29c94dfdf..c0de8cc03 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/OverscrollLinearLayoutManager.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/OverscrollLinearLayoutManager.java
@@ -1,8 +1,8 @@
package org.fdroid.fdroid.views;
import android.content.Context;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
import android.util.AttributeSet;
/**
diff --git a/app/src/main/java/org/fdroid/fdroid/views/PreferencesFragment.java b/app/src/main/java/org/fdroid/fdroid/views/PreferencesFragment.java
index 53ac37dad..39d4573b8 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/PreferencesFragment.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/PreferencesFragment.java
@@ -33,17 +33,17 @@ import android.content.SharedPreferences;
import android.content.pm.PackageManager;
import android.os.Build;
import android.os.Bundle;
-import android.support.v14.preference.PreferenceFragment;
-import android.support.v14.preference.SwitchPreference;
-import android.support.v7.preference.CheckBoxPreference;
-import android.support.v7.preference.EditTextPreference;
-import android.support.v7.preference.ListPreference;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceCategory;
-import android.support.v7.preference.PreferenceGroup;
-import android.support.v7.preference.SeekBarPreference;
-import android.support.v7.widget.LinearSmoothScroller;
-import android.support.v7.widget.RecyclerView;
+import androidx.preference.PreferenceFragment;
+import androidx.preference.SwitchPreference;
+import androidx.preference.CheckBoxPreference;
+import androidx.preference.EditTextPreference;
+import androidx.preference.ListPreference;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceCategory;
+import androidx.preference.PreferenceGroup;
+import androidx.preference.SeekBarPreference;
+import androidx.recyclerview.widget.LinearSmoothScroller;
+import androidx.recyclerview.widget.RecyclerView;
import android.text.TextUtils;
import android.view.WindowManager;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/RepoAdapter.java b/app/src/main/java/org/fdroid/fdroid/views/RepoAdapter.java
index af631a623..0b54aca18 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/RepoAdapter.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/RepoAdapter.java
@@ -2,7 +2,7 @@ package org.fdroid.fdroid.views;
import android.content.Context;
import android.database.Cursor;
-import android.support.v4.widget.CursorAdapter;
+import androidx.cursoradapter.widget.CursorAdapter;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/RepoDetailsActivity.java b/app/src/main/java/org/fdroid/fdroid/views/RepoDetailsActivity.java
index 408a18fcf..6310344e5 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/RepoDetailsActivity.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/RepoDetailsActivity.java
@@ -13,14 +13,14 @@ import android.nfc.NfcAdapter;
import android.os.Build;
import android.os.Bundle;
import android.os.Parcelable;
-import android.support.annotation.NonNull;
-import android.support.v4.app.NavUtils;
-import android.support.v4.content.LocalBroadcastManager;
-import android.support.v7.app.AlertDialog;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
-import android.support.v7.widget.Toolbar;
+import androidx.annotation.NonNull;
+import androidx.core.app.NavUtils;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
+import androidx.appcompat.app.AlertDialog;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+import androidx.appcompat.widget.Toolbar;
import android.text.TextUtils;
import android.text.format.DateUtils;
import android.view.LayoutInflater;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/ScreenShotsActivity.java b/app/src/main/java/org/fdroid/fdroid/views/ScreenShotsActivity.java
index e02201b48..b66cc5e5b 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/ScreenShotsActivity.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/ScreenShotsActivity.java
@@ -4,13 +4,13 @@ import android.annotation.TargetApi;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
-import android.support.v4.app.FragmentManager;
-import android.support.v4.app.FragmentStatePagerAdapter;
-import android.support.v4.view.ViewPager;
-import android.support.v7.app.AppCompatActivity;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.fragment.app.Fragment;
+import androidx.fragment.app.FragmentManager;
+import androidx.fragment.app.FragmentStatePagerAdapter;
+import androidx.viewpager.widget.ViewPager;
+import androidx.appcompat.app.AppCompatActivity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/ScreenShotsRecyclerViewAdapter.java b/app/src/main/java/org/fdroid/fdroid/views/ScreenShotsRecyclerViewAdapter.java
index 66f48e29c..a9910cb87 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/ScreenShotsRecyclerViewAdapter.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/ScreenShotsRecyclerViewAdapter.java
@@ -1,8 +1,8 @@
package org.fdroid.fdroid.views;
import android.content.Context;
-import android.support.annotation.NonNull;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/SeekBarForegroundThumb.java b/app/src/main/java/org/fdroid/fdroid/views/SeekBarForegroundThumb.java
index 0ac13e55a..8b9ebad69 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/SeekBarForegroundThumb.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/SeekBarForegroundThumb.java
@@ -4,7 +4,7 @@ import android.content.Context;
import android.graphics.Canvas;
import android.graphics.drawable.Drawable;
import android.os.Build;
-import android.support.v7.widget.AppCompatSeekBar;
+import androidx.appcompat.widget.AppCompatSeekBar;
import android.util.AttributeSet;
import org.fdroid.fdroid.R;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/ShareChooserDialog.java b/app/src/main/java/org/fdroid/fdroid/views/ShareChooserDialog.java
index 86ca7e2a9..a2edf75c9 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/ShareChooserDialog.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/ShareChooserDialog.java
@@ -8,13 +8,13 @@ import android.content.pm.ResolveInfo;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.design.widget.BottomSheetDialogFragment;
-import android.support.design.widget.CoordinatorLayout;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.GridLayoutManager;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import com.google.android.material.bottomsheet.BottomSheetDialogFragment;
+import androidx.coordinatorlayout.widget.CoordinatorLayout;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.recyclerview.widget.GridLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/apps/AppListActivity.java b/app/src/main/java/org/fdroid/fdroid/views/apps/AppListActivity.java
index ecca389b6..f59a3cdf1 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/apps/AppListActivity.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/apps/AppListActivity.java
@@ -24,14 +24,14 @@ import android.content.Context;
import android.content.Intent;
import android.database.Cursor;
import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.LoaderManager;
-import android.support.v4.content.CursorLoader;
-import android.support.v4.content.Loader;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.loader.app.LoaderManager;
+import androidx.loader.content.CursorLoader;
+import androidx.loader.content.Loader;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.KeyEvent;
import android.view.View;
import android.view.inputmethod.EditorInfo;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/apps/AppListAdapter.java b/app/src/main/java/org/fdroid/fdroid/views/apps/AppListAdapter.java
index 0b7762f53..a1a0170a3 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/apps/AppListAdapter.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/apps/AppListAdapter.java
@@ -2,8 +2,8 @@ package org.fdroid.fdroid.views.apps;
import android.app.Activity;
import android.database.Cursor;
-import android.support.annotation.NonNull;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.ViewGroup;
import org.fdroid.fdroid.R;
import org.fdroid.fdroid.data.App;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/apps/AppListItemController.java b/app/src/main/java/org/fdroid/fdroid/views/apps/AppListItemController.java
index 87123287a..74057f24d 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/apps/AppListItemController.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/apps/AppListItemController.java
@@ -11,13 +11,13 @@ import android.graphics.Outline;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.ActivityOptionsCompat;
-import android.support.v4.content.ContextCompat;
-import android.support.v4.content.LocalBroadcastManager;
-import android.support.v4.util.Pair;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.core.app.ActivityOptionsCompat;
+import androidx.core.content.ContextCompat;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
+import androidx.core.util.Pair;
+import androidx.recyclerview.widget.RecyclerView;
import android.text.TextUtils;
import android.view.View;
import android.view.ViewOutlineProvider;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/apps/AppListItemDivider.java b/app/src/main/java/org/fdroid/fdroid/views/apps/AppListItemDivider.java
index 565eaed10..182445715 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/apps/AppListItemDivider.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/apps/AppListItemDivider.java
@@ -2,9 +2,9 @@ package org.fdroid.fdroid.views.apps;
import android.content.Context;
import android.graphics.Rect;
-import android.support.v4.content.ContextCompat;
-import android.support.v7.widget.DividerItemDecoration;
-import android.support.v7.widget.RecyclerView;
+import androidx.core.content.ContextCompat;
+import androidx.recyclerview.widget.DividerItemDecoration;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.View;
import org.fdroid.fdroid.R;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/apps/AppListItemState.java b/app/src/main/java/org/fdroid/fdroid/views/apps/AppListItemState.java
index 4eaa14e82..c97f4e2a5 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/apps/AppListItemState.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/apps/AppListItemState.java
@@ -1,7 +1,7 @@
package org.fdroid.fdroid.views.apps;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import org.fdroid.fdroid.Utils;
import org.fdroid.fdroid.data.App;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/apps/CategorySpan.java b/app/src/main/java/org/fdroid/fdroid/views/apps/CategorySpan.java
index 4c47d02d5..f4a092a85 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/apps/CategorySpan.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/apps/CategorySpan.java
@@ -6,9 +6,9 @@ import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.RectF;
import android.graphics.drawable.Drawable;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.content.ContextCompat;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.core.content.ContextCompat;
import android.text.style.ReplacementSpan;
import org.fdroid.fdroid.R;
import org.fdroid.fdroid.views.categories.CategoryController;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/apps/CategoryTextWatcher.java b/app/src/main/java/org/fdroid/fdroid/views/apps/CategoryTextWatcher.java
index d924f8ce2..5565e61ce 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/apps/CategoryTextWatcher.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/apps/CategoryTextWatcher.java
@@ -3,8 +3,8 @@ package org.fdroid.fdroid.views.apps;
import android.annotation.TargetApi;
import android.content.Context;
import android.os.Build;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import android.text.Editable;
import android.text.Spanned;
import android.text.TextWatcher;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/apps/FeatureImage.java b/app/src/main/java/org/fdroid/fdroid/views/apps/FeatureImage.java
index 238c07026..ebcfebd26 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/apps/FeatureImage.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/apps/FeatureImage.java
@@ -9,12 +9,12 @@ import android.graphics.Paint;
import android.graphics.Path;
import android.graphics.Point;
import android.graphics.PorterDuff;
-import android.support.annotation.ColorInt;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.content.ContextCompat;
-import android.support.v7.graphics.Palette;
-import android.support.v7.widget.AppCompatImageView;
+import androidx.annotation.ColorInt;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.core.content.ContextCompat;
+import androidx.palette.graphics.Palette;
+import androidx.appcompat.widget.AppCompatImageView;
import android.text.TextUtils;
import android.util.AttributeSet;
import android.view.View;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/apps/StandardAppListItemController.java b/app/src/main/java/org/fdroid/fdroid/views/apps/StandardAppListItemController.java
index 63f724345..548cd6f4d 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/apps/StandardAppListItemController.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/apps/StandardAppListItemController.java
@@ -1,8 +1,8 @@
package org.fdroid.fdroid.views.apps;
import android.app.Activity;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import android.view.View;
import org.fdroid.fdroid.AppUpdateStatusManager;
import org.fdroid.fdroid.R;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/categories/AppCardController.java b/app/src/main/java/org/fdroid/fdroid/views/categories/AppCardController.java
index 4a99c238d..7df851d07 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/categories/AppCardController.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/categories/AppCardController.java
@@ -4,12 +4,12 @@ import android.app.Activity;
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
-import android.support.annotation.IdRes;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.ActivityOptionsCompat;
-import android.support.v4.util.Pair;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.IdRes;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.core.app.ActivityOptionsCompat;
+import androidx.core.util.Pair;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/categories/AppPreviewAdapter.java b/app/src/main/java/org/fdroid/fdroid/views/categories/AppPreviewAdapter.java
index 4f38abcac..22a7b5084 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/categories/AppPreviewAdapter.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/categories/AppPreviewAdapter.java
@@ -2,8 +2,8 @@ package org.fdroid.fdroid.views.categories;
import android.app.Activity;
import android.database.Cursor;
-import android.support.annotation.NonNull;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.ViewGroup;
import org.fdroid.fdroid.R;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/categories/CategoryAdapter.java b/app/src/main/java/org/fdroid/fdroid/views/categories/CategoryAdapter.java
index 3c144e93f..ec7f1eb7b 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/categories/CategoryAdapter.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/categories/CategoryAdapter.java
@@ -1,10 +1,10 @@
package org.fdroid.fdroid.views.categories;
import android.app.Activity;
-import android.support.annotation.NonNull;
-import android.support.v4.app.LoaderManager;
-import android.support.v7.recyclerview.extensions.ListAdapter;
-import android.support.v7.util.DiffUtil;
+import androidx.annotation.NonNull;
+import androidx.loader.app.LoaderManager;
+import androidx.recyclerview.widget.ListAdapter;
+import androidx.recyclerview.widget.DiffUtil;
import android.view.ViewGroup;
import org.fdroid.fdroid.R;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/categories/CategoryController.java b/app/src/main/java/org/fdroid/fdroid/views/categories/CategoryController.java
index d2eab3b16..9cbaa4d8b 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/categories/CategoryController.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/categories/CategoryController.java
@@ -8,14 +8,14 @@ import android.database.Cursor;
import android.graphics.Color;
import android.graphics.Rect;
import android.os.Bundle;
-import android.support.annotation.ColorInt;
-import android.support.annotation.NonNull;
-import android.support.v4.app.LoaderManager;
-import android.support.v4.content.ContextCompat;
-import android.support.v4.content.CursorLoader;
-import android.support.v4.content.Loader;
-import android.support.v4.view.ViewCompat;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.ColorInt;
+import androidx.annotation.NonNull;
+import androidx.loader.app.LoaderManager;
+import androidx.core.content.ContextCompat;
+import androidx.loader.content.CursorLoader;
+import androidx.loader.content.Loader;
+import androidx.core.view.ViewCompat;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.View;
import android.widget.Button;
import android.widget.FrameLayout;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/installed/InstalledAppListAdapter.java b/app/src/main/java/org/fdroid/fdroid/views/installed/InstalledAppListAdapter.java
index 57976a62b..e2b6c262d 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/installed/InstalledAppListAdapter.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/installed/InstalledAppListAdapter.java
@@ -3,9 +3,9 @@ package org.fdroid.fdroid.views.installed;
import android.app.Activity;
import android.database.Cursor;
import android.provider.BaseColumns;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.View;
import android.view.ViewGroup;
import org.fdroid.fdroid.R;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/installed/InstalledAppListItemController.java b/app/src/main/java/org/fdroid/fdroid/views/installed/InstalledAppListItemController.java
index bbed32d1d..a505a82d5 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/installed/InstalledAppListItemController.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/installed/InstalledAppListItemController.java
@@ -1,8 +1,8 @@
package org.fdroid.fdroid.views.installed;
import android.app.Activity;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import android.view.View;
import org.fdroid.fdroid.AppUpdateStatusManager;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/installed/InstalledAppsActivity.java b/app/src/main/java/org/fdroid/fdroid/views/installed/InstalledAppsActivity.java
index cfb293241..5cdc1e82e 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/installed/InstalledAppsActivity.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/installed/InstalledAppsActivity.java
@@ -21,15 +21,15 @@ package org.fdroid.fdroid.views.installed;
import android.database.Cursor;
import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.v4.app.LoaderManager;
-import android.support.v4.app.ShareCompat;
-import android.support.v4.content.CursorLoader;
-import android.support.v4.content.Loader;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
-import android.support.v7.widget.Toolbar;
+import androidx.annotation.NonNull;
+import androidx.loader.app.LoaderManager;
+import androidx.core.app.ShareCompat;
+import androidx.loader.content.CursorLoader;
+import androidx.loader.content.Loader;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+import androidx.appcompat.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/main/MainActivity.java b/app/src/main/java/org/fdroid/fdroid/views/main/MainActivity.java
index 82e9ce64b..ca2774e83 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/main/MainActivity.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/main/MainActivity.java
@@ -30,12 +30,12 @@ import android.content.IntentFilter;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.content.LocalBroadcastManager;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
import android.text.TextUtils;
import android.util.TypedValue;
import android.view.View;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/main/MainViewAdapter.java b/app/src/main/java/org/fdroid/fdroid/views/main/MainViewAdapter.java
index 2f4dc97bb..eb7319f0a 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/main/MainViewAdapter.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/main/MainViewAdapter.java
@@ -21,9 +21,9 @@
package org.fdroid.fdroid.views.main;
-import android.support.annotation.NonNull;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.recyclerview.widget.RecyclerView;
import android.util.SparseIntArray;
import android.view.Menu;
import android.view.ViewGroup;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/main/SettingsView.java b/app/src/main/java/org/fdroid/fdroid/views/main/SettingsView.java
index 7bff54835..139a7b021 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/main/SettingsView.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/main/SettingsView.java
@@ -4,9 +4,12 @@ import android.annotation.TargetApi;
import android.app.Fragment;
import android.app.FragmentTransaction;
import android.content.Context;
-import android.support.v7.app.AppCompatActivity;
+import androidx.appcompat.app.AppCompatActivity;
import android.util.AttributeSet;
import android.widget.FrameLayout;
+
+import androidx.fragment.app.FragmentStatePagerAdapter;
+
import org.fdroid.fdroid.R;
import org.fdroid.fdroid.views.PreferencesFragment;
@@ -18,7 +21,7 @@ import org.fdroid.fdroid.views.PreferencesFragment;
* Based on code from https://github.com/lsjwzh/RecyclerViewPager/blob/master/lib/src/main/java/com/lsjwzh/widget/recyclerviewpager/FragmentStatePagerAdapter.java
* licensed under the Apache 2.0 license (https://github.com/lsjwzh/RecyclerViewPager/blob/master/LICENSE).
*
- * @see android.support.v4.app.FragmentStatePagerAdapter Much of the code here was ported from this class.
+ * @see FragmentStatePagerAdapter Much of the code here was ported from this class.
*/
public class SettingsView extends FrameLayout {
diff --git a/app/src/main/java/org/fdroid/fdroid/views/main/WhatsNewViewBinder.java b/app/src/main/java/org/fdroid/fdroid/views/main/WhatsNewViewBinder.java
index d11cc5fa0..d223d284e 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/main/WhatsNewViewBinder.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/main/WhatsNewViewBinder.java
@@ -3,15 +3,15 @@ package org.fdroid.fdroid.views.main;
import android.content.Intent;
import android.database.Cursor;
import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.design.widget.FloatingActionButton;
-import android.support.v4.app.LoaderManager;
-import android.support.v4.content.CursorLoader;
-import android.support.v4.content.Loader;
-import android.support.v4.widget.SwipeRefreshLayout;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.GridLayoutManager;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import com.google.android.material.floatingactionbutton.FloatingActionButton;
+import androidx.loader.app.LoaderManager;
+import androidx.loader.content.CursorLoader;
+import androidx.loader.content.Loader;
+import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.recyclerview.widget.GridLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.LinearLayout;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/updates/UpdatesAdapter.java b/app/src/main/java/org/fdroid/fdroid/views/updates/UpdatesAdapter.java
index f53807077..491da272e 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/updates/UpdatesAdapter.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/updates/UpdatesAdapter.java
@@ -7,13 +7,13 @@ import android.content.IntentFilter;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.v4.app.LoaderManager;
-import android.support.v4.content.CursorLoader;
-import android.support.v4.content.Loader;
-import android.support.v4.content.LocalBroadcastManager;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.loader.app.LoaderManager;
+import androidx.loader.content.CursorLoader;
+import androidx.loader.content.Loader;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.ViewGroup;
import com.hannesdorfmann.adapterdelegates3.AdapterDelegatesManager;
import org.fdroid.fdroid.AppUpdateStatusManager;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/updates/UpdatesItemTouchCallback.java b/app/src/main/java/org/fdroid/fdroid/views/updates/UpdatesItemTouchCallback.java
index cde7ae3ac..d3cc3c7ac 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/updates/UpdatesItemTouchCallback.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/updates/UpdatesItemTouchCallback.java
@@ -1,7 +1,7 @@
package org.fdroid.fdroid.views.updates;
-import android.support.v7.widget.RecyclerView;
-import android.support.v7.widget.helper.ItemTouchHelper;
+import androidx.recyclerview.widget.RecyclerView;
+import androidx.recyclerview.widget.ItemTouchHelper;
import org.fdroid.fdroid.views.apps.AppListItemController;
import org.fdroid.fdroid.views.updates.items.AppStatusListItemController;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/updates/UpdatesViewBinder.java b/app/src/main/java/org/fdroid/fdroid/views/updates/UpdatesViewBinder.java
index fecfe188b..5d114a7c6 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/updates/UpdatesViewBinder.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/updates/UpdatesViewBinder.java
@@ -4,12 +4,12 @@ import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
-import android.support.v4.content.LocalBroadcastManager;
-import android.support.v4.widget.SwipeRefreshLayout;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
-import android.support.v7.widget.helper.ItemTouchHelper;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
+import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+import androidx.recyclerview.widget.ItemTouchHelper;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.ImageView;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/updates/items/AppStatus.java b/app/src/main/java/org/fdroid/fdroid/views/updates/items/AppStatus.java
index 792b719e4..3282e5110 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/updates/items/AppStatus.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/updates/items/AppStatus.java
@@ -1,8 +1,8 @@
package org.fdroid.fdroid.views.updates.items;
import android.app.Activity;
-import android.support.annotation.NonNull;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.ViewGroup;
import com.hannesdorfmann.adapterdelegates3.AdapterDelegate;
import org.fdroid.fdroid.AppUpdateStatusManager;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/updates/items/AppStatusListItemController.java b/app/src/main/java/org/fdroid/fdroid/views/updates/items/AppStatusListItemController.java
index 34ee0d502..265f9f715 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/updates/items/AppStatusListItemController.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/updates/items/AppStatusListItemController.java
@@ -1,9 +1,9 @@
package org.fdroid.fdroid.views.updates.items;
import android.app.Activity;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.design.widget.Snackbar;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import com.google.android.material.snackbar.Snackbar;
import android.view.View;
import org.fdroid.fdroid.AppUpdateStatusManager;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/updates/items/KnownVulnApp.java b/app/src/main/java/org/fdroid/fdroid/views/updates/items/KnownVulnApp.java
index 65fb2fc87..269a251de 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/updates/items/KnownVulnApp.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/updates/items/KnownVulnApp.java
@@ -1,8 +1,8 @@
package org.fdroid.fdroid.views.updates.items;
import android.app.Activity;
-import android.support.annotation.NonNull;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.ViewGroup;
import com.hannesdorfmann.adapterdelegates3.AdapterDelegate;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/updates/items/KnownVulnAppListItemController.java b/app/src/main/java/org/fdroid/fdroid/views/updates/items/KnownVulnAppListItemController.java
index 451f0118a..d5752688f 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/updates/items/KnownVulnAppListItemController.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/updates/items/KnownVulnAppListItemController.java
@@ -5,10 +5,10 @@ import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.design.widget.Snackbar;
-import android.support.v4.content.LocalBroadcastManager;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import com.google.android.material.snackbar.Snackbar;
+import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import android.view.View;
import org.fdroid.fdroid.AppUpdateStatusManager;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/updates/items/UpdateableApp.java b/app/src/main/java/org/fdroid/fdroid/views/updates/items/UpdateableApp.java
index 4dacdeca1..8d0024a38 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/updates/items/UpdateableApp.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/updates/items/UpdateableApp.java
@@ -1,8 +1,8 @@
package org.fdroid.fdroid.views.updates.items;
import android.app.Activity;
-import android.support.annotation.NonNull;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.ViewGroup;
import com.hannesdorfmann.adapterdelegates3.AdapterDelegate;
import org.fdroid.fdroid.R;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/updates/items/UpdateableAppListItemController.java b/app/src/main/java/org/fdroid/fdroid/views/updates/items/UpdateableAppListItemController.java
index 33ae7ddf3..29eab2bcc 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/updates/items/UpdateableAppListItemController.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/updates/items/UpdateableAppListItemController.java
@@ -1,9 +1,9 @@
package org.fdroid.fdroid.views.updates.items;
import android.app.Activity;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.design.widget.Snackbar;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import com.google.android.material.snackbar.Snackbar;
import android.view.View;
import org.fdroid.fdroid.AppUpdateStatusManager;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/updates/items/UpdateableAppsHeader.java b/app/src/main/java/org/fdroid/fdroid/views/updates/items/UpdateableAppsHeader.java
index dfb8e1d2f..eedcdd920 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/updates/items/UpdateableAppsHeader.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/updates/items/UpdateableAppsHeader.java
@@ -1,8 +1,8 @@
package org.fdroid.fdroid.views.updates.items;
import android.app.Activity;
-import android.support.annotation.NonNull;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.RecyclerView;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
diff --git a/app/src/main/java/org/fdroid/fdroid/views/whatsnew/WhatsNewAdapter.java b/app/src/main/java/org/fdroid/fdroid/views/whatsnew/WhatsNewAdapter.java
index 703975b6f..3abf0c874 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/whatsnew/WhatsNewAdapter.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/whatsnew/WhatsNewAdapter.java
@@ -5,10 +5,10 @@ import android.content.Context;
import android.content.res.Resources;
import android.database.Cursor;
import android.graphics.Rect;
-import android.support.annotation.NonNull;
-import android.support.v4.view.ViewCompat;
-import android.support.v7.widget.GridLayoutManager;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.NonNull;
+import androidx.core.view.ViewCompat;
+import androidx.recyclerview.widget.GridLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.View;
import android.view.ViewGroup;
import org.fdroid.fdroid.BuildConfig;
diff --git a/app/src/main/res/layout-v11/install_confirm.xml b/app/src/main/res/layout-v11/install_confirm.xml
index b6986f83f..111345dc3 100644
--- a/app/src/main/res/layout-v11/install_confirm.xml
+++ b/app/src/main/res/layout-v11/install_confirm.xml
@@ -89,7 +89,7 @@
android:layout_height="0dp"
android:layout_weight="0" />
-
-
-
-
-
+
-
+
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_install_history.xml b/app/src/main/res/layout/activity_install_history.xml
index 38adba30f..4770d1caa 100644
--- a/app/src/main/res/layout/activity_install_history.xml
+++ b/app/src/main/res/layout/activity_install_history.xml
@@ -1,25 +1,25 @@
-
-
-
-
+
-
-
+
-
+
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index fa6ba7076..818de33ad 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -11,7 +11,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content" />
-
-
-
-
-
-
-
@@ -49,6 +49,6 @@
app:layout_constraintStart_toStartOf="@+id/summary"
app:layout_constraintLeft_toLeftOf="@+id/summary" />
-
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/app_card_large.xml b/app/src/main/res/layout/app_card_large.xml
index cd8b57ad4..0c927b105 100644
--- a/app/src/main/res/layout/app_card_large.xml
+++ b/app/src/main/res/layout/app_card_large.xml
@@ -1,5 +1,5 @@
-
-
@@ -55,6 +55,6 @@
app:layout_constraintStart_toStartOf="@+id/summary"
app:layout_constraintLeft_toLeftOf="@+id/summary" />
-
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/app_card_list_item.xml b/app/src/main/res/layout/app_card_list_item.xml
index 7bf92f98d..e2cc03833 100644
--- a/app/src/main/res/layout/app_card_list_item.xml
+++ b/app/src/main/res/layout/app_card_list_item.xml
@@ -1,5 +1,5 @@
-
-
@@ -50,6 +50,6 @@
app:layout_constraintStart_toStartOf="@+id/summary"
app:layout_constraintLeft_toLeftOf="@+id/summary" />
-
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/app_card_normal.xml b/app/src/main/res/layout/app_card_normal.xml
index 2c49665bc..b35797314 100644
--- a/app/src/main/res/layout/app_card_normal.xml
+++ b/app/src/main/res/layout/app_card_normal.xml
@@ -1,5 +1,5 @@
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/app_details2.xml b/app/src/main/res/layout/app_details2.xml
index 0fb79e43e..4dd1bba12 100644
--- a/app/src/main/res/layout/app_details2.xml
+++ b/app/src/main/res/layout/app_details2.xml
@@ -1,5 +1,5 @@
-
-
-
-
-
+
-
+
-
-
+
diff --git a/app/src/main/res/layout/app_details2_donate.xml b/app/src/main/res/layout/app_details2_donate.xml
index 8acab7409..63fe3c894 100644
--- a/app/src/main/res/layout/app_details2_donate.xml
+++ b/app/src/main/res/layout/app_details2_donate.xml
@@ -1,5 +1,5 @@
-
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/app_details2_header.xml b/app/src/main/res/layout/app_details2_header.xml
index 6785d3e85..3a56b05f1 100644
--- a/app/src/main/res/layout/app_details2_header.xml
+++ b/app/src/main/res/layout/app_details2_header.xml
@@ -1,5 +1,5 @@
-
-
-
-
+
diff --git a/app/src/main/res/layout/app_details2_screenshot_item.xml b/app/src/main/res/layout/app_details2_screenshot_item.xml
index ce578d56e..334322f35 100644
--- a/app/src/main/res/layout/app_details2_screenshot_item.xml
+++ b/app/src/main/res/layout/app_details2_screenshot_item.xml
@@ -1,5 +1,5 @@
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/app_details2_screenshots.xml b/app/src/main/res/layout/app_details2_screenshots.xml
index c0b33c601..99d7bd595 100644
--- a/app/src/main/res/layout/app_details2_screenshots.xml
+++ b/app/src/main/res/layout/app_details2_screenshots.xml
@@ -5,7 +5,7 @@
android:layout_width="match_parent"
android:layout_height="@dimen/details_screenshot_height">
-
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/category_item.xml b/app/src/main/res/layout/category_item.xml
index 6d789a8ce..b58ada73f 100644
--- a/app/src/main/res/layout/category_item.xml
+++ b/app/src/main/res/layout/category_item.xml
@@ -1,5 +1,5 @@
-
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fab_search.xml b/app/src/main/res/layout/fab_search.xml
index de7f83d4f..4fe27c12d 100644
--- a/app/src/main/res/layout/fab_search.xml
+++ b/app/src/main/res/layout/fab_search.xml
@@ -1,5 +1,5 @@
-
-
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/installed_apps_layout.xml b/app/src/main/res/layout/installed_apps_layout.xml
index 392ee9549..b39354d1f 100644
--- a/app/src/main/res/layout/installed_apps_layout.xml
+++ b/app/src/main/res/layout/installed_apps_layout.xml
@@ -1,11 +1,11 @@
-
-
- -->
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/known_vuln_app_list_item.xml b/app/src/main/res/layout/known_vuln_app_list_item.xml
index 80a4ff265..a1c4ead43 100644
--- a/app/src/main/res/layout/known_vuln_app_list_item.xml
+++ b/app/src/main/res/layout/known_vuln_app_list_item.xml
@@ -1,5 +1,5 @@
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/main_tab_updates.xml b/app/src/main/res/layout/main_tab_updates.xml
index 95a187d68..622871aa3 100644
--- a/app/src/main/res/layout/main_tab_updates.xml
+++ b/app/src/main/res/layout/main_tab_updates.xml
@@ -1,5 +1,5 @@
-
-
-
@@ -59,7 +59,7 @@
android:scaleType="fitCenter"
android:visibility="gone" />
-
-
-
-
\ No newline at end of file
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/main_tab_whats_new.xml b/app/src/main/res/layout/main_tab_whats_new.xml
index 01a12b2c7..9ed85c6ec 100644
--- a/app/src/main/res/layout/main_tab_whats_new.xml
+++ b/app/src/main/res/layout/main_tab_whats_new.xml
@@ -1,5 +1,5 @@
-
-
@@ -29,7 +29,7 @@
android:visibility="gone"
tools:text="@string/latest__empty_state__no_recent_apps"/>
-
-
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/repo_item.xml b/app/src/main/res/layout/repo_item.xml
index 31b2bbbca..d2c3a1711 100644
--- a/app/src/main/res/layout/repo_item.xml
+++ b/app/src/main/res/layout/repo_item.xml
@@ -56,7 +56,7 @@
-
diff --git a/app/src/main/res/layout/repo_list_activity.xml b/app/src/main/res/layout/repo_list_activity.xml
index 806ff7945..fc7aed03d 100644
--- a/app/src/main/res/layout/repo_list_activity.xml
+++ b/app/src/main/res/layout/repo_list_activity.xml
@@ -6,7 +6,7 @@
android:layout_height="match_parent"
android:orientation="vertical">
-
-
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/updateable_app_status_item.xml b/app/src/main/res/layout/updateable_app_status_item.xml
index c8918bea8..5860080e7 100644
--- a/app/src/main/res/layout/updateable_app_status_item.xml
+++ b/app/src/main/res/layout/updateable_app_status_item.xml
@@ -1,5 +1,5 @@
-
-
-
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/updates_header.xml b/app/src/main/res/layout/updates_header.xml
index c3c2e9c12..eca3c09e4 100644
--- a/app/src/main/res/layout/updates_header.xml
+++ b/app/src/main/res/layout/updates_header.xml
@@ -1,5 +1,5 @@
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml
index 0c75fbd64..026a8891f 100644
--- a/app/src/main/res/xml/preferences.xml
+++ b/app/src/main/res/xml/preferences.xml
@@ -1,30 +1,30 @@
-
-
+
-
+
-
-
+
+
-
-
+
-
-
+
-
-
+
+
-
+
-
+
-
-
+
-
-
+
-
+
@@ -100,9 +100,9 @@
android:defaultValue="true"
android:title="@string/scan_removable_storage_title"
android:summary="@string/scan_removable_storage_summary"/>
-
+
-
+
-
+
-
-
-
-
+
+
-
-
+
-
+
diff --git a/app/src/test/java/org/fdroid/fdroid/PreferencesTest.java b/app/src/test/java/org/fdroid/fdroid/PreferencesTest.java
index 2149e64fa..930dd0b86 100644
--- a/app/src/test/java/org/fdroid/fdroid/PreferencesTest.java
+++ b/app/src/test/java/org/fdroid/fdroid/PreferencesTest.java
@@ -20,7 +20,7 @@ package org.fdroid.fdroid;
import android.content.Context;
import android.content.SharedPreferences;
-import android.support.v7.preference.PreferenceManager;
+import androidx.preference.PreferenceManager;
import android.util.Log;
import org.junit.Before;
import org.junit.Test;
diff --git a/app/src/test/java/org/fdroid/fdroid/data/DBHelperTest.java b/app/src/test/java/org/fdroid/fdroid/data/DBHelperTest.java
index 68eef631f..81be7c5b7 100644
--- a/app/src/test/java/org/fdroid/fdroid/data/DBHelperTest.java
+++ b/app/src/test/java/org/fdroid/fdroid/data/DBHelperTest.java
@@ -1,7 +1,7 @@
package org.fdroid.fdroid.data;
import android.content.Context;
-import android.support.test.InstrumentationRegistry;
+import androidx.test.platform.app.InstrumentationRegistry;
import android.text.TextUtils;
import android.util.Log;
diff --git a/app/src/test/java/org/fdroid/fdroid/data/InstalledAppTestUtils.java b/app/src/test/java/org/fdroid/fdroid/data/InstalledAppTestUtils.java
index 5926899de..f0cfd70be 100644
--- a/app/src/test/java/org/fdroid/fdroid/data/InstalledAppTestUtils.java
+++ b/app/src/test/java/org/fdroid/fdroid/data/InstalledAppTestUtils.java
@@ -4,7 +4,7 @@ import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageInfo;
import android.content.pm.Signature;
-import android.support.annotation.Nullable;
+import androidx.annotation.Nullable;
public class InstalledAppTestUtils {
diff --git a/app/src/test/java/org/fdroid/fdroid/data/RepoProviderTest.java b/app/src/test/java/org/fdroid/fdroid/data/RepoProviderTest.java
index cfd84b463..03b99fa07 100644
--- a/app/src/test/java/org/fdroid/fdroid/data/RepoProviderTest.java
+++ b/app/src/test/java/org/fdroid/fdroid/data/RepoProviderTest.java
@@ -25,7 +25,7 @@ import android.app.Application;
import android.content.ContentValues;
import android.content.Context;
import android.net.Uri;
-import android.support.annotation.Nullable;
+import androidx.annotation.Nullable;
import org.fdroid.fdroid.BuildConfig;
import org.fdroid.fdroid.R;
diff --git a/app/src/test/java/org/fdroid/fdroid/data/RepoXMLHandlerTest.java b/app/src/test/java/org/fdroid/fdroid/data/RepoXMLHandlerTest.java
index 6221eb5c8..62c0507b1 100644
--- a/app/src/test/java/org/fdroid/fdroid/data/RepoXMLHandlerTest.java
+++ b/app/src/test/java/org/fdroid/fdroid/data/RepoXMLHandlerTest.java
@@ -22,7 +22,7 @@
package org.fdroid.fdroid.data;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import android.text.TextUtils;
import android.util.Log;
import org.apache.commons.io.FileUtils;
diff --git a/app/src/test/java/org/fdroid/fdroid/updater/AcceptableMultiIndexUpdaterTest.java b/app/src/test/java/org/fdroid/fdroid/updater/AcceptableMultiIndexUpdaterTest.java
index 48b8c22c3..587a6e3eb 100644
--- a/app/src/test/java/org/fdroid/fdroid/updater/AcceptableMultiIndexUpdaterTest.java
+++ b/app/src/test/java/org/fdroid/fdroid/updater/AcceptableMultiIndexUpdaterTest.java
@@ -1,7 +1,7 @@
package org.fdroid.fdroid.updater;
import android.content.ContentValues;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import android.util.Log;
import org.fdroid.fdroid.BuildConfig;
import org.fdroid.fdroid.IndexUpdater.UpdateException;
diff --git a/app/src/test/java/org/fdroid/fdroid/updater/IndexV1UpdaterTest.java b/app/src/test/java/org/fdroid/fdroid/updater/IndexV1UpdaterTest.java
index 9a04510aa..58ca9bd16 100644
--- a/app/src/test/java/org/fdroid/fdroid/updater/IndexV1UpdaterTest.java
+++ b/app/src/test/java/org/fdroid/fdroid/updater/IndexV1UpdaterTest.java
@@ -1,6 +1,6 @@
package org.fdroid.fdroid.updater;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import android.text.TextUtils;
import android.util.Log;
import com.fasterxml.jackson.core.JsonFactory;
diff --git a/app/src/test/java/org/fdroid/fdroid/updater/MultiIndexUpdaterTest.java b/app/src/test/java/org/fdroid/fdroid/updater/MultiIndexUpdaterTest.java
index 2204e2e59..d815fbe7f 100644
--- a/app/src/test/java/org/fdroid/fdroid/updater/MultiIndexUpdaterTest.java
+++ b/app/src/test/java/org/fdroid/fdroid/updater/MultiIndexUpdaterTest.java
@@ -2,7 +2,7 @@ package org.fdroid.fdroid.updater;
import android.content.ContentValues;
import android.content.Context;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import android.text.TextUtils;
import org.fdroid.fdroid.IndexUpdater;
diff --git a/app/src/test/java/org/fdroid/fdroid/updater/ProperMultiIndexUpdaterTest.java b/app/src/test/java/org/fdroid/fdroid/updater/ProperMultiIndexUpdaterTest.java
index 11ea182fc..245730202 100644
--- a/app/src/test/java/org/fdroid/fdroid/updater/ProperMultiIndexUpdaterTest.java
+++ b/app/src/test/java/org/fdroid/fdroid/updater/ProperMultiIndexUpdaterTest.java
@@ -1,7 +1,7 @@
package org.fdroid.fdroid.updater;
import android.content.ContentValues;
-import android.support.annotation.StringDef;
+import androidx.annotation.StringDef;
import android.util.Log;
import org.fdroid.fdroid.BuildConfig;
import org.fdroid.fdroid.IndexUpdater;
diff --git a/app/src/test/java/org/fdroid/fdroid/views/AppDetailsAdapterTest.java b/app/src/test/java/org/fdroid/fdroid/views/AppDetailsAdapterTest.java
index c072af430..d0cc42136 100644
--- a/app/src/test/java/org/fdroid/fdroid/views/AppDetailsAdapterTest.java
+++ b/app/src/test/java/org/fdroid/fdroid/views/AppDetailsAdapterTest.java
@@ -2,7 +2,7 @@ package org.fdroid.fdroid.views;
import android.app.Application;
import android.content.ContentValues;
-import android.support.v7.widget.RecyclerView;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.ViewGroup;
import com.nostra13.universalimageloader.core.ImageLoader;
diff --git a/app/src/testShared/java/org/fdroid/fdroid/mock/RepoDetails.java b/app/src/testShared/java/org/fdroid/fdroid/mock/RepoDetails.java
index e17411a41..4231126c1 100644
--- a/app/src/testShared/java/org/fdroid/fdroid/mock/RepoDetails.java
+++ b/app/src/testShared/java/org/fdroid/fdroid/mock/RepoDetails.java
@@ -1,6 +1,6 @@
package org.fdroid.fdroid.mock;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import org.fdroid.fdroid.data.RepoXMLHandler;
import org.fdroid.fdroid.data.Apk;