fix: cannot show window in mini and hide status (#7943)

* feat(ProtocolClient): show main window on protocol URL handling

* refactor(ProtocolClient): remove main window display logic; update handleProviders to show window on macOS

* fix lint

---------

Co-authored-by: rcadmin <rcadmin@rcadmins-MacBook-Pro-4.local>
This commit is contained in:
beyondkmp 2025-07-08 16:49:28 +08:00 committed by GitHub
parent f506a9d7ac
commit 33da5d31cf
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 8 additions and 1 deletions

View File

@ -1,3 +1,4 @@
import { isMac } from '@main/constant'
import Logger from 'electron-log'
import { windowService } from '../WindowService'
@ -33,8 +34,13 @@ export async function handleProvidersProtocolUrl(url: URL) {
(await mainWindow.webContents.executeJavaScript(`typeof window.navigate === 'function'`))
) {
mainWindow.webContents.executeJavaScript(`window.navigate('/settings/provider?addProviderData=${data}')`)
if (isMac) {
windowService.showMainWindow()
}
} else {
setTimeout(() => {
Logger.info('handleProvidersProtocolUrl timeout', { data, version })
handleProvidersProtocolUrl(url)
}, 1000)
}

View File

@ -259,7 +259,8 @@ const ProvidersList: FC = () => {
window.message.error(t('settings.models.provider_key_add_failed_by_invalid_data'))
window.navigate('/settings/provider')
}
}, [addProvider, providers, searchParams, t, updateProvider])
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [searchParams])
const onDragEnd = (result: DropResult) => {
setDragging(false)