From 2ddd95cf408cc2752f1a8721375992edf2c8ab84 Mon Sep 17 00:00:00 2001 From: Tunglies <77394545+Tunglies@users.noreply.github.com> Date: Sat, 13 Jun 2026 19:48:49 +0800 Subject: [PATCH] refactor(macos): avoid speed text clone --- src-tauri/src/utils/tray_speed.rs | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/src-tauri/src/utils/tray_speed.rs b/src-tauri/src/utils/tray_speed.rs index f51c6d994..655f64a71 100644 --- a/src-tauri/src/utils/tray_speed.rs +++ b/src-tauri/src/utils/tray_speed.rs @@ -149,21 +149,15 @@ fn apply_status_item_attributed_title(status_item: &NSStatusItem, text: &NSStrin /// * `down` - 下行速率(字节/秒) pub fn set_speed_attributed_title(status_item: &NSStatusItem, up: u64, down: u64) { let speed_text = format_tray_speed(up, down); - let changed = LAST_DISPLAY_STR.with(|last| { - let mut last_borrow = last.borrow_mut(); - if *last_borrow == speed_text { - false - } else { - *last_borrow = speed_text.clone(); - true + LAST_DISPLAY_STR.with(|last| { + let mut last = last.borrow_mut(); + if last.as_str() == speed_text { + return; } + *last = speed_text; + let ns_string = NSString::from_str(last.as_str()); + apply_status_item_attributed_title(status_item, &ns_string, true); }); - - if !changed { - return; - } - let ns_string = NSString::from_str(&speed_text); - apply_status_item_attributed_title(status_item, &ns_string, true); } /// 清除 NSStatusItem 按钮上的富文本速率显示