Commit 2d7dba965d21cf17cf96b29032c8aa1e027e73c9
Handle fullscreen state without accessing remote.window
First step of getting remote out of the codebase.Daan Wynen committed on 3/6/2021, 10:11:18 PM
Parent: fe4e56b2dea67a6b17e1545cc56ea259702342b1
Files changed
lib/fullscreen.js | changed |
lib/window.js | changed |
lib/fullscreen.js | |||
---|---|---|---|
@@ -1,14 +1,14 @@ | |||
1 | 1 … | const electron = require('electron') | |
2 | 2 … | const { Value } = require('mutant') | |
3 | 3 … | ||
4 | 4 … | module.exports = function () { | |
5 | - const win = electron.remote.getCurrentWindow() | ||
6 | - const isFullScreen = Value(win.isFullScreen()) | ||
7 | - win.on('enter-full-screen', () => { | ||
5 … | + const isFullScreen = Value(false) | ||
6 … | + // receive the OS window state from the main process | ||
7 … | + electron.ipcRenderer.on('enter-full-screen', () => { | ||
8 | 8 … | isFullScreen.set(true) | |
9 | 9 … | }) | |
10 | - win.on('leave-full-screen', () => { | ||
10 … | + electron.ipcRenderer.on('leave-full-screen', () => { | ||
11 | 11 … | isFullScreen.set(false) | |
12 | 12 … | }) | |
13 | 13 … | return isFullScreen | |
14 | 14 … | } |
lib/window.js | ||
---|---|---|
@@ -10,8 +10,16 @@ | ||
10 | 10 … | enableRemoteModule: true, |
11 | 11 … | } |
12 | 12 … | }, opts)) |
13 | 13 … | |
14 … | + // have to forward the OS window state to the renderer because it cannot | |
15 … | + // access directly | |
16 … | + window.on('enter-full-screen', (event, alwaysOnTop) => { | |
17 … | + window.webContents.send("enter-full-screen"); | |
18 … | + }) | |
19 … | + window.on('leave-full-screen', (event, alwaysOnTop) => { | |
20 … | + window.webContents.send("leave-full-screen"); | |
21 … | + }) | |
14 | 22 … | electron.ipcMain.on('ready-to-show', handleReadyToShow) |
15 | 23 … | |
16 | 24 … | window.webContents.on('dom-ready', function () { |
17 | 25 … | window.webContents.executeJavaScript(` |
Built with git-ssb-web