|
@@ -182,13 +182,22 @@ impl Sysopt {
|
|
|
return Ok(());
|
|
|
}
|
|
|
|
|
|
- // macos每次启动都更新登录项,避免重复设置登录项
|
|
|
#[cfg(target_os = "macos")]
|
|
|
- let _ = auto.disable();
|
|
|
+ {
|
|
|
+ if enable && !auto.is_enabled().unwrap_or(false) {
|
|
|
+ // 避免重复设置登录项
|
|
|
+ let _ = auto.disable();
|
|
|
+ auto.enable()?;
|
|
|
+ } else if !enable {
|
|
|
+ let _ = auto.disable();
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
+ #[cfg(not(target_os = "macos"))]
|
|
|
if enable {
|
|
|
auto.enable()?;
|
|
|
}
|
|
|
+
|
|
|
*self.auto_launch.lock() = Some(auto);
|
|
|
|
|
|
Ok(())
|