Age | Commit message (Collapse) | Author |
|
This patch enables binding chains that go beyond mode changes by
allowing bindings to be defined for modes they do not usually have an
effect in.
Fixes #4073.
|
|
Route string terminal input through 'ActionContext::paste'
instead of char by char write improving performance by
utilizing bracketed paste mode when it's reasonable.
Suggested-by: Kirill Chibisov <contact@kchibisov.com>
|
|
Previously the character suppression was only reset whenever a key was
released. However this did not take key repetition into account.
Now every key down also resets the character suppression. This should
work since the `ReceivedCharacter` is always received immediately after
the `KeyboardInput` without the chance of a racing condition where
another keyboard event interrupts the two.
|
|
This adds capabilities for focus in/out (XF, kxIN, kxOUT) and bracketed
paste (BD, BE, PE, PS).
|
|
This fixes an issue with terminal resizes when the selection is on the
last line. Alacritty would fail to rotate lines and keep the selection
in the same line index whenever the terminal line count was grown or
shrunk.
This issue occurred due to the range passed to the selection's rotate
function still being based on the old terminal size, which caused the
initial or target state of the rotation to be outside of the terminal
bounds.
Closes #6698.
|
|
This is only an update to the development version and does not represent
a stable release.
The original bump to 0.13.0-dev was made in 9cf2c89, but did not make
any changes to the changelog. This adds a 0.13.0-dev changelog entry to
master so new changes are properly added to the correct place.
|
|
The special character `;` can be not URL-encoded, thus it'll add
extra parameter in the payload. Handle it joining extra parameters
with the `;` as a separator.
|
|
Fix macOS leak when closing the window.
|
|
Co-authored-by: Kirill Chibisov <contact@kchibisov.com>
|
|
The performance between `thin` and `fat` is in the margin of error,
however `thin` LTO is way faster to build.
|
|
Fixes #6760.
|
|
This also bumps copypasta and sctk-adwaita.
Fixes #6744.
Fixes #6702.
Fixes #6696.
Fixes #2741.
|
|
When the same warning is thrown on the each rendering iteration, it'll
force alacritty to always render.
Co-authored-by: Christian Duerr <contact@christianduerr.com>
|
|
Treating D&D like paste allows using D&D to input text into areas other
than the PTY, like the search bar.
|
|
This works around an issue in many (all?) shells where the bracketed
paste logic would only strip out `\r` but interpret EOT (`\x03`) as a
termination of the bracketed paste.
|
|
Apply horizontal scrolling when the angle between the axis X
and (x, y) vector is lower than 25 degrees.
Fixes #6711.
|
|
Given how bugged the resize increments are on X11, it's better to
disable it by default.
|
|
|
|
|
|
This is only an update to the development version and does not represent
a stable release.
|
|
This patch builds upon the prior work by @4z3 and @bytbox to add
touchscreen support to Alacritty. While some inspiration was taken from
@4z3's patch, it was rewritten from scratch.
This patch supports 4 basic touch interactions:
- Tap
- Scroll
- Select
- Zoom
Tap allows emulating the mouse to enter a single LMB click. While it
would be possible to add more complicated mouse emulation including
support for RMB and others, it's likely more confusing than anything
else and could conflict with other more useful touch actions.
Scroll and Select are started by horizontal or vertical dragging. While
selection isn't particularly accurate with a fat finger, it works
reasonably well and the separation from selection through horizontal and
vertical start feels pretty natural.
Since horizontal drag is reserved for selection we do not support
horizontal scrolling inside the terminal. While it would be possible to
somewhat support it by starting a selection with vertical movement and
then scrolling horizontally afterwards, it would likely just confuse
people so it was left out.
Zoom is pretty simple in just changing the font size when a two-finger
pinch gesture is used. Performance of this is pretty terrible especially
on low-end hardware since this obviously isn't a cheap operation, but it
seems like a worthwhile addition since small touchscreen devices are
most likely to need frequent font size adjustment to make output
readable.
Closes #3671.
|
|
This doesn't solve issue for `RALT`/`LALT`, but that part is impossible
until winit's keyboard v2 API.
|
|
Fixes #6694.
|
|
|
|
This fixes the regression introduced by 2d27fff.
Fixes #6688.
|
|
Fixes #6209.
|
|
Fixes #6201.
|
|
This reverts commit d5e9d1d88317afc1f4374f2c2a7679cece14cb7b.
|
|
This should resize window by cell dimensions granularity instead of
using pixels.
Fixes #388.
|
|
This fixes crash on Wayland with multiple windows.
|
|
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.
|
|
See https://github.com/rust-lang/cargo/issues/11412
|
|
Fixes #6644.
Fixes #6615.
Fixes #6558.
Fixes #6515.
Fixes #3187.
Fixes #62.
|
|
|
|
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.
|
|
|
|
|
|
This adds support for horizontal mouse scrolling in mouse mode
and alternative scrolling modes.
Fixes #2185.
|
|
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.
|
|
Co-authored-by: Christian Duerr <contact@christianduerr.com>
|
|
Fixes #824.
|
|
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.
|
|
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.
|
|
Fixes #6561.
|
|
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.
|
|
Shipping the changelog as part of the Alacritty crate allows packagers
to use it for their packages.
|
|
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.
|
|
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.
|
|
Fixes #6487.
|
|
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.
|