Chromium Code Reviews| Index: Source/devtools/front_end/ui/SettingsUI.js |
| diff --git a/Source/devtools/front_end/ui/SettingsUI.js b/Source/devtools/front_end/ui/SettingsUI.js |
| index 03f6748b46f0faf05bdbaba2e36ad1c93799ffec..1f758630278165edfba04737362ac25b302d0f82 100644 |
| --- a/Source/devtools/front_end/ui/SettingsUI.js |
| +++ b/Source/devtools/front_end/ui/SettingsUI.js |
| @@ -132,6 +132,36 @@ WebInspector.SettingsUI.createSettingInputField = function(label, setting, numer |
| { |
| if (isEnterKey(event)) |
| apply(); |
| + incrementForArrows(event); |
| + } |
| + |
| + function incrementForArrows(event) |
| + { |
| + if (!numeric) |
| + return; |
| + |
| + var increment = event.keyIdentifier === "Up" ? 1 : event.keyIdentifier === "Down" ? -1 : 0; |
| + if (!increment) |
| + return; |
| + if (event.shiftKey) |
| + increment *= 10; |
| + |
| + var value = inputElement.value; |
| + if (validatorCallback && validatorCallback(value)) |
|
vsevik
2014/07/02 15:17:25
Looks like this is not really needed.
dgozman
2014/07/02 15:50:17
This is to do nothing if user enters "abc" and pre
|
| + return; |
| + value = Number(value); |
| + if (clearForZero && !value) |
|
vsevik
2014/07/02 15:17:25
So we'll never increment zero?
dgozman
2014/07/02 15:50:17
Yes, if we replace zero value by empty string (use
|
| + return; |
| + value += increment; |
| + if (clearForZero && !value) |
|
vsevik
2014/07/02 15:17:25
Why?
dgozman
2014/07/02 15:50:17
Same reasons. I don't want to switch from "1" to e
|
| + return; |
| + value = String(value); |
| + if (validatorCallback && validatorCallback(value)) |
| + return; |
| + |
| + inputElement.value = value; |
| + apply(); |
| + event.preventDefault(); |
| } |
| function validate() |