Commit graph

60 commits

Author SHA1 Message Date
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
Ottatop
3efdb9d73f Update output in API, modify tag tracking 2023-07-18 10:35:39 -05:00
Ottatop
930925a8f1 Change all *State.with(thing, ...) to thing.with_state(...) 2023-07-18 10:35:39 -05:00
Seaotatop
ba69b21c52 Rework window tracking 2023-07-18 10:35:39 -05:00
Seaotatop
d860172334 Clean up old layouts 2023-07-18 10:35:39 -05:00
Seaotatop
a14ce1ef2e Improve master stack layout and tags 2023-07-18 10:35:39 -05:00
Seaotatop
a3c71ef9d5 Begin work on layout system and fleshing out tag system 2023-07-18 10:35:39 -05:00
Seaotatop
824595637b Fiddle with stuff 2023-07-04 15:20:41 -05:00
Seaotatop
5f8352452b Clean up tracing logs 2023-07-02 17:15:16 -05:00
Seaotatop
d09d367b22 Fix windows not reappearing on tag changes 2023-07-02 17:10:15 -05:00
Seaotatop
ebe2313e2d Add basic tag support 2023-07-01 19:06:37 -05:00
Seaotatop
dc9b8e4ffc Begin work on tags 2023-06-30 21:34:07 -05:00
Seaotatop
2b50e7d31a Add unwrap warning, deal with some unwraps 2023-06-29 17:41:08 -05:00
Seaotatop
1fe510dbf1 Add SPDX identifiers 2023-06-25 17:49:06 -05:00
Seaotatop
a02cada324 Add license headers 2023-06-25 17:18:50 -05:00
Seaotatop
3e50d322f4 Add test workflow 2023-06-25 15:44:01 -05:00
Seaotatop
c77b086ddf Add stuff 2023-06-24 17:39:40 -05:00
Seaotatop
1dcffd286d Fix crash when making window height too small on some windows with client-side decorations 2023-06-23 15:43:40 -05:00
Seaotatop
9f65bc386e Fix flickering when swapping tiled windows 2023-06-23 09:44:00 -05:00
Seaotatop
71f71feaf2 Simple floating window support 2023-06-18 19:30:52 -05:00
Seaotatop
3ea2452397 Work on focus mechanism 2023-06-17 21:02:58 -05:00
Seaotatop
1a7b98a666 Merged crates, more work on api 2023-06-17 18:55:04 -05:00
Renamed from pinnacle/src/handlers.rs (Browse further)