2a4a688c2d
WindowServer: Optimize rendering
...
We now use SSE2 to do alpha blending on 4 pixels at a time where
possible and use memcpy instead of manual loops for non blended regions.
2026-04-06 19:29:34 +03:00
3ac8f7e14f
WindowServer: Rewrite using epoll
...
Looking at profiles, select is a very slow syscall as it has to allocate
a temporary epoll instance
2026-01-12 23:46:03 +02:00
af0a46e79c
LibGUI/WindowServer: Rename mouse capture -> mouse relative
...
My terminology was incorrect and this is more correct
2025-08-05 03:09:24 +03:00
aa0249fadb
WindowServer: Support absolute position mouse
2025-07-19 18:01:23 +03:00
cf07b747fe
LibGUI/WindowServer: Implement per-window custom cursors
2025-06-28 16:55:13 +03:00
273e9bbc92
LibGUI/WindowServer: Implement per-window cursor hiding
2025-06-28 16:55:13 +03:00
83069e433f
LibGUI/WindowServer: Implement window showing/hiding
2025-06-28 16:55:13 +03:00
bbb490b24f
LibGUI: Implement set_max_size
...
I already support set_min_size so why not this :)
2025-06-28 16:55:13 +03:00
a8844ddd28
WindowServer: Send mouse release to same window as mouse press
2025-05-13 10:16:21 +03:00
5c37f198cb
WindowServer/LibGUI: Allow windows to set minimum size
2025-05-05 18:19:59 +03:00
3b02a9d4fe
WindowServer: Resize from closest corner
2025-05-05 18:19:19 +03:00
c9057aa498
WindowServer: Cleanup code and resize on fullscreen
2025-05-05 16:42:15 +03:00
7798145c74
WindowServer: Implement window resizing
...
windows can now set resizable attribute which allows window server to
resize them
2025-05-05 03:14:50 +03:00
76d4e6bd18
LibGUI: Add support for changing window title
2025-05-05 01:10:05 +03:00
36d07065fb
WindowServer: Optimize msync calls to synchronize less bytes
...
This *probably* makes framebuffer much faster :D Window server does not
have to do page aligned and page sized syncs which used way too many
pixels.
2024-11-17 20:15:28 +02:00
bda2c663da
WindowServer: Implement fullscreen windows
...
If window size does not match framebuffer size, window data will be
scaled to framebuffer using nearest sampling for best performance.
2024-11-13 19:10:15 +02:00
d19264eea8
WindowServer: Implement partial window resizing
...
This patch adds support for client side resizing, so clients can request
the server to resize their windows. WindowServer will respond with
resize event when and if the resizing is complete.
2024-11-13 17:30:12 +02:00
da8170c5b6
LibGUI: Add support for focusable windows and mouse capturing
...
These are essential parts of a window server! This allows making TaskBar
non-focusable.
2024-11-08 02:55:10 +02:00
d266c7f93b
LibGUI: Implement attributes for windows
...
Windows can now change whether they have title bar, rounded corners,
alpha channel and whether they are movable. Also windows can also change
their own position
2024-10-18 03:32:12 +03:00
d7e5c56e94
userspace: Use SOCK_STREAM instead of SOCK_SEQPACKET for WindowServer
...
This makes more sense if we have longer packages
2024-10-17 01:44:48 +03:00
97da386ed6
WindowServer: Make focused window bounce by pressing F2
...
This was an awesome idea by [@Dcraftbg](https://github.com/Dcraftbg )
2024-09-12 20:09:23 +03:00
c706829a91
WindowServer: Make corner-radius a variable in config file!
2024-09-12 20:07:30 +03:00
8ddab05ed3
BuildSystem: Cleanup userspace directory layout
...
userspace programs are now in userspace/programs
userspace tests are now in userspace/tests
This makes listing userspace projects much cleaner. Libraries were
already separated to their own directory, so other programs should also.
2024-07-03 09:18:02 +03:00