v1.6.0
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 elementsblink,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.luashowcasing all effects
Improvements
__dialog_openglobal auto-injected before script executiondialog()strips content when dialog is not open (skip C-side parsing)script_exec_file_try()non-blocking variant prevents dialog refresh from freezing UIDIALOG_MAX_ITEMSincreased from 8 to 16- Script errors now logged via
logger_write(previously silent) [script error]on bar now logs the script path for debuggingsystem_monitor.luarefactored to use render mode
Bug Fixes
- Fix stack overflow crash when clicking jsonpath in edit dialog (
ScriptResult7.4MB on stack → heap) - Fix dialog path matching (
show_script_dialognow resolves to absolute path) - Fix
script_exec_filereturning FALSE for scripts with empty display but valid dialog
Full Changelog: v1.5.5...v1.6.0