feat: App bar mode is also reflected in Home tab and Settings now (Compact / Expanded)

This commit is contained in:
Prathamesh More 2023-03-09 12:08:26 +05:30
parent 210d9afa1a
commit bb99213848
10 changed files with 24 additions and 102 deletions

View file

@ -147,7 +147,9 @@ class FoldersFragment : AbsMainActivityFragment(R.layout.fragment_folder),
override fun onSaveInstanceState(outState: Bundle) {
super.onSaveInstanceState(outState)
outState.putParcelable(CRUMBS, binding.breadCrumbs.stateWrapper)
if (_binding != null) {
outState.putParcelable(CRUMBS, binding.breadCrumbs.stateWrapper)
}
}
private fun setUpTitle() {

View file

@ -9,7 +9,7 @@ class HomeBinding(
val container = homeBinding.container
val contentContainer = homeBinding.contentContainer
val appBarLayout = homeBinding.appBarLayout
val toolbar = homeBinding.toolbar
val toolbar = homeBinding.appBarLayout.toolbar
val bannerImage = homeBinding.imageLayout.bannerImage
val userImage = homeBinding.imageLayout.userImage
val lastAdded = homeBinding.homeContent.absPlaylists.lastAdded
@ -18,6 +18,5 @@ class HomeBinding(
val history = homeBinding.homeContent.absPlaylists.history
val recyclerView = homeBinding.homeContent.recyclerView
val titleWelcome = homeBinding.imageLayout.titleWelcome
val appNameText = homeBinding.appNameText
val suggestions = homeBinding.homeContent.suggestions
}

View file

@ -179,7 +179,7 @@ class HomeFragment :
}
val hexColor = String.format("#%06X", 0xFFFFFF and accentColor())
val appName = "Retro <span style='color:$hexColor';>Music</span>".parseAsHtml()
binding.appNameText.text = appName
binding.appBarLayout.title = appName
}
private fun loadProfile() {

View file

@ -17,6 +17,7 @@ package code.name.monkey.retromusic.fragments.settings
import android.os.Bundle
import android.view.View
import code.name.monkey.appthemehelper.common.prefs.supportv7.ATEListPreference
import code.name.monkey.retromusic.APPBAR_MODE
import code.name.monkey.retromusic.HOME_ALBUM_GRID_STYLE
import code.name.monkey.retromusic.HOME_ARTIST_GRID_STYLE
import code.name.monkey.retromusic.R
@ -47,5 +48,10 @@ class PersonalizeSettingsFragment : AbsSettingsFragment() {
setSummary(prefs, newValue)
true
}
val appBarMode: ATEListPreference? = findPreference(APPBAR_MODE)
appBarMode?.setOnPreferenceChangeListener { _, _ ->
restartActivity()
true
}
}
}

View file

@ -39,14 +39,11 @@ class SettingsFragment : Fragment(R.layout.fragment_settings), ColorCallback {
}
private fun setupToolbar() {
applyToolbar(binding.toolbar)
binding.toolbar.setNavigationOnClickListener {
requireActivity().onBackPressedDispatcher.onBackPressed()
}
val navController: NavController = findNavController(R.id.contentFrame)
binding.appBarLayout.toolbar.setNavigationIcon(R.drawable.ic_arrow_back)
navController.addOnDestinationChangedListener { _, _, _ ->
binding.collapsingToolbarLayout.title =
navController.currentDestination?.let { getStringFromDestination(it) }
binding.appBarLayout.title =
navController.currentDestination?.let { getStringFromDestination(it) }.toString()
}
}

View file

@ -59,7 +59,7 @@ class TopAppBarLayout @JvmOverloads constructor(
simpleAppbarBinding?.toolbar!!
}
var title: String
var title: CharSequence
get() = if (mode == AppBarMode.COLLAPSING) {
collapsingAppbarBinding?.collapsingToolbarLayout?.title.toString()
} else {