Commit Graph

69 Commits

Author SHA1 Message Date
dongtao.han 34b1c1bc18 exported js_get_type_from_native for cocos2d::Node type. 2016-02-25 09:47:19 +08:00
pandamicro 6e7c9ab8db Cleanup log 2016-02-15 17:19:37 +08:00
pandamicro 94c62bed53 Remove ScriptingCore::retainCount 2016-02-15 16:32:00 +08:00
pandamicro cb4d24e1ee Merge pull request #14759 from pandamicro/hbmemory
Implement Full GC Relied memory model
2016-02-14 14:48:01 +08:00
pandamicro c03d2c57d7 Made console.log writable 2016-02-05 15:13:07 +08:00
Wenhai Lin 4992037c5c Avoid creating temporary string objects 2016-02-03 23:12:37 +08:00
pandamicro 01f41921d1 Fix enableDebugger issue 2016-01-28 01:55:10 +08:00
pandamicro 554523a201 Use JS::Heap instead of Mozilla::maybe to improve stability 2016-01-28 01:03:13 +08:00
pandamicro d6cedb88ec Remove JS::Persistent and move js object reference into JS scope 2016-01-24 19:47:26 +08:00
pandamicro fc19435123 Merge branch 'v3' of github.com:pandamicro/cocos2d-x into hbmemory
Conflicts:
	cocos/base/ccConfig.h
	cocos/scripting/js-bindings/manual/ScriptingCore.cpp
	cocos/scripting/js-bindings/manual/ScriptingCore.h
	cocos/scripting/js-bindings/script/jsb_prepare.js
2016-01-18 16:40:00 +08:00
XiaoFeng ab0efd933a Merge branch 'v3.10' of https://github.com/cocos2d/cocos2d-x into v3
Conflicts:
	CHANGELOG
	cocos/scripting/js-bindings/manual/cocos2d_specifics.cpp
	tests/js-tests/src/RenderTextureTest/RenderTextureTest.js
2016-01-09 18:01:56 +08:00
Ricardo Quesada 7cd80cb669 Adds iOS tests, calls GC after replacing scene
and some bug fixes

Squashed commit of the following:

commit 36b74ce4e68bf2f4a4c464453e695497716506eb
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Dec 22 19:07:01 2015 -0800

    adds missing file

commit 017d03807122faa38fefaa8f4554db8edc83561d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Dec 22 19:02:27 2015 -0800

    disables GC by default

commit a2f3767a952e052eb8f0391bb5cbd1a8d0ce1b38
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Dec 22 18:57:14 2015 -0800

    Adds iOS test and calls GC after replacing the scene

commit 7b3b628caeb3366356d9a896aebd9c96887a85ed
Merge: 79e926a e311655
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Dec 22 15:29:01 2015 -0800

    Merge branch 'v3' into v3_js_memory_test_and_fixes

commit 79e926a970e3153ee826b299c3417fb6ac599153
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Dec 21 21:27:19 2015 -0800

    fixes crashes

commit 76f3910748e15c4ea179eab846f24f3e65d52d2d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Dec 21 11:57:56 2015 -0800

    Adds standalone test for JS GC memory

    and fixes leaks on extended/subclassed objects
2015-12-29 17:36:02 -08:00
pandamicro 2ce866c4ba Fix jsb_ref_rebind issue on win32 (mystery GC crash) 2015-12-25 19:08:32 +08:00
mogemimi b0c4adcbd0 Fix method name spelling in AutoPolygon 2015-12-23 19:07:03 +09:00
pandamicro 81918f51ea Fix event handle function issue with compartment
and  Fix a crash issue caused by malformed js usage
2015-12-21 00:16:17 +08:00
pandamicro e1bc6640f4 Implement full GC relied memory model 2015-12-21 00:14:51 +08:00
pandamicro 022bcc24f1 Merge branch 'v3.10' of github.com:cocos2d/cocos2d-x into v3
Conflicts:
	cocos/scripting/js-bindings/manual/chipmunk/js_bindings_chipmunk_manual.cpp
	cocos/scripting/js-bindings/manual/component/CCComponentJS.cpp
	cocos/scripting/js-bindings/manual/js_bindings_opengl.cpp
