From 06a19e2f697f40208868f88126846fdda3aaf650 Mon Sep 17 00:00:00 2001 From: "Robin E. R. Davies" Date: Sat, 6 Sep 2025 04:45:22 -0400 Subject: [PATCH] Final fix for Samsung missing '-" on keyboard. --- vite/src/pipedal/NumericInput.tsx | 11 +++++------ vite/src/pipedal/PluginControl.tsx | 9 +++++---- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/vite/src/pipedal/NumericInput.tsx b/vite/src/pipedal/NumericInput.tsx index cd89c58..1321b90 100644 --- a/vite/src/pipedal/NumericInput.tsx +++ b/vite/src/pipedal/NumericInput.tsx @@ -32,11 +32,10 @@ const styles = ({ palette }: Theme) => createStyles({ }); -function isSamsungDevice() { - const userAgent = navigator.userAgent.toLowerCase(); - return userAgent.includes('samsung') || userAgent.includes('sm-'); -} +function isMobileDevice() { + return (navigator.maxTouchPoints && navigator.maxTouchPoints > 1); +} interface NumericInputProps extends WithStyles { ariaLabel: string; @@ -160,8 +159,8 @@ export const NumericInput = inputProps={{ 'aria-label': this.props.ariaLabel, style: { textAlign: 'right' }, - type: isSamsungDevice()? "text": "number", - inputMode: "decimal", + type: isMobileDevice()? "text": "number", // Avoids missing minus sign on Samsung mobile keyboard. + inputMode: "numeric", autoComplete: "off", autoCorrect: "off", autoCapitalize: "off", diff --git a/vite/src/pipedal/PluginControl.tsx b/vite/src/pipedal/PluginControl.tsx index 8dcdf13..43f2ced 100644 --- a/vite/src/pipedal/PluginControl.tsx +++ b/vite/src/pipedal/PluginControl.tsx @@ -48,11 +48,11 @@ const MAX_ANGLE = 135; const FONT_SIZE = "0.8em"; -function isSamsungDevice() { - const userAgent = navigator.userAgent.toLowerCase(); - return userAgent.includes('samsung') || userAgent.includes('sm-'); +function isMobileDevice() { + return (navigator.maxTouchPoints && navigator.maxTouchPoints > 1); } + enum ButtonStyle { None, Trigger, Momentary, MomentaryOnByDefault } @@ -1094,7 +1094,8 @@ const PluginControl = ) : (