diff --git a/src/renderer/src/components/ContextMenu/index.tsx b/src/renderer/src/components/ContextMenu/index.tsx index 1beecf2c5a..610afa695f 100644 --- a/src/renderer/src/components/ContextMenu/index.tsx +++ b/src/renderer/src/components/ContextMenu/index.tsx @@ -1,41 +1,15 @@ import { Dropdown } from 'antd' -import { useCallback, useEffect, useMemo, useState } from 'react' +import { useMemo, useState } from 'react' import { useTranslation } from 'react-i18next' -import styled from 'styled-components' interface ContextMenuProps { children: React.ReactNode - onContextMenu?: (e: React.MouseEvent) => void } -const ContextMenu: React.FC = ({ children, onContextMenu }) => { +const ContextMenu: React.FC = ({ children }) => { const { t } = useTranslation() - const [contextMenuPosition, setContextMenuPosition] = useState<{ x: number; y: number } | null>(null) const [selectedText, setSelectedText] = useState(undefined) - const handleContextMenu = useCallback( - (e: React.MouseEvent) => { - e.preventDefault() - const _selectedText = window.getSelection()?.toString() - if (_selectedText) { - setContextMenuPosition({ x: e.clientX, y: e.clientY }) - setSelectedText(_selectedText) - } - onContextMenu?.(e) - }, - [onContextMenu] - ) - - useEffect(() => { - const handleClick = () => { - setContextMenuPosition(null) - } - document.addEventListener('click', handleClick) - return () => { - document.removeEventListener('click', handleClick) - } - }, []) - const contextMenuItems = useMemo(() => { if (!selectedText) return [] @@ -76,16 +50,10 @@ const ContextMenu: React.FC = ({ children, onContextMenu }) => } return ( - - {contextMenuPosition && ( - - {children} - - )} - + + {children} + ) } -const ContextContainer = styled.div`` - export default ContextMenu diff --git a/src/renderer/src/pages/home/Messages/Message.tsx b/src/renderer/src/pages/home/Messages/Message.tsx index 855ff318e9..429fad61dd 100644 --- a/src/renderer/src/pages/home/Messages/Message.tsx +++ b/src/renderer/src/pages/home/Messages/Message.tsx @@ -1,4 +1,3 @@ -import ContextMenu from '@renderer/components/ContextMenu' import Scrollbar from '@renderer/components/Scrollbar' import { useMessageEditing } from '@renderer/context/MessageEditingContext' import { useAssistant } from '@renderer/hooks/useAssistant' @@ -167,55 +166,47 @@ const MessageItem: FC = ({ })} ref={messageContainerRef} style={{ ...style, alignItems: isBubbleStyle ? (isAssistantMessage ? undefined : 'end') : undefined }}> - - - + + + + + + {showMenubar && ( + - - - - - {showMenubar && ( - - - } - setModel={setModel} - /> - - )} - + + } + setModel={setModel} + /> + + )} ) }