diff --git a/src/main/__tests__/index.test.js b/src/main/__tests__/index.test.js index 0b707a93..69fd69f5 100644 --- a/src/main/__tests__/index.test.js +++ b/src/main/__tests__/index.test.js @@ -188,6 +188,23 @@ describe('Main module test suite', () => { expect(settingsModule.updateSettings).toHaveBeenCalledWith({width: 13, height: 37}); }); }); + describe('restore (required for windows when starting minimized)', () => { + let mockAppMenu; + beforeEach(() => { + mockAppMenu = { + setBounds: jest.fn() + }; + jest.spyOn(appMenuModule, 'newAppMenu').mockImplementation(() => mockAppMenu); + main.init(); + }); + test('should set app-menu bounds', () => { + // When + mockBrowserWindow.listeners.restore({sender: mockBrowserWindow}); + jest.runAllTimers(); + // Then + expect(mockAppMenu.setBounds).toHaveBeenCalledWith({x: 0, y: 0, width: 10, height: 34}); + }); + }); describe('resize', () => { test('#78: should be run in separate setTimeout timer function to resize properly in Linux', () => { // When diff --git a/src/main/index.js b/src/main/index.js index 71f7ca2e..c201ef6f 100644 --- a/src/main/index.js +++ b/src/main/index.js @@ -272,7 +272,7 @@ const init = () => { mainWindow.show(); } mainWindow.removeMenu(); - ['resize', 'maximize'] + ['resize', 'maximize', 'restore'] .forEach(event => mainWindow.on(event, handleMainWindowResize)); mainWindow.on('close', handleWindowClose); initTabListener();