Remove more compat methods

pull/996/head
Alex Baker 4 years ago
parent 7b1f2d1330
commit db49920e21

@ -7,7 +7,6 @@ import android.widget.ImageView;
import android.widget.TextView; import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.core.graphics.drawable.DrawableCompat;
import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView; import butterknife.BindView;
import butterknife.ButterKnife; import butterknife.ButterKnife;
@ -89,7 +88,7 @@ public class FilterViewHolder extends RecyclerView.ViewHolder {
int icon = getIcon(filter); int icon = getIcon(filter);
this.icon.setImageDrawable(DrawableUtil.getWrapped(activity, icon)); this.icon.setImageDrawable(DrawableUtil.getWrapped(activity, icon));
DrawableCompat.setTint(this.icon.getDrawable(), getColor(filter)); this.icon.getDrawable().setTint(getColor(filter));
text.setText(filter.listingTitle); text.setText(filter.listingTitle);
if (count == null || count == 0) { if (count == null || count == 0) {

@ -24,7 +24,6 @@ import android.widget.Spinner;
import android.widget.TextView; import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.core.graphics.drawable.DrawableCompat;
import butterknife.BindView; import butterknife.BindView;
import butterknife.OnItemSelected; import butterknife.OnItemSelected;
import com.google.common.base.Strings; import com.google.common.base.Strings;
@ -154,11 +153,8 @@ public class RepeatControlSet extends TaskEditControlFragment {
return tv; return tv;
} }
}; };
Drawable drawable = Drawable drawable = context.getDrawable(R.drawable.textfield_underline_black).mutate();
DrawableCompat.wrap( drawable.setTint(context.getColor(R.color.text_primary));
context.getDrawable(R.drawable.textfield_underline_black));
drawable.mutate();
DrawableCompat.setTint(drawable, context.getColor(R.color.text_primary));
typeSpinner.setBackgroundDrawable(drawable); typeSpinner.setBackgroundDrawable(drawable);
typeSpinner.setAdapter(typeAdapter); typeSpinner.setAdapter(typeAdapter);
typeSpinner.setSelection(repeatAfterCompletion ? TYPE_COMPLETION_DATE : TYPE_DUE_DATE); typeSpinner.setSelection(repeatAfterCompletion ? TYPE_COMPLETION_DATE : TYPE_DUE_DATE);

@ -12,7 +12,6 @@ import android.view.View;
import android.widget.TextView; import android.widget.TextView;
import androidx.appcompat.widget.Toolbar; import androidx.appcompat.widget.Toolbar;
import androidx.appcompat.widget.Toolbar.OnMenuItemClickListener; import androidx.appcompat.widget.Toolbar.OnMenuItemClickListener;
import androidx.core.graphics.drawable.DrawableCompat;
import butterknife.BindView; import butterknife.BindView;
import butterknife.ButterKnife; import butterknife.ButterKnife;
import butterknife.OnClick; import butterknife.OnClick;
@ -168,18 +167,16 @@ public abstract class BaseListSettingsActivity extends ThemedInjectingAppCompatA
if (selectedColor == 0) { if (selectedColor == 0) {
themeColor = this.themeColor; themeColor = this.themeColor;
DrawableUtil.setLeftDrawable(this, color, R.drawable.ic_outline_not_interested_24px); DrawableUtil.setLeftDrawable(this, color, R.drawable.ic_outline_not_interested_24px);
DrawableCompat.setTint( getLeftDrawable(color).setTint(getColor(R.color.icon_tint_with_alpha));
getLeftDrawable(color), getColor(R.color.icon_tint_with_alpha));
clear.setVisibility(View.GONE); clear.setVisibility(View.GONE);
} else { } else {
themeColor = colorProvider.getThemeColor(selectedColor, true); themeColor = colorProvider.getThemeColor(selectedColor, true);
DrawableUtil.setLeftDrawable(this, color, R.drawable.color_picker); DrawableUtil.setLeftDrawable(this, color, R.drawable.color_picker);
Drawable leftDrawable = getLeftDrawable(color); Drawable leftDrawable = getLeftDrawable(color);
DrawableCompat.setTint( (leftDrawable instanceof LayerDrawable
leftDrawable instanceof LayerDrawable
? ((LayerDrawable) leftDrawable).getDrawable(0) ? ((LayerDrawable) leftDrawable).getDrawable(0)
: leftDrawable, : leftDrawable)
themeColor.getPrimaryColor()); .setTint(themeColor.getPrimaryColor());
clear.setVisibility(View.VISIBLE); clear.setVisibility(View.VISIBLE);
} }
themeColor.apply(toolbar); themeColor.apply(toolbar);
@ -189,7 +186,6 @@ public abstract class BaseListSettingsActivity extends ThemedInjectingAppCompatA
icon = CustomIcons.getIconResId(CustomIcons.getCLOUD()); icon = CustomIcons.getIconResId(CustomIcons.getCLOUD());
} }
DrawableUtil.setLeftDrawable(this, this.icon, icon); DrawableUtil.setLeftDrawable(this, this.icon, icon);
DrawableCompat.setTint( getLeftDrawable(this.icon).setTint(getColor(R.color.icon_tint_with_alpha));
getLeftDrawable(this.icon), getColor(R.color.icon_tint_with_alpha));
} }
} }

