Bug 96252

Summary: Web Inspector: [Elements] Poor performance upon continuous attribute changes
Product: WebKit Reporter: Alexander Pavlov (apavlov) <apavlov>
Component: Web Inspector (Deprecated)Assignee: Alexander Pavlov (apavlov) <apavlov>
Status: RESOLVED FIXED    
Severity: Normal CC: apavlov, bweinstein, joepeck, keishi, loislo, pfeldman, pmuellr, rik, timothy, yurys
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Attachments:
Description Flags
Test case
none
Patch
none
Patch vsevik: review+

Description Alexander Pavlov (apavlov) 2012-09-10 02:23:16 PDT
1. Open the attached test case
2. Select any <div> element.

Observe very slow DOM tree updates and no style data in the Styles sidebar pane.
Comment 1 Alexander Pavlov (apavlov) 2012-09-10 02:26:36 PDT
Created attachment 163072 [details]
Test case
Comment 2 Alexander Pavlov (apavlov) 2012-09-10 02:34:25 PDT
Created attachment 163074 [details]
Patch
Comment 3 Vsevolod Vlasov 2012-09-10 02:51:33 PDT
Comment on attachment 163074 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=163074&action=review

> Source/WebCore/inspector/front-end/ElementsTreeOutline.js:2091
> +        for (var id in this._recentlyModifiedNodes) {

var nodesToUpdate = Object.values(this._recentlyModifiedNodes);
... = nodesToUpdate.length > 10;

> Source/WebCore/inspector/front-end/ElementsTreeOutline.js:2117
> +            if (entry.updated) {

entry[WebInspector.ElementsTreeUpdater.ChangeType.Updated]
Comment 4 Alexander Pavlov (apavlov) 2012-09-10 03:27:53 PDT
Created attachment 163080 [details]
Patch
Comment 5 Alexander Pavlov (apavlov) 2012-09-10 04:09:31 PDT
Committed r128043: <http://trac.webkit.org/changeset/128043>