diff options
author | Dominik Schürmann <dominik@dominikschuermann.de> | 2013-09-09 13:19:43 +0200 |
---|---|---|
committer | Dominik Schürmann <dominik@dominikschuermann.de> | 2013-09-09 13:19:43 +0200 |
commit | aae87b894f72a719a850ec32ad6944bd5c743331 (patch) | |
tree | b5a221fcb529c07b309f5bde0563155df28a472c /libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/app | |
parent | 5b6880d2e34f4c8a4bfba87b5ce53d3c6727b744 (diff) | |
download | open-keychain-aae87b894f72a719a850ec32ad6944bd5c743331.tar.gz open-keychain-aae87b894f72a719a850ec32ad6944bd5c743331.tar.bz2 open-keychain-aae87b894f72a719a850ec32ad6944bd5c743331.zip |
Update actionbarsherlock from 4.2 to 4.4
Diffstat (limited to 'libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/app')
-rw-r--r-- | libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/app/ActionBarImpl.java | 9 | ||||
-rw-r--r-- | libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/app/ActionBarWrapper.java | 12 |
2 files changed, 19 insertions, 2 deletions
diff --git a/libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/app/ActionBarImpl.java b/libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/app/ActionBarImpl.java index d022a2465..14dc5a7c5 100644 --- a/libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/app/ActionBarImpl.java +++ b/libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/app/ActionBarImpl.java @@ -170,7 +170,12 @@ public class ActionBarImpl extends ActionBar { // Older apps get the home button interaction enabled by default. // Newer apps need to enable it explicitly. - setHomeButtonEnabled(mContext.getApplicationInfo().targetSdkVersion < 14); + boolean homeButtonEnabled = mContext.getApplicationInfo().targetSdkVersion < Build.VERSION_CODES.ICE_CREAM_SANDWICH; + + // If the homeAsUp display option is set, always enable the home button. + homeButtonEnabled |= (mActionView.getDisplayOptions() & ActionBar.DISPLAY_HOME_AS_UP) != 0; + + setHomeButtonEnabled(homeButtonEnabled); setHasEmbeddedTabs(getResources_getBoolean(mContext, R.bool.abs__action_bar_embed_tabs)); @@ -321,7 +326,7 @@ public class ActionBarImpl extends ActionBar { break; default: throw new IllegalStateException( - "setSelectedNavigationIndex not valid for current navigation mode"); + "setSelectedNavigationItem not valid for current navigation mode"); } } diff --git a/libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/app/ActionBarWrapper.java b/libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/app/ActionBarWrapper.java index 840cb3d27..fe479d0b8 100644 --- a/libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/app/ActionBarWrapper.java +++ b/libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/app/ActionBarWrapper.java @@ -26,6 +26,10 @@ public class ActionBarWrapper extends ActionBar implements android.app.ActionBar mActionBar = activity.getActionBar(); if (mActionBar != null) { mActionBar.addOnMenuVisibilityListener(this); + + // Fixes issue #746 + int displayOptions = mActionBar.getDisplayOptions(); + mActionBar.setHomeButtonEnabled((displayOptions & DISPLAY_HOME_AS_UP) != 0); } } @@ -132,11 +136,19 @@ public class ActionBarWrapper extends ActionBar implements android.app.ActionBar @Override public void setDisplayOptions(int options) { mActionBar.setDisplayOptions(options); + + // Fixes issue #746 + mActionBar.setHomeButtonEnabled((options & DISPLAY_HOME_AS_UP) != 0); } @Override public void setDisplayOptions(int options, int mask) { mActionBar.setDisplayOptions(options, mask); + + // Fixes issue #746 + if ((mask & DISPLAY_HOME_AS_UP) != 0) { + mActionBar.setHomeButtonEnabled((options & DISPLAY_HOME_AS_UP) != 0); + } } @Override |