comparison dep/animia/src/win.cc @ 202:71832ffe425a

animia: re-add kvm fd source this is all being merged from my wildly out-of-date laptop. SORRY! in other news, I edited the CI file to install the wayland client as well, so the linux CI build might finally get wayland stuff.
author Paper <paper@paper.us.eu.org>
date Tue, 02 Jan 2024 06:05:06 -0500
parents 9f3534f6b8c4
children
comparison
equal deleted inserted replaced
201:8f6f8dd2eb23 202:71832ffe425a
1 #include "animia/win.h" 1 #include "animia/win.h"
2 2
3 #ifdef WIN32 3 #ifdef WIN32
4 # include "animia/win/win32.h" 4 # include "animia/win/win32.h"
5 #elif MACOSX 5 #endif
6
7 #ifdef MACOSX
6 # include "animia/win/quartz.h" 8 # include "animia/win/quartz.h"
7 #elif X11 9 #endif
10
11 #ifdef X11
8 # include "animia/win/x11.h" 12 # include "animia/win/x11.h"
13 #endif
14
15 #ifdef WAYLAND
16 # include "animia/win/wayland.h"
9 #endif 17 #endif
10 18
11 namespace animia::internal { 19 namespace animia::internal {
12 20
21 bool EnumerateWindows(window_proc_t window_proc) {
22 bool success = false;
23
13 #ifdef WIN32 24 #ifdef WIN32
14 win32::Win32WinTools os_win; 25 success |= win32::EnumerateWindows(window_proc);
15 #elif MACOSX
16 quartz::QuartzWinTools os_win;
17 #elif X11
18 x11::X11WinTools os_win;
19 #else
20 BaseWinTools os_win;
21 #endif 26 #endif
22 27
23 BaseWinTools& win = os_win; 28 #ifdef MACOSX
29 success |= quartz::EnumerateWindows(window_proc);
30 #endif
31
32 #ifdef X11
33 success |= x11::EnumerateWindows(window_proc);
34 #endif
35
36 #ifdef WAYLAND
37 success |= wayland::EnumerateWindows(window_proc);
38 #endif
39
40 return success;
41 }
24 42
25 } // namespace animia::internal 43 } // namespace animia::internal