1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 14:57:35 +00:00

WindowServer: Add a window minimization button.

The window is simply ignored in the painting and hit testing traversal
when in minimized state, same as we do for invisible windows.

The WM_SetActiveWindow message (sent by Taskbar) brings it back into the
non-minimized state. :^)
This commit is contained in:
Andreas Kling 2019-04-05 22:32:00 +02:00
parent 0fc3ccaa52
commit f6ca94605c
6 changed files with 49 additions and 3 deletions

View file

@ -214,6 +214,8 @@ IterationDecision WSWindowManager::for_each_visible_window_of_type_from_back_to_
for (auto* window = m_windows_in_order.head(); window; window = window->next()) {
if (!window->is_visible())
continue;
if (window->is_minimized())
continue;
if (window->type() != type)
continue;
if (m_highlight_window.ptr() == window) {
@ -253,6 +255,8 @@ IterationDecision WSWindowManager::for_each_visible_window_of_type_from_front_to
for (auto* window = m_windows_in_order.tail(); window; window = window->prev()) {
if (!window->is_visible())
continue;
if (window->is_minimized())
continue;
if (window->type() != type)
continue;
if (window == m_highlight_window.ptr())