diff --git a/atom/browser/native_window_views.cc b/atom/browser/native_window_views.cc index 00b59c400d55..acfe41b03dff 100644 --- a/atom/browser/native_window_views.cc +++ b/atom/browser/native_window_views.cc @@ -585,6 +585,7 @@ void NativeWindowViews::SetResizable(bool resizable) { // both the minimum and maximum size to the window size to achieve it. if (resizable) { SetContentSizeConstraints(old_size_constraints_); + SetMaximizable(maximizable_); } else { old_size_constraints_ = GetContentSizeConstraints(); resizable_ = false; diff --git a/spec/api-browser-window-spec.js b/spec/api-browser-window-spec.js index 41f5e650e752..71a9af275d94 100644 --- a/spec/api-browser-window-spec.js +++ b/spec/api-browser-window-spec.js @@ -2394,9 +2394,15 @@ describe('BrowserWindow module', () => { // Only implemented on windows. if (process.platform !== 'win32') return - it('is set to false when resizable state is set to false', () => { + it('is reset to its former state', () => { + w.setMaximizable(false) w.setResizable(false) + w.setResizable(true) assert.equal(w.isMaximizable(), false) + w.setMaximizable(true) + w.setResizable(false) + w.setResizable(true) + assert.strictEqual(w.isMaximizable(), true) }) })