diff --git a/src/scripts/linking/rescan-media-role-links.lua b/src/scripts/linking/rescan-media-role-links.lua index f2747e73..14419c75 100644 --- a/src/scripts/linking/rescan-media-role-links.lua +++ b/src/scripts/linking/rescan-media-role-links.lua @@ -68,6 +68,7 @@ function getSuspendPlaybackFromMetadata (om) local metadata = om:lookup { type = "metadata", Constraint { "metadata.name", "=", "default" }, + Constraint { "wireplumber.collection", "-" }, } if metadata then local value = metadata:find(0, "suspend.playback") @@ -92,6 +93,7 @@ AsyncEventHook { Constraint { "event.type", "=", "metadata-changed" }, Constraint { "metadata.name", "=", "default" }, Constraint { "event.subject.key", "=", "suspend.playback" }, + Constraint { "wireplumber.collection", "-" }, } }, steps = { diff --git a/src/scripts/linking/rescan.lua b/src/scripts/linking/rescan.lua index db59d6a8..66367c3f 100644 --- a/src/scripts/linking/rescan.lua +++ b/src/scripts/linking/rescan.lua @@ -229,11 +229,13 @@ SimpleEventHook { Constraint { "metadata.name", "=", "default" }, Constraint { "event.subject.key", "c", "default.audio.source", "default.audio.sink", "default.video.source" }, + Constraint { "wireplumber.collection", "-" }, }, -- on any "filters" metadata changed EventInterest { Constraint { "event.type", "=", "metadata-changed" }, Constraint { "metadata.name", "=", "filters" }, + Constraint { "wireplumber.collection", "-" }, }, }, execute = function (event) @@ -307,6 +309,7 @@ function handleMoveSetting (enable) Constraint { "event.type", "=", "metadata-changed" }, Constraint { "metadata.name", "=", "default" }, Constraint { "event.subject.key", "c", "target.object", "target.node" }, + Constraint { "wireplumber.collection", "-" }, }, }, execute = function (event)