Solar2D Changelog

What's new in Solar2D 2024.3706

Apr 19, 2024
  • Android: checking for exact alarms permission before scheduling notifications (#659) (7975411)

New in Solar2D 2024.3703 (Feb 2, 2024)

  • Apple: Xcode 15.2 (2459919)
  • For linux it is recommended to use snap:
  • sudo snap install solar2d

New in Solar2D 2024.3702 (Jan 3, 2024)

  • Fix: refactor profiling IDs from statics to state members (#661) (c151ca7)
  • Further audio improvements. (#664) (0be9501)
  • iOS: fixing video close crash (#670) (50419f9)
  • Apple: Xcode 15.1 update (#668) (e0d1720)
  • Maintenance (#667) (bbb709c)
  • iOS: fixes crash on older iOS version (#666) (9aa29aa)
  • Core/Android: maintenance (#655) (88635d2)
  • Android: removing deprecated armeabi-v7a (#665) (5501eed)
  • For linux it is recommended to use snap:
  • sudo snap install solar2d

New in Solar2D 2023.3701 (Dec 6, 2023)

  • Changes since previous build:
  • Core: possible fix for audio.onComplete (#657) (1beb40a)
  • iOS: Fix for display.save saving black image on iOS 17+ (#656) (7abc353)
  • Maintenance/core: profiler and stack trace fixes (#645) (de2ea49)
  • For linux it is recommended to use snap:
  • sudo snap install solar2d

New in Solar2D 2023.3700 (Dec 1, 2023)

  • Changes since previous build:
  • Android: attempt to remedy ANRs by killing stuck apps and executing Stop in different queue (#652) (37c1c88)
  • Core: adding some extensions getter method of box2D (#647) (996f85d)
  • Android: maintenance (#648) (82d836f)
  • For linux it is recommended to use snap:
  • sudo snap install solar2d

New in Solar2D 2023.3699 (Oct 16, 2023)

  • Changes since previous build:
  • Apple: adding provisioning profile if iCloud was manually added (237f860)
  • For linux it is recommended to use snap:
  • sudo snap install solar2d

New in Solar2D 2023.3698 (Oct 7, 2023)

  • Changes since previous build:
  • Apple: adding provisioning profile if iCloud was manually added (237f860)
  • For linux it is recommended to use snap:
  • sudo snap install solar2d

New in Solar2D 2023.3697 (Oct 3, 2023)

  • Changes since previous build:
  • Apple: Xcode 15 (#624) (685b98d)
  • For linux it is recommended to use snap:
  • sudo snap install solar2d

New in Solar2D 2023.3696 (Sep 9, 2023)

  • Changes since previous build:
  • Android: handling MediaPlayer exceptions (#616) (215a366)
  • iOS/CoronaCards: MetalANGLE Build (#613) (0feb7b4)
  • For linux it is recommended to use snap:
  • sudo snap install solar2d

New in Solar2D 2023.3692 (Aug 14, 2023)

  • Updating certificates (#591) (19bd8dd)
  • Maintenance (1985065)
  • Maintenance (#590) (a4c12a1)
  • Core: profiling features (#551) (6370683)
  • Native: Plugin Downloader Fix for iOS (#587) (c3db83a)
  • Native: Fixes for iOS Plugin Downloader (#584) (9c93153)
  • Core: Emitter mapping (#567) (652294e)
  • Core: Windows bitmap improvements (#550) (d6dae61)
  • iOS: Alternate Icon Support (#583) (fd71e70)
  • For linux it is recommended to use snap:
  • sudo snap install solar2d

New in Solar2D 2020.3582 Daily (Apr 20, 2020)

  • Simulator: removing alert prompting about failed plugin download

New in Solar2D 2020.3577 Daily (Mar 13, 2020)

  • Changing license to MIT
  • iOS: better web view support for local files
  • iOS/Android: disabling checks for Splash Screen

New in Solar2D 2020.3569 Daily (Feb 5, 2020)

  • Maintenance.

New in Solar2D 2020.3567 Daily (Jan 9, 2020)

  • iOS: trying to fix missing symbols issue
  • iOS: trying to fix missing symbols issue

New in Solar2D 2019.3563 Daily (Dec 18, 2019)

  • Android: added initialSystemUiVisibility property to 'android' key in build.settings (#32)

New in Solar2D 2019.3562 Daily (Dec 16, 2019)

  • macOS/Android: allowing other versions of Java except 1.8

New in Solar2D 2019.3559 Daily (Dec 2, 2019)

  • Android: fixed System UI loosing its state

New in Solar2D 2019.3557 Daily (Nov 30, 2019)

  • Android native: adding missing library

New in Solar2D 2019.3556 Daily (Nov 26, 2019)

  • macOS/Simulator: adding option to clear console on restart

New in Solar2D 2019.3548 Daily (Nov 7, 2019)

  • iOS: fixed text object scrolling with long contents

New in Solar2D 2019.3547 Daily (Nov 4, 2019)

  • iOS/tvOS sdk updated to 13.2

New in Solar2D 2019.3538 Daily (Oct 9, 2019)

  • iOS/tvOS: bumping 13.0 to 13.1
  • iOS/tvOS: bumping versions

New in Solar2D 2019.3530 Daily (Sep 25, 2019)

  • MacOS/Simulator: fixing installation to newer iOS devices
  • Simulator: tweaked build.settings validator

New in Solar2D 2019.3529 Daily (Sep 24, 2019)

  • Update build.settings validator to cover iphone entitlements

New in Solar2D 2019.3527 Daily (Sep 17, 2019)

  • Android: improving native library loader, adding workarounds for android 5.1
  • Android/Native: better app template
  • Maintenance

New in Solar2D 2019.3523 Daily (Sep 9, 2019)

  • Android: get info now returns more architectures
  • Android: fixing video player crash

New in Solar2D 2019.3520 Daily (Aug 29, 2019)

  • Maintenance:
  • Android: trying to fix licensing crash

New in Solar2D 2019.3517 Daily (Aug 16, 2019)

  • Android/Native: updating template, making Google default store
  • Android: adding manifest entry for apache http client to avoid crashing on some devices
  • Android: removing usage of legacy apache http from licensing

New in Solar2D 2019.3515 Daily (Aug 13, 2019)

  • Android: fixing multidex crash
  • Maintenance
  • Android: trying to fix build on some Windows systems

New in Solar2D 2019.3514 Daily (Aug 7, 2019)

  • Android: more Windows build fixes

New in Solar2D 2019.3508 Daily (Jul 28, 2019)

  • iOS/tvOS: updating SDK to 12.4 (Xcode 10.3)

New in Solar2D 2019.3504 Daily (Jul 23, 2019)

  • Android: fixing builds with 32bit java

New in Solar2D 2019.3490 Daily (Jun 21, 2019)

  • Trying to fix gradle build for Windows
  • Expansion file support for new build system

New in Solar2D 2019.3487 Daily (Jun 19, 2019)

  • Maintenance
  • Better handling of facebook and gms ids

New in Solar2D 2019.3476 Daily (Apr 23, 2019)

  • Windows: renewing code signing certificate

New in Solar2D 2019.3474 Daily (Apr 2, 2019)

  • Simulator: fixing parameters for the widget.newButton() for the game template

New in Solar2D 2019.3473 Daily (Mar 27, 2019)

  • MacOS Sim: fixing Xcode 10.2 simulators not being detected

New in Solar2D 2019.3469 Daily (Mar 7, 2019)

  • Framework/Timer: added flag timer.allowIterationsWithinFrame to allow multiple timer event per frame

New in Solar2D 2019.3468 Daily (Feb 27, 2019)

  • Framework/Timer: fixing timer firing more than once per frame

New in Solar2D 2019.3465 Daily (Feb 24, 2019)

  • Core: add timeTransform to graphics.defineEffect to mitigate large number accuracy loses (#16)

New in Solar2D 2019.3464 Daily (Feb 23, 2019)

  • Windows: fixing character event memory leak

New in Solar2D 2019.3461 Daily (Feb 2, 2019)

  • MacOS:
  • Fixing system buttons not being active when starting in fullscreen mode
  • Android:
  • Removing deprecated Google map parameters.
  • Desktop:
  • Adding 'character' event (pr #14)

New in Solar2D 2019.3460 Daily (Jan 23, 2019)

  • Linux: maintenance
  • Native/Android: fixing build scripts for exporting plugin jar

New in Solar2D 2019.3459 Daily (Jan 10, 2019)

  • Core: making SpriteObject functions overridable (pr #9)
  • Android: fixing text field dropping type when setting isSecure to false (pr #10)

New in Solar2D 2019.3458 Daily (Jan 8, 2019)

  • NewSprite 'time' parameter can now be an array (pr #7)

New in Solar2D 2018.3457 Daily (Jan 5, 2019)

  • MacOS: Fixing fake 'a' key event when system shortcut is used (Community fix, pr #4)
  • Maintenance: fixing release build

New in Solar2D 2018.3455 Daily (Dec 28, 2018)

  • Android: adding Network Security Config

New in Solar2D 2018.3454 Daily (Dec 27, 2018)

  • All: disabling any kind of statistics gathering
  • MacOS: Fixing help menu, hiding help entry when DeveloperURL plist entry is not available

New in Solar2D 2018.3453 Daily (Dec 27, 2018)

  • HTML5: fixing 'fbapp-config.json' in FB instant app builder
  • Published:

New in Solar2D 2018.3448 Daily (Dec 7, 2018)

  • HTML5: HTML builds reflects splash screen purchases

New in Solar2D 2018.3447 Daily (Dec 4, 2018)

  • Linux Simulator: added offline Android Builder
  • Maintenance
  • Android: added support for display cutouts to safe area APIs
  • HTML5: Fixing loading progress bar
  • Android: reverted display cutouts support

New in Solar2D 2018.3440 Daily (Nov 22, 2018)

  • HTML5: fixing fullscreen resizing

New in Solar2D 2018.3433 Daily (Nov 12, 2018)

  • Linux Simulator: added menu shortcuts and Relaunching last project
  • Linux Simulator: added html5 build setup dialog

New in Solar2D 2018.3431 Daily (Nov 11, 2018)

  • Maintenance:
  • Linux: responseHeaders item must be always in network event
  • Linux Simulator: implemented Relaunch Project and Close project, added Android Build Setup dialog

New in Solar2D 2018.3430 Daily (Nov 8, 2018)

  • Linux Simulator: added Simulator template
  • HTML5: implemented textField.hasBackground
  • HTML5: fixed the native textfield is not triggering the "submitted" phase when pressing Enter

New in Solar2D 2018.3428 Daily (Nov 6, 2018)

  • Linux Simulator: added main menu
  • Linux Simulator: using width/height from config.lua

New in Solar2D 2018.3426 Daily (Nov 5, 2018)

  • Linux: fixed async network requests
  • iOS/tvOS: fixing label text 12.1 SDK is wrongly displayed as 11.4

New in Solar2D 2018.3425 Daily (Nov 1, 2018)

  • Linux: fixing FPS

New in Solar2D 2018.3424 Daily (Nov 1, 2018)

  • iOS/tvOS: 12.1 templates

New in Solar2D 2018.3424 Daily (Nov 1, 2018)

  • iOS/tvOS: 12.1 templates

New in Solar2D 2018.3410 Daily (Oct 19, 2018)

  • Linux:
  • Fixing native display objects size
  • Implemented native.setActivityIndicator()

New in Solar2D 2018.3403 Daily (Oct 11, 2018)

  • Linux: changed default font

New in Solar2D 2018.3402 Daily (Oct 11, 2018)

  • Linux: fixing ARM using x86 template

New in Solar2D 2018.3400 Daily (Oct 10, 2018)

  • Linux: packaging arch (x86/ARM) specific plugin

New in Solar2D 2018.3390 Daily (Oct 3, 2018)

  • Android:
  • Fixing map not picking up mapsKey on update

New in Solar2D 2018.3388 Daily (Oct 1, 2018)

  • Android: adding license.google.mapsKey to valid config.lua settings
  • HTML5: fixing jpg loader

New in Solar2D 2018.3386 Daily (Sep 28, 2018)

  • Bumping OS version

New in Solar2D 2018.3372 Daily (Sep 18, 2018)

  • Maintenance

New in Solar2D 2018.3371 Daily (Sep 17, 2018)

  • Maintenance

New in Solar2D 2018.3369 Daily (Sep 14, 2018)

  • Building against 12.0 SDK (beta)

New in Solar2D 2018.3366 Daily (Sep 7, 2018)

  • Framework:
  • Making iterating timer more precise

New in Solar2D 2018.3363 Daily (Sep 3, 2018)

  • HTML5: fixed setMask

New in Solar2D 2017.3184 / 2018.3356 Daily (Aug 22, 2018)

  • HTML5: Fixed builder crash related to plugins section

New in Solar2D 2018.3355 Daily (Aug 22, 2018)

  • Android: Fixing foreground service ANR in versions 8+
  • HTML5: Implemented userInput events handler

New in Solar2D 2018.3349 Daily (Aug 13, 2018)

  • HTML5: Applied polyfull code for showAlert()

New in Solar2D 2018.3345 Daily (Aug 7, 2018)

  • HTML5: Fixing IDBFS mounting abort on old devices

New in Solar2D 2018.3338 Daily (Jul 28, 2018)

  • HTML5: fixing touch pointer positions for 'maximized' mode
  • Published:

New in Solar2D 2018.3337 Daily (Jul 27, 2018)

  • HTML5: fixing mouse pointer positions for 'maximized' mode
  • macOS/Simulator: better error message if Xcode isn't set up properly

New in Solar2D 2018.3334 Daily (Jul 23, 2018)

  • HTML5: added checking of FontFaceSet support
  • HTML5: implemented audio.setProperty(, "PITCH", )

New in Solar2D 2018.3333 Daily (Jul 22, 2018)

  • HTML5: fixed touch events in "maximized" mode

New in Solar2D 2018.3332 Daily (Jul 17, 2018)

  • Android: fixing IllegalStateException in BroadcastReciever
  • HTML5: fixing display.save()

New in Solar2D 2018.3319 Daily (Jun 18, 2018)

  • HTML5: fit to window FB Instant app
  • Maintenance
  • HTML5: Taking care of system.activate( "multitouch" )
  • Published:
  • Yes

New in Solar2D 2018.3318 Daily (Jun 17, 2018)

  • HTML5: Fixed multi-touch bug
  • CoronaBuilder: added androidStore parameter

New in Solar2D 2018.3316 Daily (Jun 13, 2018)

  • Maintenance: init openSLES on first use

New in Solar2D 2018.3315 Daily (Jun 11, 2018)

  • HTML5: Fixed FPS issue on 120 Hz screen
  • HTML5: Applied patch from @ponywolf that draws a standard progress bar rather than any text

New in Solar2D 2018.3314 Daily (Jun 8, 2018)

  • HTML5: *Breaking index.html changes* fixed keyboard focus when ran in iframe; click outside native controls now unfocuses them
  • Widget: fixed Table View wrong position of custom scrolling

New in Solar2D 2018.3313 Daily (Jun 7, 2018)

  • Maintenance

New in Solar2D 2018.3311 Daily (Jun 5, 2018)

  • Android: Suspending audio thread in background
  • Published:
  • Yes

New in Solar2D 2018.3310 Daily (Jun 4, 2018)

  • Sat, 2018-06-02 02:41
  • Release notes for build 2018.3309 through 2018.3310
  • Maintenance
  • Published:
  • Yes

New in Solar2D 2018.3309 Daily (Jun 1, 2018)

  • Maintenance

New in Solar2D 2018.3308 Daily (May 31, 2018)

  • Maintenance

New in Solar2D 2018.3307 Daily (May 31, 2018)

  • iOS/tvOS: Xcode 9.4 support

New in Solar2D 2018.3306 Daily (May 30, 2018)

  • Android: changing how audio library memory is handled, should reduce amount of AL related crashes

New in Solar2D 2018.3305 Daily (May 29, 2018)

  • HTML5: Fixed native display object posiitions in old Android devices
  • Maintenance

New in Solar2D 2018.3305 Daily (May 29, 2018)

  • HTML5: Fixed native display object posiitions in old Android devices
  • Maintenance

New in Solar2D 2018.3304 Daily (May 28, 2018)

  • Maintenance

New in Solar2D 2018.3303 Daily (May 28, 2018)

  • Maintenance
  • HTML5: App uses build.settings from 'web' table. If no such table then it uses settings from 'window' table.
  • HTML5: Fixed font loader, it now loads font from file with dots in name
  • HTML5: Fixed text render for right-to-left fonts

New in Solar2D 2018.3301 Daily (May 26, 2018)

  • Maintenance
  • Maintenance
  • Widgets: added nil check to table view
  • Native/iOS: Fixing invalid arm7 binaries generated as result of privacy changes
  • Android: fixed crash on Android 4
  • Maintenance
  • Windos: fixing simulator crashing while building Android with debug output
  • Maintenance

New in Solar2D 2018.3297 Daily (May 23, 2018)

  • Core: EmbossedText shadow and highlight now uses alpha
  • Widget: adding null check to removeWidgets
  • Apple: no longer ignoring setting master volume to 0
  • Native/ios: modifying plugin build script to extract static framework's architectures
  • HTML5: Implemented [, buttonLabels [, listener]] in showAlert()
  • Published:
  • Yes

New in Solar2D 2018.3296 Daily (May 22, 2018)

  • HTML5: Added excludeFiles rules in detailed build log
  • HTML5: Fixed excludeFiles related to subfolders

New in Solar2D 2018.3295 Daily (May 22, 2018)

  • Android: reverted experimental OpenAL fix

New in Solar2D 2018.3294 Daily (May 22, 2018)

  • Android: Experimental fix to OpenAL and PackageStateChange crashes

New in Solar2D 2018.3293 Daily (May 21, 2018)

  • HTML5: Implemented debugBuildProcess flag, displaying detailed build log if debugBuildProcess >= 3

New in Solar2D 2018.3291 Daily (May 21, 2018)

  • HTML5: Maintenance

New in Solar2D 2018.3287 Daily (May 13, 2018)

  • HTML5: Implemented display.save()

New in Solar2D 2018.3286 Daily (May 12, 2018)

  • Release notes for build 2018.3284 through 2018.3286
  • iOS/Android: Corona built apps would not send any personal information about user
  • HTML5: Added loading fonts from subfolders, added .otf fonts support
  • HTML5: Fixed loading fonts from subfolders

New in Solar2D 2018.3284 Daily (May 11, 2018)

  • HTML5: Fixed native display objects position issues
  • HTML5: Maintenance

New in Solar2D 2018.3283 Daily (May 9, 2018)

  • Core: added read-only maxParticles property to particle emitters

New in Solar2D 2018.3281 Daily (Apr 28, 2018)

  • Release notes for build 2018.3280 through 2018.3281
  • HTML5: Maintenance
  • HTML5: Maintenance
  • HTML5: Maintenance
  • Android: catching all exceptions when back button is pressed
  • Android: Maintenance
  • HTML5: fixing error when passing display objects to JS functions

New in Solar2D 2018.3280 Daily (Apr 27, 2018)

  • Android: fixed video can?t be unmuted issue
  • HTML5: Fixed native objects positions in group

New in Solar2D 2018.3279 Daily (Apr 26, 2018)

  • Maintenance: moved asm injections from video cpp to js file
  • HTML5: fixed app loader for IE

New in Solar2D 2018.3278 Daily (Apr 25, 2018)

  • ParticleSystem: Added deltaVelocityX/deltaVelocityY properties in Query Region
  • html5: replaced alert() on Module.printErr()
  • Maintenance: added alert() in Module.printErr()

New in Solar2D 2018.3277 Daily (Apr 24, 2018)

  • Changed Module.print/printErr not to mangle with conversions

New in Solar2D 2018.3276 Daily (Apr 23, 2018)

  • TML5: Reverted previous changes and applied another solution to stop timer if application is paused
  • HTML5: screen default background color is propogated to canvas.parentNode
  • html5: fixed excludedFiles.web triggering build.settings warning
  • HTML5: rewrite of JS plugin wrapper, now without memory leaks: removed add/remove event listener, added LuaIsFunction, LuaCreateFunction and LuaReleasedFunction. Functions now can be passed as parameters from Lua to JS and ackquired with that functions

New in Solar2D 2018.3274 Daily (Apr 21, 2018)

  • Android: checks when unloading GL (should fix rare crash)
  • HTML5: Stop timer if application is paused

New in Solar2D 2018.3273 Daily (Apr 20, 2018)

  • HTML5: Maintenance

New in Solar2D 2018.3272 Daily (Apr 20, 2018)

  • iOS: audio recorder's isRunning would be false before recording permission is granted
  • HTML5 JS Plugin: Implemented getters and setters
  • HTML5: Implemented Lua plugins
  • Android: fixing rare crash
  • Apple: Maintenance
  • HTML5: Changes html
  • macOS/html5: saving Include Standard Resources state for project
  • HTML5: Disabled JS Plugins properties
  • Apple: fixing build
  • HTML5: JS plugin properties are now accessible from Lua

New in Solar2D 2018.3268 Daily (Apr 16, 2018)

  • HTML5: Keep alive reference to passed to JS plugin, so async callbacks should be available now

New in Solar2D 2018.3267 Daily (Apr 15, 2018)

  • HTML5: JS plugin accepts arg, it can be used to call Lua functions from JS

New in Solar2D 2018.3265 Daily (Apr 13, 2018)

  • Core: fixing add/remove event listener not returning result

New in Solar2D 2018.3264 Daily (Apr 12, 2018)

  • HTML5: implemented mouse events

New in Solar2D 2018.3263 Daily (Apr 11, 2018)

  • HTML5: maintenance

New in Solar2D 2018.3262 Daily (Apr 10, 2018)

  • HTML5: maintenance

New in Solar2D 2018.3261 Daily (Apr 10, 2018)

  • HTML5: maintenance
  • HTML5: when defaultMode = "normal" app will not being resized

New in Solar2D 2018.3259 Daily (Apr 6, 2018)

  • Maintenance

New in Solar2D 2018.3258 Daily (Apr 4, 2018)

  • HTML5: renamed .js.gzip to .cjs nad .mem.gzip to .cmem

New in Solar2D 2018.3257 Daily (Apr 3, 2018)

  • HTML5: override existing gzip files in output folder

New in Solar2D 2018.3255 Daily (Apr 3, 2018)

  • HTML5: removed sqlite3 and socket plugins from Core
  • HTML5: implemented app compression

New in Solar2D 2018.3253 Daily (Apr 1, 2018)

  • HTML5: fixed Module.print() in index.html

New in Solar2D 2018.3251 Daily (Mar 31, 2018)

  • HTML5: fixed 'type' property of native input text fields
  • html5: preventing Android settings to be overriden

New in Solar2D 2018.3250 Daily (Mar 29, 2018)

  • Maintenace
  • HTML5: JS event dispatcher works like the Lua side dispatcher

New in Solar2D 2018.3249 Daily (Mar 28, 2018)

  • HTML5: fixed "Cannot accept "Space" key input for HTML5 build"
  • Android: audio2, fix an issue with not looping stream sound
  • Android: audio2, fixed setMaxVolume()

New in Solar2D 2018.3248 Daily (Mar 27, 2018)

  • HTML5: fixing corona builder for Windows
  • HTML5: implemented font loader

New in Solar2D 2018.3247 Daily (Mar 27, 2018)

  • HTML5: added to Corona Builder (macOS)
  • Maintenance
  • HTML5: fixed Corona Builder for windows

New in Solar2D 2018.3246 Daily (Mar 26, 2018)

  • Maintenance

New in Solar2D 2018.3245 Daily (Mar 25, 2018)

  • html5: Fixed text renderer for Safari
  • html5 Builder: Excluded sources from .data file

New in Solar2D 2018.3240 Daily (Mar 21, 2018)

  • Maintenance

New in Solar2D 2018.3239 Daily (Mar 20, 2018)

  • Maintenance

New in Solar2D 2018.3238 Daily (Mar 19, 2018)

  • HTML5: Open Beta
  • Maintenance

New in Solar2D 2018.3236 Daily (Mar 15, 2018)

  • Maintenance

New in Solar2D 2018.3235 Daily (Mar 14, 2018)

  • Maintenance

New in Solar2D 2017.3184 (Dec 19, 2017)

  • Corona Native builds are now supported on Windows:
  • Starting with this build, Windows developers can now use Android Studio to build native based apps including building plugins, linking to native Android libraries similar to the way Mac based users have been able to do for some time.
  • You will find a new “Native” folder in Corona’s Start menu folder, which has our standard “App” template in it. Copy that folder to your project directory and use “Open an Existing Android Studio project” option with Android Studio.
  • New Welcome Window:
  • When you first start Corona you’re presented with a Welcome Window with a list of recent projects, icons to start new projects and open existing projects. This window has been redesigned with a more modern look.
  • Windows Live Server now supports both Bonjour v2 and v3:
  • Bonjour is Apple’s library that lets Corona Live Server work on Windows. Until recently, Bonjour v3 was included with the installation of iTunes. However, Apple no longer includes Bonjour with iTunes. The standalone version of Bonjour is version 2. Live Server now can use either v2 or v3 of Bonjour.
  • Gradient paint now supports arbitrary directions:
  • Previously you could only set directions like 0, 45, 90 and 180 when constructing a gradient fill using the fill.rotation value. It can now take a number allowing you to have gradients at other angles.
  • Windows text renderer is rewritten:
  • Windows text renderer was rewritten to better match other platforms behavior, fixing number of bugs.
  • Google’s ContentProvider path traversal vulnerability warning:
  • This public build also contains an update that addresses Corona made apps that get flagged in Google Play with the “ContentProvider path traversal vulnerability” warning. If you’re getting this warning in Google Play, simply rebuild with this version of Corona.
  • Corona can now use the latest Java:
  • Corona has been updated to use 64 bit Java installations. You no longer need to install a specific version of Java, just have the latest version installed.

New in Solar2D 2017.3068 (Apr 6, 2017)

  • Live Builds:
  • Since Corona Live Builds were introduced, we’ve continued to improve this amazing feature as well as make it available for tvOS and Windows-based Corona Simulator builds. Essentially, live builds allow you to build your project for device(s) just once and then see code/assets update almost instantly on those devices
  • Simulator and core improvements:
  • Native web view objects are now available for both the Corona Simulator for Windows and Win32 desktop builds.
  • The Simulator “Show Project Sandbox” option now opens the actual sandbox folder, not the parent folder one level higher.
  • Key events are now sent to iOS-based Simulator skins.
  • The system.getInfo(“platform”) call returns the platform that the Simulator skin represents. For example, if you have an Android skin selected, it will return android instead of macos when run in the Corona Simulator.
  • When selecting a custom device skin (Window ? View As ? Custom Device…), you can now select the platform to return for system.getInfo(“platform”).
  • A new system directory, system.ApplicationSupportDirectory, is now available on all platforms except for Windows Phone 8.
  • New status bar types have been added for display.setStatusBar() which support Android’s modern translucent options, and other improvements around consistency have been implemented.
  • You can now clear your sandbox files from the Simulator menu.
  • Both native.newVideo() and media.playVideo() now work in both the Windows and macOS versions of the Corona Simulator.
  • New API system.getinfo(“manufacturer”).
  • OS-specific updates:
  • We dropped support for iOS 6 and 7. The new minimum build target is iOS 8.
  • Updated to iOS 10.3 — you will need to update to Xcode 8.3.
  • We added support for Android API level 25 (7.1) and made the minimum supported API level 15 (4.0.3).
  • Windows devices that support touch screens now generate multi-touch events.
  • Plugins:
  • Significant work was done to improve our plugin system. It now supports Android plugin dependencies where different plugins can utilize the correct dependency plugin on a case-by-case basis. In addition, many other features were added to provide better support for plugin developers.

New in Solar2D 2016.2992 (Nov 16, 2016)

  • Corona Simulator:
  • Introduction of a new Welcome window. We’ve made useful links more, well, “useful.” You also have a better view of your recent projects.
  • We now attempt to validate keys and values in build.settings and config.lua. For example, if your app requires a key like FacebookAppId and you enter FaceBookID instead, Corona will alert you that the key isn’t recognized, helping you pinpoint potential issues before you build your app.
  • With iOS 10, Apple made changes to how they scan submitted apps and, as a result, we now provide default values for the various NSDescription strings required by Apple. If you use these permission-based features, however, we strongly recommend that you provide actual values for these strings.
  • macOS 10.12, Xcode 8.x, and iOS 10.x brought considerable changes that needed to be reflected in the Simulator and build process. This build of Corona will require you to use Xcode 8.1 since we now default to iOS 10.1 as the primary SDK.
  • Introduction of Corona live builds (beta) from the Corona Simulator for macOS. These builds are a powerful and efficient way to see exactly how your in-development Corona app will appear on real devices.
  • New borderless skin for testing the iPad Pro.
  • The Simulator for macOS now supports the hardware “back” button when you use an Android or WP8 skin — just select Hardware ? Back from the main menu.
  • Minor improvements to the console log screen introduced in the previous public build.
  • Core:
  • Widget picker wheels are now resizable so that you can incorporate them into your UI with much greater flexibility. Keep an eye out for an upcoming announcement which summarizes this addition and other new features.
  • Improved splash screen controls including per-platform support. You now have the ability to use a unique splash screen image for iOS and another for Android. You can also enable and disable the splash screen for each platform, if desired.
  • Windows:
  • Previously, the default behavior for Windows Desktop builds was to allow multiple instances of apps to run. Most apps, in particular games, only allow one version to run at a time. We have changed it so that Windows desktop apps are now single-instance by default. However, if you are building an app that needs multiple instances, this can still be enabled via a build.settings entry (see here for details).
  • We have improved command line parameter handling for desktop builds and added applicationOpen support to single-instance Win32 desktop apps.

New in Solar2D 2016.2949 (Sep 20, 2016)

  • Simulators: add missing “Borderless” skin in iPad Pro size
  • Fixed issue with splash screen code which caused stacktraces to appear for some people when the splash screen was disabled
  • Core: Fixed crash when custom shader contains empty table. Casenum 5894470
  • Core: Added ability to read/write custom “app” preferences to storage. See APIs system.getPreference(), system.setPreferences(), and system.deletePreferences()
  • Android: Fixed a potential crash that can occur when an app with notification permissions is updated to remove said permissions. Casenum 40070
  • Windows: Fixed bug where “mouse” event would not provide a double right click or double middle click’s 2nd down phase
  • macOS, Windows: fix issue with app sometimes exiting when a build is requested. No casenum
  • Core: Fixes crash caused by an out-of-range frame index for Image Sheets when used with display.newImage(). Now it will display a warning message and default to the last frame in the Image Sheet (same behavior as with display.newImageRect()). Casenum: 47013
  • Physics: Fixed debug draw mode to show the real position of physics bodies in groups that have been scaled or translated. This doesn’t fix the issue with using physics objects in groups but will display the true location of the physics body in relation to the display object. Casenum: 46663
  • Windows, macOS: display a message in the console if an app closes because native.requestExit() was called. No casenum
  • Core: fixing new display objects not triggering scene update after display.save()
  • Updated viewer subrepo to latest version
  • Core: fixing culling offscreen objects with display.save(). Casenum 43011
  • Enterprise: fix issue with signing apps. No casenum
  • iOS: tweaks for iOS 10 beta
  • Core: fixing crash when using TextureResourceCanvas as mask. Hit testing doesn’t work for these masks
  • Core: fixing TextureResourceCanvas not invalidating if released in same frame
  • Core: tweaking warning messages when fill images contain invalid data
  • Core: fixing containers sometimes affecting masked objects (casenum 46668)
  • Core: fixing crash when changing masks within frame (casenum 46685)
  • Windows: Improved clarity of text in top-right corner of the Welcome window (was blurry)
  • Add total elapsed time to the “build succeeded” line for all build types
  • OS X, Windows: change build process to download built app directly from S3 to improve build latencies. No casenum
  • tvOS Enterprise: fixing various issues with bitcode
  • tvOS: adding native.showPopup(“appStore”); fixing error message for iOS
  • iOS Enterprise: added CoronaEventDataKey()

New in Solar2D 2016.2906 (Jun 28, 2016)

  • Core and cross-platform features:
  • Meshes now supported via display.newMesh().
  • Several filters and shaders updated to work with transparency.
  • The system.canOpenURL() API is now available on all platforms.
  • The network.request() API allows new HTTP verbs to be used. You can use PATCH or other verbs in addition to GET, HEAD, POST, PUT and DELETE.
  • Addition of a new json.decodeFile() API which reads JSON files and turns them into Lua tables.
  • New system.newEventDispatcher() API.
  • The display.newEmitter() and video:load() APIs now let you use directories other than your resource directory.
  • New APIs for texture management (graphics.newTexture() and graphics.releaseTextures()).
  • LuaSockets updated to “3.0-rc1” which supports IPv6 and fixes quite a few bugs. This was necessary to update the OpenSSL plugin and meet Apple’s requirements.
  • Minor improvements to widget.newScrollView().
  • Updated transition library with minor fixes around pausing, resuming, and cancelling transitions.
  • Custom fonts can now be loaded simply by file name across all platforms.
  • Corona Simulator:
  • High resolution screen support for macOS (retina) and Windows screens (DPI Awareness).
  • Console improvements.
  • Updates to file handling for opening projects, including opening directories and dragging files to the Corona Simulator icon to open projects.
  • native.showAlert() improvements on Windows.
  • The Corona Simulator now warns you if a plugin is required and needs configuration within build.settings.
  • You now get warnings in the Corona Simulator when there is a file name mismatch due to case sensitivity.
  • Android:
  • Multi-Dex support.
  • Improvements to Android 6.x permission handling.
  • Support for Android Studio builds for Enterprise.
  • Videos can now be loaded from all Corona-defined directories.
  • Updated libpng to version 1.2.56.
  • Fixed an issue involving Java-based plugins and applications exiting.
  • Improvements around licensing support.
  • iOS:
  • In-app purchase API store.purchase() can now take a table of item strings or a single item string, just like the similar API for other purchasing platforms.
  • New lines handled correctly in display.newText().
  • Improved rendering of large text objects.
  • Camera fill can now be invalidated more than once per frame.
  • tvOS:
  • Support for On-Demand Resources.
  • Remote handling improvements including “relativeTouch”.
  • Improved rendering of large text objects.
  • Windows Phone 8 / Windows 10 Mobile:
  • Added Visual Studio 2015 and .NET 4.6 support to CoronaCards for Windows Phone.
  • Windows Desktop:
  • Easier to run Corona from the command line.
  • Added support for surround sound audio (5.1 and 7.1).
  • Support for high resolution screens with “DPI awareness”.
  • Added the ability to show and hide the mouse using native.setProperty().
  • Computers with touch screens will now show a virtual keyboard when you interact with native.newTextField() and native.newTextBox().
  • Better formatting for Corona Simulator error messages.

New in Solar2D 2015.2731 (Oct 8, 2015)

  • New Features and Bug fixes:
  • All: Added an error message if native.newTextBox() fails because width or height is zero.
  • All: Fix issues in handling pausing/resuming of timers. Fix issue where timers would iterate beyond their intended count.
  • All: Provide error messages to the response field for calls to network.request. Fix a runtime error in network.request on Android. Casenum: 42281.
  • All: Removed deprecated “credits” module.
  • All: Removed deprecated ‘storyboard’ module. (Use the Composer API instead.)
  • Android: Added ability to query system.hasEventSource() for features “inputDeviceStatus”, “key”, and “mouse”. (Always returns true on this platform.)
  • CoronaCards: Fixed landscape/Portrait orientation issues. Updated canvas scale and swapping dimensions on orientation change. Casenum 42926.
  • Enterprise: Fixed inclusion of plist entries from build.settings for Enterprise builds: Casenum 43077.
  • Graphics: Fixed bug where if the app is not using content scaling and no content width/height is defined, then the content will wrongly be zoom stretched when a resize occurs.
  • Graphics: Fixed children of snapshot should have non-nil parents. Casenum: 40961.
  • Graphics: Fixed geometry buffer issues. Casenum 40851.
  • Graphics: Fixed horizontal gradients for rounded rects and circles. Casenum 39683.
  • Graphics: Fixed object underneath snapshot could accidentally be added to snapshot’s canvas. Casenum: 40225.
  • Graphics: Fixing hit testing for shapes with wide stroke. Casenum: 31823.
  • Graphics: making BitmapPaint’s scaleX and scaleY properties to be consistent for accessing and setting them. Casenum 42497.
  • Physics: Fixed offset rectangular bodies (https://docs.coronalabs.com/api/library/physics/addBody.html#offsetangled-rectangular-body) to correctly calculate the x/y offset. Casenum: 42333.
  • Physics: Raycasting skips physics objects that have been removed but not yet deleted. Casenum: 42332.
  • Transitions: Fixing a race condition on transition resume. Casenum 42440.
  • Tranistions: Fixed issues with transition.resume() and transition.cancel(): Casenums 33326 and 41054
  • Widgets: Fixed a problem with scrolling tableViews. Casenum 40974.
  • Windows, OS X: Fixed rare crash when certain kinds of accounts logged in: Casenum 42220.
  • Windows: [BREAKING CHANGE] Modified system.getPreference() to return localization strings that are much more consistent with OS X, Android, and iOS. Casenum: 1904.
  • Windows: Added a help [?] button and F1 support to the Corona Simulator “Login”, “Preferences”, “Android Build”, and “Windows Build” dialogs which displays their associated online documentation.
  • Windows: Added native TextField and TextBox support. (Does not support transparency via “alpha” or “hasBackground” properties.)
  • Windows: Changed Corona Simulator menu item “Help\Online Documentation” to go to the Guides webpage instead of the API docs page. Pressing F1 on the main simulator window goes to “Guides” as well.
  • Windows: Enabled Win32 Desktop builds in build menu (2687)
  • Windows: Fixed bug introduced in build #2646 where some TextField/TextBox properties return the wrong values. (Note that the TextField/TextBox features are not supported, but their stubbed out implementation should work as they did before.) Casenum: 41439.
  • Windows: Fixed bug where Corona Simulator will fail to launch if preference “Auto open last project” is checked and the last open project cannot be found on the drive. Casenum: 41047.
  • Windows: Fixed bug where loading an MP3 file on Windows 10 would cause a crash: Casenums: 41702, 41762.
  • Windows: Fixed bug with display.capture*() APIs where it won’t save to the pictures directory if the path contains unicode characters.
  • Windows: Fixed Corona Simulator’s “Preferences” dialog so that its labels won’t get clipped when using a large DPI scale factor.
  • Windows: Fixed default font size which whose height was slightly off by a couple of pixels.
  • Windows: Fixed line endings for files in the Resources directory (including new project templates).
  • Windows: Fixed Multiscene template to use the getObjectByName function. Casenum 41053.
  • Windows: Fixed plugin loading error that can happen if it uses C APIs CoronaLog(), CoronaLuaLogPrefix(), CoronaLuaWarning(), or CoronaLuaError().
  • Windows: Modified “system.TemporaryDirectory” and “system.CachesDirectory” to not reference the same “tmp” directory, which could cause file collision.
  • Windows: Modified system.getPreference() to return a locale string using an underscore ‘_’ for the language/country code separate instead of a dash ‘-’ to be consistent with OS X and iOS.
  • Windows: Moved Corona Simulator’s project sandbox directory from “Roaming” to “Local” under the hidden AppData directory. Prevents sandboxed files from being needlessly synchronized between machines on a Windows domain.
  • Windows: Re-worded Win32 build plugin error messages to better clarify which plugins are not available and how to resolve it.
  • Windows: Removed “Min SDK Version” from “Build for Android” dialog in simulator.
  • Windows: Setting the native activity indicator in the Corona Simulator now also shows a mouse wait cursor. Used to block user input into newly supported native TextField and TextBoxes.
  • Windows: Updated the Corona SDK’s “Online Documentation” web link installed to the start menu to link to the “Guides” webpage instead of the “API” page.
  • Windows/WP8: Added ability to query system.hasEventSource() for “mouse”, “key”, and “inputDeviceStatus”.
  • Windows/WP8: Updated the Corona Labs certifate used to digitally sign Corona SDK and CoronaCards binaries.

New in Solar2D 2014.2511 (Nov 21, 2014)

  • The theme for this release has been around app development workflow. We’ve made numerous improvements to the Corona Simulator, so here are a few highlights:
  • Each device skin now has screen dimensions, so you can preview across the various screen size classes.
  • There’s also a new set of borderless Simulator skins which are more convenient for laptop-sized screens
  • In conjunction, with Corona Editor, we’ve added introspection code, so it’s easier to see property values for display objects, paths, and fills from the debugger.
  • A Corona Terminal (now called the Corona Console) will automatically open when launching Corona Simulator on Mac (now the same as on Windows)
  • Better integration with the Xcode Simulator — if you have an iOS skin selected in the Corona Simulator, the corresponding device will launch under the Xcode Simulator when you do a device build.
  • Device builds now let you exclude files from the build on a per-platform basis.
  • Runtime error popups now show by default on devices for development builds (this is turned off on distribution builds).
  • Other highlights include:
  • Adaptive content scaling
  • Windows Phone 8 support available via CoronaCards
  • Support for Mac OS X 10.10 (Yosemite)
  • Support for iOS 8.0 and 8.1
  • Support for iPhone 6 and iPhone 6 Plus

New in Solar2D 2014.2189 (May 2, 2014)

  • New Features and Bug fixes:
  • All: Output a string describing the hardware and software platform the app is running on to aid support
  • All: Implement "handleRedirects" option for network.request() so that redirects can be handled explicitly if required
  • Core: Allow long pathnames in Lua error messages and stack traces (fixes issue with "Edit Code" on runtime errors not working with long paths). No casenum.
  • Core: Fixed bogus lua stack warning. No casenum.
  • Core: Fixed getTunerVolume(). Casenum: 25702
  • Core: Fixed hash table warning. No casenum.
  • Core: Fixed changes to width/height of a rounded rect were not working correctly. Casenum: 28847
  • Core: Fixed issue where text size incorrect after setting size property to original value. Casenum: 28474
  • Core: Letterboxed apps in landscape orientation returns the correct actual content width and height. Casenum: 28388
  • Core/iOS/Audio: Fixes casenum: 30208. Background music from other apps were being stopped when a Corona app launches.
  • Display: Added alpha support to the “scatter” filter.
  • Display: Added an “aspectRatio” parameter to “filter.polkaDots”
  • Display: Added filter.vignetteMask
  • Display: Added lineObject.anchorSegments
  • Display: Added support for images suffixes to graphics.newOutline(). Casenum: 30296
  • Display: Fixed a typo in filter.vignette that broke it on device
  • Display: Fixed display.save() bug with semi-transparent objects and PNGs. Casenum: 28844
  • Display: Fixed display.save(). Casenum: 28844
  • Display: Fixed gradients with alpha values
  • Display: Fixed sprite animation sequencing. Casenum: 18033
  • Display: Fixed transparency in filter.invert
  • Display: Fixed transparency when using display.capture() and a group. Casenum: 29410
  • Display: Fixed containers and group masks would not properly mask children in certain situations. Casenum: 28872
  • Display: Fixed issue with masking causing black areas around text
  • Display: Resolves issue where changing alpha value of off screen object in group does not update correctly. Casenum: 29332, 28784
  • Mac/Win: Fixed annoying deprecated warning message that occurs when the Simulator detects a Lua syntax error
  • Mac/Win: Fixed issue with build error for Amazon and Nook. Casenum: 29976
  • Mac/Win: Handle build errors more gracefully. No casenum.
  • Mac/Win: Remove Simulator Warning Messages (Mac and Windows). Casenum: 29476
  • Mac/Win: Remove unnecessary platform message for Simulator windows; fix erroneous display.setStatusBarMode() error in Simulator windows. Casenum: 29685
  • Physics: Added Png2Box2D support for ImageSheets
  • Physics: Prevent adding physic bodies to lines
  • Transition 2.0: Added delta treatment for transition.from. Casemum: 26629
  • Transition 2.0: Fixed issue with easing.continuousLoop malforming the object properties on iteration end. Casenum: 29900
  • Transition 2.0: Fixed an issue with the .blink method when changing the object coordinates after calling it. Casenum: 29259
  • Transition 2.0: Fixed a bug with transitions that get cancelled immediately after creation. Casenum 27933
  • Transition 2.0: Fixed onComplete events firing twice. Casenum: 29913
  • Widget 2.0: Added “moved” phase to the tableView touch. Casenum: 28959
  • Widget 2.0: Added native behavior for the separators( they dissapear on touch ). No casenum.
  • Widget 2.0: Added the getValue() getter to the stepper widget. Casenum: 29142
  • Widget 2.0: Adding the background color and row color properties to the pickerWheel. No casenum.
  • Widget 2.0: Adding the scrollView:setIsLocked() method. No casenum.
  • Widget 2.0: Adding the tableView:setIsLocked() function
  • Widget 2.0: Adresses button labels not receiving the touch events. Casenum: 28320, lso fixes 30123 and 30094.
  • Widget 2.0: Fixed rerendering of category row in a table containing many category rows. Casenum: 27170, 25561
  • Widget 2.0: Fixed invalid state for ios7 switch when calling setState(). Partial casenum: 29144
  • Widget 2.0: Fixed reporting row contentHeight for tableView rows. Casenum: 28359
  • Widget 2.0: Fixed the color assignment on tableView rows in case one of the states is not specified. No casenum.
  • Widget 2.0: Fixed the scrolling properties being shared between widgets. Casenum: 29419
  • Widget 2.0: Fixed the scrollView bottom padding in compatibility mode
  • Widget 2.0: Fixed for ios7 theme buttons not returning to default state when placed in a scrollview that gets scrolled. Casenum: 27760
  • Widget 2.0: Fixed label touches on image- and spritesheed-based buttons. Casenum: 28320
  • Widget 2.0: Fixed texture memory not being deallocated by the pickerWheel widget. Casenum: 30229
  • Widget 2.0: Fixed the button labels not receiving touch events for imageFile or spriteSheet buttons. Casenum: 28320
  • Widget 2.0: Fixed the switch alignment for non-ios7 themes. Casenum: 29534, 28960
  • Widget 2.0: Fixed a segmented control issue when setting custom anchor points on the widget itself (not custom defaults). Casenum: 28956
  • Widget 2.0: Fixed issues with rendering category rows with delay in a tableView. Casenum: 25367, 24217
  • Widget 2.0: Fixed over state not propagating correctly for 9slice buttons. No casenum.
  • Widget 2.0: Fixed rendering issues when deleting row in a tableView with variable row heights. Casenum: 25674
  • Widget 2.0: Fixed scrollBar on tableView not updating position after creating more rows. Casenum: 26423
  • Widget 2.0: Fixed segmentedControl touch with custom anchors
  • Widget 2.0: Fixed tableView height calculation and scrollbar positioning when adding / deleting rows postcreation. Casenum: 24217
  • Widget 2.0: Fixed the buttonWidget created using a imageSheet not releasing texture memory. Casenum: 25855
  • Widget 2.0: Fixed the scrollBar appearing on the tableView although the content size is smaller than the view's bounds
  • Widget 2.0: Fixed the scrollToY method of the tableView to stop velocity before transitioning. No casenum.
  • Widget 2.0: Fixed the scrollview jumping to 0,0 after inserting content. Casenum: 30775
  • Widget 2.0: Improving the limit calculation on scrollviews. No casenum.
  • Widget 2.0: Maintenance on the tableView height calculation method
  • Widget 2.0: Params set on category row were empty after category rerendering. Casenum: 27439
  • Widget 2.0: Removed globals created by pickerwheel / progressview. Casenum: 28950
  • Widget 2.0: Fixing the scrollview jumping to 0,0 after inserting content. Improving the limit calculation on scrollviews. * * * Fixing the scrollToY method of the tableView to stop velocity before transitioning. Casenum: 30775
  • Win: Add support for transparency in PNGs in display.save() under Window
  • Win: Change to OpenGL 2.0/2.1 version checking
  • Win: Fixed issue with relaunching a project not working properly when the project was suspended. Casenum: 29653
  • Win: Fixed media.playEventSound only plays once in Windows Simulator. Casenum: 7754
  • Win: Fixed build leaves simulator suspended; added graphical display of suspended state; added shake animation. Casenum: 22040
  • Win: Fixed truncation of log output. Casenum: 30206
  • Win: Fixed system.getInfo( “architectureInfo” ) returns nothing on Windows. Casenum: 29472
  • Win: Removed old version of Corona Project Manager from the install program. This tool can be downloaded separately via “www.coronaprojectmanager.com”.

New in Solar2D 2013.2100 (Feb 11, 2014)

  • New:
  • Graphics 2.0 minor maintenance update.
  • New Features and bug fixes:
  • Android: Fixed issue with vertex shaders that affect various Android devices (which caused a blank screen)
  • Core: filter.colorChannelOffset should take the input texture alpha into account. Casenum 28536
  • Core: Fixed issue where object.fill should honor content scaling for image fills. Casenum: 28513
  • Core: Disabled antialiasing (platform issues).
  • Core: Core: Setting the anchor points to a non numerical value will now throw a lua error.
  • Core: Fixed changing alpha in setFillColor from 0 to 1 on touch causes crash. Casenum 28119
  • Core: Fixed the centering of Box2D bodies around their DisplayObject. Casenum 28033
  • Core: Added the ability to save large DisplayObjects, without cropping, to display.save() and display.capture().
  • Core: Fixed the centering of Box2D bodies around their DisplayObject. Casenum 28033
  • Core: Added new option to display defaults to preloadTextures via display.setDefault( “preloadTextures”, true/false ) (default is true to function like graphics 1.0.)
  • Core: Fixed object.fill should honor Documents baseDir. Casenum: 28213
  • Core: Fixed line:append() wasn’t behaving. Casenum: 28050.
  • Core: Added the “colorMatrix” and “colorPolynomial” shaders.
  • Core: Added transition-v1 library
  • iOS: Fixed DisplayObject anchor animation. Casenum 27665
  • iOS: Fixed an issue where requesting additional Facebook permissions returned the incorrect event state
  • iOS: Fixed an issue where the facebook listener wouldn’t receive an event when the user denies the login request.
  • iOS: Fixed an issue with Korean text being 1 character behind.
  • iOS: Updating WebView to generate loaded events for back/forward/reload/link
  • iOS: Added the ability to query if the app is denied access to the integrated Facebook account. To use it call facebook.accessDenied which will return true if access is denied and false if access is granted.
  • iOS: Fixed an issue where calling facebook.login() would cause the listener to be called too many times
  • Mac/Windows: Added ICON files for Welcome Screen New Project . Casenum 27920
  • Transition 2.0: Fixed a bug with transitions that get cancelled immediately after creation. Casenum #27933
  • Transition 2.0: Fixed the performance issues (now based on Transition 1.0 core)
  • Transition 2.0: Fixed the functionality to pause/resume/cancel by tag or displayobject
  • Widget: Fixed snapback issues on touch and drag outside the view.
  • Widget: Fixed the pickerwheel snapping issues on the columns.
  • Widget: Added the rowTouchDelay property to the tableView constructor. It specifies the touch delay until the event is propagated. No casenum.
  • Widget: Fixed a bug where the tabBar with a left value would not receive taps / touches correctly. No casenum.
  • Widget: Fixes the tableView layout problems when having defined defaults for anchorX/anchorY. Casenum #28095.
  • Widget: Fixes the scrollView event.phase not being passed to the listener. Casenum #28111.
  • Widget: Fixed objects with transitions inside a scrollView being paused on scrollView touch. Casenum #28240
  • Widget: Fixed various issues in widgets that occurred when the default anchor was changed. Casenum: 28340
  • Widget: Fixed the scrollToIndex() tableView behavior on Graphics 2.0, also fixes casenum: 24858.
  • Widget: Fixed background leaking through the tableView in the ios7 theme. Also fixes some other tableview rendering issues, casenum: 26439.
  • Widget: Fixed a bug when deleting a row from a table that is locked or has no scrollbar. Casenum: 26902.
  • Windows: Adding OpenGL driver check earlier in initialization
  • Windows: Adding checking around bind buffer (potential crash issue).
  • Windows: Fixed memory leak. Casenum: 28646

New in Solar2D 2013.2076 (Jan 10, 2014)

  • New:
  • Graphics 2.0 minor maintenance update.
  • New features and bug fixes:
  • Android: Fixed issue with vertex shaders that affect various Android devices (which caused a blank screen)
  • Core: filter.colorChannelOffset should take the input texture alpha into account. Casenum 28536
  • Core: Fixed issue where object.fill should honor content scaling for image fills. Casenum: 28513
  • Core: Disabled antialiasing (platform issues).
  • Core: Core: Setting the anchor points to a non numerical value will now throw a lua error.
  • Core: Fixed changing alpha in setFillColor from 0 to 1 on touch causes crash. Casenum 28119
  • Core: Fixed the centering of Box2D bodies around their DisplayObject. Casenum 28033
  • Core: Added the ability to save large DisplayObjects, without cropping, to display.save() and display.capture().
  • Core: Fixed the centering of Box2D bodies around their DisplayObject. Casenum 28033
  • Core: Added new option to display defaults to preloadTextures via display.setDefault( “preloadTextures”, true/false ) (default is true to function like graphics 1.0.)
  • Core: Fixed object.fill should honor Documents baseDir. Casenum: 28213
  • Core: Fixed line:append() wasn’t behaving. Casenum: 28050.
  • Core: Added the “colorMatrix” and “colorPolynomial” shaders.
  • Core: Added transition-v1 library
  • iOS: Fixed DisplayObject anchor animation. Casenum 27665
  • iOS: Fixed an issue where requesting additional Facebook permissions returned the incorrect event state
  • iOS: Fixed an issue where the facebook listener wouldn’t receive an event when the user denies the login request.
  • iOS: Fixed an issue with Korean text being 1 character behind.
  • iOS: Updating WebView to generate loaded events for back/forward/reload/link
  • iOS: Added the ability to query if the app is denied access to the integrated Facebook account. To use it call facebook.accessDenied which will return true if access is denied and false if access is granted.
  • iOS: Fixed an issue where calling facebook.login() would cause the listener to be called too many times
  • Transition 2.0: Fixed a bug with transitions that get cancelled immediately after creation. Casenum #27933
  • Transition 2.0: Fixed the performance issues (now based on Transition 1.0 core)
  • Transition 2.0: Fixed the functionality to pause/resume/cancel by tag or displayobject
  • Widget: Fixed snapback issues on touch and drag outside the view
  • Widget: Fixed the pickerwheel snapping issues on the columns
  • Widget: Added the rowTouchDelay property to the tableView constructor. It specifies the touch delay until the event is propagated. No casenum
  • Widget: Fixed a bug where the tabBar with a left value would not receive taps / touches correctly. No casenum
  • Widget: Fixes the tableView layout problems when having defined defaults for anchorX/anchorY. Casenum #28095
  • Widget: Fixes the scrollView event.phase not being passed to the listener. Casenum #28111
  • Widget: Fixed objects with transitions inside a scrollView being paused on scrollView touch. Casenum #28240
  • Widget: Fixed various issues in widgets that occurred when the default anchor was changed. Casenum: 28340
  • Widget: Fixed the scrollToIndex() tableView behavior on Graphics 2.0, also fixes casenum: 24858
  • Widget: Fixed background leaking through the tableView in the ios7 theme. Also fixes some other tableview rendering issues, casenum: 26439
  • Widget: Fixed a bug when deleting a row from a table that is locked or has no scrollbar. Casenum: 26902
  • Windows: Adding OpenGL driver check earlier in initialization
  • Windows: Adding checking around bind buffer (potential crash issue)
  • Windows: Fixed memory leak. Casenum: 28646

New in Solar2D 2013.2076 (Jan 10, 2014)

  • New:
  • Dynamically-sized rectangular masks via containers
  • Custom (non-intersecting) polygons
  • Custom image fills in all shapes, not just quads
  • Multitexturing support via composite paints
  • Images for anti-aliased strokes and lines
  • Over 70 effects (filters, generators, and composites)
  • Multi-pass shaders via node-based shader graphs
  • Tiling via texture repeat modes
  • Texture transform properties (position, rotation, scale)
  • Quadrilateral perspective distortion for 2.5D/3D effects
  • Render to texture with snapshots
  • Canvas-style drawing with snapshots
  • Custom blend modes and Porter-Duff presets
  • Blend equation control: add, substract, and reverseSubtract
  • Alignment via anchors for responsive interfaces
  • Automatic batch detection
  • Updated Welcome Window
  • New features and bug fixes:
  • Android/iOS: Add the ability to detect when a user taps on a certain location within a map view.
  • Android/iOS: Add the ability to set the preferredMaxDuration and preferredQuality for captured videos. Also returns the duration and file size of the video.
  • Android/iOS: Added properties “xRaw”, “yRaw”, and “zRaw” to the accelerometer event.
  • Android/iOS: Added Tap events for map markers.
  • Android/iOS: Fixed some instances where the annotation wouldn’t show up or the dialog bubble woudldn’t show up. Casenum: 26678
  • Android/iOS: Move flurry from the core to a plugin.
  • Android/iOS: Return the original requested location for a map:requestLocation() function call.
  • Android: Added “Icon-xxhdpi.png” application icon support.
  • Android: Added support for native.newVideo().
  • Android: Composing email/sms lets the user choose the default app.
  • Android: Custom images for map markers.
  • Android: Fixed a possible issue which causes expansion files to not download.
  • Android: Fixed an issue on certain devices where the 2 characters would be deleted in a text field. Casenum: 26307
  • Android: Fixed an issue where map marker on touch listeners wouldn’t fire an event if there isn’t a subtitle or title.
  • Android: Fixed an issue where selecting or creating a video would return an invalid url.
  • Android: Fixed an issue where you couldn’t create a plugin for the native module because the package name can’t have “.native.” in it. Now instead of “.native.” in the package name it has to be “._native.” in the package name.
  • Android: Fixed crash that sometimes occurs while backing out of the app when using the “location”, “heading”, “accelerometer”, or “gyroscope” events.
  • Android: Made the cause of expansion file download errors are more obvious.
  • Android: Modified system.getInfo(“androidDisplayDensityName”) to return “xxhdpi” instead of “unknown” for that type of display.
  • Android: Optimized display.newText(). Creating and changing text is now faster, uses less memory, and causes far less Java garbage collection.
  • Android: Optimized loading of JPEG files having an EXIF orientation of 90, 180, or 270 degrees. Now loads 2–3 times faster and uses less memory. (This is a common case when loading images from the photo library or camera.)
  • Android: Optimized the loading of PNG image files.
  • Android: Slightly improved image and text loading performance some more.
  • Android: Support table listeners for map marker touch events.
  • Core: Add the ability to get videos from devices.
  • Core: Add the ability to remove a specific marker on a mapview.
  • Core: Added Transitions 2.0 and Easing 2.0. Transition 2.0 builds on the existing functionality of 1.0. Easing 2.0 includes all the functions from Robert Penner’s library ( 43 functions ).
  • Core: Fixed an issue where media.show() would not call back the listener and the display object would not be returned.
  • Core: Added media.captureVideo(), media.capturePhoto(), media.selectPhoto(), media.selectVideo() apis.
  • Core: display.newEmbossedText() text creation/update performance is now 3 times faster
  • Core: display.newEmbossedText() now supports properties "text" and "size" just like a display.newText() object. (Still supports old setText() and setSize() functions.)
  • Core: display.newEmbossedText() now supports an options table just like display.newText().
  • Core: display.newEmbossedText() shadow/highlight edges now respect the foreground text's alpha channel.
  • Core: display.newEmbossedText() now supports the display.setDefault("textColor") value which is white by default instead of always defaulting to black. (Will always default to black if using V1 compatibility mode.)
  • iOS: Added “SkipPNGCrush” build.settings directive - no casenum
  • iOS: Custom images for map markers.
  • iOS: Displaying the camera view will not show the status bar. Casenum: 26051
  • iOS: Fixed a crash when a map marker was added with an options table which doesn’t have both a title and subtitle. Casenum: 26704
  • iOS: Fixed a possible crash from pressing the return key on the keyboard.
  • iOS: Fixed an issue on iOS 7 where textFields and textBox’s text were 1 character behind what was typed. Casenum: 25282, 26140
  • iOS: Fixed an issue on iPads where meda.selectPhoto() and media.selectVideo() wouldn’t return any results.
  • iOS: Fixed an issue where facebook.login would not respond.
  • iOS: Fixed an issue where map marker touch events aren’t always fired.
  • iOS: Fixed an issue where the last line on multiline text didn’t show on iOS 7. Casenum: 26539
  • iOS: Fixed an issue where the status bar’s look wouldn’t change or hide. Casenum: 26056, 25715
  • iOS: Fixed an issue where the text from text fields and text boxes aren’t consistant with what is on the screen.
  • iOS: Fixes issue with media.show for camera and photolibrary crashing on iOS 7 in landscape mode (iPhone/iPod). Put CoronaUseIOS7LandscapeOnlyWorkaround in the plist section of the build.settings file.
  • iOS: Switch to building with iOS7 by default - no casenum
  • iOS: Updated the iOS implementation of Facebook so that it will request read and publish permissions seperately. There is no change required from the Lua side. This change will let iOS > 5 use the iOS native login dialog.
  • iOS: Fixed an issue with Facebook where requesting the same permissions over and over would launch the user to the facebook app each time.
  • iOS: Fixed an issue where editing text in the middle of a text field doesn't correctly edit the text.
  • Physics: Disable Rtt_NotifyLuaInCallstack() until we fix it. This is related to, but DOESN’T fix, casenum 27230, 27231, 27247, 27254.
  • Transitions 2.0: Added opticnal debug flag and backwards compatibility with Transition 1.0 nil objects. Fixes for possible race conditions. Refactoring and performance improvements.
  • Transitions 2.0: Added restore transition.dissolve
  • Transitions 2.0: Fixing issues when using easing with delta.
  • Widgets: Add in the iOS7 theme for widgets.
  • Widgets: Adding inclusion of the local copy of the slider widget.
  • Widgets: Adding the property scrollBarAutoHide to the constructor for tableView and scrollView. Also fixing a bug that went unnoticed where the scrollbar was created multiple times.
  • Widgets: Detecting swipe events on the tableView while in the “moved” phase.
  • Widgets: Fixes issues when not setting width or height in the scrollView constructor. Casenum #25256.
  • Widgets: Fixes the slider widget not propagating the began phase.
  • Widgets: Fixes the tableView losing touch listener when entering suspend. Casenum #24731.
  • Widgets: Recreate native behavior when scrolling to a limit and tapping really fast. Also fixes scroll-back bugs. Casenum #26164.
  • Widgets: Removed test for tableView getRowAtIndex for the moment.
  • Widgets: Scroll direction propagation in the touch event, moved phase. Also fixing the horizontal snapback for scrollviews. Casenum: #24995, #26409.
  • Widgets: Shows the iOS 7 theme by default on iOS 7 devices. iOS 6 devices continue to show the iOS 6 theme.
  • Widgets: Small fixes to the tableView row rendering. Adding tableView:reloadData() method for re-rendering. No casenum.
  • Widgets: Fixed an issue where a stray event listener would cause a runtime error.
  • Windows: Added “Icon-xxhdpi” Android app icons to all sample projects.
  • Windows: Added sample project “Media\NewVideo” which demonstrates how to use the native.newVideo() API.
  • Windows: Fix a crash that occurred due to an interaction between automatic project reloads and runtime errors - no casenum
  • Windows: Implement “relaunch on project change” and “open last active project” to match Mac functionality - no casenum

New in Solar2D 2013.1202 (Jan 10, 2014)

  • New:
  • Android: Added support for input devices supporting the HID protocol
  • Includes the Ouya, GameStick, MOGA Pro, and Nvidia Shield gamepads
  • Also includes support for keyboards, mice, touchpads, and other HID devices
  • Android: Updated the Facebook SDK to version 3.0.1
  • Android: Real time multiplayer support via Google Play game services
  • Core: display.newText now supports left, center, and right alignment.
  • iOS: Support for iOS Game Center turn-based multiplayer
  • Mac/Windows: Added “Ouya” and “GameStick” support for Android builds
  • Mac/Windows: Simulator now remembers build settings
  • Windows: Zoom level no longer limited by the resolution of the display
  • All: Real time multiplayer support via Photon Cloud (plugin)
  • Android/iOS: Real time analytics via Amplitude (plugin)
  • iOS: Native social popup for Facebook, Twitter, Weibo (plugin)
  • iOS: Address Book Access popup (plugin)
  • Ad Provider: Vungle (plugin)
  • Ad Provider: CrossInstall (plugin)
  • Cross Promotion: AppRever (plugin)
  • Cross Promotion: OneLouder/Pinsite (plugin)
  • New features and bug fixes:
  • Android: Added new function system.getInputDevices() which fetches an array of all connected input devices.
  • Android: Added a new “inputDeviceStatus” event which is raised when a device has been connected, disconnected, or reconfigured.
  • Android: Added a new “axis” event. (Can be used to receive analog input from a gamepad’s joysticks and triggers.)
  • Android: Added a new “mouse” event for tracking the mouse cursor position and its button states.
  • Android: Modified “tap” event to only occur for a mouse when the primary mouse button is clicked, like how it works in the Corona Simulator. (Used to register a “tap” event for the middle and right mouse buttons.)
  • Android: Modified mouse handling to provide “touch” events while the primary/left mouse button is pressed, just like how it is handled by the Corona Simulator. (Provides easy mouse support for existing apps on devices that do not have a touchscreen, such as Ouya.)
  • Android: Updated “key” event to support all keys and gamepad buttons.
  • Android: Added properties “event.device”, “event.descriptor”, “event.nativeKeyCode”, “event.isShiftDown”, “event.isAltDown”, and “event.isCtrlDown” to the “key” event.
  • Android: Added game controller vibration/rumble support on Android 4.1 or higher devices. Can detect support via the InputDevice.canVibrate property. Can vibrate by calling the InputDevice:vibrate() function.
  • Android: Added intent filter support to the “build.settings” file. (Can be used to launch an app via a URL scheme. Also needed to categorize the app for Ouya.)
  • Android: Added Ouya app icon support. Set by adding an “Icon-ouya.png” that is 732x412 pixels in the root Corona project directory.
  • Android: Changed the Facebook implementation so that permissions are requested in batches instead of in one shot which caused issues with logging in. Casenum: 25128
  • Android: Fixed an issue where updating an app which uses expansion files would cause a crash on the first subsequent run if the expansion file itself wasn’t updated. Casenum: 23887
  • Android: Fixed bug introduced in daily build #1053 where offscreen TextFields and TextBoxes cannot receive the keyboard focus and will not provide “userInput” events. Casenum: 24464
  • Android: Fixed bug where Android 4.3 devices would wrongly wrap text when display.newText() is not set up for wrapping. Casenums: 25216, 25233
  • Android: Fixed bug where media.playVideo() will crash when the video finishes if Android developer option “Don’t keep activities” is checked on. Casenum: 25014
  • Android: Fixed issue with content-length on POSTs with multibyte characters.
  • Android: Improve error handling when an invalid APK is built (e.g. because of missing icon files)
  • Android: Landscape-only apps no longer require portrait orientation from a device. (Was preventing portrait only devices from buying a landscape only app from the app store.)
  • Android: Modified “display.statusBarHeight” and “display.topStatusBarContentHeight” to return zero for Ouya and GameStick.
  • Android: Modified native objects to not be culled by Corona when moved partially or completely offscreen.
  • Android: Removed the need for Facebook to require at least 1 permission.
  • Android: Resolve an issue where the sound would continue playing after a device’s power button was pressed. This also fixes an issue where the “applicationSuspend” event was not fired when the power button was pressed.
  • Android: Setting a text field to “isSecure” will not show suggestions anymore. Casenum: 22214
  • Android: The facebook.showDialog() event did not have a response. Now it has a response that matches what is in iOS.
  • Android: Update the Facebook SDK to version 3.0.1
  • Core: Added physics.setDebugErrorsEnabled() for extra run-time debugging information in Box2D.
  • Core: Added plugin version management.
  • Core: Added system.getInfo( “graphicsPipelineVersion” ).
  • Core: Added the “unsorted” behavior to physics.rayCast().
  • Core: Added additional diagnostics for potential build issues
  • Core: Added support for left/right/center alignment for multiline text in display.newText
  • Core: Added the ability to call the publishInstall function in the Facebook SDK which allows users to track the number of installs.
  • Core: Avoid using invalid points in b2Manifold.
  • Core: Don’t report plugin errors for non-supported platforms.
  • Core: Enabled physics.setDebugErrorsEnabled() by default (Mac simulator only).
  • Core: Fixed crash that can occur under certain circumstances if a focussed object is removed from the stage. Casenum 24058
  • Core: Fixed issue with AL_mixer which prevented more than 92 sounds being played sequentially. No casenum.
  • Core: Fixed issue with focus on child objects which could cause a crash. Casenum 21818, 23684
  • Core: Fixed the logic that selects the most recent version of a plugin to download.
  • Core: Fixed the physics debug drawing scale.
  • Core: Fixed various crashes associated with disposing of audio streams; issue error messages when invalid (usually previously disposed) streams are passed to various audio. APIs. Casenum 24229
  • Core: Fixed bug where “touch” event’s “time” property did not match the timestamps provided by the operating system while multitouch is activated.
  • Core: Prevent redownloading plugins that have been confirmed not to exist.
  • Core: Tweaked plugin downloading to handle case where plugin file is missing. No casenum.
  • Core: Upgrade JSON (dkjson) from version 2.1 to 2.3.
  • Enterprise/Android: Fix issue with spaces in Android Enterprise project names. Casenum: 19926
  • iOS: Added support for playerGroup, playerAttribute, inviteMessage, and maxPlayersAllowedMatch to iOS turn based multiplayer.
  • iOS: Allow native alert boxes without buttons. Undo the fix for casenum 20069.
  • iOS: Fixed media.show() crashing on iOS7, by adding a tag to the plist: CoronaUseIOS7LandscapeOnlyWorkaround. Casenum: 24796
  • iOS: Rebuild latest version of Facebook plugin. No casenum.
  • iOS: Removed all usage of MAC address for generating unique ids. Casenum: 25726
  • iOS: Removed WebView gray screen when loading hash fragments. Casenum: 21353
  • iOS: Support for iOS Game Center turn based multiplayer
  • iOS: Support iOS 6: system.getInfo(“deviceID”) now returns the MD5 hash of “identifierForVendor” because MAC address is no longer available. No casenum
  • iOS: Update Flurry plugin to version 4.2.3. No casenum.
  • iOS/Android: Fixed issue with not being able to turn off launchpad analytics (“launchPad = false” in config.lua). No casenum.
  • iOS/Android: Implemented Amplitude device analytics (note that apps built with this build and subsequent ones will no longer send analytics to the old system). No casenum.
  • Mac/Windows: Added “Ouya” and “GameStick” to the Android build window’s store target list.
  • Mac/Windows: Added a readme file to the sample projects. Renamed some sample projects. Removed old sample projects.
  • Mac/Windows: Display an error if a plugin can’t be downloaded.
  • Mac/Windows: Fixed crash that sometimes occurs after an Android build if an app icon is missing.
  • Mac/Windows: Modified Android build error messages to be more human readable.
  • Widget 2.0: Added failsafe to the scrollBarOptions table of the tableView. No caesium.
  • Widget 2.0: Added instance methods setScrollWidth() / setScrollHeight(). Casenum 22869, 21859
  • Widget 2.0: Added tap event to the tabbar, fixes tap event propagation on the widgets behind tab bars. Casenum 24126
  • Widget 2.0: Adds a custom params table to the insertRow ethod of the tableview, allowing for easy attachment of custom data to table rows. Casenum 23811
  • Widget 2.0: Corrects the switch instantiation via image sheet. Casenum 23648
  • Widget 2.0: Creates the API method resizeView( newWidth ) for the progressView widget, allowing resize after creation. Casenum 21874
  • Widget 2.0: Enables choosing elements in the picker widget by tapping on them. Casenum 21788
  • Widget 2.0: Exposes the stepper inc/dec speed and iteration number properties. asenum 21958.
  • Widget 2.0: Fixed a bug in the pickerWheel where by a fast scroll, a nil value was returned. Casenum 23290
  • Widget 2.0: Fixed the widget TabBar image alignment bug + overlay file bug. Casenum 24916
  • Widget 2.0: Fixes an error while deleting all the tablerows. No casenum.
  • Widget 2.0: Fixes changing scroll direction when the swipe occurs near one of the view limits. Casenum 22607, 24316
  • Widget 2.0: Fixes involuntary scrolling after tapping and holding. Casenum 24244, 22607
  • Widget 2.0: Fixes positioning of segmented controls inside groups, as well as the inherited segment width variables in case of multiple instances being displayed. Casenum 24637, 24525
  • Widget 2.0: Fixes rows bouncing back when the touch finishes in tableView. Casenum 24857
  • Widget 2.0: Fixes scrollToIndex() not taking into account category rows. Casenum 24858
  • Widget 2.0: Fixes Switch crash. Casenum: 24168, 24146
  • Widget 2.0: Fixes TabBar errors when custom images not supplied. Casenum 23996
  • Widget 2.0: Fixes tableView deleteRow() and deleteRows() errors, as well as the number of rows being returned incorrectly. Casenum 24065, 23890, 23678
  • Widget 2.0: Fixes tableView objects having a width or height of 0 if the width or height parameters are omitted. Casenum 24856
  • Widget 2.0: Fixes tableView:scrollToIndex() working only once. Casenum 24859, 24639
  • Widget 2.0: Fixes the calculation of segmented controls. No casenum.
  • Widget 2.0: Fixes the custom scroll view scrollbar images not working. Casenum 24489
  • Widget 2.0: Fixes the newButton label Y centering problem. Casenum 23968
  • Widget 2.0: Fixes the progressView not being able to set a progress smaller than the actual value. Casenum 24797
  • Widget 2.0: Fixes the tabBar selected image to scale to custom height if defined. Casenum 21961
  • Widget 2.0: Fixes the tableView scrollbar skinning with imageSheets. Casenum 23646
  • Widget 2.0: Fixes the touch permission variable or tableviews if the view has hit bottom or top limit. Casenum 23406
  • Widget 2.0: Fixes unwanted animation of the tableView after deleting a row. Also updates the scrollbar position and scroll area after deletion. Casenum 24519
  • Widget 2.0: Fixing a regression bug in the pickerwheel. No casenum.
  • Widget 2.0: Picker view autocap text when defining large labels, and solving up the scroll issues at high speed to one of the list ends. Casenum 23290
  • Widget 2.0: Refactoring the isBounceEnabled property for the TableView widget. No casenum.
  • Widget 2.0: Removed delay in resetting the tapped cell’s background color. Casenum 24263
  • Widget 2.0: Return the correct value in the Picker when the user taps on a value. Casenum 24148
  • Widget 2.0: Small correction in the positioning of custom image files for the tab bars. No casenum.
  • Widget 2.0: The scrollview gets the .isBounceEnabled property that allows the view to bounce back or not, like the native behaviour. Casenum: 21357
  • Windows: Added “key” event support when simulating an Android device.
  • Windows: Added “mouse” event support when simulating an Android device.
  • Windows: Added Ouya and GameStick to the ViewAs menu.
  • Windows: Added sample project “Media/StreamVideoPort”.
  • Windows: Fixed bug where display.newText() would remove trailing spaces on Windows. (Now behaves like Mac, iOS, and Android.) Casenum: 24321
  • Windows: Fixed issues with multibyte UTF8 filenames. Various casenums.
  • Windows: Fixed bug where you can rotate the Welcome screen by pressing Ctrl+Left or Ctrl+Right.
  • Windows: Fixed Corona Simulator to load and build projects having unicode directory names.
  • Windows: Fixed login issue with “broken” ticket (Simulator exited silently); improved deauth behavior. No casenum.
  • Windows: Allow the simulator to zoom all the way in regardless of screen resolution.
  • Windows: Fixed issue with two instances of Simulator starting when a lua file was specified on the command line. Casenum 23206
  • Windows: Remember position of console window between restarts; reduce flashing of windows on startup. No casenum.
  • Windows: Revert to behavior of requiring login on start of Simulator (if not already logged in). No casenum.
  • Windows: Switching skins sometimes caused inconstant zoom level. You would be able to zoom in but can’t zoom back out. Casenum: 15795

New in Solar2D 2013.1137 (Jan 10, 2014)

  • New:
  • Plugins are now supported: AdMob, Carrot, GreenThrottle, InMobi, iAds, inneractive, SponsorPay andTapForTap. The following plugins are only available to Pro/Enterprise users: bit, Fortumo, Google Play game services, OpenUDID, OpenSSL and ZIP
  • Automatic package name generation for Android/Amazon/Nook builds
  • Android: Added Expansion File support
  • Windows/Mac: Now allows building and signing with JDK6 or JDK7. Only 32 bit JDK supported on Windows
  • The Runtime restrictions have been removed for Amazon Kindle Fire, Nook, and Google. All Android builds run on all devices
  • Improved UI for logging into the simulator
  • You are only required to log into the simulator when you first build an app
  • New features and bug fixes:
  • All: Fixed potential issue with plugins.
  • Android: A network request with a malformed url caused a crash. Now instead of crashing the listener is called with isError set to true.
  • Android: Added “native.systemFontBold” support. casenum: 12725, 14063
  • Android: Added ability to load the app’s icon or another app’s icon by calling display.newImage() or display.newImageRect() with URL “android.app.icon://my.package.name”. Useful for 3rd party Lua library developers.
  • Android: Added ability to trigger a local notification when a network request/download/upload finishes successfully.
  • Android: Added new system.getInfo() properties “androidDisplayXDpi”, “androidDisplayYDpi”, “androidDisplayWidthInInches”, and “androidDisplayHeightInInches”.
  • Android: Added property system.getInfo(“androidDisplayApproximateDpi”) which fetches the DPI based on the density name such as “mdpi”, “hdpi”, or “xhdpi”.
  • Android: Added property system.getInfo(“androidDisplayDensityName”) which returns a density name such as “xhdpi”, “hdpi”, “mdpi”, etc.
  • Android: Can now run apps targeting Google Play (or any app store) on Nook and Kindle Fire.
  • Android: Fixed bug web popup still acts like it is shown when pressing the Back to close it. casenum: 20912
  • Android: Fixed bug where calling display.newText() without a line wrapping width would still have its text wrapped at OpenGL’s max texture size. Modified to clip the text instead of wrapping in this case. casenum: 23371
  • Android: Fixed bug where display.save() and display.capture() does not respect alpha on device’s using GPU “PowerVR SGX 540”.
  • Android: Fixed bug where InMobi ads would continue to make network requests after exiting the app.
  • Android: Fixed bug where InMobi ads would only be displayed upon 1st launch of the app. Would not display ads on subsequent launches.
  • Android: Fixed bug where native text fields, text boxes, and web views would get misplaced on tablets running Android OS 3.x or higher after an orientation change or screen resize.
  • Android: Fixed bug where native.showPopup(“mail”) fails to attach files on Nook if the file name contains spaces. casenum: 19465
  • Android: Fixed bug where screen would be layed out wrong after the app window has been resized. Typically only happens on tablets running Android OS 3.x or higher after an orientation change, because the bottom navigation bar moves too. casenum: 11681, 13136, 13332,13590, 22064, 22357
  • Android: Fixed bug where setting up an app to use both plugins AdMob and TapForTap would cause a ClassNotFound exception at runtime.
  • Android: Fixed bug where store.target and system.getInfo(“targetAppStore”) would always return “none” as of daily build #1088, which also broke automatic download of expansion files.
  • Android: Fixed bug where system.scheduleNotification() does not work with a date table. casenum: 22211
  • Android: Fixed download success notifications so they don’t fire when the download is cancelled.
  • Android: Fixed media.playVideo pauses when the screen is locked. Casenum: 22479
  • Android: Improved quality of JPEGs created by display.save() from 50% to 90%, matching the quality used by display.capture().
  • Android: Modified display.newText() to use the system’s default font size if given a font size of zero, like Mac and iOS. (Note that this is only useful for apps that do not use dynamic content scaling because the scale factor will be applied to the default font size, making it larger than the default.)
  • Android: Modified native.showPopup(“rateApp”) and native.showPopup(“appStore”) to show the store the app was targeting in the build window. If targeting “none”, then will fallback to old behavior of selecting the store that installed the app or the first store it finds in your supported list.
  • Android: Now cancels/removes all local and push notifications when calling native.setProperty(“applicationIconBadgeNumber”, 0) to match iOS’ behavior. casenum: 22072
  • Android: Updated the Google licensing module to throw an exception if verify is called but the “com.android.vending.CHECK_LICENSE” permission isn’t set.
  • Android/iOS: Added the abiliy to set the return key, setReturnKey().
  • Core: Phyiscs – Add physics.reflectRay() to Lua.
  • Core: Phyiscs – Add support for AABB region queries in physics (physics.queryRegion).
  • Core: Phyiscs – Add support for ray casting in physics.
  • Core: Physics: Fix ray casting sort order.
  • Core: Phyiscs – Add the surface normal to the results returned from physics.rayCast().
  • Core: Added a new “resize” event that is raised when the contentWidth/Height, viewableContentWidth/Height, or contentScaleX/Y has been changed. This can happen when changing orientation by 90 degrees. Can also happen when the app has been resized (common on Android tablets) and needed by apps that use zoomEven scaling or no scaling.
  • Core: Added new system.getInfo() properties “appName”, “appVersionString”, “androidAppVersionCode”, and “androidAppPackageName”.
  • Core: Fixed bug where a global variable named “textHighlight” was being created by mistake after calling display.newEmbossedText().
  • Core: Fixed Network plugin to return a response based on raw data returned
  • Core: Moved inmobi and inneractive to plugin
  • Core: Network library to replace “null” with “nil” (fixed global variable issue)
  • Core: Take the pixel-to-meter conversion factor into account during ray casting. casenum 22591, 22593
  • Enterprise: Added ability to set up a handler for the onActivityResult() method on Android without having to derive from the CoronaActivity class. (See the CoronaActivity.registerActivityResultHandler() method and the CoronaActivity.OnActivityResultHandler interface for more details.)
  • Enterprise: Changed CoronaActivity.unregisterActivityResultHandler() method to remove a handler by reference instead of by request code. This is a safety mechanism that makes it impossible for one plugin to accidentally remove another plugin’s result handler.
  • iOS: Fix applicationStart Event Fires Twice on iOS Device - casenum 22758
  • iOS: Add system.getInfo() support for “iosAdvertisingIdentifier”, “iosIdentifierForVendor” and “iosAdvertisingTrackingEnabled” - fixes casenum 22307
  • iOS: Change the minimum supported iOS version to 5.1 (from 4.3) because we can’t support 4.3 - no casenum
  • iOS: Fixed “iosAdvertisingTrackingEnabled” which caused odd errors - casenum 23139
  • iOS: Fixed bug where an orientation event would always be raised on app startup. Should only be raised when the orientation has changed. This helps improve performance for apps that re-layout the screen after an orientation change. casenum: 10297
  • iOS: Fixed bug where system.cancelNotification() would not remove all push notifications, only local notifications. Now removes both. casenum: 22070
  • iOS: Modified code that uses “CoronaUseIOS6PortraitOnlyWorkaround” in build.settings plist section to work on all versions of the OS and not just iOS 6.0. This allows media.playVideo to autorotate in Portrait-only apps. No casenum.
  • iOS: Moved iads and inMobi libraries from core to plugin.
  • iOS: Updated network plugin to prevent crash on iOS 5.1 when destination is not reachable casenum:22721
  • iOS: Updated push notifications to support receiving “custom” fields from outside the body of the “aps” body. To preserve backwards compatibility we fall back to look for a “custom” field in the “aps” body if we did not find it as a sibling to “aps”
  • iOS: Fixed implementation of “hasBackground” for TextFields - addresses casenum 12532
  • iOS: Updating WebView to support loading an html string, it’s not currently supported on Android
  • Mac/Windows: Added support for JDK 7 (32-bit/x86) to the Corona Simulator for Android builds. (This is used to digitally sign APKs. Note that the 64-bit versions are not supported. Corona Enterprise developers must still use 32-bit version of JDK 6, which is an Android requirement.)
  • Mac/Windows: fix issue with being unable to deauth and tidy up some other issues with the migration to com.coronalabs bundle id - no casenum
  • Mac/Windows: Fix issue with too many files break app builds - fixes casenum 22362
  • Mac/Windows: Fixed bug where the Corona Simulator would misplace the iOS status bar when displaying it in an orientation that the app did not support or if the app was set up for letterbox or zoomEven scaling. casenum: 14410
  • Mac/Windows: Fixed Corona Simulator bug where “display” properties contentWidth/Height, viewableContentWidth/Height, contentScaleX/Y, contentCenterX/Y, and screenOriginX/Y would be wrongly swapped when rotating to an orientation that the app does not support. casenum: 1312, 13037
  • Widget 2.0: Adds “tap” event to tableView rows. Fixes casenum 22246.
  • Widget 2.0: Adds method scrollToIndex to pickerWheels. Fixes casenum: 22360
  • Widget 2.0: Adds tableView method object:getNumRows() which returns the number of rows in a tableView. No Casenum
  • Widget 2.0: Adds tableView row method row:setRowColor() which allows you to set the row’s default/over color within your onRowTouch function. No Casenum
  • Widget 2.0: Button:setLabel() keeps adding labelYOffset to label position. Fixes casenum: 22445
  • Widget 2.0: Buttons with height less than or equal to 30 with no background image have no center graphic. Fixes casenum: 21705
  • Widget 2.0: Fix incorrect setFillColor function for textOnly buttons.
  • Widget 2.0: Fixed issue where stepper couldn?t be incremented/decremented correctly after changing it’s reference point.
  • Widget 2.0: Fixed issue where stepper couldn?t be incremented/decremented correctly after deep nesting in groups
  • Widget 2.0: Fixed issue where tabBar buttons labels could not be omitted nor nil, was causing a runtime error. Fixes casenum 22149
  • Widget 2.0: Fixed issue with tableView categories not passing isCategory to the rowRender function. Fixes casenum: 22373
  • Widget 2.0: Fixes a crash which could occur after an object inserted into a scrollView was inserted into another group then back into the scrollView then removed. Fixes casenum: 22436
  • Widget 2.0: Fixes gradient issue with widget buttons using 9 slice (default theme). Also fixes issue where setting a 9 slice button’s alpha to less than 1 would result in graphical issues. Fixes casenum 21914
  • Widget 2.0: Fixes issue where a segmented control with a left value of more than 50 pixels would result in some segments from being unable to be pressed. Casenum 22405
  • Widget 2.0: Fixes issue where a tableView’s row’s separating line would also be added to it’s left/right and top edges. Fixes casenum: 22943
  • Widget 2.0: Fixes issue where default tab button would not be highlighted if using image sheet buttons. Fixes casenum: 22609
  • Widget 2.0: Fixes issue where on/off switch .isOn state was not getting set after calling object:setState() without a visual animation. Fixes casenum: 22772
  • Widget 2.0: Fixes issue where PickerWheel right alignment of column text was not working & multiple picker wheels were causing runtime errors. Fixes casenum: 23160
  • Widget 2.0: Fixes issue where positioning a slider after creation would make the slider unresponsive to touch events on it’s handle. Fixes casenum 22458.
  • Widget 2.0: Fixes issue where scrolling a tableView past it’s limits then releasing the touch within the tableView bounds would throw a setFillColor error. Casenum’s, 23193, 23218
  • Widget 2.0: Fixes issue where scrollView event.target was not returning the scrollView object, but instead it’s _view property. Fixes casenum 22241
  • Widget 2.0: Fixes issue where ScrollView method object:scrollToPosition() did not cancel previous scrolling momentum. Fixes casenums 22580, 23084
  • Widget 2.0: Fixes issue where setFillColor didn’t apply a fill color to a widget buttons “overFile” image. Fixes casenum: 23182
  • Widget 2.0: Fixes issue where Stepper Widget did not factor in it’s parent groups offset. Fixes casenum 21839
  • Widget 2.0: Fixes issue where tabBar size error handler was not being called. Fixes casenum 22465
  • Widget 2.0: Fixes issue with deleteRow not removing the row from the row’s table. Casenum 22848
  • Widget 2.0: Improves tableView performance both on initial creation and when scrolling. No Casenum.
  • Widget 2.0: Scrolling multiple columns in pickerView reads the column height incorrectly.
  • Widget 2.0: TableView function scrollToIndex has no onComplete method. Fixes casenum 22324
  • Widget 2.0: Enforce row touches not to be permitted while the tableview is still moving. Casenum: 22888
  • Widget 2.0: Fixes issue where the tableView noLines parameter does not always work.
  • Widget 2.0: Fixed performance bug. (However, no longer attempts to load your own implementation of the widget libraries in the “widgetLibrary” subdirectory by default. You must override the widget library explicitly via “package.preload” as shown in GitHub’s sample code.)
  • Windows: Smooth Simulator flow by postponing login until a build is requested - no casenum
  • Window: Added white rectangle placeholder for native TextBoxes and TextFields in simulator.
  • Window: Create default package name for Android builds and prevent building into the app directory - no casenum
  • Window: Ctrl+B accelerator for “Build” shortcut - no casenum
  • Window: Fixed bug where Corona fails to read the Android keystore after doing a Java update from version 6 to 7. (Caused by missing “msvcr100.dll” in the Windows system directory required by the JVM.) casenum: 23222
  • Window: Updated Corona Simulator’s OpenSSL library from version 1.0.0.7 to 1.0.1.5, matching the version that the OpenSSL plugin uses.

New in Solar2D 2013.1076 (Jan 10, 2014)

  • All: Add a new implementation of display.newEmbossedText()
  • All: Alpha now works with masked images
  • All: Fixed issue with storyboard scene events firing in an incorrect order. As reported here
  • All: Improved error message for media.save() (more precisely identify missing file)
  • All: Remove OpenFeint because it has been shut down
  • Android: Added custom data support to local/scheduled notifications
  • Android: Added JavaScript geolocation support to WebView and WebPopup. (Note that this still requires Android permissions ACCESS_FINE_LOCATION and/or ACCESS_COARSE_LOCATION)
  • Android: Added new build.settings option settings.android.largeHeap = true that allows apps to use more memory on Android 3.0 or higher devices. Works around out-of-memory errors when loading large images for high res displays
  • Android: Added new function system.request("suspendApplication") which hides/suspends the application and brings the user back to the home/menu screen. Also added function system.request("exitApplication") which exits the application gracefully on Android, which does the same thing as native.requestExit()
  • Android: Added (*.otf) OpenType font file support to display.newText(). (Only supported TrueType fonts before)
  • Android: Added push notification support via Google Cloud Messaging (GCM). (Requires the Google Play app to be installed. See sample app Notifications/GooglePushNotifications)
  • Android: Changed mapView:getAddress() location to use Google's API v3. v2 is in the process of being deprecated and required a key to use. Added a new API mapView:requestLocation(), which functions just like getAddress except this one is none blocking and thus takes a listener as an extra argument. Finally, mapView:nearestAddress() takes a listener as the third parameter instead of having to add a listener through the runtime
  • Android: Changed media.save() and display.capture() functions to save images to the My File/Pictures directory instead of the root My Files directory
  • Android: Fixed a crash that can sometimes occur when accessing a TextField or TextBox's text property while the end-user is editing the field
  • Android: Fixed bug where a landscape app's contents would sometimes become black or its contents misplaced when returning from the screen lock. (Only known to happen on a Samsung Galaxy W, but could happen on other devices as well)
  • Android: Fixed bug where a landscape orientation event would sometimes be raised on a portrait only app and vice-versa. (Only known to happen on a Samsung Galaxy SIII and Galaxy Tab when transitioning from another app having a different orientation)
  • Android: Fixed bug where a landscape-only app would sometimes display a black screen when returning from screen lock. (Happens rarely and only on particular devices)
  • Android: Fixed bug where an app supporting portrait and landscape orientations will not always change orientations on a Galaxy Nexus
  • Android: Fixed bug where displaying the Nook app store from a landscape only app will sometimes cause a 10-40 second delay
  • Android: Fixed bug where mail attachments would not get sent on a Nook Color
  • Android: Fixed bug where media.show(media.PhotoLibrary) would fail to load images from Picasa, Google+, SkyDrive, and other remote sources
  • Android: Fixed bug where quickly changing the orientation of an app that supports portrait and landscape orientations on startup can be displayed at the wrong orientation
  • Android: Fixed bug where Samsung Galaxy SII would display last rendered frame from a landscape app on the screen lock
  • Android: Fixed bug where screen would be shifted up when returning from screen lock on a Nook HD
  • Android: Fixed crash on app startup that only occurs on particular devices using GPU PowerVR SGX 540 such as LGs. (Does not crash on Kindle Fires or Nooks)
  • Android: Fixed crash with facebook.request() and facebook.showDialog() when passing boolean or numeric parameters. (Corona will now convert them to strings, which is what the Facebook Android SDK expects)
  • Android: Fixed display.statusBarHeight to return the correct pixel height for the Kindle Fire HD devices
  • Android: Fixed duplicate time-stamping issue with touch events and widget TableView scrolling problems
  • Android: Fixed in-app purchase to not return an error when calling store.finishTransaction() with the newest version of Google Play
  • Android: Fixed InMobi issue on Android 4.x where a black or white rectangle would briefly flash/flicker onscreen when displaying an ad
  • Android: Fixed media.save() to not export the given image file to PNG and instead copy the image file as-is to the gallery app. (This allows JPEGs to be transferred unaltered)
  • Android: Fixed silent crash that can only be seen in the log when quickly backing out of the app just before an alert dialog or activity indicator gets displayed
  • Android: Fixed store.finishTransaction() with Google Play. No longer causes past purchases to be received
  • Android: Fixed issue where Android does not post data without content header
  • Android: Improved error handling. Now displays specific Lua runtime errors onscreen and outputs Lua stack trace to Android log. Outputs Lua file name and line number for debug builds. Also displays Java exceptions invoked by Lua onscreen, such as missing permissions
  • Android: Modified push and local notifications to raise a notification event immediately if the Corona app is active and in the foreground. (This is to match iOS' behavior)
  • Android: Modified store transaction callback to provide information needed to verify Google Play in-app purchases via the event.transaction.receipt and event.transaction.signature properties
  • Android: Modified system.openURL() to return false if unable to open the given URL, which matches iOS' behavior
  • Android: Modified TextField and TextBox to preserve the cursor position(s) when changing their text in Lua
  • Android: Modified the volume controls for media.playVideo() to adjust the media volume instead of the ringer volume
  • Android: Modified volume controls to not flip back and forth between adjusting ringer and media volumes. Now when you load/play audio at least once, volume controls always adjust media volume. If you never play audio, then volume controls adjusts ringer volume
  • Android: Now automatically mutes audio output if the ringer is put into silent/vibrate mode. Required by the Samsung app store review process
  • Android: On the Amazon Kindle the attachments had the wrong content type which caused the attachments to show incorrectly
  • Android: Ported Google's newest OpenGL bug fixes to Corona, making the fixes available on older Android OS versions
  • Android: Removed permissions INTERNET, READ_PHONE_STATE, and ACCESS_NETWORK_STATE from all Android builds. You must now opt-in to these permission via the build.settings file
  • Android: Removed support for SuperRewards. (It crashes on Android 4.x and there hasn't been a library update in 1.5 years)
  • Android: Selecting an image from the media.PhotoLibrary on the Kindle HD Fire does not return anything
  • Android: Trying to record on a device without a microphone caused an error. Now the application does not record anything when it detects that it is on a device without a microphone
  • Android: Using the audio player inside the media.playVideo's listener now correctly plays the audio
  • Android: When cancelAlert is called on an alert the event.action was clicked instead of cancelled.
  • Android: When resuming a video from the recent apps screen, the video position is where it left off from.
  • Android: When the app is resumed after it is suspended, alignment bounces around. For example if the yAlign value is top in config.lua and then the user presses the home button and resumes the app the content's position would have been in the middle. The next time they did that the content's position would have been at the top again
  • Core: Add Mac and Android support functions necessary for the solution to native textfields won't transition off screen
  • Core: Added ability to fetch targeted app store via system.getInfo(targetAppStore). Returns the same result as the store.target property, but more convenient because you do not have to require in the store library
  • Core: Added native.canShowPopup(name) which is mostly useful for mail and sms
  • Core: Don't wake up the physics world when collision listeners are added
  • Core: Fix base64 encoding/decoding of long strings
  • Core: Fixed bug where display.save() would not save to the system.CachesDirectory. (Would save to system.DocumentsDirectory instead)
  • Core: Fixed bug where object returned by display.newEmbossedText() return nil for its text property
  • Core: Fixed inconsistent text placement issue between different platforms when calling display.newText() with an empty string. (Note that you need to use the same font on all platforms to see this improvement. Text may still be a few pixels off on different platforms, but still a huge improvement compared to before)
  • Core: Line objects were not blending when blend mode was set to something other than normal. The blend mode is now correctly applied to line objects.
  • Core: Removed OpenFeint from license agreements. (OpenFeint is no longer supported)
  • Core: Removed spurious debug message on screen rotation
  • Core: Take the RenderingStream size into account when getting the font size from Lua
  • Core: The antialias setting in the config.lua file is now ignored. Antialiasing is now always disabled due to lack of consistent support and graphics glitches between devices
  • Core: Update DisplayObjects that are about to go offscreen
  • Graphics: Add ability to specify GL_LINEAR and GL_NEAREST via display.setDefault( key, value ). Keys are magTextureFilter and minTextureFilter. Values are linear and nearest. Once you change the default, a display.new* call will use the new default. However, you cannot change the texture's filter, once the image has been loaded the first time. If you use the image in other display objects, it will use the filter default from the first time the image was loaded
  • iOS: Add twitter as a type for native.showPopup()
  • iOS: Allows saving display objects to PNG files with alpha support
  • iOS: Change made to media.newRecording to prevent recording with unsupported media encoding. AIF is the only supported encoding type on iOS
  • iOS: Facebook support for Scrumptious example. facebook.showDialog() now supports place and friends pickers. These correspond to FBPlacePickerViewController and FBFriendPickerViewController
  • iOS: Fix system.openURL() to not display UI if custom url is not supported. This allows you to open things like Google Maps, but also handle the case where it will silently return false if the Google Maps app is not installed
  • iOS: Fix to properly load hash fragments in UIWebView (Note: Hash fragments do not dispatch listener events)
  • iOS: Fixed bug where display.statusBarHeight was always returning 20 on iOS devices, the correct pixel height is now returned for retina displays
  • iOS: Fixed native.newTextField() vertical text alignment so it matches Android. Added support for decimal numeric keyboard type for native.newTextField()
  • iOS: Fixed native.newWebView() gray loading screen offset issue
  • iOS: Fixed custom field in iOS push notifications
  • iOS: Fixed bug where native.newWebView() was not correctly handling transitions, height change, and scaling
  • iOS: Fixed incorrect auto-capitalization of email and url input
  • iOS: Removes dot files and dot directories from app builds on iOS
  • iOS, Mac: Fixed crash with strings containing certain high-bit characters
  • iOS, Mac: Removed spurious warning if 0 was used with display.newText() to indicate a width or height should be calculated
  • iOS: Temporarily removed Inneractive support due to UDID sunsetting
  • iOS: Replaced mapView:getAddressLocation() by mapView:requestLocation()
  • iOS: Reworked Facebook implementation to work better with FBConnect SDK v3.1.1. Verified against sample code and
  • iOS: System.getInfo( "deviceID" ) will return a different value from previous builds because Apple is officially deprecating the old API
  • iOS: This change adds unixTime to the returned parameters for GameCenter score requests. It is an additional parameter which is useful over the existing string formatted date parameter since this returns an integer in unix epoch time
  • iOS: This change moves Flurry analytics into a plugin, which is now optional for Enterprise. This also fixes an issue with analytics.init() causing a crash on app suspension in very specific instances through an upgrade to Flurry analytics SDK 4.1.0
  • iOS: Update Facebook SDK to 3.1.1.
  • iOS: Updated build client to know about iOS6.1
  • iOS: Video orientation in Portrait mode will now work on iPad as well
  • iOS: Video orientation was not automatically changing to support landscape or portrait mode
  • Mac/Win: Fix New Project for App
  • Mac/Win: Fixed Android build to not print Iconnone.png warnings. (Note that these warnings were harmless)
  • Mac/Win: Fixed bug where the Corona Simulator would return model name WFJWI instead of KFJWI for the Kindle Fire HD 9
  • Mac/Win: Removes dot files and dot directories from app builds on iOS
  • Mac/Win: Updated the build.settings file for all sample projects to include Android permissions INTERNET, READ_PHONE_STATE, or ACCESS_NETWORK_STATE if needed. (In preparation to remove all default Android permissions)
  • Physics: Added the ability to change the collision reference point and the ability to average collision points
  • Win: Added iPad retina app icons to all sample projects
  • Win: Added sample project Networking\Scrumptious
  • Win: Added sample project Notifications\GooglePushNotifications
  • Win: Added sample project Store\Licensing to demonstrate Google Licensing support
  • Win: Fixed bug where a touch moved event can occur without a began phase when making a selection in modal dialog
  • Win: Fixed bug where subscription text in Preferences dialog would get truncated on 32-bit Windows
  • Win: Fixed bug where de-auth can cause exception
  • Win: Modified Online Documentation menu items to open the browser to http://docs.coronalabs.com/api instead of the Resources web page
  • Win: Moved sample project Networking\InAppPurchase to Store\InAppPurchase
  • Win: Removed OpenFeint sample projects
  • Win: Removed sample project Credits\SuperRewardsSample
  • Win: Removes Spriteloq from windows installation
  • Win: Updated all sample projects to support the new widget library
  • Win: Updated Graphics\X-ray sample project

New in Solar2D 2011.505 (Jun 23, 2011)

  • Displays "Unable to Connect to the Internet" instead of "Incorrect Username/Password" when no Internet connection is found.
  • When Deauthorizing and the system clock is incorrect, no longer asks for a password.
  • Fixes machine ID issues that may cause authorization problems.