MCPcopy Create free account
hub / github.com/GCWing/BitFun / set_macos_edit_menu_mode

Function set_macos_edit_menu_mode

src/apps/desktop/src/api/system_api.rs:300–343  ·  view source on GitHub ↗
(
    state: State<'_, AppState>,
    app: tauri::AppHandle,
    request: SetMacosEditMenuModeRequest,
)

Source from the content-addressed store, hash-verified

298
299#[tauri::command]
300pub async fn set_macos_edit_menu_mode(
301 state: State<'_, AppState>,
302 app: tauri::AppHandle,
303 request: SetMacosEditMenuModeRequest,
304) -> Result<(), String> {
305 #[cfg(target_os = "macos")]
306 {
307 let current_mode = *state.macos_edit_menu_mode.read().await;
308 if current_mode == request.mode {
309 return Ok(());
310 }
311
312 {
313 let mut edit_mode = state.macos_edit_menu_mode.write().await;
314 *edit_mode = request.mode;
315 }
316
317 let language = state
318 .config_service
319 .get_config::<String>(Some("app.language"))
320 .await
321 .unwrap_or_else(|_| "zh-CN".to_string());
322 let menubar_mode = if state.workspace_path.read().await.is_some() {
323 crate::macos_menubar::MenubarMode::Workspace
324 } else {
325 crate::macos_menubar::MenubarMode::Startup
326 };
327
328 crate::macos_menubar::set_macos_menubar_with_mode(
329 &app,
330 &language,
331 menubar_mode,
332 request.mode,
333 )
334 .map_err(|error| error.to_string())?;
335 }
336
337 #[cfg(not(target_os = "macos"))]
338 {
339 let _ = (&state, &app, &request);
340 }
341
342 Ok(())
343}
344
345#[derive(Debug, Serialize, Deserialize)]
346#[serde(rename_all = "camelCase")]

Callers

nothing calls this directly

Calls 3

readMethod · 0.45
writeMethod · 0.45

Tested by

no test coverage detected