diff --git a/README.md b/README.md
index a52347822..342921f40 100644
--- a/README.md
+++ b/README.md
@@ -21,17 +21,16 @@ Screenshots
Requirements
------
-* Android Studio 2.2.x
-* Gradle 2.2.x
-* Android 7.0 SDK
-* Android Support Library, revision 24 or newer
-* Google Play Services, version 9.6.0 or newer
+* Android Studio 4.1.x
+* Gradle 4.1.x
+* Android 11.0 SDK
+* Latest versions of AndroidX and Google Play Services
* android-websockets library: https://github.com/irccloud/android-websockets
-* An Android device running Android 2.2 or newer
+* An Android device running Android 5.1 or newer
Building
------
-* Make sure you've installed the Android 7.0 SDK and upgraded to the latest version of Android Studio
+* Make sure you've installed the Android 11.0 SDK and upgraded to the latest version of Android Studio
* Make sure you've updated all support repository and Google Play Services repository packages in the Android SDK manager
* Check out android-websockets and the IRCCloud Android project from github
* Open Android studio and select the IRCCloud Android build.gradle file
@@ -43,7 +42,7 @@ _You must uninstall the Play Store version of the app first before installing a
License
------
-Copyright (C) 2016 IRCCloud, Ltd.
+Copyright (C) 2021 IRCCloud, Ltd.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
diff --git a/build.gradle b/build.gradle
index f0e23ce84..95702aa9d 100644
--- a/build.gradle
+++ b/build.gradle
@@ -70,9 +70,8 @@ android {
defaultConfig {
versionCode 298
versionName "4.24"
- minSdkVersion 17
+ minSdkVersion 22
targetSdkVersion 30
- multiDexEnabled true
applicationId "com.irccloud.android"
testApplicationId "com.irccloud.android.test"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
@@ -359,14 +358,14 @@ dependencies {
implementation "androidx.browser:browser:1.3.0"
implementation "androidx.emoji:emoji:1.1.0"
implementation "androidx.exifinterface:exifinterface:1.3.2"
- implementation "androidx.room:room-runtime:2.2.5"
- annotationProcessor "androidx.room:room-compiler:2.2.5"
+ implementation "androidx.room:room-runtime:2.2.6"
+ annotationProcessor "androidx.room:room-compiler:2.2.6"
implementation "com.google.android.gms:play-services-base:17.5.0"
implementation "com.google.android.gms:play-services-auth:19.0.0"
implementation "com.google.android.gms:play-services-identity:17.0.0"
- implementation 'com.google.firebase:firebase-messaging:21.0.0'
+ implementation 'com.google.firebase:firebase-messaging:21.0.1'
implementation 'com.google.firebase:firebase-analytics:18.0.0'
- implementation 'com.google.firebase:firebase-perf:19.0.10'
+ implementation 'com.google.firebase:firebase-perf:19.0.11'
implementation 'com.google.firebase:firebase-crashlytics:17.3.0'
implementation 'com.vandalsoftware.android:dslv:0.6.3'
implementation 'com.damnhandy:handy-uri-templates:2.1.7'
diff --git a/irccloud-android.iml b/irccloud-android.iml
index 98bf0369e..ce0baed0a 100644
--- a/irccloud-android.iml
+++ b/irccloud-android.iml
@@ -84,14 +84,15 @@
-
-
+
+
-
+
+
@@ -101,10 +102,9 @@
-
-
+
@@ -124,21 +124,21 @@
-
-
+
+
-
+
-
+
-
-
+
+
@@ -168,18 +168,18 @@
-
+
-
+
-
-
+
+
@@ -187,7 +187,7 @@
-
+
diff --git a/res/drawable-hdpi-v21/scrollbar_handle_mtrl_alpha.9.png b/res/drawable-hdpi/scrollbar_handle_mtrl_alpha.9.png
similarity index 100%
rename from res/drawable-hdpi-v21/scrollbar_handle_mtrl_alpha.9.png
rename to res/drawable-hdpi/scrollbar_handle_mtrl_alpha.9.png
diff --git a/res/drawable-ldpi-v21/scrollbar_handle_mtrl_alpha.9.png b/res/drawable-ldpi/scrollbar_handle_mtrl_alpha.9.png
similarity index 100%
rename from res/drawable-ldpi-v21/scrollbar_handle_mtrl_alpha.9.png
rename to res/drawable-ldpi/scrollbar_handle_mtrl_alpha.9.png
diff --git a/res/drawable-mdpi-v21/scrollbar_handle_mtrl_alpha.9.png b/res/drawable-mdpi/scrollbar_handle_mtrl_alpha.9.png
similarity index 100%
rename from res/drawable-mdpi-v21/scrollbar_handle_mtrl_alpha.9.png
rename to res/drawable-mdpi/scrollbar_handle_mtrl_alpha.9.png
diff --git a/res/drawable-v21/dismiss_bg.xml b/res/drawable-v21/dismiss_bg.xml
deleted file mode 100644
index 090d95e22..000000000
--- a/res/drawable-v21/dismiss_bg.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/res/drawable-v21/row_failed_bg.xml b/res/drawable-v21/row_failed_bg.xml
deleted file mode 100644
index 7f8348fbb..000000000
--- a/res/drawable-v21/row_failed_bg.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/res/drawable-xhdpi-v21/scrollbar_handle_mtrl_alpha.9.png b/res/drawable-xhdpi/scrollbar_handle_mtrl_alpha.9.png
similarity index 100%
rename from res/drawable-xhdpi-v21/scrollbar_handle_mtrl_alpha.9.png
rename to res/drawable-xhdpi/scrollbar_handle_mtrl_alpha.9.png
diff --git a/res/drawable-xxhdpi-v21/scrollbar_handle_mtrl_alpha.9.png b/res/drawable-xxhdpi/scrollbar_handle_mtrl_alpha.9.png
similarity index 100%
rename from res/drawable-xxhdpi-v21/scrollbar_handle_mtrl_alpha.9.png
rename to res/drawable-xxhdpi/scrollbar_handle_mtrl_alpha.9.png
diff --git a/res/drawable/dismiss_bg.xml b/res/drawable/dismiss_bg.xml
index 1477d695d..090d95e22 100644
--- a/res/drawable/dismiss_bg.xml
+++ b/res/drawable/dismiss_bg.xml
@@ -1,4 +1,5 @@
-
-
-
-
\ No newline at end of file
+
+
+
\ No newline at end of file
diff --git a/res/drawable-v21/ic_action_reply_tinted.xml b/res/drawable/ic_action_reply_tinted.xml
similarity index 100%
rename from res/drawable-v21/ic_action_reply_tinted.xml
rename to res/drawable/ic_action_reply_tinted.xml
diff --git a/res/drawable-v21/notification_action_bg.xml b/res/drawable/notification_action_bg.xml
similarity index 100%
rename from res/drawable-v21/notification_action_bg.xml
rename to res/drawable/notification_action_bg.xml
diff --git a/res/drawable/row_failed_bg.xml b/res/drawable/row_failed_bg.xml
index ebe390c10..7f8348fbb 100644
--- a/res/drawable/row_failed_bg.xml
+++ b/res/drawable/row_failed_bg.xml
@@ -15,9 +15,7 @@
~ limitations under the License.
-->
-
-
-
-
-
-
\ No newline at end of file
+
+
+
\ No newline at end of file
diff --git a/res/drawable-v21/row_failed_bgcolor.xml b/res/drawable/row_failed_bgcolor.xml
similarity index 100%
rename from res/drawable-v21/row_failed_bgcolor.xml
rename to res/drawable/row_failed_bgcolor.xml
diff --git a/res/layout-v19/dialog_textprompt.xml b/res/layout-v19/dialog_textprompt.xml
deleted file mode 100644
index 7c148c4db..000000000
--- a/res/layout-v19/dialog_textprompt.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/res/layout-v21/notification_expanded.xml b/res/layout-v21/notification_expanded.xml
deleted file mode 100644
index acd1758a1..000000000
--- a/res/layout-v21/notification_expanded.xml
+++ /dev/null
@@ -1,132 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/layout/dialog_textprompt.xml b/res/layout/dialog_textprompt.xml
index e6d868d46..7c148c4db 100644
--- a/res/layout/dialog_textprompt.xml
+++ b/res/layout/dialog_textprompt.xml
@@ -23,7 +23,7 @@
android:paddingBottom="@dimen/activity_vertical_margin"
android:orientation="vertical">
-
diff --git a/res/layout/notification_expanded.xml b/res/layout/notification_expanded.xml
index 0ff7eb8cd..acd1758a1 100644
--- a/res/layout/notification_expanded.xml
+++ b/res/layout/notification_expanded.xml
@@ -20,22 +20,37 @@
android:layout_height="wrap_content"
android:gravity="top" >
-
+
+
+
+
+
+
+ android:orientation="vertical"
+ android:layout_marginTop="6dp">
-
+ android:background="#29000000"
+ android:visibility="gone"
+ android:layout_marginTop="4dp" />
+ android:background="@null">
+ android:textColor="#8a000000"
+ android:paddingEnd="8dp"
+ android:background="@drawable/notification_action_bg" />
diff --git a/res/values-v21/dimens.xml b/res/values-v21/dimens.xml
deleted file mode 100644
index 31c00398d..000000000
--- a/res/values-v21/dimens.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
- 0dp
- 4dp
-
\ No newline at end of file
diff --git a/res/values-v21/styles.xml b/res/values-v21/styles.xml
deleted file mode 100644
index 71ae0eb7f..000000000
--- a/res/values-v21/styles.xml
+++ /dev/null
@@ -1,59 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 44b04ab61..06a586496 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -24,8 +24,8 @@
24dp
64dp
25dp
- 2dp
- 8dp
+ 0dp
+ 4dp
14
4
16dp
diff --git a/res/values/styles.xml b/res/values/styles.xml
index abd864cc7..f92b9a7b7 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -16,17 +16,22 @@