Dont close drawer or action mode on rotate

pull/795/head
Alex Baker 6 years ago
parent 52c22cd253
commit ec6bba7808

@ -179,20 +179,28 @@ public class MainActivity extends InjectingAppCompatActivity
outState.putParcelable(EXTRA_FILTER, filter); outState.putParcelable(EXTRA_FILTER, filter);
} }
private void clearUi() {
finishActionMode();
navigationDrawer.closeDrawer();
}
private Single<TaskListFragment> taskListFragmentSingle(Intent intent) { private Single<TaskListFragment> taskListFragmentSingle(Intent intent) {
if (intent.hasExtra(OPEN_FILTER)) { if (intent.hasExtra(OPEN_FILTER)) {
filter = intent.getParcelableExtra(OPEN_FILTER); filter = intent.getParcelableExtra(OPEN_FILTER);
intent.removeExtra(OPEN_FILTER); intent.removeExtra(OPEN_FILTER);
clearUi();
return Single.fromCallable(() -> newTaskListFragment(filter)); return Single.fromCallable(() -> newTaskListFragment(filter));
} else if (intent.hasExtra(LOAD_FILTER)) { } else if (intent.hasExtra(LOAD_FILTER)) {
String filter = intent.getStringExtra(LOAD_FILTER); String filter = intent.getStringExtra(LOAD_FILTER);
intent.removeExtra(LOAD_FILTER); intent.removeExtra(LOAD_FILTER);
clearUi();
return Single.fromCallable( return Single.fromCallable(
() -> newTaskListFragment(defaultFilterProvider.getFilterFromPreference(filter))); () -> newTaskListFragment(defaultFilterProvider.getFilterFromPreference(filter)));
} }
TaskListFragment taskListFragment = getTaskListFragment(); TaskListFragment taskListFragment = getTaskListFragment();
if (taskListFragment == null || taskListFragment.filter != filter) { if (taskListFragment == null || taskListFragment.filter != filter) {
clearUi();
return Single.fromCallable(() -> newTaskListFragment(filter)); return Single.fromCallable(() -> newTaskListFragment(filter));
} else { } else {
return Single.just(taskListFragment); return Single.just(taskListFragment);
@ -215,9 +223,6 @@ public class MainActivity extends InjectingAppCompatActivity
showDetailFragment(); showDetailFragment();
} }
finishActionMode();
navigationDrawer.closeDrawer();
Single<TaskListFragment> single = Single<TaskListFragment> single =
taskListFragmentSingle(intent) taskListFragmentSingle(intent)
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
@ -310,7 +315,7 @@ public class MainActivity extends InjectingAppCompatActivity
} }
private void loadTaskEditFragment(TaskEditFragment taskEditFragment) { private void loadTaskEditFragment(TaskEditFragment taskEditFragment) {
finishActionMode(); clearUi();
getSupportFragmentManager() getSupportFragmentManager()
.beginTransaction() .beginTransaction()

Loading…
Cancel
Save