Skip to content

Commit e136c66

Browse files
committed
Clean up object added/removed code.
1 parent 3795e5e commit e136c66

File tree

1 file changed

+8
-11
lines changed

1 file changed

+8
-11
lines changed

src/backend/manager.rs

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -154,8 +154,7 @@ mod imp {
154154
wp_om.request_object_features(wp::pw::GlobalProxy::static_type(), wp::core::ObjectFeatures::ALL);
155155

156156
wp_om.connect_object_added(clone!(@weak self as imp, @weak wp_core as core => move |_, object| {
157-
let devicemodel = &imp.device_model;
158-
if let Some(node) = object.dynamic_cast_ref::<wp::pw::Node>() {
157+
if let Some(node) = object.downcast_ref::<wp::pw::Node>() {
159158
let mut hidden: bool = false;
160159
// Hide ourselves.
161160
if node.name().unwrap_or_default() == "pwvucontrol-peak-detect" {
@@ -185,22 +184,20 @@ mod imp {
185184
pwvucontrol_info!("Got node: {} bound id {}", node.name().unwrap_or_default(), node.bound_id());
186185
let pwobj = PwNodeObject::new(node);
187186
pwobj.set_hidden(hidden);
188-
let model = &imp.node_model;
189-
model.append(&pwobj);
190-
} else if let Some(device) = object.dynamic_cast_ref::<wp::pw::Device>() {
191-
let n: String = device.pw_property("device.name").unwrap();
192-
pwvucontrol_info!("Got device: {n} bound id {}", device.bound_id());
193-
devicemodel.append(&PwDeviceObject::new(device));
187+
imp.node_model.append(&pwobj);
188+
} else if let Some(device) = object.downcast_ref::<wp::pw::Device>() {
189+
pwvucontrol_info!("Got device: {} bound id {}", device.pw_property::<String>("device.name").unwrap_or_default(), device.bound_id());
190+
imp.device_model.append(&PwDeviceObject::new(device));
194191
} else {
195192
unreachable!("Object must be one of the above, but is {:?} instead", object.type_());
196193
}
197194
}));
198195

199196
wp_om.connect_object_removed(clone!(@weak self as imp => move |_, object| {
200-
if let Some(node) = object.dynamic_cast_ref::<wp::pw::Node>() {
201-
pwvucontrol_info!("removed: {:?} id: {}", node.name(), node.bound_id());
197+
if let Some(node) = object.downcast_ref::<wp::pw::Node>() {
198+
pwvucontrol_info!("removed: {} id: {}", node.name().unwrap_or_default(), node.bound_id());
202199
imp.obj().remove_node_by_id(node.bound_id());
203-
} else if let Some(device) = object.dynamic_cast_ref::<wp::pw::Device>() {
200+
} else if let Some(device) = object.downcast_ref::<wp::pw::Device>() {
204201
imp.obj().remove_device_by_id(device.bound_id());
205202
} else {
206203
pwvucontrol_info!("Object must be one of the above, but is {:?} instead", object.type_());

0 commit comments

Comments
 (0)