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 000000000..23471f478
Binary files /dev/null and b/astrid/src/main/res/drawable-hdpi/ic_action_gear.png differ
diff --git a/astrid/src/main/res/drawable-xhdpi/ic_action_gear.png b/astrid/src/main/res/drawable-xhdpi/ic_action_gear.png
new file mode 100644
index 000000000..3be1a7821
Binary files /dev/null and b/astrid/src/main/res/drawable-xhdpi/ic_action_gear.png differ
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 000000000..e00cd92c1
Binary files /dev/null and b/astrid/src/main/res/drawable-xxhdpi/ic_action_gear.png differ
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 000000000..46cad2641
Binary files /dev/null and b/astrid/src/main/res/drawable/ic_action_gear.png differ
diff --git a/astrid/src/main/res/layout/fragment_navigation_drawer.xml b/astrid/src/main/res/layout/fragment_navigation_drawer.xml
index 98ed78124..5b9535dcb 100644
--- a/astrid/src/main/res/layout/fragment_navigation_drawer.xml
+++ b/astrid/src/main/res/layout/fragment_navigation_drawer.xml
@@ -1,14 +1,51 @@
-
+ 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