aboutsummaryrefslogtreecommitdiffstats
path: root/sway/extensions.c
Commit message (Collapse)AuthorAge
* Disambiguate get_*_policy() and get_*_policy_mask()Libravatar Jerzi Kaminsky2017-04-16
|
* Add redshift supportLibravatar Drew DeVault2016-12-28
|
* sway: extensions: make locking give back focusLibravatar Aleksa Sarai2016-12-26
| | | | | | | | Don't switch the internal tracking of focus to the swaylock surface, to allow for switching back to the previously active window (or the currently active window, if some new process changed). Signed-off-by: Aleksa Sarai <cyphar@cyphar.com>
* sway: extensions: only unlock if lock_surfaces.length == 0Libravatar Aleksa Sarai2016-12-26
| | | | | | | | When destroying lock surfaces, we really should only unlock a desktop_shell if the set of lock surfaces has dropped to zero (since callers need to do a set_lock_surface for every output). Signed-off-by: Aleksa Sarai <cyphar@cyphar.com>
* Handle calloc failuresLibravatar Drew DeVault2016-12-15
|
* Handle some more memory allocation failuresLibravatar Drew DeVault2016-12-15
|
* Add security checks for background, panel, lockLibravatar Drew DeVault2016-12-01
|
* Tweak how swaylock surfaces are handledLibravatar Drew DeVault2016-09-01
| | | | Fixes #875
* Reorganize includesLibravatar Drew DeVault2016-09-01
|
* Initial work on window eventsLibravatar Mykyta Holubakha2016-07-21
|
* Turn swaybg into a shell surfaceLibravatar Drew DeVault2016-07-17
|
* Don't treat backgrounds as shell surfacesLibravatar David Eklov2016-07-14
| | | | | This code had some issues. Remove it now so that we can start clean and fix it later.
* Enable backgrounds and panels to be shell surfacesLibravatar David Eklov2016-07-04
| | | | | | | | Prior to this commit all windows (e.g. shell surfaces) were handled the same way in handle_view_created. Since backgrounds and panels have to be treated differently, they could not be shell surfaces. This changes checks whether a client is a background or a panel in handle_view_created and exists to let them be dealt with elsewhere.
* Remove stray whitespaceLibravatar Mikkel Oscar Lyderik2016-05-20
|
* Rearrange output when setting backgroundLibravatar Mikkel Oscar Lyderik2016-05-20
| | | | Fix #659
* Remove unused panel_size (and fix rearrange)Libravatar Mikkel Oscar Lyderik2016-03-17
| | | | | | | | | | | | desktop_shell.panel_size was only used to determine if sway should rearrange the output when rendering the panel in the output_pre_render hook. This is not needed since the output will have been arranged at that point. It also caused sway to rearrange all the time when running with two or more different monitors/resolutions because panel_size kept changing with every output_pre_render callback. Should fix #514
* Focus correct swaylock view in multimonitor setupLibravatar Mikkel Oscar Lyderik2016-03-17
| | | | | | | | | | | Swaylock spawns and focuses a view for each output in sway. This can sometimes move the focus to a new output after locking and unlocking the screens. This patch makes sure that the output which had focus when swaylock was invoked, will regain focus once swaylock is closed/unlocked. Fix #499
* Schedule render when adding bg and panel.Libravatar Mikkel Oscar Lyderik2016-03-17
| | | | | | | | | This should be a real fix for #509 This schedules a render when a background or panel is added to sway through the desktop shell interface, that makes sure the render isn't scheduled before the bg or panel is ready and you don't end up with a black screen until the cursor is moved.
* Reset input state when locking compositorLibravatar Mikkel Oscar Lyderik2016-03-04
| | | | Fix #498
* sway: rearrange the whole ws on lock view setupLibravatar progandy2016-02-28
|
* sway: set lock view to floating after ws switchLibravatar progandy2016-02-28
| | | | This avoids calling swayc_active_workspace.
* Don't rearrange views behind swaylock.Libravatar Mikkel Oscar Lyderik2016-02-25
| | | | Fix #481
* Fix returning to sway after swaylock completesLibravatar Drew DeVault2016-01-26
|
* extensions: Track panels by wl_resource, position per panel.Libravatar S. Christoffer Eliesen2015-12-20
| | | | | | | | Track each panel separately via its wl_resource. `set_panel_position` might be called before `set_panel`, so reuse panel config. Place the position in panel_config so that each panel has its own position.
* extensions: panel_config->resource => wl_surface_res.Libravatar S. Christoffer Eliesen2015-12-20
| | | | Change the name to something less ambigious.
* Implement compositor support for swaylockLibravatar Drew DeVault2015-12-18
| | | | This makes swaylock more or less work.
* Fix lock extension setup in compositorLibravatar Drew DeVault2015-12-18
|
* Add shims for swaylock on compositorLibravatar Drew DeVault2015-12-18
|
* Add swaylock protocol, add resource destructorsLibravatar Drew DeVault2015-12-03
| | | | This prevents sway crashing if swaybg or swaybar dies.
* Support desktop shell panels in compositorLibravatar Drew DeVault2015-11-29
|
* extensions: add missing includeLibravatar Christoph Gysin2015-11-25
| | | | | | | | | | | This fixes a compiler warning: ../sway/extensions.c: In function ‘set_background’: ../sway/extensions.c:16:37: warning: implicit declaration of function ‘malloc’ [-Wimplicit-function-declaration] struct background_config *config = malloc(sizeof(struct background_config)); ^ ../sway/extensions.c:16:37: warning: incompatible implicit declaration of built-in function ‘malloc’ ../sway/extensions.c:16:37: note: include ‘<stdlib.h>’ or provide a declaration of ‘malloc’
* Fix background extensionsLibravatar Drew DeVault2015-11-19
| | | | Thanks @Cloudef, it works great
* Add background handlingLibravatar Drew DeVault2015-11-18
| | | | | | | | | | | | | | | This does not work as expected. I think the problem is on the wlc side. Please review, @Cloudef. To reproduce the issues: 1. Run sway 2. Open terminal in sway 3. Run swaybg swaybg will create a surface and ask to have it set as the background, but wlc_handle_from_wl_surface_resource will return 0. If the swaybg surface is a shell surface, then it works - but wlc complains about the pointer type and segfaults as soon as the pre-render hook tries to draw the background.
* Basic support for extensions in server and clientsLibravatar Drew DeVault2015-11-18