Jump to content

Connect SuperML | Leeroopedia MCP: Equip your AI agents with best practices, code verification, and debugging knowledge. Powered by Leeroo — building Organizational Superintelligence. Contact us at founders@leeroo.com.

Heuristic:Facebookresearch Habitat lab Warning Deprecated Legacy UI System

From Leeroopedia
Knowledge Sources
Domains Human_in_the_Loop, Deprecation
Last Updated 2026-02-15 04:00 GMT

Overview

Deprecation warning: the legacy UI system (UIButton, UITextbox) in client_message_manager.py is marked for removal in favor of the newer UICanvasUpdate system.

Description

The source file habitat-hitl/habitat_hitl/core/client_message_manager.py contains the comment # TODO: Deprecated legacy UI system. at line 23, marking the UIButton and UITextbox dataclasses as deprecated. These are being replaced by the UICanvasUpdate system imported from habitat_hitl.core.ui_elements.

Code that imports UIButton or UITextbox from client_message_manager should be migrated to use the UICanvasUpdate API via update_ui_canvas() instead of show_modal_dialogue_box().

Usage

Be aware of this deprecation when building new HITL application states. Prefer the update_ui_canvas method over show_modal_dialogue_box for any new UI interactions. Existing code using the legacy API will continue to work but should be migrated before the deprecated classes are removed.

The Insight (Rule of Thumb)

  • Action: Migrate from UIButton/UITextbox to UICanvasUpdate.
  • Value: Use msg_mgr.update_ui_canvas() instead of msg_mgr.show_modal_dialogue_box().
  • Trade-off: The new API is more flexible but requires adapting existing dialog-based UIs.

Reasoning

The legacy UI classes (UIButton, UITextbox) were the original mechanism for showing modal dialogs to clients. The newer UICanvasUpdate system provides a more flexible canvas-based approach that supports richer UI elements. The TODO: Deprecated legacy UI system comment indicates the maintainers intend to remove the old classes.

Related Pages

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment