Hello everyone!
Lime 8.0.0 and OpenFL 9.2.0 have now officially released on Github and will be submitted to Haxelib shortly!
Quite a lot has happened in the time since OpenFL 9.1.0 including a few shakeups such as leadership changes and a Lime domain move from lime.software to lime.openfl.org. More importantly, we have some impressive stuff by the core team (like the new filesystem package by yours truly
). Also noteworthy is that both Josh Tynjala and I have now been added to the Haxelib contributors list which should allow us to improve the timeliness and execution of future releases.
I’m extremely excited about the new Lime and OpenFL and I want to share so much thanks to everyone who contributed during this release cycle. - plus a special thanks to @joshtynjala and @player_03 for putting in so much effort to get this one out.
This update contains a lot of fixes, improvements and other goodies, but I feel like we are just getting started - so look forward toward more exciting things to follow!
Changelog
OpenFL
- Added
openfl.text.StyleSheetimplementation forTextField - Added
scaleModeimplementation toStage - Added automatic scaling on HiDPI screens when
window.allow-high-dpienabled in project (use-Dopenfl-disable-hdpito restore old behavior) - Added
File,FileStream, andFileModein theopenfl.filesystempackage to read and write files on native platforms - Added
openfl.desktop.NativeProcessto run executables on native platforms - Added
openfl.display.ChildAccessabstract to simplify access to nested display objects - Added
openfl.net.IDynamicPropertyOutputandopenfl.net.IDynamicPropertyWriterinterfaces - Added
openfl.net.Responder,openfl.utils.Namespace, andopenfl.utils.QNameclasses - Added
isXMLName,registerClassAlias, andgetClassByAliasstatic methods toopenfl.Lib - Added
condenseWhiteproperty toTextFieldforhtmlTextwhitespace removal - Added
openfl.globalization.DateTimeFormatterimplementation for HTML5 and Flash (defaults to en_US on native platforms) - Added
someandeverymethods toVector - Added session cookie management for
URLLoaderon native platforms - Added Stage 3D to the DOM renderer on HTML5
- Added optional text measurement with DIV on HTML5 (use
-Dopenfl-measuretext-div) - Added
fromBundlestatic method toopenfl.utils.AssetLibrary - Improved
TextFieldDOM rendering and measurement on HTML5 - Improved
Font.enumerateFontsto return device fonts, if specified - Improved visibility of focused
TextFieldon mobile by specifying its global rectangle - Improved
restrictparsing inTextFieldwhen it contains multiple^characters - Improved
<li>element rendering inTextFieldby adding line breaks and displaying bullets - Improved
htmlTextparsing inTextFieldfor HTML entity character codes like&and€ - Improved positioning of underline in
TextField - Improved
URLVariablessyntax compatibility with Flash by adding@:arrayAccess - Improved implementation of
openfl.utils.Object - Improved output file size when Lime sets disable_preloader_assets
- Improved
getMusicmethod onAssetsto allow streaming Vorbis files on native platforms - Improved FLA library support by allowing
Spriteto be used as linkage base class - Fixed rendering of UTF-8 characters on macOS
- Fixed the last line in a
TextFieldgetting cut off sometimes when auto-sized - Fixed inconsistent letter spacing in
TextField - Fixed missing bold and italic variants in
TextFieldon native platforms - Fixed missing
Event.OPENdispatch inLoaderandURLLoader - Fixed missing bubbling of
TextEvent.LINK - Fixed signature of
splicemethod onVector - Fixed missing dispatch of
FocusEvent.MOUSE_FOCUS_CHANGEin some situations - Fixed rendering of
openfl.text.StaticText
Lime
- Updated HashLink to version 1.12
- Updated Android minimum SDK version to 21
- Updated Electron template to version 18
- Updated HTML5 to high DPI by default
- Added
--templatecommand line option to Lime tools - Added
--appstoreand--adhoccommand line options for AIR on iOS to Lime tools (to match iOS native) - Added
-air-simulatorcommand line option for AIR to Lime tools (avoids packaging full AIR app) - Added
<config:air profile="value"/>to optionally support custom AIR profiles in simulator - Added
setTextInputRecttoWindowto specify a rectangle that has focus for text input - Added
JNISafetyto improve JNI communication on Android - Added
manageCookiestoHTTPRequestto support cookies on native platforms (only session for now) - Added
pitchproperty toAudioSource - Added
-Delectronflag to Electron builds so that it’s possible to use#if electron - Added icon priorities to allow a library to provide a default icon that the user can override
- Improved HashLink .app file generation on macOS
- Improved performance of
HTTPRequeston native platforms with better buffer management - Improved support for Android 12 (SDK 31) and newer
- Improved output file size if no assets are defined (sets
disable_preloader_assetsdefine) - Improved stage sizing on Electron (defaults to
0for fluid width/height, same as regular browsers) - Fixed garbage collector crash issue on iOS 12
- Fixed iOS build that failed because of missing Metal.framework dependency
- Fixed switching between light and dark modes on Android destroying the Lime activity
- Fixed
getCurrentTimeonAudioSourcefor streaming sounds on native platforms - Fixed wrong types on
NativeMenuItemFlash externs - Fixed set clipboard when
nullis passed (now changes to an empty string automatically) - Fixed warnings for deprecated “devicemotion” events on Firefox
- Fixed incompatibility with “genes” Haxelib to allow generating JS Modules



