summaryrefslogtreecommitdiffhomepage
path: root/desktop
diff options
context:
space:
mode:
authorTobias Järvelöv <tobias.jarvelov@mullvad.net>2025-02-10 10:11:01 +0100
committerMarkus Pettersson <markus.pettersson@mullvad.net>2025-02-25 12:51:51 +0100
commita3bbd2bffece87a3371cd51ab1d53dbe2ab78e2b (patch)
treec0acd8693ab0c53f2a6abaef975ef96e10caa8d1 /desktop
parentf0dac8281c3a92c0bdb40542dc89ece64cb98669 (diff)
downloadmullvadvpn-a3bbd2bffece87a3371cd51ab1d53dbe2ab78e2b.tar.xz
mullvadvpn-a3bbd2bffece87a3371cd51ab1d53dbe2ab78e2b.zip
Update main to use vite dev server and assets
Vite serves the resources using a local web server in development in order to enable HMR/React refresh. In production we load resources using the file protocol.
Diffstat (limited to 'desktop')
-rw-r--r--desktop/packages/mullvad-vpn/src/main/user-interface.ts9
1 files changed, 6 insertions, 3 deletions
diff --git a/desktop/packages/mullvad-vpn/src/main/user-interface.ts b/desktop/packages/mullvad-vpn/src/main/user-interface.ts
index a079246373..241135f707 100644
--- a/desktop/packages/mullvad-vpn/src/main/user-interface.ts
+++ b/desktop/packages/mullvad-vpn/src/main/user-interface.ts
@@ -146,9 +146,12 @@ export default class UserInterface implements WindowControllerDelegate {
this.installWindowCloseHandler();
this.installTrayClickHandlers();
- const filePath = path.resolve(path.join(__dirname, '../renderer/index.html'));
try {
- await window.loadFile(filePath);
+ if (process.env.NODE_ENV === 'development' && process.env.VITE_DEV_SERVER_URL) {
+ await window.loadURL(process.env.VITE_DEV_SERVER_URL);
+ } else {
+ await window.loadFile(path.join(__dirname, 'index.html'));
+ }
} catch (e) {
const error = e as Error;
log.error(`Failed to load index file: ${error.message}`);
@@ -247,7 +250,7 @@ export default class UserInterface implements WindowControllerDelegate {
show: false,
frame: unpinnedWindow,
webPreferences: {
- preload: path.join(__dirname, '../renderer/preloadBundle.js'),
+ preload: path.join(__dirname, 'preload.js'),
nodeIntegration: false,
nodeIntegrationInWorker: false,
nodeIntegrationInSubFrames: false,