Fixed Snap issue with resizing on Windows 11 (#2686)
* Fixed Snap issue with resizing on Windows 11 * Run on focus/blur as well * Whoops, left my logging changes * Fix tests
This commit is contained in:
@@ -88,6 +88,7 @@ import {
|
||||
GET_ORDERED_SERVERS,
|
||||
GET_ORDERED_TABS_FOR_SERVER,
|
||||
SERVERS_UPDATE,
|
||||
VIEW_FINISHED_RESIZING,
|
||||
} from 'common/communication';
|
||||
|
||||
console.log('Preload initialized');
|
||||
@@ -251,3 +252,7 @@ const createKeyDownListener = () => {
|
||||
});
|
||||
};
|
||||
createKeyDownListener();
|
||||
|
||||
window.addEventListener('resize', () => {
|
||||
ipcRenderer.send(VIEW_FINISHED_RESIZING);
|
||||
});
|
||||
|
@@ -462,6 +462,7 @@ describe('main/windows/mainWindow', () => {
|
||||
};
|
||||
BrowserWindow.mockImplementation(() => window);
|
||||
const mainWindow = new MainWindow();
|
||||
mainWindow.getBounds = jest.fn();
|
||||
mainWindow.init();
|
||||
Object.defineProperty(process, 'platform', {
|
||||
value: originalPlatform,
|
||||
|
@@ -133,6 +133,7 @@ export class MainWindow extends EventEmitter {
|
||||
this.win.on('leave-full-screen', () => this.win?.webContents.send('leave-full-screen'));
|
||||
this.win.on('will-resize', this.onWillResize);
|
||||
this.win.on('resized', this.onResized);
|
||||
this.win.on('moved', this.onResized);
|
||||
if (process.platform !== 'darwin') {
|
||||
mainWindow.on('resize', this.onResize);
|
||||
}
|
||||
@@ -286,6 +287,8 @@ export class MainWindow extends EventEmitter {
|
||||
// do nothing because we want to supress the menu popping up
|
||||
});
|
||||
}
|
||||
|
||||
this.emit(MAIN_WINDOW_RESIZED, this.getBounds());
|
||||
}
|
||||
|
||||
private onBlur = () => {
|
||||
@@ -295,6 +298,8 @@ export class MainWindow extends EventEmitter {
|
||||
|
||||
globalShortcut.unregisterAll();
|
||||
|
||||
this.emit(MAIN_WINDOW_RESIZED, this.getBounds());
|
||||
|
||||
// App should save bounds when a window is closed.
|
||||
// However, 'close' is not fired in some situations(shutdown, ctrl+c)
|
||||
// because main process is killed in such situations.
|
||||
|
Reference in New Issue
Block a user