Created attachment 49163 [details]
Samples of Safari
Steps to Reproduce:
1) Launch Terminal
3) Open http://www.youtube.com/watch?v=jqxENMKaeCU
4) Show Web Inspector
5) Select Resources pane
6) Enable resource tracking for this session, if not enabled
7) Select www-core-new-vfl147421.js in the resources list
8) Scroll up and down in the js source
Scrolling is instantaneous.
Scrolling is slow and causes Safari to hang and pinwheel.
Build Date & Platform:
WebKit svn r55052 built from source, Debug configuration, Mac OS X 10.6.2 Build 10C540, Xcode 3.2.1
What seems to be happening is that the web inspector is continuously performing syntax highlighting. It syntax highlights the section at the top, then when I scroll down the text is all black, it syntax highlights, but when I scroll back to the top, the formerly highlighted text is now all black again, and then it gets syntax highlighted again.
This problem occurs whether or not I have ClickToFlash installed, so it has nothing to do with whether there is actually a Flash movie playing on the web page.
Attached are two samples of Safari, archived in the file "InspectorSamples.zip".
Could it be that you are comparing Debug ToT to Release 4.0.4?
That's correct. I just tried nightly build r55140, and it doesn't pinwheel, though it can be a bit jerky. Thus, as far as Debug builds are concerned, I can't really say how much of a regression there has been. I don't think the Safari 4.0.4 version has been tagged in svn.
Let me know if you want me to perform further testing.
On a side note, is there a reason that line-wrapping is no longer used in the Resources pane? Without line-wrapping, it's harder to read js files with long lines.
Created attachment 49635 [details]
[PATCH] Proposed fix.
Committing to http://svn.webkit.org/repository/webkit/trunk ...
The hanging actually seems a little worse on r55353 than it did on r55052.
Attaching a new sample.
Created attachment 49684 [details]
Sample of Safari svn r55353
(In reply to comment #6)
> Created an attachment (id=49684) [details]
> Sample of Safari svn r55353
Couple of observations:
1) Resource panel is now getting constant updates on the youtube's videoplayback resource. It repaints resource panel even when resource is being viewed. Should be easy to fix
2) I can see that on 4.0.4 scrolling also prevents movie from playing smoothly. It is not as bad as on ToT though.
3) As in sample attached, timeline shows me that most of the time is spent recalculating the styles. We just need to optimize our styles a lot and remove complex rules from them.
Comment on attachment 49635 [details]
[PATCH] Proposed fix.
Cleared Timothy Hatcher's review+ from obsolete attachment 49635 [details] so that this bug does not appear in http://webkit.org/pending-commit.
This is ticket is marked REOPENED, but should be marked CLOSED/FIXED.
Comment #8 From WebKit Commit Bot 2010-03-05 14:03:56 PST
(In reply to comment #9)
> This is ticket is marked REOPENED, but should be marked CLOSED/FIXED.
> Comment #8 From WebKit Commit Bot 2010-03-05 14:03:56 PST
Why should it be marked closed/fixed? It was not in fact fixed.
Apologies, that statement was a bit strong.
I ran the test case you provided on all of the WebKits I have installed (including OS 10.6.2/Safari 5.1.5) and did not notice degraded performance while scrolling.
I had hoped that, given the age of the bug, it had been resolved somewhere else.
Thanks for verifying that the issue is still occurring.
(In reply to comment #11)
> Apologies, that statement was a bit strong.
> I ran the test case you provided on all of the WebKits I have installed (including OS 10.6.2/Safari 5.1.5) and did not notice degraded performance while scrolling.
> I had hoped that, given the age of the bug, it had been resolved somewhere else.
> Thanks for verifying that the issue is still occurring.
Ah. I didn't verify that the issue is still occurring. You only mentioned the old commit bot comment, which didn't seem to give a reason for closing the bug.
If you've tested it and can no longer reproduce, then it may have been fixed. It should be noted, though, that this was mainly an issue in Debug builds rather than Release builds.