* perf: utilize smartstring for string handling - Updated various modules to replace standard String with smartstring::alias::String for improved performance and memory efficiency. - Adjusted string manipulations and conversions throughout the codebase to ensure compatibility with the new smartstring type. - Enhanced readability and maintainability by using `.into()` for conversions where applicable. - Ensured that all instances of string handling in configuration, logging, and network management leverage the benefits of smartstring. * fix: replace wrap_err with stringify_err for better error handling in UWP tool invocation * refactor: update import path for StringifyErr and adjust string handling in sysopt * fix: correct import path for CmdResult in UWP module * fix: update argument type for execute_sysproxy_command to use std::string::String * fix: add missing CmdResult import in UWP platform module * fix: improve string handling and error messaging across multiple files * style: format code for improved readability and consistency across multiple files * fix: remove unused file
21 lines
632 B
Rust
21 lines
632 B
Rust
use super::CmdResult;
|
|
use crate::{logging, utils::logging::Type};
|
|
|
|
// TODO: 前端通过 emit 发送更新事件, tray 监听更新事件
|
|
/// 同步托盘和GUI的代理选择状态
|
|
#[tauri::command]
|
|
pub async fn sync_tray_proxy_selection() -> CmdResult<()> {
|
|
use crate::core::tray::Tray;
|
|
|
|
match Tray::global().update_menu().await {
|
|
Ok(_) => {
|
|
logging!(info, Type::Cmd, "Tray proxy selection synced successfully");
|
|
Ok(())
|
|
}
|
|
Err(e) => {
|
|
logging!(error, Type::Cmd, "Failed to sync tray proxy selection: {e}");
|
|
Err(e.to_string().into())
|
|
}
|
|
}
|
|
}
|