am 0385cf14
: Fix issue #3306021 NPE at android.app.AlertDialog.getDefaultDialogTheme(AlertDialog.java)
* commit '0385cf14a1b02fafc3d1a094ccfee45de4e9b03a': Fix issue #3306021 NPE at android.app.AlertDialog.getDefaultDialogTheme(AlertDialog.java)
This commit is contained in:
@@ -78,6 +78,17 @@ public class SettingsPreferenceFragment extends PreferenceFragment
|
|||||||
return getActivity().getPackageManager();
|
return getActivity().getPackageManager();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onDetach() {
|
||||||
|
if (isRemoving()) {
|
||||||
|
if (mDialogFragment != null) {
|
||||||
|
mDialogFragment.dismiss();
|
||||||
|
mDialogFragment = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
super.onDetach();
|
||||||
|
}
|
||||||
|
|
||||||
// Dialog management
|
// Dialog management
|
||||||
|
|
||||||
protected void showDialog(int dialogId) {
|
protected void showDialog(int dialogId) {
|
||||||
|
@@ -184,6 +184,8 @@ public class ManageApplications extends Fragment implements
|
|||||||
static final String TAB_SDCARD = "OnSdCard";
|
static final String TAB_SDCARD = "OnSdCard";
|
||||||
private View mRootView;
|
private View mRootView;
|
||||||
|
|
||||||
|
private boolean mShowBackground = false;
|
||||||
|
|
||||||
// -------------- Copied from TabActivity --------------
|
// -------------- Copied from TabActivity --------------
|
||||||
|
|
||||||
private TabHost mTabHost;
|
private TabHost mTabHost;
|
||||||
@@ -539,6 +541,7 @@ public class ManageApplications extends Fragment implements
|
|||||||
mFilterApps = savedInstanceState.getInt("filterApps", mFilterApps);
|
mFilterApps = savedInstanceState.getInt("filterApps", mFilterApps);
|
||||||
String tmp = savedInstanceState.getString("defaultTabTag");
|
String tmp = savedInstanceState.getString("defaultTabTag");
|
||||||
if (tmp != null) defaultTabTag = tmp;
|
if (tmp != null) defaultTabTag = tmp;
|
||||||
|
mShowBackground = savedInstanceState.getBoolean("showBackground", false);
|
||||||
}
|
}
|
||||||
|
|
||||||
mDefaultTab = defaultTabTag;
|
mDefaultTab = defaultTabTag;
|
||||||
@@ -631,6 +634,7 @@ public class ManageApplications extends Fragment implements
|
|||||||
if (mDefaultTab != null) {
|
if (mDefaultTab != null) {
|
||||||
outState.putString("defautTabTag", mDefaultTab);
|
outState.putString("defautTabTag", mDefaultTab);
|
||||||
}
|
}
|
||||||
|
outState.putBoolean("showBackground", mShowBackground);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -666,11 +670,13 @@ public class ManageApplications extends Fragment implements
|
|||||||
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
|
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
|
||||||
Log.i(TAG, "onCreateOptionsMenu in " + this + ": " + menu);
|
Log.i(TAG, "onCreateOptionsMenu in " + this + ": " + menu);
|
||||||
mOptionsMenu = menu;
|
mOptionsMenu = menu;
|
||||||
|
// note: icons removed for now because the cause the new action
|
||||||
|
// bar UI to be very confusing.
|
||||||
menu.add(0, SORT_ORDER_ALPHA, 1, R.string.sort_order_alpha)
|
menu.add(0, SORT_ORDER_ALPHA, 1, R.string.sort_order_alpha)
|
||||||
.setIcon(android.R.drawable.ic_menu_sort_alphabetically)
|
//.setIcon(android.R.drawable.ic_menu_sort_alphabetically)
|
||||||
.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
|
.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
|
||||||
menu.add(0, SORT_ORDER_SIZE, 2, R.string.sort_order_size)
|
menu.add(0, SORT_ORDER_SIZE, 2, R.string.sort_order_size)
|
||||||
.setIcon(android.R.drawable.ic_menu_sort_by_size)
|
//.setIcon(android.R.drawable.ic_menu_sort_by_size)
|
||||||
.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
|
.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
|
||||||
menu.add(0, SHOW_RUNNING_SERVICES, 3, R.string.show_running_services)
|
menu.add(0, SHOW_RUNNING_SERVICES, 3, R.string.show_running_services)
|
||||||
.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
|
.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
|
||||||
@@ -722,8 +728,10 @@ public class ManageApplications extends Fragment implements
|
|||||||
mApplicationsAdapter.rebuild(mFilterApps, mSortOrder);
|
mApplicationsAdapter.rebuild(mFilterApps, mSortOrder);
|
||||||
}
|
}
|
||||||
} else if (menuId == SHOW_RUNNING_SERVICES) {
|
} else if (menuId == SHOW_RUNNING_SERVICES) {
|
||||||
|
mShowBackground = false;
|
||||||
mRunningProcessesView.mAdapter.setShowBackground(false);
|
mRunningProcessesView.mAdapter.setShowBackground(false);
|
||||||
} else if (menuId == SHOW_BACKGROUND_PROCESSES) {
|
} else if (menuId == SHOW_BACKGROUND_PROCESSES) {
|
||||||
|
mShowBackground = true;
|
||||||
mRunningProcessesView.mAdapter.setShowBackground(true);
|
mRunningProcessesView.mAdapter.setShowBackground(true);
|
||||||
}
|
}
|
||||||
updateOptionsMenu();
|
updateOptionsMenu();
|
||||||
@@ -838,6 +846,7 @@ public class ManageApplications extends Fragment implements
|
|||||||
} else if (which == VIEW_RUNNING) {
|
} else if (which == VIEW_RUNNING) {
|
||||||
if (!mCreatedRunning) {
|
if (!mCreatedRunning) {
|
||||||
mRunningProcessesView.doCreate(null);
|
mRunningProcessesView.doCreate(null);
|
||||||
|
mRunningProcessesView.mAdapter.setShowBackground(mShowBackground);
|
||||||
mCreatedRunning = true;
|
mCreatedRunning = true;
|
||||||
}
|
}
|
||||||
boolean haveData = true;
|
boolean haveData = true;
|
||||||
|
@@ -431,15 +431,17 @@ public class RunningProcessesView extends FrameLayout
|
|||||||
|
|
||||||
// utility method used to start sub activity
|
// utility method used to start sub activity
|
||||||
private void startServiceDetailsActivity(RunningState.MergedItem mi) {
|
private void startServiceDetailsActivity(RunningState.MergedItem mi) {
|
||||||
// start new fragment to display extended information
|
if (mOwner != null) {
|
||||||
Bundle args = new Bundle();
|
// start new fragment to display extended information
|
||||||
args.putInt(RunningServiceDetails.KEY_UID, mi.mProcess.mUid);
|
Bundle args = new Bundle();
|
||||||
args.putString(RunningServiceDetails.KEY_PROCESS, mi.mProcess.mProcessName);
|
args.putInt(RunningServiceDetails.KEY_UID, mi.mProcess.mUid);
|
||||||
args.putBoolean(RunningServiceDetails.KEY_BACKGROUND, mAdapter.mShowBackground);
|
args.putString(RunningServiceDetails.KEY_PROCESS, mi.mProcess.mProcessName);
|
||||||
|
args.putBoolean(RunningServiceDetails.KEY_BACKGROUND, mAdapter.mShowBackground);
|
||||||
PreferenceActivity pa = (PreferenceActivity)mOwner.getActivity();
|
|
||||||
pa.startPreferencePanel(RunningServiceDetails.class.getName(), args,
|
PreferenceActivity pa = (PreferenceActivity)mOwner.getActivity();
|
||||||
R.string.runningservicedetails_settings_title, null, null, 0);
|
pa.startPreferencePanel(RunningServiceDetails.class.getName(), args,
|
||||||
|
R.string.runningservicedetails_settings_title, null, null, 0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void onMovedToScrapHeap(View view) {
|
public void onMovedToScrapHeap(View view) {
|
||||||
|
Reference in New Issue
Block a user