From e5661ed9874d3c8f9640901200062cd7830bf94a Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Sun, 16 Nov 2014 23:08:54 -0600 Subject: [PATCH] Move settings button to drawer --- .../astrid/activity/EditPreferences.java | 1 - .../astrid/activity/TaskListActivity.java | 3 - .../astrid/activity/TaskListFragment.java | 27 -------- .../tasks/ui/NavigationDrawerFragment.java | 39 +++++++++-- .../main/res/drawable-hdpi/ic_action_gear.png | Bin 0 -> 1153 bytes .../res/drawable-xhdpi/ic_action_gear.png | Bin 0 -> 1379 bytes .../res/drawable-xxhdpi/ic_action_gear.png | Bin 0 -> 2041 bytes .../main/res/drawable/filter_row_normal.xml | 4 ++ .../main/res/drawable/filter_row_selected.xml | 4 ++ .../main/res/drawable/filter_row_selector.xml | 5 ++ .../src/main/res/drawable/ic_action_gear.png | Bin 0 -> 805 bytes .../res/layout/fragment_navigation_drawer.xml | 61 ++++++++++++++---- .../src/main/res/menu/task_list_activity.xml | 4 -- astrid/src/main/res/values/attrs.xml | 1 + astrid/src/main/res/values/styles.xml | 1 + 15 files changed, 96 insertions(+), 54 deletions(-) create mode 100644 astrid/src/main/res/drawable-hdpi/ic_action_gear.png create mode 100644 astrid/src/main/res/drawable-xhdpi/ic_action_gear.png create mode 100644 astrid/src/main/res/drawable-xxhdpi/ic_action_gear.png create mode 100644 astrid/src/main/res/drawable/filter_row_normal.xml create mode 100644 astrid/src/main/res/drawable/filter_row_selected.xml create mode 100644 astrid/src/main/res/drawable/filter_row_selector.xml create mode 100644 astrid/src/main/res/drawable/ic_action_gear.png diff --git a/astrid/src/main/java/com/todoroo/astrid/activity/EditPreferences.java b/astrid/src/main/java/com/todoroo/astrid/activity/EditPreferences.java index 7af1a6a4c..10331564e 100644 --- a/astrid/src/main/java/com/todoroo/astrid/activity/EditPreferences.java +++ b/astrid/src/main/java/com/todoroo/astrid/activity/EditPreferences.java @@ -60,7 +60,6 @@ public class EditPreferences extends TodorooPreferenceActivity { private static final int REQUEST_CODE_FILES_DIR = 2; private static final int REQUEST_CODE_TTS_CHECK = 2534; - public static final int RESULT_CODE_THEME_CHANGED = 1; public static final int RESULT_CODE_PERFORMANCE_PREF_CHANGED = 3; // --- instance variables diff --git a/astrid/src/main/java/com/todoroo/astrid/activity/TaskListActivity.java b/astrid/src/main/java/com/todoroo/astrid/activity/TaskListActivity.java index 8812c2890..7403d5022 100644 --- a/astrid/src/main/java/com/todoroo/astrid/activity/TaskListActivity.java +++ b/astrid/src/main/java/com/todoroo/astrid/activity/TaskListActivity.java @@ -453,9 +453,6 @@ public class TaskListActivity extends AstridActivity implements OnPageChangeList public boolean onOptionsItemSelected(MenuItem item) { TaskListFragment tlf = getTaskListFragment(); switch(item.getItemId()) { - case R.id.menu_settings: - tlf.showSettings(); - return true; case R.id.menu_voice_add: getTaskListFragment().startVoiceRecognition(); return true; diff --git a/astrid/src/main/java/com/todoroo/astrid/activity/TaskListFragment.java b/astrid/src/main/java/com/todoroo/astrid/activity/TaskListFragment.java index 359b489ce..9b55d5694 100644 --- a/astrid/src/main/java/com/todoroo/astrid/activity/TaskListFragment.java +++ b/astrid/src/main/java/com/todoroo/astrid/activity/TaskListFragment.java @@ -110,7 +110,6 @@ public class TaskListFragment extends InjectingListFragment implements OnSortSel private static final long BACKGROUND_REFRESH_INTERVAL = 120000L; private static final long WAIT_BEFORE_AUTOSYNC = 2000L; public static final int ACTIVITY_EDIT_TASK = 0; - public static final int ACTIVITY_SETTINGS = 1; public static final int ACTIVITY_REQUEST_NEW_FILTER = 5; // --- menu codes @@ -627,22 +626,6 @@ public class TaskListFragment extends InjectingListFragment implements OnSortSel setSyncOngoing(false); } - @Override - public void onActivityResult(int requestCode, int resultCode, Intent data) { - if (requestCode == ACTIVITY_SETTINGS) { - if (resultCode == EditPreferences.RESULT_CODE_THEME_CHANGED || resultCode == EditPreferences.RESULT_CODE_PERFORMANCE_PREF_CHANGED) { - getActivity().finish(); - getActivity().startActivity(getActivity().getIntent()); - TasksWidget.updateWidgets(getActivity()); - return; - } else if (resultCode == GtasksPreferences.RESULT_CODE_SYNCHRONIZE) { - preferences.setLong(SyncActionHelper.PREF_LAST_AUTO_SYNC, 0); // Forces autosync to occur after login - } - } - - super.onActivityResult(requestCode, resultCode, data); - } - /* * ====================================================================== * =================================================== managing list view @@ -922,16 +905,6 @@ public class TaskListFragment extends InjectingListFragment implements OnSortSel transitionForTaskEdit(); } - public void showSettings() { - Activity activity = getActivity(); - if (activity == null) { - return; - } - - Intent intent = new Intent(activity, EditPreferences.class); - startActivityForResult(intent, ACTIVITY_SETTINGS); - } - public void onTaskListItemClicked(long taskId) { mListener.onTaskListItemClicked(taskId); } diff --git a/astrid/src/main/java/org/tasks/ui/NavigationDrawerFragment.java b/astrid/src/main/java/org/tasks/ui/NavigationDrawerFragment.java index 84691b9a3..44d68e6bd 100644 --- a/astrid/src/main/java/org/tasks/ui/NavigationDrawerFragment.java +++ b/astrid/src/main/java/org/tasks/ui/NavigationDrawerFragment.java @@ -8,9 +8,7 @@ import android.content.Intent; import android.content.IntentFilter; import android.graphics.Bitmap; import android.graphics.drawable.BitmapDrawable; -import android.support.v7.app.ActionBarActivity; import android.app.Activity; -import android.support.v7.app.ActionBar; import android.support.v4.view.GravityCompat; import android.support.v4.widget.DrawerLayout; import android.content.res.Configuration; @@ -20,7 +18,6 @@ import android.view.ContextMenu; import android.view.KeyEvent; import android.view.LayoutInflater; import android.view.Menu; -import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; @@ -32,13 +29,16 @@ import android.widget.ListView; import android.widget.TextView; import android.widget.Toast; +import com.todoroo.astrid.activity.EditPreferences; import com.todoroo.astrid.activity.ShortcutActivity; -import com.todoroo.astrid.activity.TaskListActivity; import com.todoroo.astrid.activity.TaskListFragment; import com.todoroo.astrid.adapter.FilterAdapter; import com.todoroo.astrid.api.AstridApiConstants; import com.todoroo.astrid.api.Filter; import com.todoroo.astrid.api.FilterListItem; +import com.todoroo.astrid.gtasks.GtasksPreferences; +import com.todoroo.astrid.helper.SyncActionHelper; +import com.todoroo.astrid.widget.TasksWidget; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -46,6 +46,7 @@ import org.tasks.R; import org.tasks.filters.FilterCounter; import org.tasks.injection.InjectingFragment; import org.tasks.injection.Injector; +import org.tasks.preferences.Preferences; import javax.inject.Inject; @@ -60,6 +61,7 @@ public class NavigationDrawerFragment extends InjectingFragment { private static final int CONTEXT_MENU_SHORTCUT = R.string.FLA_context_shortcut; private static final int CONTEXT_MENU_INTENT = Menu.FIRST + 4; + public static final int ACTIVITY_SETTINGS = 1; public static final int REQUEST_CUSTOM_INTENT = 10; public static final int REQUEST_NEW_LIST = 4; @@ -85,6 +87,7 @@ public class NavigationDrawerFragment extends InjectingFragment { @Inject FilterCounter filterCounter; @Inject Injector injector; + @Inject Preferences preferences; public NavigationDrawerFragment() { } @@ -109,19 +112,41 @@ public class NavigationDrawerFragment extends InjectingFragment { setUpList(); } + @Override + public void onActivityResult(int requestCode, int resultCode, Intent data) { + if (requestCode == ACTIVITY_SETTINGS) { + if (resultCode == EditPreferences.RESULT_CODE_PERFORMANCE_PREF_CHANGED) { + getActivity().finish(); + getActivity().startActivity(getActivity().getIntent()); + TasksWidget.updateWidgets(getActivity()); + } else if (resultCode == GtasksPreferences.RESULT_CODE_SYNCHRONIZE) { + preferences.setLong(SyncActionHelper.PREF_LAST_AUTO_SYNC, 0); // Forces autosync to occur after login + } + } else { + super.onActivityResult(requestCode, resultCode, data); + } + } + @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { - mDrawerListView = (ListView) inflater.inflate( - R.layout.fragment_navigation_drawer, container, false); + View layout = inflater.inflate(R.layout.fragment_navigation_drawer, container, false); + mDrawerListView = (ListView) layout.findViewById(android.R.id.list); mDrawerListView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView parent, View view, int position, long id) { selectItem(position); } }); + layout.findViewById(R.id.settings_row).setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + Intent intent = new Intent(getActivity(), EditPreferences.class); + startActivityForResult(intent, ACTIVITY_SETTINGS); + } + }); mDrawerListView.setItemChecked(mCurrentSelectedPosition, true); - return mDrawerListView; + return layout; } protected void setUpList() { diff --git a/astrid/src/main/res/drawable-hdpi/ic_action_gear.png b/astrid/src/main/res/drawable-hdpi/ic_action_gear.png new file mode 100644 index 0000000000000000000000000000000000000000..23471f478021167ff2e4109de6f35041b2b0f4c8 GIT binary patch literal 1153 zcmV-{1b+L8P)$#L zx7!OlJ3B|0UF*UIf*>dWsFK{U)*gt6c%D}vnLmpGkoP>VARixfkWkmrAACTCFykRtM6y5|v72Mnv8| zC-T@Bb2~1tPs~!iUSCe5BlQTV>fXP|62$k5>BZ%W)CR1zKZ(d;+WamYMqH`jJcVkt z+UV)&=`?`f$HvBf+}+)M55Q#F!rdUbJw87E<=)=jD+65G7l4`B}Ze(QSGm@=XLB`xJ z7K^uBbtR5~@B4Yr^9rgu0bnM9?~8i9z8x1(sZ^##g9L0G@3&n;!*1P)66b6&-?abUK|6lEka(aih_A?5fLY1cD$aL|4YUuEf!S z^_z%{0C-+RG6Ur9tLj%S_vJyFIcM=vP7c6J0LEni@lo#Gt7zt&dXvilNp)@JoD5iN z4@jPjY)Sxu`W^%^)suZP;H zsi{{zpvw%AH-Wq{5Fl>?d1D|z-URZ-K!Cgn=N`yrS>>V~*$% zk)t;t2!d1#| z`W+zzpOgdmMJd&gQjP<-E`<0nDPC*6!pxgWsmD^v8Z&?1^$bFYRR9mdFl=YVIa2|o zl%EJ8-s>#~@QjZCsb@ZiBmn3T5tw#D{)c1(P-Sa$z>%#5Cqo%-0hy~@`TnJ%>1p5Pp}#Tn0fZ1be@Pv2*J!eYZYr6 z5L?r#O=FHxwXw~{0<>DKJpfJ9IM)EsY_(c@rg2tdK#))%tA`}Lt1-FLi zc@PAn0B#B)UNgwqQA*tbpwq^5!`cW*DaTDZPehNxFr4q#c_N}P4EL(l>USn~mzj%F z%5ei8r(i7rfYft7fP-SOxR9pq($dn=;o;%001jPn>4niJkhGJNsuAYpwY9ZBOk$*z zp9&$~HEqjuXUXUdu<3jpw`Cdwz&Ivu%ZQ`%O;G?xrBcaw2`hxyaX{y6J1?S&(nncH5MrwGon1e$a1oGlA5>$jHby^?Lmv zP5sHq$yW=7!rip4P;0%Sl=?kQ-CkIK0?fQ=Q1_)yr*k7s-I)5H>+a5)ou z*{$$kF=QI!d0w$nsoZ8}&$Ka@0MOju-=A+bn;nxl<1wIIE{|Tc&Jz(avsW&cM@{35 z1&E?(hls3fs$*=$+>Br~3jkQuT3?terdn$NShR_?5+Dr2CqjtTlfMD%0$8`nWdi`~ z-6v2&h*jH@W9zd)01p7@lYB{RR7 zS<)^5SXWB@WIN|4!Np?eWd}K(<<3-q_?5hpWzKFe^A+Fsr?SkMsQ}EJxa!%N+UEwUEiAraLRrpSfZug__%SNg?ktycidDW&cZ(L&EN5K;X+170F$7rz)e zxg002ovPDHLkV1miugC_t0 literal 0 HcmV?d00001 diff --git a/astrid/src/main/res/drawable-xxhdpi/ic_action_gear.png b/astrid/src/main/res/drawable-xxhdpi/ic_action_gear.png new file mode 100644 index 0000000000000000000000000000000000000000..e00cd92c12c5d19970829ae976bf51a62f315807 GIT binary patch literal 2041 zcmaJ?c~p{V7k?QXB~z2Blw6ZCTU`>(h0^S`#70KVeM^MEZCsMir4UI!>(w;VHU+iG z+!1WiB5`X`w3ys7CmhI9(Ne-svU1B|=I=S*J?D3S&%O6K=Q+>0_j!Ifp7>*$>U!z` z0BGXeKyM|7{|$ty(!VcGu~U*tk_*lUp)?wT1S#Wn32uQ&%KamM1Lm@mm8wi`p}Gc8 zPsEd{DTLFffRvOJ^QgF(BqAZ=3fElv;R&YQq~$kM*m zv{}a+aJ}Y~+%1Vvfz&Smy&i=@0ua}#Xm9Ir2)ZsNjVO$6ChqUxi_6j_NiVG_FQ*J3 z#Ae=89=@{*Phb$$;RYvAW5rJZ!6sF^YRgWmY}ln;8VNuDTgh}}-Lx8j$P5nvlc|fV zZU%z&_s;3q+g^no*4BWhqB^y{g zbPgg%H;dS|??JDoli*R;iMFAdUyMTn0s_IDpG)r6&k^MG5KmQuO)b4+dz}t^=H^zl45e5P|rME9AF~WJ1YYK9} zP?s0G-(!eaJ|){xF#}EOuRhZ*GzH}FZ_XgM)e}pmZ@V<^zm#+9af^Qcth*6#`QjJK zW+ZOhjvm>@zccfF<;s0plO*x%7*Tgz%}mpiS#6Pn;6vhdWF0cS*EQBmRoK^;p*3cx zd)JYWw@4}4e$y^ThTe%pGBWtN;!7`@0&IX#sYd2j-nkO_!!3N{;>Grzxx35gGuPGj zH7sOiZvAG$7zIgpeRj8D4<2lD11Fa0Z%_)h!I#Y9lC`4kxO}MAyKZ(4D;I!N4%8aO zz8Kxb*osKjC(`dPm6UX$te*;vVLV+%jgb!wNdPSNE40vhHr=KC<&wn$Th*A41;0uA z=_`8`Bc{z*aIQXJVc_uhP0l58$^6C#sxT1g(Y?I$9*9iyHx~ExLSsn7`xg3a0p-kb+ z92ROJT5TZ!@G(>e!Vp8Ou6Og(pN|xa%|5Hy+1Zocb)QwNGfHd>f#f&LtM?-q^5rAI z1M+}&p{li$y_HoV*OwR_9o>skxLl`dBVoLX5cA+IVoDs`;a6RiIoWzy7*AWc;%*>_ zC%K1QvDC=W{B4|?)Cl#oLbL}8^KS57u+DkKRrUIKIAS0?nGtn z*yVf<13mBB7S^{i8`h<0y&V+9iJUliNv;jzz3kzr%g+*1VuE9ru0R=sPO zCXdv^hWW>=&+V}hG4&<}0ofBhLql4?bQR^yNlJj1%i>*{8Lmab&vJh_Tvr^ z1Wtg;3sJXGp9XEy*s9pE1MuHxZvLGb8`~g1HaRyp7k+!-Tb0$0q+m4KSR`tR8)9s@ zTKQ$Kg~i$fr*r05&?XRNGwXd=5uUlNqa!q?Bf7l%_>Z+h+)aq%Uf42c6U&5l% zYyGr>z~xJIyJsem!`ON~VC*FGOd9A|P_J5QpCoMrsop27DW$RhjPJ*Vr5osZrgF%& z3r8^iAECW@@b`9fRtYChFZ78}pj-zB`->UmHCn|2UwW1&2U1go`!3DEX=?cRpLP(j$dPh^lap|_R18z zfpd-h)z*^!ux}jdi!2>K|7R_xG%{IwkW7D0o~4INDUO>Dd40u3zKg{TDq7{de?AjC zt8fyD#D`}8gXC`%(yqvt@j9|H)L5EC%q>ul=|aJYLNPv~F~zym^gzK)9d2{FIcQdD z@P|tHy$i?9hA`<&s5)mlBL=z;f6U4dRbkbPm@gbtHY-)%k9T~U#F8XgE>ih^il{d-062)vkbl^Zr&*X><5=i@<2-uwD=UJGy7ys7Dgnl^(V}nmklN r<6BSFki6L1WBpxj|E5v@N50n7#-T^&t(#)ClrjzAT=5{+B|P&l4Q#&F literal 0 HcmV?d00001 diff --git a/astrid/src/main/res/drawable/filter_row_normal.xml b/astrid/src/main/res/drawable/filter_row_normal.xml new file mode 100644 index 000000000..61d586605 --- /dev/null +++ b/astrid/src/main/res/drawable/filter_row_normal.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/astrid/src/main/res/drawable/filter_row_selected.xml b/astrid/src/main/res/drawable/filter_row_selected.xml new file mode 100644 index 000000000..5b47a42f5 --- /dev/null +++ b/astrid/src/main/res/drawable/filter_row_selected.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/astrid/src/main/res/drawable/filter_row_selector.xml b/astrid/src/main/res/drawable/filter_row_selector.xml new file mode 100644 index 000000000..16d125508 --- /dev/null +++ b/astrid/src/main/res/drawable/filter_row_selector.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/astrid/src/main/res/drawable/ic_action_gear.png b/astrid/src/main/res/drawable/ic_action_gear.png new file mode 100644 index 0000000000000000000000000000000000000000..46cad26417dc8481e5859bcd0d08c004c4b90c96 GIT binary patch literal 805 zcmV+=1KRwFP)ix2KO38g2HANxIH%x6`dVdk+agare; zBJ$RIf6FkkmIvT4=L*)kv;=V+cMc8?f(E_!FWT+)$3p0X zwRYMVGapEoIF37II>9DP({zf6uJ-SF5dc2z?Cd-bk&Ta!KVjx;gK<@D5z+VlusY^0 zL?j{$A@O|eODIl6#LU4`h{!~LYF09EmIxY9)wTTCLTfk5$N*d~+0#7BpDHA7V9?rSy4I%*BWu$chV7vApa?Wi; zQS=i)W{jC5B3o0p?Y&=T=F~a2S(a4kf52LM#TfInj=J~$S-ai-aavxbIl# + android:orientation="vertical"> + + + + + + + + + + + + + diff --git a/astrid/src/main/res/menu/task_list_activity.xml b/astrid/src/main/res/menu/task_list_activity.xml index 2fde58564..4e1ccb8d1 100644 --- a/astrid/src/main/res/menu/task_list_activity.xml +++ b/astrid/src/main/res/menu/task_list_activity.xml @@ -35,8 +35,4 @@ android:id="@+id/menu_support" android:title="@string/TLA_menu_support" tasks:showAsAction="never" /> - \ No newline at end of file diff --git a/astrid/src/main/res/values/attrs.xml b/astrid/src/main/res/values/attrs.xml index 71e784a35..d5b2bb75f 100644 --- a/astrid/src/main/res/values/attrs.xml +++ b/astrid/src/main/res/values/attrs.xml @@ -31,6 +31,7 @@ + diff --git a/astrid/src/main/res/values/styles.xml b/astrid/src/main/res/values/styles.xml index 0f42e0ec3..3bcbb67e6 100644 --- a/astrid/src/main/res/values/styles.xml +++ b/astrid/src/main/res/values/styles.xml @@ -35,6 +35,7 @@ @drawable/ic_action_camera @drawable/ic_action_mic @drawable/ic_action_search + @drawable/ic_action_gear @color/task_edit_selected @drawable/importance_background_selected @drawable/tea_icn_files