Commit graph

417 commits

Author SHA1 Message Date
Ottatop
13335e9cdd Don't focus popups
Ya know there used to be a commented bit telling me to not set keyboard focus on a popup, and that mysteriously went away and I missed this check
2024-03-22 01:22:37 -05:00
Ottatop
39bf58b41c Keep track of a pending window swap
Prevents windows from getting swapped a bunch of times in one motion causing them not to actually swap
2024-03-21 20:55:02 -05:00
Ottatop
005c787f39 Set keyboard focus to layer surfaces with keyboard exclusivity 2024-03-21 20:18:14 -05:00
Ottatop
0ae090bba5 Add window raising to api 2024-03-21 18:39:27 -05:00
Ottatop
000e3eb2ca Update pointer focus without motion if different 2024-03-21 18:13:16 -05:00
Ottatop
107f4a7ff9 Layout on client unfullscreen request 2024-03-21 17:08:13 -05:00
Ottatop
d41a11347d Fix metaconfig keybinds not working
They were being cleared directly after getting set due to a previous reordering. Oops
2024-03-21 16:43:58 -05:00
Ottatop
5fd8c60f21 Fix minor bugs and do minor cleanup 2024-03-21 16:40:08 -05:00
Ottatop
2880792d9f Schedule render on layout application 2024-03-19 23:40:06 -05:00
Ottatop
86f72c10d5 Partially Revert "Add minor winit improvements"
This partially reverts commit ecd08f6023.
2024-03-19 23:38:22 -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
79291d1cd9 Add rust layout docs, adhere to nonexclusive zone 2024-03-15 22:09:27 -05:00
Ottatop
75852551e2 Remove old layout system completely 2024-03-15 21:12:16 -05:00
Ottatop
ab2b3ee13b Add fair layout 2024-03-15 14:02:28 -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
13ea0a683b Change TagId back to struct 2024-03-12 19:18:27 -05:00
Ottatop
9f187aba65 Extract window api impls 2024-03-12 19:09:54 -05:00
Ottatop
e3830e9c26 Fix compile errors 2024-03-12 18:40:12 -05:00
Ottatop
9cdb662bbb Don't handle resizes when not resizing 2024-03-11 21:38:24 -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
6d83e34868 Setup Lua API integration tests 2024-03-06 18:50:45 -06:00
Ottatop
f4a5328c2c Move all mods into lib
For future testing
2024-03-05 23:25:04 -06:00
Ottatop
ecd08f6023 Add minor winit improvements 2024-03-05 23:14:33 -06:00
Ottatop
8bbb36f512 Rename and move stuff around 2024-03-04 20:38:20 -06:00
Ottatop
d02c138414 Fix focused_window not returning None if no window is focused 2024-03-04 19:34:00 -06:00
Ottatop
9b5b242aea Fix pointer not moving on udev
oops
2024-03-04 19:17:21 -06:00
Ottatop
c96b01f733 Clean up stuff 2024-03-04 19:16:10 -06:00
Ottatop
2a25ab2319 Remove state.pointer_location 2024-03-04 16:43:54 -06:00
Ottatop
d9116da20d Unify event loop running 2024-03-04 15:54:30 -06:00
Ottatop
f9ca886ed9 Change minor things 2024-03-04 14:44:33 -06:00
Ottatop
a6820ce00e Add default dir for config gen, fix test 2024-03-03 03:38:45 -06:00
Ottatop
24696595af Finish better CLI 2024-03-03 02:25:19 -06:00
Ottatop
63c0ef1e85 Start on a better CLI 2024-03-02 01:23:31 -06:00
Ottatop
8c429f4077 Split FocusTarget into keyboard and pointer variants 2024-03-01 00:07:01 -06:00
Ottatop
48cd3d0df9 Remove space_elements!
so uh when you impl SpaceElement you gotta actually remember to impl the geometry fn, which is why Alacritty was 44 pixels off in the other attempt at this
2024-02-29 20:10:23 -06:00
Ottatop
16fff3f7e3 Update Smithay 2024-02-29 16:28:25 -06:00
Ottatop
e734a716c0 Set window focused only if it's on the focused output 2024-02-24 14:58:58 -06:00
Ottatop
1f909ac81b Remove unused import
QUICK BEFORE THE CI FAILS
2024-02-24 14:42:43 -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
2e0a8b940a ong I don't remember 2024-02-23 16:24:43 -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
563bf7d92a Scaffold signals 2024-02-21 18:08:23 -06:00
Ottatop
e52af7a841 Change default stdout log level to INFO, file level to DEBUG 2024-02-19 00:17:26 -06:00
Ottatop
fc3d15178d Dedup API handling 2024-02-18 23:05:37 -06:00
Ottatop
832165b838 Fix doc paths
Also some other random cleanup
2024-02-17 23:57:02 -06:00
Ottatop
cea9d9048a Add some config unit tests 2024-02-17 00:00:25 -06:00
Ottatop
8a2a6a3185 Remove CalloopData
This was a remnant of Anvil
2024-02-16 22:37:53 -06:00
Ottatop
f20c3cd847 Update dependencies 2024-02-07 19:38:15 -06:00
Ottatop
08436f3e12 Get rid of blockers
omg I hate these things, they're so dang finicky and I'm not big brain enough to make them not finicky
2024-02-05 21:30:00 -06:00
Ottatop
32b8c0dd30 Set sysinfo's open files limit to 0 2024-01-29 20:46:18 -06:00
Ottatop
e2a8f8ebfe Load default config on config crash 2024-01-29 20:38:46 -06:00
Ottatop
e6bdb01757 Actually return the data control state
I can feel my IQ dropping as we speak
2024-01-24 15:43:10 -06:00
Ottatop
d8b2544eca Impl wlr_data_control 2024-01-24 14:54:30 -06:00
Ottatop
7012b86a2d Return when mousebind is triggered 2024-01-22 21:49:20 -06:00
Ottatop
22e708b77b Remove commented code 2024-01-22 21:40:50 -06:00
Ottatop
66c59db410 Unconditionally set floating size 2024-01-22 21:40:24 -06:00
Ottatop
dae790f54c Update Smithay, add MPL licenses to API libs 2024-01-22 21:04:08 -06:00
Ottatop
0b88ad298b Completely rip out the old msgpack stuff
Did this break anything? ¯\_(ツ)_/¯
2024-01-21 23:42:48 -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
e18b2a12d3 Add rockspec, remove graceful shutdown stuff 2024-01-15 20:30:59 -06:00
Ottatop
5b116c68be Toggle tags on windows correctly 2024-01-15 18:01:02 -06:00
Ottatop
b67867c066 Move grpc socket to XDG_RUNTIME_DIR 2024-01-15 17:46:08 -06:00
Ottatop
7841ea3422 Add libinput to new API
I forgor 💀
2024-01-14 23:38:05 -06:00
Ottatop
3f87784248 Debug stuff 2024-01-14 22:28:02 -06:00
Ottatop
f7068a1146 Get mousebinds to work 2024-01-14 20:25:57 -06:00
Ottatop
a8239f171e Add docs to new Lua API
1000% sure I'm gonna have to rewrite my LDoc generation tool to actually work
2024-01-14 18:01:41 -06:00
Ottatop
7fe56ed949 Gracefully shutdown after ctrl-c 2024-01-14 13:34:00 -06:00
Ottatop
3ff1f4e737 Filter threads from process count
Found like 85 sockets in /run/user/1000 that weren't getting cleaned up
2024-01-14 12:01:11 -06:00
Ottatop
1cdc6fe42d No clue
I'm sick and my brain is fried rn no clue what's in this commit
2024-01-13 23:15:14 -06:00
Ottatop
efa846d40b Remove re-exports 2024-01-13 15:42:15 -06:00
Ottatop
0c4fc3ad1d Start on new example config
TODO: write the docs, fix input keysym reading, make a luarocks module
2024-01-12 21:48:07 -06:00
Ottatop
f10bd933ca Write rest of new Lua API 2024-01-12 20:15:58 -06:00
Ottatop
b1109b57a7 Fix compile errors
Something something "build before you push" blah blah
2024-01-11 13:46:58 -06:00
Ottatop
3236f455b9 Impl remaining services 2024-01-11 13:40:17 -06:00
Ottatop
31d3ffc10d Impl services for input, tag, and process 2024-01-10 20:21:59 -06:00
Ottatop
46ba7d9ad0 Extract proto into crate, start impl'ing services 2024-01-09 19:25:51 -06:00
Ottatop
3d05338c82 Add tonic-reflection 2024-01-08 20:11:02 -06:00
Ottatop
48da903a0f Create proto files 2024-01-08 18:55:59 -06:00
Ottatop
b08b979fe9 Migrate all async to tokio 2024-01-08 13:43:38 -06:00
Ottatop
23f80be22a Begin moving configuration to gRPC 2024-01-08 12:51:04 -06:00
Ottatop
186d435923 Update dependencies 2024-01-08 12:42:29 -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
e4df0f9488 Remove commented out code 2023-12-25 19:52:17 -06:00
Ottatop
f9e81d4c1d Use space_elements to remove boilerplate
Unsure if this helped or not because I had to add `_ => unreachable!()` everywhere I matched on `WindowElement`
2023-12-23 22:17:35 -06:00
Ottatop
31172c5a4e Fix multi-monitor fullscreen rendering and pointer input 2023-12-23 22:03:20 -06:00
Ottatop
f8d1e59c06 Correctly offset render elements 2023-12-21 21:15:21 -06:00
Ottatop
5ac7157f61 Scedule render on SetLayout 2023-12-21 19:00:21 -06:00
Ottatop
e8702f9c0c Remove unused import 2023-12-21 18:50:28 -06:00
Ottatop
ef4b1d3d51 Update workflow action
Evidently I was using a version from 2020 for some reason
2023-12-20 19:54:34 -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
b1a97e81ed Fix clippy stuff 2023-12-19 15:32:33 -06:00
Ottatop
4dbf1a313b Fix compiler errors 2023-12-19 12:05:36 -06:00
Ottatop
59c33075cd Use a Blocker implementation 2023-12-19 12:05:36 -06:00
Vladislav Nepogodin
96930eb7e5
apply rustfmt 2023-12-19 15:09:36 +04:00