Age | Commit message (Collapse) | Author |
|
|
|
The default `tiling` and `floating` behavior is preserved and matches
both cases.
Adds a new handler to `remanage_window` on A_I3_FLOATING_WINDOW change.
Mainly in order to `run_assignments`, this makes `for_window [floating]`
directives to work for windows which where initially opened as tiling.
Now, when floating is enabled, `for_window` will trigger correctly. Same
applies to `for_window [tiling]`.
The obvious solution of `run_assignments` after
`floating_{enable,disable}` doesn't work because `run_assignments`
modifies the parser state in src/assignments.c:51.
Fixes #3588
|
|
Fix SEGFAULT when i3bar receives invalid input
|
|
Update EWMH properties on workspace move
|
|
i3bar: Add a macro to log child info
|
|
After installing clangd and/or ccls (Emacs eglot defaults to ccls),
run e.g. make bear -j32 and restart your editor (or just its language server).
|
|
Make floating-tiling resize code consistent with plain tiling resize
|
|
Match empty window properties (e. g. no title set) #3308
|
|
Fixes #3844
|
|
Closes #3965
Fixes #4001
|
|
Refactor property handlers
|
|
Mentioned in #3242
|
|
Correctly handle mouse resize in fullscreen containers
|
|
|
|
|
|
Another option is to modify resize_find_tiling_participants but this
would also affect resizing of tiling containers in scripts, so I chose
to make this change specific to resizing with the mouse.
Follow-up after #3983
Fixes #3980
|
|
This reverts commit 1a2882d740ecc01312cf26ea5fac608077af7386.
As mentioned in
https://github.com/i3/i3/issues/3980#issuecomment-611515497, this
disables resizing children of fullscreen containers.
|
|
cmd_focus_sibling: Fix crash on workspace level
|
|
Fixes #3997
|
|
Following the reproduction instructions from
https://github.com/i3/i3/issues/3242#issuecomment-436175346
For me, #3242 happened when the following sequence executed:
1. Fullscreening window correctly calls `stop_child()` in
https://github.com/i3/i3/blob/6e24e2ad6f4b1e32cfa27805a3a948d0de50f3b1/i3bar/src/xcb.c#L685
2. Xrandr change, `reconfig_windows()` is called and `output->visible` is
set to `true` in this line:
https://github.com/i3/i3/blob/6e24e2ad6f4b1e32cfa27805a3a948d0de50f3b1/i3bar/src/xcb.c#L1791
3. When the window's fullscreen is disabled,
`handle_visibility_notify()` returns in this line:
https://github.com/i3/i3/blob/6e24e2ad6f4b1e32cfa27805a3a948d0de50f3b1/i3bar/src/xcb.c#L677
because previously `output->visible` was set to `true`
To fix this, I call `cont_child()` more leniently since it is a no-op
when the child is not stopped.
Fixes #3242
Closes #3761
|
|
Since every handler calls con_by_window_id() and checks for NULL, it is
better to move this call into property_notify().
|
|
|
|
Some property handlers trying to fetch property again if `prop == NULL`.
This is redundant since these properties are either fetched by
property_notify() just before or deleted.
|
|
Also, use `conn` global variable instead of passing it as an argument.
|
|
userguide: Add button{6,7}
|
|
Related to #3984
|
|
check-spelling: update to new Lintian::Profile API
|
|
This changed between Lintian 2.62.0 and 2.64.0.
|
|
Avoid resizing fullscreen container
|
|
Fixes #3980
|
|
ipc: always include marks property in TREE reply
|
|
|
|
Use _PATH_BSHELL in nagbar script as well
|
|
|
|
|
|
Remove comment referencing old source code
|
|
i3-nagbar: Use _PATH_BSHELL
|
|
Behaviour was changed in f691a55923850a4d315450925fc98733d07b69c9
|
|
Possibly overlooked in f691a55923850a4d315450925fc98733d07b69c9?
|
|
According to libxcb-cursor code, the only condition in which
xcb_cursor_context_new() returns a non-zero result is a memory
allocation failure[1]. Thus, it is safe to assume that
xcursor_supported is always true, and remove dead code.
[1]: https://gitlab.freedesktop.org/xorg/lib/libxcb-cursor/blob/0.1.3/cursor/cursor.c#L131-132
|
|
Now dragging an inner border of a floating split triggers a tiling
resize (as expected) instead of a floating resize.
|
|
related to #3838
|
|
|
|
Small fixes
|
|
typo
|
|
|
|
The trailing part of the line (`abort…)`) has often been appearing in
bug reports.
|
|
Before this commit, large workspace numbers treated oddly:
$ i3-msg 'rename workspace to 1234567890'
# displayed in i3bar as `0`
$ i3-msg 'rename workspace to 4294967200'
$ i3-msg -t get_workspaces | jq '.[]|select(.focused).num'
-96 # int32_t overflow
$ i3-msg 'rename workspace to 99999999999999999999'
$ i3-msg -t get_workspaces | jq '.[]|select(.focused).num'
-1 # treated as unnumbered
This commit puts a consistent limit on workspace numbers. Now
workspaces with numbers beyond INT32_MAX are treated as unnumbered.
|
|
|
|
Sanitize window dimensions and handle decoration overlap
|