Commit Graph

22 Commits

Author SHA1 Message Date
Oscar Cowdery Lack 5a24ed2bf2 swayidle: Fix sleep inhibitor not being acquired
Fixes #3377.
The sleep lock file descriptor was immediately closed after it was
acquired due to the dbus message being freed. Now the fd is duplicated
before the message is freed so the inhibitor stays active.
2019-01-07 22:55:42 +11:00
Ian Fan 19e831ed3d list.c: Remove list_foreach
Most occurrences have been replaced by `free_flat_list` which has been
moved from stringop.c to list.c. The rest have been replaced by for loops.
2018-12-09 00:37:50 +00:00
emersion 814dc1dfe5
swayidle: fix busy loop on writable FD
The wl_event_source_fd_update docs say:

> File descriptors are usually writable to begin with, so they do not need to
> be polled for writable until a write actually fails. When a write fails,
> the event mask can be changed to poll for readable and writable, delivering
> a dispatch callback when it is possible to write more. Once all data has
> been written, the mask can be changed to poll only for readable to avoid
> busy-looping on dispatch.

So we should only poll for WL_EVENT_WRITABLE if a write fails. I'm not yet sure
how to do this properly and Weston doesn't do it, so in the meantime I'll just
fix the busy loop. I'll ask them too.

Fixes https://github.com/swaywm/sway/issues/3190
2018-11-25 18:10:01 +01:00
emersion 9b88ee0143
swayidle: fix dbus_event not to block 2018-11-24 23:26:57 +01:00
emersion 41ffb5b4d5
swayidle: listen when display becomes writable 2018-11-24 23:18:44 +01:00
Ian Fan 6358de3827
swaylock: fix display_event to not block 2018-11-24 23:10:05 +01:00
Ian Fan 6e2dccc2e9
swayidle: when acquiring sleep lock, initialize and free variables properly 2018-11-24 23:10:05 +01:00
emersion cad851805b
Use #if instead of #ifdef 2018-11-18 00:33:06 +01:00
Drew DeVault 9a3cd000a3
Revert "Work around swayidle never triggering on SIGUSR1" 2018-11-05 12:12:44 -05:00
Jarkko Oranen 4f21b6f670 Work around swayidle never triggering on SIGUSR1 2018-11-05 18:54:41 +02:00
emersion 5fcb814a73
swayidle: enter idle state on SIGUSR1 2018-10-28 09:16:42 +01:00
Ryan Dwyer 32ba8154b8 Sway clients: Exit gracefully when compositor is unavailable 2018-10-15 21:57:59 +10:00
Arkadiusz Hiler 1e70f7b19e Turn funcs() into funcs(void)
If they really do not take undefined number of arguments.
2018-09-30 14:09:05 +03:00
emersion 4657ea5a42 swayidle: cleanup
No idea why wlr_output_layout was involved here.
2018-07-16 22:20:53 +01:00
emersion 63b4bf5000
Update for swaywm/wlroots#1126 2018-07-09 22:54:30 +01:00
Alex Xu (Hello71) 7ed81cfd36 swayidle: fix stack overflow on sleep 2018-06-17 13:57:40 -04:00
Dominique Martinet 2477930d90 swayidle: doublefork to not leave zombies around 2018-06-08 22:28:28 +09:00
Dominique Martinet 3b7cae0e31 swayidle: terminate if wl_display_dispatch failed 2018-05-16 16:50:56 +09:00
Dominique Martinet 620b269418 swayidle: terminate when server died
Fixes #1977.
2018-05-16 11:26:13 +09:00
Drew DeVault 270c1ee7e5 Actually fix swayidle
I also didn't test this commit though so who knows
2018-05-13 20:21:37 -04:00
Drew DeVault b65a75a6e1 swayidle: use wl_event_loop_dispatch_idle
Fixes #1977
2018-05-13 19:32:16 -04:00
Mattias Eriksson 8fbafbfab5 Idle handling for dpms/lockscreen et al
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-13 00:30:09 +02:00