|
|
|
@ -10,6 +10,8 @@ import android.content.BroadcastReceiver;
|
|
|
|
import android.content.Context;
|
|
|
|
import android.content.Context;
|
|
|
|
import android.content.Intent;
|
|
|
|
import android.content.Intent;
|
|
|
|
import android.content.IntentFilter;
|
|
|
|
import android.content.IntentFilter;
|
|
|
|
|
|
|
|
import android.graphics.drawable.Drawable;
|
|
|
|
|
|
|
|
import android.support.v4.graphics.drawable.DrawableCompat;
|
|
|
|
import android.view.LayoutInflater;
|
|
|
|
import android.view.LayoutInflater;
|
|
|
|
import android.view.View;
|
|
|
|
import android.view.View;
|
|
|
|
import android.view.ViewGroup;
|
|
|
|
import android.view.ViewGroup;
|
|
|
|
@ -31,8 +33,9 @@ import org.tasks.activities.DonationActivity;
|
|
|
|
import org.tasks.filters.FilterCounter;
|
|
|
|
import org.tasks.filters.FilterCounter;
|
|
|
|
import org.tasks.filters.FilterProvider;
|
|
|
|
import org.tasks.filters.FilterProvider;
|
|
|
|
import org.tasks.filters.NavigationDrawerAction;
|
|
|
|
import org.tasks.filters.NavigationDrawerAction;
|
|
|
|
import org.tasks.filters.NavigationDrawerSubheader;
|
|
|
|
|
|
|
|
import org.tasks.filters.NavigationDrawerSeparator;
|
|
|
|
import org.tasks.filters.NavigationDrawerSeparator;
|
|
|
|
|
|
|
|
import org.tasks.filters.NavigationDrawerSubheader;
|
|
|
|
|
|
|
|
import org.tasks.preferences.ActivityPreferences;
|
|
|
|
import org.tasks.preferences.BasicPreferences;
|
|
|
|
import org.tasks.preferences.BasicPreferences;
|
|
|
|
import org.tasks.preferences.HelpAndFeedbackActivity;
|
|
|
|
import org.tasks.preferences.HelpAndFeedbackActivity;
|
|
|
|
import org.tasks.ui.NavigationDrawerFragment;
|
|
|
|
import org.tasks.ui.NavigationDrawerFragment;
|
|
|
|
@ -40,7 +43,6 @@ import org.tasks.ui.NavigationDrawerFragment;
|
|
|
|
import java.util.List;
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
|
|
|
|
import static org.tasks.preferences.ResourceResolver.getData;
|
|
|
|
import static org.tasks.preferences.ResourceResolver.getData;
|
|
|
|
import static org.tasks.preferences.ResourceResolver.getResource;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public class FilterAdapter extends ArrayAdapter<FilterListItem> {
|
|
|
|
public class FilterAdapter extends ArrayAdapter<FilterListItem> {
|
|
|
|
|
|
|
|
|
|
|
|
@ -55,18 +57,21 @@ public class FilterAdapter extends ArrayAdapter<FilterListItem> {
|
|
|
|
private final Activity activity;
|
|
|
|
private final Activity activity;
|
|
|
|
private final ListView listView;
|
|
|
|
private final ListView listView;
|
|
|
|
private boolean navigationDrawer;
|
|
|
|
private boolean navigationDrawer;
|
|
|
|
|
|
|
|
private ActivityPreferences activityPreferences;
|
|
|
|
private final FilterListUpdateReceiver filterListUpdateReceiver = new FilterListUpdateReceiver();
|
|
|
|
private final FilterListUpdateReceiver filterListUpdateReceiver = new FilterListUpdateReceiver();
|
|
|
|
|
|
|
|
|
|
|
|
/** layout inflater */
|
|
|
|
/** layout inflater */
|
|
|
|
private final LayoutInflater inflater;
|
|
|
|
private final LayoutInflater inflater;
|
|
|
|
|
|
|
|
|
|
|
|
public FilterAdapter(FilterProvider filterProvider, FilterCounter filterCounter, Activity activity, ListView listView, boolean navigationDrawer) {
|
|
|
|
public FilterAdapter(FilterProvider filterProvider, FilterCounter filterCounter, Activity activity,
|
|
|
|
|
|
|
|
ListView listView, boolean navigationDrawer, ActivityPreferences activityPreferences) {
|
|
|
|
super(activity, 0);
|
|
|
|
super(activity, 0);
|
|
|
|
this.filterProvider = filterProvider;
|
|
|
|
this.filterProvider = filterProvider;
|
|
|
|
this.filterCounter = filterCounter;
|
|
|
|
this.filterCounter = filterCounter;
|
|
|
|
this.activity = activity;
|
|
|
|
this.activity = activity;
|
|
|
|
this.listView = listView;
|
|
|
|
this.listView = listView;
|
|
|
|
this.navigationDrawer = navigationDrawer;
|
|
|
|
this.navigationDrawer = navigationDrawer;
|
|
|
|
|
|
|
|
this.activityPreferences = activityPreferences;
|
|
|
|
|
|
|
|
|
|
|
|
inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
|
|
|
|
inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@ -256,13 +261,13 @@ public class FilterAdapter extends ArrayAdapter<FilterListItem> {
|
|
|
|
|
|
|
|
|
|
|
|
add(new NavigationDrawerAction(
|
|
|
|
add(new NavigationDrawerAction(
|
|
|
|
activity.getResources().getString(R.string.new_tag),
|
|
|
|
activity.getResources().getString(R.string.new_tag),
|
|
|
|
getResource(activity, R.attr.ic_action_new_tag),
|
|
|
|
R.drawable.ic_add_black_24dp,
|
|
|
|
new Intent(activity, TagSettingsActivity.class),
|
|
|
|
new Intent(activity, TagSettingsActivity.class),
|
|
|
|
NavigationDrawerFragment.REQUEST_NEW_LIST));
|
|
|
|
NavigationDrawerFragment.REQUEST_NEW_LIST));
|
|
|
|
|
|
|
|
|
|
|
|
add(new NavigationDrawerAction(
|
|
|
|
add(new NavigationDrawerAction(
|
|
|
|
activity.getResources().getString(R.string.FLA_new_filter),
|
|
|
|
activity.getResources().getString(R.string.FLA_new_filter),
|
|
|
|
getResource(activity, R.attr.ic_action_new_tag),
|
|
|
|
R.drawable.ic_add_black_24dp,
|
|
|
|
new Intent(activity, CustomFilterActivity.class),
|
|
|
|
new Intent(activity, CustomFilterActivity.class),
|
|
|
|
TaskListFragment.ACTIVITY_REQUEST_NEW_FILTER));
|
|
|
|
TaskListFragment.ACTIVITY_REQUEST_NEW_FILTER));
|
|
|
|
|
|
|
|
|
|
|
|
@ -270,17 +275,17 @@ public class FilterAdapter extends ArrayAdapter<FilterListItem> {
|
|
|
|
|
|
|
|
|
|
|
|
add(new NavigationDrawerAction(
|
|
|
|
add(new NavigationDrawerAction(
|
|
|
|
activity.getResources().getString(R.string.TLA_menu_settings),
|
|
|
|
activity.getResources().getString(R.string.TLA_menu_settings),
|
|
|
|
getResource(activity, R.attr.ic_action_settings),
|
|
|
|
R.drawable.ic_settings_black_24dp,
|
|
|
|
new Intent(activity, BasicPreferences.class),
|
|
|
|
new Intent(activity, BasicPreferences.class),
|
|
|
|
REQUEST_SETTINGS));
|
|
|
|
REQUEST_SETTINGS));
|
|
|
|
add(new NavigationDrawerAction(
|
|
|
|
add(new NavigationDrawerAction(
|
|
|
|
activity.getResources().getString(R.string.help_and_feedback),
|
|
|
|
activity.getResources().getString(R.string.help_and_feedback),
|
|
|
|
getResource(activity, R.attr.ic_action_help),
|
|
|
|
R.drawable.ic_help_black_24dp,
|
|
|
|
new Intent(activity, HelpAndFeedbackActivity.class),
|
|
|
|
new Intent(activity, HelpAndFeedbackActivity.class),
|
|
|
|
0));
|
|
|
|
0));
|
|
|
|
add(new NavigationDrawerAction(
|
|
|
|
add(new NavigationDrawerAction(
|
|
|
|
activity.getResources().getString(R.string.TLA_menu_donate),
|
|
|
|
activity.getResources().getString(R.string.TLA_menu_donate),
|
|
|
|
getResource(activity, R.attr.ic_action_donate),
|
|
|
|
R.drawable.ic_attach_money_black_24dp,
|
|
|
|
new Intent(activity, DonationActivity.class),
|
|
|
|
new Intent(activity, DonationActivity.class),
|
|
|
|
0));
|
|
|
|
0));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@ -325,8 +330,18 @@ public class FilterAdapter extends ArrayAdapter<FilterListItem> {
|
|
|
|
|
|
|
|
|
|
|
|
viewHolder.view.setBackgroundResource(0);
|
|
|
|
viewHolder.view.setBackgroundResource(0);
|
|
|
|
int icon = filter.icon;
|
|
|
|
int icon = filter.icon;
|
|
|
|
viewHolder.icon.setImageResource(icon);
|
|
|
|
if (icon == 0) {
|
|
|
|
viewHolder.icon.setVisibility(icon == 0 ? View.INVISIBLE : View.VISIBLE);
|
|
|
|
viewHolder.icon.setVisibility(View.INVISIBLE);
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
Drawable drawable = activity.getResources().getDrawable(icon, activity.getTheme());
|
|
|
|
|
|
|
|
if (activityPreferences.isDarkTheme()) {
|
|
|
|
|
|
|
|
Drawable wrapDrawable = DrawableCompat.wrap(drawable);
|
|
|
|
|
|
|
|
DrawableCompat.setTint(wrapDrawable, activity.getResources().getColor(android.R.color.white));
|
|
|
|
|
|
|
|
drawable = wrapDrawable;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
viewHolder.icon.setImageDrawable(drawable);
|
|
|
|
|
|
|
|
viewHolder.icon.setVisibility(View.VISIBLE);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
String title = filter.listingTitle;
|
|
|
|
String title = filter.listingTitle;
|
|
|
|
if(!title.equals(viewHolder.name.getText())) {
|
|
|
|
if(!title.equals(viewHolder.name.getText())) {
|
|
|
|
|