Settings: Check GSA package too for CTS availability
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
This commit is contained in:
@@ -19,6 +19,7 @@ package com.android.settings.gestures;
|
|||||||
import static android.app.contextualsearch.ContextualSearchManager.FEATURE_CONTEXTUAL_SEARCH;
|
import static android.app.contextualsearch.ContextualSearchManager.FEATURE_CONTEXTUAL_SEARCH;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.content.pm.PackageManager;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
|
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
@@ -30,17 +31,23 @@ import com.android.settings.core.TogglePreferenceController;
|
|||||||
*/
|
*/
|
||||||
public class NavigationSettingsContextualSearchController extends TogglePreferenceController {
|
public class NavigationSettingsContextualSearchController extends TogglePreferenceController {
|
||||||
|
|
||||||
|
private final boolean mDefaultEnabled;
|
||||||
|
private final String mCtsPackage;
|
||||||
|
|
||||||
public NavigationSettingsContextualSearchController(@NonNull Context context,
|
public NavigationSettingsContextualSearchController(@NonNull Context context,
|
||||||
@NonNull String preferenceKey) {
|
@NonNull String preferenceKey) {
|
||||||
super(context, preferenceKey);
|
super(context, preferenceKey);
|
||||||
|
|
||||||
|
mDefaultEnabled = context.getResources().getBoolean(
|
||||||
|
com.android.internal.R.bool.config_searchAllEntrypointsEnabledDefault);
|
||||||
|
mCtsPackage = context.getResources().getString(
|
||||||
|
com.android.internal.R.string.config_defaultContextualSearchPackageName);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isChecked() {
|
public boolean isChecked() {
|
||||||
boolean onByDefault = mContext.getResources().getBoolean(
|
|
||||||
com.android.internal.R.bool.config_searchAllEntrypointsEnabledDefault);
|
|
||||||
return Settings.Secure.getInt(mContext.getContentResolver(),
|
return Settings.Secure.getInt(mContext.getContentResolver(),
|
||||||
Settings.Secure.SEARCH_ALL_ENTRYPOINTS_ENABLED, onByDefault ? 1 : 0)
|
Settings.Secure.SEARCH_ALL_ENTRYPOINTS_ENABLED, mDefaultEnabled ? 1 : 0)
|
||||||
== 1;
|
== 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -52,8 +59,17 @@ public class NavigationSettingsContextualSearchController extends TogglePreferen
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getAvailabilityStatus() {
|
public int getAvailabilityStatus() {
|
||||||
if (mContext.getPackageManager().hasSystemFeature(FEATURE_CONTEXTUAL_SEARCH)) {
|
PackageManager pm = mContext.getPackageManager();
|
||||||
return AVAILABLE;
|
if (pm == null) {
|
||||||
|
return UNSUPPORTED_ON_DEVICE;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
if (pm.hasSystemFeature(FEATURE_CONTEXTUAL_SEARCH) &&
|
||||||
|
pm.getApplicationInfo(mCtsPackage, 0).enabled) {
|
||||||
|
return AVAILABLE;
|
||||||
|
}
|
||||||
|
} catch (PackageManager.NameNotFoundException e) {
|
||||||
|
return UNSUPPORTED_ON_DEVICE;
|
||||||
}
|
}
|
||||||
return UNSUPPORTED_ON_DEVICE;
|
return UNSUPPORTED_ON_DEVICE;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user