]> git.sur5r.net Git - i3/i3/log
i3/i3
6 years agoMerge pull request #3151 from stapelberg/gzip
Ingo Bürk [Sat, 24 Feb 2018 08:41:49 +0000 (09:41 +0100)]
Merge pull request #3151 from stapelberg/gzip

debian: explicitly use gzip compression

6 years agodebian: explicitly use gzip compression 3151/head
Michael Stapelberg [Sat, 24 Feb 2018 07:55:57 +0000 (08:55 +0100)]
debian: explicitly use gzip compression

fixes #3146

6 years agoMerge pull request #3145 from DebianWall/gvim
Ingo Bürk [Mon, 19 Feb 2018 15:03:55 +0000 (16:03 +0100)]
Merge pull request #3145 from DebianWall/gvim

Added gVim to i3-sensible-editor

6 years agoMerge pull request #3144 from DebianWall/guaketilda
Ingo Bürk [Mon, 19 Feb 2018 14:42:30 +0000 (15:42 +0100)]
Merge pull request #3144 from DebianWall/guaketilda

Added guake and tilda.

6 years agoAdded gVim to i3-sensible-editor 3145/head
DebianWall [Mon, 19 Feb 2018 14:39:46 +0000 (15:39 +0100)]
Added gVim to i3-sensible-editor

6 years agoAdded guake and tilda. 3144/head
DebianWall [Mon, 19 Feb 2018 14:35:01 +0000 (15:35 +0100)]
Added guake and tilda.

6 years agoMerge pull request #3138 from clawoflight/default-border
Ingo Bürk [Mon, 19 Feb 2018 06:03:03 +0000 (07:03 +0100)]
Merge pull request #3138 from clawoflight/default-border

[WIP] Add default_{,floating_}border

6 years agoMerge pull request #3142 from jcrben/patch-1
Ingo Bürk [Mon, 19 Feb 2018 05:58:43 +0000 (06:58 +0100)]
Merge pull request #3142 from jcrben/patch-1

Remove hardcoded 2013 date from user guide

6 years agoRemove hardcoded 2013 date 3142/head
Ben Creasy [Mon, 19 Feb 2018 02:44:40 +0000 (18:44 -0800)]
Remove hardcoded 2013 date

The front page and docs landing page emphasize documentation, but the user guide looks like it hasn't been updated since 2013. It seems from the history of the file that this number is misleading. Let me know if I'm missing anything.

6 years agoMerge pull request #3135 from op8867555/update_ewmh_atoms
Ingo Bürk [Thu, 15 Feb 2018 15:29:29 +0000 (16:29 +0100)]
Merge pull request #3135 from op8867555/update_ewmh_atoms

Update EWMH atoms when closing inactive workspace

6 years agoAdd default_{,floating_}border to config 3138/head
Bennett Piater [Mon, 12 Feb 2018 14:11:19 +0000 (15:11 +0100)]
Add default_{,floating_}border to config

userguide: document default_{,floating_}border

201-config-parser.t: add new tokens to $expected_all_tokens

201-config-parser-t: fix whitespace

closes i3/i3#2702

6 years agoUpdate EWMH atoms when closing a workspace container 3135/head
Alex Lu [Sun, 11 Feb 2018 11:05:43 +0000 (19:05 +0800)]
Update EWMH atoms when closing a workspace container

fix #3126

6 years agoMerge pull request #3131 from EdwardBetts/patch-1
Ingo Bürk [Sun, 11 Feb 2018 14:48:55 +0000 (15:48 +0100)]
Merge pull request #3131 from EdwardBetts/patch-1

Correct spelling a mistake.

6 years agoCorrect spelling a mistake. 3131/head
Edward Betts [Wed, 7 Feb 2018 08:01:26 +0000 (08:01 +0000)]
Correct spelling a mistake.

