From 6200a7f2914c6948ed80c91c3bd5f9b9d127a858 Mon Sep 17 00:00:00 2001 From: TacoTheDank Date: Thu, 7 Apr 2022 16:50:43 -0400 Subject: [PATCH] Utilize parseAsHtml KTX extension --- .../activities/PermissionActivity.kt | 8 +++----- .../dialogs/DeletePlaylistDialog.kt | 12 +++--------- .../retromusic/dialogs/DeleteSongsDialog.kt | 12 +++--------- .../dialogs/RemoveSongFromPlaylistDialog.kt | 19 +++++++------------ .../retromusic/dialogs/SongDetailDialog.kt | 8 +++----- .../fragments/albums/AlbumDetailsFragment.kt | 8 +++----- .../artists/AbsArtistDetailsFragment.kt | 4 ++-- .../retromusic/fragments/home/HomeFragment.kt | 7 ++----- .../fragments/library/LibraryFragment.kt | 7 ++----- .../preferences/BlacklistPreferenceDialog.kt | 15 +++++---------- .../notification/PlayingNotificationImpl24.kt | 16 +++------------- 11 files changed, 36 insertions(+), 80 deletions(-) diff --git a/app/src/main/java/code/name/monkey/retromusic/activities/PermissionActivity.kt b/app/src/main/java/code/name/monkey/retromusic/activities/PermissionActivity.kt index a0bad95dd..993fc49ca 100644 --- a/app/src/main/java/code/name/monkey/retromusic/activities/PermissionActivity.kt +++ b/app/src/main/java/code/name/monkey/retromusic/activities/PermissionActivity.kt @@ -23,7 +23,7 @@ import android.os.Build import android.os.Bundle import android.provider.Settings import androidx.annotation.RequiresApi -import androidx.core.text.HtmlCompat +import androidx.core.text.parseAsHtml import androidx.core.view.isVisible import code.name.monkey.appthemehelper.ThemeStore import code.name.monkey.appthemehelper.util.VersionUtils @@ -77,10 +77,8 @@ class PermissionActivity : AbsMusicServiceActivity() { private fun setupTitle() { val color = ThemeStore.accentColor(this) val hexColor = String.format("#%06X", 0xFFFFFF and color) - val appName = HtmlCompat.fromHtml( - "Hello there!
Welcome to Retro Music", - HtmlCompat.FROM_HTML_MODE_COMPACT - ) + val appName = "Hello there!
Welcome to Retro Music" + .parseAsHtml() binding.appNameText.text = appName } diff --git a/app/src/main/java/code/name/monkey/retromusic/dialogs/DeletePlaylistDialog.kt b/app/src/main/java/code/name/monkey/retromusic/dialogs/DeletePlaylistDialog.kt index bfd321ccc..be133cbe5 100644 --- a/app/src/main/java/code/name/monkey/retromusic/dialogs/DeletePlaylistDialog.kt +++ b/app/src/main/java/code/name/monkey/retromusic/dialogs/DeletePlaylistDialog.kt @@ -17,7 +17,7 @@ package code.name.monkey.retromusic.dialogs import android.app.Dialog import android.os.Bundle import androidx.core.os.bundleOf -import androidx.core.text.HtmlCompat +import androidx.core.text.parseAsHtml import androidx.fragment.app.DialogFragment import code.name.monkey.retromusic.EXTRA_PLAYLIST import code.name.monkey.retromusic.R @@ -55,16 +55,10 @@ class DeletePlaylistDialog : DialogFragment() { //noinspection ConstantConditions if (playlists.size > 1) { title = R.string.delete_playlists_title - message = HtmlCompat.fromHtml( - String.format(getString(R.string.delete_x_playlists), playlists.size), - HtmlCompat.FROM_HTML_MODE_LEGACY - ) + message = String.format(getString(R.string.delete_x_playlists), playlists.size).parseAsHtml() } else { title = R.string.delete_playlist_title - message = HtmlCompat.fromHtml( - String.format(getString(R.string.delete_playlist_x), playlists[0].playlistName), - HtmlCompat.FROM_HTML_MODE_LEGACY - ) + message = String.format(getString(R.string.delete_playlist_x), playlists[0].playlistName).parseAsHtml() } return materialDialog(title) diff --git a/app/src/main/java/code/name/monkey/retromusic/dialogs/DeleteSongsDialog.kt b/app/src/main/java/code/name/monkey/retromusic/dialogs/DeleteSongsDialog.kt index 57621e9b6..04b890259 100644 --- a/app/src/main/java/code/name/monkey/retromusic/dialogs/DeleteSongsDialog.kt +++ b/app/src/main/java/code/name/monkey/retromusic/dialogs/DeleteSongsDialog.kt @@ -22,7 +22,7 @@ import android.provider.MediaStore import androidx.activity.result.IntentSenderRequest import androidx.activity.result.contract.ActivityResultContracts import androidx.core.os.bundleOf -import androidx.core.text.HtmlCompat +import androidx.core.text.parseAsHtml import androidx.fragment.app.DialogFragment import code.name.monkey.appthemehelper.util.VersionUtils import code.name.monkey.retromusic.EXTRA_SONG @@ -87,18 +87,12 @@ class DeleteSongsDialog : DialogFragment() { val pair = if (songs.size > 1) { Pair( R.string.delete_songs_title, - HtmlCompat.fromHtml( - String.format(getString(R.string.delete_x_songs), songs.size), - HtmlCompat.FROM_HTML_MODE_LEGACY - ) + String.format(getString(R.string.delete_x_songs), songs.size).parseAsHtml() ) } else { Pair( R.string.delete_song_title, - HtmlCompat.fromHtml( - String.format(getString(R.string.delete_song_x), songs[0].title), - HtmlCompat.FROM_HTML_MODE_LEGACY - ) + String.format(getString(R.string.delete_song_x), songs[0].title).parseAsHtml() ) } diff --git a/app/src/main/java/code/name/monkey/retromusic/dialogs/RemoveSongFromPlaylistDialog.kt b/app/src/main/java/code/name/monkey/retromusic/dialogs/RemoveSongFromPlaylistDialog.kt index a480c7a33..a51479248 100644 --- a/app/src/main/java/code/name/monkey/retromusic/dialogs/RemoveSongFromPlaylistDialog.kt +++ b/app/src/main/java/code/name/monkey/retromusic/dialogs/RemoveSongFromPlaylistDialog.kt @@ -17,7 +17,7 @@ package code.name.monkey.retromusic.dialogs import android.app.Dialog import android.os.Bundle import androidx.core.os.bundleOf -import androidx.core.text.HtmlCompat +import androidx.core.text.parseAsHtml import androidx.fragment.app.DialogFragment import code.name.monkey.retromusic.EXTRA_SONG import code.name.monkey.retromusic.R @@ -52,21 +52,16 @@ class RemoveSongFromPlaylistDialog : DialogFragment() { val pair = if (songs.size > 1) { Pair( R.string.remove_songs_from_playlist_title, - HtmlCompat.fromHtml( - String.format(getString(R.string.remove_x_songs_from_playlist), songs.size), - HtmlCompat.FROM_HTML_MODE_LEGACY - ) + String.format(getString(R.string.remove_x_songs_from_playlist), songs.size) + .parseAsHtml() ) } else { Pair( R.string.remove_song_from_playlist_title, - HtmlCompat.fromHtml( - String.format( - getString(R.string.remove_song_x_from_playlist), - songs[0].title - ), - HtmlCompat.FROM_HTML_MODE_LEGACY - ) + String.format( + getString(R.string.remove_song_x_from_playlist), + songs[0].title + ).parseAsHtml() ) } return materialDialog(pair.first) diff --git a/app/src/main/java/code/name/monkey/retromusic/dialogs/SongDetailDialog.kt b/app/src/main/java/code/name/monkey/retromusic/dialogs/SongDetailDialog.kt index 85d3569bf..339996d5b 100644 --- a/app/src/main/java/code/name/monkey/retromusic/dialogs/SongDetailDialog.kt +++ b/app/src/main/java/code/name/monkey/retromusic/dialogs/SongDetailDialog.kt @@ -23,7 +23,7 @@ import android.view.LayoutInflater import android.widget.TextView import androidx.annotation.NonNull import androidx.core.os.bundleOf -import androidx.core.text.HtmlCompat +import androidx.core.text.parseAsHtml import androidx.fragment.app.DialogFragment import code.name.monkey.retromusic.EXTRA_SONG import code.name.monkey.retromusic.R @@ -167,10 +167,8 @@ class SongDetailDialog : DialogFragment() { } private fun makeTextWithTitle(context: Context, titleResId: Int, text: String?): Spanned { - return HtmlCompat.fromHtml( - "" + context.resources.getString(titleResId) + ": " + "" + text, - HtmlCompat.FROM_HTML_MODE_LEGACY - ) + return ("" + context.resources.getString(titleResId) + ": " + "" + text) + .parseAsHtml() } private fun getFileSizeString(sizeInBytes: Long): String { diff --git a/app/src/main/java/code/name/monkey/retromusic/fragments/albums/AlbumDetailsFragment.kt b/app/src/main/java/code/name/monkey/retromusic/fragments/albums/AlbumDetailsFragment.kt index 27d603d02..bd3632739 100644 --- a/app/src/main/java/code/name/monkey/retromusic/fragments/albums/AlbumDetailsFragment.kt +++ b/app/src/main/java/code/name/monkey/retromusic/fragments/albums/AlbumDetailsFragment.kt @@ -22,7 +22,7 @@ import android.view.* import androidx.activity.addCallback import androidx.appcompat.app.AppCompatActivity import androidx.core.os.bundleOf -import androidx.core.text.HtmlCompat +import androidx.core.text.parseAsHtml import androidx.core.view.ViewCompat import androidx.core.view.doOnPreDraw import androidx.lifecycle.lifecycleScope @@ -283,10 +283,8 @@ class AlbumDetailsFragment : AbsMainActivityFragment(R.layout.fragment_album_det binding.fragmentAlbumContent.aboutAlbumTitle.show() binding.fragmentAlbumContent.aboutAlbumTitle.text = String.format(getString(R.string.about_album_label), lastFmAlbum.album.name) - binding.fragmentAlbumContent.aboutAlbumText.text = HtmlCompat.fromHtml( - lastFmAlbum.album.wiki.content, - HtmlCompat.FROM_HTML_MODE_LEGACY - ) + binding.fragmentAlbumContent.aboutAlbumText.text = + lastFmAlbum.album.wiki.content.parseAsHtml() } if (lastFmAlbum.album.listeners.isNotEmpty()) { binding.fragmentAlbumContent.listeners.show() diff --git a/app/src/main/java/code/name/monkey/retromusic/fragments/artists/AbsArtistDetailsFragment.kt b/app/src/main/java/code/name/monkey/retromusic/fragments/artists/AbsArtistDetailsFragment.kt index 5463de969..20e9c438a 100644 --- a/app/src/main/java/code/name/monkey/retromusic/fragments/artists/AbsArtistDetailsFragment.kt +++ b/app/src/main/java/code/name/monkey/retromusic/fragments/artists/AbsArtistDetailsFragment.kt @@ -12,7 +12,7 @@ import android.view.View import androidx.activity.addCallback import androidx.appcompat.widget.PopupMenu import androidx.core.os.bundleOf -import androidx.core.text.HtmlCompat +import androidx.core.text.parseAsHtml import androidx.core.view.ViewCompat import androidx.core.view.doOnPreDraw import androidx.core.view.isVisible @@ -198,7 +198,7 @@ abstract class AbsArtistDetailsFragment : AbsMainActivityFragment(R.layout.fragm binding.fragmentArtistContent.run { biographyText.isVisible = true biographyTitle.isVisible = true - biography = HtmlCompat.fromHtml(bioContent, HtmlCompat.FROM_HTML_MODE_LEGACY) + biography = bioContent.parseAsHtml() biographyText.text = biography if (lastFmArtist.artist.stats.listeners.isNotEmpty()) { listeners.show() diff --git a/app/src/main/java/code/name/monkey/retromusic/fragments/home/HomeFragment.kt b/app/src/main/java/code/name/monkey/retromusic/fragments/home/HomeFragment.kt index 944a0ce9d..292784dff 100644 --- a/app/src/main/java/code/name/monkey/retromusic/fragments/home/HomeFragment.kt +++ b/app/src/main/java/code/name/monkey/retromusic/fragments/home/HomeFragment.kt @@ -22,7 +22,7 @@ import android.view.MenuItem.SHOW_AS_ACTION_IF_ROOM import android.view.View import androidx.activity.addCallback import androidx.core.os.bundleOf -import androidx.core.text.HtmlCompat +import androidx.core.text.parseAsHtml import androidx.core.view.doOnLayout import androidx.core.view.doOnPreDraw import androidx.core.view.isVisible @@ -171,10 +171,7 @@ class HomeFragment : findNavController().navigate(R.id.action_search, null, navOptions) } val hexColor = String.format("#%06X", 0xFFFFFF and accentColor()) - val appName = HtmlCompat.fromHtml( - "Retro Music", - HtmlCompat.FROM_HTML_MODE_COMPACT - ) + val appName = "Retro Music".parseAsHtml() binding.appNameText.text = appName } diff --git a/app/src/main/java/code/name/monkey/retromusic/fragments/library/LibraryFragment.kt b/app/src/main/java/code/name/monkey/retromusic/fragments/library/LibraryFragment.kt index 83a6eb508..5dbd00759 100644 --- a/app/src/main/java/code/name/monkey/retromusic/fragments/library/LibraryFragment.kt +++ b/app/src/main/java/code/name/monkey/retromusic/fragments/library/LibraryFragment.kt @@ -19,7 +19,7 @@ import android.view.Menu import android.view.MenuInflater import android.view.MenuItem import android.view.View -import androidx.core.text.HtmlCompat +import androidx.core.text.parseAsHtml import androidx.navigation.fragment.NavHostFragment import androidx.navigation.fragment.findNavController import androidx.navigation.ui.NavigationUI @@ -66,10 +66,7 @@ class LibraryFragment : AbsMainActivityFragment(R.layout.fragment_library) { private fun setupTitle() { val color = ThemeStore.accentColor(requireContext()) val hexColor = String.format("#%06X", 0xFFFFFF and color) - val appName = HtmlCompat.fromHtml( - "Retro Music", - HtmlCompat.FROM_HTML_MODE_COMPACT - ) + val appName = "Retro Music".parseAsHtml() binding.appNameText.text = appName } diff --git a/app/src/main/java/code/name/monkey/retromusic/preferences/BlacklistPreferenceDialog.kt b/app/src/main/java/code/name/monkey/retromusic/preferences/BlacklistPreferenceDialog.kt index e967c25b7..6c47487e5 100644 --- a/app/src/main/java/code/name/monkey/retromusic/preferences/BlacklistPreferenceDialog.kt +++ b/app/src/main/java/code/name/monkey/retromusic/preferences/BlacklistPreferenceDialog.kt @@ -21,7 +21,7 @@ import android.util.AttributeSet import androidx.appcompat.app.AlertDialog import androidx.core.graphics.BlendModeColorFilterCompat import androidx.core.graphics.BlendModeCompat.SRC_IN -import androidx.core.text.HtmlCompat +import androidx.core.text.parseAsHtml import androidx.fragment.app.DialogFragment import code.name.monkey.appthemehelper.common.prefs.supportv7.ATEDialogPreference import code.name.monkey.retromusic.App @@ -84,15 +84,10 @@ class BlacklistPreferenceDialog : DialogFragment(), BlacklistFolderChooserDialog .setItems(paths.toTypedArray()) { _, which -> materialDialog(R.string.remove_from_blacklist) .setMessage( - HtmlCompat.fromHtml( - String.format( - getString( - R.string.do_you_want_to_remove_from_the_blacklist - ), - paths[which] - ), - HtmlCompat.FROM_HTML_MODE_LEGACY - ) + String.format( + getString(R.string.do_you_want_to_remove_from_the_blacklist), + paths[which] + ).parseAsHtml() ) .setPositiveButton(R.string.remove_action) { _, _ -> BlacklistStore.getInstance(App.getContext()) diff --git a/app/src/main/java/code/name/monkey/retromusic/service/notification/PlayingNotificationImpl24.kt b/app/src/main/java/code/name/monkey/retromusic/service/notification/PlayingNotificationImpl24.kt index 9b7123f6f..e65443ca6 100644 --- a/app/src/main/java/code/name/monkey/retromusic/service/notification/PlayingNotificationImpl24.kt +++ b/app/src/main/java/code/name/monkey/retromusic/service/notification/PlayingNotificationImpl24.kt @@ -26,7 +26,7 @@ import android.graphics.drawable.Drawable import android.os.Build import android.support.v4.media.session.MediaSessionCompat import androidx.core.app.NotificationCompat -import androidx.core.text.HtmlCompat +import androidx.core.text.parseAsHtml import androidx.media.app.NotificationCompat.MediaStyle import code.name.monkey.appthemehelper.util.VersionUtils import code.name.monkey.retromusic.R @@ -120,19 +120,9 @@ class PlayingNotificationImpl24( } override fun updateMetadata(song: Song, onUpdate: () -> Unit) { - setContentTitle( - HtmlCompat.fromHtml( - "" + song.title + "", - HtmlCompat.FROM_HTML_MODE_LEGACY - ) - ) + setContentTitle(("" + song.title + "").parseAsHtml()) setContentText(song.artistName) - setSubText( - HtmlCompat.fromHtml( - "" + song.albumName + "", - HtmlCompat.FROM_HTML_MODE_LEGACY - ) - ) + setSubText(("" + song.albumName + "").parseAsHtml()) val bigNotificationImageSize = context.resources .getDimensionPixelSize(R.dimen.notification_big_image_size) GlideApp.with(context).asBitmapPalette().songCoverOptions(song)