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

Commit 96577681 authored by Shuhrat Dehkanov's avatar Shuhrat Dehkanov
Browse files

Grey out settings icon when it is in disabled state



If engine is not active, its settings icon is disabled in
Settings > Language & input > Text-to-speech output screen.
Currently, settings icons for all TTS engines are shown at
the same opacity. This fix dims settings icons of not-selected
engines.
Make sure that more than one TTS engine are installed on the
target, for e.g., Google Text-to-speech Engine and Classic
Text To Speech Engine (SVOX Classic TTS).

Additionally, since setAlpha() is used in multiple places within
Settings package, moved DISABLED_ALPHA declaration to Utils.java
in order to have single point of reference.

Change-Id: Ifa7de79814a2f4a4aa021cd8621cbfab41655680
Signed-off-by: default avatarShuhrat Dehkanov <uzbmaster@gmail.com>
parent 19f09fb1
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -316,7 +316,7 @@ public class DreamSettings extends SettingsPreferenceFragment {

            ImageView settingsButton = (ImageView) row.findViewById(android.R.id.button2);
            settingsButton.setVisibility(showSettings ? View.VISIBLE : View.INVISIBLE);
            settingsButton.setAlpha(dreamInfo.isActive ? 1f : 0.33f);
            settingsButton.setAlpha(dreamInfo.isActive ? 1f : Utils.DISABLED_ALPHA);
            settingsButton.setEnabled(dreamInfo.isActive);
            settingsButton.setOnClickListener(new OnClickListener(){
                @Override
+5 −0
Original line number Diff line number Diff line
@@ -79,6 +79,11 @@ public class Utils {
     */
    public static final int UPDATE_PREFERENCE_FLAG_SET_TITLE_TO_MATCHING_ACTIVITY = 1;

    /**
     * The opacity level of a disabled icon.
     */
    public static final float DISABLED_ALPHA = 0.4f;

    /**
     * Name of the meta-data item that should be set in the AndroidManifest.xml
     * to specify the icon that should be displayed for the preference.
+2 −2
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package com.android.settings.inputmethod;

import com.android.settings.R;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.Utils;

import android.content.Context;
import android.content.Intent;
@@ -29,7 +30,6 @@ import android.widget.ImageView;
import android.widget.TextView;

public class CheckBoxAndSettingsPreference extends CheckBoxPreference {
    private static final float DISABLED_ALPHA = 0.4f;

    private SettingsPreferenceFragment mFragment;
    private TextView mTitleText;
@@ -103,7 +103,7 @@ public class CheckBoxAndSettingsPreference extends CheckBoxPreference {
                mSettingsButton.setClickable(checked);
                mSettingsButton.setFocusable(checked);
                if (!checked) {
                    mSettingsButton.setAlpha(DISABLED_ALPHA);
                    mSettingsButton.setAlpha(Utils.DISABLED_ALPHA);
                }
            }
        }
+2 −2
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package com.android.settings.inputmethod;

import com.android.settings.R;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.Utils;

import android.app.AlertDialog;
import android.app.Fragment;
@@ -47,7 +48,6 @@ import java.util.List;
public class InputMethodPreference extends CheckBoxPreference
        implements Comparator<InputMethodPreference> {
    private static final String TAG = InputMethodPreference.class.getSimpleName();
    private static final float DISABLED_ALPHA = 0.4f;
    private final SettingsPreferenceFragment mFragment;
    private final InputMethodInfo mImi;
    private final InputMethodManager mImm;
@@ -172,7 +172,7 @@ public class InputMethodPreference extends CheckBoxPreference
            mInputMethodSettingsButton.setClickable(checked);
            mInputMethodSettingsButton.setFocusable(checked);
            if (!checked) {
                mInputMethodSettingsButton.setAlpha(DISABLED_ALPHA);
                mInputMethodSettingsButton.setAlpha(Utils.DISABLED_ALPHA);
            }
        }
        if (mTitleText != null) {
+3 −3
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.settings.inputmethod;

import com.android.settings.R;
import com.android.settings.Utils;

import android.app.AlertDialog;
import android.content.ActivityNotFoundException;
@@ -37,7 +38,6 @@ import android.widget.TextView;
import android.widget.Toast;

public class SingleSpellCheckerPreference extends Preference {
    private static final float DISABLED_ALPHA = 0.4f;
    private static final String TAG = SingleSpellCheckerPreference.class.getSimpleName();
    private static final boolean DBG = false;

@@ -198,7 +198,7 @@ public class SingleSpellCheckerPreference extends Preference {
                mSettingsButton.setClickable(enabled);
                mSettingsButton.setFocusable(enabled);
                if (!enabled) {
                    mSettingsButton.setAlpha(DISABLED_ALPHA);
                    mSettingsButton.setAlpha(Utils.DISABLED_ALPHA);
                }
            }
        }
@@ -210,7 +210,7 @@ public class SingleSpellCheckerPreference extends Preference {
                mSubtypeButton.setClickable(enabled);
                mSubtypeButton.setFocusable(enabled);
                if (!enabled) {
                    mSubtypeButton.setAlpha(DISABLED_ALPHA);
                    mSubtypeButton.setAlpha(Utils.DISABLED_ALPHA);
                }
            }
        }
Loading