Changeset 188483 in webkit


Ignore:
Timestamp:
Aug 14, 2015 1:05:06 PM (9 years ago)
Author:
Devin Rousso
Message:

Web Inspector: Add Visual editors for CSS properties with comma separated values
https://bugs.webkit.org/show_bug.cgi?id=147578

Reviewed by Timothy Hatcher.

Displays comma separated CSS property values as a tree outline list.

  • UserInterface/Images/Minus.svg: Added.
  • UserInterface/Views/TreeOutline.js:

(WebInspector.TreeOutline.prototype.get selectedTreeElementIndex):
(WebInspector.TreeOutline):

  • UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.css: Added.

(.visual-style-property-container.comma-separated-keyword-editor):
(.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container):
(.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list):
(.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item):
(.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item:nth-child(odd)):
(.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item.selected):
(.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item > :matches(button, img)):
(.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item > .titles):
(.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item.visual-style-font-family-list-item.selected:not(.editor-hidden) > .titles > *):
(.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item.visual-style-font-family-list-item > .visual-style-comma-separated-keyword-item-editor):
(.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item.visual-style-font-family-list-item.editor-hidden > .visual-style-comma-separated-keyword-item-editor):
(.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item > .titles > .subtitle):
(.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item:not(.no-value) > .titles > .subtitle):
(.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-controls):
(.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-controls > div):
(.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-controls > .visual-style-remove-comma-separated-keyword):

  • UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.js: Added.

(WebInspector.VisualStyleCommaSeparatedKeywordEditor):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype.set selectedTreeElementValue):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype.get value):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype.set value):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype.get synthesizedValue):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._treeElementSelected):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._treeItemIsEmpty):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._addEmptyCommaSeparatedKeyword):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._removeSelectedCommaSeparatedKeyword):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._removeEmptyCommaSeparatedKeywords):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._addCommaSeparatedKeyword):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._removeCommaSeparatedKeyword):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._createNewTreeElement):

  • UserInterface/Views/VisualStyleFontFamilyListEditor.js: Added.

(WebInspector.VisualStyleFontFamilyListEditor):
(WebInspector.VisualStyleFontFamilyListEditor.prototype.visualStyleCompletionsControllerCustomizeCompletionElement):
(WebInspector.VisualStyleFontFamilyListEditor.prototype.get hasCompletions):
(WebInspector.VisualStyleFontFamilyListEditor.prototype.set completions):
(WebInspector.VisualStyleFontFamilyListEditor.prototype._modifyCommaSeparatedKeyword):
(WebInspector.VisualStyleFontFamilyListEditor.prototype._addCommaSeparatedKeyword):
(WebInspector.VisualStyleFontFamilyListEditor.prototype._addEmptyCommaSeparatedKeyword):
(WebInspector.VisualStyleFontFamilyListEditor.prototype._completionClicked):
(WebInspector.VisualStyleFontFamilyListEditor.prototype._treeElementKeyDown):
(WebInspector.VisualStyleFontFamilyListEditor.prototype._treeElementKeywordChanged):
(WebInspector.VisualStyleFontFamilyListEditor.prototype._hideCompletions):
(WebInspector.VisualStyleFontFamilyListEditor.prototype._createNewTreeElement):

  • UserInterface/Views/VisualStyleFontFamilyTreeElement.js: Added.

(WebInspector.VisualStyleFontFamilyTreeElement):
(WebInspector.VisualStyleFontFamilyTreeElement.prototype.editorBounds):
(WebInspector.VisualStyleFontFamilyTreeElement.prototype.updateMainTitle):
(WebInspector.VisualStyleFontFamilyTreeElement.prototype.showKeywordEditor):
(WebInspector.VisualStyleFontFamilyTreeElement.prototype.hideKeywordEditor):
(WebInspector.VisualStyleFontFamilyTreeElement.prototype.get keywordEditorHidden):
(WebInspector.VisualStyleFontFamilyTreeElement.prototype.onattach):
(WebInspector.VisualStyleFontFamilyTreeElement.prototype.ondeselect):
(WebInspector.VisualStyleFontFamilyTreeElement.prototype._keywordEditorKeyDown):
(WebInspector.VisualStyleFontFamilyTreeElement.prototype._keywordEditorKeyUp):
(WebInspector.VisualStyleFontFamilyTreeElement.prototype._keywordEditorBlurred):

