From 6b1fc7575a8eeae5a22f89a4599de87dec6c67c5 Mon Sep 17 00:00:00 2001
From: tzugen <tzugen@riseup.net>
Date: Thu, 18 Nov 2021 20:49:48 +0100
Subject: [PATCH] Use material icons for info and error dialogs

---
 .../moire/ultrasonic/fragment/PlaylistsFragment.java   |  6 +++---
 .../org/moire/ultrasonic/fragment/SharesFragment.java  |  6 +++---
 .../java/org/moire/ultrasonic/util/ErrorDialog.java    |  2 +-
 .../org/moire/ultrasonic/util/ModalBackgroundTask.java |  2 +-
 .../moire/ultrasonic/activity/NavigationActivity.kt    |  2 +-
 .../moire/ultrasonic/fragment/EditServerFragment.kt    |  2 +-
 .../ultrasonic/fragment/ServerSelectorFragment.kt      |  2 +-
 .../org/moire/ultrasonic/fragment/SettingsFragment.kt  |  2 +-
 .../org/moire/ultrasonic/service/MediaPlayerService.kt |  2 +-
 .../org/moire/ultrasonic/util/CommunicationError.kt    |  2 +-
 .../src/main/kotlin/org/moire/ultrasonic/util/Util.kt  |  4 ++--
 ...{ic_baseline_close_24.xml => ic_baseline_close.xml} |  0
 ultrasonic/src/main/res/drawable/ic_baseline_info.xml  | 10 ++++++++++
 .../src/main/res/drawable/ic_baseline_warning.xml      | 10 ++++++++++
 14 files changed, 36 insertions(+), 16 deletions(-)
 rename ultrasonic/src/main/res/drawable/{ic_baseline_close_24.xml => ic_baseline_close.xml} (100%)
 create mode 100644 ultrasonic/src/main/res/drawable/ic_baseline_info.xml
 create mode 100644 ultrasonic/src/main/res/drawable/ic_baseline_warning.xml

