diff --git a/app/src/main/java/org/oxycblt/auxio/MainActivity.kt b/app/src/main/java/org/oxycblt/auxio/MainActivity.kt index 302bd36fb..3ee5da662 100644 --- a/app/src/main/java/org/oxycblt/auxio/MainActivity.kt +++ b/app/src/main/java/org/oxycblt/auxio/MainActivity.kt @@ -18,9 +18,9 @@ import com.google.android.material.tabs.TabLayout import com.google.android.material.tabs.TabLayoutMediator import org.oxycblt.auxio.databinding.ActivityMainBinding import org.oxycblt.auxio.library.LibraryFragment +import org.oxycblt.auxio.library.SongsFragment import org.oxycblt.auxio.music.MusicViewModel import org.oxycblt.auxio.music.processing.MusicLoaderResponse -import org.oxycblt.auxio.library.SongsFragment import org.oxycblt.auxio.theme.accent import org.oxycblt.auxio.theme.getInactiveAlpha import org.oxycblt.auxio.theme.getTransparentAccent @@ -58,7 +58,8 @@ class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - binding = DataBindingUtil.setContentView( + + binding = DataBindingUtil.setContentView( this, R.layout.activity_main ) @@ -105,16 +106,17 @@ class MainActivity : AppCompatActivity() { ) musicModel.response.observe( - this, { + this, + { + // When the load is completed successfully, remove the loadingFragment view + // and replace it with the ViewPager, now that its loaded. if (it == MusicLoaderResponse.DONE) { - binding.loadingFragment.visibility = View.GONE + // binding.loadingFragment.visibility = View.GONE binding.viewPager.visibility = View.VISIBLE } } ) - musicModel.go() - Log.d(this::class.simpleName, "Activity Created.") } diff --git a/app/src/main/java/org/oxycblt/auxio/coil/CoilUtils.kt b/app/src/main/java/org/oxycblt/auxio/coil/CoilUtils.kt index 9e8dda1a9..5da654302 100644 --- a/app/src/main/java/org/oxycblt/auxio/coil/CoilUtils.kt +++ b/app/src/main/java/org/oxycblt/auxio/coil/CoilUtils.kt @@ -11,8 +11,6 @@ import org.oxycblt.auxio.music.models.Album import org.oxycblt.auxio.music.models.Artist import org.oxycblt.auxio.music.models.Song -private var artistImageFetcher: ArtistImageFetcher? = null - // Get the cover art for a song or album @BindingAdapter("coverArt") fun ImageView.getCoverArt(song: Song) { @@ -44,14 +42,11 @@ fun ImageView.getArtistImage(artist: Artist) { uris.add(artist.albums[i].coverUri) } - // Initialize the fetcher if it hasn't been already. - if (artistImageFetcher == null) { - artistImageFetcher = ArtistImageFetcher(context) - } + val fetcher = ArtistImageFetcher(context) getDefaultRequest(context, this) .data(uris) - .fetcher(artistImageFetcher!!) + .fetcher(fetcher) .error(R.drawable.ic_artist) .build() } else { diff --git a/app/src/main/java/org/oxycblt/auxio/library/LibraryFragment.kt b/app/src/main/java/org/oxycblt/auxio/library/LibraryFragment.kt index 85040f705..dd4a0daa2 100644 --- a/app/src/main/java/org/oxycblt/auxio/library/LibraryFragment.kt +++ b/app/src/main/java/org/oxycblt/auxio/library/LibraryFragment.kt @@ -8,7 +8,6 @@ import android.view.ViewGroup import androidx.databinding.DataBindingUtil import androidx.fragment.app.Fragment import androidx.fragment.app.activityViewModels -import androidx.lifecycle.ViewModelProvider import org.oxycblt.auxio.R import org.oxycblt.auxio.databinding.FragmentLibraryBinding import org.oxycblt.auxio.music.MusicViewModel diff --git a/app/src/main/java/org/oxycblt/auxio/library/SongsFragment.kt b/app/src/main/java/org/oxycblt/auxio/library/SongsFragment.kt index 9704664b7..4df3c9e6a 100644 --- a/app/src/main/java/org/oxycblt/auxio/library/SongsFragment.kt +++ b/app/src/main/java/org/oxycblt/auxio/library/SongsFragment.kt @@ -8,7 +8,6 @@ import android.view.ViewGroup import androidx.databinding.DataBindingUtil import androidx.fragment.app.Fragment import androidx.fragment.app.activityViewModels -import androidx.lifecycle.ViewModelProvider import org.oxycblt.auxio.R import org.oxycblt.auxio.databinding.FragmentSongsBinding import org.oxycblt.auxio.music.MusicViewModel diff --git a/app/src/main/java/org/oxycblt/auxio/music/MusicViewModel.kt b/app/src/main/java/org/oxycblt/auxio/music/MusicViewModel.kt index 68c878f51..296961a2e 100644 --- a/app/src/main/java/org/oxycblt/auxio/music/MusicViewModel.kt +++ b/app/src/main/java/org/oxycblt/auxio/music/MusicViewModel.kt @@ -6,7 +6,11 @@ import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModelProvider -import kotlinx.coroutines.* +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.Job +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext import org.oxycblt.auxio.R import org.oxycblt.auxio.music.models.Album import org.oxycblt.auxio.music.models.Artist diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index e70a89f5b..4e9d27837 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -27,7 +27,7 @@