2015-12-20 22:56:33 +08:00
Ricardo Quesada f023d5a378 no more uthash
Instead of using two uthash entires, it uses two unordered_map entries.
Benefits are:

easier to debug. I can inspect the contents of the unorderd_map with the
debugger
less memory. I don't need to allocate two proxies. I only allocate one
proxy and I added it into both maps
If also fixes an important bug when unrooting objects. Unroot was
cleaning the heap object. So now proxy adds a _jsobj, which is a raw
pointer. Needed under certain cases.
2015-12-16 17:37:44 -08:00
Wenhai Lin 66b0a0e9b1 Adds `std::nothrow` to the `new` statements 2015-12-16 17:06:56 +08:00
pandamicro 64276bd664 Fix ComponentJS proxy management issue in JSB 2015-12-15 11:48:44 +08:00
Ricardo Quesada c5058aa2f9 more conversions 2015-12-11 17:18:20 -08:00
Ricardo Quesada 47911e0c24 more js fixes
fixes in how ref count is measured
opengl bindings converted to new API
2015-12-11 15:18:09 -08:00
Ricardo Quesada 8b2dfb1a4b Mooooores fixes
but GC memory model doesn't work yet... somewhere someone is still
retaining a reference that prevents the whole thing from
releasing
2015-12-10 22:15:44 -08:00
Ricardo Quesada 96d391ea30 Squashed commit of the following:
commit aff4e27200a77db60b13ea30c2457558e5f53059
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu Dec 10 17:58:41 2015 -0800

    compiles with new GC model

commit 1fa69cd71231d56371cd45a378e50a1888308b42
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu Dec 10 17:41:15 2015 -0800

    Animation3D works Ok

commit d439969caf7e6fe83a74e37d078c4361a08cb816
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu Dec 10 13:39:50 2015 -0800

    Sprite3d create: converted to new API

commit aabe449e4a968fad882c44df9be787eb7c3bfcec
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu Dec 10 13:27:33 2015 -0800

    ouch...

commit 688ab610a8cb7607bc3c51b8ca01d800ef3c9794
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu Dec 10 13:12:25 2015 -0800

    Spawn/Sequence init* were not bound

    Fixed. Now JS Scheduler Test works Ok
2015-12-10 18:02:55 -08:00
Ricardo Quesada 13dc967b03 js_get_or_create_jsobject() and other stuff
- getDescendatns() converted
- singletons converted
- new helper template-specialized js_get_or_create_jsobject()

Squashed commit of the following:

commit 3f21e65bca5f7e5e5c4bf304f2daed0eff26f6aa
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Dec 7 19:04:24 2015 -0800

    logging added (and commented)

    will be useful in the future

commit f995295b385a515c1f82136688610a90eb379855
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Dec 7 19:00:09 2015 -0800

    new js_get_or_create_jsobject<T>

    Specializes Template on cocos2d::Ref.
    When Ref, it calls the `jsb_ref` functions

commit 240b80e4080757ebb47db0d02a1fe1f875237d24
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Dec 7 13:31:52 2015 -0800

    singletons converted

commit 667d94bf90267c103b620630bacfffa7767b42dd
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Dec 7 12:20:07 2015 -0800

    getDescendants() converted
