提交 2c82909b 编写于 作者: J Johannes Rieken 提交者: SteVen Batten

dispose submenu after use (#62848)

* dispose submenu after use

* dispose in the native case as well
上级 c1d07a60
...@@ -745,6 +745,7 @@ export class MenubarControl extends Disposable { ...@@ -745,6 +745,7 @@ export class MenubarControl extends Disposable {
const submenuActions: SubmenuAction[] = []; const submenuActions: SubmenuAction[] = [];
updateActions(submenu, submenuActions); updateActions(submenu, submenuActions);
target.push(new SubmenuAction(action.label, submenuActions)); target.push(new SubmenuAction(action.label, submenuActions));
submenu.dispose();
} else { } else {
action.label = this.calculateActionLabel(action); action.label = this.calculateActionLabel(action);
target.push(action); target.push(action);
...@@ -998,7 +999,8 @@ export class MenubarControl extends Disposable { ...@@ -998,7 +999,8 @@ export class MenubarControl extends Disposable {
if (menuItem instanceof SubmenuItemAction) { if (menuItem instanceof SubmenuItemAction) {
const submenu = { items: [] }; const submenu = { items: [] };
this.populateMenuItems(this.menuService.createMenu(menuItem.item.submenu, this.contextKeyService), submenu, keybindings); const menuToDispose = this.menuService.createMenu(menuItem.item.submenu, this.contextKeyService);
this.populateMenuItems(menuToDispose, submenu, keybindings);
let menubarSubmenuItem: IMenubarMenuItemSubmenu = { let menubarSubmenuItem: IMenubarMenuItemSubmenu = {
id: menuItem.id, id: menuItem.id,
...@@ -1007,6 +1009,7 @@ export class MenubarControl extends Disposable { ...@@ -1007,6 +1009,7 @@ export class MenubarControl extends Disposable {
}; };
menuToPopulate.items.push(menubarSubmenuItem); menuToPopulate.items.push(menubarSubmenuItem);
menuToDispose.dispose();
} else { } else {
let menubarMenuItem: IMenubarMenuItemAction = { let menubarMenuItem: IMenubarMenuItemAction = {
id: menuItem.id, id: menuItem.id,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册