RESOLVED FIXED173930
AX: role="none" (or presentation) does not work on iframes
https://bugs.webkit.org/show_bug.cgi?id=173930
Summary AX: role="none" (or presentation) does not work on iframes
James Craig
Reported 2017-06-28 10:56:53 PDT
Created attachment 314041 [details] test case AX: role="none" (or presentation) does not work on iframes Load attached test case. The frame should not be exposed as an AXWebArea. VoiceOver and other AT should only see the contents, not the document borders. This should work more or less like @seamless used to work before it was removed.
Attachments
test case (231 bytes, text/html)
2017-06-28 10:56 PDT, James Craig
no flags
patch (15.56 KB, patch)
2017-07-01 00:32 PDT, chris fleizach
no flags
patch (15.55 KB, patch)
2017-07-01 01:44 PDT, chris fleizach
buildbot: commit-queue-
Archive of layout-test-results from ews105 for mac-elcapitan-wk2 (1.38 MB, application/zip)
2017-07-01 02:48 PDT, Build Bot
no flags
patch (15.56 KB, patch)
2017-07-01 17:58 PDT, chris fleizach
rniwa: review+
buildbot: commit-queue-
Archive of layout-test-results from ews101 for mac-elcapitan (1.15 MB, application/zip)
2017-07-01 19:34 PDT, Build Bot
no flags
patch (15.82 KB, patch)
2017-07-02 12:14 PDT, chris fleizach
rniwa: review+
buildbot: commit-queue-
Archive of layout-test-results from ews107 for mac-elcapitan-wk2 (1.38 MB, application/zip)
2017-07-02 13:02 PDT, Build Bot
no flags
patch (15.85 KB, patch)
2017-07-02 13:12 PDT, chris fleizach
commit-queue: commit-queue-
Archive of layout-test-results from ews103 for mac-elcapitan (1018.49 KB, application/zip)
2017-07-02 13:14 PDT, Build Bot
no flags
Archive of layout-test-results from ews112 for mac-elcapitan (1.78 MB, application/zip)
2017-07-02 13:42 PDT, Build Bot
no flags
real patch for landing (15.79 KB, patch)
2017-07-03 09:19 PDT, chris fleizach
no flags
Radar WebKit Bug Importer
Comment 1 2017-06-28 10:57:29 PDT
chris fleizach
Comment 2 2017-07-01 00:32:45 PDT
Build Bot
Comment 3 2017-07-01 00:34:26 PDT
Attachment 314374 [details] did not pass style-queue: ERROR: Source/WebCore/accessibility/AccessibilityRenderObject.cpp:1198: Multi line control clauses should use braces. [whitespace/braces] [4] ERROR: Source/WebCore/accessibility/AccessibilityObject.h:484: The parameter name "node" adds no information, so it should be removed. [readability/parameter_name] [5] Total errors found: 2 in 8 files If any of these errors are false positives, please file a bug against check-webkit-style.
chris fleizach
Comment 4 2017-07-01 01:44:45 PDT
Build Bot
Comment 5 2017-07-01 01:47:55 PDT
Attachment 314376 [details] did not pass style-queue: ERROR: Source/WebCore/accessibility/AccessibilityRenderObject.cpp:1198: Multi line control clauses should use braces. [whitespace/braces] [4] Total errors found: 1 in 8 files If any of these errors are false positives, please file a bug against check-webkit-style.
Build Bot
Comment 6 2017-07-01 02:48:43 PDT
Comment on attachment 314376 [details] patch Attachment 314376 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.webkit.org/results/4032951 New failing tests: accessibility/aria-hidden-false-works-in-subtrees.html accessibility/mac/webkit-scrollarea-position.html
Build Bot
Comment 7 2017-07-01 02:48:44 PDT
Created attachment 314379 [details] Archive of layout-test-results from ews105 for mac-elcapitan-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: ews105 Port: mac-elcapitan-wk2 Platform: Mac OS X 10.11.6
chris fleizach
Comment 8 2017-07-01 17:58:34 PDT
Build Bot
Comment 9 2017-07-01 18:01:03 PDT
Attachment 314393 [details] did not pass style-queue: ERROR: Source/WebCore/accessibility/AccessibilityRenderObject.cpp:1198: Multi line control clauses should use braces. [whitespace/braces] [4] Total errors found: 1 in 8 files If any of these errors are false positives, please file a bug against check-webkit-style.
Build Bot
Comment 10 2017-07-01 19:34:55 PDT
Comment on attachment 314393 [details] patch Attachment 314393 [details] did not pass mac-ews (mac): Output: http://webkit-queues.webkit.org/results/4036577 New failing tests: workers/bomb.html
Build Bot
Comment 11 2017-07-01 19:34:56 PDT
Created attachment 314396 [details] Archive of layout-test-results from ews101 for mac-elcapitan The attached test failures were seen while running run-webkit-tests on the mac-ews. Bot: ews101 Port: mac-elcapitan Platform: Mac OS X 10.11.6
Ryosuke Niwa
Comment 12 2017-07-01 20:25:01 PDT
Comment on attachment 314393 [details] patch View in context: https://bugs.webkit.org/attachment.cgi?id=314393&action=review > Source/WebCore/accessibility/AccessibilityRenderObject.cpp:1161 > + if (!is<RenderView>(*renderer)) > + return false; > + > + if (!renderer->document().ownerElement()) > + return false; Rather than checking if render object being a render view, why don't we just check that the node is not HTMLFrameOwnerElement? That way, it'd work with object element loading a HTML document as well.
chris fleizach
Comment 13 2017-07-02 00:20:42 PDT
(In reply to Ryosuke Niwa from comment #12) > Comment on attachment 314393 [details] > patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=314393&action=review > > > Source/WebCore/accessibility/AccessibilityRenderObject.cpp:1161 > > + if (!is<RenderView>(*renderer)) > > + return false; > > + > > + if (!renderer->document().ownerElement()) > > + return false; > > Rather than checking if render object being a render view, > why don't we just check that the node is not HTMLFrameOwnerElement? > That way, it'd work with object element loading a HTML document as well. Might be missing something here. For this method, I want it to tell me that it is a AXWebArea (which is essentially a RenderView) and that the frame owner element's role is presentational. If I remove the RenderView check I think it might sweep up other elements too.
Ryosuke Niwa
Comment 14 2017-07-02 00:58:00 PDT
(In reply to chris fleizach from comment #13) > (In reply to Ryosuke Niwa from comment #12) > > Comment on attachment 314393 [details] > > patch > > > > View in context: > > https://bugs.webkit.org/attachment.cgi?id=314393&action=review > > > > > Source/WebCore/accessibility/AccessibilityRenderObject.cpp:1161 > > > + if (!is<RenderView>(*renderer)) > > > + return false; > > > + > > > + if (!renderer->document().ownerElement()) > > > + return false; > > > > Rather than checking if render object being a render view, > > why don't we just check that the node is not HTMLFrameOwnerElement? > > That way, it'd work with object element loading a HTML document as well. > > Might be missing something here. For this method, I want it to tell me that > it is a AXWebArea (which is essentially a RenderView) and that the frame > owner element's role is presentational. If I remove the RenderView check I > think it might sweep up other elements too. Oh I see so RenderView check is needed. Nut even in that case, don't we still want to support this for object element with role=none? There's virtually no difference to object and iframe elements in this regard.
chris fleizach
Comment 15 2017-07-02 11:54:05 PDT
(In reply to Ryosuke Niwa from comment #14) > (In reply to chris fleizach from comment #13) > > (In reply to Ryosuke Niwa from comment #12) > > > Comment on attachment 314393 [details] > > > patch > > > > > > View in context: > > > https://bugs.webkit.org/attachment.cgi?id=314393&action=review > > > > > > > Source/WebCore/accessibility/AccessibilityRenderObject.cpp:1161 > > > > + if (!is<RenderView>(*renderer)) > > > > + return false; > > > > + > > > > + if (!renderer->document().ownerElement()) > > > > + return false; > > > > > > Rather than checking if render object being a render view, > > > why don't we just check that the node is not HTMLFrameOwnerElement? > > > That way, it'd work with object element loading a HTML document as well. > > > > Might be missing something here. For this method, I want it to tell me that > > it is a AXWebArea (which is essentially a RenderView) and that the frame > > owner element's role is presentational. If I remove the RenderView check I > > think it might sweep up other elements too. > > Oh I see so RenderView check is needed. Nut even in that case, don't we > still want to support this for object element with role=none? There's > virtually no difference to object and iframe elements in this regard. Didn't realize you could do that with object. It looks like <object> will create a AXWebArea so I'll look into this to see what else we need to do to support
chris fleizach
Comment 16 2017-07-02 12:14:29 PDT
Created attachment 314419 [details] patch Updated to make work with <object>
Build Bot
Comment 17 2017-07-02 12:17:35 PDT
Attachment 314419 [details] did not pass style-queue: ERROR: Source/WebCore/accessibility/AccessibilityRenderObject.cpp:1195: Multi line control clauses should use braces. [whitespace/braces] [4] Total errors found: 1 in 8 files If any of these errors are false positives, please file a bug against check-webkit-style.
Ryosuke Niwa
Comment 18 2017-07-02 12:27:26 PDT
Comment on attachment 314419 [details] patch View in context: https://bugs.webkit.org/attachment.cgi?id=314419&action=review > Source/WebCore/accessibility/AccessibilityRenderObject.cpp:1196 > + // WebAreas should be ignored if their iframe container is marked as presentational. > + if (webAreaIsPresentational(m_renderer)) > + return true; Somehow the style bot is complaining about this code but there's nothing wrong with this code.
Build Bot
Comment 19 2017-07-02 13:02:33 PDT
Comment on attachment 314419 [details] patch Attachment 314419 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.webkit.org/results/4039026 New failing tests: accessibility/presentation-role-iframe.html
Build Bot
Comment 20 2017-07-02 13:02:34 PDT
Created attachment 314420 [details] Archive of layout-test-results from ews107 for mac-elcapitan-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: ews107 Port: mac-elcapitan-wk2 Platform: Mac OS X 10.11.6
chris fleizach
Comment 21 2017-07-02 13:12:33 PDT
Created attachment 314421 [details] patch Minor updates to test
Build Bot
Comment 22 2017-07-02 13:14:45 PDT
Comment on attachment 314419 [details] patch Attachment 314419 [details] did not pass mac-ews (mac): Output: http://webkit-queues.webkit.org/results/4039091 New failing tests: accessibility/presentation-role-iframe.html
Build Bot
Comment 23 2017-07-02 13:14:46 PDT
Created attachment 314422 [details] Archive of layout-test-results from ews103 for mac-elcapitan The attached test failures were seen while running run-webkit-tests on the mac-ews. Bot: ews103 Port: mac-elcapitan Platform: Mac OS X 10.11.6
Build Bot
Comment 24 2017-07-02 13:15:15 PDT
Attachment 314421 [details] did not pass style-queue: ERROR: Source/WebCore/accessibility/AccessibilityRenderObject.cpp:1195: Multi line control clauses should use braces. [whitespace/braces] [4] Total errors found: 1 in 8 files If any of these errors are false positives, please file a bug against check-webkit-style.
Build Bot
Comment 25 2017-07-02 13:42:23 PDT
Comment on attachment 314419 [details] patch Attachment 314419 [details] did not pass mac-debug-ews (mac): Output: http://webkit-queues.webkit.org/results/4039129 New failing tests: accessibility/presentation-role-iframe.html
Build Bot
Comment 26 2017-07-02 13:42:25 PDT
Created attachment 314425 [details] Archive of layout-test-results from ews112 for mac-elcapitan The attached test failures were seen while running run-webkit-tests on the mac-debug-ews. Bot: ews112 Port: mac-elcapitan Platform: Mac OS X 10.11.6
WebKit Commit Bot
Comment 27 2017-07-03 08:53:25 PDT
Comment on attachment 314421 [details] patch Rejecting attachment 314421 [details] from commit-queue. Failed to run "['/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch', '--status-host=webkit-queues.webkit.org', '--bot-id=webkit-cq-01', 'validate-changelog', '--check-oops', '--non-interactive', 314421, '--port=mac']" exit_code: 1 cwd: /Volumes/Data/EWS/WebKit ChangeLog entry in LayoutTests/ChangeLog contains OOPS!. Full output: http://webkit-queues.webkit.org/results/4044916
chris fleizach
Comment 28 2017-07-03 09:19:48 PDT
Created attachment 314488 [details] real patch for landing
Build Bot
Comment 29 2017-07-03 09:22:18 PDT
Attachment 314488 [details] did not pass style-queue: ERROR: Source/WebCore/accessibility/AccessibilityRenderObject.cpp:1195: Multi line control clauses should use braces. [whitespace/braces] [4] Total errors found: 1 in 8 files If any of these errors are false positives, please file a bug against check-webkit-style.
WebKit Commit Bot
Comment 30 2017-07-03 10:18:38 PDT
Comment on attachment 314488 [details] real patch for landing Clearing flags on attachment: 314488 Committed r219075: <http://trac.webkit.org/changeset/219075>
Ahmad Saleem
Comment 31 2022-10-25 13:37:53 PDT
Landed and didn't backed out: https://github.com/WebKit/WebKit/commit/311f7954d3a0a280bb6531383c7194efb897c08d Marking this as "RESOLVED FIXED".
Note You need to log in before you can comment on or make changes to this bug.