From d16b4a95be3002f80e800135808d0a4c8d49939c Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Fri, 27 Mar 2015 11:02:05 -0500 Subject: [PATCH] HideUntilControlSet extends TaskEditControlSetBase --- .../astrid/activity/TaskEditFragment.java | 2 +- .../astrid/ui/HideUntilControlSet.java | 47 ++++++++----------- src/main/res/layout/control_set_hide.xml | 26 +++++++--- .../res/layout/control_set_hide_spinner.xml | 16 ------- 4 files changed, 40 insertions(+), 51 deletions(-) delete mode 100644 src/main/res/layout/control_set_hide_spinner.xml diff --git a/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.java b/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.java index a0aeb95ac..1df6fd189 100755 --- a/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.java +++ b/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.java @@ -394,7 +394,7 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener { controlSetMap.put(getString(R.string.TEA_ctrl_reminders_pref), reminderControl); - HideUntilControlSet hideUntilControls = new HideUntilControlSet(preferences, this); + HideUntilControlSet hideUntilControls = new HideUntilControlSet(this); controls.add(hideUntilControls); controlSetMap.put(getString(R.string.TEA_ctrl_hide_until_pref), hideUntilControls); diff --git a/src/main/java/com/todoroo/astrid/ui/HideUntilControlSet.java b/src/main/java/com/todoroo/astrid/ui/HideUntilControlSet.java index 6e017cdfb..dd912c676 100644 --- a/src/main/java/com/todoroo/astrid/ui/HideUntilControlSet.java +++ b/src/main/java/com/todoroo/astrid/ui/HideUntilControlSet.java @@ -11,18 +11,17 @@ import android.view.View.OnClickListener; import android.widget.AdapterView; import android.widget.AdapterView.OnItemSelectedListener; import android.widget.ArrayAdapter; -import android.widget.LinearLayout; import android.widget.Spinner; import android.widget.TextView; import com.todoroo.andlib.utility.DateUtilities; import com.todoroo.astrid.activity.TaskEditFragment; import com.todoroo.astrid.data.Task; +import com.todoroo.astrid.helper.TaskEditControlSetBase; import org.joda.time.DateTime; import org.tasks.R; import org.tasks.dialogs.DateAndTimePickerDialog; -import org.tasks.preferences.ActivityPreferences; import java.util.Date; @@ -35,7 +34,7 @@ import static org.tasks.date.DateTimeUtils.newDateTime; * @author Tim Su * */ -public class HideUntilControlSet extends PopupControlSet implements OnItemSelectedListener { +public class HideUntilControlSet extends TaskEditControlSetBase implements OnItemSelectedListener { private static final int title = R.string.hide_until_prompt; @@ -49,9 +48,10 @@ public class HideUntilControlSet extends PopupControlSet implements OnItemSelect private long existingDate = EXISTING_TIME_UNSET; private TaskEditFragment taskEditFragment; + private TextView textDisplay; - public HideUntilControlSet(ActivityPreferences preferences, TaskEditFragment taskEditFragment) { - super(preferences, taskEditFragment.getActivity(), R.layout.control_set_hide_spinner, R.layout.control_set_hide, title); + public HideUntilControlSet(TaskEditFragment taskEditFragment) { + super(taskEditFragment.getActivity(), R.layout.control_set_hide); this.taskEditFragment = taskEditFragment; } @@ -167,44 +167,37 @@ public class HideUntilControlSet extends PopupControlSet implements OnItemSelect // --- setting up values - @Override - protected OnClickListener getDisplayClickListener() { - return new OnClickListener() { - @Override - public void onClick(View v) { - if (spinner == null) // Force load - { - getView(); - } - spinner.performClick(); - } - }; - } - - @Override - protected void refreshDisplayView() { - TextView auxDisplay = (TextView) getDisplayView().findViewById(R.id.display_row_edit); + private void refreshDisplayView() { HideUntilValue value = adapter.getItem(selection); if (value.setting == Task.HIDE_UNTIL_NONE) { - auxDisplay.setText(R.string.TEA_hideUntil_label); - auxDisplay.setTextColor(unsetColor); + textDisplay.setText(R.string.TEA_hideUntil_label); + textDisplay.setTextColor(unsetColor); } else { String display = value.toString(); if (value.setting != Task.HIDE_UNTIL_SPECIFIC_DAY && value.setting != Task.HIDE_UNTIL_SPECIFIC_DAY_TIME) { display = display.toLowerCase(); } - auxDisplay.setText(activity.getString(R.string.TEA_hideUntil_display, display)); - auxDisplay.setTextColor(themeColor); + textDisplay.setText(activity.getString(R.string.TEA_hideUntil_display, display)); + textDisplay.setTextColor(themeColor); } } @Override protected void afterInflate() { + textDisplay = (TextView) getView().findViewById(R.id.display_row_edit); + textDisplay.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + if (spinner == null) { + getView(); + } + spinner.performClick(); + } + }); this.spinner = (Spinner) getView().findViewById(R.id.hideUntil); this.spinner.setOnItemSelectedListener(this); this.spinner.setPromptId(title); - ((LinearLayout) getDisplayView()).addView(getView()); // hack to make listeners work } @Override diff --git a/src/main/res/layout/control_set_hide.xml b/src/main/res/layout/control_set_hide.xml index 8eb85ba2c..876400305 100644 --- a/src/main/res/layout/control_set_hide.xml +++ b/src/main/res/layout/control_set_hide.xml @@ -21,18 +21,30 @@ android:layout_width="fill_parent" android:layout_height="wrap_content"> - + android:layout_marginBottom="@dimen/task_edit_padding_top_bottom"> + + + + + + diff --git a/src/main/res/layout/control_set_hide_spinner.xml b/src/main/res/layout/control_set_hide_spinner.xml deleted file mode 100644 index 758a5b4bf..000000000 --- a/src/main/res/layout/control_set_hide_spinner.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - -