1. 28 Dec, 2018 1 commit
  2. 15 Nov, 2018 1 commit
  3. 14 Nov, 2018 4 commits
  4. 13 Nov, 2018 3 commits
    • Christian Duerr's avatar
      Bump lockfile · f5e2f399
      Christian Duerr authored
      f5e2f399
    • Christian Duerr's avatar
      Bump version to 0.2.3 · 521d2f6a
      Christian Duerr authored
      Since the version 0.2.2 had some significant breakage which affects a
      large number of users, this 0.2.3 release aims at providing a stable
      release which works for everyone without any major regressions.
      521d2f6a
    • Christian Duerr's avatar
      Fix specifying 0 lines/columns in config file · a68ce7a0
      Christian Duerr authored
      The logic during the initial spawning of the window was a bit twisted
      up. This has been resolved and it should all work properly now, even
      without a resize event at startup.
      
      This fixes #1781.
      a68ce7a0
  5. 12 Nov, 2018 3 commits
    • Christian Duerr's avatar
      Fix incorrect padding calculations · d05d16f0
      Christian Duerr authored
      The extra window padding was calculated in the renderer which lead to
      problems with the paddings calculated in the `src/display.rs` and
      `src/term/mod.rs`.
      
      As a solution, every instance of `config.padding().x/y` has been removed
      from the renderer (`src/renderer/mod.rs`), instead the padding is always
      passed through from the `src/display.rs`.
      
      The initial calculations during display creation and after resize then
      are scaled appropriately and then the extra padding is calculated. As a
      result every other location can just make use of the correctly
      calculated `size_info.padding_x` and `size_info.padding_y`.
      
      The documentation has been changed to clearly state that the padding is
      scaled by DPI now.
      
      This fixes #1773.
      d05d16f0
    • Mihyaeru's avatar
      Fix macos config bold font documentation · 4a8d18cd
      Mihyaeru authored
      4a8d18cd
    • Christian Duerr's avatar
      Fix failing github releases · 65033163
      Christian Duerr authored
      The manpage was incorrectly zipped up with the `-z` option, which
      doesn't exist and created a 0-size file. Since Github does not accept
      0-size files, this lead to the complete release deployment failing.
      
      Changing this to use the `-c` option should fix this problem by creating
      a proper non-zero size gzip file.
      65033163
  6. 11 Nov, 2018 3 commits
    • Christian Duerr's avatar
      Bump version number to v0.2.2 · f182afaf
      Christian Duerr authored
      f182afaf
    • Christian Duerr's avatar
      Center the grid inside the window · 6a0bd740
      Christian Duerr authored
      Currently alacritty always puts the grid at the top-left position of the
      window. The only distance to the top-left window border is set by the
      padding in the config.
      
      However the grid always has a fixed size, and if a cell doesn't
      completely fit the screen anymore, the padding at the bottom right
      window corner can be significantly bigger than the padding at the top
      left.
      
      To fix this whenever there is more space left and there would usually be
      a bigger padding at the bottom right, the space is now split up and
      added to the padding.
      
      This should always center the grid inside the window and make sure all
      borders have the same padding from the text area.
      
      This screenshot shows how it has been until now:
      ![Before](https://u.teknik.io/kRJwg.png)
      
      Here is how it looks now:
      ![After](https://u.teknik.io/m4puV.png)
      
      This fixes #1065.
      6a0bd740
    • Christian Duerr's avatar
      Set env variables before window start · dba3cccf
      Christian Duerr authored
      The environment variables specified in the configuration file are now
      all set before the window is created. As a result, this makes it
      possible to add the `WINIT_HIDPI_FACTOR` env variable directly to the
      Alacritty configuration.
      
      This fixes https://github.com/jwilm/alacritty/issues/1768.
      dba3cccf
  7. 10 Nov, 2018 2 commits
    • Christian Duerr's avatar
      Remove re-export of glutin size types · 021b4248
      Christian Duerr authored
      021b4248
    • Matt Keeler's avatar
      Upgrade Glutin to v0.19.0 · 2434547f
      Matt Keeler authored
      Some changes include:
      
      • Use the with_hardware_acceleration function on the ContextBuilder to not require the discrete GPU
      • Remove the LMenu and RMenu virtual key codes (winit 0.16.0 removed these because Windows now generates LAlt and RAlt instead
      • Replace set_cursor_state with hide_cursor (winit 0.16.0 removed the set_cursor_state function)
      • Replace GlWindow::hidpi_factor with GlWindow::get_hidpi_factor and change to expecting an f64
      • Use the glutin/winit dpi size and position types where possible
      
      Glutin's dpi change event has been implemented. All size events now
      return logical sizes. As a result of that, the logical sizes are translated
      in the `display::handle_rezize` method so DPI scaling works correctly.
      
      When the DPI is changed, the glyph cache is updated to make use of the
      correct font size again.
      
      Moving a window to a different screen which is a different DPI caused a
      racing condition where the logical size of the event was sent to the
      `handle_resize` method in `src/display.rs`, however if there was a DPI
      change event before `handle_resize` is able to process this message, it
      would incorrectly use the new DPI to scale the resize event.
      
      To solve this issue instead of sending the logical size to the
      `handle_resize` method and then converting it to a physical size in
      there, the `LogicalSize` of the resize event is transformed into a
      `PhysicalSize` as soon as it's received. This fixes potential racing
      conditions since all events are processed in order.
      
      The padding has been changed so it's also scaled by DPR.
      
      The `scale_with_dpi` config option has been removed. If it's not present
      a warning will be emitted.
      
      The `winit` dependency on Windows has been removed. All interactions
      with winit in Alacritty are handled through glutin.
      2434547f
  8. 07 Nov, 2018 2 commits
  9. 06 Nov, 2018 1 commit
  10. 04 Nov, 2018 2 commits
  11. 03 Nov, 2018 2 commits
    • Christian Duerr's avatar
      Fix windows tagged builds · d2f49727
      Christian Duerr authored
      The windows tagged builds currently fail some tests since the
      winpty-agent.exe is inside the release directory instead of the debug
      directory with tagged builds.
      d2f49727
    • Micha Gorelick's avatar
      Publish Github releases from Travis · 77816797
      Micha Gorelick authored
      This release introduces some config to automatically build deploy a
      binaries on the github release page using travis. The build only happens
      when a commit is tagged and it uses the stable version of rust.
      
      The main travis sections (install/script/before_deploy) have been
      moved out of the .travis.yml to make it easier to read, maintain and
      extend the different steps of the CI process.
      
      Since checking for the Rust version in CI is enough to know if clippy
      should be used or not, the environment variable `CLIPPY` has also been
      removed, which further allowed simplifying the CI process.
      
      Besides the executables, some auxillary files are now also published as
      part of a release when they have changed since the last tagged Alacritty
      release. This should make it clear for returning users when a new
      version of a specific auxillary file is required.
      
      Instead of using the 14.04 image which travis provides by default, an
      18.04 docker image is used to build the output binaries for Linux.
      This affects both the .deb and the .tar.gz binary.
      
      The advantage of this is that while binaries compiled on 14.04, do not
      work on 18.04, it does work the other way around. The generated .tar.gz
      binary has been tested on 18.04, Debian, Fedora and Archlinux and all
      systems were able to run it without any warnings or errors.
      77816797
  12. 02 Nov, 2018 1 commit
    • Nathan Lilienthal's avatar
      Fix selection while scrolling · fd8af0df
      Nathan Lilienthal authored
      Properly update an active selection while scrolling the main scrollback buffer.
      
      This does not affect the alternate screen buffer, since no scrollback buffer is
      available.
      fd8af0df
  13. 01 Nov, 2018 5 commits
    • Christian Duerr's avatar
      Fix default hollow cursor behavior with empty conf · a3f729f5
      Christian Duerr authored
      The 2c37da48 change introduced some
      changes to the way cursor configuration is handled. However it did not
      properly handle the default behavior of the hollow cursor when the
      `cursor` field was not specified at all.
      
      By implementing the `Default` trait for the `Cursor` struct in
      `config.rs` manually, the default value of the `unfocused_hollow` field
      has been corrected back to `true` when the `cursor` struct isn't present
      at all.
      a3f729f5
    • Niclas Zeising's avatar
      Add Instructions for installing on FreeBSD · a846faa6
      Niclas Zeising authored
      Readd instructions for how to install pre-compiled alacritty packages on
      FreeBSD.  This was accidentaly removed in cb6e0653.
      a846faa6
    • Christian Duerr's avatar
      Fix mouse pasting in mouse mode with shift · 2c37da48
      Christian Duerr authored
      It is now possible to paste in mouse mode again by making use of the
      `shift` key while pressing the mouse button reserved for PasteSelection.
      
      All mouse bindings are now also matching the modifiers in a relaxed way,
      so extra modifiers are ignored.
      2c37da48
    • Christian Duerr's avatar
      Rework cursor configuration · a7d95540
      Christian Duerr authored
      There are a couple of cursor-related options in the Alacritty config
      file now, however they aren't grouped together in any way.
      
      To resolve this a new `cursor` field has been added where all cursor
      configuration options (besides colors) have been moved.
      
      The `custom_cursor_colors` option has also been removed, since it's not
      necessary anymore. Simply making the `colors.cursor.*` fields optional,
      allows overriding the cursor colors whenever one of them is present.
      Like that the user doesn't have to think about a relation between two
      separate configuration options.
      
      This PR initially put the `hide_cursor_when_typing` variable under
      `cursor.hide_when_typing`. However this field is completely unrelated to
      the cursor, but instead relates to the mouse cursor.
      
      Since the word `cursor` is already used for the active cell in the grid
      of a terminal emulator, all occurences of the word `cursor` when talking
      about the mouse have been replaced with the word `mouse`.
      
      The configuration option has also been moved to
      `mouse.hide_when_typing`, to make it clear what this option is changing.
      
      This fixes #1080.
      a7d95540
    • Do Duy's avatar
      Update serde_yaml to 0.8 · f0579345
      Do Duy authored
      This fixes jwilm/alacritty#1730.
      f0579345
  14. 31 Oct, 2018 3 commits
    • Christian Duerr's avatar
      Add change log entry for configuration fix · 8b8d9ea7
      Christian Duerr authored
      This updates the CHANGELOG.md to include information
      about the changes which have been made in #1634.
      8b8d9ea7
    • Dominic Evans's avatar
      Sync .app bundle timestamp during build · fd6a5512
      Dominic Evans authored
      Fixes #1717.
      fd6a5512
    • Christian Duerr's avatar
      Fix deb build · 5a8a3430
      Christian Duerr authored
      Since cargo-deb builds all members of the workspace by default, it is
      necessary that the winpty subcrate can be built on all operating
      systems, since it's not possible to have OS-specific workspace members.
      
      To achieve this the crate has been changed to be empty by default on
      non-windows systems. It might make sense to do something similar with
      winpty-sys, but it's not strictly necessary at this point since we don't
      directly depend on it.
      
      This fixes #1716.
      5a8a3430
  15. 30 Oct, 2018 2 commits
    • Christian Duerr's avatar
      Update Windows configuration file · cc1ad491
      Christian Duerr authored
      The Windows configuration file was outdated compared to the other
      configuration files, since there were some major changes to the config
      during the development of the Windows PR.
      
      All changes between the Linux and Windows configuration file have been
      removed, preserving platform-specific configuration defaults that were
      intentionally changed.
      
      Some minor changes have also been made to the Linux and macOS
      configuration files, since there were some inconsistencies left.
      
      This fixes #1692.
      cc1ad491
    • Zac Pullar-Strecker's avatar
      Revert "Update Windows configuration file" · 6c730809
      Zac Pullar-Strecker authored
      This reverts commit a9e03f1a.
      6c730809
  16. 29 Oct, 2018 2 commits
    • Christian Duerr's avatar
      Update Windows configuration file · a9e03f1a
      Christian Duerr authored
      The Windows configuration file was outdated compared to the other
      configuration files, since there were some major changes to the config
      during the development of the Windows PR.
      
      All changes between the Linux and Windows configuration file have been
      removed, preserving platform-specific configuration defaults that were
      intentionally changed.
      
      Some minor changes have also been made to the Linux and macOS
      configuration files, since there were some inconsistencies left.
      
      This fixes #1692.
      a9e03f1a
    • Zac Pullar-Strecker's avatar
      58127f46
  17. 27 Oct, 2018 3 commits
    • Zac Pullar-Strecker's avatar
      Explicitly detach from the console on exit · df82b5ff
      Zac Pullar-Strecker authored
      Without this cmd won't redraw it's prompt when alacritty exits
      df82b5ff
    • Christian Duerr's avatar
      Refactor platform-specific code · a54cc4ec
      Christian Duerr authored
      a54cc4ec
    • Christian Duerr's avatar
      Relax matching of URL modifiers · a9397727
      Christian Duerr authored
      To click on links in the alternate screen buffer, it is necessary that
      the `shift` button is held down, otherwise mouse events are captured by
      the application. However this would also require that `Shift` is added
      to the `mouse.url.modifiers` option. Thus it is not possible anymore to
      click on URLs unless the shift button is always held down.
      
      To resolve this issue, the matching of modifiers has been relaxed. If a
      modifier is specified in the config, it is always required to be held
      down. However if a modifier is held down which is not specified, it is
      still accpeted. This one-way relaxed matching allows clicking on links
      with or without shift held down without having to make use of the
      `mouse.url.modifiers` setting at all.
      a9397727