opt: remove unnecessary rgba events to decrease memory usage

This commit is contained in:
Kingtous 2023-02-11 10:14:09 +08:00
parent 491932cda1
commit f8c78a6bf2

View File

@ -291,10 +291,14 @@ impl InvokeUiSession for FlutterHandler {
fn on_rgba(&self, data: &[u8]) {
if let Some(stream) = &*self.event_stream.read().unwrap() {
drop(self.rgba.write().unwrap().replace(data.to_owned()));
let former_rgba = self.rgba.write().unwrap().replace(data.to_owned());
if former_rgba.is_none() {
// The [former_rgba] is none, which means the latest rgba had taken from flutter.
// We need to send a signal to flutter for notifying there's a new rgba buffer here.
stream.add(EventToUI::Rgba);
}
}
}
fn set_peer_info(&self, pi: &PeerInfo) {
let mut displays = Vec::new();