Commit graph

217 commits

Author SHA1 Message Date
Ottatop
535b441887 Return from ping loop if it's the only coroutine
FIXME: this is a bandaid fix to get tests working again. Most tests will have to wait through one ping loop before exiting, causing tests to take like 10 minutes.
2024-03-23 00:43:29 -05:00
Ottatop
6adb560e81 Add set mode 2024-03-22 18:58:31 -05:00
Ottatop
2fd98301e6 Add output modes to API 2024-03-22 18:37:27 -05:00
Ottatop
869a2223f5 Add keepalive pings to clients
This should clients to die if the compositor was killed but they weren't dropped
2024-03-22 16:40:06 -05:00
Ottatop
0ae090bba5 Add window raising to api 2024-03-21 18:39:27 -05:00
Ottatop
fcd549c947 Move stuff around and attempt to fix the docs
Futile attempt btw, what I need to do is rewrite the whole Lua doc gen thing
2024-03-16 21:48:40 -05:00
Ottatop
2538ef5b74 Add example config comments 2024-03-16 20:40:39 -05:00
Ottatop
4b63dc0830 Duplicate doc comments
Don't like that I have to do this but there's no way to have both a non-null and nullable class definition without some duplication
2024-03-16 20:12:18 -05:00
Ottatop
88988701e6 Change Lua builtin layouts to classes 2024-03-16 19:58:38 -05:00
Ottatop
17d0760e43 Add deep copy to copy Lua layouts
This is probably not going to be in the final iteration; I think I might convert all Lua layouts to classes instead of having users deep copy them to change settings
2024-03-16 16:40:47 -05:00
Ottatop
75852551e2 Remove old layout system completely 2024-03-15 21:12:16 -05:00
Ottatop
a98777c11e Add Rust layouts 2024-03-15 20:51:12 -05:00
Ottatop
ab2b3ee13b Add fair layout 2024-03-15 14:02:28 -05:00
Ottatop
a8ec13d7d2 Add spiral layout 2024-03-14 21:13:26 -05:00
Ottatop
b2dd05fd1e Dedup layout logic 2024-03-14 21:06:09 -05:00
Ottatop
94cd2e53aa Add corner layout 2024-03-14 20:44:08 -05:00
Ottatop
e86f242330 Impl Layout.request_layout 2024-03-14 19:42:08 -05:00
Ottatop
e1f2706428 Add layout cycling, dwindle, remove old layout stuff 2024-03-14 19:21:51 -05:00
Ottatop
b3ba9f9393 Add new master stack layout
Currently only this layout for the Lua client works, and there's no cycling layouts yet
2024-03-14 17:31:32 -05:00
Ottatop
4b509b5bc1 Recurse through lua window rule cond to extract id 2024-03-11 19:57:06 -05:00
Ottatop
140b0200aa Add some tests
First ever squash no clue what I'm doing
2024-03-11 19:39:41 -05:00
Ottatop
2e5853eabe Return from batch if requests is empty
Fixes a hang if you tried to close a window with the keybind with no windows open
2024-02-24 15:23:42 -06:00
Ottatop
14a36b9738 Rework focus and add Window.set_focused
This has to be one of the most unreviewable commits I think I've created yet
2024-02-24 14:41:52 -06:00
Ottatop
67ee5021bd Port Lua client fix 2024-02-23 18:10:28 -06:00
Ottatop
b7c60a9e79 Fixup Lua docs again 2024-02-23 17:54:53 -06:00
Ottatop
3959a87019 Fixup Lua docs 2024-02-23 17:49:09 -06:00
Ottatop
d1e7c92774 Add Lua docs 2024-02-23 17:36:55 -06:00
Ottatop
d76777a633 Add window pointer enter and leave signals 2024-02-21 23:56:19 -06:00
Ottatop
6b2b7066ac Make connect_for_all use signals 2024-02-21 23:30:28 -06:00
Ottatop
7d94fc4362 Add output connect signal
untested
2024-02-21 22:48:09 -06:00
Ottatop
1539f73e45 Get a signal to work 2024-02-21 19:40:11 -06:00
Ottatop
729ad66429 Merge branch 'main' into signal_minimal 2024-02-21 18:09:25 -06:00
Ottatop
563bf7d92a Scaffold signals 2024-02-21 18:08:23 -06:00
Ottatop
20af3a116c Add basic API batching for Lua 2024-02-20 15:59:04 -06:00
Ottatop
fa2eed1adc Change config objects to modules 2024-02-07 21:39:56 -06:00
Ottatop
dae790f54c Update Smithay, add MPL licenses to API libs 2024-01-22 21:04:08 -06:00
Ottatop
82ef55024c Add process docs, set_env 2024-01-20 23:05:50 -06:00
Ottatop
b55c9e7813 Add output docs 2024-01-20 22:14:49 -06:00
Ottatop
048835837d Add note 2024-01-16 16:24:34 -06:00
Ottatop
643f694478 Remove stuff that shouldn't be in docs 2024-01-16 16:21:38 -06:00
Ottatop
2dd170cf10 Rename all lua_grpc to lua 2024-01-16 14:23:18 -06:00
Ottatop
c444ae9585 Remove old Lua API 2024-01-15 23:37:17 -06:00
Ottatop
bfcfe99ccb Move spawn_once logic into compositor, add spawn_once to Rust API, bump tracing 2023-12-25 21:02:50 -06:00
Ottatop
24034e7051 Make blocker work on udev
Also apparently stylua updated or something cuz I formatted the example_config and it's different now. Also need to fix the slight flickering when closing windows
2023-12-20 19:48:49 -06:00
Ottatop
3427fe5d7c Do other misc stuff
These are some horrible commit messages
2023-12-14 22:00:04 -06:00
Ottatop
d7b783877f Merge override redirect windows into main window vec
I previously stuck all X11 override redirect windows in their own stack which is really lazy. Still need to make it so child OR windows will render above their parents, even when fullscreen.
2023-12-13 20:07:19 -06:00
Ottatop
0564342a6a Update example config 2023-10-18 20:35:36 -05:00
Ottatop
8b0d7f1427 Make output API functions non-nil 2023-10-18 20:31:37 -05:00
Ottatop
474da43280 Make tag API functions non-nil 2023-10-18 20:16:26 -05:00
Ottatop
17ca00f6be Make window API functions non-nil
This does not apply to functions that return an array; you'll have to do a for loop or check for nil on index in that case.
2023-10-18 20:08:55 -05:00
Ottatop
ed5447d5b6 Rename API modules and classes internally 2023-10-18 03:44:42 -05:00
Ottatop
0e5a4f0621 Save output state on disconnect 2023-09-29 04:38:32 -05:00
Ottatop
40f90e45d9 Update example config, remove mouse button type 2023-09-28 18:56:54 -05:00
Ottatop
de6bf3ee82 Remove meta tag 2023-09-28 18:46:56 -05:00
Ottatop
d26b9b968c Add libinput to API 2023-09-28 18:46:08 -05:00
Ottatop
2a13e736e4 Add xkbconfig to API 2023-09-28 10:17:28 -05:00
Ottatop
307813b062 Fix config reloading 2023-09-21 19:48:52 -05:00
Ottatop
cce7ca8314 Fallback to default config on metaconfig parse fail 2023-09-21 18:07:56 -05:00
Ottatop
799517bfb5 Load default config on config crash 2023-09-21 17:12:16 -05:00
Ottatop
019e606584 Add some docs, make socket_dir update on reload 2023-09-20 17:55:21 -05:00
Ottatop
7f53a4b73e Update README and metaconfig comments 2023-09-11 04:05:16 -05:00
Ottatop
74afb769ca Move table because doc gen doesn't support that 2023-09-10 22:01:40 -05:00
Ottatop
1c1898f0b1 Add mousebinds to API 2023-09-10 21:54:58 -05:00
Ottatop
aaf2921363 Add env setting to API 2023-09-10 04:49:31 -05:00
Ottatop
0f42e403ae Make focus tag-specific 2023-09-09 22:47:59 -05:00
Ottatop
9d73151ca9 Update API docs 2023-09-09 20:52:52 -05:00
Ottatop
465e66067d Update keybind handling and API docs 2023-09-09 20:41:21 -05:00
Ottatop
89fc2919f3 Simplify input API 2023-09-09 19:27:05 -05:00
Ottatop
9c3df5ce88 Fix documentation 2023-09-09 04:09:28 -05:00
Ottatop
a18b9856bb Simplify layout cycling, fix wins not updating on maximize 2023-09-09 04:01:55 -05:00
Ottatop
b3cab091da Clarify documentation 2023-09-08 20:27:03 -05:00
Ottatop
b88424ea24 Fix typo 2023-09-07 21:00:07 -05:00
Ottatop
fb09f088a9 Explain placement of window.rules.add() 2023-09-07 20:59:22 -05:00
Ottatop
7d2849abac Clean up example_config 2023-09-07 20:56:43 -05:00
Ottatop
bae8f32d44 Fix documentation formatting that I missed 2023-09-07 20:55:25 -05:00
Ottatop
84326c29b8 Fix documentation formatting 2023-09-07 20:48:41 -05:00
Ottatop
fa011fe3d4 Add documentation 2023-09-07 20:38:57 -05:00
Ottatop
d76cb13a1f Simplify window rules API 2023-09-07 20:36:49 -05:00
Ottatop
5a9f15a4d4 Apply window rules to xwayland windows 2023-09-07 18:00:58 -05:00
Ottatop
178ee9464b Add output to window rule 2023-09-07 17:42:03 -05:00
Ottatop
946f732502 Add tag constructors to window rules 2023-09-05 23:18:44 -05:00
Ottatop
ec651e24b3 Add client side window rules API 2023-09-05 22:13:43 -05:00
Ottatop
2793c5f50c Remove boilerplate = true 2023-08-28 20:46:04 -05:00
Ottatop
b61f3a2fb2 Fix some formatting issues maybe 2023-08-28 20:28:17 -05:00
Ottatop
a7309eb20b Clean up stuff 2023-08-28 20:12:26 -05:00
Ottatop
c38272222a Add more documentation 2023-08-28 19:47:29 -05:00
Ottatop
c295bf5df9 Restore config.ld and ldoc.css 2023-08-26 23:08:26 -05:00
Ottatop
a9fd0f725c Remove doc dir 2023-08-26 23:05:30 -05:00
Ottatop
694134582d Attempt automatic doc gen 2023-08-26 22:26:32 -05:00
Ottatop
bfa4e2743b Work on LDoc documentation 2023-08-21 21:30:51 -05:00
Ottatop
f8d0ffed89 Fix window methods 2023-08-21 21:04:57 -05:00
Ottatop
01a110d97c Update example_config 2023-08-21 20:58:02 -05:00
Ottatop
fd09e20ced Allow new tag helpers for window API 2023-08-21 20:47:51 -05:00
Ottatop
7154a0bb95 Clean up window documentation 2023-08-21 20:37:15 -05:00
Ottatop
382a3056a0 Add helpers for getting outputs and tags 2023-08-21 20:17:27 -05:00
Ottatop
9a09040fac Add socket_dir to metaconfig 2023-08-16 10:34:50 -05:00
Ottatop
e423d1e345 Add metaconfig comments, PINNACLE_DIR env 2023-08-15 21:30:49 -05:00
Ottatop
924588005c Add metaconfig 2023-08-14 20:33:10 -05:00
Ottatop
85fd31a317 Fix fullscreen and maximized toggling floating instead
This is why you never copy paste code
2023-08-14 20:23:23 -05:00
Ottatop
3ba760ed4f Update example_config 2023-08-14 14:44:10 -05:00