Commit graph

81 commits

Author SHA1 Message Date
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
0ae090bba5 Add window raising to api 2024-03-21 18:39:27 -05:00
Ottatop
e1f2706428 Add layout cycling, dwindle, remove old layout stuff 2024-03-14 19:21:51 -05:00
Ottatop
8bbb36f512 Rename and move stuff around 2024-03-04 20:38:20 -06:00
Ottatop
c96b01f733 Clean up stuff 2024-03-04 19:16:10 -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
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
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
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
31172c5a4e Fix multi-monitor fullscreen rendering and pointer input 2023-12-23 22:03:20 -06:00
Ottatop
e0f7e85b83 Clean up stuff and add more docs 2023-12-16 21:20:29 -06:00
Ottatop
26ce7309de Add render scheduling 2023-10-15 02:27:41 -05:00
Ottatop
cd31059ef8 Update dependencies 2023-10-12 17:10:23 -05:00
Ottatop
16787092a7 Crop windows, also pause rendering on a pending size
This is a series of attempts at preventing flickering. We wrap every window render element in a CropRenderElement so that windows don't render at the incorrect size for a frame. Additionally, we also pause rendering also when the window has a pending size different from the current. Fun fact: Firefox (and by extension Librewolf) renders content to child subsurfaces, so the root surface doesn't get most commits.
2023-09-25 03:15:13 -05:00
Ottatop
bd0c88ba0a Clean up comments 2023-09-20 02:19:04 -05:00
Ottatop
0f42e403ae Make focus tag-specific 2023-09-09 22:47:59 -05:00
Ottatop
861bd68839 Fix reversed order of window rendering 2023-09-08 22:15:20 -05:00
Ottatop
7b98b93d6e Stop rendering instead of unmapping windows (regression)
Layer shell surfaces currently don't render anymore. I may need to manually render them instead of getting them through Space::space_render_elements.
2023-09-08 22:13:16 -05:00
Ottatop
73c473e2d6 Pause rendering until windows are idle 2023-09-08 19:56:40 -05:00
Ottatop
afed3bd91f Remove generics from state 2023-08-28 22:53:24 -05:00
Ottatop
0ead02921f Add fullscreen, maximize to api 2023-08-11 18:48:51 -05:00
Ottatop
275d968e77 Restructure layout-ing 2023-08-11 10:08:38 -05:00
Ottatop
a2887567a3 Move XdgShellHandler, begin work on fullscreen/maximized windows 2023-08-08 15:22:50 -05:00
Ottatop
766567cf48 Respect exclusive zones 2023-08-07 18:28:41 -05:00
Ottatop
f3b0c081dc Continue work 2023-08-07 18:28:41 -05:00
Ottatop
a053c55f82 Start on wlr-layer-shell 2023-08-07 18:28:41 -05:00
Ottatop
ad30f4668b Add dnd icon 2023-08-02 18:18:51 -05:00
Ottatop
7048a89dbf Add drag-and-drop support between x11 windows 2023-08-02 15:12:10 -05:00
Ottatop
4e4eb0fe7c Add client-side move and resize for x11 windows 2023-08-02 13:16:17 -05:00
Ottatop
e86228f4f8 Fix pointer focus on winit 2023-08-01 11:23:52 -05:00
Ottatop
94d7c4463e Move grab requests, clean up stuff 2023-08-01 11:23:29 -05:00
Ottatop
43d6cde926 Fix keyboard input to Steam games on winit 2023-08-01 11:22:39 -05:00
Ottatop
78e53abf95 Fix Steam black screen and some games not showing up
If you are making your own compositor and reading this and Steam opens up as a completely black screen, but you can still hover over popups, don't forget to do renderer.bind_wl_display() and bind the EGL display. I wasted an annoying amount of time trying to find that. In other news, udev is still a bit of a mess and stuff like popups still don't raise themselves. I also still need to fix some kinks with tracking xwayland windows.
2023-08-01 11:22:39 -05:00
Ottatop
fe2a08c704 Make x11 popups float, fix x11 windows not reappearing
Popups currently appear behind all other windows and apps like Steam show up as black on the winit backend, but stuff like Discord should work.
2023-08-01 11:22:39 -05:00
Ottatop
f92153eb04 Get xterm to show up 2023-08-01 11:22:39 -05:00
Ottatop
a146d5a4ad Add WindowElement, xwayland stuff to state 2023-08-01 11:22:39 -05:00
Ottatop
35eb1c7652 Relicense to GPL 3.0 2023-08-01 11:18:08 -05:00
Ottatop
15d5778dab Fix windows not resizing when spawning very quickly 2023-07-18 10:35:39 -05:00
Ottatop
0d8c30219c Rename enum members for clarity 2023-07-18 10:35:39 -05:00
Ottatop
cc8ec304d4 Add proper fix for windows not reappearing when unmapped and not sizing correctly when too small 2023-07-18 10:35:39 -05:00
Ottatop
f1508350e3 Add spiral layout 2023-07-18 10:35:39 -05:00
Ottatop
6f57d8d413 Add dwindle layout 2023-07-18 10:35:39 -05:00