Added destauration accent color

main
h4h13 2019-10-10 23:32:59 +05:30
parent 694e78e92e
commit 576201bfd5
5 changed files with 20 additions and 20 deletions

View File

@ -45,13 +45,8 @@ open class MiniPlayerFragment : AbsMusicServiceFragment(), MusicProgressViewUpda
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState) super.onViewCreated(view, savedInstanceState)
view.setOnTouchListener(FlingPlayBackController(requireContext())) view.setOnTouchListener(FlingPlayBackController(requireContext()))
//view.setOnClickListener(v -> NavigationUtil.gotoNowPlayingActivity(getContext()));
setUpMiniPlayer() setUpMiniPlayer()
miniPlayerImage.setOnClickListener {
//toggleFavorite(MusicPlayerRemote.currentSong)
}
if (RetroUtil.isTablet()) { if (RetroUtil.isTablet()) {
actionNext.visibility = View.VISIBLE actionNext.visibility = View.VISIBLE
actionPrevious.visibility = View.VISIBLE actionPrevious.visibility = View.VISIBLE

View File

@ -34,6 +34,14 @@ import code.name.monkey.appthemehelper.util.ColorUtil;
import code.name.monkey.retromusic.R; import code.name.monkey.retromusic.R;
public class RetroColorUtil { public class RetroColorUtil {
public static int desaturateColor(int color, float ratio) {
float[] hsv = new float[3];
Color.colorToHSV(color, hsv);
hsv[1] = ( hsv[1] / 1 * ratio ) + ( 0.2f * (1.0f - ratio) );
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.colorSurface);
} }

View File

@ -22,6 +22,7 @@ import androidx.appcompat.widget.AppCompatImageView
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.ColorUtil
import code.name.monkey.retromusic.R import code.name.monkey.retromusic.R
import code.name.monkey.retromusic.util.RetroColorUtil
class ColorIconsImageView : AppCompatImageView { class ColorIconsImageView : AppCompatImageView {
@ -49,7 +50,7 @@ class ColorIconsImageView : AppCompatImageView {
private fun setIconBackgroundColor(color: Int) { private fun setIconBackgroundColor(color: Int) {
setBackgroundResource(R.drawable.color_circle_gradient) setBackgroundResource(R.drawable.color_circle_gradient)
if (ATHUtil.isWindowBackgroundDark(context)) { if (ATHUtil.isWindowBackgroundDark(context)) {
val desaturatedColor = 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.colorPrimary))
} else { } else {
@ -60,12 +61,5 @@ class ColorIconsImageView : AppCompatImageView {
invalidate() invalidate()
} }
private fun desaturateColor(color: Int, ratio: Float): Int {
val hsv = FloatArray(3)
Color.colorToHSV(color, hsv)
hsv[1] = hsv[1] / 1 * ratio + 0.2f * (1.0f - ratio)
return Color.HSVToColor(hsv)
}
} }

View File

@ -4,14 +4,9 @@ import android.annotation.SuppressLint
import android.content.Context import android.content.Context
import android.content.SharedPreferences import android.content.SharedPreferences
import android.graphics.Color import android.graphics.Color
import androidx.annotation.AttrRes import androidx.annotation.*
import androidx.annotation.CheckResult
import androidx.annotation.ColorInt
import androidx.annotation.ColorRes
import androidx.annotation.IntRange import androidx.annotation.IntRange
import androidx.annotation.StyleRes
import androidx.core.content.ContextCompat import androidx.core.content.ContextCompat
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.ColorUtil
@ -211,7 +206,8 @@ private constructor(private val mContext: Context) : ThemeStorePrefKeys, ThemeSt
@CheckResult @CheckResult
@ColorInt @ColorInt
fun accentColor(context: Context): Int { fun accentColor(context: Context): Int {
return prefs(context).getInt(ThemeStorePrefKeys.KEY_ACCENT_COLOR, ATHUtil.resolveColor(context, R.attr.colorAccent, Color.parseColor("#263238"))) val color = prefs(context).getInt(ThemeStorePrefKeys.KEY_ACCENT_COLOR, ATHUtil.resolveColor(context, R.attr.colorAccent, Color.parseColor("#263238")))
return if (ATHUtil.isWindowBackgroundDark(context)) ColorUtil.desaturateColor(color, 0.4f) else color
} }
@CheckResult @CheckResult

View File

@ -6,7 +6,14 @@ import androidx.annotation.FloatRange
object ColorUtil { object ColorUtil {
fun desaturateColor(color: Int, ratio: Float): Int {
val hsv = FloatArray(3)
Color.colorToHSV(color, hsv)
hsv[1] = hsv[1] / 1 * ratio + 0.2f * (1.0f - ratio)
return Color.HSVToColor(hsv)
}
fun stripAlpha(@ColorInt color: Int): Int { fun stripAlpha(@ColorInt color: Int): Int {
return -0x1000000 or color return -0x1000000 or color
} }