@ -20,7 +20,6 @@ import android.widget.EditText;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.core.graphics.drawable.DrawableCompat;
import butterknife.BindView; import butterknife.BindView;
import butterknife.ButterKnife; import butterknife.ButterKnife;
import butterknife.OnClick; import butterknife.OnClick;
@ -223,10 +222,8 @@ public class CommentBarFragment extends TaskEditControlFragment {
private void resetPictureButton() { private void resetPictureButton() {
TypedValue typedValue = new TypedValue(); TypedValue typedValue = new TypedValue();
getActivity().getTheme().resolveAttribute(R.attr.colorOnPrimary, typedValue, true); getActivity().getTheme().resolveAttribute(R.attr.colorOnPrimary, typedValue, true);
Drawable drawable = Drawable drawable = getContext().getDrawable(R.drawable.ic_outline_photo_camera_24px).mutate();
DrawableCompat.wrap(getContext().getDrawable(R.drawable.ic_outline_photo_camera_24px)); drawable.setTint(typedValue.data);
drawable.mutate();
DrawableCompat.setTint(drawable, typedValue.data);
pictureButton.setImageDrawable(drawable); pictureButton.setImageDrawable(drawable);
} }

@ -32,8 +32,8 @@ abstract class InjectingPreferenceFragment : PreferenceFragmentCompat() {
} }
} else { } else {
if (pref.icon != null) { if (pref.icon != null) {
pref.icon = DrawableUtil.wrap(pref.icon) pref.icon = pref.icon.mutate()
DrawableCompat.setTint(pref.icon, color) pref.icon.setTint(color)
} }
} }
} }

@ -4,11 +4,11 @@ import android.app.Dialog;
import android.content.Context; import android.content.Context;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.content.res.Configuration; import android.content.res.Configuration;
import android.text.TextUtils;
import android.view.ContextThemeWrapper; import android.view.ContextThemeWrapper;
import android.view.View; import android.view.View;
import android.view.ViewParent; import android.view.ViewParent;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.core.text.TextUtilsCompat;
import androidx.preference.PreferenceManager; import androidx.preference.PreferenceManager;
import com.google.common.base.Strings; import com.google.common.base.Strings;
import java.io.Serializable; import java.io.Serializable;
@ -42,10 +42,10 @@ public class Locale implements Serializable {
appLocale = deviceLocale; appLocale = deviceLocale;
} }
appDirectionality = TextUtilsCompat.getLayoutDirectionFromLocale(appLocale); appDirectionality = TextUtils.getLayoutDirectionFromLocale(appLocale);
appDirectionalityMark = appDirectionalityMark =
appDirectionality == View.LAYOUT_DIRECTION_RTL ? RIGHT_TO_LEFT_MARK : LEFT_TO_RIGHT_MARK; appDirectionality == View.LAYOUT_DIRECTION_RTL ? RIGHT_TO_LEFT_MARK : LEFT_TO_RIGHT_MARK;
int deviceDirectionality = TextUtilsCompat.getLayoutDirectionFromLocale(deviceLocale); int deviceDirectionality = TextUtils.getLayoutDirectionFromLocale(deviceLocale);
hasUserOverrides = hasUserOverrides =
!(deviceLocale.equals(appLocale) && appDirectionality == deviceDirectionality); !(deviceLocale.equals(appLocale) && appDirectionality == deviceDirectionality);
} }

