Changelog

The format is based on Keep a Changelog.

[1.7.1] - 2025-09-06

Changed

  • Removed the extra spaces in submenu titles

[1.7.0] - 2024-09-05

Changed

  • Move some functions from utils to AppMenu and export AppMenu to be used for other menu bars in other windows

  • Add hotkey_window in MenuItemDescription to define hotkey for special window only when build menu item

  • Add destroy in MenuItemDescription to release resources by user (especially hotkey bind to the menu item)

[1.6.1] - 2025-08-16

Fixed

  • Updated to support new settings and radio groups.

[1.6.0] - 2024-07-27

Fixed

  • Updated MenuHelperExtensionFull to support subgroups and multiple menu items

[1.5.27] - 2024-06-27

Fixed

  • Fix menu remapping into submenus

[1.5.26] - 2024-05-29

Fixed

  • Removed usage of omni.kit.ui

[1.5.25] - 2024-05-29

Removed

  • Removed extraneous dependencies

[1.5.24] - 2024-05-17

Fixed

  • Updated flake8 linting overrides

[1.5.23] - 2024-05-06

Fixed

  • Fixed linting issues

[1.5.22] - 2024-02-26

Fixed

  • OM-120233: Fixed leaks in MenuHelperExtension when registering actions

[1.5.21] - 2024-02-15

Fixed

  • Fixed torn-off menus so ticks get refreshed when refresh_menu_items is called

[1.5.20] - 2024-01-11

Changed

  • Error when default IAppWindow is not available

[1.5.19] - 2024-01-08

Fixed

  • OM-116648: Fix for appear_after multi-choice item list using FIRST/LAST

[1.5.18] - 2023-12-29

Fixed

  • OM-116648: Fix for appear_after multi-choice item list but 1st choice hasn’t been added yet

[1.5.17] - 2023-12-29

Fixed

  • random order test fixes

  • rebuild_menus clears pending refresh updates

  • added clear_menu_data function

[1.5.16] - 2023-12-20

Fixed

  • Typo

[1.5.15] - 2023-11-28

Changed

  • Using omni.kit.menu.core for uiMenu* definitions & delegate

[1.5.14] - 2023-11-28

Changed

  • added documentation

[1.5.13] - 2023-11-14

Changed

  • improved deprecation message

[1.5.12] - 2023-11-17

Added

  • use refresh_menu_items to update menu item hotkey text

[1.5.11] - 2023-11-14

Changed

  • added build_submenu_dict function

[1.5.9] - 2023-11-08

Added

  • refresh_menu_items now supports individual item paths

[1.5.8] - 2023-11-02

Changed

  • Fixed header so it adds menu item and separator

  • added helper class MenuHelperExtension

  • added helper class MenuHelperExtensionFull

[1.5.7] - 2023-11-03

Added

  • Overrode [] and get for dict-like read-only access MenuItemDescription so it can be used as an entry for omni.kit.context_menu

[1.5.6] - 2023-10-19

Added

  • Improved deprecated warnings

  • fix for recursive appear_after using wrong appear_after item on rebuild

  • added replace_menu_items(new_menu, old_menu, name)

[1.5.5] - 2023-08-28

Changed

  • OM-106118: Fix crash in hotkey_changed due to using Destroyed keys

[1.5.4] - 2023-08-28

Changed

  • OM-105932: Use carb.dictionary.get in subscription of setting changed

[1.5.3] - 2023-08-09

Changes

  • Changed add_menu_items message “cannot change delegate” to only show if original/new are both valid

  • Added parent_menu to uiMenu and uiMenuItem

  • Added get_elided_length to IconMenuDelegate

  • Menu names can now be elided

[1.5.2] - 2023-07-27

Changes

  • Adjust submenu arrow size/spacing

  • Adjust tick size/spacing

[1.5.1] - 2023-07-17

Changes

  • Adjust root menu spacing

  • Added more spacing overrides

[1.5.0] - 2023-06-14

Changes

  • Support icons/glyphs with paths

[1.4.13] - 2023-05-15

Changes

  • layout improvement. Added MenuLayoutItem.source_search which can be LayoutSourceSearch.EVERYWHERE or LayoutSourceSearch.LOCAL_ONLY.

  • EVERYWHERE as before

  • LOCAL_ONLY will only search for menu items in current menu

[1.4.12] - 2023-02-23

Changes

  • remove_menu_items() now checks to ensure the requested menu item exists before remove() is called on it.

[1.4.11] - 2023-02-09

Changes

  • Added optional user_style styling dictionary to MenuItemDescription user dictionary

[1.4.10] - 2023-01-30

Changes

  • fixed missing import

[1.4.9] - 2022-11-07

Changes

  • Added debug window activated with SHIFT+CTRL+ATL+M (requires omni.kit.hotkeys.core extension)

  • Removed is_shutting_down on omni.kit.app.POST_QUIT_EVENT_TYPE event

  • Added json save support for menus/layout

