i3/RELEASE-NOTES-next
Michael Stapelberg eaa5e636f9
Implement include config directive (#4420)
The implementation uses wordexp(3) just like sway:
https://github.com/i3/i3/issues/1197#issuecomment-226844106

Thanks to jajm for their implementation at
bb55709d0a

This required refactoring the config parser to be re-entrant
(no more global state) and to return an error instead of dying.

In case a file cannot be opened, i3 reports an error but proceeds with the
remaining configuration.

Key bindings can be overwritten or removed using the new --remove flag of the
bindsym/bindcode directive.

All files that were successfully included are displayed in i3 --moreversion.

One caveat is i3 config file variable expansion, see the note in the userguide.

fixes #4192
2021-06-02 21:01:43 +02:00

58 lines
2.9 KiB
Plaintext

┌──────────────────────────────┐
│ Release notes for i3 v4.20 │
└──────────────────────────────┘
This is i3 v4.19. This version is considered stable. All users of i3 are
strongly encouraged to upgrade.
Background/wallpaper workaround:
Some login managers (e.g. gdm) start the X11 server with the -background none
flag. When this flag is set, a background needs to be explicitly set later in
the X11 session, otherwise stale copies of closed windows remain visible on the
X11 root window (symptom looks like “my terminal window is not closing”).
i3 works around this situation by setting a screenshot as background when
starting. Any background you set before starting i3 (e.g. in your Xsession) or
after starting i3 (e.g. via exec statements in the i3 config) will be visible.
A downside of this workaround is that if you have any windows already open in
your X11 session, those will be part of the screenshot.
To fix this issue, starting in v4.20, i3 detects whether the -background none
option is enabled and only then sets a screenshot as background.
┌────────────────────────────┐
│ Changes in i3 v4.20 │
└────────────────────────────┘
• default config: use dex for XDG autostart
• i3-nagbar: position on focused monitor by default
• i3-nagbar: add option to position on primary monitor
• alternate focusing tab/stack children-parent containers by clicking on their titlebars
• i3bar: use first bar config by default
• i3-dump-log -f now uses UNIX sockets instead of pthreads. The UNIX socket approach
should be more reliable and also more portable.
• Implement the include config directive
• Allow for_window to match against WM_CLIENT_MACHINE
• Add %machine placeholder (WM_CLIENT_MACHINE) to title_format
• Allow multiple output names in 'move container|workspace to output'
• Add 'move container|workspace to output next'
┌────────────────────────────┐
│ Bugfixes │
└────────────────────────────┘
• when initializing new outputs, avoid duplicating workspace numbers
• fix workspaces not moving to assigned output after output becomes available
• fix duplicate bindcode after i3-config-wizard
• i3bar: properly close file descriptors
• i3bar: properly restart status command after config change
• i3bar: exit with 1 when a wrong command line argument is used
• fix commented-out rofi call in default i3 config
• clear pixmap before drawing to prevent visual garbage
• ipc: return proper signed int for container positions: negative values were
returned as large 32 bits integers