RTC Language Change a11y bug PR-6.2-dev Pending

User tests: Successful: Unsuccessful:

avatar brianteeman
brianteeman
12 Oct 2026

Pull Request resolves #48420

  • I read the Generative AI policy and my contribution is either not created with the help of AI or is compatible with the policy and GNU/GPL 2 or later.

Summary of Changes

The System - Shortcut plugin uses a timeout to determine how long a user has to press the second key in a sequence such as J, followed by X. The timeout is currently configured globally in the plugin settings.

A fixed timeout may be too short for some users, creating an accessibility barrier.

This PR allows each user to customise the keyboard shortcut timeout through their Accessibility Settings, while retaining the existing plugin configuration as the site-wide default.

Note I am not convinced that "Keyboard Shortcut Timeout" is the best description of this option - open to suggestions

image image

Testing Instructions

Its a bit tricky as we are testing that you can activate a short by pressing the two keys J plus another within the defined time. If you do then the shortcut is triggered - if you dont then nothing happens. its easier to test with a really big delay between key presses. You probably cant check if its 2 or 3 seconds but you can check if its 10 seconds

image
  • Open the System - Shortcut plugin settings and configure a site-wide timeout.
  • Log in to the administrator interface as a user without a custom timeout and verify that the configured site-wide timeout is used.
  • Open the user's Accessibility Settings and select a different keyboard shortcut timeout.
  • Verify that the user's selected timeout overrides the site-wide setting.
  • Select the default option and verify that the site-wide timeout is used again.
  • Verify that the default timeout of 2000 milliseconds is used when neither a user preference nor a site-specific value is configured.

Actual result BEFORE applying this Pull Request

No per user setting - it can only be change for the site

Expected result AFTER applying this Pull Request

Now you have a per user setting

Link to documentations

Please select:

  • Documentation link for guide.joomla.org:

  • No documentation changes for guide.joomla.org needed

  • Pull Request link for manual.joomla.org:

  • No documentation changes for manual.joomla.org needed

avatar brianteeman brianteeman - open - 12 Oct 2026
avatar brianteeman brianteeman - change - 12 Oct 2026
Status New ⇒ Pending
avatar joomla-cms-bot joomla-cms-bot - change - 12 Oct 2026
Category ⇒ Administration com_users Language & Strings Front End Plugins
avatar brianteeman brianteeman - change - 12 Oct 2026
The description was changed
avatar brianteeman brianteeman - edited - 12 Oct 2026
avatar brianteeman brianteeman - change - 12 Oct 2026
Labels Added: Language Change PR-6.2-dev
avatar mbeganyi-a11y
mbeganyi-a11y - comment - 13 Oct 2026

Cool, Brian; thanks for taking this on. I haven't tested yet but I like the control name. Is it worth adding a bit of text to explain what exactly that control does? Keyboard Shortcut Timeout is exactly what it is, but would some context help all users? Something like "Customize the maximum time between key presses to activate Joomla-specific keyboard shortcuts"?

Also, the label specifies milliseconds but the drop-down only has second values. I might be missing some context in the image, though.

avatar brianteeman
brianteeman - comment - 13 Oct 2026

I changed the label but forgot to update the screenshot

avatar brianteeman
brianteeman - comment - 13 Oct 2026

added description and updated screenshot

avatar brianteeman brianteeman - change - 13 Oct 2026
The description was changed
avatar brianteeman brianteeman - edited - 13 Oct 2026
avatar mbeganyi-a11y
mbeganyi-a11y - comment - 14 Oct 2026

Thanks for adding the description, too. It is conveyed to assistive technology as well, so nice work there.

I'm not sure if this is user error on my part, so please help me understand, but I'm finding that even after changing the value to 10 seconds and saving and closing, I basically need to press the keyboard shortcuts at the same time to affect the shortcut. I tried in Chrome, Edge, and Firefox, and it's the same. I also created a new user and set the custom timeout in the user's Accessibility Settings but it doesn't seem to affect the site-wide timeout. Is there another setting I need to change or am I just completely off in my testing?

Also, is there a cool-down between key presses? I can, for example, exit the New Banner screen with J & Q but when the new page loads I can't press J & N to create a new banner until after 3 or so seconds. (Maybe I'm impatient?)

avatar brianteeman
brianteeman - comment - 14 Oct 2026

How did you apply the pr

avatar brianteeman
brianteeman - comment - 14 Oct 2026

The most useful test is to check whether the timeout actually changes how the shortcuts behave, and whether the saved value is applied to the correct user. You can use the browser console to inspect the configuration Joomla passes to its JavaScript.

Open the Joomla administrator page where you want to test the shortcuts, press F12, select the Console tab, and run this:
Joomla.getOptions('plg_system_shortcut.timeout')

That will return the value of thje timeout

avatar mbeganyi-a11y
mbeganyi-a11y - comment - 14 Oct 2026

How did you apply the pr

Local installation and then manual testing with keyboard timer across various admin pages after following the instructions. Created new user as well.

Open the Joomla administrator page where you want to test the shortcuts, press F12, select the Console tab, and run this: Joomla.getOptions('plg_system_shortcut.timeout')

That will return the value of thje timeout

This was really helpful to get the value. Thanks for this. By this metric the timeout does indeed change and accurately reflects the custom timeout set by the user. I still can't enact the shortcuts unless I press them at the same time, but this could just be me. Others' tests are welcome.

avatar exlemor exlemor - test_item - 14 Oct 2026 - Tested successfully
avatar exlemor
exlemor - comment - 14 Oct 2026

I have tested this item ✅ successfully on 048860c

I have tested this successfully. (probably the 1st PR tested at the Joomla World Conference 2026 ;) )


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/48613.

avatar exlemor
exlemor - comment - 14 Oct 2026

I have tested this item ✅ successfully on 048860c

I have tested this successfully. (probably the 1st PR tested at the Joomla World Conference 2026 ;) )


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/48613.

avatar webnet-assmann webnet-assmann - test_item - 29 Oct 2026 - Tested successfully
avatar webnet-assmann
webnet-assmann - comment - 29 Oct 2026

I have tested this item ✅ successfully on 048860c


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/48613.

avatar webnet-assmann
webnet-assmann - comment - 29 Oct 2026

I have tested this item ✅ successfully on 048860c


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/48613.

avatar QuyTon QuyTon - change - 29 Oct 2026
Status Pending ⇒ Ready to Commit
avatar QuyTon
QuyTon - comment - 29 Oct 2026

RTC


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/48613.

avatar QuyTon
QuyTon - comment - 29 Oct 2026

RTC


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/48613.

avatar drmenzelit drmenzelit - change - 30 Oct 2026
Labels Added: RTC a11y bug
avatar drmenzelit drmenzelit - change - 30 Oct 2026
Status Ready to Commit ⇒ Fixed in Code Base
Closed_Date 0000-00-00 00:00:00 ⇒ 2026-10-30 14:18:40
Closed_By ⇒ drmenzelit
avatar drmenzelit drmenzelit - close - 30 Oct 2026
avatar drmenzelit drmenzelit - merge - 30 Oct 2026
avatar drmenzelit
drmenzelit - comment - 30 Oct 2026

Thank you. Nice one.

avatar brianteeman
brianteeman - comment - 30 Oct 2026

thanks - pointless PR but it satisfies the checklist

avatar mbeganyi-a11y
mbeganyi-a11y - comment - 30 Oct 2026

thanks - pointless PR but it satisfies the checklist

Ouch. Lots of users will benefit from this.

Add a Comment

Login with GitHub to post a comment