Age | Commit message (Collapse) | Author |
|
Since `load_include_config` compares against the realpath of a config
file when checking if a config has already been added, the main config's
realpath has to be added to the config_chain.
|
|
wlr_xdg_popup_destroy will destroy popups, so we need to walk the tree
carefully. It's enough to just destroy all direct children, since destroying
the parent will also destroy all children.
|
|
output_cmd_background: fix no file + valid mode
|
|
If output_cmd_background is given a valid mode as the first argument,
then there is no file given and an error should be returned.
join_args should not be called with an argc of zero since it sets the
last character to the null terminator. With an argc of zero, the length
is zero causing a heap buffer overflow when setting the byte before the
start of argv to '\0'. This probably will not ever generate a segfault,
but may cause data corruption to whatever is directly before it in
memory. To make other such cases easier to detect, this also adds a
sway_assert in join_args when argc is zero.
|
|
Initialize server so input manager is available.
|
|
|
|
If validating the config, do it as early as possible.
|
|
|
|
cmd_workspace_gaps: fix double free on bad amount
|
|
IPC_COMMAND: split on newline
|
|
Set version in project file
|
|
This fixes a double free in cmd_workspace_gaps when the amount given is
invalid. The end pointer from strtol is part of the argument and should
not be freed. Freeing the end pointer could result in a double free or
bad free depending on whether or not the end pointer was at the start of
the argument
|
|
Let's set the version in the meson file instead of declaring it outside.
In case git is installed we use the git hash as version. Instead it
isn't (like on a clean build system), let's use the version defined in
the project.
|
|
This splits commands given in IPC_COMMAND on newline to match i3's
behavior.
|
|
Let's not use !strcmp(…) anymore.
|
|
This removes quote stripping for `exec_always` in `execute_command`.
Since `exec_always` commands will be deferred in the config and
processed by `execute_command`, the quotes need to be left intact
like they are for `exec`.
|
|
Now that swaynag uses getline (instead of the old readline), the
trailing newline characters have to be removed when reading the config
|
|
This fixes the failure condition for the wordexp call in
load_include_configs. The only success value is zero. Since the error
codes are positive, having the check be less than zero was causing
segfaults on failure when accessing the words.
|
|
vilhalmer/focus_follows_mouse-workspace-last-inactive
Focus workspace inactive node with focus_follows_mouse
|
|
seat_cmd_cursor: do not create non-existing seat
|
|
If a seat does not exist in seat_cmd_cursor, do not create it. A seat
without any attachments is useless since it will have no capabilities.
This changes `input_manager_get_seat` to have an additional argument
that dictates whether or not to create the seat if it does not exist.
|
|
vilhalmer/fix-wildcard-seat-constrain-crashes-during-reconfig
Fix wildcard seat constrain crashes during reconfig
|
|
|
|
|
|
|
|
|
|
Revert double frees.
|
|
cmd_seat: allow - to be used as alias for current
|
|
This allows for `-` (hyphen) to be used as an alias for the current seat
while sway is running. This alias was chosen since it is unlikely to
interfere with any desirable seat identifier
|
|
Since the seats and inputs are not yet available while the config is
being read, defer seat attachment requests
|
|
|
|
This reverts commit eda1bf769f239a9e8d5a9907255a330e3113a649.
|
|
This reverts commit b5d95f264d5b08f6228e05be680ee36fc06ca6d6.
|
|
relative-pointer-v1: time is in usec, not msec
|
|
pointer_constraint: change to a seat subcommand
|
|
This changes the `pointer_constraint` command to be a subcommand of seat
to allow for per-seat settings. The current implementation that is not a
seat subcommand will only operate on the current seat and will segfault
in the config due to `config->handler_context.seat` only being set at
runtime.
This also allows for the wildcard identifier to be used to alter the
pointer constraint settings on all seats and allows for the setting to
be merged with the rest of the seat config.
|
|
|
|
|
|
|
|
Updates sway.5 to include information on the usage of the `--whole-window` option in the context of the `bindsym` command, which modifies mouse bindings to allow them to operate over the whole window instead of just the titlebar. Also includes the disclaimer about mouse bindings only working over the title bar.
Also fixes the escaping of the `BTN_LEFT` and `BTN_RIGHT` key mention.
Add notes on --border and --exclude-titlebar
Update the flags for bindcode command.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
check if scratchpad is show in another workspace
|
|
Cleanup config reading failure error logs
|
|
This cleans up the log when sway fails to read a config file. The
following changes have been made:
- A missing error message has been added to the log when the config file
is a directory instead of a regular file
- In main, `goto` statements have been added after the `sway_terminate`
calls instead of wrapping every block in `if (!terminate_request)`
- Unnecessary NULL-checks around calls to free in `main` have been
removed
- Deferred command execution has been extracted to a separate function
and the `Running deferred commands` log message will not be shown when
there are no deferred commands.
|
|
Add a sentence to sway-output.5.scd to highlight that the cursor can
only be moved between immediately adjacent outputs.
References issue #3529
Signed-off-by: Peter Grayson <pete@jpgrayson.net>
|