Interactive Video Controls not responding to kbd commands (fix discovered)
- Steps to recreate the bug
Tab to any control, e.g., Play (focus indicated by CSS change)
Press Space bar... it does default page-down, video does not play. - Platform you're using: Drupal, Wordpress, Moodle (version number would be helpful as well)
Wordpress 4.7.2 en_CA - Mobile or Desktop
Desktop - Browser: Chrome, Firefox, Safari etc
Firefox 51.0.1 - H5P plugin version
Version 1.7.10 - H5P content type version
Interactive Video 1.14.0 - Screenshots if it's a visual problem
Firebug console pointed to
Error line 26711: event not defined.
I think I fixed it:
Downloaded cached .js from .../wp-content/uploads/h5p/cachedassets and navigated to line 26711, discovered this block of code:
on: { click: function () { handler.call(this); }, keypress: function () { if (event.which === 32) { // Space handler.call(this); } } }
Opened local copy ....\wp-content\uploads\h5p\libraries\H5P.InteractiveVideo-1.14\scripts\interactive-video.js
I found this snippet at Line 1323, and added event as argument:
on: { click: function (event) { handler.call(this); }, keypress: function (event) { if (event.which === 32 || event.which === 13) { // Space or Return handler.call(this); event.preventDefault(); } } }
Also added event.preventDefault(); after handler call to prevent page movement, and support for Return key, because I could never figure out why the spacebar was chosen for this task in the first place (what's wrong with Page Down?)
The expected functionality has returned. Once-again-working-version can be seen at http://bit.ly/rcfCTA3scales
fnoks
Mon, 02/13/2017 - 09:27
Permalink
Hi,Thank you for you for
Hi,
Thank you for you for reporting this :) I have created an issue here: https://h5ptechnology.atlassian.net/browse/HFP-765