Skip to content

v1.6.0

Choose a tag to compare

@bestK bestK released this 10 Jun 08:50

New Features

  • Dialog Control API: open_dialog() / close_dialog() / dialog_is_open() — Lua scripts can now programmatically control dialog windows
  • Animation Module (animation.*): built-in animation effects for dialog elements
    • blink, fade_in, fade_out, scale, pulse, fly, color, ping_pong, loop, progress
    • Easing functions: ease_in, ease_out, ease_in_out, bounce, lerp
  • Dialog Render Callback: dialog({render = function() ... end}) — content only computed when dialog is open, zero overhead during bar refresh
  • Animation Demo: examples/animation_demo.lua showcasing all effects

Improvements

  • __dialog_open global auto-injected before script execution
  • dialog() strips content when dialog is not open (skip C-side parsing)
  • script_exec_file_try() non-blocking variant prevents dialog refresh from freezing UI
  • DIALOG_MAX_ITEMS increased from 8 to 16
  • Script errors now logged via logger_write (previously silent)
  • [script error] on bar now logs the script path for debugging
  • system_monitor.lua refactored to use render mode

Bug Fixes

  • Fix stack overflow crash when clicking jsonpath in edit dialog (ScriptResult 7.4MB on stack → heap)
  • Fix dialog path matching (show_script_dialog now resolves to absolute path)
  • Fix script_exec_file returning FALSE for scripts with empty display but valid dialog

Full Changelog: v1.5.5...v1.6.0