diff --git a/res/drawable/ic_font_size_16dp.xml b/res/drawable/ic_font_size_16dp.xml deleted file mode 100644 index dd8cab887fe..00000000000 --- a/res/drawable/ic_font_size_16dp.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - diff --git a/res/drawable/ic_font_size_24dp.xml b/res/drawable/ic_font_size_24dp.xml deleted file mode 100644 index 063917a138b..00000000000 --- a/res/drawable/ic_font_size_24dp.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - diff --git a/res/drawable/preview_seek_bar_outline.xml b/res/drawable/preview_seek_bar_outline.xml deleted file mode 100644 index e626e37e700..00000000000 --- a/res/drawable/preview_seek_bar_outline.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/res/layout-sw300dp-land/font_size_activity.xml b/res/layout-sw300dp-land/font_size_activity.xml deleted file mode 100644 index 7703eb2fc75..00000000000 --- a/res/layout-sw300dp-land/font_size_activity.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/res/layout-sw300dp-land/screen_zoom_activity.xml b/res/layout-sw300dp-land/screen_zoom_activity.xml deleted file mode 100644 index 1cdb5b439c6..00000000000 --- a/res/layout-sw300dp-land/screen_zoom_activity.xml +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/res/layout/font_size_activity.xml b/res/layout/font_size_activity.xml deleted file mode 100644 index 8850f8694e0..00000000000 --- a/res/layout/font_size_activity.xml +++ /dev/null @@ -1,101 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/res/layout/font_size_preview.xml b/res/layout/font_size_preview.xml deleted file mode 100644 index f916ac41014..00000000000 --- a/res/layout/font_size_preview.xml +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - - - - - - - - - - - - - - diff --git a/res/layout/preview_seek_bar_view_pager.xml b/res/layout/preview_seek_bar_view_pager.xml deleted file mode 100644 index fa9f550ec1e..00000000000 --- a/res/layout/preview_seek_bar_view_pager.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - diff --git a/res/layout/screen_zoom_activity.xml b/res/layout/screen_zoom_activity.xml deleted file mode 100644 index 00831fbe55f..00000000000 --- a/res/layout/screen_zoom_activity.xml +++ /dev/null @@ -1,100 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/res/layout/screen_zoom_preview_2.xml b/res/layout/screen_zoom_preview_2.xml deleted file mode 100644 index d8ce346cc72..00000000000 --- a/res/layout/screen_zoom_preview_2.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - diff --git a/res/layout/screen_zoom_preview_settings.xml b/res/layout/screen_zoom_preview_settings.xml deleted file mode 100644 index c790e035ebf..00000000000 --- a/res/layout/screen_zoom_preview_settings.xml +++ /dev/null @@ -1,226 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/res/values/arrays.xml b/res/values/arrays.xml index 0632f72eb09..a2657cc3f14 100644 --- a/res/values/arrays.xml +++ b/res/values/arrays.xml @@ -158,13 +158,6 @@ 1800000 - - Small - Default - Large - Largest - - 0.85 1.0 diff --git a/res/values/strings.xml b/res/values/strings.xml index 27472f39bd8..a87ba4ca328 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -89,9 +89,6 @@ Preview, page %1$d of %2$d - - Make the text on screen smaller or larger. - Make smaller @@ -102,30 +99,6 @@ Face Detection uses the front-facing camera to improve auto-rotate accuracy. Images are never stored or sent to Google. - Sample text - - The Wonderful Wizard of Oz - - - Chapter 11: The Wonderful Emerald City of Oz - - Even with eyes protected by the green spectacles Dorothy and her friends were at first dazzled by the brilliancy of the wonderful City. - The streets were lined with beautiful houses all built of green marble and studded everywhere with sparkling emeralds. - They walked over a pavement of the same green marble, and where the blocks were joined together were rows of emeralds, set closely, and glittering in the brightness of the sun. - The window panes were of green glass; even the sky above the City had a green tint, and the rays of the sun were green. - \n\nThere were many people, men, women and children, walking about, and these were all dressed in green clothes and had greenish skins. - They looked at Dorothy and her strangely assorted company with wondering eyes, and the children all ran away and hid behind their mothers when they saw the Lion; but no one spoke to them. - Many shops stood in the street, and Dorothy saw that everything in them was green. - Green candy and green pop-corn were offered for sale, as well as green shoes, green hats and green clothes of all sorts. - At one place a man was selling green lemonade, and when the children bought it Dorothy could see that they paid for it with green pennies. - \n\nThere seemed to be no horses nor animals of any kind; the men carried things around in little green carts, which they pushed before them. - Everyone seeemed happy and contented and prosperous. - - - OK USB storage @@ -7959,10 +7932,6 @@ - - - - @@ -8512,9 +8481,6 @@ Ringer set to silent - - Ring & notification volume at 80% - Media volume @@ -11098,8 +11064,6 @@ Make everything bigger or smaller display density, screen zoom, scale, scaling - - Make the items on your screen smaller or larger. Some apps on your screen may change position. Preview @@ -11151,8 +11115,6 @@ %1$d apps installed - - 24 apps installed %1$s used - %2$s free @@ -11165,9 +11127,6 @@ Dark theme, font size, brightness - - Sleep after 10 minutes of inactivity - Avg %1$s of %2$s memory used diff --git a/src/com/android/settings/accessibility/FontSizeData.java b/src/com/android/settings/accessibility/FontSizeData.java index 1d4f6bd7e13..6db76c9a649 100644 --- a/src/com/android/settings/accessibility/FontSizeData.java +++ b/src/com/android/settings/accessibility/FontSizeData.java @@ -16,8 +16,6 @@ package com.android.settings.accessibility; -import static com.android.settings.display.ToggleFontSizePreferenceFragment.fontSizeValueToIndex; - import android.content.ContentResolver; import android.content.Context; import android.content.res.Resources; @@ -55,4 +53,20 @@ final class FontSizeData extends PreviewSizeData { Settings.System.putFloat(resolver, Settings.System.FONT_SCALE, getValues().get(currentProgress)); } + + /** + * Utility function that returns the index in a string array with which the represented value is + * the closest to a given float value. + */ + private static int fontSizeValueToIndex(float val, String[] indices) { + float lastVal = Float.parseFloat(indices[0]); + for (int i = 1; i < indices.length; i++) { + float thisVal = Float.parseFloat(indices[i]); + if (val < (lastVal + (thisVal - lastVal) * .5f)) { + return i - 1; + } + lastVal = thisVal; + } + return indices.length - 1; + } } diff --git a/src/com/android/settings/display/FontSizePreferenceController.java b/src/com/android/settings/display/FontSizePreferenceController.java deleted file mode 100644 index 28c7922ea36..00000000000 --- a/src/com/android/settings/display/FontSizePreferenceController.java +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (C) 2016 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the - * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the specific language governing - * permissions and limitations under the License. - */ -package com.android.settings.display; - -import android.content.Context; -import android.content.res.Resources; -import android.provider.Settings; - -import com.android.settings.R; -import com.android.settings.core.BasePreferenceController; - -public class FontSizePreferenceController extends BasePreferenceController { - - public FontSizePreferenceController(Context context, String key) { - super(context, key); - } - - @Override - public int getAvailabilityStatus() { - return AVAILABLE; - } - - @Override - public CharSequence getSummary() { - final float currentScale = Settings.System.getFloat(mContext.getContentResolver(), - Settings.System.FONT_SCALE, 1.0f); - final Resources res = mContext.getResources(); - final String[] entries = res.getStringArray(R.array.entries_font_size); - final String[] strEntryValues = res.getStringArray(R.array.entryvalues_font_size); - final int index = ToggleFontSizePreferenceFragment.fontSizeValueToIndex(currentScale, - strEntryValues); - return entries[index]; - } -} diff --git a/src/com/android/settings/display/PreviewSeekBarPreferenceFragment.java b/src/com/android/settings/display/PreviewSeekBarPreferenceFragment.java deleted file mode 100644 index abd14d25d9e..00000000000 --- a/src/com/android/settings/display/PreviewSeekBarPreferenceFragment.java +++ /dev/null @@ -1,287 +0,0 @@ -/* - * Copyright (C) 2018 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.android.settings.display; - -import android.content.Context; -import android.content.res.Configuration; -import android.os.Bundle; -import android.os.SystemClock; -import android.view.Choreographer; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.view.accessibility.AccessibilityEvent; -import android.widget.SeekBar; -import android.widget.SeekBar.OnSeekBarChangeListener; -import android.widget.TextView; - -import androidx.viewpager.widget.ViewPager; -import androidx.viewpager.widget.ViewPager.OnPageChangeListener; - -import com.android.settings.R; -import com.android.settings.SettingsPreferenceFragment; -import com.android.settings.widget.DotsPageIndicator; -import com.android.settings.widget.LabeledSeekBar; - -/** - * Preference fragment shows a preview and a seek bar to adjust a specific settings. - */ -public abstract class PreviewSeekBarPreferenceFragment extends SettingsPreferenceFragment { - - /** List of entries corresponding the settings being set. */ - protected String[] mEntries; - - /** Index of the entry corresponding to initial value of the settings. */ - protected int mInitialIndex; - - /** Index of the entry corresponding to current value of the settings. */ - protected int mCurrentIndex; - - private ViewPager mPreviewPager; - private PreviewPagerAdapter mPreviewPagerAdapter; - private DotsPageIndicator mPageIndicator; - - private TextView mLabel; - private LabeledSeekBar mSeekBar; - private View mLarger; - private View mSmaller; - - private static final long MIN_COMMIT_INTERVAL_MS = 800; - private long mLastCommitTime; - - private class onPreviewSeekBarChangeListener implements OnSeekBarChangeListener { - private static final long CHANGE_BY_SEEKBAR_DELAY_MS = 100; - private static final long CHANGE_BY_BUTTON_DELAY_MS = 300; - - private boolean mSeekByTouch; - private boolean mIsChanged; - private long mCommitDelayMs; - - private final Choreographer.FrameCallback mCommit = f -> { - commit(); - mLastCommitTime = SystemClock.elapsedRealtime(); - }; - - @Override - public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { - if (mCurrentIndex == progress) { - mIsChanged = false; - return; - } - mIsChanged = true; - setPreviewLayer(progress, false); - if (mSeekByTouch) { - mCommitDelayMs = CHANGE_BY_SEEKBAR_DELAY_MS; - } else { - mCommitDelayMs = CHANGE_BY_BUTTON_DELAY_MS; - commitOnNextFrame(); - } - } - - @Override - public void onStartTrackingTouch(SeekBar seekBar) { - mSeekByTouch = true; - } - - @Override - public void onStopTrackingTouch(SeekBar seekBar) { - mSeekByTouch = false; - if (!mIsChanged) { - return; - } - if (mPreviewPagerAdapter.isAnimating()) { - mPreviewPagerAdapter.setAnimationEndAction(this::commitOnNextFrame); - } else { - commitOnNextFrame(); - } - } - - private void commitOnNextFrame() { - if (SystemClock.elapsedRealtime() - mLastCommitTime < MIN_COMMIT_INTERVAL_MS) { - mCommitDelayMs += MIN_COMMIT_INTERVAL_MS; - } - final Choreographer choreographer = Choreographer.getInstance(); - choreographer.removeFrameCallback(mCommit); - choreographer.postFrameCallbackDelayed(mCommit, mCommitDelayMs); - } - } - - @Override - public void onSaveInstanceState(Bundle outState) { - super.onSaveInstanceState(outState); - outState.putLong("mLastCommitTime", mLastCommitTime); - } - - @Override - public View onCreateView(LayoutInflater inflater, ViewGroup container, - Bundle savedInstanceState) { - if (savedInstanceState != null) { - mLastCommitTime = savedInstanceState.getLong("mLastCommitTime"); - } - final View root = super.onCreateView(inflater, container, savedInstanceState); - final ViewGroup listContainer = root.findViewById(android.R.id.list_container); - listContainer.removeAllViews(); - - final View content = inflater.inflate(getActivityLayoutResId(), listContainer, false); - listContainer.addView(content); - - mLabel = content.findViewById(R.id.current_label); - - // The maximum SeekBar value always needs to be non-zero. If there's - // only one available value, we'll handle this by disabling the - // seek bar. - final int max = Math.max(1, mEntries.length - 1); - - mSeekBar = content.findViewById(R.id.seek_bar); - mSeekBar.setLabels(mEntries); - mSeekBar.setMax(max); - - mSmaller = content.findViewById(R.id.smaller); - mSmaller.setOnClickListener(v -> { - final int progress = mSeekBar.getProgress(); - if (progress > 0) { - mSeekBar.setProgress(progress - 1, true); - } - }); - - mLarger = content.findViewById(R.id.larger); - mLarger.setOnClickListener(v -> { - final int progress = mSeekBar.getProgress(); - if (progress < mSeekBar.getMax()) { - mSeekBar.setProgress(progress + 1, true); - } - }); - - if (mEntries.length == 1) { - // The larger and smaller buttons will be disabled when we call - // setPreviewLayer() later in this method. - mSeekBar.setEnabled(false); - } - - final Context context = getContext(); - final Configuration origConfig = context.getResources().getConfiguration(); - final boolean isLayoutRtl = origConfig.getLayoutDirection() == View.LAYOUT_DIRECTION_RTL; - Configuration[] configurations = new Configuration[mEntries.length]; - for (int i = 0; i < mEntries.length; ++i) { - configurations[i] = createConfig(origConfig, i); - } - - final int[] previews = getPreviewSampleResIds(); - mPreviewPager = content.findViewById(R.id.preview_pager); - mPreviewPagerAdapter = new PreviewPagerAdapter(context, isLayoutRtl, - previews, configurations); - mPreviewPager.setAdapter(mPreviewPagerAdapter); - mPreviewPager.setCurrentItem(isLayoutRtl ? previews.length - 1 : 0); - mPreviewPager.addOnPageChangeListener(mPreviewPageChangeListener); - - mPageIndicator = content.findViewById(R.id.page_indicator); - if (previews.length > 1) { - mPageIndicator.setViewPager(mPreviewPager); - mPageIndicator.setVisibility(View.VISIBLE); - mPageIndicator.setOnPageChangeListener(mPageIndicatorPageChangeListener); - } else { - mPageIndicator.setVisibility(View.GONE); - } - - setPreviewLayer(mInitialIndex, false); - return root; - } - - @Override - public void onStart() { - super.onStart(); - // Set SeekBar listener here to avoid onProgressChanged() is called - // during onRestoreInstanceState(). - mSeekBar.setProgress(mCurrentIndex); - mSeekBar.setOnSeekBarChangeListener(new onPreviewSeekBarChangeListener()); - } - - @Override - public void onStop() { - super.onStop(); - mSeekBar.setOnSeekBarChangeListener(null); - } - - /** Resource id of the layout for this preference fragment. */ - protected abstract int getActivityLayoutResId(); - - /** Resource id of the layout that defines the contents inside preview screen. */ - protected abstract int[] getPreviewSampleResIds(); - - /** - * Creates new configuration based on the current position of the SeekBar. - */ - protected abstract Configuration createConfig(Configuration origConfig, int index); - - /** - * Persists the selected value and sends a configuration change. - */ - protected abstract void commit(); - - private void setPreviewLayer(int index, boolean animate) { - mLabel.setText(mEntries[index]); - mSmaller.setEnabled(index > 0); - mLarger.setEnabled(index < mEntries.length - 1); - setPagerIndicatorContentDescription(mPreviewPager.getCurrentItem()); - mPreviewPagerAdapter.setPreviewLayer(index, mCurrentIndex, - mPreviewPager.getCurrentItem(), animate); - - mCurrentIndex = index; - } - - private void setPagerIndicatorContentDescription(int position) { - mPageIndicator.setContentDescription( - getString(R.string.preview_page_indicator_content_description, - position + 1, getPreviewSampleResIds().length)); - } - - private OnPageChangeListener mPreviewPageChangeListener = new OnPageChangeListener() { - @Override - public void onPageScrollStateChanged(int state) { - // Do nothing. - } - - @Override - public void onPageScrolled(int position, float positionOffset, - int positionOffsetPixels) { - // Do nothing. - } - - @Override - public void onPageSelected(int position) { - mPreviewPager.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT); - } - }; - - private OnPageChangeListener mPageIndicatorPageChangeListener = new OnPageChangeListener() { - @Override - public void onPageScrollStateChanged(int state) { - // Do nothing. - } - - @Override - public void onPageScrolled(int position, float positionOffset, - int positionOffsetPixels) { - // Do nothing. - } - - @Override - public void onPageSelected(int position) { - setPagerIndicatorContentDescription(position); - } - }; -} \ No newline at end of file diff --git a/src/com/android/settings/display/ScreenZoomSettings.java b/src/com/android/settings/display/ScreenZoomSettings.java deleted file mode 100644 index 4c46f018937..00000000000 --- a/src/com/android/settings/display/ScreenZoomSettings.java +++ /dev/null @@ -1,122 +0,0 @@ -/* - * Copyright (C) 2015 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.android.settings.display; - -import android.annotation.Nullable; -import android.app.settings.SettingsEnums; -import android.content.Context; -import android.content.res.Configuration; -import android.os.Bundle; -import android.view.Display; - -import com.android.settings.R; -import com.android.settings.search.BaseSearchIndexProvider; -import com.android.settingslib.display.DisplayDensityConfiguration; -import com.android.settingslib.display.DisplayDensityUtils; -import com.android.settingslib.search.SearchIndexable; - -/** - * Preference fragment used to control screen zoom. - */ -@SearchIndexable(forTarget = SearchIndexable.ALL & ~SearchIndexable.ARC) -public class ScreenZoomSettings extends PreviewSeekBarPreferenceFragment { - - private int mDefaultDensity; - private int[] mValues; - - @Override - protected int getActivityLayoutResId() { - return R.layout.screen_zoom_activity; - } - - @Override - protected int[] getPreviewSampleResIds() { - return getContext().getResources().getBoolean( - R.bool.config_enable_extra_screen_zoom_preview) - ? new int[]{ - R.layout.screen_zoom_preview_1, - R.layout.screen_zoom_preview_2, - R.layout.screen_zoom_preview_settings} - : new int[]{R.layout.screen_zoom_preview_1}; - } - - @Override - public void onCreate(@Nullable Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - - final DisplayDensityUtils density = new DisplayDensityUtils(getContext()); - - final int initialIndex = density.getCurrentIndex(); - if (initialIndex < 0) { - // Failed to obtain default density, which means we failed to - // connect to the window manager service. Just use the current - // density and don't let the user change anything. - final int densityDpi = getResources().getDisplayMetrics().densityDpi; - mValues = new int[]{densityDpi}; - mEntries = new String[]{getString(DisplayDensityUtils.SUMMARY_DEFAULT)}; - mInitialIndex = 0; - mDefaultDensity = densityDpi; - } else { - mValues = density.getValues(); - mEntries = density.getEntries(); - mInitialIndex = initialIndex; - mDefaultDensity = density.getDefaultDensity(); - } - - getActivity().setTitle(R.string.screen_zoom_title); - } - - @Override - protected Configuration createConfig(Configuration origConfig, int index) { - // Populate the sample layouts. - final Configuration config = new Configuration(origConfig); - config.densityDpi = mValues[index]; - return config; - } - - /** - * Persists the selected density and sends a configuration change. - */ - @Override - protected void commit() { - final int densityDpi = mValues[mCurrentIndex]; - if (densityDpi == mDefaultDensity) { - DisplayDensityConfiguration.clearForcedDisplayDensity(Display.DEFAULT_DISPLAY); - } else { - DisplayDensityConfiguration.setForcedDisplayDensity(Display.DEFAULT_DISPLAY, densityDpi); - } - } - - @Override - public int getHelpResource() { - return R.string.help_url_display_size; - } - - @Override - public int getMetricsCategory() { - return SettingsEnums.DISPLAY_SCREEN_ZOOM; - } - - /** Index provider used to expose this fragment in search. */ - public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER = - new BaseSearchIndexProvider() { - @Override - protected boolean isPageSearchEnabled(Context context) { - return false; - } - }; -} diff --git a/src/com/android/settings/display/ToggleFontSizePreferenceFragment.java b/src/com/android/settings/display/ToggleFontSizePreferenceFragment.java deleted file mode 100644 index db4d899cbb4..00000000000 --- a/src/com/android/settings/display/ToggleFontSizePreferenceFragment.java +++ /dev/null @@ -1,121 +0,0 @@ -/* - * Copyright (C) 2018 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.android.settings.display; - -import android.annotation.Nullable; -import android.app.settings.SettingsEnums; -import android.content.ContentResolver; -import android.content.Context; -import android.content.res.Configuration; -import android.content.res.Resources; -import android.os.Bundle; -import android.provider.Settings; - -import com.android.settings.R; -import com.android.settings.search.BaseSearchIndexProvider; -import com.android.settingslib.search.SearchIndexable; - -/** - * Preference fragment used to control font size. - */ -@SearchIndexable -public class ToggleFontSizePreferenceFragment extends PreviewSeekBarPreferenceFragment { - - private float[] mValues; - - @Override - protected int getActivityLayoutResId() { - return R.layout.font_size_activity; - } - - @Override - protected int[] getPreviewSampleResIds() { - return new int[]{R.layout.font_size_preview}; - } - - @Override - public void onCreate(@Nullable Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - - final Resources res = getContext().getResources(); - final ContentResolver resolver = getContext().getContentResolver(); - // Mark the appropriate item in the preferences list. - mEntries = res.getStringArray(R.array.entries_font_size); - final String[] strEntryValues = res.getStringArray(R.array.entryvalues_font_size); - final float currentScale = - Settings.System.getFloat(resolver, Settings.System.FONT_SCALE, 1.0f); - mInitialIndex = fontSizeValueToIndex(currentScale, strEntryValues); - mValues = new float[strEntryValues.length]; - for (int i = 0; i < strEntryValues.length; ++i) { - mValues[i] = Float.parseFloat(strEntryValues[i]); - } - getActivity().setTitle(R.string.title_font_size); - } - - @Override - protected Configuration createConfig(Configuration origConfig, int index) { - // Populate the sample layouts. - final Configuration config = new Configuration(origConfig); - config.fontScale = mValues[index]; - return config; - } - - /** - * Persists the selected font size. - */ - @Override - protected void commit() { - if (getContext() == null) return; - final ContentResolver resolver = getContext().getContentResolver(); - Settings.System.putFloat(resolver, Settings.System.FONT_SCALE, mValues[mCurrentIndex]); - } - - @Override - public int getHelpResource() { - return R.string.help_url_font_size; - } - - @Override - public int getMetricsCategory() { - return SettingsEnums.ACCESSIBILITY_FONT_SIZE; - } - - /** - * Utility function that returns the index in a string array with which the represented value is - * the closest to a given float value. - */ - public static int fontSizeValueToIndex(float val, String[] indices) { - float lastVal = Float.parseFloat(indices[0]); - for (int i = 1; i < indices.length; i++) { - float thisVal = Float.parseFloat(indices[i]); - if (val < (lastVal + (thisVal - lastVal) * .5f)) { - return i - 1; - } - lastVal = thisVal; - } - return indices.length - 1; - } - - public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER = - new BaseSearchIndexProvider() { - @Override - protected boolean isPageSearchEnabled(Context context) { - return false; - } - }; - -} diff --git a/tests/robotests/assets/exempt_not_in_search_index_provider_registry b/tests/robotests/assets/exempt_not_in_search_index_provider_registry index 64e0a014353..7d9704a0f9e 100644 --- a/tests/robotests/assets/exempt_not_in_search_index_provider_registry +++ b/tests/robotests/assets/exempt_not_in_search_index_provider_registry @@ -1,3 +1 @@ -com.android.settings.display.FontSizePreferenceFragmentForSetupWizard -com.android.settings.display.ScreenZoomPreferenceFragmentForSetupWizard com.android.settings.search.FakeSettingsFragment diff --git a/tests/robotests/src/com/android/settings/display/FontSizePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/display/FontSizePreferenceControllerTest.java deleted file mode 100644 index 58e7ccd564b..00000000000 --- a/tests/robotests/src/com/android/settings/display/FontSizePreferenceControllerTest.java +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Copyright (C) 2018 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.android.settings.display; - -import static com.google.common.truth.Truth.assertThat; - -import android.content.Context; -import android.provider.Settings; - -import com.android.settings.R; -import com.android.settings.core.BasePreferenceController; - -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.robolectric.RobolectricTestRunner; -import org.robolectric.RuntimeEnvironment; - -@RunWith(RobolectricTestRunner.class) -public class FontSizePreferenceControllerTest { - - private static final String TEST_KEY = "test_key"; - - private Context mContext; - private FontSizePreferenceController mController; - private String[] mFontSizeArray; - - @Before - public void setUp() { - mContext = RuntimeEnvironment.application; - mController = new FontSizePreferenceController(mContext, TEST_KEY); - mFontSizeArray = mContext.getResources().getStringArray(R.array.entries_font_size); - } - - @Test - public void isAlwaysAvailable() { - assertThat(mController.getAvailabilityStatus()) - .isEqualTo(BasePreferenceController.AVAILABLE); - } - - @Test - public void getSummary_noScale_shouldReturnDefaultSummary() { - assertThat(mController.getSummary()).isEqualTo(mFontSizeArray[1]); - } - - @Test - public void getSummary_smallScale_shouldReturnSmall() { - Settings.System.putFloat(mContext.getContentResolver(), - Settings.System.FONT_SCALE, 0.5f); - assertThat(mController.getSummary()).isEqualTo(mFontSizeArray[0]); - } - - @Test - public void getSummary_largeScale_shouldReturnLarge() { - Settings.System.putFloat(mContext.getContentResolver(), - Settings.System.FONT_SCALE, 1.5f); - assertThat(mController.getSummary()).isEqualTo(mFontSizeArray[3]); - } -} diff --git a/tests/robotests/src/com/android/settings/display/ScreenZoomSettingsTest.java b/tests/robotests/src/com/android/settings/display/ScreenZoomSettingsTest.java deleted file mode 100644 index c1a46f2ba51..00000000000 --- a/tests/robotests/src/com/android/settings/display/ScreenZoomSettingsTest.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (C) 2018 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.android.settings.display; - -import static com.google.common.truth.Truth.assertThat; - -import static org.mockito.Mockito.doReturn; -import static org.mockito.Mockito.spy; - -import android.content.Context; - -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.robolectric.RobolectricTestRunner; -import org.robolectric.RuntimeEnvironment; -import org.robolectric.annotation.Config; - -@RunWith(RobolectricTestRunner.class) -public class ScreenZoomSettingsTest { - - private ScreenZoomSettings mSettings; - private Context mContext; - - @Before - public void setUp() { - mContext = RuntimeEnvironment.application; - mSettings = spy(new ScreenZoomSettings()); - doReturn(mContext).when(mSettings).getContext(); - } - - @Test - public void getPreviewSampleResIds_default_return3Previews() { - assertThat(mSettings.getPreviewSampleResIds()).hasLength(3); - } - - @Test - @Config(qualifiers = "mcc999") - public void getPreviewSampleResIds_extraPreviewDisabled_return1Preview() { - assertThat(mSettings.getPreviewSampleResIds()).hasLength(1); - } -}