1
0
Fork 0
forked from wry/wry

it: simplify tracking of deleted objects

This commit is contained in:
Julian Orth 2022-05-03 17:31:44 +02:00
parent ae34a65efe
commit fd027d9a5a
17 changed files with 57 additions and 154 deletions

View file

@ -8,7 +8,7 @@ use {
test_compositor::TestCompositor, test_jay_compositor::TestJayCompositor,
test_shm::TestShm, test_xdg_base::TestXdgWmBase,
},
test_object::{Deleted, TestObject},
test_object::TestObject,
test_transport::TestTransport,
testrun::ParseFull,
},
@ -41,7 +41,6 @@ pub struct TestRegistry {
pub shm: CloneCell<Option<Rc<TestShm>>>,
pub xdg: CloneCell<Option<Rc<TestXdgWmBase>>>,
pub seats: CopyHashMap<GlobalName, Rc<WlSeatGlobal>>,
pub deleted: Deleted,
}
macro_rules! singleton {
@ -100,7 +99,6 @@ impl TestRegistry {
id: self.tran.id(),
tran: self.tran.clone(),
client_id: Default::default(),
deleted: Default::default(),
});
self.bind(&jc, singletons.jay_compositor, 1)?;
self.jay_compositor.set(Some(jc.clone()));
@ -114,7 +112,6 @@ impl TestRegistry {
let jc = Rc::new(TestCompositor {
id: self.tran.id(),
tran: self.tran.clone(),
deleted: Default::default(),
});
self.bind(&jc, singletons.wl_compositor, 4)?;
self.compositor.set(Some(jc.clone()));
@ -130,7 +127,6 @@ impl TestRegistry {
tran: self.tran.clone(),
formats: Default::default(),
formats_awaited: Cell::new(false),
deleted: Default::default(),
});
self.bind(&jc, singletons.wl_shm, 1)?;
self.shm.set(Some(jc.clone()));
@ -145,7 +141,6 @@ impl TestRegistry {
id: self.tran.id(),
tran: self.tran.clone(),
destroyed: Cell::new(false),
deleted: Default::default(),
});
self.bind(&jc, singletons.xdg_wm_base, 3)?;
self.xdg.set(Some(jc.clone()));
@ -158,14 +153,13 @@ impl TestRegistry {
name: u32,
version: u32,
) -> Result<(), TestError> {
self.deleted.check()?;
self.tran.send(Bind {
self_id: self.id,
name,
interface: obj.interface().name(),
version,
id: obj.id().into(),
});
})?;
self.tran.add_obj(obj.clone())?;
Ok(())
}