Add wrapper for wl_global_remove
Summary:
Removes the Global from the registry, but does not delete the underlying
wl_global
Removal of a global is racey in wayland.
A client could be trying to bind at that moment.
Typically globals are static for the lifespan of the compositor, however
there are exceptions
For those cases this call will can remove the global from the registry,
but still keep the wl_global instance alive
and handling bind requests.
The compositor can then remove the Global wrapper (this object) deleting
the wl_global after an arbitrary delay or
keep it around for re-use for the duration of the compositor.
Test Plan:
Unit test
Made blur global outlive BlurEffect - no longer disconnects plasma on config changes
Reviewers: Plasma, apol
Reviewed By: apol
Subscribers: kde-frameworks-devel
Tags: Frameworks
Differential Revision: https://phabricator.kde.org/D28883