diff --git a/atom/browser/native_window_views.cc b/atom/browser/native_window_views.cc index afa1dcceb6c1..15214cc5bbcd 100644 --- a/atom/browser/native_window_views.cc +++ b/atom/browser/native_window_views.cc @@ -480,7 +480,7 @@ void NativeWindowViews::SetFullScreen(bool fullscreen) { #if defined(OS_WIN) // There is no native fullscreen state on Windows. - bool fullscreen_to_normal_detected = IsFullscreen() && !fullscreen; + bool leaving_fullscreen = IsFullscreen() && !fullscreen; if (fullscreen) { last_window_state_ = ui::SHOW_STATE_FULLSCREEN; @@ -512,11 +512,8 @@ void NativeWindowViews::SetFullScreen(bool fullscreen) { // else a non-responsive window shell could be rendered. // (this situation may arise when app starts with fullscreen: true) // Note: the following must be after "window_->SetFullscreen(fullscreen);" - if (fullscreen_to_normal_detected && !IsVisible()) { - LONG frame_style = ::GetWindowLong(GetAcceleratedWidget(), GWL_STYLE); - frame_style |= WS_VISIBLE; - ::SetWindowLong(GetAcceleratedWidget(), GWL_STYLE, frame_style); - } + if (leaving_fullscreen && !IsVisible()) + FlipWindowStyle(GetAcceleratedWidget(), true, WS_VISIBLE); #else if (IsVisible()) window_->SetFullscreen(fullscreen);