diff --git a/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/PlaylistsFragment.java b/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/PlaylistsFragment.java
index 5d11c45e..ba7e136e 100644
--- a/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/PlaylistsFragment.java
+++ b/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/PlaylistsFragment.java
@@ -212,7 +212,7 @@ public class PlaylistsFragment extends Fragment {
 
     private void deletePlaylist(final Playlist playlist)
     {
-        new AlertDialog.Builder(getContext()).setIcon(android.R.drawable.ic_dialog_alert).setTitle(R.string.common_confirm).setMessage(getResources().getString(R.string.delete_playlist, playlist.getName())).setPositiveButton(R.string.common_ok, new DialogInterface.OnClickListener()
+        new AlertDialog.Builder(getContext()).setIcon(R.drawable.ic_baseline_warning).setTitle(R.string.common_confirm).setMessage(getResources().getString(R.string.delete_playlist, playlist.getName())).setPositiveButton(R.string.common_ok, new DialogInterface.OnClickListener()
         {
             @Override
             public void onClick(DialogInterface dialog, int which)
@@ -263,7 +263,7 @@ public class PlaylistsFragment extends Fragment {
         textView.setText(message);
         textView.setMovementMethod(LinkMovementMethod.getInstance());
 
-        new AlertDialog.Builder(getContext()).setTitle(playlist.getName()).setCancelable(true).setIcon(android.R.drawable.ic_dialog_info).setView(textView).show();
+        new AlertDialog.Builder(getContext()).setTitle(playlist.getName()).setCancelable(true).setIcon(R.drawable.ic_baseline_info).setView(textView).show();
     }
 
     private void updatePlaylistInfo(final Playlist playlist)
@@ -294,7 +294,7 @@ public class PlaylistsFragment extends Fragment {
 
         AlertDialog.Builder alertDialog = new AlertDialog.Builder(getContext());
 
-        alertDialog.setIcon(android.R.drawable.ic_dialog_alert);
+        alertDialog.setIcon(R.drawable.ic_baseline_warning);
         alertDialog.setTitle(R.string.playlist_update_info);
         alertDialog.setView(dialogView);
         alertDialog.setPositiveButton(R.string.common_ok, new DialogInterface.OnClickListener()
diff --git a/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/SharesFragment.java b/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/SharesFragment.java
index 958774bf..4abc6df6 100644
--- a/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/SharesFragment.java
+++ b/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/SharesFragment.java
@@ -185,7 +185,7 @@ public class SharesFragment extends Fragment {
 
     private void deleteShare(final Share share)
     {
-        new AlertDialog.Builder(getContext()).setIcon(android.R.drawable.ic_dialog_alert).setTitle(R.string.common_confirm).setMessage(getResources().getString(R.string.delete_playlist, share.getName())).setPositiveButton(R.string.common_ok, new DialogInterface.OnClickListener()
+        new AlertDialog.Builder(getContext()).setIcon(R.drawable.ic_baseline_warning).setTitle(R.string.common_confirm).setMessage(getResources().getString(R.string.delete_playlist, share.getName())).setPositiveButton(R.string.common_ok, new DialogInterface.OnClickListener()
         {
             @Override
             public void onClick(DialogInterface dialog, int which)
@@ -240,7 +240,7 @@ public class SharesFragment extends Fragment {
         textView.setText(message);
         textView.setMovementMethod(LinkMovementMethod.getInstance());
 
-        new AlertDialog.Builder(getContext()).setTitle("Share Details").setCancelable(true).setIcon(android.R.drawable.ic_dialog_info).setView(textView).show();
+        new AlertDialog.Builder(getContext()).setTitle("Share Details").setCancelable(true).setIcon(R.drawable.ic_baseline_info).setView(textView).show();
     }
 
     private void updateShareInfo(final Share share)
@@ -278,7 +278,7 @@ public class SharesFragment extends Fragment {
 
         AlertDialog.Builder alertDialog = new AlertDialog.Builder(getContext());
 
-        alertDialog.setIcon(android.R.drawable.ic_dialog_alert);
+        alertDialog.setIcon(R.drawable.ic_baseline_warning);
         alertDialog.setTitle(R.string.playlist_update_info);
         alertDialog.setView(dialogView);
         alertDialog.setPositiveButton(R.string.common_ok, new DialogInterface.OnClickListener()
diff --git a/ultrasonic/src/main/java/org/moire/ultrasonic/util/ErrorDialog.java b/ultrasonic/src/main/java/org/moire/ultrasonic/util/ErrorDialog.java
index a2efddad..ff0fc891 100644
--- a/ultrasonic/src/main/java/org/moire/ultrasonic/util/ErrorDialog.java
+++ b/ultrasonic/src/main/java/org/moire/ultrasonic/util/ErrorDialog.java
@@ -39,7 +39,7 @@ public class ErrorDialog
 	{
 
 		AlertDialog.Builder builder = new AlertDialog.Builder(activity);
-		builder.setIcon(android.R.drawable.ic_dialog_alert);
+		builder.setIcon(R.drawable.ic_baseline_warning);
 		builder.setTitle(R.string.error_label);
 		builder.setMessage(message);
 		builder.setCancelable(true);
diff --git a/ultrasonic/src/main/java/org/moire/ultrasonic/util/ModalBackgroundTask.java b/ultrasonic/src/main/java/org/moire/ultrasonic/util/ModalBackgroundTask.java
index 258e5baa..c402c83c 100644
--- a/ultrasonic/src/main/java/org/moire/ultrasonic/util/ModalBackgroundTask.java
+++ b/ultrasonic/src/main/java/org/moire/ultrasonic/util/ModalBackgroundTask.java
@@ -50,7 +50,7 @@ public abstract class ModalBackgroundTask<T> extends BackgroundTask<T>
 	private AlertDialog createProgressDialog()
 	{
 		AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
-		builder.setIcon(android.R.drawable.ic_dialog_info);
+		builder.setIcon(R.drawable.ic_baseline_info);
 		builder.setTitle(R.string.background_task_wait);
 		builder.setMessage(R.string.background_task_loading);
 		builder.setCancelable(true);
diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/activity/NavigationActivity.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/activity/NavigationActivity.kt
index bbaea16b..0daa0989 100644
--- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/activity/NavigationActivity.kt
+++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/activity/NavigationActivity.kt
@@ -353,7 +353,7 @@ class NavigationActivity : AppCompatActivity() {
             infoDialogDisplayed = true
 
             AlertDialog.Builder(this)
-                .setIcon(android.R.drawable.ic_dialog_info)
+                .setIcon(R.drawable.ic_baseline_info)
                 .setTitle(R.string.main_welcome_title)
                 .setMessage(R.string.main_welcome_text_demo)
                 .setNegativeButton(R.string.main_welcome_cancel) { dialog, _ ->
diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/EditServerFragment.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/EditServerFragment.kt
index 48d75a62..76481cd3 100644
--- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/EditServerFragment.kt
+++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/EditServerFragment.kt
@@ -509,7 +509,7 @@ class EditServerFragment : Fragment(), OnBackPressedHandler {
     private fun finishActivity() {
         if (areFieldsChanged()) {
             AlertDialog.Builder(context)
-                .setIcon(android.R.drawable.ic_dialog_alert)
+                .setIcon(R.drawable.ic_baseline_warning)
                 .setTitle(R.string.common_confirm)
                 .setMessage(R.string.server_editor_leave_confirmation)
                 .setPositiveButton(R.string.common_ok) { dialog, _ ->
diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/ServerSelectorFragment.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/ServerSelectorFragment.kt
index 9e1eeabe..61543264 100644
--- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/ServerSelectorFragment.kt
+++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/ServerSelectorFragment.kt
@@ -134,7 +134,7 @@ class ServerSelectorFragment : Fragment() {
      */
     private fun onServerDeleted(index: Int) {
         AlertDialog.Builder(context)
-            .setIcon(android.R.drawable.ic_dialog_alert)
+            .setIcon(R.drawable.ic_baseline_warning)
             .setTitle(R.string.server_menu_delete)
             .setMessage(R.string.server_selector_delete_confirmation)
             .setPositiveButton(R.string.common_delete) { dialog, _ ->
diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/SettingsFragment.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/SettingsFragment.kt
index 5603aa82..62da5051 100644
--- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/SettingsFragment.kt
+++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/SettingsFragment.kt
@@ -482,7 +482,7 @@ class SettingsFragment :
             val delete = R.string.settings_debug_log_delete
             AlertDialog.Builder(activity)
                 .setMessage(message)
-                .setIcon(android.R.drawable.ic_dialog_info)
+                .setIcon(R.drawable.ic_baseline_info)
                 .setNegativeButton(keep) { dIf: DialogInterface, _: Int ->
                     dIf.cancel()
                 }
diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/MediaPlayerService.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/MediaPlayerService.kt
index 1f285916..24789e20 100644
--- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/MediaPlayerService.kt
+++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/MediaPlayerService.kt
@@ -647,7 +647,7 @@ class MediaPlayerService : Service() {
             4 -> {
                 keycode = KeyEvent.KEYCODE_MEDIA_STOP
                 label = getString(R.string.buttons_stop)
-                icon = R.drawable.ic_baseline_close_24
+                icon = R.drawable.ic_baseline_close
             }
             else -> return null
         }
diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/util/CommunicationError.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/util/CommunicationError.kt
index 2a722e26..dc7821a0 100644
--- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/util/CommunicationError.kt
+++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/util/CommunicationError.kt
@@ -46,7 +46,7 @@ object CommunicationError {
         if (context == null) return
 
         AlertDialog.Builder(context)
-            .setIcon(android.R.drawable.ic_dialog_alert)
+            .setIcon(R.drawable.ic_baseline_warning)
             .setTitle(R.string.error_label)
             .setMessage(getErrorMessage(error!!, context))
             .setCancelable(true)
diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/util/Util.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/util/Util.kt
index 9df82e61..7b65b17e 100644
--- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/util/Util.kt
+++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/util/Util.kt
@@ -368,7 +368,7 @@ object Util {
     // See https://stackoverflow.com/questions/5436822/
     fun createDialog(
         context: Context?,
-        icon: Int = android.R.drawable.ic_dialog_info,
+        icon: Int = R.drawable.ic_baseline_info,
         title: String,
         message: String?
     ): AlertDialog.Builder {
@@ -385,7 +385,7 @@ object Util {
 
     fun showDialog(
         context: Context,
-        icon: Int = android.R.drawable.ic_dialog_info,
+        icon: Int = R.drawable.ic_baseline_info,
         titleId: Int,
         message: String?
     ) {
diff --git a/ultrasonic/src/main/res/drawable/ic_baseline_close_24.xml b/ultrasonic/src/main/res/drawable/ic_baseline_close.xml
similarity index 100%
rename from ultrasonic/src/main/res/drawable/ic_baseline_close_24.xml
rename to ultrasonic/src/main/res/drawable/ic_baseline_close.xml
diff --git a/ultrasonic/src/main/res/drawable/ic_baseline_info.xml b/ultrasonic/src/main/res/drawable/ic_baseline_info.xml
new file mode 100644
index 00000000..17255b7a
--- /dev/null
+++ b/ultrasonic/src/main/res/drawable/ic_baseline_info.xml
@@ -0,0 +1,10 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24"
+    android:tint="?attr/colorControlNormal">
+  <path
+      android:fillColor="@android:color/white"
+      android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM13,17h-2v-6h2v6zM13,9h-2L11,7h2v2z"/>
+</vector>
diff --git a/ultrasonic/src/main/res/drawable/ic_baseline_warning.xml b/ultrasonic/src/main/res/drawable/ic_baseline_warning.xml
new file mode 100644
index 00000000..a02bc138
--- /dev/null
+++ b/ultrasonic/src/main/res/drawable/ic_baseline_warning.xml
@@ -0,0 +1,10 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24"
+    android:tint="?attr/colorControlNormal">
+  <path
+      android:fillColor="@android:color/white"
+      android:pathData="M1,21h22L12,2 1,21zM13,18h-2v-2h2v2zM13,14h-2v-4h2v4z"/>
+</vector>