From 22d0a5705d4730f70bfb85310d87363030597531 Mon Sep 17 00:00:00 2001 From: Dmitry Lyzo Date: Thu, 14 Nov 2019 23:55:44 +0300 Subject: [PATCH] Fix compatibility with older browsers (webOS 2/3) --- src/components/autoFocuser.js | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/components/autoFocuser.js b/src/components/autoFocuser.js index 29c5a6b5e6..e3cec9281d 100644 --- a/src/components/autoFocuser.js +++ b/src/components/autoFocuser.js @@ -28,6 +28,13 @@ define(["focusManager", "layoutManager"], function (focusManager, layoutManager) console.log("AutoFocuser enabled"); } + /** + * Create an array from some source. + */ + var arrayFrom = Array.prototype.from || function (src) { + return Array.prototype.slice.call(src); + } + /** * Set focus on a suitable element, taking into account the previously selected. */ @@ -55,8 +62,8 @@ define(["focusManager", "layoutManager"], function (focusManager, layoutManager) candidates.push(activeElement); } - candidates = candidates.concat(Array.from(container.querySelectorAll(".btnResume"))); - candidates = candidates.concat(Array.from(container.querySelectorAll(".btnPlay"))); + candidates = candidates.concat(arrayFrom(container.querySelectorAll(".btnResume"))); + candidates = candidates.concat(arrayFrom(container.querySelectorAll(".btnPlay"))); var notFound = candidates.every(function (element) { if (focusManager.isCurrentlyFocusable(element)) {