Ottatop
1543b64fb8
Add pointer constraints
...
Needs more work and testing
2024-04-27 17:02:19 -05:00
Ottatop
4eb29c49dc
Close layer surfaces on output removal
...
Fixes mako not making new notifications if one is sent during sleep
2024-04-27 12:51:03 -05:00
Ottatop
8c0bce7191
Separate stuff that took in State
...
I love me some non-overlapping borrows
2024-04-26 20:25:40 -05:00
Ottatop
b99cc8ffce
Move impls to Pinnacle
2024-04-26 19:58:02 -05:00
Ottatop
8aaec59452
Split off backend and rest of State
...
Currently doesn't clean up anything, still need to change `impl State`s to `impl Pinnacle`s
2024-04-26 18:43:18 -05:00
Ottatop
c9012cf483
Improve logging
...
Use better env filters, log panics, and make logging to files not use color escapes
2024-04-26 14:56:12 -05:00
Leon Vack
13df2d161b
Fix lua tests hanging
2024-04-25 11:07:32 +02:00
Leon Vack
194da9e557
Float all windows for tests and improve window positioning
2024-04-25 10:48:37 +02:00
Leon Vack
0b353c45f2
Use an embedded config for tests
2024-04-25 10:48:37 +02:00
Leon Vack
c0fe55003b
Fix xwayland and cleanup
2024-04-25 10:48:37 +02:00
Leon Vack
abb21d9924
Perform wlcs interactions using an InputBackend
2024-04-25 10:48:37 +02:00
Leon Vack
e8b8a33bfc
Make wlcs run some actual tests
2024-04-25 10:48:36 +02:00
Leon Vack
7adcb1d729
Make wlcs start
2024-04-25 10:47:48 +02:00
Ottatop
7e80a6a64f
Update test infrastructure
...
Extracts the dummy output name into a const. Unfortunately I still need a way to interpolate that into Lua strings. Also fixes possible hangs when Lua crashes
2024-04-24 21:37:17 -05:00
Ottatop
e2232fb56c
Don't add modes with add_mode
...
Doing so adds non-current modes to the output (which are deprecated) and causes smithay to send them to `wl_output` consumers. Caused swww to open at the wrong size
2024-04-24 20:47:47 -05:00
Ottatop
36a82245a7
Fix tests
...
Unwrap in tests to check error
Add backtrace to debug tests
Add dbg
i hate this
debugging github actions is a pain
aaaa
aaaaaaaaa
needs to be rebased
2024-04-24 18:33:44 -05:00
Ottatop
ce22883125
Return instead of asserting
2024-04-23 19:41:26 -05:00
Ottatop
45bf9b698c
Move state clearing on config start to front
2024-04-22 21:17:51 -05:00
Ottatop
1b09fe94ee
Remove luarock from build.rs
2024-04-22 20:45:42 -05:00
Ottatop
ac15e2d566
Fix Rust API not exiting correctly
...
My goodness was that not fun to debug
2024-04-22 20:34:06 -05:00
Ottatop
43891a2a48
Ignore layout stream errors
2024-04-22 14:14:22 -05:00
Ottatop
f54516bbe3
Embed default rust config
...
Need to clean up how the Rust API handles shutdown signals
2024-04-21 23:45:03 -05:00
Ottatop
6f6b91f4f8
Use tokio tasks instead of threads
...
why is the github runner blocking on tests, it doesn't on my machine
2024-04-20 21:25:53 -05:00
Ottatop
314ee5ab6e
Commit resize state even if tiled
2024-04-20 12:54:48 -05:00
Ottatop
591c5c1cd0
Update Smithay and don't map resized windows if tiled
2024-04-20 12:54:09 -05:00
Ottatop
a1021638c5
Implement relative pointer protocol
2024-04-19 15:23:56 -05:00
Ottatop
8df5682328
Update internal xwm window layering
2024-04-19 15:02:16 -05:00
Ottatop
e0af7743a4
Merge branch 'main' into api_enhancements
2024-04-18 16:49:23 -05:00
Ottatop
457f0d3d56
Add reload config API call
2024-04-18 16:30:10 -05:00
Ottatop
1c2f639a56
Add tag active signal
2024-04-18 14:42:49 -05:00
Ottatop
d2445afe10
Allo wmatching outputs by EDID serial
...
Note that EDID serials are not totally unique across all monitors. Also some monitors don't have an EDID serial number. Also this hasn't been tested yet
2024-04-18 11:04:15 -05:00
Ottatop
0284a70c10
Add serial to ouptut properties
2024-04-17 23:01:56 -05:00
Ottatop
5634cbbfe7
Improve Rust output setup API
2024-04-17 18:56:01 -05:00
Ottatop
6c8b643577
Add OutputHandle::set_transform
2024-04-16 21:30:59 -05:00
Ottatop
ce8b56eee8
Add Output::setup
...
Still needs polishing and more importantly testing, also the Lua impl isn't finished yet
2024-04-15 15:50:09 -05:00
Ottatop
52d05b66b7
Send frames on layout
...
very hacky no good.
2024-04-13 14:17:49 -05:00
Ottatop
023ebe8a2d
Add output resize and move signals
2024-04-12 11:46:52 -05:00
Ottatop
6d78436d18
Add TagHandle::windows
2024-04-12 07:57:22 -05:00
Ottatop
1ba636f39f
Bump dependencies
2024-04-12 07:24:37 -05:00
Ottatop
0b70040f62
Position popup on reposition request
2024-04-11 18:17:41 -05:00
Ottatop
8915ef3865
Finish simplifying popup logic
2024-04-11 18:11:43 -05:00
Ottatop
97efdb854c
Start simplifying popup logic
...
So uh when did Smithay have all these popup helpers, did I just not read the docs hard enough
2024-04-11 14:49:30 -05:00
Ottatop
bb01cd9563
Schedule render on popup destroy and x11 window map
2024-04-11 11:12:23 -05:00
Ottatop
a4e1a63efd
Remove CropRenderElement from window render elements
2024-04-10 14:02:48 -05:00
Ottatop
4a1a01a5a4
Render overlay layers above fullscreen windows
2024-04-10 13:32:33 -05:00
Ottatop
7ee97f2589
Fail gamma control on output removal
2024-04-10 09:39:33 -05:00
Ottatop
c4d811fd97
Comment useless code for later
2024-04-10 07:44:41 -05:00
Ottatop
9933d64ed2
Fix hang when layer shell nested popup appears
...
And also some minor changes, also there is a possibility that switching back to the tty Pinnacle is in will lead to a black screen, really need to find a way to reproduce
2024-04-10 07:13:16 -05:00
Ottatop
589b0b135f
Update tty switching and apply pending/previous gammas
...
Bunch more stuff yoinked from Niri
2024-04-10 06:32:52 -05:00
Ottatop
24ac349922
Implement wlr-gamma-control
...
Buncha stuff yoinked from Niri
2024-04-10 01:55:45 -05:00
Ottatop
76fc825b51
Render everything when there's a fullscreen window
...
And properly handle input and layering this time
2024-04-07 01:56:36 -05:00
Ottatop
485dba69d6
Revert "Render everything when there's a fullscreen window"
...
This reverts commit a0aa30fec1
.
gj me you failed to realize that now layer surfaces render above
fullscreen windows
2024-04-06 21:21:49 -05:00
Ottatop
a0aa30fec1
Render everything when there's a fullscreen window
2024-04-06 21:06:40 -05:00
Ottatop
bf4e270bfc
Bump dependencies
2024-04-06 16:14:45 -05:00
Ottatop
ea932e48ea
Only allow floating x11 windows to resize themselves
2024-04-06 16:09:28 -05:00
Ottatop
4ff49385f5
Warn for unwrap in lib
2024-04-04 00:25:17 -05:00
Ottatop
97511b001a
Finish winit screencopy
2024-04-04 00:22:46 -05:00
Ottatop
d18d3e4b17
Make dmabuf udev screencopy actually work
...
Well that wasn't fun. TODO: finish winit screencopy, test all with output transforms
2024-04-03 22:28:29 -05:00
Ottatop
4c41fe1f65
Merge branch 'main' into screencopy
2024-04-01 22:37:07 -05:00
Jörg Sommer
9ff28fc9cd
Improve config errors
...
Co-authored-by: Ottatop <120758733+Ottatop@users.noreply.github.com>
2024-04-01 22:26:51 -05:00
Ottatop
2dbc13d55d
Fix screencopy transparency on udev
...
Using a hack to set the cursor to the primary plane. Also the code is still doodoo
2024-04-01 22:01:46 -05:00
Ottatop
ed2135e8f5
Add almost working screencopy
...
WARNING: contains digusting and repeated code. Also any screencopy with the cursor included on udev leads to a hole under the cursor
2024-03-31 21:59:45 -05:00
Ottatop
cb4c056cf7
Extract pointer render element creation
2024-03-31 01:01:42 -05:00
Ottatop
7cd7e31397
Scaffold wlr-screencopy
...
Currently panics if you try to use it. Need to refactor the rendering first
2024-03-30 21:23:01 -05:00
Ottatop
7e1189017b
Start config after xwayland starts
2024-03-30 17:50:53 -05:00
Ottatop
15d033d335
Keep track of scale in connector_disconnected
2024-03-29 13:07:48 -05:00
Ottatop
d52192a2ba
Default back to linear scaling and add config options to set
2024-03-29 11:57:35 -05:00
Ottatop
7496ebd697
Default to nearest-neighbor upscaling
2024-03-23 18:36:58 -05:00
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
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
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