Commit graph

772 commits

Author SHA1 Message Date
Ottatop
6a990d45d2 Add logical size to output props, use in set_loc_adj_to 2024-03-23 17:42:05 -05:00
Ottatop
5fbb3e51e9 Add scale to output properties 2024-03-23 16:55:06 -05:00
Ottatop
1907381d99 Add scale setting to Rust API 2024-03-23 16:08:51 -05:00
Ottatop
dfc7a1351e Add scale setting to API, fix fractional scaling 2024-03-23 15:23:00 -05:00
Ottatop
8d3bbf28f8 Add Pinnacle.run and use for tests 2024-03-23 01:39:07 -05:00
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
5da0f84350 Set drm mode when resizing output 2024-03-22 21:19:16 -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
698cd1d973 Correctly parse EDID info
Should fix output make always being Unknown and some cases of the monitor name not being parsed because of a faulty detailed timings parse
2024-03-22 14:27:18 -05:00
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
5d117288c2
Merge pull request #176 from pinnacle-comp/layout
Add a dynamic and configurable layout system
2024-03-16 22:08:25 -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
6c7fc60fee
Merge branch 'main' into layout 2024-03-16 21:05:45 -05:00
Ottatop
0bd64ee3aa Add Rust default config comments, batch tag calls 2024-03-16 21:03:01 -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
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
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
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
77a3ae85a5 Add layout proto defs 2024-03-12 18:20:13 -05:00
Ottatop
e6f6a55d18
Update README
Fix README ToC links
2024-03-12 18:15:42 -05:00
Ottatop
9cdb662bbb Don't handle resizes when not resizing 2024-03-11 21:38:24 -05:00
Ottatop
4b509b5bc1 Recurse through lua window rule cond to extract id 2024-03-11 19:57:06 -05:00
Ottatop
eea10c60a3
Merge pull request #174 from pinnacle-comp/integration_testing
Add some Lua API integration/unit tests

Ok they're more like unit tests tbh
2024-03-11 19:45:09 -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
e3504038ee Update CI for API testing
I like the part where he said "it's squashin' time" and squashed all
over the git history

Add xwayland to CI

Add libegl to CI

Add debug for test

Don't run regular test when debugging

Remove a dash

Ya know I'd love to get act working so I don't have to push these every time I want to work on workflows but it always hangs when installing apt dependencies

Add foot to CI

Truly a genius at work here, I know
2024-03-11 19:38:36 -05:00
Ottatop
6d83e34868 Setup Lua API integration tests 2024-03-06 18:50:45 -06:00