Option to hide comments from task edit page

pull/14/head
Sam Bosley 13 years ago
parent 8d6f94abbf
commit 7f51ddbc46

@ -92,6 +92,7 @@
android:orientation="horizontal" android:orientation="horizontal"
android:background="?attr/asAbBackgroundColor" android:background="?attr/asAbBackgroundColor"
android:padding="3dip" android:padding="3dip"
android:visibility="gone"
android:paddingBottom="0dip"> android:paddingBottom="0dip">
<!-- Voice Add Button --> <!-- Voice Add Button -->

@ -83,6 +83,9 @@
<!-- show quickadd controls --> <!-- show quickadd controls -->
<string name="p_show_quickadd_controls">p_show_quickadd_controls</string> <string name="p_show_quickadd_controls">p_show_quickadd_controls</string>
<!-- show comments in task edit -->
<string name="p_show_task_edit_comments">p_show_task_edit_comments</string>
<!-- menu items to show --> <!-- menu items to show -->
<string name="p_menu_items">p_menu_items</string> <string name="p_menu_items">p_menu_items</string>
<string name="p_show_menu_search">p_show_menu_search</string> <string name="p_show_menu_search">p_show_menu_search</string>

@ -360,6 +360,8 @@
<string name="TEA_menu_delete">Delete Task</string> <string name="TEA_menu_delete">Delete Task</string>
<!-- Menu: Task comments --> <!-- Menu: Task comments -->
<string name="TEA_menu_refresh_comments">Refresh comments</string>
<string name="TEA_menu_comments">Comments</string> <string name="TEA_menu_comments">Comments</string>
<!-- Toast: task saved with deadline (%s => preposition + time units) --> <!-- Toast: task saved with deadline (%s => preposition + time units) -->
@ -715,6 +717,9 @@
<!-- Preference: menu items --> <!-- Preference: menu items -->
<string name="EPr_menu_items">Menu items</string> <string name="EPr_menu_items">Menu items</string>
<!-- Preference: task edit comments -->
<string name="EPr_show_task_edit_comments">Show comments in task edit</string>
<!-- slide 30f/ 36f: Preference: Theme --> <!-- slide 30f/ 36f: Preference: Theme -->
<string name="EPr_theme_title">Color theme</string> <string name="EPr_theme_title">Color theme</string>
<!-- Preference: Theme Description (%s => value) --> <!-- Preference: Theme Description (%s => value) -->

@ -160,6 +160,11 @@
android:title="@string/EPr_show_list_members_title" android:title="@string/EPr_show_list_members_title"
android:defaultValue="true"/> android:defaultValue="true"/>
<com.todoroo.astrid.ui.MultilineCheckboxPreference
android:key="@string/p_show_task_edit_comments"
android:title="@string/EPr_show_task_edit_comments"
android:defaultValue="true"/>
<CheckBoxPreference <CheckBoxPreference
android:key="@string/p_use_contact_picker" android:key="@string/p_use_contact_picker"
android:title="@string/EPr_use_contact_picker"/> android:title="@string/EPr_use_contact_picker"/>

