fix white suggestion strip pressed color

This commit is contained in:
Helium314 2023-07-30 22:25:51 +02:00
parent 20aa6cf057
commit cf47f22c9e
2 changed files with 17 additions and 4 deletions

View file

@ -22,6 +22,7 @@ import android.content.Context;
import android.content.res.Resources;
import android.content.res.TypedArray;
import android.graphics.Color;
import android.graphics.PorterDuff;
import android.graphics.drawable.Drawable;
import android.util.AttributeSet;
import android.util.TypedValue;
@ -58,6 +59,7 @@ import org.dslul.openboard.inputmethod.latin.utils.DialogUtils;
import java.util.ArrayList;
import androidx.core.graphics.drawable.DrawableCompat;
import androidx.core.view.ViewCompat;
public final class SuggestionStripView extends RelativeLayout implements OnClickListener,
@ -184,11 +186,22 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick
final Colors colors = Settings.getInstance().getCurrent().mColors;
if (colors.isCustom) {
getBackground().setColorFilter(colors.backgroundFilter);
// this only works with backgrounds of SuggestionStripView.LXX_Base and SuggestionWord.LXX_Base
// set to keyboard_background_lxx_base (just white drawable), but NOT when set to
// btn_suggestion_lxx_base (state drawable with selector)
// why is this? then i have to set tint list for voice/clipboard/other keys and word views separately
// anyway, the only loss is that pressed state can't have a different shape
DrawableCompat.setTintList(getBackground(), colors.backgroundStateList);
DrawableCompat.setTintMode(getBackground(), PorterDuff.Mode.MULTIPLY);
mClipboardKey.setColorFilter(colors.keyText);
mVoiceKey.setColorFilter(colors.keyText);
mOtherKey.setColorFilter(colors.keyText);
} else mClipboardKey.clearColorFilter();
} else {
mClipboardKey.clearColorFilter();
mVoiceKey.clearColorFilter();
mOtherKey.clearColorFilter();
}
}
/**

View file

@ -120,7 +120,7 @@
<item name="centerSuggestionPercentile">@fraction/config_center_suggestion_percentile</item>
<item name="maxMoreSuggestionsRow">@integer/config_max_more_suggestions_row</item>
<item name="minMoreSuggestionsWidth">@fraction/config_min_more_suggestions_width</item>
<item name="android:background">@drawable/keyboard_suggest_strip_lxx_base</item>
<item name="android:background">@drawable/keyboard_background_lxx_base</item>
<item name="android:src">@drawable/suggestions_strip_divider_lxx_light</item>
<item name="suggestionStripOptions">autoCorrectBold|validTypedWordBold</item>
<item name="colorValidTypedWord">@color/typed_word_color_lxx_light</item>
@ -133,7 +133,7 @@
name="SuggestionWord.LXX_Base"
parent="SuggestionWord"
>
<item name="android:background">@drawable/btn_suggestion_lxx_base</item>
<item name="android:background">@drawable/keyboard_background_lxx_base</item>
<item name="android:textColor">@color/highlight_color_lxx_light</item>
</style>
</resources>