]> git.sur5r.net Git - i3/i3/log
i3/i3
6 years agoMerge pull request #3452 from orestisf1993/title_align
Ingo Bürk [Tue, 23 Oct 2018 14:41:54 +0000 (16:41 +0200)]
Merge pull request #3452 from orestisf1993/title_align

Add title_align config directive

6 years agoMerge pull request #3451 from orestisf1993/tray
Ingo Bürk [Tue, 23 Oct 2018 13:45:45 +0000 (15:45 +0200)]
Merge pull request #3451 from orestisf1993/tray

Close & reopen tray selwin when needed

6 years agoClose & reopen tray selwin when needed 3451/head
Orestis Floros [Thu, 11 Oct 2018 20:19:21 +0000 (23:19 +0300)]
Close & reopen tray selwin when needed

Fixes #1329
Fixes #3317 (duplicate)
Examples where the tray "disappeared":
- Start without a "tray_output", reload config with "tray_output none",
remove "tray_output none" and reload.
- Start with "tray_output primary" (or "tray_output <output>"), disable
the primary output and then reconnect it.

Fixes #2010
Cached in output_for_tray

6 years agoMerge pull request #3469 from yablonsky/patch-1
Ingo Bürk [Tue, 23 Oct 2018 13:37:12 +0000 (15:37 +0200)]
Merge pull request #3469 from yablonsky/patch-1

Update userguide "Focus Parent": add the default

6 years agoMerge pull request #3448 from orestisf1993/sticky
Ingo Bürk [Tue, 23 Oct 2018 13:31:57 +0000 (15:31 +0200)]
Merge pull request #3448 from orestisf1993/sticky

Fix sticky focus when switching to workspace on different output

6 years agoMerge pull request #3445 from orestisf1993/flaky
Ingo Bürk [Tue, 23 Oct 2018 13:30:11 +0000 (15:30 +0200)]
Merge pull request #3445 from orestisf1993/flaky

Fix flakyness in t/189-floating-constraints.t

6 years agoMerge pull request #3444 from orestisf1993/move
Ingo Bürk [Tue, 23 Oct 2018 13:29:48 +0000 (15:29 +0200)]
Merge pull request #3444 from orestisf1993/move

Some move.c fixes

6 years agoMerge pull request #3433 from orestisf1993/janitorial
Ingo Bürk [Tue, 23 Oct 2018 13:27:50 +0000 (15:27 +0200)]
Merge pull request #3433 from orestisf1993/janitorial

Janitorial

6 years agoadd missing parenthesis 3469/head
Andriy Yablonskyy [Sun, 21 Oct 2018 17:42:19 +0000 (13:42 -0400)]
add missing parenthesis

6 years agoUpdate userguide "Focus Parent": add the default
Andriy Yablonskyy [Sun, 21 Oct 2018 17:38:58 +0000 (13:38 -0400)]
Update userguide "Focus Parent": add the default

While reading the UserGuide, I had to refer to the TL;DR image on top to find the default keybind for "Focus Parent" since it's not mentioned in the text.
This pr fixes it.

6 years agoMerge pull request #3467 from orestisf1993/userguide
Ingo Bürk [Sun, 21 Oct 2018 10:28:11 +0000 (12:28 +0200)]
Merge pull request #3467 from orestisf1993/userguide

userguide: Use anchor for list of commands

6 years agouserguide: Use anchor for list of commands 3467/head
Orestis Floros [Sun, 21 Oct 2018 10:20:45 +0000 (13:20 +0300)]
userguide: Use anchor for list of commands

Fixes #3464

6 years agodebian/control: remove dependency on x11-utils (#3455)
Michael Stapelberg [Mon, 15 Oct 2018 16:00:43 +0000 (18:00 +0200)]
debian/control: remove dependency on x11-utils (#3455)

This was a introduce in commit a61e34d2771fffdf2d94ee69d887585087c76b98 in 2009,
and we haven’t used xmessage in any way in a long time.

fixes https://bugs.debian.org/910997

6 years agoMerge pull request #3456 from stapelberg/travis
Orestis [Mon, 15 Oct 2018 08:16:20 +0000 (11:16 +0300)]
Merge pull request #3456 from stapelberg/travis

travis: fix mk-build-deps call by providing changelog file

6 years agotravis: fix mk-build-deps call by providing changelog file 3456/head
Michael Stapelberg [Mon, 15 Oct 2018 06:40:00 +0000 (08:40 +0200)]
travis: fix mk-build-deps call by providing changelog file

mk-build-deps started using the changelog file to get the version number, but a
bug prevents it from falling back correctly to 1.0 if no changelog is
present. This has been fixed upstream in
https://salsa.debian.org/debian/devscripts/commit/4b15abd4f0cfe4accbf28f24546891867344a73c,
but we can just ship the changelog file until that fix lands.

6 years agoFix typo: childs -> children 3433/head
Orestis Floros [Wed, 10 Oct 2018 15:31:03 +0000 (18:31 +0300)]
Fix typo: childs -> children

6 years agofloating_reposition: avoid extra tree_render
Orestis Floros [Fri, 5 Oct 2018 11:29:29 +0000 (14:29 +0300)]
floating_reposition: avoid extra tree_render

6 years agoUse open_floating_window arguments for rect
Orestis Floros [Wed, 10 Oct 2018 12:26:04 +0000 (15:26 +0300)]
Use open_floating_window arguments for rect

6 years agomanage_window: cleaner variable declarations
Orestis Floros [Thu, 4 Oct 2018 12:29:18 +0000 (15:29 +0300)]
manage_window: cleaner variable declarations

6 years agoborders_to_hide doesn't need to be initialized
Orestis Floros [Thu, 4 Oct 2018 12:02:37 +0000 (15:02 +0300)]
borders_to_hide doesn't need to be initialized

6 years agoroot is externally declared
Orestis Floros [Wed, 3 Oct 2018 13:20:46 +0000 (16:20 +0300)]
root is externally declared

6 years agoUse lround instead of (long)round
Orestis Floros [Wed, 3 Oct 2018 13:20:25 +0000 (16:20 +0300)]
Use lround instead of (long)round

6 years agoMake comment style more consistent
Orestis Floros [Sat, 21 Apr 2018 10:02:14 +0000 (13:02 +0300)]
Make comment style more consistent

6 years agoFix missing prototypes
Orestis Floros [Fri, 20 Apr 2018 23:28:31 +0000 (02:28 +0300)]
Fix missing prototypes

i3 will now compile with no warnings when -Wmissing-prototypes is used.

6 years agoEnforce strict prototypes
Orestis Floros [Fri, 20 Apr 2018 23:00:10 +0000 (02:00 +0300)]
Enforce strict prototypes

i3 will now compile with no warnings when -Wstrict-prototypes is used.

6 years agoUse path_exists
Orestis Floros [Wed, 1 Aug 2018 15:12:55 +0000 (18:12 +0300)]
Use path_exists

6 years agoReduce some code around frees
Orestis Floros [Wed, 1 Aug 2018 15:08:26 +0000 (18:08 +0300)]
Reduce some code around frees

6 years agoMerge pull request #3454 from alanbarr/cppcheck_fixes_2
Orestis [Sat, 13 Oct 2018 18:07:17 +0000 (21:07 +0300)]
Merge pull request #3454 from alanbarr/cppcheck_fixes_2

Cppcheck Fixes

6 years agoFixes for undefined behaviour on signed shift (#3453)
Alan Barr [Sat, 13 Oct 2018 18:04:40 +0000 (19:04 +0100)]
Fixes for undefined behaviour on signed shift (#3453)

Fixes for undefined behaviour on signed shift

Change literal 1 to unsigned to allow safe bitshift of 31.
Caught by cppcheck.

Make 0xFF unsigned to prevent a left shift into signed bit.
Spotted by @orestisf1993

6 years agoTypecast void* before doing pointer arithmetic 3454/head
Alan Barr [Sat, 13 Oct 2018 15:49:41 +0000 (16:49 +0100)]
Typecast void* before doing pointer arithmetic

Caught by cppcheck

6 years agoRemove redundant NULL check
Alan Barr [Thu, 11 Oct 2018 22:28:30 +0000 (23:28 +0100)]
Remove redundant NULL check

copy has been used before this point - so it is too late to be concerned
about a NULL pointer now.

This is OK as sstrdup() calls err() on NULL return from the underlying
strdup() call.

Raised by cppcheck.

6 years agoAdd title_align config directive 3452/head
Aestek [Sun, 22 Apr 2018 01:55:37 +0000 (03:55 +0200)]
Add title_align config directive

Controls the window titles alignment in title bars. Possible values are:
- left
- center
- right

Co-authored-by: Orestis Floros <orestisf1993@gmail.com>
- Made title_align a config directive instead of a command. Helps with
some tree_render() issues we had.
- Made title_max_width the same for all 3 cases.
- Modified title offset calculations and added explanations for each
case.
- Append title_padding to mark_width if a mark exists.

Fixes #1750

6 years agoFix sticky focus when switching to workspace on different output 3448/head
Orestis Floros [Thu, 11 Oct 2018 09:06:17 +0000 (12:06 +0300)]
Fix sticky focus when switching to workspace on different output

See the testcase for the exact steps to reproduce the problem.

6 years agooutput_push_sticky_windows: Make a bit easier to understand
Orestis Floros [Thu, 11 Oct 2018 09:05:31 +0000 (12:05 +0300)]
output_push_sticky_windows: Make a bit easier to understand

6 years ago285-sticky.t: Use kill_all_windows
Orestis Floros [Wed, 10 Oct 2018 22:21:56 +0000 (01:21 +0300)]
285-sticky.t: Use kill_all_windows

6 years agoFix flakyness in t/189-floating-constraints.t 3445/head
Orestis Floros [Wed, 10 Oct 2018 16:14:26 +0000 (19:14 +0300)]
Fix flakyness in t/189-floating-constraints.t

Related to #3009.

6 years agotree_move: Don't change focus order when swapping containers 3444/head
Orestis Floros [Tue, 9 Oct 2018 19:39:38 +0000 (22:39 +0300)]
tree_move: Don't change focus order when swapping containers

The call to ewmh_update_wm_desktop is removed since the change happens
under the same parent.

6 years agomove.c: Fix move_to_output_directed problems
Orestis Floros [Tue, 9 Oct 2018 18:45:59 +0000 (21:45 +0300)]
move.c: Fix move_to_output_directed problems

- Use workspace_show that correctly updates _NET_CURRENT_DESKTOP, warps
mouse.
- Use TAILQ_INSERT_TAIL only for focus_head. Focus order is not related
to direction.
- Call con_focus only if con was focused before. See testcase for
directional move with command criteria.
- Correct first call of move_to_output_directed in tree_move which
didn't call ipc_send_window_event("move", con) and
ewmh_update_wm_desktop().
- Don't produce events when the move doesn't happen. Correct
276-ipc-window-move.t as well.

6 years agoi3-nagbar: add option for button that runs commands without a terminal (#3258)
Orestis [Sun, 7 Oct 2018 20:43:24 +0000 (23:43 +0300)]
i3-nagbar: add option for button that runs commands without a terminal (#3258)

Fixes #2199.

6 years agoMerge pull request #3441 from stapelberg/template
Orestis [Sun, 7 Oct 2018 19:09:28 +0000 (22:09 +0300)]
Merge pull request #3441 from stapelberg/template

add specific GitHub issue templates

6 years agoMerge pull request #3440 from stapelberg/disable
Orestis [Sun, 7 Oct 2018 19:02:43 +0000 (22:02 +0300)]
Merge pull request #3440 from stapelberg/disable

configure.ac: add conditionals for building docs/mans

6 years agoadd specific GitHub issue templates 3441/head
Michael Stapelberg [Sun, 7 Oct 2018 18:41:42 +0000 (20:41 +0200)]
add specific GitHub issue templates

I learnt about this from the GitHub blog:
https://blog.github.com/2018-05-02-issue-template-improvements/

6 years agoresolve_tilde: strncpy + strlen is pointless (#3436)
Orestis [Sun, 7 Oct 2018 18:26:37 +0000 (21:26 +0300)]
resolve_tilde: strncpy + strlen is pointless (#3436)

strlen already assumes that the string is NULL-terminated.

Like in https://github.com/i3/i3status/pull/312 but for whatever reason
gcc didn't warn about this here.

6 years agouserguide: Mention know issues for assign (#3434)
Orestis [Sun, 7 Oct 2018 18:24:09 +0000 (21:24 +0300)]
userguide: Mention know issues for assign (#3434)

Fixes #3222
Fixes #3293
Related to #2060

6 years agoconfigure.ac: add conditionals for building docs/mans 3440/head
Michael Stapelberg [Sun, 7 Oct 2018 18:09:35 +0000 (20:09 +0200)]
configure.ac: add conditionals for building docs/mans

fixes #3378

6 years agoMerge pull request #3435 from vivien/i3-msg/subscribe
Orestis [Fri, 5 Oct 2018 09:16:04 +0000 (12:16 +0300)]
Merge pull request #3435 from vivien/i3-msg/subscribe

i3-msg/subscribe

6 years agoi3-msg: add support for SUBSCRIBE message type 3435/head
Vivien Didelot [Fri, 5 Sep 2014 20:47:27 +0000 (16:47 -0400)]
i3-msg: add support for SUBSCRIBE message type

If i3-msg is invoked with -t subscribe, it will wait for the first event
matching the given payload, before exiting.

For instance, get the number of the next focused workspace with:

    i3-msg -t subscribe '[ "workspace" ]' | jshon -e current -e num

Like inotifywait, the -m flag allows to wait indefinitely for events,
instead of exiting right after receiving the first one.

For example, continuously monitor the names of focused windows with:

    i3-msg -t subscribe -m '[ "window" ]' | jq .container.name

6 years agoi3-msg: check reply in quiet mode
Vivien Didelot [Tue, 2 Oct 2018 22:13:06 +0000 (18:13 -0400)]
i3-msg: check reply in quiet mode

i3-msg currently exits right after sending the IPC message if the quiet
flag is set. This means that if an error occurred when issuing a
command, e.g. "i3-msg -q foobar", it gets silently ignored.

What we really want is to just skip printing but still check the reply.

At the same time, explicitly print the reply when we need to, instead of
using an exit label.

6 years agoMerge pull request #3430 from Synray/aspect_ratio
Orestis [Tue, 2 Oct 2018 00:04:21 +0000 (03:04 +0300)]
Merge pull request #3430 from Synray/aspect_ratio

[RFC] Correctly calculate max_aspect

6 years agoCorrectly calculate max_aspect 3430/head
Thomas Fischer [Sat, 29 Sep 2018 00:34:18 +0000 (17:34 -0700)]
Correctly calculate max_aspect

6 years agoMerge pull request #3415 from orestisf1993/g_utf8_make_valid
Michael Stapelberg [Fri, 28 Sep 2018 16:00:06 +0000 (18:00 +0200)]
Merge pull request #3415 from orestisf1993/g_utf8_make_valid

Check g_utf8_make_valid availability

6 years agoMerge pull request #3424 from orestisf1993/con_num_windows
Ingo Bürk [Fri, 28 Sep 2018 07:27:58 +0000 (09:27 +0200)]
Merge pull request #3424 from orestisf1993/con_num_windows

con_num_windows: Count floating windows

6 years agocon_num_windows: Count floating windows 3424/head
Orestis Floros [Wed, 26 Sep 2018 16:56:55 +0000 (19:56 +0300)]
con_num_windows: Count floating windows

Fixes #3423.

6 years agoMerge pull request #3421 from Streetwalrus/iconic-state
Ingo Bürk [Wed, 26 Sep 2018 07:07:16 +0000 (09:07 +0200)]
Merge pull request #3421 from Streetwalrus/iconic-state

Reject requests for WM_STATE_ICONIC

6 years agoReject requests for WM_STATE_ICONIC 3421/head
Dan Elkouby [Tue, 25 Sep 2018 11:45:05 +0000 (14:45 +0300)]
Reject requests for WM_STATE_ICONIC

For compatiblity reasons, Wine will request iconic state and cannot
ensure that the WM has agreed on it; immediately revert to normal to
avoid being stuck in a paused state.

6 years agoProvide g_utf8_make_valid if not available 3415/head
Orestis Floros [Thu, 20 Sep 2018 22:50:51 +0000 (01:50 +0300)]
Provide g_utf8_make_valid if not available

See #3415 for licensing discussion.

Fixes Airblader/i3#236

6 years agoFix typo: terminaison -> termination
Orestis Floros [Thu, 20 Sep 2018 10:02:54 +0000 (13:02 +0300)]
Fix typo: terminaison -> termination

6 years agoMerge pull request #3420 from orestisf1993/sncontext==NULL-3419
Ingo Bürk [Sun, 23 Sep 2018 18:12:16 +0000 (20:12 +0200)]
Merge pull request #3420 from orestisf1993/sncontext==NULL-3419

i3-nagbar & i3-config-wizard: check sncontext != NULL

6 years agoi3-nagbar & i3-config-wizard: check sncontext != NULL 3420/head
Orestis Floros [Sun, 23 Sep 2018 14:02:21 +0000 (17:02 +0300)]
i3-nagbar & i3-config-wizard: check sncontext != NULL

From
https://github.com/freedesktop/startup-notification/blob/07237ff25d6171e1b548118442ddba4259a53ba5/libsn/sn-common.c#L87-L171
it appears that SnDisplay can't be NULL, so I skipped the check.

Fixes #3419

6 years agoMerge pull request #3416 from orestisf1993/530-bug-2229.t
Ingo Bürk [Thu, 20 Sep 2018 16:52:33 +0000 (18:52 +0200)]
Merge pull request #3416 from orestisf1993/530-bug-2229.t

530-bug-229.t: Get rid of smartmatch

6 years ago530-bug-229.t: Get rid of smartmatch 3416/head
Orestis Floros [Thu, 20 Sep 2018 16:37:50 +0000 (19:37 +0300)]
530-bug-229.t: Get rid of smartmatch

6 years agoMerge pull request #3400 from Synray/next
Orestis [Thu, 20 Sep 2018 08:36:22 +0000 (11:36 +0300)]
Merge pull request #3400 from Synray/next

Respect max size from WM_NORMAL_HINTS

6 years agoRespect max size in WM_NORMAL_HINTS 3400/head
Thomas Fischer [Thu, 13 Sep 2018 23:16:45 +0000 (16:16 -0700)]
Respect max size in WM_NORMAL_HINTS

6 years agoMerge pull request #3408 from orestisf1993/__focused__-crash
Ingo Bürk [Wed, 19 Sep 2018 12:42:28 +0000 (14:42 +0200)]
Merge pull request #3408 from orestisf1993/__focused__-crash

match_matches_window: Check if focused->window exists

6 years agoMerge pull request #3410 from orestisf1993/min_width
Ingo Bürk [Mon, 17 Sep 2018 14:06:27 +0000 (16:06 +0200)]
Merge pull request #3410 from orestisf1993/min_width

docs/i3bar-protocol: Mention skipping blocks with empty full_text

6 years agoMerge pull request #3386 from orestisf1993/click-event
Ingo Bürk [Sun, 16 Sep 2018 13:48:36 +0000 (15:48 +0200)]
Merge pull request #3386 from orestisf1993/click-event

Fix "relative_x" and "width" of click events

6 years agodocs/i3bar-protocol: Mention skipping blocks with empty full_text 3410/head
Orestis Floros [Sun, 16 Sep 2018 12:04:20 +0000 (15:04 +0300)]
docs/i3bar-protocol: Mention skipping blocks with empty full_text

Closes #3405.

6 years agoFix "relative_x" and "width" of click events 3386/head
Orestis Floros [Wed, 5 Sep 2018 23:21:10 +0000 (02:21 +0300)]
Fix "relative_x" and "width" of click events

Now clicks begin at the start of the "actual" block, offsets and
separators don't trigger click events. The width property is now just
the width of the block, including border.

Fixes #3380.

6 years agomatch_matches_window: Check if focused->window exists 3408/head
Orestis Floros [Sat, 15 Sep 2018 09:07:10 +0000 (12:07 +0300)]
match_matches_window: Check if focused->window exists

Fixes #3406.

6 years agoMerge pull request #3409 from orestisf1993/sb_hoff_px
Ingo Bürk [Sun, 16 Sep 2018 09:11:47 +0000 (11:11 +0200)]
Merge pull request #3409 from orestisf1993/sb_hoff_px

i3bar: Include sb_hoff_px only when needed

6 years agoi3bar: Include sb_hoff_px only when needed 3409/head
Orestis Floros [Sat, 15 Sep 2018 10:27:18 +0000 (13:27 +0300)]
i3bar: Include sb_hoff_px only when needed

Fixes #3404.

6 years agoMerge pull request #3403 from orestisf1993/issue-3402
Ingo Bürk [Fri, 14 Sep 2018 13:17:13 +0000 (15:17 +0200)]
Merge pull request #3403 from orestisf1993/issue-3402

_con_move_to_con: Move upwards only on CT_FLOATING_CON

6 years ago_con_move_to_con: Move upwards only on CT_FLOATING_CON 3403/head
Orestis Floros [Fri, 14 Sep 2018 13:09:45 +0000 (16:09 +0300)]
_con_move_to_con: Move upwards only on CT_FLOATING_CON

If target is inside a floating container but not its direct child, the
move can be completed as is.

Fixes #3402.

6 years agoMerge pull request #3401 from orestisf1993/dump-asy-floating
Ingo Bürk [Fri, 14 Sep 2018 11:29:07 +0000 (13:29 +0200)]
Merge pull request #3401 from orestisf1993/dump-asy-floating

dump-asy.pl: Include floating_nodes

6 years agodump-asy.pl: Include floating_nodes 3401/head
Orestis Floros [Fri, 14 Sep 2018 11:04:54 +0000 (14:04 +0300)]
dump-asy.pl: Include floating_nodes

6 years agoMerge pull request #3342 from orestisf1993/tree_close_internal
Ingo Bürk [Fri, 14 Sep 2018 10:24:54 +0000 (12:24 +0200)]
Merge pull request #3342 from orestisf1993/tree_close_internal

Simplify tree_close_internal

6 years agoMerge pull request #3399 from orestisf1993/156-fullscreen-focus
Ingo Bürk [Fri, 14 Sep 2018 06:19:00 +0000 (08:19 +0200)]
Merge pull request #3399 from orestisf1993/156-fullscreen-focus

Make t/156-fullscreen-focus.t easier to work with

6 years agoMerge pull request #3398 from orestisf1993/i3-save-tree
Ingo Bürk [Fri, 14 Sep 2018 06:18:32 +0000 (08:18 +0200)]
Merge pull request #3398 from orestisf1993/i3-save-tree

i3-save-tree: Exclude unsupported "transient_for" property

6 years agoMake t/156-fullscreen-focus.t easier to work with 3399/head
Orestis Floros [Thu, 13 Sep 2018 11:09:35 +0000 (14:09 +0300)]
Make t/156-fullscreen-focus.t easier to work with

- Add routine that will refocus the expected window on test failure.
Thus, failure on one test will not make others fail.
- Remove some redundant commands, prefer fresh_workspace for screen
changing.
- Kill previous windows between sections if the next section does not
depend on the previous layout.

6 years agoi3-save-tree: Exclude unsupported "transient_for" property 3398/head
Orestis Floros [Wed, 12 Sep 2018 11:11:08 +0000 (14:11 +0300)]
i3-save-tree: Exclude unsupported "transient_for" property

Even if i3 supported matching windows through "transient_for", it
wouldn't be useful for the purpose of i3-save-tree.

6 years agoMerge pull request #3395 from lousyd/next
Ingo Bürk [Wed, 12 Sep 2018 08:24:30 +0000 (10:24 +0200)]
Merge pull request #3395 from lousyd/next

clarify JSON standard non-compliance

6 years agoMerge pull request #3396 from orestisf1993/commands
Ingo Bürk [Wed, 12 Sep 2018 08:24:06 +0000 (10:24 +0200)]
Merge pull request #3396 from orestisf1993/commands

commands.c: Improve error replies

6 years agocommands.c: Improve error replies 3396/head
Orestis Floros [Tue, 11 Sep 2018 04:44:40 +0000 (07:44 +0300)]
commands.c: Improve error replies

- Improve / add various error messages.
- Replace all `LOG(…); ysuccess(false);` with `yerror(…);`.
- switch_mode: Remove redundant "ERROR:" ELOG string.
- cmd_move_con_to_workspace*: Make sure that we don't try to move an
empty workspace to another workspace. This can be problematic when we
match a workspace using command criteria (eg marks) and the target is a
non-existing workspace. We create the new workspace but since nothing is
moved there, we are left with an empty workspace. See added testcase.

6 years agoclarify JSON standard non-compliance 3395/head
Todd Walton [Mon, 10 Sep 2018 20:31:25 +0000 (16:31 -0400)]
clarify JSON standard non-compliance

Modified section on the layout file's non-compliance with the JSON
standard. The section previously stated that having multiple top-level
JSON texts is non-compliant. This isn't the case. It's just that most
JSON parsers will treat that as if it is non-compliant.

6 years agoMerge pull request #3394 from orestisf1993/validate-utf8
Michael Stapelberg [Mon, 10 Sep 2018 07:00:54 +0000 (09:00 +0200)]
Merge pull request #3394 from orestisf1993/validate-utf8

 libi3: validate UTF8 strings

6 years agolibi3: validate UTF8 strings 3394/head
Orestis Floros [Sun, 9 Sep 2018 12:32:54 +0000 (15:32 +0300)]
libi3: validate UTF8 strings

Will validate container / window titles.

Fixes #3156.

6 years agotree_restore: Check croot
Orestis Floros [Sun, 9 Sep 2018 13:09:39 +0000 (16:09 +0300)]
tree_restore: Check croot

Related to #2414, #3156.

6 years agoMerge pull request #3391 from orestisf1993/yajl-utf8
Ingo Bürk [Thu, 6 Sep 2018 12:15:54 +0000 (14:15 +0200)]
Merge pull request #3391 from orestisf1993/yajl-utf8

tree_append_json: Allow strings that are not valid UTF8

6 years agotree_append_json: Allow strings that are not valid UTF8 3391/head
Orestis Floros [Thu, 6 Sep 2018 11:54:27 +0000 (14:54 +0300)]
tree_append_json: Allow strings that are not valid UTF8

Fixes #3156.

I couldn't reproduce the problem in a "natural" way so I cheated:
1. Start i3 with gdb
2. Set breakpoing on tree_restore
3. Run, open window, i3-msg restart
5. Open the file in *path with a hex editor
6. Edit the "name" field of the window and insert bytes that are not
valid UTF8
7. Continue

After parsing fails, all nodes including croot are incomplete, meaning
they have to be deleted. We can't recover in any reasonable way so we
have to allow non-UTF8 characters to avoid this situation altogether.

6 years agotree_append_json: don't focus freed container
Orestis Floros [Thu, 6 Sep 2018 11:48:21 +0000 (14:48 +0300)]
tree_append_json: don't focus freed container

6 years agoMerge pull request #3389 from orestisf1993/resize-ensure-1px
Ingo Bürk [Thu, 6 Sep 2018 06:41:00 +0000 (08:41 +0200)]
Merge pull request #3389 from orestisf1993/resize-ensure-1px

Ensure containers have a size of at least 1px after resize

6 years agoMerge pull request #3390 from orestisf1993/resize-tile
Ingo Bürk [Thu, 6 Sep 2018 06:38:53 +0000 (08:38 +0200)]
Merge pull request #3390 from orestisf1993/resize-tile

resize set for tiling: default to px when not specified

6 years agoMerge pull request #3388 from orestisf1993/cmd_rename_workspace
Ingo Bürk [Thu, 6 Sep 2018 06:38:03 +0000 (08:38 +0200)]
Merge pull request #3388 from orestisf1993/cmd_rename_workspace

cmd_rename_workspace: correct order of events

6 years agoresize set for tiling: default to px when not specified 3390/head
Orestis Floros [Thu, 6 Sep 2018 02:58:51 +0000 (05:58 +0300)]
resize set for tiling: default to px when not specified

6 years agoEnsure containers have a size of at least 1px after resize 3389/head
Orestis Floros [Thu, 6 Sep 2018 01:56:31 +0000 (04:56 +0300)]
Ensure containers have a size of at least 1px after resize

Fixes #2226.
Fixes #2776.
Fixes #3241.
Related to #3194.

6 years agocmd_rename_workspace: correct order of events 3388/head
Orestis Floros [Thu, 6 Sep 2018 00:11:47 +0000 (03:11 +0300)]
cmd_rename_workspace: correct order of events

1. Rename happens
2. Workspace is moved because of assignments
3. Workspace closes because it is empty (#3248)

Fixes #3248.

6 years agoImprove comment from #3245
Orestis Floros [Thu, 6 Sep 2018 00:38:45 +0000 (03:38 +0300)]
Improve comment from #3245

6 years agoconfigure.ac: fix AC_SEARCH_LIBS([shm_open]) for static linking (#3379)
Michael Stapelberg [Fri, 31 Aug 2018 14:59:08 +0000 (08:59 -0600)]
configure.ac: fix AC_SEARCH_LIBS([shm_open]) for static linking (#3379)

Without specifying -pthread, the conftest fails and -lrt is missing during
compilation of i3, resulting in a failing build.

6 years agoMerge pull request #3376 from orestisf1993/floating-disable-scratchpad
Ingo Bürk [Tue, 28 Aug 2018 11:30:57 +0000 (13:30 +0200)]
Merge pull request #3376 from orestisf1993/floating-disable-scratchpad

Don't disable floating in internal workspaces

6 years agoDon't disable floating in internal workspaces 3376/head
Orestis Floros [Tue, 28 Aug 2018 07:26:07 +0000 (10:26 +0300)]
Don't disable floating in internal workspaces