aboutsummaryrefslogtreecommitdiff
path: root/sway/server.c
AgeCommit message (Collapse)Author
2018-09-03Merge remote-tracking branch 'upstream/master' into fix-freebsd-buildsghctoma
2018-09-01Update for swaywm/wlroots#1216emersion
2018-08-30Add missing destroy calls to server_finisghctoma
Rootston calls "wlr_xwayland_destroy" and "wl_display_destroy_clients" on shutdown, but these were not called by Sway. Without them, Sway crashes on exit before the display destroy event handler could be called. This causes two problems: - The TTY is not reset, and it locks up after exiting Sway. - drmDropMaster is not called, and the implicit drop (that should occur when the DRM fd is closed) seems not to be working in some scenarios (e.g. if you have a tmux session running - maybe the fd is retained somehow by tmux?). In other words, it you exit Sway, you can't start it (or any other program that wants to be DRM master) again until you close all your tmux sessions.
2018-08-26Remove layout.cRyan Dwyer
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.
2018-08-19Standardise debug variablesRyan Dwyer
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.
2018-08-06Handle views created after decoration mode is sent for xdg-shellemersion
2018-08-06Listen to server-decoration mode changesemersion
2018-08-02Merge branch 'master' into wlr-gamma-controlemersion
2018-07-25reverted includes of "sway/config.h" and replaced with "config.h" from meson ↵Pascal Pascher
build
2018-07-24style fixes, exclude sway/desctop/xwayland.c when enable_xwayland: falsePascal Pascher
2018-07-24Added meson option "enable_xwayland" (default: true) to enable/disable ↵Pascal Pascher
xwayland support
2018-07-22Enable wlr-gamma-control-unstable-v1emersion
2018-07-19Merge branch 'master' into update-wlroots-1148Drew DeVault
2018-07-19Update for swaywm/wlroots#1148emersion
2018-07-19Fix deferred command handlingBrian Ashworth
2018-07-15Merge pull request #2272 from RyanDwyer/simplify-transactionsDrew DeVault
Simplify transactions by using a dirty flag on containers
2018-07-14Simplify transactions by utilising a dirty flag on containersRyan Dwyer
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.
2018-07-13Remove orbital screenshooteremersion
2018-07-09Update for swaywm/wlroots#1126emersion
2018-07-04startup: move setenv WAYLAND_DISPLAY before config execsDominique Martinet
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)
2018-07-02idle_inhibit: move server data to its own structDominique Martinet
2018-07-02idle_inhibit: stop inhibitor when views become invisibleDominique Martinet
2018-07-02Add idle inhibit unstable v1 supportDominique Martinet
2018-07-01Init screencopy manageremersion
2018-06-29Merge remote-tracking branch 'upstream/master' into atomicRyan Dwyer
2018-06-27Allow views to skip configuresRyan Dwyer
To do this properly, the transaction queue will only be processed if it can be completely processed.
2018-06-27Merge branch 'master' into xwayland-wants-floatRyan Dwyer
2018-06-25Implement transaction timings debugRyan Dwyer
Launch sway with SWAY_DEBUG=txn_timings to enable it.
2018-06-23Merge remote-tracking branch 'upstream/master' into atomicRyan Dwyer
2018-06-23Implement atomic layout updates for tree operationsRyan Dwyer
This implements atomic layout updates for when views map, reparent or unmap.
2018-06-22Merge pull request #2146 from ↵Drew DeVault
tobiasblass/prepare_server_before_dropping_privileges Perform (partial) server initialization before dropping privileges.
2018-06-22Init the dmabuf exporting protocol in wlrootsRostislav Pehlivanov
Allows desktop capture via the dmabuf-capture wlroots example client.
2018-06-19Perform (partial) server initialization before dropping privileges.Tobias Blass
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.
2018-06-18Automatically float xwayland windowsemersion
2018-05-25Update for swaywm/wlroots#1000emersion
2018-05-21Update for swaywm/wlroots#993emersion
2018-05-16sway: run commands without waiting for XwaylandDominique Martinet
Xwayland is lazy now, there is no need to wait at all
2018-05-14Kill wl_shellemersion
2018-05-13Enable lazy xwaylandDrew DeVault
2018-05-13Merge pull request #1970 from emersion/xdg-shell-stableDrew DeVault
Add xdg-shell stable support
2018-05-13Add xdg-shell stable supportemersion
2018-05-13Idle handling for dpms/lockscreen et alMattias Eriksson
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
2018-05-09Fix null deref in server_initDan Robertson
If the backend fails to be created, log an error and immidiately return from server_init.
2018-05-07Update xwayland start for new APIVincent Vanlaer
https://github.com/swaywm/wlroots/pull/959
2018-04-21Use wlr_renderer_init_wl_shmemersion
2018-04-17Destroy display in server_finiemersion
2018-04-08Update for wlroots#850emersion
2018-04-07Add basic server decorations supportDrew DeVault
2018-04-05Configure wlr_xdg_output_manager during initDrew DeVault
2018-04-02rename input-manager functionsTony Crisci