]>
git.sur5r.net Git - i3/i3/log
Michael Stapelberg [Tue, 29 Sep 2009 09:32:57 +0000 (11:32 +0200)]
Bugfix: Fix parsing symbols which contain numbers, like F1 or 1 for bindsym (Thanks Rasi)
Michael Stapelberg [Mon, 28 Sep 2009 23:07:51 +0000 (01:07 +0200)]
Bugfix: partly revert
f3880928 , client->workspace was not updated (Thanks msi)
Michael Stapelberg [Mon, 28 Sep 2009 22:54:27 +0000 (00:54 +0200)]
Fix syntax for resize command
Michael Stapelberg [Mon, 28 Sep 2009 16:02:11 +0000 (18:02 +0200)]
Bugfix: Create new workspace when there are no free existing ones to assign (Thanks msi)
As the workspaces are now created dynamically, we cannot rely on
the workspaces to be there when we need them without creating them.
On the other hand, this eliminates the case that there are no workspaces
to assign to a new screen, because now we can just create one.
Michael Stapelberg [Sun, 27 Sep 2009 21:08:27 +0000 (23:08 +0200)]
Implement options to change the default mode of containers
The following new directives have been implemented for the configuration
file:
new_container <default|stacking|tabbed>
new_container stack-limit <cols|rows> <value>
Note that they require using the new lexer/parser, which you can
do by passing -l to i3 when starting.
Michael Stapelberg [Sun, 27 Sep 2009 21:05:07 +0000 (23:05 +0200)]
Bugfix: parser: limit of 10 workspaces is gone
Michael Stapelberg [Sun, 27 Sep 2009 21:04:41 +0000 (23:04 +0200)]
Remove debug message
Michael Stapelberg [Sun, 27 Sep 2009 18:44:24 +0000 (20:44 +0200)]
Handle ipc_socket like ipc-socket
We should use underscores to be consistent
Michael Stapelberg [Sun, 27 Sep 2009 16:45:39 +0000 (18:45 +0200)]
Implement modes. Modes allow you to use different keybindings and switch between them.
For example, you can create a mode which will let you resize windows
with some easy to use keys. So, instead of binding a combination
of your homerow and modifiers to resize, like this:
bind Mod4+44 resize right +10
bind Mod4+45 resize right -10
...
You can instead define a new mode:
mode "resize" {
bind 44 resize right +10
bind 45 resize right -10
...
bind 36 mode default
}
bindsym Mod4+r mode resize
So, if you press Mod4+r now, your keybindings will be set to the ones
defined in your resize mode above. You can then use your homerow
(without any other modifier) to resize the current column/row and
press enter to go back to the default mode when you are done.
Note that using this option requires you to enable the new lexer/parser
by passing the -l flag to i3 when starting.
Michael Stapelberg [Sun, 27 Sep 2009 16:45:17 +0000 (18:45 +0200)]
Bugfix: Correctly re-grab keys when using the new lexer
Michael Stapelberg [Sun, 27 Sep 2009 15:02:13 +0000 (17:02 +0200)]
parser: Implement parsing mode sections
Wait for further commits before they are actually used.
Michael Stapelberg [Sun, 27 Sep 2009 15:02:05 +0000 (17:02 +0200)]
retab! cfgparse.y
Michael Stapelberg [Sun, 27 Sep 2009 15:01:06 +0000 (17:01 +0200)]
Add vim modeline to lexer/parser
Michael Stapelberg [Sun, 27 Sep 2009 15:00:37 +0000 (17:00 +0200)]
lexer: Allow whitespace before comments
Michael Stapelberg [Sun, 27 Sep 2009 13:20:47 +0000 (15:20 +0200)]
Add documentation for workspace_get()
Michael Stapelberg [Sun, 27 Sep 2009 12:00:54 +0000 (14:00 +0200)]
Make number of workspaces dynamic (no longer limited by 10)
Warning: This is not yet thoroughly tested, so be prepared to
encounter some segfaults. Please enable logging and coredumps,
so we can fix bugs quickly.
Michael Stapelberg [Sat, 26 Sep 2009 15:18:50 +0000 (17:18 +0200)]
Implement resize command
Syntax: resize <left|right|up|down> [+|-]<pixels>
Michael Stapelberg [Sat, 26 Sep 2009 11:47:48 +0000 (13:47 +0200)]
Obey the client’s border_width setting (Thanks shatter)
xterm by default sets a border_width of 2. This was not taken into
account when determining the size of the window by i3. Still, you
probably want to set this to 0 in your .Xresources as the pixels
are just lost.
Michael Stapelberg [Sat, 26 Sep 2009 11:30:32 +0000 (13:30 +0200)]
Fix some compilation warnings (Thanks mxf)
Michael Stapelberg [Sat, 26 Sep 2009 10:47:23 +0000 (12:47 +0200)]
Explicitly call flex and bison instead of lex and yacc (Thanks mxf)
Michael Stapelberg [Fri, 25 Sep 2009 16:08:37 +0000 (18:08 +0200)]
Bugfix: Fix resizing on second monitor (Thanks litemotiv)
We now use the virtual screen’s size/position instead of the X root
window for the grabwin (grabwin = the area in which the pointer may
move when resizing).
Michael Stapelberg [Tue, 22 Sep 2009 16:07:59 +0000 (18:07 +0200)]
Implement stack-limit for further defining how stack windows should look
Using this command, you can limit the amount of columns or rows for
a stacking container. This allows for better usage of screen estate
when using stacking containers with many clients.
Examples:
i3-msg "stack-limit cols 2"
You will now have a stack window which has two columns of windows.
Michael Stapelberg [Tue, 22 Sep 2009 16:07:48 +0000 (18:07 +0200)]
Remove old code
Michael Stapelberg [Tue, 22 Sep 2009 16:07:25 +0000 (18:07 +0200)]
Move handler for clicking to its own file
Michael Stapelberg [Sun, 20 Sep 2009 14:54:29 +0000 (16:54 +0200)]
Implement vim-like marks
Commands are 'mark' and 'goto'. Both can be used either directly,
like 'mark a' and 'goto a', or interactively (just 'mark'). For
interactive mode, i3-input must be installed and in your PATH.
Michael Stapelberg [Sun, 20 Sep 2009 14:01:41 +0000 (16:01 +0200)]
i3-input: implement prefixes for commands
Michael Stapelberg [Sun, 20 Sep 2009 13:44:14 +0000 (15:44 +0200)]
Add initial version of i3-input, an interactive tool for sending IPC commands
Michael Stapelberg [Sat, 19 Sep 2009 17:39:06 +0000 (19:39 +0200)]
lexer: Implement workspace <number> "<name>"
Michael Stapelberg [Sat, 19 Sep 2009 17:34:02 +0000 (19:34 +0200)]
lexer: return HEX instead of NUMBER when parsing colors
Michael Stapelberg [Sat, 19 Sep 2009 17:06:57 +0000 (19:06 +0200)]
Merge branch 'lex' into next
Michael Stapelberg [Sat, 19 Sep 2009 17:05:15 +0000 (19:05 +0200)]
Finish configfile parsing with lexer, implement -l to use the lexer.
Every user is encouraged to use -l to switch to the new lexer and
see if there are any problems.
Michael Stapelberg [Tue, 15 Sep 2009 14:58:10 +0000 (16:58 +0200)]
Make gcc happy about some possibly uninitialized variables (Thanks badboy)
This warning only showed up with CFLAGS=-O2.
The variables in question could never be uninitialized because
they were definitely set, have a look at the code. But anyways,
less warnings is always a good thing ;-).
Michael Stapelberg [Sun, 13 Sep 2009 20:13:28 +0000 (22:13 +0200)]
Implement most code to actually set the configuration settings
Michael Stapelberg [Sun, 13 Sep 2009 19:32:58 +0000 (21:32 +0200)]
Make variable expansion work with the new parsing
Michael Stapelberg [Sun, 13 Sep 2009 16:40:35 +0000 (18:40 +0200)]
Fix some parsing problems, retab!
Michael Stapelberg [Sun, 13 Sep 2009 12:54:27 +0000 (14:54 +0200)]
Implement option -p to test if the lexer/parser can parse your configfile (specify -c before)
Michael Stapelberg [Sun, 13 Sep 2009 12:16:39 +0000 (14:16 +0200)]
Add first version of lexer/parser to git, update Makefile
Michael Stapelberg [Sat, 12 Sep 2009 17:58:39 +0000 (19:58 +0200)]
Bugfix: Re-distribute free space when closing rows which were horizontally resized
Michael Stapelberg [Sat, 12 Sep 2009 17:51:50 +0000 (19:51 +0200)]
Implement right mouse button + dragging to resize tiling clients aswell
Michael Stapelberg [Sat, 12 Sep 2009 16:46:52 +0000 (18:46 +0200)]
Bugfix: Correctly warp pointer *after* rendering the layout
This is necessary because otherwise the window into which the
pointer is warped still is at its old position, so that the pointer
will effectively be warped onto the wrong screen in case of moving
a window to another screen.
Michael Stapelberg [Sat, 12 Sep 2009 16:34:03 +0000 (18:34 +0200)]
Compilation fix for the last commit
Michael Stapelberg [Sat, 12 Sep 2009 16:18:41 +0000 (18:18 +0200)]
Bugfix: Correctly initialize workspaces for floating clients, too
Michael Stapelberg [Sat, 12 Sep 2009 16:15:32 +0000 (18:15 +0200)]
Bugfix: Correctly initialize workspace when moving clients (Thanks tsdh)
Michael Stapelberg [Thu, 10 Sep 2009 19:05:29 +0000 (21:05 +0200)]
Bugfix: Fix clicking on stack windows in tabbed mode (Thanks Atsutane)
Michael Stapelberg [Thu, 10 Sep 2009 17:05:35 +0000 (19:05 +0200)]
Bump debian changelog to avoid conflicts
Michael Stapelberg [Thu, 10 Sep 2009 16:48:16 +0000 (18:48 +0200)]
Some little style adjustments for badboy’s patch
Jan-Erik Rediger [Wed, 12 Aug 2009 16:18:39 +0000 (18:18 +0200)]
Implement command to toggle border style
Use 'bt' to toggle from normal to 1-px, borderless and back.
Michael Stapelberg [Thu, 10 Sep 2009 14:29:23 +0000 (16:29 +0200)]
Fix compilation warning because of missing braces
Michael Stapelberg [Thu, 10 Sep 2009 14:27:50 +0000 (16:27 +0200)]
Bugfix: Don’t handle WM_HINTS if it is not set (Thanks mxf)
Michael Stapelberg [Mon, 7 Sep 2009 19:18:44 +0000 (21:18 +0200)]
Bugfix: Correctly handle unmap-notify events when resizing (Thanks Mirko)
Michael Stapelberg [Sun, 6 Sep 2009 20:40:11 +0000 (22:40 +0200)]
Implement the urgency hint for windows/workspaces
Thanks to Mikael for bringing it to my mind. This change introduces
two new color classes, client.urgent and bar.urgent. By default,
urgent clients are drawn in red (colors by Atsutane).
Michael Stapelberg [Sun, 6 Sep 2009 14:50:45 +0000 (16:50 +0200)]
Implement horizontal resize
Michael Stapelberg [Sat, 5 Sep 2009 17:17:59 +0000 (19:17 +0200)]
Bugfix: Initialize screens correctly when not using Xinerama (Thanks Mikael)
Michael Stapelberg [Sat, 5 Sep 2009 15:32:26 +0000 (17:32 +0200)]
Bugfix: Correctly grab the right mouse button for resizing windows (Thanks xeen)
Michael Stapelberg [Wed, 2 Sep 2009 20:25:50 +0000 (22:25 +0200)]
Merge patches for OpenBSD compatibility
Michael Stapelberg [Wed, 2 Sep 2009 20:14:09 +0000 (22:14 +0200)]
Implement long options (--version, --no-autostart, --help, --config)
Michael Stapelberg [Wed, 2 Sep 2009 19:59:31 +0000 (21:59 +0200)]
Bugfix: In stacked/tabbed mode we need the regular border color (Thanks badboy)
Michael Stapelberg [Mon, 31 Aug 2009 18:27:44 +0000 (20:27 +0200)]
Bugfix: If the pointer is outside of the screen when starting, fall back to the first screen (Thanks mxf)
Michael Stapelberg [Sat, 29 Aug 2009 09:06:34 +0000 (11:06 +0200)]
Bugfix: Don’t display unnamed workspaces with %d: (Thanks Mirko)
Michael Stapelberg [Sat, 29 Aug 2009 09:03:14 +0000 (11:03 +0200)]
Bugfix: Draw black border instead of background-color around clients with {width,height}_increment (Thanks xeen)
Michael Stapelberg [Thu, 27 Aug 2009 19:33:19 +0000 (21:33 +0200)]
Bugfix: Don’t crash if the numlock symbol cannot be found (Thanks xeen)
Michael Stapelberg [Tue, 25 Aug 2009 21:16:17 +0000 (23:16 +0200)]
Bugfix: Don’t call resize_client if the width/height increment properties did not change
This avoids an endless loop, preventing clients to go to fullscreen
Michael Stapelberg [Mon, 24 Aug 2009 10:27:35 +0000 (12:27 +0200)]
debian: Install i3-msg manpage
Michael Stapelberg [Mon, 24 Aug 2009 10:24:01 +0000 (12:24 +0200)]
Update debian changelog
Michael Stapelberg [Mon, 24 Aug 2009 10:22:42 +0000 (12:22 +0200)]
Add manpage for i3-msg
Michael Stapelberg [Mon, 24 Aug 2009 10:17:14 +0000 (12:17 +0200)]
Fix FTBFS for GNU/kFreeBSD and possibly GNU/Hurd (Thanks Cyril)
Michael Stapelberg [Sun, 23 Aug 2009 19:49:38 +0000 (21:49 +0200)]
Bugfix: Correctly use base_width/base_height and size increment hints, correctly send fake configure notify events
Michael Stapelberg [Sun, 23 Aug 2009 18:30:17 +0000 (20:30 +0200)]
Don’t round up if the corrected height/width is the same as the old one
Michael Stapelberg [Sat, 22 Aug 2009 07:07:23 +0000 (09:07 +0200)]
Implement tabbing
Use command "T" to switch to tabbing
Michael Stapelberg [Sat, 22 Aug 2009 05:53:34 +0000 (07:53 +0200)]
More tests
Michael Stapelberg [Sat, 22 Aug 2009 05:49:28 +0000 (07:49 +0200)]
Implement resizing floating clients with Mod1 + right mouse button
Michael Stapelberg [Fri, 21 Aug 2009 14:06:12 +0000 (16:06 +0200)]
tests: Use hex color codes for background_color
Michael Stapelberg [Fri, 21 Aug 2009 13:01:20 +0000 (15:01 +0200)]
Implement tests in t/10-dock.t
Michael Stapelberg [Fri, 21 Aug 2009 10:32:54 +0000 (12:32 +0200)]
Use ArrayRefs instead of Rects where possible, add t/10-dock.t
Michael Stapelberg [Fri, 21 Aug 2009 10:19:04 +0000 (12:19 +0200)]
Bugfix: Map window when it got the fullscreen hint set
Michael Stapelberg [Fri, 21 Aug 2009 10:15:53 +0000 (12:15 +0200)]
Expand fullscreen test to setting the hint before mapping the window
Michael Stapelberg [Fri, 21 Aug 2009 09:45:59 +0000 (11:45 +0200)]
Merge branch 'next' into testcases
Conflicts:
docs/userguide
Michael Stapelberg [Wed, 19 Aug 2009 12:37:46 +0000 (14:37 +0200)]
Update make dist
Michael Stapelberg [Wed, 19 Aug 2009 12:37:34 +0000 (14:37 +0200)]
initialize last_keycode
Michael Stapelberg [Wed, 19 Aug 2009 12:32:51 +0000 (14:32 +0200)]
Update manpage
Michael Stapelberg [Wed, 19 Aug 2009 12:07:52 +0000 (14:07 +0200)]
Document new files in the hacking howto
Michael Stapelberg [Wed, 19 Aug 2009 12:00:49 +0000 (14:00 +0200)]
Add release notes for 3.γ
Michael Stapelberg [Wed, 19 Aug 2009 11:31:14 +0000 (13:31 +0200)]
userguide: use space for toggling tiling/floating
Michael Stapelberg [Wed, 19 Aug 2009 11:23:26 +0000 (13:23 +0200)]
userguide: s/j/l in examples
Michael Stapelberg [Wed, 19 Aug 2009 11:15:14 +0000 (13:15 +0200)]
Update examples to use bindsym instead of bind
Michael Stapelberg [Wed, 19 Aug 2009 11:14:16 +0000 (13:14 +0200)]
Update debian changelog
Michael Stapelberg [Wed, 19 Aug 2009 10:59:13 +0000 (12:59 +0200)]
Document commands and new configuration options in userguide
Michael Stapelberg [Wed, 19 Aug 2009 10:59:13 +0000 (12:59 +0200)]
Document commands and new configuration options in userguide
Michael Stapelberg [Wed, 19 Aug 2009 08:56:42 +0000 (10:56 +0200)]
Bugfix: Don’t crash when clients set an invalid leader hint
Michael Stapelberg [Tue, 11 Aug 2009 13:23:58 +0000 (15:23 +0200)]
More log cleanups
Michael Stapelberg [Tue, 11 Aug 2009 13:02:30 +0000 (15:02 +0200)]
Bugfix: Fix screen wrapping, cleanup some log messages
Before this fix, you could go upwards and select the screen which
was at the rightmost because it also was the one topmost (if all
screen’s top position is equal).
Michael Stapelberg [Tue, 11 Aug 2009 12:08:04 +0000 (14:08 +0200)]
Implement support for width_inc and height_inc of size hints
This fixes the problem where you saw old window contents when resizing
a window (due to opening new windows or similar), especially in terminals.
Michael Stapelberg [Tue, 11 Aug 2009 10:40:11 +0000 (12:40 +0200)]
Merge branch 'next' into testcases
Michael Stapelberg [Tue, 11 Aug 2009 10:38:52 +0000 (12:38 +0200)]
Bugfix: Don’t initialize screen twice when not using Xinerama (Thanks badboy)
Michael Stapelberg [Tue, 11 Aug 2009 10:16:10 +0000 (12:16 +0200)]
Set WM_STATE_WITHDRAWN when unmapping, unmap windows when destroying (Thanks xeen)
Seems like java apps need it. Also, you probably want to use XToolkit,
when you have to work with java apps:
export AWT_TOOLKIT=XToolkit
Michael Stapelberg [Sat, 8 Aug 2009 19:45:29 +0000 (21:45 +0200)]
Bugfix: Fix focused but inactive window color when using multiple monitors
Michael Stapelberg [Sat, 8 Aug 2009 19:31:42 +0000 (21:31 +0200)]
Reduce number of configuration requests and thus flickering
This reduces flickering when opening new windows and especially moving
existing windows in tiling mode. Especially noticable on multi-monitor
setups.
Michael Stapelberg [Sat, 8 Aug 2009 18:20:06 +0000 (20:20 +0200)]
Fix rendering of window decorations in stacking mode (there was a 1px-line too much)
Michael Stapelberg [Sat, 8 Aug 2009 17:51:51 +0000 (19:51 +0200)]
Implement assignments of workspaces to screens, big cleanup of workspace code
Please test this! Plug in screens, unplug them, use your video projector,
change resolutions, etc.
To use the assignments, use the following syntax:
workspace <number> [screen <screen>] [name]
Where screen can be one of:
<number> (It is not provided that these numbers stay constant, so use with care)
<x>x<y> (Coordinates where the screen starts, so 1280 will be fine to match the
screen right of the main screen if your main screen is 1280 pixels
width. However, 1281 will not match)
<x>
x<y>
Some examples follow:
workspace 1 screen 0
workspace 1 screen 1
workspace 1 screen 1280x0
workspace 2 screen 1280
workspace 3 screen x0
workspace 3 screen 1 www
workspace 4 screen 0 mail
Michael Stapelberg [Fri, 7 Aug 2009 13:48:13 +0000 (15:48 +0200)]
Bugfix: Don’t crash when the font is specified after the workspace names in configfile (Thanks xiaodong)