summaryrefslogtreecommitdiffstats
path: root/modules/nativescript
Commit message (Collapse)AuthorAgeFilesLines
* merged gdnative and nativescript moduleKarroffel2017-09-0310-2664/+0
|
* Fix files headerPoommetee Ketson2017-09-011-1/+1
|
* Make GDNative work on AndroidRuslan Mustakov2017-08-302-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | The changes include work done to ensure that GDNative apps and Nim integration specifically can run on Android. The changes have been tested on our WIP game, which uses godot-nim and depends on several third-party .so libs, and Platformer demo to ensure nothing got broken. - .so libraries are exported to lib/ folder in .apk, instead of assets/, because that's where Android expects them to be and it resolves the library name into "lib/<ABI>/<name>", where <ABI> is the ABI matching the current device. So we establish the convention that Android .so files in the project must be located in the folder corresponding to the ABI they were compiled for. - Godot callbacks (event handlers) are now called from the same thread from which Main::iteration is called. It is also what Godot now considers to be the main thread, because Main::setup is also called from there. This makes threading on Android more consistent with other platforms, making the code that depends on Thread::get_main_id more portable (GDNative has such code). - Sizes of GDNative API types have been fixed to work on 32-bit platforms.
* Fix GDNative API generator after changes to MethodBindRuslan Mustakov2017-08-302-19/+24
|
* Add enums in GDNative API generatorRuslan Mustakov2017-08-301-1/+40
|
* Use HTTPS URL for Godot's website in the headersRémi Verschelde2017-08-278-8/+8
|
* Convert Object::cast_to() to the static versionHein-Pieter van Braam2017-08-241-3/+3
| | | | | | | | | | | | Currently we rely on some undefined behavior when Object->cast_to() gets called with a Null pointer. This used to work fine with GCC < 6 but newer versions of GCC remove all codepaths in which the this pointer is Null. However, the non-static cast_to() was supposed to be null safe. This patch makes cast_to() Null safe and removes the now redundant Null checks where they existed. It is explained in this article: https://www.viva64.com/en/b/0226/
* -Code completion for enumerationsJuan Linietsky2017-08-241-1/+1
| | | | -Disabled GDNative and GDNativeScript so build compiles again
* Removed unnecessary assignmentsWilson E. Alvarez2017-08-211-2/+1
|
* Updated function argument namesWilson E. Alvarez2017-08-121-1/+1
|
* Merge pull request #10179 from marcelofg55/masterRémi Verschelde2017-08-111-2/+2
|\ | | | | Fix crash when running a game with the profiler enabled
| * Fix crash when running a game with the profiler enabledMarcelo Fernandez2017-08-081-2/+2
| |
* | Merge pull request #10202 from neikeq/how-do-you-turn-this-onRémi Verschelde2017-08-111-4/+4
|\ \ | | | | | | Improves method bind's detecting of signarute types
| * | Removes type information from method bindsIgnacio Etcheverry2017-08-101-4/+4
| |/
* | Merge pull request #10206 from endragor/show-base-nativescript-propsThomas Herzog2017-08-091-7/+5
|\ \ | | | | | | Allow to edit base type NativeScript properties
| * | Allow to edit base type NativeScript propertiesRuslan Mustakov2017-08-091-7/+5
| |/
* / Fix getting default values for NativeScript base type propertiesRuslan Mustakov2017-08-091-5/+5
|/
* Makes all Godot API's methods Lower CaseIndah Sylvia2017-08-071-1/+1
|
* Dont call nativescript callbacks if lib is not initializedRuslan Mustakov2017-08-041-7/+9
|
* Merge pull request #10060 from endragor/nativescript-frameThomas Herzog2017-08-033-44/+32
|\ | | | | Forward frame call to GDNative libraries
| * Forward frame call to GDNative librariesRuslan Mustakov2017-08-033-44/+32
| |
* | [GDNative/NativeScript] fix -rdynamic and removed _init callKarroffel2017-08-021-5/+0
|/ | | | | | | | | | The _init call was buggy anyway and in the end shouldn't be a thing that's called via ClassDB, it should be something that's language specific, so we leave this out for the bindings. In the commit 66a7763 the SCsub file for GDNative was changed to use a cloned environment, that bricked -rdynamic which needs to be passed down to the linker, which didn't happen with the new env.
* [NativeScript] fix signals from base class not being accessibleKarroffel2017-07-301-3/+7
| | | | https://github.com/GodotNativeTools/cpp_bindings/issues/26
* [NativeScript] fixed optional _init callKarroffel2017-07-271-18/+6
| | | | | | | | | In 3c53b35 a call to an "_init" function was introduced, that however was only executed in the `_new` function, also it *required* that such a function exists. With this patch the "_init" function will be optionally called on every instance creation.
* [NativeScript] fix mutex double lockKarroffel2017-07-271-1/+1
| | | | | | In 3c53b35 a bug got introduced where a mutex gets locked twice instead of locked and then unlocked. This path fixes that.
* added an optional parameter to OS symbol lookupKarroffel2017-07-271-2/+4
| | | | | | | | When looking up a symbol from a library, previously an error was shown when the symbol did not exist. That caused confusion when the lookup was completely optional. This adds a new parameter to that method so that those errors can be handled manually if needed.
* [NativeScript] call _init on instance creationKarroffel2017-07-272-3/+45
| | | | | This also adds basic locking for the set of owners to avoid threading problems
* Merge pull request #9882 from endragor/nativescript-refcountThomas Herzog2017-07-262-0/+25
|\ | | | | Forward refcount changes to NativeScriptInstance
| * Forward refcount changes to NativeScriptInstanceRuslan Mustakov2017-07-262-0/+25
| | | | | | | | | | | | This also changes Reference::unreference() to always invoke refcount_decremented. Previously it was not invoked until the count reached zero due to short-circuit evalution of boolean expressions.
* | Support multithreading for NativeScriptLanguageRuslan Mustakov2017-07-263-38/+211
|/ | | | | | | | | | | | | | Godot may call property setters from non-main thread when an object is loaded in the edtior. This means NativeScriptLanguage could be accessed from different threads, but it was not designed for thread-safety. Besides, previous behaviour made it so that godot_nativescript_init and godot_gdnative_init could be invoked from non-main thread, while godot_gdnative_thread is always invoked on the main thread. This may not be expected by the binding library. This commit defers native library initialization to the main thread and adds godot_nativescript_thread_enter and godot_nativescript_thread_exit callbacks to make a binding library aware of foreign threads.
* Fix typo in NativeScript property gettersheepandshepherd2017-07-251-1/+1
|
* [NativeScript] fix double initialization in editorKarroffel2017-07-252-2/+10
|
* [NativeScript] bound `new` to ClassDBKarroffel2017-07-251-0/+2
|
* GDNative register_propertyRamesh Ravone2017-07-241-0/+1
|
* [NativeScript] forgot to uncomment userdata returnKarroffel2017-07-242-3/+3
|
* [NativeScript] fix double free but on exitKarroffel2017-07-241-35/+1
|
* [GDNative] new GDNative APIKarroffel2017-07-2410-0/+2425
This adds GDNative as a separate class type. It can be used to interface with native libraries by using "native calls", which can be registered by modules (and in future other GDNative libraries?). It also reworks the currently called "GDNativeScript" into a "NativeScript" that just makes use of the new GDNative instead of it being the component that implements that functionality.