gpui2: Fix instance of map_entry lint
This commit is contained in:
@@ -26,6 +26,7 @@ use std::{
|
||||
any::{Any, TypeId},
|
||||
borrow::{Borrow, BorrowMut, Cow},
|
||||
cell::RefCell,
|
||||
collections::hash_map::Entry,
|
||||
fmt::Debug,
|
||||
future::Future,
|
||||
hash::{Hash, Hasher},
|
||||
@@ -637,7 +638,8 @@ impl<'a> WindowContext<'a> {
|
||||
let handle = self.window.handle;
|
||||
let display_id = self.window.display_id;
|
||||
|
||||
if !self.frame_consumers.contains_key(&display_id) {
|
||||
let mut frame_consumers = std::mem::take(&mut self.app.frame_consumers);
|
||||
if let Entry::Vacant(e) = frame_consumers.entry(display_id) {
|
||||
let (tx, mut rx) = mpsc::unbounded::<()>();
|
||||
self.platform.set_display_link_output_callback(
|
||||
display_id,
|
||||
@@ -669,8 +671,10 @@ impl<'a> WindowContext<'a> {
|
||||
.ok();
|
||||
}
|
||||
});
|
||||
self.frame_consumers.insert(display_id, consumer_task);
|
||||
e.insert(consumer_task);
|
||||
}
|
||||
debug_assert!(self.app.frame_consumers.is_empty());
|
||||
self.app.frame_consumers = frame_consumers;
|
||||
|
||||
if self.next_frame_callbacks.is_empty() {
|
||||
self.platform.start_display_link(display_id);
|
||||
|
||||
Reference in New Issue
Block a user