Location:
trunk/Source/WebInspectorUI
Files:
5 added
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebInspectorUI/ChangeLog

    r188480 r188483  
     12015-08-14  Devin Rousso  <drousso@apple.com>
     2
     3        Web Inspector: Add Visual editors for CSS properties with comma separated values
     4        https://bugs.webkit.org/show_bug.cgi?id=147578
     5
     6        Reviewed by Timothy Hatcher.
     7
     8        Displays comma separated CSS property values as a tree outline list.
     9
     10        * UserInterface/Images/Minus.svg: Added.
     11        * UserInterface/Views/TreeOutline.js:
     12        (WebInspector.TreeOutline.prototype.get selectedTreeElementIndex):
     13        (WebInspector.TreeOutline):
     14
     15        * UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.css: Added.
     16        (.visual-style-property-container.comma-separated-keyword-editor):
     17        (.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container):
     18        (.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list):
     19        (.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item):
     20        (.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item:nth-child(odd)):
     21        (.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item.selected):
     22        (.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item > :matches(button, img)):
     23        (.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item > .titles):
     24        (.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item.visual-style-font-family-list-item.selected:not(.editor-hidden) > .titles > *):
     25        (.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item.visual-style-font-family-list-item > .visual-style-comma-separated-keyword-item-editor):
     26        (.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item.visual-style-font-family-list-item.editor-hidden > .visual-style-comma-separated-keyword-item-editor):
     27        (.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item > .titles > .subtitle):
     28        (.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-list > .visual-style-comma-separated-keyword-item:not(.no-value) > .titles > .subtitle):
     29        (.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-controls):
     30        (.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-controls > div):
     31        (.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-controls > .visual-style-remove-comma-separated-keyword):
     32
     33        * UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.js: Added.
     34        (WebInspector.VisualStyleCommaSeparatedKeywordEditor):
     35        (WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype.set selectedTreeElementValue):
     36        (WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype.get value):
     37        (WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype.set value):
     38        (WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype.get synthesizedValue):
     39        (WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._treeElementSelected):
     40        (WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._treeItemIsEmpty):
     41        (WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._addEmptyCommaSeparatedKeyword):
     42        (WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._removeSelectedCommaSeparatedKeyword):
     43        (WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._removeEmptyCommaSeparatedKeywords):
     44        (WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._addCommaSeparatedKeyword):
     45        (WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._removeCommaSeparatedKeyword):
     46        (WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._createNewTreeElement):
     47
     48        * UserInterface/Views/VisualStyleFontFamilyListEditor.js: Added.
     49        (WebInspector.VisualStyleFontFamilyListEditor):
     50        (WebInspector.VisualStyleFontFamilyListEditor.prototype.visualStyleCompletionsControllerCustomizeCompletionElement):
     51        (WebInspector.VisualStyleFontFamilyListEditor.prototype.get hasCompletions):
     52        (WebInspector.VisualStyleFontFamilyListEditor.prototype.set completions):
     53        (WebInspector.VisualStyleFontFamilyListEditor.prototype._modifyCommaSeparatedKeyword):
     54        (WebInspector.VisualStyleFontFamilyListEditor.prototype._addCommaSeparatedKeyword):
     55        (WebInspector.VisualStyleFontFamilyListEditor.prototype._addEmptyCommaSeparatedKeyword):
     56        (WebInspector.VisualStyleFontFamilyListEditor.prototype._completionClicked):
     57        (WebInspector.VisualStyleFontFamilyListEditor.prototype._treeElementKeyDown):
     58        (WebInspector.VisualStyleFontFamilyListEditor.prototype._treeElementKeywordChanged):
     59        (WebInspector.VisualStyleFontFamilyListEditor.prototype._hideCompletions):
     60        (WebInspector.VisualStyleFontFamilyListEditor.prototype._createNewTreeElement):
     61
     62        * UserInterface/Views/VisualStyleFontFamilyTreeElement.js: Added.
     63        (WebInspector.VisualStyleFontFamilyTreeElement):
     64        (WebInspector.VisualStyleFontFamilyTreeElement.prototype.editorBounds):
     65        (WebInspector.VisualStyleFontFamilyTreeElement.prototype.updateMainTitle):
     66        (WebInspector.VisualStyleFontFamilyTreeElement.prototype.showKeywordEditor):
     67        (WebInspector.VisualStyleFontFamilyTreeElement.prototype.hideKeywordEditor):
     68        (WebInspector.VisualStyleFontFamilyTreeElement.prototype.get keywordEditorHidden):
     69        (WebInspector.VisualStyleFontFamilyTreeElement.prototype.onattach):
     70        (WebInspector.VisualStyleFontFamilyTreeElement.prototype.ondeselect):
     71        (WebInspector.VisualStyleFontFamilyTreeElement.prototype._keywordEditorKeyDown):
     72        (WebInspector.VisualStyleFontFamilyTreeElement.prototype._keywordEditorKeyUp):
     73        (WebInspector.VisualStyleFontFamilyTreeElement.prototype._keywordEditorBlurred):
     74
    1752015-08-14  Devin Rousso  <drousso@apple.com>
    276
  • trunk/Source/WebInspectorUI/UserInterface/Views/TreeOutline.js

    r186520 r188483  
    505505        // this is the root, do nothing
    506506    }
     507
     508    get selectedTreeElementIndex()
     509    {
     510        if (!this.hasChildren || !this.selectedTreeElement)
     511            return;
     512
     513        for (var i = 0; i < this.children.length; ++i) {
     514            if (this.children[i] === this.selectedTreeElement)
     515                return i;
     516        }
     517
     518        return false;
     519    }
    507520};
    508521
Note: See TracChangeset for help on using the changeset viewer.