Fixed colors
This commit is contained in:
commit
9672a8a23d
23 changed files with 101 additions and 290 deletions
|
@ -9,6 +9,7 @@ import android.view.View
|
||||||
import androidx.core.app.ShareCompat
|
import androidx.core.app.ShareCompat
|
||||||
import androidx.recyclerview.widget.DefaultItemAnimator
|
import androidx.recyclerview.widget.DefaultItemAnimator
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
|
import code.name.monkey.appthemehelper.util.ATHUtil
|
||||||
import code.name.monkey.appthemehelper.util.ToolbarContentTintHelper
|
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
|
||||||
|
@ -68,8 +69,13 @@ class AboutActivity : AbsBaseActivity(), View.OnClickListener {
|
||||||
|
|
||||||
loadContributors()
|
loadContributors()
|
||||||
setSupportActionBar(toolbar)
|
setSupportActionBar(toolbar)
|
||||||
ToolbarContentTintHelper.colorBackButton(toolbar )
|
toolbar.apply {
|
||||||
version.setSummary ( getAppVersion())
|
setTitleTextColor(ATHUtil.resolveColor(this@AboutActivity, R.attr.colorOnPrimary))
|
||||||
|
setBackgroundColor(ATHUtil.resolveColor(this@AboutActivity, R.attr.colorPrimary))
|
||||||
|
setNavigationOnClickListener { onBackPressed() }
|
||||||
|
ToolbarContentTintHelper.colorBackButton(toolbar)
|
||||||
|
}
|
||||||
|
version.setSummary(getAppVersion())
|
||||||
setUpView()
|
setUpView()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -30,6 +30,7 @@ import java.io.InputStreamReader;
|
||||||
import java.nio.charset.StandardCharsets;
|
import java.nio.charset.StandardCharsets;
|
||||||
|
|
||||||
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.ToolbarContentTintHelper;
|
import code.name.monkey.appthemehelper.util.ToolbarContentTintHelper;
|
||||||
import code.name.monkey.retromusic.R;
|
import code.name.monkey.retromusic.R;
|
||||||
|
@ -61,11 +62,11 @@ public class LicenseActivity extends AbsBaseActivity {
|
||||||
setContentView(R.layout.activity_license);
|
setContentView(R.layout.activity_license);
|
||||||
setStatusbarColorAuto();
|
setStatusbarColorAuto();
|
||||||
setNavigationBarColorPrimary();
|
setNavigationBarColorPrimary();
|
||||||
setTaskDescriptionColorAuto();
|
|
||||||
setLightNavigationBar(true);
|
setLightNavigationBar(true);
|
||||||
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));
|
||||||
WebView webView = findViewById(R.id.license);
|
WebView webView = findViewById(R.id.license);
|
||||||
try {
|
try {
|
||||||
StringBuilder buf = new StringBuilder();
|
StringBuilder buf = new StringBuilder();
|
||||||
|
|
|
@ -29,7 +29,6 @@ abstract class AbsThemeActivity : ATHToolbarActivity(), Runnable {
|
||||||
setTheme(ThemeManager.getThemeResValue(this))
|
setTheme(ThemeManager.getThemeResValue(this))
|
||||||
hideStatusBar()
|
hideStatusBar()
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
//MaterialDialogsUtil.updateMaterialDialogsThemeSingleton(this)
|
|
||||||
|
|
||||||
changeBackgroundShape()
|
changeBackgroundShape()
|
||||||
setImmersiveFullscreen()
|
setImmersiveFullscreen()
|
||||||
|
|
|
@ -3,8 +3,6 @@ package code.name.monkey.retromusic.adapter.song
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import androidx.annotation.LayoutRes
|
import androidx.annotation.LayoutRes
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import code.name.monkey.appthemehelper.util.ATHUtil
|
|
||||||
import code.name.monkey.appthemehelper.util.MaterialUtil
|
|
||||||
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
|
||||||
|
@ -27,13 +25,11 @@ class ShuffleButtonSongAdapter(activity: AppCompatActivity,
|
||||||
if (holder.itemViewType == OFFSET_ITEM) {
|
if (holder.itemViewType == OFFSET_ITEM) {
|
||||||
val viewHolder = holder as ViewHolder
|
val viewHolder = holder as ViewHolder
|
||||||
viewHolder.playAction?.let {
|
viewHolder.playAction?.let {
|
||||||
MaterialUtil.setTint(it, color = ATHUtil.resolveColor(activity, R.attr.cardBackgroundColor))
|
|
||||||
it.setOnClickListener {
|
it.setOnClickListener {
|
||||||
MusicPlayerRemote.openQueue(dataSet, 0, true)
|
MusicPlayerRemote.openQueue(dataSet, 0, true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
viewHolder.shuffleAction?.let {
|
viewHolder.shuffleAction?.let {
|
||||||
MaterialUtil.setTint(button = it, color = ATHUtil.resolveColor(activity, R.attr.cardBackgroundColor))
|
|
||||||
it.setOnClickListener {
|
it.setOnClickListener {
|
||||||
MusicPlayerRemote.openAndShuffleQueue(dataSet, true)
|
MusicPlayerRemote.openAndShuffleQueue(dataSet, true)
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,7 +31,6 @@ abstract class AbsLibraryPagerRecyclerViewCustomGridSizeFragment<A : RecyclerVie
|
||||||
* @see .getGridSize
|
* @see .getGridSize
|
||||||
*/
|
*/
|
||||||
protected val itemLayoutRes: Int
|
protected val itemLayoutRes: Int
|
||||||
@LayoutRes
|
|
||||||
get() = if (getGridSize() > maxGridSizeForList) {
|
get() = if (getGridSize() > maxGridSizeForList) {
|
||||||
R.layout.item_grid
|
R.layout.item_grid
|
||||||
} else R.layout.item_list
|
} else R.layout.item_list
|
||||||
|
@ -124,13 +123,11 @@ abstract class AbsLibraryPagerRecyclerViewCustomGridSizeFragment<A : RecyclerVie
|
||||||
applyRecyclerViewPaddingForLayoutRes(recyclerView(), currentLayoutRes)
|
applyRecyclerViewPaddingForLayoutRes(recyclerView(), currentLayoutRes)
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun applyRecyclerViewPaddingForLayoutRes(recyclerView: RecyclerView,
|
private fun applyRecyclerViewPaddingForLayoutRes(recyclerView: RecyclerView, res: Int) {
|
||||||
@LayoutRes res: Int) {
|
val padding: Int = if (res == R.layout.item_grid) {
|
||||||
val padding: Int
|
(resources.displayMetrics.density * 2).toInt()
|
||||||
if (res == R.layout.item_grid) {
|
|
||||||
padding = (resources.displayMetrics.density * 2).toInt()
|
|
||||||
} else {
|
} else {
|
||||||
padding = 0
|
0
|
||||||
}
|
}
|
||||||
recyclerView.setPadding(padding, padding, padding, padding)
|
recyclerView.setPadding(padding, padding, padding, padding)
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,8 +6,6 @@ import android.view.View
|
||||||
import androidx.fragment.app.Fragment
|
import androidx.fragment.app.Fragment
|
||||||
import code.name.monkey.retromusic.activities.base.AbsMusicServiceActivity
|
import code.name.monkey.retromusic.activities.base.AbsMusicServiceActivity
|
||||||
import code.name.monkey.retromusic.interfaces.MusicServiceEventListener
|
import code.name.monkey.retromusic.interfaces.MusicServiceEventListener
|
||||||
import io.reactivex.subjects.PublishSubject
|
|
||||||
import io.reactivex.subjects.Subject
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by hemanths on 18/08/17.
|
* Created by hemanths on 18/08/17.
|
||||||
|
@ -34,13 +32,13 @@ open class AbsMusicServiceFragment : Fragment(), MusicServiceEventListener {
|
||||||
|
|
||||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||||
super.onViewCreated(view, savedInstanceState)
|
super.onViewCreated(view, savedInstanceState)
|
||||||
playerActivity!!.addMusicServiceEventListener(this)
|
playerActivity?.addMusicServiceEventListener(this)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onDestroyView() {
|
override fun onDestroyView() {
|
||||||
super.onDestroyView()
|
super.onDestroyView()
|
||||||
playerActivity!!.removeMusicServiceEventListener(this)
|
playerActivity?.removeMusicServiceEventListener(this)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onPlayingMetaChanged() {
|
override fun onPlayingMetaChanged() {
|
||||||
|
|
|
@ -2,7 +2,6 @@ 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.SharedPreferences;
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.Menu;
|
import android.view.Menu;
|
||||||
|
@ -38,12 +37,11 @@ import code.name.monkey.retromusic.helper.SortOrder;
|
||||||
import code.name.monkey.retromusic.interfaces.CabHolder;
|
import code.name.monkey.retromusic.interfaces.CabHolder;
|
||||||
import code.name.monkey.retromusic.interfaces.MainActivityFragmentCallbacks;
|
import code.name.monkey.retromusic.interfaces.MainActivityFragmentCallbacks;
|
||||||
import code.name.monkey.retromusic.util.NavigationUtil;
|
import code.name.monkey.retromusic.util.NavigationUtil;
|
||||||
import code.name.monkey.retromusic.util.PreferenceUtil;
|
|
||||||
import code.name.monkey.retromusic.util.RetroColorUtil;
|
import code.name.monkey.retromusic.util.RetroColorUtil;
|
||||||
import code.name.monkey.retromusic.util.RetroUtil;
|
import code.name.monkey.retromusic.util.RetroUtil;
|
||||||
import io.reactivex.disposables.CompositeDisposable;
|
import io.reactivex.disposables.CompositeDisposable;
|
||||||
|
|
||||||
public class LibraryFragment extends AbsMainActivityFragment implements CabHolder, MainActivityFragmentCallbacks, SharedPreferences.OnSharedPreferenceChangeListener {
|
public class LibraryFragment extends AbsMainActivityFragment implements CabHolder, MainActivityFragmentCallbacks {
|
||||||
|
|
||||||
public static final String TAG = "LibraryFragment";
|
public static final String TAG = "LibraryFragment";
|
||||||
private static final String CURRENT_TAB_ID = "current_tab_id";
|
private static final String CURRENT_TAB_ID = "current_tab_id";
|
||||||
|
@ -75,19 +73,18 @@ public class LibraryFragment extends AbsMainActivityFragment implements CabHolde
|
||||||
public void onDestroyView() {
|
public void onDestroyView() {
|
||||||
super.onDestroyView();
|
super.onDestroyView();
|
||||||
disposable.dispose();
|
disposable.dispose();
|
||||||
PreferenceUtil.getInstance(requireActivity()).unregisterOnSharedPreferenceChangedListener(this);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
@Override
|
@Override
|
||||||
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container,
|
public View onCreateView(@NonNull LayoutInflater inflater,
|
||||||
|
@Nullable ViewGroup container,
|
||||||
@Nullable Bundle savedInstanceState) {
|
@Nullable Bundle savedInstanceState) {
|
||||||
View view = inflater.inflate(R.layout.fragment_library, container, false);
|
View view = inflater.inflate(R.layout.fragment_library, container, false);
|
||||||
disposable = new CompositeDisposable();
|
disposable = new CompositeDisposable();
|
||||||
appBarLayout = view.findViewById(R.id.appBarLayout);
|
appBarLayout = view.findViewById(R.id.appBarLayout);
|
||||||
toolbarContainer = view.findViewById(R.id.toolbarContainer);
|
toolbarContainer = view.findViewById(R.id.toolbarContainer);
|
||||||
toolbar = view.findViewById(R.id.toolbar);
|
toolbar = view.findViewById(R.id.toolbar);
|
||||||
PreferenceUtil.getInstance(requireActivity()).registerOnSharedPreferenceChangedListener(this);
|
|
||||||
return view;
|
return view;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -457,11 +454,4 @@ public class LibraryFragment extends AbsMainActivityFragment implements CabHolde
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onSharedPreferenceChanged(@NonNull SharedPreferences sharedPreferences,
|
|
||||||
@NonNull String key) {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
|
@ -1,14 +1,9 @@
|
||||||
package code.name.monkey.retromusic.fragments.player.color
|
package code.name.monkey.retromusic.fragments.player.color
|
||||||
|
|
||||||
import android.animation.ArgbEvaluator
|
|
||||||
import android.animation.ValueAnimator
|
import android.animation.ValueAnimator
|
||||||
import android.annotation.SuppressLint
|
|
||||||
import android.content.Intent
|
|
||||||
import android.graphics.Color
|
import android.graphics.Color
|
||||||
import android.graphics.drawable.Drawable
|
import android.graphics.drawable.Drawable
|
||||||
import android.os.AsyncTask
|
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.text.TextUtils
|
|
||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
|
@ -19,22 +14,24 @@ 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.appthemehelper.util.ToolbarContentTintHelper
|
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.LyricsActivity
|
|
||||||
import code.name.monkey.retromusic.fragments.base.AbsPlayerFragment
|
import code.name.monkey.retromusic.fragments.base.AbsPlayerFragment
|
||||||
import code.name.monkey.retromusic.glide.RetroMusicColoredTarget
|
import code.name.monkey.retromusic.glide.RetroMusicColoredTarget
|
||||||
import code.name.monkey.retromusic.glide.SongGlideRequest
|
import code.name.monkey.retromusic.glide.SongGlideRequest
|
||||||
import code.name.monkey.retromusic.glide.palette.BitmapPaletteWrapper
|
import code.name.monkey.retromusic.glide.palette.BitmapPaletteWrapper
|
||||||
import code.name.monkey.retromusic.helper.MusicPlayerRemote
|
import code.name.monkey.retromusic.helper.MusicPlayerRemote
|
||||||
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.util.MusicUtil
|
|
||||||
import code.name.monkey.retromusic.util.RetroColorUtil
|
import code.name.monkey.retromusic.util.RetroColorUtil
|
||||||
import code.name.monkey.retromusic.util.ViewUtil
|
|
||||||
import com.bumptech.glide.Glide
|
import com.bumptech.glide.Glide
|
||||||
import com.bumptech.glide.request.animation.GlideAnimation
|
import com.bumptech.glide.request.animation.GlideAnimation
|
||||||
import kotlinx.android.synthetic.main.fragment_color_player.*
|
import kotlinx.android.synthetic.main.fragment_color_player.*
|
||||||
|
|
||||||
class ColorFragment : AbsPlayerFragment() {
|
class ColorFragment : AbsPlayerFragment() {
|
||||||
|
|
||||||
|
private var lastColor: Int = 0
|
||||||
|
private var backgroundColor: Int = 0
|
||||||
|
private var playbackControlsFragment: ColorPlaybackControlsFragment? = null
|
||||||
|
private var valueAnimator: ValueAnimator? = null
|
||||||
|
|
||||||
override fun playerToolbar(): Toolbar {
|
override fun playerToolbar(): Toolbar {
|
||||||
return playerToolbar
|
return playerToolbar
|
||||||
}
|
}
|
||||||
|
@ -50,16 +47,6 @@ class ColorFragment : AbsPlayerFragment() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private var lastColor: Int = 0
|
|
||||||
private var backgroundColor: Int = 0
|
|
||||||
|
|
||||||
private var playbackControlsFragment: ColorPlaybackControlsFragment? = null
|
|
||||||
|
|
||||||
private var valueAnimator: ValueAnimator? = null
|
|
||||||
private var updateLyricsAsyncTask: AsyncTask<*, *, *>? = null
|
|
||||||
private var lyricsColor: Lyrics? = null
|
|
||||||
|
|
||||||
override fun onShow() {
|
override fun onShow() {
|
||||||
playbackControlsFragment!!.show()
|
playbackControlsFragment!!.show()
|
||||||
}
|
}
|
||||||
|
@ -102,7 +89,6 @@ class ColorFragment : AbsPlayerFragment() {
|
||||||
super.onViewCreated(view, savedInstanceState)
|
super.onViewCreated(view, savedInstanceState)
|
||||||
setUpSubFragments()
|
setUpSubFragments()
|
||||||
setUpPlayerToolbar()
|
setUpPlayerToolbar()
|
||||||
setupViews()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun setUpSubFragments() {
|
private fun setUpSubFragments() {
|
||||||
|
@ -113,7 +99,7 @@ class ColorFragment : AbsPlayerFragment() {
|
||||||
private fun setUpPlayerToolbar() {
|
private fun setUpPlayerToolbar() {
|
||||||
playerToolbar.apply {
|
playerToolbar.apply {
|
||||||
inflateMenu(R.menu.menu_player)
|
inflateMenu(R.menu.menu_player)
|
||||||
setNavigationOnClickListener { activity!!.onBackPressed() }
|
setNavigationOnClickListener { requireActivity().onBackPressed() }
|
||||||
setOnMenuItemClickListener(this@ColorFragment)
|
setOnMenuItemClickListener(this@ColorFragment)
|
||||||
ToolbarContentTintHelper.colorizeToolbar(this, ATHUtil.resolveColor(context, R.attr.iconColor), activity)
|
ToolbarContentTintHelper.colorizeToolbar(this, ATHUtil.resolveColor(context, R.attr.iconColor), activity)
|
||||||
}
|
}
|
||||||
|
@ -122,18 +108,14 @@ class ColorFragment : AbsPlayerFragment() {
|
||||||
override fun onPlayingMetaChanged() {
|
override fun onPlayingMetaChanged() {
|
||||||
super.onPlayingMetaChanged()
|
super.onPlayingMetaChanged()
|
||||||
updateSong()
|
updateSong()
|
||||||
updateLyricsLocal()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onServiceConnected() {
|
override fun onServiceConnected() {
|
||||||
super.onServiceConnected()
|
super.onServiceConnected()
|
||||||
updateSong()
|
updateSong()
|
||||||
updateLyricsLocal()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun updateSong() {
|
private fun updateSong() {
|
||||||
|
|
||||||
|
|
||||||
SongGlideRequest.Builder.from(Glide.with(requireActivity()), MusicPlayerRemote.currentSong)
|
SongGlideRequest.Builder.from(Glide.with(requireActivity()), MusicPlayerRemote.currentSong)
|
||||||
.checkIgnoreMediaStore(requireContext())
|
.checkIgnoreMediaStore(requireContext())
|
||||||
.generatePalette(requireContext())
|
.generatePalette(requireContext())
|
||||||
|
@ -148,7 +130,6 @@ class ColorFragment : AbsPlayerFragment() {
|
||||||
resource?.let {
|
resource?.let {
|
||||||
val background = resource.palette.getColor()
|
val background = resource.palette.getColor()
|
||||||
|
|
||||||
|
|
||||||
val palette = resource.palette
|
val palette = resource.palette
|
||||||
val swatch = RetroColorUtil.getSwatch(palette)
|
val swatch = RetroColorUtil.getSwatch(palette)
|
||||||
|
|
||||||
|
@ -175,85 +156,12 @@ class ColorFragment : AbsPlayerFragment() {
|
||||||
|
|
||||||
private fun setColors(backgroundColor: Int, textColor: Int) {
|
private fun setColors(backgroundColor: Int, textColor: Int) {
|
||||||
playbackControlsFragment!!.setDark(textColor, backgroundColor)
|
playbackControlsFragment!!.setDark(textColor, backgroundColor)
|
||||||
|
|
||||||
colorGradientBackground?.setBackgroundColor(backgroundColor)
|
colorGradientBackground?.setBackgroundColor(backgroundColor)
|
||||||
|
|
||||||
ToolbarContentTintHelper.colorizeToolbar(playerToolbar, textColor, activity)
|
ToolbarContentTintHelper.colorizeToolbar(playerToolbar, textColor, activity)
|
||||||
|
|
||||||
lastColor = textColor
|
lastColor = textColor
|
||||||
|
|
||||||
this.backgroundColor = backgroundColor
|
this.backgroundColor = backgroundColor
|
||||||
|
playerActivity?.setLightNavigationBar(ColorUtil.isColorLight(backgroundColor))
|
||||||
if (playerActivity != null) {
|
callbacks?.onPaletteColorChanged()
|
||||||
playerActivity!!.setLightNavigationBar(ColorUtil.isColorLight(backgroundColor))
|
|
||||||
}
|
|
||||||
callbacks!!.onPaletteColorChanged()
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
private fun colorize(i: Int) {
|
|
||||||
if (valueAnimator != null) {
|
|
||||||
valueAnimator!!.cancel()
|
|
||||||
}
|
|
||||||
|
|
||||||
valueAnimator = ValueAnimator.ofObject(ArgbEvaluator(), paletteColor, i)
|
|
||||||
valueAnimator!!.addUpdateListener { animation ->
|
|
||||||
colorGradientBackground?.setBackgroundColor(animation.animatedValue as Int)
|
|
||||||
}
|
|
||||||
valueAnimator!!.setDuration(ViewUtil.RETRO_MUSIC_ANIM_TIME.toLong()).start()
|
|
||||||
}
|
|
||||||
|
|
||||||
@SuppressLint("StaticFieldLeak")
|
|
||||||
private fun updateLyricsLocal() {
|
|
||||||
if (updateLyricsAsyncTask != null) {
|
|
||||||
updateLyricsAsyncTask!!.cancel(false)
|
|
||||||
}
|
|
||||||
val song = MusicPlayerRemote.currentSong
|
|
||||||
updateLyricsAsyncTask = object : AsyncTask<Void?, Void?, Lyrics?>() {
|
|
||||||
override fun onPreExecute() {
|
|
||||||
super.onPreExecute()
|
|
||||||
lyricsColor = null
|
|
||||||
playerToolbar.menu.removeItem(R.id.action_show_lyrics)
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun doInBackground(vararg params: Void?): Lyrics? {
|
|
||||||
val data = MusicUtil.getLyrics(song)
|
|
||||||
return if (TextUtils.isEmpty(data)) {
|
|
||||||
null
|
|
||||||
} else Lyrics.parse(song, data!!)
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun onPostExecute(l: Lyrics?) {
|
|
||||||
lyricsColor = l
|
|
||||||
if (lyricsColor == null) {
|
|
||||||
lyricsView?.setText(R.string.no_lyrics_found)
|
|
||||||
} else {
|
|
||||||
lyricsView?.text = lyricsColor!!.text
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun onCancelled(s: Lyrics?) {
|
|
||||||
onPostExecute(null)
|
|
||||||
}
|
|
||||||
}.execute()
|
|
||||||
}
|
|
||||||
|
|
||||||
private fun setupViews() {
|
|
||||||
lyricsView.setOnClickListener {
|
|
||||||
if (lyricsContainer!!.visibility == View.GONE) {
|
|
||||||
lyricsContainer!!.visibility = View.VISIBLE
|
|
||||||
} else {
|
|
||||||
lyricsContainer!!.visibility = View.GONE
|
|
||||||
}
|
|
||||||
}
|
|
||||||
playerImage.setOnClickListener {
|
|
||||||
if (lyricsContainer!!.visibility == View.GONE) {
|
|
||||||
lyricsContainer!!.visibility = View.VISIBLE
|
|
||||||
} else {
|
|
||||||
lyricsContainer!!.visibility = View.GONE
|
|
||||||
}
|
|
||||||
}
|
|
||||||
expand.setOnClickListener { startActivity(Intent(context, LyricsActivity::class.java)) }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
|
|
|
@ -36,7 +36,7 @@
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent">
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
<androidx.cardview.widget.CardView
|
<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"
|
||||||
android:layout_margin="12dp"
|
android:layout_margin="12dp"
|
||||||
|
@ -52,41 +52,7 @@
|
||||||
android:scaleType="centerCrop"
|
android:scaleType="centerCrop"
|
||||||
tools:srcCompat="@tools:sample/backgrounds/scenic[10]" />
|
tools:srcCompat="@tools:sample/backgrounds/scenic[10]" />
|
||||||
|
|
||||||
<ScrollView
|
</com.google.android.material.card.MaterialCardView>
|
||||||
android:id="@+id/lyricsContainer"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:background="@color/twenty_percent_black_overlay"
|
|
||||||
android:visibility="gone"
|
|
||||||
tools:visibility="visible">
|
|
||||||
|
|
||||||
<FrameLayout
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:padding="16dp">
|
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatTextView
|
|
||||||
android:id="@+id/lyricsView"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_gravity="center"
|
|
||||||
android:gravity="center"
|
|
||||||
android:lineSpacingExtra="4dp"
|
|
||||||
android:lineSpacingMultiplier="1.5"
|
|
||||||
android:textAppearance="@style/TextAppearance.AppCompat.Subhead"
|
|
||||||
android:textColor="@color/md_white_1000" />
|
|
||||||
</FrameLayout>
|
|
||||||
</ScrollView>
|
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatImageView
|
|
||||||
android:id="@+id/expand"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_gravity="bottom|end"
|
|
||||||
android:padding="16dp"
|
|
||||||
app:srcCompat="@drawable/ic_unfold_more_black_24dp"
|
|
||||||
app:tint="@color/md_white_1000" />
|
|
||||||
</androidx.cardview.widget.CardView>
|
|
||||||
|
|
||||||
</code.name.monkey.retromusic.views.HeightFitSquareLayout>
|
</code.name.monkey.retromusic.views.HeightFitSquareLayout>
|
||||||
|
|
||||||
|
|
|
@ -15,9 +15,9 @@
|
||||||
android:id="@+id/toolbar"
|
android:id="@+id/toolbar"
|
||||||
style="@style/Toolbar"
|
style="@style/Toolbar"
|
||||||
app:layout_collapseMode="pin"
|
app:layout_collapseMode="pin"
|
||||||
app:titleTextAppearance="@style/ToolbarTextAppearanceNormal"
|
|
||||||
app:navigationIcon="@drawable/ic_keyboard_backspace_black_24dp"
|
app:navigationIcon="@drawable/ic_keyboard_backspace_black_24dp"
|
||||||
app:title="@string/action_about" />
|
app:title="@string/action_about"
|
||||||
|
app:titleTextAppearance="@style/ToolbarTextAppearanceNormal" />
|
||||||
|
|
||||||
</com.google.android.material.appbar.AppBarLayout>
|
</com.google.android.material.appbar.AppBarLayout>
|
||||||
|
|
||||||
|
|
|
@ -14,14 +14,8 @@
|
||||||
android:layout_marginTop="8dp"
|
android:layout_marginTop="8dp"
|
||||||
android:layout_marginEnd="@dimen/button_margin_horizontal"
|
android:layout_marginEnd="@dimen/button_margin_horizontal"
|
||||||
android:layout_marginBottom="8dp"
|
android:layout_marginBottom="8dp"
|
||||||
android:paddingTop="@dimen/button_padding_vertical"
|
|
||||||
android:paddingBottom="@dimen/button_padding_vertical"
|
|
||||||
android:text="@string/action_play_all"
|
android:text="@string/action_play_all"
|
||||||
android:textAllCaps="false"
|
|
||||||
android:textAppearance="@style/TextViewNormal"
|
|
||||||
app:cornerRadius="@dimen/button_corner"
|
|
||||||
app:icon="@drawable/ic_play_arrow_white_24dp"
|
app:icon="@drawable/ic_play_arrow_white_24dp"
|
||||||
app:iconGravity="textStart"
|
|
||||||
app:layout_constraintEnd_toStartOf="@+id/shuffleAction"
|
app:layout_constraintEnd_toStartOf="@+id/shuffleAction"
|
||||||
app:layout_constraintHorizontal_bias="0.5"
|
app:layout_constraintHorizontal_bias="0.5"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
@ -35,14 +29,8 @@
|
||||||
android:layout_marginTop="8dp"
|
android:layout_marginTop="8dp"
|
||||||
android:layout_marginEnd="@dimen/button_margin_horizontal"
|
android:layout_marginEnd="@dimen/button_margin_horizontal"
|
||||||
android:layout_marginBottom="8dp"
|
android:layout_marginBottom="8dp"
|
||||||
android:paddingTop="@dimen/button_padding_vertical"
|
|
||||||
android:paddingBottom="@dimen/button_padding_vertical"
|
|
||||||
android:text="@string/shuffle"
|
android:text="@string/shuffle"
|
||||||
android:textAllCaps="false"
|
|
||||||
android:textAppearance="@style/TextViewNormal"
|
|
||||||
app:cornerRadius="@dimen/button_corner"
|
|
||||||
app:icon="@drawable/ic_shuffle_white_24dp"
|
app:icon="@drawable/ic_shuffle_white_24dp"
|
||||||
app:iconGravity="textStart"
|
|
||||||
app:layout_constraintBottom_toBottomOf="@+id/playAction"
|
app:layout_constraintBottom_toBottomOf="@+id/playAction"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintHorizontal_bias="0.5"
|
app:layout_constraintHorizontal_bias="0.5"
|
||||||
|
|
|
@ -13,14 +13,8 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginStart="@dimen/button_margin_horizontal"
|
android:layout_marginStart="@dimen/button_margin_horizontal"
|
||||||
android:layout_marginEnd="@dimen/button_margin_horizontal"
|
android:layout_marginEnd="@dimen/button_margin_horizontal"
|
||||||
android:paddingTop="@dimen/button_padding_vertical"
|
|
||||||
android:paddingBottom="@dimen/button_padding_vertical"
|
|
||||||
android:text="@string/action_play_all"
|
android:text="@string/action_play_all"
|
||||||
android:textAllCaps="false"
|
|
||||||
android:textAppearance="@style/TextViewNormal"
|
|
||||||
app:cornerRadius="@dimen/button_corner"
|
|
||||||
app:icon="@drawable/ic_play_arrow_white_24dp"
|
app:icon="@drawable/ic_play_arrow_white_24dp"
|
||||||
app:iconGravity="textStart"
|
|
||||||
app:layout_constraintEnd_toStartOf="@+id/shuffleAction"
|
app:layout_constraintEnd_toStartOf="@+id/shuffleAction"
|
||||||
app:layout_constraintHorizontal_bias="0.5"
|
app:layout_constraintHorizontal_bias="0.5"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
@ -32,14 +26,8 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginStart="@dimen/button_margin_horizontal"
|
android:layout_marginStart="@dimen/button_margin_horizontal"
|
||||||
android:layout_marginEnd="@dimen/button_margin_horizontal"
|
android:layout_marginEnd="@dimen/button_margin_horizontal"
|
||||||
android:paddingTop="@dimen/button_padding_vertical"
|
|
||||||
android:paddingBottom="@dimen/button_padding_vertical"
|
|
||||||
android:text="@string/shuffle"
|
android:text="@string/shuffle"
|
||||||
android:textAllCaps="false"
|
|
||||||
android:textAppearance="@style/TextViewNormal"
|
|
||||||
app:cornerRadius="@dimen/button_corner"
|
|
||||||
app:icon="@drawable/ic_shuffle_white_24dp"
|
app:icon="@drawable/ic_shuffle_white_24dp"
|
||||||
app:iconGravity="textStart"
|
|
||||||
app:layout_constraintBottom_toBottomOf="@+id/playAction"
|
app:layout_constraintBottom_toBottomOf="@+id/playAction"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintHorizontal_bias="0.5"
|
app:layout_constraintHorizontal_bias="0.5"
|
||||||
|
@ -85,6 +73,7 @@
|
||||||
android:nestedScrollingEnabled="false"
|
android:nestedScrollingEnabled="false"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@id/albumTitle"
|
app:layout_constraintTop_toBottomOf="@id/albumTitle"
|
||||||
|
tools:itemCount="3"
|
||||||
tools:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
|
tools:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
|
||||||
tools:listitem="@layout/item_album_card"
|
tools:listitem="@layout/item_album_card"
|
||||||
tools:spanCount="3" />
|
tools:spanCount="3" />
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
<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/coordinator_layout"
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent">
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
<include layout="@layout/status_bar" />
|
<include layout="@layout/status_bar" />
|
||||||
</FrameLayout>
|
</FrameLayout>
|
||||||
|
|
||||||
<com.google.android.material.card.MaterialCardView
|
<code.name.monkey.retromusic.views.WidthFitSquareCardView
|
||||||
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_marginStart="16dp"
|
||||||
|
@ -37,57 +37,16 @@
|
||||||
app:cardPreventCornerOverlap="false"
|
app:cardPreventCornerOverlap="false"
|
||||||
app:cardUseCompatPadding="true">
|
app:cardUseCompatPadding="true">
|
||||||
|
|
||||||
<code.name.monkey.retromusic.views.WidthFitSquareLayout
|
|
||||||
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
|
android:id="@+id/playerImage"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="match_parent"
|
||||||
android:layout_gravity="center_horizontal">
|
android:scaleType="centerCrop"
|
||||||
|
tools:ignore="ContentDescription,UnusedAttribute"
|
||||||
|
tools:srcCompat="@tools:sample/backgrounds/scenic[10]" />
|
||||||
|
|
||||||
|
</code.name.monkey.retromusic.views.WidthFitSquareCardView>
|
||||||
<androidx.appcompat.widget.AppCompatImageView
|
|
||||||
android:id="@+id/playerImage"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:scaleType="centerCrop"
|
|
||||||
tools:ignore="ContentDescription,UnusedAttribute"
|
|
||||||
tools:srcCompat="@tools:sample/backgrounds/scenic[10]" />
|
|
||||||
|
|
||||||
<ScrollView
|
|
||||||
android:id="@+id/lyricsContainer"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:background="@color/twenty_percent_black_overlay"
|
|
||||||
android:visibility="gone"
|
|
||||||
tools:visibility="visible">
|
|
||||||
|
|
||||||
<FrameLayout
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:padding="16dp">
|
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatTextView
|
|
||||||
android:id="@+id/lyricsView"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_gravity="center"
|
|
||||||
android:gravity="center"
|
|
||||||
android:lineSpacingExtra="4dp"
|
|
||||||
android:lineSpacingMultiplier="1.5"
|
|
||||||
android:textAppearance="@style/TextAppearance.AppCompat.Subhead"
|
|
||||||
android:textColor="@color/md_white_1000" />
|
|
||||||
</FrameLayout>
|
|
||||||
</ScrollView>
|
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatImageView
|
|
||||||
android:id="@+id/expand"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_gravity="bottom|end"
|
|
||||||
android:padding="16dp"
|
|
||||||
app:srcCompat="@drawable/ic_unfold_more_black_24dp"
|
|
||||||
app:tint="@color/md_white_1000" />
|
|
||||||
</code.name.monkey.retromusic.views.WidthFitSquareLayout>
|
|
||||||
|
|
||||||
</com.google.android.material.card.MaterialCardView>
|
|
||||||
|
|
||||||
<FrameLayout
|
<FrameLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
|
|
|
@ -15,7 +15,6 @@
|
||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<LinearLayout 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/main_fragment_content"
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:orientation="vertical">
|
android:orientation="vertical">
|
||||||
|
@ -31,7 +30,6 @@
|
||||||
</FrameLayout>
|
</FrameLayout>
|
||||||
|
|
||||||
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
||||||
android:id="@+id/coordinator_layout"
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent">
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
android:layout_height="48dp"
|
android:layout_height="48dp"
|
||||||
android:background="?colorSecondary"
|
android:background="?colorSecondary"
|
||||||
android:clickable="true"
|
android:clickable="true"
|
||||||
android:focusable="false"
|
android:focusable="true"
|
||||||
tools:ignore="UnusedAttribute">
|
tools:ignore="UnusedAttribute">
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
|
|
|
@ -27,14 +27,8 @@
|
||||||
android:layout_marginStart="4dp"
|
android:layout_marginStart="4dp"
|
||||||
android:layout_marginEnd="4dp"
|
android:layout_marginEnd="4dp"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:paddingTop="@dimen/button_padding_vertical"
|
|
||||||
android:paddingBottom="@dimen/button_padding_vertical"
|
|
||||||
android:text="@string/action_play_all"
|
android:text="@string/action_play_all"
|
||||||
android:textAllCaps="false"
|
app:icon="@drawable/ic_play_arrow_white_24dp" />
|
||||||
android:textAppearance="@style/TextViewNormal"
|
|
||||||
app:cornerRadius="@dimen/button_corner"
|
|
||||||
app:icon="@drawable/ic_play_arrow_white_24dp"
|
|
||||||
app:iconGravity="textStart" />
|
|
||||||
|
|
||||||
<com.google.android.material.button.MaterialButton
|
<com.google.android.material.button.MaterialButton
|
||||||
android:id="@+id/shuffleAction"
|
android:id="@+id/shuffleAction"
|
||||||
|
@ -43,13 +37,7 @@
|
||||||
android:layout_marginStart="4dp"
|
android:layout_marginStart="4dp"
|
||||||
android:layout_marginEnd="4dp"
|
android:layout_marginEnd="4dp"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:paddingTop="@dimen/button_padding_vertical"
|
|
||||||
android:paddingBottom="@dimen/button_padding_vertical"
|
|
||||||
android:text="@string/shuffle"
|
android:text="@string/shuffle"
|
||||||
android:textAllCaps="false"
|
app:icon="@drawable/ic_shuffle_white_24dp" />
|
||||||
android:textAppearance="@style/TextViewNormal"
|
|
||||||
app:cornerRadius="@dimen/button_corner"
|
|
||||||
app:icon="@drawable/ic_shuffle_white_24dp"
|
|
||||||
app:iconGravity="textStart" />
|
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
|
@ -27,6 +27,7 @@
|
||||||
android:fontFeatureSettings="onum"
|
android:fontFeatureSettings="onum"
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:maxLines="1"
|
android:maxLines="1"
|
||||||
|
tools:text="@tools:sample/date/hhmm"
|
||||||
android:minHeight="40dp"
|
android:minHeight="40dp"
|
||||||
android:textAppearance="@style/TextViewNormal"
|
android:textAppearance="@style/TextViewNormal"
|
||||||
android:textColor="?colorOnSecondary" />
|
android:textColor="?colorOnSecondary" />
|
||||||
|
@ -45,7 +46,7 @@
|
||||||
app:layout_constraintHorizontal_bias="0.5"
|
app:layout_constraintHorizontal_bias="0.5"
|
||||||
app:layout_constraintStart_toEndOf="@+id/imageContainer"
|
app:layout_constraintStart_toEndOf="@+id/imageContainer"
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
tools:text="Song title" />
|
tools:text="@tools:sample/lorem/random" />
|
||||||
|
|
||||||
<com.google.android.material.textview.MaterialTextView
|
<com.google.android.material.textview.MaterialTextView
|
||||||
android:id="@+id/time"
|
android:id="@+id/time"
|
||||||
|
@ -58,7 +59,7 @@
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
app:layout_constraintEnd_toStartOf="@+id/menu"
|
app:layout_constraintEnd_toStartOf="@+id/menu"
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
tools:text="22:00" />
|
tools:text="@tools:sample/date/hhmm" />
|
||||||
|
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatImageView
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
|
|
|
@ -25,10 +25,10 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
app:behavior_hideable="false"
|
app:behavior_hideable="false"
|
||||||
app:behavior_peekHeight="0dp"
|
app:behavior_peekHeight="0dp"
|
||||||
app:cardUseCompatPadding="false"
|
|
||||||
app:cardBackgroundColor="?colorSecondary"
|
app:cardBackgroundColor="?colorSecondary"
|
||||||
|
app:cardUseCompatPadding="false"
|
||||||
app:layout_behavior="com.google.android.material.bottomsheet.BottomSheetBehavior"
|
app:layout_behavior="com.google.android.material.bottomsheet.BottomSheetBehavior"
|
||||||
app:shapeAppearanceOverlay="@style/TopCornerCardView">
|
app:strokeWidth="0dp">
|
||||||
|
|
||||||
|
|
||||||
<FrameLayout
|
<FrameLayout
|
||||||
|
|
|
@ -5,10 +5,10 @@
|
||||||
<color name="app_shortcut_default_foreground">#607d8b</color>
|
<color name="app_shortcut_default_foreground">#607d8b</color>
|
||||||
<color name="app_shortcut_default_background">#f5f5f5</color>
|
<color name="app_shortcut_default_background">#f5f5f5</color>
|
||||||
<color name="md_indigo_A400">#3D5AFE</color>
|
<color name="md_indigo_A400">#3D5AFE</color>
|
||||||
<color name="dark_color">#212121</color>
|
<color name="dark_color">#202124</color>
|
||||||
<color name="dark_grey">#121212</color>
|
<color name="dark_grey">#17181a</color>
|
||||||
<color name="card_dark_color">#2C2D30</color>
|
<color name="card_dark_color">#222326</color>
|
||||||
<color name="black_color">#121212</color>
|
<color name="black_color">#202124</color>
|
||||||
|
|
||||||
<color name="lightColorPrimary">#FFFFFF</color>
|
<color name="lightColorPrimary">#FFFFFF</color>
|
||||||
<color name="lightColorOnPrimary">#202020</color>
|
<color name="lightColorOnPrimary">#202020</color>
|
||||||
|
@ -16,15 +16,17 @@
|
||||||
<color name="lightColorBackground">#FFFFFF</color>
|
<color name="lightColorBackground">#FFFFFF</color>
|
||||||
<color name="lightColorSurface">#FEFEFE</color>
|
<color name="lightColorSurface">#FEFEFE</color>
|
||||||
|
|
||||||
<color name="darkColorPrimary">#121212</color>
|
<color name="darkColorPrimary">#202124</color>
|
||||||
<color name="darkColorSecondary">#181818</color>
|
<color name="darkColorOnPrimary">#ffffff</color>
|
||||||
<color name="darkColorBackground">#333333</color>
|
<color name="darkColorSecondary">#202124</color>
|
||||||
<color name="darkColorSurface">#1F1F1F</color>
|
<color name="darkColorBackground">#121212</color>
|
||||||
|
<color name="darkColorSurface">#3C4043</color>
|
||||||
|
|
||||||
<color name="blackColorPrimary">#000000</color>
|
<color name="blackColorPrimary">#000000</color>
|
||||||
|
<color name="blackColorOnPrimary">#ffffff</color>
|
||||||
<color name="blackColorSecondary">#000000</color>
|
<color name="blackColorSecondary">#000000</color>
|
||||||
<color name="blackColorBackground">#000000</color>
|
<color name="blackColorBackground">#000000</color>
|
||||||
<color name="blackColorSurface">#121212</color>
|
<color name="blackColorSurface">#17181a</color>
|
||||||
|
|
||||||
<color name="transparent">#00000000</color>
|
<color name="transparent">#00000000</color>
|
||||||
<!-- card colors -->
|
<!-- card colors -->
|
||||||
|
|
|
@ -161,4 +161,17 @@
|
||||||
<item name="cornerSize">8dp</item>
|
<item name="cornerSize">8dp</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
|
<style name="TopCornerCardViewStyle" parent="@style/Widget.MaterialComponents.CardView">
|
||||||
|
<item name="shapeAppearanceOverlay">@style/ShapeAppearanceOverlayCardViewTopCorners</item>
|
||||||
|
</style>
|
||||||
|
|
||||||
|
|
||||||
|
<style name="ShapeAppearanceOverlayCardViewTopCorners" parent="">
|
||||||
|
<item name="cornerFamily">rounded</item>
|
||||||
|
<item name="cornerSizeTopRight">16dp</item>
|
||||||
|
<item name="cornerSizeTopLeft">16dp</item>
|
||||||
|
<item name="cornerSizeBottomRight">0dp</item>
|
||||||
|
<item name="cornerSizeBottomLeft">0dp</item>
|
||||||
|
</style>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
<item name="toolbarPopupTheme">@style/ThemeOverlay.AppCompat</item>
|
<item name="toolbarPopupTheme">@style/ThemeOverlay.AppCompat</item>
|
||||||
|
|
||||||
<!-- just in case-->
|
<!-- just in case-->
|
||||||
<item name="android:windowBackground">@color/dark_color</item>
|
<item name="android:windowBackground">@color/md_red_500</item>
|
||||||
|
|
||||||
<!-- necessary to find the overflow button later in the layout-->
|
<!-- necessary to find the overflow button later in the layout-->
|
||||||
<item name="android:actionOverflowButtonStyle">@style/Widget.ActionButton.Overflow</item>
|
<item name="android:actionOverflowButtonStyle">@style/Widget.ActionButton.Overflow</item>
|
||||||
|
@ -40,6 +40,7 @@
|
||||||
<item name="windowActionBar">false</item>
|
<item name="windowActionBar">false</item>
|
||||||
|
|
||||||
<item name="materialAlertDialogTheme">@style/MaterialAlertDialogTheme</item>
|
<item name="materialAlertDialogTheme">@style/MaterialAlertDialogTheme</item>
|
||||||
|
<item name="materialButtonStyle">@style/MaterialButtonTheme</item>
|
||||||
|
|
||||||
<item name="colorPrimary">@color/darkColorPrimary</item>
|
<item name="colorPrimary">@color/darkColorPrimary</item>
|
||||||
<item name="colorSecondary">@color/darkColorSecondary</item>
|
<item name="colorSecondary">@color/darkColorSecondary</item>
|
||||||
|
@ -49,7 +50,7 @@
|
||||||
|
|
||||||
<item name="colorAccent">@color/md_deep_purple_A200</item>
|
<item name="colorAccent">@color/md_deep_purple_A200</item>
|
||||||
|
|
||||||
<item name="android:colorBackground">@color/darkColorBackground</item>
|
<item name="android:colorBackground">@color/md_red_500</item>
|
||||||
<item name="colorSurface">@color/darkColorSurface</item>
|
<item name="colorSurface">@color/darkColorSurface</item>
|
||||||
<item name="colorOnSurface">@color/mi_text_color_primary_dark</item>
|
<item name="colorOnSurface">@color/mi_text_color_primary_dark</item>
|
||||||
<item name="colorOnBackground">@color/mi_text_color_secondary_dark</item>
|
<item name="colorOnBackground">@color/mi_text_color_secondary_dark</item>
|
||||||
|
@ -124,8 +125,9 @@
|
||||||
<item name="android:fontFamily">@font/circular</item>
|
<item name="android:fontFamily">@font/circular</item>
|
||||||
|
|
||||||
<item name="windowActionBar">false</item>
|
<item name="windowActionBar">false</item>
|
||||||
|
|
||||||
<item name="materialAlertDialogTheme">@style/MaterialAlertDialogTheme</item>
|
<item name="materialAlertDialogTheme">@style/MaterialAlertDialogTheme</item>
|
||||||
<!--<item name="android:textColorPrimary">@color/md_grey_900</item>-->
|
<item name="materialButtonStyle">@style/MaterialButtonTheme</item>
|
||||||
|
|
||||||
<item name="colorPrimary">@color/lightColorPrimary</item>
|
<item name="colorPrimary">@color/lightColorPrimary</item>
|
||||||
<item name="colorSecondary">@color/lightColorSecondary</item>
|
<item name="colorSecondary">@color/lightColorSecondary</item>
|
||||||
|
@ -167,4 +169,14 @@
|
||||||
<style name="MaterialAlertDialogTheme" parent="@style/ThemeOverlay.MaterialComponents.Dialog">
|
<style name="MaterialAlertDialogTheme" parent="@style/ThemeOverlay.MaterialComponents.Dialog">
|
||||||
<item name="android:dialogCornerRadius" tools:targetApi="p">12dp</item>
|
<item name="android:dialogCornerRadius" tools:targetApi="p">12dp</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
|
<style name="MaterialButtonTheme" parent="Widget.MaterialComponents.Button">
|
||||||
|
<item name="cornerRadius">24dp</item>
|
||||||
|
<item name="android:textAppearance">@style/TextViewNormal</item>
|
||||||
|
<item name="android:textAllCaps">false</item>
|
||||||
|
<item name="android:paddingTop">@dimen/button_padding_vertical</item>
|
||||||
|
<item name="android:paddingBottom">@dimen/button_padding_vertical</item>
|
||||||
|
<item name="iconGravity">textStart</item>
|
||||||
|
<item name="backgroundTint">?colorSurface</item>
|
||||||
|
</style>
|
||||||
</resources>
|
</resources>
|
|
@ -1,9 +1,10 @@
|
||||||
package code.name.monkey.appthemehelper.common;
|
package code.name.monkey.appthemehelper.common;
|
||||||
|
|
||||||
import android.graphics.drawable.ColorDrawable;
|
import android.graphics.drawable.ColorDrawable;
|
||||||
|
import android.view.Menu;
|
||||||
|
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
import androidx.appcompat.widget.Toolbar;
|
import androidx.appcompat.widget.Toolbar;
|
||||||
import android.view.Menu;
|
|
||||||
|
|
||||||
import code.name.monkey.appthemehelper.ATHActivity;
|
import code.name.monkey.appthemehelper.ATHActivity;
|
||||||
import code.name.monkey.appthemehelper.util.ToolbarContentTintHelper;
|
import code.name.monkey.appthemehelper.util.ToolbarContentTintHelper;
|
||||||
|
@ -12,6 +13,15 @@ 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) {
|
||||||
|
if (toolbar != null) {
|
||||||
|
if (toolbar.getBackground() instanceof ColorDrawable) {
|
||||||
|
return ((ColorDrawable) toolbar.getBackground()).getColor();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCreateOptionsMenu(Menu menu) {
|
public boolean onCreateOptionsMenu(Menu menu) {
|
||||||
Toolbar toolbar = getATHToolbar();
|
Toolbar toolbar = getATHToolbar();
|
||||||
|
@ -34,13 +44,4 @@ public class ATHToolbarActivity extends ATHActivity {
|
||||||
protected Toolbar getATHToolbar() {
|
protected Toolbar getATHToolbar() {
|
||||||
return toolbar;
|
return toolbar;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int getToolbarBackgroundColor(Toolbar toolbar) {
|
|
||||||
if (toolbar != null) {
|
|
||||||
if (toolbar.getBackground() instanceof ColorDrawable) {
|
|
||||||
return ((ColorDrawable) toolbar.getBackground()).getColor();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
}
|
}
|
Loading…
Reference in a new issue