When removing output global, use disable_global
, remove with timer
#1082
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This should fix an issue where output hotplug can sometimes cause clients (including XWayland) to crash with a protocol error trying to bind the output.
Using a timer doesn't seem ideal, but seems to be the correct way to do this at present. Wlroots
wlr_global_destroy_safe
is basically the same as this.Adding a
LoopHandle
argument toOutputConfigurationState::new
seems awkward, but maybe better than a handler method for removing globals. (IdleNotifierState::new
also takes aLoopHandle
). Perhaps Smithay could provide some kind of helper for this.