V
369fcb9928
Fix crash when switching TTYs
2024-05-04 16:09:38 -07:00
V
b1069576b7
Drop old primary selection code
2024-05-04 16:09:37 -07:00
V
004bfd3d9e
Unwrap wayland fd acquisition rather than erroring without a message
2024-05-04 16:09:37 -07:00
V
84e8c966a1
Use PrimarySelectionHandler provided by SCTK
...
Also converts other DataDevice-handling code to use Read/WritePipe
instead of the FileDescriptor API.
2024-05-04 16:09:37 -07:00
V
b23a424e21
Improve error messages for set_cursor
2024-05-04 16:09:37 -07:00
V
2dd2a541ce
Clean up delegates
2024-05-04 16:09:37 -07:00
V
5654bbff47
Use the existing CursorShapeManager provided by SCTK
2024-05-04 16:09:37 -07:00
V
5b0e7bca93
Remove/rename unused stuff
2024-05-04 16:09:37 -07:00
V
f5a69b8746
Fix copy & paste
2024-05-04 16:09:37 -07:00
V
423859cef7
Fix drag & drop
2024-05-04 16:09:36 -07:00
V
ba18d0590c
Fix drag/selection offer retrieval
2024-05-04 16:09:36 -07:00
V
8ed444cffc
Fix window todos
2024-05-04 16:09:36 -07:00
V
a7b122a2e1
Fix pointer todos
2024-05-04 16:09:36 -07:00
V
42e47ad920
It runs! (pointer now has a surface)
2024-05-04 16:09:36 -07:00
V
ccbdd4da6a
Fix cursor setting
2024-05-04 16:09:36 -07:00
V
fdc805bb2e
Fix compilation
2024-05-04 16:09:36 -07:00
V
7c77f407fa
Update smithay-client-toolkit to v0.18
...
Also updates:
- wayland-{client,protocols} to v0.31
- wayland-egl to v0.32
2024-05-04 16:09:36 -07:00
fioncat
42d62faf6c
doc(wayland): update comments
2024-04-29 10:26:07 -07:00
fioncat
b21c3f6b3d
doc(wayland): update comment in show
2024-04-29 10:26:07 -07:00
fioncat
1266912629
fix(wayland): ensure repaint event is sent in show
...
Fix: https://github.com/wez/wezterm/issues/5103
2024-04-29 10:26:07 -07:00
Wez Furlong
e5ac32f297
Revert SCTK changes
...
panics on startup under weston with no obvious fix.
This reverts commit 3938d1a7db
.
This reverts commit aab3835f1a
.
This reverts commit 0c97ace3cb
.
refs: https://github.com/wez/wezterm/pull/5044
2024-03-25 09:35:07 -07:00
Wez Furlong
3938d1a7db
Update window/src/os/wayland/window.rs
2024-03-25 08:59:28 -07:00
Thayne McCombs
aab3835f1a
Update SCTK to 0.18
2024-03-25 08:59:28 -07:00
Thayne McCombs
0c97ace3cb
Better decorations
2024-03-25 08:59:28 -07:00
Wez Furlong
67bdc06d73
macos: speculative fix to drag-n-drop crash
...
refs: https://github.com/wez/wezterm/issues/4771
2024-02-10 17:32:28 -07:00
Wez Furlong
2fee694bcc
wayland: avoid panic when closing/destroying window
...
refs: https://github.com/wez/wezterm/issues/4983
2024-02-08 05:01:55 -07:00
Wez Furlong
4f123a461b
macos (mostly): try harder to get initial dpi
...
There are a number of open issues that relate to getting the dpi
wrong when spawning a window. In theory it shouldn't matter because
we will immediately realize the difference and synthesize the correct
information, but evidence shows this isn't quite true.
What this commit does is:
* Override Connection::default_dpi() on macOS to return the
effective_dpi from the active screen instead of the default
non-retina dpi
* Adjust the Config::initial_size() method to accept an optional
cell pixel dimension
* Add a helper function to wezterm-gui to compute the cell pixel
dimensions given the config and the (usually default) dpi, and
feed that through to Config::initial_size
* in the macos window impl, scale the computed geometry based on
the ratio of the Connection::default_dpi and the default non-retina
dpi.
This helps to avoid needing to do a fixup in the
https://github.com/wez/wezterm/issues/4966 case, and may help with
the various other macos quirky issues.
refs: https://github.com/wez/wezterm/issues/2958
refs: https://github.com/wez/wezterm/issues/3575
refs: https://github.com/wez/wezterm/issues/3900
refs: https://github.com/wez/wezterm/issues/4250
refs: https://github.com/wez/wezterm/issues/4285
refs: https://github.com/wez/wezterm/issues/4447
refs: https://github.com/wez/wezterm/issues/4851
refs: https://github.com/wez/wezterm/issues/4966
2024-02-06 22:57:05 -07:00
Wez Furlong
36ff6d5f44
deps: update glium
2024-02-06 16:52:02 -07:00
Jeffrey Knockel
b03b833a4d
windows: account for dpi in window size
...
On Windows, to set a window's size, in addition to the size of the
client area, the width and height of the window's "frame" must be
included in the dimensions passed to SetWindowPos() which burdens us in
needing to know the exact size of the window frame so that we can
properly account for its dimensions. Previously, we used
AdjustWindowRect() to account for the frame's dimensions, but the size
of a window's frame can change depending on the DPI of the monitor on
which it is placed, and it appears that neither AdjustWindowRect() nor
AdjustWindowRectEx() account for this automatically. Instead, we use
AdjustWindowRectExForDpi(), passing in the window's DPI, so that we
properly calculate the window's size.
2024-02-04 21:32:33 -07:00
Jeffrey Knockel
a0974a2537
Implement SetInnerSizeCompleted events
...
These are used to signal, after a set_inner_size() call, at what point
we can expect any and all of its related Resized events to have already
been dispatched. SetInnerSizeCompleted events are currently used to fix
a race condition in rescaling the terminal in which the number of cells
of the terminal (e.g., 80x24) can change when quickly rescaling the
terminal.
2024-02-04 09:40:54 -07:00
Wez Furlong
38dbd8db5e
wayland: hook up some resize handling
...
refs: https://github.com/wez/wezterm/pull/4906
2024-02-03 23:18:55 -07:00
Wez Furlong
32f5d1ca08
wayland: avoid panic w/ resize of hidden frame, part 2
...
refs: https://github.com/wez/wezterm/issues/4948
2024-02-03 23:10:26 -07:00
Wez Furlong
2ce302c89c
wayland: don't try to resize a hidden frame
...
it causes a panic.
refs: https://github.com/wez/wezterm/issues/4948
2024-02-03 20:06:55 -07:00
Wez Furlong
050aa078d7
wayland: improve error check
...
This avoids a nasty panic, and shows some more context,
but doesn't really fix anything.
refs: https://github.com/wez/wezterm/issues/4948
2024-02-03 20:00:22 -07:00
Timmy Xiao
f8b86cce22
Don't hardcode egl sizes
2024-02-03 14:56:12 -07:00
Timmy Xiao
6b73db40e9
Resize window frame correctly
2024-02-03 14:56:12 -07:00
Timmy Xiao
4b0fba40f7
Implement working frame actions
2024-02-03 14:56:11 -07:00
Timmy Xiao
0c034ccdec
Initial window frame
2024-02-03 14:56:11 -07:00
Timmy Xiao
da5b519340
Make IME support optional since not all compositors support it
2024-02-03 14:56:11 -07:00
Timmy Xiao
daf58199aa
Handle crash when using software/opengl due to active_surface_id
2024-02-03 14:56:11 -07:00
Timmy Xiao
125e89c3ae
Implement primary selection support
2024-02-03 14:56:11 -07:00
Timmy Xiao
561d360e0a
Fix making wlr-output-management-unstable optional
2024-02-03 14:56:11 -07:00
Timmy Xiao
ea149a9686
Implement wlr-output-management-unstable
2024-02-03 14:56:11 -07:00
Timmy Xiao
d6dae4fc90
Implement shutdown for ime
2024-02-03 14:56:11 -07:00
Timmy Xiao
5b2f960438
Implement inputhandler
2024-02-03 14:56:10 -07:00
Timmy Xiao
a3eb8a8bd4
Start IME support
2024-02-03 14:56:10 -07:00
Timmy Xiao
62949df2c8
Ignore drag source handlers (we don't drag from wezterm)
2024-02-03 14:56:10 -07:00
Timmy Xiao
21a6b0636a
Implement dispatch_dropped_files
2024-02-03 14:56:10 -07:00
Timmy Xiao
5d6e7c4f98
Implement paste
2024-02-03 14:56:10 -07:00
Timmy Xiao
41eeddb7a1
Implement copying, pasting does not work
2024-02-03 14:56:10 -07:00