133 lines
7.4 KiB
Plaintext
133 lines
7.4 KiB
Plaintext
|
||
┌────────────────────────────┐
|
||
│ Release notes for i3 v4.12 │
|
||
└────────────────────────────┘
|
||
|
||
This is i3 v4.12. This version is considered stable. All users of i3 are
|
||
strongly encouraged to upgrade.
|
||
|
||
If cairo ≥ 1.14.4 is available, i3 and i3bar will use cairo for rendering
|
||
(instead of raw X11 drawing primitives). While this is currently optional,
|
||
having cairo ≥ 1.14.4 will be a hard requirement in future release.
|
||
|
||
This release contains a good number of detail improvements and fixes.
|
||
|
||
┌────────────────────────────┐
|
||
│ Changes in i3 v4.12 │
|
||
└────────────────────────────┘
|
||
|
||
• use https instead of git/http, update contact information, add GPG key
|
||
• docs/hacking-howto: fix old cfgparse.y reference to config_parser.c
|
||
• docs/ipc: added link to i3ipcpp (C++ library)
|
||
• docs/userguide: clarify no_focus documentation
|
||
• docs/userguide: add documentation for binding modes
|
||
• docs/userguide: fix rendering of __focused__
|
||
• docs/userguide: improve placement of explicit IDs for headings
|
||
• docs/userguide: make rendering of key bindings more consistent
|
||
• docs/userguide: clarify quoting of “exec” commands
|
||
• man/i3-nagbar: fix example invocation
|
||
• man/i3: add “floating window” to terminology
|
||
• i3-sensible-*: quote variables correctly
|
||
• i3-sensible-editor: add neovim
|
||
• i3-sensible-terminal: add termit, st
|
||
• i3bar: use cairo for all drawing operations
|
||
• i3bar: support per-statusblock border and background colors
|
||
• i3bar: support different bar background colors depending on whether the bar
|
||
is on the focused output or not
|
||
• i3bar: multiple tray_output directives on the same bar are now supported
|
||
• i3bar: support disabling the modifier by specifying “modifier none”
|
||
• use cairo for all drawing operations
|
||
• fix a number of memory leaks, thanks to AddressSanitizer
|
||
• no_focus is now suppressed for the first window of a workspace
|
||
• “workspace next/prev” now looks for numbered workspaces after reaching the
|
||
last workspace (it used to incorrectly only look at named workspaces)
|
||
• multiple marks can now be set on a single window (but a mark can still only
|
||
be present on one window at a time)
|
||
• the “unmark” command now supports criteria
|
||
• the “con_id” criterion now supports the special value __focused__
|
||
• the “workspace” command now supports the --no-auto-back-and-forth parameter
|
||
• the “move window to workspace” command now supports the
|
||
--no-auto-back-and-forth parameter
|
||
• the “resize grow|shrink width|height” command now works for a nested split
|
||
in the same direction
|
||
• support _NET_WM_USER_TIME’s special 0 value, indicating that a window
|
||
should not be focused
|
||
• use 32-bit visual by default if available. This reduces graphical glitches
|
||
when using transparency (which is still not officially supported)
|
||
• the “move position center” command now supports criteria
|
||
• specifying invalid match criteria now results in an error instead of
|
||
blindly applying the operation to the currently focused window
|
||
• allow mouse bindings to run on the root window
|
||
• support matching _NET_WM_WINDOW_TYPE_NOTIFICATION in criteria
|
||
• all criteria are now matched, even when con_id or con_mark are given (used
|
||
to be a special case)
|
||
• allow the “id” criterion to be specified in any base recognized by
|
||
strtol(), not only base 10
|
||
• non-true color displays are now supported again (e.g. the Raspberry Pi)
|
||
• the “split” command now has a “toggle” option
|
||
• the additional color class “decoration_border” was added
|
||
• title_format is now stored on containers instead of windows, allowing the
|
||
use of title_format on split containers
|
||
• On OpenBSD, i3 now uses pledge(2)
|
||
• support _NET_WM_DESKTOP (for pager applications like gnome-panel)
|
||
• floating workspaces are no longer available (they were not supported for a
|
||
while now)
|
||
• floating windows now carry the I3_FLOATING_WINDOW atom so that tools like
|
||
compositors can be configured to match on floating windows
|
||
|
||
┌────────────────────────────┐
|
||
│ Bugfixes │
|
||
└────────────────────────────┘
|
||
|
||
• i3bar: display short text only on the monitor(s) on which it is necessary
|
||
• i3bar: explicitly set cursor using libxcb-cursor if available
|
||
• i3bar: fix XEMBED messages
|
||
• i3-nagbar: explicitly set cursor using libxcb-cursor if available
|
||
• duplicated keybindings are now also detected when one uses bindcode but the
|
||
other(s) use(s) bindsym
|
||
• keymap fallback for servers without XKB (e.g. TightVNC) has been added
|
||
• using pango markup in mode names is now optional, fixing a regression in i3
|
||
v4.11 where modes which contained characters such as “<” would break.
|
||
• moving windows to a workspace by specifying a mark now works
|
||
• the root output is now used when any RandR request fails (for x2go)
|
||
• assignments are now marked as run before executing them, preventing endless
|
||
loops/crashes when assignments cause another assignment evaluation
|
||
• splitting/floating a dock container no longer crashes i3
|
||
• correctly compare modifier mask when identifying keybindings (fixes
|
||
bindings which use --release)
|
||
• no longer fail config validation when there is no newline at the end of
|
||
the config file
|
||
• scrollwheel buttons are now only grabbed when necessary, allowing the use
|
||
of “bindsym button*” or scrolling in windows without focusing them (in case
|
||
no “bindsym button*” is present)
|
||
• parse con_id in base 16 (affected FreeBSD only)
|
||
• fix crash when opening a large number of windows
|
||
• reject empty swallow definitions to avoid crashes
|
||
• don’t remove SubstructureRedirect event mask temporarily (fixes i3bar
|
||
stopping after system suspend)
|
||
• move urgent flag before killing the parent to avoid a crash
|
||
• correctly validate “kill” command to avoid crashing when “kill” is invoked
|
||
on workspace containers
|
||
• actually accept the documented “workspace” token as an alternative to “→”
|
||
in assign statements
|
||
• remove _NET_WM_STATE on withdrawn windows to comply with the spec
|
||
• the “border” command now uses logical pixels (relevant for hi-dpi displays)
|
||
• “tray_output primary” does not properly fall back and hence was removed
|
||
from the default config again
|
||
• correctly determine focused workspace when moving workspace to output
|
||
• revert to default binding mode before reloading the config file
|
||
• correctly interpret _MOTIF_WM_HINTS (endianness-dependent)
|
||
|
||
┌────────────────────────────┐
|
||
│ Thanks! │
|
||
└────────────────────────────┘
|
||
|
||
Thanks for testing, bugfixes, discussions and everything I forgot go out to:
|
||
|
||
Adaephon, Airblader, Alexis211, bendem, botovq, brianmillar, DavidMikeSimon,
|
||
dcoppa, Florian Merkel, fmthoma, frederik, hwangcc23, jolange, Juuso
|
||
Lapinlampi, kneitinger, lotheac, nicklan, norrland, pra85, romanblanco,
|
||
sur5r, tbu-, tyll, wodny
|
||
|
||
-- Michael Stapelberg, 2016-03-06
|