Alexey Andreev
a97e6574ac
Introduce concept of 'weak' cast.
...
Use weak casts to maintain proper typing within methods during various operations on IR. At generation level, ignore weak casts, except for Wasm GC BE, which turns weak casts into platform casts.
2024-08-18 18:47:04 +02:00
Ivan Hetman
2805631025
jso: add InputEvent ( #902 )
2024-08-14 14:48:21 +02:00
Ivan Hetman
2e59db3ab9
jso: SVG element base interface ( #938 )
2024-08-14 11:20:21 +02:00
Alexey Andreev
065aef581d
jso: fix incorrect type inference for array element types
...
Fix #937
2024-08-12 17:32:54 +02:00
lasse-cs
98cd2efc0f
jso: add Popover API Wrappers ( #934 )
2024-08-03 19:53:14 +02:00
Alexey Andreev
a8d97ad387
wasm gc: cast receivers on devirtualized calls to actual argument type, avoid this cast when possible
2024-07-31 20:49:45 +02:00
pizzadox9999
8889b63df7
jso: add TouchEvent bindings
2024-07-18 18:38:15 +02:00
Alexey Andreev
1549a84b40
jso: remove JSByRef from IndexedDB method for which it's no more relevant
...
Fix #914
2024-05-12 16:19:11 +02:00
ihromant
d40bd9989b
jso: add files and streams API
2024-05-04 21:20:29 +02:00
Alexey Andreev
19518eb191
jso: don't insert casts to JS classes in non-strict mode
2024-04-22 19:16:33 +02:00
Alexey Andreev
81fc843da3
jso: move interfaces from 'util.function' to 'function' subpackage, rename JSFunction
to JSMapping
to avoid name clash
2024-04-22 18:58:17 +02:00
Alexey Andreev
a1d711d069
jso: when casting to JS objects, don't fail cast when cast object is null
2024-04-16 20:03:19 +02:00
Alexey Andreev
931f0f1f4a
jso: support varargs in exported classes and modules
2024-04-15 20:53:24 +02:00
Alexey Andreev
2331c9d7b6
fix checkstyle errors
2024-04-12 14:14:25 +02:00
Alexey Andreev
97aa42d87b
jso apis: new convention for event registration
2024-04-12 13:45:12 +02:00
Alexey Andreev
272f55b383
jso apis: turn DOM interfaces into abstract classes
...
This would make it possible to test HTMLElement for particular type with instanceof
2024-04-12 13:00:05 +02:00
Alexey Andreev
6a09f181c7
js: add JSTopLevel annotation that allows to import top-level declarations
2024-04-11 20:29:57 +02:00
Alexey Andreev
72b021fc0b
jso: support exporting class constructors
2024-04-08 21:32:10 +02:00
Alexey Andreev
a6fb67817c
jso: improve support of instanceof and cast against JS wrapper types
...
Fix #808
2024-04-04 21:18:54 +02:00
Alexey Andreev
f668e27daa
jso: properly support JSWrapper generation when java.lang.Object method is called with receiver type of JSObject interface; add optimization for JSObject.toString call.
...
Fix #898
2024-04-01 17:52:28 +02:00
Alexey Andreev
32ae1ab8f0
js: fix deobfuscator, use new ES2015 module builder
2024-03-13 15:44:18 +01:00
Ivan Hetman
994e01ec9d
jso: add vararg versions of 'add' methods to DomTokenList
2024-03-12 19:02:16 +01:00
Alexey Andreev
582fcf904c
jso: implement vararg support for method calls
2024-03-12 18:56:19 +01:00
Alexey Andreev
ccfe19994b
js: refactor and simplify AstWriter, properly fix case with variable in catch block
2024-03-06 20:24:35 +01:00
Alexey Andreev
e4452152b7
jso: improve JS class import to Java
2024-02-27 20:16:10 +01:00
Alexey Andreev
eb91577509
jso apis: removed unused field
2024-02-19 20:17:30 +01:00
Alexey Andreev
26b9ae4292
jso apis: add Window.scrollX
...
Fix #886
2024-02-19 20:16:50 +01:00
Bernd Busse
6788642ea9
JSO: add interface for Promise ( #884 )
2024-02-17 19:11:04 +01:00
Alexey Andreev
8db406c603
jso: implement exporting Java methods to JS
...
Fix #785
2024-02-15 21:00:10 +01:00
Bernd Busse
7f333cc73e
JSO: make global objects available in WebWorker contexts (no hardcoded window)
2024-02-15 11:55:05 +03:00
Alexey Andreev
6ac598b927
js: add limit for top-level declarations
...
Rationale: turns out that V8 utilizes stack even to represent module-level functions.
This can cause SOE when there's too many classes and methods in source JVM
2024-02-01 09:41:50 +01:00
Alexey Andreev
18e92a49e3
jso apis: fix declaration in IndexedDB API
...
Fix #874
2023-12-12 09:40:30 +01:00
Alexey Andreev
a9af6e4f33
JSO: fix wrapping undefined value
2023-12-07 10:02:30 +01:00
Alexey Andreev
067f7453fe
JS: a better fix for wrapping/unwrapping JS objects implemented in Java
2023-11-27 13:05:51 +01:00
Alexey Andreev
9757213379
JS: fix unwrapping JS objects implemented in Java
2023-11-26 21:57:19 +01:00
Alexey Andreev
be53236d23
JS: fix wrapping keys for native indexers
2023-11-20 20:33:47 +01:00
Alexey Andreev
810012872c
Add couple native declarations to JSO APIs. Update sample
2023-11-19 20:25:29 +01:00
Alexey Andreev
6738d6f1f8
JS: add remembering source writer, refactor PreparedMethod and Renderer to use it, get rid of $rt_globals
2023-11-02 19:03:10 +01:00
Alexey Andreev
23ad999bbd
JS: get rid of IOException in SourceWriter and related classes
2023-10-31 20:09:55 +01:00
Alexey Andreev
32ee8943c1
JS: rewrite more natives with templates, get rid of runtime aliases in minification mode
2023-10-31 19:29:32 +01:00
Alexey Andreev
a1cc817504
JS: rewrite more native generators with templates, fix issues in template engine
2023-10-29 20:17:18 +01:00
Alexey Andreev
7acc81ce4d
JS: remove lazy creation of primitive classes
2023-10-21 20:07:49 +02:00
Alexey Andreev
02b3c92912
JS: use native string to represent internals of java.lang.String
2023-10-21 19:30:16 +02:00
Jörg Hohwiller
2513ceb236
Re-add module name org.teavm.jso ( #817 )
...
Fix #778
2023-10-14 19:35:23 +03:00
Jörg Hohwiller
aaef8672d4
Re-add module name org.teavm.jso.apis ( #816 )
...
Fix #778
2023-10-14 19:34:40 +03:00
Alexey Andreev
772dd9eded
JS: fix returning JSO objects from Async methods
...
Fix #805
2023-10-12 21:13:09 +02:00
Alexey Andreev
eed44998f0
jso: trying to improve optimization of JSWrapper
2023-09-27 13:50:30 +02:00
Alexey Andreev
f0f3b060e9
JS: change type of MessageEvent.data back JSObject
2023-08-22 17:55:01 +02:00
Alexey Andreev
b9f5e9be1c
JS: optimize case when JS method returns java.lang.Object and then treated as JS object
2023-08-04 20:40:57 +02:00
Alexey Andreev
35f1284ac5
js: fix issue in obfuscated mode
2023-08-04 10:27:44 +02:00