From 09239de58836db2ec2417a602b45667b7f69d323 Mon Sep 17 00:00:00 2001 From: kruland2607 Date: Thu, 14 Jun 2012 13:03:36 +0000 Subject: [PATCH] Update to ActionBarSherlock 4.1.0. git-svn-id: https://openrocket.svn.sourceforge.net/svnroot/openrocket/trunk@777 180e2498-e6e9-4542-8430-84ac67f01cd8 --- .../ActionBarSherlock/AndroidManifest.xml | 4 +- .../bin/actionbarsherlock.jar | Bin 397940 -> 398677 bytes .../internal/view/menu/MenuItemMule.class | Bin 5850 -> 0 bytes .../internal/view/menu/MenuMule.class | Bin 4067 -> 0 bytes .../ActionBarSherlock/project.properties | 9 +- .../v4/app/_ActionBarSherlockTrojanHorse.java | 144 +++++++++++ .../actionbarsherlock/ActionBarSherlock.java | 14 ++ .../app/SherlockActivity.java | 6 + .../app/SherlockDialogFragment.java | 46 ++-- .../app/SherlockExpandableListActivity.java | 6 + .../app/SherlockFragment.java | 46 ++-- .../app/SherlockFragmentActivity.java | 84 +------ .../app/SherlockListActivity.java | 6 + .../app/SherlockListFragment.java | 46 ++-- .../app/SherlockPreferenceActivity.java | 6 + .../internal/ActionBarSherlockCompat.java | 13 +- .../internal/app/ActionBarWrapper.java | 2 +- .../view/animation/AnimatorProxy.java | 7 + .../internal/view/menu/MenuItemMule.java | 234 ------------------ .../internal/view/menu/MenuMule.java | 151 ----------- 20 files changed, 275 insertions(+), 549 deletions(-) delete mode 100644 android-libraries/ActionBarSherlock/bin/classes/com/actionbarsherlock/internal/view/menu/MenuItemMule.class delete mode 100644 android-libraries/ActionBarSherlock/bin/classes/com/actionbarsherlock/internal/view/menu/MenuMule.class create mode 100644 android-libraries/ActionBarSherlock/src/android/support/v4/app/_ActionBarSherlockTrojanHorse.java delete mode 100644 android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/view/menu/MenuItemMule.java delete mode 100644 android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/view/menu/MenuMule.java diff --git a/android-libraries/ActionBarSherlock/AndroidManifest.xml b/android-libraries/ActionBarSherlock/AndroidManifest.xml index 36ad7944..c4a75f32 100644 --- a/android-libraries/ActionBarSherlock/AndroidManifest.xml +++ b/android-libraries/ActionBarSherlock/AndroidManifest.xml @@ -1,6 +1,6 @@ - - + + diff --git a/android-libraries/ActionBarSherlock/bin/actionbarsherlock.jar b/android-libraries/ActionBarSherlock/bin/actionbarsherlock.jar index 1bddf7eb9051d07c58b07affcddd177acd363ffd..02f36678bbbaef6fe5235e8e75d6a8827d916640 100644 GIT binary patch delta 54668 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 U($I7ebr8jZ{m)!H7|4kJ4>{(|`2YX_ delta 54308 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 diff --git a/android-libraries/ActionBarSherlock/project.properties b/android-libraries/ActionBarSherlock/project.properties index fec2d616..5ca7d624 100644 --- a/android-libraries/ActionBarSherlock/project.properties +++ b/android-libraries/ActionBarSherlock/project.properties @@ -3,13 +3,10 @@ # # This file must be checked in Version Control Systems. # -# To customize properties used by the Ant build system edit +# To customize properties used by the Ant build system use, # "ant.properties", and override values to adapt the script to your # project structure. -# -# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): -#proguard.config=${sdk.dir}\tools\proguard\proguard-android.txt:proguard-project.txt -# Project target. -target=android-15 android.library=true +# Project target. +target=android-14 diff --git a/android-libraries/ActionBarSherlock/src/android/support/v4/app/_ActionBarSherlockTrojanHorse.java b/android-libraries/ActionBarSherlock/src/android/support/v4/app/_ActionBarSherlockTrojanHorse.java new file mode 100644 index 00000000..3e3db62b --- /dev/null +++ b/android-libraries/ActionBarSherlock/src/android/support/v4/app/_ActionBarSherlockTrojanHorse.java @@ -0,0 +1,144 @@ +package android.support.v4.app; + +import android.util.Log; +import android.view.View; +import android.view.Window; +import com.actionbarsherlock.ActionBarSherlock.OnCreatePanelMenuListener; +import com.actionbarsherlock.ActionBarSherlock.OnMenuItemSelectedListener; +import com.actionbarsherlock.ActionBarSherlock.OnPreparePanelListener; +import com.actionbarsherlock.view.Menu; +import com.actionbarsherlock.view.MenuInflater; +import com.actionbarsherlock.view.MenuItem; + +import java.util.ArrayList; + +/** I'm in ur package. Stealing ur variables. */ +public abstract class _ActionBarSherlockTrojanHorse extends FragmentActivity implements OnCreatePanelMenuListener, OnPreparePanelListener, OnMenuItemSelectedListener { + private static final boolean DEBUG = false; + private static final String TAG = "_ActionBarSherlockTrojanHorse"; + + /** Fragment interface for menu creation callback. */ + public interface OnCreateOptionsMenuListener { + public void onCreateOptionsMenu(Menu menu, MenuInflater inflater); + } + /** Fragment interface for menu preparation callback. */ + public interface OnPrepareOptionsMenuListener { + public void onPrepareOptionsMenu(Menu menu); + } + /** Fragment interface for menu item selection callback. */ + public interface OnOptionsItemSelectedListener { + public boolean onOptionsItemSelected(MenuItem item); + } + + private ArrayList mCreatedMenus; + + + /////////////////////////////////////////////////////////////////////////// + // Sherlock menu handling + /////////////////////////////////////////////////////////////////////////// + + @Override + public boolean onCreatePanelMenu(int featureId, Menu menu) { + if (DEBUG) Log.d(TAG, "[onCreatePanelMenu] featureId: " + featureId + ", menu: " + menu); + + if (featureId == Window.FEATURE_OPTIONS_PANEL) { + boolean result = onCreateOptionsMenu(menu); + if (DEBUG) Log.d(TAG, "[onCreatePanelMenu] activity create result: " + result); + + MenuInflater inflater = getSupportMenuInflater(); + boolean show = false; + ArrayList newMenus = null; + if (mFragments.mActive != null) { + for (int i = 0; i < mFragments.mAdded.size(); i++) { + Fragment f = mFragments.mAdded.get(i); + if (f != null && !f.mHidden && f.mHasMenu && f.mMenuVisible && f instanceof OnCreateOptionsMenuListener) { + show = true; + ((OnCreateOptionsMenuListener)f).onCreateOptionsMenu(menu, inflater); + if (newMenus == null) { + newMenus = new ArrayList(); + } + newMenus.add(f); + } + } + } + + if (mCreatedMenus != null) { + for (int i = 0; i < mCreatedMenus.size(); i++) { + Fragment f = mCreatedMenus.get(i); + if (newMenus == null || !newMenus.contains(f)) { + f.onDestroyOptionsMenu(); + } + } + } + + mCreatedMenus = newMenus; + + if (DEBUG) Log.d(TAG, "[onCreatePanelMenu] fragments create result: " + show); + result |= show; + + if (DEBUG) Log.d(TAG, "[onCreatePanelMenu] returning " + result); + return result; + } + return false; + } + + @Override + public boolean onPreparePanel(int featureId, View view, Menu menu) { + if (DEBUG) Log.d(TAG, "[onPreparePanel] featureId: " + featureId + ", view: " + view + " menu: " + menu); + + if (featureId == Window.FEATURE_OPTIONS_PANEL) { + boolean result = onPrepareOptionsMenu(menu); + if (DEBUG) Log.d(TAG, "[onPreparePanel] activity prepare result: " + result); + + boolean show = false; + if (mFragments.mActive != null) { + for (int i = 0; i < mFragments.mAdded.size(); i++) { + Fragment f = mFragments.mAdded.get(i); + if (f != null && !f.mHidden && f.mHasMenu && f.mMenuVisible && f instanceof OnPrepareOptionsMenuListener) { + show = true; + ((OnPrepareOptionsMenuListener)f).onPrepareOptionsMenu(menu); + } + } + } + + if (DEBUG) Log.d(TAG, "[onPreparePanel] fragments prepare result: " + show); + result |= show; + + result &= menu.hasVisibleItems(); + if (DEBUG) Log.d(TAG, "[onPreparePanel] returning " + result); + return result; + } + return false; + } + + @Override + public boolean onMenuItemSelected(int featureId, MenuItem item) { + if (DEBUG) Log.d(TAG, "[onMenuItemSelected] featureId: " + featureId + ", item: " + item); + + if (featureId == Window.FEATURE_OPTIONS_PANEL) { + if (onOptionsItemSelected(item)) { + return true; + } + + if (mFragments.mActive != null) { + for (int i = 0; i < mFragments.mAdded.size(); i++) { + Fragment f = mFragments.mAdded.get(i); + if (f != null && !f.mHidden && f.mHasMenu && f.mMenuVisible && f instanceof OnOptionsItemSelectedListener) { + if (((OnOptionsItemSelectedListener)f).onOptionsItemSelected(item)) { + return true; + } + } + } + } + } + return false; + } + + public abstract boolean onCreateOptionsMenu(Menu menu); + + public abstract boolean onPrepareOptionsMenu(Menu menu); + + public abstract boolean onOptionsItemSelected(MenuItem item); + + public abstract MenuInflater getSupportMenuInflater(); +} diff --git a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/ActionBarSherlock.java b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/ActionBarSherlock.java index a7cc25d3..8340fb59 100644 --- a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/ActionBarSherlock.java +++ b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/ActionBarSherlock.java @@ -523,6 +523,20 @@ public abstract class ActionBarSherlock { */ public void dispatchPanelClosed(int featureId, android.view.Menu menu) {} + /** + * Notify the action bar that the activity has been destroyed. This method + * should be called before the superclass implementation. + * + *

