Age | Commit message (Collapse) | Author |
|
The FreeType rasterizer now reads settings like antialias, rgba,
lcdfilter, and hintstyle and chooses FreeType settings accordingly. The
result is that Alacritty fonts should look similar to the rest of the
system.
|
|
The hash map of key -> face was previouly cloned every time a glyph was
rasterized. This refactored the rasterization path to be more borrowck
friendly.
Sadly, this implementation is not *that* clean, but once NLLs land, much
of this can be cleaned up.
|
|
|
|
The fontconfig `FcPattern` type is wrapped as `fc::Pattern` and
`fc::Pattern` ref. All methods for accessing data on the pattern now
return an `Iterator`. This API turns out to be much more ergonomic than
providing an integer index. We also override the default `nth`
implementation of `Iterator` on these accessors to allow random
(incremental only) access.
For instance, accessing `family` attributes from a pattern:
let families = pattern.family();
let second = pattern.nth(1);
Or printing available styles
for style in pattern.style() {
println!("style={}", style);
}
|
|
Each Fc type is split into a separate file. This organization will help
as features are added to the bindings.
|
|
Removed freetype2-devel, it isn't necessary given fontconfig-devel depends on freetype2-devel, just as it depends on expat-devel.
|
|
This reverts commit e17d38167e174a2cf664e430fe968ec6492e1f08.
Was breaking builds for mac users.
|
|
This PR fixes a few wayland issues of alacritty (and updates glutin on
the process because it is needed).
Mainly two changes are done:
1. Add a drawing_ready() method on Window: see
https://docs.rs/winit/0.8.2/winit/os/unix/trait.WindowExt.html#tymethod.is_ready
for explanations. Hopefully glutin will be able to handle it itself in
the future, but it currently does not.
2. resize window and OpenGL contextes.
The way wayland forces winit to draw its own decorations and how surface
size is defined by its content means that in practice:
- winit's window.set_inner_size() defines the dimensions of the
borders
- glutins gl_window.resize() defines the dimensions of the content
(and is a noop in other platforms)
It is for now glutin's user responsibility to keep them in sync
otherwise borders are drawn stupidly. This PR changes the resize methods
of alacritty::Window to always update both.
This fixed the borders issues for me, tested on weston.
|
|
|
|
|
|
|
|
Because there are so many clippy warnings in the current codebase,
this commit removes '#![cfg_attr(feature = "clippy", deny(clippy))]',
to make it easier to fix warnings incrementally.
|
|
|
|
|
|
500ms introduced a visual lag between file save and display update.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The previous format of --live-config-reload=VAL had a specific set of
allowed values which may not immediately be obvious. Instead, there are
now two flags which control the behavior:
--live-config-reload
--no-live-config-reload
If a user tries to specify both, the option parsing will fail with this
message:
error: The argument '--no-live-config-reload' cannot be used with
'--live-config-reload'
|
|
This will keep the original behavior for users who don't update their
config.
|
|
Provide a command line option as well as a configuration file option.
The command line option takes precedence.
|
|
|
|
|
|
|
|
Accidentally removed in
https://github.com/jwilm/alacritty/commit/c4ece6dde3c9dcf825a44aa775535a65c0c376a6
when winit version was bumped.
|
|
|
|
These now match the sequences sent by xterm. Not sure where I got the
original values.
Resolves #746.
|
|
When a scroll region is active with the cursor below the bottom of the
region, newlines should not cause the region to scroll.
A ref test was added for this situation to prevent regressions.
Thanks @hiciu for reporting and @nicm for the test case.
Resolves #745.
|
|
The selection might have a beginning or end that is outside the bounds
after a resize and cause a panic on subsequent draws. Easy solution is
to just clear the selection on resize.
|
|
The option is an Alpha struct that ensures that the contained float is
between 0.0 and 1.0. Background colors are multiplied by the opacity
to properly alpha blend them.
|
|
* Move rust dependency to the Prerequisites section
* Remove reference to a specific compiler version
|
|
Fixes #718
|
|
|
|
Resolves #634.
|
|
|
|
|
|
Now pass more vttests as well.
Resolves #123
cc #660 - screenshot there exhibited the problem, but issue is not
entirely about the background problem.
|
|
This silences a couple of compiler warnings in the build.
|
|
Resolves an issue with partial draws where programs like vim would send
data, but only part of it would be drawn.
The logic for escaping when a write is pending has been removed in favor
of limiting bytes processed during a pty_read call.
The value of MAX_READ may not be ideal.
|
|
|
|
Currently setting cursor visibility always fails on Wayland. It
shouldn't be a critical error on any platform.
|
|
|
|
|
|
|
|
|
|
Resolves #679
|