mirror of
https://gitlab.freedesktop.org/pipewire/wireplumber.git
synced 2026-05-06 09:28:18 +02:00
default-nodes: make the default-config* keys trigger common
This trigger will be available all the time irrespective of whether persistant option is enable or not.
This commit is contained in:
parent
03bdf7d283
commit
50377f2a70
2 changed files with 7 additions and 19 deletions
|
|
@ -17,6 +17,13 @@ SimpleEventHook {
|
|||
Constraint { "event.session-item.interface", "=", "linkable" },
|
||||
Constraint { "media.class", "#", "Video/*" },
|
||||
},
|
||||
EventInterest {
|
||||
Constraint { "event.type", "=", "metadata-changed" },
|
||||
Constraint { "metadata.name", "=", "default" },
|
||||
Constraint { "event.subject.key", "c", "default.configured.audio.sink",
|
||||
"default.configured.audio.source", "default.configured.video.source"
|
||||
},
|
||||
},
|
||||
},
|
||||
execute = function (event)
|
||||
local source = event:get_source ()
|
||||
|
|
|
|||
|
|
@ -58,23 +58,6 @@ find_stored_default_node_hook = SimpleEventHook {
|
|||
end
|
||||
}
|
||||
|
||||
rescan_trigger_hook = SimpleEventHook {
|
||||
name = "default-nodes/rescan-trigger",
|
||||
interests = {
|
||||
EventInterest {
|
||||
Constraint { "event.type", "=", "metadata-changed" },
|
||||
Constraint { "metadata.name", "=", "default" },
|
||||
Constraint { "event.subject.key", "c", "default.configured.audio.sink",
|
||||
"default.configured.audio.source", "default.configured.video.source"
|
||||
},
|
||||
},
|
||||
},
|
||||
execute = function (event)
|
||||
local source = event:get_source ()
|
||||
source:call ("schedule-rescan", "default-nodes")
|
||||
end
|
||||
}
|
||||
|
||||
store_configured_default_nodes_hook = SimpleEventHook {
|
||||
name = "default-nodes/store-configured-default-nodes",
|
||||
interests = {
|
||||
|
|
@ -193,14 +176,12 @@ function handlePersistentSetting (enable)
|
|||
state = State ("default-nodes")
|
||||
state_table = state:load ()
|
||||
find_stored_default_node_hook:register ()
|
||||
rescan_trigger_hook:register ()
|
||||
store_configured_default_nodes_hook:register ()
|
||||
metadata_added_hook:register ()
|
||||
elseif not enable and state then
|
||||
state = nil
|
||||
state_table = nil
|
||||
find_stored_default_node_hook:remove ()
|
||||
rescan_trigger_hook:remove ()
|
||||
store_configured_default_nodes_hook:remove ()
|
||||
metadata_added_hook:remove ()
|
||||
end
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue