Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c1c2853c authored by Pawan Wagh's avatar Pawan Wagh Committed by Android (Google) Code Review
Browse files

Merge "Turn off voice access in 16KB mode" into main

parents cfc8c70a 6de40938
Loading
Loading
Loading
Loading
+8 −0
Original line number Original line Diff line number Diff line
@@ -44,6 +44,7 @@ import com.android.internal.content.PackageMonitor;
import com.android.settings.R;
import com.android.settings.R;
import com.android.settings.accessibility.AccessibilityUtil.AccessibilityServiceFragmentType;
import com.android.settings.accessibility.AccessibilityUtil.AccessibilityServiceFragmentType;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.development.Enable16kUtils;
import com.android.settings.inputmethod.PhysicalKeyboardFragment;
import com.android.settings.inputmethod.PhysicalKeyboardFragment;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.search.BaseSearchIndexProvider;
@@ -98,6 +99,8 @@ public class AccessibilitySettings extends DashboardFragment implements
    static final String EXTRA_TIME_FOR_LOGGING = "start_time_to_log_a11y_tool";
    static final String EXTRA_TIME_FOR_LOGGING = "start_time_to_log_a11y_tool";
    static final String EXTRA_METRICS_CATEGORY = "metrics_category";
    static final String EXTRA_METRICS_CATEGORY = "metrics_category";


    public static final String VOICE_ACCESS_SERVICE = "android.apps.accessibility.voiceaccess";

    // Timeout before we update the services if packages are added/removed
    // Timeout before we update the services if packages are added/removed
    // since the AccessibilityManagerService has to do that processing first
    // since the AccessibilityManagerService has to do that processing first
    // to generate the AccessibilityServiceInfo we need for proper
    // to generate the AccessibilityServiceInfo we need for proper
@@ -488,6 +491,11 @@ public class AccessibilitySettings extends DashboardFragment implements
        String[] services = getResources().getStringArray(key);
        String[] services = getResources().getStringArray(key);
        PreferenceCategory category = mCategoryToPrefCategoryMap.get(categoryKey);
        PreferenceCategory category = mCategoryToPrefCategoryMap.get(categoryKey);
        for (int i = 0; i < services.length; i++) {
        for (int i = 0; i < services.length; i++) {
            // TODO(b/335443194) Voice access is not available in 16kB mode.
            if (services[i].contains(VOICE_ACCESS_SERVICE)
                    && Enable16kUtils.isPageAgnosticModeOn(getContext())) {
                continue;
            }
            ComponentName component = ComponentName.unflattenFromString(services[i]);
            ComponentName component = ComponentName.unflattenFromString(services[i]);
            mPreBundledServiceComponentToCategoryMap.put(component, category);
            mPreBundledServiceComponentToCategoryMap.put(component, category);
        }
        }
+7 −0
Original line number Original line Diff line number Diff line
@@ -16,6 +16,7 @@


package com.android.settings.accessibility;
package com.android.settings.accessibility;


import static com.android.settings.accessibility.AccessibilitySettings.VOICE_ACCESS_SERVICE;
import static com.android.settingslib.widget.TwoTargetPreference.ICON_SIZE_MEDIUM;
import static com.android.settingslib.widget.TwoTargetPreference.ICON_SIZE_MEDIUM;


import android.accessibilityservice.AccessibilityServiceInfo;
import android.accessibilityservice.AccessibilityServiceInfo;
@@ -37,6 +38,7 @@ import androidx.core.content.ContextCompat;


import com.android.settings.R;
import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.Utils;
import com.android.settings.development.Enable16kUtils;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.RestrictedLockUtils;
import com.android.settingslib.RestrictedLockUtils;
import com.android.settingslib.RestrictedLockUtilsInternal;
import com.android.settingslib.RestrictedLockUtilsInternal;
@@ -89,6 +91,11 @@ public class RestrictedPreferenceHelper {
            final AccessibilityServiceInfo info = installedServices.get(i);
            final AccessibilityServiceInfo info = installedServices.get(i);
            final ResolveInfo resolveInfo = info.getResolveInfo();
            final ResolveInfo resolveInfo = info.getResolveInfo();
            final String packageName = resolveInfo.serviceInfo.packageName;
            final String packageName = resolveInfo.serviceInfo.packageName;
            // TODO(b/335443194) Voice access is not available in 16kB mode.
            if (packageName.contains(VOICE_ACCESS_SERVICE)
                    && Enable16kUtils.isPageAgnosticModeOn(mContext)) {
                continue;
            }
            final ComponentName componentName = new ComponentName(packageName,
            final ComponentName componentName = new ComponentName(packageName,
                    resolveInfo.serviceInfo.name);
                    resolveInfo.serviceInfo.name);