]> git.sur5r.net Git - i3/i3/log
i3/i3
12 years agoman: set version to 4.3
Michael Stapelberg [Wed, 19 Sep 2012 15:53:27 +0000 (17:53 +0200)]
man: set version to 4.3

12 years agoman: update i3(1)
Michael Stapelberg [Wed, 19 Sep 2012 15:53:17 +0000 (17:53 +0200)]
man: update i3(1)

12 years ago--help: note that nVidia’s driver supports RandR from 302.17 on
Michael Stapelberg [Wed, 19 Sep 2012 15:52:56 +0000 (17:52 +0200)]
--help: note that nVidia’s driver supports RandR from 302.17 on

12 years agorelease notes: update and final touches
Michael Stapelberg [Wed, 19 Sep 2012 15:46:42 +0000 (17:46 +0200)]
release notes: update and final touches

12 years agouserguide: mention the FAQ
Michael Stapelberg [Wed, 19 Sep 2012 15:30:44 +0000 (17:30 +0200)]
userguide: mention the FAQ

12 years agouserguide: make moving cons/workspaces to other outputs its own section
Michael Stapelberg [Wed, 19 Sep 2012 15:13:00 +0000 (17:13 +0200)]
userguide: make moving cons/workspaces to other outputs its own section

Frequent requests for this functionality on IRC made me aware that it’s
not easily findable.

12 years agohacking-howto: fix wrong anchor to #_tree_reply
Simon Elsbrock [Sun, 16 Sep 2012 20:55:37 +0000 (22:55 +0200)]
hacking-howto: fix wrong anchor to #_tree_reply

12 years agoAllow changing the layout of workspaces by storing it (Thanks mhcerri)
Michael Stapelberg [Sun, 16 Sep 2012 20:53:41 +0000 (22:53 +0200)]
Allow changing the layout of workspaces by storing it (Thanks mhcerri)

Before commit 4976fa33504907510f1ee9e44884c116af0d801b, setting the
layout of workspaces to something else than the default would just mess
up the parent container of the workspace (the content container).

After that commit, it would create an unnecessary split container when
you change the layout _before_ opening any containers. To avoid this, we
now store the layout (similar to how the 'workspace_layout'
configuration directive works) and apply it when the first container is
attached to the workspace.

Fixes #796

12 years agoMerge branch 'master' into next
Michael Stapelberg [Sun, 16 Sep 2012 15:59:55 +0000 (17:59 +0200)]
Merge branch 'master' into next

12 years agoMerge branch 'fix-fullscreen-scratch'
Michael Stapelberg [Sun, 16 Sep 2012 15:59:43 +0000 (17:59 +0200)]
Merge branch 'fix-fullscreen-scratch'

12 years agotoggle fullscreen on 'scratchpad show'
Simon Elsbrock [Thu, 6 Sep 2012 06:08:46 +0000 (08:08 +0200)]
toggle fullscreen on 'scratchpad show'

If the focused application is in fullscreen mode and 'scratchpad show'
is executed, toggle the fullscreen mode before showing the scratchpad
application. Otherwise, the scratchpad app would not be visible anyways
but focus would be stolen.

fixes #613

12 years agoMerge branch 'master' into next
Michael Stapelberg [Fri, 14 Sep 2012 11:18:04 +0000 (13:18 +0200)]
Merge branch 'master' into next

12 years agoMerge branch 'fix-scratchpad-focus'
Michael Stapelberg [Fri, 14 Sep 2012 11:18:00 +0000 (13:18 +0200)]
Merge branch 'fix-scratchpad-focus'

12 years agoBugfix: Don’t focus the wrong workspace when moving to scratchpad (+test) (Thanks...
Michael Stapelberg [Fri, 14 Sep 2012 11:03:39 +0000 (13:03 +0200)]
Bugfix: Don’t focus the wrong workspace when moving to scratchpad (+test) (Thanks loblik)

The problem was that scratchpad_move() didn’t check whether the source
workspace was focused. Therefore, 'move scratchpad' only worked reliably
interactively , but not when used with criteria.

12 years agoupdate release notes to reflect the current i3-nagbar situation
Michael Stapelberg [Tue, 11 Sep 2012 11:19:05 +0000 (13:19 +0200)]
update release notes to reflect the current i3-nagbar situation

12 years agoOnly launch i3-nagbar for parse errors
Michael Stapelberg [Tue, 11 Sep 2012 11:17:36 +0000 (13:17 +0200)]
Only launch i3-nagbar for parse errors

12 years agoRemove support for resize increment size hints for tiling windows
Michael Stapelberg [Tue, 11 Sep 2012 11:11:47 +0000 (13:11 +0200)]
Remove support for resize increment size hints for tiling windows

As discussed on the mailing list and the bugtracker.

fixes #540

12 years agosighandler: use non-existing backtrace filenames ($TMPDIR/i3-backtrace.%pid.%idx...
Michael Stapelberg [Tue, 11 Sep 2012 11:07:20 +0000 (13:07 +0200)]
sighandler: use non-existing backtrace filenames ($TMPDIR/i3-backtrace.%pid.%idx.txt)

12 years agosasprintf() already handles errors, we don’t need to do that twice
Michael Stapelberg [Tue, 11 Sep 2012 11:02:59 +0000 (13:02 +0200)]
sasprintf() already handles errors, we don’t need to do that twice

12 years agosighandler: provide gdb with pipe stdin/stdout fds (necessary for gdb < 7.5)
Michael Stapelberg [Tue, 11 Sep 2012 10:57:53 +0000 (12:57 +0200)]
sighandler: provide gdb with pipe stdin/stdout fds (necessary for gdb < 7.5)

12 years agoReplace exit with backtrace in crash dialog
Bas Pape [Mon, 10 Sep 2012 14:47:05 +0000 (16:47 +0200)]
Replace exit with backtrace in crash dialog

When the user hits 'b', attach gdb and dump a backtrace to the tmpdir

12 years agoinclude the testcases in the dist tarball (required for building docs)
Michael Stapelberg [Mon, 10 Sep 2012 14:49:43 +0000 (16:49 +0200)]
include the testcases in the dist tarball (required for building docs)

12 years agodocs/testsuite: add pointers to additional docs
Michael Stapelberg [Mon, 10 Sep 2012 12:13:43 +0000 (14:13 +0200)]
docs/testsuite: add pointers to additional docs

12 years agoadd boilerplate to all testcases with documentation references
Michael Stapelberg [Mon, 10 Sep 2012 12:09:01 +0000 (14:09 +0200)]
add boilerplate to all testcases with documentation references

12 years agofix typo
Michael Stapelberg [Mon, 10 Sep 2012 12:08:52 +0000 (14:08 +0200)]
fix typo

12 years agodebian: add lib-i3test.html and lib-i3test-test.html to docs
Michael Stapelberg [Mon, 10 Sep 2012 11:31:34 +0000 (13:31 +0200)]
debian: add lib-i3test.html and lib-i3test-test.html to docs

12 years agotests: document each and every i3test function
Michael Stapelberg [Mon, 10 Sep 2012 11:30:47 +0000 (13:30 +0200)]
tests: document each and every i3test function

12 years agotests: move does_i3_live to i3test::Test
Michael Stapelberg [Mon, 10 Sep 2012 11:29:50 +0000 (13:29 +0200)]
tests: move does_i3_live to i3test::Test

12 years agotests: make cmp_float a real test instruction
Michael Stapelberg [Mon, 10 Sep 2012 11:23:49 +0000 (13:23 +0200)]
tests: make cmp_float a real test instruction

12 years agodocs: generate HTML from testsuite POD documentation
Michael Stapelberg [Mon, 10 Sep 2012 10:03:14 +0000 (12:03 +0200)]
docs: generate HTML from testsuite POD documentation

12 years agouse pwd -P instead of readlink -f (Thanks Marcus Crestani)
Michael Stapelberg [Sun, 9 Sep 2012 13:39:49 +0000 (15:39 +0200)]
use pwd -P instead of readlink -f (Thanks Marcus Crestani)

readlink -f does not work on Mac OS X

12 years agobuild fix: remove src/cmdparse.* in make clean
Michael Stapelberg [Sun, 9 Sep 2012 13:30:37 +0000 (15:30 +0200)]
build fix: remove src/cmdparse.* in make clean

This was removed in commit 8853334bbefd57f8f9bd6bdeb0c221616b40b446

12 years agodon’t errnously detect --release bindings as duplicates
Michael Stapelberg [Thu, 6 Sep 2012 16:11:16 +0000 (18:11 +0200)]
don’t errnously detect --release bindings as duplicates

12 years agodocs/userguide: document the --release flag for key bindings
Michael Stapelberg [Thu, 6 Sep 2012 15:31:30 +0000 (17:31 +0200)]
docs/userguide: document the --release flag for key bindings

12 years agodocs/userguide: use --no-startup-id for executing shell scripts
Michael Stapelberg [Thu, 6 Sep 2012 15:31:16 +0000 (17:31 +0200)]
docs/userguide: use --no-startup-id for executing shell scripts

12 years agoignore modifiers for KeyRelease bindings
Michael Stapelberg [Thu, 6 Sep 2012 15:24:30 +0000 (17:24 +0200)]
ignore modifiers for KeyRelease bindings

For the following binding:

    # Simulate ctrl+v upon pressing $mod+x
    bindsym --release $mod+x exec --no-startup-id xdotool key --clearmodifiers ctrl+v

you can now use either:
1. press $mod, press x, release x, release $mod
2. press $mod, press x, release $mod, release x

fixes #485

12 years agonaive implementation of 'bindsym --release' (and bindcode)
Michael Stapelberg [Thu, 6 Sep 2012 15:04:31 +0000 (17:04 +0200)]
naive implementation of 'bindsym --release' (and bindcode)

The implementation is naive because the user has to generate exactly the
event he specified. That is, if you use this binding:

    bindsym --release $mod+x exec import /tmp/latest-screenshot.png

Then it will only be triggered if you hit $mod, hit x, release x,
release $mod. It will not be triggered if you hit $mod, hit x, release
$mod, release x. The reason is that the KeyRelease event in the latter
case will not have the modifier in its flags, so it doesn’t match the
configured binding.

12 years agore-indent src/config.c
Michael Stapelberg [Thu, 6 Sep 2012 12:49:14 +0000 (14:49 +0200)]
re-indent src/config.c

12 years agoupdate release-notes
Michael Stapelberg [Thu, 6 Sep 2012 07:47:50 +0000 (09:47 +0200)]
update release-notes

12 years agorendering: ceil() instead of truncating for tabbed deco_rect width (Thanks szalik)
Michael Stapelberg [Wed, 5 Sep 2012 21:54:56 +0000 (23:54 +0200)]
rendering: ceil() instead of truncating for tabbed deco_rect width (Thanks szalik)

In tabbed mode, the available width (say 1280) is divided by the amount
of child containers (say 3). Before this commit, we just truncated the
result and would end up with 426 + 426 + 426 = 1278 pixels that we
render to. Now we render a bit too much, but that’ll at least not give
us graphics corruption on any side :).

fixes #791

12 years agofix format string warnings
Michael Stapelberg [Wed, 5 Sep 2012 20:22:48 +0000 (22:22 +0200)]
fix format string warnings

12 years agobugfix: forgot to mark split containers as split = true (+test) (Thanks szalik)
Michael Stapelberg [Wed, 5 Sep 2012 20:03:45 +0000 (22:03 +0200)]
bugfix: forgot to mark split containers as split = true (+test) (Thanks szalik)

When the workspace layout (formerly orientation) was forced to change
due to a move command, the split container we created was not marked as
split = true, which caused tree_flatten() to errnously kill the contents
of it and thus one window ended up unmanaged.

Also, the logic in tree_flatten() was inverted due to commit de94f6da.

fixes #790

12 years agouserguide: point out explicitly how to use startup-notifications
Michael Stapelberg [Wed, 5 Sep 2012 19:10:26 +0000 (21:10 +0200)]
userguide: point out explicitly how to use startup-notifications

12 years agostartup-notifications: keep sequence around for 30s after completion
Michael Stapelberg [Wed, 5 Sep 2012 19:00:08 +0000 (21:00 +0200)]
startup-notifications: keep sequence around for 30s after completion

This changes the fact that Firefox would not be launched on the correct
workspace because it marked the startup sequence as completed *before*
actually mapping all of its windows.

To test this, go to workspace 3 and run this command in a terminal:
    i3-msg 'exec iceweasel; workspace 4'
That will make i3 start iceweasel (and create a proper startup
notification context for it), then immediately switch to workspace 4
(before iceweasel could possibly start).

The iceweasel window(s) should appear on workspace 3.

12 years agoMerge branch 'master' into next
Michael Stapelberg [Wed, 5 Sep 2012 15:09:43 +0000 (17:09 +0200)]
Merge branch 'master' into next

12 years agoMerge branch 'fix-nagbar-exit'
Michael Stapelberg [Wed, 5 Sep 2012 15:09:40 +0000 (17:09 +0200)]
Merge branch 'fix-nagbar-exit'

12 years agoBugfix: Use _exit() instead of exit to avoid calling atexit functions (Thanks f8l)
Michael Stapelberg [Wed, 5 Sep 2012 15:09:23 +0000 (17:09 +0200)]
Bugfix: Use _exit() instead of exit to avoid calling atexit functions (Thanks f8l)

Basically, this is the same fix as commit 914ca6cf :-/. Once again, we
called exit() instead of _exit(), but this time it lead to a kill(0,
SIGTERM), effectively killing all processes in the i3 process group,
including i3 itself. The cause for the kill(0) is that nagbar_pid is set
to 0 by fork(), signaling we’re in the child process. The cleanup
handler only checks for nagbar_pid being -1 as a special value, however.

12 years agocon_set_layout: always use the parent container, handle workspaces properly
Michael Stapelberg [Tue, 4 Sep 2012 22:22:38 +0000 (00:22 +0200)]
con_set_layout: always use the parent container, handle workspaces properly

Previously, in case 'layout stacked' (for example) had been called
interactively, con_set_layout would be called with focused->parent,
while with for_window, it’d be called on the actual matching container.

This difference in behavior was the cause for the inability to use
'for_window [class="XTerm"] layout tabbed', which now works \o/, but
more on that below.

The change also allows us to handle the case of the user selecting a
CT_WORKSPACE container properly, that is, by using the special case and
creating a new split container on the workspace which gets all the
contents, but a new layout.

Now, before you are enthusiastic about the change and try to use
for_window magic in your config file, keep in mind: The 'layout' command
acts on the parent split container. That is, when using a line such as
this one:

    for_window [class="XTerm"] layout tabbed

…and opening an XTerm when on a workspace with one single other window,
the whole workspace will be set tabbed (just as previously when you
opened an XTerm and sent 'layout tabbed' manually).

Therefore, to open XTerm in its own tabbed split container, you need to
split before:

    for_window [class="XTerm"] split v, layout tabbed

The comma here is important! It says that the second command should not
be treated as an entirely unrelated command, but it should also relate
the matching window (while it does work with a ';', that is prone to
race-conditions and should be avoided).

fixes #358

12 years agoMerge branch 'master' into next
Michael Stapelberg [Tue, 4 Sep 2012 20:49:16 +0000 (22:49 +0200)]
Merge branch 'master' into next

12 years agoMerge branch 'fix-1px-flickering'
Michael Stapelberg [Tue, 4 Sep 2012 20:49:12 +0000 (22:49 +0200)]
Merge branch 'fix-1px-flickering'

12 years agoBugfix: fix flickering with 1pixel border tabbed layouts (Thanks julien)
Michael Stapelberg [Tue, 4 Sep 2012 20:47:12 +0000 (22:47 +0200)]
Bugfix: fix flickering with 1pixel border tabbed layouts (Thanks julien)

When you have a tabbed container which has had more than one container
but currently has precisely one container, there was a bit of flickering
when switching workspaces occasionally. This commit fixes it by properly
setting the height of the deco_rect (and thus the X11 window) to not
make the old window contents show up for a minimum period of time.

fixes #777

12 years agotests: introduce is_num_children test
Michael Stapelberg [Tue, 4 Sep 2012 20:24:13 +0000 (22:24 +0200)]
tests: introduce is_num_children test

This makes it clearer what the tests are actually doing and kills quite
a bit of useless repetitions

12 years agoMerge branch 'master' into next
Michael Stapelberg [Tue, 4 Sep 2012 18:21:31 +0000 (20:21 +0200)]
Merge branch 'master' into next

12 years agoMerge branch 'fix-fullscreen-confreq'
Michael Stapelberg [Tue, 4 Sep 2012 18:21:22 +0000 (20:21 +0200)]
Merge branch 'fix-fullscreen-confreq'

12 years agoBugfix: Don’t allow ConfigureRequests while in fullscreen (Thanks Piotr)
Michael Stapelberg [Tue, 4 Sep 2012 18:21:07 +0000 (20:21 +0200)]
Bugfix: Don’t allow ConfigureRequests while in fullscreen (Thanks Piotr)

This fixes a compatibility issue with gnome-terminal and xfce’s
terminal, where fullscreening would lead to moving the window and not
displaying the contents properly.

fixes #788

12 years agox: grab server and process pending events before managing existing windows
Michael Stapelberg [Mon, 3 Sep 2012 20:33:35 +0000 (22:33 +0200)]
x: grab server and process pending events before managing existing windows

fixes #782

12 years agoremove xcb-proto from DEPENDS, it’s only a build-time dep of libxcb (Thanks okraits)
Michael Stapelberg [Tue, 4 Sep 2012 14:53:06 +0000 (16:53 +0200)]
remove xcb-proto from DEPENDS, it’s only a build-time dep of libxcb (Thanks okraits)

12 years agofix compilation with older xcb-util with -DXCB_COMPAT (Thanks okraits)
Michael Stapelberg [Mon, 3 Sep 2012 12:55:27 +0000 (14:55 +0200)]
fix compilation with older xcb-util with -DXCB_COMPAT (Thanks okraits)

12 years agobugfix: memleak: use i3STRING_FREE() instead of FREE()
Michael Stapelberg [Sun, 2 Sep 2012 22:41:51 +0000 (00:41 +0200)]
bugfix: memleak: use i3STRING_FREE() instead of FREE()

12 years agoBugfix: memleak: because we use i3string_from_utf8(), we need to free buffer()
Michael Stapelberg [Sun, 2 Sep 2012 22:41:15 +0000 (00:41 +0200)]
Bugfix: memleak: because we use i3string_from_utf8(), we need to free buffer()

Previously, buffer was directly used and thus not freed, but
i3string_from_utf8() makes a copy.

12 years agotestcases: add ExtUtils::PkgConfig as explicit dependency
Michael Stapelberg [Thu, 30 Aug 2012 22:17:06 +0000 (00:17 +0200)]
testcases: add ExtUtils::PkgConfig as explicit dependency

This used to be a transitive dependency through X11::XCB, but the latter
dropped it in version 0.04.

12 years agoMake the initial mention of 'split h/v' a little easier to understand.
Cian [Thu, 30 Aug 2012 20:12:22 +0000 (21:12 +0100)]
Make the initial mention of 'split h/v' a little easier to understand.

12 years agoaccept slashes in RandR output names (+test) (Thanks dbp)
Michael Stapelberg [Tue, 28 Aug 2012 11:26:12 +0000 (13:26 +0200)]
accept slashes in RandR output names (+test) (Thanks dbp)

fixes #785

12 years agoi3-input: Fix text drawing offset
Quentin Glidic [Tue, 28 Aug 2012 09:44:09 +0000 (11:44 +0200)]
i3-input: Fix text drawing offset

12 years agoi3-input: Do not use a non-loaded font
Quentin Glidic [Sat, 25 Aug 2012 21:44:13 +0000 (23:44 +0200)]
i3-input: Do not use a non-loaded font

We must call load_font before any font-related calls like
predict_text_width

12 years agomanpage: update force-xinerama nvidia hint
Michael Stapelberg [Mon, 27 Aug 2012 13:25:22 +0000 (15:25 +0200)]
manpage: update force-xinerama nvidia hint

12 years agomanpage: describe keybindings to open a terminal/dmenu (Thanks Joost)
Michael Stapelberg [Mon, 27 Aug 2012 13:22:19 +0000 (15:22 +0200)]
manpage: describe keybindings to open a terminal/dmenu (Thanks Joost)

12 years agomanpage: improve locale setup in example .xsession (Thanks Harald König)
Michael Stapelberg [Mon, 27 Aug 2012 13:07:18 +0000 (15:07 +0200)]
manpage: improve locale setup in example .xsession (Thanks Harald König)

Harald mentioned he was surprised about the locales we recommend in the
.xsession example, so I’ve re-investigated.

Here is the test program I have used:

    #include <stdio.h>
    #include <locale.h>

    int main() {
        /* SUSv2 setlocale(3) says:
         * Internationalised programs must call setlocale() to initiate
         * a specific language operation. This can be done by calling
         * setlocale() as follows: */
        setlocale(LC_ALL, "");

        printf("LC_NUMERIC is %s\n", setlocale(LC_NUMERIC, NULL));
    }

Then, I have unset LANG and LC_*:

    midna /tmp $ env | grep LANG
    midna /tmp $ env | grep LC
    midna /tmp $

Now, observe that LC_ALL overwrites all specific LC variables:

    midna /tmp $ LC_ALL=de_DE.UTF-8 LC_NUMERIC=en_DK.UTF-8 ./localetest
    LC_NUMERIC is de_DE.UTF-8

However, LANG does not:

    midna /tmp $ LANG=de_DE.UTF-8 ./localetest
    LC_NUMERIC is de_DE.UTF-8
    midna /tmp $ LANG=de_DE.UTF-8 LC_NUMERIC=en_DK.UTF-8 ./localetest
    LC_NUMERIC is en_DK.UTF-8

This is consistent with what perldoc perllocale says:
http://perldoc.perl.org/perllocale.html#ENVIRONMENT

12 years agodocs/testsuite: mention why using a separate language is great
Michael Stapelberg [Thu, 23 Aug 2012 18:27:08 +0000 (20:27 +0200)]
docs/testsuite: mention why using a separate language is great

12 years agoUse (void) instead of () for functions without args
eeemsi [Thu, 23 Aug 2012 10:55:28 +0000 (12:55 +0200)]
Use (void) instead of () for functions without args

12 years agoRemove dead code in cmd_workspace_number
Sebastian Ullrich [Wed, 22 Aug 2012 15:49:23 +0000 (17:49 +0200)]
Remove dead code in cmd_workspace_number

If a ws doesn't exist, maybe_back_and_forth
will never return true for it.

12 years agotestcase for the previous commit
Michael Stapelberg [Wed, 22 Aug 2012 15:57:58 +0000 (17:57 +0200)]
testcase for the previous commit

12 years agoFix 'back and forth' in 'workspace number' for named ws
Sebastian Ullrich [Wed, 22 Aug 2012 15:49:22 +0000 (17:49 +0200)]
Fix 'back and forth' in 'workspace number' for named ws

12 years agotestsuite: add hint about missing DUMMY Xorg module
Michael Stapelberg [Wed, 22 Aug 2012 15:22:20 +0000 (17:22 +0200)]
testsuite: add hint about missing DUMMY Xorg module

12 years agotestcase for the previous commit
Michael Stapelberg [Wed, 22 Aug 2012 15:16:18 +0000 (17:16 +0200)]
testcase for the previous commit

12 years agoCreate ws in "move workspace number n" if not existing
Sebastian Ullrich [Mon, 20 Aug 2012 10:36:10 +0000 (12:36 +0200)]
Create ws in "move workspace number n" if not existing

fixes #729

12 years agoMerge branch 'master' into next
Michael Stapelberg [Wed, 22 Aug 2012 14:02:02 +0000 (16:02 +0200)]
Merge branch 'master' into next

12 years agoMerge branch 'floating-resize-height'
Michael Stapelberg [Wed, 22 Aug 2012 14:01:57 +0000 (16:01 +0200)]
Merge branch 'floating-resize-height'

12 years agofix resizing floating windows by height
Joel Stemmer [Sat, 18 Aug 2012 13:25:00 +0000 (15:25 +0200)]
fix resizing floating windows by height

When resizing floating windows, changing the height was not correctly
handled. This commit fixes that and adds testcases for shrinking and
growing the width and height of floating windows.

12 years agocomplete-run: check whether Xdummy dies, add a flag to keep the Xdummy output
Michael Stapelberg [Sat, 18 Aug 2012 14:27:00 +0000 (16:27 +0200)]
complete-run: check whether Xdummy dies, add a flag to keep the Xdummy output

12 years agoupdate DEPENDS, prepare RELEASE-NOTES for 4.3
Michael Stapelberg [Sat, 18 Aug 2012 13:33:36 +0000 (15:33 +0200)]
update DEPENDS, prepare RELEASE-NOTES for 4.3

12 years agoBugfix: don’t change tabbed/stacked cons to splitv/splith layout (Thanks Merovius)
Michael Stapelberg [Thu, 16 Aug 2012 23:53:45 +0000 (01:53 +0200)]
Bugfix: don’t change tabbed/stacked cons to splitv/splith layout (Thanks Merovius)

To automagically do the right thing when rotating monitors with regards
to splith/splitv layout (depending on width/height of the monitor), we
change the orientation of existing workspaces and the first child.

If that first child happens to be a stacked/tabbed con, we cannot change
the layout unconditionally (previously, the orientation was not in the
layout, so we never noticed this problem).

fixes #768

12 years agodebian: make 'i3' recommend dunst
Michael Stapelberg [Mon, 13 Aug 2012 11:44:54 +0000 (13:44 +0200)]
debian: make 'i3' recommend dunst

12 years agodebian/control: format build-depends nicely, add pango/cairo
Michael Stapelberg [Mon, 13 Aug 2012 11:44:36 +0000 (13:44 +0200)]
debian/control: format build-depends nicely, add pango/cairo

12 years agopango: divide by PANGO_SCALE to get a "normal" font size
Michael Stapelberg [Mon, 13 Aug 2012 11:39:58 +0000 (13:39 +0200)]
pango: divide by PANGO_SCALE to get a "normal" font size

12 years agoi3 --moreversion: use readlink /proc/$pid/exe instead of realpath(argv[0])
Michael Stapelberg [Mon, 13 Aug 2012 11:38:04 +0000 (13:38 +0200)]
i3 --moreversion: use readlink /proc/$pid/exe instead of realpath(argv[0])

The latter is actually wrong. For example, when running i3
--moreversion, it will print $(pwd)/i3 instead of $(which i3). In my
previous tests, this coincidentally was the same.

12 years agodefault config: include a short explanation about xft fonts
Michael Stapelberg [Mon, 13 Aug 2012 11:34:30 +0000 (13:34 +0200)]
default config: include a short explanation about xft fonts

12 years agologging: make libi3 use verboselog()/errorlog(), provide it in each caller
Michael Stapelberg [Mon, 13 Aug 2012 11:27:00 +0000 (13:27 +0200)]
logging: make libi3 use verboselog()/errorlog(), provide it in each caller

While this is a bit ugly, it makes the log messages end up where they
are supposed to: in the shmlog/stdout in case of i3 and on stdout in
case of utilities such as i3-input

12 years agouserguide: Update Fonts section for Pango support
Quentin Glidic [Sun, 12 Aug 2012 10:37:39 +0000 (12:37 +0200)]
userguide: Update Fonts section for Pango support

12 years agolibi3/font: Log the used font
Quentin Glidic [Sun, 12 Aug 2012 10:20:51 +0000 (12:20 +0200)]
libi3/font: Log the used font

12 years agolibi3: Introduce LOG
Quentin Glidic [Sun, 12 Aug 2012 10:20:15 +0000 (12:20 +0200)]
libi3: Introduce LOG

12 years agolibi3: Implement Pango rendering
Fernando Tarlá Cardoso Lemos [Sun, 5 Aug 2012 19:36:49 +0000 (21:36 +0200)]
libi3: Implement Pango rendering

12 years agocommon.mk: Check for Pango
Quentin Glidic [Sun, 5 Aug 2012 18:54:30 +0000 (20:54 +0200)]
common.mk: Check for Pango

12 years agolibi3: Rework font to support multiple backends
Fernando Tarlá Cardoso Lemos [Mon, 14 Nov 2011 23:39:03 +0000 (21:39 -0200)]
libi3: Rework font to support multiple backends

12 years agoi3bar: Rename xcb_screen to root_screen for consistency
Fernando Tarlá Cardoso Lemos [Mon, 14 Nov 2011 23:39:03 +0000 (21:39 -0200)]
i3bar: Rename xcb_screen to root_screen for consistency

12 years agolibi3: Introduce get_visualtype
Fernando Tarlá Cardoso Lemos [Mon, 14 Nov 2011 23:39:03 +0000 (21:39 -0200)]
libi3: Introduce get_visualtype

12 years agolibi3: Rework predict_text_width
Quentin Glidic [Tue, 7 Aug 2012 20:30:37 +0000 (22:30 +0200)]
libi3: Rework predict_text_width

predict_text_width now takes an i3String as argument

12 years agolibi3: Rework draw_text
Quentin Glidic [Tue, 7 Aug 2012 18:28:39 +0000 (20:28 +0200)]
libi3: Rework draw_text

We now have two versions of draw_text
draw_text: Now takes an i3String
draw_text_ascii: Designed for static strings in plain ASCII

12 years agoi3-input: Store and use xcb_char2b_t directly
Quentin Glidic [Wed, 8 Aug 2012 13:08:05 +0000 (15:08 +0200)]
i3-input: Store and use xcb_char2b_t directly

12 years agoi3-input: Port prompt to i3String
Quentin Glidic [Tue, 7 Aug 2012 20:10:30 +0000 (22:10 +0200)]
i3-input: Port prompt to i3String