diff --git a/.changes/flag.md b/.changes/flag.md new file mode 100644 index 000000000..5e2d0823b --- /dev/null +++ b/.changes/flag.md @@ -0,0 +1,5 @@ +--- +"tao": patch +--- + +Fix window can't be hidden when maximized. \ No newline at end of file diff --git a/src/platform_impl/windows/window_state.rs b/src/platform_impl/windows/window_state.rs index db599cf06..32f04dd83 100644 --- a/src/platform_impl/windows/window_state.rs +++ b/src/platform_impl/windows/window_state.rs @@ -275,13 +275,11 @@ impl WindowFlags { if diff.contains(WindowFlags::MAXIMIZED) || new.contains(WindowFlags::MAXIMIZED) { unsafe { - ShowWindow( - window, - match new.contains(WindowFlags::MAXIMIZED) { - true => SW_MAXIMIZE, - false => SW_RESTORE, - }, - ); + if new.contains(WindowFlags::MAXIMIZED) { + ShowWindow(window, SW_MAXIMIZE); + } else if new.contains(WindowFlags::VISIBLE) { + ShowWindow(window, SW_RESTORE); + } } }