@Lexikos Lexikos released this Dec 17, 2016

Fixed File.ReadNum() repeating old data if a prior File.Read() had stopped reading at the end of the buffer.
Improved buffer utilisation when File.Read() reaches the end of the buffered data.
Fixed GuiControl +Password to use the default bullet character on XP and later.
Fixed GuiControl +/-Password to redraw the control immediately.



@Lexikos Lexikos released this Nov 19, 2016 · 5 commits to master since this release

Fixed COM exception messages to not end in `r.
Fixed {U+x} to support supplementary characters (x > 0xFFFF).
Fixed class properties which lack get{} to return an empty value instead of the internal Property object when the class has a base which does not define a value for the property. Properties defined in baseless classes already behaved correctly.
Fixed the background color of controls on a Tab3 control when the system has visual styles disabled (i.e. Windows Classic).
Fixed handling of thread-exit in functions which are called directly by an event (such as OnExit functions). This bug had no known effect except in the v2-alpha branch.
Fixed the debugger to detect disconnection immediately (i.e. when a client terminates without calling stop/detach).
Fixed the debugger to treat property_get -m 0 as "unlimited", as per the DBGp spec.
Fixed the debugger to expect base64 for property_set -t integer/float, as per the DBGp spec.



@Lexikos Lexikos released this Oct 13, 2016 · 14 commits to master since this release

Added a Run with UI Access option to the installer.
Added documentation for Tab3 autosizing.
Fixed several Tab3 bugs:

  • Autosizing was not being triggered by the first call to Gui Show if the AutoSize or w and h options were used.
  • If a Tab3 control is empty when autosizing occurs, it now retains the default size instead of becoming unusable.
  • Autosizing now occurs immediately before creating another tab control, as though Gui Tab was called.
  • Autosizing failed if the tab control had negative screen coords.
  • Hiding a Tab3 control with GuiControl now also hides its dialog/background.

Fixed OnMessage to pass lParam as unsigned on 32-bit.
Fixed Gui Name : to allow spaces before the colon.
Fixed identifying a Gui or GuiControl by HWND with a negative value.
Fixed ComObject to suppress any errors raised by disconnection of events after the script has released the object.
Fixed Gui Show causing the window to shrink if it had a multi-line menu bar.
Fixed LV_InsertCol(n, width) not causing ListView scrollbar to update on some OS versions.
Optimized code size of FileRecycleEmpty.



@Lexikos Lexikos released this Aug 2, 2016 · 26 commits to master since this release

Changed Hotkey, If, Expression to raise an error if the unused third parameter is not blank.
Fixed &&, || and ternary to release any object used as the condition, as in if (a.subObject && b).
Fixed Gui/GuiControl failing to "check" radio buttons within a Tab3 control.
Fixed FileCreateShortcut to allow relative paths for the LinkFile parameter on Windows 10.
Fixed themed Tab3 control to not override the custom text color of its controls.
Fixed debugger mishandling continuation commands in some specific cases.



@Lexikos Lexikos released this May 22, 2016 · 34 commits to master since this release

Breaking changes:
Passing SetTimer's Label parameter an empty variable or an expression which results in an empty value is now considered an error. The parameter must be either given a non-empty value or completely omitted.
Run-once timers are automatically deleted after running if they are associated with an object created by the script. This allows the object to be freed if the script is no longer referencing it, but it also means the timer's Period and Priority are not retained.
SetTimer, Hotkey, GuiControl and Menu now check the minimum parameter count of functions given by reference (not just by name, as in previous versions). If the function requires too many parameters, an error is raised or ErrorLevel is set (as appropriate).
Backward-compatible changes:
If SetTimer's Label parameter is omitted and A_ThisLabel is empty, the current timer (if any) is used.
New features:
Added Tab3 control type, solving a number of issues with Tab controls.
Fixed GuiControl to update controls when adding/deleting tabs. Specifically:

  • Selecting a new tab with || now works correctly.
  • Deleting all tabs now hides the controls of the former tab.

Fixed +Disabled/+Hidden losing effect on controls in a tab.
Fixed disabled tab controls to ignore Ctrl+Tab.
Fixed Gui Tab without parameters to start a new radio group if applicable. Gui Tab with parameters already had this effect.



@Lexikos Lexikos released this May 20, 2016 · 49 commits to master since this release

Fixed Menu x, Insert, y, z, % object to use the object, not ignore it.
Fixed Menu x, Add, :item text, % object to use the object, not look for a submenu.



@Lexikos Lexikos released this May 15, 2016 · 52 commits to master since this release

Fixed break label crashing the program if nested directly inside its target loop.