Colton Franklin
1fe47b2b19
obj: Move Platform and InitOptions fields into core.windows ( #1309 )
...
* obj: Make field tracking use a single bitset
* obj: module: fix comment
* obj: Move `Platform` state and `InitOptions` fields into `core.windows`, initial push, only triangle example working on macos currently
* obj: `get` and `getValue` (renamed `getAll`) now do not return optionals, comment revisions, `device` is no longer optional, `native` is optional
* core: Lots of cleanup of unnecessary comments
* core: `Event`s now all contain `window_id`, darwin/windows: event functions now send window id
* core: comments, examples: fix `core-custom-entrypoint`
2024-11-30 15:13:14 -07:00
Stephen Gutekanst
b4e2da1b69
object: fix Modules().init error
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-11-30 14:49:55 -07:00
Stephen Gutekanst
60df3e7cdc
object: graph: replace switching-consumer pattern with dedicated graph processing thread
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-11-30 12:22:10 -07:00
Stephen Gutekanst
d72facda9a
object: remove MPSC queue takeAll() in favor of just pop()
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-11-30 12:18:21 -07:00
Stephen Gutekanst
4bcafe89c4
object: fix race detected by tsan in mpsc queue
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-11-30 12:00:45 -07:00
foxnne
40dcef1836
obj: module: fix comment
2024-11-30 08:29:10 -07:00
foxnne
797f8f7a58
obj: Make field tracking use a single bitset
2024-11-30 08:29:10 -07:00
Emi Gutekanst
a43ffcacc2
object: clarify comment
2024-11-27 18:30:53 -07:00
foxnne
314b761b71
darwin: Set main window width and height on event
2024-11-27 18:30:53 -07:00
foxnne
8f92bfbace
core: add processWindowUpdates which we call from both platform_update_callback and tick
2024-11-27 18:30:53 -07:00
foxnne
27ec56a4cc
obj: Better type handling
2024-11-27 18:30:53 -07:00
foxnne
863b1def16
obj: Fix comment
2024-11-27 18:30:53 -07:00
foxnne
0546c3d5ca
obj: Refine comments, make updated set bits back to false, swap Objects parameters
2024-11-27 18:30:53 -07:00
foxnne
f58cb270b1
obj: Fix doc comment and update example to build
2024-11-27 18:30:53 -07:00
foxnne
0476999dc4
core: Allow tracking of individual struct fields for changes
2024-11-27 18:30:53 -07:00
Colton Franklin
d09990700f
core: wayland: Remove references to wl.state ( #1306 )
2024-11-24 18:42:43 -07:00
Colton Franklin
e4bc709ea2
darwin: Get keyboard input working ( #1302 )
2024-11-24 16:39:10 -07:00
Joshua Holmes
f997859d7a
core: add initial fullscreen support for x11
2024-11-24 13:35:19 -07:00
Joshua Holmes
15c63e8334
core: implement Linux.setTitle()
2024-11-24 13:35:19 -07:00
Stephen Gutekanst
ae1d49b51a
object: add TODO; fix non-aarch64 macos builds
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-11-23 21:20:04 -07:00
Stephen Gutekanst
fc13b371bf
core: various fixes
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-11-23 21:20:04 -07:00
Stephen Gutekanst
714f200bc1
module: implement cross-Object-pool graph relations
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-11-23 21:20:04 -07:00
Stephen Gutekanst
ae863c2431
obj: add object graph relations implementation using MPSC queue
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-11-23 21:20:04 -07:00
Stephen Gutekanst
78bc07c69b
obj: improve mpsc testing
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-11-23 21:20:04 -07:00
Stephen Gutekanst
59bbea454a
module: update to latest Zig + unify object ID validation/unpacking
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-11-23 21:20:04 -07:00
Stephen Gutekanst
f75d9b95fe
obj: add MPSC lock-free FIFO queue with atomic batch-take support
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-11-23 21:20:04 -07:00
Stephen Gutekanst
9d134dc72d
module: object recycling
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-11-23 21:20:04 -07:00
Stephen Gutekanst
8054d03b4d
unify mach.Call and mach.Runner into one type
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-11-23 21:20:04 -07:00
Stephen Gutekanst
14ccd5a93c
settle module state initialization
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-11-23 21:20:04 -07:00
Stephen Gutekanst
0e12857154
examples/core: building without ECS
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-11-23 21:20:04 -07:00
Stephen Gutekanst
2a13c07d9e
module: remove the ability to send "standard" arguments to systems
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-11-23 21:20:04 -07:00
Joshua Holmes
f220494649
core: remove redundant writes to input_state
2024-11-16 17:37:54 -07:00
Joshua Holmes
a1dfaa2032
core: remove redundant management of several properties in Linux
...
Properties include title, size, border, cursor_mode, cursor_shape, display_mode, refresh_rate
2024-11-16 17:37:54 -07:00
Joshua Holmes
f90fb1170b
core: wayland: use Linux object instead of Wayland obj in listeners
2024-11-16 17:37:54 -07:00
Colton Franklin
fbf274ccbe
core: darwin: Implement update, setTitle and setSize, etc. ( #1299 )
2024-11-13 12:36:55 -07:00
Ronald M Zielaznicki
2608e1313c
core: x11: clarify X11 multi-threading ( #1297 )
2024-11-09 11:36:12 -07:00
Joshua Holmes
06f61044fb
core: wayland: implement keyboard input & window resizing ( #1293 )
2024-11-09 11:33:42 -07:00
Ronald M Zielaznicki
910e8f6e82
build: examples run independently & sysaudio examples renamed as tests
2024-10-29 21:55:40 -07:00
Stephen Gutekanst
825a676d36
revise comments
2024-10-25 12:21:24 -07:00
Ronald M Zielaznicki
7220f367fd
chore(Core): oxford commas are important
2024-10-25 12:21:24 -07:00
Ronald M Zielaznicki
ef74e6a953
add(core/linux/X11): comment to explain why XInitThreads is called first
2024-10-25 12:21:24 -07:00
Ronald M Zielaznicki
355dd53857
change(Core): deinit platform after GPU backend release
2024-10-25 12:21:24 -07:00
Ronald M Zielaznicki
59b453c024
remove(core/linux/X11): errorHandler in favor of the more verbose default handler
2024-10-25 12:21:24 -07:00
Ronald M Zielaznicki
90b0923fa5
change(core/linux/x11): call to XInitThreads must be first libx11 call
2024-10-25 12:21:24 -07:00
Ronald M Zielaznicki
15a2cb1f0c
add(core/linux/Wayland): error return when decoration manager interface is not defined
2024-10-25 11:47:15 -07:00
Ronald M Zielaznicki
e6ba5e1461
change(core/Linux): features_incomplete_message to use log.warn
2024-10-25 11:47:15 -07:00
Ronald M Zielaznicki
404cf1c42a
add(Core.zig): call to deviceTick after platform update
2024-10-20 21:40:02 -07:00
Ronald M Zielaznicki
f181ed08d5
change(core/linux): FailedToConnectToDisplay message to include display's name
2024-10-20 21:40:02 -07:00
Ronald M Zielaznicki
c6beaa70a8
fix(core/linux/X11): double free during deinit
2024-10-20 21:40:02 -07:00
Joshua Holmes
0a5d817f54
core: silently fail to connect to linux display and improve logging
2024-10-20 19:39:49 -07:00