| Commit message (Collapse) | Author | Age |
... | |
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Things that do not work
- Limiting how far back in the buffer it's possible to scroll
- Selections (need to transform to buffer offsets)
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This intends to optimize the case where the top of the scrolling region
is the top of the screen. In theory, scrolling in this case can be
optimized to shifting the start/end of the visible region, and then
rearranging any lines that were not supposed to be scrolled (at the
bottom of the region). However, this didn't produce quite the speedup I
expected.
|
| |
| |
| |
| |
| |
| | |
In addition to a marginal performance improvement, this simplifies some
logic in the Term implementation since now the Grid fully handles row
recycling.
|
| |
| |
| |
| |
| | |
The type selection::Region was defined identially to std::ops::Range.
Using something other than range just served to confuse.
|
| | |
|
| | |
|
| |
| |
| |
| | |
This is part of some cleanup for the grid module as a whole.
|
| |
| |
| |
| |
| |
| |
| | |
VecDeque offers improved performance beyond a plain Vec for common
scrolling situations (full screen scroll). Additionally, VecDeque is
necessary for performant scrollback since recycling old rows for a Vec
would be expensive (push/pop front would shift entire vec).
|
|/ |
|
|
|
|
|
|
|
|
|
| |
Note that `WM_CLASS` is now set to `"alacritty", "Alacritty"`
instead of the previous value of `"Alacritty", "Alacritty"`. This
seems to be more standard.
This also contains some revised recommendations for installing the
`.desktop` file.
|
| |
|
|
|
| |
This fixes a regression introduced in https://github.com/jwilm/alacritty/pull/1087/files#diff-5ffadea12561d6964b05ac2a0b8e388fL33.
|
|
|
|
|
|
| |
add logic to fallback to `localeIdentifier` if
`currentLocale.languageCode` and `currentLocale.countryCode` are not
available.
|
| |
|
| |
|
|
|
|
|
|
| |
fixes #933
Using logic from https://github.com/gnachman/iTerm2/blob/79aff4d59fd591e7628649bcabe5f27541740bf6/sources/PTYSession.m#L1703
|
| |
|
|
|
|
|
|
|
| |
It's now possible to insert the path of a file or directory by dropping
it from the file manager into alacritty.
This fixes #1301.
|
|
|
|
|
|
|
|
|
|
|
|
| |
When the mouse mode is set using either 1000h, 1002h or 1003h, the
selection should not be pasted when hitting the middle mouse button,
because it is job of the application to handle this when mouse mode is
enabled.
This has been solved by checking for the current mouse modes whenever
the `PasteSelection` binding is invoked.
This fixes #1215.
|
|
|
|
| |
fixes #1264
|
|
|
|
|
|
|
|
|
|
| |
This commit expands the conditional compilation directives to support
building Alacritty for OpenBSD. The build succeeds, and Alacritty runs
without issue once https://github.com/rust-lang/libc/pull/957 has been
merged and added to a versioned libc release.
This has been tested on the recently-released OpenBSD 6.3 on amd64 with
rustc 1.24.0 from its standard ports tree.
|
|
|
|
|
|
|
| |
For some reason, log 0.4 requires that we explicitly set the log level
with log::set_max_level or it defaults to Off. The documentation
isn't clear but suggests we must do this in addition to doing the
filtration ourselves in the Log impl.
|
|
|
|
|
| |
This may truly solve #921 (and issue caused by #1178)
<https://github.com/jwilm/alacritty/issues/921#issuecomment-372619121>.
|
| |
|
|
|
|
|
|
|
| |
This commits adds modifiers to the mouse events.
It's an attempt at merging https://github.com/jwilm/alacritty/pull/1141
into this branch/PR.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
With this commit, Alacritty now reports presses and releases of all
three mouse buttons properly, dragging events with all three buttons,
and mouse movement events where no button is pressed.
It does not report more than three buttons due to inherent limitations
of the VT200 and SGR protocol modes. It does not report modifier keys on
mouse buttons due to practical considerations.
Fixes #714, #506.
|
|
|
|
|
|
|
|
|
| |
This will solve the error "Error creating GL context; Couldn't find any
pixel format that matches the criterias."
(I think this maybe a problem of mesa (18.0.0_rc4), but I'm not sure.
See the thread <https://mastodon.cardina1.red/@lo48576/99670278063669603>
for my debug log.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Prevent the cell dimensions from going below 1, this bug resulted in
allocation of large amounts of memory in the scrollback PR but is also
present on master.
Currently the approach is to just `panic!`, however an `eprintln!` and
`exit` could be an alternative too. I don't think it's realistic to
check this at startup and it should have no performance impact since the
failing method is only called once at startup.
To make it a bit more clear what kind of values are accepted, the
datatypes of offsets and paddings have also been changed so that these
don't accept floats anymore and padding can never be negative.
This should allow us to be a bit more strict with the config to make
sure that errors are printed when invalid values are specified (like
negative padding).
This fixes #1167.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Unwrapping inside the config file parsing can lead to some issues that
prevent us from falling back to a default configuration file.
One instance of that issue was mentioned in #1135.
Now all instances of `unwrap()` have been removed and replaced with
proper error handling. This will make the config more robust and
prevents live reload from silently breaking while alacritty is running.
This also fixes a few currently existing clippy issues.
Clippy added an additonal lint which complains about `MyStruct { field:
field }`.
These issues have been fixed, except for some false-positives and issues
in external macros which will probably be fixed with future updates (rust-lang-nursery/bitflags#149)
|
| |
|
|
|
|
|
|
| |
Updated the version of some dependencies.
This also changes to a new clippy version so clippy can work with the latest nightly compiler again. Some issues created by new lints have been fixed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Up to this point the `reset_state` method of the `Term` struct has been
just a placeholder. This has been changed and all important state has
been reset.
The only state that has not been reset is stuff which is retrieved from
the config and isn't stored as default on the `Term` struct either. From
what I can tell these are all never changed though.
This fixes jwilm/alacritty#1033.
After doing some more testing trying to figure out how to fix that all
glyphs are messed up after doing `cat /dev/urandom`, I was able to
confirm that resetting `Term::cursor` fixes the glyphs and restores
everything to normal.
So this also fixes jwilm/alacritty#804.
|
|
|
|
|
|
|
|
|
|
|
| |
This change initially spawns alacritty as in invisible window, this
makes it possible for the pty to already access data like `window_id`
without having to wait for the window manager to actually open the
window.
Even though `GlWindow::new` is blocking when `with_visibility(true)` is
used, the `window.show` call is not blocking. So calling `GlWindow::new`
and `with_visibility(false)`, then immediately calling `window.show`
will create a window and make it visible instantly.
|
| |
|
|
|
|
|
| |
Commit 2920cbe7103f03a45080bfb7610bd7f481f36361 introduced a regression because of a typo in the chunk slice index for the `parse_rgb_color` call.
This fixes this issue by resetting it to the state it was before the faulty commit.
|
| |
|
|
|
|
|
|
| |
When pasting in non-bracketed more, all line endings (including
DOS-style CRLFs) get normalized to a single CR to simulate a keypress of
the <return> key.
|