diff options
Diffstat (limited to 'src/com/android/settings/applications/ClearDefaultsPreference.java')
-rw-r--r-- | src/com/android/settings/applications/ClearDefaultsPreference.java | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/com/android/settings/applications/ClearDefaultsPreference.java b/src/com/android/settings/applications/ClearDefaultsPreference.java index 8be4be0..bcb6a8a 100644 --- a/src/com/android/settings/applications/ClearDefaultsPreference.java +++ b/src/com/android/settings/applications/ClearDefaultsPreference.java @@ -93,9 +93,13 @@ public class ClearDefaultsPreference extends Preference { @Override public void onClick(View v) { if (mUsbManager != null) { + final int userId = UserHandle.myUserId(); mPm.clearPackagePreferredActivities(mPackageName); + if (isDefaultBrowser(mPackageName)) { + mPm.setDefaultBrowserPackageName(null, userId); + } try { - mUsbManager.clearDefaults(mPackageName, UserHandle.myUserId()); + mUsbManager.clearDefaults(mPackageName, userId); } catch (RemoteException e) { Log.e(TAG, "mUsbManager.clearDefaults", e); } @@ -122,6 +126,7 @@ public class ClearDefaultsPreference extends Preference { TextView autoLaunchView = (TextView) mRootView.findViewById(R.id.auto_launch); boolean autoLaunchEnabled = Utils.hasPreferredActivities(mPm, mPackageName) + || isDefaultBrowser(mPackageName) || Utils.hasUsbDefaults(mUsbManager, mPackageName); if (!autoLaunchEnabled && !hasBindAppWidgetPermission) { resetLaunchDefaultsUi(autoLaunchView); @@ -165,6 +170,11 @@ public class ClearDefaultsPreference extends Preference { return true; } + private boolean isDefaultBrowser(String packageName) { + final String defaultBrowser = mPm.getDefaultBrowserPackageName(UserHandle.myUserId()); + return packageName.equals(defaultBrowser); + } + private void resetLaunchDefaultsUi(TextView autoLaunchView) { autoLaunchView.setText(R.string.auto_launch_disable_text); // Disable clear activities button |