Age | Commit message (Collapse) | Author |
|
|
|
When we have type safety we'll need to have functions for
workspace_add_tiling and so on. This means the existing container
functions will be just for containers, so they are being moved to
container.c. At this point layout.c doesn't contain much else, so I've
relocated everything and removed the file.
* container_swap and its static functions have been moved to the swap
command and made static.
* container_recursive_resize has been moved to the resize command and
made static.
* The following have been moved to container.c:
* container_handle_fullscreen_reparent
* container_insert_child
* container_add_sibling
* container_add_child
* container_remove_child
* container_replace_child
* container_split
* enum movement_direction and sway_dir_to_wlr have been moved to util.c.
Side note: Several commands included layout.h which then included
root.h. With layout.h gone, root.h has to be included by those commands.
|
|
This makes all debug options stored in a single struct rather than in
various places, changes/fixes the behaviour of existing options, and
introduces some new options.
* Fixes damage issues with `-Drender-tree` texture (by removing scissor)
* Offsets the render tree overlay's `y` position for those who have
swaybar at the top
* Replaces `-Ddamage=rerender` with `-Dnodamage`
* Replaces `-Ddamage=highlight` with `-Dhighlight-damage`
* Replaces `-Dtxn-debug` with `-Dtxn-wait`
* Introduces `-Dnoatomic`
* Removes the `create_time` and `ms_arranging` figures from transactions
and the log message. Transactions are created after arranging and the
create time is of no significance.
* Fixes `-Dtxn-debug` (now `-Dtxn-wait`) not working.
|
|
|
|
|
|
|
|
build
|
|
|
|
xwayland support
|
|
|
|
|
|
|
|
|
|
Simplify transactions by using a dirty flag on containers
|
|
This PR changes the way we handle transactions to a more simple method.
The new method is to mark containers as dirty from low level code
(eg. arranging, or container_destroy, and eventually seat_set_focus),
then call transaction_commit_dirty which picks up those containers and
runs them through a transaction. The old methods of using transactions
(arrange_and_commit, or creating one manually) are now no longer
possible.
The highest-level code (execute_command and view implementation
handlers) will call transaction_commit_dirty, so most other code just
needs to set containers as dirty. This is done by arranging, but can
also be done by calling container_set_dirty.
|
|
|
|
|
|
We would previously run all config commands without the environment,
which would appear to work as our socket name is the default one, but
wayland clients would start up in the wrong sway session.
(This explains why 'sometimes' my swayidle processes wouldn't die with
sway, as they weren't listening to the correct socket)
|
|
|
|
|
|
|
|
|
|
|
|
To do this properly, the transaction queue will only be processed if it
can be completely processed.
|
|
|
|
Launch sway with SWAY_DEBUG=txn_timings to enable it.
|
|
|
|
This implements atomic layout updates for when views map, reparent or
unmap.
|
|
tobiasblass/prepare_server_before_dropping_privileges
Perform (partial) server initialization before dropping privileges.
|
|
Allows desktop capture via the dmabuf-capture wlroots example client.
|
|
Some operations during backend creation (e.g. becoming DRM master)
require CAP_SYS_ADMIN privileges. At this point, sway has dropped them
already, though. This patch splits the privileged part of server_init
into its own function and calls it before dropping its privileges.
This fixes the bug with minimal security implications.
|
|
|
|
|
|
|
|
Xwayland is lazy now, there is no need to wait at all
|
|
|
|
|
|
Add xdg-shell stable support
|
|
|
|
Swayidle handles idle events and allows
for dpms and lockscreen handling. It also
handles systemd sleep events, and can
raise a lockscreen on sleep
Fixes #541
|
|
If the backend fails to be created, log an error and immidiately return
from server_init.
|
|
https://github.com/swaywm/wlroots/pull/959
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Necessary to make primary selection syncronize
|
|
|