Loading src/com/android/settings/fuelgauge/batterysaver/AutoBatterySeekBarPreferenceController.java +7 −1 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import android.support.annotation.VisibleForTesting; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceScreen; import android.util.Log; import android.view.accessibility.AccessibilityNodeInfo; import com.android.settings.R; import com.android.settings.Utils; Loading Loading @@ -61,6 +62,8 @@ public class AutoBatterySeekBarPreferenceController extends BasePreferenceContro mPreference = (SeekBarPreference) screen.findPreference( KEY_AUTO_BATTERY_SEEK_BAR); mPreference.setContinuousUpdates(true); mPreference.setAccessibilityRangeInfoType( AccessibilityNodeInfo.RangeInfo.RANGE_TYPE_PERCENT); updatePreference(mPreference); } Loading Loading @@ -123,7 +126,10 @@ public class AutoBatterySeekBarPreferenceController extends BasePreferenceContro preference.setVisible(true); preference.setTitle(mContext.getString(R.string.battery_saver_seekbar_title, Utils.formatPercentage(level))); ((SeekBarPreference) preference).setProgress(level); SeekBarPreference seekBarPreference = (SeekBarPreference) preference; seekBarPreference.setProgress(level); seekBarPreference.setSeekBarContentDescription( mContext.getString(R.string.battery_saver_turn_on_automatically_title)); } } Loading src/com/android/settings/widget/SeekBarPreference.java +37 −1 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import android.text.TextUtils; import android.util.AttributeSet; import android.view.KeyEvent; import android.view.View; import android.view.accessibility.AccessibilityNodeInfo; import android.widget.SeekBar; import android.widget.SeekBar.OnSeekBarChangeListener; Loading @@ -48,6 +49,8 @@ public class SeekBarPreference extends RestrictedPreference private SeekBar mSeekBar; private boolean mShouldBlink; private int mAccessibilityRangeInfoType = AccessibilityNodeInfo.RangeInfo.RANGE_TYPE_INT; private CharSequence mSeekBarContentDescription; public SeekBarPreference( Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) { Loading Loading @@ -100,7 +103,9 @@ public class SeekBarPreference extends RestrictedPreference mSeekBar.setProgress(mProgress); mSeekBar.setEnabled(isEnabled()); final CharSequence title = getTitle(); if (!TextUtils.isEmpty(title)) { if (!TextUtils.isEmpty(mSeekBarContentDescription)) { mSeekBar.setContentDescription(mSeekBarContentDescription); } else if (!TextUtils.isEmpty(title)) { mSeekBar.setContentDescription(title); } if (mSeekBar instanceof DefaultIndicatorSeekBar) { Loading @@ -119,6 +124,19 @@ public class SeekBarPreference extends RestrictedPreference mShouldBlink = false; }); } mSeekBar.setAccessibilityDelegate(new View.AccessibilityDelegate() { @Override public void onInitializeAccessibilityNodeInfo(View view, AccessibilityNodeInfo info) { super.onInitializeAccessibilityNodeInfo(view, info); // Update the range info with the correct type AccessibilityNodeInfo.RangeInfo rangeInfo = info.getRangeInfo(); if (rangeInfo != null) { info.setRangeInfo(AccessibilityNodeInfo.RangeInfo.obtain( mAccessibilityRangeInfoType, rangeInfo.getMin(), rangeInfo.getMax(), rangeInfo.getCurrent())); } } }); } @Override Loading Loading @@ -252,6 +270,24 @@ public class SeekBarPreference extends RestrictedPreference } } /** * Specify the type of range this seek bar represents. * * @param rangeInfoType The type of range to be shared with accessibility * * @see android.view.accessibility.AccessibilityNodeInfo.RangeInfo */ public void setAccessibilityRangeInfoType(int rangeInfoType) { mAccessibilityRangeInfoType = rangeInfoType; } public void setSeekBarContentDescription(CharSequence contentDescription) { mSeekBarContentDescription = contentDescription; if (mSeekBar != null) { mSeekBar.setContentDescription(contentDescription); } } @Override protected Parcelable onSaveInstanceState() { /* Loading Loading
src/com/android/settings/fuelgauge/batterysaver/AutoBatterySeekBarPreferenceController.java +7 −1 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import android.support.annotation.VisibleForTesting; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceScreen; import android.util.Log; import android.view.accessibility.AccessibilityNodeInfo; import com.android.settings.R; import com.android.settings.Utils; Loading Loading @@ -61,6 +62,8 @@ public class AutoBatterySeekBarPreferenceController extends BasePreferenceContro mPreference = (SeekBarPreference) screen.findPreference( KEY_AUTO_BATTERY_SEEK_BAR); mPreference.setContinuousUpdates(true); mPreference.setAccessibilityRangeInfoType( AccessibilityNodeInfo.RangeInfo.RANGE_TYPE_PERCENT); updatePreference(mPreference); } Loading Loading @@ -123,7 +126,10 @@ public class AutoBatterySeekBarPreferenceController extends BasePreferenceContro preference.setVisible(true); preference.setTitle(mContext.getString(R.string.battery_saver_seekbar_title, Utils.formatPercentage(level))); ((SeekBarPreference) preference).setProgress(level); SeekBarPreference seekBarPreference = (SeekBarPreference) preference; seekBarPreference.setProgress(level); seekBarPreference.setSeekBarContentDescription( mContext.getString(R.string.battery_saver_turn_on_automatically_title)); } } Loading
src/com/android/settings/widget/SeekBarPreference.java +37 −1 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import android.text.TextUtils; import android.util.AttributeSet; import android.view.KeyEvent; import android.view.View; import android.view.accessibility.AccessibilityNodeInfo; import android.widget.SeekBar; import android.widget.SeekBar.OnSeekBarChangeListener; Loading @@ -48,6 +49,8 @@ public class SeekBarPreference extends RestrictedPreference private SeekBar mSeekBar; private boolean mShouldBlink; private int mAccessibilityRangeInfoType = AccessibilityNodeInfo.RangeInfo.RANGE_TYPE_INT; private CharSequence mSeekBarContentDescription; public SeekBarPreference( Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) { Loading Loading @@ -100,7 +103,9 @@ public class SeekBarPreference extends RestrictedPreference mSeekBar.setProgress(mProgress); mSeekBar.setEnabled(isEnabled()); final CharSequence title = getTitle(); if (!TextUtils.isEmpty(title)) { if (!TextUtils.isEmpty(mSeekBarContentDescription)) { mSeekBar.setContentDescription(mSeekBarContentDescription); } else if (!TextUtils.isEmpty(title)) { mSeekBar.setContentDescription(title); } if (mSeekBar instanceof DefaultIndicatorSeekBar) { Loading @@ -119,6 +124,19 @@ public class SeekBarPreference extends RestrictedPreference mShouldBlink = false; }); } mSeekBar.setAccessibilityDelegate(new View.AccessibilityDelegate() { @Override public void onInitializeAccessibilityNodeInfo(View view, AccessibilityNodeInfo info) { super.onInitializeAccessibilityNodeInfo(view, info); // Update the range info with the correct type AccessibilityNodeInfo.RangeInfo rangeInfo = info.getRangeInfo(); if (rangeInfo != null) { info.setRangeInfo(AccessibilityNodeInfo.RangeInfo.obtain( mAccessibilityRangeInfoType, rangeInfo.getMin(), rangeInfo.getMax(), rangeInfo.getCurrent())); } } }); } @Override Loading Loading @@ -252,6 +270,24 @@ public class SeekBarPreference extends RestrictedPreference } } /** * Specify the type of range this seek bar represents. * * @param rangeInfoType The type of range to be shared with accessibility * * @see android.view.accessibility.AccessibilityNodeInfo.RangeInfo */ public void setAccessibilityRangeInfoType(int rangeInfoType) { mAccessibilityRangeInfoType = rangeInfoType; } public void setSeekBarContentDescription(CharSequence contentDescription) { mSeekBarContentDescription = contentDescription; if (mSeekBar != null) { mSeekBar.setContentDescription(contentDescription); } } @Override protected Parcelable onSaveInstanceState() { /* Loading