Bug 136015

Summary: Web Inspector: Improve performance of selection range changes viewing Scripts timeline
Product: WebKit Reporter: Joseph Pecoraro <joepeck>
Component: Web InspectorAssignee: Joseph Pecoraro <joepeck>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, graouts, joepeck, timothy, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Attachments:
Description Flags
[PATCH] Proposed Fix none

Description Joseph Pecoraro 2014-08-16 00:01:33 PDT
* SUMMARY
Improve performance of selection range changes viewing Scripts timeline.

Whenever a selection range changes, we update all the nodes and mark them as needing a refresh. However, we only need to refresh an element if the new selection range changed the cross-section of that particular node. For example, if the selection range was showing the entire node, and is still showing the entire node, we don't need to refresh.

* STEPS TO REPRODUCE
1. Inspect iCloud.com
2. Show Timelines and Reload
3. Select Scripts timeline
4. Select a time range with a lot of scripts
5. Scrub / expand / collapse / change the time range selection
  => poor performance

* NOTES
We do still want to support "sub-event ranges". If there is a long script, you should be able to put a selection range for only part of that script evaluation and see only the Profile Nodes for that cross section.
Comment 1 Radar WebKit Bug Importer 2014-08-16 00:02:04 PDT
<rdar://problem/18040028>
Comment 2 Joseph Pecoraro 2014-08-16 00:04:29 PDT
Created attachment 236703 [details]
[PATCH] Proposed Fix
Comment 3 Timothy Hatcher 2014-08-16 01:53:14 PDT
Comment on attachment 236703 [details]
[PATCH] Proposed Fix

Nice!
Comment 4 WebKit Commit Bot 2014-08-16 02:25:43 PDT
Comment on attachment 236703 [details]
[PATCH] Proposed Fix

Clearing flags on attachment: 236703

Committed r172689: <http://trac.webkit.org/changeset/172689>
Comment 5 WebKit Commit Bot 2014-08-16 02:25:45 PDT
All reviewed patches have been landed.  Closing bug.