Commit Graph

1091 Commits

Author SHA1 Message Date
Michael Stapelberg 7c130fb540 Obey the XDG Base Directory Specification for config file paths
This means you can now put your i3 config into
$XDG_CONFIG_HOME/i3/config, which probably is ~/.config/i3/config
if not set otherwise.
2010-01-03 16:58:41 +01:00
Michael Stapelberg 505eaaf349 Bugfix: Containers could lose their snap state (Thanks Atsutane)
When being on a different workspace than the one where the snapped
container is, the function to cleanup cols/rows would clean up too
much.
2010-01-01 22:43:02 +01:00
Michael Stapelberg ba2dd3a3eb Bugfix: Containers could lose their snap state (Thanks Atsutane)
When being on a different workspace than the one where the snapped
container is, the function to cleanup cols/rows would clean up too
much.
2010-01-01 22:40:50 +01:00
Michael Stapelberg 8adce413f5 Remove superfluous #include <assert.h> (Thanks badboy) 2010-01-01 17:30:44 +01:00
Michael Stapelberg 092f3139d8 Remove superfluous #include <assert.h> (Thanks badboy) 2010-01-01 17:30:27 +01:00
Michael Stapelberg 4c87170494 We don’t have DLOG yet in master branch (Thanks ccount) 2010-01-01 17:29:11 +01:00
Michael Stapelberg 9dce081837 Bugfix: Don’t put dock clients into floating mode (Thanks xeen) 2010-01-01 16:20:16 +01:00
Michael Stapelberg 8a9b57c874 Extend testcase for dock clients with wm_transient_for hint 2010-01-01 16:19:55 +01:00
Michael Stapelberg 65cae2cad1 Bugfix: Don’t put dock clients into floating mode (Thanks xeen) 2010-01-01 16:19:42 +01:00
Michael Stapelberg 75aac5bc02 ewmh: implement support for _NET_WORKAREA (rdesktop can use that)
Please note that rdesktop’s -g workarea option will not work on
64-bit systems at the moment because of a bug in rdesktop (see the
rdesktop-devel mailing list).
2009-12-31 17:48:41 +01:00
Michael Stapelberg 6de212f7ee Fix bindings using the cursor keys in default config 2009-12-29 17:48:37 +01:00
Michael Stapelberg c50bde458b Fix bindings using the cursor keys in default config 2009-12-29 17:48:16 +01:00
Michael Stapelberg e7e9e8e49d ewmh: correctly set _NET_ACTIVE_WINDOW 2009-12-25 15:19:39 +01:00
Michael Stapelberg 0641e6a1a3 ewmh: correctly set _NET_CURRENT_DESKTOP to the number of the active workspace 2009-12-25 15:05:17 +01:00
Michael Stapelberg ba82a3e63b Bugfix: Fix NULL pointer dereference in workspaces which have preferred screens but were not used yet (Thanks badboy) 2009-12-23 00:39:03 +01:00
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 8bee7c8510 debian: merge changelog 2009-12-21 23:06:27 +01:00
Michael Stapelberg 182433534a Add bugfix release to website 2009-12-21 22:55:02 +01:00
Michael Stapelberg cfd73acf17 debian: Add i3-wm.doc-base 2009-12-21 22:51:11 +01:00
Michael Stapelberg 22e499b267 debian: add missing files to docs/ 2009-12-21 22:47:50 +01:00
Michael Stapelberg 732ba08f30 Add release notes for 3.δ-bf1 2009-12-21 22:42:59 +01:00
Michael Stapelberg 6e90d5adcf Add x11-utils as dependency to have xmessage(1) for the welcome message 2009-12-21 22:38:34 +01:00
Michael Stapelberg 6cdf607424 Add debian changelog for the bugfix release 2009-12-21 22:37:29 +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 5287dce9cc Partly revert 4ba26659, it was just wrong. 2009-12-12 21:43:33 +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 29d64bd04e 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:32:47 +01:00
Michael Stapelberg 01f7250f6a 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:32:42 +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 3e7ae4f7de Bugfix: Fix assignments to not yet visible workspaces
This was broken by commit 5a1668db3
2009-12-12 18:44:30 +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