More drawer tweaks

This commit is contained in:
fkloft 2013-09-23 20:42:54 +02:00
parent 1cc7a6c5f2
commit 7939cd9adf
2 changed files with 22 additions and 6 deletions

View File

@ -411,6 +411,19 @@ public class IITC_Mobile extends Activity {
return true; return true;
} }
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
if (mNavigationHelper != null) {
boolean visible = !mNavigationHelper.isDrawerOpened();
for (int i = 0; i < menu.size(); i++)
if (menu.getItem(i).getItemId() != R.id.action_settings)
menu.getItem(i).setVisible(visible);
}
return super.onPrepareOptionsMenu(menu);
}
@Override @Override
public boolean onOptionsItemSelected(MenuItem item) { public boolean onOptionsItemSelected(MenuItem item) {
if (mNavigationHelper.onOptionsItemSelected(item)) if (mNavigationHelper.onOptionsItemSelected(item))

View File

@ -140,12 +140,15 @@ public class IITC_NavigationHelper extends ActionBarDrawerToggle implements OnIt
mActionBar.setHomeButtonEnabled(true);// Make icon clickable mActionBar.setHomeButtonEnabled(true);// Make icon clickable
mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED); mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED);
if (mPane != Pane.MAP) if (mPane == Pane.MAP || mDrawerLayout.isDrawerOpen(mDrawerLeft))
setDrawerIndicatorEnabled(false);
else
setDrawerIndicatorEnabled(true); setDrawerIndicatorEnabled(true);
else
setDrawerIndicatorEnabled(false);
} }
if (mDrawerLayout.isDrawerOpen(mDrawerLeft))
mActionBar.setTitle(mIitc.getString(R.string.app_name));
else
mActionBar.setTitle(getPaneTitle(mPane)); mActionBar.setTitle(getPaneTitle(mPane));
} }
@ -189,15 +192,15 @@ public class IITC_NavigationHelper extends ActionBarDrawerToggle implements OnIt
@Override @Override
public void onDrawerClosed(View drawerView) { public void onDrawerClosed(View drawerView) {
// TODO change menu? (via invalidateOptionsMenu)
super.onDrawerClosed(drawerView); super.onDrawerClosed(drawerView);
mIitc.invalidateOptionsMenu();
updateActionBar(); updateActionBar();
} }
@Override @Override
public void onDrawerOpened(View drawerView) { public void onDrawerOpened(View drawerView) {
// TODO change menu? (via invalidateOptionsMenu)
super.onDrawerOpened(drawerView); super.onDrawerOpened(drawerView);
mIitc.invalidateOptionsMenu();
updateActionBar(); updateActionBar();
mDrawerLayout.closeDrawer(drawerView.equals(mDrawerLeft) ? mDrawerRight : mDrawerLeft); mDrawerLayout.closeDrawer(drawerView.equals(mDrawerLeft) ? mDrawerRight : mDrawerLeft);
} }