Changelog#

This document records all notable changes to the omni.activity.freeze_progress extension.

[3.0.0] - 2025-10-07#

Changed#

  • Updated docs and tests

[2.0.0] - 2025-09-03#

Major Features#

  • Time-Based Progress Mode: New progress tracking based on elapsed time with adaptive slowdown

  • Tips and Tricks System: Display rotating helpful hints below progress bar during operations

  • Adaptive Progress: Intelligent slowdown after 80% to gracefully handle operations exceeding estimated time

  • Dynamic Activity Updates: Ability to update activity text during both time-based and event-based progress

Enhancements#

  • Visual Improvements:

    • Added rounded corners to window and progress bar (customizable radius)

    • Removed spinning wheel indicator for cleaner interface

    • Optimized window sizing to prevent unnecessary scrollbars

    • Dark rounded frame for tips display

  • Event Filtering: Improved activity event filtering for USD, textures, and materials

  • API Consolidation: Unified API with optional parameters instead of separate functions

API Changes#

  • Added start_time_based() with optional tips parameter

  • Added update_activity() for dynamic title updates

  • Added stop_time_based() for explicit time-based progress termination

Technical Improvements#

  • Thread-safe ImGui context for rendering during blocking operations

  • Arctangent-based adaptive progress curve for smooth time overruns

  • Text wrapping implementation for tips display

  • Improved memory management and cleanup

[1.0.0] - 2025-08-02#

Initial Release#

  • Created progress window UI component

  • Progress window renders from separate thread to avoid blocking main thread

  • Based on omni.activity.freeze_monitor implementation pattern