remove unneeded saved state handling in MainActivity
This commit is contained in:
parent
6155bdbe20
commit
ee5c2b6632
@ -94,12 +94,9 @@ public class MainActivity extends AppCompatActivity {
|
|||||||
private static final String ACTION_ADD_REPO = "org.fdroid.fdroid.MainActivity.ACTION_ADD_REPO";
|
private static final String ACTION_ADD_REPO = "org.fdroid.fdroid.MainActivity.ACTION_ADD_REPO";
|
||||||
public static final String ACTION_REQUEST_SWAP = "requestSwap";
|
public static final String ACTION_REQUEST_SWAP = "requestSwap";
|
||||||
|
|
||||||
private static final String STATE_SELECTED_MENU_ID = "selectedMenuId";
|
|
||||||
|
|
||||||
private RecyclerView pager;
|
private RecyclerView pager;
|
||||||
private MainViewAdapter adapter;
|
private MainViewAdapter adapter;
|
||||||
private BottomNavigationView bottomNavigation;
|
private BottomNavigationView bottomNavigation;
|
||||||
private int selectedMenuId;
|
|
||||||
private BadgeDrawable updatesBadge;
|
private BadgeDrawable updatesBadge;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -128,7 +125,6 @@ public class MainActivity extends AppCompatActivity {
|
|||||||
bottomNavigation = (BottomNavigationView) findViewById(R.id.bottom_navigation);
|
bottomNavigation = (BottomNavigationView) findViewById(R.id.bottom_navigation);
|
||||||
bottomNavigation.setOnNavigationItemSelectedListener(item -> {
|
bottomNavigation.setOnNavigationItemSelectedListener(item -> {
|
||||||
pager.scrollToPosition(item.getOrder());
|
pager.scrollToPosition(item.getOrder());
|
||||||
selectedMenuId = (int) adapter.getItemId(item.getItemId());
|
|
||||||
|
|
||||||
if (item.getItemId() == 2) {
|
if (item.getItemId() == 2) {
|
||||||
NearbyViewBinder.updateUsbOtg(MainActivity.this);
|
NearbyViewBinder.updateUsbOtg(MainActivity.this);
|
||||||
@ -145,27 +141,16 @@ public class MainActivity extends AppCompatActivity {
|
|||||||
updateableAppsFilter.addAction(AppUpdateStatusManager.BROADCAST_APPSTATUS_REMOVED);
|
updateableAppsFilter.addAction(AppUpdateStatusManager.BROADCAST_APPSTATUS_REMOVED);
|
||||||
LocalBroadcastManager.getInstance(this).registerReceiver(onUpdateableAppsChanged, updateableAppsFilter);
|
LocalBroadcastManager.getInstance(this).registerReceiver(onUpdateableAppsChanged, updateableAppsFilter);
|
||||||
|
|
||||||
if (savedInstanceState != null) {
|
|
||||||
selectedMenuId = savedInstanceState.getInt(STATE_SELECTED_MENU_ID, (int) adapter.getItemId(0));
|
|
||||||
} else {
|
|
||||||
selectedMenuId = (int) adapter.getItemId(0);
|
|
||||||
}
|
|
||||||
setSelectedMenuInNav();
|
|
||||||
|
|
||||||
initialRepoUpdateIfRequired();
|
initialRepoUpdateIfRequired();
|
||||||
|
|
||||||
Intent intent = getIntent();
|
Intent intent = getIntent();
|
||||||
handleSearchOrAppViewIntent(intent);
|
handleSearchOrAppViewIntent(intent);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
private void setSelectedMenuInNav(int menuId) {
|
||||||
protected void onSaveInstanceState(Bundle outState) {
|
int position = adapter.adapterPositionFromItemId(menuId);
|
||||||
outState.putInt(STATE_SELECTED_MENU_ID, selectedMenuId);
|
pager.scrollToPosition(position);
|
||||||
super.onSaveInstanceState(outState);
|
bottomNavigation.setSelectedItemId(position);
|
||||||
}
|
|
||||||
|
|
||||||
private void setSelectedMenuInNav() {
|
|
||||||
bottomNavigation.setSelectedItemId(adapter.adapterPositionFromItemId(selectedMenuId));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initialRepoUpdateIfRequired() {
|
private void initialRepoUpdateIfRequired() {
|
||||||
@ -183,19 +168,13 @@ public class MainActivity extends AppCompatActivity {
|
|||||||
|
|
||||||
if (getIntent().hasExtra(EXTRA_VIEW_UPDATES)) {
|
if (getIntent().hasExtra(EXTRA_VIEW_UPDATES)) {
|
||||||
getIntent().removeExtra(EXTRA_VIEW_UPDATES);
|
getIntent().removeExtra(EXTRA_VIEW_UPDATES);
|
||||||
pager.scrollToPosition(adapter.adapterPositionFromItemId(R.id.updates));
|
setSelectedMenuInNav(R.id.updates);
|
||||||
selectedMenuId = R.id.updates;
|
|
||||||
setSelectedMenuInNav();
|
|
||||||
} else if (getIntent().hasExtra(EXTRA_VIEW_NEARBY)) {
|
} else if (getIntent().hasExtra(EXTRA_VIEW_NEARBY)) {
|
||||||
getIntent().removeExtra(EXTRA_VIEW_NEARBY);
|
getIntent().removeExtra(EXTRA_VIEW_NEARBY);
|
||||||
pager.scrollToPosition(adapter.adapterPositionFromItemId(R.id.nearby));
|
setSelectedMenuInNav(R.id.nearby);
|
||||||
selectedMenuId = R.id.nearby;
|
|
||||||
setSelectedMenuInNav();
|
|
||||||
} else if (getIntent().hasExtra(EXTRA_VIEW_SETTINGS)) {
|
} else if (getIntent().hasExtra(EXTRA_VIEW_SETTINGS)) {
|
||||||
getIntent().removeExtra(EXTRA_VIEW_SETTINGS);
|
getIntent().removeExtra(EXTRA_VIEW_SETTINGS);
|
||||||
pager.scrollToPosition(adapter.adapterPositionFromItemId(R.id.settings));
|
setSelectedMenuInNav(R.id.settings);
|
||||||
selectedMenuId = R.id.settings;
|
|
||||||
setSelectedMenuInNav();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// AppDetailsActivity and RepoDetailsActivity set different NFC actions, so reset here
|
// AppDetailsActivity and RepoDetailsActivity set different NFC actions, so reset here
|
||||||
|
Loading…
x
Reference in New Issue
Block a user