1
0
Fork 0
forked from wry/wry

Merge pull request #197 from mahkoh/jorth/layer-shell

Implement remaining layer shell features
This commit is contained in:
mahkoh 2024-05-09 12:14:22 +02:00 committed by GitHub
commit 3c61dd5fd4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
45 changed files with 857 additions and 402 deletions

View file

@ -35,6 +35,7 @@ use {
clonecell::{CloneCell, UnsafeCellCloneSafe},
copyhashmap::CopyHashMap,
errorfmt::ErrorFmt,
hash_map_ext::HashMapExt,
numcell::NumCell,
oserror::OsError,
smallmap::SmallMap,
@ -184,7 +185,7 @@ impl Backend for MetalBackend {
dev.cb.take();
}
}
for (_, dev) in self.device_holder.drm_devices.lock().drain() {
for dev in self.device_holder.drm_devices.lock().drain_values() {
dev.futures.clear();
for crtc in dev.dev.crtcs.values() {
crtc.connector.take();
@ -196,13 +197,13 @@ impl Backend for MetalBackend {
lease.crtcs.clear();
lease.planes.clear();
};
for (_, mut lease) in dev.dev.leases.lock().drain() {
for mut lease in dev.dev.leases.lock().drain_values() {
clear_lease(&mut lease);
}
for (_, mut lease) in dev.dev.leases_to_break.lock().drain() {
for mut lease in dev.dev.leases_to_break.lock().drain_values() {
clear_lease(&mut lease);
}
for (_, connector) in dev.connectors.lock().drain() {
for connector in dev.connectors.lock().drain_values() {
{
let d = &mut *connector.display.borrow_mut();
d.crtcs.clear();