stub out linux demon; linux font provider; begin work, get windows/events up and running in os_gfx

This commit is contained in:
Ryan Fleury
2024-07-18 13:37:22 -07:00
parent ec9c68f55e
commit 4835264059
17 changed files with 999 additions and 481 deletions
+42
View File
@@ -10,5 +10,47 @@
#include <X11/Xlib.h>
#include <X11/Xatom.h>
#include <X11/extensions/sync.h>
#include <X11/keysym.h>
#include <X11/keysymdef.h>
////////////////////////////////
//~ rjf: Window State
typedef struct OS_LNX_Window OS_LNX_Window;
struct OS_LNX_Window
{
OS_LNX_Window *next;
OS_LNX_Window *prev;
Window window;
XID counter_xid;
U64 counter_value;
};
////////////////////////////////
//~ rjf: State Bundle
typedef struct OS_LNX_GfxState OS_LNX_GfxState;
struct OS_LNX_GfxState
{
Arena *arena;
Display *display;
OS_LNX_Window *first_window;
OS_LNX_Window *last_window;
OS_LNX_Window *free_window;
Atom wm_delete_window_atom;
Atom wm_sync_request_atom;
Atom wm_sync_request_counter_atom;
OS_GfxInfo gfx_info;
};
////////////////////////////////
//~ rjf: Globals
global OS_LNX_GfxState *os_lnx_gfx_state = 0;
////////////////////////////////
//~ rjf: Helpers
internal OS_LNX_Window *os_lnx_window_from_x11window(Window window);
#endif // OS_GFX_LINUX_H