Fix bridged app list saved scroll state
(don't clear the list when we have the info) Fixes: 27185911 Change-Id: Ieda4fd0fc6dd662741da9a1805c1435d4473490d
This commit is contained in:
@@ -106,6 +106,7 @@ public class ManageApplications extends InstrumentedFragment
|
|||||||
private static final String EXTRA_SORT_ORDER = "sortOrder";
|
private static final String EXTRA_SORT_ORDER = "sortOrder";
|
||||||
private static final String EXTRA_SHOW_SYSTEM = "showSystem";
|
private static final String EXTRA_SHOW_SYSTEM = "showSystem";
|
||||||
private static final String EXTRA_HAS_ENTRIES = "hasEntries";
|
private static final String EXTRA_HAS_ENTRIES = "hasEntries";
|
||||||
|
private static final String EXTRA_HAS_BRIDGE = "hasBridge";
|
||||||
|
|
||||||
// attributes used as keys when passing values to InstalledAppDetails activity
|
// attributes used as keys when passing values to InstalledAppDetails activity
|
||||||
public static final String APP_CHG = "chg";
|
public static final String APP_CHG = "chg";
|
||||||
@@ -314,6 +315,8 @@ public class ManageApplications extends InstrumentedFragment
|
|||||||
if (savedInstanceState != null) {
|
if (savedInstanceState != null) {
|
||||||
mApplications.mHasReceivedLoadEntries =
|
mApplications.mHasReceivedLoadEntries =
|
||||||
savedInstanceState.getBoolean(EXTRA_HAS_ENTRIES, false);
|
savedInstanceState.getBoolean(EXTRA_HAS_ENTRIES, false);
|
||||||
|
mApplications.mHasReceivedBridgeCallback =
|
||||||
|
savedInstanceState.getBoolean(EXTRA_HAS_BRIDGE, false);
|
||||||
}
|
}
|
||||||
mListView.setAdapter(mApplications);
|
mListView.setAdapter(mApplications);
|
||||||
mListView.setRecyclerListener(mApplications);
|
mListView.setRecyclerListener(mApplications);
|
||||||
@@ -447,6 +450,7 @@ public class ManageApplications extends InstrumentedFragment
|
|||||||
outState.putInt(EXTRA_SORT_ORDER, mSortOrder);
|
outState.putInt(EXTRA_SORT_ORDER, mSortOrder);
|
||||||
outState.putBoolean(EXTRA_SHOW_SYSTEM, mShowSystem);
|
outState.putBoolean(EXTRA_SHOW_SYSTEM, mShowSystem);
|
||||||
outState.putBoolean(EXTRA_HAS_ENTRIES, mApplications.mHasReceivedLoadEntries);
|
outState.putBoolean(EXTRA_HAS_ENTRIES, mApplications.mHasReceivedLoadEntries);
|
||||||
|
outState.putBoolean(EXTRA_HAS_BRIDGE, mApplications.mHasReceivedBridgeCallback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -822,7 +826,7 @@ public class ManageApplications extends InstrumentedFragment
|
|||||||
if (mExtraInfoBridge != null) {
|
if (mExtraInfoBridge != null) {
|
||||||
mExtraInfoBridge.resume();
|
mExtraInfoBridge.resume();
|
||||||
}
|
}
|
||||||
rebuild(true);
|
rebuild(false);
|
||||||
} else {
|
} else {
|
||||||
rebuild(sort);
|
rebuild(sort);
|
||||||
}
|
}
|
||||||
@@ -855,7 +859,7 @@ public class ManageApplications extends InstrumentedFragment
|
|||||||
|
|
||||||
public void rebuild(boolean eraseold) {
|
public void rebuild(boolean eraseold) {
|
||||||
if (!mHasReceivedLoadEntries
|
if (!mHasReceivedLoadEntries
|
||||||
&& (mExtraInfoBridge == null || mHasReceivedBridgeCallback)) {
|
|| (mExtraInfoBridge != null && !mHasReceivedBridgeCallback)) {
|
||||||
// Don't rebuild the list until all the app entries are loaded.
|
// Don't rebuild the list until all the app entries are loaded.
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user