aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2017-11-11Fix typo and whitespaceJoe Wilm
2017-11-11Style fixesJoe Wilm
2017-11-11Don't enforce window dimensions if configured with 0 columns or linesBryan Gilbert
2017-11-11Match LF behavior outside scroll region with urxvtJoe Wilm
Outside of a scroll region, linefeed will still advances the line until reaching the bottom row in other terminals. Alacritty now matches that.
2017-11-11Correct linefeed handling when scroll region set (#855)Yan
Linefeeds should only move the cursor down if it's before the end of the scroll region. The "out of bounds" panic was triggered by linefeeds going off the bottom of the screen when the scroll region end was above the cursor. Note: https://vt100.net/docs/vt102-ug/chapter5.html "Characters added outside the scrolling region do not cause the screen to scroll."
2017-11-11Support integer font size in config (#886)thelearnerofcode
Fixes #882
2017-10-30fix some typos in commentsMartin Lindhe
2017-10-26set_urgent on mac throws a warning (#867)Ty Coghlan
On mac, compiling throws a warning due to `is_urgent` not being used within `set_urgent`. This can be changed just by using an underscore instead.
2017-10-26Fix stack overflowJoe Wilm
Resolves #872
2017-10-22Change cursor from pointer to text (#778)Dustin
It seems that (as a rule) terminal emulators use the text mouse cursor rather than the pointer that is used now. This commit changes the cursor to using winit's built-in configuration function.
2017-10-22Fix typoJoe Wilm
2017-10-22Rewrite err_println to eprintln introduced in Rust 1.19 (#799)Roel
2017-10-21Set urgent WM flag on bell on X11 systems (#812)Barret Rennie
Sets the urgent WM flag when bell is emitted on X11 systems. Additionally, the flag is cleared on focus because not all WMs clear it automatically.
2017-10-21Fix solid background color opacity (#847)Joe Wilm
Since landing the patch adding transparency support to Alacritty, there's been an issue where othewise solid background cells were also being rendered partially transparent. Now, all filled background cells are rendered fully opaque. Some logic was added to support discarding filled backgrounds which had the same color as the default background. This means that, if the default background is #000 and a cell has that background, it will never be rendered opaque. This may not be correct. Note that many truecolor vim color schemes print spaces for default colored background cells. Performance can be dramatically improved by using ctermbg=NONE guibg=NONE to skip rendering those cells.
2017-10-21List all valid actions in config error message (#848)Robert Bittle
2017-10-17Fix render issues on macOS (#845)Joe Wilm
Parts of neighboring glyphs in the atlas were being rendered incorrectly. The issue is resolved by aligning cells to the pixel grid. This behavior was achieved previously by first applying integer truncation before casting to a float. Fixes #844.
2017-10-16Fix config reloadingJoe Wilm
Must have been broken when upgrading notify-rs
2017-10-16Fix default config reload valueJoe Wilm
This shouldn't have any effect, but at least the default value is now consistent with the default deserialization value.
2017-10-14Drop nightly featureJoe Wilm
Forgot to remove after being done with valgrind
2017-10-14Fix memory leak from font resizingJoe Wilm
The source of the leak was loading up multiple copies of the FT_face even when not necessary. Fonts are now appropriately cached for FreeType when going through the `Rasterize::load_font` API. Additionally, textures in the glyph cache are now reused. The result of this is that resizing to already loaded fonts is free from a memory consumption perspective.
2017-10-14Implement user actions for font resize (#625)Dan Aloni
Adds support for font resizing at run-time. Three new actions are introduced: * IncreaseFontSize - Increases current font size by 1.0 * DecreaseFontSize - Decreases current font size by 1.0 * ResetFontSize - Resets font size to that specified in the configuration. The stock config files have example configuration for each which should match gnome-terminal. For convenience, the config entries are: - { key: Key0, mods: Control, action: ResetFontSize } - { key: Equals, mods: Control, action: IncreaseFontSize } - { key: Subtract, mods: Control, action: DecreaseFontSize }
2017-10-14Fix resize behaviorJoe Wilm
Should prevent the messed up background colors that appear in some situations (especially on tiling WMs).
2017-10-09Support web notation for hex colorsRobert Günzler
2017-10-08Scale all fonts based on device-pixel-ratioJoe Wilm
Rather than use DPI from config, use device-pixel-ratio from winit. This is computed using the display DPI anyhow, so it should have the same effect.
2017-10-08Add support for env_loggerJoe Wilm
When RUST_LOG environment variable is set, uses env_logger instead of our custom logger. This is desirable for debugging purposes.
2017-10-06Revert "Update glutin & fix a few wayland issues (#815)"Joe Wilm
This reverts commit e17d38167e174a2cf664e430fe968ec6492e1f08. Was breaking builds for mac users.
2017-10-06Update glutin & fix a few wayland issues (#815)Victor Berger
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.
2017-09-30implement ANSI CSI REP (Repeat)Jasper Bryant-Greene
2017-09-27Use clippy = "*", update, and fix some warnings (#796)Aaron Hill
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.
2017-09-11Log where config was loaded fromJoe Wilm
2017-09-05Comment about duration arg to file watcherJoe Wilm
2017-09-05Reduce file watcher debounce periodJoe Wilm
500ms introduced a visual lag between file save and display update.
2017-09-05Update notifyJonathan Schleußer
2017-09-05Update most remaining depsJonathan Schleußer
2017-09-05Update servoJonathan Schleußer
2017-09-02Fix #721: touchpad scrolling (#726)Linus Heckemann
2017-08-29Change CLI live-config-reload options into flagsJoe Wilm
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'
2017-08-29Default to enabling live config reloadJoe Wilm
This will keep the original behavior for users who don't update their config.
2017-08-29Implement options to not start the config_monitor thread (#689)Liu Wei
Provide a command line option as well as a configuration file option. The command line option takes precedence.
2017-08-29Fix reloading colors from config (#756)Tuomas Siipola
2017-08-22Fix newline + scroll region bug (#747)Joe Wilm
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.
2017-08-21Fix panic when resizingJoe Wilm
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.
2017-08-20Add background_opacity option to set terminal transparency (#331)Gabriel Martinez
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.
2017-08-11Fix smcup/rmcup toggle bugJoe Wilm
Resolves #634.
2017-08-11Rename some variables for clarityJoe Wilm
2017-08-11Fix warnings on macOSJoe Wilm
2017-08-11Fix BCE issues affecting vimJoe Wilm
Now pass more vttests as well. Resolves #123 cc #660 - screenshot there exhibited the problem, but issue is not entirely about the background problem.
2017-07-31Read more from ptyJoe Wilm
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.
2017-07-28Support background and foreground color escape codes (#662)Tuomas Siipola
2017-07-28Don't panic when setting cursor visibility fails (#683)Tuomas Siipola
Currently setting cursor visibility always fails on Wayland. It shouldn't be a critical error on any platform.