RESOLVED FIXED 85733
mathml-href Add support for @href attribute in MathML
https://bugs.webkit.org/show_bug.cgi?id=85733
Summary Add support for @href attribute in MathML
Frédéric Wang (:fredw)
Reported 2012-05-06 07:53:01 PDT
"In MathML 3, an element is designated as a link by the presence of the href attribute." MathJax uses this to implement references to labeled equations. testcase: http://www.w3.org/Math/testsuite/build/main/General/GenAttribs/href1-simple.xhtml
Attachments
testcase (1.00 KB, text/html)
2016-03-23 10:16 PDT, Frédéric Wang (:fredw)
no flags
WIP Patch (6.26 KB, patch)
2016-03-23 10:18 PDT, Frédéric Wang (:fredw)
no flags
Patch (22.11 KB, patch)
2016-03-24 03:30 PDT, Frédéric Wang (:fredw)
buildbot: commit-queue-
Archive of layout-test-results from ews121 for ios-simulator-wk2 (796.94 KB, application/zip)
2016-03-24 04:23 PDT, Build Bot
no flags
Patch (25.11 KB, patch)
2016-04-26 09:07 PDT, Frédéric Wang (:fredw)
no flags
Archive of layout-test-results from ews123 for ios-simulator-wk2 (786.58 KB, application/zip)
2016-04-26 09:59 PDT, Build Bot
no flags
Patch (24.75 KB, patch)
2016-05-16 00:54 PDT, Frédéric Wang (:fredw)
no flags
Archive of layout-test-results from ews122 for ios-simulator-wk2 (790.18 KB, application/zip)
2016-05-16 01:58 PDT, Build Bot
no flags
Patch (24.86 KB, patch)
2016-05-16 02:07 PDT, Frédéric Wang (:fredw)
no flags
Patch (24.15 KB, patch)
2016-06-25 00:41 PDT, Frédéric Wang (:fredw)
buildbot: commit-queue-
Archive of layout-test-results from ews100 for mac-yosemite (978.46 KB, application/zip)
2016-06-25 01:28 PDT, Build Bot
no flags
Archive of layout-test-results from ews107 for mac-yosemite-wk2 (844.68 KB, application/zip)
2016-06-25 01:30 PDT, Build Bot
no flags
Archive of layout-test-results from ews126 for ios-simulator-wk2 (818.29 KB, application/zip)
2016-06-25 01:37 PDT, Build Bot
no flags
Archive of layout-test-results from ews116 for mac-yosemite (1.47 MB, application/zip)
2016-06-25 01:40 PDT, Build Bot
no flags
Patch (24.15 KB, patch)
2016-07-07 15:02 PDT, Frédéric Wang (:fredw)
no flags
Archive of layout-test-results from ews100 for mac-yosemite (830.61 KB, application/zip)
2016-07-07 15:51 PDT, Build Bot
no flags
Archive of layout-test-results from ews105 for mac-yosemite-wk2 (967.66 KB, application/zip)
2016-07-07 15:55 PDT, Build Bot
no flags
Archive of layout-test-results from ews116 for mac-yosemite (1.47 MB, application/zip)
2016-07-07 16:01 PDT, Build Bot
no flags
Archive of layout-test-results from ews122 for ios-simulator-wk2 (647.09 KB, application/zip)
2016-07-07 16:14 PDT, Build Bot
no flags
Patch (24.79 KB, patch)
2016-07-10 23:56 PDT, Frédéric Wang (:fredw)
bfulgham: review+
Frédéric Wang (:fredw)
Comment 1 2016-03-23 10:16:44 PDT
Created attachment 274756 [details] testcase Here is another testcase.
Frédéric Wang (:fredw)
Comment 2 2016-03-23 10:18:44 PDT
Created attachment 274758 [details] WIP Patch
Frédéric Wang (:fredw)
Comment 3 2016-03-23 10:26:27 PDT
Frédéric Wang (:fredw)
Comment 4 2016-03-24 03:30:28 PDT
Build Bot
Comment 5 2016-03-24 04:23:09 PDT
Comment on attachment 274827 [details] Patch Attachment 274827 [details] did not pass ios-sim-ews (ios-simulator-wk2): Output: http://webkit-queues.webkit.org/results/1031043 New failing tests: mathml/mathml-in-html5/href-click-2.html mathml/presentation/href-enter.html mathml/presentation/semantics-href.html mathml/mathml-in-html5/href-click-1.html
Build Bot
Comment 6 2016-03-24 04:23:14 PDT
Created attachment 274828 [details] Archive of layout-test-results from ews121 for ios-simulator-wk2 The attached test failures were seen while running run-webkit-tests on the ios-sim-ews. Bot: ews121 Port: ios-simulator-wk2 Platform: Mac OS X 10.10.5
Frédéric Wang (:fredw)
Comment 7 2016-04-26 09:07:05 PDT
Build Bot
Comment 8 2016-04-26 09:59:53 PDT
Comment on attachment 277387 [details] Patch Attachment 277387 [details] did not pass ios-sim-ews (ios-simulator-wk2): Output: http://webkit-queues.webkit.org/results/1224254 New failing tests: imported/mathml-in-html5/mathml/relations/html5-tree/href-click-1.html mathml/presentation/href-enter.html mathml/presentation/semantics-href.html imported/mathml-in-html5/mathml/relations/html5-tree/href-click-2.html
Build Bot
Comment 9 2016-04-26 09:59:55 PDT
Created attachment 277392 [details] Archive of layout-test-results from ews123 for ios-simulator-wk2 The attached test failures were seen while running run-webkit-tests on the ios-sim-ews. Bot: ews123 Port: ios-simulator-wk2 Platform: Mac OS X 10.11.4
Frédéric Wang (:fredw)
Comment 10 2016-05-16 00:54:31 PDT
Build Bot
Comment 11 2016-05-16 01:58:38 PDT
Comment on attachment 279005 [details] Patch Attachment 279005 [details] did not pass ios-sim-ews (ios-simulator-wk2): Output: http://webkit-queues.webkit.org/results/1329435 New failing tests: imported/mathml-in-html5/mathml/relations/html5-tree/href-click-1.html mathml/presentation/semantics-href.html imported/mathml-in-html5/mathml/relations/html5-tree/href-click-2.html
Build Bot
Comment 12 2016-05-16 01:58:40 PDT
Created attachment 279010 [details] Archive of layout-test-results from ews122 for ios-simulator-wk2 The attached test failures were seen while running run-webkit-tests on the ios-sim-ews. Bot: ews122 Port: ios-simulator-wk2 Platform: Mac OS X 10.11.4
Frédéric Wang (:fredw)
Comment 13 2016-05-16 02:07:54 PDT
Frédéric Wang (:fredw)
Comment 14 2016-06-25 00:41:57 PDT
Build Bot
Comment 15 2016-06-25 01:28:28 PDT
Comment on attachment 282061 [details] Patch Attachment 282061 [details] did not pass mac-ews (mac): Output: http://webkit-queues.webkit.org/results/1567033 New failing tests: mathml/presentation/href-enter.html mathml/presentation/href-style.html
Build Bot
Comment 16 2016-06-25 01:28:31 PDT
Created attachment 282062 [details] Archive of layout-test-results from ews100 for mac-yosemite The attached test failures were seen while running run-webkit-tests on the mac-ews. Bot: ews100 Port: mac-yosemite Platform: Mac OS X 10.10.5
Build Bot
Comment 17 2016-06-25 01:30:50 PDT
Comment on attachment 282061 [details] Patch Attachment 282061 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.webkit.org/results/1567036 New failing tests: mathml/presentation/href-enter.html mathml/presentation/href-style.html
Build Bot
Comment 18 2016-06-25 01:30:54 PDT
Created attachment 282064 [details] Archive of layout-test-results from ews107 for mac-yosemite-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: ews107 Port: mac-yosemite-wk2 Platform: Mac OS X 10.10.5
Build Bot
Comment 19 2016-06-25 01:37:34 PDT
Comment on attachment 282061 [details] Patch Attachment 282061 [details] did not pass ios-sim-ews (ios-simulator-wk2): Output: http://webkit-queues.webkit.org/results/1567038 New failing tests: imported/mathml-in-html5/mathml/relations/html5-tree/href-click-1.html mathml/presentation/href-enter.html mathml/presentation/semantics-href.html imported/mathml-in-html5/mathml/relations/html5-tree/href-click-2.html
Build Bot
Comment 20 2016-06-25 01:37:38 PDT
Created attachment 282066 [details] Archive of layout-test-results from ews126 for ios-simulator-wk2 The attached test failures were seen while running run-webkit-tests on the ios-sim-ews. Bot: ews126 Port: ios-simulator-wk2 Platform: Mac OS X 10.11.4
Build Bot
Comment 21 2016-06-25 01:40:23 PDT
Comment on attachment 282061 [details] Patch Attachment 282061 [details] did not pass mac-debug-ews (mac): Output: http://webkit-queues.webkit.org/results/1567044 New failing tests: mathml/presentation/href-enter.html mathml/presentation/href-style.html
Build Bot
Comment 22 2016-06-25 01:40:27 PDT
Created attachment 282068 [details] Archive of layout-test-results from ews116 for mac-yosemite The attached test failures were seen while running run-webkit-tests on the mac-debug-ews. Bot: ews116 Port: mac-yosemite Platform: Mac OS X 10.10.5
Brent Fulgham
Comment 23 2016-07-07 11:58:48 PDT
This change doesn't seem to work. Does it depend on any of your other MathML changes to work properly?
Frédéric Wang (:fredw)
Comment 24 2016-07-07 15:02:55 PDT
Frédéric Wang (:fredw)
Comment 25 2016-07-07 15:33:44 PDT
Mmh, it seems I'll have to check this again on Mac / iOS.
Build Bot
Comment 26 2016-07-07 15:51:14 PDT
Comment on attachment 283058 [details] Patch Attachment 283058 [details] did not pass mac-ews (mac): Output: http://webkit-queues.webkit.org/results/1643217 New failing tests: mathml/presentation/href-enter.html mathml/presentation/href-style.html
Build Bot
Comment 27 2016-07-07 15:51:20 PDT
Created attachment 283072 [details] Archive of layout-test-results from ews100 for mac-yosemite The attached test failures were seen while running run-webkit-tests on the mac-ews. Bot: ews100 Port: mac-yosemite Platform: Mac OS X 10.10.5
Build Bot
Comment 28 2016-07-07 15:55:26 PDT
Comment on attachment 283058 [details] Patch Attachment 283058 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.webkit.org/results/1643228 New failing tests: mathml/presentation/href-enter.html mathml/presentation/href-style.html
Build Bot
Comment 29 2016-07-07 15:55:32 PDT
Created attachment 283073 [details] Archive of layout-test-results from ews105 for mac-yosemite-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: ews105 Port: mac-yosemite-wk2 Platform: Mac OS X 10.10.5
Build Bot
Comment 30 2016-07-07 16:01:51 PDT
Comment on attachment 283058 [details] Patch Attachment 283058 [details] did not pass mac-debug-ews (mac): Output: http://webkit-queues.webkit.org/results/1643233 New failing tests: mathml/presentation/href-enter.html mathml/presentation/href-style.html
Build Bot
Comment 31 2016-07-07 16:01:56 PDT
Created attachment 283076 [details] Archive of layout-test-results from ews116 for mac-yosemite The attached test failures were seen while running run-webkit-tests on the mac-debug-ews. Bot: ews116 Port: mac-yosemite Platform: Mac OS X 10.10.5
Build Bot
Comment 32 2016-07-07 16:14:31 PDT
Comment on attachment 283058 [details] Patch Attachment 283058 [details] did not pass ios-sim-ews (ios-simulator-wk2): Output: http://webkit-queues.webkit.org/results/1643239 New failing tests: mathml/presentation/href-enter.html
Build Bot
Comment 33 2016-07-07 16:14:36 PDT
Created attachment 283081 [details] Archive of layout-test-results from ews122 for ios-simulator-wk2 The attached test failures were seen while running run-webkit-tests on the ios-sim-ews. Bot: ews122 Port: ios-simulator-wk2 Platform: Mac OS X 10.11.5
Frédéric Wang (:fredw)
Comment 34 2016-07-10 23:56:30 PDT
Frédéric Wang (:fredw)
Comment 35 2016-07-11 00:12:15 PDT
(In reply to comment #23) > This change doesn't seem to work. Does it depend on any of your other MathML > changes to work properly? The change still works and the basic tests from the MathML in HTML5 test suite pass. The problem was with these two more advanced tests mathml/presentation/href-enter.html mathml/presentation/href-style.html which use our test API to emulate keyboard navigation. They were skipped in the patch from mid May but it seems the change in TestExpectations were lost after later rebasing. Should be fixed now.
Brent Fulgham
Comment 36 2016-07-11 13:36:51 PDT
Comment on attachment 283303 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=283303&action=review r=me. I suggest you file bugzillas for the two skip cases so we don't forget to investigate them. > Source/WebCore/mathml/MathMLElement.cpp:228 > + setNeedsStyleRecalc(); Should you be doing the DNS prefetch logic here, just like we do for HTMLAnchorElement? > Source/WebCore/mathml/MathMLElement.cpp:335 > + Frame* frame = document().frame(); Maybe better as: if (Frame* frame = document().frame()) frame->loader()...... return; > LayoutTests/platform/ios-simulator/TestExpectations:680 > +mathml/presentation/href-style.html [ Skip ] Is there a bugzilla for this problem? > LayoutTests/platform/mac/TestExpectations:810 > +mathml/presentation/href-style.html [ Skip ] Ditto.
Frédéric Wang (:fredw)
Comment 37 2016-07-11 13:44:10 PDT
Comment on attachment 283303 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=283303&action=review >> Source/WebCore/mathml/MathMLElement.cpp:228 >> + setNeedsStyleRecalc(); > > Should you be doing the DNS prefetch logic here, just like we do for HTMLAnchorElement? Maybe someone who is more familiar with the code can comment but I believe we could land the patch without that, given that SVGAElement does not do that stuff either.
Brent Fulgham
Comment 38 2016-07-11 13:46:31 PDT
(In reply to comment #37) > Comment on attachment 283303 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=283303&action=review > > >> Source/WebCore/mathml/MathMLElement.cpp:228 > >> + setNeedsStyleRecalc(); > > > > Should you be doing the DNS prefetch logic here, just like we do for HTMLAnchorElement? > > Maybe someone who is more familiar with the code can comment but I believe > we could land the patch without that, given that SVGAElement does not do > that stuff either. It looks like the prefetch code is pretty old, so I guess SVG would have been updated to include it if it was extremely important. Let's just proceed with the code as-is.
Frédéric Wang (:fredw)
Comment 39 2016-07-11 21:29:08 PDT
Note You need to log in before you can comment on or make changes to this bug.