2015-12-07 19:05:23 -08:00
Ricardo Quesada 49882ed91c js_cocos2dx_CCGLProgram_createWithString converted to new JSAPI 2015-12-03 15:49:56 -08:00
Ricardo Quesada b87975096e GLProgram converted to new JSAPI 2015-12-03 15:47:39 -08:00
Ricardo Quesada 67948ff8c8 adds jsb_ref_get_or_create_jsobject()
kind of replaces js_get_or_create_jsobject for Ref objets.
Benefits: friendly with the new JS API
takes less space (no template)
2015-12-03 15:40:52 -08:00
Ricardo Quesada 37b4c3fe6a CallFuncN converted to new JS API 2015-12-03 15:24:37 -08:00
Ricardo Quesada 013f5b8d33 layerMultiplex converted to new JS API 2015-12-03 15:15:47 -08:00
Ricardo Quesada 3100cba5a1 Animation ported to JS 2015-12-03 15:02:39 -08:00
Ricardo Quesada cc6e72fe7c MenuToggleItem converted 2015-12-03 14:54:38 -08:00
Ricardo Quesada bd943c5415 Sequence/Spawn converted to use new API 2015-12-03 13:56:00 -08:00
pandamicro c304348c34 Merge pull request #14565 from pandamicro/v3
Add js test case for fix, improve template
2015-12-03 18:48:34 +08:00
pandamicro 4cc4dd3a9f Fix Rooting API usage issue in cocos2d_specifics 2015-12-03 16:48:25 +08:00
Ricardo Quesada 58e4d3c487 JS Menu fixes 2015-12-02 17:30:54 -08:00
Ricardo Quesada 48523572b7 label JS fixes 2015-12-02 17:23:23 -08:00
Ricardo Quesada 6e50cf883f Sprite::create() using new API...
...also code easier to understand
2015-12-02 16:45:28 -08:00
Ricardo Quesada c321d35a9a Squashed commit of the following:
commit 000a025fb4027c26bf05f7296e2d1fbbf21abe6c
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Dec 2 10:38:27 2015 -0800

    updated submodule

commit b5f45a62b48493f05d75aea865158c371241973d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Dec 1 19:21:34 2015 -0800

    ooops... thanks Panda

commit 85f0b9c01d5281970f748b6460107bc0ca82cdf0
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Dec 1 18:19:16 2015 -0800

    better macro name for GC. Thanks panda

commit e42ad74a664dd2b85cbf4463a6fef8f6abc06664
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Dec 1 17:10:32 2015 -0800

    RepeatForever, Repeat and Speed converted

commit 3a8130ffc06301c91c836539736bbae456f05b4d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Dec 1 14:31:32 2015 -0800

    cherry-picking changes to disable retain/release from GC

commit 3ed6e00dc2d9d46248d9374a1f9874cd0b2ba67d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Dec 1 12:31:04 2015 -0800

    fixes autorelease issues on rebind

commit b65f5f6b16c1542c28b04d66377a27233c6cf214
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Dec 1 12:23:33 2015 -0800

    my JS changes... again
2015-12-02 14:45:13 -08:00
pandamicro 8320c2f702 Use rooted object for js_proxy new and get 2015-11-27 10:19:13 +08:00
pandamicro d23ffe4fc7 Fix some issue of js_type_class usage 2015-11-27 10:16:11 +08:00
pandamicro ae2b75c8be Fix issues causing by temporary RootedObject passed as function parameters 2015-11-27 01:35:06 +08:00
pandamicro c202834312 Clean up manual bindings code, remove JS_THIS_OBJECT and JS_SET_RVAL 2015-11-25 14:33:43 +08:00
pandamicro 69b2b5720b Use JS::PersistentRooted instead of JS::Heap to prevent delegates and wrappers internal js object from GC
More elegant and secured way, potential crashes exists in previous implementation
2015-11-25 14:32:19 +08:00
pandamicro 930405d52c Remove useless manual bindings for MenuItems 2015-11-24 16:32:02 +08:00
pandamicro 68d75a519a Use generational gc friendly API in JSTouchDelegate 2015-10-28 11:55:28 +08:00
pandamicro a3c2904e7f Fix cc.DrawNode.drawPoly 2015-10-27 16:46:25 +08:00
pandamicro 530321fe70 #14124 Improved JSCallbackWrapper with generational GC and fix the issue 2015-10-22 17:00:57 +08:00
pandamicro 9eeda122e9 Fix Scheduler API inconsistency 2015-10-21 22:10:48 +08:00
pandamicro 7b85211cfe Remove ScriptComponent
Because windows platform can't successfully compile in previous architecture
2015-09-27 22:18:59 +08:00