diff --git a/build.gradle b/build.gradle
index 0dee85670..f95a247b6 100644
--- a/build.gradle
+++ b/build.gradle
@@ -74,6 +74,8 @@ dependencies {
provided group: 'com.squareup.dagger', name: 'dagger-compiler', version: '1.2.2'
compile group: 'com.squareup.dagger', name: 'dagger', version: '1.2.2'
+ compile group: 'com.jakewharton', name: 'butterknife', version: '6.0.0'
+
compile group: 'com.android.support', name: 'support-v4', version: '21.0.2'
compile group: 'com.android.support', name: 'appcompat-v7', version: '21.0.2'
diff --git a/graphics/screenshot_tasks.xml b/graphics/screenshot_tasks.xml
new file mode 100644
index 000000000..6ad059238
--- /dev/null
+++ b/graphics/screenshot_tasks.xml
@@ -0,0 +1,54 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.java b/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.java
index f29771472..90ad38fd3 100755
--- a/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.java
+++ b/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.java
@@ -94,6 +94,9 @@ import java.util.List;
import javax.inject.Inject;
+import butterknife.ButterKnife;
+import butterknife.InjectView;
+
import static org.tasks.files.FileHelper.getPathFromUri;
/**
@@ -173,14 +176,19 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
// --- UI components
- private DescriptionControlSet notesControlSet = null;
- private FilesControlSet filesControlSet = null;
+ private FilesControlSet filesControlSet;
private TimerActionControlSet timerAction;
- private EditText title;
private EditNoteActivity editNotes;
- private ViewPager mPager;
private HashMap controlSetMap = new HashMap<>();
+ @InjectView(R.id.title) EditText title;
+ @InjectView(R.id.pager) ViewPager mPager;
+ @InjectView(R.id.updatesFooter) View commentsBar;
+ @InjectView(R.id.completeBox) CheckableImageView checkbox;
+ @InjectView(R.id.timer_container) LinearLayout timerShortcut;
+ @InjectView(R.id.basic_controls) LinearLayout basicControls;
+ @InjectView(R.id.edit_scroll) ScrollView scrollView;
+
private final List controls = Collections.synchronizedList(new ArrayList());
// --- other instance variables
@@ -201,6 +209,7 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
private String uuid = RemoteModel.NO_UUID;
private boolean showEditComments;
+ private boolean showTimerShortcut;
/*
* ======================================================================
@@ -225,6 +234,7 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
}
showEditComments = preferences.getBoolean(R.string.p_show_task_edit_comments, true);
+ showTimerShortcut = preferences.getBoolean(R.string.p_show_timer_shortcut, false);
getActivity().setResult(Activity.RESULT_OK);
}
@@ -238,9 +248,9 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
- super.onCreateView(inflater, container, savedInstanceState);
-
- return inflater.inflate(R.layout.task_edit_activity, container, false);
+ View view = inflater.inflate(R.layout.task_edit_activity, container, false);
+ ButterKnife.inject(this, view);
+ return view;
}
@Override
@@ -276,8 +286,6 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
}
private void loadMoreContainer() {
- View commentsBar = getView().findViewById(R.id.updatesFooter);
-
long idParam = getActivity().getIntent().getLongExtra(TOKEN_ID, -1L);
int tabStyle = TaskEditViewPager.TAB_SHOW_ACTIVITY;
@@ -308,12 +316,8 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
TaskEditViewPager adapter = new TaskEditViewPager(getActivity(), tabStyle);
adapter.parent = this;
- mPager = (ViewPager) getView().findViewById(R.id.pager);
mPager.setAdapter(adapter);
- if (showEditComments) {
- commentsBar.setVisibility(View.VISIBLE);
- }
setCurrentTab(TAB_VIEW_UPDATES);
setPagerHeightForPosition();
Handler handler = new Handler();
@@ -339,12 +343,11 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
controlSetMap = new HashMap<>();
// populate control set
- title = (EditText) getView().findViewById(R.id.title);
EditTitleControlSet editTitle = new EditTitleControlSet(
taskService,
getActivity(),
title,
- (CheckableImageView) getView().findViewById(R.id.completeBox));
+ checkbox);
controls.add(editTitle);
timerAction = new TimerActionControlSet(notificationManager, taskService, getActivity(), getView());
@@ -381,9 +384,8 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
controlSetMap.put(getString(R.string.TEA_ctrl_importance_pref),
importanceControl);
- notesControlSet = new DescriptionControlSet(preferences, getActivity());
- EditText notesEditText = (EditText) notesControlSet.getView().findViewById(
- R.id.notes);
+ DescriptionControlSet notesControlSet = new DescriptionControlSet(preferences, getActivity());
+ EditText notesEditText = (EditText) notesControlSet.getView().findViewById(R.id.notes);
controls.add(notesControlSet);
controlSetMap.put(getString(R.string.TEA_ctrl_notes_pref),
notesControlSet);
@@ -414,13 +416,18 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
loadEditPageOrder(false);
+ if (!showEditComments) {
+ commentsBar.setVisibility(View.GONE);
+ }
+ if (!showTimerShortcut) {
+ timerShortcut.setVisibility(View.GONE);
+ }
+
// Load task data in background
new TaskEditBackgroundLoader().start();
}
private void loadEditPageOrder(boolean removeViews) {
- LinearLayout basicControls = (LinearLayout) getView().findViewById(
- R.id.basic_controls);
if (removeViews) {
basicControls.removeAllViews();
}
@@ -1032,7 +1039,6 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
// Scroll to view in edit task
public void scrollToView(View v) {
View child = v;
- ScrollView scrollView = (ScrollView) getView().findViewById(R.id.edit_scroll);
int top = v.getTop();
while (!child.equals(scrollView) ) {
top += child.getTop();
diff --git a/src/main/java/com/todoroo/astrid/notes/EditNoteActivity.java b/src/main/java/com/todoroo/astrid/notes/EditNoteActivity.java
index 3ee9724bd..ab8ffcb5a 100644
--- a/src/main/java/com/todoroo/astrid/notes/EditNoteActivity.java
+++ b/src/main/java/com/todoroo/astrid/notes/EditNoteActivity.java
@@ -177,8 +177,6 @@ public class EditNoteActivity extends LinearLayout implements TimerActionListene
}
}
});
- } else {
- timerView.setVisibility(View.GONE);
}
commentField.addTextChangedListener(new TextWatcher() {
diff --git a/src/main/res/layout/task_edit_activity.xml b/src/main/res/layout/task_edit_activity.xml
index 59a5aadc8..6879b7f38 100644
--- a/src/main/res/layout/task_edit_activity.xml
+++ b/src/main/res/layout/task_edit_activity.xml
@@ -65,7 +65,6 @@
android:orientation="horizontal"
android:background="?attr/asAbBackgroundColor"
android:padding="3dip"
- android:visibility="gone"
android:paddingBottom="0dip">