* Add EventDispatcher#hasEventListener (sync from creator)
* Fix function wrapper using js object during its gc
* Support more system languages
* Direct log/error for better understanding problems & add sys.now
* Synchronize Editbox APIs
* Synchronize Scheduler.PRIORITY_NON_SYSTEM const
* Upgrade web engine
* Upgrade test cases
* Manually bind EventDispatcher::addCustomEventListener to avoid memory issue
* Manual bind EventListeners’ create to avoid memory issue
* Fix compilation issue when COCOS_DEBUG = 2
* Unify function name of Texture2D::releaseTexture
* Fix compilation issues and update web & bindings-generator
* Fix lua compilation issue
* Use %ld instead of %zd
* Separate FinalizeHook for ref objects and non ref objects
* Fix spine TrackEntry recursive conversion issue by using getter
* Fix crash during Wrappers deallocation (possible to have leak)
* Increase default JS heap to 32 mb
* Update engine version
* Add change log of web engine
* Improve cc.formatStr
* Fix chipmunk crash issues when using setDefaultCollisionHandler
* Add change log for JSB and update web engine ref
* [android] Catches ‘NumberFormatException’ while invoking Integer.parseInt.
* [android] Catches ‘NullPointerException’ while converting Integer to int in Cocos2dxActivity.hideVirtualButton.
* These variables can be accessed by reference
* Assign values in initialization list
* _range can also be in initialization list
* Prefixed ++ and added 'auto' to loops
Also removed extra whitespace
* Prefixed ++/--, and changed for-loop implementation to use 'auto' on some loops
* Use resolved file name (through dictionary lookup) in font atlas creation, to prevent creating multiple atlases for the same file.
Add font tests with and without font name replacement (through dictionary lookup).
* Fix cpp-tests xcode and cmake project
* Additional fix for cmake project
* Added -Wno-unused-parameter and removed all uses of the CC_UNUSED_PARAM macro
* Commented unused parameter names in .cpp files which previously used CC_UNUSED_PARAM
* Reverted -Wno-unused-param flag.
Moved deprecated touch methods definitions to .cpp file.
Commented more unused parameter names.
* Fixed some errors and warnings caused by the previous commit.
* Commented remaining unused parameter names in .cpp files.
* Fixed unused parameter warnings in headers.
* Fixed some more unused parameter warnings.
* Fixed some more unused parameters warnings.
* Fixed mistake in previous commit, missing ComAudioReader:: in method. Other warnings.
* Fixed build errors.
* Added missing file to CMakeLists
* Added method to switch between single and multitouch on Android.
* Moved variable definitions to the beginning of the class. Handle single touch for ACTION_MOVE and ACTION_CANCEL.
* Cleaner code by using if/else instead of break
* replaced some unordered_map::insert(std::make_pair(foo, bar)) with unordered_map::emplace(foo, bar)
* replaced some vector::push_back(std::make_pair(foo, bar)) with vector::emplace_back(foo, bar)
The old way will construct a std::pair first then call move constructor
when putting it into the container, while using emplace will construct
the pair in-place in the container. Also, the emplace way is shorter &
more concise.
* Use range-based for-loops and allocate std::vector size(), end(), cend(), rend(), crend() on the stack where favorable.
Other minor trivial changes were applied.
* Fixed Android compilation error
* Fixed windows-universal compilation error
* Support audio interruption and resume callback when change earphone status.
* Refactor keyevent callback and add makecurrent for compatible with different binary.
* Enable Tizen indicator.
* Remove the unnecessary evasobject in the window and refactor the function for glview mode.
* Fix the compatible issue between Tizen 2.3 and 2.4.
* Fix the wrong directory of script resources for HellLua template project.
* Create performance-test project for Tizen platform.
* Use ++ prefix instead for non-primitive data types in CCAutoPolygon.cpp
* Use ++ prefix instead for non-primitive data types in SimpleAudioEngine.cpp
* Use ++ prefix instead for non-primitive data types in CCNodeLoaderLibrary.cpp
* Use ++ prefix instead for non-primitive data types in CCActionManagerEx.cpp
* Use ++ prefix instead for non-primitive data types in CCDataReaderHelper.cpp
* Use ++ prefix instead for non-primitive data types in HttpClient-android.cpp
* Use ++ prefix instead for non-primitive data types in CCDevice-linux.cpp
* Use ++ prefix instead for non-primitive data types in ScriptingCore.cpp
* Switched implementation to range-based for loops
* Added readability, fixed loop in CCDataReaderHelper.cpp
Thanks to Dimon4eg for the code review.
* Update CCSAXParser.cpp
* #Improve XML parse performance with rapidxml pure SAX parser without compatible break.
* put rapidxml to external
* Update deps
* Update js auto binding settings with new ndk version
* Remove unnecessary property from Ref
* Merge part of Cocos2d-x-lite :
1. Improve network bindings
2. Use nullptr instead of NULL
3. Remove usage of some deprecated APIs
4. Add some defensive code and cleanup
* Fix spine track entry circle referencing issue
* cocos2d/cocos2d-x#16327: Fix global object leak issue in JSB
* Improve ScriptingCore::evalString, old implementation have been deprecated in Spidermonkey
* Update JS versions
* Add docs for web v3.13
* Improve ScriptingCore
* Manual merge cocos2d/cocos2d-x#16383 by DavidDeSimone
* Fix auto bindings configurations
* Update web ref
Adds Director::isValid()
removes DisplayLinkDirector()
removes virtual functions from Director()
Director is no longer an abstract class
github issue #14276
* Support audio interruption and resume callback when change earphone status.
* Refactor keyevent callback and add makecurrent for compatible with different binary.
* Enable Tizen indicator.
* Remove the unnecessary evasobject in the window and refactor the function for glview mode.
* Fix the compatible issue between Tizen 2.3 and 2.4.
* Fix the wrong directory of script resources for HellLua template project.
* Create performance-test project for Tizen platform.
* Win32 move unicode utils global.
It need for easy converting utf-8 string in all code.
And use it api in user code also WinRT version.
* Move to CCUtils-win32
Also in WinRT version.
* Copyright
translucent part of ETC format textures are rendered too bright due to
the fact that v3.12 sets PremultipliedAlpha to true by default. This
commit sets default value of _hasPremultipliedAlpha = false, deletes
unnecessary `_hasPremultipliedAlpha = false` code in multiple places,
making ETC format's _hasPremultipliedAlpha false while keeping other
formats unchanged.
* Audio latency fix for Android. Support preload effects on Android now.
Squashed commits:
[b6d80fe] log fix
[a0a918e] Fixes assetFd didn't be released while PcmData is returned from cache.
[4b956ba] Potential crash fix for PcmAudioPlayer while pause / resume.
[398ab8c] Updates LOG_TAG position in AudioEngine-inl.cpp
[e3634e7] include stdlib.h for posix_memalign
[9004074] fixes setVolume logical error.
[c96df46] Don't use another thread for mixing, enqueue is in a seperated thread, therefore doing mixing in another thread will waste more time.
[0a4c1a8] Adds setLoop, setVolume, setPostion support for Track
[c35fb20] Fixed include.
[cdd9d32] Do mixing by ourself. (TO BE POLISHED)
[6447025] µ -> u since µ could not be shown on some android devices.
[97be0c6] Don't send a silence clip.
[c1607ed] Make linter.py happy.
[0898b54] Puts enqueue & SetPlayState in PcmAudioPlayer::play to thread pool.
[b79fc01] Adds getDuration, getPosition support for PcmAudioPlayer
[80fa2ab] minor fix of the code position of resetting state to State::INITIALIZED
[d9c62f1] underrun fix for PcmAudioPlayer.
[9c2212a] UrlAudioPlayer, playOverMutex should be static, and should be used in update method.
[1519d2e] static variables
[19da936] _pcmAudioPlayer Null pointer check in AudioPlayerProvider.
[e6b0d14] Updates audio performance test.
[fc01dd4] Registers foreground & background event in AudioEngine-inl.cpp(android), the callback should invoke `provider`'s pause & resume method.
[e00a886] TBD: Pause & resume support for PcmAudioPlayerPool.
Since OpenSLES audio resources are expensive and device shared, we should delete all unused PcmAudioPlayers in pool while pause and re-create them while resume.
But this commit isn't finished yet, I don't find a better way to register pause&resume event in AudioEngine module.
[9e42ea3] Interleave mono audio to stereo audio. PcmAudioPlayerPool only contains PcmAudioPlayers with 2 channels.
[3f18d05] Adds a strategy for checking small size of different file formats.
[753ff49] Adds performance test for AudioEngine.
[09d3045] Releases an extra PcmAudioPlayer for UrlAudioPlayer while allocating PcmAudioPlayer fails.
[9dd4477] Using std::move for PcmData move constructor & move assignment.
[6ca3bcb] some fixes:
1) new -> new (std::nothrow)
2) break if allocate PcmAudioPlayer fails
3) renames 'initForPlayPcmData' to 'init'
4) PcmAudioPlayer destructor deadlock if 'init' failed
[54675b6] include path fix.
[a1903ca] More refactorings.
[19b9498] Makes linter.py happy. :)
[923c530] Fixes:
1) Avoid getFileInfo to be invoked twice
2) A critical bug fix for UrlAudioPlayer and adds detailed comments
3) __clang__ compiler option fix for AudioResamplerSinc.cpp.
[5ec4faf] minor fix.
[faaa0f3] output a log in the destructor of UrlAudioPlayer.
[9c20355] NewAudioEngineTest,TestControll crash fix.
[f114464] fixes an unused import.
[1dc5dab] Better algorithm for allocating PcmAudioPlayer.
[331a213] minor fix.
[e54084a] null -> nullptr
[f9a0389] Support uncache.
[89a364f] Removes unused update, and TODO uncache functionality.
[1732bf9] Supports AudioEngineImpl::setFinishCallback for android.
[43d1596] UrlAudioPlayer::stop fix.
[e2ee941] Test case fix in NewAudioEngineTest/AudioIssue11143Test
[5c5ba01] More fixes for making cpp-tests/New Audio Engine Test happy.
[8b554a3] Adds log while remove player from map.
[ed71322] If original file is larger than 30k bytes, consider it's a large audio file.
[fb1845a] Updates project.properties
[6f3839f] minor log output fix in AudioEngine-inl.cpp
[c68bc6c] Don't resample if the sample rate of the decoded pcm data matchs the device's.
[43ca45f] PcmAudioPlayers also need to be removed while they play over, but should not be deleted since their lifecycle is managed by PcmAudioPlayerPool.
[f5e63c9] Audio latency fix for Android. Support preload effects on Android now.
* Supports to loading audio files asynchronously.
* Crash fix for stop audio right after play2d.
* Minor fix for logic in AudioMixerController.cpp
* Adds missing files (CCThreadPool.h/.cpp).
* Minor fix for including.
* Minor fix for missing include <functional> in Track.h
* update license information in audio.h
* Don't use std::future/std::promise anymore since ndk counldn't support it well in armeabi arch.
* isSmallFile postion updated, fixes large audio file goto the checking logic of cache.
* std::atomic<int> isn't supported by ndk-r10e while compiling with `armeabi` arch, using a int with a mutex instead.
* fixes __isnanf & posix_memalign doesn't exist on low api (<=16) devices.
* namespace updated: cocos2d -> cocos2d::experimental
* Removes commented code in AudioMixerController.h/.cpp
* Removes unused code again, and fixes a memory leak of `Track` instance.
* Oops, namespace changed.
* Only outputs log in debug mode.
* Uses ALOGV for outputing logs in AudioEngine-inl.cpp
* const PcmData& -> PcmData for Track
* Fixes a protential crash in NewAudioEngineTest
* Adds `COCOS` prefix in header #ifndef COCOS_BALABALA #define COCOS_BALABALA
* Uses _ prefix for cocos code style instead of `m` prefix.
* Deletes AudioResamplerSinc related files.
* Bug fix from @minggo's reply on github.
* Don't need to invoke pause after in UrlAudioPlayer::prepare.
* Updates ThreadPool class, uses enum class and adds const keyword.