mirror of
https://github.com/electron/electron.git
synced 2026-04-10 03:01:51 -04:00
fix: close window when leave fs crash (#25524)
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
This commit is contained in:
@@ -340,11 +340,11 @@ void BrowserWindow::OnWindowResize() {
|
||||
}
|
||||
|
||||
void BrowserWindow::OnWindowLeaveFullScreen() {
|
||||
BaseWindow::OnWindowLeaveFullScreen();
|
||||
#if defined(OS_MAC)
|
||||
if (web_contents()->IsFullscreen())
|
||||
web_contents()->ExitFullscreen(true);
|
||||
#endif
|
||||
BaseWindow::OnWindowLeaveFullScreen();
|
||||
}
|
||||
|
||||
void BrowserWindow::Focus() {
|
||||
|
||||
@@ -3946,6 +3946,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');
|
||||
|
||||
Reference in New Issue
Block a user