Commit Graph

339 Commits

Author SHA1 Message Date
pandamicro 75383bdcde Jsb improvements (#17513)
* Cleanup ScriptingCore code

* Add jsb.ENABLE_GC_FOR_NATIVE_OBJECTS to indicate the memory model

* Use incremental GC

* Improve ScriptingCore::executeFunctionWithOwner performance

* Support ScriptingCore::executeGlobalFunction

* Reuse js objects for get_or_create_weak_jsobject reduce memory usage

* Fix sequence / spawn js object lost issue

* Improve wrappers with cppOwner system
2017-03-16 09:42:16 +08:00
pandamicro 0eec73ba43 Bindings fix and assets manger ex fix (#17115)
* Fix custom event being discard during event emission

* Fix tilemap black line issue

* Fix auto bindings config

* Adapt websocket to new memory model

* Improve cocos2d_specifics code stability

* Fix issue with get_or_create_js_object function

* Improve memory usage in function wrapper invocation

* Use JS Function bind to avoid memory tracking issues

* Support size parameter to collect total byte size before update process

* Fix download resuming issue on Android

* Remove temporary assets when temporary manifest is invalid or out of date

* Use version compare handle to compare manifests versions

* Support max concurrent tasks setting & download verify callback

* Add Manifest::Asset conversion

* Avoid crash caused by wrappers

* Sync implementation of tested and published AssetsManagerEx from Cocos Creator

* Fix linux compilation issues
2017-03-15 16:09:02 +08:00
James Chen 619e012d9b [WebSocket] Adds support for getting url and server selected protocol (#17381)
* [WebSocket] Adds support for getting url and server selected protocol

* Adds const keyword for getter methods, and make LOGE also works in release mode.
2017-02-20 09:44:20 +08:00
CocosRobot d07794052f Update license to 2017 (#17362)
* Typo: CopyRight -> Copyright

* Copyright update: chukong-inc.com -> Chukong Technologies Inc.

* [js files] Copyright update: 2014 -> 2014-2017

* [cpp files] Copyright update: 2014 -> 2014-2017

* Copyright update: 2015 -> 2015-2017

* [js files] Copyright update: 2014 -> 2014-2017

* Copyright update: 2016 -> 2016-2017

* Copyright update: 2013 -> 2013-2017

* Copyright update: 201?-201? -> 201?-2017

* License year fixes.

* Liscene year fix in CCRay.cpp

* Updates license years in CCGLProgramState.h & CCGLProgramStateCache.h
2017-02-14 14:36:57 +08:00
James Chen 4237639dd6 Some fixes for websocket (#17342)
* libwebsockets & curl are dynamic libraries now, modify project configuration for win32.
Updates WebSocketTest.cpp to test wss connection.

* Corrects some logic in WebSocket.cpp. Adds wss test case. WebSocketTest suggests developers to use `WebSocket::closeAsync` method which will not block current thread.

* mutex unlock fix in WebSocket.cpp. Reverts TEST URL.

* Allows self-assign cert.

* Each ws connection will create a virutal host now. Supports self-signed cert and update test case to suggest developer use ‘closeAsync’.

* Updates deps to 123.
2017-02-13 15:15:23 +08:00
minggo 34d4c65c86 fix crash on Android (#17338)
The crash is caused because of local reference table overflow
2017-02-10 13:51:29 +08:00
minggo 8825a091bb update spine to 3.5.35 (#17331)
* update spine to 3.5.35

* fix jsb compiling error

* fix lua compiling error
2017-02-09 16:57:42 +08:00
mogemimi 75d2e76095 Fix minor typos in comments and docs (#17294) 2017-02-07 09:41:52 +08:00
kosmosR2 44fb4ba3bc To use some HTTP client library those use `send(null)` like `superagent`,`XMLHTTPRequest` should send a empty request instead of abort. (#16989) 2017-01-05 16:12:03 +08:00
pandamicro 88be66218b Small fix to CallbackWrapper 2016-12-26 00:08:59 +08:00
pandamicro 7c2ea03b00 Improve TrackEntry issue solution with internal unordered_map 2016-12-26 00:08:18 +08:00
pandamicro 100c027054 Fix chipmunk crash issues when using setDefaultCollisionHandler 2016-12-21 11:07:18 +08:00
pandamicro 149bdf125e Update engine version 2016-12-19 12:15:41 +08:00
pandamicro 51a09048bd Increase default JS heap to 32 mb 2016-12-19 11:51:43 +08:00
pandamicro a508b7d751 Fix crash during Wrappers deallocation (possible to have leak) 2016-12-19 11:51:23 +08:00
pandamicro 46dbb32fd9 Fix spine TrackEntry recursive conversion issue by using getter 2016-12-19 11:50:52 +08:00
pandamicro 2b6e84e9a2 Separate FinalizeHook for ref objects and non ref objects 2016-12-19 11:50:32 +08:00
pandamicro a73485a1bc Use %ld instead of %zd 2016-12-13 18:12:50 +08:00
pandamicro bedde74df5 Fix compilation issue when COCOS_DEBUG = 2 2016-12-13 14:29:25 +08:00
pandamicro 00b57c9565 Manual bind EventListeners’ create to avoid memory issue 2016-12-13 14:29:24 +08:00
pandamicro 3d6b1367cd Manually bind EventDispatcher::addCustomEventListener to avoid memory issue 2016-12-13 14:29:24 +08:00
pandamicro 197dac204b Fix function wrapper using js object during its gc 2016-12-13 14:29:23 +08:00
pyrosphere 663bb4d7ed No CC_UNUSED_PARAM (#16812)
* 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
2016-11-16 09:48:37 +08:00
David DeSimone 9204c87cfc Adding performance.now() to cocos2d-js. (#16766)
* Adding performance.now() to cocos2d-js. See https://developer.mozilla.org/en-US/docs/Web/API/Performance/now

* Fixing improper logic for converting from microseconds, to milliseconds with micro-precision

* Adding performance.now tests
2016-11-04 11:58:48 +08:00
pandamicro e4170a7b02 Improve JS bindings (#16751)
* Fix tests for v3.12 web

* Improve scheduler wrapper

* Update web engine ref

* Fix leak: js_remove_object_reference can not remove non binding objects

* Fix ScriptingCore::evalString

* Add missed `__cppCreated` for JS create objects

* Fix manifest path issue
2016-10-28 09:29:56 +08:00
Ricardo Quesada 323ea7c0d4 Sprite scale9 (#16702)
* Adds slice9 support for Sprite.

how to use it:

// points coords
sprite->setCenterRect(Rect(x,y,w,h));

// normalized coords
sprite->setCenterRectNormalized(Rect(x,y,w,h));
starts scale9sprite in sprite

more slice 9 changes

sprite 9 slice works?

kind of works

correct anchor point

slice 9 works, at least with non-rotated atlases

streched works ok

better Y invert code.

cleaner, compatible with the previous code

yay, scaling workings...

need a better api now

sets scale correctly

yay! works as expected!

more fixes and tests

better test for box

setContentSize() changes size in non-9-slice mode sprites as well

setCenterRect() -> setCenterRectNormalized()

yet another test

adds setPositionNormalized()

adds setCenterRect() tests

remove devel team from xcode

tests: add one more tests

fun test!

improved test

yet another test for slice 9

* fixes anchorPoint issues

* adds documentation

* fix: using top-left coordinate for setRect

* sprite: fixes related to scale9 and tiled

* Sprite: slice 9 fixes

works Ok with rotated frames
uses `setCapInsets` instead of `setCenterRect` to be more familiar
with `UIScale9Sprite`

* fixes js and lua bindings for Autopolygon
2016-10-26 18:45:40 -07:00
Wilson E. Alvarez cdee1e11de Performance tweak: use range-based for-loops instead of iterator-based for-loops. (#16642)
* 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.
2016-10-11 10:59:44 -07:00
mogemimi 8b703a8d12 Fix implicit conversion warning (#16598)
* Fix implicit conversion warning

* Change SAXParser::textHandler parameter type from int to size_t
2016-09-26 14:49:47 +08:00
pandamicro 466053b740 Fix JS AssetsManagerTest and Improve scheduler wrapper (#16605)
* Fix tests for v3.12 web

* Improve scheduler wrapper

* Update web engine ref
2016-09-26 14:44:32 +08:00
mogemimi 91cdb3394b Suppress warning C4101 on MSVC (#16573) 2016-09-14 10:49:14 -07:00
James Chen 5bfd110424 Fixes jsval_to_std_string could not convert number to string. (#16504)
Don't use deprecated method in ActionsProgressTest.
2016-09-05 10:02:05 +08:00
minggo 04fd2b16b2 merge v3.13 back to v3 2016-08-29 11:57:13 +08:00
pandamicro f0be4f3069 Merge part of Cocos2d-x-lite (#16380)
* 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
2016-08-19 16:28:47 +08:00
James Chen b135d512d2 Update copyright to 2016. (#16311) 2016-08-05 09:42:15 +08:00
Ricardo Quesada 2945968614 Upgrades to Spine v3.4 (#16242)
* Upgrades to Spine v3.4

Github issue #16115

* compiles and works on windows

tested on:

* win32
* win10
* win8.1

* include-linter: don't test spine files

we need them unmodified

* spine bindings fixes

also, doesn't use goblins-ffd. instead it uses goblins.
goblins-ffd is no longer present in spine v3.4
2016-07-28 07:25:50 -07:00
mogemimi 15030ad4c3 Fix typos in log messages 2016-07-25 02:53:22 +09:00
minggo 734d857ced Merge branch 'v3.12' into merge-v312 2016-07-07 15:13:21 +08:00
pandamicro ccb30cefc7 Update JS versions 2016-07-06 17:02:53 +08:00
pandamicro 305bd95dc2 More secure release in JSB_closeWindow 2016-07-06 13:55:18 +08:00
mogemimi bed4e048b6 Fix various typos 2016-07-06 08:27:39 +09:00
mogemimi 2443e09d29 Fix typos and other mistakes in docs 2016-07-04 00:42:10 +09:00
pandamicro d02bdda781 Fix callfunc released with retained data (callback, target, extradata) issue 2016-07-01 10:56:17 +08:00
mogemimi c0f2194961 Fix some minor typos in local variable names 2016-06-29 11:04:11 +09:00
minggo bbd837aefa merge v3.12 back to v3 2016-06-28 17:53:50 +08:00
pandamicro e7e365a00f Fix window.close crash in JSB 2016-06-28 11:59:55 +08:00
pandamicro 8cb2e93644 Fix easing action crash because the js object is not rooted 2016-06-24 14:38:59 +08:00
mogemimi 0dce4961ee Avoid implicit conversion from size_t to int 2016-06-24 15:15:45 +09:00
minggo 1042b18999 Merge pull request #15936 from mogemimi/use-nullptr-instead
Use nullptr instead of 0 or NULL whenever possible
2016-06-24 09:54:15 +08:00
mogemimi b7982fd8e0 Fix -Wreturn-type warnings when compiling JSB with Clang 2016-06-24 08:48:21 +09:00
mogemimi cbc0612306 Use nullptr instead of 0 or NULL 2016-06-23 12:39:23 +09:00