@ -82,18 +82,26 @@ public class BeastModePreferences extends ListActivity {
return; return;
ArrayList<String> list = constructOrderedControlList(context); ArrayList<String> list = constructOrderedControlList(context);
String moreSeparator = context.getResources().getString(R.string.TEA_ctrl_more_pref);
String hideSeparator = context.getResources().getString(R.string.TEA_ctrl_hide_section_pref); String hideSeparator = context.getResources().getString(R.string.TEA_ctrl_hide_section_pref);
String importancePref = context.getResources().getString(R.string.TEA_ctrl_importance_pref); String importancePref = context.getResources().getString(R.string.TEA_ctrl_importance_pref);
String listsPref = context.getResources().getString(R.string.TEA_ctrl_lists_pref); String listsPref = context.getResources().getString(R.string.TEA_ctrl_lists_pref);
list.remove(importancePref); list.remove(importancePref);
list.remove(listsPref); list.remove(listsPref);
int moreIndex = list.indexOf(hideSeparator); int moreIndex = list.indexOf(moreSeparator);
if (moreIndex >= 0) { if (moreIndex >= 0) {
list.add(moreIndex + 1, listsPref); list.add(moreIndex + 1, listsPref);
list.add(moreIndex + 1, importancePref); list.add(moreIndex + 1, importancePref);
} }
list.remove(hideSeparator);
moreIndex = list.indexOf(moreSeparator);
if (moreIndex >= 0)
list.add(moreIndex, hideSeparator);
else
list.add(hideSeparator);
StringBuilder newSetting = new StringBuilder(30); StringBuilder newSetting = new StringBuilder(30);
for (String item : list) { for (String item : list) {
newSetting.append(item); newSetting.append(item);

@ -35,6 +35,7 @@ import android.support.v4.view.ViewPager;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.DisplayMetrics; import android.util.DisplayMetrics;
import android.util.Log; import android.util.Log;
import android.util.TypedValue;
import android.view.KeyEvent; import android.view.KeyEvent;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.MenuInflater; import android.view.MenuInflater;
@ -63,7 +64,9 @@ import com.todoroo.andlib.utility.DialogUtilities;
import com.todoroo.andlib.utility.Preferences; import com.todoroo.andlib.utility.Preferences;
import com.todoroo.astrid.actfm.ActFmCameraModule; import com.todoroo.astrid.actfm.ActFmCameraModule;
import com.todoroo.astrid.actfm.ActFmCameraModule.CameraResultCallback; import com.todoroo.astrid.actfm.ActFmCameraModule.CameraResultCallback;
import com.todoroo.astrid.actfm.CommentsActivity;
import com.todoroo.astrid.actfm.EditPeopleControlSet; import com.todoroo.astrid.actfm.EditPeopleControlSet;
import com.todoroo.astrid.actfm.TaskCommentsFragment;
import com.todoroo.astrid.actfm.sync.ActFmPreferenceService; import com.todoroo.astrid.actfm.sync.ActFmPreferenceService;
import com.todoroo.astrid.actfm.sync.ActFmSyncService; import com.todoroo.astrid.actfm.sync.ActFmSyncService;
import com.todoroo.astrid.data.Metadata; import com.todoroo.astrid.data.Metadata;
@ -171,7 +174,8 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
private static final int MENU_SAVE_ID = R.string.TEA_menu_save; private static final int MENU_SAVE_ID = R.string.TEA_menu_save;
private static final int MENU_DISCARD_ID = R.string.TEA_menu_discard; private static final int MENU_DISCARD_ID = R.string.TEA_menu_discard;
private static final int MENU_DELETE_ID = R.string.TEA_menu_delete; private static final int MENU_DELETE_ID = R.string.TEA_menu_delete;
private static final int MENU_COMMENTS_REFRESH_ID = R.string.TEA_menu_comments; private static final int MENU_COMMENTS_REFRESH_ID = R.string.TEA_menu_refresh_comments;
private static final int MENU_SHOW_COMMENTS_ID = R.string.TEA_menu_comments;
private static final int MENU_ATTACH_ID = R.string.premium_attach_file; private static final int MENU_ATTACH_ID = R.string.premium_attach_file;
private static final int MENU_RECORD_ID = R.string.premium_record_audio; private static final int MENU_RECORD_ID = R.string.premium_record_audio;
@ -230,7 +234,6 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
private TaskEditMoreControls moreControls; private TaskEditMoreControls moreControls;
private EditNoteActivity editNotes; private EditNoteActivity editNotes;
private NestableViewPager mPager; private NestableViewPager mPager;
private TaskEditViewPager mAdapter;
private TabPageIndicator mIndicator; private TabPageIndicator mIndicator;
private final List<TaskEditControlSet> controls = Collections.synchronizedList(new ArrayList<TaskEditControlSet>()); private final List<TaskEditControlSet> controls = Collections.synchronizedList(new ArrayList<TaskEditControlSet>());
@ -257,6 +260,9 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
private long remoteId = 0; private long remoteId = 0;
private boolean showEditComments;
private int commentIcon = R.drawable.comment_dark_blue;
private WebServicesView webServices = null; private WebServicesView webServices = null;
@ -301,9 +307,12 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
if (savedInstanceState.containsKey(TASK_REMOTE_ID)) { if (savedInstanceState.containsKey(TASK_REMOTE_ID)) {
remoteId = savedInstanceState.getLong(TASK_REMOTE_ID); remoteId = savedInstanceState.getLong(TASK_REMOTE_ID);
} }
} }
TypedValue tv = new TypedValue();
getActivity().getTheme().resolveAttribute(R.attr.asCommentButtonImg, tv, false);
commentIcon = tv.data;
getActivity().setResult(Activity.RESULT_OK); getActivity().setResult(Activity.RESULT_OK);
} }
@ -335,6 +344,9 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
setUpUIComponents(); setUpUIComponents();
adjustInfoPopovers(); adjustInfoPopovers();
showEditComments = Preferences.getBoolean(R.string.p_show_task_edit_comments, true);
Preferences.setBoolean(R.string.p_showed_tap_task_help, true); Preferences.setBoolean(R.string.p_showed_tap_task_help, true);
overrideFinishAnim = false; overrideFinishAnim = false;
@ -346,6 +358,7 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
} }
private void instantiateEditNotes() { private void instantiateEditNotes() {
if (showEditComments) {
long idParam = getActivity().getIntent().getLongExtra(TOKEN_ID, -1L); long idParam = getActivity().getIntent().getLongExtra(TOKEN_ID, -1L);
editNotes = new EditNoteActivity(this, getView(), editNotes = new EditNoteActivity(this, getView(),
idParam); idParam);
@ -354,6 +367,7 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
editNotes.addListener(this); editNotes.addListener(this);
} }
}
private void loadMoreContainer() { private void loadMoreContainer() {
View moreTab = (View) getView().findViewById(R.id.more_container); View moreTab = (View) getView().findViewById(R.id.more_container);
@ -368,21 +382,24 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
else else
tabStyle = TaskEditViewPager.TAB_SHOW_ACTIVITY; tabStyle = TaskEditViewPager.TAB_SHOW_ACTIVITY;
if (!showEditComments)
tabStyle &= ~TaskEditViewPager.TAB_SHOW_ACTIVITY;
if (moreSectionHasControls) if (moreSectionHasControls)
tabStyle |= TaskEditViewPager.TAB_SHOW_MORE; tabStyle |= TaskEditViewPager.TAB_SHOW_MORE;
if (editNotes == null) { if (editNotes == null) {
instantiateEditNotes(); instantiateEditNotes();
} } else {
else {
editNotes.loadViewForTaskID(idParam); editNotes.loadViewForTaskID(idParam);
} }
if (timerAction != null) { if (timerAction != null && editNotes != null) {
timerAction.removeListener(editNotes); timerAction.removeListener(editNotes);
timerAction.addListener(editNotes); timerAction.addListener(editNotes);
} }
if (editNotes != null)
editNotes.addListener(this); editNotes.addListener(this);
@ -399,12 +416,17 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
} }
} }
if (tabStyle == 0) {
return;
}
getView().findViewById(R.id.updatesFooter).setVisibility(View.VISIBLE);
mAdapter = new TaskEditViewPager(getActivity(), tabStyle); TaskEditViewPager adapter = new TaskEditViewPager(getActivity(), tabStyle);
mAdapter.parent = this; adapter.parent = this;
mPager = (NestableViewPager) getView().findViewById(R.id.pager); mPager = (NestableViewPager) getView().findViewById(R.id.pager);
mPager.setAdapter(mAdapter); mPager.setAdapter(adapter);
mIndicator = (TabPageIndicator) getView().findViewById( mIndicator = (TabPageIndicator) getView().findViewById(
R.id.indicator); R.id.indicator);
@ -1136,9 +1158,17 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
startRecordingAudio(); startRecordingAudio();
return true; return true;
case MENU_COMMENTS_REFRESH_ID: { case MENU_COMMENTS_REFRESH_ID: {
if (editNotes != null)
editNotes.refreshData(true, null); editNotes.refreshData(true, null);
return true; return true;
} }
case MENU_SHOW_COMMENTS_ID: {
Intent intent = new Intent(getActivity(), CommentsActivity.class);
intent.putExtra(TaskCommentsFragment.EXTRA_TASK, model.getId());
startActivity(intent);
AndroidUtilities.callOverridePendingTransition(getActivity(), R.anim.slide_left_in, R.anim.slide_left_out);
return true;
}
case android.R.id.home: case android.R.id.home:
if (title.getText().length() == 0) if (title.getText().length() == 0)
discardButtonClick(); discardButtonClick();
@ -1173,20 +1203,22 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
item.setIcon(R.drawable.ic_menu_save); item.setIcon(R.drawable.ic_menu_save);
item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS); item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
boolean wouldShowComments = actFmPreferenceService.isLoggedIn() && remoteId > 0 && menu.findItem(MENU_COMMENTS_REFRESH_ID) == null;
if(wouldShowComments && showEditComments) {
item = menu.add(Menu.NONE, MENU_COMMENTS_REFRESH_ID, Menu.NONE,
R.string.ENA_refresh_comments);
item.setIcon(R.drawable.icn_menu_refresh_dark);
} else {
item = menu.add(Menu.NONE, MENU_SHOW_COMMENTS_ID, Menu.NONE, R.string.TEA_menu_comments);
item.setIcon(commentIcon);
item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
}
item = menu.add(Menu.NONE, MENU_DELETE_ID, 0, R.string.TEA_menu_delete); item = menu.add(Menu.NONE, MENU_DELETE_ID, 0, R.string.TEA_menu_delete);
item.setIcon(android.R.drawable.ic_menu_delete); item.setIcon(android.R.drawable.ic_menu_delete);
} }
@Override
public void onPrepareOptionsMenu (Menu menu) {
if(actFmPreferenceService.isLoggedIn() && remoteId > 0 && menu.findItem(MENU_COMMENTS_REFRESH_ID) == null) {
MenuItem item = menu.add(Menu.NONE, MENU_COMMENTS_REFRESH_ID, Menu.NONE,
R.string.ENA_refresh_comments);
item.setIcon(R.drawable.icn_menu_refresh_dark);
}
super.onPrepareOptionsMenu(menu);
}
@Override @Override
public void onPause() { public void onPause() {
super.onPause(); super.onPause();

@ -93,7 +93,7 @@ public class AstridLitePreferenceSpec extends AstridPreferenceSpec {
setPreference(prefs, editor, r, R.string.p_autoIdea, false, ifUnset); setPreference(prefs, editor, r, R.string.p_autoIdea, false, ifUnset);
setPreference(prefs, editor, r, R.string.p_taskRowStyle, true, ifUnset); setPreference(prefs, editor, r, R.string.p_taskRowStyle, false, ifUnset);
setPreference(prefs, editor, r, R.string.p_calendar_reminders, true, ifUnset); setPreference(prefs, editor, r, R.string.p_calendar_reminders, true, ifUnset);
@ -119,6 +119,10 @@ public class AstridLitePreferenceSpec extends AstridPreferenceSpec {
setPreference(prefs, editor, r, R.string.p_show_menu_sort, false, ifUnset); setPreference(prefs, editor, r, R.string.p_show_menu_sort, false, ifUnset);
setPreference(prefs, editor, r, R.string.p_show_menu_addons, false, ifUnset); setPreference(prefs, editor, r, R.string.p_show_menu_addons, false, ifUnset);
setPreference(prefs, editor, r, R.string.p_show_quickadd_controls, false, ifUnset);
setPreference(prefs, editor, r, R.string.p_show_task_edit_comments, false, ifUnset);
extras.setExtras(context, prefs, editor, r, ifUnset); extras.setExtras(context, prefs, editor, r, ifUnset);
editor.commit(); editor.commit();

Loading…
Cancel
Save