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

Commit 6a6b9790 authored by Saige McVea's avatar Saige McVea
Browse files

Conditionally reposition experimental preferences.

Specifically, move colour inversion and colour correction preferences
to the display category if device is color transform accelerated.

Test: Manual

Bug: 36603386

Change-Id: I4f7e4e569f5f358e6e3c705f9df02e0da473a081
parent c2d56691
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -57,11 +57,6 @@
            android:title="@string/accessibility_screen_magnification_title"
            android:icon="@mipmap/ic_accessibility_magnification" />

        <Preference
                android:fragment="com.android.settings.accessibility.ToggleDaltonizerPreferenceFragment"
                android:key="daltonizer_preference_screen"
                android:title="@string/accessibility_display_daltonizer_preference_title" />

        <SwitchPreference
                android:key="toggle_large_pointer_icon"
                android:title="@string/accessibility_toggle_large_pointer_icon_title" />
@@ -118,6 +113,11 @@
                android:key="toggle_high_text_contrast_preference"
                android:title="@string/accessibility_toggle_high_text_contrast_preference_title" />

        <Preference
                android:fragment="com.android.settings.accessibility.ToggleDaltonizerPreferenceFragment"
                android:key="daltonizer_preference_screen"
                android:title="@string/accessibility_display_daltonizer_preference_title" />

        <SwitchPreference
                android:key="toggle_inversion_preference"
                android:title="@string/accessibility_display_inversion_preference_title"
+21 −0
Original line number Diff line number Diff line
@@ -549,6 +549,22 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
    }

    private void updateSystemPreferences() {
        // Move color inversion and color correction preferences to Display category if device
        // supports HWC hardware-accelerated color transform.
        if (isColorTransformAccelerated(getContext())) {
            PreferenceCategory experimentalCategory =
                    mCategoryToPrefCategoryMap.get(CATEGORY_EXPERIMENTAL);
            PreferenceCategory displayCategory =
                    mCategoryToPrefCategoryMap.get(CATEGORY_DISPLAY);
            experimentalCategory.removePreference(mToggleInversionPreference);
            experimentalCategory.removePreference(mDisplayDaltonizerPreferenceScreen);
            mToggleInversionPreference.setOrder(mToggleLargePointerIconPreference.getOrder());
            mDisplayDaltonizerPreferenceScreen.setOrder(mToggleInversionPreference.getOrder());
            mToggleInversionPreference.setSummary(R.string.summary_empty);
            displayCategory.addPreference(mToggleInversionPreference);
            displayCategory.addPreference(mDisplayDaltonizerPreferenceScreen);
        }

        // Text contrast.
        mToggleHighTextContrastPreference.setChecked(
                Settings.Secure.getInt(getContentResolver(),
@@ -600,6 +616,11 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
        updateAccessibilityShortcut(mAccessibilityShortcutPreferenceScreen);
    }

    private boolean isColorTransformAccelerated(Context context) {
        return context.getResources()
                .getBoolean(com.android.internal.R.bool.config_setColorTransformAccelerated);
    }

    private void updateMagnificationSummary(Preference pref) {
        final boolean tripleTapEnabled = Settings.Secure.getInt(getContentResolver(),
                Settings.Secure.ACCESSIBILITY_DISPLAY_MAGNIFICATION_ENABLED, 0) == 1;