This page is about adding Keyboard shortcuts for mouse clicks actions. Related but also to be added: item4139-Add-a-virtual-keyboard

Steps

  • Determine if this would be a good idea Yes. Done.
  • Cypht.org used for Tiki Webmail already has shortcuts, so try to align with this and avoid conflicts. AFAIK, Cypht does not use an external lib
  • Evaluate all the possible libraries: started. Please do more research and add options and notes below
    • Doesn't need to be as elaborate as what we did for slideshow frameworks but needs to be more than "oh looks like this lib will work, let's use this"
  • Implement the solution (presumably one of the libs)
  • Progressively deploy everywhere in Tiki (see list below)

Where to add

Other areas:

    • Does the h5p slideshow have anything?
  • File Galleries prev/next file/image in "Page View" mode or where pagination is present in general? For example see https://dev.tiki.org/tiki-list_file_gallery.php?galleryId=13&offset=1&fileId=977&view=page
  • Tiki Slideshow (I think it already supports arrow keys?)
  • Wiki page view, toggle edit icons (I'm always at the bottom of the page when i need that )
  • Wiki Syntax editing: Ctrl+B for bold, Ctrl+I for italic, etc. - we have it in Wysiwyg mode but not in Wiki Syntax

Other things to keep in mind

  • The greatest challenge is discoverability. Konqueror 3 used to allow showing shortcuts, but I completely stopped using access keys after I stopped using Konqueror because I have never seen a browser which allows discovery since, to my knowledge. Wikipedia's English article on access keys does not say anything about discoverability (although it links to "A CSS stylesheet to make access keys on a website visible"...).
  • In general, we want to be consistent with best practices and commonly used apps. So CTRL+B should be bold.
  • Best practices for Accessibility
  • Specifically, we want to be consistent with all the other software components of WikiSuite.

Questions

  • Do we want to support
    • Multilingual? CTRL+G should be gras
    • Site-wide additions?
    • End-user additions?
  • How to handle conflicts / overrides?
    • With browser: Ex. On Github, in a code zone, CTRL-F activates the Github search instead of the usual browser search. This can be a good idea but changing usual browser behavior is not be done without a good reason,

With what lib

Webmin/Virtualmin example

In Webmin, using the GUI gives you hints on how to later do with keyboard

Show PHP error messages