Переглянути джерело

fix(core): menu `remove` js binding not working (#9219)

* Fix menu `remove` js binding not working

* add change file [skip ci]

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.app>
Tony 1 рік тому
батько
коміт
43230cb6b7
2 змінених файлів з 10 додано та 5 видалено
  1. 5 0
      .changes/fix-menu-remove-api.md
  2. 5 5
      core/tauri/src/menu/plugin.rs

+ 5 - 0
.changes/fix-menu-remove-api.md

@@ -0,0 +1,5 @@
+---
+"tauri": patch:bug
+---
+
+Fixes the menu plugin `remove` command signature.

+ 5 - 5
core/tauri/src/menu/plugin.rs

@@ -536,19 +536,19 @@ fn insert<R: Runtime>(
 #[command(root = "crate")]
 fn remove<R: Runtime>(
   app: AppHandle<R>,
-  menu_rid: ResourceId,
-  menu_kind: ItemKind,
+  rid: ResourceId,
+  kind: ItemKind,
   item: (ResourceId, ItemKind),
 ) -> crate::Result<()> {
   let resources_table = app.resources_table();
   let (rid, kind) = item;
-  match menu_kind {
+  match kind {
     ItemKind::Menu => {
-      let menu = resources_table.get::<Menu<R>>(menu_rid)?;
+      let menu = resources_table.get::<Menu<R>>(rid)?;
       do_menu_item!(resources_table, rid, kind, |i| menu.remove(&*i))?;
     }
     ItemKind::Submenu => {
-      let submenu = resources_table.get::<Submenu<R>>(menu_rid)?;
+      let submenu = resources_table.get::<Submenu<R>>(rid)?;
       do_menu_item!(resources_table, rid, kind, |i| submenu.remove(&*i))?;
     }
     _ => return Err(anyhow::anyhow!("unexpected menu item kind").into()),