mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-07 13:30:09 -05:00
global: add permissions_changed event
This commit is contained in:
parent
9221b8dedd
commit
04c153d410
3 changed files with 8 additions and 0 deletions
|
|
@ -291,6 +291,8 @@ int pw_global_update_permissions(struct pw_global *global, struct pw_client *cli
|
|||
struct pw_core *core = global->core;
|
||||
struct pw_resource *resource, *t;
|
||||
|
||||
pw_global_emit_permissions_changed(global, client, old_permissions, new_permissions);
|
||||
|
||||
spa_list_for_each(resource, &core->registry_resource_list, link) {
|
||||
if (resource->client != client)
|
||||
continue;
|
||||
|
|
|
|||
|
|
@ -75,6 +75,11 @@ struct pw_global_events {
|
|||
void (*destroy) (void *data);
|
||||
/** The global is freed */
|
||||
void (*free) (void *data);
|
||||
/** The permissions changed for a client */
|
||||
void (*permissions_changed) (void *data,
|
||||
struct pw_client *client,
|
||||
uint32_t old_permissions,
|
||||
uint32_t new_permissions);
|
||||
};
|
||||
|
||||
/** Create a new global object */
|
||||
|
|
|
|||
|
|
@ -136,6 +136,7 @@ struct pw_client {
|
|||
#define pw_global_emit_registering(g) pw_global_emit(g, registering, 0)
|
||||
#define pw_global_emit_destroy(g) pw_global_emit(g, destroy, 0)
|
||||
#define pw_global_emit_free(g) pw_global_emit(g, free, 0)
|
||||
#define pw_global_emit_permissions_changed(g,...) pw_global_emit(g, permissions_changed, 0, __VA_ARGS__)
|
||||
|
||||
struct pw_global {
|
||||
struct pw_core *core; /**< the core */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue