Save filter in MainActivity

pull/795/head
Alex Baker 7 years ago
parent fb5089a96f
commit 43e55d0efc

@ -90,6 +90,8 @@ public class MainActivity extends InjectingAppCompatActivity
public static final String OPEN_TASK = "open_task"; // $NON-NLS-1$ public static final String OPEN_TASK = "open_task"; // $NON-NLS-1$
public static final String OPEN_NEW_TASK = "open_new_task"; // $NON-NLS-1$ public static final String OPEN_NEW_TASK = "open_new_task"; // $NON-NLS-1$
private static final String FRAG_TAG_TASK_LIST = "frag_tag_task_list"; private static final String FRAG_TAG_TASK_LIST = "frag_tag_task_list";
private static final String EXTRA_FILTER = "extra_filter";
@Inject Preferences preferences; @Inject Preferences preferences;
@Inject SubtasksHelper subtasksHelper; @Inject SubtasksHelper subtasksHelper;
@Inject RepeatConfirmationReceiver repeatConfirmationReceiver; @Inject RepeatConfirmationReceiver repeatConfirmationReceiver;
@ -124,6 +126,10 @@ public class MainActivity extends InjectingAppCompatActivity
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
if (savedInstanceState != null) {
filter = savedInstanceState.getParcelable(EXTRA_FILTER);
}
TaskListViewModel viewModel = ViewModelProviders.of(this).get(TaskListViewModel.class); TaskListViewModel viewModel = ViewModelProviders.of(this).get(TaskListViewModel.class);
getComponent().inject(viewModel); getComponent().inject(viewModel);
@ -157,6 +163,13 @@ public class MainActivity extends InjectingAppCompatActivity
handleIntent(); handleIntent();
} }
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putParcelable(EXTRA_FILTER, filter);
}
private void handleIntent() { private void handleIntent() {
Intent intent = getIntent(); Intent intent = getIntent();
@ -184,7 +197,7 @@ public class MainActivity extends InjectingAppCompatActivity
intent.removeExtra(LOAD_FILTER); intent.removeExtra(LOAD_FILTER);
loadTaskListFragment(filter); loadTaskListFragment(filter);
} else if (taskListFragment == null) { } else if (taskListFragment == null) {
loadTaskListFragment(null); loadTaskListFragment(filter);
} else { } else {
applyTheme(taskListFragment); applyTheme(taskListFragment);
} }

Loading…
Cancel
Save