From bf130e36e08dfbf5731c0e6fb84c38e37126baec Mon Sep 17 00:00:00 2001 From: "Joshua A. Horton" Date: Fri, 5 Apr 2024 14:09:14 +0700 Subject: [PATCH] fix(web): nearest-key row lookup when touch moves out-of-bounds --- web/src/engine/osk/src/keyboard-layout/oskLayerGroup.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/src/engine/osk/src/keyboard-layout/oskLayerGroup.ts b/web/src/engine/osk/src/keyboard-layout/oskLayerGroup.ts index 1803269ef7..589ca96f8c 100644 --- a/web/src/engine/osk/src/keyboard-layout/oskLayerGroup.ts +++ b/web/src/engine/osk/src/keyboard-layout/oskLayerGroup.ts @@ -198,7 +198,7 @@ export default class OSKLayerGroup { Assumes there is no fine-tuning of the row ranges to be done - each takes a perfect fraction of the overall layer height without any padding above or below. */ - const rowIndex = Math.floor(proportionalCoords.y * layer.rows.length); + const rowIndex = Math.max(0, Math.min(layer.rows.length-1, Math.floor(proportionalCoords.y * layer.rows.length))); const row = layer.rows[rowIndex]; // Assertion: row no longer `null`.