This patch improves screenreader support by applying some basic
rules and improving the OOjs UI usage. Things done here:
- make use of 'aria-label' attribute to label interactive buttons
- use connect method on help button to allow keyboard interaction
- give hint on help button that it opens a dialog
- communicate state of autoexpand button
- add attributes to make screenreaders understand the accordion
mechanism if the slider widget
See:
https://www.w3.org/TR/wai-aria-practices/#buttonhttps://www.w3.org/TR/wai-aria-practices/#accordion
Bug: T165489
Change-Id: I7a174e5971a751ec54d4d5115d5441f0a577c103
Sometimes $oldRev can be null (e.g. not a Revision, but
maybe is a missing revision), and also not sure we can be
certain about $newRev being a Revision object.
Bug: T167359
Change-Id: I4c483d711f2ec07a918c708a473aff1b2c150cf5
Until the sliding mechanism has full support to work with screen-
readers the tool will be disabled for them to avoid unnecessary
confusion.
Bug: T165489
Change-Id: Id0da2c891040ac7e6f1b6ce5ba5f65b727d3cb07
This patch fixes issues with the RevisonSlider assuming that the higher
revision id belongs to the newer revision. Min/Max methods to decide what
the diff and what the oldid is are removed and the usage of methods is
adjusted accordingly.
Also the test for switchover pointers is removed since this will not work
with the patch.
Bug: T164455
Change-Id: If5d9cbb8ebd872aee376d249942e6881c8edb984
Previously, pressing ESC aborted the dragging of the slider, but this
was broken by I64cca7a7547310bee64ad95f500b722c362bbb45, which refactored
uses of a variable that was previously a closure into two separate functions.
Bug: T140965
Change-Id: I6b7bc383128d8c7d99da469706bff881f1329cd9
This currently just works, because the currently used backend are
global variables. Once the main config uses a more scoped/focused
backend, such as a HashConfig or a database-based config, requesting
extension configurations from it will not work anymore.
Therefore, use the extensions Config object to request configuration
options for the extension.
Change-Id: Iea02d3c284f9a0e12abff33e3624dce9585ab51c
- works with the setting var to switch help text
- minified new SVGs with svgo
- adjusted new SVGs dimensions
- updated accompanying text
Bug: T162773
Change-Id: I3da66a006977fa6b1999686ba4f415e891f4ea02
This will make the pointers work on touch devices. The events responsible
for the touch drag and move are converted to mouse actions that will
trigger the draggable.
When using Chrome on touch devices and zooming the offset of elements
calculated by jQuery is wrong. There is a workaround that seems to work
and also seems to not break behavior with normal browsers and on other
devices. Since this only seems to be a problem in Chrome the fix will
only applied to Chrome browsers to avoid performance los on others.
Also introduced a script file for static utility methods.
Bug: T164249
Change-Id: I245f77eb836afded249f3b5ebb7129dab08d0017