diff --git a/src/main.js b/src/main.js index 62d12d8..2b5fb44 100644 --- a/src/main.js +++ b/src/main.js @@ -1668,7 +1668,11 @@ function openFileFromPath(filePath) { currentFile = filePath; const content = fs.readFileSync(filePath, 'utf-8'); if (mainWindow && mainWindow.webContents && rendererReady) { - mainWindow.webContents.send('file-opened', { path: filePath, content }); + // Add a small delay to ensure renderer is fully prepared to display the file + // This prevents timing issues where file opens before UI is ready + setTimeout(() => { + mainWindow.webContents.send('file-opened', { path: filePath, content }); + }, 100); } else { // Store file to open after renderer is ready app.pendingFile = filePath; diff --git a/src/renderer.js b/src/renderer.js index 15d5d46..349acdb 100644 --- a/src/renderer.js +++ b/src/renderer.js @@ -1042,8 +1042,11 @@ document.addEventListener('DOMContentLoaded', () => { // Request current theme ipcRenderer.send('get-theme'); - // Signal that renderer is ready for file operations - ipcRenderer.send('renderer-ready'); + // Delay renderer-ready signal to ensure all UI initialization completes + // This prevents files from opening before the interface is fully loaded + setTimeout(() => { + ipcRenderer.send('renderer-ready'); + }, 500); // Set up auto-save interval setInterval(() => {