mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 08:58:11 +00:00
WindowServer: Implement simple window shadows
This implements simple window shadows around most windows, including tooltips. Because this method uses a bitmap for the shadow bits, it is limited to rectangular window frames. For non-rectangular window frames we'll need to implement a more sophisticated algorithm.
This commit is contained in:
parent
72fdab7bfb
commit
0ce4b9d7db
14 changed files with 234 additions and 70 deletions
|
@ -270,7 +270,7 @@ void WindowManager::remove_window(Window& window)
|
|||
if (active == &window || active_input == &window || (active && window.is_descendant_of(*active)) || (active_input && active_input != active && window.is_descendant_of(*active_input)))
|
||||
pick_new_active_window(&window);
|
||||
|
||||
Compositor::the().invalidate_screen(window.frame().rect());
|
||||
Compositor::the().invalidate_screen(window.frame().render_rect());
|
||||
|
||||
if (m_switcher.is_visible() && window.type() != WindowType::WindowSwitcher)
|
||||
m_switcher.refresh();
|
||||
|
@ -1517,7 +1517,6 @@ void WindowManager::reload_icon_bitmaps_after_scale_change(bool allow_hidpi_icon
|
|||
for_each_window([&](Window& window) {
|
||||
auto& window_frame = window.frame();
|
||||
window_frame.set_button_icons();
|
||||
window_frame.scale_changed();
|
||||
return IterationDecision::Continue;
|
||||
});
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue