Commit Graph

2076 Commits

Author SHA1 Message Date
Kirill Chibisov 6edb113f14
Bump glutin to 0.30.5 2023-02-12 00:41:02 +03:00
Kirill Chibisov 38e0b562a9
Fix crash when Atlas is full
This fixes the regression introduced by 2d27fff.

Fixes #6688.
2023-02-11 21:05:39 +03:00
Kirill Chibisov 2d27fff796
Make gles2 renderer actually gles2
Fixes #6209.
2023-02-07 22:08:24 +03:00
Kirill Chibisov 8b3f229c3d
Align quadrants with half blocks in built-in font
Fixes #6201.
2023-02-05 20:53:38 +03:00
Kirill Chibisov 4e07600c72
Revert "Apply 'font.glyph_offset.y' for underline/strikeout"
This reverts commit d5e9d1d883.
2023-02-05 20:38:29 +03:00
Kirill Chibisov f409f74372
Resize the window by cell dimensions
This should resize window by cell dimensions granularity instead of
using pixels.

Fixes #388.
2023-02-05 11:41:23 +03:00
Kirill Chibisov 8a838710e3
Bump winit to 0.28.1
This fixes crash on Wayland with multiple windows.
2023-02-02 15:09:47 +03:00
Kirill Chibisov 799d8f75bb
Fix notify doing active polling
The `notify-debouncer-mini` spawn a thread which checks the events
every timeout, which is not desired since we want to avoid active
polling.

This commit re-implements debouncer based on the `RecommendedWatcher`
without adding an extra thread on top and not doing any busy-waiting.

Fixes #6652.
2023-02-02 13:13:23 +03:00
oxalica 3354203e57
Update ndk-sys to workaround cargo checksum issue
See https://github.com/rust-lang/cargo/issues/11412
2023-02-02 12:47:19 +03:00
Kirill Chibisov 1c878a0476
Update winit to 0.28
Fixes #6644.
Fixes #6615.
Fixes #6558.
Fixes #6515.
Fixes #3187.
Fixes #62.
2023-02-02 11:30:23 +03:00
Jovan Gerodetti 246ec8945d
Prefer environment variables over passwd 2023-02-02 07:49:45 +00:00
Christian Duerr d5b2dac73a
Create new windows with Cmd+N by default
This changes the default Cmd+N binding on macOS to create a new window
rather than spawning a new instance.

Initially this change was held back for further testing of the
multi-window feature. At this point all significant issues found with it
have been fixed so it should be ready for prime-time now.
2023-01-27 06:02:47 +00:00
h-leth 87c38aa930
Add alacritty.yml to dmg 2023-01-26 02:34:54 +00:00
dependabot[bot] 2ed79e3e39
Bump bumpalo from 3.11.0 to 3.12.0 2023-01-23 11:00:53 +00:00
Kirill Chibisov ed67aa3c08
Add support for horizontal scrolling
This adds support for horizontal mouse scrolling in mouse mode
and alternative scrolling modes.

Fixes #2185.
2023-01-16 20:22:01 +03:00
Christian Duerr 5a3280e8e0
Preserve last column with erase in line right
When the erase in line escape sequence with a parameter of 0 (right) is
passed while the wrapline flag is already set, it will no longer clear
the last column and instead ignore the operation.

The behavior of `\e[1K` and `\e[2K` is unchanged and both will clear the
entire first line without clearing the wrapline flag.

Closes #6159.
2023-01-15 22:53:41 +00:00
Naru bcd6d0d981
Use sRGB color space for NSWindow on macOS
Co-authored-by: Christian Duerr <contact@christianduerr.com>
2023-01-07 14:23:00 +00:00
Kirill Chibisov 2bd26fbeb0
User timer based rendering instead of vsync
Fixes #824.
2022-12-30 19:25:04 +03:00
Kirill Chibisov b77b9b3bcd
Fix crash when one dimension of the window is zero
This fixes a crash on Windows when the user resizes the window
to the point that it has the height of zero. The crash was introduced
by the glutin update, since it requires non-zero sizes for the
resize.
2022-12-30 18:39:39 +03:00
Christian Duerr a49bd74292
Disable depth and stencil buffers
This patch reduces the active GPU memory consumption by disabling the
depth and stencil buffers. During original testing it reduced GPU memory
usage on Linux by almost a third.

This is a reintroduction of previously reverted patch 3475e44.

Closes #2881.
2022-12-29 12:36:50 +03:00
Kirill Chibisov d5e9d1d883
Apply 'font.glyph_offset.y' for underline/strikeout
Fixes #6561.
2022-12-25 12:42:00 +03:00
Christian Duerr 2291610f72
Fix multi-line bracket selection
This fixes a bug where semantic selection for bracket characters wasn't
working properly over multiple lines since start and end of the
selection were swapped.

Closes #6567.
2022-12-14 20:21:25 +03:00
James McCoy 507f727768
Add changelog to alacritty crate
Shipping the changelog as part of the Alacritty crate allows packagers
to use it for their packages.
2022-12-11 23:46:16 +00:00
James McCoy a152365c14
Add -T short form for --title
Debian-based distributions provide a standard interface to launch a
terminal via the x-terminal-emulator name.  In order for a terminal
emualtor to satisfy that interface, it must

* Be VT100 compatiable
* Support the "-e <command> <args>" CLI option
* Support the "-T <title>" CLI option

Adjust the short form of --title accordingly, providing -t as an alias
to avoid breaking any existing usage.
2022-12-11 00:54:06 +00:00
Kirill Chibisov 6566dd3def
Fix damage computation on boundaries
Given that the Rect started to use signed integers saturating_sub
became irrelevant and no clamp to zero were performed. This commit
uses max instead to fix it.
2022-12-09 09:21:28 +03:00
Kirill Chibisov 79860622a7
Fix crash while typing on Wayland
Fixes #6487.
2022-12-06 04:06:50 +00:00
Philip Taron df32b5216b
Fix VirtualKeyCode config documentation
The `winit` crate was split off of the `glutin` crate. This patch fixes
the config link to correctly point to the winit enum instead of the old
glutin reexport.
2022-12-02 22:20:40 +00:00
Kirill Chibisov 2c58e096f9
Ignore errors from swap_buffers
Most of them are innocent and require just swap again. It was
like that before anyway due to old glutin bug in the error
handling implementation where errors won't pulled on swap buffers,
but old observed error was used.

Fixes #6538.
2022-12-02 04:27:08 +03:00
Kirill Chibisov 706682646b
Bump glutin to 0.30.2
Fixes #6498.
2022-12-02 00:45:10 +03:00
Kirill Chibisov 2d619850ae
Add 'debug.renderer' config option
This should help trouble shooting the renderer being created and
different renderer options to determine when something like dual-source
rendering isn't working.
2022-11-28 13:12:53 +03:00
Christian Duerr 19120f40be
Fix padding update not updating renderer
This fixes an issue where it was possible to update the padding of the
terminal without actually queueing an update for the renderer
projection, leading to a blurry projection.

Closes #6502.
2022-11-28 02:06:19 +00:00
James McCoy d92a8a0e16
Update to notify v5 via notify_debouncer_mini
Notify v5 moved the debounced API into the notify_debouncer_mini crate.
The debounced API doesn't provide details on the type of event that
happened, just that a list of events or errors happened. Therefore,
reload is triggered on any event for a matching path.

Co-authored-by: Christian Duerr <contact@christianduerr.com>
2022-11-15 14:10:08 +00:00
Chris Copeland 7785580602
Fix cursor visibility with focus change on macOS
Fixes #6452.
2022-11-11 10:27:05 +00:00
Kirill Chibisov 0e418bc2f7
Update glutin to 0.30.0
The glutin 0.30.0 update decouples glutin from winit which
provides us with basis for a multithreaded renderer. This
also improves robustness of our configuration picking,
context creation, and surface handling.

As an example we're now able to start on systems without a vsync,
we don't try to build lots of contexts to check if some config works,
and so on.

That also brings us possibility to handle context losses, but that's
a future work.

Fixes #1268.
2022-11-03 19:37:54 +03:00
Kirill Chibisov 578e08486d
Update winit to 0.27.5
Fixes #6396.
2022-10-26 23:04:35 +03:00
Kirill Chibisov 2a2d38fcaa
Bump crossfont and sctk-adwaita
Fixes #6432.
Fixes #6414.
Fixes #6400.
Fixes #6338.
2022-10-26 01:32:02 +03:00
Kirill Chibisov e3af53c863
Fix startup failure on macOS with dash as /bin/sh
The dash's exec doesn't have `-a` argument we rely on when running
login shell, so use zsh instead.

Fixes #6426.
2022-10-22 13:17:46 +03:00
Kirill Chibisov 62e9d3ab39
Fix crash with very low font sizes
Fixes #6432.
2022-10-21 22:40:42 +03:00
Kirill Chibisov 5b1dd38806
Fix cursor and underlines always being black
Some old hardware doesn't like universal shader approach for all the
rectangle kinds leading to ALU instruction limits. This commit fixes
it by splitting the shader per rectangle kind.

Fixes #6417.
2022-10-21 22:19:42 +03:00
Andrzej Grzeslak c3b915b695
Fix `--help` output for `--class` to match man pages
The output of --help did not match the man pages with regards to the
ordering of arguments for the --class flag. This has now been fixed.

Fixes #6413.
2022-10-18 22:11:40 +00:00
Christian Duerr 269b6e3dba
Fix changelog versioning 2022-10-14 05:57:20 +03:00
Christian Duerr 1ea49b9a6f
Fix Windows release build
Closes #6392.
2022-10-14 01:57:56 +00:00
Christian Duerr 21c75d9d94
Fix clippy warnings
This patch applies all clippy lints currently present on the latest
clippy master than are compatible with our oldstable clippy (only
exception is the `_else(||` stuff).
2022-10-12 07:40:46 +03:00
Kirill Chibisov 182086f59c
Bump winit to 0.27.4
Fixes #6370.
Fixes #6356.
2022-10-09 22:57:06 +00:00
Nathaniel Graham d721424822
Add RHEL8 instructions to INSTALL.md
Co-authored-by: Christian Duerr <contact@christianduerr.com>
2022-10-07 22:39:06 +00:00
Hugal31 2aedee1c29
Fix icon decoding on X11
Glutin is waiting for an RGBA buffer with 8-bit depth, but our icon is
16-bit depth. So we need to normalize the color data when decoding the
icon.
2022-10-05 13:14:23 +00:00
killian e9ee8dcd9f
Migrate from winapi to windows-sys 2022-09-30 11:49:02 +00:00
Christian Duerr c5ae05e810
Fix IPC config overriding previous values
Before this patch whenever changing the IPC configuration, all previous
configuration options would be discarded. This was the case even when
the new option was invalid.

This patch ensures that the IPC config is only ever cleared when the
`--reset` flag is passed. Invalid IPC config options are logged and
discarded.

Additionally whenever a new IPC config message is sent, all previous IPC
error messages are cleared.

Closes #6330.
2022-09-17 13:32:10 +00:00
Christian Duerr 3a38f0b996
Update unicode-width to Unicode 15
This applies all not-breaking dependency changes, including an update to
unicode-width. This brings support for Unicode 15 with its new widths
table so new glyphs and Emojis are shown correctly.
2022-09-17 13:10:38 +00:00
Kirill Chibisov 5bbba6973f
Bump winit to 0.27.3
Fixes #6324.
Fixes #6313.
2022-09-15 23:51:06 +03:00