Commit Graph

55 Commits

Author SHA1 Message Date
013145e54b Add banan-os as a submodule instead of manually copying libraries 2026-04-15 16:59:05 +03:00
b228ef13c4 Fix null depth on CreateWindow 2026-03-23 17:15:57 +02:00
f7150056c4 Cleanup debug prints 2026-02-23 03:02:07 +02:00
bb7632d53f Fix input event state and child window
state represents state just before the event, not current

set child window to null if wid == child_wid
2026-02-23 03:00:08 +02:00
862eaa205a Fix parenthesis being flipped 2026-02-23 02:58:48 +02:00
61f8b2fa66 Implement per-client event masks
This allows multiple clients to listen for events on the same window.
Mostly used for listening events on the root window
2026-02-23 00:40:53 +02:00
561aaecc3f Add support for changing window's fullscreen state 2026-02-22 22:16:33 +02:00
4886e71452 Cleanup WM_CLOSE_WINDOW atom handling
predefine needed atoms so we dont have to check if or when they are
made available
2026-02-22 22:15:48 +02:00
8c2fea9edf Cleanup whitespace and suppress unused variable warnings 2026-02-22 22:13:03 +02:00
85bb292a31 Support WM_CLOSE_WINDOW 2026-02-22 22:13:03 +02:00
20f105f56c Fix predefined atom definitions
Atom names are not supposed to contain the XA_ prefix :D
2026-02-22 22:13:03 +02:00
3e0dc851c4 Link to system libraries on banan-os 2026-02-21 19:25:14 +02:00
26b65e1e6e Make glx and shm cmake options 2026-02-21 18:47:58 +02:00
b90cbae5ae Add missing include 2026-02-21 18:39:11 +02:00
6119e8dc7a Implement FillPoly 2026-02-21 18:29:44 +02:00
4c1f869e32 Dont use c++26 extension 2026-02-21 17:18:25 +02:00
7018e1e17d Fix font pattern matching and add ListFontsWithInfo 2026-02-21 17:15:46 +02:00
ccb2507ac3 Don't crash on failed Shm mapping 2026-02-21 17:15:02 +02:00
a13b8617dc Implement line drawing PolyLine, PolySegment 2026-02-21 16:29:42 +02:00
df32c7aa99 Add global safe getters for retrieving objects 2026-02-21 14:37:13 +02:00
a52181e140 Implement GrabServer and UngrabServer
These seem very scary but they are part of the spec :)
2026-02-21 05:04:17 +02:00
8a0f287d8c Send NoExposure in CopyArea
Im not sure if/when i should be sending GraphicsExposure but this fixes
xterm hanging when scrolling
2026-02-21 04:32:48 +02:00
2f4c0e87a1 Disable verbose debugging logs for every X request 2026-02-21 03:53:25 +02:00
7088be0e51 Add mostly stubbed out GLX extensions
Surprisingly this lets most GLX apps run as they still render client
side, they just need the extension to exist
2026-02-21 03:53:25 +02:00
6da9cb7362 Add font support 2026-02-21 03:50:42 +02:00
ed57950ee0 Get screen size from libGUI insted of hardcoding
Also use DPI 96 instead of 1 pixel == 1 milli meter
2026-02-21 03:48:05 +02:00
d0b289d77b Cleanup objects created by extensions 2026-02-21 03:47:29 +02:00
a32d509cde Fix CreateCursor masking
If there was no mask, cursor would be invisible
2026-02-21 03:46:14 +02:00
2016621f78 Implement SetClipRectangles
This fixes firefox flickering with SHM
2026-02-21 03:45:45 +02:00
406ea61be0 Implement ShmCreatePixmap 2026-02-21 03:43:06 +02:00
572a0b6bd5 Fix some crashes on invalid ids 2026-02-21 03:40:39 +02:00
631770725b Implement ReparentWindow, ListProperties, QueryBestSize 2026-02-21 03:39:57 +02:00
632787b142 Implement ShmGetImage
Also SHM extension is now only compiled if the system has shmat and
shmdt
2026-02-12 18:40:55 +02:00
188f9182ea Add stub OpenFont 2026-02-12 02:40:10 +02:00
abaa239505 Add basic MIT-SHM support
Supports only Attach, Detach and PutImage but those seem to be enough
for firefox and chromium
2026-02-12 02:39:24 +02:00
545ddefcce Fix ListExtension string encoding 2026-02-12 02:38:35 +02:00
24baab2e84 Cleanup extensions 2026-02-12 02:38:08 +02:00
6124525439 Store per window depths 2026-02-12 02:37:12 +02:00
b9c69d8456 Add proper support for QueryKeymap 2026-02-12 02:35:56 +02:00
a74d99de45 Fix keymaps, reported info and add custom cursors 2026-02-11 17:43:47 +02:00
28a68069fb Receive client auth info on initial message 2026-02-11 17:26:16 +02:00
3da8964a32 xbanan: Fix encoding of non byte sized containers 2026-02-11 17:23:46 +02:00
4801fd3e67 Only send key/mouse events to a single window
Firefox was getting mouse clicks as duplicates making every click a
double click
2026-02-10 03:05:15 +02:00
808e51b855 Make objects global instead of per client
This allows copying from one window to another!
2026-02-10 01:28:47 +02:00
d59dea43e0 Add bunch of stuff and refactor code
This adds some new opcodes, implements RANDR extension and splits stuff
into separate files
2026-02-10 00:54:02 +02:00
19235e68ca Add stub AllocNamedColor 2026-02-09 03:48:53 +02:00
a37d7168eb Fix close/epoll_ctl order 2026-02-09 03:48:53 +02:00
01f9f24b9b Add more mapping opcodes 2026-02-09 03:48:53 +02:00
7376cd17ac Add proper support for ListExtensions 2026-02-09 03:48:53 +02:00
09e442ff43 Support Pixmaps with GetGeometry 2026-02-09 03:48:53 +02:00