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

Commit 7eddb0e4 authored by Kevin Chang's avatar Kevin Chang
Browse files

Change string of switchbar and installed service category title

Bug: 122897712
Test: Visual
Change-Id: I4e15ebc8b91c58d24aadb7e665c6692ebcd627a8
parent 1915fe3b
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -4806,7 +4806,7 @@
    <!-- Title for the accessibility preference category of interaction control services and settings. [CHAR LIMIT=50] -->
    <string name="interaction_control_category_title">Interaction controls</string>
    <!-- Title for the accessibility preference category of services downloaded by the user. [CHAR LIMIT=50] -->
    <string name="user_installed_services_category_title">Downloaded services</string>
    <string name="user_installed_services_category_title">Downloaded apps</string>
    <!-- Title for the accessibility preference category of settings considered to be experimental, meaning they might be changed or removed in the future. [CHAR LIMIT=50] -->
    <string name="experimental_category_title">Experimental</string>
    <!-- Title for feature flags dashboard where developers can turn on experimental features [CHAR LIMIT=50] -->
@@ -4912,7 +4912,7 @@
    <!-- Title for accessibility preference for configuring touch feedback vibrations. -->
    <string name="accessibility_touch_vibration_title">Touch feedback</string>
    <!-- Used in the acessibilty service settings to control turning on/off the service entirely -->
    <string name="accessibility_service_master_switch_title">Use service</string>
    <string name="accessibility_service_master_switch_title">Use <xliff:g id="service" example="TalkBack">%1$s</xliff:g></string>
    <!-- Used in the Color correction settings screen to control turning on/off the feature entirely -->
    <string name="accessibility_daltonizer_master_switch_title">Use color correction</string>
    <!-- Used in the Captions settings screen to control turning on/off the feature entirely -->
@@ -5138,7 +5138,7 @@
    </string>
    <!-- Title for the action perform in accessibility dialog. [CHAR LIMIT=NONE] -->
    <string name="accessibility_service_action_perform_title">View and platform actions</string>
    <string name="accessibility_service_action_perform_title">View and perform actions</string>
    <!-- Description for the action perform in accessibility dialog. [CHAR LIMIT=NONE] -->
    <string name="accessibility_service_action_perform_description">It can track your interactions
+11 −7
Original line number Diff line number Diff line
@@ -85,6 +85,16 @@ public class ToggleAccessibilityServicePreferenceFragment
        mLockPatternUtils = new LockPatternUtils(getActivity());
    }

    @Override
    public void onViewCreated(View view, Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
        mSwitchBar.setLabelDelegate((boolean isChecked) -> {
            final AccessibilityServiceInfo info = getAccessibilityServiceInfo();
            return getString(R.string.accessibility_service_master_switch_title,
                    info.getResolveInfo().loadLabel(getPackageManager()));
        });
    }

    @Override
    public void onResume() {
        mSettingsContentObserver.register(getContentResolver());
@@ -120,7 +130,7 @@ public class ToggleAccessibilityServicePreferenceFragment
                return serviceInfo;
            }
        }
        return null;
        throw new IllegalStateException("ServiceInfo is not found.");
    }

    @Override
@@ -128,18 +138,12 @@ public class ToggleAccessibilityServicePreferenceFragment
        switch (dialogId) {
            case DIALOG_ID_ENABLE_WARNING: {
                final AccessibilityServiceInfo info = getAccessibilityServiceInfo();
                if (info == null) {
                    return null;
                }
                mDialog = AccessibilityServiceWarning
                        .createCapabilitiesDialog(getActivity(), info, this);
                break;
            }
            case DIALOG_ID_DISABLE_WARNING: {
                AccessibilityServiceInfo info = getAccessibilityServiceInfo();
                if (info == null) {
                    return null;
                }
                mDialog = AccessibilityServiceWarning
                        .createDisableDialog(getActivity(), info, this);
                break;
+21 −1
Original line number Diff line number Diff line
@@ -61,6 +61,16 @@ public class SwitchBar extends LinearLayout implements CompoundButton.OnCheckedC
        void onSwitchChanged(Switch switchView, boolean isChecked);
    }

    public interface LabelDelegate {
        /**
         * Called to create label and set the title with Accessibility
         * service name to the textView of switchBar.
         *
         * @param isChecked  The checked state of switchView.
         */
        String createLabel(boolean isChecked);
    }

    private static final int[] XML_ATTRIBUTES = {
            R.attr.switchBarMarginStart,
            R.attr.switchBarMarginEnd,
@@ -90,6 +100,7 @@ public class SwitchBar extends LinearLayout implements CompoundButton.OnCheckedC
    private boolean mDisabledByAdmin;
    private EnforcedAdmin mEnforcedAdmin = null;
    private String mMetricsTag;
    private LabelDelegate mLabelDelegate;


    public SwitchBar(Context context) {
@@ -178,7 +189,11 @@ public class SwitchBar extends LinearLayout implements CompoundButton.OnCheckedC
    }

    public void setTextViewLabelAndBackground(boolean isChecked) {
        if(mLabelDelegate != null) {
            mLabel = mLabelDelegate.createLabel(isChecked);
        } else {
            mLabel = getResources().getString(isChecked ? mOnTextId : mOffTextId);
        }
        setBackgroundColor(isChecked ? mBackgroundActivatedColor : mBackgroundColor);
        updateText();
    }
@@ -383,4 +398,9 @@ public class SwitchBar extends LinearLayout implements CompoundButton.OnCheckedC

        requestLayout();
    }

    public void setLabelDelegate(LabelDelegate labelDelegate) {
        mLabelDelegate = labelDelegate;
        setTextViewLabelAndBackground(isChecked());
    }
}