WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
106216
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL.
https://bugs.webkit.org/show_bug.cgi?id=106216
Summary
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL.
Krzysztof Czech
Reported
2013-01-07 06:25:19 PST
Create WebPage's accessibility object on WebPage initialization.
Attachments
[EFL] Expose accessibility hierarchy in WebKit2-EFL.
(5.14 KB, patch)
2013-01-07 06:28 PST
,
Krzysztof Czech
eflews.bot
: commit-queue-
Details
Formatted Diff
Diff
[EFL] Expose accessibility hierarchy in WebKit2-EFL.
(6.20 KB, patch)
2013-01-07 07:51 PST
,
Krzysztof Czech
gtk-ews
: commit-queue-
Details
Formatted Diff
Diff
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL.
(6.47 KB, patch)
2013-01-09 07:50 PST
,
Krzysztof Czech
no flags
Details
Formatted Diff
Diff
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL.
(6.47 KB, patch)
2013-01-11 02:46 PST
,
Krzysztof Czech
no flags
Details
Formatted Diff
Diff
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL.
(6.41 KB, patch)
2013-01-14 04:55 PST
,
Krzysztof Czech
no flags
Details
Formatted Diff
Diff
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL.
(6.35 KB, patch)
2013-01-15 02:01 PST
,
Krzysztof Czech
no flags
Details
Formatted Diff
Diff
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL.
(6.24 KB, patch)
2013-01-15 04:00 PST
,
Krzysztof Czech
gyuyoung.kim
: review-
gtk-ews
: commit-queue-
Details
Formatted Diff
Diff
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL.
(6.25 KB, patch)
2013-01-16 03:09 PST
,
Krzysztof Czech
no flags
Details
Formatted Diff
Diff
Show Obsolete
(7)
View All
Add attachment
proposed patch, testcase, etc.
Krzysztof Czech
Comment 1
2013-01-07 06:28:54 PST
Created
attachment 181499
[details]
[EFL] Expose accessibility hierarchy in WebKit2-EFL.
EFL EWS Bot
Comment 2
2013-01-07 06:37:01 PST
Comment on
attachment 181499
[details]
[EFL] Expose accessibility hierarchy in WebKit2-EFL.
Attachment 181499
[details]
did not pass efl-ews (efl): Output:
http://queues.webkit.org/results/15731792
kov's GTK+ EWS bot
Comment 3
2013-01-07 06:37:39 PST
Comment on
attachment 181499
[details]
[EFL] Expose accessibility hierarchy in WebKit2-EFL.
Attachment 181499
[details]
did not pass gtk-ews (gtk): Output:
http://queues.webkit.org/results/15732742
Krzysztof Czech
Comment 4
2013-01-07 07:51:10 PST
Created
attachment 181508
[details]
[EFL] Expose accessibility hierarchy in WebKit2-EFL.
kov's GTK+ EWS bot
Comment 5
2013-01-07 07:59:11 PST
Comment on
attachment 181508
[details]
[EFL] Expose accessibility hierarchy in WebKit2-EFL.
Attachment 181508
[details]
did not pass gtk-ews (gtk): Output:
http://queues.webkit.org/results/15739772
Gyuyoung Kim
Comment 6
2013-01-07 20:09:37 PST
Comment on
attachment 181508
[details]
[EFL] Expose accessibility hierarchy in WebKit2-EFL. View in context:
https://bugs.webkit.org/attachment.cgi?id=181508&action=review
> Source/WebKit2/PlatformEfl.cmake:414 > + WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp
I move files which are already guarded by conditionals to main cmake list. Please take a look
http://trac.webkit.org/changeset/138681
Krzysztof Czech
Comment 7
2013-01-08 02:14:54 PST
I see, so you mean to move this file to main cmake list ?
> (From update of
attachment 181508
[details]
) > View in context:
https://bugs.webkit.org/attachment.cgi?id=181508&action=review
> > > Source/WebKit2/PlatformEfl.cmake:414 > > + WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp > > I move files which are already guarded by conditionals to main cmake list. Please take a look
http://trac.webkit.org/changeset/138681
Gyuyoung Kim
Comment 8
2013-01-08 21:24:08 PST
(In reply to
comment #7
)
> I see, so you mean to move this file to main cmake list ? > > (From update of
attachment 181508
[details]
[details]) > > View in context:
https://bugs.webkit.org/attachment.cgi?id=181508&action=review
> > > > > Source/WebKit2/PlatformEfl.cmake:414 > > > + WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp > > > > I move files which are already guarded by conditionals to main cmake list. Please take a look
http://trac.webkit.org/changeset/138681
Yes, if there is no HAVE(ACCESSIBILITY) inside files, I think you need to add it to the files.
Krzysztof Czech
Comment 9
2013-01-09 01:11:31 PST
Yes, there is not HAVE(ACCESSIBILITY) inside, but it depends on ATK library. If ENABLE_ACCESSIBILITY is off then we will have build breaks. I think we should have this under ENABLE_ACCESSIBILITY. What do you think about that ?.
> (In reply to
comment #7
) > > I see, so you mean to move this file to main cmake list ? > > > (From update of
attachment 181508
[details]
[details] [details]) > > > View in context:
https://bugs.webkit.org/attachment.cgi?id=181508&action=review
> > > > > > > Source/WebKit2/PlatformEfl.cmake:414 > > > > + WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp > > > > > > I move files which are already guarded by conditionals to main cmake list. Please take a look
http://trac.webkit.org/changeset/138681
> > Yes, if there is no HAVE(ACCESSIBILITY) inside files, I think you need to add it to the files.
Gyuyoung Kim
Comment 10
2013-01-09 05:14:59 PST
(In reply to
comment #9
)
> Yes, there is not HAVE(ACCESSIBILITY) inside, but it depends on ATK library. If ENABLE_ACCESSIBILITY is off then we will have build breaks. I think we should have this under ENABLE_ACCESSIBILITY. What do you think about that ?.
I think you have to add accessibility guard to atk files as
http://trac.webkit.org/changeset/139159
Krzysztof Czech
Comment 11
2013-01-09 07:50:35 PST
Created
attachment 181927
[details]
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL.
Krzysztof Czech
Comment 12
2013-01-11 02:46:27 PST
Created
attachment 182306
[details]
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL.
Krzysztof Czech
Comment 13
2013-01-14 04:55:25 PST
Created
attachment 182546
[details]
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL.
Gyuyoung Kim
Comment 14
2013-01-14 18:18:40 PST
Comment on
attachment 182546
[details]
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL. View in context:
https://bugs.webkit.org/attachment.cgi?id=182546&action=review
> Source/WebKit2/PlatformEfl.cmake:121 > + WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp
Wrong alphabetic order.
> Source/WebKit2/WebProcess/WebPage/WebPage.h:475 > +#if PLATFORM(GTK) || (PLATFORM(EFL) && HAVE(ACCESSIBILITY))
I wonder why EFL port only needs to use HAVE(ACCESSIBILITY) together. EFL port also enabled HAVE(ACCESSIBILITY) guard as GTK port. #if !defined(HAVE_ACCESSIBILITY) #if PLATFORM(IOS) || PLATFORM(MAC) || PLATFORM(WIN) || PLATFORM(GTK) || (PLATFORM(CHROMIUM) && !OS(ANDROID)) || PLATFORM(EFL) #define HAVE_ACCESSIBILITY 1 #endif
> Source/WebKit2/WebProcess/WebPage/WebPage.h:849 > +#elif PLATFORM(GTK) || (PLATFORM(EFL) && HAVE(ACCESSIBILITY))
ditto.
> Source/WebKit2/WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp:78 > +#if PLATFORM(EFL)
Is #if HAVE(ACCESSIBILITY) better for GTK port as well ?
> Source/WebKit2/WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp:112 > +#if PLATFORM(EFL)
ditto ?
Krzysztof Czech
Comment 15
2013-01-15 01:55:10 PST
> I wonder why EFL port only needs to use HAVE(ACCESSIBILITY) together. EFL port also enabled HAVE(ACCESSIBILITY) guard as GTK port.
Because we wanted to have a possibility of turning Accessibility on/off. This is a matter of having ATK library. In case ATK is not available, we can easily turning it off. See Source/cmake/OptionsEfl.cmake (line 50). Why PLATFORM(EFL) and HAVE(ACCESSIBILITY) go together?. Because PLATFORM(EFL) alone will not cover every occurrence of ATK callings. In GTK, ATK is integral part of the framework. I think it cannot be switched off. GTK always depends on it. EFL does not. That's way PLATFORM(GTK) is enough for GTK port in terms of Accessibility.
> (From update of
attachment 182546
[details]
) > View in context:
https://bugs.webkit.org/attachment.cgi?id=182546&action=review
> > > Source/WebKit2/PlatformEfl.cmake:121 > > + WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp > > Wrong alphabetic order. > > > Source/WebKit2/WebProcess/WebPage/WebPage.h:475 > > +#if PLATFORM(GTK) || (PLATFORM(EFL) && HAVE(ACCESSIBILITY)) > > I wonder why EFL port only needs to use HAVE(ACCESSIBILITY) together. EFL port also enabled HAVE(ACCESSIBILITY) guard as GTK port. > > > #if !defined(HAVE_ACCESSIBILITY) > #if PLATFORM(IOS) || PLATFORM(MAC) || PLATFORM(WIN) || PLATFORM(GTK) || (PLATFORM(CHROMIUM) && !OS(ANDROID)) || PLATFORM(EFL) > #define HAVE_ACCESSIBILITY 1 > #endif > > > Source/WebKit2/WebProcess/WebPage/WebPage.h:849 > > +#elif PLATFORM(GTK) || (PLATFORM(EFL) && HAVE(ACCESSIBILITY)) > > ditto. > > > Source/WebKit2/WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp:78 > > +#if PLATFORM(EFL) > > Is #if HAVE(ACCESSIBILITY) better for GTK port as well ? > > > Source/WebKit2/WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp:112 > > +#if PLATFORM(EFL) > > ditto ?
Krzysztof Czech
Comment 16
2013-01-15 02:01:34 PST
Created
attachment 182721
[details]
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL.
Krzysztof Czech
Comment 17
2013-01-15 02:02:11 PST
> > > Source/WebKit2/PlatformEfl.cmake:121 > > > + WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp > > > > Wrong alphabetic order.
Done.
Gyuyoung Kim
Comment 18
2013-01-15 02:37:56 PST
(In reply to
comment #15
)
> > I wonder why EFL port only needs to use HAVE(ACCESSIBILITY) together. EFL port also enabled HAVE(ACCESSIBILITY) guard as GTK port. > > Because we wanted to have a possibility of turning Accessibility on/off. This is a matter of having ATK library. In case ATK is not available, we can easily turning it off. See Source/cmake/OptionsEfl.cmake (line 50). Why PLATFORM(EFL) and HAVE(ACCESSIBILITY) go together?. Because PLATFORM(EFL) alone will not cover every occurrence of ATK callings.
I don't understand this well. OptionsEfl.cmake enables ENABLE_ACCESSIBILITY to find ATK package. if (ENABLE_ACCESSIBILITY) find_package(ATK REQUIRED) else () add_definitions(-DHAVE_ACCESSIBILITY=0) endif () Then, the HAVE_ACCESSIBILITY is enabled by Platform.h #if !defined(HAVE_ACCESSIBILITY) #if PLATFORM(IOS) || PLATFORM(MAC) || PLATFORM(WIN) || PLATFORM(GTK) || (PLATFORM(CHROMIUM) && !OS(ANDROID)) || PLATFORM(EFL) #define HAVE_ACCESSIBILITY 1 #endif #endif /* !defined(HAVE_ACCESSIBILITY) */ It means EFL port will enable HAVE_ACCESSIBILITY if we don't off ENABLE_ACCESSIBILITY in OptionsEfl.cmake. If we off ENABLE_ACCESSIBILITY in OptionsEFl.cmake, HAVE_ACCESSIBILITY is defined with disabled. So, it won't be enabled in Platform.h again. It seems to me that we already can control HAVE_ACCESSIBILITY by OptionsEfl.cmake definition. If I miss something, please let me know.
Gyuyoung Kim
Comment 19
2013-01-15 02:43:03 PST
Comment on
attachment 182721
[details]
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL. View in context:
https://bugs.webkit.org/attachment.cgi?id=182721&action=review
> Source/WebKit2/WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp:78 > +#if PLATFORM(EFL)
I think you don't need to use PLATFORM(EFL) because UNUSED_PARAM() is for all ports. It would be good to remove atkObject parameter name.
> Source/WebKit2/WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp:113 > + UNUSED_PARAM(accessible);
ditto.
Krzysztof Czech
Comment 20
2013-01-15 03:42:44 PST
(In reply to
comment #18
)
> (In reply to
comment #15
) > > > I wonder why EFL port only needs to use HAVE(ACCESSIBILITY) together. EFL port also enabled HAVE(ACCESSIBILITY) guard as GTK port. > > > > Because we wanted to have a possibility of turning Accessibility on/off. This is a matter of having ATK library. In case ATK is not available, we can easily turning it off. See Source/cmake/OptionsEfl.cmake (line 50). Why PLATFORM(EFL) and HAVE(ACCESSIBILITY) go together?. Because PLATFORM(EFL) alone will not cover every occurrence of ATK callings. > > I don't understand this well. OptionsEfl.cmake enables ENABLE_ACCESSIBILITY to find ATK package. > > if (ENABLE_ACCESSIBILITY) > find_package(ATK REQUIRED) > else () > add_definitions(-DHAVE_ACCESSIBILITY=0) > endif () > > Then, the HAVE_ACCESSIBILITY is enabled by Platform.h > > #if !defined(HAVE_ACCESSIBILITY) > #if PLATFORM(IOS) || PLATFORM(MAC) || PLATFORM(WIN) || PLATFORM(GTK) || (PLATFORM(CHROMIUM) && !OS(ANDROID)) || PLATFORM(EFL) > #define HAVE_ACCESSIBILITY 1 > #endif > #endif /* !defined(HAVE_ACCESSIBILITY) */ > > It means EFL port will enable HAVE_ACCESSIBILITY if we don't off ENABLE_ACCESSIBILITY in OptionsEfl.cmake. If we off ENABLE_ACCESSIBILITY in OptionsEFl.cmake, HAVE_ACCESSIBILITY is defined with disabled. So, it won't be enabled in Platform.h again. It seems to me that we already can control HAVE_ACCESSIBILITY by OptionsEfl.cmake definition. If I miss something, please let me know.
It's a bit tricky, but you are right. We can control it, by setting HAVE_ACCESSIBILITY in OptionsEfl.cmake. The thing is, other ports have HAVE_ACCESSIBILITY enabled by default: #if !defined(HAVE_ACCESSIBILITY) #if PLATFORM(IOS) || PLATFORM(MAC) || PLATFORM(WIN) || PLATFORM(GTK) || (PLATFORM(CHROMIUM) && !OS(ANDROID)) || PLATFORM(EFL) #define HAVE_ACCESSIBILITY 1 #endif #endif /* !defined(HAVE_ACCESSIBILITY) */ There are parts of the code, that had not been covered by HAVE(ACCESSIBILITY) macro example: Source/WebKit2/WebProcess/WebPage/WebPage.h 814 #if PLATFORM(MAC) 839 #elif PLATFORM(GTK) 840 GRefPtr<WebPageAccessibilityObject> m_accessibilityObject; Avoiding adding global HAVE(ACCESSIBILITY), I'm adding it along with PLATFORM(EFL). Regarding my patch you are right, the are things that can be changed. I will propose a new one.
Krzysztof Czech
Comment 21
2013-01-15 04:00:03 PST
Created
attachment 182733
[details]
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL.
kov's GTK+ EWS bot
Comment 22
2013-01-15 08:22:40 PST
Comment on
attachment 182733
[details]
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL.
Attachment 182733
[details]
did not pass gtk-ews (gtk): Output:
http://queues.webkit.org/results/15860981
Gyuyoung Kim
Comment 23
2013-01-15 16:49:00 PST
Comment on
attachment 182733
[details]
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL. View in context:
https://bugs.webkit.org/attachment.cgi?id=182733&action=review
r- because of GTK build fail and wrong UNUSED_PARAM usage.
> Source/WebKit2/WebProcess/WebPage/WebPage.h:83 > +#include "GRefPtr.h"
#if HAVE(ACCESSIBILITY) && (PLATFORM(GTK) || PLATFORM(EFL)) How about this one ?
> Source/WebKit2/WebProcess/WebPage/WebPage.h:474 > +#if HAVE(ACCESSIBILITY)
ditto ?
> Source/WebKit2/WebProcess/WebPage/WebPage.h:850 > +#elif PLATFORM(GTK) || (PLATFORM(EFL) && HAVE(ACCESSIBILITY))
ditto ?
> Source/WebKit2/WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp:78 > +#if PLATFORM(EFL)
As I said in
comment #19
, WebKit prefers to remove unused parameter. Look at this mailling list. -
http://lists.webkit.org/pipermail/webkit-dev/2012-October/022369.html
> Source/WebKit2/WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp:112 > +#if PLATFORM(EFL)
ditto.
Krzysztof Czech
Comment 24
2013-01-16 03:09:47 PST
Created
attachment 182952
[details]
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL.
WebKit Review Bot
Comment 25
2013-01-16 03:11:47 PST
Attachment 182952
[details]
did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebKit2/ChangeLog', u'Source/WebKit..." exit_code: 1 Source/WebKit2/WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp:109: web_page_accessibility_object_init is incorrectly named. Don't use underscores in your identifier names. [readability/naming/underscores] [4] Total errors found: 1 in 6 files If any of these errors are false positives, please file a bug against check-webkit-style.
Krzysztof Czech
Comment 26
2013-01-16 03:29:46 PST
(In reply to
comment #25
)
>
Attachment 182952
[details]
did not pass style-queue: > > Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebKit2/ChangeLog', u'Source/WebKit..." exit_code: 1 > Source/WebKit2/WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp:109: web_page_accessibility_object_init is incorrectly named. Don't use underscores in your identifier names. [readability/naming/underscores] [4] > Total errors found: 1 in 6 files > > > If any of these errors are false positives, please file a bug against check-webkit-style.
It's a matter of glib's initialization approach. Underscores are needed.
Krzysztof Czech
Comment 27
2013-01-16 03:30:47 PST
(In reply to
comment #23
)
> (From update of
attachment 182733
[details]
) > View in context:
https://bugs.webkit.org/attachment.cgi?id=182733&action=review
> > r- because of GTK build fail and wrong UNUSED_PARAM usage. > > > Source/WebKit2/WebProcess/WebPage/WebPage.h:83 > > +#include "GRefPtr.h" > > #if HAVE(ACCESSIBILITY) && (PLATFORM(GTK) || PLATFORM(EFL)) How about this one ?
Agree, looks better.
> > > Source/WebKit2/WebProcess/WebPage/WebPage.h:474 > > +#if HAVE(ACCESSIBILITY) > > ditto ?
Done.
> > > Source/WebKit2/WebProcess/WebPage/WebPage.h:850 > > +#elif PLATFORM(GTK) || (PLATFORM(EFL) && HAVE(ACCESSIBILITY)) > > ditto ?
Done.
> > > Source/WebKit2/WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp:78 > > +#if PLATFORM(EFL) > > As I said in
comment #19
, WebKit prefers to remove unused parameter. Look at this mailling list. -
http://lists.webkit.org/pipermail/webkit-dev/2012-October/022369.html
>
Thanks for the tip. I removed unused parameters.
> > Source/WebKit2/WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp:112 > > +#if PLATFORM(EFL) > > ditto.
Done.
Gyuyoung Kim
Comment 28
2013-01-17 00:48:25 PST
Comment on
attachment 182952
[details]
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL. Looks good to me.
Chris Dumez
Comment 29
2013-01-17 00:51:00 PST
Comment on
attachment 182952
[details]
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL. LGTM.
Gyuyoung Kim
Comment 30
2013-01-17 21:31:33 PST
Comment on
attachment 182952
[details]
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL. Benjamin or Martin might want to have a final look.
Benjamin Poulain
Comment 31
2013-01-21 12:32:23 PST
> Benjamin or Martin might want to have a final look.
I don't know enough about accessibility to have a say here.
Gyuyoung Kim
Comment 32
2013-01-21 22:45:03 PST
Comment on
attachment 182952
[details]
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL. According to new WebKit2 review policy, I clear my r+.
WebKit Review Bot
Comment 33
2013-01-24 02:13:21 PST
Comment on
attachment 182952
[details]
[EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL. Clearing flags on attachment: 182952 Committed
r140667
: <
http://trac.webkit.org/changeset/140667
>
WebKit Review Bot
Comment 34
2013-01-24 02:13:27 PST
All reviewed patches have been landed. Closing bug.
Chris Dumez
Comment 35
2013-01-28 04:14:08 PST
It seems that after this patch, we started experiencing
Bug 108058
.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug