| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
| |
It turns out that i3 does not have a `class` key in the json description
of a view, but provides it through `window_properties.class`. Since
`window_properties` has been added by 8fc9328, we can remove `class`
altogether.
Signed-off-by: Franklin "Snaipe" Mathieu <snaipe@diacritic.io>
|
| |
|
|\
| |
| | |
protect newline
|
|/ |
|
|\
| |
| | |
Update workspace.c
|
| |
| |
| | |
re-added missing output check after config load
|
|/
|
| |
Remove output requirement for workspace command
|
|\
| |
| | |
swaybar: fix scrolling behaviour
|
| | |
|
| |
| |
| |
| |
| | |
1. wrap_scroll has been fixed
2. release bindings are checked when returning early
|
| |
| |
| |
| |
| | |
This makes it congruent with its visual appearance, making it easier to
reason about.
|
|\ \
| | |
| | | |
Deny several commands when there's no outputs connected
|
| | | |
|
|\ \ \
| |/ /
|/| | |
Rebase the cursor after applying transactions
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This approaches cursor rebasing from a different angle. Rather than
littering the codebase with cursor_rebase calls and using transaction
callbacks, this just runs cursor_rebase after applying every transaction
- but only if there's outputs connected, because otherwise it causes a
crash during shutdown.
There is one known case where we still need to call cursor_rebase
directly, and that's when running `seat seat0 cursor move ...`. This
command doesn't set anything as dirty so no transaction occurs.
|
|\ \
| |/
|/| |
Implement the presentation-time protocol
|
| | |
|
|\ \
| | |
| | | |
Document how to identify outputs by make, model and serial
|
| | | |
|
|\ \ \
| |/ /
|/| | |
Fix containers not being resized when entering scratchpad
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| | |
This fixes a regression introduced by
662466e8db773926bf61b21280194a3540ae26ec. When adding a container to the
scratchpad, setting container->scratchpad = true before
container_set_floating made container_set_floating believe that the
container was already floating. This fixes it by setting the property
afterwards instead.
|
|\ \
| | |
| | | |
swaylock: exit early if unable to get input inhibitor
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
This stops the program from going into a spinlock without exiting
|
|\ \ \
| | | |
| | | | |
When scrolling on a tab titlebar, set focus_inactive if not focused
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
For example, create layout H[view T[view view view]], focus the view in
the hsplit and scroll the mouse wheel over the tab title bars. Prior to
this patch, focus would be given to a descendant of the tabbed
container. This patch keeps the focus on the hsplit view.
This also renames some of the variables used in this part of the code to
make it be easier to follow.
|
|\ \ \
| | | |
| | | | |
Rebase the cursor after mapping a view
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
I originally put the rebase at the end of view_map, but at this point
the view is still at its native size and will ignore the motion event if
it falls outside of its native size. The only way to do this properly is
to rebase the cursor later - either after sending the configure, after
the view commits with the new size, or after applying the transaction. I
chose to do it after applying the transaction for simplicity.
I then attempted to just call cursor_rebase after applying every
transaction, but this causes crashes when exiting sway (and possibly
other places) because cursor_rebase assumes the tree is in a valid
state.
So my chosen solution introduces transaction_commit_dirty_with_callback
which allows handle_map to register a callback which will run when the
transaction is applied.
|
|\ \ \ \
| | | | |
| | | | | |
Rebase the cursor after focusing in a direction
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Prior to this patch, creating a tabbed container with two views,
switching tab and then scrolling without motion would cause the scroll
events to be sent to the old focus. To fix this, rebasing the cursor is
needed after changing focus.
|
|\ \ \ \
| |/ / /
|/| | | |
Add multiseat support to swaylock
|
|/ / / |
|
|\ \ \
| |_|/
|/| | |
xwayland: populate window_properties in json for views
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
window_properties is documented to contain a subset of the X11 properties
of a window (its title, class, instance, role, and transient ID). This
commit adds the missing json object from the get_tree output for
xwayland windows only.
This is a follow-up of #2911.
Signed-off-by: Franklin "Snaipe" Mathieu <me@snai.pe>
|
|\ \ \
| | | |
| | | | |
swaybar: absorb bar_init function into bar_setup
|
| | |/
| |/| |
|
|\ \ \
| |/ /
|/| | |
Fix dormant cursor when using multiple seats
|
| | | |
|
|/ /
| |
| |
| |
| |
| | |
The cursor's image would be removed or set when the seat's capabilities
were updated, but there was nothing to prevent the image from being set
at other times.
|
|\ \
| | |
| | | |
commands: clean up checkargs function +other small changes
|
| | |
| | |
| | |
| | | |
This makes it a bit more obvious what the expected number of arguments is.
|
| | |
| | |
| | |
| | |
| | | |
Consolidates logic and fixes mistake that used argc instead of val for
determining plural.
|
| | |
| | |
| | |
| | | |
Its uses have been replaced with EXPECTED_AT_LEAST.
|
|/ / |
|
|\ \
| | |
| | | |
Fix swaybar crash when there's no status_command
|
|/ / |
|
| | |
|
|\ \
| | |
| | | |
cmd_swaynag_command: fix typo in variable
|
|/ /
| |
| |
| |
| | |
The custom swaynag_command was being stored as config->swaybg_command
instead of config->swaynag_command.
|