WIP theme
This commit is contained in:
parent
bb72a16b84
commit
9f1e6cb98e
87 changed files with 1694 additions and 1697 deletions
|
@ -4,10 +4,12 @@ import android.content.Intent
|
||||||
import android.content.pm.PackageManager
|
import android.content.pm.PackageManager
|
||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.*
|
import android.view.MenuItem
|
||||||
|
import android.view.View
|
||||||
import androidx.core.app.ShareCompat
|
import androidx.core.app.ShareCompat
|
||||||
import androidx.recyclerview.widget.*
|
import androidx.recyclerview.widget.DefaultItemAnimator
|
||||||
import code.name.monkey.appthemehelper.util.*
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
|
import code.name.monkey.appthemehelper.util.ToolbarContentTintHelper
|
||||||
import code.name.monkey.retromusic.Constants.APP_INSTAGRAM_LINK
|
import code.name.monkey.retromusic.Constants.APP_INSTAGRAM_LINK
|
||||||
import code.name.monkey.retromusic.Constants.APP_TELEGRAM_LINK
|
import code.name.monkey.retromusic.Constants.APP_TELEGRAM_LINK
|
||||||
import code.name.monkey.retromusic.Constants.APP_TWITTER_LINK
|
import code.name.monkey.retromusic.Constants.APP_TWITTER_LINK
|
||||||
|
@ -20,9 +22,12 @@ import code.name.monkey.retromusic.Constants.TRANSLATE
|
||||||
import code.name.monkey.retromusic.R
|
import code.name.monkey.retromusic.R
|
||||||
import code.name.monkey.retromusic.activities.base.AbsBaseActivity
|
import code.name.monkey.retromusic.activities.base.AbsBaseActivity
|
||||||
import code.name.monkey.retromusic.adapter.ContributorAdapter
|
import code.name.monkey.retromusic.adapter.ContributorAdapter
|
||||||
|
import code.name.monkey.retromusic.extensions.surfaceColor
|
||||||
import code.name.monkey.retromusic.model.Contributor
|
import code.name.monkey.retromusic.model.Contributor
|
||||||
import code.name.monkey.retromusic.util.*
|
import code.name.monkey.retromusic.util.NavigationUtil
|
||||||
import com.afollestad.materialdialogs.*
|
import code.name.monkey.retromusic.util.PreferenceUtil
|
||||||
|
import com.afollestad.materialdialogs.LayoutMode
|
||||||
|
import com.afollestad.materialdialogs.MaterialDialog
|
||||||
import com.afollestad.materialdialogs.bottomsheets.BottomSheet
|
import com.afollestad.materialdialogs.bottomsheets.BottomSheet
|
||||||
import com.afollestad.materialdialogs.list.listItems
|
import com.afollestad.materialdialogs.list.listItems
|
||||||
import com.google.gson.Gson
|
import com.google.gson.Gson
|
||||||
|
@ -62,11 +67,11 @@ class AboutActivity : AbsBaseActivity(), View.OnClickListener {
|
||||||
setNavigationBarColorPrimary()
|
setNavigationBarColorPrimary()
|
||||||
setLightNavigationBar(true)
|
setLightNavigationBar(true)
|
||||||
|
|
||||||
|
|
||||||
loadContributors()
|
loadContributors()
|
||||||
setSupportActionBar(toolbar)
|
setSupportActionBar(toolbar)
|
||||||
toolbar.apply {
|
toolbar.apply {
|
||||||
setTitleTextColor(ATHUtil.resolveColor(this@AboutActivity, R.attr.colorOnPrimary))
|
setBackgroundColor(surfaceColor(context))
|
||||||
setBackgroundColor(ATHUtil.resolveColor(this@AboutActivity, R.attr.colorPrimary))
|
|
||||||
setNavigationOnClickListener { onBackPressed() }
|
setNavigationOnClickListener { onBackPressed() }
|
||||||
ToolbarContentTintHelper.colorBackButton(toolbar)
|
ToolbarContentTintHelper.colorBackButton(toolbar)
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,6 @@ package code.name.monkey.retromusic.activities
|
||||||
|
|
||||||
import android.app.ActivityOptions
|
import android.app.ActivityOptions
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.graphics.Color
|
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.Menu
|
import android.view.Menu
|
||||||
import android.view.MenuItem
|
import android.view.MenuItem
|
||||||
|
@ -15,7 +14,7 @@ import androidx.recyclerview.widget.GridLayoutManager
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
import code.name.monkey.appthemehelper.ThemeStore
|
import code.name.monkey.appthemehelper.ThemeStore
|
||||||
import code.name.monkey.appthemehelper.util.ATHUtil
|
import code.name.monkey.appthemehelper.util.ATHUtil
|
||||||
import code.name.monkey.appthemehelper.util.ColorUtil
|
import code.name.monkey.appthemehelper.util.MaterialUtil
|
||||||
import code.name.monkey.retromusic.App
|
import code.name.monkey.retromusic.App
|
||||||
import code.name.monkey.retromusic.R
|
import code.name.monkey.retromusic.R
|
||||||
import code.name.monkey.retromusic.activities.base.AbsSlidingMusicPanelActivity
|
import code.name.monkey.retromusic.activities.base.AbsSlidingMusicPanelActivity
|
||||||
|
@ -44,6 +43,7 @@ import com.afollestad.materialcab.MaterialCab
|
||||||
import com.bumptech.glide.Glide
|
import com.bumptech.glide.Glide
|
||||||
import kotlinx.android.synthetic.main.activity_album.*
|
import kotlinx.android.synthetic.main.activity_album.*
|
||||||
import kotlinx.android.synthetic.main.activity_album_content.*
|
import kotlinx.android.synthetic.main.activity_album_content.*
|
||||||
|
import kotlinx.android.synthetic.main.status_bar.*
|
||||||
import java.util.*
|
import java.util.*
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
import android.util.Pair as UtilPair
|
import android.util.Pair as UtilPair
|
||||||
|
@ -80,11 +80,10 @@ class AlbumDetailsActivity : AbsSlidingMusicPanelActivity(), AlbumDetailsView, C
|
||||||
setDrawUnderStatusBar()
|
setDrawUnderStatusBar()
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
toggleBottomNavigationView(true)
|
toggleBottomNavigationView(true)
|
||||||
setStatusbarColor(Color.TRANSPARENT)
|
setStatusbarColorAuto()
|
||||||
setNavigationbarColorAuto()
|
setNavigationbarColorAuto()
|
||||||
setTaskDescriptionColorAuto()
|
setTaskDescriptionColorAuto()
|
||||||
setLightNavigationBar(true)
|
setLightNavigationBar(true)
|
||||||
setLightStatusbar(ColorUtil.isColorLight(ATHUtil.resolveColor(this, R.attr.colorPrimary)))
|
|
||||||
|
|
||||||
ActivityCompat.postponeEnterTransition(this)
|
ActivityCompat.postponeEnterTransition(this)
|
||||||
|
|
||||||
|
@ -191,18 +190,20 @@ class AlbumDetailsActivity : AbsSlidingMusicPanelActivity(), AlbumDetailsView, C
|
||||||
val themeColor = if (PreferenceUtil.getInstance(this).adaptiveColor) color
|
val themeColor = if (PreferenceUtil.getInstance(this).adaptiveColor) color
|
||||||
else ThemeStore.accentColor(this)
|
else ThemeStore.accentColor(this)
|
||||||
|
|
||||||
songTitle.setTextColor(ThemeStore.accentColor(this))
|
songTitle.setTextColor(themeColor)
|
||||||
moreTitle.setTextColor(ThemeStore.accentColor(this))
|
moreTitle.setTextColor(themeColor)
|
||||||
|
|
||||||
val buttonColor = if (PreferenceUtil.getInstance(this).adaptiveColor)
|
val buttonColor = if (PreferenceUtil.getInstance(this).adaptiveColor)
|
||||||
color
|
color
|
||||||
else
|
else
|
||||||
ATHUtil.resolveColor(this, R.attr.cardBackgroundColor)
|
ATHUtil.resolveColor(this, R.attr.colorControlNormal)
|
||||||
|
|
||||||
//MaterialUtil.setTint(button = shuffleAction, color = buttonColor)
|
MaterialUtil.setTint(button = shuffleAction, color = buttonColor)
|
||||||
//MaterialUtil.setTint(button = playAction, color = buttonColor)
|
MaterialUtil.setTint(button = playAction, color = buttonColor)
|
||||||
|
|
||||||
toolbar.setBackgroundColor(ATHUtil.resolveColor(this, R.attr.colorPrimary))
|
val toolbarColor = ATHUtil.resolveColor(this, R.attr.colorSurface)
|
||||||
|
status_bar.setBackgroundColor(toolbarColor)
|
||||||
|
toolbar.setBackgroundColor(toolbarColor)
|
||||||
setSupportActionBar(toolbar)
|
setSupportActionBar(toolbar)
|
||||||
supportActionBar?.title = null
|
supportActionBar?.title = null
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,6 @@ package code.name.monkey.retromusic.activities
|
||||||
|
|
||||||
import android.app.Activity
|
import android.app.Activity
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.graphics.Color
|
|
||||||
import android.os.Build
|
import android.os.Build
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.text.Html
|
import android.text.Html
|
||||||
|
@ -17,7 +16,6 @@ import androidx.recyclerview.widget.GridLayoutManager
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
import code.name.monkey.appthemehelper.ThemeStore
|
import code.name.monkey.appthemehelper.ThemeStore
|
||||||
import code.name.monkey.appthemehelper.util.ATHUtil
|
import code.name.monkey.appthemehelper.util.ATHUtil
|
||||||
import code.name.monkey.appthemehelper.util.ColorUtil
|
|
||||||
import code.name.monkey.appthemehelper.util.MaterialUtil
|
import code.name.monkey.appthemehelper.util.MaterialUtil
|
||||||
import code.name.monkey.retromusic.App
|
import code.name.monkey.retromusic.App
|
||||||
import code.name.monkey.retromusic.R
|
import code.name.monkey.retromusic.R
|
||||||
|
@ -39,6 +37,7 @@ import com.afollestad.materialcab.MaterialCab
|
||||||
import com.bumptech.glide.Glide
|
import com.bumptech.glide.Glide
|
||||||
import kotlinx.android.synthetic.main.activity_artist_content.*
|
import kotlinx.android.synthetic.main.activity_artist_content.*
|
||||||
import kotlinx.android.synthetic.main.activity_artist_details.*
|
import kotlinx.android.synthetic.main.activity_artist_details.*
|
||||||
|
import kotlinx.android.synthetic.main.status_bar.*
|
||||||
import java.util.*
|
import java.util.*
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
import kotlin.collections.ArrayList
|
import kotlin.collections.ArrayList
|
||||||
|
@ -74,11 +73,10 @@ class ArtistDetailActivity : AbsSlidingMusicPanelActivity(), ArtistDetailsView,
|
||||||
setDrawUnderStatusBar()
|
setDrawUnderStatusBar()
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
toggleBottomNavigationView(true)
|
toggleBottomNavigationView(true)
|
||||||
setStatusbarColor(Color.TRANSPARENT)
|
setStatusbarColorAuto()
|
||||||
setNavigationbarColorAuto()
|
setNavigationbarColorAuto()
|
||||||
setTaskDescriptionColorAuto()
|
setTaskDescriptionColorAuto()
|
||||||
setLightNavigationBar(true)
|
setLightNavigationBar(true)
|
||||||
setLightStatusbar(ColorUtil.isColorLight(ATHUtil.resolveColor(this, R.attr.colorPrimary)))
|
|
||||||
|
|
||||||
ActivityCompat.postponeEnterTransition(this)
|
ActivityCompat.postponeEnterTransition(this)
|
||||||
|
|
||||||
|
@ -240,7 +238,10 @@ class ArtistDetailActivity : AbsSlidingMusicPanelActivity(), ArtistDetailsView,
|
||||||
MaterialUtil.setTint(button = shuffleAction, color = buttonColor)
|
MaterialUtil.setTint(button = shuffleAction, color = buttonColor)
|
||||||
MaterialUtil.setTint(button = playAction, color = buttonColor)
|
MaterialUtil.setTint(button = playAction, color = buttonColor)
|
||||||
|
|
||||||
toolbar.setBackgroundColor(ATHUtil.resolveColor(this, R.attr.colorPrimary))
|
|
||||||
|
val toolbarColor = ATHUtil.resolveColor(this, R.attr.colorSurface)
|
||||||
|
status_bar.setBackgroundColor(toolbarColor)
|
||||||
|
toolbar.setBackgroundColor(toolbarColor)
|
||||||
setSupportActionBar(toolbar)
|
setSupportActionBar(toolbar)
|
||||||
supportActionBar?.title = null
|
supportActionBar?.title = null
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,19 +1,25 @@
|
||||||
package code.name.monkey.retromusic.activities
|
package code.name.monkey.retromusic.activities
|
||||||
|
|
||||||
import android.graphics.Color
|
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.*
|
import android.view.Menu
|
||||||
import androidx.recyclerview.widget.*
|
import android.view.MenuItem
|
||||||
import code.name.monkey.appthemehelper.util.*
|
import android.view.View
|
||||||
import code.name.monkey.retromusic.*
|
import androidx.recyclerview.widget.DefaultItemAnimator
|
||||||
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
|
import code.name.monkey.appthemehelper.util.ATHUtil
|
||||||
|
import code.name.monkey.retromusic.App
|
||||||
|
import code.name.monkey.retromusic.R
|
||||||
import code.name.monkey.retromusic.activities.base.AbsSlidingMusicPanelActivity
|
import code.name.monkey.retromusic.activities.base.AbsSlidingMusicPanelActivity
|
||||||
import code.name.monkey.retromusic.adapter.song.ShuffleButtonSongAdapter
|
import code.name.monkey.retromusic.adapter.song.ShuffleButtonSongAdapter
|
||||||
import code.name.monkey.retromusic.extensions.applyToolbar
|
import code.name.monkey.retromusic.extensions.applyToolbar
|
||||||
import code.name.monkey.retromusic.helper.menu.GenreMenuHelper
|
import code.name.monkey.retromusic.helper.menu.GenreMenuHelper
|
||||||
import code.name.monkey.retromusic.interfaces.CabHolder
|
import code.name.monkey.retromusic.interfaces.CabHolder
|
||||||
import code.name.monkey.retromusic.model.*
|
import code.name.monkey.retromusic.model.Genre
|
||||||
import code.name.monkey.retromusic.mvp.presenter.*
|
import code.name.monkey.retromusic.model.Song
|
||||||
import code.name.monkey.retromusic.util.*
|
import code.name.monkey.retromusic.mvp.presenter.GenreDetailsPresenter
|
||||||
|
import code.name.monkey.retromusic.mvp.presenter.GenreDetailsView
|
||||||
|
import code.name.monkey.retromusic.util.RetroColorUtil
|
||||||
import code.name.monkey.retromusic.util.ViewUtil
|
import code.name.monkey.retromusic.util.ViewUtil
|
||||||
import com.afollestad.materialcab.MaterialCab
|
import com.afollestad.materialcab.MaterialCab
|
||||||
import kotlinx.android.synthetic.main.activity_playlist_detail.*
|
import kotlinx.android.synthetic.main.activity_playlist_detail.*
|
||||||
|
@ -40,12 +46,10 @@ class GenreDetailsActivity : AbsSlidingMusicPanelActivity(), CabHolder, GenreDet
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
setDrawUnderStatusBar()
|
setDrawUnderStatusBar()
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
|
setStatusbarColorAuto()
|
||||||
setStatusbarColor(Color.TRANSPARENT)
|
|
||||||
setNavigationbarColorAuto()
|
setNavigationbarColorAuto()
|
||||||
setTaskDescriptionColorAuto()
|
setTaskDescriptionColorAuto()
|
||||||
setLightNavigationBar(true)
|
setLightNavigationBar(true)
|
||||||
setLightStatusbar(ColorUtil.isColorLight(ATHUtil.resolveColor(this, R.attr.colorPrimary)))
|
|
||||||
toggleBottomNavigationView(true)
|
toggleBottomNavigationView(true)
|
||||||
|
|
||||||
if (intent.extras != null) {
|
if (intent.extras != null) {
|
||||||
|
@ -63,8 +67,6 @@ class GenreDetailsActivity : AbsSlidingMusicPanelActivity(), CabHolder, GenreDet
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun setUpToolBar() {
|
private fun setUpToolBar() {
|
||||||
val primaryColor = ATHUtil.resolveColor(this, R.attr.colorPrimary)
|
|
||||||
appBarLayout.setBackgroundColor(primaryColor)
|
|
||||||
applyToolbar(toolbar)
|
applyToolbar(toolbar)
|
||||||
title = genre.name
|
title = genre.name
|
||||||
}
|
}
|
||||||
|
|
|
@ -65,7 +65,7 @@ public class LicenseActivity extends AbsBaseActivity {
|
||||||
Toolbar toolbar = findViewById(R.id.toolbar);
|
Toolbar toolbar = findViewById(R.id.toolbar);
|
||||||
setSupportActionBar(toolbar);
|
setSupportActionBar(toolbar);
|
||||||
ToolbarContentTintHelper.colorBackButton(toolbar);
|
ToolbarContentTintHelper.colorBackButton(toolbar);
|
||||||
toolbar.setBackgroundColor(INSTANCE.resolveColor(this, R.attr.colorPrimary));
|
toolbar.setBackgroundColor(INSTANCE.resolveColor(this, R.attr.colorSurface));
|
||||||
WebView webView = findViewById(R.id.license);
|
WebView webView = findViewById(R.id.license);
|
||||||
try {
|
try {
|
||||||
StringBuilder buf = new StringBuilder();
|
StringBuilder buf = new StringBuilder();
|
||||||
|
@ -78,7 +78,7 @@ public class LicenseActivity extends AbsBaseActivity {
|
||||||
|
|
||||||
// Inject color values for WebView body background and links
|
// Inject color values for WebView body background and links
|
||||||
final boolean isDark = INSTANCE.isWindowBackgroundDark(this);
|
final boolean isDark = INSTANCE.isWindowBackgroundDark(this);
|
||||||
final String backgroundColor = colorToCSS(INSTANCE.resolveColor(this, R.attr.colorPrimary, Color.parseColor(isDark ? "#424242" : "#ffffff")));
|
final String backgroundColor = colorToCSS(INSTANCE.resolveColor(this, android.R.attr.windowBackground, Color.parseColor(isDark ? "#424242" : "#ffffff")));
|
||||||
final String contentColor = colorToCSS(Color.parseColor(isDark ? "#ffffff" : "#000000"));
|
final String contentColor = colorToCSS(Color.parseColor(isDark ? "#ffffff" : "#000000"));
|
||||||
final String changeLog = buf.toString()
|
final String changeLog = buf.toString()
|
||||||
.replace("{style-placeholder}",
|
.replace("{style-placeholder}",
|
||||||
|
|
|
@ -2,28 +2,44 @@ package code.name.monkey.retromusic.activities
|
||||||
|
|
||||||
import android.annotation.SuppressLint
|
import android.annotation.SuppressLint
|
||||||
import android.content.res.ColorStateList
|
import android.content.res.ColorStateList
|
||||||
import android.os.*
|
import android.os.AsyncTask
|
||||||
import android.text.*
|
import android.os.Build
|
||||||
|
import android.os.Bundle
|
||||||
|
import android.text.InputType
|
||||||
|
import android.text.TextUtils
|
||||||
import android.view.*
|
import android.view.*
|
||||||
import androidx.annotation.StringRes
|
import androidx.annotation.StringRes
|
||||||
import androidx.core.content.ContextCompat
|
import androidx.core.content.ContextCompat
|
||||||
import androidx.fragment.app.*
|
import androidx.fragment.app.Fragment
|
||||||
|
import androidx.fragment.app.FragmentManager
|
||||||
|
import androidx.fragment.app.FragmentStatePagerAdapter
|
||||||
import androidx.viewpager.widget.ViewPager
|
import androidx.viewpager.widget.ViewPager
|
||||||
import code.name.monkey.appthemehelper.ThemeStore
|
import code.name.monkey.appthemehelper.ThemeStore
|
||||||
import code.name.monkey.appthemehelper.util.*
|
import code.name.monkey.appthemehelper.util.ColorUtil
|
||||||
import code.name.monkey.retromusic.*
|
import code.name.monkey.appthemehelper.util.MaterialUtil
|
||||||
|
import code.name.monkey.appthemehelper.util.MaterialValueHelper
|
||||||
|
import code.name.monkey.appthemehelper.util.TintHelper
|
||||||
|
import code.name.monkey.retromusic.App
|
||||||
import code.name.monkey.retromusic.R
|
import code.name.monkey.retromusic.R
|
||||||
import code.name.monkey.retromusic.activities.base.AbsMusicServiceActivity
|
import code.name.monkey.retromusic.activities.base.AbsMusicServiceActivity
|
||||||
import code.name.monkey.retromusic.activities.tageditor.WriteTagsAsyncTask
|
import code.name.monkey.retromusic.activities.tageditor.WriteTagsAsyncTask
|
||||||
|
import code.name.monkey.retromusic.extensions.applyToolbar
|
||||||
import code.name.monkey.retromusic.fragments.base.AbsMusicServiceFragment
|
import code.name.monkey.retromusic.fragments.base.AbsMusicServiceFragment
|
||||||
import code.name.monkey.retromusic.helper.*
|
import code.name.monkey.retromusic.helper.MusicPlayerRemote
|
||||||
import code.name.monkey.retromusic.lyrics.*
|
import code.name.monkey.retromusic.helper.MusicProgressViewUpdateHelper
|
||||||
|
import code.name.monkey.retromusic.lyrics.LrcHelper
|
||||||
|
import code.name.monkey.retromusic.lyrics.LrcView
|
||||||
import code.name.monkey.retromusic.model.Song
|
import code.name.monkey.retromusic.model.Song
|
||||||
import code.name.monkey.retromusic.model.lyrics.Lyrics
|
import code.name.monkey.retromusic.model.lyrics.Lyrics
|
||||||
import code.name.monkey.retromusic.util.*
|
import code.name.monkey.retromusic.util.LyricUtil
|
||||||
import com.afollestad.materialdialogs.*
|
import code.name.monkey.retromusic.util.MusicUtil
|
||||||
|
import code.name.monkey.retromusic.util.PreferenceUtil
|
||||||
|
import code.name.monkey.retromusic.util.RetroUtil
|
||||||
|
import com.afollestad.materialdialogs.LayoutMode
|
||||||
|
import com.afollestad.materialdialogs.MaterialDialog
|
||||||
import com.afollestad.materialdialogs.bottomsheets.BottomSheet
|
import com.afollestad.materialdialogs.bottomsheets.BottomSheet
|
||||||
import com.afollestad.materialdialogs.input.*
|
import com.afollestad.materialdialogs.input.getInputLayout
|
||||||
|
import com.afollestad.materialdialogs.input.input
|
||||||
import kotlinx.android.synthetic.main.activity_lyrics.*
|
import kotlinx.android.synthetic.main.activity_lyrics.*
|
||||||
import kotlinx.android.synthetic.main.fragment_lyrics.*
|
import kotlinx.android.synthetic.main.fragment_lyrics.*
|
||||||
import kotlinx.android.synthetic.main.fragment_synced.*
|
import kotlinx.android.synthetic.main.fragment_synced.*
|
||||||
|
@ -71,34 +87,14 @@ class LyricsActivity : AbsMusicServiceActivity(), View.OnClickListener, ViewPage
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
setContentView(R.layout.activity_lyrics)
|
setContentView(R.layout.activity_lyrics)
|
||||||
|
|
||||||
setStatusbarColorAuto()
|
setStatusbarColorAuto()
|
||||||
setTaskDescriptionColorAuto()
|
setTaskDescriptionColorAuto()
|
||||||
setNavigationBarColorPrimary()
|
setNavigationBarColorPrimary()
|
||||||
|
|
||||||
val primaryColor = ATHUtil.resolveColor(this, R.attr.colorPrimary)
|
applyToolbar(toolbar)
|
||||||
appBarLayout.setBackgroundColor(primaryColor)
|
|
||||||
toolbar.apply {
|
|
||||||
setBackgroundColor(primaryColor)
|
|
||||||
navigationIcon = TintHelper.createTintedDrawable(
|
|
||||||
ContextCompat.getDrawable(
|
|
||||||
this@LyricsActivity, R.drawable.ic_keyboard_backspace_black_24dp
|
|
||||||
), ThemeStore.textColorSecondary(this@LyricsActivity)
|
|
||||||
)
|
|
||||||
setSupportActionBar(toolbar)
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
fab.backgroundTintList = ColorStateList.valueOf(ThemeStore.accentColor(this))
|
fab.backgroundTintList = ColorStateList.valueOf(ThemeStore.accentColor(this))
|
||||||
ColorStateList.valueOf(
|
ColorStateList.valueOf(MaterialValueHelper.getPrimaryTextColor(this, ColorUtil.isColorLight(ThemeStore.accentColor(this))))
|
||||||
MaterialValueHelper.getPrimaryTextColor(
|
.apply {
|
||||||
this, ColorUtil.isColorLight(
|
|
||||||
ThemeStore.accentColor(
|
|
||||||
this
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
).apply {
|
|
||||||
fab.setTextColor(this)
|
fab.setTextColor(this)
|
||||||
fab.iconTint = this
|
fab.iconTint = this
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,15 +3,17 @@ package code.name.monkey.retromusic.activities
|
||||||
import android.content.res.ColorStateList
|
import android.content.res.ColorStateList
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.MenuItem
|
import android.view.MenuItem
|
||||||
import androidx.recyclerview.widget.*
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import code.name.monkey.appthemehelper.ThemeStore
|
import code.name.monkey.appthemehelper.ThemeStore
|
||||||
import code.name.monkey.appthemehelper.util.*
|
import code.name.monkey.appthemehelper.util.ColorUtil
|
||||||
|
import code.name.monkey.appthemehelper.util.MaterialValueHelper
|
||||||
import code.name.monkey.retromusic.R
|
import code.name.monkey.retromusic.R
|
||||||
import code.name.monkey.retromusic.activities.base.AbsMusicServiceActivity
|
import code.name.monkey.retromusic.activities.base.AbsMusicServiceActivity
|
||||||
import code.name.monkey.retromusic.adapter.song.PlayingQueueAdapter
|
import code.name.monkey.retromusic.adapter.song.PlayingQueueAdapter
|
||||||
import code.name.monkey.retromusic.extensions.applyToolbar
|
import code.name.monkey.retromusic.extensions.applyToolbar
|
||||||
import code.name.monkey.retromusic.helper.MusicPlayerRemote
|
import code.name.monkey.retromusic.helper.MusicPlayerRemote
|
||||||
import code.name.monkey.retromusic.util.*
|
import code.name.monkey.retromusic.util.MusicUtil
|
||||||
import code.name.monkey.retromusic.util.ViewUtil
|
import code.name.monkey.retromusic.util.ViewUtil
|
||||||
import com.h6ah4i.android.widget.advrecyclerview.animator.RefactoredDefaultItemAnimator
|
import com.h6ah4i.android.widget.advrecyclerview.animator.RefactoredDefaultItemAnimator
|
||||||
import com.h6ah4i.android.widget.advrecyclerview.draggable.RecyclerViewDragDropManager
|
import com.h6ah4i.android.widget.advrecyclerview.draggable.RecyclerViewDragDropManager
|
||||||
|
@ -27,18 +29,12 @@ open class PlayingQueueActivity : AbsMusicServiceActivity() {
|
||||||
|
|
||||||
private fun getUpNextAndQueueTime(): String {
|
private fun getUpNextAndQueueTime(): String {
|
||||||
val duration = MusicPlayerRemote.getQueueDurationMillis(MusicPlayerRemote.position)
|
val duration = MusicPlayerRemote.getQueueDurationMillis(MusicPlayerRemote.position)
|
||||||
|
return MusicUtil.buildInfoString(resources.getString(R.string.up_next), MusicUtil.getReadableDurationString(duration))
|
||||||
return MusicUtil.buildInfoString(
|
|
||||||
resources.getString(R.string.up_next), MusicUtil.getReadableDurationString(duration)
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onCreate(
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
savedInstanceState: Bundle?
|
|
||||||
) {
|
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
setContentView(R.layout.activity_playing_queue)
|
setContentView(R.layout.activity_playing_queue)
|
||||||
|
|
||||||
setStatusbarColorAuto()
|
setStatusbarColorAuto()
|
||||||
setNavigationBarColorPrimary()
|
setNavigationBarColorPrimary()
|
||||||
setTaskDescriptionColorAuto()
|
setTaskDescriptionColorAuto()
|
||||||
|
@ -168,8 +164,6 @@ open class PlayingQueueActivity : AbsMusicServiceActivity() {
|
||||||
playerQueueSubHeader.setTextColor(ThemeStore.accentColor(this))
|
playerQueueSubHeader.setTextColor(ThemeStore.accentColor(this))
|
||||||
|
|
||||||
applyToolbar(toolbar)
|
applyToolbar(toolbar)
|
||||||
appBarLayout.setBackgroundColor(ATHUtil.resolveColor(this, R.attr.colorPrimary))
|
|
||||||
|
|
||||||
clearQueue.backgroundTintList = ColorStateList.valueOf(ThemeStore.accentColor(this))
|
clearQueue.backgroundTintList = ColorStateList.valueOf(ThemeStore.accentColor(this))
|
||||||
ColorStateList.valueOf(
|
ColorStateList.valueOf(
|
||||||
MaterialValueHelper.getPrimaryTextColor(
|
MaterialValueHelper.getPrimaryTextColor(
|
||||||
|
|
|
@ -1,20 +1,29 @@
|
||||||
package code.name.monkey.retromusic.activities
|
package code.name.monkey.retromusic.activities
|
||||||
|
|
||||||
import android.graphics.Color
|
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.*
|
import android.view.Menu
|
||||||
import androidx.recyclerview.widget.*
|
import android.view.MenuItem
|
||||||
import code.name.monkey.appthemehelper.util.*
|
import android.view.View
|
||||||
import code.name.monkey.retromusic.*
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
|
import code.name.monkey.appthemehelper.util.ATHUtil
|
||||||
|
import code.name.monkey.retromusic.App
|
||||||
|
import code.name.monkey.retromusic.R
|
||||||
import code.name.monkey.retromusic.activities.base.AbsSlidingMusicPanelActivity
|
import code.name.monkey.retromusic.activities.base.AbsSlidingMusicPanelActivity
|
||||||
import code.name.monkey.retromusic.adapter.song.*
|
import code.name.monkey.retromusic.adapter.song.OrderablePlaylistSongAdapter
|
||||||
import code.name.monkey.retromusic.extensions.applyToolbar
|
import code.name.monkey.retromusic.adapter.song.PlaylistSongAdapter
|
||||||
|
import code.name.monkey.retromusic.adapter.song.SongAdapter
|
||||||
import code.name.monkey.retromusic.helper.menu.PlaylistMenuHelper
|
import code.name.monkey.retromusic.helper.menu.PlaylistMenuHelper
|
||||||
import code.name.monkey.retromusic.interfaces.CabHolder
|
import code.name.monkey.retromusic.interfaces.CabHolder
|
||||||
import code.name.monkey.retromusic.loaders.PlaylistLoader
|
import code.name.monkey.retromusic.loaders.PlaylistLoader
|
||||||
import code.name.monkey.retromusic.model.*
|
import code.name.monkey.retromusic.model.AbsCustomPlaylist
|
||||||
import code.name.monkey.retromusic.mvp.presenter.*
|
import code.name.monkey.retromusic.model.Playlist
|
||||||
import code.name.monkey.retromusic.util.*
|
import code.name.monkey.retromusic.model.Song
|
||||||
|
import code.name.monkey.retromusic.mvp.presenter.PlaylistSongsPresenter
|
||||||
|
import code.name.monkey.retromusic.mvp.presenter.PlaylistSongsView
|
||||||
|
import code.name.monkey.retromusic.util.DensityUtil
|
||||||
|
import code.name.monkey.retromusic.util.PlaylistsUtil
|
||||||
|
import code.name.monkey.retromusic.util.RetroColorUtil
|
||||||
import code.name.monkey.retromusic.util.ViewUtil
|
import code.name.monkey.retromusic.util.ViewUtil
|
||||||
import com.afollestad.materialcab.MaterialCab
|
import com.afollestad.materialcab.MaterialCab
|
||||||
import com.h6ah4i.android.widget.advrecyclerview.animator.RefactoredDefaultItemAnimator
|
import com.h6ah4i.android.widget.advrecyclerview.animator.RefactoredDefaultItemAnimator
|
||||||
|
@ -37,18 +46,15 @@ class PlaylistDetailActivity : AbsSlidingMusicPanelActivity(), CabHolder, Playli
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
setDrawUnderStatusBar()
|
setDrawUnderStatusBar()
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
App.musicComponent.inject(this)
|
setStatusbarColorAuto()
|
||||||
|
|
||||||
playlistSongsPresenter.attachView(this)
|
|
||||||
|
|
||||||
setStatusbarColor(Color.TRANSPARENT)
|
|
||||||
setNavigationbarColorAuto()
|
setNavigationbarColorAuto()
|
||||||
setTaskDescriptionColorAuto()
|
setTaskDescriptionColorAuto()
|
||||||
setLightNavigationBar(true)
|
setLightNavigationBar(true)
|
||||||
setLightStatusbar(ColorUtil.isColorLight(ATHUtil.resolveColor(this, R.attr.colorPrimary)))
|
|
||||||
|
|
||||||
toggleBottomNavigationView(true)
|
toggleBottomNavigationView(true)
|
||||||
|
|
||||||
|
App.musicComponent.inject(this)
|
||||||
|
playlistSongsPresenter.attachView(this)
|
||||||
|
|
||||||
if (intent.extras != null) {
|
if (intent.extras != null) {
|
||||||
playlist = intent.extras!!.getParcelable(EXTRA_PLAYLIST)!!
|
playlist = intent.extras!!.getParcelable(EXTRA_PLAYLIST)!!
|
||||||
} else {
|
} else {
|
||||||
|
@ -78,24 +84,11 @@ class PlaylistDetailActivity : AbsSlidingMusicPanelActivity(), CabHolder, Playli
|
||||||
false,
|
false,
|
||||||
this,
|
this,
|
||||||
object : OrderablePlaylistSongAdapter.OnMoveItemListener {
|
object : OrderablePlaylistSongAdapter.OnMoveItemListener {
|
||||||
override fun onMoveItem(
|
override fun onMoveItem(fromPosition: Int, toPosition: Int) {
|
||||||
fromPosition: Int,
|
if (PlaylistsUtil.moveItem(this@PlaylistDetailActivity, playlist.id, fromPosition, toPosition)) {
|
||||||
toPosition: Int
|
val song = adapter.dataSet.removeAt(fromPosition)
|
||||||
) {
|
|
||||||
if (PlaylistsUtil.moveItem(
|
|
||||||
this@PlaylistDetailActivity,
|
|
||||||
playlist.id,
|
|
||||||
fromPosition,
|
|
||||||
toPosition
|
|
||||||
)) {
|
|
||||||
val song = adapter.dataSet.removeAt(
|
|
||||||
fromPosition
|
|
||||||
)
|
|
||||||
adapter.dataSet.add(toPosition, song)
|
adapter.dataSet.add(toPosition, song)
|
||||||
adapter.notifyItemMoved(
|
adapter.notifyItemMoved(fromPosition, toPosition)
|
||||||
fromPosition,
|
|
||||||
toPosition
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
@ -120,7 +113,8 @@ class PlaylistDetailActivity : AbsSlidingMusicPanelActivity(), CabHolder, Playli
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun setUpToolBar() {
|
private fun setUpToolBar() {
|
||||||
applyToolbar(toolbar)
|
toolbar.setBackgroundColor(ATHUtil.resolveColor(this, R.attr.colorSurface))
|
||||||
|
setSupportActionBar(toolbar)
|
||||||
title = playlist.name
|
title = playlist.name
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,16 +1,19 @@
|
||||||
package code.name.monkey.retromusic.activities
|
package code.name.monkey.retromusic.activities
|
||||||
|
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.os.*
|
import android.os.AsyncTask
|
||||||
|
import android.os.Bundle
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
import android.view.MenuItem
|
import android.view.MenuItem
|
||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
import code.name.monkey.appthemehelper.util.*
|
import code.name.monkey.appthemehelper.util.MaterialUtil
|
||||||
import code.name.monkey.retromusic.*
|
import code.name.monkey.retromusic.App
|
||||||
import code.name.monkey.retromusic.BuildConfig
|
import code.name.monkey.retromusic.BuildConfig
|
||||||
|
import code.name.monkey.retromusic.R
|
||||||
import code.name.monkey.retromusic.activities.base.AbsBaseActivity
|
import code.name.monkey.retromusic.activities.base.AbsBaseActivity
|
||||||
import code.name.monkey.retromusic.extensions.applyToolbar
|
import code.name.monkey.retromusic.extensions.applyToolbar
|
||||||
import com.anjlab.android.iab.v3.*
|
import com.anjlab.android.iab.v3.BillingProcessor
|
||||||
|
import com.anjlab.android.iab.v3.TransactionDetails
|
||||||
import kotlinx.android.synthetic.main.activity_pro_version.*
|
import kotlinx.android.synthetic.main.activity_pro_version.*
|
||||||
import java.lang.ref.WeakReference
|
import java.lang.ref.WeakReference
|
||||||
|
|
||||||
|
@ -23,16 +26,11 @@ class PurchaseActivity : AbsBaseActivity(), BillingProcessor.IBillingHandler {
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
setContentView(R.layout.activity_pro_version)
|
setContentView(R.layout.activity_pro_version)
|
||||||
setDrawUnderStatusBar()
|
setDrawUnderStatusBar()
|
||||||
|
|
||||||
setStatusbarColorAuto()
|
setStatusbarColorAuto()
|
||||||
setNavigationBarColorPrimary()
|
setNavigationBarColorPrimary()
|
||||||
setTaskDescriptionColorAuto()
|
setTaskDescriptionColorAuto()
|
||||||
setLightNavigationBar(true)
|
setLightNavigationBar(true)
|
||||||
|
|
||||||
val primaryColor = ATHUtil.resolveColor(this, R.attr.colorPrimary)
|
|
||||||
toolbar.setBackgroundColor(primaryColor)
|
|
||||||
appBarLayout.setBackgroundColor(primaryColor)
|
|
||||||
|
|
||||||
applyToolbar(toolbar)
|
applyToolbar(toolbar)
|
||||||
|
|
||||||
restoreButton.isEnabled = false
|
restoreButton.isEnabled = false
|
||||||
|
|
|
@ -18,7 +18,6 @@ import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import androidx.transition.TransitionManager
|
import androidx.transition.TransitionManager
|
||||||
import code.name.monkey.appthemehelper.ThemeStore
|
import code.name.monkey.appthemehelper.ThemeStore
|
||||||
import code.name.monkey.appthemehelper.util.ATHUtil
|
|
||||||
import code.name.monkey.appthemehelper.util.ColorUtil
|
import code.name.monkey.appthemehelper.util.ColorUtil
|
||||||
import code.name.monkey.appthemehelper.util.MaterialValueHelper
|
import code.name.monkey.appthemehelper.util.MaterialValueHelper
|
||||||
import code.name.monkey.retromusic.App
|
import code.name.monkey.retromusic.App
|
||||||
|
@ -125,7 +124,6 @@ class SearchActivity : AbsMusicServiceActivity(), OnQueryTextListener, TextWatch
|
||||||
|
|
||||||
private fun setUpToolBar() {
|
private fun setUpToolBar() {
|
||||||
title = null
|
title = null
|
||||||
appBarLayout.setBackgroundColor(ATHUtil.resolveColor(this, R.attr.colorPrimary))
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun search(query: String) {
|
private fun search(query: String) {
|
||||||
|
|
|
@ -5,7 +5,8 @@ import android.view.MenuItem
|
||||||
import androidx.annotation.StringRes
|
import androidx.annotation.StringRes
|
||||||
import androidx.fragment.app.Fragment
|
import androidx.fragment.app.Fragment
|
||||||
import androidx.transition.TransitionManager
|
import androidx.transition.TransitionManager
|
||||||
import code.name.monkey.appthemehelper.util.*
|
import code.name.monkey.appthemehelper.util.ATHUtil
|
||||||
|
import code.name.monkey.appthemehelper.util.ToolbarContentTintHelper
|
||||||
import code.name.monkey.retromusic.R
|
import code.name.monkey.retromusic.R
|
||||||
import code.name.monkey.retromusic.activities.base.AbsBaseActivity
|
import code.name.monkey.retromusic.activities.base.AbsBaseActivity
|
||||||
import code.name.monkey.retromusic.fragments.settings.MainSettingsFragment
|
import code.name.monkey.retromusic.fragments.settings.MainSettingsFragment
|
||||||
|
@ -25,8 +26,7 @@ class SettingsActivity : AbsBaseActivity() {
|
||||||
setupToolbar()
|
setupToolbar()
|
||||||
|
|
||||||
if (savedInstanceState == null) {
|
if (savedInstanceState == null) {
|
||||||
fragmentManager.beginTransaction().replace(R.id.contentFrame, MainSettingsFragment())
|
fragmentManager.beginTransaction().replace(R.id.contentFrame, MainSettingsFragment()).commit()
|
||||||
.commit()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -34,13 +34,10 @@ class SettingsActivity : AbsBaseActivity() {
|
||||||
setSupportActionBar(toolbar)
|
setSupportActionBar(toolbar)
|
||||||
setTitle(R.string.action_settings)
|
setTitle(R.string.action_settings)
|
||||||
toolbar.apply {
|
toolbar.apply {
|
||||||
setTitleTextColor(ATHUtil.resolveColor(this@SettingsActivity, R.attr.colorOnPrimary))
|
setBackgroundColor(ATHUtil.resolveColor(this@SettingsActivity, R.attr.colorSurface))
|
||||||
setBackgroundColor(ATHUtil.resolveColor(this@SettingsActivity, R.attr.colorPrimary))
|
|
||||||
setNavigationOnClickListener { onBackPressed() }
|
setNavigationOnClickListener { onBackPressed() }
|
||||||
ToolbarContentTintHelper.colorBackButton(toolbar)
|
ToolbarContentTintHelper.colorBackButton(toolbar)
|
||||||
}
|
}
|
||||||
appBarLayout.setBackgroundColor(ATHUtil.resolveColor(this@SettingsActivity, R.attr.colorPrimary))
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fun setupFragment(fragment: Fragment, @StringRes titleName: Int) {
|
fun setupFragment(fragment: Fragment, @StringRes titleName: Int) {
|
||||||
|
|
|
@ -2,20 +2,30 @@ package code.name.monkey.retromusic.activities
|
||||||
|
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.graphics.Paint
|
import android.graphics.Paint
|
||||||
import android.os.*
|
import android.os.AsyncTask
|
||||||
|
import android.os.Bundle
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
import android.view.*
|
import android.view.LayoutInflater
|
||||||
import android.widget.*
|
import android.view.MenuItem
|
||||||
|
import android.view.View
|
||||||
|
import android.view.ViewGroup
|
||||||
|
import android.widget.TextView
|
||||||
|
import android.widget.Toast
|
||||||
import androidx.annotation.LayoutRes
|
import androidx.annotation.LayoutRes
|
||||||
import androidx.appcompat.widget.AppCompatImageView
|
import androidx.appcompat.widget.AppCompatImageView
|
||||||
import androidx.recyclerview.widget.*
|
import androidx.recyclerview.widget.DefaultItemAnimator
|
||||||
|
import androidx.recyclerview.widget.GridLayoutManager
|
||||||
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import code.name.monkey.appthemehelper.ThemeStore
|
import code.name.monkey.appthemehelper.ThemeStore
|
||||||
import code.name.monkey.appthemehelper.util.*
|
import code.name.monkey.appthemehelper.util.ATHUtil
|
||||||
import code.name.monkey.retromusic.*
|
import code.name.monkey.appthemehelper.util.TintHelper
|
||||||
import code.name.monkey.retromusic.BuildConfig
|
import code.name.monkey.retromusic.BuildConfig
|
||||||
|
import code.name.monkey.retromusic.R
|
||||||
import code.name.monkey.retromusic.activities.base.AbsBaseActivity
|
import code.name.monkey.retromusic.activities.base.AbsBaseActivity
|
||||||
import code.name.monkey.retromusic.extensions.applyToolbar
|
import code.name.monkey.retromusic.extensions.applyToolbar
|
||||||
import com.anjlab.android.iab.v3.*
|
import com.anjlab.android.iab.v3.BillingProcessor
|
||||||
|
import com.anjlab.android.iab.v3.SkuDetails
|
||||||
|
import com.anjlab.android.iab.v3.TransactionDetails
|
||||||
import kotlinx.android.synthetic.main.activity_donation.*
|
import kotlinx.android.synthetic.main.activity_donation.*
|
||||||
import java.lang.ref.WeakReference
|
import java.lang.ref.WeakReference
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
@ -61,8 +71,6 @@ class SupportDevelopmentActivity : AbsBaseActivity(), BillingProcessor.IBillingH
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun setupToolbar() {
|
private fun setupToolbar() {
|
||||||
val primaryColor = ATHUtil.resolveColor(this, R.attr.colorPrimary)
|
|
||||||
appBarLayout.setBackgroundColor(primaryColor)
|
|
||||||
applyToolbar(toolbar)
|
applyToolbar(toolbar)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,10 @@
|
||||||
package code.name.monkey.retromusic.activities
|
package code.name.monkey.retromusic.activities
|
||||||
|
|
||||||
import android.app.Activity
|
import android.app.Activity
|
||||||
import android.content.*
|
import android.content.ContentUris
|
||||||
|
import android.content.Context
|
||||||
|
import android.content.ContextWrapper
|
||||||
|
import android.content.Intent
|
||||||
import android.content.res.ColorStateList
|
import android.content.res.ColorStateList
|
||||||
import android.graphics.Bitmap
|
import android.graphics.Bitmap
|
||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
|
@ -13,23 +16,29 @@ import android.text.TextUtils
|
||||||
import android.view.MenuItem
|
import android.view.MenuItem
|
||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
import code.name.monkey.appthemehelper.ThemeStore
|
import code.name.monkey.appthemehelper.ThemeStore
|
||||||
import code.name.monkey.appthemehelper.util.*
|
import code.name.monkey.appthemehelper.util.ColorUtil
|
||||||
import code.name.monkey.retromusic.*
|
import code.name.monkey.appthemehelper.util.MaterialUtil
|
||||||
|
import code.name.monkey.appthemehelper.util.MaterialValueHelper
|
||||||
|
import code.name.monkey.retromusic.App
|
||||||
import code.name.monkey.retromusic.Constants.USER_BANNER
|
import code.name.monkey.retromusic.Constants.USER_BANNER
|
||||||
import code.name.monkey.retromusic.Constants.USER_PROFILE
|
import code.name.monkey.retromusic.Constants.USER_PROFILE
|
||||||
import code.name.monkey.retromusic.R
|
import code.name.monkey.retromusic.R
|
||||||
import code.name.monkey.retromusic.activities.base.AbsBaseActivity
|
import code.name.monkey.retromusic.activities.base.AbsBaseActivity
|
||||||
import code.name.monkey.retromusic.extensions.applyToolbar
|
import code.name.monkey.retromusic.extensions.applyToolbar
|
||||||
import code.name.monkey.retromusic.util.*
|
import code.name.monkey.retromusic.util.Compressor
|
||||||
import code.name.monkey.retromusic.util.ImageUtil.getResizedBitmap
|
import code.name.monkey.retromusic.util.ImageUtil.getResizedBitmap
|
||||||
import com.afollestad.materialdialogs.*
|
import code.name.monkey.retromusic.util.PreferenceUtil
|
||||||
|
import com.afollestad.materialdialogs.LayoutMode
|
||||||
|
import com.afollestad.materialdialogs.MaterialDialog
|
||||||
import com.afollestad.materialdialogs.bottomsheets.BottomSheet
|
import com.afollestad.materialdialogs.bottomsheets.BottomSheet
|
||||||
import com.afollestad.materialdialogs.list.listItems
|
import com.afollestad.materialdialogs.list.listItems
|
||||||
import io.reactivex.android.schedulers.AndroidSchedulers
|
import io.reactivex.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.disposables.CompositeDisposable
|
import io.reactivex.disposables.CompositeDisposable
|
||||||
import io.reactivex.schedulers.Schedulers
|
import io.reactivex.schedulers.Schedulers
|
||||||
import kotlinx.android.synthetic.main.activity_user_info.*
|
import kotlinx.android.synthetic.main.activity_user_info.*
|
||||||
import java.io.*
|
import java.io.File
|
||||||
|
import java.io.FileOutputStream
|
||||||
|
import java.io.IOException
|
||||||
|
|
||||||
class UserInfoActivity : AbsBaseActivity() {
|
class UserInfoActivity : AbsBaseActivity() {
|
||||||
|
|
||||||
|
@ -43,7 +52,7 @@ class UserInfoActivity : AbsBaseActivity() {
|
||||||
setTaskDescriptionColorAuto()
|
setTaskDescriptionColorAuto()
|
||||||
setLightNavigationBar(true)
|
setLightNavigationBar(true)
|
||||||
|
|
||||||
setupToolbar()
|
applyToolbar(toolbar)
|
||||||
|
|
||||||
MaterialUtil.setTint(nameContainer, false)
|
MaterialUtil.setTint(nameContainer, false)
|
||||||
name.setText(PreferenceUtil.getInstance(this).userName)
|
name.setText(PreferenceUtil.getInstance(this).userName)
|
||||||
|
@ -56,13 +65,9 @@ class UserInfoActivity : AbsBaseActivity() {
|
||||||
}
|
}
|
||||||
userImage.setOnClickListener {
|
userImage.setOnClickListener {
|
||||||
MaterialDialog(this, BottomSheet(LayoutMode.WRAP_CONTENT)).show {
|
MaterialDialog(this, BottomSheet(LayoutMode.WRAP_CONTENT)).show {
|
||||||
|
cornerRadius(PreferenceUtil.getInstance(this@UserInfoActivity).dialogCorner)
|
||||||
title(text = getString(R.string.set_photo))
|
title(text = getString(R.string.set_photo))
|
||||||
listItems(
|
listItems(items = listOf(getString(R.string.new_profile_photo), getString(R.string.remove_profile_photo))) { _, position, _ ->
|
||||||
items = listOf(
|
|
||||||
getString(R.string.new_profile_photo),
|
|
||||||
getString(R.string.remove_profile_photo)
|
|
||||||
)
|
|
||||||
) { _, position, _ ->
|
|
||||||
when (position) {
|
when (position) {
|
||||||
0 -> pickNewPhoto()
|
0 -> pickNewPhoto()
|
||||||
1 -> PreferenceUtil.getInstance(this@UserInfoActivity).saveProfileImage("")
|
1 -> PreferenceUtil.getInstance(this@UserInfoActivity).saveProfileImage("")
|
||||||
|
@ -71,7 +76,17 @@ class UserInfoActivity : AbsBaseActivity() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
bannerSelect.setOnClickListener {
|
bannerSelect.setOnClickListener {
|
||||||
showBannerOptions()
|
MaterialDialog(this, BottomSheet(LayoutMode.WRAP_CONTENT)).show {
|
||||||
|
cornerRadius(PreferenceUtil.getInstance(this@UserInfoActivity).dialogCorner)
|
||||||
|
title(R.string.select_banner_photo)
|
||||||
|
listItems(items = listOf(getString(R.string.new_banner_photo), getString(R.string.remove_banner_photo)))
|
||||||
|
{ _, position, _ ->
|
||||||
|
when (position) {
|
||||||
|
0 -> selectBannerImage()
|
||||||
|
1 -> PreferenceUtil.getInstance(this@UserInfoActivity).setBannerImagePath("")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
next.setOnClickListener {
|
next.setOnClickListener {
|
||||||
val nameString = name.text.toString().trim { it <= ' ' }
|
val nameString = name.text.toString().trim { it <= ' ' }
|
||||||
|
@ -79,28 +94,13 @@ class UserInfoActivity : AbsBaseActivity() {
|
||||||
Toast.makeText(this, "Umm name is empty", Toast.LENGTH_SHORT).show()
|
Toast.makeText(this, "Umm name is empty", Toast.LENGTH_SHORT).show()
|
||||||
return@setOnClickListener
|
return@setOnClickListener
|
||||||
}
|
}
|
||||||
/*val bioString = bio.text.toString().trim() { it <= ' ' }
|
|
||||||
if (TextUtils.isEmpty(bioString)) {
|
|
||||||
Toast.makeText(this, "Umm bio is empty", Toast.LENGTH_SHORT).show()
|
|
||||||
return@setOnClickListener
|
|
||||||
|
|
||||||
}*/
|
|
||||||
PreferenceUtil.getInstance(this).userName = nameString
|
PreferenceUtil.getInstance(this).userName = nameString
|
||||||
//PreferenceUtil.getInstance().userBio = bioString
|
|
||||||
setResult(Activity.RESULT_OK)
|
setResult(Activity.RESULT_OK)
|
||||||
finish()
|
finish()
|
||||||
}
|
}
|
||||||
next.backgroundTintList = ColorStateList.valueOf(ThemeStore.accentColor(this))
|
next.backgroundTintList = ColorStateList.valueOf(ThemeStore.accentColor(this))
|
||||||
ColorStateList.valueOf(
|
ColorStateList.valueOf(MaterialValueHelper.getPrimaryTextColor(this, ColorUtil.isColorLight(ThemeStore.accentColor(this))))
|
||||||
MaterialValueHelper.getPrimaryTextColor(
|
.apply {
|
||||||
this,
|
|
||||||
ColorUtil.isColorLight(
|
|
||||||
ThemeStore.accentColor(
|
|
||||||
this
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
).apply {
|
|
||||||
next.setTextColor(this)
|
next.setTextColor(this)
|
||||||
next.iconTint = this
|
next.iconTint = this
|
||||||
}
|
}
|
||||||
|
@ -113,32 +113,7 @@ class UserInfoActivity : AbsBaseActivity() {
|
||||||
return super.onOptionsItemSelected(item)
|
return super.onOptionsItemSelected(item)
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun setupToolbar() {
|
|
||||||
val primaryColor = ATHUtil.resolveColor(this, R.attr.colorPrimary)
|
|
||||||
applyToolbar(toolbar)
|
|
||||||
appBarLayout.setBackgroundColor(primaryColor)
|
|
||||||
}
|
|
||||||
|
|
||||||
private fun showBannerOptions() {
|
|
||||||
MaterialDialog(this, BottomSheet(LayoutMode.WRAP_CONTENT)).show {
|
|
||||||
title(R.string.select_banner_photo)
|
|
||||||
listItems(
|
|
||||||
items = listOf(
|
|
||||||
getString(R.string.new_banner_photo),
|
|
||||||
getString(R.string.remove_banner_photo)
|
|
||||||
)
|
|
||||||
) { _, position, _ ->
|
|
||||||
when (position) {
|
|
||||||
0 -> selectBannerImage()
|
|
||||||
1 -> PreferenceUtil.getInstance(this@UserInfoActivity).setBannerImagePath("")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private fun selectBannerImage() {
|
private fun selectBannerImage() {
|
||||||
|
|
||||||
if (TextUtils.isEmpty(PreferenceUtil.getInstance(this).bannerImage)) {
|
|
||||||
val pickImageIntent = Intent(Intent.ACTION_PICK, Media.EXTERNAL_CONTENT_URI)
|
val pickImageIntent = Intent(Intent.ACTION_PICK, Media.EXTERNAL_CONTENT_URI)
|
||||||
pickImageIntent.type = "image/*"
|
pickImageIntent.type = "image/*"
|
||||||
//pickImageIntent.putExtra("crop", "true")
|
//pickImageIntent.putExtra("crop", "true")
|
||||||
|
@ -152,10 +127,6 @@ class UserInfoActivity : AbsBaseActivity() {
|
||||||
Intent.createChooser(pickImageIntent, "Select Picture"),
|
Intent.createChooser(pickImageIntent, "Select Picture"),
|
||||||
PICK_BANNER_REQUEST
|
PICK_BANNER_REQUEST
|
||||||
)
|
)
|
||||||
} else {
|
|
||||||
PreferenceUtil.getInstance(this).setBannerImagePath("")
|
|
||||||
bannerImage.setImageResource(android.R.color.transparent)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun pickNewPhoto() {
|
private fun pickNewPhoto() {
|
||||||
|
|
|
@ -60,7 +60,7 @@ public class WhatsNewActivity extends AbsBaseActivity {
|
||||||
toolbar = findViewById(R.id.toolbar);
|
toolbar = findViewById(R.id.toolbar);
|
||||||
appBarLayout = findViewById(R.id.appBarLayout);
|
appBarLayout = findViewById(R.id.appBarLayout);
|
||||||
|
|
||||||
int primaryColor = INSTANCE.resolveColor(this, R.attr.colorPrimary);
|
int primaryColor = INSTANCE.resolveColor(this, R.attr.colorSurface);
|
||||||
toolbar.setBackgroundColor(primaryColor);
|
toolbar.setBackgroundColor(primaryColor);
|
||||||
appBarLayout.setBackgroundColor(primaryColor);
|
appBarLayout.setBackgroundColor(primaryColor);
|
||||||
//setSupportActionBar(toolbar);
|
//setSupportActionBar(toolbar);
|
||||||
|
@ -79,11 +79,10 @@ public class WhatsNewActivity extends AbsBaseActivity {
|
||||||
|
|
||||||
// Inject color values for WebView body background and links
|
// Inject color values for WebView body background and links
|
||||||
final boolean isDark = INSTANCE.isWindowBackgroundDark(this);
|
final boolean isDark = INSTANCE.isWindowBackgroundDark(this);
|
||||||
final String backgroundColor = colorToCSS(INSTANCE.resolveColor(this, R.attr.colorPrimary, Color.parseColor(isDark ? "#424242" : "#ffffff")));
|
final String backgroundColor = colorToCSS(INSTANCE.resolveColor(this, android.R.attr.windowBackground, Color.parseColor(isDark ? "#424242" : "#ffffff")));
|
||||||
final String contentColor = colorToCSS(Color.parseColor(isDark ? "#ffffff" : "#000000"));
|
final String contentColor = colorToCSS(Color.parseColor(isDark ? "#ffffff" : "#000000"));
|
||||||
final String changeLog = buf.toString()
|
final String changeLog = buf.toString()
|
||||||
.replace("{style-placeholder}",
|
.replace("{style-placeholder}", String.format("body { background-color: %s; color: %s; }", backgroundColor, contentColor))
|
||||||
String.format("body { background-color: %s; color: %s; }", backgroundColor, contentColor))
|
|
||||||
.replace("{link-color}", colorToCSS(ThemeStore.Companion.accentColor(this)))
|
.replace("{link-color}", colorToCSS(ThemeStore.Companion.accentColor(this)))
|
||||||
.replace("{link-color-active}", colorToCSS(ColorUtil.INSTANCE.lightenColor(ThemeStore.Companion.accentColor(this))));
|
.replace("{link-color-active}", colorToCSS(ColorUtil.INSTANCE.lightenColor(ThemeStore.Companion.accentColor(this))));
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
package code.name.monkey.retromusic.activities.base
|
package code.name.monkey.retromusic.activities.base
|
||||||
|
|
||||||
import android.animation.ValueAnimator
|
import android.animation.ValueAnimator
|
||||||
import android.annotation.SuppressLint
|
|
||||||
import android.graphics.Color
|
import android.graphics.Color
|
||||||
import android.graphics.Rect
|
import android.graphics.Rect
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
|
@ -35,6 +34,7 @@ import code.name.monkey.retromusic.fragments.player.plain.PlainPlayerFragment
|
||||||
import code.name.monkey.retromusic.fragments.player.simple.SimplePlayerFragment
|
import code.name.monkey.retromusic.fragments.player.simple.SimplePlayerFragment
|
||||||
import code.name.monkey.retromusic.fragments.player.tiny.TinyPlayerFragment
|
import code.name.monkey.retromusic.fragments.player.tiny.TinyPlayerFragment
|
||||||
import code.name.monkey.retromusic.helper.MusicPlayerRemote
|
import code.name.monkey.retromusic.helper.MusicPlayerRemote
|
||||||
|
import code.name.monkey.retromusic.model.CategoryInfo
|
||||||
import code.name.monkey.retromusic.util.DensityUtil
|
import code.name.monkey.retromusic.util.DensityUtil
|
||||||
import code.name.monkey.retromusic.util.PreferenceUtil
|
import code.name.monkey.retromusic.util.PreferenceUtil
|
||||||
import code.name.monkey.retromusic.views.BottomNavigationBarTinted
|
import code.name.monkey.retromusic.views.BottomNavigationBarTinted
|
||||||
|
@ -114,13 +114,11 @@ abstract class AbsSlidingMusicPanelActivity : AbsMusicServiceActivity(), AbsPlay
|
||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
super.onDestroy()
|
super.onDestroy()
|
||||||
bottomSheetBehavior.removeBottomSheetCallback(bottomSheetCallbackList)
|
bottomSheetBehavior.removeBottomSheetCallback(bottomSheetCallbackList)
|
||||||
if (navigationBarColorAnimator != null) navigationBarColorAnimator!!.cancel() // just in case
|
if (navigationBarColorAnimator != null) navigationBarColorAnimator?.cancel() // just in case
|
||||||
}
|
}
|
||||||
|
|
||||||
protected fun wrapSlidingMusicPanel(@LayoutRes resId: Int): View {
|
protected fun wrapSlidingMusicPanel(@LayoutRes resId: Int): View {
|
||||||
@SuppressLint("InflateParams") val slidingMusicPanelLayout = layoutInflater.inflate(
|
val slidingMusicPanelLayout = layoutInflater.inflate(R.layout.sliding_music_panel_layout, null)
|
||||||
R.layout.sliding_music_panel_layout, null
|
|
||||||
)
|
|
||||||
val contentContainer = slidingMusicPanelLayout.findViewById<ViewGroup>(R.id.mainContentFrame)
|
val contentContainer = slidingMusicPanelLayout.findViewById<ViewGroup>(R.id.mainContentFrame)
|
||||||
layoutInflater.inflate(resId, contentContainer)
|
layoutInflater.inflate(resId, contentContainer)
|
||||||
return slidingMusicPanelLayout
|
return slidingMusicPanelLayout
|
||||||
|
@ -143,7 +141,7 @@ abstract class AbsSlidingMusicPanelActivity : AbsMusicServiceActivity(), AbsPlay
|
||||||
miniPlayerFragment?.view?.visibility = if (alpha == 0f) View.GONE else View.VISIBLE
|
miniPlayerFragment?.view?.visibility = if (alpha == 0f) View.GONE else View.VISIBLE
|
||||||
|
|
||||||
bottomNavigationView.translationY = progress * 500
|
bottomNavigationView.translationY = progress * 500
|
||||||
bottomNavigationView.alpha = alpha
|
//bottomNavigationView.alpha = alpha
|
||||||
}
|
}
|
||||||
|
|
||||||
open fun onPanelCollapsed() {
|
open fun onPanelCollapsed() {
|
||||||
|
@ -296,13 +294,7 @@ abstract class AbsSlidingMusicPanelActivity : AbsMusicServiceActivity(), AbsPlay
|
||||||
super.setLightNavigationBar(isColorLight)
|
super.setLightNavigationBar(isColorLight)
|
||||||
super.setLightStatusbar(isColorLight)
|
super.setLightStatusbar(isColorLight)
|
||||||
} else {
|
} else {
|
||||||
super.setLightStatusbar(
|
super.setLightStatusbar(ColorUtil.isColorLight(ATHUtil.resolveColor(this, android.R.attr.windowBackground)))
|
||||||
ColorUtil.isColorLight(
|
|
||||||
ATHUtil.resolveColor(
|
|
||||||
this, R.attr.colorPrimary
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
super.setLightNavigationBar(true)
|
super.setLightNavigationBar(true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -339,15 +331,16 @@ abstract class AbsSlidingMusicPanelActivity : AbsMusicServiceActivity(), AbsPlay
|
||||||
|
|
||||||
private fun updateTabs() {
|
private fun updateTabs() {
|
||||||
bottomNavigationView.menu.clear()
|
bottomNavigationView.menu.clear()
|
||||||
val currentTabs = PreferenceUtil.getInstance(this).libraryCategoryInfos
|
val currentTabs: List<CategoryInfo> = PreferenceUtil.getInstance(this).libraryCategoryInfos
|
||||||
for (tab in currentTabs) {
|
for (tab in currentTabs) {
|
||||||
if (tab.visible) {
|
if (tab.visible) {
|
||||||
val menu = tab.category
|
val menu = tab.category
|
||||||
bottomNavigationView.menu.add(
|
bottomNavigationView.menu.add(0, menu.id, 0, menu.stringRes).setIcon(menu.icon)
|
||||||
0, menu.id, 0, menu.stringRes
|
|
||||||
).setIcon(menu.icon)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (currentTabs.size <= 1) {
|
||||||
|
toggleBottomNavigationView(true)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
|
override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
|
||||||
|
|
|
@ -91,11 +91,7 @@ abstract class AbsThemeActivity : ATHToolbarActivity(), Runnable {
|
||||||
if (statusBar != null) {
|
if (statusBar != null) {
|
||||||
when {
|
when {
|
||||||
VersionUtils.hasMarshmallow() -> window.statusBarColor = color
|
VersionUtils.hasMarshmallow() -> window.statusBarColor = color
|
||||||
VersionUtils.hasLollipop() -> statusBar.setBackgroundColor(
|
VersionUtils.hasLollipop() -> statusBar.setBackgroundColor(ColorUtil.darkenColor(color))
|
||||||
ColorUtil.darkenColor(
|
|
||||||
color
|
|
||||||
)
|
|
||||||
)
|
|
||||||
else -> statusBar.setBackgroundColor(color)
|
else -> statusBar.setBackgroundColor(color)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@ -104,12 +100,13 @@ abstract class AbsThemeActivity : ATHToolbarActivity(), Runnable {
|
||||||
else -> window.statusBarColor = ColorUtil.darkenColor(color)
|
else -> window.statusBarColor = ColorUtil.darkenColor(color)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
setLightStatusbarAuto(color)
|
setLightStatusbarAuto(ATHUtil.resolveColor(this, android.R.attr.windowBackground))
|
||||||
}
|
}
|
||||||
|
|
||||||
fun setStatusbarColorAuto() {
|
fun setStatusbarColorAuto() {
|
||||||
// we don't want to use statusbar color because we are doing the color darkening on our own to support KitKat
|
// we don't want to use statusbar color because we are doing the color darkening on our own to support KitKat
|
||||||
//setStatusbarColor(ATHUtil.resolveColor(this, android.R.attr.windowBackground))
|
//setStatusbarColor(ATHUtil.resolveColor(this, android.R.attr.windowBackground))
|
||||||
|
setLightStatusbarAuto(ATHUtil.resolveColor(this, android.R.attr.windowBackground))
|
||||||
}
|
}
|
||||||
|
|
||||||
open fun setTaskDescriptionColor(@ColorInt color: Int) {
|
open fun setTaskDescriptionColor(@ColorInt color: Int) {
|
||||||
|
@ -117,7 +114,7 @@ abstract class AbsThemeActivity : ATHToolbarActivity(), Runnable {
|
||||||
}
|
}
|
||||||
|
|
||||||
fun setTaskDescriptionColorAuto() {
|
fun setTaskDescriptionColorAuto() {
|
||||||
setTaskDescriptionColor(ATHUtil.resolveColor(this, R.attr.colorPrimary))
|
setTaskDescriptionColor(ATHUtil.resolveColor(this, android.R.attr.windowBackground))
|
||||||
}
|
}
|
||||||
|
|
||||||
open fun setNavigationbarColor(color: Int) {
|
open fun setNavigationbarColor(color: Int) {
|
||||||
|
@ -129,11 +126,11 @@ abstract class AbsThemeActivity : ATHToolbarActivity(), Runnable {
|
||||||
}
|
}
|
||||||
|
|
||||||
open fun setNavigationBarColorPrimary() {
|
open fun setNavigationBarColorPrimary() {
|
||||||
ATH.setNavigationbarColor(this, ATHUtil.resolveColor(this, R.attr.colorPrimary))
|
ATH.setNavigationbarColor(this, ATHUtil.resolveColor(this, android.R.attr.windowBackground))
|
||||||
}
|
}
|
||||||
|
|
||||||
fun setNavigationbarColorAuto() {
|
fun setNavigationbarColorAuto() {
|
||||||
setNavigationbarColor(ATHUtil.resolveColor(this, R.attr.colorSecondary))
|
setNavigationbarColor(ATHUtil.resolveColor(this, android.R.attr.windowBackground))
|
||||||
}
|
}
|
||||||
|
|
||||||
open fun setLightStatusbar(enabled: Boolean) {
|
open fun setLightStatusbar(enabled: Boolean) {
|
||||||
|
|
|
@ -1,21 +1,32 @@
|
||||||
package code.name.monkey.retromusic.activities.bugreport
|
package code.name.monkey.retromusic.activities.bugreport
|
||||||
|
|
||||||
import android.app.*
|
import android.app.Activity
|
||||||
import android.content.*
|
import android.app.Dialog
|
||||||
|
import android.content.ClipData
|
||||||
|
import android.content.ClipboardManager
|
||||||
|
import android.content.Context
|
||||||
|
import android.content.Intent
|
||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.text.TextUtils
|
import android.text.TextUtils
|
||||||
import android.view.MenuItem
|
import android.view.MenuItem
|
||||||
import android.view.inputmethod.EditorInfo
|
import android.view.inputmethod.EditorInfo
|
||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
import androidx.annotation.*
|
import androidx.annotation.StringDef
|
||||||
|
import androidx.annotation.StringRes
|
||||||
import androidx.appcompat.app.AlertDialog
|
import androidx.appcompat.app.AlertDialog
|
||||||
import code.name.monkey.appthemehelper.ThemeStore
|
import code.name.monkey.appthemehelper.ThemeStore
|
||||||
import code.name.monkey.appthemehelper.util.*
|
import code.name.monkey.appthemehelper.util.ATHUtil
|
||||||
|
import code.name.monkey.appthemehelper.util.MaterialUtil
|
||||||
|
import code.name.monkey.appthemehelper.util.TintHelper
|
||||||
|
import code.name.monkey.appthemehelper.util.ToolbarContentTintHelper
|
||||||
import code.name.monkey.retromusic.R
|
import code.name.monkey.retromusic.R
|
||||||
import code.name.monkey.retromusic.activities.base.AbsThemeActivity
|
import code.name.monkey.retromusic.activities.base.AbsThemeActivity
|
||||||
import code.name.monkey.retromusic.activities.bugreport.model.*
|
import code.name.monkey.retromusic.activities.bugreport.model.DeviceInfo
|
||||||
import code.name.monkey.retromusic.activities.bugreport.model.github.*
|
import code.name.monkey.retromusic.activities.bugreport.model.Report
|
||||||
|
import code.name.monkey.retromusic.activities.bugreport.model.github.ExtraInfo
|
||||||
|
import code.name.monkey.retromusic.activities.bugreport.model.github.GithubLogin
|
||||||
|
import code.name.monkey.retromusic.activities.bugreport.model.github.GithubTarget
|
||||||
import code.name.monkey.retromusic.misc.DialogAsyncTask
|
import code.name.monkey.retromusic.misc.DialogAsyncTask
|
||||||
import com.afollestad.materialdialogs.MaterialDialog
|
import com.afollestad.materialdialogs.MaterialDialog
|
||||||
import com.afollestad.materialdialogs.callbacks.onCancel
|
import com.afollestad.materialdialogs.callbacks.onCancel
|
||||||
|
@ -25,7 +36,8 @@ import kotlinx.android.synthetic.main.activity_bug_report.*
|
||||||
import kotlinx.android.synthetic.main.bug_report_card_device_info.*
|
import kotlinx.android.synthetic.main.bug_report_card_device_info.*
|
||||||
import kotlinx.android.synthetic.main.bug_report_card_report.*
|
import kotlinx.android.synthetic.main.bug_report_card_report.*
|
||||||
import org.eclipse.egit.github.core.Issue
|
import org.eclipse.egit.github.core.Issue
|
||||||
import org.eclipse.egit.github.core.client.*
|
import org.eclipse.egit.github.core.client.GitHubClient
|
||||||
|
import org.eclipse.egit.github.core.client.RequestException
|
||||||
import org.eclipse.egit.github.core.service.IssueService
|
import org.eclipse.egit.github.core.service.IssueService
|
||||||
import java.io.IOException
|
import java.io.IOException
|
||||||
|
|
||||||
|
@ -52,7 +64,6 @@ open class BugReportActivity : AbsThemeActivity() {
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
setContentView(R.layout.activity_bug_report)
|
setContentView(R.layout.activity_bug_report)
|
||||||
|
|
||||||
setStatusbarColorAuto()
|
setStatusbarColorAuto()
|
||||||
setNavigationbarColorAuto()
|
setNavigationbarColorAuto()
|
||||||
setTaskDescriptionColorAuto()
|
setTaskDescriptionColorAuto()
|
||||||
|
@ -67,7 +78,7 @@ open class BugReportActivity : AbsThemeActivity() {
|
||||||
|
|
||||||
private fun initViews() {
|
private fun initViews() {
|
||||||
val accentColor = ThemeStore.accentColor(this)
|
val accentColor = ThemeStore.accentColor(this)
|
||||||
val primaryColor = ATHUtil.resolveColor(this, R.attr.colorPrimary)
|
val primaryColor = ATHUtil.resolveColor(this, R.attr.colorSurface)
|
||||||
toolbar.setBackgroundColor(primaryColor)
|
toolbar.setBackgroundColor(primaryColor)
|
||||||
setSupportActionBar(toolbar)
|
setSupportActionBar(toolbar)
|
||||||
ToolbarContentTintHelper.colorBackButton(toolbar)
|
ToolbarContentTintHelper.colorBackButton(toolbar)
|
||||||
|
|
|
@ -48,44 +48,23 @@ class HomeAdapter(
|
||||||
when (getItemViewType(position)) {
|
when (getItemViewType(position)) {
|
||||||
RECENT_ALBUMS -> {
|
RECENT_ALBUMS -> {
|
||||||
val viewHolder = holder as AlbumViewHolder
|
val viewHolder = holder as AlbumViewHolder
|
||||||
viewHolder.bindView(
|
viewHolder.bindView(list[position].arrayList.toAlbums(), R.string.recent_albums)
|
||||||
list[position].arrayList.toAlbums(),
|
|
||||||
R.string.recent_albums,
|
|
||||||
R.string.recent_added_albums
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
TOP_ALBUMS -> {
|
TOP_ALBUMS -> {
|
||||||
val viewHolder = holder as AlbumViewHolder
|
val viewHolder = holder as AlbumViewHolder
|
||||||
viewHolder.bindView(
|
viewHolder.bindView(list[position].arrayList.toAlbums(), R.string.top_albums)
|
||||||
list[position].arrayList.toAlbums(),
|
|
||||||
R.string.top_albums,
|
|
||||||
R.string.most_played_albums
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
RECENT_ARTISTS -> {
|
RECENT_ARTISTS -> {
|
||||||
val viewHolder = holder as ArtistViewHolder
|
val viewHolder = holder as ArtistViewHolder
|
||||||
viewHolder.bindView(
|
viewHolder.bindView(list[position].arrayList.toArtists(), R.string.recent_artists)
|
||||||
list[position].arrayList.toArtists(),
|
|
||||||
R.string.recent_artists,
|
|
||||||
R.string.recent_added_artists
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
TOP_ARTISTS -> {
|
TOP_ARTISTS -> {
|
||||||
val viewHolder = holder as ArtistViewHolder
|
val viewHolder = holder as ArtistViewHolder
|
||||||
|
viewHolder.bindView(list[position].arrayList.toArtists(), R.string.top_artists)
|
||||||
viewHolder.bindView(
|
|
||||||
list[position].arrayList.toArtists(),
|
|
||||||
R.string.top_artists,
|
|
||||||
R.string.most_played_artists
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
PLAYLISTS -> {
|
PLAYLISTS -> {
|
||||||
val viewHolder = holder as PlaylistViewHolder
|
val viewHolder = holder as PlaylistViewHolder
|
||||||
viewHolder.bindView(
|
viewHolder.bindView(list[position].arrayList.toPlaylist(), R.string.favorites)
|
||||||
list[position].arrayList.toPlaylist(),
|
|
||||||
R.string.favorites,
|
|
||||||
R.string.favorites_songs
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -114,7 +93,7 @@ class HomeAdapter(
|
||||||
}
|
}
|
||||||
|
|
||||||
private inner class AlbumViewHolder(view: View) : AbsHomeViewItem(view) {
|
private inner class AlbumViewHolder(view: View) : AbsHomeViewItem(view) {
|
||||||
fun bindView(list: ArrayList<Album>, titleRes: Int, subtitleRes: Int) {
|
fun bindView(list: ArrayList<Album>, titleRes: Int) {
|
||||||
if (list.isNotEmpty()) {
|
if (list.isNotEmpty()) {
|
||||||
recyclerView.apply {
|
recyclerView.apply {
|
||||||
show()
|
show()
|
||||||
|
@ -126,7 +105,7 @@ class HomeAdapter(
|
||||||
}
|
}
|
||||||
|
|
||||||
inner class ArtistViewHolder(view: View) : AbsHomeViewItem(view) {
|
inner class ArtistViewHolder(view: View) : AbsHomeViewItem(view) {
|
||||||
fun bindView(list: ArrayList<Artist>, titleRes: Int, subtitleRes: Int) {
|
fun bindView(list: ArrayList<Artist>, titleRes: Int) {
|
||||||
if (list.isNotEmpty()) {
|
if (list.isNotEmpty()) {
|
||||||
recyclerView.apply {
|
recyclerView.apply {
|
||||||
show()
|
show()
|
||||||
|
@ -148,7 +127,7 @@ class HomeAdapter(
|
||||||
}
|
}
|
||||||
|
|
||||||
private inner class PlaylistViewHolder(view: View) : AbsHomeViewItem(view) {
|
private inner class PlaylistViewHolder(view: View) : AbsHomeViewItem(view) {
|
||||||
fun bindView(arrayList: ArrayList<Playlist>, titleRes: Int, subtitleRes: Int) {
|
fun bindView(arrayList: ArrayList<Playlist>, titleRes: Int) {
|
||||||
if (arrayList.isNotEmpty()) {
|
if (arrayList.isNotEmpty()) {
|
||||||
val songs = PlaylistSongsLoader.getPlaylistSongList(activity, arrayList[0])
|
val songs = PlaylistSongsLoader.getPlaylistSongList(activity, arrayList[0])
|
||||||
if (songs.isNotEmpty()) {
|
if (songs.isNotEmpty()) {
|
||||||
|
|
|
@ -93,7 +93,7 @@ public class MediaEntryViewHolder extends RecyclerView.ViewHolder implements Vie
|
||||||
playSongs = itemView.findViewById(R.id.playSongs);
|
playSongs = itemView.findViewById(R.id.playSongs);
|
||||||
|
|
||||||
if (imageContainerCard != null) {
|
if (imageContainerCard != null) {
|
||||||
imageContainerCard.setCardBackgroundColor(ATHUtil.INSTANCE.resolveColor(itemView.getContext(), R.attr.colorPrimary));
|
imageContainerCard.setCardBackgroundColor(ATHUtil.INSTANCE.resolveColor(itemView.getContext(), R.attr.colorSurface));
|
||||||
}
|
}
|
||||||
itemView.setOnClickListener(this);
|
itemView.setOnClickListener(this);
|
||||||
itemView.setOnLongClickListener(this);
|
itemView.setOnLongClickListener(this);
|
||||||
|
|
|
@ -1,20 +1,31 @@
|
||||||
package code.name.monkey.retromusic.adapter.playlist
|
package code.name.monkey.retromusic.adapter.playlist
|
||||||
|
|
||||||
import android.graphics.drawable.Drawable
|
import android.graphics.drawable.Drawable
|
||||||
import android.view.*
|
import android.view.LayoutInflater
|
||||||
|
import android.view.MenuItem
|
||||||
|
import android.view.View
|
||||||
|
import android.view.ViewGroup
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import androidx.appcompat.widget.PopupMenu
|
import androidx.appcompat.widget.PopupMenu
|
||||||
import code.name.monkey.appthemehelper.ThemeStore
|
import code.name.monkey.appthemehelper.ThemeStore
|
||||||
import code.name.monkey.appthemehelper.util.*
|
import code.name.monkey.appthemehelper.util.ATHUtil
|
||||||
|
import code.name.monkey.appthemehelper.util.TintHelper
|
||||||
import code.name.monkey.retromusic.R
|
import code.name.monkey.retromusic.R
|
||||||
import code.name.monkey.retromusic.adapter.base.*
|
import code.name.monkey.retromusic.adapter.base.AbsMultiSelectAdapter
|
||||||
import code.name.monkey.retromusic.dialogs.*
|
import code.name.monkey.retromusic.adapter.base.MediaEntryViewHolder
|
||||||
import code.name.monkey.retromusic.helper.menu.*
|
import code.name.monkey.retromusic.dialogs.ClearSmartPlaylistDialog
|
||||||
|
import code.name.monkey.retromusic.dialogs.DeletePlaylistDialog
|
||||||
|
import code.name.monkey.retromusic.helper.menu.PlaylistMenuHelper
|
||||||
|
import code.name.monkey.retromusic.helper.menu.SongsMenuHelper
|
||||||
import code.name.monkey.retromusic.interfaces.CabHolder
|
import code.name.monkey.retromusic.interfaces.CabHolder
|
||||||
import code.name.monkey.retromusic.loaders.PlaylistSongsLoader
|
import code.name.monkey.retromusic.loaders.PlaylistSongsLoader
|
||||||
import code.name.monkey.retromusic.model.*
|
import code.name.monkey.retromusic.model.AbsCustomPlaylist
|
||||||
import code.name.monkey.retromusic.model.smartplaylist.*
|
import code.name.monkey.retromusic.model.Playlist
|
||||||
import code.name.monkey.retromusic.util.*
|
import code.name.monkey.retromusic.model.Song
|
||||||
|
import code.name.monkey.retromusic.model.smartplaylist.AbsSmartPlaylist
|
||||||
|
import code.name.monkey.retromusic.model.smartplaylist.LastAddedPlaylist
|
||||||
|
import code.name.monkey.retromusic.util.MusicUtil
|
||||||
|
import code.name.monkey.retromusic.util.NavigationUtil
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
class PlaylistAdapter(
|
class PlaylistAdapter(
|
||||||
|
@ -69,26 +80,9 @@ class PlaylistAdapter(
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun getIconRes(playlist: Playlist): Drawable {
|
private fun getIconRes(playlist: Playlist): Drawable {
|
||||||
if (playlist is AbsSmartPlaylist) {
|
return if (MusicUtil.isFavoritePlaylist(activity, playlist))
|
||||||
return TintHelper.createTintedDrawable(
|
TintHelper.createTintedDrawable(activity, R.drawable.ic_favorite_white_24dp, ThemeStore.accentColor(activity))!!
|
||||||
activity,
|
else TintHelper.createTintedDrawable(activity, R.drawable.ic_playlist_play_white_24dp, ATHUtil.resolveColor(activity, R.attr.colorControlNormal))!!
|
||||||
playlist.iconRes,
|
|
||||||
ATHUtil.resolveColor(activity, R.attr.iconColor)
|
|
||||||
)!!
|
|
||||||
}
|
|
||||||
return if (MusicUtil.isFavoritePlaylist(
|
|
||||||
activity,
|
|
||||||
playlist
|
|
||||||
)) TintHelper.createTintedDrawable(
|
|
||||||
activity,
|
|
||||||
R.drawable.ic_favorite_white_24dp,
|
|
||||||
ThemeStore.accentColor(activity)
|
|
||||||
)!!
|
|
||||||
else TintHelper.createTintedDrawable(
|
|
||||||
activity,
|
|
||||||
R.drawable.ic_playlist_play_white_24dp,
|
|
||||||
ATHUtil.resolveColor(activity, R.attr.iconColor)
|
|
||||||
)!!
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun getItemViewType(position: Int): Int {
|
override fun getItemViewType(position: Int): Int {
|
||||||
|
@ -195,7 +189,7 @@ class PlaylistAdapter(
|
||||||
|
|
||||||
imageTextContainer?.apply {
|
imageTextContainer?.apply {
|
||||||
cardElevation = 0f
|
cardElevation = 0f
|
||||||
setCardBackgroundColor(ATHUtil.resolveColor(activity, R.attr.colorPrimary))
|
setCardBackgroundColor(ATHUtil.resolveColor(activity, R.attr.colorSurface))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,18 +1,14 @@
|
||||||
package code.name.monkey.retromusic.adapter.song
|
package code.name.monkey.retromusic.adapter.song
|
||||||
|
|
||||||
import android.app.ActivityOptions
|
import android.app.ActivityOptions
|
||||||
import android.content.res.ColorStateList
|
|
||||||
import android.view.MenuItem
|
import android.view.MenuItem
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import code.name.monkey.appthemehelper.util.ColorUtil
|
|
||||||
import code.name.monkey.appthemehelper.util.MaterialValueHelper
|
|
||||||
import code.name.monkey.retromusic.R
|
import code.name.monkey.retromusic.R
|
||||||
import code.name.monkey.retromusic.helper.MusicPlayerRemote
|
import code.name.monkey.retromusic.helper.MusicPlayerRemote
|
||||||
import code.name.monkey.retromusic.interfaces.CabHolder
|
import code.name.monkey.retromusic.interfaces.CabHolder
|
||||||
import code.name.monkey.retromusic.model.Song
|
import code.name.monkey.retromusic.model.Song
|
||||||
import code.name.monkey.retromusic.util.NavigationUtil
|
import code.name.monkey.retromusic.util.NavigationUtil
|
||||||
import code.name.monkey.retromusic.util.RetroColorUtil
|
|
||||||
import com.google.android.material.button.MaterialButton
|
import com.google.android.material.button.MaterialButton
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
|
@ -33,30 +29,18 @@ open class PlaylistSongAdapter(
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onBindViewHolder(holder: SongAdapter.ViewHolder, position: Int) {
|
override fun onBindViewHolder(holder: SongAdapter.ViewHolder, position: Int) {
|
||||||
|
|
||||||
if (holder.itemViewType == OFFSET_ITEM) {
|
if (holder.itemViewType == OFFSET_ITEM) {
|
||||||
|
|
||||||
val buttonColor = RetroColorUtil.toolbarColor(activity)
|
|
||||||
val textColor = MaterialValueHelper.getPrimaryTextColor(activity, ColorUtil.isColorLight(buttonColor))
|
|
||||||
val viewHolder = holder as ViewHolder
|
val viewHolder = holder as ViewHolder
|
||||||
|
|
||||||
viewHolder.playAction?.let {
|
viewHolder.playAction?.let {
|
||||||
it.backgroundTintList = ColorStateList.valueOf(buttonColor)
|
|
||||||
it.setTextColor(textColor)
|
|
||||||
it.iconTint = ColorStateList.valueOf(textColor)
|
|
||||||
it.setOnClickListener {
|
it.setOnClickListener {
|
||||||
MusicPlayerRemote.openQueue(dataSet, 0, true)
|
MusicPlayerRemote.openQueue(dataSet, 0, true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
viewHolder.shuffleAction?.let {
|
viewHolder.shuffleAction?.let {
|
||||||
it.backgroundTintList = ColorStateList.valueOf(buttonColor)
|
|
||||||
it.setTextColor(textColor)
|
|
||||||
it.iconTint = ColorStateList.valueOf(textColor)
|
|
||||||
it.setOnClickListener {
|
it.setOnClickListener {
|
||||||
MusicPlayerRemote.openAndShuffleQueue(dataSet, true)
|
MusicPlayerRemote.openAndShuffleQueue(dataSet, true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
super.onBindViewHolder(holder, position - 1)
|
super.onBindViewHolder(holder, position - 1)
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,6 +14,7 @@
|
||||||
|
|
||||||
package code.name.monkey.retromusic.extensions
|
package code.name.monkey.retromusic.extensions
|
||||||
|
|
||||||
|
import android.content.res.ColorStateList
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import androidx.appcompat.widget.Toolbar
|
import androidx.appcompat.widget.Toolbar
|
||||||
import code.name.monkey.appthemehelper.util.ATHUtil
|
import code.name.monkey.appthemehelper.util.ATHUtil
|
||||||
|
@ -25,7 +26,7 @@ fun AppCompatActivity.applyToolbar(toolbar: Toolbar) {
|
||||||
setNavigationOnClickListener { onBackPressed() }
|
setNavigationOnClickListener { onBackPressed() }
|
||||||
setNavigationIcon(R.drawable.ic_keyboard_backspace_black_24dp)
|
setNavigationIcon(R.drawable.ic_keyboard_backspace_black_24dp)
|
||||||
ToolbarContentTintHelper.colorBackButton(toolbar)
|
ToolbarContentTintHelper.colorBackButton(toolbar)
|
||||||
setBackgroundColor(ATHUtil.resolveColor(this@applyToolbar, R.attr.colorPrimary))
|
backgroundTintList = ColorStateList.valueOf(ATHUtil.resolveColor(this@applyToolbar, R.attr.colorSurface))
|
||||||
}
|
}
|
||||||
setSupportActionBar(toolbar)
|
setSupportActionBar(toolbar)
|
||||||
}
|
}
|
|
@ -14,8 +14,16 @@
|
||||||
|
|
||||||
package code.name.monkey.retromusic.extensions
|
package code.name.monkey.retromusic.extensions
|
||||||
|
|
||||||
|
import android.content.Context
|
||||||
|
import android.graphics.Color
|
||||||
|
import code.name.monkey.appthemehelper.util.ATHUtil
|
||||||
import code.name.monkey.appthemehelper.util.ColorUtil
|
import code.name.monkey.appthemehelper.util.ColorUtil
|
||||||
|
import code.name.monkey.retromusic.R
|
||||||
|
|
||||||
fun Int.ripAlpha(): Int {
|
fun Int.ripAlpha(): Int {
|
||||||
return ColorUtil.stripAlpha(this)
|
return ColorUtil.stripAlpha(this)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun Any.surfaceColor(context: Context): Int {
|
||||||
|
return ATHUtil.resolveColor(context, R.attr.colorSurface, Color.WHITE)
|
||||||
|
}
|
|
@ -2,6 +2,7 @@ package code.name.monkey.retromusic.fragments.mainactivity;
|
||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.app.ActivityOptions;
|
import android.app.ActivityOptions;
|
||||||
|
import android.content.res.ColorStateList;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.Menu;
|
import android.view.Menu;
|
||||||
|
@ -140,7 +141,7 @@ public class LibraryFragment extends AbsMainActivityFragment implements CabHolde
|
||||||
|
|
||||||
@SuppressWarnings("ConstantConditions")
|
@SuppressWarnings("ConstantConditions")
|
||||||
private void setupToolbar() {
|
private void setupToolbar() {
|
||||||
toolbar.setBackgroundColor(RetroColorUtil.toolbarColor(getMainActivity()));
|
toolbar.setBackgroundTintList(ColorStateList.valueOf(ATHUtil.INSTANCE.resolveColor(requireContext(), R.attr.colorSurface)));
|
||||||
toolbar.setNavigationIcon(R.drawable.ic_menu_white_24dp);
|
toolbar.setNavigationIcon(R.drawable.ic_menu_white_24dp);
|
||||||
toolbar.setOnClickListener(v -> {
|
toolbar.setOnClickListener(v -> {
|
||||||
ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation(getMainActivity(), toolbarContainer, getString(R.string.transition_toolbar));
|
ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation(getMainActivity(), toolbarContainer, getString(R.string.transition_toolbar));
|
||||||
|
|
|
@ -72,15 +72,13 @@ class BannerHomeFragment : AbsMainActivityFragment(), MainActivityFragmentCallba
|
||||||
|
|
||||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||||
super.onViewCreated(view, savedInstanceState)
|
super.onViewCreated(view, savedInstanceState)
|
||||||
|
setStatusBarColorAuto(view)
|
||||||
toolbar = view.findViewById(R.id.toolbar)
|
toolbar = view.findViewById(R.id.toolbar)
|
||||||
|
|
||||||
bannerImage?.setOnClickListener {
|
bannerImage?.setOnClickListener {
|
||||||
val options = ActivityOptions.makeSceneTransitionAnimation(mainActivity, userImage, getString(R.string.transition_user_image))
|
val options = ActivityOptions.makeSceneTransitionAnimation(mainActivity, userImage, getString(R.string.transition_user_image))
|
||||||
NavigationUtil.goToUserInfo(requireActivity(), options)
|
NavigationUtil.goToUserInfo(requireActivity(), options)
|
||||||
}
|
}
|
||||||
if (!PreferenceUtil.getInstance(requireContext()).isHomeBanner)
|
|
||||||
setStatusBarColorAuto(view)
|
|
||||||
|
|
||||||
lastAdded.setOnClickListener {
|
lastAdded.setOnClickListener {
|
||||||
NavigationUtil.goToPlaylistNew(requireActivity(), LastAddedPlaylist(requireActivity()))
|
NavigationUtil.goToPlaylistNew(requireActivity(), LastAddedPlaylist(requireActivity()))
|
||||||
|
@ -127,7 +125,7 @@ class BannerHomeFragment : AbsMainActivityFragment(), MainActivityFragmentCallba
|
||||||
|
|
||||||
private fun setupToolbar() {
|
private fun setupToolbar() {
|
||||||
toolbar.apply {
|
toolbar.apply {
|
||||||
setBackgroundColor(toolbarColor())
|
setBackgroundColor(RetroColorUtil.toolbarColor(mainActivity))
|
||||||
setNavigationIcon(R.drawable.ic_menu_white_24dp)
|
setNavigationIcon(R.drawable.ic_menu_white_24dp)
|
||||||
setOnClickListener {
|
setOnClickListener {
|
||||||
val options = ActivityOptions.makeSceneTransitionAnimation(mainActivity, toolbarContainer, getString(R.string.transition_toolbar))
|
val options = ActivityOptions.makeSceneTransitionAnimation(mainActivity, toolbarContainer, getString(R.string.transition_toolbar))
|
||||||
|
|
|
@ -63,7 +63,7 @@ abstract class AbsSettingsFragment : ATEPreferenceFragmentCompat() {
|
||||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||||
super.onViewCreated(view, savedInstanceState)
|
super.onViewCreated(view, savedInstanceState)
|
||||||
setDivider(ColorDrawable(Color.TRANSPARENT))
|
setDivider(ColorDrawable(Color.TRANSPARENT))
|
||||||
listView.setBackgroundColor(ATHUtil.resolveColor(requireContext(), R.attr.colorPrimary))
|
listView.setBackgroundColor(ATHUtil.resolveColor(requireContext(), R.attr.colorSurface))
|
||||||
listView.overScrollMode = View.OVER_SCROLL_NEVER
|
listView.overScrollMode = View.OVER_SCROLL_NEVER
|
||||||
listView.setPadding(0, 0, 0, 0)
|
listView.setPadding(0, 0, 0, 0)
|
||||||
listView.setPaddingRelative(0, 0, 0, 0)
|
listView.setPaddingRelative(0, 0, 0, 0)
|
||||||
|
|
|
@ -63,7 +63,7 @@ class MainSettingsFragment : Fragment(), View.OnClickListener {
|
||||||
aboutSettings.setOnClickListener(this)
|
aboutSettings.setOnClickListener(this)
|
||||||
|
|
||||||
buyProContainer.apply {
|
buyProContainer.apply {
|
||||||
if (!App.isProVersion()) show() else hide()
|
if (App.isProVersion()) show() else hide()
|
||||||
setOnClickListener {
|
setOnClickListener {
|
||||||
NavigationUtil.goToProVersion(requireContext())
|
NavigationUtil.goToProVersion(requireContext())
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,8 +30,6 @@ class OtherSettingsFragment : AbsSettingsFragment() {
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
|
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
|
||||||
addPreferencesFromResource(R.xml.pref_blacklist)
|
|
||||||
addPreferencesFromResource(R.xml.pref_playlists)
|
|
||||||
addPreferencesFromResource(R.xml.pref_advanced)
|
addPreferencesFromResource(R.xml.pref_advanced)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -36,7 +36,6 @@ class PersonalizeSettingsFragment : AbsSettingsFragment(), SharedPreferences.OnS
|
||||||
|
|
||||||
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
|
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
|
||||||
addPreferencesFromResource(R.xml.pref_ui)
|
addPreferencesFromResource(R.xml.pref_ui)
|
||||||
addPreferencesFromResource(R.xml.pref_lockscreen)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||||
|
|
|
@ -20,7 +20,6 @@ import code.name.monkey.retromusic.adapter.HomeAdapter.Companion.HomeSection
|
||||||
|
|
||||||
class Home(val priority: Int,
|
class Home(val priority: Int,
|
||||||
@StringRes val title: Int,
|
@StringRes val title: Int,
|
||||||
@StringRes val subTitle: Int,
|
|
||||||
val arrayList: ArrayList<*>,
|
val arrayList: ArrayList<*>,
|
||||||
@HomeSection
|
@HomeSection
|
||||||
val homeSection: Int,
|
val homeSection: Int,
|
||||||
|
|
|
@ -144,7 +144,6 @@ class RepositoryImpl(private val context: Context) : Repository {
|
||||||
} else {
|
} else {
|
||||||
Success(Home(0,
|
Success(Home(0,
|
||||||
R.string.recent_artists,
|
R.string.recent_artists,
|
||||||
R.string.recent_added_artists,
|
|
||||||
artists,
|
artists,
|
||||||
HomeAdapter.RECENT_ARTISTS,
|
HomeAdapter.RECENT_ARTISTS,
|
||||||
R.drawable.ic_artist_white_24dp))
|
R.drawable.ic_artist_white_24dp))
|
||||||
|
@ -162,7 +161,6 @@ class RepositoryImpl(private val context: Context) : Repository {
|
||||||
} else {
|
} else {
|
||||||
Success(Home(1,
|
Success(Home(1,
|
||||||
R.string.recent_albums,
|
R.string.recent_albums,
|
||||||
R.string.recent_added_albums,
|
|
||||||
albums,
|
albums,
|
||||||
HomeAdapter.RECENT_ALBUMS,
|
HomeAdapter.RECENT_ALBUMS,
|
||||||
R.drawable.ic_album_white_24dp
|
R.drawable.ic_album_white_24dp
|
||||||
|
@ -181,7 +179,6 @@ class RepositoryImpl(private val context: Context) : Repository {
|
||||||
} else {
|
} else {
|
||||||
Success(Home(3,
|
Success(Home(3,
|
||||||
R.string.top_albums,
|
R.string.top_albums,
|
||||||
R.string.most_played_albums,
|
|
||||||
albums,
|
albums,
|
||||||
HomeAdapter.TOP_ALBUMS,
|
HomeAdapter.TOP_ALBUMS,
|
||||||
R.drawable.ic_album_white_24dp
|
R.drawable.ic_album_white_24dp
|
||||||
|
@ -201,7 +198,6 @@ class RepositoryImpl(private val context: Context) : Repository {
|
||||||
} else {
|
} else {
|
||||||
Success(Home(2,
|
Success(Home(2,
|
||||||
R.string.top_artists,
|
R.string.top_artists,
|
||||||
R.string.most_played_artists,
|
|
||||||
artists,
|
artists,
|
||||||
HomeAdapter.TOP_ARTISTS,
|
HomeAdapter.TOP_ARTISTS,
|
||||||
R.drawable.ic_artist_white_24dp
|
R.drawable.ic_artist_white_24dp
|
||||||
|
@ -220,7 +216,6 @@ class RepositoryImpl(private val context: Context) : Repository {
|
||||||
} else {
|
} else {
|
||||||
Success(Home(4,
|
Success(Home(4,
|
||||||
R.string.favorites,
|
R.string.favorites,
|
||||||
R.string.favorites_songs,
|
|
||||||
playlists,
|
playlists,
|
||||||
HomeAdapter.PLAYLISTS,
|
HomeAdapter.PLAYLISTS,
|
||||||
R.drawable.ic_favorite_white_24dp
|
R.drawable.ic_favorite_white_24dp
|
||||||
|
|
|
@ -42,8 +42,9 @@ public class RetroColorUtil {
|
||||||
|
|
||||||
return Color.HSVToColor(hsv);
|
return Color.HSVToColor(hsv);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int toolbarColor(@NonNull Context context) {
|
public static int toolbarColor(@NonNull Context context) {
|
||||||
return ATHUtil.INSTANCE.resolveColor(context, R.attr.colorSurface);
|
return ATHUtil.INSTANCE.resolveColor(context, R.attr.colorButtonNormal);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
|
|
|
@ -38,12 +38,14 @@ class BottomNavigationBarTinted @JvmOverloads constructor(
|
||||||
labelVisibilityMode = PreferenceUtil.getInstance(context).tabTitleMode
|
labelVisibilityMode = PreferenceUtil.getInstance(context).tabTitleMode
|
||||||
selectedItemId = PreferenceUtil.getInstance(context).lastPage
|
selectedItemId = PreferenceUtil.getInstance(context).lastPage
|
||||||
|
|
||||||
val iconColor = ATHUtil.resolveColor(context, R.attr.iconColor)
|
val iconColor = ATHUtil.resolveColor(context, android.R.attr.colorControlNormal)
|
||||||
val accentColor = ThemeStore.accentColor(context)
|
val accentColor = ThemeStore.accentColor(context)
|
||||||
NavigationViewUtil.setItemIconColors(this, ColorUtil.withAlpha(iconColor, 0.5f), accentColor)
|
NavigationViewUtil.setItemIconColors(this, ColorUtil.withAlpha(iconColor, 0.5f), accentColor)
|
||||||
NavigationViewUtil.setItemTextColors(this, ColorUtil.withAlpha(iconColor, 0.5f), accentColor)
|
NavigationViewUtil.setItemTextColors(this, ColorUtil.withAlpha(iconColor, 0.5f), accentColor)
|
||||||
itemBackground = RippleDrawable(RippleUtils.convertToRippleDrawableColor(ColorStateList.valueOf(ThemeStore.accentColor(context).addAlpha())), ContextCompat.getDrawable(context, R.drawable.bottom_navigation_item_background), null)
|
itemBackground = RippleDrawable(RippleUtils.convertToRippleDrawableColor(ColorStateList.valueOf(ThemeStore.accentColor(context).addAlpha())), ContextCompat.getDrawable(context, R.drawable.bottom_navigation_item_background), null)
|
||||||
setOnApplyWindowInsetsListener(null)
|
setOnApplyWindowInsetsListener(null)
|
||||||
|
//itemRippleColor = ColorStateList.valueOf(accentColor)
|
||||||
|
backgroundTintList = ColorStateList.valueOf(ATHUtil.resolveColor(context, android.R.attr.windowBackground))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -53,7 +53,7 @@ class ColorIconsImageView : AppCompatImageView {
|
||||||
if (ATHUtil.isWindowBackgroundDark(context) && PreferenceUtil.getInstance(context).desaturatedColor()) {
|
if (ATHUtil.isWindowBackgroundDark(context) && PreferenceUtil.getInstance(context).desaturatedColor()) {
|
||||||
val desaturatedColor = RetroColorUtil.desaturateColor(color, 0.4f)
|
val desaturatedColor = RetroColorUtil.desaturateColor(color, 0.4f)
|
||||||
backgroundTintList = ColorStateList.valueOf(desaturatedColor)
|
backgroundTintList = ColorStateList.valueOf(desaturatedColor)
|
||||||
imageTintList = ColorStateList.valueOf(ATHUtil.resolveColor(context, R.attr.colorPrimary))
|
imageTintList = ColorStateList.valueOf(ATHUtil.resolveColor(context, R.attr.colorSurface))
|
||||||
} else {
|
} else {
|
||||||
backgroundTintList = ColorStateList.valueOf(ColorUtil.adjustAlpha(color, 0.22f))
|
backgroundTintList = ColorStateList.valueOf(ColorUtil.adjustAlpha(color, 0.22f))
|
||||||
imageTintList = ColorStateList.valueOf(ColorUtil.withAlpha(color, 0.75f))
|
imageTintList = ColorStateList.valueOf(ColorUtil.withAlpha(color, 0.75f))
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
android:shape="rectangle">
|
|
||||||
<solid android:color="@color/md_black_1000" />
|
|
||||||
<corners
|
|
||||||
android:topLeftRadius="12dp"
|
|
||||||
android:topRightRadius="12dp" />
|
|
||||||
</shape>
|
|
|
@ -1,9 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
android:shape="rectangle">
|
|
||||||
<corners
|
|
||||||
android:topLeftRadius="12dp"
|
|
||||||
android:topRightRadius="12dp" />
|
|
||||||
<solid android:color="?attr/cardBackgroundColor" />
|
|
||||||
|
|
||||||
</shape>
|
|
|
@ -2,5 +2,5 @@
|
||||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:shape="rectangle">
|
android:shape="rectangle">
|
||||||
<corners android:radius="8dp" />
|
<corners android:radius="8dp" />
|
||||||
<solid android:color="?attr/colorSurface" />
|
<solid android:color="?android:attr/windowBackground" />
|
||||||
</shape>
|
</shape>
|
|
@ -1,11 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
android:color="?android:attr/colorControlHighlight">
|
|
||||||
<item android:id="@android:id/mask">
|
|
||||||
<shape android:shape="rectangle">
|
|
||||||
<solid android:color="#000000" />
|
|
||||||
<corners android:radius="15dp" />
|
|
||||||
</shape>
|
|
||||||
</item>
|
|
||||||
<item android:drawable="@drawable/bottom_navigation_item_background" />
|
|
||||||
</ripple>
|
|
|
@ -27,7 +27,7 @@
|
||||||
<item>
|
<item>
|
||||||
<shape android:shape="rectangle">
|
<shape android:shape="rectangle">
|
||||||
<corners android:radius="8dp" />
|
<corners android:radius="8dp" />
|
||||||
<solid android:color="?colorPrimary" />
|
<solid android:color="?attr/colorControlHighlight" />
|
||||||
</shape>
|
</shape>
|
||||||
</item>
|
</item>
|
||||||
</ripple>
|
</ripple>
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
|
android:background="?attr/colorSurface"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
tools:ignore="UnusedAttribute">
|
tools:ignore="UnusedAttribute">
|
||||||
|
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
|
android:background="?attr/colorSurface"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
tools:ignore="UnusedAttribute">
|
tools:ignore="UnusedAttribute">
|
||||||
|
|
||||||
|
|
|
@ -60,7 +60,7 @@
|
||||||
android:layout_height="24dp"
|
android:layout_height="24dp"
|
||||||
android:layout_gravity="bottom"
|
android:layout_gravity="bottom"
|
||||||
android:background="@drawable/shadow_up_full_theme"
|
android:background="@drawable/shadow_up_full_theme"
|
||||||
android:backgroundTint="?colorPrimary" />
|
android:backgroundTint="?android:attr/windowBackground" />
|
||||||
</FrameLayout>
|
</FrameLayout>
|
||||||
|
|
||||||
|
|
||||||
|
@ -89,7 +89,6 @@
|
||||||
app:cardBackgroundColor="@android:color/transparent"
|
app:cardBackgroundColor="@android:color/transparent"
|
||||||
app:cardCornerRadius="8dp"
|
app:cardCornerRadius="8dp"
|
||||||
app:cardElevation="6dp"
|
app:cardElevation="6dp"
|
||||||
app:cardUseCompatPadding="true"
|
|
||||||
app:layout_collapseMode="pin"
|
app:layout_collapseMode="pin"
|
||||||
app:layout_scrollFlags="scroll|enterAlways">
|
app:layout_scrollFlags="scroll|enterAlways">
|
||||||
|
|
||||||
|
@ -116,16 +115,14 @@
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_marginStart="@dimen/toolbar_margin_horizontal"
|
android:layout_marginStart="@dimen/toolbar_margin_horizontal"
|
||||||
android:layout_marginEnd="@dimen/toolbar_margin_horizontal"
|
android:layout_marginEnd="@dimen/toolbar_margin_horizontal"
|
||||||
android:elevation="@dimen/card_elevation"
|
|
||||||
app:behavior_overlapTop="72dp"
|
app:behavior_overlapTop="72dp"
|
||||||
app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior">
|
app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior">
|
||||||
|
|
||||||
<com.google.android.material.card.MaterialCardView
|
<com.google.android.material.card.MaterialCardView
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
app:cardBackgroundColor="?colorPrimary"
|
app:cardCornerRadius="16dp"
|
||||||
app:cardElevation="8dp"
|
app:cardElevation="8dp">
|
||||||
app:shapeAppearanceOverlay="@style/TopCornerCardView">
|
|
||||||
|
|
||||||
<include layout="@layout/home_content" />
|
<include layout="@layout/home_content" />
|
||||||
</com.google.android.material.card.MaterialCardView>
|
</com.google.android.material.card.MaterialCardView>
|
||||||
|
|
|
@ -36,8 +36,9 @@
|
||||||
android:id="@+id/appBarLayout"
|
android:id="@+id/appBarLayout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:background="?colorPrimary"
|
android:background="@android:color/transparent"
|
||||||
app:liftOnScroll="true">
|
android:elevation="0dp"
|
||||||
|
app:elevation="0dp">
|
||||||
|
|
||||||
<com.google.android.material.card.MaterialCardView
|
<com.google.android.material.card.MaterialCardView
|
||||||
android:id="@+id/toolbarContainer"
|
android:id="@+id/toolbarContainer"
|
||||||
|
|
|
@ -60,7 +60,7 @@
|
||||||
android:layout_gravity="fill_vertical"
|
android:layout_gravity="fill_vertical"
|
||||||
android:layout_marginStart="128dp"
|
android:layout_marginStart="128dp"
|
||||||
android:layout_marginEnd="128dp"
|
android:layout_marginEnd="128dp"
|
||||||
android:background="@drawable/bg_bottom_sheet_dialog_fragment"
|
android:background="?attr/colorSurface"
|
||||||
android:fillViewport="true"
|
android:fillViewport="true"
|
||||||
android:overScrollMode="never"
|
android:overScrollMode="never"
|
||||||
app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior">
|
app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior">
|
||||||
|
|
|
@ -35,9 +35,9 @@
|
||||||
app:layout_collapseMode="parallax" />
|
app:layout_collapseMode="parallax" />
|
||||||
|
|
||||||
<FrameLayout
|
<FrameLayout
|
||||||
app:layout_collapseMode="pin"
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content">
|
android:layout_height="wrap_content"
|
||||||
|
app:layout_collapseMode="pin">
|
||||||
|
|
||||||
<com.google.android.material.appbar.MaterialToolbar
|
<com.google.android.material.appbar.MaterialToolbar
|
||||||
android:id="@+id/toolbar"
|
android:id="@+id/toolbar"
|
||||||
|
@ -67,6 +67,7 @@
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="6dp"
|
android:layout_marginTop="6dp"
|
||||||
|
android:background="?attr/colorSurface"
|
||||||
app:cardElevation="8dp"
|
app:cardElevation="8dp"
|
||||||
app:shapeAppearanceOverlay="@style/TopCornerCardView">
|
app:shapeAppearanceOverlay="@style/TopCornerCardView">
|
||||||
|
|
||||||
|
@ -75,7 +76,6 @@
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:orientation="vertical">
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
|
|
@ -27,6 +27,9 @@
|
||||||
<com.google.android.material.appbar.AppBarLayout
|
<com.google.android.material.appbar.AppBarLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:background="@android:color/transparent"
|
||||||
|
android:elevation="0dp"
|
||||||
|
app:elevation="0dp"
|
||||||
app:liftOnScroll="true">
|
app:liftOnScroll="true">
|
||||||
|
|
||||||
<com.google.android.material.appbar.CollapsingToolbarLayout
|
<com.google.android.material.appbar.CollapsingToolbarLayout
|
||||||
|
|
|
@ -37,8 +37,9 @@
|
||||||
android:id="@+id/appBarLayout"
|
android:id="@+id/appBarLayout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:background="?colorPrimary"
|
android:background="@android:color/transparent"
|
||||||
app:liftOnScroll="true">
|
android:elevation="0dp"
|
||||||
|
app:elevation="0dp">
|
||||||
|
|
||||||
<com.google.android.material.card.MaterialCardView
|
<com.google.android.material.card.MaterialCardView
|
||||||
android:id="@+id/toolbarContainer"
|
android:id="@+id/toolbarContainer"
|
||||||
|
|
|
@ -2,9 +2,9 @@
|
||||||
<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:id="@+id/root"
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
|
android:background="?attr/colorSurface"
|
||||||
android:transitionName="@string/transition_album_art">
|
android:transitionName="@string/transition_album_art">
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatImageView
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
|
@ -60,6 +60,7 @@
|
||||||
android:layout_gravity="fill_vertical"
|
android:layout_gravity="fill_vertical"
|
||||||
android:layout_marginStart="96dp"
|
android:layout_marginStart="96dp"
|
||||||
android:layout_marginEnd="96dp"
|
android:layout_marginEnd="96dp"
|
||||||
|
android:background="?attr/colorSurface"
|
||||||
android:fillViewport="true"
|
android:fillViewport="true"
|
||||||
android:overScrollMode="never"
|
android:overScrollMode="never"
|
||||||
app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior">
|
app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior">
|
||||||
|
|
|
@ -68,6 +68,7 @@
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="6dp"
|
android:layout_marginTop="6dp"
|
||||||
|
android:background="?attr/colorSurface"
|
||||||
app:cardElevation="8dp"
|
app:cardElevation="8dp"
|
||||||
app:shapeAppearanceOverlay="@style/TopCornerCardView">
|
app:shapeAppearanceOverlay="@style/TopCornerCardView">
|
||||||
|
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
android:id="@+id/appBarLayout"
|
android:id="@+id/appBarLayout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:background="@android:color/transparent"
|
||||||
android:elevation="0dp"
|
android:elevation="0dp"
|
||||||
app:elevation="0dp">
|
app:elevation="0dp">
|
||||||
|
|
||||||
|
@ -64,8 +65,8 @@
|
||||||
android:layout_gravity="center"
|
android:layout_gravity="center"
|
||||||
android:background="?roundSelector"
|
android:background="?roundSelector"
|
||||||
android:padding="16dp"
|
android:padding="16dp"
|
||||||
app:tint="@color/md_white_1000"
|
app:srcCompat="@drawable/ic_add_photo_white_24dp"
|
||||||
app:srcCompat="@drawable/ic_add_photo_white_24dp" />
|
app:tint="@color/md_white_1000" />
|
||||||
|
|
||||||
<FrameLayout
|
<FrameLayout
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
|
|
|
@ -21,13 +21,14 @@
|
||||||
|
|
||||||
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent">
|
||||||
android:background="?colorPrimary">
|
|
||||||
|
|
||||||
<com.google.android.material.appbar.AppBarLayout
|
<com.google.android.material.appbar.AppBarLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
app:liftOnScroll="true">
|
android:background="@android:color/transparent"
|
||||||
|
android:elevation="0dp"
|
||||||
|
app:elevation="0dp">
|
||||||
|
|
||||||
<com.google.android.material.appbar.CollapsingToolbarLayout
|
<com.google.android.material.appbar.CollapsingToolbarLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
|
|
|
@ -38,8 +38,9 @@
|
||||||
android:id="@+id/appBarLayout"
|
android:id="@+id/appBarLayout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:background="?colorPrimary"
|
android:background="@android:color/transparent"
|
||||||
app:liftOnScroll="true">
|
android:elevation="0dp"
|
||||||
|
app:elevation="0dp">
|
||||||
|
|
||||||
<com.google.android.material.card.MaterialCardView
|
<com.google.android.material.card.MaterialCardView
|
||||||
android:id="@+id/toolbarContainer"
|
android:id="@+id/toolbarContainer"
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
android:id="@+id/miniPlayerContent"
|
android:id="@+id/miniPlayerContent"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="48dp"
|
android:layout_height="48dp"
|
||||||
android:background="?colorSecondary"
|
android:background="?android:attr/background"
|
||||||
android:clickable="true"
|
android:clickable="true"
|
||||||
android:focusable="false"
|
android:focusable="false"
|
||||||
android:transitionName="@string/transition_mini_player"
|
android:transitionName="@string/transition_mini_player"
|
||||||
|
|
|
@ -8,54 +8,16 @@
|
||||||
android:paddingBottom="12dp">
|
android:paddingBottom="12dp">
|
||||||
|
|
||||||
|
|
||||||
<code.name.monkey.retromusic.views.CircularImageView
|
|
||||||
android:id="@+id/userImage"
|
|
||||||
android:layout_width="42dp"
|
|
||||||
android:layout_height="42dp"
|
|
||||||
android:layout_marginStart="16dp"
|
|
||||||
android:layout_marginTop="16dp"
|
|
||||||
app:civ_border="false"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
|
||||||
tools:srcCompat="@tools:sample/avatars" />
|
|
||||||
|
|
||||||
|
|
||||||
<com.google.android.material.textview.MaterialTextView
|
|
||||||
android:id="@+id/text"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginStart="16dp"
|
|
||||||
android:ellipsize="end"
|
|
||||||
android:text="@string/welcome"
|
|
||||||
android:textColor="?colorOnBackground"
|
|
||||||
app:layout_constraintStart_toEndOf="@+id/userImage"
|
|
||||||
app:layout_constraintTop_toTopOf="@+id/userImage" />
|
|
||||||
|
|
||||||
<com.google.android.material.textview.MaterialTextView
|
|
||||||
android:id="@+id/titleWelcome"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginStart="16dp"
|
|
||||||
android:padding="0dp"
|
|
||||||
android:textAppearance="@style/TextViewHeadline5"
|
|
||||||
android:textColor="?colorOnPrimary"
|
|
||||||
android:textStyle="bold"
|
|
||||||
app:layout_constraintBottom_toBottomOf="@+id/userImage"
|
|
||||||
app:layout_constraintStart_toEndOf="@+id/userImage"
|
|
||||||
app:layout_constraintTop_toBottomOf="@+id/text"
|
|
||||||
tools:text="@string/app_name" />
|
|
||||||
|
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
android:id="@+id/history"
|
android:id="@+id/history"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="24dp"
|
android:layout_marginTop="24dp"
|
||||||
app:layout_constraintHorizontal_chainStyle="spread_inside"
|
|
||||||
app:layout_constraintEnd_toStartOf="@+id/lastAdded"
|
app:layout_constraintEnd_toStartOf="@+id/lastAdded"
|
||||||
app:layout_constraintHorizontal_bias="0.5"
|
app:layout_constraintHorizontal_bias="0.5"
|
||||||
|
app:layout_constraintHorizontal_chainStyle="spread_inside"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/titleWelcome">
|
app:layout_constraintTop_toTopOf="parent">
|
||||||
|
|
||||||
<code.name.monkey.retromusic.views.ColorIconsImageView
|
<code.name.monkey.retromusic.views.ColorIconsImageView
|
||||||
android:id="@+id/v1"
|
android:id="@+id/v1"
|
||||||
|
@ -80,7 +42,7 @@
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/v1"
|
app:layout_constraintTop_toBottomOf="@+id/v1"
|
||||||
tools:text="Hemanth savarala kumar dai" />
|
tools:text="@tools:sample/lorem" />
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
@ -117,7 +79,7 @@
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/v2"
|
app:layout_constraintTop_toBottomOf="@+id/v2"
|
||||||
tools:text="Hemanth savarala" />
|
tools:text="@tools:sample/lorem" />
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
@ -154,7 +116,7 @@
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/v3"
|
app:layout_constraintTop_toBottomOf="@+id/v3"
|
||||||
tools:text="Hemanth savarala" />
|
tools:text="@tools:sample/lorem" />
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
@ -191,7 +153,7 @@
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/v4"
|
app:layout_constraintTop_toBottomOf="@+id/v4"
|
||||||
tools:text="Hemanth savarala" />
|
tools:text="@tools:sample/lorem" />
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
|
|
@ -16,7 +16,8 @@
|
||||||
|
|
||||||
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent">
|
android:layout_height="match_parent"
|
||||||
|
android:background="?attr/colorSurface">
|
||||||
|
|
||||||
<com.google.android.material.appbar.AppBarLayout
|
<com.google.android.material.appbar.AppBarLayout
|
||||||
android:id="@+id/appBarLayout"
|
android:id="@+id/appBarLayout"
|
||||||
|
@ -49,16 +50,18 @@
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
|
||||||
android:orientation="vertical">
|
android:orientation="vertical">
|
||||||
|
|
||||||
<code.name.monkey.retromusic.views.WidthFitSquareCardView
|
<code.name.monkey.retromusic.views.WidthFitSquareCardView
|
||||||
android:id="@+id/albumCoverContainer"
|
android:id="@+id/albumCoverContainer"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="16dp"
|
||||||
|
android:layout_marginEnd="16dp"
|
||||||
android:transitionName="@string/transition_album_art"
|
android:transitionName="@string/transition_album_art"
|
||||||
app:cardCornerRadius="24dp"
|
app:cardCornerRadius="24dp"
|
||||||
app:cardElevation="8dp"
|
app:cardElevation="8dp"
|
||||||
app:cardUseCompatPadding="true"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toTopOf="parent">
|
app:layout_constraintTop_toTopOf="parent">
|
||||||
|
|
|
@ -16,7 +16,8 @@
|
||||||
|
|
||||||
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent">
|
android:layout_height="match_parent"
|
||||||
|
android:background="?attr/colorSurface">
|
||||||
|
|
||||||
<com.google.android.material.appbar.AppBarLayout
|
<com.google.android.material.appbar.AppBarLayout
|
||||||
android:id="@+id/appBarLayout"
|
android:id="@+id/appBarLayout"
|
||||||
|
|
|
@ -27,11 +27,6 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior">
|
app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior">
|
||||||
|
|
||||||
<FrameLayout
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="0dp"
|
|
||||||
android:layout_weight="1">
|
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
@ -56,13 +51,12 @@
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
</androidx.core.widget.NestedScrollView>
|
||||||
|
|
||||||
<com.google.android.material.floatingactionbutton.FloatingActionButton
|
<com.google.android.material.floatingactionbutton.FloatingActionButton
|
||||||
android:id="@+id/sendFab"
|
android:id="@+id/sendFab"
|
||||||
style="@style/Fab"
|
style="@style/Fab"
|
||||||
android:layout_gravity="bottom|end"
|
android:layout_gravity="bottom|end"
|
||||||
android:layout_margin="16dp"
|
android:layout_margin="16dp"
|
||||||
app:srcCompat="@drawable/ic_send_white_24dp" />
|
app:srcCompat="@drawable/ic_send_white_24dp" />
|
||||||
|
|
||||||
</FrameLayout>
|
|
||||||
</androidx.core.widget.NestedScrollView>
|
|
||||||
</androidx.coordinatorlayout.widget.CoordinatorLayout>
|
</androidx.coordinatorlayout.widget.CoordinatorLayout>
|
|
@ -9,7 +9,10 @@
|
||||||
<com.google.android.material.appbar.AppBarLayout
|
<com.google.android.material.appbar.AppBarLayout
|
||||||
android:id="@+id/appBarLayout"
|
android:id="@+id/appBarLayout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content">
|
android:layout_height="wrap_content"
|
||||||
|
android:background="@android:color/transparent"
|
||||||
|
android:elevation="0dp"
|
||||||
|
app:elevation="0dp">
|
||||||
|
|
||||||
<com.google.android.material.appbar.MaterialToolbar
|
<com.google.android.material.appbar.MaterialToolbar
|
||||||
android:id="@+id/toolbar"
|
android:id="@+id/toolbar"
|
||||||
|
@ -19,7 +22,7 @@
|
||||||
app:contentInsetStart="0dp"
|
app:contentInsetStart="0dp"
|
||||||
app:contentInsetStartWithNavigation="0dp"
|
app:contentInsetStartWithNavigation="0dp"
|
||||||
app:layout_scrollFlags="scroll|enterAlways"
|
app:layout_scrollFlags="scroll|enterAlways"
|
||||||
app:navigationIcon="@drawable/ic_keyboard_arrow_down_black_24dp"
|
app:navigationIcon="@drawable/ic_keyboard_backspace_black_24dp"
|
||||||
app:subtitleTextAppearance="@style/TextAppearance.AppCompat.Caption"
|
app:subtitleTextAppearance="@style/TextAppearance.AppCompat.Caption"
|
||||||
app:titleMargin="0dp"
|
app:titleMargin="0dp"
|
||||||
app:titleMarginStart="0dp"
|
app:titleMarginStart="0dp"
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
android:id="@+id/appBarLayout"
|
android:id="@+id/appBarLayout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:background="@android:color/transparent"
|
||||||
app:liftOnScroll="true">
|
app:liftOnScroll="true">
|
||||||
|
|
||||||
<com.google.android.material.appbar.CollapsingToolbarLayout
|
<com.google.android.material.appbar.CollapsingToolbarLayout
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
|
android:background="?attr/colorSurface"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
tools:ignore="UnusedAttribute">
|
tools:ignore="UnusedAttribute">
|
||||||
|
|
||||||
|
@ -20,9 +21,11 @@
|
||||||
|
|
||||||
<com.google.android.material.appbar.AppBarLayout
|
<com.google.android.material.appbar.AppBarLayout
|
||||||
android:id="@+id/appBarLayout"
|
android:id="@+id/appBarLayout"
|
||||||
android:background="?attr/colorPrimary"
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:background="@android:color/transparent"
|
||||||
|
android:elevation="0dp"
|
||||||
|
app:elevation="0dp"
|
||||||
app:liftOnScroll="true">
|
app:liftOnScroll="true">
|
||||||
|
|
||||||
<FrameLayout
|
<FrameLayout
|
||||||
|
@ -33,7 +36,6 @@
|
||||||
<com.google.android.material.appbar.MaterialToolbar
|
<com.google.android.material.appbar.MaterialToolbar
|
||||||
android:id="@+id/toolbar"
|
android:id="@+id/toolbar"
|
||||||
style="@style/Toolbar"
|
style="@style/Toolbar"
|
||||||
android:background="?attr/colorPrimary"
|
|
||||||
app:navigationIcon="@drawable/ic_keyboard_backspace_black_24dp"
|
app:navigationIcon="@drawable/ic_keyboard_backspace_black_24dp"
|
||||||
app:titleTextAppearance="@style/ToolbarTextAppearanceNormal" />
|
app:titleTextAppearance="@style/ToolbarTextAppearanceNormal" />
|
||||||
|
|
||||||
|
@ -49,6 +51,7 @@
|
||||||
android:id="@+id/recyclerView"
|
android:id="@+id/recyclerView"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
|
||||||
android:clipToPadding="false"
|
android:clipToPadding="false"
|
||||||
android:scrollbars="none"
|
android:scrollbars="none"
|
||||||
app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior" />
|
app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior" />
|
||||||
|
|
|
@ -25,6 +25,7 @@
|
||||||
android:id="@+id/appBarLayout"
|
android:id="@+id/appBarLayout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:background="@android:color/transparent"
|
||||||
android:elevation="0dp"
|
android:elevation="0dp"
|
||||||
app:elevation="0dp">
|
app:elevation="0dp">
|
||||||
|
|
||||||
|
|
|
@ -5,13 +5,14 @@
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:fitsSystemWindows="true"
|
android:fitsSystemWindows="true"
|
||||||
|
android:background="?attr/colorSurface"
|
||||||
android:orientation="vertical">
|
android:orientation="vertical">
|
||||||
|
|
||||||
<com.google.android.material.appbar.AppBarLayout
|
<com.google.android.material.appbar.AppBarLayout
|
||||||
android:id="@+id/appBarLayout"
|
android:id="@+id/appBarLayout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:background="?colorPrimary"
|
android:background="@android:color/transparent"
|
||||||
android:fitsSystemWindows="true"
|
android:fitsSystemWindows="true"
|
||||||
app:liftOnScroll="true">
|
app:liftOnScroll="true">
|
||||||
|
|
||||||
|
@ -77,9 +78,9 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:background="?roundSelector"
|
android:background="?roundSelector"
|
||||||
android:padding="12dp"
|
android:padding="12dp"
|
||||||
|
android:visibility="gone"
|
||||||
app:srcCompat="@drawable/ic_close_white_24dp"
|
app:srcCompat="@drawable/ic_close_white_24dp"
|
||||||
app:tint="?colorOnSurface"
|
app:tint="?colorOnSurface"
|
||||||
android:visibility="gone"
|
|
||||||
tools:visibility="visible" />
|
tools:visibility="visible" />
|
||||||
</FrameLayout>
|
</FrameLayout>
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
android:id="@+id/appBarLayout"
|
android:id="@+id/appBarLayout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:background="@android:color/transparent"
|
||||||
app:liftOnScroll="true">
|
app:liftOnScroll="true">
|
||||||
|
|
||||||
<com.google.android.material.appbar.MaterialToolbar
|
<com.google.android.material.appbar.MaterialToolbar
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
app:cardBackgroundColor="?cardBackgroundColor"
|
|
||||||
app:cardCornerRadius="8dp"
|
app:cardCornerRadius="8dp"
|
||||||
app:cardUseCompatPadding="true">
|
app:cardUseCompatPadding="true">
|
||||||
|
|
||||||
|
@ -33,7 +32,7 @@
|
||||||
android:padding="16dp"
|
android:padding="16dp"
|
||||||
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1"
|
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1"
|
||||||
android:textColor="?android:textColorSecondary"
|
android:textColor="?android:textColorSecondary"
|
||||||
tools:text="@string/donate_summary" />
|
tools:text="@tools:sample/lorem/random" />
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
</com.google.android.material.card.MaterialCardView>
|
</com.google.android.material.card.MaterialCardView>
|
||||||
|
|
|
@ -34,22 +34,6 @@
|
||||||
app:statusBarScrim="@color/md_black_1000"
|
app:statusBarScrim="@color/md_black_1000"
|
||||||
app:titleEnabled="false">
|
app:titleEnabled="false">
|
||||||
|
|
||||||
<FrameLayout
|
|
||||||
android:id="@+id/imageContainer"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="228dp"
|
|
||||||
app:layout_collapseMode="parallax">
|
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatImageView
|
|
||||||
android:id="@+id/bannerImage"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:scaleType="centerCrop"
|
|
||||||
app:layout_collapseMode="parallax"
|
|
||||||
tools:background="@color/md_red_400"
|
|
||||||
tools:ignore="ContentDescription"
|
|
||||||
tools:srcCompat="@tools:sample/backgrounds/scenic[9]" />
|
|
||||||
</FrameLayout>
|
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
|
@ -66,17 +50,55 @@
|
||||||
</FrameLayout>
|
</FrameLayout>
|
||||||
|
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
</com.google.android.material.appbar.CollapsingToolbarLayout>
|
||||||
|
</com.google.android.material.appbar.AppBarLayout>
|
||||||
|
|
||||||
|
<androidx.core.widget.NestedScrollView
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior">
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<com.google.android.material.card.MaterialCardView
|
||||||
|
android:id="@+id/imageContainer"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="228dp"
|
||||||
|
app:cardCornerRadius="24dp"
|
||||||
|
app:cardUseCompatPadding="true">
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content">
|
||||||
|
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
|
android:id="@+id/bannerImage"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:scaleType="centerCrop"
|
||||||
|
app:layout_collapseMode="parallax"
|
||||||
|
tools:ignore="ContentDescription"
|
||||||
|
tools:srcCompat="@tools:sample/backgrounds/scenic[9]" />
|
||||||
|
|
||||||
|
|
||||||
<com.google.android.material.card.MaterialCardView
|
<com.google.android.material.card.MaterialCardView
|
||||||
android:id="@+id/toolbarContainer"
|
android:id="@+id/toolbarContainer"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginStart="@dimen/toolbar_margin_horizontal"
|
android:layout_marginStart="@dimen/toolbar_margin_horizontal"
|
||||||
android:layout_marginTop="@dimen/toolbar_margin_vertical"
|
android:layout_marginTop="8dp"
|
||||||
android:layout_marginEnd="@dimen/toolbar_margin_horizontal"
|
android:layout_marginEnd="@dimen/toolbar_margin_horizontal"
|
||||||
android:layout_marginBottom="@dimen/toolbar_margin_vertical"
|
|
||||||
app:cardBackgroundColor="@android:color/transparent"
|
app:cardBackgroundColor="@android:color/transparent"
|
||||||
app:cardCornerRadius="8dp"
|
app:cardCornerRadius="8dp"
|
||||||
app:cardUseCompatPadding="true"
|
app:cardUseCompatPadding="true"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
app:layout_scrollFlags="scroll|enterAlways"
|
app:layout_scrollFlags="scroll|enterAlways"
|
||||||
app:shapeAppearance="@style/ToolbarCornerCardView">
|
app:shapeAppearance="@style/ToolbarCornerCardView">
|
||||||
|
|
||||||
|
@ -84,7 +106,7 @@
|
||||||
android:id="@+id/toolbar"
|
android:id="@+id/toolbar"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="@dimen/toolbar_height"
|
android:layout_height="@dimen/toolbar_height"
|
||||||
android:background="?colorSurface"
|
android:background="?attr/colorSurface"
|
||||||
app:contentInsetStart="0dp"
|
app:contentInsetStart="0dp"
|
||||||
app:contentInsetStartWithNavigation="0dp"
|
app:contentInsetStartWithNavigation="0dp"
|
||||||
app:popupTheme="?toolbarPopupTheme"
|
app:popupTheme="?toolbarPopupTheme"
|
||||||
|
@ -93,24 +115,54 @@
|
||||||
app:titleTextAppearance="@style/ToolbarTextAppearanceSearch"
|
app:titleTextAppearance="@style/ToolbarTextAppearanceSearch"
|
||||||
tools:ignore="UnusedAttribute" />
|
tools:ignore="UnusedAttribute" />
|
||||||
</com.google.android.material.card.MaterialCardView>
|
</com.google.android.material.card.MaterialCardView>
|
||||||
</LinearLayout>
|
|
||||||
</com.google.android.material.appbar.CollapsingToolbarLayout>
|
|
||||||
</com.google.android.material.appbar.AppBarLayout>
|
|
||||||
|
|
||||||
<androidx.core.widget.NestedScrollView
|
<View
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="52dp"
|
||||||
app:behavior_overlapTop="24dp"
|
android:background="@drawable/shadow_up"
|
||||||
app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior">
|
app:layout_constraintBottom_toBottomOf="parent" />
|
||||||
|
|
||||||
<com.google.android.material.card.MaterialCardView
|
<code.name.monkey.retromusic.views.CircularImageView
|
||||||
android:layout_width="match_parent"
|
android:id="@+id/userImage"
|
||||||
|
android:layout_width="42dp"
|
||||||
|
android:layout_height="42dp"
|
||||||
|
android:layout_marginStart="16dp"
|
||||||
|
android:layout_marginBottom="8dp"
|
||||||
|
app:civ_border="false"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
tools:srcCompat="@tools:sample/avatars" />
|
||||||
|
|
||||||
|
<com.google.android.material.textview.MaterialTextView
|
||||||
|
android:id="@+id/text"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
app:cardBackgroundColor="?colorPrimary"
|
android:layout_marginStart="16dp"
|
||||||
app:cardElevation="8dp"
|
android:ellipsize="end"
|
||||||
app:shapeAppearanceOverlay="@style/TopCornerCardView">
|
android:text="@string/welcome"
|
||||||
|
android:textColor="@color/md_white_1000"
|
||||||
|
app:layout_constraintStart_toEndOf="@+id/userImage"
|
||||||
|
app:layout_constraintTop_toTopOf="@+id/userImage" />
|
||||||
|
|
||||||
|
<com.google.android.material.textview.MaterialTextView
|
||||||
|
android:id="@+id/titleWelcome"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="16dp"
|
||||||
|
android:padding="0dp"
|
||||||
|
android:textAppearance="@style/TextViewHeadline5"
|
||||||
|
android:textColor="@color/md_white_1000"
|
||||||
|
android:textStyle="bold"
|
||||||
|
app:layout_constraintBottom_toBottomOf="@+id/userImage"
|
||||||
|
app:layout_constraintStart_toEndOf="@+id/userImage"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/text"
|
||||||
|
tools:text="@string/app_name" />
|
||||||
|
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
</com.google.android.material.card.MaterialCardView>
|
||||||
|
|
||||||
<include layout="@layout/home_content" />
|
<include layout="@layout/home_content" />
|
||||||
</com.google.android.material.card.MaterialCardView>
|
</LinearLayout>
|
||||||
</androidx.core.widget.NestedScrollView>
|
</androidx.core.widget.NestedScrollView>
|
||||||
</androidx.coordinatorlayout.widget.CoordinatorLayout>
|
</androidx.coordinatorlayout.widget.CoordinatorLayout>
|
|
@ -16,7 +16,6 @@
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:background="?colorPrimary"
|
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:orientation="vertical">
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
@ -35,7 +34,7 @@
|
||||||
android:id="@+id/appBarLayout"
|
android:id="@+id/appBarLayout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:background="?colorPrimary"
|
android:background="@android:color/transparent"
|
||||||
app:liftOnScroll="true">
|
app:liftOnScroll="true">
|
||||||
|
|
||||||
<com.google.android.material.card.MaterialCardView
|
<com.google.android.material.card.MaterialCardView
|
||||||
|
|
|
@ -7,7 +7,6 @@
|
||||||
app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior">
|
app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior">
|
||||||
|
|
||||||
<com.google.android.material.textview.MaterialTextView
|
<com.google.android.material.textview.MaterialTextView
|
||||||
android:textColor="?colorOnSecondary"
|
|
||||||
android:id="@+id/offlineLyrics"
|
android:id="@+id/offlineLyrics"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
@ -18,5 +17,6 @@
|
||||||
android:paddingEnd="16dp"
|
android:paddingEnd="16dp"
|
||||||
android:paddingBottom="128dp"
|
android:paddingBottom="128dp"
|
||||||
android:text="@string/no_lyrics_found"
|
android:text="@string/no_lyrics_found"
|
||||||
android:textAppearance="@style/TextViewBody1" />
|
android:textAppearance="@style/TextViewBody1"
|
||||||
|
android:textColor="?android:attr/textColorPrimary" />
|
||||||
</ScrollView>
|
</ScrollView>
|
|
@ -49,7 +49,6 @@
|
||||||
android:paddingEnd="16dp"
|
android:paddingEnd="16dp"
|
||||||
android:text="@string/retro_music_pro"
|
android:text="@string/retro_music_pro"
|
||||||
android:textAppearance="@style/TextViewSubtitle1"
|
android:textAppearance="@style/TextViewSubtitle1"
|
||||||
android:textColor="?colorOnPrimary"
|
|
||||||
android:textStyle="bold"
|
android:textStyle="bold"
|
||||||
app:layout_constraintTop_toBottomOf="@id/diamondIcon" />
|
app:layout_constraintTop_toBottomOf="@id/diamondIcon" />
|
||||||
|
|
||||||
|
@ -83,6 +82,7 @@
|
||||||
android:textAllCaps="false"
|
android:textAllCaps="false"
|
||||||
android:textColor="?colorAccent"
|
android:textColor="?colorAccent"
|
||||||
android:textStyle="bold"
|
android:textStyle="bold"
|
||||||
|
app:backgroundTint="?attr/colorSurface"
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
@ -122,7 +122,6 @@
|
||||||
android:singleLine="true"
|
android:singleLine="true"
|
||||||
android:text="@string/general_settings_title"
|
android:text="@string/general_settings_title"
|
||||||
android:textAppearance="@style/TextViewSubtitle1"
|
android:textAppearance="@style/TextViewSubtitle1"
|
||||||
android:textColor="?colorOnPrimary"
|
|
||||||
android:textStyle="bold" />
|
android:textStyle="bold" />
|
||||||
|
|
||||||
<com.google.android.material.textview.MaterialTextView
|
<com.google.android.material.textview.MaterialTextView
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?><!--
|
||||||
|
|
||||||
|
|
||||||
<!--
|
|
||||||
~ Copyright (c) 2019 Hemanth Savarala.
|
~ Copyright (c) 2019 Hemanth Savarala.
|
||||||
~
|
~
|
||||||
~ Licensed under the GNU General Public License v3
|
~ Licensed under the GNU General Public License v3
|
||||||
|
@ -20,6 +17,7 @@
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
|
android:background="?attr/colorSurface"
|
||||||
android:descendantFocusability="blocksDescendants"
|
android:descendantFocusability="blocksDescendants"
|
||||||
android:focusable="true"
|
android:focusable="true"
|
||||||
android:focusableInTouchMode="true"
|
android:focusableInTouchMode="true"
|
||||||
|
@ -53,16 +51,17 @@
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_gravity="center"
|
android:layout_gravity="center"
|
||||||
|
android:layout_margin="24dp"
|
||||||
android:gravity="center_horizontal"
|
android:gravity="center_horizontal"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
android:visibility="gone"
|
android:visibility="gone"
|
||||||
tools:visibility="visible">
|
tools:visibility="visible">
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatImageView
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
app:tint="?colorOnSecondary"
|
|
||||||
android:layout_width="96dp"
|
android:layout_width="96dp"
|
||||||
android:layout_height="96dp"
|
android:layout_height="96dp"
|
||||||
app:srcCompat="@drawable/ic_play_arrow_white_64dp" />
|
app:srcCompat="@drawable/ic_play_arrow_white_64dp"
|
||||||
|
app:tint="?colorOnSecondary" />
|
||||||
|
|
||||||
<com.google.android.material.textview.MaterialTextView
|
<com.google.android.material.textview.MaterialTextView
|
||||||
android:id="@+id/emptyText"
|
android:id="@+id/emptyText"
|
||||||
|
|
|
@ -33,7 +33,7 @@
|
||||||
android:paddingEnd="8dp"
|
android:paddingEnd="8dp"
|
||||||
android:paddingBottom="4dp"
|
android:paddingBottom="4dp"
|
||||||
android:textAppearance="@style/TextViewNormal"
|
android:textAppearance="@style/TextViewNormal"
|
||||||
android:textColor="?attr/colorOnPrimary"
|
android:textColor="?android:attr/textColorPrimary"
|
||||||
tools:ignore="MissingPrefix"
|
tools:ignore="MissingPrefix"
|
||||||
tools:text="My top tracks" />
|
tools:text="My top tracks" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
|
@ -28,6 +28,6 @@
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:maxLines="1"
|
android:maxLines="1"
|
||||||
android:paddingTop="12dp"
|
android:paddingTop="12dp"
|
||||||
android:textColor="?attr/colorOnPrimary"
|
android:textColor="?android:attr/textColorPrimary"
|
||||||
tools:text="Name" />
|
tools:text="Name" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
|
@ -41,6 +41,6 @@
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:text="@string/folders"
|
android:text="@string/folders"
|
||||||
android:textAppearance="@style/TextViewNormal"
|
android:textAppearance="@style/TextViewNormal"
|
||||||
android:textColor="?attr/colorOnPrimary"
|
android:textColor="?android:attr/textColorPrimary"
|
||||||
android:textSize="16sp" />
|
android:textSize="16sp" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
|
@ -43,8 +43,6 @@
|
||||||
android:paddingTop="6dp"
|
android:paddingTop="6dp"
|
||||||
android:paddingEnd="8dp"
|
android:paddingEnd="8dp"
|
||||||
android:paddingBottom="4dp"
|
android:paddingBottom="4dp"
|
||||||
android:textAppearance="@style/TextViewNormal"
|
|
||||||
android:textColor="?colorOnBackground"
|
|
||||||
tools:ignore="MissingPrefix"
|
tools:ignore="MissingPrefix"
|
||||||
tools:text="My top tracks" />
|
tools:text="My top tracks" />
|
||||||
|
|
||||||
|
|
|
@ -51,10 +51,9 @@
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_gravity="bottom"
|
android:layout_gravity="bottom"
|
||||||
android:background="?attr/colorSurface"
|
|
||||||
android:elevation="0dp"
|
android:elevation="0dp"
|
||||||
android:visibility="gone"
|
android:visibility="gone"
|
||||||
app:itemBackground="@drawable/bottom_navigation_item_background"
|
app:backgroundTint="?android:attr/windowBackground"
|
||||||
app:itemHorizontalTranslationEnabled="false"
|
app:itemHorizontalTranslationEnabled="false"
|
||||||
app:itemIconTint="@drawable/bottom_navigation_item_colors"
|
app:itemIconTint="@drawable/bottom_navigation_item_colors"
|
||||||
app:itemTextAppearanceActive="@style/BottomSheetItemTextAppearanceActive"
|
app:itemTextAppearanceActive="@style/BottomSheetItemTextAppearanceActive"
|
||||||
|
|
|
@ -158,7 +158,6 @@
|
||||||
<string name="error">Hiba</string>
|
<string name="error">Hiba</string>
|
||||||
<string name="faq">GYIK</string>
|
<string name="faq">GYIK</string>
|
||||||
<string name="favorites">Kedvencek</string>
|
<string name="favorites">Kedvencek</string>
|
||||||
<string name="favorites_songs">Te vagy a legkedvencebb dal</string>
|
|
||||||
<string name="finish_last_song">Fejezze be az utolsó dalt</string>
|
<string name="finish_last_song">Fejezze be az utolsó dalt</string>
|
||||||
<string name="fit">Fit</string>
|
<string name="fit">Fit</string>
|
||||||
<string name="flat">Lapos</string>
|
<string name="flat">Lapos</string>
|
||||||
|
@ -216,8 +215,6 @@
|
||||||
<string name="material">Materiál</string>
|
<string name="material">Materiál</string>
|
||||||
<string name="md_error_label">Hiba</string>
|
<string name="md_error_label">Hiba</string>
|
||||||
<string name="md_storage_perm_error">Engedély hiba</string>
|
<string name="md_storage_perm_error">Engedély hiba</string>
|
||||||
<string name="most_played_albums">A legtöbb játszott albumok</string>
|
|
||||||
<string name="most_played_artists">A legtöbb játszott művész</string>
|
|
||||||
<string name="my_name">Név</string>
|
<string name="my_name">Név</string>
|
||||||
<string name="my_top_tracks">Legjobb számok</string>
|
<string name="my_top_tracks">Legjobb számok</string>
|
||||||
<string name="never">Soha</string>
|
<string name="never">Soha</string>
|
||||||
|
@ -361,8 +358,6 @@
|
||||||
<string name="queue">Sorban áll</string>
|
<string name="queue">Sorban áll</string>
|
||||||
<string name="rate_app">Értékeld az alkalmazást</string>
|
<string name="rate_app">Értékeld az alkalmazást</string>
|
||||||
<string name="rate_on_google_play_summary">Szereted ezt az app-ot a Google Play áruházban, hogy jobb élményt nyújtsunk</string>
|
<string name="rate_on_google_play_summary">Szereted ezt az app-ot a Google Play áruházban, hogy jobb élményt nyújtsunk</string>
|
||||||
<string name="recent_added_albums">Nemrégiben hozzáadott albumok</string>
|
|
||||||
<string name="recent_added_artists">Nemrégiben hozzáadott művészek</string>
|
|
||||||
<string name="recent_albums">Legutóbbi albumok</string>
|
<string name="recent_albums">Legutóbbi albumok</string>
|
||||||
<string name="recent_artists">Legújabb előadók</string>
|
<string name="recent_artists">Legújabb előadók</string>
|
||||||
<string name="remove_action">Eltávolítás</string>
|
<string name="remove_action">Eltávolítás</string>
|
||||||
|
|
|
@ -272,8 +272,6 @@ https://play.google.com/store/apps/details?id=%s</string>
|
||||||
|
|
||||||
<string name="favorites">Preferiti</string>
|
<string name="favorites">Preferiti</string>
|
||||||
|
|
||||||
<string name="favorites_songs">I tuoi brani preferiti</string>
|
|
||||||
|
|
||||||
<string name="finish_last_song">Termina ultimo brano</string>
|
<string name="finish_last_song">Termina ultimo brano</string>
|
||||||
|
|
||||||
<string name="fit">Adatta</string>
|
<string name="fit">Adatta</string>
|
||||||
|
@ -376,9 +374,6 @@ https://play.google.com/store/apps/details?id=%s</string>
|
||||||
|
|
||||||
<string name="md_storage_perm_error">Errore di autorizzazione</string>
|
<string name="md_storage_perm_error">Errore di autorizzazione</string>
|
||||||
|
|
||||||
<string name="most_played_albums">Album più ascoltati</string>
|
|
||||||
<string name="most_played_artists">Artisti più ascoltati</string>
|
|
||||||
|
|
||||||
<string name="my_name">Nome</string>
|
<string name="my_name">Nome</string>
|
||||||
|
|
||||||
<string name="my_top_tracks">I più riprodotti</string>
|
<string name="my_top_tracks">I più riprodotti</string>
|
||||||
|
@ -584,9 +579,6 @@ https://play.google.com/store/apps/details?id=%s</string>
|
||||||
|
|
||||||
<string name="rate_on_google_play_summary">Adori quest\'app? Facci sapere sul Play Store come possiamo renderla ancora migliore</string>
|
<string name="rate_on_google_play_summary">Adori quest\'app? Facci sapere sul Play Store come possiamo renderla ancora migliore</string>
|
||||||
|
|
||||||
<string name="recent_added_albums">Album aggiunti di recente</string>
|
|
||||||
<string name="recent_added_artists">Artisti aggiunti di recente</string>
|
|
||||||
|
|
||||||
<string name="recent_albums">Album recenti</string>
|
<string name="recent_albums">Album recenti</string>
|
||||||
|
|
||||||
<string name="recent_artists">Artisti recenti</string>
|
<string name="recent_artists">Artisti recenti</string>
|
||||||
|
|
|
@ -158,7 +158,6 @@
|
||||||
<string name="error">Hata</string>
|
<string name="error">Hata</string>
|
||||||
<string name="faq">SSS</string>
|
<string name="faq">SSS</string>
|
||||||
<string name="favorites">Gözdeler</string>
|
<string name="favorites">Gözdeler</string>
|
||||||
<string name="favorites_songs">Favori Şarkıların</string>
|
|
||||||
<string name="finish_last_song">Son şarkıyı bitir</string>
|
<string name="finish_last_song">Son şarkıyı bitir</string>
|
||||||
<string name="fit">Fit</string>
|
<string name="fit">Fit</string>
|
||||||
<string name="flat">Düz</string>
|
<string name="flat">Düz</string>
|
||||||
|
@ -216,8 +215,6 @@
|
||||||
<string name="material">Materyal</string>
|
<string name="material">Materyal</string>
|
||||||
<string name="md_error_label">Hata</string>
|
<string name="md_error_label">Hata</string>
|
||||||
<string name="md_storage_perm_error">İzin hatası</string>
|
<string name="md_storage_perm_error">İzin hatası</string>
|
||||||
<string name="most_played_albums">En çok çalınan albümler</string>
|
|
||||||
<string name="most_played_artists">En çok çalınan sanatçılar</string>
|
|
||||||
<string name="my_name">İsim</string>
|
<string name="my_name">İsim</string>
|
||||||
<string name="my_top_tracks">Sık oynatılanlar</string>
|
<string name="my_top_tracks">Sık oynatılanlar</string>
|
||||||
<string name="never">Asla</string>
|
<string name="never">Asla</string>
|
||||||
|
@ -361,8 +358,6 @@
|
||||||
<string name="queue">Kuyruk</string>
|
<string name="queue">Kuyruk</string>
|
||||||
<string name="rate_app">Uygulamayı Değerlendir</string>
|
<string name="rate_app">Uygulamayı Değerlendir</string>
|
||||||
<string name="rate_on_google_play_summary">Bu uygulamayı sevdin mi? Daha iyi bir gelişim için lütfen Google Play\'de nasıl daha iyi yapabileceğimizi bildir.</string>
|
<string name="rate_on_google_play_summary">Bu uygulamayı sevdin mi? Daha iyi bir gelişim için lütfen Google Play\'de nasıl daha iyi yapabileceğimizi bildir.</string>
|
||||||
<string name="recent_added_albums">Son eklenen albümler</string>
|
|
||||||
<string name="recent_added_artists">Son eklenen sanatçılar</string>
|
|
||||||
<string name="recent_albums">Son albümler</string>
|
<string name="recent_albums">Son albümler</string>
|
||||||
<string name="recent_artists">Son sanatçılar</string>
|
<string name="recent_artists">Son sanatçılar</string>
|
||||||
<string name="remove_action">Kaldır</string>
|
<string name="remove_action">Kaldır</string>
|
||||||
|
|
|
@ -158,7 +158,6 @@
|
||||||
<string name="error">錯誤</string>
|
<string name="error">錯誤</string>
|
||||||
<string name="faq">常見問題</string>
|
<string name="faq">常見問題</string>
|
||||||
<string name="favorites">我的最愛</string>
|
<string name="favorites">我的最愛</string>
|
||||||
<string name="favorites_songs">你最喜愛的歌曲</string>
|
|
||||||
<string name="finish_last_song">最後一首已經結束播放</string>
|
<string name="finish_last_song">最後一首已經結束播放</string>
|
||||||
<string name="fit">Fit</string>
|
<string name="fit">Fit</string>
|
||||||
<string name="flat">平面</string>
|
<string name="flat">平面</string>
|
||||||
|
@ -216,8 +215,6 @@
|
||||||
<string name="material">物質</string>
|
<string name="material">物質</string>
|
||||||
<string name="md_error_label">錯誤</string>
|
<string name="md_error_label">錯誤</string>
|
||||||
<string name="md_storage_perm_error">權限錯誤</string>
|
<string name="md_storage_perm_error">權限錯誤</string>
|
||||||
<string name="most_played_albums">最常播放的專輯</string>
|
|
||||||
<string name="most_played_artists">最常播放的歌手</string>
|
|
||||||
<string name="my_name">名字</string>
|
<string name="my_name">名字</string>
|
||||||
<string name="my_top_tracks">最常播放</string>
|
<string name="my_top_tracks">最常播放</string>
|
||||||
<string name="never">永不</string>
|
<string name="never">永不</string>
|
||||||
|
@ -361,8 +358,6 @@
|
||||||
<string name="queue">播放列表</string>
|
<string name="queue">播放列表</string>
|
||||||
<string name="rate_app">為這個App評分</string>
|
<string name="rate_app">為這個App評分</string>
|
||||||
<string name="rate_on_google_play_summary">喜歡這個App嗎?請讓我們知道如何提供更好的體驗</string>
|
<string name="rate_on_google_play_summary">喜歡這個App嗎?請讓我們知道如何提供更好的體驗</string>
|
||||||
<string name="recent_added_albums">最近新增的專輯</string>
|
|
||||||
<string name="recent_added_artists">最近新增的歌手</string>
|
|
||||||
<string name="recent_albums">近期專輯</string>
|
<string name="recent_albums">近期專輯</string>
|
||||||
<string name="recent_artists">近期歌手</string>
|
<string name="recent_artists">近期歌手</string>
|
||||||
<string name="remove_action">移除</string>
|
<string name="remove_action">移除</string>
|
||||||
|
|
|
@ -6,73 +6,105 @@
|
||||||
<string name="accent_color_desc">The theme accent color, defaults to purple</string>
|
<string name="accent_color_desc">The theme accent color, defaults to purple</string>
|
||||||
|
|
||||||
<string name="action_about">About</string>
|
<string name="action_about">About</string>
|
||||||
|
|
||||||
<string name="action_add_to_favorites">Add to favorites</string>
|
<string name="action_add_to_favorites">Add to favorites</string>
|
||||||
<string name="action_add_to_playing_queue">Add to playing queue</string>
|
<string name="action_add_to_playing_queue">Add to playing queue</string>
|
||||||
<string name="action_add_to_playlist">Add to playlist</string>
|
<string name="action_add_to_playlist">Add to playlist</string>
|
||||||
|
|
||||||
<string name="action_clear_playing_queue">Clear playing queue</string>
|
<string name="action_clear_playing_queue">Clear playing queue</string>
|
||||||
<string name="action_clear_playlist">Clear playlist</string>
|
<string name="action_clear_playlist">Clear playlist</string>
|
||||||
|
|
||||||
<string name="action_cycle_repeat">Cycle repeat mode</string>
|
<string name="action_cycle_repeat">Cycle repeat mode</string>
|
||||||
|
|
||||||
<string name="action_delete">Delete</string>
|
<string name="action_delete">Delete</string>
|
||||||
<string name="action_delete_from_device">Delete from device</string>
|
<string name="action_delete_from_device">Delete from device</string>
|
||||||
|
|
||||||
<string name="action_details">Details</string>
|
<string name="action_details">Details</string>
|
||||||
|
|
||||||
<string name="action_go_to_album">Go to album</string>
|
<string name="action_go_to_album">Go to album</string>
|
||||||
<string name="action_go_to_artist">Go to artist</string>
|
<string name="action_go_to_artist">Go to artist</string>
|
||||||
<string name="action_go_to_genre">Go to genre</string>
|
<string name="action_go_to_genre">Go to genre</string>
|
||||||
<string name="action_go_to_start_directory">Go to start directory</string>
|
<string name="action_go_to_start_directory">Go to start directory</string>
|
||||||
|
|
||||||
<string name="action_grant">Grant</string>
|
<string name="action_grant">Grant</string>
|
||||||
|
|
||||||
<string name="action_grid_size">Grid size</string>
|
<string name="action_grid_size">Grid size</string>
|
||||||
<string name="action_grid_size_land">Grid size (land)</string>
|
<string name="action_grid_size_land">Grid size (land)</string>
|
||||||
|
|
||||||
<string name="action_new_playlist">New playlist</string>
|
<string name="action_new_playlist">New playlist</string>
|
||||||
|
|
||||||
<string name="action_next">Next</string>
|
<string name="action_next">Next</string>
|
||||||
|
|
||||||
<string name="action_play">Play</string>
|
<string name="action_play">Play</string>
|
||||||
<string name="action_play_all">Play all</string>
|
<string name="action_play_all">Play all</string>
|
||||||
<string name="action_play_next">Play next</string>
|
<string name="action_play_next">Play next</string>
|
||||||
<string name="action_play_pause">Play/Pause</string>
|
<string name="action_play_pause">Play/Pause</string>
|
||||||
|
|
||||||
<string name="action_previous">Previous</string>
|
<string name="action_previous">Previous</string>
|
||||||
|
|
||||||
<string name="action_remove_from_favorites">Remove from favorites</string>
|
<string name="action_remove_from_favorites">Remove from favorites</string>
|
||||||
<string name="action_remove_from_playing_queue">Remove from playing queue</string>
|
<string name="action_remove_from_playing_queue">Remove from playing queue</string>
|
||||||
<string name="action_remove_from_playlist">Remove from playlist</string>
|
<string name="action_remove_from_playlist">Remove from playlist</string>
|
||||||
|
|
||||||
<string name="action_rename">Rename</string>
|
<string name="action_rename">Rename</string>
|
||||||
|
|
||||||
<string name="action_save_playing_queue">Save playing queue</string>
|
<string name="action_save_playing_queue">Save playing queue</string>
|
||||||
|
|
||||||
<string name="action_scan">Scan</string>
|
<string name="action_scan">Scan</string>
|
||||||
|
|
||||||
<string name="action_search">Search</string>
|
<string name="action_search">Search</string>
|
||||||
|
|
||||||
<string name="action_set">Start</string>
|
<string name="action_set">Start</string>
|
||||||
<string name="action_set_as_ringtone">Set as ringtone</string>
|
<string name="action_set_as_ringtone">Set as ringtone</string>
|
||||||
<string name="action_set_as_start_directory">Set as start directory</string>
|
<string name="action_set_as_start_directory">Set as start directory</string>
|
||||||
|
|
||||||
<string name="action_settings">"Settings"</string>
|
<string name="action_settings">"Settings"</string>
|
||||||
|
|
||||||
<string name="action_share">Share</string>
|
<string name="action_share">Share</string>
|
||||||
|
|
||||||
<string name="action_shuffle_all">Shuffle all</string>
|
<string name="action_shuffle_all">Shuffle all</string>
|
||||||
<string name="action_shuffle_playlist">Shuffle playlist</string>
|
<string name="action_shuffle_playlist">Shuffle playlist</string>
|
||||||
|
|
||||||
<string name="action_sleep_timer">Sleep timer</string>
|
<string name="action_sleep_timer">Sleep timer</string>
|
||||||
|
|
||||||
<string name="action_sort_order">Sort order</string>
|
<string name="action_sort_order">Sort order</string>
|
||||||
|
|
||||||
<string name="action_tag_editor">Tag editor</string>
|
<string name="action_tag_editor">Tag editor</string>
|
||||||
|
|
||||||
<string name="action_toggle_favorite">Toggle favorite</string>
|
<string name="action_toggle_favorite">Toggle favorite</string>
|
||||||
<string name="action_toggle_shuffle">Toggle shuffle mode</string>
|
<string name="action_toggle_shuffle">Toggle shuffle mode</string>
|
||||||
|
|
||||||
<string name="adaptive">Adaptive</string>
|
<string name="adaptive">Adaptive</string>
|
||||||
|
|
||||||
<string name="add_action">Add</string>
|
<string name="add_action">Add</string>
|
||||||
|
|
||||||
<string name="add_lyrics">Add lyrics</string>
|
<string name="add_lyrics">Add lyrics</string>
|
||||||
|
|
||||||
<string name="add_photo">Add \nphoto</string>
|
<string name="add_photo">Add \nphoto</string>
|
||||||
|
|
||||||
<string name="add_playlist_title">"Add to playlist"</string>
|
<string name="add_playlist_title">"Add to playlist"</string>
|
||||||
|
|
||||||
<string name="add_time_framed_lryics">Add time frame lyrics</string>
|
<string name="add_time_framed_lryics">Add time frame lyrics</string>
|
||||||
|
|
||||||
<string name="added_title_to_playing_queue">"Added 1 title to the playing queue."</string>
|
<string name="added_title_to_playing_queue">"Added 1 title to the playing queue."</string>
|
||||||
|
|
||||||
<string name="added_x_titles_to_playing_queue">Added %1$d titles to the playing queue.</string>
|
<string name="added_x_titles_to_playing_queue">Added %1$d titles to the playing queue.</string>
|
||||||
|
|
||||||
<string name="album">Album</string>
|
<string name="album">Album</string>
|
||||||
|
|
||||||
<string name="album_artist">Album artist</string>
|
<string name="album_artist">Album artist</string>
|
||||||
|
|
||||||
<string name="album_or_artist_empty">The title or artist is empty.</string>
|
<string name="album_or_artist_empty">The title or artist is empty.</string>
|
||||||
|
|
||||||
<string name="albums">Albums</string>
|
<string name="albums">Albums</string>
|
||||||
|
|
||||||
|
|
||||||
<string name="always">Always</string>
|
<string name="always">Always</string>
|
||||||
|
|
||||||
<string name="app_share">Hey check out this cool music player at: https://play.google.com/store/apps/details?id=%s</string>
|
<string name="app_share">Hey check out this cool music player at: https://play.google.com/store/apps/details?id=%s</string>
|
||||||
|
|
||||||
<string name="app_shortcut_shuffle_all_short">Shuffle</string>
|
<string name="app_shortcut_shuffle_all_short">Shuffle</string>
|
||||||
<string name="app_shortcut_top_tracks_short">Top Tracks</string>
|
<string name="app_shortcut_top_tracks_short">Top Tracks</string>
|
||||||
|
|
||||||
<string name="app_widget_big_name">Retro music - Big</string>
|
<string name="app_widget_big_name">Retro music - Big</string>
|
||||||
<string name="app_widget_card_name">Retro music - Card</string>
|
<string name="app_widget_card_name">Retro music - Card</string>
|
||||||
<string name="app_widget_classic_name">Retro music - Classic</string>
|
<string name="app_widget_classic_name">Retro music - Classic</string>
|
||||||
|
@ -84,6 +116,7 @@
|
||||||
<string name="artists">Artists</string>
|
<string name="artists">Artists</string>
|
||||||
|
|
||||||
<string name="audio_focus_denied">Audio focus denied.</string>
|
<string name="audio_focus_denied">Audio focus denied.</string>
|
||||||
|
|
||||||
<string name="audio_settings_summary">Change the sound settings and adjust the equalizer controls</string>
|
<string name="audio_settings_summary">Change the sound settings and adjust the equalizer controls</string>
|
||||||
|
|
||||||
<string name="auto">Auto</string>
|
<string name="auto">Auto</string>
|
||||||
|
@ -101,6 +134,7 @@
|
||||||
<string name="blacklist">Blacklist</string>
|
<string name="blacklist">Blacklist</string>
|
||||||
|
|
||||||
<string name="blur">Blur</string>
|
<string name="blur">Blur</string>
|
||||||
|
|
||||||
<string name="blur_card">Blur Card</string>
|
<string name="blur_card">Blur Card</string>
|
||||||
|
|
||||||
<string name="bug_report_failed">Unable to send report</string>
|
<string name="bug_report_failed">Unable to send report</string>
|
||||||
|
@ -123,11 +157,15 @@
|
||||||
<string name="cancel_current_timer">Cancel</string>
|
<string name="cancel_current_timer">Cancel</string>
|
||||||
|
|
||||||
<string name="card">Card</string>
|
<string name="card">Card</string>
|
||||||
|
|
||||||
<string name="card_circular_style">Circular</string>
|
<string name="card_circular_style">Circular</string>
|
||||||
|
|
||||||
<string name="card_color_style">Colored Card</string>
|
<string name="card_color_style">Colored Card</string>
|
||||||
|
|
||||||
<string name="card_style">Card</string>
|
<string name="card_style">Card</string>
|
||||||
|
|
||||||
<string name="carousal">Carousel</string>
|
<string name="carousal">Carousel</string>
|
||||||
|
|
||||||
<string name="carousal_effect_on_now_playing_screen">Carousel effect on the now playing screen</string>
|
<string name="carousal_effect_on_now_playing_screen">Carousel effect on the now playing screen</string>
|
||||||
|
|
||||||
<string name="cascading">Cascading</string>
|
<string name="cascading">Cascading</string>
|
||||||
|
@ -135,6 +173,7 @@
|
||||||
<string name="cast">Cast</string>
|
<string name="cast">Cast</string>
|
||||||
|
|
||||||
<string name="changelog">Changelog</string>
|
<string name="changelog">Changelog</string>
|
||||||
|
|
||||||
<string name="changelog_summary">Changelog maintained on the Telegram channel</string>
|
<string name="changelog_summary">Changelog maintained on the Telegram channel</string>
|
||||||
|
|
||||||
<string name="circular">Circular</string>
|
<string name="circular">Circular</string>
|
||||||
|
@ -142,15 +181,20 @@
|
||||||
<string name="classic">Classic</string>
|
<string name="classic">Classic</string>
|
||||||
|
|
||||||
<string name="clear_action">Clear</string>
|
<string name="clear_action">Clear</string>
|
||||||
|
|
||||||
<string name="clear_app_data">Clear app data</string>
|
<string name="clear_app_data">Clear app data</string>
|
||||||
|
|
||||||
<string name="clear_blacklist">Clear blacklist</string>
|
<string name="clear_blacklist">Clear blacklist</string>
|
||||||
|
|
||||||
<string name="clear_playing_queue">Clear queue</string>
|
<string name="clear_playing_queue">Clear queue</string>
|
||||||
|
|
||||||
<string name="clear_playlist_title">Clear playlist</string>
|
<string name="clear_playlist_title">Clear playlist</string>
|
||||||
<string name="clear_playlist_x"><![CDATA[Clear the playlist <b>%1$s</b>? This can\u2019t be undone!]]></string>
|
<string name="clear_playlist_x"><![CDATA[Clear the playlist <b>%1$s</b>? This can\u2019t be undone!]]></string>
|
||||||
|
|
||||||
<string name="close_notification">Close</string>
|
<string name="close_notification">Close</string>
|
||||||
|
|
||||||
<string name="color">Color</string>
|
<string name="color">Color</string>
|
||||||
|
|
||||||
<string name="color_theme_name">Color</string>
|
<string name="color_theme_name">Color</string>
|
||||||
|
|
||||||
<string name="colors">Colors</string>
|
<string name="colors">Colors</string>
|
||||||
|
@ -178,13 +222,16 @@
|
||||||
|
|
||||||
<string name="delete_playlist_title">Delete playlist</string>
|
<string name="delete_playlist_title">Delete playlist</string>
|
||||||
<string name="delete_playlist_x"><![CDATA[Delete the playlist <b>%1$s</b>?]]></string>
|
<string name="delete_playlist_x"><![CDATA[Delete the playlist <b>%1$s</b>?]]></string>
|
||||||
|
|
||||||
<string name="delete_playlists_title">Delete playlists</string>
|
<string name="delete_playlists_title">Delete playlists</string>
|
||||||
|
|
||||||
<string name="delete_song_title">Delete song</string>
|
<string name="delete_song_title">Delete song</string>
|
||||||
<string name="delete_song_x"><![CDATA[Delete the song <b>%1$s</b>?]]></string>
|
<string name="delete_song_x"><![CDATA[Delete the song <b>%1$s</b>?]]></string>
|
||||||
|
|
||||||
<string name="delete_songs_title">Delete songs</string>
|
<string name="delete_songs_title">Delete songs</string>
|
||||||
|
|
||||||
<string name="delete_x_playlists"><![CDATA[Delete <b>%1$d</b> playlists?]]></string>
|
<string name="delete_x_playlists"><![CDATA[Delete <b>%1$d</b> playlists?]]></string>
|
||||||
<string name="delete_x_songs"><![CDATA[Delete <b>%1$d</b> songs?]]></string>
|
<string name="delete_x_songs"><![CDATA[Delete <b>%1$d</b> songs?]]></string>
|
||||||
|
|
||||||
<string name="deleted_x_songs">Deleted %1$d songs.</string>
|
<string name="deleted_x_songs">Deleted %1$d songs.</string>
|
||||||
|
|
||||||
<string name="deleting_songs">Deleting songs</string>
|
<string name="deleting_songs">Deleting songs</string>
|
||||||
|
@ -196,12 +243,14 @@
|
||||||
<string name="device_info">Device info</string>
|
<string name="device_info">Device info</string>
|
||||||
|
|
||||||
<string name="dialog_message_set_ringtone">Allow Retro Music to modify audio settings</string>
|
<string name="dialog_message_set_ringtone">Allow Retro Music to modify audio settings</string>
|
||||||
|
|
||||||
<string name="dialog_title_set_ringtone">Set ringtone</string>
|
<string name="dialog_title_set_ringtone">Set ringtone</string>
|
||||||
|
|
||||||
<string name="do_you_want_to_clear_the_blacklist">Do you want to clear the blacklist?</string>
|
<string name="do_you_want_to_clear_the_blacklist">Do you want to clear the blacklist?</string>
|
||||||
<string name="do_you_want_to_remove_from_the_blacklist"><![CDATA[Do you want to remove <b>%1$s</b> from the blacklist?]]></string>
|
<string name="do_you_want_to_remove_from_the_blacklist"><![CDATA[Do you want to remove <b>%1$s</b> from the blacklist?]]></string>
|
||||||
|
|
||||||
<string name="donate">Donate</string>
|
<string name="donate">Donate</string>
|
||||||
|
|
||||||
<string name="donate_summary">If you think I deserve to get paid for my work, you can leave some money here</string>
|
<string name="donate_summary">If you think I deserve to get paid for my work, you can leave some money here</string>
|
||||||
|
|
||||||
<string name="donation_header">Buy me a:</string>
|
<string name="donation_header">Buy me a:</string>
|
||||||
|
@ -209,6 +258,7 @@
|
||||||
<string name="download_from_last_fm">Download from Last.fm</string>
|
<string name="download_from_last_fm">Download from Last.fm</string>
|
||||||
|
|
||||||
<string name="edit">Edit</string>
|
<string name="edit">Edit</string>
|
||||||
|
|
||||||
<string name="edit_cover">Edit cover</string>
|
<string name="edit_cover">Edit cover</string>
|
||||||
|
|
||||||
<string name="empty">Empty</string>
|
<string name="empty">Empty</string>
|
||||||
|
@ -220,7 +270,6 @@
|
||||||
<string name="faq">FAQ</string>
|
<string name="faq">FAQ</string>
|
||||||
|
|
||||||
<string name="favorites">Favorites</string>
|
<string name="favorites">Favorites</string>
|
||||||
<string name="favorites_songs">You\'re most favorites songs</string>
|
|
||||||
|
|
||||||
<string name="finish_last_song">Finish last song</string>
|
<string name="finish_last_song">Finish last song</string>
|
||||||
|
|
||||||
|
@ -235,6 +284,7 @@
|
||||||
<string name="for_you">For you</string>
|
<string name="for_you">For you</string>
|
||||||
|
|
||||||
<string name="full">Full</string>
|
<string name="full">Full</string>
|
||||||
|
|
||||||
<string name="full_card">Full card</string>
|
<string name="full_card">Full card</string>
|
||||||
|
|
||||||
<string name="general_settings_summary">Change the theme and colors of the app</string>
|
<string name="general_settings_summary">Change the theme and colors of the app</string>
|
||||||
|
@ -256,6 +306,7 @@
|
||||||
<string name="grid_size_6">6</string>
|
<string name="grid_size_6">6</string>
|
||||||
<string name="grid_size_7">7</string>
|
<string name="grid_size_7">7</string>
|
||||||
<string name="grid_size_8">8</string>
|
<string name="grid_size_8">8</string>
|
||||||
|
|
||||||
<string name="grid_style_label"><![CDATA[Grids & Style]]></string>
|
<string name="grid_style_label"><![CDATA[Grids & Style]]></string>
|
||||||
|
|
||||||
<string name="hinge">Hinge</string>
|
<string name="hinge">Hinge</string>
|
||||||
|
@ -267,7 +318,9 @@
|
||||||
<string name="horizontal_flip">Horizontal flip</string>
|
<string name="horizontal_flip">Horizontal flip</string>
|
||||||
|
|
||||||
<string name="image">Image</string>
|
<string name="image">Image</string>
|
||||||
|
|
||||||
<string name="image_gradient">Gradient image</string>
|
<string name="image_gradient">Gradient image</string>
|
||||||
|
|
||||||
<string name="image_settings_summary">Change artist image download settings</string>
|
<string name="image_settings_summary">Change artist image download settings</string>
|
||||||
|
|
||||||
<string name="inserted_x_songs_into_playlist_x">Inserted %1$d songs into the playlist %2$s.</string>
|
<string name="inserted_x_songs_into_playlist_x">Inserted %1$d songs into the playlist %2$s.</string>
|
||||||
|
@ -278,21 +331,28 @@
|
||||||
<string name="keyboard">Keyboard</string>
|
<string name="keyboard">Keyboard</string>
|
||||||
|
|
||||||
<string name="label_bit_rate">Bitrate</string>
|
<string name="label_bit_rate">Bitrate</string>
|
||||||
|
|
||||||
<string name="label_file_format">Format</string>
|
<string name="label_file_format">Format</string>
|
||||||
<string name="label_file_name">File name</string>
|
<string name="label_file_name">File name</string>
|
||||||
<string name="label_file_path">File path</string>
|
<string name="label_file_path">File path</string>
|
||||||
<string name="label_file_size">Size</string>
|
<string name="label_file_size">Size</string>
|
||||||
|
|
||||||
|
<string name="label_more_from">More from %s</string>
|
||||||
|
|
||||||
<string name="label_sampling_rate">Sampling rate</string>
|
<string name="label_sampling_rate">Sampling rate</string>
|
||||||
|
|
||||||
<string name="label_track_length">Length</string>
|
<string name="label_track_length">Length</string>
|
||||||
|
|
||||||
<string name="labeled">Labeled</string>
|
<string name="labeled">Labeled</string>
|
||||||
|
|
||||||
<string name="last_added">Last added</string>
|
<string name="last_added">Last added</string>
|
||||||
|
|
||||||
<string name="last_song">Last song</string>
|
<string name="last_song">Last song</string>
|
||||||
|
|
||||||
<string name="lets_play_something">Let\'s play some music</string>
|
<string name="lets_play_something">Let\'s play some music</string>
|
||||||
|
|
||||||
<string name="library">Library</string>
|
<string name="library">Library</string>
|
||||||
|
|
||||||
<string name="library_categories">Library categories</string>
|
<string name="library_categories">Library categories</string>
|
||||||
|
|
||||||
<string name="licenses">Licenses</string>
|
<string name="licenses">Licenses</string>
|
||||||
|
@ -312,36 +372,49 @@
|
||||||
<string name="material">Material</string>
|
<string name="material">Material</string>
|
||||||
|
|
||||||
<string name="md_error_label">Error</string>
|
<string name="md_error_label">Error</string>
|
||||||
|
|
||||||
<string name="md_storage_perm_error">Permission error</string>
|
<string name="md_storage_perm_error">Permission error</string>
|
||||||
|
|
||||||
<string name="most_played_albums">Most played albums</string>
|
|
||||||
<string name="most_played_artists">Most played artists</string>
|
|
||||||
|
|
||||||
<string name="my_name">Name</string>
|
<string name="my_name">Name</string>
|
||||||
|
|
||||||
<string name="my_top_tracks">Most played</string>
|
<string name="my_top_tracks">Most played</string>
|
||||||
|
|
||||||
<string name="never">Never</string>
|
<string name="never">Never</string>
|
||||||
|
|
||||||
<string name="new_banner_photo">New banner photo</string>
|
<string name="new_banner_photo">New banner photo</string>
|
||||||
|
|
||||||
<string name="new_playlist_title">New playlist</string>
|
<string name="new_playlist_title">New playlist</string>
|
||||||
|
|
||||||
<string name="new_profile_photo">New profile photo</string>
|
<string name="new_profile_photo">New profile photo</string>
|
||||||
|
|
||||||
<string name="new_start_directory">%s is the new start directory.</string>
|
<string name="new_start_directory">%s is the new start directory.</string>
|
||||||
|
|
||||||
<string name="next_song">Next Song</string>
|
<string name="next_song">Next Song</string>
|
||||||
|
|
||||||
<string name="no_albums">You have no albums</string>
|
<string name="no_albums">You have no albums</string>
|
||||||
|
|
||||||
<string name="no_artists">You have no artists</string>
|
<string name="no_artists">You have no artists</string>
|
||||||
|
|
||||||
<string name="no_audio_ID">"Play a song first, then try again."</string>
|
<string name="no_audio_ID">"Play a song first, then try again."</string>
|
||||||
|
|
||||||
<string name="no_equalizer">No equalizer found</string>
|
<string name="no_equalizer">No equalizer found</string>
|
||||||
|
|
||||||
<string name="no_genres">You have no genres</string>
|
<string name="no_genres">You have no genres</string>
|
||||||
|
|
||||||
<string name="no_lyrics_found">No lyrics found</string>
|
<string name="no_lyrics_found">No lyrics found</string>
|
||||||
|
|
||||||
<string name="no_playlists">You have no playlists</string>
|
<string name="no_playlists">You have no playlists</string>
|
||||||
|
|
||||||
<string name="no_purchase_found">No purchase found.</string>
|
<string name="no_purchase_found">No purchase found.</string>
|
||||||
|
|
||||||
<string name="no_results">No results</string>
|
<string name="no_results">No results</string>
|
||||||
|
|
||||||
<string name="no_songs">You have no songs</string>
|
<string name="no_songs">You have no songs</string>
|
||||||
|
|
||||||
<string name="normal">Normal</string>
|
<string name="normal">Normal</string>
|
||||||
|
|
||||||
<string name="normal_lyrics">Normal lyrics</string>
|
<string name="normal_lyrics">Normal lyrics</string>
|
||||||
|
|
||||||
<string name="normal_style">Normal</string>
|
<string name="normal_style">Normal</string>
|
||||||
|
|
||||||
<string name="not_listed_in_media_store"><![CDATA[<b>%s</b> is not listed in the media store.]]></string>
|
<string name="not_listed_in_media_store"><![CDATA[<b>%s</b> is not listed in the media store.]]></string>
|
||||||
|
@ -349,6 +422,7 @@
|
||||||
<string name="nothing_to_scan">Nothing to scan.</string>
|
<string name="nothing_to_scan">Nothing to scan.</string>
|
||||||
|
|
||||||
<string name="notification">Notification</string>
|
<string name="notification">Notification</string>
|
||||||
|
|
||||||
<string name="notification_settings_summary">Customize the notification style</string>
|
<string name="notification_settings_summary">Customize the notification style</string>
|
||||||
|
|
||||||
<string name="now_playing">Now playing</string>
|
<string name="now_playing">Now playing</string>
|
||||||
|
@ -375,9 +449,11 @@
|
||||||
<string name="permissions_denied">Permissions denied.</string>
|
<string name="permissions_denied">Permissions denied.</string>
|
||||||
|
|
||||||
<string name="personalize">Personalize</string>
|
<string name="personalize">Personalize</string>
|
||||||
|
|
||||||
<string name="personalize_settings_summary">Customize your now playing and UI controls</string>
|
<string name="personalize_settings_summary">Customize your now playing and UI controls</string>
|
||||||
|
|
||||||
<string name="pick_from_local_storage">Pick from local storage</string>
|
<string name="pick_from_local_storage">Pick from local storage</string>
|
||||||
|
|
||||||
<string name="pick_image_intent_text">Pick image</string>
|
<string name="pick_image_intent_text">Pick image</string>
|
||||||
|
|
||||||
<string name="pinterest_page">Pinterest</string>
|
<string name="pinterest_page">Pinterest</string>
|
||||||
|
@ -389,16 +465,24 @@
|
||||||
<string name="playing_notification_name">Playing notification</string>
|
<string name="playing_notification_name">Playing notification</string>
|
||||||
|
|
||||||
<string name="playlist_empty_text">Empty playlist</string>
|
<string name="playlist_empty_text">Empty playlist</string>
|
||||||
|
|
||||||
<string name="playlist_is_empty">Playlist is empty</string>
|
<string name="playlist_is_empty">Playlist is empty</string>
|
||||||
|
|
||||||
<string name="playlist_name_empty">Playlist name</string>
|
<string name="playlist_name_empty">Playlist name</string>
|
||||||
|
|
||||||
<string name="playlists">Playlists</string>
|
<string name="playlists">Playlists</string>
|
||||||
|
|
||||||
<string name="pref_album_detail_style">Album detail style</string>
|
<string name="pref_album_detail_style">Album detail style</string>
|
||||||
|
|
||||||
<string name="pref_blur_amount_summary">Amount of blur applied for blur themes, lower is faster</string>
|
<string name="pref_blur_amount_summary">Amount of blur applied for blur themes, lower is faster</string>
|
||||||
<string name="pref_blur_amount_title">Blur amount</string>
|
<string name="pref_blur_amount_title">Blur amount</string>
|
||||||
|
|
||||||
|
<string name="pref_dialog_corner_summary">Adjust the bottom sheet dialog corners</string>
|
||||||
<string name="pref_dialog_corner_title">Dialog corner</string>
|
<string name="pref_dialog_corner_title">Dialog corner</string>
|
||||||
|
|
||||||
|
<string name="pref_filter_song_summary">Filter songs by length</string>
|
||||||
<string name="pref_filter_song_title">Filter song duration</string>
|
<string name="pref_filter_song_title">Filter song duration</string>
|
||||||
|
|
||||||
<string name="pref_header_album">Album style</string>
|
<string name="pref_header_album">Album style</string>
|
||||||
<string name="pref_header_audio">Audio</string>
|
<string name="pref_header_audio">Audio</string>
|
||||||
<string name="pref_header_controls">Controls</string>
|
<string name="pref_header_controls">Controls</string>
|
||||||
|
@ -407,14 +491,17 @@
|
||||||
<string name="pref_header_library">Library</string>
|
<string name="pref_header_library">Library</string>
|
||||||
<string name="pref_header_lockscreen">Lockscreen</string>
|
<string name="pref_header_lockscreen">Lockscreen</string>
|
||||||
<string name="pref_header_playlists">Playlists</string>
|
<string name="pref_header_playlists">Playlists</string>
|
||||||
|
|
||||||
<string name="pref_keep_pause_on_zero_volume_summary">Pauses the song when the volume decreases to zero and starts playing back when the volume level rises. Also works outside the app</string>
|
<string name="pref_keep_pause_on_zero_volume_summary">Pauses the song when the volume decreases to zero and starts playing back when the volume level rises. Also works outside the app</string>
|
||||||
<string name="pref_keep_pause_on_zero_volume_title">Pause on zero</string>
|
<string name="pref_keep_pause_on_zero_volume_title">Pause on zero</string>
|
||||||
<string name="pref_keep_screen_on_summary">Keep in mind that enabling this feature may affect battery life</string>
|
<string name="pref_keep_screen_on_summary">Keep in mind that enabling this feature may affect battery life</string>
|
||||||
<string name="pref_keep_screen_on_title">Keep the screen on</string>
|
<string name="pref_keep_screen_on_title">Keep the screen on</string>
|
||||||
|
|
||||||
<string name="pref_now_playing_screen_summary">Click to open with or slide to without transparent navigation of now playing screen</string>
|
<string name="pref_now_playing_screen_summary">Click to open with or slide to without transparent navigation of now playing screen</string>
|
||||||
<string name="pref_now_playing_screen_title">Click or Slide</string>
|
<string name="pref_now_playing_screen_title">Click or Slide</string>
|
||||||
|
|
||||||
<string name="pref_snow_fall_title">Snow fall effect</string>
|
<string name="pref_snow_fall_title">Snow fall effect</string>
|
||||||
|
|
||||||
<string name="pref_summary_album_art_on_lockscreen">Use the currently playing song album cover as the lockscreen wallpaper</string>
|
<string name="pref_summary_album_art_on_lockscreen">Use the currently playing song album cover as the lockscreen wallpaper</string>
|
||||||
<string name="pref_summary_audio_ducking">Lower the volume when a system sound is played or a notification is received</string>
|
<string name="pref_summary_audio_ducking">Lower the volume when a system sound is played or a notification is received</string>
|
||||||
<string name="pref_summary_blacklist">The content of blacklisted folders is hidden from your library.</string>
|
<string name="pref_summary_blacklist">The content of blacklisted folders is hidden from your library.</string>
|
||||||
|
@ -441,6 +528,7 @@
|
||||||
<string name="pref_summary_toggle_headset">Start playing immediately after headphones are connected</string>
|
<string name="pref_summary_toggle_headset">Start playing immediately after headphones are connected</string>
|
||||||
<string name="pref_summary_toggle_shuffle">Shuffle mode will turn off when playing a new list of songs</string>
|
<string name="pref_summary_toggle_shuffle">Shuffle mode will turn off when playing a new list of songs</string>
|
||||||
<string name="pref_summary_toggle_volume">If enough space is available, show volume controls in the now playing screen</string>
|
<string name="pref_summary_toggle_volume">If enough space is available, show volume controls in the now playing screen</string>
|
||||||
|
|
||||||
<string name="pref_title_album_art_on_lockscreen">Show album cover</string>
|
<string name="pref_title_album_art_on_lockscreen">Show album cover</string>
|
||||||
<string name="pref_title_album_cover_style">Album cover theme</string>
|
<string name="pref_title_album_cover_style">Album cover theme</string>
|
||||||
<string name="pref_title_album_cover_transform">Album cover skip</string>
|
<string name="pref_title_album_cover_transform">Album cover skip</string>
|
||||||
|
@ -487,34 +575,44 @@
|
||||||
<string name="profile">Profile</string>
|
<string name="profile">Profile</string>
|
||||||
|
|
||||||
<string name="purchase">Purchase</string>
|
<string name="purchase">Purchase</string>
|
||||||
|
|
||||||
<string name="purchase_summary">*Think before buying, don\'t ask for refund.</string>
|
<string name="purchase_summary">*Think before buying, don\'t ask for refund.</string>
|
||||||
|
|
||||||
<string name="queue">Queue</string>
|
<string name="queue">Queue</string>
|
||||||
|
|
||||||
<string name="rate_app">Rate the app</string>
|
<string name="rate_app">Rate the app</string>
|
||||||
|
|
||||||
<string name="rate_on_google_play_summary">Love this app? Let us know in the Google Play Store how we can make it even better</string>
|
<string name="rate_on_google_play_summary">Love this app? Let us know in the Google Play Store how we can make it even better</string>
|
||||||
|
|
||||||
<string name="recent_added_albums">Recently added albums</string>
|
|
||||||
<string name="recent_added_artists">Recently added artists</string>
|
|
||||||
<string name="recent_albums">Recent albums</string>
|
<string name="recent_albums">Recent albums</string>
|
||||||
|
|
||||||
<string name="recent_artists">Recent artists</string>
|
<string name="recent_artists">Recent artists</string>
|
||||||
|
|
||||||
<string name="remove_action">Remove</string>
|
<string name="remove_action">Remove</string>
|
||||||
|
|
||||||
<string name="remove_banner_photo">Remove banner photo</string>
|
<string name="remove_banner_photo">Remove banner photo</string>
|
||||||
|
|
||||||
<string name="remove_cover">Remove cover</string>
|
<string name="remove_cover">Remove cover</string>
|
||||||
|
|
||||||
<string name="remove_from_blacklist">Remove from blacklist</string>
|
<string name="remove_from_blacklist">Remove from blacklist</string>
|
||||||
|
|
||||||
<string name="remove_profile_photo">Remove profile photo</string>
|
<string name="remove_profile_photo">Remove profile photo</string>
|
||||||
|
|
||||||
<string name="remove_song_from_playlist_title">Remove song from playlist</string>
|
<string name="remove_song_from_playlist_title">Remove song from playlist</string>
|
||||||
<string name="remove_song_x_from_playlist"><![CDATA[Remove the song <b>%1$s</b> from the playlist?]]></string>
|
<string name="remove_song_x_from_playlist"><![CDATA[Remove the song <b>%1$s</b> from the playlist?]]></string>
|
||||||
|
|
||||||
<string name="remove_songs_from_playlist_title">Remove songs from playlist</string>
|
<string name="remove_songs_from_playlist_title">Remove songs from playlist</string>
|
||||||
|
|
||||||
<string name="remove_x_songs_from_playlist"><![CDATA[Remove <b>%1$d</b> songs from the playlist?]]></string>
|
<string name="remove_x_songs_from_playlist"><![CDATA[Remove <b>%1$d</b> songs from the playlist?]]></string>
|
||||||
|
|
||||||
<string name="rename_playlist_title">Rename playlist</string>
|
<string name="rename_playlist_title">Rename playlist</string>
|
||||||
|
|
||||||
<string name="report_an_issue">Report an issue</string>
|
<string name="report_an_issue">Report an issue</string>
|
||||||
|
|
||||||
<string name="report_bug">Report bug</string>
|
<string name="report_bug">Report bug</string>
|
||||||
|
|
||||||
<string name="reset_action">Reset</string>
|
<string name="reset_action">Reset</string>
|
||||||
|
|
||||||
<string name="reset_artist_image">Reset artist image</string>
|
<string name="reset_artist_image">Reset artist image</string>
|
||||||
|
|
||||||
<string name="restore">Restore</string>
|
<string name="restore">Restore</string>
|
||||||
|
@ -525,11 +623,14 @@
|
||||||
<string name="restoring_purchase">Restoring purchase…</string>
|
<string name="restoring_purchase">Restoring purchase…</string>
|
||||||
|
|
||||||
<string name="retro_equalizer">Retro Music Equalizer</string>
|
<string name="retro_equalizer">Retro Music Equalizer</string>
|
||||||
|
|
||||||
<string name="retro_music_pro">Retro Music Pro</string>
|
<string name="retro_music_pro">Retro Music Pro</string>
|
||||||
|
|
||||||
<string name="saf_delete_failed">File delete failed: %s</string>
|
<string name="saf_delete_failed">File delete failed: %s</string>
|
||||||
|
|
||||||
<!-- SAF -->
|
<!-- SAF -->
|
||||||
<string name="saf_error_uri">Can\'t get SAF URI</string>
|
<string name="saf_error_uri">Can\'t get SAF URI</string>
|
||||||
|
|
||||||
<string name="saf_guide_slide1_description">Open navigation drawer</string>
|
<string name="saf_guide_slide1_description">Open navigation drawer</string>
|
||||||
<string name="saf_guide_slide1_description_before_o">Enable \'Show SD card\' in overflow menu</string>
|
<string name="saf_guide_slide1_description_before_o">Enable \'Show SD card\' in overflow menu</string>
|
||||||
<!-- SAF guide -->
|
<!-- SAF guide -->
|
||||||
|
@ -538,12 +639,15 @@
|
||||||
<string name="saf_guide_slide2_title">Select your SD card in navigation drawer</string>
|
<string name="saf_guide_slide2_title">Select your SD card in navigation drawer</string>
|
||||||
<string name="saf_guide_slide3_description">Do not open any sub-folders</string>
|
<string name="saf_guide_slide3_description">Do not open any sub-folders</string>
|
||||||
<string name="saf_guide_slide3_title">Tap \'select\' button at the bottom of the screen</string>
|
<string name="saf_guide_slide3_title">Tap \'select\' button at the bottom of the screen</string>
|
||||||
|
|
||||||
<string name="saf_write_failed">File write failed: %s</string>
|
<string name="saf_write_failed">File write failed: %s</string>
|
||||||
|
|
||||||
<string name="save">Save</string>
|
<string name="save">Save</string>
|
||||||
|
|
||||||
<!-- SAF -->
|
<!-- SAF -->
|
||||||
<!-- SAF guide -->
|
<!-- SAF guide -->
|
||||||
<string name="save_playlist_title">Save as file</string>
|
<string name="save_playlist_title">Save as file</string>
|
||||||
|
|
||||||
<string name="save_playlists_title">Save as files</string>
|
<string name="save_playlists_title">Save as files</string>
|
||||||
|
|
||||||
<string name="saved_playlist_to">Saved playlist to %s.</string>
|
<string name="saved_playlist_to">Saved playlist to %s.</string>
|
||||||
|
@ -557,6 +661,7 @@
|
||||||
<string name="search_hint">Search your library…</string>
|
<string name="search_hint">Search your library…</string>
|
||||||
|
|
||||||
<string name="select_all">Select all</string>
|
<string name="select_all">Select all</string>
|
||||||
|
|
||||||
<string name="select_banner_photo">Select banner photo</string>
|
<string name="select_banner_photo">Select banner photo</string>
|
||||||
|
|
||||||
<string name="selected">Selected</string>
|
<string name="selected">Selected</string>
|
||||||
|
@ -564,7 +669,9 @@
|
||||||
<string name="send_crash_log">Send crash log</string>
|
<string name="send_crash_log">Send crash log</string>
|
||||||
|
|
||||||
<string name="set">Set</string>
|
<string name="set">Set</string>
|
||||||
|
|
||||||
<string name="set_artist_image">Set artist image</string>
|
<string name="set_artist_image">Set artist image</string>
|
||||||
|
|
||||||
<string name="set_photo">Set a profile photo</string>
|
<string name="set_photo">Set a profile photo</string>
|
||||||
|
|
||||||
<string name="share_app">Share app</string>
|
<string name="share_app">Share app</string>
|
||||||
|
@ -583,6 +690,7 @@
|
||||||
<string name="social">Social</string>
|
<string name="social">Social</string>
|
||||||
|
|
||||||
<string name="song">Song</string>
|
<string name="song">Song</string>
|
||||||
|
|
||||||
<string name="song_duration">Song duration</string>
|
<string name="song_duration">Song duration</string>
|
||||||
|
|
||||||
<string name="songs">Songs</string>
|
<string name="songs">Songs</string>
|
||||||
|
@ -597,6 +705,7 @@
|
||||||
<string name="sort_order_z_a">Descending</string>
|
<string name="sort_order_z_a">Descending</string>
|
||||||
|
|
||||||
<string name="speech_not_supported">Sorry! Your device doesn\'t support speech input</string>
|
<string name="speech_not_supported">Sorry! Your device doesn\'t support speech input</string>
|
||||||
|
|
||||||
<string name="speech_prompt">Search your library</string>
|
<string name="speech_prompt">Search your library</string>
|
||||||
|
|
||||||
<string name="stack">Stack</string>
|
<string name="stack">Stack</string>
|
||||||
|
@ -624,29 +733,37 @@
|
||||||
<string name="the_audio_file">The audio file</string>
|
<string name="the_audio_file">The audio file</string>
|
||||||
|
|
||||||
<string name="this_month">This month</string>
|
<string name="this_month">This month</string>
|
||||||
|
|
||||||
<string name="this_week">This week</string>
|
<string name="this_week">This week</string>
|
||||||
|
|
||||||
<string name="this_year">This year</string>
|
<string name="this_year">This year</string>
|
||||||
|
|
||||||
<string name="tiny">Tiny</string>
|
<string name="tiny">Tiny</string>
|
||||||
|
|
||||||
<string name="title">Title</string>
|
<string name="title">Title</string>
|
||||||
|
|
||||||
<string name="title_dashboard">Dashboard</string>
|
<string name="title_dashboard">Dashboard</string>
|
||||||
|
|
||||||
<string name="title_good_afternoon">Good afternoon</string>
|
<string name="title_good_afternoon">Good afternoon</string>
|
||||||
<string name="title_good_day">Good day</string>
|
<string name="title_good_day">Good day</string>
|
||||||
<string name="title_good_evening">Good evening</string>
|
<string name="title_good_evening">Good evening</string>
|
||||||
<string name="title_good_morning">Good morning</string>
|
<string name="title_good_morning">Good morning</string>
|
||||||
<string name="title_good_night">Good night</string>
|
<string name="title_good_night">Good night</string>
|
||||||
|
|
||||||
<string name="title_user_info">What\'s Your Name</string>
|
<string name="title_user_info">What\'s Your Name</string>
|
||||||
|
|
||||||
<string name="today">Today</string>
|
<string name="today">Today</string>
|
||||||
|
|
||||||
<string name="top_albums">Top albums</string>
|
<string name="top_albums">Top albums</string>
|
||||||
|
|
||||||
<string name="top_artists">Top artists</string>
|
<string name="top_artists">Top artists</string>
|
||||||
|
|
||||||
<string name="track_hint">"Track (2 for track 2 or 3004 for CD3 track 4)"</string>
|
<string name="track_hint">"Track (2 for track 2 or 3004 for CD3 track 4)"</string>
|
||||||
|
|
||||||
<string name="track_list">Track number</string>
|
<string name="track_list">Track number</string>
|
||||||
|
|
||||||
<string name="translate">Translate</string>
|
<string name="translate">Translate</string>
|
||||||
|
|
||||||
<string name="translate_community">Help us translate the app to your language</string>
|
<string name="translate_community">Help us translate the app to your language</string>
|
||||||
|
|
||||||
<string name="twitter_page">Twitter</string>
|
<string name="twitter_page">Twitter</string>
|
||||||
|
@ -679,19 +796,20 @@
|
||||||
<string name="whats_new">What\'s New</string>
|
<string name="whats_new">What\'s New</string>
|
||||||
|
|
||||||
<string name="window">Window</string>
|
<string name="window">Window</string>
|
||||||
|
|
||||||
<string name="window_corner_edges">Rounded corners</string>
|
<string name="window_corner_edges">Rounded corners</string>
|
||||||
|
|
||||||
<string name="x_has_been_set_as_ringtone">Set %1$s as your ringtone.</string>
|
<string name="x_has_been_set_as_ringtone">Set %1$s as your ringtone.</string>
|
||||||
|
|
||||||
<string name="x_selected">%1$d selected</string>
|
<string name="x_selected">%1$d selected</string>
|
||||||
|
|
||||||
<string name="year">Year</string>
|
<string name="year">Year</string>
|
||||||
|
|
||||||
<string name="you_have_to_select_at_least_one_category">You have to select at least one category.</string>
|
<string name="you_have_to_select_at_least_one_category">You have to select at least one category.</string>
|
||||||
|
|
||||||
<string name="you_will_be_forwarded_to_the_issue_tracker_website">You will be forwarded to the issue tracker website.</string>
|
<string name="you_will_be_forwarded_to_the_issue_tracker_website">You will be forwarded to the issue tracker website.</string>
|
||||||
|
|
||||||
<string name="your_account_data_is_only_used_for_authentication">Your account data is only used for authentication.</string>
|
<string name="your_account_data_is_only_used_for_authentication">Your account data is only used for authentication.</string>
|
||||||
|
<string name="pref_header_advanced">Advanced</string>
|
||||||
<string name="label_more_from">More from %s</string>
|
<string name="pref_header_blacklist">Blacklist</string>
|
||||||
<string name="pref_dialog_corner_summary" >Adjust the bottom sheet dialog corners</string>
|
|
||||||
<string name="pref_filter_song_summary">Filter songs by length</string>
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -48,6 +48,7 @@
|
||||||
<item name="android:textAllCaps">false</item>
|
<item name="android:textAllCaps">false</item>
|
||||||
<item name="android:textSize">20sp</item>
|
<item name="android:textSize">20sp</item>
|
||||||
<item name="android:letterSpacing">0.0125</item>
|
<item name="android:letterSpacing">0.0125</item>
|
||||||
|
<item name="android:textColor">?android:attr/textColorPrimary</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="BigTitleTextAppearanceToolbar">
|
<style name="BigTitleTextAppearanceToolbar">
|
||||||
|
|
|
@ -20,6 +20,7 @@
|
||||||
<item name="roundSelector">@drawable/round_selector</item>
|
<item name="roundSelector">@drawable/round_selector</item>
|
||||||
<item name="rectSelector">@drawable/rect_selector</item>
|
<item name="rectSelector">@drawable/rect_selector</item>
|
||||||
<item name="rectSelectorStrong">@drawable/rect_selector_strong</item>
|
<item name="rectSelectorStrong">@drawable/rect_selector_strong</item>
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Theme.RetroMusic.Base" parent="Theme.MaterialComponents.NoActionBar">
|
<style name="Theme.RetroMusic.Base" parent="Theme.MaterialComponents.NoActionBar">
|
||||||
|
|
|
@ -3,15 +3,45 @@
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||||
<code.name.monkey.appthemehelper.common.prefs.supportv7.ATEPreferenceCategory
|
<code.name.monkey.appthemehelper.common.prefs.supportv7.ATEPreferenceCategory
|
||||||
android:layout="@layout/preference_category_title"
|
android:layout="@layout/preference_category_title"
|
||||||
android:title="Advanced">
|
android:title="@string/pref_header_blacklist">
|
||||||
|
|
||||||
|
<code.name.monkey.retromusic.preferences.BlacklistPreference
|
||||||
|
android:key="blacklist"
|
||||||
|
android:layout="@layout/list_item_view"
|
||||||
|
android:summary="@string/pref_summary_blacklist"
|
||||||
|
android:title="@string/pref_title_blacklist"
|
||||||
|
app:enableCopying="true"
|
||||||
|
app:icon="@drawable/ic_music_note_off_white_24dp" />
|
||||||
|
|
||||||
|
</code.name.monkey.appthemehelper.common.prefs.supportv7.ATEPreferenceCategory>
|
||||||
|
<code.name.monkey.appthemehelper.common.prefs.supportv7.ATEPreferenceCategory
|
||||||
|
android:layout="@layout/preference_category_title"
|
||||||
|
android:title="@string/pref_header_playlists">
|
||||||
|
|
||||||
|
<code.name.monkey.retromusic.preferences.MaterialListPreference
|
||||||
|
android:defaultValue="this_month"
|
||||||
|
android:entries="@array/pref_playlists_last_added_interval_titles"
|
||||||
|
android:entryValues="@array/pref_playlists_last_added_interval_values"
|
||||||
|
android:key="last_added_interval"
|
||||||
|
android:layout="@layout/list_item_view"
|
||||||
|
android:negativeButtonText="@null"
|
||||||
|
android:positiveButtonText="@null"
|
||||||
|
android:title="@string/pref_title_last_added_interval"
|
||||||
|
app:enableCopying="true"
|
||||||
|
app:icon="@drawable/ic_playlist_add_white_24dp" />
|
||||||
|
|
||||||
|
</code.name.monkey.appthemehelper.common.prefs.supportv7.ATEPreferenceCategory>
|
||||||
|
<code.name.monkey.appthemehelper.common.prefs.supportv7.ATEPreferenceCategory
|
||||||
|
android:layout="@layout/preference_category_title"
|
||||||
|
android:title="@string/pref_header_advanced">
|
||||||
|
|
||||||
<code.name.monkey.appthemehelper.common.prefs.supportv7.ATESeekBarPreference
|
<code.name.monkey.appthemehelper.common.prefs.supportv7.ATESeekBarPreference
|
||||||
android:defaultValue="30"
|
android:defaultValue="30"
|
||||||
android:key="filter_song"
|
android:key="filter_song"
|
||||||
android:layout="@layout/list_item_view_seekbar"
|
android:layout="@layout/list_item_view_seekbar"
|
||||||
android:max="60"
|
android:max="60"
|
||||||
android:title="@string/pref_filter_song_title"
|
|
||||||
android:summary="@string/pref_filter_song_summary"
|
android:summary="@string/pref_filter_song_summary"
|
||||||
|
android:title="@string/pref_filter_song_title"
|
||||||
app:enableCopying="true"
|
app:enableCopying="true"
|
||||||
app:icon="@drawable/ic_filter_song_white_24dp"
|
app:icon="@drawable/ic_filter_song_white_24dp"
|
||||||
app:showSeekBarValue="true" />
|
app:showSeekBarValue="true" />
|
||||||
|
|
|
@ -1,16 +0,0 @@
|
||||||
<androidx.preference.PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
|
||||||
<code.name.monkey.appthemehelper.common.prefs.supportv7.ATEPreferenceCategory
|
|
||||||
android:layout="@layout/preference_category_title"
|
|
||||||
android:title="Blacklist">
|
|
||||||
|
|
||||||
<code.name.monkey.retromusic.preferences.BlacklistPreference
|
|
||||||
android:key="blacklist"
|
|
||||||
android:layout="@layout/list_item_view"
|
|
||||||
android:summary="@string/pref_summary_blacklist"
|
|
||||||
android:title="@string/pref_title_blacklist"
|
|
||||||
app:enableCopying="true"
|
|
||||||
app:icon="@drawable/ic_music_note_off_white_24dp" />
|
|
||||||
|
|
||||||
</code.name.monkey.appthemehelper.common.prefs.supportv7.ATEPreferenceCategory>
|
|
||||||
</androidx.preference.PreferenceScreen>
|
|
|
@ -1,5 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<androidx.preference.PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
|
||||||
|
|
||||||
</androidx.preference.PreferenceScreen>
|
|
|
@ -1,22 +0,0 @@
|
||||||
<androidx.preference.PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
|
||||||
|
|
||||||
<code.name.monkey.appthemehelper.common.prefs.supportv7.ATEPreferenceCategory
|
|
||||||
android:layout="@layout/preference_category_title"
|
|
||||||
android:title="@string/pref_header_playlists">
|
|
||||||
|
|
||||||
<code.name.monkey.retromusic.preferences.MaterialListPreference
|
|
||||||
android:defaultValue="this_month"
|
|
||||||
android:entries="@array/pref_playlists_last_added_interval_titles"
|
|
||||||
android:entryValues="@array/pref_playlists_last_added_interval_values"
|
|
||||||
android:key="last_added_interval"
|
|
||||||
android:layout="@layout/list_item_view"
|
|
||||||
android:negativeButtonText="@null"
|
|
||||||
android:positiveButtonText="@null"
|
|
||||||
android:title="@string/pref_title_last_added_interval"
|
|
||||||
app:enableCopying="true"
|
|
||||||
app:icon="@drawable/ic_playlist_add_white_24dp" />
|
|
||||||
|
|
||||||
</code.name.monkey.appthemehelper.common.prefs.supportv7.ATEPreferenceCategory>
|
|
||||||
|
|
||||||
</androidx.preference.PreferenceScreen>
|
|
|
@ -1,5 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<androidx.preference.PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
|
||||||
|
|
||||||
</androidx.preference.PreferenceScreen>
|
|
|
@ -1,6 +1,6 @@
|
||||||
package code.name.monkey.appthemehelper.common;
|
package code.name.monkey.appthemehelper.common;
|
||||||
|
|
||||||
import android.graphics.drawable.ColorDrawable;
|
import android.graphics.Color;
|
||||||
import android.view.Menu;
|
import android.view.Menu;
|
||||||
|
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
|
@ -15,13 +15,11 @@ import code.name.monkey.appthemehelper.util.ToolbarContentTintHelper;
|
||||||
public class ATHToolbarActivity extends ATHActivity {
|
public class ATHToolbarActivity extends ATHActivity {
|
||||||
private Toolbar toolbar;
|
private Toolbar toolbar;
|
||||||
|
|
||||||
public static int getToolbarBackgroundColor(Toolbar toolbar) {
|
public static int getToolbarBackgroundColor(@Nullable Toolbar toolbar) {
|
||||||
if (toolbar != null) {
|
if (toolbar != null) {
|
||||||
if (toolbar.getBackground() instanceof ColorDrawable) {
|
return ATHUtil.INSTANCE.resolveColor(toolbar.getContext(), R.attr.colorSurface);
|
||||||
return ((ColorDrawable) toolbar.getBackground()).getColor();
|
|
||||||
}
|
}
|
||||||
}
|
return Color.BLACK;
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
Loading…
Reference in a new issue