More custom attributes

pull/189/head
Alex Baker 10 years ago
parent 7eb0a57de7
commit 910e6a4ccf

@ -34,7 +34,6 @@ import com.todoroo.astrid.data.RemoteModel;
import com.todoroo.astrid.data.SyncFlags;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.data.TaskAttachment;
import com.todoroo.astrid.service.ThemeService;
import com.todoroo.astrid.ui.PopupControlSet;
import com.todoroo.astrid.utility.Constants;
import com.todoroo.astrid.voice.RecognizerApi;
@ -45,6 +44,8 @@ import org.tasks.R;
import java.io.File;
import java.util.ArrayList;
import static org.tasks.preferences.ResourceResolver.getResource;
public class FilesControlSet extends PopupControlSet {
private final ArrayList<TaskAttachment> files = new ArrayList<>();
@ -65,7 +66,7 @@ public class FilesControlSet extends PopupControlSet {
protected void refreshDisplayView() {
fileDisplayList.removeAllViews();
if (files != null && files.size() > 0) {
image.setImageResource(ThemeService.getTaskEditDrawable(R.drawable.tea_icn_files, R.drawable.tea_icn_files_lightblue));
image.setImageResource(getResource(activity, R.attr.tea_icn_files));
} else {
image.setImageResource(R.drawable.tea_icn_files_gray);
}

@ -25,7 +25,6 @@ import android.widget.TextView;
import android.widget.Toast;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.service.ThemeService;
import com.todoroo.astrid.ui.PopupControlSet;
import org.slf4j.Logger;
@ -35,6 +34,8 @@ import org.tasks.R;
import java.util.ArrayList;
import java.util.Collections;
import static org.tasks.preferences.ResourceResolver.getResource;
/**
* Control Set for managing repeats
*
@ -226,7 +227,7 @@ public class GCalControlSet extends PopupControlSet {
protected void refreshDisplayView() {
TextView calendar = (TextView) getDisplayView().findViewById(R.id.calendar_display_which);
calendar.setTextColor(themeColor);
image.setImageResource(ThemeService.getTaskEditDrawable(R.drawable.tea_icn_addcal, R.drawable.tea_icn_addcal_lightblue));
image.setImageResource(getResource(activity, R.attr.tea_icn_addcal));
if (initialized) {
if (hasEvent) {
calendar.setText(R.string.gcal_TEA_has_event);

@ -14,11 +14,12 @@ import android.view.View;
import android.widget.Button;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.service.ThemeService;
import com.todoroo.astrid.ui.EditDialogOkBackground;
import org.tasks.R;
import static org.tasks.preferences.ResourceResolver.getResource;
// --- interface
/**
@ -41,7 +42,7 @@ public abstract class TaskEditControlSet {
initialized = true;
}
themeColor = activity.getResources().getColor(ThemeService.getTaskEditThemeColor());
themeColor = getResource(activity, R.attr.task_edit_theme_color);
unsetColor = activity.getResources().getColor(R.color.task_edit_deadline_gray);
}

@ -28,7 +28,6 @@ import com.google.ical.values.WeekdayNum;
import com.todoroo.andlib.utility.DialogUtilities;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.service.TaskService;
import com.todoroo.astrid.service.ThemeService;
import com.todoroo.astrid.ui.DateAndTimeDialog;
import com.todoroo.astrid.ui.DateAndTimeDialog.DateAndTimeDialogListener;
import com.todoroo.astrid.ui.DateAndTimePicker;
@ -394,7 +393,7 @@ public class RepeatControlSet extends PopupControlSet {
if (doRepeat) {
repeatDisplay.setText(getRepeatString(true));
repeatDisplay.setTextColor(themeColor);
repeatImage.setImageResource(ThemeService.getTaskEditDrawable(R.drawable.tea_icn_repeat, R.drawable.tea_icn_repeat));
repeatImage.setImageResource(R.drawable.tea_icn_repeat);
} else {
repeatDisplay.setTextColor(unsetColor);

@ -15,9 +15,6 @@ import org.tasks.R;
public class ThemeService {
public static final String THEME_WHITE = "white";
public static final String THEME_BLACK = "black";
public static void applyTheme(Activity activity) {
int currentTheme = getTheme();
activity.setTheme(currentTheme);
@ -25,16 +22,7 @@ public class ThemeService {
}
private static int getTheme() {
String preference = Preferences.getBoolean(R.string.p_use_dark_theme, false) ? THEME_BLACK : THEME_WHITE;
return getStyleForSetting(preference);
}
private static int getStyleForSetting(String setting) {
if(THEME_BLACK.equals(setting)) {
return R.style.Tasks;
} else {
return R.style.Tasks_Light;
}
return Preferences.getBoolean(R.string.p_use_dark_theme, false) ? R.style.Tasks : R.style.Tasks_Light;
}
public static int getThemeColor() {
@ -78,20 +66,4 @@ public class ThemeService {
}
return theme;
}
public static int getDarkVsLight(int resForLight, int resForDark) {
int theme = getTheme();
if (theme == R.style.Tasks) {
return resForDark;
} else {
return resForLight;
}
}
public static int getTaskEditDrawable(int regularDrawable, int lightBlueDrawable) {
return getDarkVsLight(regularDrawable, lightBlueDrawable);
}
public static int getTaskEditThemeColor() {
return getDarkVsLight(R.color.task_edit_selected, R.color.blue_theme_color);
}
}

@ -28,7 +28,6 @@ import com.todoroo.andlib.data.TodorooCursor;
import com.todoroo.andlib.utility.DateUtilities;
import com.todoroo.astrid.data.Metadata;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.service.ThemeService;
import com.todoroo.astrid.tags.TagService.Tag;
import com.todoroo.astrid.ui.PopupControlSet;
import com.todoroo.astrid.utility.Flags;
@ -39,6 +38,8 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashSet;
import static org.tasks.preferences.ResourceResolver.getResource;
/**
* Control set to manage adding and removing tags
*
@ -314,7 +315,7 @@ public final class TagsControlSet extends PopupControlSet {
if (!TextUtils.isEmpty(tagString)) {
tagsDisplay.setText(tagString);
tagsDisplay.setTextColor(themeColor);
image.setImageResource(ThemeService.getTaskEditDrawable(R.drawable.tea_icn_lists, R.drawable.tea_icn_lists_lightblue));
image.setImageResource(getResource(activity, R.attr.tea_icn_lists));
} else {
tagsDisplay.setText(R.string.tag_FEx_untagged);
tagsDisplay.setTextColor(unsetColor);

@ -15,13 +15,14 @@ import android.widget.TextView;
import com.todoroo.andlib.data.Property.IntegerProperty;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.helper.TaskEditControlSet;
import com.todoroo.astrid.service.ThemeService;
import com.todoroo.astrid.timers.TimerActionControlSet.TimerActionListener;
import com.todoroo.astrid.ui.PopupControlSet;
import com.todoroo.astrid.ui.TimeDurationControlSet;
import org.tasks.R;
import static org.tasks.preferences.ResourceResolver.getResource;
/**
* Control Set for managing repeats
*
@ -140,7 +141,7 @@ public class TimerControlSet extends PopupControlSet implements TimerActionListe
if (!TextUtils.isEmpty(toDisplay)) {
displayEdit.setText(toDisplay);
displayEdit.setTextColor(themeColor);
image.setImageResource(ThemeService.getTaskEditDrawable(R.drawable.tea_icn_timer, R.drawable.tea_icn_timer_lightblue));
image.setImageResource(getResource(activity, R.attr.tea_icn_timer));
} else {
displayEdit.setText(R.string.TEA_timer_controls);
displayEdit.setTextColor(unsetColor);

@ -22,10 +22,11 @@ import com.todoroo.andlib.utility.DateUtilities;
import com.todoroo.andlib.utility.DialogUtilities;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.repeats.RepeatControlSet;
import com.todoroo.astrid.service.ThemeService;
import org.tasks.R;
import static org.tasks.preferences.ResourceResolver.getResource;
public class DeadlineControlSet extends PopupControlSet {
private boolean isQuickadd = false;
@ -73,10 +74,9 @@ public class DeadlineControlSet extends PopupControlSet {
image.setImageResource(R.drawable.tea_icn_date_red);
} else {
dateDisplay.setTextColor(themeColor);
image.setImageResource(ThemeService.getTaskEditDrawable(R.drawable.tea_icn_date, R.drawable.tea_icn_date_lightblue));
image.setImageResource(getResource(activity, R.attr.tea_icn_date));
}
}
}
@Override

@ -17,10 +17,11 @@ import android.widget.ImageView;
import android.widget.TextView;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.service.ThemeService;
import org.tasks.R;
import static org.tasks.preferences.ResourceResolver.getResource;
public class EditNotesControlSet extends PopupControlSet {
protected EditText editText;
@ -48,7 +49,7 @@ public class EditNotesControlSet extends PopupControlSet {
} else {
notesPreview.setText(textToUse);
notesPreview.setTextColor(themeColor);
image.setImageResource(ThemeService.getTaskEditDrawable(R.drawable.tea_icn_edit, R.drawable.tea_icn_edit_lightblue));
image.setImageResource(getResource(activity, R.attr.tea_icn_edit));
}
linkifyDisplayView();

@ -18,7 +18,6 @@ import android.widget.TextView;
import com.todoroo.andlib.utility.DateUtilities;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.service.ThemeService;
import com.todoroo.astrid.ui.DateAndTimeDialog.DateAndTimeDialogListener;
import org.tasks.R;
@ -26,6 +25,7 @@ import org.tasks.R;
import java.util.Date;
import static org.tasks.date.DateTimeUtils.newDate;
import static org.tasks.preferences.ResourceResolver.getResource;
/**
* Control set for specifying when a task should be hidden
@ -205,7 +205,7 @@ public class HideUntilControlSet extends PopupControlSet implements OnItemSelect
auxDisplay.setText(activity.getString(R.string.TEA_hideUntil_display, display));
auxDisplay.setTextColor(themeColor);
image.setImageResource(ThemeService.getTaskEditDrawable(R.drawable.tea_icn_hide, R.drawable.tea_icn_hide_lightblue));
image.setImageResource(getResource(activity, R.attr.tea_icn_hide));
}
}

@ -22,6 +22,8 @@ import org.tasks.R;
import java.util.LinkedList;
import java.util.List;
import static org.tasks.preferences.ResourceResolver.getResource;
/**
* Control Set for setting task importance
*
@ -48,7 +50,7 @@ public class ImportanceControlSet extends TaskEditControlSet {
for(CompoundButton b : buttons) {
if(b.getTag() == i) {
b.setChecked(true);
b.setBackgroundResource(ThemeService.getDarkVsLight(R.drawable.importance_background_selected, R.drawable.importance_background_selected_dark));
b.setBackgroundResource(getResource(activity, R.attr.importance_background_selected));
} else {
b.setChecked(false);
b.setBackgroundResource(0);

@ -20,13 +20,14 @@ import android.widget.TextView;
import com.todoroo.astrid.alarms.AlarmControlSet;
import com.todoroo.astrid.alarms.AlarmService;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.service.ThemeService;
import org.tasks.R;
import java.util.ArrayList;
import java.util.List;
import static org.tasks.preferences.ResourceResolver.getResource;
/**
* Control set dealing with reminder settings
*
@ -219,7 +220,7 @@ public class ReminderControlSet extends PopupControlSet {
label.setText(toDisplay);
label.setTextColor(themeColor);
image.setImageResource(ThemeService.getTaskEditDrawable(R.drawable.tea_icn_reminder, R.drawable.tea_icn_reminder_lightblue));
image.setImageResource(getResource(activity, R.attr.tea_icn_reminder));
} else {
label.setText(R.string.TEA_reminders_group_label);
label.setTextColor(unsetColor);

@ -17,6 +17,10 @@ public class ResourceResolver {
}
public int getResource(int attr) {
return getResource(activity, attr);
}
public static int getResource(Activity activity, int attr) {
TypedValue typedValue = new TypedValue();
activity.getTheme().resolveAttribute(attr, typedValue, true);
return typedValue.resourceId;

@ -36,6 +36,17 @@
<attr name="ic_drawer" format="reference"/>
<attr name="drawer_background" format="color"/>
<attr name="drawer_text" format="color"/>
<attr name="task_edit_theme_color" format="color"/>
<attr name="importance_background_selected" format="reference"/>
<attr name="tea_icn_files" format="reference"/>
<attr name="tea_icn_addcal" format="reference"/>
<attr name="tea_icn_lists" format="reference"/>
<attr name="tea_icn_timer" format="reference"/>
<attr name="tea_icn_date" format="reference"/>
<attr name="tea_icn_edit" format="reference"/>
<attr name="tea_icn_hide" format="reference"/>
<attr name="tea_icn_reminder" format="reference"/>
<declare-styleable name="DateAndTimePicker">
<attr name="shortcutLabels" format="reference"/>

@ -37,6 +37,16 @@
<item name="ic_action_new">@drawable/ic_action_new_light</item>
<item name="ic_action_search">@drawable/ic_action_search_light</item>
<item name="ic_drawer">@drawable/ic_drawer_light</item>
<item name="task_edit_theme_color">@color/blue_theme_color</item>
<item name="importance_background_selected">@drawable/importance_background_selected_dark</item>
<item name="tea_icn_files">@drawable/tea_icn_files_lightblue</item>
<item name="tea_icn_addcal">@drawable/tea_icn_addcal_lightblue</item>
<item name="tea_icn_lists">@drawable/tea_icn_lists_lightblue</item>
<item name="tea_icn_timer">@drawable/tea_icn_timer_lightblue</item>
<item name="tea_icn_date">@drawable/tea_icn_date_lightblue</item>
<item name="tea_icn_edit">@drawable/tea_icn_edit_lightblue</item>
<item name="tea_icn_hide">@drawable/tea_icn_hide_lightblue</item>
<item name="tea_icn_reminder">@drawable/tea_icn_reminder_lightblue</item>
<item name="drawer_background">#303030</item>
<item name="drawer_text">#ffffff</item>
<!-- actionbar-styling -->
@ -84,6 +94,17 @@
<item name="ic_action_new">@drawable/ic_action_new</item>
<item name="ic_action_search">@drawable/ic_action_search</item>
<item name="ic_drawer">@drawable/ic_drawer</item>
<item name="task_edit_theme_color">@color/task_edit_selected</item>
<item name="importance_background_selected">@drawable/importance_background_selected</item>
<item name="tea_icn_files">@drawable/tea_icn_files</item>
<item name="tea_icn_addcal">@drawable/tea_icn_addcal</item>
<item name="tea_icn_lists">@drawable/tea_icn_lists</item>
<item name="tea_icn_timer">@drawable/tea_icn_timer</item>
<item name="tea_icn_date">@drawable/tea_icn_date</item>
<item name="tea_icn_edit">@drawable/tea_icn_edit</item>
<item name="tea_icn_hide">@drawable/tea_icn_hide</item>
<item name="tea_icn_reminder">@drawable/tea_icn_reminder</item>
<item name="drawer_background">#efefef</item>
<item name="drawer_text">#000</item>
<!-- actionbar-styling -->

Loading…
Cancel
Save