diff --git a/play-services-core/microg-ui-tools/src/main/java/org/microg/tools/ui/DimmableIconPreference.java b/play-services-core/microg-ui-tools/src/main/java/org/microg/tools/ui/DimmableIconPreference.java deleted file mode 100644 index 791cbd02..00000000 --- a/play-services-core/microg-ui-tools/src/main/java/org/microg/tools/ui/DimmableIconPreference.java +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Copyright (C) 2014 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.microg.tools.ui; - -import android.content.Context; -import android.graphics.drawable.Drawable; -import android.text.TextUtils; -import android.util.AttributeSet; -import android.view.ViewGroup; -import android.widget.LinearLayout; -import android.widget.TextView; - -import androidx.preference.Preference; -import androidx.preference.PreferenceViewHolder; - -/** - * A preference item that can dim the icon when it's disabled, either directly or because its parent - * is disabled. - */ -public class DimmableIconPreference extends Preference { - private static final int ICON_ALPHA_ENABLED = 255; - private static final int ICON_ALPHA_DISABLED = 102; - - private final CharSequence mContentDescription; - - public DimmableIconPreference(Context context) { - this(context, (AttributeSet) null); - } - - public DimmableIconPreference(Context context, AttributeSet attrs) { - super(context, attrs); - mContentDescription = null; - } - - public DimmableIconPreference(Context context, CharSequence contentDescription) { - super(context); - mContentDescription = contentDescription; - } - - protected boolean shouldDimIcon() { - return !isEnabled(); - } - - private void dimIcon(boolean dimmed) { - Drawable icon = getIcon(); - if (icon != null) { - icon.mutate().setAlpha(dimmed ? ICON_ALPHA_DISABLED : ICON_ALPHA_ENABLED); - setIcon(icon); - } - } - - @Override - public void onBindViewHolder(PreferenceViewHolder view) { - super.onBindViewHolder(view); - if (!TextUtils.isEmpty(mContentDescription)) { - final TextView titleView = (TextView) view.findViewById(android.R.id.title); - titleView.setContentDescription(mContentDescription); - } - ViewGroup.LayoutParams layoutParams = view.findViewById(R.id.icon_frame).getLayoutParams(); - if (layoutParams instanceof LinearLayout.LayoutParams) { - if (((LinearLayout.LayoutParams) layoutParams).leftMargin < 0) { - ((LinearLayout.LayoutParams) layoutParams).leftMargin = 0; - } - } - dimIcon(shouldDimIcon()); - } -} diff --git a/play-services-core/microg-ui-tools/src/main/java/org/microg/tools/ui/TintIconPreference.java b/play-services-core/microg-ui-tools/src/main/java/org/microg/tools/ui/TintIconPreference.java deleted file mode 100644 index 05486b9c..00000000 --- a/play-services-core/microg-ui-tools/src/main/java/org/microg/tools/ui/TintIconPreference.java +++ /dev/null @@ -1,45 +0,0 @@ -package org.microg.tools.ui; - -import android.content.Context; -import android.graphics.drawable.Drawable; -import android.util.AttributeSet; -import android.util.TypedValue; - -import androidx.core.graphics.drawable.DrawableCompat; -import androidx.preference.PreferenceViewHolder; - -import static android.os.Build.VERSION.SDK_INT; -import static android.os.Build.VERSION_CODES.LOLLIPOP; - -public class TintIconPreference extends DimmableIconPreference { - - public TintIconPreference(Context context) { - this(context, (AttributeSet) null); - } - - public TintIconPreference(Context context, AttributeSet attrs) { - super(context, attrs); - } - - private static int getThemeAccentColor(Context context) { - int colorAttr; - if (SDK_INT >= LOLLIPOP) { - colorAttr = android.R.attr.colorAccent; - } else { - //Get colorAccent defined for AppCompat - colorAttr = context.getResources().getIdentifier("colorAccent", "attr", context.getPackageName()); - } - TypedValue outValue = new TypedValue(); - context.getTheme().resolveAttribute(colorAttr, outValue, true); - return outValue.data; - } - - @Override - public void onBindViewHolder(PreferenceViewHolder view) { - super.onBindViewHolder(view); - Drawable icon = getIcon(); - if (icon != null) { - DrawableCompat.setTint(icon, getThemeAccentColor(getContext())); - } - } -}