Chromium Code Reviews| Index: chrome/browser/resources/settings/device_page/display.js |
| diff --git a/chrome/browser/resources/settings/device_page/display.js b/chrome/browser/resources/settings/device_page/display.js |
| index dfea430d003437f671566475dd4921a694bcb0f8..2ef7a1102ec5fc5dad7acde916adf8e317fb540f 100644 |
| --- a/chrome/browser/resources/settings/device_page/display.js |
| +++ b/chrome/browser/resources/settings/device_page/display.js |
| @@ -23,6 +23,17 @@ Polymer({ |
| ], |
| properties: { |
| + pref: { |
|
stevenjb
2017/03/07 23:11:48
Given that there are many things being set here, c
dschuyler
2017/03/08 21:50:11
Done.
|
| + type: Object, |
| + value: function() { |
| + return { |
| + key: 'fakeDisplaySliderPref', |
| + type: chrome.settingsPrivate.PrefType.NUMBER, |
| + value: 0, |
| + }; |
| + }, |
| + }, |
| + |
| /** |
| * Array of displays. |
| * @type {!Array<!chrome.system.display.DisplayUnitInfo>} |
| @@ -55,9 +66,6 @@ Polymer({ |
| /** @private {!Array<number>} Mode index values for slider. */ |
| modeValues_: Array, |
| - |
| - /** @private Selected mode index value for slider. */ |
| - selectedModeIndex_: Number, |
| }, |
| /** @private {number} Selected mode index received from chrome. */ |
| @@ -151,18 +159,18 @@ Polymer({ |
| /** @private */ |
| selectedDisplayChanged_: function() { |
| - // Set |modeValues_| before |selectedModeIndex_| so that the slider updates |
| + // Set |modeValues_| before |pref.value| so that the slider updates |
| // correctly. |
| var numModes = this.selectedDisplay.modes.length; |
| if (numModes == 0) { |
| this.modeValues_ = []; |
| - this.selectedModeIndex_ = 0; |
| + this.set('pref.value', 0); |
| this.currentSelectedModeIndex_ = 0; |
| return; |
| } |
| this.modeValues_ = Array.from(Array(numModes).keys()); |
| - this.selectedModeIndex_ = this.getSelectedModeIndex_(this.selectedDisplay); |
| - this.currentSelectedModeIndex_ = this.selectedModeIndex_; |
| + this.set('pref.value', this.getSelectedModeIndex_(this.selectedDisplay)); |
| + this.currentSelectedModeIndex_ = this.pref.value; |
| }, |
| /** |
| @@ -204,7 +212,7 @@ Polymer({ |
| * primary or extended. |
| * @param {!chrome.system.display.DisplayUnitInfo} selectedDisplay |
| * @param {string} primaryDisplayId |
| - * @return {number} Retruns 0 if the display is primary else returns 1. |
| + * @return {number} Returns 0 if the display is primary else returns 1. |
| * @private |
| */ |
| getDisplaySelectMenuIndex_: function(selectedDisplay, primaryDisplayId) { |
| @@ -269,12 +277,12 @@ Polymer({ |
| if (this.selectedDisplay.modes.length == 0 || |
| this.currentSelectedModeIndex_ == -1) { |
| // If currentSelectedModeIndex_ == -1, selectedDisplay and |
| - // selectedModeIndex_ are not in sync. |
| + // |pref.value| are not in sync. |
| return this.i18n( |
| 'displayResolutionText', this.selectedDisplay.bounds.width.toString(), |
| this.selectedDisplay.bounds.height.toString()); |
| } |
| - var mode = this.selectedDisplay.modes[this.selectedModeIndex_]; |
| + var mode = this.selectedDisplay.modes[this.pref.value]; |
| var best = |
| this.selectedDisplay.isInternal ? mode.uiScale == 1.0 : mode.isNative; |
| var widthStr = mode.width.toString(); |
| @@ -298,7 +306,7 @@ Polymer({ |
| continue; |
| if (this.selectedDisplay != display) { |
| // Set currentSelectedModeIndex_ to -1 so that getResolutionText_ does |
| - // not flicker. selectedDisplayChanged will update selectedModeIndex_ |
| + // not flicker. selectedDisplayChanged will update |pref.value| |
| // and currentSelectedModeIndex_ correctly. |
| this.currentSelectedModeIndex_ = -1; |
| this.selectedDisplay = display; |
| @@ -355,13 +363,13 @@ Polymer({ |
| */ |
| onSelectedModeChange_: function() { |
| if (this.currentSelectedModeIndex_ == -1 || |
| - this.currentSelectedModeIndex_ == this.selectedModeIndex_) { |
| + this.currentSelectedModeIndex_ == this.pref.value) { |
| // Don't change the selected display mode until we have received an update |
| // from Chrome and the mode differs from the current mode. |
| return; |
| } |
| /** @type {!chrome.system.display.DisplayProperties} */ var properties = { |
| - displayMode: this.selectedDisplay.modes[this.selectedModeIndex_] |
| + displayMode: this.selectedDisplay.modes[this.pref.value] |
| }; |
| settings.display.systemDisplayApi.setDisplayProperties( |
| this.selectedDisplay.id, properties, |