diff --git a/package.json b/package.json index b9444866..83694507 100644 --- a/package.json +++ b/package.json @@ -141,7 +141,8 @@ "electron-log": "4.4.7", "electron-next": "^3.1.5", "electron-updater": "^5.0.1", - "epitelete-html": "0.2.19-beta.1", + "epitelete": "0.2.20-beta.1", + "epitelete-html": "0.2.20-beta.2", "eslint-import-resolver-alias": "^1.1.2", "font-list": "^1.4.5", "fs-extra": "^10.1.0", @@ -168,6 +169,7 @@ "raw-loader": "^4.0.2", "react": "^18.2.0", "react-dom": "^18.2.0", + "react-hotkeys-hook": "^4.4.0", "react-i18next": "^11.17.1", "react-media-recorder": "^1.6.6", "react-scripts": "5.0.1", @@ -198,4 +200,4 @@ "word-aligner": "$word-aligner", "@mui/lab": "$@mui/lab" } -} +} \ No newline at end of file diff --git a/renderer/public/icons/Xelah/Copy.svg b/renderer/public/icons/Xelah/Copy.svg new file mode 100644 index 00000000..6c6be15e --- /dev/null +++ b/renderer/public/icons/Xelah/Copy.svg @@ -0,0 +1,3 @@ + + + diff --git a/renderer/public/icons/Xelah/Paste.svg b/renderer/public/icons/Xelah/Paste.svg new file mode 100644 index 00000000..e1da9114 --- /dev/null +++ b/renderer/public/icons/Xelah/Paste.svg @@ -0,0 +1,3 @@ + + + diff --git a/renderer/src/components/EditorPage/Scribex/Buttons.jsx b/renderer/src/components/EditorPage/Scribex/Buttons.jsx index fcdf7b62..83604558 100644 --- a/renderer/src/components/EditorPage/Scribex/Buttons.jsx +++ b/renderer/src/components/EditorPage/Scribex/Buttons.jsx @@ -8,6 +8,9 @@ import Bars4Icon from '@/icons/Xelah/Bars4.svg'; import ArrowUturnLeftIcon from '@/icons/Xelah/ArrowUturnLeft.svg'; import ArrowUturnRightIcon from '@/icons/Xelah/ArrowUturnRight.svg'; import PencilIcon from '@/icons/Common/Pencil.svg'; +import Copy from '@/icons/Xelah/Copy.svg'; +import Paste from '@/icons/Xelah/Paste.svg'; +import { copyText, pasteText } from '@/util/cursorUtils'; export const classNames = (...classes) => classes.filter(Boolean).join(' '); @@ -53,7 +56,7 @@ export default function Buttons(props) { sectionable ? 'fill-current' : '', 'h-5 mr-2 w-5 text-white cursor-pointer', )} - aria-hidden="true" + // aria-hidden="true" onClick={onSectionable} title={ sectionable ? 'Expand all Chapters' : 'Collapse Chapters' @@ -66,7 +69,7 @@ export default function Buttons(props) { editable ? 'fill-current' : '', 'h-5 mr-2 w-5 text-white cursor-pointer', )} - aria-hidden="true" + // aria-hidden="true" onClick={onEditable} title={editable ? 'Disable Edit' : 'Enable Edit'} /> @@ -74,7 +77,7 @@ export default function Buttons(props) {