Hide "Open by default" entirely for browser apps
Browsers are explicitly treated outside the web link infrastructure, so we shouldn't offer "Open by default" section. Fixes: 129162570 Test: robotests Change-Id: Ie63d5fbfb32eaed4bba8a80158b6bb19bb45b380
This commit is contained in:
@@ -22,6 +22,7 @@ import android.content.pm.PackageInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.hardware.usb.IUsbManager;
|
||||
import android.os.ServiceManager;
|
||||
import android.os.UserHandle;
|
||||
|
||||
import androidx.preference.Preference;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
@@ -35,6 +36,7 @@ public class AppOpenByDefaultPreferenceController extends AppInfoPreferenceContr
|
||||
|
||||
private IUsbManager mUsbManager;
|
||||
private PackageManager mPackageManager;
|
||||
private String mPackageName;
|
||||
|
||||
public AppOpenByDefaultPreferenceController(Context context, String key) {
|
||||
super(context, key);
|
||||
@@ -42,6 +44,12 @@ public class AppOpenByDefaultPreferenceController extends AppInfoPreferenceContr
|
||||
mPackageManager = context.getPackageManager();
|
||||
}
|
||||
|
||||
/** Set a package name for this controller. */
|
||||
public AppOpenByDefaultPreferenceController setPackageName(String packageName) {
|
||||
mPackageName = packageName;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void displayPreference(PreferenceScreen screen) {
|
||||
super.displayPreference(screen);
|
||||
@@ -57,7 +65,9 @@ public class AppOpenByDefaultPreferenceController extends AppInfoPreferenceContr
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
final PackageInfo packageInfo = mParent.getPackageInfo();
|
||||
if (packageInfo != null && !AppUtils.isInstant(packageInfo.applicationInfo)) {
|
||||
if (packageInfo != null && !AppUtils.isInstant(packageInfo.applicationInfo)
|
||||
&& !AppUtils.isBrowserApp(mContext, packageInfo.packageName,
|
||||
UserHandle.myUserId())) {
|
||||
preference.setVisible(true);
|
||||
preference.setSummary(AppUtils.getLaunchByDefaultSummary(mParent.getAppEntry(),
|
||||
mUsbManager, mPackageManager, mContext));
|
||||
@@ -70,5 +80,4 @@ public class AppOpenByDefaultPreferenceController extends AppInfoPreferenceContr
|
||||
protected Class<? extends SettingsPreferenceFragment> getDetailFragmentClass() {
|
||||
return AppLaunchSettings.class;
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user