Merge branch 'master' into next

This commit is contained in:
Michael Stapelberg 2012-06-10 18:08:23 +02:00
commit c008f3f928
6 changed files with 0 additions and 553 deletions

View File

@ -1,135 +0,0 @@
┌────────────────────────────┐
│ Release notes for i3 v4.0 │
└────────────────────────────┘
This is the first release of the new major version of i3, v4.0. It has been a
long time since v3.ε was released (over one year). A lot has been happening
since then, we made 736 commits compare that to the total number of 1664
commits for i3.
The reason for the high number of commits and long time for this release is the
big refactoring we have been doing. Instead of using several lists and a table
as data structures, we now use a single tree of containers. These containers
represent invisible entities like your X11 root window, your different monitors
and workspaces, but also visible entities like actual windows.
Using a tree has made a lot of things cleaner and easier in the code *and* in
the user interface. Admittedly though, you will probably need a day or two to
get used to a few more advanced movement commands if you are used to v3.ε right
now.
┌────────────────────────────┐
│ New features │
└────────────────────────────┘
• In addition to the proper flex/bison based parser for the config file
introduced in 3.δ, we now also have a flex/bison parser for commands. What
this means is that we can have more human-readable, beautiful command names
instead of cryptic commands like 'f' for fullscreen or 'mh' for move left.
In fact, the commands for the aforementioned functions *are* 'fullscreen'
and 'move left'!
• You can now chain commands using ';' (a semicolon). One example for that is
'workspace 3 ; exec /usr/bin/urxvt' to switch to a new workspace and open a
terminal.
• You can specify which windows should be affected by your command by using
different criteria. A good example is '[class="Firefox"] kill' to get rid
of all Firefox windows.
• As the configuration file needs new commands (and a few options are
obsolete), you need to change it. To make this process a little bit easier
for you, this release comes with the script i3-migrate-config-to-v4. Just
run it on your current config file and it will spit out a v4 config file to
stdout. To make things even better, i3 automatically detects v3 config files
and calls that script, so you never end up with a non-working config :).
• Similarly to the criteria when using commands, we now have a 'for_window'
configuration directive, which lets you automatically apply certain commands
to certain windows. Use it to set border styles per window, for example with
'for_window [class="XTerm"] border 1pixel'.
• Since dock clients (like dzen2) are now part of the layout tree (as opposed
to a custom data structure as before), it was easy to implement top and
bottom dock areas. Programs which properly specify the dock hint get placed
on the edge of the screen they request. i3bar has the -dtop and -dbottom
parameters, for example.
• The internal workspace bar is obsolete. Use i3bar instead.
• Resizing now works between all windows!
• Fullscreen now works for everything!
• Floating now works for everything!
• Your layout is now preserved when doing an inplace restart.
• When you have an error in your config file, a new program called i3-nagbar
will tell you so. It offers you two buttons: One to view the error in your
$PAGER and one to edit your config in your $EDITOR.
• The default config used key symbols (like 'bind Mod1+f fullscreen') instead
of key codes. If you use a non-qwerty layout, the program i3-config-wizard
can create a key symbol based config file based on your current layout. You
can also chose between Windows (Mod4) and Alt (Mod1) as your default
modifier. i3-config-wizard will automatically be started as long as you
dont have a configuration file for i3.
• Custom X cursor themes are now supported.
• The RandR backend now respects the primary output.
• A wrong 'font' configuration in your config file will no longer make i3
exit. Instead, it will fall back to a different font and tell you about the
error in its log.
• The default split direction (whether a new window gets placed right next to
the current one or below the current one) is now automatically set to
horizontal if you have a monitor that is wider than high or vertical if you
a monitor which is higher than wide. This works great with rotated monitors.
• Sockets and temporary files are now placed in XDG_RUNTIME_DIR, if set (this
is used on systemd based systems).
• Tools like i3bar, i3-msg etc. use the I3_SOCKET_PATH property which is set
to the X11 root window, so you dont have to configure your socket path
anywhere.
• The kill command kills single windows by default now. To kill a whole
application, use 'kill client'.
• IPC: Commands can now have custom replies. When the parser encounters an
error, a proper error reply is sent.
• There is now an 'exec_always' configuration directive which works like
'exec' but will also be run when restarting.
┌────────────────────────────┐
│ Future features │
└────────────────────────────┘
Our plans were big but our time and manpower is limited. Therefore, the
following features did not make it into this release. However, the foundation
is now in place and implementing them is possible, so stay tuned!
• Saving/Restoring specific parts of your layout
• Session saving
• Sticky windows
┌────────────────────────────┐
│ Thanks! │
└────────────────────────────┘
Thanks for testing, bugfixes, discussions and everything I forgot go out to:
aniou, artoj, badboy, cloud, cradle, David Coppa, dbp, dothebart, eeemsi,
eelvex, f8l, fernando, jan, jimdigriz, jon, julien, kacper, ktosiek,
lexszero, litemotiv, lourens, madroach, marcus, merovius, mike, mirko, mseed,
mxf, phnom, quaec, rogutes, sardemff7, smartass, thepub, tiago, tucos,
woddf2, xpt, ys
-- Michael Stapelberg, 2011-07-31

View File

@ -1,145 +0,0 @@
┌─────────────────────────────┐
│ Release notes for i3 v4.0.1 │
└─────────────────────────────┘
This is the second release of the new major version of i3, v4.0.1. It has been
a long time since v3.ε was released (over one year). A lot has been happening
since then, we made 736 commits compare that to the total number of 1664
commits for i3.
The reason for the high number of commits and long time for this release is the
big refactoring we have been doing. Instead of using several lists and a table
as data structures, we now use a single tree of containers. These containers
represent invisible entities like your X11 root window, your different monitors
and workspaces, but also visible entities like actual windows.
Using a tree has made a lot of things cleaner and easier in the code *and* in
the user interface. Admittedly though, you will probably need a day or two to
get used to a few more advanced movement commands if you are used to v3.ε right
now.
┌────────────────────────────┐
│ New features in v4.0.1 │
└────────────────────────────┘
• Fix the build process of i3bar
• Fix the build process on Mac OS X
 i3-config-wizard: also start i3bar in the keycode config template
• userguide: Remove the obsolete bar.* colors
• userguide: Use i3bar instead of dzen2 in the 'exec' example
┌────────────────────────────┐
│ New features in v4.0 │
└────────────────────────────┘
• In addition to the proper flex/bison based parser for the config file
introduced in 3.δ, we now also have a flex/bison parser for commands. What
this means is that we can have more human-readable, beautiful command names
instead of cryptic commands like 'f' for fullscreen or 'mh' for move left.
In fact, the commands for the aforementioned functions *are* 'fullscreen'
and 'move left'!
• You can now chain commands using ';' (a semicolon). One example for that is
'workspace 3 ; exec /usr/bin/urxvt' to switch to a new workspace and open a
terminal.
• You can specify which windows should be affected by your command by using
different criteria. A good example is '[class="Firefox"] kill' to get rid
of all Firefox windows.
• As the configuration file needs new commands (and a few options are
obsolete), you need to change it. To make this process a little bit easier
for you, this release comes with the script i3-migrate-config-to-v4. Just
run it on your current config file and it will spit out a v4 config file to
stdout. To make things even better, i3 automatically detects v3 config files
and calls that script, so you never end up with a non-working config :).
• Similarly to the criteria when using commands, we now have a 'for_window'
configuration directive, which lets you automatically apply certain commands
to certain windows. Use it to set border styles per window, for example with
'for_window [class="XTerm"] border 1pixel'.
• Since dock clients (like dzen2) are now part of the layout tree (as opposed
to a custom data structure as before), it was easy to implement top and
bottom dock areas. Programs which properly specify the dock hint get placed
on the edge of the screen they request. i3bar has the -dtop and -dbottom
parameters, for example.
• The internal workspace bar is obsolete. Use i3bar instead.
• Resizing now works between all windows!
• Fullscreen now works for everything!
• Floating now works for everything!
• Your layout is now preserved when doing an inplace restart.
• When you have an error in your config file, a new program called i3-nagbar
will tell you so. It offers you two buttons: One to view the error in your
$PAGER and one to edit your config in your $EDITOR.
• The default config used key symbols (like 'bind Mod1+f fullscreen') instead
of key codes. If you use a non-qwerty layout, the program i3-config-wizard
can create a key symbol based config file based on your current layout. You
can also chose between Windows (Mod4) and Alt (Mod1) as your default
modifier. i3-config-wizard will automatically be started as long as you
dont have a configuration file for i3.
• Custom X cursor themes are now supported.
• The RandR backend now respects the primary output.
• A wrong 'font' configuration in your config file will no longer make i3
exit. Instead, it will fall back to a different font and tell you about the
error in its log.
• The default split direction (whether a new window gets placed right next to
the current one or below the current one) is now automatically set to
horizontal if you have a monitor that is wider than high or vertical if you
a monitor which is higher than wide. This works great with rotated monitors.
• Sockets and temporary files are now placed in XDG_RUNTIME_DIR, if set (this
is used on systemd based systems).
• Tools like i3bar, i3-msg etc. use the I3_SOCKET_PATH property which is set
to the X11 root window, so you dont have to configure your socket path
anywhere.
• The kill command kills single windows by default now. To kill a whole
application, use 'kill client'.
• IPC: Commands can now have custom replies. When the parser encounters an
error, a proper error reply is sent.
• There is now an 'exec_always' configuration directive which works like
'exec' but will also be run when restarting.
┌────────────────────────────┐
│ Future features │
└────────────────────────────┘
Our plans were big but our time and manpower is limited. Therefore, the
following features did not make it into this release. However, the foundation
is now in place and implementing them is possible, so stay tuned!
• Saving/Restoring specific parts of your layout
• Session saving
• Sticky windows
┌────────────────────────────┐
│ Thanks! │
└────────────────────────────┘
Thanks for testing, bugfixes, discussions and everything I forgot go out to:
aniou, artoj, badboy, cloud, cradle, David Coppa, dbp, dothebart, eeemsi,
eelvex, f8l, fernando, jan, jimdigriz, jon, julien, kacper, ktosiek,
lexszero, litemotiv, lourens, madroach, marcus, merovius, mike, mirko, mseed,
mxf, phnom, quaec, rogutes, sardemff7, smartass, thepub, tiago, tucos,
woddf2, xpt, ys
-- Michael Stapelberg, 2011-08-01

View File

@ -1,82 +0,0 @@
┌─────────────────────────────┐
│ Release notes for i3 v4.0.2 │
└─────────────────────────────┘
This is the third release of the new major version of i3, v4.0.2. It is a
bugfix release and considered stable. A lot of bugs and suggestions have been
reported since the release of v4.0.1. This release fixes 44 bugs and includes a
few other minor improvements.
┌────────────────────────────┐
│ Changes in v4.0.2 │
└────────────────────────────┘
• i3-config-wizard: handle mouse button clicks on <win> and <alt> texts
• i3-config-wizard: check the modifier mapping to decide whether to use Mod1
or Mod4
• migrate-config: use \s, be a bit more whitespace tolerant
• userguide: s/mod+h/mod+s for stacking
• userguide: provide the default colors in the colors example
• userguide: document force_focus_wrapping directive
• userguide: properly document the resize command
• userguide: properly document command chaining and criteria
• Bugfix: Correctly bind on multiple keycodes if a symbol has more than one
• Bugfix: Allow multiple criteria in 'for_window'
• Bugfix: Ensure a minimum size when using the 'resize' command
• Bugfix: Start on the first named workspace, not always on '1'
• Bugfix: Fix resize command with direction != up for floating windows
• Bugfix: Correctly set the _NET_CLIENT_LIST_STACKING hint (chromium tabbar)
• Bugfix: 'workspace <next|prev>' now takes all outputs into account
• Bugfix: i3-wsbar: make workspace names clickable again
• Bugfix: i3-wsbar: correctly handle EOF on stdin
• Bugfix: i3-wsbar: display a separator between workspaces of each output
• Bugfix: Correctly handle the 'instance' criterion (WM_CLASS)
• Bugfix: Use correct format string in load_layout (fixes crash in restart)
• Bugfix: Fix border rendering (border lines were "cutting" through)
• Bugfix: Raise floating windows immediately when dragging/resizing
• Bugfix: Make focus switching work accross outputs again
• Bugfix: migration-script: handle resize top/bottom correctly
• Bugfix: Fix focus issue when moving containers to workspaces
• Bugfix: Warp cursor when changing outputs again
• Bugfix: i3bar: fix switching to workspaces with extremely long names
• Bugfix: i3bar: fix switching to workspaces "next" and "prev"
• Bugfix: i3bar: Correctly allocate pixmap for statuslines which are longer
than the screen
• Bugfix: i3bar: set statusline = NULL on EOF / SIGCHLD
• Bugfix: Correctly initialize the verbose flag
• Bugfix: Dont start with workspace 'next' when the command 'workspace next'
is bound in the config file
• Bugfix: Set focus to where the mouse pointer is when starting
• Bugfix: Dont change focus when assigned windows start on invisible
workspaces
• Bugfix: Dont use absolute paths for exec in the config file
• Bugfix: Fix crash when using 'focus mode_toggle' on an empty workspace
• Bugfix: Make the 'resize' command work inside tabbed/stacked cons
• Bugfix: Correctly place floating windows on their appropriate output
• Bugfix: Fix coordinates when moving a floating window to a different output
• Bugfix: Correctly keep focus when moving non-leaf windows
• Bugfix: Accept '\t' in the set command
• Bugfix: Only consider tiling windows when attaching tiling windows to a
workspace
• Bugfix: Correctly render containers when a split container is focused
• Bugfix: Correctly recognize duplicate workspace assignments
• Bugfix: Re-enable X11 Eventmask •after• pushing all the X11 changes
• Bugfix: Fix focus stealing with assignments of floating windows
• Bugfix: Re-implement reconfiguring height of dock windows
• Bugfix: IPC: return name_json if available
• Bugfix: Make 'floating enable' check for dock windows
┌────────────────────────────┐
│ Thanks! │
└────────────────────────────┘
Thanks go out to the following contributors / reporters:
andi, Atsutane, BeF, ccount, cls, edelkind, eeemsi, f8l, ioflag, Jan, kraM,
marforio, Merovius, Moredread, mseed, Niklas, nutron, pnutzh4x0r, rogutes,
Sander, sbedivere, sur5r, thomasba, tilman, Tim, ubitux
-- Michael Stapelberg, 2011-08-28

View File

@ -1,100 +0,0 @@
┌────────────────────────────┐
│ Release notes for i3 v4.1 │
└────────────────────────────┘
This is the second release of the new major version of i3, v4.1. It brings some
new (and long-awaited) features, the most prominent being tray support in i3bar
(for NetworkManager, Skype, etc.).
The assign syntax has changed to support criteria now. Also, criteria support
regular expressions (using PCRE) now. Check the userguide for the new syntax.
i3-nagbar will automatically display a warning when you use the old syntax.
i3 now supports startup notifications, meaning that during an application
starts up, the mouse cursor will change to 'watch' on the root window. Also,
the application window will appear on the workspace on which it was launched
(not on the currently focused workspace). Some applications dont support
startup notifications. If the cursor change bothers you, turn it off by using
the --no-startup-id flag (see the userguide).
This release has been in use by many users and is considered stable. Please
upgrade.
┌────────────────────────────┐
│ New features │
└────────────────────────────┘
• Switch to dpkg-source 3.0 (quilt) and compat level 7
• Implement system tray support in i3bar (for NetworkManager, Skype, …)
• i3bar is now configurable in the i3 configfile
• Implement support for PCRE regular expressions in criteria
• Implement a new assign syntax which uses criteria
• Sort named workspaces whose name starts with a number accordingly
• Warn on duplicate bindings for the same key
• Restrict 'resize' command to left/right for horizontal containers, up/down
for vertical containers
• Implement support for startup notifications (cursor will change to 'watch',
started applications show up on the workspace they have been launched on)
• Implement the GET_MARKS IPC request to get all marks
• Implement the new_float config option (border style for floating windows)
• Implement passing IPC sockets to i3 (systemd-style socket activation)
• Implement the 'move output' command to move containers to a specific output
• Implement focus switching for floating windows
• Implement the window_role criterion (for matching multi-window apps)
• Implement a force_xinerama configuration directive
• Implement the --get-socketpath, useful for scripts using the IPC interface
• Implement the 'move workspace next' and 'move workspace prev' commands
• Implement the 'workspace back_and_forth' command and related configuration
option
• Implement the move command for floating windows
• i3 will now handle arbitrary text arguments by sending them as an IPC
command, like i3-msg: 'i3 reload' or 'i3 move workspace 3'
• Introduce the i3-sensible-{pager,editor,terminal} scripts to execute
$PAGER, $EDITOR or an available terminal emulator
• i3-input: implement -F (format) option
┌────────────────────────────┐
│ Bugfixes │
└────────────────────────────┘
• Bugfix: Preserve marks when restarting
• Bugfix: Correctly free old assignments when reloading
• Bugfix: Fix flickering when moving floating windows between monitors
• Bugfix: Correctly handle ConfigureRequests for floating windows in a
multi-monitor environment.
• Bugfix: Fix size of floating windows with X11 borders
• Bugfix: Always adjust floating window position when moving to another
output
• Bugfix: Avoid out-of-bounds coordinates when moving floating windows
• Bugfix: Dont steal focus when a window gets destroyed
• Bugfix: Correctly split key/value when parsing variables
• Bugfix: Correctly revert focus to other floating windows when closing a
floating window
• Bugfix: Dont leak the error logfile file descriptor
• Bugfix: Dont steal focus when a window opens on an invisible workspace due
to assignments
• Bugfix: Fix handling of Mode_switch in i3-input
• Bugfix: Close invisible workspaces when they become empty
• Bugfix: Dont invoke interactive resizing when clicking on the decoration
of a split container with more than one child (switch focus instead)
• Bugfix: Make named workspace assignments work again
• Bugfix: RandR: Correctly keep focus on the focused workspace when an output
disappears
• Bugfix: Insert container at the correct position on workspace level when
workspace_layout == default
┌────────────────────────────┐
│ Thanks! │
└────────────────────────────┘
Thanks for testing, bugfixes, discussions and everything I forgot go out to:
aksr, alexanderb, atsutane, bacardi55, bjonnh, brian, cls, don, donald,
eeemsi, f8l, fernandotcl, isolnchip, julien, motif, mw, mxf, phnom, pl,
pnutzh4x0r, raphael, sardemff7, stfn, thomasba, xeen
-- Michael Stapelberg, 2011-11-11

