-
-
\ No newline at end of file
diff --git a/.idea/gradle.xml b/.idea/gradle.xml
deleted file mode 100644
index 4a782973..00000000
--- a/.idea/gradle.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml
deleted file mode 100644
index fb93d254..00000000
--- a/.idea/inspectionProfiles/Project_Default.xml
+++ /dev/null
@@ -1,69 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/kotlinc.xml b/.idea/kotlinc.xml
deleted file mode 100644
index 87b6bf8d..00000000
--- a/.idea/kotlinc.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/ktlint-plugin.xml b/.idea/ktlint-plugin.xml
deleted file mode 100644
index 52c6220f..00000000
--- a/.idea/ktlint-plugin.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
- DISTRACT_FREE
- false
-
-
\ No newline at end of file
diff --git a/.idea/markdown-navigator-enh.xml b/.idea/markdown-navigator-enh.xml
deleted file mode 100644
index a8fcc84d..00000000
--- a/.idea/markdown-navigator-enh.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/markdown-navigator.xml b/.idea/markdown-navigator.xml
deleted file mode 100644
index 1ef5f95e..00000000
--- a/.idea/markdown-navigator.xml
+++ /dev/null
@@ -1,71 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/migrations.xml b/.idea/migrations.xml
deleted file mode 100644
index f8051a6f..00000000
--- a/.idea/migrations.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
deleted file mode 100644
index 8978d23d..00000000
--- a/.idea/misc.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/render.experimental.xml b/.idea/render.experimental.xml
deleted file mode 100644
index 11b5bb5f..00000000
--- a/.idea/render.experimental.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/saveactions_settings.xml b/.idea/saveactions_settings.xml
deleted file mode 100644
index 6025467f..00000000
--- a/.idea/saveactions_settings.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/sonarlint/issuestore/6/3/6350ed7c3b6a96211905929fff8bdbfd78587d97 b/.idea/sonarlint/issuestore/6/3/6350ed7c3b6a96211905929fff8bdbfd78587d97
deleted file mode 100644
index f11b7be3..00000000
--- a/.idea/sonarlint/issuestore/6/3/6350ed7c3b6a96211905929fff8bdbfd78587d97
+++ /dev/null
@@ -1,2 +0,0 @@
-
-Bkotlin:S125-"Remove this commented out code.(8ߛ1
\ No newline at end of file
diff --git a/.idea/sonarlint/issuestore/8/f/8f214feb901aa25105c39fb9659ef11af773be1e b/.idea/sonarlint/issuestore/8/f/8f214feb901aa25105c39fb9659ef11af773be1e
deleted file mode 100644
index 2fb93ec4..00000000
--- a/.idea/sonarlint/issuestore/8/f/8f214feb901aa25105c39fb9659ef11af773be1e
+++ /dev/null
@@ -1,4 +0,0 @@
-
-Bkotlin:S125."Remove this commented out code.(8̜1
-=kotlin:S125B"Remove this commented out code.(ݩ8̜1
-Gkotlin:S1084")Either remove or fill this block of code.(8̜1
\ No newline at end of file
diff --git a/.idea/sonarlint/issuestore/9/6/9601e8ca944c53a1369165f2bd7e5712e065f492 b/.idea/sonarlint/issuestore/9/6/9601e8ca944c53a1369165f2bd7e5712e065f492
deleted file mode 100644
index 484ce7af..00000000
--- a/.idea/sonarlint/issuestore/9/6/9601e8ca944c53a1369165f2bd7e5712e065f492
+++ /dev/null
@@ -1,32 +0,0 @@
-
-Ukotlin:S1172"5Use "_" instead of this unused lambda parameter "cb".(81
->kotlin:S125"Remove this commented out code.(81
->kotlin:S125"Remove this commented out code.(81
->kotlin:S125"Remove this commented out code.(81
->kotlin:S125"Remove this commented out code.(81
->kotlin:S125"Remove this commented out code.(81
->kotlin:S125"Remove this commented out code.(81
->kotlin:S125"Remove this commented out code.(ƅ81
-Ckotlin:S125"Remove this commented out code.(É81
->kotlin:S125"Remove this commented out code.(81
-Ckotlin:S125"Remove this commented out code.(81
-Ckotlin:S125"Remove this commented out code.(81
-Ckotlin:S125"Remove this commented out code.(81
-akotlin:S1144"ARemove this unused private "observerMetadataAndLoadMedia" method.(ޢ81
-Ukotlin:S1144"5Remove this unused private "observerMetadata" method.(81
-skotlin:S1192"UDefine a constant instead of duplicating this literal "Now Playing Fragment" 5 times.(͜
-ikotlin:S1192"KDefine a constant instead of duplicating this literal "Bên trên" 4 times.(͜
-kkotlin:S1192"KDefine a constant instead of duplicating this literal "Update UI" 11 times.(8֭1
-jkotlin:S1192"JDefine a constant instead of duplicating this literal "onStart: " 3 times.(8֭1
-qkotlin:S1192"LDefine a constant instead of duplicating this literal "onSuccess: " 3 times.(8֭1
-tkotlin:S1192"ODefine a constant instead of duplicating this literal "updateUI: NULL" 3 times.(8֭1
-wkotlin:S1192"RDefine a constant instead of duplicating this literal "Check Start Color" 6 times.(Ъ8֭1
-kkotlin:S1871"MThis branch's code block is the same as the block for the branch on line 213.(
-Hkotlin:S1874"#Deprecated code should not be used.(8֭1
-Ckotlin:S1874"#Deprecated code should not be used.(8֭1
-kkotlin:S3776k"SRefactor this method to reduce its Cognitive Complexity from 156 to the 15 allowed.(
-wkotlin:S3776"RRefactor this method to reduce its Cognitive Complexity from 36 to the 15 allowed.(8֭1
-wkotlin:S3776"RRefactor this method to reduce its Cognitive Complexity from 23 to the 15 allowed.(ք8֭1
-qkotlin:S3776"RRefactor this method to reduce its Cognitive Complexity from 25 to the 15 allowed.(O8֭1
-kotlin:S1186"ZAdd a nested comment explaining why this function is empty or complete the implementation.(8֭1
-Nkotlin:S1066".Merge this "if" statement with the nested one.(Ƀ׀8֭1
\ No newline at end of file
diff --git a/.idea/sonarlint/issuestore/9/9/994a5e8eff0970fdf56006fdbee6ee0752525b95 b/.idea/sonarlint/issuestore/9/9/994a5e8eff0970fdf56006fdbee6ee0752525b95
deleted file mode 100644
index f4d61b38..00000000
--- a/.idea/sonarlint/issuestore/9/9/994a5e8eff0970fdf56006fdbee6ee0752525b95
+++ /dev/null
@@ -1,9 +0,0 @@
-
-6kotlin:S125x"Remove this commented out code.(
-7kotlin:S125"Remove this commented out code.(ʚ
-2kotlin:S1128
-"Remove this unused import.(
-2kotlin:S1128"Remove this unused import.(
-7kotlin:S1128"Remove this unused import.(
-2kotlin:S1128 "Remove this unused import.(
-kkotlin:S1871"MThis branch's code block is the same as the block for the branch on line 111.(ߝ
\ No newline at end of file
diff --git a/.idea/sonarlint/issuestore/b/3/b33bf05ea51ca357a5d5b98a14abb56dbecf2392 b/.idea/sonarlint/issuestore/b/3/b33bf05ea51ca357a5d5b98a14abb56dbecf2392
deleted file mode 100644
index fb045f02..00000000
--- a/.idea/sonarlint/issuestore/b/3/b33bf05ea51ca357a5d5b98a14abb56dbecf2392
+++ /dev/null
@@ -1,22 +0,0 @@
-
->kotlin:S6615" Remove this useless initializer.(
-7kotlin:S125"Remove this commented out code.(笶
-Ckotlin:S125"Remove this commented out code.(ʡ81
->kotlin:S125"Remove this commented out code.(81
-Ckotlin:S125"Remove this commented out code.(81
->kotlin:S125"Remove this commented out code.(81
-5kotlin:S6310"Avoid hardcoded dispatchers.(͡
-Fkotlin:S108")Either remove or fill this block of code.(
-Fkotlin:S108")Either remove or fill this block of code.(
-?kotlin:S6305B" Don't expose mutable flow types.(8ْ1
-2kotlin:S1128"Remove this unused import.(
-7kotlin:S1128 "Remove this unused import.(
-2kotlin:S1128
"Remove this unused import.(
-7kotlin:S1128"Remove this unused import.(
-1kotlin:S1128,"Remove this unused import.(y
-7kotlin:S1128-"Remove this unused import.(Ӹэ
-kkotlin:S3776"RRefactor this method to reduce its Cognitive Complexity from 16 to the 15 allowed.(Ė
-rkotlin:S3776"RRefactor this method to reduce its Cognitive Complexity from 49 to the 15 allowed.(8蓘1
-wkotlin:S3776"RRefactor this method to reduce its Cognitive Complexity from 28 to the 15 allowed.(8蓘1
-rkotlin:S3776"RRefactor this method to reduce its Cognitive Complexity from 16 to the 15 allowed.(8蓘1
-]kotlin:S6511"=Merge chained "if" statements into a single "when" statement.(81
\ No newline at end of file
diff --git a/.idea/sonarlint/issuestore/b/7/b798a1851f650799bd0cb2969e121510540b7fbd b/.idea/sonarlint/issuestore/b/7/b798a1851f650799bd0cb2969e121510540b7fbd
deleted file mode 100644
index 386d3755..00000000
--- a/.idea/sonarlint/issuestore/b/7/b798a1851f650799bd0cb2969e121510540b7fbd
+++ /dev/null
@@ -1,9 +0,0 @@
-
-;kotlin:S125>"Remove this commented out code.(
-6kotlin:S125I"Remove this commented out code.(
-6kotlin:S125V"Remove this commented out code.(
-6kotlin:S125`"Remove this commented out code.(
-7kotlin:S1128"Remove this unused import.(떳
-7kotlin:S1128"Remove this unused import.(
-2kotlin:S1128
"Remove this unused import.(
-Zkotlin:S6517"BMake this interface functional or replace it with a function type.(
\ No newline at end of file
diff --git a/.idea/sonarlint/issuestore/c/3/c3df1623afb5a0ab452278db00dcb22cc2e1a1f4 b/.idea/sonarlint/issuestore/c/3/c3df1623afb5a0ab452278db00dcb22cc2e1a1f4
deleted file mode 100644
index 993c29b8..00000000
--- a/.idea/sonarlint/issuestore/c/3/c3df1623afb5a0ab452278db00dcb22cc2e1a1f4
+++ /dev/null
@@ -1,2 +0,0 @@
-
-7kotlin:S1128"Remove this unused import.(
\ No newline at end of file
diff --git a/.idea/sonarlint/issuestore/e/2/e2d791213c14a0a126d36b55ef28dbe4b8a68356 b/.idea/sonarlint/issuestore/e/2/e2d791213c14a0a126d36b55ef28dbe4b8a68356
deleted file mode 100644
index 37b2931a..00000000
--- a/.idea/sonarlint/issuestore/e/2/e2d791213c14a0a126d36b55ef28dbe4b8a68356
+++ /dev/null
@@ -1,7 +0,0 @@
-
-;kotlin:S125W"Remove this commented out code.(
-:kotlin:S6310"Avoid hardcoded dispatchers.(Ք
-:kotlin:S6310"Avoid hardcoded dispatchers.(Ք
-okotlin:S6311"QRemove this dispatcher. It is pointless when used with only suspending functions.(Ք
-okotlin:S6311"QRemove this dispatcher. It is pointless when used with only suspending functions.(Ք
-ykotlin:S3923"[Remove this conditional structure or edit its code blocks so that they're not all the same.(
\ No newline at end of file
diff --git a/.idea/sonarlint/issuestore/e/7/e7ae8e7545244368ad98e205609b354372812cdd b/.idea/sonarlint/issuestore/e/7/e7ae8e7545244368ad98e205609b354372812cdd
deleted file mode 100644
index 9ebed78a..00000000
--- a/.idea/sonarlint/issuestore/e/7/e7ae8e7545244368ad98e205609b354372812cdd
+++ /dev/null
@@ -1,11 +0,0 @@
-
-6kotlin:S125"Remove this commented out code.(P
-ikotlin:S117q"SRename this local variable to match the regular expression ^`?[_a-z][a-zA-Z0-9]*`?$(ߘ"
-=kotlin:S6305 " Don't expose mutable flow types.(
-2kotlin:S1128"Remove this unused import.(
-7kotlin:S1128 "Remove this unused import.(
-7kotlin:S1128"Remove this unused import.(Աζ
-1kotlin:S1128"Remove this unused import.(;
-2kotlin:S1128"Remove this unused import.(
-okotlin:S3776h"RRefactor this method to reduce its Cognitive Complexity from 24 to the 15 allowed.(
-Ykotlin:S6510i"AMove "return" statements from all branches before "if" statement.(
\ No newline at end of file
diff --git a/.idea/sonarlint/issuestore/index.pb b/.idea/sonarlint/issuestore/index.pb
deleted file mode 100644
index 7bea05c9..00000000
--- a/.idea/sonarlint/issuestore/index.pb
+++ /dev/null
@@ -1,19 +0,0 @@
-
-z
-Japp/src/main/java/com/maxrave/simpmusic/ui/fragment/other/QueueFragment.kt,9\9\994a5e8eff0970fdf56006fdbee6ee0752525b95
-y
-Iapp/src/main/java/com/maxrave/simpmusic/ui/fragment/NowPlayingFragment.kt,9\6\9601e8ca944c53a1369165f2bd7e5712e065f492
-|
-Lapp/src/main/java/com/maxrave/simpmusic/service/SimpleMediaServiceHandler.kt,e\2\e2d791213c14a0a126d36b55ef28dbe4b8a68356
-k
-;app/src/main/java/com/maxrave/simpmusic/extension/AllExt.kt,c\3\c3df1623afb5a0ab452278db00dcb22cc2e1a1f4
-y
-Iapp/src/main/java/com/maxrave/simpmusic/ui/fragment/other/InfoFragment.kt,6\3\6350ed7c3b6a96211905929fff8bdbfd78587d97
-y
-Iapp/src/main/java/com/maxrave/simpmusic/service/test/source/FetchQueue.kt,8\f\8f214feb901aa25105c39fb9659ef11af773be1e
-t
-Dapp/src/main/java/com/maxrave/simpmusic/viewModel/SharedViewModel.kt,b\3\b33bf05ea51ca357a5d5b98a14abb56dbecf2392
-z
-Japp/src/main/java/com/maxrave/simpmusic/service/test/source/MusicSource.kt,e\7\e7ae8e7545244368ad98e205609b354372812cdd
-u
-Eapp/src/main/java/com/maxrave/simpmusic/adapter/queue/QueueAdapter.kt,b\7\b798a1851f650799bd0cb2969e121510540b7fbd
\ No newline at end of file
diff --git a/.idea/sonarlint/securityhotspotstore/6/3/6350ed7c3b6a96211905929fff8bdbfd78587d97 b/.idea/sonarlint/securityhotspotstore/6/3/6350ed7c3b6a96211905929fff8bdbfd78587d97
deleted file mode 100644
index e69de29b..00000000
diff --git a/.idea/sonarlint/securityhotspotstore/8/f/8f214feb901aa25105c39fb9659ef11af773be1e b/.idea/sonarlint/securityhotspotstore/8/f/8f214feb901aa25105c39fb9659ef11af773be1e
deleted file mode 100644
index e69de29b..00000000
diff --git a/.idea/sonarlint/securityhotspotstore/9/6/9601e8ca944c53a1369165f2bd7e5712e065f492 b/.idea/sonarlint/securityhotspotstore/9/6/9601e8ca944c53a1369165f2bd7e5712e065f492
deleted file mode 100644
index e69de29b..00000000
diff --git a/.idea/sonarlint/securityhotspotstore/9/9/994a5e8eff0970fdf56006fdbee6ee0752525b95 b/.idea/sonarlint/securityhotspotstore/9/9/994a5e8eff0970fdf56006fdbee6ee0752525b95
deleted file mode 100644
index e69de29b..00000000
diff --git a/.idea/sonarlint/securityhotspotstore/b/3/b33bf05ea51ca357a5d5b98a14abb56dbecf2392 b/.idea/sonarlint/securityhotspotstore/b/3/b33bf05ea51ca357a5d5b98a14abb56dbecf2392
deleted file mode 100644
index e69de29b..00000000
diff --git a/.idea/sonarlint/securityhotspotstore/b/7/b798a1851f650799bd0cb2969e121510540b7fbd b/.idea/sonarlint/securityhotspotstore/b/7/b798a1851f650799bd0cb2969e121510540b7fbd
deleted file mode 100644
index e69de29b..00000000
diff --git a/.idea/sonarlint/securityhotspotstore/c/3/c3df1623afb5a0ab452278db00dcb22cc2e1a1f4 b/.idea/sonarlint/securityhotspotstore/c/3/c3df1623afb5a0ab452278db00dcb22cc2e1a1f4
deleted file mode 100644
index e69de29b..00000000
diff --git a/.idea/sonarlint/securityhotspotstore/e/2/e2d791213c14a0a126d36b55ef28dbe4b8a68356 b/.idea/sonarlint/securityhotspotstore/e/2/e2d791213c14a0a126d36b55ef28dbe4b8a68356
deleted file mode 100644
index e69de29b..00000000
diff --git a/.idea/sonarlint/securityhotspotstore/e/7/e7ae8e7545244368ad98e205609b354372812cdd b/.idea/sonarlint/securityhotspotstore/e/7/e7ae8e7545244368ad98e205609b354372812cdd
deleted file mode 100644
index e69de29b..00000000
diff --git a/.idea/sonarlint/securityhotspotstore/index.pb b/.idea/sonarlint/securityhotspotstore/index.pb
deleted file mode 100644
index 1aabf1f4..00000000
--- a/.idea/sonarlint/securityhotspotstore/index.pb
+++ /dev/null
@@ -1,19 +0,0 @@
-
-z
-Japp/src/main/java/com/maxrave/simpmusic/ui/fragment/other/QueueFragment.kt,9\9\994a5e8eff0970fdf56006fdbee6ee0752525b95
-y
-Iapp/src/main/java/com/maxrave/simpmusic/ui/fragment/NowPlayingFragment.kt,9\6\9601e8ca944c53a1369165f2bd7e5712e065f492
-z
-Japp/src/main/java/com/maxrave/simpmusic/service/test/source/MusicSource.kt,e\7\e7ae8e7545244368ad98e205609b354372812cdd
-|
-Lapp/src/main/java/com/maxrave/simpmusic/service/SimpleMediaServiceHandler.kt,e\2\e2d791213c14a0a126d36b55ef28dbe4b8a68356
-k
-;app/src/main/java/com/maxrave/simpmusic/extension/AllExt.kt,c\3\c3df1623afb5a0ab452278db00dcb22cc2e1a1f4
-u
-Eapp/src/main/java/com/maxrave/simpmusic/adapter/queue/QueueAdapter.kt,b\7\b798a1851f650799bd0cb2969e121510540b7fbd
-y
-Iapp/src/main/java/com/maxrave/simpmusic/ui/fragment/other/InfoFragment.kt,6\3\6350ed7c3b6a96211905929fff8bdbfd78587d97
-y
-Iapp/src/main/java/com/maxrave/simpmusic/service/test/source/FetchQueue.kt,8\f\8f214feb901aa25105c39fb9659ef11af773be1e
-t
-Dapp/src/main/java/com/maxrave/simpmusic/viewModel/SharedViewModel.kt,b\3\b33bf05ea51ca357a5d5b98a14abb56dbecf2392
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
deleted file mode 100644
index 83067447..00000000
--- a/.idea/vcs.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/java/com/maxrave/simpmusic/SimpMusicApplication.kt b/app/src/main/java/com/maxrave/simpmusic/SimpMusicApplication.kt
index e14f9f58..4af44552 100644
--- a/app/src/main/java/com/maxrave/simpmusic/SimpMusicApplication.kt
+++ b/app/src/main/java/com/maxrave/simpmusic/SimpMusicApplication.kt
@@ -1,7 +1,6 @@
package com.maxrave.simpmusic
import android.app.Application
-import android.content.Context
import android.util.Log
import androidx.appcompat.app.AppCompatDelegate
import androidx.media3.common.util.UnstableApi
@@ -48,24 +47,9 @@ class SimpMusicApplication :
.apply()
}
- override fun onLowMemory() {
- super.onLowMemory()
- Log.w("Low Memory", "Checking")
- }
-
override fun onTerminate() {
super.onTerminate()
Log.w("Terminate", "Checking")
}
-
- init {
- instance = this
- }
-
- companion object {
- private var instance: SimpMusicApplication? = null
-
- fun applicationContext(): Context = instance!!.applicationContext
- }
}
\ No newline at end of file
diff --git a/app/src/main/java/com/maxrave/simpmusic/service/test/notification/NotificationHandler.kt b/app/src/main/java/com/maxrave/simpmusic/service/test/notification/NotificationHandler.kt
index 6ea587dc..acf81549 100644
--- a/app/src/main/java/com/maxrave/simpmusic/service/test/notification/NotificationHandler.kt
+++ b/app/src/main/java/com/maxrave/simpmusic/service/test/notification/NotificationHandler.kt
@@ -54,7 +54,7 @@ object NotificationHandler {
.build()
return@runBlocking when (val result = loader.execute(request)) {
- is SuccessResult -> ((result as SuccessResult).drawable as BitmapDrawable).bitmap
+ is SuccessResult -> (result.drawable as BitmapDrawable).bitmap
else ->
AppCompatResources.getDrawable(context, R.drawable.holder)
?.toBitmap(128, 128)
diff --git a/app/src/main/java/com/maxrave/simpmusic/ui/component/DropdownButton.kt b/app/src/main/java/com/maxrave/simpmusic/ui/component/DropdownButton.kt
index 8b085c18..693c1d6e 100644
--- a/app/src/main/java/com/maxrave/simpmusic/ui/component/DropdownButton.kt
+++ b/app/src/main/java/com/maxrave/simpmusic/ui/component/DropdownButton.kt
@@ -8,6 +8,7 @@ import androidx.compose.material3.DropdownMenuItem
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.ExposedDropdownMenuBox
import androidx.compose.material3.ExposedDropdownMenuDefaults
+import androidx.compose.material3.MenuAnchorType
import androidx.compose.material3.OutlinedTextField
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
@@ -39,7 +40,7 @@ fun DropdownButton(
ExposedDropdownMenuBox(expanded = expanded, onExpandedChange = { new -> expanded = new })
{
OutlinedTextField(
- modifier = Modifier.menuAnchor(),
+ modifier = Modifier.menuAnchor(type = MenuAnchorType.PrimaryNotEditable),
textStyle = typo.bodyMedium,
readOnly = true,
value = selected,
diff --git a/app/src/main/java/com/maxrave/simpmusic/viewModel/LocalPlaylistViewModel.kt b/app/src/main/java/com/maxrave/simpmusic/viewModel/LocalPlaylistViewModel.kt
index f095391c..c05d592f 100644
--- a/app/src/main/java/com/maxrave/simpmusic/viewModel/LocalPlaylistViewModel.kt
+++ b/app/src/main/java/com/maxrave/simpmusic/viewModel/LocalPlaylistViewModel.kt
@@ -928,12 +928,15 @@ class LocalPlaylistViewModel(
fun addAllToQueue() {
viewModelScope.launch {
+ showLoadingDialog(getString(R.string.add_to_queue))
val fullTracks = localPlaylistManager.getFullPlaylistTracks(id = uiState.value.id)
if (fullTracks.isNotEmpty()) {
simpleMediaServiceHandler.loadMoreCatalog(fullTracks.toArrayListTrack(), true)
makeToast(getString(R.string.added_to_queue))
+ hideLoadingDialog()
} else {
makeToast(getString(R.string.playlist_is_empty))
+ hideLoadingDialog()
}
}
}
diff --git a/app/src/main/java/com/maxrave/simpmusic/viewModel/SharedViewModel.kt b/app/src/main/java/com/maxrave/simpmusic/viewModel/SharedViewModel.kt
index 3a79e95f..e06a8825 100644
--- a/app/src/main/java/com/maxrave/simpmusic/viewModel/SharedViewModel.kt
+++ b/app/src/main/java/com/maxrave/simpmusic/viewModel/SharedViewModel.kt
@@ -794,7 +794,7 @@ class SharedViewModel(
}
fun getCurrentMediaItemIndex(): Int {
- return runBlocking { simpleMediaServiceHandler.currentSongIndex?.first() } ?: 0
+ return runBlocking { simpleMediaServiceHandler.currentSongIndex.first() } ?: 0
}
@UnstableApi
@@ -1255,7 +1255,7 @@ class SharedViewModel(
) {
song.artistName.firstOrNull()
} else {
- simpleMediaServiceHandler.nowPlaying?.first()?.mediaMetadata?.artist
+ simpleMediaServiceHandler.nowPlaying.first()?.mediaMetadata?.artist
?: ""
}
mainRepository.getLyricsData(
@@ -1349,7 +1349,7 @@ class SharedViewModel(
song.toTrack().copy(
durationSeconds = duration,
),
- "${song.title} ${song.artistName?.firstOrNull() ?: simpleMediaServiceHandler.nowPlaying?.first()?.mediaMetadata?.artist ?: ""}",
+ "${song.title} ${song.artistName?.firstOrNull() ?: simpleMediaServiceHandler.nowPlaying.first()?.mediaMetadata?.artist ?: ""}",
duration,
)
}
@@ -1362,7 +1362,7 @@ class SharedViewModel(
song.toTrack().copy(
durationSeconds = duration,
),
- "${song.title} ${song.artistName?.firstOrNull() ?: simpleMediaServiceHandler.nowPlaying?.first()?.mediaMetadata?.artist ?: ""}",
+ "${song.title} ${song.artistName?.firstOrNull() ?: simpleMediaServiceHandler.nowPlaying.first()?.mediaMetadata?.artist ?: ""}",
duration,
)
} else {
@@ -1535,7 +1535,7 @@ class SharedViewModel(
}
} else {
mainRepository.removeFromYouTubeLiked(
- simpleMediaServiceHandler.nowPlaying?.first()?.mediaId,
+ simpleMediaServiceHandler.nowPlaying.first()?.mediaId,
)
.collect {
if (it == 200) {
diff --git a/gradle.properties b/gradle.properties
index e435797d..017fe006 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -18,5 +18,5 @@ android.useAndroidX=true
kotlin.code.style=official
kotlin.jvm.target.validation.mode=IGNORE
org.gradle.daemon=true
-org.gradle.jvmargs=-Xmx1536M -Dkotlin.daemon.jvm.options\="-Xmx1536M"
+org.gradle.jvmargs=-Xmx2560m
org.gradle.unsafe.configuration-cache=true
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index 6be06664..6f027ce5 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -50,7 +50,7 @@ insetsx = "0.1.0-alpha10"
ktor = "2.3.12"
brotli = "0.1.2"
ksoup = "0.3.1"
-desugaring = "2.1.2"
+desugaring = "2.1.3"
koin-bom = "4.0.0-RC1"
koin-annotations = "1.4.0-RC4"
diff --git a/kotlinYtmusicScraper/src/main/java/com/maxrave/kotlinytmusicscraper/YouTube.kt b/kotlinYtmusicScraper/src/main/java/com/maxrave/kotlinytmusicscraper/YouTube.kt
index f696638c..e2263619 100644
--- a/kotlinYtmusicScraper/src/main/java/com/maxrave/kotlinytmusicscraper/YouTube.kt
+++ b/kotlinYtmusicScraper/src/main/java/com/maxrave/kotlinytmusicscraper/YouTube.kt
@@ -386,8 +386,8 @@ object YouTube {
if (withSongs) {
albumSongs(
response.contents
- ?.twoColumnBrowseResultsRenderer
- ?.secondaryContents
+ .twoColumnBrowseResultsRenderer
+ .secondaryContents
?.sectionListRenderer
?.contents
?.firstOrNull()
diff --git a/kotlinYtmusicScraper/src/main/java/com/maxrave/kotlinytmusicscraper/pages/ArtistPage.kt b/kotlinYtmusicScraper/src/main/java/com/maxrave/kotlinytmusicscraper/pages/ArtistPage.kt
index 64d2b12d..2f678909 100644
--- a/kotlinYtmusicScraper/src/main/java/com/maxrave/kotlinytmusicscraper/pages/ArtistPage.kt
+++ b/kotlinYtmusicScraper/src/main/java/com/maxrave/kotlinytmusicscraper/pages/ArtistPage.kt
@@ -57,7 +57,11 @@ data class ArtistPage(
fromMusicTwoRowItemRenderer(renderer)
}
},
- moreEndpoint = renderer.header.musicCarouselShelfBasicHeaderRenderer.moreContentButton?.buttonRenderer?.navigationEndpoint?.browseEndpoint
+ moreEndpoint = renderer.header.musicCarouselShelfBasicHeaderRenderer
+ .moreContentButton
+ ?.buttonRenderer
+ ?.navigationEndpoint
+ ?.browseEndpoint
)
}
@@ -125,8 +129,7 @@ data class ArtistPage(
playlistId = renderer.thumbnailOverlay?.musicItemThumbnailOverlayRenderer?.content
?.musicPlayButtonRenderer?.playNavigationEndpoint
?.watchPlaylistEndpoint?.playlistId
- ?: renderer.navigationEndpoint.browseEndpoint.browseId.removePrefix("VL")
- ?: return null,
+ ?: renderer.navigationEndpoint.browseEndpoint.browseId.removePrefix("VL"),
title = renderer.title.runs?.firstOrNull()?.text ?: return null,
artists = null,
year = renderer.subtitle?.runs?.lastOrNull()?.text?.toIntOrNull(),
diff --git a/kotlinYtmusicScraper/src/main/java/com/maxrave/kotlinytmusicscraper/pages/RelatedPage.kt b/kotlinYtmusicScraper/src/main/java/com/maxrave/kotlinytmusicscraper/pages/RelatedPage.kt
index 693ca241..8ad3335b 100644
--- a/kotlinYtmusicScraper/src/main/java/com/maxrave/kotlinytmusicscraper/pages/RelatedPage.kt
+++ b/kotlinYtmusicScraper/src/main/java/com/maxrave/kotlinytmusicscraper/pages/RelatedPage.kt
@@ -66,8 +66,7 @@ data class RelatedPage(
?: renderer.thumbnailOverlay?.musicItemThumbnailOverlayRenderer
?.content?.musicPlayButtonRenderer?.playNavigationEndpoint
?.watchEndpoint?.playlistId
- ?: renderer.navigationEndpoint.browseEndpoint.browseId.removePrefix("VL")
- ?: return null,
+ ?: renderer.navigationEndpoint.browseEndpoint.browseId.removePrefix("VL"),
title = renderer.title.runs?.firstOrNull()?.text ?: return null,
artists = null,
year = renderer.subtitle?.runs?.lastOrNull()?.text?.toIntOrNull(),