Commit Graph

245 Commits

Author SHA1 Message Date
Alexey Andreev
81bfe3f6e2 Improve pom.xml configuration 2021-03-18 11:16:41 +03:00
Alexey Andreev
195f4c8426 Fix checkstyle error 2021-03-18 00:12:42 +03:00
Alexey Andreev
4c0c7872a1 JS: add support for CCE in strict mode 2021-03-17 21:11:18 +03:00
Alexey Andreev
f435d43996 Revert "JS: fix for creation of typed arrays from view method (#532)"
This reverts commit dfef5ffd
2021-01-28 17:57:35 +03:00
Ivan Hetman
66ce993019
JS: add getter for Element.classList (#553) 2021-01-11 12:12:20 +03:00
Alexey Andreev
660214aefd JS: fix features for opening popup 2020-12-10 19:02:45 +03:00
Ivan Hetman
14ca8ecdbb
JS: fix Element.tagName property (#545) 2020-11-23 11:50:21 +03:00
Ivan Hetman
bec0f44869
JS: add missing mouseevent methods (#542) 2020-11-23 11:47:30 +03:00
Ivan Hetman
dfef5ffd24
JS: fix for creation of typed arrays from view method (#532) 2020-10-26 13:02:54 +03:00
Ivan Hetman
03c70e3a06
Image data fix (#524)
JS: add constructors for ImageData API
2020-10-07 12:21:02 +03:00
falko
7271a394db XMLSerializer added 2020-06-13 13:55:25 +03:00
falko
7506e60762 New DOMParser class 2020-06-13 13:55:25 +03:00
Jörg Hohwiller
3254dce53b added module names form JPMS 2020-04-01 18:57:28 +03:00
Jörg Hohwiller
eeca1a502c added Element.id property 2020-02-26 10:38:49 +03:00
kris-scheibe
9daba6e5a6 add HTMLElement.innerText 2020-02-25 10:47:17 +03:00
Alexey Andreev
d76eeb9be3 Improve <clinit> elimination. Improve inlining in ADVANCED optimization mode 2020-02-14 12:46:57 +03:00
norzak
5397d2ec6b
JS: rename misspelled property name (#466)
It should be setTextContent not getTextContent
2020-02-03 14:38:36 +03:00
Jörg Hohwiller
236c6191c2 #457: also add check/reportValidity 2020-01-16 18:33:39 +03:00
Jörg Hohwiller
9b6f5e7895 added setCustomValidity (#458) 2020-01-15 11:10:00 +03:00
Jörg Hohwiller
5ed4de3a5a added placeholder property (was present in text area but missing in input) 2020-01-14 11:21:41 +03:00
Jörg Hohwiller
c0d42a9d7a #455: added Node.textContent property support 2020-01-13 11:02:01 +03:00
devnewton
0ff17fc2fb Gamepad api (#444)
Add gamepad API to JSO
2019-12-02 18:59:29 +03:00
Alexey Andreev
fb78377db8 Fix various issues reported by PVS Studio and LGTM 2019-10-31 14:36:37 +03:00
Colin Alworth
4e0381950a Added WebSocket.send overrides to support typedarrays 2019-10-04 11:50:16 +03:00
Alexey Andreev
f0b6cc2f30 Update version to 0.7.0 2019-09-24 16:26:14 +03:00
Anton Kot
c031e11107 383_teavm_issue 2019-07-05 17:17:14 +03:00
Alexey Andreev
62b3c68a5b Don't report compile-0time error when there's possible way to reach suspension point. Generate runtime error instead. 2019-06-22 23:30:05 +03:00
Alexey Andreev
c1d4ed2e3c JS: get rid of float type from CanvasRenderingContext2D 2019-05-14 14:50:17 +03:00
Alexey Andreev
b57b628107 JS: add HTMLCanvasElement.toDataURL overloads 2019-05-14 14:49:51 +03:00
Alexey Andreev
ca50f72fe9 Fix displaying diagnostics in out-of-process mode 2019-05-14 14:46:44 +03:00
Alexey Andreev
70ff079113 Mark some JS native methods as not having side effects 2019-03-25 12:47:26 +03:00
Alexey Andreev
f33c90f778 Improve <clinit> elimination:
* Generate clinit instruction instead of calling <clinit>
  directly
* Rename annotation that indicates absence of side effects
* Don't apply this annotation automatically to all JSBody methods
2019-03-24 12:54:06 +03:00
Alexey Andreev
de84105241 Call <clinit> methods before main method when possible, eliminate
lazy class initialization for these <clinit> methods.
2019-03-22 19:40:56 +03:00
Alexey Andreev
ac627580c6 JS: Support JSByRef annotation on method return types 2019-03-21 18:09:38 +03:00
Alexey Andreev
5c90d786a0 Fixes and improvements to JS APIs 2019-02-08 12:45:39 +03:00
Alexey Andreev
fc9a53bdd3 JS: add more API declarations 2019-01-27 23:46:09 +03:00
Alexey Andreev
68522811f2 Fix issue with incremental compilation and JSBody annotation 2019-01-23 19:24:42 +03:00
Alexey Andreev
9305a532bb Replace ArrayList with array to store arguments of InvokeInstruction 2019-01-09 12:51:52 +03:00
Alexey Andreev
f589b0035a Decrease memory consumption 2018-12-29 19:02:03 +03:00
Alexey Andreev
d7d4dc1571 Add IDEA run configuration that runs dev server 2018-12-16 20:42:21 +03:00
Alexey Andreev
d74bcbe2b9 Fast dependency analyzer, fix bugs in incremental compiler 2018-12-07 17:41:21 +03:00
Alexey Andreev
a3dfc0c486 Add API to catch native JS exceptions 2018-11-23 19:54:37 +03:00
Alexey Andreev
753755918d Update build config to avoid jar hell 2018-11-22 14:49:30 +03:00
Alexey Andreev
fc799afcda Add Maven option to run TeaVM in a separate process 2018-11-20 14:22:35 +03:00
Alexey Andreev
e5c85dd3bd Prevent inlining of JSBody code in some complex cases 2018-11-16 19:04:15 +03:00
Alexey Andreev
4d2c075c07 Always embed runtime into generated file. Remove 'runtime' build property 2018-10-28 00:15:36 +03:00
Alexey Andreev
6551f3eb68 Make JS function out of JS object when casting to JSFunctor interface 2018-10-24 14:30:26 +03:00
ScraM Team
65c92aab1f Added Geolocation API interfaces, callbacks and data structures. 2018-10-23 11:53:32 +03:00
Alexey Andreev
b66053f5ce Don't generate virtual wrappers for methods that aren't ever called virtually 2018-10-04 11:55:34 +03:00
Alexey Andreev
4b77a5d15f Fix String.contains. Fix crashing in rare cases or improper use of JSO 2018-09-19 12:47:32 +03:00
Alexey Andreev
243901ec10 Add more JS API wrappers 2018-06-19 22:38:21 +03:00
Alexey Andreev
f2adb9dbdd More wrappers for JavaScript APIs 2018-06-19 18:54:00 +03:00
Julian Kennedy
bb55089742 - added offsetTop and offsetLeft JSO methods to HTMLElement 2018-06-07 21:32:06 +03:00
Alexey Andreev konsoletyper@gmail.com
fe47fe19ce Fix build under JDK9+ 2018-03-28 22:54:55 +03:00
Mauro de Wit
c0d1714e0a Added methods to expose the scrollY value and body offset (#324)
Add methods to expose the scrollY value of the window and the offset of the body.
2018-02-11 01:03:17 +03:00
Alexey Andreev
8dea7e9035 Fix reporting error on calling async method from native method 2018-01-08 19:56:47 +03:00
Alexey Andreev
422cb0462a Add java.net.URL implementation 2018-01-01 14:53:44 +03:00
Alexey Andreev
0419867497 Add scrolling properties to HTMLElement 2017-12-03 13:01:22 +03:00
Steve Hannah
b1b602f048 Fixed NPE when padding null arrays to JSO methods that accept arrays. 2017-12-01 19:19:04 +03:00
Steve Hannah
1978f97692 Added setLength method to JSArray 2017-12-01 19:17:48 +03:00
Alexey Andreev
3c83c7e7b9 Fix native declarations 2017-11-30 00:14:29 +03:00
Alexey Andreev
ae68bc366b Add some JS API declarations 2017-11-28 22:48:54 +03:00
Alexey Andreev
cc0f7583b0 Minor performance improvement 2017-11-26 14:53:56 +03:00
Alexey Andreev
ff19dc15c9 Further bootstrapping 2017-11-26 13:14:02 +03:00
Alexey Andreev
25011ee7a6 Remove outdated hack when Class.parent could be non-null for root classes 2017-10-29 21:41:49 +03:00
Alexey Andreev
2aa9d5b24a Fix unwrapping null JS functions in JSO 2017-07-17 22:16:30 +03:00
Alexey Andreev
cdec4560ba Remove dumb comments containing only @author annotation 2017-07-01 13:13:52 +03:00
Marcin Olawski
42791964cc Window.confirm() should return value, fixed. 2017-06-21 21:06:43 +03:00
Alexey Andreev
59e5c16b31 Update version to 0.6.0-SNAPSHOT 2017-06-19 20:50:19 +03:00
Alexey Andreev
2992c6e406 Wrap function by an object if returning value of native method is
a JSFunctor interface.

See #280
2017-06-11 00:15:41 +03:00
Alexey Andreev
45ba247265 When Java class gets exported to JS, generate bridges for its
methods so that these bridges perform type conversion
between Java and JS
2017-06-09 00:02:28 +03:00
Alexey Andreev
933a5c3efc Code style fixes 2017-05-30 22:49:40 +03:00
marciodel
5ecfb3620c Support for default and static methods in Functors 2017-05-30 22:45:14 +03:00
Alexey Andreev
3791b806b9 Weaken rules for names of JSProperty methods
First, accept first character if it's a non-letter character.
Second, don't validate name of method when JSProperty specifies
name of the JS property explicitly.

See #277
2017-05-29 23:54:43 +03:00
Alexey Andreev
058566e731 Fix bug in JSO 2017-04-22 14:11:24 +03:00
Alexey Andreev
8144464b0e Add HTMLElement.className 2017-03-30 19:00:18 +03:00
Alexey Andreev
55453c9311 Set version to 0.5.0-SNAPSHOT. Add configuration to deploy to bintray. Update version number during Travis build. 2017-02-16 21:48:13 +03:00
Alexey Andreev
c7829a77cf Fix diagnostics tests 2017-01-24 23:42:41 +03:00
Alexey Andreev
5c936878a7 Update JSO apis 2017-01-23 23:27:57 +03:00
Alexey Andreev
c1cddc5a71 Add JSByRef annotation to specify which parameters to pass to JS by reference 2017-01-23 23:10:35 +03:00
Alexey Andreev
727c831467 Use new null checker in optimizer. Fix multiple bugs in optimizer and IR 2017-01-03 23:39:43 +03:00
Alexey Andreev
ae5e1e4962 Store instructions as double-linked list instead of ArrayList 2016-12-20 00:03:14 +03:00
Alexey Andreev
af10879a81 Remove unnecessary IDEA project files 2016-10-27 12:55:28 +03:00
Alexey Andreev
b3b1b54582 Remove unnecessary dependencies 2016-10-26 15:02:41 +03:00
Alexey Andreev
ed7e8ff7f4 javascript: refactor renderer 2016-09-17 09:21:26 +03:00
Alexey Andreev
1c1b0c69fa Propagating variable name via compiler's pipeline 2016-09-17 09:11:59 +03:00
Alexey Andreev
4fd20794c1 Refactoring. Fix checkstyle errors 2016-09-17 09:11:07 +03:00
Alexey Andreev
9fb97fd53f Refactoring 2016-09-17 09:00:40 +03:00
Alexey Andreev
1be9ffb19e Rename InstructionLocation to TextLocation. Replace NodeLocation by TextLocation 2016-09-17 08:59:03 +03:00
Alexey Andreev
a1fe87ff70 Move several annotations 2016-09-17 08:59:01 +03:00
Alexey Andreev
47997cde87 Rename target package to backend to avoid gitignore 2016-09-17 08:59:00 +03:00
Alexey Andreev
89c16b9807 Fixing bugs in WASM emitter 2016-09-17 08:58:56 +03:00
Alexey Andreev
789119e6ea Move ast package off javascript 2016-09-17 08:55:58 +03:00
Alexey Andreev
52ace0c252 Refactor TeaVM to support pluggable targets like JavaScript, WebAssembly, LLVM, etc (with only JavaScript target for now) 2016-09-17 08:55:44 +03:00
Alexey Andreev
9d2e9d7911 Fix Uint16Array constructors. Fix https://github.com/konsoletyper/teavm/issues/209 2016-08-18 12:09:18 +03:00
Zufar Fakhurtdinov
2c2f1d5aff add missed jso methods 2016-07-08 20:56:01 +03:00
Wolftein
fe93b913de Fixed AudioContext's constants. 2016-06-24 09:25:05 -03:00
Wolftein
935f589da7 Fixed source. 2016-06-24 08:51:55 -03:00
Wolftein
635097f4d2 Forgot to attach WheelEventTarget to HTMLELement. 2016-06-24 08:51:55 -03:00
Wolftein
bd7824b3e2 Added missing WheelEvent fixes konsoletyper/teavm#192.
Added missing JSO interface for DataView.
Added missing JSO interfaces for WebAudio.
2016-06-24 08:51:55 -03:00
Alexey Andreev
d196eb9864 Further work on incremental phi updater 2016-06-05 20:58:23 +03:00
Alexey Andreev
8abf4797af Merge remote-tracking branch 'origin/master' into optimizations 2016-05-13 20:47:38 +03:00
Alexey Andreev
9942f8b048 Fix type of HTMLElement.getInnerHTML. Fix https://github.com/konsoletyper/teavm/issues/189 2016-05-12 22:26:54 +03:00
Alexey Andreev
3c93b78902 Implementing loop inversion 2016-05-09 18:13:00 +03:00
Alexey Andreev
0d3d6e883d Improving build diagnostics in IDEA. Fix minor problems in JSO 2016-04-21 22:29:40 +03:00
Alexey Andreev
d103306c3e Improving JUnit test runner 2016-02-23 21:40:51 +03:00
Alexey Andreev
2b3cba69bc Run JUnit tests via JUnit runner instead of Maven plugin 2016-02-23 18:46:32 +03:00
Alexey Andreev
92dbed2593 Start porting metaprogramming API implementation 2016-02-22 23:59:54 +03:00
Alexey Andreev
8db424809a Update IDEA configuration. Add metaprogramming API 2016-02-21 23:35:17 +03:00
Alexey Andreev
7d7808bb13 Fix maven build 2016-02-21 22:36:45 +03:00
Alexey Andreev
5706012d0e Ignore IDEA files 2016-02-19 22:17:57 +03:00
Alexey Andreev
863a4b76ff Struggiling with JAR hell in JPS plugin 2016-02-16 23:51:50 +03:00
Alexey Andreev
78d6917a23 Temporary 2016-02-07 21:22:21 +03:00
Alexey Andreev
5dad013cc7 Migration to IDEA 2016-02-07 14:28:51 +03:00
Alexey Andreev
33d61412fb Reduce amount of generated JSO aliases 2015-12-25 22:39:25 +03:00
Alexey Andreev
03538071c4 Prevent JSBody from inlining if its argumet get used more than once 2015-12-25 21:48:32 +03:00
Alexey Andreev
0369d100c6 Make JSBody report about wrong parameter/returning type/instance type to
avoid confusion like this:
https://github.com/konsoletyper/teavm/issues/164
2015-12-25 19:04:54 +03:00
Alexey Andreev
4c4d236653 Switch all versions to 1.0.0-SNAPSHOT. Prototyping version switch script 2015-12-24 21:26:29 +03:00
Alexey Andreev
7b33bb643e Raise version to 0.4.1 2015-11-30 20:27:01 +03:00
Alexey Andreev
516f211d47 Fix JSString.isInstance 2015-11-30 20:01:08 +03:00
Alexey Andreev
7fd414c84e Minor bugfixes 2015-11-08 23:52:40 +03:00
Alexey Andreev
e4a83b7d79 Raise version to 0.4.1-SNAPSHOT 2015-10-25 19:27:30 +03:00
Alexey Andreev
b12404ee7e Fix emit API. Fix several JS wrappers. 2015-10-25 19:22:48 +03:00
Alexey Andreev
f25b2d46e8 Change version to 0.4.0 2015-10-22 08:25:53 +03:00
Alexey Andreev
fb3412b4c0 Fix generation of JS aliases for Java objects 2015-10-21 21:56:08 +03:00
Alexey Andreev
8702f7ee33 Repair incremental builder 2015-10-21 20:51:43 +03:00
jfwittmann
8d409b9a2b Fix bug in Window. Add return statement to JSBody script for
prompt(message,defaultValue)
2015-10-21 15:38:41 +02:00
Alexey Andreev
ce83560279 Fix failed tests 2015-10-21 16:35:33 +03:00
Alexey Andreev
2640234391 Rename achieved -> reached. Fix - operator generation in minified mode 2015-10-21 12:08:30 +03:00
Alexey Andreev
891ec3e6fd Improve async code example. Don't generate JSO aliases for static
methods
2015-10-20 23:05:55 +03:00
Alexey Andreev
385b696de9 Add mocks for WebSockets in html4j 2015-10-20 22:21:06 +03:00
Alexey Andreev
64e39be307 Trying to fix JSONP calls in Html4j tests 2015-10-20 18:20:32 +03:00
Alexey Andreev
84be461a69 Fix async test building. Fix Window.prompt. Fix non-integer JS number to
Java primitive conversion
2015-10-19 16:49:27 +03:00
Alexey Andreev
d2468872fe Add hashchange event support 2015-10-17 20:59:29 +03:00
Alexey Andreev
53cd861563 Add JS API wrappers 2015-10-16 15:55:24 +03:00
Alexey Andreev
24952e5b86 Fix bug in JSO implementation 2015-10-12 21:26:05 +03:00
Alexey Andreev
f5b21f9455 Fix constructor publishing in JSO 2015-10-11 19:03:15 +03:00
Alexey Andreev
5592862c70 More JS API fixes 2015-10-11 18:49:57 +03:00
Alexey Andreev
94368935ab Fix some JS APIs 2015-10-11 18:26:50 +03:00
Alexey Andreev
7c4b4ebe77 Fix bug. Integrate precedence API into JSO 2015-10-11 18:03:46 +03:00
Alexey Andreev
6d23626867 Refactor precedence support 2015-10-11 17:30:28 +03:00
Alexey Andreev
5522f55c68 Deep refactoring of tooling libraries 2015-10-09 17:56:38 +03:00
Alexey Andreev
a4e41fc6be Add hacks for scala classlib. Add DOM method for convenience. Improve
Scala example
2015-10-04 14:29:34 +03:00
Alexey Andreev
219fab22ef Move JSO wrappers to separate project 2015-10-04 12:14:36 +03:00
Alexey Andreev
3341df3668 Change directory structure 2015-10-04 11:49:20 +03:00