From b0f8c077d9d7729b4fcd8337904d8c3521ea594c Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Mon, 8 Dec 2014 21:58:00 -0600 Subject: [PATCH] Change description control to EditText --- .../astrid/activity/TaskEditFragment.java | 2 +- .../astrid/ui/DescriptionControlSet.java | 70 ++----------------- .../res/layout/control_set_description.xml | 17 +++-- .../layout/control_set_description_edit.xml | 47 ------------- 4 files changed, 16 insertions(+), 120 deletions(-) delete mode 100644 src/main/res/layout/control_set_description_edit.xml diff --git a/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.java b/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.java index 2ee37a492..4cc54f617 100755 --- a/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.java +++ b/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.java @@ -384,7 +384,7 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener { controlSetMap.put(getString(R.string.TEA_ctrl_importance_pref), importanceControl); - DescriptionControlSet notesControlSet = new DescriptionControlSet(preferences, getActivity()); + DescriptionControlSet notesControlSet = new DescriptionControlSet(getActivity()); EditText notesEditText = (EditText) notesControlSet.getView().findViewById(R.id.notes); controls.add(notesControlSet); controlSetMap.put(getString(R.string.TEA_ctrl_notes_pref), diff --git a/src/main/java/com/todoroo/astrid/ui/DescriptionControlSet.java b/src/main/java/com/todoroo/astrid/ui/DescriptionControlSet.java index a75295c3f..7349ca43b 100644 --- a/src/main/java/com/todoroo/astrid/ui/DescriptionControlSet.java +++ b/src/main/java/com/todoroo/astrid/ui/DescriptionControlSet.java @@ -6,93 +6,33 @@ package com.todoroo.astrid.ui; import android.app.Activity; -import android.content.Context; -import android.graphics.Color; -import android.text.TextUtils; -import android.text.util.Linkify; -import android.view.WindowManager; -import android.view.inputmethod.InputMethodManager; import android.widget.EditText; -import android.widget.TextView; import com.todoroo.astrid.data.Task; +import com.todoroo.astrid.helper.TaskEditControlSetBase; import org.tasks.R; -import org.tasks.preferences.ActivityPreferences; -public class DescriptionControlSet extends PopupControlSet { +public class DescriptionControlSet extends TaskEditControlSetBase { protected EditText editText; - protected TextView notesPreview; - public DescriptionControlSet(ActivityPreferences preferences, Activity activity) { - super(preferences, activity, R.layout.control_set_description_edit, R.layout.control_set_description, R.string.TEA_note_label); - } - - @Override - protected void refreshDisplayView() { - String textToUse; - if (initialized) { - textToUse = editText.getText().toString(); - } else { - textToUse = model.getNotes(); - } - - if (TextUtils.isEmpty(textToUse)) { - notesPreview.setText(R.string.TEA_notes_empty); - notesPreview.setTextColor(unsetColor); - } else { - notesPreview.setText(textToUse); - notesPreview.setTextColor(themeColor); - } - - linkifyDisplayView(); - } - - private void linkifyDisplayView() { - if(!TextUtils.isEmpty(notesPreview.getText())) { - notesPreview.setLinkTextColor(Color.rgb(100, 160, 255)); - Linkify.addLinks(notesPreview, Linkify.ALL); - } + public DescriptionControlSet(Activity activity) { + super(activity, R.layout.control_set_description); } @Override protected void afterInflate() { editText = (EditText) getView().findViewById(R.id.notes); - notesPreview = (TextView) getDisplayView().findViewById(R.id.display_row_edit); - } - - @Override - protected void additionalDialogSetup() { - super.additionalDialogSetup(); - dialog.getWindow() - .setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE - | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); } @Override protected void readFromTaskOnInitialize() { editText.setTextKeepState(model.getNotes()); - notesPreview.setText(model.getNotes()); - linkifyDisplayView(); } @Override protected void writeToModelAfterInitialized(Task task) { - task.setNotes(editText.getText().toString()); - } - - @Override - protected boolean onOkClick() { - InputMethodManager imm = (InputMethodManager)activity.getSystemService(Context.INPUT_METHOD_SERVICE); - imm.hideSoftInputFromWindow(editText.getWindowToken(), 0); - return super.onOkClick(); - } - - @Override - protected void onCancelClick() { - super.onCancelClick(); - InputMethodManager imm = (InputMethodManager)activity.getSystemService(Context.INPUT_METHOD_SERVICE); - imm.hideSoftInputFromWindow(editText.getWindowToken(), 0); + task.setNotes(editText.getText().toString().trim()); } } diff --git a/src/main/res/layout/control_set_description.xml b/src/main/res/layout/control_set_description.xml index ec560e653..6096b23c2 100644 --- a/src/main/res/layout/control_set_description.xml +++ b/src/main/res/layout/control_set_description.xml @@ -21,20 +21,23 @@ android:layout_height="wrap_content" android:orientation="vertical"> - + android:paddingEnd="@dimen/task_edit_padding_right" + android:scrollbars="vertical" + android:hint="@string/TEA_notes_empty" + android:inputType="textCapSentences|textMultiLine" + android:imeOptions="flagNoExtractUi" + android:textColor="?attr/asTextColor" + android:freezesText="true" + android:background="@android:color/transparent"/> diff --git a/src/main/res/layout/control_set_description_edit.xml b/src/main/res/layout/control_set_description_edit.xml deleted file mode 100644 index aeb1170c4..000000000 --- a/src/main/res/layout/control_set_description_edit.xml +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - - - -