diff --git a/client/data.ts b/client/data.ts index 6568b09..4fb95cd 100644 --- a/client/data.ts +++ b/client/data.ts @@ -42,6 +42,7 @@ type IData = { apply(): void access_token?: string device_id: string + override_use_mobile_ui?: boolean } declare global { diff --git a/client/ui/chat-fragment/LazyChatFragment.tsx b/client/ui/chat-fragment/LazyChatFragment.tsx index 6c2d021..0cf64a9 100644 --- a/client/ui/chat-fragment/LazyChatFragment.tsx +++ b/client/ui/chat-fragment/LazyChatFragment.tsx @@ -3,19 +3,10 @@ import { Await } from "react-router" import getClient from "../../getClient" import ChatFragment from "./ChatFragment" import * as React from 'react' -import showSnackbar from "../../utils/showSnackbar" import EffectOnly from "../EffectOnly" export default function LazyChatFragment({ chatId, openedWithRouter }: { chatId: string, openedWithRouter: boolean }) { - return { - const s = showSnackbar({ - message: '请稍后...', - autoCloseDelay: 0, - }) - return () => { - s.open = false - } - }} deps={[]} />}> + return {}} deps={[]} />}> Chat.getByIdOrThrow(getClient(), chatId), [chatId])} children={(chatInfo: Chat) => } /> diff --git a/client/ui/routers/ChatFragmentDialog.tsx b/client/ui/routers/ChatFragmentDialog.tsx index e5a58cd..9cd2a1a 100644 --- a/client/ui/routers/ChatFragmentDialog.tsx +++ b/client/ui/routers/ChatFragmentDialog.tsx @@ -22,7 +22,7 @@ export default function ChatFragmentDialog() { const body = shadow.querySelector(".body") as HTMLElement body.style.height = '100%' body.style.display = 'flex' - }, []) + }) return (<> diff --git a/client/ui/routers/UserOrChatInfoDialog.tsx b/client/ui/routers/UserOrChatInfoDialog.tsx index c206127..00e2e94 100644 --- a/client/ui/routers/UserOrChatInfoDialog.tsx +++ b/client/ui/routers/UserOrChatInfoDialog.tsx @@ -23,8 +23,6 @@ export default function UserOrChatInfoDialog() { (context: Shared) => context.setCurrentSelectedChatId ) - console.log(setCurrentSelectedChatId, favouriteChats) - const nav = useNavigate() const dialogRef = useRouterDialogRef() diff --git a/client/ui/routers/useRouterDialogRef.ts b/client/ui/routers/useRouterDialogRef.ts index b246d2e..2d61cd3 100644 --- a/client/ui/routers/useRouterDialogRef.ts +++ b/client/ui/routers/useRouterDialogRef.ts @@ -7,8 +7,12 @@ import RouterDialogsContext from './RouterDialogsContext' export default function useRouterDialogRef() { const dialogRef = React.useRef() + const nav = useNavigate() useAsyncEffect(async () => { + dialogRef.current!.addEventListener('closed', async () => { + nav(-1) + }) await sleep(10) dialogRef.current!.open = true }, []) diff --git a/client/utils/isMobileUI.ts b/client/utils/isMobileUI.ts index 6aa89b7..05fc130 100644 --- a/client/utils/isMobileUI.ts +++ b/client/utils/isMobileUI.ts @@ -1,5 +1,5 @@ +import data from "../data" + export default function isMobileUI() { - const mobile = new URL(location.href).searchParams.get('mobile') - if (mobile) return mobile == 'true' - return /Mobi|Android|iPhone/i.test(navigator.userAgent) + return data.override_use_mobile_ui || /Mobi|Android|iPhone/i.test(navigator.userAgent) } \ No newline at end of file