From f42afe28d78019d7a86d5b83634b72482185f393 Mon Sep 17 00:00:00 2001 From: kangfenmao Date: Sat, 18 Oct 2025 18:07:43 +0800 Subject: [PATCH] refactor: update Chat, AgentItem, and LaunchpadPage components to use preference hooks - Replaced useSettings with usePreference in AgentItem and LaunchpadPage for better state management. - Adjusted Chat component's Main element to include width styling for improved layout consistency. --- src/renderer/src/pages/home/Chat.tsx | 5 ++++- src/renderer/src/pages/home/Tabs/components/AgentItem.tsx | 5 +++-- src/renderer/src/pages/launchpad/LaunchpadPage.tsx | 4 ++-- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/renderer/src/pages/home/Chat.tsx b/src/renderer/src/pages/home/Chat.tsx index 0d1e37d0b4..e15577008f 100644 --- a/src/renderer/src/pages/home/Chat.tsx +++ b/src/renderer/src/pages/home/Chat.tsx @@ -204,7 +204,10 @@ const Chat: FC = (props) => { }} transition={{ duration: 0.3, ease: 'easeInOut' }} style={{ flex: 1, display: 'flex', minWidth: 0 }}> -
+
= ({ agent, isActive, onDelete, onPress }) => { const { t } = useTranslation() const { sessions } = useSessions(agent.id) - const { clickAssistantToShowTopic, topicPosition } = useSettings() + const [topicPosition] = usePreference('topic.position') + const [clickAssistantToShowTopic] = usePreference('assistant.click_to_show_topic') const handlePress = useCallback(() => { // Show session sidebar if setting is enabled (reusing the assistant setting for consistency) diff --git a/src/renderer/src/pages/launchpad/LaunchpadPage.tsx b/src/renderer/src/pages/launchpad/LaunchpadPage.tsx index f9c80f6aec..16777152f3 100644 --- a/src/renderer/src/pages/launchpad/LaunchpadPage.tsx +++ b/src/renderer/src/pages/launchpad/LaunchpadPage.tsx @@ -1,6 +1,6 @@ +import { usePreference } from '@data/hooks/usePreference' import App from '@renderer/components/MinApp/MinApp' import { useMinapps } from '@renderer/hooks/useMinapps' -import { useSettings } from '@renderer/hooks/useSettings' import { Code, FileSearch, Folder, Languages, LayoutGrid, NotepadText, Palette, Sparkle } from 'lucide-react' import type { FC } from 'react' import { useMemo } from 'react' @@ -11,7 +11,7 @@ import styled from 'styled-components' const LaunchpadPage: FC = () => { const navigate = useNavigate() const { t } = useTranslation() - const { defaultPaintingProvider } = useSettings() + const [defaultPaintingProvider] = usePreference('topic.position') const { pinned, openedKeepAliveMinapps } = useMinapps() const appMenuItems = [