6 years agoMerge pull request #3080 from orestisf1993/cmd_move_con_to_workspace
Ingo Bürk [Wed, 17 Jan 2018 20:26:09 +0000 (21:26 +0100)]
Merge pull request #3080 from orestisf1993/cmd_move_con_to_workspace

 Reduce repetition in cmd_move_con_to_workspace*

6 years agoMerge pull request #3102 from jolange/fix3071
Ingo Bürk [Wed, 17 Jan 2018 20:24:52 +0000 (21:24 +0100)]
Merge pull request #3102 from jolange/fix3071

tiling resize: remove minimum size (was 5%)

6 years agoMerge pull request #3104 from jolange/testcase_warnings
Ingo Bürk [Wed, 17 Jan 2018 20:24:00 +0000 (21:24 +0100)]
Merge pull request #3104 from jolange/testcase_warnings

Testcase warnings

6 years agoMerge pull request #2998 from orestisf1993/issue-2990
Michael Stapelberg [Sun, 14 Jan 2018 17:22:44 +0000 (18:22 +0100)]
Merge pull request #2998 from orestisf1993/issue-2990

Don't raise floating windows when focused because of focus_follows_mouse

6 years agoDon't raise floating windows when focused because of focus_follows_mouse 2998/head
Orestis Floros [Tue, 5 Dec 2017 23:58:47 +0000 (01:58 +0200)]
Don't raise floating windows when focused because of focus_follows_mouse

Fixes #2990.

6 years agoImplement 'resize set <width> ppt <height> ppt' command for tiling windows (#3036)
livanh [Mon, 8 Jan 2018 22:25:08 +0000 (23:25 +0100)]
Implement 'resize set <width> ppt <height> ppt' command for tiling windows (#3036)

6 years agoSend success response for nop. (#3113)
Ingo Bürk [Sat, 6 Jan 2018 22:24:33 +0000 (23:24 +0100)]
Send success response for nop. (#3113)

fixes #3112

6 years agoImprove resize_find_tiling_participants() and simplify cmd_resize_tiling_width_height...
livanh [Sat, 6 Jan 2018 16:59:27 +0000 (17:59 +0100)]
Improve resize_find_tiling_participants() and simplify cmd_resize_tiling_width_height() (#3111)

6 years agoMerge pull request #3110 from DikiCook/config
Ingo Bürk [Fri, 5 Jan 2018 17:43:51 +0000 (18:43 +0100)]
Merge pull request #3110 from DikiCook/config

Add comment $mod+r in back to normal when resize window

6 years agoconfig: add comment $mod+r in back to normal when resize window 3110/head
Diki Ananta [Fri, 5 Jan 2018 00:14:57 +0000 (07:14 +0700)]
config: add comment $mod+r in back to normal when resize window

6 years agoMerge pull request #3101 from tpraxl/feature/workspace-variables
Ingo Bürk [Tue, 2 Jan 2018 08:34:54 +0000 (09:34 +0100)]
Merge pull request #3101 from tpraxl/feature/workspace-variables

Add workspace vars to support DRY when customizing

6 years agoAdd testcases for focus_follows_mouse
Orestis Floros [Thu, 28 Sep 2017 22:35:11 +0000 (01:35 +0300)]
Add testcases for focus_follows_mouse

6 years agocmd_move_con_to_workspace_number: rename workspace->ws 3080/head
Orestis Floros [Sun, 10 Dec 2017 20:08:46 +0000 (22:08 +0200)]
cmd_move_con_to_workspace_number: rename workspace->ws

For consistency with other cmd_move_con_to_workspace* functions.

6 years agoReduce repetition in cmd_move_con_to_workspace*
Orestis Floros [Sun, 10 Dec 2017 20:06:29 +0000 (22:06 +0200)]
Reduce repetition in cmd_move_con_to_workspace*

6 years agoMerge pull request #3105 from clonejo/feat/pango-markup
Ingo Bürk [Wed, 27 Dec 2017 17:22:32 +0000 (18:22 +0100)]
Merge pull request #3105 from clonejo/feat/pango-markup

Docs: state that pango markup in i3bar requires the use of a pango font.

6 years agoDocs: state that pango markup requires the use of a pango font. 3105/head
clonejo [Wed, 27 Dec 2017 16:40:47 +0000 (17:40 +0100)]
Docs: state that pango markup requires the use of a pango font.

6 years agofixing uninitialized warnings in testcases 3104/head
Johannes Lange [Tue, 26 Dec 2017 12:39:19 +0000 (13:39 +0100)]
fixing uninitialized warnings in testcases

6 years agofixing redeclaration warnings in testcases
Johannes Lange [Tue, 26 Dec 2017 12:16:15 +0000 (13:16 +0100)]
fixing redeclaration warnings in testcases

6 years agotiling resize: remove minimum size (was 5%) 3102/head
Johannes Lange [Tue, 26 Dec 2017 08:37:22 +0000 (09:37 +0100)]
tiling resize: remove minimum size (was 5%)

fixes #3071

6 years agoShorten comment for workspace variables 3101/head
Thomas Praxl [Tue, 26 Dec 2017 10:29:42 +0000 (11:29 +0100)]
Shorten comment for workspace variables

The old comments gave the impression that you had to define workspace names upfront, which is not true. This also keeps the overall config as brief as possible.

6 years agoMerge pull request #3100 from jolange/fix3086
Ingo Bürk [Mon, 25 Dec 2017 08:52:09 +0000 (09:52 +0100)]
Merge pull request #3100 from jolange/fix3086

free last_motion_notify before returning

6 years agofree last_motion_notify before returning 3100/head
Johannes Lange [Sun, 24 Dec 2017 08:40:23 +0000 (09:40 +0100)]
free last_motion_notify before returning

fixes #3086

6 years agoAdd workspace vars to support DRY when customizing
Thomas Praxl [Sat, 23 Dec 2017 11:28:03 +0000 (12:28 +0100)]
Add workspace vars to support DRY when customizing

Relabeling the workspaces required the user to update the labels at least in two places of the i3 config file (switch to workspace + move focused container to workspace) to keep a consistent state.

This got even worse when the user started to reference the workspaces elsewhere, e.g. for assigning containers to specific workspaces.

This change supports the DRY principle for users. Relabeling the workspaces is now merely a matter of changing the respective variable ($ws1, $ws2, … $ws10).

6 years agoMerge pull request #3095 from pallavagarwal07/next
Ingo Bürk [Wed, 20 Dec 2017 17:33:21 +0000 (18:33 +0100)]
Merge pull request #3095 from pallavagarwal07/next

Add support for relative coordinates in i3bar click events

6 years agoAdd relative coordinates in JSON for i3bar click events (fixes #2767) 3095/head
Pallav Agarwal [Wed, 20 Dec 2017 12:19:38 +0000 (17:49 +0530)]
Add relative coordinates in JSON for i3bar click events (fixes #2767)

Add support for relative coordinates in i3bar click events

Rename {x,y}_rel to relative_{x,y}

Update i3bar-protocol doc to mention the added fields in click events

6 years agoMerge pull request #2969 from orestisf1993/issue-1819
Michael Stapelberg [Mon, 18 Dec 2017 07:54:45 +0000 (08:54 +0100)]
Merge pull request #2969 from orestisf1993/issue-1819

Make 'focus' disable blocking fullscreen windows

6 years agoMerge pull request #3079 from orestisf1993/generate-command-parser
Ingo Bürk [Tue, 12 Dec 2017 15:49:48 +0000 (16:49 +0100)]
Merge pull request #3079 from orestisf1993/generate-command-parser

 generate-command-parser.pl: remove trailing characters

6 years agoMake 'focus' disable blocking fullscreen windows 2969/head
Orestis Floros [Sat, 16 Sep 2017 23:20:48 +0000 (02:20 +0300)]
Make 'focus' disable blocking fullscreen windows

The problem here is that con_fullscreen_permits_focusing() does not
check if there is a blocking fullscreen container in the workspace that
the container to be focused belongs. This makes it possible to focus a
container behind a fullscreen window if it's in an unfocused workspace.

This commit introduces a change in the 'focus' command behaviour. When
focusing a container blocked by a fullscreen container, either CF_OUTPUT
or CF_GLOBAL, the blocking container loses its fullscreen mode and the
target container is focused like normal.

This should not affect directional focus commands: left, right, up,
down, parent, child.

Fixes issue #1819.

6 years agouserguide: mention <criteria> in focus
Orestis Floros [Sat, 23 Sep 2017 10:09:08 +0000 (13:09 +0300)]
userguide: mention <criteria> in focus

6 years agoMove is_num_fullscreen to Test.pm
Orestis Floros [Tue, 19 Sep 2017 06:56:53 +0000 (09:56 +0300)]
Move is_num_fullscreen to Test.pm

6 years agoAdd error reply to cmd_focus_window_mode
Orestis Floros [Tue, 19 Sep 2017 11:52:02 +0000 (14:52 +0300)]
Add error reply to cmd_focus_window_mode

6 years agoUse con_has_parent in con_fullscreen_permits_focusing
Orestis Floros [Mon, 18 Sep 2017 10:22:01 +0000 (13:22 +0300)]
Use con_has_parent in con_fullscreen_permits_focusing

6 years agogenerate-command-parser.pl: remove trailing whitespace 3079/head
Orestis Floros [Sun, 10 Dec 2017 19:30:09 +0000 (21:30 +0200)]
generate-command-parser.pl: remove trailing whitespace

6 years agogenerate-command-parser.pl: remove trailing comma
Orestis Floros [Sun, 10 Dec 2017 19:29:56 +0000 (21:29 +0200)]
generate-command-parser.pl: remove trailing comma

6 years agoMerge pull request #3078 from orestisf1993/issue-3075
Ingo Bürk [Sun, 10 Dec 2017 21:02:10 +0000 (22:02 +0100)]
Merge pull request #3078 from orestisf1993/issue-3075

Fix sticky-related crash (#3075)

6 years agoPrevent access of freed workspace in _workspace_show 3078/head
Orestis Floros [Sat, 9 Dec 2017 20:17:48 +0000 (22:17 +0200)]
Prevent access of freed workspace in _workspace_show

The bug triggers when _workspace_show calls tree_close_internal and
old == old_focus. Ie, when the old workspace was empty and needs to be
closed but then is accessed as output_push_sticky_windows's argument:
Breakpoint 1, output_push_sticky_windows (to_focus=0x55555589c8a0) at ../../i3/src/output.c:102
102                     con_move_to_workspace(current, visible_ws, true, false, current != to_focus->parent);
(gdb) print con_exists(to_focus)
$1 = false

The access violation can also be prevented by checking if
con_exists(old_focus) but it shouldn't be necessary: the old_focus
container can only be killed when it is an empty workspace.

With --enable-sanitizers this causes i3 to exit but with
--disable-sanitizers the access violation doesn't reliably cause a crash
and the con_move_to_workspace call continues with:
(gdb) print current != to_focus->parent
$2 = 1

Since current->type is CT_FLOATING_CON and to_focus->type is
CT_WORKSPACE, in this specific case ignore_focus would always be true.
So, in this case, passing NULL instead of old_focus to
output_push_sticky_windows doesn't change the behaviour of i3.

Fixes #3075.

6 years agoMerge pull request #3076 from orestisf1993/v3-to-v4-issue
Ingo Bürk [Sat, 9 Dec 2017 18:42:30 +0000 (19:42 +0100)]
Merge pull request #3076 from orestisf1993/v3-to-v4-issue

minor V3 to v4 issues

6 years agomigrate_config: scalloc converted config 3076/head
Orestis Floros [Sat, 9 Dec 2017 17:56:54 +0000 (19:56 +0200)]
migrate_config: scalloc converted config

Prevents a false-positive error eg with config file:
set $mod Mod4
bindsym $mod+h split h
bindsym $mod+v split v

ERROR: CONFIG: Expected one of these tokens: <end>, '#', 'set ', ...
ERROR: CONFIG: Line   8:     status_command i3status
ERROR: CONFIG: Line   9: }
ERROR: CONFIG: Line  10: <BE><BE><BE><BE><BE><BE>

6 years agoFix v3 to v4 crash with a variable with longer name than value
Orestis Floros [Sat, 9 Dec 2017 17:50:43 +0000 (19:50 +0200)]
Fix v3 to v4 crash with a variable with longer name than value

6 years agoMerge pull request #3074 from orestisf1993/issue-2921
Ingo Bürk [Sat, 9 Dec 2017 14:52:01 +0000 (15:52 +0100)]
Merge pull request #3074 from orestisf1993/issue-2921

Fix workspace_show-related issues

6 years agoShow workspace in _tree_next 3074/head
Orestis Floros [Sat, 9 Dec 2017 14:28:30 +0000 (16:28 +0200)]
Show workspace in _tree_next

Fixes a regression introduced by #2980.

6 years agoRemove useless check in _tree_next
Orestis Floros [Sat, 9 Dec 2017 14:25:30 +0000 (16:25 +0200)]
Remove useless check in _tree_next

con_descend_focused on an empty workspace should return the workspace.

6 years agofloating_maybe_reassign_ws: show workspace before focusing
Orestis Floros [Sat, 9 Dec 2017 13:35:05 +0000 (15:35 +0200)]
floating_maybe_reassign_ws: show workspace before focusing

With this change i3 will correctly switch to the focused workspace.
This fixes bug with moving floating windows with 'move <direction>' or by dragging like _NET_CURRENT_DESKTOP not getting updated or 'workspace back_and_forth' not working.

Fixes #2921.

6 years agoMerge pull request #3073 from veselov/i3-3072
Ingo Bürk [Sat, 9 Dec 2017 14:34:13 +0000 (15:34 +0100)]
Merge pull request #3073 from veselov/i3-3072

Fixes #3072, Xft.dpi can be floating point

6 years agoFixes #3072, Xft.dpi can be floating point 3073/head
Pawel S. Veselov [Sat, 9 Dec 2017 14:12:25 +0000 (15:12 +0100)]
Fixes #3072, Xft.dpi can be floating point

6 years agoMerge pull request #3070 from orestisf1993/issue-3068
Ingo Bürk [Fri, 8 Dec 2017 13:29:17 +0000 (14:29 +0100)]
Merge pull request #3070 from orestisf1993/issue-3068

Add '--release' flag for bindsym in the bar block

6 years agoAdd '--release' flag for bindsym in the bar block 3070/head
Orestis Floros [Fri, 8 Dec 2017 00:23:15 +0000 (02:23 +0200)]
Add '--release' flag for bindsym in the bar block

i3bar's handle_button is modified to also handle XCB_BUTTON_RELEASE
events. During these button release events, only custom commands are
checked to avoid sending multiple workspace ipc messages.

The way this patch is implemented will allow to assign a custom command
for both the press and release of the same button:
bar {
  ...
  bindsym buttonX exec command1
  bindsym --release buttonX exec command2
}

Fixes #3068.

6 years agoMerge pull request #3066 from orestisf1993/xvfb-opt
Ingo Bürk [Tue, 5 Dec 2017 06:29:10 +0000 (07:29 +0100)]
Merge pull request #3066 from orestisf1993/xvfb-opt

complete-run.pl: accept the xvfb option from command line

6 years agocomplete-run.pl: accept the xvfb option from command line 3066/head
Orestis Floros [Mon, 4 Dec 2017 22:22:14 +0000 (00:22 +0200)]
complete-run.pl: accept the xvfb option from command line

6 years agoMerge pull request #3022 from orestisf1993/i3bar-leaks
Ingo Bürk [Sun, 3 Dec 2017 18:51:25 +0000 (19:51 +0100)]
Merge pull request #3022 from orestisf1993/i3bar-leaks

Fix i3bar leaks

6 years agoi3bar: free output data structures 3022/head
Orestis Floros [Tue, 26 Sep 2017 11:50:26 +0000 (14:50 +0300)]
i3bar: free output data structures

6 years agoMerge pull request #3065 from orestisf1993/issue-3064
Ingo Bürk [Sun, 3 Dec 2017 17:46:34 +0000 (18:46 +0100)]
Merge pull request #3065 from orestisf1993/issue-3064

Skip internal workspaces with 'move workspace to output'

6 years agoSkip internal workspaces with 'move workspace to output' 3065/head
Orestis Floros [Fri, 1 Dec 2017 14:12:43 +0000 (16:12 +0200)]
Skip internal workspaces with 'move workspace to output'

Fixes #3064.

6 years agoMerge pull request #3058 from d-e-s-o/fix-FREE
Ingo Bürk [Wed, 29 Nov 2017 07:33:27 +0000 (08:33 +0100)]
Merge pull request #3058 from d-e-s-o/fix-FREE

do not check for NULL in FREE macro

6 years agoPerform proper cleanup for signals with 'Term' action (#3057)
Daniel Mueller [Wed, 29 Nov 2017 07:29:47 +0000 (23:29 -0800)]
Perform proper cleanup for signals with 'Term' action (#3057)

Issue #3049 describes a case where terminating i3 by means of SIGTERM
causes it to leak the runtime directory and all its contents. There are
multiple issues at play: first, any cleanup handlers registered via
atexit are never invoked when a signal terminates the program (see
atexit(3)). Hence, the log SHM log cleanup performed in i3_exit is not
invoked in that case. Second, compared to the shutdown path for the
'exit' command, we do not unlink the UNIX domain socket we create,
causing it to be leaked as well. Third, a handler for SIGTERM is not
registered at all despite handle_signal claiming to be the handler for
all 'Term' signals.
This change addresses all three problems and results in a graceful exit
including cleanup to happen when we receive a signal with the default
action 'Term'. It addresses issue #3049.

6 years agoMerge pull request #3052 from d-e-s-o/remove-magic-numbers
Ingo Bürk [Wed, 29 Nov 2017 07:22:51 +0000 (08:22 +0100)]
Merge pull request #3052 from d-e-s-o/remove-magic-numbers

i3bar: replace magic numbers with more meaningful constructs

6 years agoMerge pull request #3059 from stapelberg/debuglog
Michael Stapelberg [Mon, 27 Nov 2017 07:34:10 +0000 (23:34 -0800)]
Merge pull request #3059 from stapelberg/debuglog

i3-dump-log: enable shmlog on demand

6 years agoshmlog: remote atom when disabled 3059/head
Michael Stapelberg [Sun, 26 Nov 2017 17:07:13 +0000 (18:07 +0100)]
shmlog: remote atom when disabled

6 years agoi3-dump-log: enable shmlog on demand
Michael Stapelberg [Sun, 26 Nov 2017 16:26:40 +0000 (17:26 +0100)]
i3-dump-log: enable shmlog on demand

fixes #3055

6 years agono-op refactoring: make ipc_connect find socket path
Michael Stapelberg [Sun, 26 Nov 2017 15:41:59 +0000 (16:41 +0100)]
no-op refactoring: make ipc_connect find socket path

7 years agodo not check for NULL in FREE macro 3058/head
Daniel Mueller [Thu, 23 Nov 2017 23:41:33 +0000 (15:41 -0800)]
do not check for NULL in FREE macro

free(3) is safe to invoke on a NULL pointer, in which case no action is
taken. This change adjusts the FREE macros to omit this unnecessary
check.

7 years agoMerge pull request #3050 from d-e-s-o/fix-typo
Ingo Bürk [Sat, 18 Nov 2017 18:19:25 +0000 (19:19 +0100)]
Merge pull request #3050 from d-e-s-o/fix-typo

fix typo in src/main.c

7 years agofix typo in src/main.c 3050/head
Daniel Mueller [Sat, 18 Nov 2017 17:48:38 +0000 (09:48 -0800)]
fix typo in src/main.c

7 years agoi3bar: replace magic numbers with more meaningful constructs 3052/head
Daniel Mueller [Fri, 17 Nov 2017 14:58:12 +0000 (06:58 -0800)]
i3bar: replace magic numbers with more meaningful constructs

In i3bar/src/config.c we compare string lengths agains magic numbers.
This change replaces those numbers with the lengths of the strings they
represent.

7 years agoMerge pull request #3041 from d-e-s-o/update-userguide
Ingo Bürk [Fri, 17 Nov 2017 14:09:50 +0000 (15:09 +0100)]
Merge pull request #3041 from d-e-s-o/update-userguide

docs/userguide: Correct mark/goto i3-input commands

7 years agoMerge pull request #3040 from jchook/next
Ingo Bürk [Mon, 13 Nov 2017 21:01:06 +0000 (22:01 +0100)]
Merge pull request #3040 from jchook/next

$mod+r toggles resize mode

7 years agoMerge pull request #3042 from Mayeu/kitty-terminal
Ingo Bürk [Sun, 12 Nov 2017 12:38:52 +0000 (13:38 +0100)]
Merge pull request #3042 from Mayeu/kitty-terminal

add the kitty terminal in i3-sensible-terminal

7 years agoadd the kitty terminal in i3-sensible-terminal 3042/head
Cast [Sun, 12 Nov 2017 08:48:21 +0000 (16:48 +0800)]
add the kitty terminal in i3-sensible-terminal

7 years agodocs/userguide: Correct mark/goto i3-input commands 3041/head
Daniel Mueller [Sun, 12 Nov 2017 01:06:43 +0000 (17:06 -0800)]
docs/userguide: Correct mark/goto i3-input commands

The userguide still mentions an old 'goto' command which no longer
exists and will be ignored silently (when used in the i3 config) or
causes an error to be reported (when invoked from the command line).
This change updates the userguide to correct this problem. In addition
to that it also updates the i3-input command shown to no longer use the
deprecated -p flag but -F instead.

7 years agoBugfix: avert endless loop on unexpected EOF at ipc messages (#3021)
xzfc [Thu, 9 Nov 2017 19:18:23 +0000 (02:18 +0700)]
Bugfix: avert endless loop on unexpected EOF at ipc messages (#3021)

Fix freeze on invalid ipc commands like

    echo -n $'i3-ipc\0\0\0\xa\0\0\0\0focus left' | socat - `i3 --get-socketpath`

Also, treat incomplete headers as IPC violation. Example of incomplete header:

    echo -n i3-ip | socat - `i3 --get-socketpath`

7 years agoMerge pull request #2980 from orestisf1993/issue-1160-pr
Ingo Bürk [Sun, 5 Nov 2017 16:42:31 +0000 (17:42 +0100)]
Merge pull request #2980 from orestisf1993/issue-1160-pr

Use con_descend_focused for workspaces in _tree_next

7 years agoMerge pull request #3030 from tylerbrazier/next
Ingo Bürk [Sun, 5 Nov 2017 16:37:53 +0000 (17:37 +0100)]
Merge pull request #3030 from tylerbrazier/next

config: use ascii single quote

7 years agoMerge pull request #3023 from orestisf1993/issue-2816
Ingo Bürk [Sun, 5 Nov 2017 16:27:48 +0000 (17:27 +0100)]
Merge pull request #3023 from orestisf1993/issue-2816

Add support to resize floating container in percentage

7 years ago$mod+r toggles resize mode 3040/head
Wes Roberts [Tue, 31 Oct 2017 01:19:12 +0000 (21:19 -0400)]
$mod+r toggles resize mode

7 years agoconfig: use ascii single quote 3030/head
Tyler Brazier [Wed, 25 Oct 2017 20:26:44 +0000 (15:26 -0500)]
config: use ascii single quote

The unicode quote doesn’t render very well in terminals that don't
support unicode

7 years agoMerge pull request #3028 from stapelberg/flakes2
Michael Stapelberg [Wed, 25 Oct 2017 06:56:02 +0000 (08:56 +0200)]
Merge pull request #3028 from stapelberg/flakes2

Eliminate causes of flakyness

7 years agoMove XCB event handling into xcb_prepare_cb. 3028/head
Michael Stapelberg [Tue, 3 Oct 2017 08:03:29 +0000 (10:03 +0200)]
Move XCB event handling into xcb_prepare_cb.

Previously, we used ev_check watchers, which are executed at the beginning of an
event loop iteration.

This was problematic if one of the handlers happened to fill the XCB event
queue, e.g. by reading a reply from X11 and an event happened in the meantime.

In that situation, we would hand control to the event loop, entirely ignoring
the pending event. This would manifest itself as a 1-minute hang,
reproducible (sometimes) in the i3 testsuite.

issue #2790 describes an instance of this issue in i3bar, and we fixed that by
changing the watcher priority to run last. Handling events in xcb_prepare_cb has
the same effect, as ev_prepare watchers are run just before the event loop goes
to sleep.

7 years agot/525: remove flaky focus check
Michael Stapelberg [Tue, 3 Oct 2017 15:16:34 +0000 (17:16 +0200)]
t/525: remove flaky focus check

7 years agoi3test: blockingly wait for events
Michael Stapelberg [Tue, 3 Oct 2017 08:02:41 +0000 (10:02 +0200)]
i3test: blockingly wait for events

…as polling the xcb file descriptor directly is not reliable.

7 years agoskip ConfigureNotify events with --force_xinerama
Michael Stapelberg [Tue, 3 Oct 2017 08:00:55 +0000 (10:00 +0200)]
skip ConfigureNotify events with --force_xinerama

This prevents an i3 crash under certain conditions when running the tests.

7 years agoi3test: reliably warp the pointer to (0, 0) before tests start
Michael Stapelberg [Tue, 3 Oct 2017 08:00:05 +0000 (10:00 +0200)]
i3test: reliably warp the pointer to (0, 0) before tests start

7 years agotests: add sync_with_i3 after open_window
Michael Stapelberg [Tue, 3 Oct 2017 07:58:10 +0000 (09:58 +0200)]
tests: add sync_with_i3 after open_window

We need to set dont_map => 1 on the sync window to prevent an endless loop.

Further, t/219-ipc-window-focus.t made assumptions about windows being named
incrementally, and that assumption is broken by the sync window opened by the
first sync_with_i3 call from open_window, so use the more reliable ->name.

7 years ago_NET_ACTIVE_WINDOW: invalidate focus to force SetInputFocus call (#3027)
Michael Stapelberg [Sun, 22 Oct 2017 20:16:15 +0000 (22:16 +0200)]
_NET_ACTIVE_WINDOW: invalidate focus to force SetInputFocus call (#3027)

The sender of the _NET_ACTIVE_WINDOW client message might know better when to
set focus than i3, as i3 does not know about unmanaged (override_redirect=1)
windows.

related to https://github.com/i3/i3lock/issues/35

7 years agoAdd support to resize floating container in percentage 3023/head
Orestis Floros [Tue, 17 Oct 2017 23:04:42 +0000 (02:04 +0300)]
Add support to resize floating container in percentage

resize set is modified to accept both 'px' and 'ppt' height and width.

Fixes #2816.

7 years agoi3bar: avoid possible va_args leak
Orestis Floros [Tue, 26 Sep 2017 09:29:40 +0000 (12:29 +0300)]
i3bar: avoid possible va_args leak

7 years agoi3bar: free fontname
Orestis Floros [Tue, 26 Sep 2017 09:30:03 +0000 (12:30 +0300)]
i3bar: free fontname