Accessibility/Extensions: Difference between revisions

No edit summary
Tag: 2017 source edit
No edit summary
Tag: 2017 source edit
Line 5: Line 5:


{| class="sortable contenttable rowcount" style="width:100%;"
{| class="sortable contenttable rowcount" style="width:100%;"
!Type
! style="width:80px;" |Type
!Name
! style="width:180px;" |Name
!Type
! style="width:100px;" |Type
!WCAG
!WCAG
!Accessibility notes
!Accessibility notes
|-
|-
| style="width:30px;" |CF
| style="width:80px;" |CF
| style="" | Arrays
| style="width:180px;" | Arrays
|
| style="width:100px;" |
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
|parser functions - entered as text
|parser functions - entered as text
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceAbout
| style="width:180px;" | BlueSpiceAbout
|Web
| style="width:100px;" |Web
| class="col-grey-light-bg" |partially supported
| class="col-grey-light-bg" |partially supported
|Focus does not stay in iframe after accepting privacy policy. (Ticket: [[Erm:25216|erm:25216)]]
|Focus does not stay in iframe after accepting privacy policy. (Ticket: [[Erm:25216|erm:25216)]]
Line 28: Line 28:
*Extension can be deactivated for on-premise installations or custom content can be loaded in iframe (customer is responsible for loading accessible content).
*Extension can be deactivated for on-premise installations or custom content can be loaded in iframe (customer is responsible for loading accessible content).
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceArticleInfo
| style="width:180px;" | BlueSpiceArticleInfo
|AT, Web, SD
| style="width:100px;" |AT, Web, SD
| class="col-grey-light-bg" |partially supported
| class="col-grey-light-bg" |partially supported


Line 36: Line 36:
*Extjs: Pagination in grids not announcing button types and spinbutton value
*Extjs: Pagination in grids not announcing button types and spinbutton value
|-
|-
| EF
| style="width:80px;" | EF
| style="" | BlueSpiceArticlePreviewCapture
| style="width:180px;" | BlueSpiceArticlePreviewCapture
|Web,
| style="width:100px;" |Web,


SD
SD
Line 45: Line 45:
*Extjs: Pagination in grids not announcing button types and spinbutton value
*Extjs: Pagination in grids not announcing button types and spinbutton value
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceAuthors
| style="width:180px;" | BlueSpiceAuthors
|Web,
| style="width:100px;" |Web,


SD
SD
Line 54: Line 54:
*Extjs: Pagination in grids not announcing button types and spinbutton value
*Extjs: Pagination in grids not announcing button types and spinbutton value
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceAvatars
| style="width:180px;" | BlueSpiceAvatars
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceBookshelf
| style="width:180px;" | BlueSpiceBookshelf
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceDiscovery
| style="width:180px;" | BlueSpiceDiscovery
|AT, Web
| style="width:100px;" |AT, Web
| class="col-green-bg" |supported
| class="col-green-bg" |supported
|skip navigation, aria roles and labels for screenreaders, fully keyboard accessible
|skip navigation, aria roles and labels for screenreaders, fully keyboard accessible
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceCategoryCheck
| style="width:180px;" | BlueSpiceCategoryCheck
|AT
| style="width:100px;" |AT
| class="col-green-bg" |supported
| class="col-green-bg" |supported
|category announcements in save dialog (fixed in [[erm:25232|erm:25232)]]
|category announcements in save dialog (fixed in [[erm:25232|erm:25232)]]
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceCategoryManager
| style="width:180px;" | BlueSpiceCategoryManager
|AT, Web
| style="width:100px;" |AT, Web
| class="col-grey-light-bg" |partially supported
| class="col-grey-light-bg" |partially supported
|supported: tabbing through tabular data
|supported: tabbing through tabular data
Line 91: Line 91:
workaround: categories can also be managed directly on the category pages themselves. The parent-child relationship of categories is also always listed on the categories pages
workaround: categories can also be managed directly on the category pages themselves. The parent-child relationship of categories is also always listed on the categories pages
|-
|-
| EF
| style="width:80px;" | EF
| style="" | BlueSpiceChecklist
| style="width:180px;" | BlueSpiceChecklist
|AT, Web, SD
| style="width:100px;" |AT, Web, SD
| class="col-green-bg" |supported
| class="col-green-bg" |supported
|edit in source mode; output standard html list
|edit in source mode; output standard html list
|-
|-
| class="col-grey-light-bg" style="" |CLDCF
| class="col-grey-light-bg" style="width:80px;" |CLDCF
| class="col-grey-light-bg" style="" | BlueSpiceCloudClient
| class="col-grey-light-bg" style="width:180px;" | BlueSpiceCloudClient
| class="col-grey-light-bg" style="" |
| class="col-grey-light-bg" style="width:100px;" |
| class="col-grey-light-bg" style="" |
| class="col-grey-light-bg" style="" |
| class="col-grey-light-bg" style="" |
| class="col-grey-light-bg" style="" |
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceContextMenu
| style="width:180px;" | BlueSpiceContextMenu
|Web, SD
| style="width:100px;" |Web, SD
| class="col-orange-bg" |workaround
| class="col-orange-bg" |workaround
|allows to open a context menu that executes actions on the target page without actually going to the target page.
|allows to open a context menu that executes actions on the target page without actually going to the target page.
workaround: Simply execute the actions directly on the target page or use the "original" links in the interface
workaround: Simply execute the actions directly on the target page or use the "original" links in the interface
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceCountThings
| style="width:180px;" | BlueSpiceCountThings
|AT, Web, SD
| style="width:100px;" |AT, Web, SD
| class="col-green-bg" |supported
| class="col-green-bg" |supported
|edit in source mode; output: standard html table
|edit in source mode; output: standard html table
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceCustomMenu
| style="width:180px;" | BlueSpiceCustomMenu
|AT, Web, SD
| style="width:100px;" |AT, Web, SD
| class="col-green-bg" |supported
| class="col-green-bg" |supported
|
|
Line 124: Line 124:
* Web: Simple links lists with accessible headings
* Web: Simple links lists with accessible headings
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceDashboards
| style="width:180px;" | BlueSpiceDashboards
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceEmoticons
| style="width:180px;" | BlueSpiceEmoticons
|AT, Web
| style="width:100px;" |AT, Web
| class="col-green-bg" |supported
| class="col-green-bg" |supported
|Fixed in [[erm:25160]]
|Fixed in [[erm:25160]]
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceExpiry
| style="width:180px;" | BlueSpiceExpiry
|AT
| style="width:100px;" |AT
| class="col-grey-light-bg" |partially supported
| class="col-grey-light-bg" |partially supported
|
|
Line 144: Line 144:
*Expired articles list: extjs pagination issue
*Expired articles list: extjs pagination issue
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceExpiry
| style="width:180px;" | BlueSpiceExpiry
|Web, SD
| style="width:100px;" |Web, SD
| class="col-red-bg" |not supported
| class="col-red-bg" |not supported
|page does not indicate on load that it is expired
|page does not indicate on load that it is expired
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceExportTables
| style="width:180px;" | BlueSpiceExportTables
|
| style="width:100px;" |
| class="col-green-bg" |supported
| class="col-green-bg" |supported
|export menu is keyboard and screenreader accessible
|export menu is keyboard and screenreader accessible
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceExtendedFilelist
| style="width:180px;" | BlueSpiceExtendedFilelist
|AT, Web, SD
| style="width:100px;" |AT, Web, SD
| class="col-orange-bg" |workaround
| class="col-orange-bg" |workaround
|
|
Line 166: Line 166:


|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceExtendedSearch
| style="width:180px;" | BlueSpiceExtendedSearch
|Web,
| style="width:100px;" |Web,


SD
SD
Line 176: Line 176:
'''workaround:''' Special:Search uses standard html results table and accessible search form
'''workaround:''' Special:Search uses standard html results table and accessible search form
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceExtendedStatistics
| style="width:180px;" | BlueSpiceExtendedStatistics
|Web
| style="width:100px;" |Web
| class="col-red-bg" |not supported
| class="col-red-bg" |not supported
|some stats only available as png
|some stats only available as png
|-
|-
| | CF
| style="width:80px;"| CF
| style="" | BlueSpiceFilterableTables
| style="width:180px;" | BlueSpiceFilterableTables
|AT, Web, SD
| style="width:100px;" |AT, Web, SD
| class="col-green-bg" |supported
| class="col-green-bg" |supported
|Only needs filterable style attribute in wikitext. Fully screenreader accessible when inserted on a wiki page. Does not use extjs pagination.
|Only needs filterable style attribute in wikitext. Fully screenreader accessible when inserted on a wiki page. Does not use extjs pagination.
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceFilterSpecialPages
| style="width:180px;" | BlueSpiceFilterSpecialPages
|Web, SD
| style="width:100px;" |Web, SD
| class="col-green-bg" |supported
| class="col-green-bg" |supported
|Form field gets focus and it is easy to tab to the filtered links
|Form field gets focus and it is easy to tab to the filtered links
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceHideTitle
| style="width:180px;" | BlueSpiceHideTitle
|AT
| style="width:100px;" |AT
| class="col-green-bg" |supported
| class="col-green-bg" |supported
|Add behavior switch in source editing mode
|Add behavior switch in source editing mode
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceInsertCategory
| style="width:180px;" | BlueSpiceInsertCategory
|AT
| style="width:100px;" |AT
| class="col-orange-bg" |workaround
| class="col-orange-bg" |workaround
|add category in wikitext
|add category in wikitext
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceInsertFile
| style="width:180px;" | BlueSpiceInsertFile
|AT
| style="width:100px;" |AT
| class="col-orange-bg" |workaround
| class="col-orange-bg" |workaround
|add image in wikitext
|add image in wikitext
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceInsertLink
| style="width:180px;" | BlueSpiceInsertLink
|AT
| style="width:100px;" |AT
| class="col-orange-bg" |workaround
| class="col-orange-bg" |workaround
|add link in wikitext
|add link in wikitext
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceInsertMagic
| style="width:180px;" | BlueSpiceInsertMagic
|AT
| style="width:100px;" |AT
| class="col-orange-bg" |workaround
| class="col-orange-bg" |workaround
|add tag in wikitext
|add tag in wikitext
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceInterWikiLinks
| style="width:180px;" | BlueSpiceInterWikiLinks
|
| style="width:100px;" |
| class="col-red-bg" |not supported
| class="col-red-bg" |not supported
|Web:
|Web:
Line 238: Line 238:
*edit buttons in grid not selectable on focus, only on hover
*edit buttons in grid not selectable on focus, only on hover
|-
|-
| EF
| style="width:80px;" | EF
| style="" | BlueSpiceInterwikiSearch
| style="width:180px;" | BlueSpiceInterwikiSearch
|
| style="width:100px;" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceMatomoConnector
| style="width:180px;" | BlueSpiceMatomoConnector
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceMultiUpload
| style="width:180px;" | BlueSpiceMultiUpload
|AT
| style="width:100px;" |AT
| class="col-green-bg" |supported
| class="col-green-bg" |supported
|workflow from clicking upload link to uploading files with the upload dialog work in screenreader
|workflow from clicking upload link to uploading files with the upload dialog work in screenreader
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpicePageAccess
| style="width:180px;" | BlueSpicePageAccess
|AT
| style="width:100px;" |AT
| class="col-green-bg" |supported
| class="col-green-bg" |supported
|tag can be added in source editing mode
|tag can be added in source editing mode
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpicePageAssignments
| style="width:180px;" | BlueSpicePageAssignments
|AT, Web
| style="width:100px;" |AT, Web
| class="col-grey-light-bg" |partially supported
| class="col-grey-light-bg" |partially supported
|Supported:
|Supported:
Line 273: Line 273:
Web: Assignments overview list uses extjs pagination
Web: Assignments overview list uses extjs pagination
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpicePagesVisited
| style="width:180px;" | BlueSpicePagesVisited
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpicePageTemplates
| style="width:180px;" | BlueSpicePageTemplates
|AT
| style="width:100px;" |AT
| class="col-grey-light-bg" |partially supported
| class="col-grey-light-bg" |partially supported
|Page templates manager: ExtJS grid issue for screenreaders, keyboard is supported
|Page templates manager: ExtJS grid issue for screenreaders, keyboard is supported
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpicePlayer
| style="width:180px;" | BlueSpicePlayer
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpicePrivacy
| style="width:180px;" | BlueSpicePrivacy
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceQrCode
| style="width:180px;" | BlueSpiceQrCode
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceRating
| style="width:180px;" | BlueSpiceRating
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceReadConfirmation
| style="width:180px;" | BlueSpiceReadConfirmation
|Web
| style="width:100px;" |Web
|'''<span class="col-red">FAIL</span>'''   
|'''<span class="col-red">FAIL</span>'''   
(easy fix)
(easy fix)
|wrong aria role; needs alertdialog instead of alert for checkbox to get focus [[erm:25475]]
|wrong aria role; needs alertdialog instead of alert for checkbox to get focus [[erm:25475]]
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceReaders
| style="width:180px;" | BlueSpiceReaders
|Web
| style="width:100px;" |Web
|'''<span class="col-red">FAIL</span>'''
|'''<span class="col-red">FAIL</span>'''
|Ext Js pagination [[erm:25470|erm:25456]]
|Ext Js pagination [[erm:25470|erm:25456]]
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceReminder
| style="width:180px;" | BlueSpiceReminder
|Web
| style="width:100px;" |Web
|'''<span class="col-red">FAIL</span>'''
|'''<span class="col-red">FAIL</span>'''
|overlay issues
|overlay issues
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceReview
| style="width:180px;" | BlueSpiceReview
|Web
| style="width:100px;" |Web
|'''<span class="col-red">FAIL</span>'''
|'''<span class="col-red">FAIL</span>'''
|overlay issues, Ext JS grid issues [[erm:25470|erm:25456]]
|overlay issues, Ext JS grid issues [[erm:25470|erm:25456]]
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceReviewExtended
| style="width:180px;" | BlueSpiceReviewExtended
|Web
| style="width:100px;" |Web
|'''<span class="col-red">FAIL</span>'''
|'''<span class="col-red">FAIL</span>'''
|Ext JS grid issues [[erm:25470|erm:25456]]
|Ext JS grid issues [[erm:25470|erm:25456]]
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceRSSFeeder
| style="width:180px;" | BlueSpiceRSSFeeder
|
| style="width:100px;" |
|
|
|
|
|-
|-
| class="col-grey-light-bg" |n/a
| class="col-grey-light-bg" style="width:80px;" |n/a
| class="col-grey-light-bg" style="" | BlueSpiceSaferEdit
| class="col-grey-light-bg" style="width:180px;" | BlueSpiceSaferEdit
| class="col-grey-light-bg" |
| class="col-grey-light-bg" style="width:100px;" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceSignHere
| style="width:180px;" | BlueSpiceSignHere
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceSmartList
| style="width:180px;" | BlueSpiceSmartList
|AT, Web, SD
| style="width:100px;" |AT, Web, SD
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
|tag can be added in source editing mode; Output: standard html unordered list
|tag can be added in source editing mode; Output: standard html unordered list
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceSocial
| style="width:180px;" | BlueSpiceSocial
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceSocialArticleActions
| style="width:180px;" | BlueSpiceSocialArticleActions
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceSocialBlog
| style="width:180px;" | BlueSpiceSocialBlog
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceSocialComments
| style="width:180px;" | BlueSpiceSocialComments
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceSocialMicroBlog
| style="width:180px;" | BlueSpiceSocialMicroBlog
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceSocialProfile
| style="width:180px;" | BlueSpiceSocialProfile
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceSocialRating
| style="width:180px;" | BlueSpiceSocialRating
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceSocialResolve
| style="width:180px;" | BlueSpiceSocialResolve
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceSocialTags
| style="width:180px;" | BlueSpiceSocialTags
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceSocialTimelineUpdate
| style="width:180px;" | BlueSpiceSocialTimelineUpdate
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceSocialTopics
| style="width:180px;" | BlueSpiceSocialTopics
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceSocialWatch
| style="width:180px;" | BlueSpiceSocialWatch
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceSocialWikiPage
| style="width:180px;" | BlueSpiceSocialWikiPage
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceTagCloud
| style="width:180px;" | BlueSpiceTagCloud
|
| style="width:100px;" |
|'''<span class="col-blue-dark">supported</span>'''
|'''<span class="col-blue-dark">supported</span>'''
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceTagSearch
| style="width:180px;" | BlueSpiceTagSearch
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceUEModuleBookPDF
| style="width:180px;" | BlueSpiceUEModuleBookPDF
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |EF
| style="width:80px;"|EF
| style="" | BlueSpiceUEModuleDOCX
| style="width:180px;" | BlueSpiceUEModuleDOCX
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceUEModuleHTML
| style="width:180px;" | BlueSpiceUEModuleHTML
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceUEModulePDF
| style="width:180px;" | BlueSpiceUEModulePDF
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceUEModulePDFRecursive
| style="width:180px;" | BlueSpiceUEModulePDFRecursive
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceUEModulePDFSubpages
| style="width:180px;" | BlueSpiceUEModulePDFSubpages
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceUEModuleTable2Excel
| style="width:180px;" | BlueSpiceUEModuleTable2Excel
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceUniversalExport
| style="width:180px;" | BlueSpiceUniversalExport
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceUsageTracker
| style="width:180px;" | BlueSpiceUsageTracker
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceUserInfo
| style="width:180px;" | BlueSpiceUserInfo
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceUserSidebar
| style="width:180px;" | BlueSpiceUserSidebar
|AT
| style="width:100px;" |AT
|'''<span class="col-red">FAIL</span>'''  
|'''<span class="col-red">FAIL</span>'''  


Line 522: Line 522:
|edit link does not receive keyboard focus
|edit link does not receive keyboard focus
|-
|-
| CF
| style="width:80px;" | CF
|BlueSpiceUserSidebar
| style="width:180px;" |BlueSpiceUserSidebar
|Web
| style="width:100px;" |Web
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
|navigation links with collapsible heading
|navigation links with collapsible heading
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceVisualDiff
| style="width:180px;" | BlueSpiceVisualDiff
|Web
| style="width:100px;" |Web
| class="col-orange-bg" |'''workaround'''
| class="col-orange-bg" |'''workaround'''
|use classic diff view
|use classic diff view
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceWatchList
| style="width:180px;" | BlueSpiceWatchList
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceWebDAVClientIntegration
| style="width:180px;" | BlueSpiceWebDAVClientIntegration
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceWebDAVMinorSave
| style="width:180px;" | BlueSpiceWebDAVMinorSave
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | BlueSpiceWhoIsOnline
| style="width:180px;" | BlueSpiceWhoIsOnline
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | BlueSpiceWikiExplorer
| style="width:180px;" | BlueSpiceWikiExplorer
|Web
| style="width:100px;" |Web
|'''<span class="col-red">FAIL</span>'''
|'''<span class="col-red">FAIL</span>'''
|ExtJS pagination [[erm:25470|erm:25456]]
|ExtJS pagination [[erm:25470|erm:25456]]
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | Bootstrap
| style="width:180px;" | Bootstrap
|AT, Web, SD
| style="width:100px;" |AT, Web, SD
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>''' (however, individual implementations need to be tested individually)
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>''' (however, individual implementations need to be tested individually)
|Interactive elements are implemented with aria-roles. High-contrast requirements and keyboard access need to be tested during implementation.
|Interactive elements are implemented with aria-roles. High-contrast requirements and keyboard access need to be tested during implementation.
Line 572: Line 572:
[https://getbootstrap.com/docs/5.0/getting-started/accessibility/ Bootstrap accessibility statement]
[https://getbootstrap.com/docs/5.0/getting-started/accessibility/ Bootstrap accessibility statement]
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | CategoryTree
| style="width:180px;" | CategoryTree
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | Cite
| style="width:180px;" | Cite
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | CiteThisPage
| style="width:180px;" | CiteThisPage
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | CodeEditor
| style="width:180px;" | CodeEditor
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | ConfirmAccount
| style="width:180px;" | ConfirmAccount
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | ConfirmEdit
| style="width:180px;" | ConfirmEdit
|
| style="width:100px;" |
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''


Line 610: Line 610:
|Note: This extension allows to user various CAPTCHA techniques. To comply, an accessible captchas (e.g. ReCaptcha or hCaptcha) would have to be implemented and techniques [https://www.w3.org/WAI/WCAG21/Techniques/general/G143.html G143] AND [https://www.w3.org/WAI/WCAG21/Techniques/general/G144.html G144] need to be applied.
|Note: This extension allows to user various CAPTCHA techniques. To comply, an accessible captchas (e.g. ReCaptcha or hCaptcha) would have to be implemented and techniques [https://www.w3.org/WAI/WCAG21/Techniques/general/G143.html G143] AND [https://www.w3.org/WAI/WCAG21/Techniques/general/G144.html G144] need to be applied.
|-
|-
|EF
| style="width:80px;" |EF
| style="" | ContentTransfer
| style="width:180px;" | ContentTransfer
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | CookieWarning
| style="width:180px;" | CookieWarning
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | DrawioEditor
| style="width:180px;" | DrawioEditor
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | Duplicator
| style="width:180px;" | Duplicator
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | DynamicPageList3
| style="width:180px;" | DynamicPageList3
|AT, Web, SD
| style="width:100px;" |AT, Web, SD
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
|text-based edit functionality, output formats can be created in accessible formats
|text-based edit functionality, output formats can be created in accessible formats
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | Echo
| style="width:180px;" | Echo
|
| style="width:100px;" |
|
|
|
|
|-
|-
| class="col-grey-light-bg" |n/a
| class="col-grey-light-bg" style="width:80px;" |n/a
| class="col-grey-light-bg" style="" | EditNotify
| class="col-grey-light-bg" style="width:180px;" | EditNotify
|
| style="width:100px;" |
|
|
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | EmbedVideo
| style="width:180px;" | EmbedVideo
|
| style="width:100px;" |
|
|
|
|
|-
|-
| class="col-grey-light-bg" |n/a
| class="col-grey-light-bg" style="width:80px;" |n/a
| class="col-grey-light-bg" style="" | External Data
| class="col-grey-light-bg" style="width:180px;" | External Data
|
| style="width:100px;" |
|
|
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | FlaggedRevs
| style="width:180px;" | FlaggedRevs
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | FlexiSkin
| style="width:180px;" | FlexiSkin
|AT
| style="width:100px;" |AT
|'''FAIL'''
|'''FAIL'''
(easy fix)
(easy fix)
Line 679: Line 679:
No screen reader testing, since here you set the color scheme and fonts for the skin. Vision seems to be a requirement to accomplish this.
No screen reader testing, since here you set the color scheme and fonts for the skin. Vision seems to be a requirement to accomplish this.
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | Gadgets
| style="width:180px;" | Gadgets
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | Header Tabs
| style="width:180px;" | Header Tabs
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | HitCounters
| style="width:180px;" | HitCounters
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | ImageMap
| style="width:180px;" | ImageMap
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | ImageMapEdit
| style="width:180px;" | ImageMapEdit
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | InputBox
| style="width:180px;" | InputBox
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | InsertTemplate
| style="width:180px;" | InsertTemplate
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | Interwiki
| style="width:180px;" | Interwiki
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | InviteSignup
| style="width:180px;" | InviteSignup
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | LatexRenderer
| style="width:180px;" | LatexRenderer
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | Lingo
| style="width:180px;" | Lingo
|AT, Web, SD
| style="width:100px;" |AT, Web, SD
| class="col-green-bg" |
| class="col-green-bg" |
supported
supported
Line 750: Line 750:
|'''<span class="col-blue-dark">supported</span>''': Extension "Lingo" creates definition lists. When a word from the definition list is used on a wiki page, the definition is listed at the end of the page. ('''Note: the (through css) hidden list at the end of a page does not have a heading)'''
|'''<span class="col-blue-dark">supported</span>''': Extension "Lingo" creates definition lists. When a word from the definition list is used on a wiki page, the definition is listed at the end of the page. ('''Note: the (through css) hidden list at the end of a page does not have a heading)'''
|-
|-
| class="col-grey-light-bg" |n/a
| class="col-grey-light-bg" style="width:80px;" |n/a
| class="col-grey-light-bg" style="" | LocalisationUpdate
| class="col-grey-light-bg" style="width:180px;" | LocalisationUpdate
|
| style="width:100px;" |
|
|
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | LoginNotify
| style="width:180px;" | LoginNotify
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | Maps
| style="width:180px;" | Maps
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | Math
| style="width:180px;" | Math
|AT, Web
| style="width:100px;" |AT, Web
|'''<span class="col-red">FAIL</span>'''
|'''<span class="col-red">FAIL</span>'''
|'''<span class="col-red">FAIL</span>'''  is okay here, this type of image output  is simply not supported by screenreaders. ''workaround: maybe MathML-based syntax?''
|'''<span class="col-red">FAIL</span>'''  is okay here, this type of image output  is simply not supported by screenreaders. ''workaround: maybe MathML-based syntax?''
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | MediaWiki
| style="width:180px;" | MediaWiki
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | MergeArticles
| style="width:180px;" | MergeArticles
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | MultimediaViewer
| style="width:180px;" | MultimediaViewer
|
| style="width:100px;" |
|
|
|
|
|-
|-
| class="col-grey-light-bg" |n/a
| class="col-grey-light-bg" style="width:80px;" |n/a
| class="col-grey-light-bg" style="" | NativeSvgHandler
| class="col-grey-light-bg" style="width:180px;" | NativeSvgHandler
| class="col-grey-light-bg" |
| class="col-grey-light-bg" style="width:100px;" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
|-
|-
| class="col-grey-light-bg" |n/a
| class="col-grey-light-bg" style="width:80px;" |n/a
| class="col-grey-light-bg" style="" | NSFileRepo
| class="col-grey-light-bg" style="width:180px;" | NSFileRepo
| class="col-grey-light-bg" |
| class="col-grey-light-bg" style="width:100px;" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | Nuke
| style="width:180px;" | Nuke
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | Page Forms
| style="width:180px;" | Page Forms
|AT
| style="width:100px;" |AT
| class="col-green-bg" |supported
| class="col-green-bg" |supported
|forms are created using wikitext
|forms are created using wikitext
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | Page Forms
| style="width:180px;" | Page Forms
|Web
| style="width:100px;" |Web
| class="col-red-bg" |not supported
| class="col-red-bg" |not supported
|generated forms neither create correct tabindex nor label/field associations
|generated forms neither create correct tabindex nor label/field associations
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | Page Schemas
| style="width:180px;" | Page Schemas
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | PageImages
| style="width:180px;" | PageImages
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | ParserFunctions
| style="width:180px;" | ParserFunctions
|AT
| style="width:100px;" |AT
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
|wikitext
|wikitext
|-
|-
| class="col-grey-light-bg" |n/a
| class="col-grey-light-bg" style="width:80px;" |n/a
| class="col-grey-light-bg" style="" | ParserHooks
| class="col-grey-light-bg" style="width:180px;" | ParserHooks
| class="col-grey-light-bg" |
| class="col-grey-light-bg" style="width:100px;" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
|-
|-
| class="col-grey-light-bg" |n/a
| class="col-grey-light-bg" style="width:80px;" |n/a
| class="col-grey-light-bg" style="" | PdfHandler
| class="col-grey-light-bg" style="width:180px;" | PdfHandler
| class="col-grey-light-bg" |
| class="col-grey-light-bg" style="width:100px;" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
|-
|-
| class="col-grey-light-bg" |n/a
| class="col-grey-light-bg" style="width:80px;" |n/a
| class="col-grey-light-bg" style="" | PluggableAuth
| class="col-grey-light-bg" style="width:180px;" | PluggableAuth
| class="col-grey-light-bg" |
| class="col-grey-light-bg" style="width:100px;" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
|-
|-
|EF
| style="width:80px;" |EF
| style="" | Poem
| style="width:180px;" | Poem
|AT
| style="width:100px;" |AT
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
|tag is added in source view. Only applies some text indent and line breaks in the background. Produces standard html
|tag is added in source view. Only applies some text indent and line breaks in the background. Produces standard html
|-
|-
|EF
| style="width:80px;" |EF
| style="" | Popups
| style="width:180px;" | Popups
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | Quiz
| style="width:180px;" | Quiz
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | Renameuser
| style="width:180px;" | Renameuser
|AT
| style="width:100px;" |AT
|'''<span class="col-red">FAIL</span>'''
|'''<span class="col-red">FAIL</span>'''
|needs aria labels, screenreader doesn't read them out
|needs aria labels, screenreader doesn't read them out
|-
|-
| | CF
| style="width:80px;"| CF
| style="" | Replace Text
| style="width:180px;" | Replace Text
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | RSS
| style="width:180px;" | RSS
|
| style="width:100px;" |
|
|
|
|
|-
|-
| class="col-grey-light-bg" |n/a
| class="col-grey-light-bg" style="width:80px;" |n/a
| class="col-grey-light-bg" style="" | Scribunto
| class="col-grey-light-bg" style="width:180px;" | Scribunto
| class="col-grey-light-bg" |
| class="col-grey-light-bg" style="width:100px;" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
|-
|-
|EF
| style="width:80px;" |EF
| style="" | Semantic Compound Queries
| style="width:180px;" | Semantic Compound Queries
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | Semantic Extra Special Properties
| style="width:180px;" | Semantic Extra Special Properties
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | Semantic Internal Objects
| style="width:180px;" | Semantic Internal Objects
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | Semantic MediaWiki
| style="width:180px;" | Semantic MediaWiki
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | Semantic Result Formats
| style="width:180px;" | Semantic Result Formats
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | Semantic Scribunto
| style="width:180px;" | Semantic Scribunto
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | SyntaxHighlight
| style="width:180px;" | SyntaxHighlight
|Web, SD
| style="width:100px;" |Web, SD
|'''<span class="col-red">FAIL</span>'''
|'''<span class="col-red">FAIL</span>'''
|No announcement of switching to code-language, needs some aria-described-by
|No announcement of switching to code-language, needs some aria-described-by
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | SyntaxHighlight
| style="width:180px;" | SyntaxHighlight
|AT
| style="width:100px;" |AT
| class="col-orange-bg" |'''workaround'''
| class="col-orange-bg" |'''workaround'''
|keyboard trap in textarea Code ([https://www.mediawiki.org/w/index.php?title=Topic:Wdfwjsqfal0jeaox&topic_showPostId=wdgda0v42x2a02af see mw discussion]).
|keyboard trap in textarea Code ([https://www.mediawiki.org/w/index.php?title=Topic:Wdfwjsqfal0jeaox&topic_showPostId=wdgda0v42x2a02af see mw discussion]).
'''workaround:''' Source code editing
'''workaround:''' Source code editing
|-
|-
|EF
| style="width:80px;" |EF
| style="" | TemplateData
| style="width:180px;" | TemplateData
|
| style="width:100px;" |
|
|
|
|
|-
|-
|EF
| style="width:80px;" |EF
| style="" | TemplateStyles
| style="width:180px;" | TemplateStyles
|
| style="width:100px;" |
|
|
|
|
|-
|-
| class="col-grey-light-bg" |n/a
| class="col-grey-light-bg" style="width:80px;" |n/a
| class="col-grey-light-bg" style="" | TextExtracts
| class="col-grey-light-bg" style="width:180px;" | TextExtracts
| class="col-grey-light-bg" |
| class="col-grey-light-bg" style="width:100px;" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | TitleBlacklist
| style="width:180px;" | TitleBlacklist
|AT
| style="width:100px;" |AT
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
|wikitext
|wikitext
|-
|-
| class="col-grey-light-bg" |n/a
| class="col-grey-light-bg" style="width:80px;" |n/a
| class="col-grey-light-bg" style="" | TitleKey
| class="col-grey-light-bg" style="width:180px;" | TitleKey
| class="col-grey-light-bg" |
| class="col-grey-light-bg" style="width:100px;" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | TwoColConflict
| style="width:180px;" | TwoColConflict
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | UrlGetParameters
| style="width:180px;" | UrlGetParameters
|AT
| style="width:100px;" |AT
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
|source code editing; text-based
|source code editing; text-based
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | UserFunctions
| style="width:180px;" | UserFunctions
|AT
| style="width:100px;" |AT
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
|source code editing; text-based
|source code editing; text-based
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | UserMerge
| style="width:180px;" | UserMerge
|
| style="width:100px;" |
|
|
|
|
|-
|-
| class="col-grey-light-bg" |n/a
| class="col-grey-light-bg" style="width:80px;" |n/a
| class="col-grey-light-bg" style="" | Validator
| class="col-grey-light-bg" style="width:180px;" | Validator
| class="col-grey-light-bg" |
| class="col-grey-light-bg" style="width:100px;" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
|-
|-
| class="col-grey-light-bg" |n/a
| class="col-grey-light-bg" style="width:80px;" |n/a
| class="col-grey-light-bg" style="" | Variables
| class="col-grey-light-bg" style="width:180px;" | Variables
| class="col-grey-light-bg" |
| class="col-grey-light-bg" style="width:100px;" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
| class="col-grey-light-bg" |
|-
|-
|CF
| style="width:80px;" |CF
| |VisualEditor
| style="width:180px;"|VisualEditor
|AT
| style="width:100px;" |AT
| class="col-orange-bg" |AT:
| class="col-orange-bg" |AT:
partially supported
partially supported
Line 1,025: Line 1,025:
*icons not visible in Windows High Contrast mode ([https://phabricator.wikimedia.org/T244424 T244424])  -> [[Technik/Accessibility/Extensions#VisualEditor|See workarounds]]
*icons not visible in Windows High Contrast mode ([https://phabricator.wikimedia.org/T244424 T244424])  -> [[Technik/Accessibility/Extensions#VisualEditor|See workarounds]]
|-
|-
|EF
| style="width:80px;" |EF
| style="" | WebDAV
| style="width:180px;" | WebDAV
|
| style="width:100px;" |
|
|
|
|
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | Widgets
| style="width:180px;" | Widgets
| AT
| style="width:100px;" | AT
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
| class="col-green-bg" |'''<span class="col-blue-dark">supported</span>'''
|pure text-based functionality that allows insering a widget on a page. If a website includes a particular widget, the widget itself has to be tested for WCAG.
|pure text-based functionality that allows insering a widget on a page. If a website includes a particular widget, the widget itself has to be tested for WCAG.
|-
|-
| |CF
| style="width:80px;"|CF
| style="" | WikiEditor
| style="width:180px;" | WikiEditor
|AT
| style="width:100px;" |AT
| class="col-orange-bg" |'''<span class="col-blue-dark">supported</span>''' (partial)
| class="col-orange-bg" |'''<span class="col-blue-dark">supported</span>''' (partial)
|Generally same as VE.
|Generally same as VE.
Line 1,046: Line 1,046:
|}
|}


===Administrative users===
===Adthumbstrative users===
{| class="wikitable sortable contenttable" style="width:100%;"
{| class="wikitable sortable contenttable" style="width:100%;"
!Type
!Type
Line 1,574: Line 1,574:
In Windows high-contrast system settings, the icons of the toolbar are not visible, since they are implemented as black background images:
In Windows high-contrast system settings, the icons of the toolbar are not visible, since they are implemented as black background images:


[[Datei:high-contrast-black-ve.png|alternativtext=Menu icons in VisualEditor not visible in black high-contrast mode.|zentriert|mini|750x750px|Menu icons in VisualEditor not visible in black high-contrast mode.]]
[[Datei:high-contrast-black-ve.png|alt=Menu icons in VisualEditor not visible in black high-contrast mode.|center|thumb|750x750px|Menu icons in VisualEditor not visible in black high-contrast mode.]]


'''workaround'''
'''workaround'''


While using BlueSpice, turn off High Contrast mode and switch to the Color filter setting instead. Here, you also get a hight contrast setting in black, but the Visual Editor toolbar is fully visible:
While using BlueSpice, turn off High Contrast mode and switch to the Color filter setting instead. Here, you also get a hight contrast setting in black, but the Visual Editor toolbar is fully visible:
[[Datei:windows-colorfilter.png|alternativtext=Color filter in Windows 10 settings|zentriert|mini|750x750px|Color filter in Windows 10 settings]]
[[Datei:windows-colorfilter.png|alt=Color filter in Windows 10 settings|center|thumb|750x750px|Color filter in Windows 10 settings]]


'''Custom css for users in group MediaWiki:Group-Accessibilitygroup.css'''
'''Custom css for users in group MediaWiki:Group-Accessibilitygroup.css'''

Revision as of 12:47, 12 April 2022

Overview

General users (readers, editors, reviewers)

CF = Core functionality, EF= Extended functionality, n/a= not applicable; AT=Authoring tool, Web=View mode, SD=Support docs (Helpdesk)

Type Name Type WCAG Accessibility notes
CF Arrays supported parser functions - entered as text
EF BlueSpiceAbout Web partially supported Focus does not stay in iframe after accepting privacy policy. (Ticket: erm:25216)

Default loads a page from bluespice.com which has non-compliant content (video without captions). The default page is hard to navigate because of cookie consent menu and focusable mobile menu.

  • Link can be deactivated in main menu for all users and can be ignored by admin users in the management menu.
  • Extension can be deactivated for on-premise installations or custom content can be loaded in iframe (customer is responsible for loading accessible content).
CF BlueSpiceArticleInfo AT, Web, SD partially supported
  • Extjs: Pagination in grids not announcing button types and spinbutton value
EF BlueSpiceArticlePreviewCapture Web,

SD

partially supported
  • Extjs: Pagination in grids not announcing button types and spinbutton value
CF BlueSpiceAuthors Web,

SD

partially supported
  • Extjs: Pagination in grids not announcing button types and spinbutton value
CF BlueSpiceAvatars
CF BlueSpiceBookshelf
CF BlueSpiceDiscovery AT, Web supported skip navigation, aria roles and labels for screenreaders, fully keyboard accessible
CF BlueSpiceCategoryCheck AT supported category announcements in save dialog (fixed in erm:25232)
CF BlueSpiceCategoryManager AT, Web partially supported supported: tabbing through tabular data

not supported:

  • Extjs: Pagination in grids not announcing button types and spinbutton value
  • parent-child relationships not announced
  • actions-buttons only visible and interactive on mouse-hover

workaround: categories can also be managed directly on the category pages themselves. The parent-child relationship of categories is also always listed on the categories pages

EF BlueSpiceChecklist AT, Web, SD supported edit in source mode; output standard html list
CLDCF BlueSpiceCloudClient
CF BlueSpiceContextMenu Web, SD workaround allows to open a context menu that executes actions on the target page without actually going to the target page.

workaround: Simply execute the actions directly on the target page or use the "original" links in the interface

EF BlueSpiceCountThings AT, Web, SD supported edit in source mode; output: standard html table
CF BlueSpiceCustomMenu AT, Web, SD supported
  • AT: Authoring in Wikitext
  • Web: Simple links lists with accessible headings
EF BlueSpiceDashboards
EF BlueSpiceEmoticons AT, Web supported Fixed in erm:25160
CF BlueSpiceExpiry AT partially supported
  • Simple dialog to add/edit expiration date
  • Expired articles list: extjs pagination issue
CF BlueSpiceExpiry Web, SD not supported page does not indicate on load that it is expired
CF BlueSpiceExportTables supported export menu is keyboard and screenreader accessible
CF BlueSpiceExtendedFilelist AT, Web, SD workaround
  • Extjs: Pagination in grids not announcing button types and spinbutton value

workaround: Special:Files uses standard html results table and accessible search form

CF BlueSpiceExtendedSearch Web,

SD

workaround Problems with grid buttons and pagination. erm:25456

workaround: Special:Search uses standard html results table and accessible search form

EF BlueSpiceExtendedStatistics Web not supported some stats only available as png
CF BlueSpiceFilterableTables AT, Web, SD supported Only needs filterable style attribute in wikitext. Fully screenreader accessible when inserted on a wiki page. Does not use extjs pagination.
CF BlueSpiceFilterSpecialPages Web, SD supported Form field gets focus and it is easy to tab to the filtered links
CF BlueSpiceHideTitle AT supported Add behavior switch in source editing mode
EF BlueSpiceInsertCategory AT workaround add category in wikitext
EF BlueSpiceInsertFile AT workaround add image in wikitext
EF BlueSpiceInsertLink AT workaround add link in wikitext
EF BlueSpiceInsertMagic AT workaround add tag in wikitext
EF BlueSpiceInterWikiLinks not supported Web:
  • ext-js pagination issues

AT: setting up interwiki links with keyboard/screenreader not supported

  • ext-js pagination issues
  • button labels not announced
  • edit buttons in grid not selectable on focus, only on hover
EF BlueSpiceInterwikiSearch
EF BlueSpiceMatomoConnector
CF BlueSpiceMultiUpload AT supported workflow from clicking upload link to uploading files with the upload dialog work in screenreader
CF BlueSpicePageAccess AT supported tag can be added in source editing mode
CF BlueSpicePageAssignments AT, Web partially supported Supported:

AT: Assignments can be added/edited on a wiki page

Not supported:

Web: Assignments overview list uses extjs pagination

EF BlueSpicePagesVisited
CF BlueSpicePageTemplates AT partially supported Page templates manager: ExtJS grid issue for screenreaders, keyboard is supported
EF BlueSpicePlayer
CF BlueSpicePrivacy
EF BlueSpiceQrCode
EF BlueSpiceRating
CF BlueSpiceReadConfirmation Web FAIL

(easy fix)

wrong aria role; needs alertdialog instead of alert for checkbox to get focus erm:25475
CF BlueSpiceReaders Web FAIL Ext Js pagination erm:25456
CF BlueSpiceReminder Web FAIL overlay issues
CF BlueSpiceReview Web FAIL overlay issues, Ext JS grid issues erm:25456
CF BlueSpiceReviewExtended Web FAIL Ext JS grid issues erm:25456
CF BlueSpiceRSSFeeder
n/a BlueSpiceSaferEdit
EF BlueSpiceSignHere
CF BlueSpiceSmartList AT, Web, SD supported tag can be added in source editing mode; Output: standard html unordered list
CF BlueSpiceSocial
CF BlueSpiceSocialArticleActions
CF BlueSpiceSocialBlog
CF BlueSpiceSocialComments
CF BlueSpiceSocialMicroBlog
CF BlueSpiceSocialProfile
CF BlueSpiceSocialRating
CF BlueSpiceSocialResolve
CF BlueSpiceSocialTags
CF BlueSpiceSocialTimelineUpdate
CF BlueSpiceSocialTopics
CF BlueSpiceSocialWatch
CF BlueSpiceSocialWikiPage
CF BlueSpiceTagCloud supported
CF BlueSpiceTagSearch
CF BlueSpiceUEModuleBookPDF
EF BlueSpiceUEModuleDOCX
CF BlueSpiceUEModuleHTML
CF BlueSpiceUEModulePDF
CF BlueSpiceUEModulePDFRecursive
CF BlueSpiceUEModulePDFSubpages
CF BlueSpiceUEModuleTable2Excel
CF BlueSpiceUniversalExport
CF BlueSpiceUsageTracker
CF BlueSpiceUserInfo
CF BlueSpiceUserSidebar AT FAIL

erm:25233

edit link does not receive keyboard focus
CF BlueSpiceUserSidebar Web supported navigation links with collapsible heading
EF BlueSpiceVisualDiff Web workaround use classic diff view
EF BlueSpiceWatchList
EF BlueSpiceWebDAVClientIntegration
EF BlueSpiceWebDAVMinorSave
EF BlueSpiceWhoIsOnline
CF BlueSpiceWikiExplorer Web FAIL ExtJS pagination erm:25456
CF Bootstrap AT, Web, SD supported (however, individual implementations need to be tested individually) Interactive elements are implemented with aria-roles. High-contrast requirements and keyboard access need to be tested during implementation.

Bootstrap accessibility statement

CF CategoryTree
CF Cite
CF CiteThisPage
CF CodeEditor
CF ConfirmAccount
CF ConfirmEdit supported

1.1.1

Note: This extension allows to user various CAPTCHA techniques. To comply, an accessible captchas (e.g. ReCaptcha or hCaptcha) would have to be implemented and techniques G143 AND G144 need to be applied.
EF ContentTransfer
CF CookieWarning
EF DrawioEditor
EF Duplicator
CF DynamicPageList3 AT, Web, SD supported text-based edit functionality, output formats can be created in accessible formats
CF Echo
n/a EditNotify
CF EmbedVideo
n/a External Data
CF FlaggedRevs
CF FlexiSkin AT FAIL

(easy fix)

Small keyboard access issues erm:25223

No screen reader testing, since here you set the color scheme and fonts for the skin. Vision seems to be a requirement to accomplish this.

CF Gadgets
EF Header Tabs
CF HitCounters
EF ImageMap
EF ImageMapEdit
CF InputBox
EF InsertTemplate
CF Interwiki
CF InviteSignup
EF LatexRenderer
CF Lingo AT, Web, SD

supported

AAA

3.1.3

supported: Extension "Lingo" creates definition lists. When a word from the definition list is used on a wiki page, the definition is listed at the end of the page. (Note: the (through css) hidden list at the end of a page does not have a heading)
n/a LocalisationUpdate
CF LoginNotify
EF Maps
CF Math AT, Web FAIL FAIL is okay here, this type of image output is simply not supported by screenreaders. workaround: maybe MathML-based syntax?
CF MediaWiki
EF MergeArticles
EF MultimediaViewer
n/a NativeSvgHandler
n/a NSFileRepo
CF Nuke
CF Page Forms AT supported forms are created using wikitext
CF Page Forms Web not supported generated forms neither create correct tabindex nor label/field associations
CF Page Schemas
EF PageImages
CF ParserFunctions AT supported wikitext
n/a ParserHooks
n/a PdfHandler
n/a PluggableAuth
EF Poem AT supported tag is added in source view. Only applies some text indent and line breaks in the background. Produces standard html
EF Popups
EF Quiz
CF Renameuser AT FAIL needs aria labels, screenreader doesn't read them out
CF Replace Text
CF RSS
n/a Scribunto
EF Semantic Compound Queries
EF Semantic Extra Special Properties
EF Semantic Internal Objects
EF Semantic MediaWiki
EF Semantic Result Formats
EF Semantic Scribunto
CF SyntaxHighlight Web, SD FAIL No announcement of switching to code-language, needs some aria-described-by
CF SyntaxHighlight AT workaround keyboard trap in textarea Code (see mw discussion).

workaround: Source code editing

EF TemplateData
EF TemplateStyles
n/a TextExtracts
CF TitleBlacklist AT supported wikitext
n/a TitleKey
CF TwoColConflict
CF UrlGetParameters AT supported source code editing; text-based
CF UserFunctions AT supported source code editing; text-based
CF UserMerge
n/a Validator
n/a Variables
CF VisualEditor AT AT:

partially supported

Partially supported
EF WebDAV
CF Widgets AT supported pure text-based functionality that allows insering a widget on a page. If a website includes a particular widget, the widget itself has to be tested for WCAG.
CF WikiEditor AT supported (partial) Generally same as VE.

(Difference to VE in screen reader mode: it reads "blank" for empty lines - VE reads "graphic")

Adthumbstrative users

Type Name Type WCAG Accessibility notes
n/a Auth remoteuser n/a
CF BlueSpiceCategoryManager AT, Web partially supported supported: tabbing through tabular data

not supported:

  • Extjs: Pagination in grids not announcing button types and spinbutton value
  • parent-child relationships not announced
  • actions-buttons only visible and interactive on mouse-hover

workaround: categories can also be managed directly on the category pages themselves. The parent-child relationship of categories is also always listed on the categories pages

n/a BlueSpiceCloudClient
CF BlueSpiceConfigManager AT, Web

partially supported

supported:

form fields and tooltips are announced correctly and can be saved

issues:

  • search field needs aria-role "search" (2.1.1)
  • Save-button does not get focus after making form changes. (2.1
EF BlueSpiceDashboards
n/a BlueSpiceDistributionConnector
n/a BlueSpiceDrawioConnector
n/a BlueSpiceEchoConnector
n/a BlueSpiceEditNotifyConnector
EF BlueSpiceExtendedStatistics
n/a BlueSpiceFoundation
CF BlueSpiceGroupManager AT, Web

not supported

  • buttons have no labels
  • selected checkboxes are not indicated
  • Ext js paginatetoolbar
EF BlueSpiceNamespaceCSS AT not supported Note: this page is limited to admin users
  • text area to enter css does not allow to tab out of it to save the page. Mouse required.
CF BlueSpiceNamespaceManager AT Note: this page is limited to admin users
  • Extjs: Pagination in grids not announcing button types and spinbutton value
n/a BlueSpiceNSFileRepoConnector
CF BlueSpicePageAccess AT supported tag can be added in source editing mode
CF BlueSpicePageTemplates AT FAIL selecting template during page creation: No group heading for templates to jump to; Namespace heading is h3, h2 missing on page;

Page templates manager: ExtJS grid issues erm:25456

CF BlueSpicePermissionManager AT FAIL Ext JS grid issues erm:25456
CF BlueSpicePrivacy
CF BlueSpiceReaders Web FAIL Ext Js pagination erm:25456
CF BlueSpiceReminder Web FAIL overlay issues
CF BlueSpiceRSSFeeder
n/a BlueSpiceSMWConnector
CF BlueSpiceUsageTracker
CF BlueSpiceUserInfo
CF BlueSpiceUserManager FAIL JS grid buttons, pagination
n/a BlueSpiceUserMergeConnector
n/a BlueSpiceVisualEditorConnector
EF BlueSpiceWebDAVClientIntegration
EF BlueSpiceWebDAVMinorSave
EF BlueSpiceWikiFarm
CF ConfirmAccount
CF ConfirmEdit supported

1.1.1

Note: This extension allows to use various CAPTCHA techniques. To comply, an accessible captchas (e.g. ReCaptcha or hCaptcha) would have to be implemented and techniques G143 AND G144 need to be applied.
n/a EditNotify
n/a External Data
n/a ExtJSBase
CF FlexiSkin AT FAIL

(easy fix)

Small keyboard access issues erm:25223

No screen reader testing, since here you set the color scheme and fonts for the skin. Vision seems to be a requirement to accomplish this.

CF Gadgets
CF HitCounters
CF Interwiki
CF InviteSignup
EF LDAP Authorization
EF LDAPAuthentication2
EF LDAPGroups
EF LDAPProvider
EF LDAPSyncAll
EF LDAPUserInfo
n/a LocalisationUpdate
CF LoginNotify
CF MediaWiki
EF MultimediaViewer
n/a NativeSvgHandler
n/a NSFileRepo
CF Nuke
n/a OATHAuth
n/a OOJSPlus
n/a OpenID Connect
n/a OpenLayers
CF Page Schemas
n/a ParserHooks
n/a PluggableAuth
CF Renameuser AT FAIL needs aria labels, screenreader doesn't read them out
n/a Scribunto
EF Semantic Compound Queries
EF Semantic Extra Special Properties
EF Semantic Internal Objects
EF Semantic MediaWiki
EF Semantic Result Formats
EF Semantic Scribunto
n/a SimpleSAMLphp
CF SpamBlacklist AT supported wikitext
CF TitleBlacklist AT supported wikitext
n/a TitleKey
CF TwoColConflict
CF UserMerge
n/a Validator
n/a Variables
n/a WebAuthn
EF WebDAV
CF Widgets AT supported pure text-based functionality that allows insering a widget on a page. If a website includes a particular widget, the widget itself has to be tested for WCAG.


Recurring issues

  • ExtJS grid ticket - (button labels, pagination)
  • QM / book overlays: erm:25470

Core functionality

VisualEditor

High contrast

In Windows high-contrast system settings, the icons of the toolbar are not visible, since they are implemented as black background images:

alt=Menu icons in VisualEditor not visible in black high-contrast mode.|center|thumb|750x750px|Menu icons in VisualEditor not visible in black high-contrast mode.

workaround

While using BlueSpice, turn off High Contrast mode and switch to the Color filter setting instead. Here, you also get a hight contrast setting in black, but the Visual Editor toolbar is fully visible: alt=Color filter in Windows 10 settings|center|thumb|750x750px|Color filter in Windows 10 settings

Custom css for users in group MediaWiki:Group-Accessibilitygroup.css

The colors can be fully customized for a specific user group in the wiki

Google Chrome high contrast extension

The high contrast extension recommended in the Google Chrome help centerdoes not work in edit mode, but can be used for browsing a BlueSpice wiki page.

Keyboard navigation

workaround

All functionality of VisualEditor can be entered in source editing mode, which is a standard way of editing a wiki page. The save dialog can be activated via keyboard alt+shift+s. Available Shortcut keys can be viewed with Ctrl+/

Note 3.2: Currently there is no easy way to switch to source editing mode, it is important that the drop-down menu for the edit button in the main toolbar is fixed.

Extended functionality

TemplateData

Does not support

  1. dialog window does not recognize language
  2. no tabbing to hidden fields (solution: user task: mark all non-required fields as suggested to be shown instantly.



To submit feedback about this documentation, visit our community forum.

Discussions