Fix dialog color
This commit is contained in:
parent
da640ceff8
commit
9d9d709a85
27 changed files with 126 additions and 85 deletions
|
@ -15,15 +15,17 @@
|
|||
package code.name.monkey.retromusic.views;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.res.ColorStateList;
|
||||
import android.graphics.PorterDuff;
|
||||
import android.util.AttributeSet;
|
||||
|
||||
import code.name.monkey.appthemehelper.util.ATHUtil;
|
||||
import androidx.appcompat.widget.AppCompatImageView;
|
||||
|
||||
import code.name.monkey.appthemehelper.util.ATHUtil;
|
||||
import code.name.monkey.retromusic.R;
|
||||
|
||||
|
||||
public class IconImageView extends androidx.appcompat.widget.AppCompatImageView {
|
||||
public class IconImageView extends AppCompatImageView {
|
||||
public IconImageView(Context context) {
|
||||
super(context);
|
||||
init(context);
|
||||
|
@ -41,6 +43,7 @@ public class IconImageView extends androidx.appcompat.widget.AppCompatImageView
|
|||
|
||||
private void init(Context context) {
|
||||
if (context == null) return;
|
||||
setColorFilter(ATHUtil.INSTANCE.resolveColor(context, R.attr.iconColor), PorterDuff.Mode.SRC_IN);
|
||||
setImageTintList(ColorStateList.valueOf(ATHUtil.INSTANCE.resolveColor(context, R.attr.iconColor)));
|
||||
//setColorFilter(ATHUtil.INSTANCE.resolveColor(context, R.attr.iconColor), PorterDuff.Mode.SRC_IN);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -24,10 +24,10 @@ import android.widget.TextView;
|
|||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.core.content.ContextCompat;
|
||||
|
||||
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.MaterialValueHelper;
|
||||
import code.name.monkey.retromusic.R;
|
||||
|
||||
/**
|
||||
|
@ -35,6 +35,9 @@ import code.name.monkey.retromusic.R;
|
|||
*/
|
||||
public class OptionMenuItemView extends FrameLayout {
|
||||
|
||||
TextView textView;
|
||||
IconImageView iconImageView;
|
||||
|
||||
public OptionMenuItemView(@NonNull Context context) {
|
||||
this(context, null);
|
||||
}
|
||||
|
@ -49,13 +52,16 @@ public class OptionMenuItemView extends FrameLayout {
|
|||
|
||||
public OptionMenuItemView(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr, int defStyleRes) {
|
||||
super(context, attrs, defStyleAttr, defStyleRes);
|
||||
|
||||
int accentColor = ThemeStore.Companion.accentColor(context);
|
||||
setBackground(ContextCompat.getDrawable(context, R.drawable.menu_item_background));
|
||||
|
||||
inflate(context, R.layout.item_option_menu, this);
|
||||
|
||||
setBackgroundTintList(ColorStateList.valueOf(ThemeStore.Companion.accentColor(context)));
|
||||
setBackgroundTintList(ColorStateList.valueOf(ColorUtil.INSTANCE.adjustAlpha(accentColor, 0.22f)));
|
||||
|
||||
TextView textView = findViewById(R.id.title);
|
||||
textView.setTextColor(MaterialValueHelper.INSTANCE.getPrimaryTextColor(context, ColorUtil.INSTANCE.isColorLight(ThemeStore.Companion.primaryColor(context))));
|
||||
IconImageView iconImageView = findViewById(R.id.icon);
|
||||
textView = findViewById(R.id.title);
|
||||
iconImageView = findViewById(R.id.icon);
|
||||
|
||||
TypedArray attributes = context.obtainStyledAttributes(attrs, R.styleable.OptionMenuItemView, 0, 0);
|
||||
|
||||
|
@ -67,4 +73,14 @@ public class OptionMenuItemView extends FrameLayout {
|
|||
|
||||
attributes.recycle();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSelected(boolean selected) {
|
||||
super.setSelected(selected);
|
||||
if (selected) {
|
||||
int accentColor = ThemeStore.Companion.accentColor(getContext());
|
||||
textView.setTextColor(accentColor);
|
||||
iconImageView.setImageTintList(ColorStateList.valueOf(accentColor));
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue