Age | Commit message (Collapse) | Author |
|
|
|
Fix titlebar when no title or marks
|
|
This fixes the rendering of the titlebar when there is no title or marks.
|
|
Since the output config is no longer applied before creating the default
workspace, the layout for default workspaces on an output may not be
correct. Due to the ordering of calls in output_enable being changed in
several bug fix PRs, this just fixes the layout after the call to
apply_output_config.
|
|
Fix scratchpad segfault - NULL focused workspace
|
|
When adding a container to the scratchpad, it was possible for focus to
be removed from the seat. This occurred when a single child was moved
from it's parent to the scratchpad due to the focus_inactive for the
parent being NULL. If the focus_inactive for the parent is NULL, the
focus_inactive for the workspace should be focused.
|
|
Implement support for swaymsg -t SUBSCRIBE [-m]
|
|
Adds the bar subcommand `gaps <amount>|<horizontal> <vertical>|<top>
<right> <bottom> <left>` to set gaps for swaybar. Due to restrictions on
margins for a layer_surface, only the sides that are anchored to an edge
of the screen can have gaps. Since there is support for per-side outer
gaps for workspaces, those should be able to be used instead for the
last side.
|
|
In `i3 4.16`, `i3-msg` can be used with the message type `subscribe`
and has the ability to monitor for responses until killed. This adds
support for both to swaymsg.
If the JSON array of event types is malformed or contains an invalid
event, sway will send a response with `success` set to `false`. If
swaymsg sees this, it will not display the failure and exit.
If the `subscribe` event is successful, swaymsg will wait for the first
response and display that instead of the success message. If
`-m/--monitor` is given, swaymsg will continue monitor for responses
until killed or a malformed response is received.
For the `subscribe` event, the responses will always be printed as JSON.
If `-r/--raw` is given, the JSON will not be pretty printed, which may
be preferred when monitoring due to there being multiple responses.
Example: `swaymsg -t SUBSCRIBE -m "['window']"`
|
|
move to workspace: fix moving floating container to non-empty workspace
|
|
Adds the function `config_add_swaynag_warning(char *fmt, ...)` so that
handlers can add warnings to the swaynag config log in a uniform way.
The formatting is identical to errors and include the line number, line,
and config path.
This also alters the background file access warning to use the function
and introduces a warning for duplicate bindings.
|
|
moving a container to a non-empty workspace will find a container to move
to in the destination workspace and call container_move_to_container,
which must not just skip floating containers
|
|
|
|
Handle destroyed subsurfaces
|
|
Change execute_command to return a list of results
|
|
Like with cmd_bindsym and cmd_bindcode, the quotes should not be
stripped for cmd_mode. cmd_mode performs its own stripping for the mode
name and the only valid subcommands are cmd_bindsym and cmd_bindcode.
|
|
This matches i3's behavior of returning a list of results that contain
the result of each command that was executed. Additionally, the
`parse_error` attribute has been added to the IPC JSON reply.
|
|
|
|
Damage subsurfaces when they are destroyed. Since subsurfaces don't have an
unmap event we need to do that on destroy.
We also don't want to keep a sway_view_child when the wlr_subsurface has been
destroyed.
Fixes https://github.com/swaywm/sway/issues/3197
|
|
Update for swaywm/wlroots#1387
|
|
Fix missing IPC scratchpad replies/move events
|
|
Replace _XOPEN_SOURCE with _POSIX_C_SOURCE
|
|
|
|
This patch lists all hidden scratchpad containers as floating nodes
on "__i3_scratch" workspace. This workspace resides on "__i3" output.
|
|
This patch allows IPC clients to receive window::move events
when containers are moved to scratchpad or when hidden containers
are shown via "scratchpad show" command.
|
|
Implement title alignment
|
|
Fix pango title escaping
|
|
This adds support for `i3 4.16`'s ability to set the title alignment.
The command is `title_align left|center|right`.
When the title is on the right, marks are moved to the left. Otherwise,
they are on the right.
|
|
resize set: fix units for floating containers
|
|
And make sure we don't define both in the same source file.
|
|
|
|
This commit fixes the default size units for floating containers, so that
pixels are used if the units are not specified.
|
|
This commit fixes two bugs.
First, commit [1] has inverted the condition when we escape pango markup. We
need to escape client-provided strings when markup is enabled.
Second, parse_title_format has a shortcut when title_format is set to `%title`,
and escape_pango_markup wasn't used anymore there.
Fixes https://github.com/swaywm/sway/issues/3181
[1]: https://github.com/swaywm/sway/pull/3179/commits/caee2dff03fc007dc46cf121e013f5347ac46ba9
|
|
fixes pango_markup support with title_format
|
|
The support for pango_markup was broken in title_format because the
formated title was escaped. I think only the payload should be escaped.
This commit fixes 789a877b379cd35c350610be62b971ae00feb542
|
|
|
|
|
|
ipc: fix focused in get_outputs reply
|
|
It's set even if a child of the output is focused.
|
|
Implement strip_workspace_name.
|
|
|
|
|
|
|
|
Move view {x,y,width,height} into container struct
|
|
This renames/moves the following properties:
* sway_view.{x,y,width,height} ->
sway_container.content_{x,y,width,height}
* This is required to support placeholder containers as they don't
have a view.
* sway_container_state.view_{x,y,width,height} ->
sway_container_state.content_{x,y,width,height}
* To remain consistent with the above.
* sway_container_state.con_{x,y,width,height} ->
sway_container_state.{x,y,width,height}
* The con prefix was there to give it contrast from the view
properties, and is no longer useful.
The function container_set_geometry_from_floating_view has also been
renamed to container_set_geometry_from_content.
|
|
|
|
Fix segfault in dispatch_cursor_button
|
|
|
|
|
|
config->current_mode is a pointer into the config->modes list, and each
mode has already been freed.
Same with bars.
|