+ * @Override + * public void onDestroy() { + * mSherlock.dispatchDestroy(); + * super.onDestroy(); + * } + *

+ */ + public void dispatchDestroy() {} + /////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////// diff --git a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockActivity.java b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockActivity.java index d0a6d812..9cb57e95 100644 --- a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockActivity.java +++ b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockActivity.java @@ -76,6 +76,12 @@ public abstract class SherlockActivity extends Activity implements OnCreatePanel super.onStop(); } + @Override + protected void onDestroy() { + getSherlock().dispatchDestroy(); + super.onDestroy(); + } + @Override protected void onPostCreate(Bundle savedInstanceState) { getSherlock().dispatchPostCreate(savedInstanceState); diff --git a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockDialogFragment.java b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockDialogFragment.java index 4172888c..a7c856bf 100644 --- a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockDialogFragment.java +++ b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockDialogFragment.java @@ -1,18 +1,18 @@ package com.actionbarsherlock.app; -import static com.actionbarsherlock.app.SherlockFragmentActivity.DEBUG; import android.app.Activity; import android.support.v4.app.DialogFragment; -import android.util.Log; -import com.actionbarsherlock.internal.view.menu.MenuItemMule; -import com.actionbarsherlock.internal.view.menu.MenuMule; +import com.actionbarsherlock.internal.view.menu.MenuItemWrapper; +import com.actionbarsherlock.internal.view.menu.MenuWrapper; import com.actionbarsherlock.view.Menu; import com.actionbarsherlock.view.MenuInflater; import com.actionbarsherlock.view.MenuItem; -public class SherlockDialogFragment extends DialogFragment { - private static final String TAG = "SherlockDialogFragment"; +import static com.actionbarsherlock.app.SherlockFragmentActivity.OnCreateOptionsMenuListener; +import static com.actionbarsherlock.app.SherlockFragmentActivity.OnOptionsItemSelectedListener; +import static com.actionbarsherlock.app.SherlockFragmentActivity.OnPrepareOptionsMenuListener; +public class SherlockDialogFragment extends DialogFragment implements OnCreateOptionsMenuListener, OnPrepareOptionsMenuListener, OnOptionsItemSelectedListener { private SherlockFragmentActivity mActivity; public SherlockFragmentActivity getSherlockActivity() { @@ -22,7 +22,7 @@ public class SherlockDialogFragment extends DialogFragment { @Override public void onAttach(Activity activity) { if (!(activity instanceof SherlockFragmentActivity)) { - throw new IllegalStateException(TAG + " must be attached to a SherlockFragmentActivity."); + throw new IllegalStateException(getClass().getSimpleName() + " must be attached to a SherlockFragmentActivity."); } mActivity = (SherlockFragmentActivity)activity; @@ -30,45 +30,37 @@ public class SherlockDialogFragment extends DialogFragment { } @Override - public final void onCreateOptionsMenu(android.view.Menu menu, android.view.MenuInflater inflater) { - if (DEBUG) Log.d(TAG, "[onCreateOptionsMenu] menu: " + menu + ", inflater: " + inflater); + public void onDetach() { + mActivity = null; + super.onDetach(); + } - if (menu instanceof MenuMule) { - MenuMule mule = (MenuMule)menu; - mule.mDispatchShow = true; - onCreateOptionsMenu(mule.unwrap(), mActivity.getSupportMenuInflater()); - } + @Override + public final void onCreateOptionsMenu(android.view.Menu menu, android.view.MenuInflater inflater) { + onCreateOptionsMenu(new MenuWrapper(menu), mActivity.getSupportMenuInflater()); } + @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { //Nothing to see here. } @Override public final void onPrepareOptionsMenu(android.view.Menu menu) { - if (DEBUG) Log.d(TAG, "[onPrepareOptionsMenu] menu: " + menu); - - if (menu instanceof MenuMule) { - MenuMule mule = (MenuMule)menu; - mule.mDispatchShow = true; - onPrepareOptionsMenu(mule.unwrap()); - } + onPrepareOptionsMenu(new MenuWrapper(menu)); } + @Override public void onPrepareOptionsMenu(Menu menu) { //Nothing to see here. } @Override public final boolean onOptionsItemSelected(android.view.MenuItem item) { - if (DEBUG) Log.d(TAG, "[onOptionsItemSelected] item: " + item); - - if (item instanceof MenuItemMule) { - return onOptionsItemSelected(((MenuItemMule)item).unwrap()); - } - return false; + return onOptionsItemSelected(new MenuItemWrapper(item)); } + @Override public boolean onOptionsItemSelected(MenuItem item) { //Nothing to see here. return false; diff --git a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockExpandableListActivity.java b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockExpandableListActivity.java index 3247c987..078f9b0c 100644 --- a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockExpandableListActivity.java +++ b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockExpandableListActivity.java @@ -76,6 +76,12 @@ public abstract class SherlockExpandableListActivity extends ExpandableListActiv super.onStop(); } + @Override + protected void onDestroy() { + getSherlock().dispatchDestroy(); + super.onDestroy(); + } + @Override protected void onPostCreate(Bundle savedInstanceState) { getSherlock().dispatchPostCreate(savedInstanceState); diff --git a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockFragment.java b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockFragment.java index 10d673f9..0f24e9c8 100644 --- a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockFragment.java +++ b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockFragment.java @@ -1,18 +1,18 @@ package com.actionbarsherlock.app; -import static com.actionbarsherlock.app.SherlockFragmentActivity.DEBUG; import android.app.Activity; import android.support.v4.app.Fragment; -import android.util.Log; -import com.actionbarsherlock.internal.view.menu.MenuItemMule; -import com.actionbarsherlock.internal.view.menu.MenuMule; +import com.actionbarsherlock.internal.view.menu.MenuItemWrapper; +import com.actionbarsherlock.internal.view.menu.MenuWrapper; import com.actionbarsherlock.view.Menu; import com.actionbarsherlock.view.MenuInflater; import com.actionbarsherlock.view.MenuItem; -public class SherlockFragment extends Fragment { - private static final String TAG = "SherlockFragment"; +import static com.actionbarsherlock.app.SherlockFragmentActivity.OnCreateOptionsMenuListener; +import static com.actionbarsherlock.app.SherlockFragmentActivity.OnOptionsItemSelectedListener; +import static com.actionbarsherlock.app.SherlockFragmentActivity.OnPrepareOptionsMenuListener; +public class SherlockFragment extends Fragment implements OnCreateOptionsMenuListener, OnPrepareOptionsMenuListener, OnOptionsItemSelectedListener { private SherlockFragmentActivity mActivity; public SherlockFragmentActivity getSherlockActivity() { @@ -22,7 +22,7 @@ public class SherlockFragment extends Fragment { @Override public void onAttach(Activity activity) { if (!(activity instanceof SherlockFragmentActivity)) { - throw new IllegalStateException(TAG + " must be attached to a SherlockFragmentActivity."); + throw new IllegalStateException(getClass().getSimpleName() + " must be attached to a SherlockFragmentActivity."); } mActivity = (SherlockFragmentActivity)activity; @@ -30,45 +30,37 @@ public class SherlockFragment extends Fragment { } @Override - public final void onCreateOptionsMenu(android.view.Menu menu, android.view.MenuInflater inflater) { - if (DEBUG) Log.d(TAG, "[onCreateOptionsMenu] menu: " + menu + ", inflater: " + inflater); + public void onDetach() { + mActivity = null; + super.onDetach(); + } - if (menu instanceof MenuMule) { - MenuMule mule = (MenuMule)menu; - mule.mDispatchShow = true; - onCreateOptionsMenu(mule.unwrap(), mActivity.getSupportMenuInflater()); - } + @Override + public final void onCreateOptionsMenu(android.view.Menu menu, android.view.MenuInflater inflater) { + onCreateOptionsMenu(new MenuWrapper(menu), mActivity.getSupportMenuInflater()); } + @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { //Nothing to see here. } @Override public final void onPrepareOptionsMenu(android.view.Menu menu) { - if (DEBUG) Log.d(TAG, "[onPrepareOptionsMenu] menu: " + menu); - - if (menu instanceof MenuMule) { - MenuMule mule = (MenuMule)menu; - mule.mDispatchShow = true; - onPrepareOptionsMenu(mule.unwrap()); - } + onPrepareOptionsMenu(new MenuWrapper(menu)); } + @Override public void onPrepareOptionsMenu(Menu menu) { //Nothing to see here. } @Override public final boolean onOptionsItemSelected(android.view.MenuItem item) { - if (DEBUG) Log.d(TAG, "[onOptionsItemSelected] item: " + item); - - if (item instanceof MenuItemMule) { - return onOptionsItemSelected(((MenuItemMule)item).unwrap()); - } - return false; + return onOptionsItemSelected(new MenuItemWrapper(item)); } + @Override public boolean onOptionsItemSelected(MenuItem item) { //Nothing to see here. return false; diff --git a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockFragmentActivity.java b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockFragmentActivity.java index 49a5c6ca..5cd13ba7 100644 --- a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockFragmentActivity.java +++ b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockFragmentActivity.java @@ -2,27 +2,24 @@ package com.actionbarsherlock.app; import android.content.res.Configuration; import android.os.Bundle; -import android.support.v4.app.FragmentActivity; +import android.support.v4.app._ActionBarSherlockTrojanHorse; import android.util.Log; import android.view.KeyEvent; import android.view.View; import android.view.ViewGroup.LayoutParams; import android.view.Window; import com.actionbarsherlock.ActionBarSherlock; -import com.actionbarsherlock.ActionBarSherlock.OnActionModeFinishedListener; -import com.actionbarsherlock.ActionBarSherlock.OnActionModeStartedListener; -import com.actionbarsherlock.ActionBarSherlock.OnCreatePanelMenuListener; -import com.actionbarsherlock.ActionBarSherlock.OnMenuItemSelectedListener; -import com.actionbarsherlock.ActionBarSherlock.OnPreparePanelListener; -import com.actionbarsherlock.internal.view.menu.MenuItemMule; -import com.actionbarsherlock.internal.view.menu.MenuMule; import com.actionbarsherlock.view.ActionMode; import com.actionbarsherlock.view.Menu; import com.actionbarsherlock.view.MenuInflater; import com.actionbarsherlock.view.MenuItem; -public abstract class SherlockFragmentActivity extends FragmentActivity implements OnCreatePanelMenuListener, OnPreparePanelListener, OnMenuItemSelectedListener, OnActionModeStartedListener, OnActionModeFinishedListener { - static final boolean DEBUG = false; +import static com.actionbarsherlock.ActionBarSherlock.OnActionModeFinishedListener; +import static com.actionbarsherlock.ActionBarSherlock.OnActionModeStartedListener; + +/** @see {@link _ActionBarSherlockTrojanHorse} */ +public class SherlockFragmentActivity extends _ActionBarSherlockTrojanHorse implements OnActionModeStartedListener, OnActionModeFinishedListener { + private static final boolean DEBUG = false; private static final String TAG = "SherlockFragmentActivity"; private ActionBarSherlock mSherlock; @@ -85,6 +82,12 @@ public abstract class SherlockFragmentActivity extends FragmentActivity implemen super.onStop(); } + @Override + protected void onDestroy() { + getSherlock().dispatchDestroy(); + super.onDestroy(); + } + @Override protected void onPostCreate(Bundle savedInstanceState) { getSherlock().dispatchPostCreate(savedInstanceState); @@ -221,75 +224,14 @@ public abstract class SherlockFragmentActivity extends FragmentActivity implemen // Sherlock menu handling /////////////////////////////////////////////////////////////////////////// - @Override - public boolean onCreatePanelMenu(int featureId, Menu menu) { - if (DEBUG) Log.d(TAG, "[onCreatePanelMenu] featureId: " + featureId + ", menu: " + menu); - - if (featureId == Window.FEATURE_OPTIONS_PANEL) { - boolean result = onCreateOptionsMenu(menu); - if (DEBUG) Log.d(TAG, "[onCreatePanelMenu] activity create result: " + result); - - //Dispatch to parent panel creation for fragment dispatching - if (DEBUG) Log.d(TAG, "[onCreatePanelMenu] dispatching to native with mule"); - MenuMule mule = new MenuMule(menu); - super.onCreatePanelMenu(featureId, mule); - - if (DEBUG) Log.d(TAG, "[onCreatePanelMenu] fragments create result: " + mule.mDispatchShow); - result |= mule.mDispatchShow; - - if (DEBUG) Log.d(TAG, "[onCreatePanelMenu] returning " + result); - return result; - } - return false; - } - public boolean onCreateOptionsMenu(Menu menu) { return true; } - @Override - public boolean onPreparePanel(int featureId, View view, Menu menu) { - if (DEBUG) Log.d(TAG, "[onPreparePanel] featureId: " + featureId + ", view: " + view + " menu: " + menu); - - if (featureId == Window.FEATURE_OPTIONS_PANEL) { - boolean result = onPrepareOptionsMenu(menu); - if (DEBUG) Log.d(TAG, "[onPreparePanel] activity prepare result: " + result); - - //Dispatch to parent panel preparation for fragment dispatching - if (DEBUG) Log.d(TAG, "[onPreparePanel] dispatching to native with mule"); - MenuMule mule = new MenuMule(menu); - super.onPreparePanel(featureId, view, mule); - - if (DEBUG) Log.d(TAG, "[onPreparePanel] fragments prepare result: " + mule.mDispatchShow); - result |= mule.mDispatchShow; - - result &= menu.hasVisibleItems(); - if (DEBUG) Log.d(TAG, "[onPreparePanel] returning " + result); - return result; - } - return false; - } - public boolean onPrepareOptionsMenu(Menu menu) { return true; } - @Override - public boolean onMenuItemSelected(int featureId, MenuItem item) { - if (DEBUG) Log.d(TAG, "[onMenuItemSelected] featureId: " + featureId + ", item: " + item); - - if (featureId == Window.FEATURE_OPTIONS_PANEL) { - if (onOptionsItemSelected(item)) { - return true; - } - - //Dispatch to parent panel selection for fragment dispatching - if (DEBUG) Log.d(TAG, "[onMenuItemSelected] dispatching to native with mule"); - return super.onMenuItemSelected(featureId, new MenuItemMule(item)); - } - return false; - } - public boolean onOptionsItemSelected(MenuItem item) { return false; } diff --git a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockListActivity.java b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockListActivity.java index 83114c3a..00c00fee 100644 --- a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockListActivity.java +++ b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockListActivity.java @@ -76,6 +76,12 @@ public abstract class SherlockListActivity extends ListActivity implements OnCre super.onStop(); } + @Override + protected void onDestroy() { + getSherlock().dispatchDestroy(); + super.onDestroy(); + } + @Override protected void onPostCreate(Bundle savedInstanceState) { getSherlock().dispatchPostCreate(savedInstanceState); diff --git a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockListFragment.java b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockListFragment.java index 03a312b3..13ca3c49 100644 --- a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockListFragment.java +++ b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockListFragment.java @@ -1,18 +1,18 @@ package com.actionbarsherlock.app; -import static com.actionbarsherlock.app.SherlockFragmentActivity.DEBUG; import android.app.Activity; import android.support.v4.app.ListFragment; -import android.util.Log; -import com.actionbarsherlock.internal.view.menu.MenuItemMule; -import com.actionbarsherlock.internal.view.menu.MenuMule; +import com.actionbarsherlock.internal.view.menu.MenuItemWrapper; +import com.actionbarsherlock.internal.view.menu.MenuWrapper; import com.actionbarsherlock.view.Menu; import com.actionbarsherlock.view.MenuInflater; import com.actionbarsherlock.view.MenuItem; -public class SherlockListFragment extends ListFragment { - private static final String TAG = "SherlockListFragment"; +import static com.actionbarsherlock.app.SherlockFragmentActivity.OnCreateOptionsMenuListener; +import static com.actionbarsherlock.app.SherlockFragmentActivity.OnOptionsItemSelectedListener; +import static com.actionbarsherlock.app.SherlockFragmentActivity.OnPrepareOptionsMenuListener; +public class SherlockListFragment extends ListFragment implements OnCreateOptionsMenuListener, OnPrepareOptionsMenuListener, OnOptionsItemSelectedListener { private SherlockFragmentActivity mActivity; public SherlockFragmentActivity getSherlockActivity() { @@ -22,7 +22,7 @@ public class SherlockListFragment extends ListFragment { @Override public void onAttach(Activity activity) { if (!(activity instanceof SherlockFragmentActivity)) { - throw new IllegalStateException(TAG + " must be attached to a SherlockFragmentActivity."); + throw new IllegalStateException(getClass().getSimpleName() + " must be attached to a SherlockFragmentActivity."); } mActivity = (SherlockFragmentActivity)activity; @@ -30,45 +30,37 @@ public class SherlockListFragment extends ListFragment { } @Override - public final void onCreateOptionsMenu(android.view.Menu menu, android.view.MenuInflater inflater) { - if (DEBUG) Log.d(TAG, "[onCreateOptionsMenu] menu: " + menu + ", inflater: " + inflater); + public void onDetach() { + mActivity = null; + super.onDetach(); + } - if (menu instanceof MenuMule) { - MenuMule mule = (MenuMule)menu; - mule.mDispatchShow = true; - onCreateOptionsMenu(mule.unwrap(), mActivity.getSupportMenuInflater()); - } + @Override + public final void onCreateOptionsMenu(android.view.Menu menu, android.view.MenuInflater inflater) { + onCreateOptionsMenu(new MenuWrapper(menu), mActivity.getSupportMenuInflater()); } + @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { //Nothing to see here. } @Override public final void onPrepareOptionsMenu(android.view.Menu menu) { - if (DEBUG) Log.d(TAG, "[onPrepareOptionsMenu] menu: " + menu); - - if (menu instanceof MenuMule) { - MenuMule mule = (MenuMule)menu; - mule.mDispatchShow = true; - onPrepareOptionsMenu(mule.unwrap()); - } + onPrepareOptionsMenu(new MenuWrapper(menu)); } + @Override public void onPrepareOptionsMenu(Menu menu) { //Nothing to see here. } @Override public final boolean onOptionsItemSelected(android.view.MenuItem item) { - if (DEBUG) Log.d(TAG, "[onOptionsItemSelected] item: " + item); - - if (item instanceof MenuItemMule) { - return onOptionsItemSelected(((MenuItemMule)item).unwrap()); - } - return false; + return onOptionsItemSelected(new MenuItemWrapper(item)); } + @Override public boolean onOptionsItemSelected(MenuItem item) { //Nothing to see here. return false; diff --git a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockPreferenceActivity.java b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockPreferenceActivity.java index 71e40300..4f80be51 100644 --- a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockPreferenceActivity.java +++ b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockPreferenceActivity.java @@ -76,6 +76,12 @@ public abstract class SherlockPreferenceActivity extends PreferenceActivity impl super.onStop(); } + @Override + protected void onDestroy() { + getSherlock().dispatchDestroy(); + super.onDestroy(); + } + @Override protected void onPostCreate(Bundle savedInstanceState) { getSherlock().dispatchPostCreate(savedInstanceState); diff --git a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/ActionBarSherlockCompat.java b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/ActionBarSherlockCompat.java index f080bfe9..05353d28 100644 --- a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/ActionBarSherlockCompat.java +++ b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/ActionBarSherlockCompat.java @@ -81,6 +81,8 @@ public class ActionBarSherlockCompat extends ActionBarSherlock implements MenuBu /** Whether or not the title is stable and can be displayed. */ private boolean mIsTitleReady = false; + /** Whether or not the parent activity has been destroyed. */ + private boolean mIsDestroyed = false; /* Emulate PanelFeatureState */ private boolean mClosingActionMenu; @@ -413,7 +415,7 @@ public class ActionBarSherlockCompat extends ActionBarSherlock implements MenuBu } // Next collapse any expanded action views. - if (aActionBar != null && wActionBar.hasExpandedActionView()) { + if (wActionBar != null && wActionBar.hasExpandedActionView()) { if (action == KeyEvent.ACTION_UP) { wActionBar.collapseActionView(); } @@ -428,7 +430,7 @@ public class ActionBarSherlockCompat extends ActionBarSherlock implements MenuBu mMenuKeyIsLongPress = true; } else if (event.getAction() == KeyEvent.ACTION_UP) { if (!mMenuKeyIsLongPress) { - if (mActionMode == null) { + if (mActionMode == null && wActionBar != null) { if (wActionBar.isOverflowMenuShowing()) { wActionBar.hideOverflowMenu(); } else { @@ -445,6 +447,11 @@ public class ActionBarSherlockCompat extends ActionBarSherlock implements MenuBu return result; } + @Override + public void dispatchDestroy() { + mIsDestroyed = true; + } + /////////////////////////////////////////////////////////////////////////// // Menu callback lifecycle and creation @@ -977,7 +984,7 @@ public class ActionBarSherlockCompat extends ActionBarSherlock implements MenuBu @Override public void run() { //Invalidate if the panel menu hasn't been created before this. - if (!mActivity.isFinishing() && mMenu == null) { + if (!mIsDestroyed && !mActivity.isFinishing() && mMenu == null) { dispatchInvalidateOptionsMenu(); } } diff --git a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/app/ActionBarWrapper.java b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/app/ActionBarWrapper.java index 1bd0eacc..e390ea42 100644 --- a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/app/ActionBarWrapper.java +++ b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/app/ActionBarWrapper.java @@ -217,7 +217,6 @@ public class ActionBarWrapper extends ActionBar implements android.app.ActionBar public TabWrapper(android.app.ActionBar.Tab nativeTab) { mNativeTab = nativeTab; mNativeTab.setTag(this); - mNativeTab.setTabListener(this); } @Override @@ -289,6 +288,7 @@ public class ActionBarWrapper extends ActionBar implements android.app.ActionBar @Override public Tab setTabListener(TabListener listener) { + mNativeTab.setTabListener(listener != null ? this : null); mListener = listener; return this; } diff --git a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/nineoldandroids/view/animation/AnimatorProxy.java b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/nineoldandroids/view/animation/AnimatorProxy.java index e284604b..067d0494 100644 --- a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/nineoldandroids/view/animation/AnimatorProxy.java +++ b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/nineoldandroids/view/animation/AnimatorProxy.java @@ -140,6 +140,8 @@ public final class AnimatorProxy extends Animation { return; } + view.setAnimation(this); + final RectF after = mAfter; computeRect(after, view); after.union(mBefore); @@ -202,4 +204,9 @@ public final class AnimatorProxy extends Animation { transformMatrix(t.getMatrix(), view); } } + + @Override + public void reset() { + /* Do nothing. */ + } } diff --git a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/view/menu/MenuItemMule.java b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/view/menu/MenuItemMule.java deleted file mode 100644 index 5a809983..00000000 --- a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/view/menu/MenuItemMule.java +++ /dev/null @@ -1,234 +0,0 @@ -package com.actionbarsherlock.internal.view.menu; - -import android.content.Intent; -import android.graphics.drawable.Drawable; -import android.view.ActionProvider; -import android.view.MenuItem; -import android.view.SubMenu; -import android.view.View; -import android.view.ContextMenu.ContextMenuInfo; - -/** Used to carry an instance of our version of MenuItem through a native channel. */ -public class MenuItemMule implements MenuItem { - private static final String ERROR = "Cannot interact with object designed for temporary " - + "instance passing. Make sure you using both SherlockFragmentActivity and " - + "SherlockFragment."; - - - private final com.actionbarsherlock.view.MenuItem mItem; - - public MenuItemMule(com.actionbarsherlock.view.MenuItem item) { - mItem = item; - } - - public com.actionbarsherlock.view.MenuItem unwrap() { - return mItem; - } - - - @Override - public boolean collapseActionView() { - throw new IllegalStateException(ERROR); - } - - @Override - public boolean expandActionView() { - throw new IllegalStateException(ERROR); - } - - @Override - public ActionProvider getActionProvider() { - throw new IllegalStateException(ERROR); - } - - @Override - public View getActionView() { - throw new IllegalStateException(ERROR); - } - - @Override - public char getAlphabeticShortcut() { - throw new IllegalStateException(ERROR); - } - - @Override - public int getGroupId() { - throw new IllegalStateException(ERROR); - } - - @Override - public Drawable getIcon() { - throw new IllegalStateException(ERROR); - } - - @Override - public Intent getIntent() { - throw new IllegalStateException(ERROR); - } - - @Override - public int getItemId() { - throw new IllegalStateException(ERROR); - } - - @Override - public ContextMenuInfo getMenuInfo() { - throw new IllegalStateException(ERROR); - } - - @Override - public char getNumericShortcut() { - throw new IllegalStateException(ERROR); - } - - @Override - public int getOrder() { - throw new IllegalStateException(ERROR); - } - - @Override - public SubMenu getSubMenu() { - throw new IllegalStateException(ERROR); - } - - @Override - public CharSequence getTitle() { - throw new IllegalStateException(ERROR); - } - - @Override - public CharSequence getTitleCondensed() { - return mItem.getTitleCondensed(); - //throw new IllegalStateException(ERROR); - } - - @Override - public boolean hasSubMenu() { - throw new IllegalStateException(ERROR); - } - - @Override - public boolean isActionViewExpanded() { - throw new IllegalStateException(ERROR); - } - - @Override - public boolean isCheckable() { - throw new IllegalStateException(ERROR); - } - - @Override - public boolean isChecked() { - throw new IllegalStateException(ERROR); - } - - @Override - public boolean isEnabled() { - throw new IllegalStateException(ERROR); - } - - @Override - public boolean isVisible() { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setActionProvider(ActionProvider arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setActionView(View arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setActionView(int arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setAlphabeticShortcut(char arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setCheckable(boolean arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setChecked(boolean arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setEnabled(boolean arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setIcon(Drawable arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setIcon(int arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setIntent(Intent arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setNumericShortcut(char arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setOnActionExpandListener(OnActionExpandListener arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setOnMenuItemClickListener(OnMenuItemClickListener arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setShortcut(char arg0, char arg1) { - throw new IllegalStateException(ERROR); - } - - @Override - public void setShowAsAction(int arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setShowAsActionFlags(int arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setTitle(CharSequence arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setTitle(int arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setTitleCondensed(CharSequence arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem setVisible(boolean arg0) { - throw new IllegalStateException(ERROR); - } -} diff --git a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/view/menu/MenuMule.java b/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/view/menu/MenuMule.java deleted file mode 100644 index b2385b90..00000000 --- a/android-libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/view/menu/MenuMule.java +++ /dev/null @@ -1,151 +0,0 @@ -package com.actionbarsherlock.internal.view.menu; - -import android.content.ComponentName; -import android.content.Intent; -import android.view.KeyEvent; -import android.view.Menu; -import android.view.MenuItem; -import android.view.SubMenu; - -/** Used to carry an instance of our version of Menu through a native channel. */ -public class MenuMule implements Menu { - private static final String ERROR = "Cannot interact with object designed for temporary " - + "instance passing. Make sure you using both SherlockFragmentActivity and " - + "SherlockFragment."; - - - private final com.actionbarsherlock.view.Menu mMenu; - public boolean mDispatchShow = false; - - public MenuMule(com.actionbarsherlock.view.Menu menu) { - mMenu = menu; - } - - public com.actionbarsherlock.view.Menu unwrap() { - return mMenu; - } - - - @Override - public MenuItem add(CharSequence arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem add(int arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem add(int arg0, int arg1, int arg2, CharSequence arg3) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem add(int arg0, int arg1, int arg2, int arg3) { - throw new IllegalStateException(ERROR); - } - - @Override - public int addIntentOptions(int arg0, int arg1, int arg2, - ComponentName arg3, Intent[] arg4, Intent arg5, int arg6, - MenuItem[] arg7) { - throw new IllegalStateException(ERROR); - } - - @Override - public SubMenu addSubMenu(CharSequence arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public SubMenu addSubMenu(int arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public SubMenu addSubMenu(int arg0, int arg1, int arg2, CharSequence arg3) { - throw new IllegalStateException(ERROR); - } - - @Override - public SubMenu addSubMenu(int arg0, int arg1, int arg2, int arg3) { - throw new IllegalStateException(ERROR); - } - - @Override - public void clear() { - throw new IllegalStateException(ERROR); - } - - @Override - public void close() { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem findItem(int arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public MenuItem getItem(int arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public boolean hasVisibleItems() { - return mMenu.hasVisibleItems(); - //throw new IllegalStateException(ERROR); - } - - @Override - public boolean isShortcutKey(int arg0, KeyEvent arg1) { - throw new IllegalStateException(ERROR); - } - - @Override - public boolean performIdentifierAction(int arg0, int arg1) { - throw new IllegalStateException(ERROR); - } - - @Override - public boolean performShortcut(int arg0, KeyEvent arg1, int arg2) { - throw new IllegalStateException(ERROR); - } - - @Override - public void removeGroup(int arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public void removeItem(int arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public void setGroupCheckable(int arg0, boolean arg1, boolean arg2) { - throw new IllegalStateException(ERROR); - } - - @Override - public void setGroupEnabled(int arg0, boolean arg1) { - throw new IllegalStateException(ERROR); - } - - @Override - public void setGroupVisible(int arg0, boolean arg1) { - throw new IllegalStateException(ERROR); - } - - @Override - public void setQwertyMode(boolean arg0) { - throw new IllegalStateException(ERROR); - } - - @Override - public int size() { - throw new IllegalStateException(ERROR); - } -} -- 2.30.2