Skip to content

Commit

Permalink
fix: reload crashes the app (#1020)
Browse files Browse the repository at this point in the history
  • Loading branch information
nahiyankhan authored Feb 10, 2025
1 parent 328489d commit 54618e7
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 7 deletions.
4 changes: 2 additions & 2 deletions ui/desktop/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8" />
<title>Goose</title>
<link href="/src/styles/main.css" rel="stylesheet" />
<link href="./src/styles/main.css" rel="stylesheet" />
</head>
<script>
// On page load or when changing themes, best to add inline in `head` to avoid FOUC
Expand All @@ -19,6 +19,6 @@
</script>
<body>
<div id="root"></div>
<script type="module" src="/src/renderer.tsx"></script>
<script type="module" src="./src/renderer.tsx"></script>
</body>
</html>
16 changes: 12 additions & 4 deletions ui/desktop/src/main.ts
Original file line number Diff line number Diff line change
Expand Up @@ -203,8 +203,11 @@ const createChat = async (app, query?: string, dir?: string, version?: string) =
if (MAIN_WINDOW_VITE_DEV_SERVER_URL) {
mainWindow.loadURL(`${MAIN_WINDOW_VITE_DEV_SERVER_URL}${queryParam}`);
} else {
mainWindow.loadFile(path.join(__dirname, `../renderer/${MAIN_WINDOW_VITE_NAME}/index.html`), {
search: queryParam.slice(1),
// In production, we need to use a proper file protocol URL with correct base path
const indexPath = path.join(__dirname, `../renderer/${MAIN_WINDOW_VITE_NAME}/index.html`);
console.log('Loading production path:', indexPath);
mainWindow.loadFile(indexPath, {
search: queryParam ? queryParam.slice(1) : undefined,
});
}

Expand All @@ -219,14 +222,19 @@ const createChat = async (app, query?: string, dir?: string, version?: string) =
globalShortcut.unregister('Alt+Command+I');
};

// Register shortcut when window is focused
// Register shortcuts when window is focused
mainWindow.on('focus', () => {
registerDevToolsShortcut(mainWindow);
// Register reload shortcut
globalShortcut.register('CommandOrControl+R', () => {
mainWindow.reload();
});
});

// Unregister shortcut when window loses focus
// Unregister shortcuts when window loses focus
mainWindow.on('blur', () => {
unregisterDevToolsShortcut();
globalShortcut.unregister('CommandOrControl+R');
});

windowMap.set(windowId, mainWindow);
Expand Down
2 changes: 1 addition & 1 deletion ui/desktop/src/renderer.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import React from 'react';
import ReactDOM from 'react-dom/client';
import { BrowserRouter as Router } from 'react-router-dom';
import { HashRouter as Router } from 'react-router-dom';
import App from './App';

// Error Boundary Component
Expand Down
1 change: 1 addition & 0 deletions ui/desktop/vite.config.mts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import { resolve } from 'path';
// https://vitejs.dev/config
export default defineConfig({
plugins: [react()],
base: './',
build: {
rollupOptions: {
input: {
Expand Down

0 comments on commit 54618e7

Please sign in to comment.