⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 181672 in webkit


Ignore:
Timestamp:
Mar 17, 2015, 5:03:07 PM (11 years ago)
Author:
commit-queue@webkit.org
Message:

Web Inspector: Removal of multiline completion hint broken in Details sidebar
https://bugs.webkit.org/show_bug.cgi?id=142796

Patch by Tobias Reiss <tobi+webkit@basecode.de> on 2015-03-17
Reviewed by Joseph Pecoraro.

Prioritize CodeMirrorCompletionController over CSSStyleDeclarationTextEditor.
Both classes control the current CodeMirror instance of the Details Sidebar.
This change prevents possible race conditions during complete or delete-complete phases,
especially during operations on multiple styles in one line.

  • UserInterface/Views/CSSStyleDeclarationTextEditor.js:

(WebInspector.CSSStyleDeclarationTextEditor):

Location:
trunk/Source/WebInspectorUI
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebInspectorUI/ChangeLog

    r181626 r181672  
     12015-03-17  Tobias Reiss  <tobi+webkit@basecode.de>
     2
     3        Web Inspector: Removal of multiline completion hint broken in Details sidebar
     4        https://bugs.webkit.org/show_bug.cgi?id=142796
     5
     6        Reviewed by Joseph Pecoraro.
     7
     8        Prioritize CodeMirrorCompletionController over CSSStyleDeclarationTextEditor.
     9        Both classes control the current CodeMirror instance of the Details Sidebar.
     10        This change prevents possible race conditions during complete or delete-complete phases,
     11        especially during operations on multiple styles in one line.
     12
     13        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
     14        (WebInspector.CSSStyleDeclarationTextEditor):
     15
    1162015-03-17  Matt Baker  <mattbaker@apple.com>
    217
  • trunk/Source/WebInspectorUI/UserInterface/Views/CSSStyleDeclarationTextEditor.js

    r177322 r181672  
    5454    });
    5555
    56     this._codeMirror.on("change", this._contentChanged.bind(this));
    57     this._codeMirror.on("blur", this._editorBlured.bind(this));
    58 
    5956    this._completionController = new WebInspector.CodeMirrorCompletionController(this._codeMirror, this);
    6057    this._tokenTrackingController = new WebInspector.CodeMirrorTokenTrackingController(this._codeMirror, this);
     
    6562    this._tokenTrackingController.mouseOutReleaseDelayDuration = 0;
    6663    this._tokenTrackingController.mode = WebInspector.CodeMirrorTokenTrackingController.Mode.NonSymbolTokens;
     64
     65    // Make sure CompletionController adds event listeners first.
     66    // Otherwise we end up in race conditions during complete or delete-complete phases.
     67    this._codeMirror.on("change", this._contentChanged.bind(this));
     68    this._codeMirror.on("blur", this._editorBlured.bind(this));
    6769
    6870    this.style = style;
Note: See TracChangeset for help on using the changeset viewer.