Commit graph

341 commits

Author SHA1 Message Date
kasenvr
ca80d79991
Merge branch 'master' into fix/update-api-docs 2020-10-02 15:33:28 -04:00
kasenvr
c975d1acec
Update libraries/script-engine/src/ScriptEngine.h
Co-authored-by: David Rowe <david@ctrlaltstudio.com>
2020-10-02 15:32:05 -04:00
Dale Glass
1d58ac4d79 Sanitize the URL further by removing leading slashes and any duplicated ones 2020-09-23 23:33:22 +02:00
Dale Glass
b243d382fc Fix warning due to multiline comment 2020-09-23 22:34:01 +02:00
David Rowe
c6ba42b7d6 Fix calculating external resource paths 2020-09-23 22:15:13 +12:00
David Rowe
ba7242f4dc Script.getExternalPath() and related JSDoc 2020-09-23 17:23:40 +12:00
kasenvr
88fc213644
Apply suggestions from code review
Co-authored-by: David Rowe <david@ctrlaltstudio.com>
2020-09-19 23:53:04 -04:00
David Rowe
2c84478dc1 Register metatype 2020-09-20 01:29:32 +02:00
Dale Glass
89aa89e9d3 Review fixes (non-working)
Trouble with:

> Script.getExternalPath(Script.ExternalPaths.Assets, "hi")

