No animation when tapping on current header in a preference screen.

Bug: 3125427
This commit is contained in:
Amith Yamasani
2010-10-27 16:14:20 -07:00
parent 367c6c7bb8
commit f5cbaeda14
2 changed files with 7 additions and 24 deletions

View File

@@ -145399,23 +145399,6 @@
<parameter name="header" type="android.preference.PreferenceActivity.Header">
</parameter>
</method>
<method name="switchToHeaderInner"
return="void"
abstract="false"
native="false"
synchronized="false"
static="false"
final="false"
deprecated="not deprecated"
visibility="public"
>
<parameter name="fragmentName" type="java.lang.String">
</parameter>
<parameter name="args" type="android.os.Bundle">
</parameter>
<parameter name="next" type="boolean">
</parameter>
</method>
<field name="EXTRA_NO_HEADERS"
type="java.lang.String"
transient="false"

View File

@@ -893,13 +893,13 @@ public abstract class PreferenceActivity extends ListActivity implements
}
}
public void switchToHeaderInner(String fragmentName, Bundle args, boolean next) {
private void switchToHeaderInner(String fragmentName, Bundle args, int direction) {
getFragmentManager().popBackStack(BACK_STACK_PREFS, POP_BACK_STACK_INCLUSIVE);
Fragment f = Fragment.instantiate(this, fragmentName, args);
FragmentTransaction transaction = getFragmentManager().openTransaction();
transaction.setTransition(next ?
FragmentTransaction.TRANSIT_FRAGMENT_NEXT :
FragmentTransaction.TRANSIT_FRAGMENT_PREV);
transaction.setTransition(direction == 0 ? FragmentTransaction.TRANSIT_NONE
: direction > 0 ? FragmentTransaction.TRANSIT_FRAGMENT_NEXT
: FragmentTransaction.TRANSIT_FRAGMENT_PREV);
transaction.replace(com.android.internal.R.id.prefs, f);
transaction.commit();
}
@@ -913,7 +913,7 @@ public abstract class PreferenceActivity extends ListActivity implements
*/
public void switchToHeader(String fragmentName, Bundle args) {
setSelectedHeader(null);
switchToHeaderInner(fragmentName, args, true);
switchToHeaderInner(fragmentName, args, 0);
}
/**
@@ -923,8 +923,8 @@ public abstract class PreferenceActivity extends ListActivity implements
* @param header The new header to display.
*/
public void switchToHeader(Header header) {
switchToHeaderInner(header.fragment, header.fragmentArguments,
mHeaders.indexOf(header) > mHeaders.indexOf(mCurHeader));
int direction = mHeaders.indexOf(header) - mHeaders.indexOf(mCurHeader);
switchToHeaderInner(header.fragment, header.fragmentArguments, direction);
setSelectedHeader(header);
}