View File

@ -1,54 +0,0 @@
┌──────────────────────────────┐
│ Release notes for i3 v4.1.1 │
└──────────────────────────────┘
This is the first minor release of i3 v4.1. It is a bugfix release and
considered stable. All users of i3 v4.1 are strongly encouraged to upgrade.
Happy holidays and enjoy i3 :).
i3 developers will be present at 28C3 in Berlin and FOSDEM 2012 in Brussels.
Please get in touch and have a nice chat with us :).
┌────────────────────────────┐
│ Changes in v4.1.1 │
└────────────────────────────┘
• Create a secure temp path instead of a predictable one
• ipc: set CLOEXEC on client file descriptors
• Fix prototype in include/xcursor.h
• Bugfix: Skip dock clients when handling FocusIn events
• Bugfix: Fix fullscreen with floating windows
• Bugfix: Fix startup when RandR is not present
• Bugfix: Retain window position and size when changing floating border
• Bugfix: Disallow focusing dock clients via criteria
• Bugfix: Dont create a workspace named 'back_and_forth' on startup
• Bugfix: Fix wrong focus in complex tabbed/stacked layouts
• Bugfix: Fix resizing for (e.g.) v-split containers in h-split containers
• Bugfix: Fix 'resize' command in nested containers
• Bugfix: Dont set the _NET_WM_WORKAREA hint at all
• Bugfix: Skip leading whitespace in variable assignments
• Bugfix: Make resizing of tiling windows with floating_modifier use absolute
coordinates
• Bugfix: Make resizing work when pressing floating_modifier + right mouse
button on window decorations
• Bugfix: Fix setting the same mark repeatedly on different windows
• Bugfix: Disallow focusing other windows when in fullscreen mode
• Bugfix: Ignore ConfigureRequests with out-of-bound coordinates
• Bugfix: Correctly check boundaries and reassign floating windows when
moving
• Bugfix: Dont close workspace when there are still floating windows on it
┌────────────────────────────┐
│ Thanks! │
└────────────────────────────┘
Thanks for testing, bugfixes, discussions and everything I forgot go out to:
aksr, ben, biiter, binzter, cg, cradle, f8l, gregkh, Han, Miguel, mseed,
noxxun, Phlogistique
-- Michael Stapelberg, 2011-12-24

View File

@ -1,37 +0,0 @@
┌──────────────────────────────┐
│ Release notes for i3 v4.1.2 │
└──────────────────────────────┘
This is the second minor release of i3 v4.1. It is a bugfix release and
considered stable. All users of i3 v4.1.1 are strongly encouraged to upgrade.
i3 developers will be present at FOSDEM in Brussels.
Please get in touch and have a nice chat with us :).
┌────────────────────────────┐
│ Changes in v4.1.2 │
└────────────────────────────┘
• Bugfix: Dont lose focus on fullscreen windows when another window gets
moved to that workspace
• Bugfix: Open new windows in the correct place when assignments match
• Bugfix: Fix assignments of floating windows to (yet) unused workspaces
• Bugfix: Either use SetInputFocus *or* send WM_TAKE_FOCUS, not both
• Bugfix: Respect WM_HINTS.input for WM_TAKE_FOCUS clients
• Bugfix: Setup the _NET_SUPPORTING_WM_CHECK atom in a standards-compliant way
• Bugfix: Only ignore EnterNotify events after UnmapNotifies from managed windows
• Bugfix: Force a new sequence number after UnmapNotify
• Bugfix: Position floating windows exactly where their geometry specified
• Bugfix: Fix coordinates when the rect of an output changes
┌────────────────────────────┐
│ Thanks! │
└────────────────────────────┘
Thanks for testing, bugfixes, discussions and everything I forgot go out to:
B-Con, David Coppa, Don, Paul, rami, zeus
-- Michael Stapelberg, 2012-01-27