Changeset 183816 in webkit


Ignore:
Timestamp:
May 5, 2015, 9:59:31 AM (10 years ago)
Author:
timothy@apple.com
Message:

Web Inspector: Fix some issues with Search tabs
https://bugs.webkit.org/show_bug.cgi?id=144531

Reviewed by Darin Adler.

  • UserInterface/Views/ContentView.js:

(WebInspector.ContentView):
(WebInspector.ContentView.isViewable):
Support DOMSearchMatchObject and SourceCodeSearchMatchObject representedObjects. These are usually
handled at a higher level, but cookie restoring requires ContentView to handle them.

  • UserInterface/Views/DOMTreeContentView.js:

(WebInspector.DOMTreeContentView):
(WebInspector.DOMTreeContentView.prototype.selectAndRevealDOMNode):
(WebInspector.DOMTreeContentView.prototype.selectLastSelectedNode):
(WebInspector.DOMTreeContentView.prototype._restoreSelectedNodeAfterUpdate):
Don't allow restoring the previous selected node when another not has already been selected.

  • UserInterface/Views/SearchTabContentView.js:

(WebInspector.SearchTabContentView.prototype.canShowRepresentedObject):
Allow Script objects to be shown in the Search tab.

Location:
trunk/Source/WebInspectorUI
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebInspectorUI/ChangeLog

    r183815 r183816  
     12015-05-05  Timothy Hatcher  <timothy@apple.com>
     2
     3        Web Inspector: Fix some issues with Search tabs
     4        https://bugs.webkit.org/show_bug.cgi?id=144531
     5
     6        Reviewed by Darin Adler.
     7
     8        * UserInterface/Views/ContentView.js:
     9        (WebInspector.ContentView):
     10        (WebInspector.ContentView.isViewable):
     11        Support DOMSearchMatchObject and SourceCodeSearchMatchObject representedObjects. These are usually
     12        handled at a higher level, but cookie restoring requires ContentView to handle them.
     13
     14        * UserInterface/Views/DOMTreeContentView.js:
     15        (WebInspector.DOMTreeContentView):
     16        (WebInspector.DOMTreeContentView.prototype.selectAndRevealDOMNode):
     17        (WebInspector.DOMTreeContentView.prototype.selectLastSelectedNode):
     18        (WebInspector.DOMTreeContentView.prototype._restoreSelectedNodeAfterUpdate):
     19        Don't allow restoring the previous selected node when another not has already been selected.
     20
     21        * UserInterface/Views/SearchTabContentView.js:
     22        (WebInspector.SearchTabContentView.prototype.canShowRepresentedObject):
     23        Allow Script objects to be shown in the Search tab.
     24
    1252015-05-05  Timothy Hatcher  <timothy@apple.com>
    226
  • trunk/Source/WebInspectorUI/UserInterface/Views/ContentView.js

    r183331 r183816  
    8282            return new WebInspector.FrameDOMTreeContentView(representedObject, extraArguments);
    8383
     84        if (representedObject instanceof WebInspector.DOMSearchMatchObject) {
     85            var resultView = new WebInspector.FrameDOMTreeContentView(WebInspector.frameResourceManager.mainFrame.domTree, extraArguments);
     86            resultView.restoreFromCookie({nodeToSelect: representedObject.domNode});
     87            return resultView;
     88        }
     89
     90        if (representedObject instanceof WebInspector.SourceCodeSearchMatchObject) {
     91            var resultView;
     92            if (representedObject.sourceCode instanceof WebInspector.Resource)
     93                resultView = new WebInspector.ResourceClusterContentView(representedObject.sourceCode, extraArguments);
     94            else if (representedObject.sourceCode instanceof WebInspector.Script)
     95                resultView = new WebInspector.ScriptContentView(representedObject.sourceCode, extraArguments);
     96            else
     97                console.error("Unknown SourceCode", representedObject.sourceCode);
     98
     99            var textRangeToSelect = representedObject.sourceCodeTextRange.formattedTextRange;
     100            var startPosition = textRangeToSelect.startPosition();
     101            resultView.restoreFromCookie({lineNumber: startPosition.lineNumber, columnNumber: startPosition.columnNumber});
     102
     103            return resultView;
     104        }
     105
    84106        if (representedObject instanceof WebInspector.LogObject)
    85107            return new WebInspector.LogContentView(representedObject, extraArguments);
     
    141163        return true;
    142164    if (representedObject instanceof WebInspector.DOMTree)
     165        return true;
     166    if (representedObject instanceof WebInspector.DOMSearchMatchObject)
     167        return true;
     168    if (representedObject instanceof WebInspector.SourceCodeSearchMatchObject)
    143169        return true;
    144170    if (representedObject instanceof WebInspector.LogObject)
  • trunk/Source/WebInspectorUI/UserInterface/Views/DOMTreeContentView.js

    r183579 r183816  
    6060    this._lastSelectedNodePathSetting = new WebInspector.Setting("last-selected-node-path", null);
    6161
     62    this._restoreSelectedNodeIsAllowed = true;
    6263    this._numberOfSearchResults = null;
    6364};
     
    146147    selectAndRevealDOMNode: function(domNode, preventFocusChange)
    147148    {
     149        this._restoreSelectedNodeIsAllowed = false;
    148150        this._domTreeOutline.selectDOMNode(domNode, !preventFocusChange);
    149151    },
     
    323325    _restoreSelectedNodeAfterUpdate: function(documentURL, defaultNode)
    324326    {
    325         if (!WebInspector.domTreeManager.restoreSelectedNodeIsAllowed)
     327        if (!this._restoreSelectedNodeIsAllowed || !WebInspector.domTreeManager.restoreSelectedNodeIsAllowed)
    326328            return;
    327329
     
    346348        function selectLastSelectedNode(nodeId)
    347349        {
    348             if (!WebInspector.domTreeManager.restoreSelectedNodeIsAllowed)
    349                 return;
     350            if (!this._restoreSelectedNodeIsAllowed || !WebInspector.domTreeManager.restoreSelectedNodeIsAllowed)
     351                return;
     352
    350353            selectNode.call(this, WebInspector.domTreeManager.nodeForId(nodeId));
    351354        }
  • trunk/Source/WebInspectorUI/UserInterface/Views/SearchTabContentView.js

    r183764 r183816  
    5757    canShowRepresentedObject: function(representedObject)
    5858    {
    59         return representedObject instanceof WebInspector.Resource || representedObject instanceof WebInspector.DOMTree;
     59        return representedObject instanceof WebInspector.Resource || representedObject instanceof WebInspector.Script || representedObject instanceof WebInspector.DOMTree;
    6060    },
    6161
Note: See TracChangeset for help on using the changeset viewer.