Ivan Molodetskikh
6fce5662e7
Update Smithay
2024-01-05 23:23:32 +04:00
Ivan Molodetskikh
1c7c5b3f28
tty: Avoid non-linear cross-device formats
2024-01-05 23:23:32 +04:00
Ivan Molodetskikh
b9d7812f1f
Update dependencies
2024-01-05 23:23:32 +04:00
Ivan Molodetskikh
655b9808b9
Update Smithay
2024-01-05 23:23:30 +04:00
Ivan Molodetskikh
5cd31e5730
Implement multi-GPU support
...
Rendering always happens on the primary GPU.
2024-01-03 18:16:20 +04:00
Ivan Molodetskikh
de3fc2def0
Make rendering generic over renderer
2024-01-03 18:05:15 +04:00
Ivan Molodetskikh
fd1d4b07fd
Replace renderer() with with_primary_renderer()
2024-01-03 11:38:09 +04:00
Ivan Molodetskikh
8b5acd5e6e
Rename RenderResult::Error to Skipped
2024-01-03 11:38:07 +04:00
Ivan Molodetskikh
31bb9096e2
Move Niri::render() invocation to backends
2024-01-03 11:38:02 +04:00
Ivan Molodetskikh
dae93ee159
Render again for screencast
...
Will be needed when multi-gpu support is added.
2024-01-03 11:37:04 +04:00
Ivan Molodetskikh
57a7347620
Move import_dmabuf to backends
2024-01-03 11:37:04 +04:00
Ivan Molodetskikh
628891db2c
Add disable-cursor-plane debug flag
2024-01-03 08:42:49 +04:00
Ivan Molodetskikh
be6e25f5fb
tty: Extract config variable
2024-01-03 08:42:49 +04:00
Ivan Molodetskikh
e005a795e7
layout: Make generic over Renderer
2024-01-01 17:31:58 +04:00
Ivan Molodetskikh
655fe413fb
tty: Don't store render formats
...
Actually, how did it even fork before? Pretty sure it was storing render
formats, not texture formats, but with render formats
weston-simple-dmabuf-feedback doesn't work?
2024-01-01 17:31:58 +04:00
Ivan Molodetskikh
ac6ff7ff41
tty: Disable dmabuf global before destroying
2024-01-01 17:31:58 +04:00
Ivan Molodetskikh
84befb4e91
tty: Move dmabuf_global up into Tty
2024-01-01 09:54:45 +04:00
Ivan Molodetskikh
d39f7bebf3
tty: Fix import sorting
...
One of the imports was too long so rustfmt bailed.
2024-01-01 09:40:41 +04:00
Ivan Molodetskikh
0dd9a42087
Move DmabufState to Niri
2023-12-31 12:02:39 +04:00
Ivan Molodetskikh
658941f2c3
Enable EGL for the winit backend
...
More relevant now that mesa on Fedora is trying to force non-working
Zink for some reason.
2023-12-31 09:46:22 +04:00
Ivan Molodetskikh
6ccc4147ae
Use remove/insert for columns instead of swapping
...
Now with move-to-first/last this is relevant.
2023-12-29 16:58:18 +04:00
Ivan Molodetskikh
46d5f5ec4d
Add randomized border to proptest
2023-12-29 11:43:16 +04:00
Ivan Molodetskikh
c64e96d0d8
Add test with i32::MAX max_size
2023-12-29 11:42:54 +04:00
Ivan Molodetskikh
44d3a5b9a2
Use saturating_sub in window_height_for_tile_height()
2023-12-29 11:38:01 +04:00
Ivan Molodetskikh
5d95de97a0
Add new binds to the README
2023-12-29 08:09:17 +04:00
Ivan Molodetskikh
56174b2c34
Add move-column-to-{first,last}
2023-12-29 08:01:02 +04:00
Ivan Molodetskikh
310aa2b464
layout: Extract move_column_to()
2023-12-29 08:00:40 +04:00
Ivan Molodetskikh
d6c553091f
Add focus-column-{first,last}
2023-12-29 07:51:14 +04:00
Ivan Molodetskikh
097c415036
layout: Use saturating_add() in several places
...
Apparently VSCode sends i32::MAX worth of max_size?
2023-12-28 18:53:08 +04:00
Ivan Molodetskikh
2d16c04869
Fix unfullscreening not always updating view offset
2023-12-28 10:49:31 +04:00
Ivan Molodetskikh
249f2b7a21
Add disable-power-key-handling option
2023-12-28 09:36:10 +04:00
Ivan Molodetskikh
f3e5e13c45
Activate windows only on active monitors
...
This matches what we do in advance_animations().
2023-12-28 09:09:28 +04:00
Ivan Molodetskikh
b13892ca63
Activate windows when clicking on the border
2023-12-28 08:45:12 +04:00
Ivan Molodetskikh
777ad4ee5c
Rename window -> tile, fix popup unconstraining window_y
...
I missed the window_y thing and found it thanks to the rename. Too lazy
to split it into a commit.
2023-12-28 08:25:42 +04:00
Ivan Molodetskikh
c21805bf70
layout: Refactor to support window decorations, add border and fullscreen backdrop
...
Windows are now wrapped in Tiles, which keep track of window-specific
decorations. Particularly, I implemented a black fullscreen backdrop,
which finally brings fullscreened windows smaller than the screen in
line with how the Wayland protocol says they should look—centered in a
black rectangle. I also implemented window borders, which are similar to
the focus ring, but always visible (and hence affect the layout and
sizing).
2023-12-27 21:51:42 +04:00
Ivan Molodetskikh
bfc2418267
Make LayoutElement more visual-geometry-based
2023-12-26 17:40:25 +04:00
Ivan Molodetskikh
77b4715e0b
Use correct type alias in FocusRing::render
2023-12-26 17:28:52 +04:00
Ivan Molodetskikh
c048abc8b5
layout: Add Column::position
2023-12-26 10:29:00 +04:00
Ivan Molodetskikh
4dd7578fe7
layout: Use column.contains more
2023-12-25 11:06:03 +04:00
Ivan Molodetskikh
ea72e4dae8
README: Add Xwayland wiki link
2023-12-24 19:41:23 +04:00
Ivan Molodetskikh
0c671ee493
Remove dependency of LayoutElement on SpaceElement
2023-12-24 18:18:44 +04:00
Ivan Molodetskikh
324c1efd04
Remove Clone bound from LayoutElement
...
It is no longer necessary.
2023-12-24 18:02:13 +04:00
Ivan Molodetskikh
99e75b95b7
Remove unnecessary window clone
2023-12-24 18:02:03 +04:00
Ivan Molodetskikh
489a225fae
Add and use remove_window_by_idx
2023-12-24 18:00:46 +04:00
Ivan Molodetskikh
85cb4b42f6
Remove clones from active_window
2023-12-24 17:40:30 +04:00
Ivan Molodetskikh
be2e551a89
Move clones up from find_window_and_output
2023-12-24 17:38:13 +04:00
Ivan Molodetskikh
ed3080d908
Split layout mod into files
...
No functional change intended.
2023-12-24 15:10:09 +04:00
Ivan Molodetskikh
461ce5f363
Move output_size to utils
2023-12-24 14:30:19 +04:00
Ivan Molodetskikh
624c799ebf
Move layout.rs into its own module
2023-12-24 14:20:50 +04:00
Ivan Molodetskikh
57f267454f
Bump version to 0.1.0-alpha.2
v0.1.0-alpha.2
2023-12-23 08:43:03 +04:00