[1.4.8] - 2022-11-14

Changes

  • optimized menu rebuilds during app startup

[1.4.7] - 2022-10-24

Changes

  • Strip off USD dependencies.

[1.4.6] - 2022-09-22

Changes

  • Added “exts.omni.kit.menu.utils.logDeprecated” setting so deprecated warnings can be silenced

[1.4.5] - 2022-09-22

Changes

  • When omni.kit.hotkeys.core enabled, register hotkey with hotkey registry. Otherwise, same as before

[1.4.4] - 2022-09-09

Changes

  • Register hotkey with omni.kit.hotkeys.core

[1.4.3] - 2022-09-02

Changes

  • Fixed issue with non-ticked items being tickable

[1.4.1] - 2022-08-29

Changes

  • MenuLayout.Group now supports source for submenu copying

  • MenuLayout.Sort now whole current menu not just non-ordered items

  • MenuLayout.Sort now supports sort_submenus for ordering submenus too

[1.4.0] - 2022-08-16

Changes

  • Fixed issue with refresh_menu_items & items moved via layout

  • Menus now refresh on ui.Menu on_triggered. refresh_menu_items now only set dirty state

[1.3.2] - 2022-08-17

Changes

  • Fix menubar disappearing issue

[1.3.1] - 2022-06-07

Changes

  • Added support for menu delegate

  • Added support for right aligned menus

[1.3.0] - 2022-06-07

Changes

  • Added onclick_action and unclick_action

  • Deprecated onclick_fn

  • Deprecated unclick_fn

  • Deprecated original_svg_color

  • Deprecated onclick_right_fn

[1.2.11] - 2022-05-19

Changes

  • Added info logs to rebuild_menus & refresh_menu_items

  • Added get_debug_stats function to get dictionary of functions called

[1.2.10] - 2022-04-13

Changes

  • Optimized rebuild_menus usage during startup

[1.2.9] - 2022-04-11

Changes

  • Fixed layout ordering issue in Submenu/Submenu

[1.2.8] - 2022-03-10

Changes

  • Fixed missing layout menu issue after multiple remove_menu_items

[1.2.7] - 2022-03-09

Changes

  • Fixed missing layout menu issue

[1.2.6] - 2022-02-23

Changes

  • Added get_merged_menus function

  • Added warning for SubMenu without Menu

  • Added warning for Menu using non-existing menu name

  • Fixed omni.kit.mainwindow load order problems. Will now work if omni.kit.mainwindow is loaded after omni.kit.menu.utils

  • Added tests

  • Fixed visibility issues

  • Fixed layout issues

[1.2.5] - 2022-02-14

Changes

  • Fixed issue with refresh_menu_items refreshing all menus to just named one

  • Fixed issue with sub_menus and show_fn. If show_fn was False sub_menu wasn’t built and refresh_menu_items couldn’t show sub_menu when show_fn became True.

[1.2.4] - 2022-02-02

Changes

  • MenuLayout.Sort has submenu items above others

[1.2.3] - 2022-02-03

Changes

  • Added support for hotkeys press/release callbacks

[1.2.2] - 2022-02-02

Changes

  • Silenced layout warning spam

[1.2.1] - 2022-01-28

Changes

  • Added support for hotkeys using carb.input.GamepadInput

[1.2.0] - 2022-01-21

Changes

  • Added menu layout templates

[1.1.5] - 2022-01-14

Changes

  • Handle external deletion of action mapping

[1.1.4] - 2021-11-23

Changes

  • Fixed leak from async refresh_menu_items

[1.1.3] - 2021-10-25

Changes

  • Added set_default_menu_proirity so extensions cannot change order of existing menus

  • Updated refresh_menu_items to support “immediately” parameter

[1.1.2] - 2021-09-29

Changes

  • Fix for menu of sub_menus being now shown

[1.1.1] - 2021-09-23

Changes

  • Handled removal exceptions. Reported as warnings

[1.1.0] - 2021-08-18

Changes

  • Removed editor_menu support

  • Menus require omni.kit.mainwindow loaded but not dependent

  • Fixed leaks

[1.0.4] - 2021-08-11

Changes

  • Added action mapping for menu hotkeys

[1.0.3] - 2021-08-04

Changes

  • Added ticked_value to MenuItemDescription

  • Added set_hotkey function to MenuItemDescription

[1.0.2] - 2021-06-03

Changes

  • refresh_menu_items now accumulates requests and refreshes each menu at most once a frame. Can be overridden to refresh immediately.

[1.0.1] - 2021-02-02

Changes

  • Fixed leak in hotkeys

  • Fixed issues with ticked menus

  • Fixed issues with duplicate menus with omni.ui

  • Added hotkey info to menus with omni.ui

[1.0.0] - 2020-08-17

Changes

  • Created