@ -8,7 +8,6 @@ import android.view.ViewGroup;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.TextView; import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.core.graphics.drawable.DrawableCompat;
import androidx.recyclerview.widget.DiffUtil.ItemCallback; import androidx.recyclerview.widget.DiffUtil.ItemCallback;
import androidx.recyclerview.widget.ListAdapter; import androidx.recyclerview.widget.ListAdapter;
import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.RecyclerView;
@ -111,7 +110,7 @@ public class LocationPickerAdapter extends ListAdapter<PlaceUsage, PlaceViewHold
String address = place.getDisplayAddress(); String address = place.getDisplayAddress();
Drawable wrapped = DrawableUtil.getWrapped(itemView.getContext(), icon); Drawable wrapped = DrawableUtil.getWrapped(itemView.getContext(), icon);
this.icon.setImageDrawable(wrapped); this.icon.setImageDrawable(wrapped);
DrawableCompat.setTint(this.icon.getDrawable(), color); this.icon.getDrawable().setTint(color);
this.name.setText(name); this.name.setText(name);
if (Strings.isNullOrEmpty(address) || address.equals(name)) { if (Strings.isNullOrEmpty(address) || address.equals(name)) {
this.address.setVisibility(View.GONE); this.address.setVisibility(View.GONE);

@ -1,7 +1,6 @@
package org.tasks.preferences; package org.tasks.preferences;
import android.app.Activity; import android.app.Activity;
import androidx.core.app.ActivityCompat;
import javax.inject.Inject; import javax.inject.Inject;
public class ActivityPermissionRequestor extends PermissionRequestor { public class ActivityPermissionRequestor extends PermissionRequestor {
@ -17,6 +16,6 @@ public class ActivityPermissionRequestor extends PermissionRequestor {
@Override @Override
protected void requestPermissions(int rc, String... permissions) { protected void requestPermissions(int rc, String... permissions) {
ActivityCompat.requestPermissions(activity, permissions, rc); activity.requestPermissions(permissions, rc);
} }
} }

@ -6,7 +6,6 @@ import static com.todoroo.andlib.utility.AndroidUtilities.atLeastQ;
import android.Manifest.permission; import android.Manifest.permission;
import android.content.Context; import android.content.Context;
import android.content.pm.PackageManager; import android.content.pm.PackageManager;
import androidx.core.app.ActivityCompat;
import javax.inject.Inject; import javax.inject.Inject;
import org.tasks.injection.ForApplication; import org.tasks.injection.ForApplication;
import timber.log.Timber; import timber.log.Timber;
@ -40,8 +39,7 @@ public class PermissionChecker {
private boolean checkPermissions(String... permissions) { private boolean checkPermissions(String... permissions) {
for (String permission : permissions) { for (String permission : permissions) {
if (ActivityCompat.checkSelfPermission(context, permission) if (context.checkSelfPermission(permission) != PackageManager.PERMISSION_GRANTED) {
!= PackageManager.PERMISSION_GRANTED) {
Timber.w("Request for %s denied", permission); Timber.w("Request for %s denied", permission);
return false; return false;
} }

@ -38,7 +38,6 @@ import android.widget.TextView;
import android.widget.ToggleButton; import android.widget.ToggleButton;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.core.view.ViewCompat;
import butterknife.BindView; import butterknife.BindView;
import butterknife.ButterKnife; import butterknife.ButterKnife;
import butterknife.OnItemSelected; import butterknife.OnItemSelected;
@ -314,7 +313,7 @@ public class CustomRecurrenceDialog extends InjectingDialogFragment {
int paddingTop = weekButton.getPaddingTop(); int paddingTop = weekButton.getPaddingTop();
int paddingLeft = weekButton.getPaddingLeft(); int paddingLeft = weekButton.getPaddingLeft();
int paddingRight = weekButton.getPaddingRight(); int paddingRight = weekButton.getPaddingRight();
ViewCompat.setBackground(weekButton, stateListDrawable); weekButton.setBackground(stateListDrawable);
weekButton.setPadding(paddingLeft, paddingTop, paddingRight, paddingBottom); weekButton.setPadding(paddingLeft, paddingTop, paddingRight, paddingBottom);
int dayOfWeek = dayOfWeekCalendar.get(Calendar.DAY_OF_WEEK); int dayOfWeek = dayOfWeekCalendar.get(Calendar.DAY_OF_WEEK);

@ -11,7 +11,6 @@ import android.widget.ImageView;
import android.widget.TextView; import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.core.graphics.drawable.DrawableCompat;
import com.todoroo.astrid.gtasks.auth.GtasksLoginActivity; import com.todoroo.astrid.gtasks.auth.GtasksLoginActivity;
import org.tasks.R; import org.tasks.R;
import org.tasks.caldav.CaldavAccountSettingsActivity; import org.tasks.caldav.CaldavAccountSettingsActivity;
@ -44,8 +43,7 @@ public class AddAccountDialog {
ImageView icon = view.findViewById(R.id.image_view); ImageView icon = view.findViewById(R.id.image_view);
icon.setImageDrawable(DrawableUtil.getWrapped(getContext(), icons[position])); icon.setImageDrawable(DrawableUtil.getWrapped(getContext(), icons[position]));
if (position == 1) { if (position == 1) {
DrawableCompat.setTint( icon.getDrawable().setTint(getContext().getColor(R.color.icon_tint));
icon.getDrawable(), getContext().getColor(R.color.icon_tint));
} }
return view; return view;
} }

@ -11,7 +11,6 @@ import android.widget.CompoundButton;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.appcompat.widget.AppCompatCheckBox; import androidx.appcompat.widget.AppCompatCheckBox;
import androidx.core.content.res.ResourcesCompat; import androidx.core.content.res.ResourcesCompat;
import androidx.core.graphics.drawable.DrawableCompat;
import org.tasks.R; import org.tasks.R;
public class CheckBoxTriStates extends AppCompatCheckBox { public class CheckBoxTriStates extends AppCompatCheckBox {
@ -119,7 +118,7 @@ public class CheckBoxTriStates extends AppCompatCheckBox {
? getContext().getColor(R.color.icon_tint) ? getContext().getColor(R.color.icon_tint)
: getData(getContext(), R.attr.colorAccent); : getData(getContext(), R.attr.colorAccent);
drawable = original.mutate(); drawable = original.mutate();
DrawableCompat.setTint(drawable, color); drawable.setTint(color);
drawable.setAlpha(alpha); drawable.setAlpha(alpha);
setButtonDrawable(drawable); setButtonDrawable(drawable);
} }

@ -5,12 +5,10 @@ import android.graphics.drawable.Drawable;
import android.graphics.drawable.LayerDrawable; import android.graphics.drawable.LayerDrawable;
import android.widget.TextView; import android.widget.TextView;
import androidx.annotation.DrawableRes; import androidx.annotation.DrawableRes;
import androidx.core.graphics.drawable.DrawableCompat;
import org.jetbrains.annotations.NotNull;
public class DrawableUtil { public class DrawableUtil {
public static Drawable getWrapped(Context context, @DrawableRes int resId) { public static Drawable getWrapped(Context context, @DrawableRes int resId) {
return wrap(context.getDrawable(resId)); return context.getDrawable(resId).mutate();
} }
public static void setLeftDrawable(Context context, TextView tv, @DrawableRes int resId) { public static void setLeftDrawable(Context context, TextView tv, @DrawableRes int resId) {
@ -27,13 +25,8 @@ public class DrawableUtil {
return tv.getCompoundDrawablesRelative()[0]; return tv.getCompoundDrawablesRelative()[0];
} }
public static Drawable wrap(@NotNull Drawable icon) {
return DrawableCompat.wrap(icon.mutate());
}
public static void setTint(Drawable drawable, int tint) { public static void setTint(Drawable drawable, int tint) {
DrawableCompat.setTint( (drawable instanceof LayerDrawable ? ((LayerDrawable) drawable).getDrawable(0) : drawable)
drawable instanceof LayerDrawable ? ((LayerDrawable) drawable).getDrawable(0) : drawable, .setTint(tint);
tint);
} }
} }

@ -34,8 +34,8 @@ class CheckBoxProvider @Inject constructor(@ForActivity private val context: Con
private fun getDrawable(@DrawableRes resId: Int, priority: Int): Drawable { private fun getDrawable(@DrawableRes resId: Int, priority: Int): Drawable {
val original = context.getDrawable(resId) val original = context.getDrawable(resId)
val wrapped = DrawableCompat.wrap(original!!.mutate()) val wrapped = original!!.mutate()
DrawableCompat.setTint(wrapped, colorProvider.getPriorityColor(priority)) wrapped.setTint(colorProvider.getPriorityColor(priority))
return wrapped return wrapped
} }

@ -8,7 +8,6 @@ import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.appcompat.widget.AppCompatRadioButton; import androidx.appcompat.widget.AppCompatRadioButton;
import androidx.core.widget.CompoundButtonCompat;
import butterknife.BindView; import butterknife.BindView;
import butterknife.OnClick; import butterknife.OnClick;
import com.todoroo.astrid.data.Task; import com.todoroo.astrid.data.Task;
@ -111,8 +110,7 @@ public class PriorityControlSet extends TaskEditControlFragment {
private void tintRadioButton(AppCompatRadioButton radioButton, int priority) { private void tintRadioButton(AppCompatRadioButton radioButton, int priority) {
int color = colorProvider.getPriorityColor(priority, true); int color = colorProvider.getPriorityColor(priority, true);
CompoundButtonCompat.setButtonTintList( radioButton.setButtonTintList(
radioButton,
new ColorStateList( new ColorStateList(
new int[][] { new int[][] {
new int[] {-android.R.attr.state_checked}, new int[] {android.R.attr.state_checked} new int[] {-android.R.attr.state_checked}, new int[] {android.R.attr.state_checked}

@ -23,7 +23,6 @@ import android.graphics.Rect;
import android.graphics.drawable.Drawable; import android.graphics.drawable.Drawable;
import android.util.AttributeSet; import android.util.AttributeSet;
import android.widget.FrameLayout; import android.widget.FrameLayout;
import androidx.core.view.ViewCompat;
import org.tasks.R; import org.tasks.R;
/** /**
@ -68,7 +67,7 @@ public class ScrimInsetsFrameLayout extends FrameLayout {
protected boolean fitSystemWindows(Rect insets) { protected boolean fitSystemWindows(Rect insets) {
mInsets = new Rect(insets); mInsets = new Rect(insets);
setWillNotDraw(mInsetForeground == null); setWillNotDraw(mInsetForeground == null);
ViewCompat.postInvalidateOnAnimation(this); postInvalidateOnAnimation();
if (mOnInsetsCallback != null) { if (mOnInsetsCallback != null) {
mOnInsetsCallback.onInsetsChanged(insets); mOnInsetsCallback.onInsetsChanged(insets);
} }

@ -9,7 +9,6 @@ import android.widget.CheckedTextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.core.content.res.ResourcesCompat; import androidx.core.content.res.ResourcesCompat;
import androidx.core.graphics.drawable.DrawableCompat;
import java.util.List; import java.util.List;
import org.tasks.R; import org.tasks.R;
@ -34,7 +33,7 @@ public class SingleCheckedArrayAdapter extends ArrayAdapter<String> {
int drawable = getDrawable(); int drawable = getDrawable();
if (drawable > 0) { if (drawable > 0) {
Drawable original = context.getDrawable(drawable); Drawable original = context.getDrawable(drawable);
Drawable wrapped = DrawableCompat.wrap(original.mutate()); Drawable wrapped = original.mutate();
int color = getDrawableColor(position); int color = getDrawableColor(position);
if (color == 0) { if (color == 0) {
color = tint; color = tint;
@ -42,7 +41,7 @@ public class SingleCheckedArrayAdapter extends ArrayAdapter<String> {
} else if (color == -1) { } else if (color == -1) {
wrapped.setAlpha(0); wrapped.setAlpha(0);
} }
DrawableCompat.setTint(wrapped, color); wrapped.setTint(color);
view.setCompoundDrawablesRelativeWithIntrinsicBounds(wrapped, null, null, null); view.setCompoundDrawablesRelativeWithIntrinsicBounds(wrapped, null, null, null);
} }
return view; return view;

Loading…
Cancel
Save