From eaa481cbeae08b33fae96de89250c72c91211976 Mon Sep 17 00:00:00 2001 From: rustdesk Date: Sun, 24 Apr 2022 14:53:19 +0800 Subject: [PATCH] fix transparent cursor --- src/ui/remote.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/ui/remote.rs b/src/ui/remote.rs index c653de4a2..08084e965 100644 --- a/src/ui/remote.rs +++ b/src/ui/remote.rs @@ -930,7 +930,12 @@ impl Handler { } fn set_cursor_data(&mut self, cd: CursorData) { - let colors = hbb_common::compress::decompress(&cd.colors); + let mut colors = hbb_common::compress::decompress(&cd.colors); + if colors.iter().filter(|x| **x != 0).next().is_none() { + log::info!("Fix transparent"); + // somehow all 0 images shows black rect, here is a workaround + colors[3] = 1; + } let mut png = Vec::new(); if let Ok(()) = repng::encode(&mut png, cd.width as _, cd.height as _, &colors) { self.call(