* Enable running `unit-tests` in GitHub workflow
* Attempt to fix macOS unit-tests run
* Use axmol run to run unit-tests
* Skip launch when desktop cpu mismatch
* Skip launch when desktop cpu mismatch
* Fix unit-tests crash on linux
* GitHub Action: divide osx arm64, x64 to differrent runner image
---------
Co-authored-by: Deal <halx99@live.com>
* Add unit-tests app for running automatic unit tests
* Move unit tests from cpp-tests to unit-tests
* TEMP
* Add FileUtils::fullPathForDirectory() tests
* Use test assets from `axmol-sample-assets` repo
* Add more FileUtils::isFileExist(), FileUtils::isDirectoryExist() tests
* Add `unit-tests` builds to GitHub's workflows
* Fix `.github/worflows/build.yml`
* Fix FileUtils::getFileSize() not returning -1 when file is not found
* Fix FileUtils::fullPathForDirectory() not appending a trailing slash
* Fix `not` and `and` keyword usage
* Fix FileUtils::getDefaultResourceRootPath() returning nothing on macOS
* Fix FileUtils::isFileExist() returning true for directories on macOS
* Create media controls in onEnter to work around issue with Metal renderer when creating a RenderTexture
* Add support for setting timeline bar height in media player controller
* Use consistent positions for fullscreen enter and exit controls
* Update core/ui/UIMediaPlayer.cpp
* Create media controls on the next update cycle to work around RenderTexture creation issue with Metal renderer backend
* Add event notification for when video player full screen state changes
* Add full screen switching event to normal media player event handler
* Initial work on media controller
* Media player controller for WMF media engine
* Add getDuration and getCurrentTime methods to media engines
* Fix compilation
* Fix Android media timeline issues
* Fix compilation issue
* Fix WinRT compilation issue
* Fix compilation issue
* Add missing header include
* Make it simpler to create a custom media controller
* Ensure the basic media controller widget size is the same size as the media player on initialization
* Add dark media control underlay to give more contrast to the controls
ADd copyright notices
* Removing existing media controller from parent if required
* Adjust for view scaling since embedded resources are created for a scale of 1.
* Scale central media controls if required on content size change
* Remove pointless fast forward and fast reverse buttons
Ensure media controller correctly resizes on full-screen media playback
* Allow enable vlc on windows
* Improve media macro detect
* Add media controls drawn by DrawNode into single texture
Add fullscreen enter and exit controls
setUserInputEnabled and isUserInputEnabled replaced by setMediaControllerEnabled and isMediaControllerEnabled
* Update function calls to new names
* Revert back to setUserInputEnabled and isUserInputEnabled
* Remove embedded circle image and create it with DrawNode
* Change radius of drawn circle to half the total image size
---------
Co-authored-by: halx99 <halx99@live.com>
* When loading csb files, prevent repeated loading of plist files
* Add more feature
* Rename function
* Use isSpriteFramesWithFileLoaded to determine whether the atlas is loaded
* use string_view instead of string
* Update SpriteFrameCache.cpp
* Fix compilation error
* Fix failed assertion and memory leak with event listeners
This solves an issue that was fixed for Cocos2d-x v3.16 and then reverted afterwards for "backwards compatibility".
I don't think we need this backwards compatibility anymore, and the benefits to cleaning up this memory outweigh the potential for some developers to need to refactor their code.
Specifically this also solves an ASSERT that fails when quitting the game on a scene which has nodes with Event Listeners that I experienced without this change, and with the Config.h setting AX_NODE_DEBUG_VERIFY_EVENT_LISTENERS enabled.
* Fixed typo