Merge pull request #3 from HS-KunioOkita/feature/ime_safari

safari対応
pull/423/head
Kunio Okita 3 years ago committed by GitHub
commit 63f11d4295
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -25,6 +25,7 @@
"react-app-rewired": "^2.2.1",
"react-beautiful-dnd": "^13.1.1",
"react-datepicker": "^4.8.0",
"react-device-detect": "^2.2.3",
"react-dom": "^18.2.0",
"react-dropzone": "^14.2.3",
"react-i18next": "^12.0.0",
@ -19164,6 +19165,18 @@
"node": ">=8"
}
},
"node_modules/react-device-detect": {
"version": "2.2.3",
"resolved": "https://registry.npmjs.org/react-device-detect/-/react-device-detect-2.2.3.tgz",
"integrity": "sha512-buYY3qrCnQVlIFHrC5UcUoAj7iANs/+srdkwsnNjI7anr3Tt7UY6MqNxtMLlr0tMBied0O49UZVK8XKs3ZIiPw==",
"dependencies": {
"ua-parser-js": "^1.0.33"
},
"peerDependencies": {
"react": ">= 0.14.0",
"react-dom": ">= 0.14.0"
}
},
"node_modules/react-dom": {
"version": "18.2.0",
"resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz",
@ -22122,6 +22135,24 @@
"resolved": "https://registry.npmjs.org/typo-js/-/typo-js-1.2.2.tgz",
"integrity": "sha512-C7pYBQK17EjSg8tVNY91KHdUt5Nf6FMJ+c3js076quPmBML57PmNMzAcIq/2kf/hSYtFABNDIYNYlJRl5BJhGw=="
},
"node_modules/ua-parser-js": {
"version": "1.0.34",
"resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.34.tgz",
"integrity": "sha512-K9mwJm/DaB6mRLZfw6q8IMXipcrmuT6yfhYmwhAkuh+81sChuYstYA+znlgaflUPaYUa3odxKPKGw6Vw/lANew==",
"funding": [
{
"type": "opencollective",
"url": "https://opencollective.com/ua-parser-js"
},
{
"type": "paypal",
"url": "https://paypal.me/faisalman"
}
],
"engines": {
"node": "*"
}
},
"node_modules/unbox-primitive": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz",
@ -37290,6 +37321,14 @@
}
}
},
"react-device-detect": {
"version": "2.2.3",
"resolved": "https://registry.npmjs.org/react-device-detect/-/react-device-detect-2.2.3.tgz",
"integrity": "sha512-buYY3qrCnQVlIFHrC5UcUoAj7iANs/+srdkwsnNjI7anr3Tt7UY6MqNxtMLlr0tMBied0O49UZVK8XKs3ZIiPw==",
"requires": {
"ua-parser-js": "^1.0.33"
}
},
"react-dom": {
"version": "18.2.0",
"resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz",
@ -39534,6 +39573,11 @@
"resolved": "https://registry.npmjs.org/typo-js/-/typo-js-1.2.2.tgz",
"integrity": "sha512-C7pYBQK17EjSg8tVNY91KHdUt5Nf6FMJ+c3js076quPmBML57PmNMzAcIq/2kf/hSYtFABNDIYNYlJRl5BJhGw=="
},
"ua-parser-js": {
"version": "1.0.34",
"resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.34.tgz",
"integrity": "sha512-K9mwJm/DaB6mRLZfw6q8IMXipcrmuT6yfhYmwhAkuh+81sChuYstYA+znlgaflUPaYUa3odxKPKGw6Vw/lANew=="
},
"unbox-primitive": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz",

@ -72,6 +72,7 @@
"react-app-rewired": "^2.2.1",
"react-beautiful-dnd": "^13.1.1",
"react-datepicker": "^4.8.0",
"react-device-detect": "^2.2.3",
"react-dom": "^18.2.0",
"react-dropzone": "^14.2.3",
"react-i18next": "^12.0.0",

