improvements
This commit is contained in:
@@ -9,6 +9,7 @@ import { commit, discard, load, push, stage, unstage } from './git-service'
|
||||
import { createPty, killAllPtys, killPty, ptyAvailable, resizePty, writePty } from './pty-service'
|
||||
import { getConfig, getRecent, getThemeCss, resolveConfig, setRecent } from './config'
|
||||
import { listFiles, searchContent } from './search-service'
|
||||
import { readNote, writeNote } from './notes-service'
|
||||
import { initDiagnostics, openLog, revealLog, watchWindow } from './diagnostics'
|
||||
import { getLogPath, log, logger, type LogLevel } from './logger'
|
||||
|
||||
@@ -283,6 +284,10 @@ function registerIpc(): void {
|
||||
handle('fs:delete', (_e, rel: string) => { const r = getRoot(); if (r) return deleteProjectFile(r, rel) })
|
||||
handle('fs:create', (_e, rel: string) => { const r = getRoot(); if (r) return createProjectFile(r, rel) })
|
||||
handle('fs:mkdir', (_e, rel: string) => { const r = getRoot(); if (r) return createProjectDir(r, rel) })
|
||||
// Scratch note: <project>/.notes.txt, saved when the window loses focus.
|
||||
handle('notes:read', () => { const r = getRoot(); return r ? readNote(r) : '' })
|
||||
handle('notes:write', (_e, text: string) => { const r = getRoot(); if (r) return writeNote(r, text) })
|
||||
|
||||
handle('shell:reveal', (_e, rel: string) => { const r = getRoot(); if (r) shell.showItemInFolder(join(r, rel)) })
|
||||
|
||||
handle('git:load', () => { const r = getRoot(); return r ? load(r) : null })
|
||||
@@ -361,6 +366,17 @@ function createWindow(): void {
|
||||
// Keep the renderer's <title>Helder</title> from clobbering the folder name.
|
||||
win.on('page-title-updated', (e) => e.preventDefault())
|
||||
win.on('ready-to-show', () => win.show())
|
||||
|
||||
// macOS hides the traffic lights in fullscreen, so the title bar can drop the
|
||||
// 82px it reserves for them. Only the main process knows this state, hence IPC.
|
||||
function sendFullscreen(): void {
|
||||
if (win.isDestroyed()) return
|
||||
win.webContents.send('window:fullscreen', win.isFullScreen())
|
||||
}
|
||||
win.on('enter-full-screen', sendFullscreen)
|
||||
win.on('leave-full-screen', sendFullscreen)
|
||||
win.webContents.on('did-finish-load', sendFullscreen)
|
||||
|
||||
watchWindow(win)
|
||||
|
||||
win.webContents.setWindowOpenHandler(({ url }) => {
|
||||
|
||||
Reference in New Issue
Block a user