backend/session: wait for session to become active
Created by: muradm
with seatd as libseat backend, when there is one sway already running on one terminal, new sway on the other terminal could not be started. originally issue was reported to seatd. testing offered change for seatd revealed actual problem in wlroots wlr_backend_autocreate
. after wlr_session_create
, it is proceeding to further initialization without ensuring if just created session is active or not. this PR wraps original wlr_session_create
with waiting on session->events.active
. code is based on wlr_session_find_gpus
, thus i had to move wlr_session_create
below it, as it reuses same functions. original wlr_session_create
is renamed to _wlr_session_create