[UncaughtException evaluate] Error: cannot call getExternalPath(): argument 1 has unknown type `ExternalResource::Bucket' (register the type with qScriptRegisterMetaType()) in about:console:1 [Backtrace] <global>() at about:console:1
TypeError: cannot call getExternalPath(): argument 1 has unknown type `ExternalResource::Bucket' (register the type with qScriptRegisterMetaType())
2020-09-20 01:29:32 +02:00
Dale Glass
cd901f9e32 Move enum into ExternalResources namespace 2020-09-20 01:29:32 +02:00
Dale Glass
26bcaa420d Better enum registration 2020-09-20 01:29:32 +02:00
Kalila L
bcd5f242b9 Added type and filename doc for Script API. 2020-09-18 18:52:49 -04:00
kasenvr
7996698c8f
Merge branch 'master' into fix/other-renamings 2020-05-18 15:10:32 -04:00
David Rowe
ffeb37e7aa Merge remote-tracking branch 'hifi/master' into merge-hifi-master
# Conflicts:
#	CMakeLists.txt
#	README.md
#	cmake/externals/glad32es/CMakeLists.txt
#	cmake/externals/glad41/CMakeLists.txt
#	cmake/externals/glad45/CMakeLists.txt
#	cmake/externals/polyvox/CMakeLists.txt
#	cmake/externals/quazip/CMakeLists.txt
#	cmake/externals/vhacd/CMakeLists.txt
#	cmake/init.cmake
#	cmake/ports/hifi-deps/CONTROL
#	cmake/ports/sdl2/CONTROL
#	cmake/ports/sdl2/disable-hidapi-for-uwp.patch
#	cmake/ports/sdl2/enable-winrt-cmake.patch
#	cmake/ports/sdl2/fix-arm64-headers.patch
#	cmake/ports/sdl2/fix-x86-windows.patch
#	cmake/ports/sdl2/portfile.cmake
#	cmake/ports/sdl2/vcpkg-cmake-wrapper.cmake
#	cmake/ports/tbb/portfile.cmake
#	hifi_vcpkg.py
#	interface/src/avatar/MyAvatar.h
#	libraries/avatars-renderer/src/avatars-renderer/Avatar.h
#	libraries/avatars/src/AvatarData.h
#	libraries/entities-renderer/src/RenderableEntityItem.h
#	libraries/entities/src/EntityItem.cpp
#	libraries/entities/src/EntityItem.h
#	libraries/fbx/src/GLTFSerializer.cpp
#	libraries/graphics-scripting/src/graphics-scripting/Forward.h
#	libraries/networking/src/AddressManager.cpp
#	libraries/networking/src/DomainHandler.h
#	libraries/procedural/src/procedural/ProceduralMaterialCache.cpp
#	libraries/render-utils/src/HighlightEffect.cpp
#	libraries/render-utils/src/MeshPartPayload.cpp
#	libraries/render-utils/src/Model.cpp
#	libraries/render-utils/src/RenderShadowTask.cpp
#	libraries/script-engine/src/WebSocketClass.cpp
2020-04-09 16:46:27 +12:00
Kasen IO
115c40bd54 Lots of renamings, more to come. 2020-04-07 04:56:02 -04:00
David Rowe
7ed117dfcb Replace links to docs.highfidelity.com 2020-01-24 10:18:55 +13:00
David Rowe
5256f58520 Document callback function signatures for Script.addEventHandler() 2019-12-17 16:17:45 +13:00
David Rowe
bbd16d7544 Fix global print function's JSDoc 2019-12-11 07:42:58 +13:00
David Rowe
5caa21e5d9 Update Script JSDoc accordingly 2019-12-11 07:42:40 +13:00
humbletim
271fac4bca Merge remote-tracking branch 'upstream/master' into kasenvr-kpi-v1-modkit-rc-merge 2019-09-05 09:46:21 -04:00
David Rowe
6474705ca2 Reformat "supported script types" in Entities and Scripts signals 2019-09-04 21:06:30 +12:00
David Rowe
cf01d9f1af Script.require() JSDoc fixes 2019-09-04 21:04:03 +12:00
David Rowe
c19c1c9a5d Scripts API JSDoc fixes 2019-08-27 09:24:01 +12:00
Simon Walton
9aacd136b8 Add blocking to script unload for client entity-scripts 2019-08-14 13:51:40 -07:00
Kalila R
8b6cce5889 Moved getTypeAsString function from public to protected 2019-07-30 17:26:49 -04:00
humbletim
c5b2514e0e fix linux build warning; remove unnecessary code 2019-07-23 12:13:49 -04:00
kasenvr
e9e9607a3b modkit core changes initial commit
whitespace corrections + warnings
updated cmake plugin
rework with focus on JS API integration example
cleanup edit_filter scope
separate-out edit_filter wantsScope stuff
-plugin metadata
split scriptengines out separately
cleanup __url/__filename sets
additional cleanup
fix typo; consolidate ScriptInitializerMixin inits
add more example API protoypes
cleanup pass; fix entity_server / agent init
fix whitespace
remove technically unnessary plugin filtering
+EDIT_FILTER_SCRIPT; cleanup
reorder public/slot/private
use std::count_if
formatting
better debug output; cleanup
fix msvc compiler warning
cleanup
eradicate QtScript references from API Example
updated header comments
Updated KasenAPIExample
2019-07-14 21:35:13 -04:00
David Rowe
eb227c6b9a Document Entities entity methods 2019-06-22 11:59:07 +12:00
David Rowe
6299d38673 Distinguish between Uuid API and Uuid type in JSDoc 2019-06-05 14:39:05 +12:00
David Rowe
5227b35c6b Revise changes 2019-05-21 10:32:12 +12:00
David Rowe
ca7ddece8b Add missing Script JSDoc 2019-05-21 10:32:12 +12:00
David Rowe
0a0a25139c Deprecate items that shouldn't be in the Script API 2019-05-21 10:32:12 +12:00
David Rowe
d196e35701 Polish existing Script JSDoc 2019-05-21 10:32:12 +12:00
David Rowe
0e478de1a2 Stub out missing Script JSDoc 2019-05-21 10:32:12 +12:00
David Rowe
5068075645 Fill in MyAvatar animation JSDoc 2019-03-09 07:42:55 +13:00
David Rowe
5428bb19dc Add "Avatar Script" JSDoc API classification 2019-02-12 11:49:49 +13:00
John Conklin II
45ec44423b
Merge pull request #14694 from danteruiz/delete-only-domain-entities
case 20595: case 20563: Do not delete local entities when switching domains.
2019-01-17 11:25:58 -08:00
Dante Ruiz
e7d3844620 making pre review requests 2019-01-14 11:14:57 -08:00
Seth Alves
6589db628a fix a couple shutdown crashes and a class of asan warning 2019-01-11 15:53:49 -08:00
Clement
7723261cb9 Remove deferred script loading logic 2018-12-05 14:08:30 -08:00
Clement
7192aed131 Rework audio data memory ownership model 2018-11-14 14:45:18 -08:00
Seth Alves
f6e57f54b0 don't call enterEntity until script preload has finished 2018-09-21 10:26:55 -07:00
Clement
e6b4ccef16 Add lock around _entityScripts 2018-09-13 15:10:16 -07:00
Stephen Birarda
01e8fd66a3 fix script engine(s) cleanup from ESS 2018-08-22 13:52:37 -07:00
Thijs Wenker
74343c71d8 CR fixes 2018-07-31 22:29:53 +02:00
Thijs Wenker
ba8d445444 fix require by queueing content requests 2018-07-28 00:25:16 +02:00
Gabriel Calero
bb73af7230 Show stats button only in debug mode. Add isDebugMode to Script public interface 2018-05-29 17:21:44 -03:00
NissimHadar
c3ef6aab1c Don't save test scripts 2018-05-07 12:51:41 -07:00
MiladNazeri
8e214d8ee8
Merge pull request #13049 from ctrlaltdavid/21856-d
List which contexts each namespace and class is available in
2018-05-03 01:29:14 -07:00
John Conklin II
7a5fce4315
Merge pull request #12991 from luiscuenca/avatarScript
Avatar Scripts
2018-05-02 12:23:13 -07:00
luiscuenca
2de982a5a2 Added script types and better script reload 2018-04-30 12:04:35 -07:00
David Rowe
2cc3ed6287 List which contexts each namespace and object is available in 2018-04-28 20:00:28 +12:00
David Rowe
62930eb576 Interim JSDoc for Script 2018-04-22 15:26:39 +12:00
humbletim
3a735c1fc7 CR feedback and code cleanup 2018-01-23 03:12:26 -05:00
David Rowe
da33c4fcf2 Fix script reload icon not working in Windows developer builds 2017-10-26 11:41:52 +13:00
ZappoMan
a7e21d7e76 add remotelyCallable and remoteCallerID to provide additional security to Entities.callEntityServerMethod() 2017-10-22 14:30:58 -07:00
Seth Alves
8a49edbecb code review 2017-09-15 10:08:35 -07:00
Seth Alves
d89f2b77da rework ScriptEngine lifetimes using 'smart' pointers 2017-09-14 10:42:21 -07:00
samcake
c24e254257 Add support for profiling from scripts 2017-06-22 18:10:20 -07:00
NeetBhagat
9646eba873 Complete console.trace and added a testcases for all 13 functions. 2017-06-13 23:52:48 +05:30
NeetBhagat
5c324264a2 Complete the functionality of console.trace(). 2017-06-13 14:12:29 +05:30
NeetBhagat
e8fc766c2b Complete Console Exception. 2017-06-12 20:24:59 +05:30
NeetBhagat
ead0d42cf3 Merge branch 'master' into 21369
# Conflicts:
#	libraries/gl/src/gl/OffscreenQmlSurface.cpp
#	libraries/gl/src/gl/OffscreenQmlSurface.h
2017-06-07 15:47:19 +05:30
NeetBhagat
0f9cd5d0c7 intial commit hifi: #21369 Implement parts of the JS "console" object 2017-06-06 15:20:08 +05:30
Liv
b2bbf21fb0 style fixes 2017-05-23 15:21:21 -07:00
Liv
e9fac38bbb Add function hasValidScriptSuffix and check if script extensions are JavaScript or JSON files 2017-05-23 13:08:50 -07:00
Brad Hefta-Gaub
ee6bed5c1c Merge pull request #10189 from Atlante45/fix/memory-leak
Set max packet per second on the agent
2017-05-16 21:03:05 -07:00
humbletim
e765d8858c update script engine to not treat about:* as a local filename; resolve debugPrint FIXME 2017-05-04 16:57:41 -04:00
Atlante45
41cd0d79b2 Set max packet per second on the agent 2017-04-24 10:56:57 -07:00
Stephen Birarda
c63a2c9cda remove requirement of ScriptEngine in ScriptEngines slots 2017-03-20 13:40:15 -07:00
humbletim
87d62ad1eb Merge branch 'master' into 21114-part3 2017-03-16 16:39:37 -04:00
humbletim
52a571558c * changes per CR feedback
* revert JSON content-type workaround
* add specific error check / advice for unanchored module ids
* update unit tests
2017-03-16 01:23:23 -04:00
Stephen Birarda
0c657a1d55 add parameter to unload to remove entityID from map 2017-03-15 10:57:12 -07:00
humbletim
40ba8185a0 * Update per 21114-part2 changes.
* Add explicit thread safety guards.
* Add Entities.queryPropertyMetdata for unit testing Entity script module support.
* Cleanup / commenting pass.
2017-03-07 16:36:07 -05:00
humbletim
9d860a8e81 merge require/module changes into clean branch 2017-03-07 16:34:24 -05:00
humbletim
654c72fb7e Add weakRef guard to detect ScriptEngine deletion during ScriptCache::getScriptContents 2017-02-27 22:58:59 -05:00
humbletim
3ac116545e * Switch trigger for deferred loads from timer to using leading entity completion
* Bring back notion of tracking "bad scripts" to fail stampeding entities as a set
* Update stampede JS tests to highlight/troubleshoot preexisting unload issue
2017-02-24 16:05:11 -05:00
humbletim
c89d203f94 Adapt from std::map locks to simple QHash for flagging busy scriptURLs 2017-02-24 12:27:33 -05:00
humbletim
b15956278c separate out supporting changes into 21114-part2 branch 2017-02-16 07:40:19 -05:00
humbletim
9b0bee92d1 add executeOnScriptThread 2017-02-11 06:21:11 -05:00
humbletim
0f7652e173 * integrate with latest master
* consolidate emit entityScriptDetailsUpdated calls
* limit maxRetries to 1 when isEntityServerScript()
2017-02-11 06:00:31 -05:00
humbletim
831bf93500 * refactor ScriptCache per FIXMEs
* include error details in BatchLoader results
* update EntityServerScript properties in edtior to reflect more granular statuses
* ScriptEngine plumbing in prep for require/module integration
2017-02-11 04:47:31 -05:00
Ryan Huffman
f75eceda65 Add entity PPS per script configuration 2017-02-08 13:11:18 -08:00
Ryan Huffman
9b1cd52fb4 Add the ability to get the context that a script is running in 2017-01-23 08:58:01 -08:00
Ryan Huffman
cbb55a06a0 Update ScriptEngine to store full running status off entity scripts 2017-01-19 13:27:44 -08:00
Brad Hefta-Gaub
4c1aaa376d remove cruft 2017-01-03 11:13:03 -08:00
Brad Hefta-Gaub
d440532cff make sure RPC is timely 2017-01-03 11:10:07 -08:00
Brad Hefta-Gaub
7c7d239e00 first cut at using wait signals to improve RPC timing 2016-12-30 09:13:21 -08:00
Brad Hefta-Gaub
0c22fcb5c4 better handling of timers 2016-12-29 16:41:14 -08:00
Brad Hefta-Gaub
6a7fa63327 classify ScriptEngine errors better, and send them as signal to JS 2016-12-20 09:00:01 -08:00
Seth Alves
576eed9941 use a mutex to avoid a smaller race 2016-11-10 17:12:06 -08:00
Ryan Huffman
dd1a23ea01 Add Script.generateUUID 2016-10-28 13:42:03 -07:00
Anthony J. Thibault
2193c5faad Integrated controller display from tutorial scripts + assets 2016-10-20 18:24:58 -07:00
Thijs Wenker
7e3073e163 fix spelling bugs 2016-09-29 22:13:27 +02:00
Anthony J. Thibault
d015c5cfb5 Merge branch 'master' into feature/hand-controller-web-entity-integration 2016-08-22 14:13:17 -07:00
Seth Alves
87dbfa7e47 add -Wsuggest-override to compile flags and deal with fallout 2016-08-18 09:51:41 -07:00
Anthony J. Thibault
1be434342b Work In Progress snapshot
* Added new PointerEvent type.
* Mouse events are still sent from Application to EntityTreeRenderer, however, EntityTreeRenderer converts them to PointerEvents
* All outgoing signals from EntityTreeRenderer use PointerEvents instead of MouseEvents
* Associated JavaScript entity methods will receive PointerEvents instead of MouseEvents
* Events from handControllerGrab.js to entities are currently broken.
2016-08-12 17:11:59 -07:00
Brad Hefta-Gaub
2d199fe3d0 rename function for better clarity 2016-07-26 08:08:44 -07:00
Brad Hefta-Gaub
83dc9ea6bb punish slow scripts and don't send updates while physics is still loading 2016-07-25 21:46:30 -07:00
Seth Alves
49769f7d29 trying again -- frantic clicking on reload no longer appears to wedge things 2016-05-25 13:39:13 -07:00