Title: [239285] trunk/Source/WebInspectorUI
- Revision
- 239285
- Author
- drou...@apple.com
- Date
- 2018-12-17 13:15:39 -0800 (Mon, 17 Dec 2018)
Log Message
Web Inspector: Settings: add singular "space" UIString
https://bugs.webkit.org/show_bug.cgi?id=192766
<rdar://problem/46776948>
Reviewed by Brian Burg.
* UserInterface/Views/SettingEditor.js:
(WI.SettingEditor):
(WI.SettingEditor.prototype.get label):
(WI.SettingEditor.prototype.set label): Added.
* UserInterface/Views/SettingsTabContentView.js:
(WI.SettingsTabContentView.prototype._createGeneralSettingsView):
(WI.SettingsTabContentView.prototype._createGeneralSettingsView.addSpacesSetting): Added.
(WI.SettingsTabContentView.prototype._createGeneralSettingsView.addSpacesSetting.updateLabel): Added.
* Localizations/en.lproj/localizedStrings.js:
Modified Paths
Diff
Modified: trunk/Source/WebInspectorUI/ChangeLog (239284 => 239285)
--- trunk/Source/WebInspectorUI/ChangeLog 2018-12-17 21:07:13 UTC (rev 239284)
+++ trunk/Source/WebInspectorUI/ChangeLog 2018-12-17 21:15:39 UTC (rev 239285)
@@ -1,3 +1,23 @@
+2018-12-17 Devin Rousso <drou...@apple.com>
+
+ Web Inspector: Settings: add singular "space" UIString
+ https://bugs.webkit.org/show_bug.cgi?id=192766
+ <rdar://problem/46776948>
+
+ Reviewed by Brian Burg.
+
+ * UserInterface/Views/SettingEditor.js:
+ (WI.SettingEditor):
+ (WI.SettingEditor.prototype.get label):
+ (WI.SettingEditor.prototype.set label): Added.
+
+ * UserInterface/Views/SettingsTabContentView.js:
+ (WI.SettingsTabContentView.prototype._createGeneralSettingsView):
+ (WI.SettingsTabContentView.prototype._createGeneralSettingsView.addSpacesSetting): Added.
+ (WI.SettingsTabContentView.prototype._createGeneralSettingsView.addSpacesSetting.updateLabel): Added.
+
+ * Localizations/en.lproj/localizedStrings.js:
+
2018-12-15 Nikita Vasilyev <nvasil...@apple.com>
Web Inspector: Styles: toggling selected properties may cause data corruption
Modified: trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js (239284 => 239285)
--- trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js 2018-12-17 21:07:13 UTC (rev 239284)
+++ trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js 2018-12-17 21:15:39 UTC (rev 239285)
@@ -1043,6 +1043,7 @@
localizedStrings["originally %s"] = "originally %s";
localizedStrings["popup"] = "popup";
localizedStrings["popup, toggle"] = "popup, toggle";
+localizedStrings["space"] = "space";
localizedStrings["spaces"] = "spaces";
localizedStrings["time before stopping"] = "time before stopping";
localizedStrings["times before stopping"] = "times before stopping";
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/SettingEditor.js (239284 => 239285)
--- trunk/Source/WebInspectorUI/UserInterface/Views/SettingEditor.js 2018-12-17 21:07:13 UTC (rev 239284)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/SettingEditor.js 2018-12-17 21:15:39 UTC (rev 239285)
@@ -30,7 +30,6 @@
super();
this._type = type;
- this._label = label;
this._value = null;
this._editorElement = this._createEditorElement(options);
@@ -40,14 +39,7 @@
this._element.classList.add("editor");
this._element.append(this._editorElement);
- if (this._label) {
- this._editorElement.id = "setting-editor-" + WI.SettingEditor._nextEditorIdentifier++;
- let labelElement = document.createElement("label");
- labelElement.setAttribute("for", this._editorElement.id);
- labelElement.textContent = label;
-
- this._element.append(labelElement);
- }
+ this.label = label;
}
static createForSetting(setting, label, options)
@@ -74,8 +66,37 @@
get element() { return this._element; }
get type() { return this._type; }
- get label() { return this._label; }
+ get label()
+ {
+ return this._label;
+ }
+
+ set label(label)
+ {
+ if (label === this._label)
+ return;
+
+ this._label = label;
+
+ if (!this._label) {
+ if (this._labelElement)
+ this._labelElement.remove();
+
+ this._editorElement.removeAttribute("id");
+ this._labelElement = null;
+ return;
+ }
+
+ if (!this._labelElement) {
+ this._editorElement.id = "setting-editor-" + WI.SettingEditor._nextEditorIdentifier++;
+ this._labelElement = this._element.appendChild(document.createElement("label"));
+ this._labelElement.setAttribute("for", this._editorElement.id);
+ }
+
+ this._labelElement.textContent = this._label;
+ }
+
get value()
{
return this._value;
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/SettingsTabContentView.js (239284 => 239285)
--- trunk/Source/WebInspectorUI/UserInterface/Views/SettingsTabContentView.js 2018-12-17 21:07:13 UTC (rev 239284)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/SettingsTabContentView.js 2018-12-17 21:15:39 UTC (rev 239285)
@@ -184,11 +184,19 @@
WI.settings.indentWithTabs.value = indentEditor.value === indentValues[0];
});
- const widthLabel = WI.UIString("spaces");
- const widthOptions = {min: 1};
+ function addSpacesSetting(title, setting) {
+ let editor = generalSettingsView.addSetting(title, setting, WI.UIString("spaces"), {min: 1});
- generalSettingsView.addSetting(WI.UIString("Tab width:"), WI.settings.tabSize, widthLabel, widthOptions);
- generalSettingsView.addSetting(WI.UIString("Indent width:"), WI.settings.indentUnit, widthLabel, widthOptions);
+ function updateLabel() {
+ editor.label = setting.value === 1 ? WI.UIString("space") : WI.UIString("spaces");
+ }
+ setting.addEventListener(WI.Setting.Event.Changed, (event) => {
+ updateLabel();
+ });
+ updateLabel();
+ }
+ addSpacesSetting(WI.UIString("Tab width:"), WI.settings.tabSize);
+ addSpacesSetting(WI.UIString("Indent width:"), WI.settings.indentUnit);
generalSettingsView.addSetting(WI.UIString("Line wrapping:"), WI.settings.enableLineWrapping, WI.UIString("Wrap lines to editor width"));
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes