Michael Stapelberg
3e53ecf69e
retab! src/container.c
2009-12-22 23:43:05 +01:00
Michael Stapelberg
848d9c1b01
Make containers containing exactly one window behave like default containers
...
Starting from this commit, a borderless window will always be
borderless if it is the only window in a container. For example,
you can have Firefox borderless in a tabbed container and as soon
as the download manager or a viewer gets opened, the container
will be rendered like a normal tabbed container.
This solves the user-interface dilemma of borderless/1-px-border
windows inside stacked/tabbed containers, at least for this special
case. Thanks to Merovius for this suggestion.
2009-12-22 23:40:06 +01:00
Michael Stapelberg
75ac464c0d
makefile: rather than a dependency for each source file, generate loglevels.h by recursion
...
This little hack runs make recursively to generate include/loglevels.h
before running any other target but skip an explicit dependency on
loglevels.h in each rule. Therefore, you do not need to rebuild
every source file when compiling.
2009-12-22 12:14:09 +01:00
Michael Stapelberg
9df64a8d0a
Correctly exit when another window manager is already running
...
This is implemented by checking if setting the redirect mask returned
an error or not.
2009-12-22 11:29:24 +01:00
Michael Stapelberg
500127705e
debian: update changelog
2009-12-21 23:08:08 +01:00
Michael Stapelberg
e900a8d23d
xinerama: correctly put windows which are assigned to a specific screen on that screen when it becomes available (Thanks badboy)
2009-12-21 22:30:08 +01:00
Michael Stapelberg
0b5554c762
xinerama: change some log messages to errors
2009-12-21 20:41:02 +01:00
Michael Stapelberg
4b3ff1795c
Remove -e and -t from loglevels.h target to make it POSIX compliant (Thanks Mirko)
2009-12-20 23:43:49 +01:00
Michael Stapelberg
1776c12c0b
makefile: properly document dependencies on each target to fix parallel make (Thanks Atsutane)
2009-12-20 12:58:45 +01:00
Michael Stapelberg
e498b90e7a
makefile: clean temporary files
2009-12-19 22:42:24 +01:00
Michael Stapelberg
6ef0d1fa79
Touch each log message and classify it as DLOG (debug), ELOG (error) or LOG (verbose)
2009-12-19 22:40:23 +01:00
Michael Stapelberg
37d795c81d
Add new options -V for verbose mode and -d <loglevel> for debug log levels
2009-12-19 22:40:23 +01:00
Michael Stapelberg
4226cc61de
add log.c/log.h which contain all the log related macros and functions
2009-12-19 22:40:23 +01:00
Michael Stapelberg
5397e893b9
logging: new makefile target to generate loglevels at compile time
...
Using shell commands, a bitmask is generated for each file. Additionally,
a C header containing an array of loglevels and their files is created in
include/loglevels.h.
2009-12-19 22:40:23 +01:00
Michael Stapelberg
a61e34d277
Add x11-utils as dependency to have xmessage(1) for the welcome message
2009-12-16 22:59:25 +01:00
Michael Stapelberg
57e4972fd1
Add clarification about border color in userguide (Thanks xeen)
2009-12-15 19:11:01 +01:00
Michael Stapelberg
937048d47b
Distribute rest space between windows as long as possible. (Thanks msi)
...
When having 8 windows in a container which has 766 px available,
you ended up losing 0,75 px per window which would quickly sum up.
Now, the rest space (6 px in this example) is distributed in units
of one pixel to as many windows as possible.
2009-12-13 17:02:22 +01:00
Michael Stapelberg
f87b98e0a7
Take into account the window’s base_{width,height} when resizing (Thanks Mirko)
2009-12-12 22:27:57 +01:00
Michael Stapelberg
8d8804221b
Partly revert 4ba26659
, it was just wrong.
2009-12-12 21:42:56 +01:00
Michael Stapelberg
47e54241ce
Add new entry in debian/changelog to prevent apt from overwriting self-built packages
2009-12-12 21:34:53 +01:00
Michael Stapelberg
c6c0862e24
Bugfix: Correctly check for fullscreen windows when mapping new clients
...
CUR_CELL only works if you currently are in that container (not for
windows which are assigned to invisible workspaces, for example).
2009-12-12 21:31:41 +01:00
Michael Stapelberg
4afe65eea2
Bugfix: Correctly place new windows below fullscreen windows (Thanks Moredread)
...
This bug could happen if you have floating and tiling windows (for
example Firefox in tiling mode and its Open dialog in autmatically
floating mode) and you opened a new tiling window while in fullscreen.
i3 would then place the window below the floating windows, but
floating clients are above fullscreen windows. Thus, the client
would be placed above the fullscreen window.
2009-12-12 21:29:07 +01:00
Michael Stapelberg
ffe925f733
Bugfix: Fix assignments to not yet visible workspaces
...
This was broken by commit 5a1668db3
2009-12-12 18:43:30 +01:00
Michael Stapelberg
17082ef5b7
Bugfix: close file handle after parsing
2009-12-11 17:57:42 +01:00
Michael Stapelberg
e5c4fa6c1c
Include unistd.h for usleep()
2009-12-08 20:55:17 +01:00
Michael Stapelberg
ddf3119552
Bugfix: Don’t resize client after base_height changes if client is in fullscreen mode
2009-12-08 20:52:19 +01:00
Michael Stapelberg
befd7f6f22
Bugfix: Use more precise floating point arithmetic (Thanks helgiks)
...
This prevents errors in rounding leading to an unoccupied space of
-1 which in turn leads to infinity when calculating the new size
of a container after resizing.
2009-12-08 11:48:25 +01:00
Michael Stapelberg
99c7a14285
Correct typo
2009-12-07 19:06:57 +01:00
Michael Stapelberg
6abf70895d
Update and reformat the hacking howto
2009-12-07 16:58:46 +01:00
Michael Stapelberg
1a53cc067b
When no screens are found, don’t hog the CPU. Also, wait longer for screens (10 seconds).
...
Instead of just going on, i3 will exit cleanly now, putting an
appropriate message into the logfile.
2009-12-07 16:31:49 +01:00
Michael Stapelberg
13231e13ab
Add new chapters to userguide: multi-monitor and software environment
2009-12-07 10:25:12 +01:00
Michael Stapelberg
ec2e5e8364
Bugfix: Fix two problems in resizing floating windows with right mouse button (Thanks Mirko)
...
Minimum width/height was not consistent with the limit for grabbing
and resizing a window at its border.
If one of both was violated (width < min_width for example), none
of them were updated.
2009-11-26 22:17:38 +01:00
Michael Stapelberg
5a1668db36
Bugfix: Render containers after setting the client active (Thanks Mirko)
...
This lead to race conditions when the window did not change its title
after mapping and was displayed in a tabbed container.
2009-11-26 21:32:53 +01:00
Michael Stapelberg
abba7714ac
debian: update changelog
2009-11-23 21:58:32 +01:00
Michael Stapelberg
c308043269
debian: Add i3-wm.doc-base
2009-11-23 21:50:01 +01:00
Michael Stapelberg
c4d453c21a
debian: add missing files to docs/
2009-11-23 21:44:23 +01:00
Michael Stapelberg
36989b8b5d
debian: set priority only for the source package, binaries will inherit
2009-11-23 21:34:21 +01:00
Michael Stapelberg
5329ed0158
Bugfix: Resize client after updating base_height/base_width (Thanks Merovius)
...
This fixes the problem that urxvt/xterm "lost" a line of space before
being resized the first time.
2009-11-23 09:42:38 +01:00
Michael Stapelberg
d2a88f7089
Bugfix: Don’t ignore urgency flag when the client wants to clean it (Thanks Syntropy)
2009-11-23 08:35:40 +01:00
Michael Stapelberg
4ba26659fd
Bugfix: Fix stack-limit cols, handle stack-limit cols on tabbed containers (Thanks jace)
2009-11-22 22:48:08 +01:00
Michael Stapelberg
4ace0d2138
config: delete old parser, new lexer/parser is the default by now
2009-11-22 20:25:33 +01:00
Michael Stapelberg
52945486fd
Bugfix: Also fix horizontal resizing
...
The same problem as in the commit before this one was present. Additionally,
the dock_clients and internal bar were not taken into account everywhere.
2009-11-22 14:32:40 +01:00
Michael Stapelberg
2c8b041500
Bugfix: Correctly calculate width when resizing (Thanks Merovius)
2009-11-22 14:05:35 +01:00
Michael Stapelberg
245e29ef95
Expand testcase for urgency hint
2009-11-20 15:56:18 +01:00
Michael Stapelberg
29464dc791
Bugfix: Don’t set the urgency flag if the window is currently active
2009-11-20 15:55:54 +01:00
Michael Stapelberg
c0256edd2e
Bugfix: Accept underscores in bindsym (Thanks jace)
2009-11-20 15:33:38 +01:00
Michael Stapelberg
c5da7bd266
Bugfix: Fix resizing of floating windows in borderless/1-px-border mode (Thanks Grauwolf)
...
Calculations were wrong (they simply didn’t take into account that
there is more than one border style, the code was from before we
implemented that…). We cannot directly set child_rect to the coordinates
as resize_client takes rect and calculates the child_rect, so we need
the new lines of code for this bugfix in any case (rect needs to be
updated).
2009-11-18 22:53:17 +01:00
Michael Stapelberg
ff3809f388
Add testcase for resizing of floating windows
2009-11-18 22:52:34 +01:00
Michael Stapelberg
0610c028d6
Add testcase for the urgency hint
...
Needs latest X11::XCB from git
2009-11-18 20:39:53 +01:00
Michael Stapelberg
82c32616e1
Bugfix: Correctly clear the urgency hint if a window gets unmapped without clearing the hint
2009-11-18 20:20:54 +01:00