fix: close window when leave fs crash (#25604)

This commit is contained in:
Shelley Vohr
2020-09-23 15:44:00 -07:00
committed by GitHub
parent a99256da8c
commit 894d41ef5a
2 changed files with 17 additions and 1 deletions

View File

@@ -336,11 +336,11 @@ void BrowserWindow::OnWindowResize() {
}
void BrowserWindow::OnWindowLeaveFullScreen() {
TopLevelWindow::OnWindowLeaveFullScreen();
#if defined(OS_MACOSX)
if (web_contents()->IsFullscreenForCurrentTab())
web_contents()->ExitFullscreen(true);
#endif
TopLevelWindow::OnWindowLeaveFullScreen();
}
void BrowserWindow::Focus() {

View File

@@ -3938,6 +3938,22 @@ describe('BrowserWindow module', () => {
});
ifdescribe(process.platform === 'darwin')('fullscreen state', () => {
it('should not cause a crash if called when exiting fullscreen', async () => {
const w = new BrowserWindow();
const enterFullScreen = emittedOnce(w, 'enter-full-screen');
w.setFullScreen(true);
await enterFullScreen;
await delay();
const leaveFullScreen = emittedOnce(w, 'leave-full-screen');
w.setFullScreen(false);
await leaveFullScreen;
w.close();
});
it('can be changed with setFullScreen method', async () => {
const w = new BrowserWindow();
const enterFullScreen = emittedOnce(w, 'enter-full-screen');