Michael Stapelberg
3bd724f08d
Bugfix: Track the user’s pointer over the root window and update current workspace (Thanks xeen)
...
When not having any windows on the first workspace, switching to the
second workspace using your mouse was not registered by i3.
2009-08-06 00:59:48 +02:00
Michael Stapelberg
3114d6821d
Add support for WM_CLIENT_LEADER, put floating windows mapping to (0x0) to center of leader/workspace
2009-08-05 00:39:55 +02:00
Michael Stapelberg
af3972aa9f
Bugfix: Recognize clicks as client clicks (opposed to border_clicks) when clients send them for their parent window
...
See comment, happened for example with xfontsel. You normally got
to see the resize bar (when having >1 column, of course).
2009-08-04 22:47:42 +02:00
Michael Stapelberg
4c373c2128
Fix clicking on workspaces in internal bar (with named workspaces) (Thanks bapt)
2009-08-04 22:27:01 +02:00
Michael Stapelberg
19abb63393
s/Mod1/floating_modifier (Thanks badboy)
2009-08-02 22:58:23 +02:00
Michael Stapelberg
91aeed0442
Resolve documentation FIXMEs, remove an unnecessary struct
2009-06-29 22:20:35 +02:00
Michael Stapelberg
0305c1dc0e
Bugfix: Use ->workspace instead of ->container
2009-06-28 01:58:00 +02:00
Michael Stapelberg
acf1eb0c92
Don’t allow floating clients to reconfigure themselves when in fullscreen (Thanks Volker)
2009-06-28 01:52:06 +02:00
Michael Stapelberg
28c4b045d6
Merge branch 'next' (3.β is stable now)
2009-06-26 13:27:06 +02:00
Michael Stapelberg
27a418f454
Bugfix: Correctly remove fullscreen floating clients when unmapping (Thanks Volker)
2009-06-26 04:15:21 +02:00
Michael Stapelberg
aa2f20ce26
Bugfix: Correctly handle floating windows when unmapping, fix focus bug when moving
2009-06-25 13:31:58 +02:00
Michael Stapelberg
62c8d58d82
Implement the configuration option floating_modifier and document it
2009-06-24 20:31:00 +02:00
Michael Stapelberg
675d28dd54
Bugfix: Check screen for NULL, free client memory correctly (Thanks dirkson)
2009-06-24 19:22:09 +02:00
Michael Stapelberg
61b1279f67
Bugfix: Don’t invalidate container pointer and access it when unmapping
2009-06-24 19:05:33 +02:00
Michael Stapelberg
cba36914a8
Implement selecting the next tiling/floating window (using "focus")
...
Also update documentation (manpage, userguide).
To make the code easier to read/write when checking if a client is
floating, introduce client_is_floating().
2009-06-21 16:14:15 +02:00
Michael Stapelberg
8140619d5b
Implement reconfiguration of floating clients
2009-06-21 13:29:48 +02:00
Michael Stapelberg
83d3146b65
Bugfix: Correctly raise the currently focused client when going into stack mode
2009-06-20 00:31:57 +02:00
Michael Stapelberg
589a73c8ea
Bugfix: Correctly check for floating mode in the buttonpress handler (Thanks Mirko)
2009-06-19 22:48:18 +02:00
Michael Stapelberg
00c6bdeb0b
Implement changing focus via keyboard between floating clients, fix several floating bugs
2009-06-14 01:04:59 +02:00
Michael Stapelberg
13002dc04e
Bugfix: Actually reconfigure unmapped windows when they request it
...
Before, we only sent a fake message. While this was sufficient for the
client side most of the time, it didn’t allow us to open floating
windows with the correct size.
2009-06-12 23:47:04 +02:00
Michael Stapelberg
052190ad05
Handle transient hint and window class dialog to mark clients as floating
2009-06-12 22:59:23 +02:00
Michael Stapelberg
d70ea03356
Remove some dead code, add default paths to switch() to make static analyzers happy
...
Check was done with scan-build from the LLVM suite. The remaining reports are false
positives and have been reported to llvm:
http://llvm.org/bugs/show_bug.cgi?id=4358
http://llvm.org/bugs/show_bug.cgi?id=4359
2009-06-10 19:59:36 +02:00
Michael Stapelberg
2f334c3f59
Bugfix: Don’t set focus when unmapping clients if the workspace is not active (Thanks Mirko)
...
This fixes ticket #53 because current workspace was set to the
workspace which was deleted.
2009-06-07 19:09:39 +02:00
Michael Stapelberg
fb63c2ed58
Implement moving floating clients using Mod1+Left mouse button
2009-06-03 13:54:13 +02:00
Michael Stapelberg
036728c4d7
Use the size when mapping the window as size for floating (correct size for tool windows)
2009-06-02 14:24:37 +02:00
Michael Stapelberg
2a67630aa6
Optimization: Get the colorpixels when loading configuration, make use of the new config struct
...
Instead of building arrays of colorpixels we can simply use a pointer
to a struct Colortriple. Furthermore, by getting the colorpixels when
loading the configuration, we save a lot of function calls in the
main code.
2009-06-01 15:14:45 +02:00
Michael Stapelberg
517c47ca95
Don’t check twice for client.focused, change all places were colorcodes are used
2009-05-31 17:18:49 +02:00
Michael Stapelberg
0cb5d7448d
Implement clients going automatically into floating
2009-05-31 00:31:18 +02:00
Michael Stapelberg
b1eb93326f
Bugfix: Correctly cleanup stack_windows when setting clients to floating
...
This fixes ticket #44
2009-05-30 11:35:32 +02:00
Michael Stapelberg
d4fb34abdd
Bugfix: Don’t ignore enter_notify events for clients on different screens (Thanks Mirko)
...
This fixes ticket #41 .
2009-05-27 18:19:14 +02:00
Michael Stapelberg
b58e2fa8ed
Move toggle_fullscreen to client.c
2009-05-26 16:49:57 +02:00
Michael Stapelberg
ac5c2fcf19
Bugfix: Fix fullscreen for floating clients, fix window name updates for floating clients
2009-05-26 16:46:50 +02:00
Michael Stapelberg
5b8e2ecb18
Implement floating (please test and find bugs)
...
Details which are missing: A command to hide/show all floating clients,
moving/resizing clients with your mouse holding Mod1 (click anywhere
in the client, not just on its borders), resize/move by keyboard, select
next/previous client by keyboard
2009-05-23 16:34:03 +02:00
Michael Stapelberg
7fde55578d
Bugfix: Correctly handle mode_switch state bit, more debugging output for states
...
We abuse (1 << 8) as mode_switch bit, which is in the range of the
filtered state bits (see previous commit). Therefore, we need to
filter first and then check for mode_switch.
Furthermore, we used 0x2 before, which was just wrong. So, use our
bitmask, not the normal one (0x2).
2009-05-19 15:24:17 +02:00
Michael Stapelberg
d98c514f82
Bugfix: Correctly handle mode_switch state bit, more debugging output for states
...
We abuse (1 << 8) as mode_switch bit, which is in the range of the
filtered state bits (see previous commit). Therefore, we need to
filter first and then check for mode_switch.
Furthermore, we used 0x2 before, which was just wrong. So, use our
bitmask, not the normal one (0x2).
2009-05-19 15:22:50 +02:00
Michael Stapelberg
5038b3c592
Bugfix: keypress: Only use the lower 8 bits of the mask so that mouse buttons are filtered out (Thanks Mirko)
...
Sometimes, when the mouse button gets stuck, state contains the bit for
BUTTON_MASK_1 (or other buttons). We filter them out to continue processing
keys correctly.
2009-05-19 13:52:23 +02:00
Michael Stapelberg
77ab4c0b10
Bugfix: keypress: Only use the lower 8 bits of the mask so that mouse buttons are filtered out (Thanks Mirko)
...
Sometimes, when the mouse button gets stuck, state contains the bit for
BUTTON_MASK_1 (or other buttons). We filter them out to continue processing
keys correctly.
2009-05-19 13:51:03 +02:00
Michael Stapelberg
1089fb7311
Bugfix: Don’t crash when above dock windows (Thanks Mirko)
2009-05-17 10:54:12 +02:00
Michael Stapelberg
b35599004a
Move the manage_*-functions into their own file as they got quite large
2009-05-16 18:25:04 +02:00
Michael Stapelberg
d5d44e66a2
Bugfix: Re-assign dock windows to different workspaces when a workspace is deleted
...
Killing a dock client and having destroyed workspace 1 before (or the workspace
on which the dock client was started when it was not auto-started) crashed i3 before
this bugfix.
2009-05-16 18:12:35 +02:00
Michael Stapelberg
e79cca8f72
Implement putting clients onto specific workspaces ("assign" in the configfile)
...
This closes ticket #39
2009-05-16 17:32:36 +02:00
Michael Stapelberg
1256730b4b
Bugfix: Fix display/resizing of colspanned containers
2009-05-09 18:43:50 +02:00
Michael Stapelberg
3ccc0d7794
Bugfix: Fix display/resizing of colspanned containers
2009-05-09 18:43:02 +02:00
Michael Stapelberg
5b4f10eaca
Bugfix: Store width_factor/height_factor per workspace, not per container
...
This is a relatively big change, however all cases should be handled by
now.
Because the function to do graphical resizing got rather large, I’ve created
a new file src/resize.c for it.
This fixes ticket #35 .
2009-05-09 17:50:51 +02:00
Michael Stapelberg
8e1990f058
Bugfix: Store width_factor/height_factor per workspace, not per container
...
This is a relatively big change, however all cases should be handled by
now.
Because the function to do graphical resizing got rather large, I’ve created
a new file src/resize.c for it.
This fixes ticket #35 .
2009-05-09 17:48:35 +02:00
Michael Stapelberg
8c6c4270a9
Bugfix: Don’t raise clients in fullscreen mode, send correct position to clients in fullscreen mode (Thanks ch3ka, mist)
...
This fixes #38 which only happened for clients which actively tried
to reconfigure themselves.
2009-05-08 23:23:47 +02:00
Michael Stapelberg
89076ea7cf
Bugfix: Don’t raise clients in fullscreen mode, send correct position to clients in fullscreen mode (Thanks ch3ka, mist)
...
This fixes #38 which only happened for clients which actively tried
to reconfigure themselves.
2009-05-08 23:22:40 +02:00
Michael Stapelberg
4b77d93c2e
Bugfix: Resize all containers in the column instead of only the active one (Thanks Ned)
...
This fixes ticket #33 .
2009-05-07 13:51:34 +02:00
Michael Stapelberg
a2ac022208
Bugfix: Resize all containers in the column instead of only the active one (Thanks Ned)
...
This fixes ticket #33 .
2009-05-07 13:46:34 +02:00
Michael Stapelberg
3a2b546c9e
Implement a command to travel the focusstack. This can be used like a jumpback.
...
However, it is a bit more flexible obviously. You can specify the
offset of the window you want to go to, to implement workflows like
the following:
* Jump to mutt
* Jump to irssi
* Jump back ("focus 2" would be the command)
2009-05-05 17:25:56 +02:00