]> git.sur5r.net Git - i3/i3/log
i3/i3
5 years agochild_handle_button: Call only if x >= offset 3671/head
Orestis Floros [Fri, 29 Mar 2019 14:10:19 +0000 (16:10 +0200)]
child_handle_button: Call only if x >= offset

c2a1b6e9 was a bit overzealous, other actions should be executed if the
button was pressed after the workspace buttons but before the
statusline.

Also, should we allow other actions everywhere in the bar if click
events are disabled by the child?

5 years agoMerge pull request #3669 from orestisf1993/config
Ingo Bürk [Fri, 29 Mar 2019 13:15:53 +0000 (14:15 +0100)]
Merge pull request #3669 from orestisf1993/config

Allow checking for duplicate bindings with -C

5 years agoAllow checking for duplicate bindings with -C 3669/head
Orestis Floros [Fri, 29 Mar 2019 00:36:24 +0000 (02:36 +0200)]
Allow checking for duplicate bindings with -C

- Having both parse_configuration and parse_file is excessive now
- We detect if we are parsing only by checking if conn is NULL, not with
use_nagbar
- font.pattern needs to be set to NULL because it is freed in
free_font()

Fixes #3660

5 years agoMove code clearing the config to a new function
Orestis Floros [Fri, 29 Mar 2019 09:41:27 +0000 (11:41 +0200)]
Move code clearing the config to a new function

5 years agoload_configuration: Remove conn argument
Orestis Floros [Fri, 29 Mar 2019 00:15:49 +0000 (02:15 +0200)]
load_configuration: Remove conn argument

5 years agoUpdate configuration.h
Orestis Floros [Thu, 28 Mar 2019 23:59:26 +0000 (01:59 +0200)]
Update configuration.h

- parse_configuration was mentioning outdated config file order
- kill_configerror_nagbar was not used anywhere

5 years agoMerge pull request #3666 from orestisf1993/full_render_width
Ingo Bürk [Thu, 28 Mar 2019 20:04:35 +0000 (21:04 +0100)]
Merge pull request #3666 from orestisf1993/full_render_width

handle_button: Fix issues with clicks on statusline

5 years agoMerge pull request #3667 from orestisf1993/etc/config
Ingo Bürk [Thu, 28 Mar 2019 20:03:35 +0000 (21:03 +0100)]
Merge pull request #3667 from orestisf1993/etc/config

etc/config: Mention ~/.config/i3/config

5 years agoMerge pull request #3665 from lasers/add-markup
Ingo Bürk [Thu, 28 Mar 2019 20:02:55 +0000 (21:02 +0100)]
Merge pull request #3665 from lasers/add-markup

docs/i3bar-protocol: add markup to all possible entries example

5 years agoetc/config: Mention ~/.config/i3/config 3667/head
Orestis Floros [Thu, 28 Mar 2019 19:29:09 +0000 (21:29 +0200)]
etc/config: Mention ~/.config/i3/config

5 years agohandle_button: Introduce child_handle_button 3666/head
Orestis Floros [Thu, 28 Mar 2019 18:55:32 +0000 (20:55 +0200)]
handle_button: Introduce child_handle_button

Also fixes an issue where action would be called if the button press was
on a separator. For example, if a user scrolled on a separator, the
workspace would change.

Applies to --release commands as well.

5 years agohandle_button: Use full render width for calculations
Orestis Floros [Thu, 28 Mar 2019 17:57:32 +0000 (19:57 +0200)]
handle_button: Use full render width for calculations

Fixes #3664

Also, click events' width will now always be >= min_width.

5 years agodocs/i3bar-protocol: add markup to all possible entries example 3665/head
lasers [Thu, 28 Mar 2019 16:42:09 +0000 (11:42 -0500)]
docs/i3bar-protocol: add markup to all possible entries example

5 years agoMerge pull request #3659 from orestisf1993/git-log-to-rev-list-3656
Ingo Bürk [Fri, 22 Mar 2019 13:53:59 +0000 (14:53 +0100)]
Merge pull request #3659 from orestisf1993/git-log-to-rev-list-3656

Use git plumbing commands to get the I3_VERSION

5 years agoUse git plumbing commands to get the I3_VERSION 3659/head
Orestis Floros [Fri, 22 Mar 2019 13:06:23 +0000 (15:06 +0200)]
Use git plumbing commands to get the I3_VERSION

Fixes #3656

5 years agoMerge pull request #3658 from orestisf1993/workspace_move_to_output
Ingo Bürk [Fri, 22 Mar 2019 10:18:54 +0000 (11:18 +0100)]
Merge pull request #3658 from orestisf1993/workspace_move_to_output

Workspace move to output

5 years agoworkspace_move_to_output: Avoid operations when workspace already at destination 3658/head
Orestis Floros [Thu, 21 Mar 2019 22:55:30 +0000 (00:55 +0200)]
workspace_move_to_output: Avoid operations when workspace already at destination

Closes #3635.
Probably the bug can still happen when a tree_close_internal happens
inside a workspace_show but modifying the code to avoid them seems to
not be worth it.

5 years agocmd_focus_output: Avoid assertion crash
Orestis Floros [Thu, 21 Mar 2019 21:57:24 +0000 (23:57 +0200)]
cmd_focus_output: Avoid assertion crash

Happened when the command criteria didn't match any windows. For
example: `[con_mark=doesnotexist] focus output left`.

5 years agoMerge pull request #3657 from jeffhuxen/next
Ingo Bürk [Fri, 22 Mar 2019 08:40:08 +0000 (09:40 +0100)]
Merge pull request #3657 from jeffhuxen/next

Added note which config directives could be used at runtime

5 years agoMerge pull request #3643 from Iskustvo/next
Ingo Bürk [Fri, 22 Mar 2019 08:39:37 +0000 (09:39 +0100)]
Merge pull request #3643 from Iskustvo/next

Adding new IPC library(i3-ipc++) in documents.

5 years agoMerge pull request #3655 from orestisf1993/workspace_output_spaces
Ingo Bürk [Fri, 22 Mar 2019 08:38:02 +0000 (09:38 +0100)]
Merge pull request #3655 from orestisf1993/workspace_output_spaces

cfg_workspace: Accept outputs with spaces again

5 years agoget_output_for_con: Assert result != NULL
Orestis Floros [Thu, 21 Mar 2019 21:51:57 +0000 (23:51 +0200)]
get_output_for_con: Assert result != NULL

- The result from con_get_output was always not NULL because
con_get_output asserts so
- get_output_by_name should always be able to get an output from the
corresponding container
- workspace_move_to_output doesn't return bool anymore since it can't
fail

5 years agoworkspace_move_to_output: Make stylistic changes
Orestis Floros [Thu, 21 Mar 2019 20:48:39 +0000 (22:48 +0200)]
workspace_move_to_output: Make stylistic changes

5 years agoAdded to note to clarify which config directives could be used at runtime. 3657/head
Jeffrey Huxen [Thu, 21 Mar 2019 22:07:23 +0000 (17:07 -0500)]
Added to note to clarify which config directives could be used at runtime.

5 years agoAdded new IPC library(i3-ipc++) in documents. 3643/head
Iskustvo [Mon, 11 Mar 2019 22:45:35 +0000 (23:45 +0100)]
Added new IPC library(i3-ipc++) in documents.

5 years agocfg_workspace: Accept outputs with spaces again 3655/head
Orestis Floros [Thu, 21 Mar 2019 17:29:56 +0000 (19:29 +0200)]
cfg_workspace: Accept outputs with spaces again

This is a regression from bce088679.

An other way to fix this would be to concatenate strings inside the
strtok loop when an output starts with a double quote but I'd rather
let the parser do the word splitting.

Fixes #3646

5 years agoMerge pull request #3654 from chrhasse/next
Ingo Bürk [Thu, 21 Mar 2019 07:44:13 +0000 (08:44 +0100)]
Merge pull request #3654 from chrhasse/next

Add explicit reference to glib2 in automake

5 years agoAdd explicit reference to glib2 to automake 3654/head
Christopher Hasse [Thu, 21 Mar 2019 04:51:13 +0000 (23:51 -0500)]
Add explicit reference to glib2 to automake

5 years agoMerge pull request #3637 from i3/stapelberg-patch-1
Orestis [Tue, 19 Mar 2019 09:16:30 +0000 (11:16 +0200)]
Merge pull request #3637 from i3/stapelberg-patch-1

x.c: correctly free con->frame_buffer in _x_con_kill

5 years agox.c: correctly free con->frame_buffer in _x_con_kill stapelberg-patch-1 3637/head
Michael Stapelberg [Thu, 7 Mar 2019 13:58:53 +0000 (14:58 +0100)]
x.c: correctly free con->frame_buffer in _x_con_kill

This fixes a crash which I could not reproduce in a testcase with reasonable effort, but the user reported the fix works.

Compare with src/x.c:946.

fixes #3554
fixes #3645

5 years agotravis: remove deprecated docker login -e flag (#3651)
Michael Stapelberg [Tue, 19 Mar 2019 08:49:59 +0000 (09:49 +0100)]
travis: remove deprecated docker login -e flag (#3651)

5 years agoMerge pull request #3640 from orestisf1993/partial-ucs2
Orestis [Tue, 19 Mar 2019 08:36:52 +0000 (10:36 +0200)]
Merge pull request #3640 from orestisf1993/partial-ucs2

convert_utf8_to_ucs2: Allow partial conversion

5 years agoconvert_utf8_to_ucs2: Allow partial conversion 3640/head
Orestis Floros [Fri, 8 Mar 2019 17:16:39 +0000 (19:16 +0200)]
convert_utf8_to_ucs2: Allow partial conversion

Fixes #3638.

5 years agofix travis build by switching away from deprecated-2017Q3 (#3650)
Michael Stapelberg [Tue, 19 Mar 2019 08:30:04 +0000 (09:30 +0100)]
fix travis build by switching away from deprecated-2017Q3 (#3650)

Also remove “sudo: false” as per
https://blog.travis-ci.com/2018-11-19-required-linux-infrastructure-migration

5 years agoMerge pull request #3614 from NilsIrl/next
Ingo Bürk [Mon, 11 Mar 2019 18:38:10 +0000 (19:38 +0100)]
Merge pull request #3614 from NilsIrl/next

Add proper return code for i3-msg

5 years agoMerge pull request #3632 from orestisf1993/workspace_init
Ingo Bürk [Sat, 23 Feb 2019 20:52:22 +0000 (21:52 +0100)]
Merge pull request #3632 from orestisf1993/workspace_init

create_workspace_on_output: send workspace init event

5 years agocreate_workspace_on_output: send workspace init event 3632/head
Orestis Floros [Fri, 22 Feb 2019 17:41:30 +0000 (19:41 +0200)]
create_workspace_on_output: send workspace init event

Fixes #3595
Like the issue mentions:
> instead of the newly created workspace (not referenced by variable
> here) the `"init"` event is fired with the current workspace (`ws`).

Plus, there was another issue where duplicate workspace init events
where being sent because of workspace_get().

304-ipc-workspace-init.t: Subtest "move workspace to output" fails with
current next.

Fixes #3631
No event was being sent here:
https://github.com/i3/i3/blob/2d6e09a66ad9b3e01588c515ae66476de8903754/src/randr.c#L487

533-randr15.t: I confirmed that SKIP still works if the xrandr command
fails.
Added test fails with current next.

5 years agoAdd proper return code for i3-msg 3614/head
Nils ANDRÉ-CHANG [Sat, 9 Feb 2019 14:22:08 +0000 (14:22 +0000)]
Add proper return code for i3-msg

5 years agoi3-dump-log: make log message a little more clear (#3618)
Michael Stapelberg [Tue, 12 Feb 2019 08:22:26 +0000 (09:22 +0100)]
i3-dump-log: make log message a little more clear (#3618)

This came up when trying to debug an issue.

5 years agoMerge pull request #3607 from vacuus/3546-fix-misleading-doc
Ingo Bürk [Fri, 1 Feb 2019 07:24:34 +0000 (08:24 +0100)]
Merge pull request #3607 from vacuus/3546-fix-misleading-doc

Clear up confusion between event and reply types.

5 years agoReword documentation to make clear the difference in enumeration between event and... 3607/head
Alejandro Angulo [Fri, 1 Feb 2019 07:00:00 +0000 (23:00 -0800)]
Reword documentation to make clear the difference in enumeration between event and reply types.

5 years agocmd_exit: Let i3_exit handle shutdown (#3600)
Orestis [Tue, 22 Jan 2019 20:35:44 +0000 (22:35 +0200)]
cmd_exit: Let i3_exit handle shutdown (#3600)

- __lsan_do_leak_check() will terminate the process, so move it to the
end of the function.
- ev_loop_destroy() must be called after ipc_shutdown() because the
latter calls ev_ functions.

Fixes #3599

5 years agoMerge pull request #3590 from nejni-marji/next
Ingo Bürk [Fri, 18 Jan 2019 22:37:09 +0000 (23:37 +0100)]
Merge pull request #3590 from nejni-marji/next

Make binding modes case sensitive

closes #3587

5 years agoUpdate userguide to describe border styles better
Jonathan Woodlief [Fri, 18 Jan 2019 22:35:47 +0000 (17:35 -0500)]
Update userguide to describe border styles better

Describe the difference between normal and pixel titlebars better

Thanks to @JonWoodlief

5 years agoMake binding modes case sensitive 3590/head
nejni-marji [Thu, 17 Jan 2019 01:32:24 +0000 (19:32 -0600)]
Make binding modes case sensitive

5 years agoUse ipc queue for all messages (#3585)
Orestis [Sat, 12 Jan 2019 12:13:03 +0000 (14:13 +0200)]
Use ipc queue for all messages (#3585)

I was able to reproduce #3579 in Linux by running:
`sudo sysctl net.core.wmem_default=10000`

If a subscription message was too big to be sent at once, it was
possible to break a client by sending a reply to an other message sent
by the client. Eg:
- Write 8192 out of 11612 bytes of a workspace event.
- Blockingly write the reply to a workspace change message.
- Write the rest 3420 bytes of the workspace event.

This commit fixes this by utilizing the ipc queue for all types of
writes.

ipc_receive_message can only be called from a callback started in
ipc_new_client. This callback uses the same file descriptor with the
client also created in ipc_new_client. When the client is deleted, the
read callback is now also stopped. Thus, we can assume that whenever
ipc_receive_message is called, the corresponding client should still
exist.

- ipc_client now contains pointers to both write and read watchers. When
freed, a client will stop both of them.
- IPC_HANDLERs now work with ipc_clients instead of fds.

Fixes #3579.

5 years agoMerge pull request #3584 from orestisf1993/popup-SIGSEGV
Ingo Bürk [Fri, 11 Jan 2019 13:01:56 +0000 (14:01 +0100)]
Merge pull request #3584 from orestisf1993/popup-SIGSEGV

Fix crash with popups when fullscreen is non-leaf

5 years agoFix crash with popups when fullscreen is non-leaf 3584/head
Orestis Floros [Fri, 11 Jan 2019 12:44:39 +0000 (14:44 +0200)]
Fix crash with popups when fullscreen is non-leaf

Introduced in b3e69ed12

Fixes #3582

5 years agoMerge pull request #3574 from pclouds/no-newline-in-errx
Orestis [Wed, 2 Jan 2019 12:30:17 +0000 (14:30 +0200)]
Merge pull request #3574 from pclouds/no-newline-in-errx

Remove \n from errx and die messages

5 years agoRemove \n from errx and die messages 3574/head
Nguyễn Thái Ngọc Duy [Wed, 2 Jan 2019 12:05:18 +0000 (19:05 +0700)]
Remove \n from errx and die messages

errx() already appends \n internally. "\n" in the error message will
result in a blank line after the message. die() is just a wrapper around
errx() so it receives the same treatment.

5 years agoMerge pull request #3563 from CyberShadow/doc-mark-todo
Ingo Bürk [Sun, 16 Dec 2018 08:36:02 +0000 (09:36 +0100)]
Merge pull request #3563 from CyberShadow/doc-mark-todo

userguide: Un-hide a TODO block completed in 2011

5 years agoMerge pull request #3568 from orestisf1993/floating_reposition-render_con
Ingo Bürk [Sun, 16 Dec 2018 08:33:25 +0000 (09:33 +0100)]
Merge pull request #3568 from orestisf1993/floating_reposition-render_con

Fix: render_con shows floating containers on wrong workspace

5 years agoFix: render_con shows floating containers on wrong workspace 3568/head
Orestis Floros [Sun, 16 Dec 2018 01:27:09 +0000 (03:27 +0200)]
Fix: render_con shows floating containers on wrong workspace

After 204eefc. Alternative fix:
    diff --git a/src/floating.c b/src/floating.c
    index f5c61782..6dd79668 100644
    --- a/src/floating.c
    +++ b/src/floating.c
    @@ -954,7 +954,7 @@ bool floating_reposition(Con *con, Rect newrect) {
             con->scratchpad_state = SCRATCHPAD_CHANGED;

         /* Workspace change will already result in a tree_render. */
    -    if (!reassigned) {
    +    if (!reassigned && workspace_is_visible(con_get_workspace(con))) {
             render_con(con);
             x_push_node(con);
         }
but I don't think that the extra complexity is worth it.

Change in handlers.c because of d2d6d6e0 where the bug also appears.

Fixes #3567

5 years agoMerge pull request #3566 from orestisf1993/focus-events
Ingo Bürk [Sat, 15 Dec 2018 17:29:46 +0000 (18:29 +0100)]
Merge pull request #3566 from orestisf1993/focus-events

Focus events

5 years agoInvalidate last_focused when focusing the EWMH support window 3566/head
Orestis Floros [Fri, 14 Dec 2018 18:39:34 +0000 (20:39 +0200)]
Invalidate last_focused when focusing the EWMH support window

Fixes #3562

5 years agoFix: killing unfocused window shouldn't produce focus event
Orestis Floros [Fri, 14 Dec 2018 18:37:29 +0000 (20:37 +0200)]
Fix: killing unfocused window shouldn't produce focus event

5 years agoUpdate tree_close_internal documentation in tree.h
Orestis Floros [Fri, 14 Dec 2018 21:35:58 +0000 (23:35 +0200)]
Update tree_close_internal documentation in tree.h

After f90840337

5 years agouserguide: Un-hide a TODO block completed in 2011 3563/head
Vladimir Panteleev [Fri, 14 Dec 2018 13:16:11 +0000 (13:16 +0000)]
userguide: Un-hide a TODO block completed in 2011

The userguide contained a commented-out section for marks, which
included the line:

> TODO: make i3-input replace %s

The line was added in a26a11c6099f82fc9fd8b87f8bda128408b4f7c9 (May
2011), at which point i3-input did not have a -F switch. The switch
was added only in 1737a78fcd8025e11398dbcf5acd65c6a07ae86d (September
2011), but the documentation was never updated to enable the
commented-out examples.

5 years agoMerge pull request #3560 from CyberShadow/doc-mark-replace
Orestis [Fri, 14 Dec 2018 08:39:49 +0000 (10:39 +0200)]
Merge pull request #3560 from CyberShadow/doc-mark-replace

userguide: Document mark --replace flag

5 years agouserguide: Document mark --replace flag 3560/head
Vladimir Panteleev [Fri, 14 Dec 2018 08:29:23 +0000 (08:29 +0000)]
userguide: Document mark --replace flag

- Explicitly document --replace, which was previously only mentioned
  in the command syntax.

- Improve wording: "a window can only have one mark" is slightly
  misleading because it appears to describe the limitation as a
  property of the model, whereas this actually pertains the mark
  command.

5 years agoMerge pull request #3557 from orestisf1993/regress-float-move
Ingo Bürk [Wed, 12 Dec 2018 20:02:41 +0000 (21:02 +0100)]
Merge pull request #3557 from orestisf1993/regress-float-move

attach_to_workspace: set new parent before tree_render

5 years agoattach_to_workspace: set new parent before tree_render 3557/head
Orestis Floros [Wed, 12 Dec 2018 17:09:39 +0000 (19:09 +0200)]
attach_to_workspace: set new parent before tree_render

on_remove_child calls tree_close_internal which calls tree_render and
the tree is in an invalid state if con->parent still points to the old
parent.

Fixes #3556

5 years agoMerge pull request #3510 from orestisf1993/tree.t
Orestis [Wed, 12 Dec 2018 11:19:43 +0000 (13:19 +0200)]
Merge pull request #3510 from orestisf1993/tree.t

Introduce cmp_tree test function

5 years agoIntroduce cmp_tree test function 3510/head
Orestis Floros [Tue, 6 Nov 2018 13:03:06 +0000 (15:03 +0200)]
Introduce cmp_tree test function

Related to #3503

5 years agoMerge pull request #3551 from xzfc/baf-restart
Ingo Bürk [Tue, 11 Dec 2018 19:53:08 +0000 (20:53 +0100)]
Merge pull request #3551 from xzfc/baf-restart

Preserve back_and_forth during restart

5 years agoPreserve back_and_forth during restart 3551/head
Albert Safin [Mon, 10 Dec 2018 14:51:30 +0000 (21:51 +0700)]
Preserve back_and_forth during restart

Add new key "previous_workspace_name" to the json dump of the root container.

5 years agoMerge pull request #3553 from stapelberg/hidpi
Ingo Bürk [Mon, 10 Dec 2018 17:34:51 +0000 (18:34 +0100)]
Merge pull request #3553 from stapelberg/hidpi

userguide: add a section about hidpi displays

5 years agouserguide: add a section about hidpi displays 3553/head
Michael Stapelberg [Mon, 10 Dec 2018 17:18:23 +0000 (18:18 +0100)]
userguide: add a section about hidpi displays

This is a continuation of #3438.

5 years agoMerge pull request #3549 from xzfc/small-fixes
Ingo Bürk [Sun, 9 Dec 2018 17:13:13 +0000 (18:13 +0100)]
Merge pull request #3549 from xzfc/small-fixes

Small fixes

5 years agoMerge pull request #3550 from tlercher/3535-display-check
Ingo Bürk [Sun, 9 Dec 2018 17:10:42 +0000 (18:10 +0100)]
Merge pull request #3550 from tlercher/3535-display-check

Fix #3535 - Check for DISPLAY when requesting version information

5 years agoFix #3535 - Check for DISPLAY when requesting version information 3550/head
TAL [Sun, 9 Dec 2018 00:32:34 +0000 (01:32 +0100)]
Fix #3535 - Check for DISPLAY when requesting version information

5 years agoCode style: fix misaligned and misindented comments 3549/head
Albert Safin [Sun, 9 Dec 2018 00:06:29 +0000 (07:06 +0700)]
Code style: fix misaligned and misindented comments

5 years agoRemove unused con_get_next()
Albert Safin [Sat, 8 Dec 2018 23:15:53 +0000 (06:15 +0700)]
Remove unused con_get_next()

This function has unused for a long time since the commit
8f4b9ddaa43ae61932fd702ad7178c2b4e07cfb9.

5 years agoRemove unnecessary code in route_click()
Albert Safin [Thu, 6 Dec 2018 15:39:57 +0000 (22:39 +0700)]
Remove unnecessary code in route_click()

This case is handled by resize_find_tiling_participants() anyway which
is introduced in the commit dbec5eb90585bc22752331f51d8a6bc90d21889c.

5 years agocommands.c: Add missing error replies
Albert Safin [Sat, 8 Dec 2018 12:20:55 +0000 (19:20 +0700)]
commands.c: Add missing error replies

5 years agoMerge pull request #3547 from stapelberg/conn
Orestis [Sat, 8 Dec 2018 12:49:04 +0000 (14:49 +0200)]
Merge pull request #3547 from stapelberg/conn

Bugfix: use restore_conn, not conn

5 years agoBugfix: use restore_conn, not conn 3547/head
Michael Stapelberg [Sat, 8 Dec 2018 12:31:53 +0000 (13:31 +0100)]
Bugfix: use restore_conn, not conn

Using the wrong X11 connection breaks the libev event handling model:
xcb_flush() must be called immediately before handing control to libev.

Before this fix:

1. xcb_prepare_cb would read and flush conn
2. restore_xcb_prepare_cb would read and flush restore_conn,
   BUT also inadvertantly call xcb_flush(conn), resulting in new
   events being filled into the XCB event queue
3. libev waits for new events
4. after 1 minute, libev times out and the events are processed

Diagnosed using strace on testcases/complete-run.pl.

related to commit 0d8b6714e39af81cbd6f4fbad500872a715dea24

related to #3510

5 years agoMerge pull request #3541 from orestisf1993/title_align
Orestis [Wed, 5 Dec 2018 11:09:09 +0000 (13:09 +0200)]
Merge pull request #3541 from orestisf1993/title_align

Apply title_align to non-leaf containers

5 years agoApply title_align to non-leaf containers 3541/head
Orestis Floros [Tue, 4 Dec 2018 18:50:32 +0000 (20:50 +0200)]
Apply title_align to non-leaf containers

Additionally, marks will now display for non-leaf containers.

Fixes #3540.

5 years agoMerge pull request #3514 from xzfc/2742-shape
Ingo Bürk [Mon, 3 Dec 2018 19:16:47 +0000 (20:16 +0100)]
Merge pull request #3514 from xzfc/2742-shape

Add input and bounding shapes support (#2742)

5 years agoAdd input and bounding shapes support (#2742) 3514/head
Albert Safin [Thu, 8 Nov 2018 23:19:08 +0000 (06:19 +0700)]
Add input and bounding shapes support (#2742)

Basic idea: if the window has a shape, set the parent container shape as
the union of the window shape and the shape of the frame borders.

Co-authored-by: Uli Schlachter <psychon@znc.in>
5 years agoLog window id in state_for_frame()
Albert Safin [Fri, 9 Nov 2018 11:43:25 +0000 (18:43 +0700)]
Log window id in state_for_frame()

5 years agoswitch to clang-format-6.0 (#3533)
Michael Stapelberg [Wed, 28 Nov 2018 16:38:16 +0000 (17:38 +0100)]
switch to clang-format-6.0 (#3533)

5 years agoMerge pull request #3432 from orestisf1993/aspect-ratio
Ingo Bürk [Sat, 17 Nov 2018 15:08:22 +0000 (16:08 +0100)]
Merge pull request #3432 from orestisf1993/aspect-ratio

 Fix aspect ratio bugs

5 years agoMerge pull request #3524 from orestisf1993/regress-randr
Ingo Bürk [Thu, 15 Nov 2018 11:57:59 +0000 (12:57 +0100)]
Merge pull request #3524 from orestisf1993/regress-randr

randr.c: Fix regression with focusing NULL container

5 years agorandr.c: Fix regression with focusing NULL container 3524/head
Orestis Floros [Thu, 15 Nov 2018 11:48:14 +0000 (13:48 +0200)]
randr.c: Fix regression with focusing NULL container

This was introduced in db3b9e41874400958cf85b461a5d1ff04a398fa3 which
removed the NULL check for next.

Fixes #3523.

5 years agoMerge pull request #3521 from c-edw/feature/StripWorkspaceDocs
Ingo Bürk [Tue, 13 Nov 2018 09:24:11 +0000 (10:24 +0100)]
Merge pull request #3521 from c-edw/feature/StripWorkspaceDocs

Update userguide docs for strip_workspace_*.

5 years agoUpdate userguide docs for strip_workspace_*. 3521/head
Connor E [Tue, 13 Nov 2018 08:46:16 +0000 (08:46 +0000)]
Update userguide docs for strip_workspace_*.

5 years agoRe-render floating cons alone when possible 3432/head
Orestis Floros [Mon, 1 Oct 2018 23:15:59 +0000 (02:15 +0300)]
Re-render floating cons alone when possible

5 years agorender_con: Get rid of render_fullscreen argument
Orestis Floros [Mon, 1 Oct 2018 23:13:51 +0000 (02:13 +0300)]
render_con: Get rid of render_fullscreen argument

Only true for the fullscreen container and doesn't affect any of its
children. Thus, we can get the same result by checking
->fullscreen_mode.

5 years agoFix aspect ratio bugs
Orestis Floros [Mon, 1 Oct 2018 16:47:33 +0000 (19:47 +0300)]
Fix aspect ratio bugs

- ICCCM says: > If a base size is not provided, the minimum size is to
be used in its place and vice versa.
i3 didn't obey the "vice versa" part. Min size and base size are both
saved without replacements in window_update_normal_hints,
floating_check_size makes the needed replacements if either was not
provided.
- Aspect ratio is now saved correctly in manage_window because
window_update_normal_hints is called.
- i3 didn't save the aspect ratio if the window conformed the given
aspect ratio range when handle_normal_hints was called. If the window
was resized to a size outside of the given bounds, i3 didn't correct it.
- Aspect ratio now affects only tiling windows, like the rest of the
normal size hints
- The aspect ratio calculation is now done without a loop

A real life example of how these changes affect the workflow:
An mpv window, when playing a video, sets its min == max aspect ratio
during mapping. i3 ignored these hints. When resized, the window's
aspect ratio was not preserved. With this commit, resizing floating mpv
windows will always preserve the aspect ratio.

5 years agofloating_resize: Use uint32_t
Orestis Floros [Mon, 1 Oct 2018 22:52:31 +0000 (01:52 +0300)]
floating_resize: Use uint32_t

5 years agofloating_check_size: Use window variable
Orestis Floros [Mon, 1 Oct 2018 12:42:53 +0000 (15:42 +0300)]
floating_check_size: Use window variable

5 years agoMerge pull request #3484 from xzfc/3476-export-i3sock
Ingo Bürk [Sat, 10 Nov 2018 21:12:01 +0000 (22:12 +0100)]
Merge pull request #3484 from xzfc/3476-export-i3sock

Export I3SOCK

5 years agoMerge pull request #3397 from orestisf1993/randr-enable-disable
Ingo Bürk [Sat, 10 Nov 2018 20:56:34 +0000 (21:56 +0100)]
Merge pull request #3397 from orestisf1993/randr-enable-disable

Fix bugs in enabling & disabling randr outputs

5 years agoMerge pull request #3516 from orestisf1993/truncate-utf8
Ingo Bürk [Fri, 9 Nov 2018 20:01:57 +0000 (21:01 +0100)]
Merge pull request #3516 from orestisf1993/truncate-utf8

Truncate wm_name utf8 strings to first zero byte

5 years agoTruncate wm_name utf8 strings to first zero byte 3516/head
Orestis Floros [Fri, 9 Nov 2018 17:41:31 +0000 (19:41 +0200)]
Truncate wm_name utf8 strings to first zero byte

Fixes #3515

5 years agoMerge pull request #3511 from aksel/247-gaps-resize-fix
Orestis [Thu, 8 Nov 2018 22:31:06 +0000 (00:31 +0200)]
Merge pull request #3511 from aksel/247-gaps-resize-fix

For resizing, convert pixel diff to percentage, based on parent.

5 years agoFor resizing, convert pixel diff to percentage, based on parent. 3511/head
aksel [Wed, 7 Nov 2018 21:49:04 +0000 (22:49 +0100)]
For resizing, convert pixel diff to percentage, based on parent.

Previously, it first calculated one of the containers' next percentage, and then subtracted the previous percentage to find the actual change.

Now it directly calculates the change, and subtracts and adds the change to the two affected containers.

Added util function con_rect_size_in_orientation.

Removed px_resize_to_percent; inlined, using con_rect_size_in_orientation.

Also, prematurely return when pixel diff is 0, as no action is necessary.

This is related to [this issue on i3-gaps](https://github.com/Airblader/i3/issues/247).

5 years agoMerge pull request #2954 from orestisf1993/swap-for-floating
Ingo Bürk [Wed, 7 Nov 2018 13:13:41 +0000 (13:13 +0000)]
Merge pull request #2954 from orestisf1993/swap-for-floating

Rewrite con_swap to work only with queue operations