NEW55829
Add information about how the value changed to Element::attributeChanged()
https://bugs.webkit.org/show_bug.cgi?id=55829
Summary Add information about how the value changed to Element::attributeChanged()
Patrick R. Gansterer
Reported 2011-03-05 14:44:07 PST
Add iformation about how the value changed to Element::attributeChanged()
Attachments
Patch (23.29 KB, patch)
2011-03-05 14:52 PST, Patrick R. Gansterer
no flags
PerformanceTest (286 bytes, text/html)
2011-03-06 08:22 PST, Patrick R. Gansterer
no flags
Patch (3.24 KB, patch)
2011-04-30 06:10 PDT, Patrick R. Gansterer
no flags
Patch (5.26 KB, patch)
2011-05-13 22:29 PDT, Patrick R. Gansterer
no flags
Patch for landing (5.96 KB, patch)
2011-06-15 18:12 PDT, Patrick R. Gansterer
webkit.review.bot: commit-queue-
Archive of layout-test-results from ec2-cq-03 (1.42 MB, application/zip)
2011-06-15 19:09 PDT, WebKit Review Bot
no flags
Patrick R. Gansterer
Comment 1 2011-03-05 14:52:41 PST
Patrick R. Gansterer
Comment 2 2011-03-05 15:25:53 PST
bug 55675 will use this additional argument.
Alexey Proskuryakov
Comment 3 2011-03-05 23:27:42 PST
What kind of performance testing did you do for this patch?
Patrick R. Gansterer
Comment 4 2011-03-06 08:22:03 PST
Created attachment 84890 [details] PerformanceTest (In reply to comment #3) > What kind of performance testing did you do for this patch? I did some test with the attached page (place it into PerformanceTests/parser), but I didn't get 100% reproducible results. After the patch setAttribute of input element (seams to be the slowest) is sometimes about 1% slower or a little bit faster than the original version. I also tried a version where I pass the old value as const AtomicString& instead of the AttributeChangedType, but it shows very similar results. Can you try this patch on your machine too to verify this?
Patrick R. Gansterer
Comment 5 2011-03-09 01:22:26 PST
Dave Hyatt
Comment 6 2011-03-09 11:13:28 PST
I really don't like this approach. It's not clear to me why this needs to be baked in at a low level. Can't individual attributes just query for equivalence if they care?
Dave Hyatt
Comment 7 2011-03-09 11:15:17 PST
I think a better approach would be to not send a change notification at all when the value is the same, and just special case the small # of attributes that do care about receiving a change (basically URL attributes).
Adam Roben (:aroben)
Comment 8 2011-04-26 16:53:08 PDT
Comment on attachment 84877 [details] Patch r- based on Hyatt's comments.
Patrick R. Gansterer
Comment 9 2011-04-30 06:10:18 PDT
Eric Seidel (no email)
Comment 10 2011-05-01 09:47:18 PDT
It seems strange that Element has this knowledge.
Patrick R. Gansterer
Comment 11 2011-05-13 22:29:49 PDT
Patrick R. Gansterer
Comment 12 2011-05-22 08:57:04 PDT
ping?
Dave Hyatt
Comment 13 2011-06-15 13:28:21 PDT
Comment on attachment 93546 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=93546&action=review Giving r=me, but avoid duplicating that code. > Source/WebCore/dom/Element.cpp:690 > + bool sameValue = old->value() == value; > + if (!sameValue) { > + if (Attr* attrNode = old->attr()) > + attrNode->setValue(value); > + else > + old->setValue(value); > + } > + if (!sameValue || fireEveryAttributeChange(old)) > + attributeChanged(old); Pull this into a little static helper please to avoid duplication.
Patrick R. Gansterer
Comment 14 2011-06-15 18:12:59 PDT
Created attachment 97383 [details] Patch for landing
WebKit Review Bot
Comment 15 2011-06-15 19:09:37 PDT
Comment on attachment 97383 [details] Patch for landing Rejecting attachment 97383 [details] from commit-queue. Failed to run "['./Tools/Scripts/webkit-patch', '--status-host=queues.webkit.org', '--bot-id=ec2-cq-03', '--port..." exit_code: 2 Last 500 characters of output: => Tests to be fixed (1224): 6 DumpRenderTree crashes ( 0.5%) 5 tests timed out ( 0.4%) 51 text diff mismatch ( 4.2%) 328 skipped (26.8%) => Tests that will only be fixed if they crash (WONTFIX) (8116): 1 test timed out ( 0.0%) 109 text diff mismatch ( 1.3%) 7957 skipped (98.0%) Regressions: Unexpected text diff mismatch : (1) svg/animations/animateTransform-pattern-transform.html = TEXT Full output: http://queues.webkit.org/results/8880017
WebKit Review Bot
Comment 16 2011-06-15 19:09:42 PDT
Created attachment 97384 [details] Archive of layout-test-results from ec2-cq-03 The attached test failures were seen while running run-webkit-tests on the commit-queue. Bot: ec2-cq-03 Port: Chromium Platform: Linux-2.6.35-28-virtual-x86_64-with-Ubuntu-10.10-maverick
Lucas Forschler
Comment 17 2019-02-06 09:03:55 PST
Mass moving XML DOM bugs to the "DOM" Component.
Note You need to log in before you can comment on or make changes to this bug.