diff --git a/DEPENDS b/DEPENDS index 61fb9586..32f1d460 100644 --- a/DEPENDS +++ b/DEPENDS @@ -22,6 +22,8 @@ │ Xlib │ 1.3.3 │ 1.4.3 │ http://ftp.x.org/pub/current/src/lib/ │ │ PCRE │ 8.12 │ 8.12 │ http://www.pcre.org/ │ │ libsn¹ │ 0.10 │ 0.12 │ http://freedesktop.org/wiki/Software/startup-notification +│ pango │ 1.30.0 | 1.30.0 │ http://www.pango.org/ │ +│ cairo │ 1.12.2 │ 1.12.2 │ http://cairographics.org/ │ └─────────────┴────────┴────────┴────────────────────────────────────────┘ ¹ libsn = libstartup-notification diff --git a/RELEASE-NOTES-4.3 b/RELEASE-NOTES-4.3 new file mode 100644 index 00000000..e7153d5a --- /dev/null +++ b/RELEASE-NOTES-4.3 @@ -0,0 +1,150 @@ + + ┌──────────────────────────────┐ + │ Release notes for i3 v4.3 │ + └──────────────────────────────┘ + +This is the third release of the new major version of i3, v4.3. It is +considered stable. All users of i3 are strongly encouraged to upgrade. + +One of the most visible changes is probably that commands which lead to an + error will now spawn i3-nagbar. This will make you immediately aware of + problems such as typos in your configuration file (such as "bindsym $mod+x exc + firefox" instead of "exec"). This is not restricted to parser errors, but all + errors (such as when trying to move a window to another workspace without + actually having a window focused). If this is annoying to you for some specific + key configuration, you can turn it off by replacing a binding like: + bindsym $mod+x move absolute position center + with something like this: + bindsym $mod+x exec --no-startup-id i3-msg move absolute position center >/dev/null 2>&1 + (Yes, this is somewhat painful, but intended. You should not suppress errors in + general, so we don’t want to make it too easy.) + + +We also made the orientation (horizontal/vertical) part of the layout + mechanism: Before, we got the default layout and you could change + orientation. Now, there are two new layouts "splitv" and "splith", which + replace the default layout. The "split h" and "split v" commands continue to + work as before, they split the current container and you will end up in a + split container with layout splith (after "split h") or splitv (after "split + v"). + + To change a splith container into a splitv container, use either "layout + splitv" or "layout toggle split". The latter command is used in the + default config as mod+l (previously "layout default"). In case you have + "layout default" in your config file, it is recommended to just replace + it by "layout toggle split", which will work as "layout default" did + before when pressing it once, but toggle between horizontal/vertical + when pressing it repeatedly. + + The rationale behind this commit is that it’s cleaner to have all + parameters that influence how windows are rendered in the layout itself + rather than having a special parameter in combination with only one + layout. This enables us to change existing split containers in all cases + without breaking existing features (see ticket #464). Also, users should + feel more confident about whether they are actually splitting or just + changing an existing split container now. + + As a nice side-effect, this commit brings back the "layout toggle" + feature we once had in i3 version 3 (see the userguide). + + +Another very important change is that we now support pango for rendering text. + The default is still to use misc-fixed (X core fonts), but you can use a font + specification starting with "xft:" now, such as "xft:DejaVu Sans Mono 10" and + i3 will use pango. The sole motivation for this is NOT to have fancier window + decorations, but to support fonts which have more glyphs (think Japanese for + example) and to support right-to-left rendering (open http://www.ftpal.net/ + for an example). Supporting users from all over the planet is important, and + as such I would strongly advise distribution packagers to leave pango support + in. In case you are working on a very low-spec embedded device, it is easy + enough to disable pango support, see common.mk. + + ┌────────────────────────────┐ + │ Changes in v4.3 │ + └────────────────────────────┘ + + • docs/refcard: update for v4 + • docs/userguide: clarify the default for focus_follows_mouse and new_window + • docs/userguide: add section about implicit containers + • docs/ipc: document the 'window' field in the GET_TREE reply + • docs/ipc: update links to ipc libraries + • docs/ipc: make the reply sections consistent + • docs/i3bar-protocol: add example (illustration-only!) shell script + • man/i3bar.man: reference i3bar-protocol + • IPC: Commands now lead to proper error messages in general. If we forgot + about a specific one, please open a ticket. + • IPC: implement GET_VERSION to find out the i3 version + • i3-dump-log now comes with a massively more helpful error message that + should cover all the use cases. + • 'workspace number ' now opens a new workspace + • 'workspace number ' now works with the back_and_forth option + • Allow focus with target (criteria) when in fullscreen mode in some cases + • Allow focus child/parent when in fullscreen mode + • Restrict directional focus when in fullscreen mode + • Prevent moving out of fullscreen containers + • Add 'move to workspace current' (useful when used with criteria) + • replace loglevels by a global debug logging + • make: new makefile layout + • make: canonicalize path when compiling. This leads to sth like + ../i3-4.2/src/main.c in backtraces, clearly identifying i3 code. + • automatically hide i3bar when it’s unneeded (after urgency hints) + • i3-config-wizard: use the level 0 keysym whenever it’s unambiguous + • i3-nagbar: use custom scripts to work around different terminal emulators + using different ways of interpreting the arguments to -e + • i3-sensible-terminal: add xfce4-terminal + • default config: require confirmation when exiting i3 + • Display i3-nagbar when a command leads to an error. + • testcases: complete-run now supports --xtrace + • testcases: handle EAGAIN (fixes hangs) + • testcases: handle test bailouts + • Introduce splith/splitv layouts, remove orientation + • Implement hide_edge_borders option + • Support _NET_ACTIVE_WINDOW ClientMessages + • Set I3_PID atom on the X11 root window + • Implement i3 --moreversion, handy for figuring out whether you run the + latest binary which is installed. + • i3bar: be less strict about the {"version":1} JSON header + • shm-logging: implement i3-dump-log -f (follow) + • Implement pango support + + ┌────────────────────────────┐ + │ Bugfixes │ + └────────────────────────────┘ + + • Fix floating precision bug when floating windows are moved between outputs. + • i3bar won’t crash when full_text is missing or null in the JSON input + • When having "workspace number 1" in your config, there will no longer be a + stray workspace "number 1". + • i3.config.keycodes used bindsym instead of bindcode for the arrow key + resizing bindings by mistake + • Fix 'move to workspace' when used with criteria + • Handle clicks to the very left edge of i3bar + • When using i3 -C, don’t send remaining arguments as an IPC command + • Fix reload crashes in rare cases + • i3bar: inform all clients of new tray selection owner (fixes tray problems + with X-Chat and possibly others) + • resizing: traverse containers up properly (fixes non-working resizing when + having a h-split within a h-split for example) + • Fix floating coordinates when moving assigned workspaces + • Properly fix floating coordinates when disabling outputs + • floating_fix_coordinates: properly deal with negative positions + • floating windows: add deco_height only when in normal border mode (fixes + initial floating window position/size when using a different default border + setting). + • Fix moving scratchpad window + • Cleanup zero-byte logfile on immediate exit (they are created by i3 + --get-socketpath for example). + + ┌────────────────────────────┐ + │ Thanks! │ + └────────────────────────────┘ + +Thanks for testing, bugfixes, discussions and everything I forgot go out to: + + aksr, Axel Wagner, darkraven, David Coppa, eeemsi, Felicitus, Fernando Tarlá + Cardoso Lemos, Iakov Davydov, jh, Julius Plenz, Marcel Hellwig, Marcus, + Michael Stapelberg, mloskot, Moritz Bandemer, oblique, Ondrej Grover, Pavel + Löbl, Philipp Middendorf, prg, Quentin Glidic, somelauw, stfn, tucos, + TunnelWicht, Valentin Haenel + +-- Michael Stapelberg, 2012-08-18