@ -2,6 +2,7 @@ import React, { useCallback, useEffect, useImperativeHandle, useRef, useState }
import PropTypes from 'prop-types';
import { useTranslation } from 'react-i18next';
import TextareaAutosize from 'react-textarea-autosize';
import { isSafari } from 'react-device-detect';
import { Button, Form, TextArea } from 'semantic-ui-react';
import { useClosableForm, useField } from '../../hooks';
@ -53,9 +54,9 @@ const NameEdit = React.forwardRef(({ children, defaultValue, onUpdate }, ref) =>
(event) => {
switch (event.key) {
case 'Enter':
if (event.nativeEvent.isComposing) {
break;
}
if (isSafari && event.keyCode !== 13) break;
if (event.nativeEvent.isComposing) break;
event.preventDefault();
submit();

@ -1,6 +1,7 @@
import React, { useCallback, useRef } from 'react';
import PropTypes from 'prop-types';
import TextareaAutosize from 'react-textarea-autosize';
import { isSafari } from 'react-device-detect';
import { TextArea } from 'semantic-ui-react';
import { useDidUpdate, usePrevious } from '../../lib/hooks';
@ -19,7 +20,11 @@ const NameField = React.memo(({ defaultValue, onUpdate }) => {
}, []);
const handleKeyDown = useCallback((event) => {
if (!event.nativeEvent.isComposing && event.key === 'Enter') {
if (event.key === 'Enter') {
if ((isSafari && event.keyCode !== 13) || (!isSafari && event.nativeEvent.isComposing)) {
return;
}
event.preventDefault();
event.target.blur();

@ -2,6 +2,7 @@ import React, { useCallback, useEffect, useImperativeHandle, useRef, useState }
import PropTypes from 'prop-types';
import { useTranslation } from 'react-i18next';
import TextareaAutosize from 'react-textarea-autosize';
import { isSafari } from 'react-device-detect';
import { Button, Form, TextArea } from 'semantic-ui-react';
import { useDidUpdate, useToggle } from '../../../lib/hooks';
@ -61,9 +62,12 @@ const Add = React.forwardRef(({ children, onCreate }, ref) => {
const handleFieldKeyDown = useCallback(
(event) => {
if (!event.nativeEvent.isComposing && event.key === 'Enter') {
event.preventDefault();
if (event.key === 'Enter') {
if ((isSafari && event.keyCode !== 13) || (!isSafari && event.nativeEvent.isComposing)) {
return;
}
event.preventDefault();
submit();
}
},

@ -2,6 +2,7 @@ import React, { useCallback, useEffect, useImperativeHandle, useRef, useState }
import PropTypes from 'prop-types';
import { useTranslation } from 'react-i18next';
import TextareaAutosize from 'react-textarea-autosize';
import { isSafari } from 'react-device-detect';
import { Button, Form, TextArea } from 'semantic-ui-react';
import { useClosableForm, useField } from '../../../hooks';
@ -51,9 +52,12 @@ const NameEdit = React.forwardRef(({ children, defaultValue, onUpdate }, ref) =>
const handleFieldKeyDown = useCallback(
(event) => {
if (!event.nativeEvent.isComposing && event.key === 'Enter') {
event.preventDefault();
if (event.key === 'Enter') {
if ((isSafari && event.keyCode !== 13) || (!isSafari && event.nativeEvent.isComposing)) {
return;
}
event.preventDefault();
submit();
}
},

@ -3,6 +3,7 @@ import PropTypes from 'prop-types';
import classNames from 'classnames';
import { useTranslation } from 'react-i18next';
import TextareaAutosize from 'react-textarea-autosize';
import { isSafari } from 'react-device-detect';
import { Button, Form, TextArea } from 'semantic-ui-react';
import { useDidUpdate, useToggle } from '../../lib/hooks';
@ -49,9 +50,8 @@ const CardAdd = React.memo(({ isOpened, onCreate, onClose }) => {
(event) => {
switch (event.key) {
case 'Enter': {
if (event.nativeEvent.isComposing) {
break;
}
if (isSafari && event.keyCode !== 13) break;
if (event.nativeEvent.isComposing) break;
event.preventDefault();

@ -1,6 +1,7 @@
import React, { useCallback, useEffect, useImperativeHandle, useRef, useState } from 'react';
import PropTypes from 'prop-types';
import TextareaAutosize from 'react-textarea-autosize';
import { isSafari } from 'react-device-detect';
import { TextArea } from 'semantic-ui-react';
import { useField } from '../../hooks';
@ -50,9 +51,10 @@ const NameEdit = React.forwardRef(({ children, defaultValue, onUpdate }, ref) =>
(event) => {
switch (event.key) {
case 'Enter':
if (isSafari && event.keyCode !== 13) break;
if (event.nativeEvent.isComposing) break;
event.preventDefault();
event.preventDefault();
submit();
break;

Loading…
Cancel
Save