cyc
a678849f15
add docs for the wezterm.serde module.
2024-02-08 08:59:47 -07:00
cyc
8e5957b92f
add unit tests for JSON/YAML/TOML parsers.
2024-02-08 08:59:47 -07:00
cyc
8dc4ba7ad1
add *_encode_pretty variants for TOML and JSON.
2024-02-08 08:59:47 -07:00
cyc
8596422abf
add YAML/TOML serialization/deserialization feature
2024-02-08 08:59:47 -07:00
Wez Furlong
61c1fd8e17
docs: changelog for #4250
2024-02-08 08:40:47 -07:00
Wez Furlong
206b73a6da
docs: changelog for #4966
2024-02-08 05:15:13 -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
Wez Furlong
5d190c2b7a
docs: mention arch supplemental fonts
...
refs: https://github.com/wez/wezterm/issues/4976
2024-02-06 10:44:09 -07:00
Wez Furlong
39d2b6ca85
remove show_update_window functionality
...
dependabot is trying to update pulldown-cmark, but it won't
work because the API has changed.
The update window is not enabled by default and I don't think
anyone uses it anyway, so let's just remove it and have less
code to compile and maintain.
closes: https://github.com/wez/wezterm/pull/4964
2024-02-05 07:04:37 -07:00
Wez Furlong
11a3133f5d
ci: publish amd64 builds to apt repo when releasing
...
Currently only arm builds are published for releases
2024-02-05 06:48:49 -07:00
Wez Furlong
22150bfba6
cargo update
2024-02-05 06:34:39 -07:00
Wez Furlong
9064c1c194
ci: bump cache action
...
closes: https://github.com/wez/wezterm/pull/4958
2024-02-05 06:34:15 -07:00
Wez Furlong
3d893cbbf7
ci: bump sccache
...
closes: https://github.com/wez/wezterm/pull/4959
2024-02-05 06:33:28 -07:00
Wez Furlong
26921ced86
ci: bump cargo-install
...
closes: https://github.com/wez/wezterm/pull/4960
2024-02-05 06:32:43 -07:00
Wez Furlong
a9eca94bfa
ci: bump auto-commit workflow
...
closes: https://github.com/wez/wezterm/pull/4961
2024-02-05 06:31:50 -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
Wez Furlong
bed5141d6e
docs: changelog for #4876
2024-02-04 09:42:27 -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
Benjamin Kane
2c5fa35986
Update Lua Reference with Lua version
2024-02-03 23:26:29 -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
Wez Furlong
281a0ce4da
docs: add forgotten appearance option for command palette
...
closes: https://github.com/wez/wezterm/issues/3335
2024-02-03 19:18:07 -07:00
Wez Furlong
a435606975
rebase @tzx's wayland changes onto main
...
closes: https://github.com/wez/wezterm/pull/4777
closes: https://github.com/wez/wezterm/pull/4905
2024-02-03 15:21:24 -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
Timmy Xiao
30727e96ac
Theme the pointer
2024-02-03 14:56:10 -07:00
Timmy Xiao
60066034aa
Implement forgotten PointerEventKind::Release, mouse features seem to work now
2024-02-03 14:56:10 -07:00
Timmy Xiao
6807d7c18f
Mouse seems to do something, but it is incorrect
2024-02-03 14:56:10 -07:00
Timmy Xiao
dfa1e35138
Starting pointer implementation
2024-02-03 14:56:09 -07:00
Timmy Xiao
d5f781a2e0
Nuke pointer
2024-02-03 14:56:09 -07:00
Timmy Xiao
fb35683e0a
Don't use xkbcommon feature in smithay so we can use modifiers
2024-02-03 14:56:08 -07:00
Timmy Xiao
cfbc9d716c
Use raw_code for process_wayland_key instead of keysym
2024-02-03 14:55:32 -07:00