Mike Welsh
b8f5a405b9
tests: Add test for flash.geom.Transform
2020-08-20 17:29:04 -07:00
Mike Welsh
ca3ed34c2c
avm1: Implement flash.geom.Transform
2020-08-20 17:29:04 -07:00
JustinCB
808b6588ab
web(test): Add test for spl
2020-08-20 05:30:28 -07:00
JustinCB
3f1546ffc3
web: Add spl to flash filename check
2020-08-20 05:30:28 -07:00
Justin-CB
0cdad7520f
web(tests): Enable pdf test, which works now
2020-08-18 11:25:15 -07:00
dependabot-preview[bot]
6d1d22bf65
build(deps): [security] bump dot-prop from 4.2.0 to 4.2.1 in /web
...
Bumps [dot-prop](https://github.com/sindresorhus/dot-prop ) from 4.2.0 to 4.2.1. **This update includes a security fix.**
- [Release notes](https://github.com/sindresorhus/dot-prop/releases )
- [Commits](https://github.com/sindresorhus/dot-prop/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-18 01:52:50 -07:00
Mike Welsh
0a81dae7bb
avm1: toString for display objects
2020-08-18 01:18:15 -07:00
Mike Welsh
cefc0ce5c1
core: Add button children to execution list
...
Children of buttons were not getting linked up into the execution
list, which would cause certain methods to be incorrect (such as
button._width).
2020-08-18 01:18:15 -07:00
Mike Welsh
d2c49c0f33
core: Remove some mut from TDisplayObject methods
2020-08-18 01:18:15 -07:00
Mike Welsh
544c1becc2
tests: Add test for button children
2020-08-18 01:18:15 -07:00
Mike Welsh
59ebd0167e
core: Fix priority of conflicting instance names
2020-08-18 01:18:15 -07:00
Mike Welsh
b5c7e1dab0
tests: Add test for conflicting instance names
2020-08-18 01:18:15 -07:00
Mike Welsh
13b4b6bbbb
chore: Fix unused variable warning in url_from_relative_path
2020-08-16 18:44:57 -07:00
Floens
95acc14190
avm1: fix array unshift
...
update array_trivial test for it
2020-08-16 04:27:09 -07:00
dependabot-preview[bot]
70caf983ab
build(deps-dev): bump eslint from 7.6.0 to 7.7.0 in /web
...
Bumps [eslint](https://github.com/eslint/eslint ) from 7.6.0 to 7.7.0.
- [Release notes](https://github.com/eslint/eslint/releases )
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md )
- [Commits](https://github.com/eslint/eslint/compare/v7.6.0...v7.7.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-16 03:45:27 -07:00
Mike Welsh
f782ea8020
avm2: AVM2 built-in class suport (merge #802 )
...
Initial support for defining built-ins in AVM2
2020-08-16 03:45:02 -07:00
David Wendt
4c824fcefe
Rename `trait.rs` to `traits.rs` to avoid the use of reserved keyword syntax.
2020-08-14 21:20:41 -04:00
David Wendt
7b7f0b20e6
Consolidate all of our copied `CollectWrapper`s.
2020-08-14 20:52:09 -04:00
Mike Welsh
88b3d35e27
chore: Fix ambiguous call in audio
...
Nightly was complaining because `array.map` may be added in future
Rust versions.
2020-08-14 14:25:02 -07:00
Mike Welsh
b99b9efe5d
scanner: Switch to clap 3.0
2020-08-14 14:12:08 -07:00
Mike Welsh
f195d254ec
exporter: Switch to clap 3.0
2020-08-14 14:12:08 -07:00
Mike Welsh
1a267cfa85
core: Add git revision to version info
2020-08-14 14:12:08 -07:00
Mike Welsh
e49332c43c
desktop: Switch to clap 3.0.0-beta1
...
Prepare for next major release of clap.
Dump structopt, which has been merged into clap.
2020-08-14 14:12:08 -07:00
JustinCB
a2968d6fd0
web: Change polyfills to single true/false setting
2020-08-13 00:46:58 -07:00
JustinCB
f8c40569be
i18n: Add Settings Saved to locales
2020-08-13 00:41:23 -07:00
Albert Safin
e03373bceb
avm1: parseInt
2020-08-13 00:40:20 -07:00
Mike Welsh
cbd448522a
chore: Allow unknown clippy lints
...
same_item_push was added on nightly, but is currently throwing
a false negative. I added an allow for it, but this causes a
warning on stable for an unknown lints, so allow unknown lints for
now.
2020-08-12 23:51:12 -07:00
Mike Welsh
6c89869210
chore: Fix clippy lints
2020-08-12 19:04:14 -07:00
JustinCB
5f3aeb91ed
chore: Run npm audit fix
2020-08-12 18:55:13 -07:00
dependabot-preview[bot]
9b6dd45439
build(deps): bump smallvec from 1.4.1 to 1.4.2
...
Bumps [smallvec](https://github.com/servo/rust-smallvec ) from 1.4.1 to 1.4.2.
- [Release notes](https://github.com/servo/rust-smallvec/releases )
- [Commits](https://github.com/servo/rust-smallvec/compare/v1.4.1...v1.4.2 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-12 11:13:33 -07:00
David Wendt
825eb34c67
avm1: `Button` should not hold write locks on itself when instantiating children.
...
This fixes a bug where a nested textfield within a button with variable linkages would panic in Ruffle.
2020-08-12 11:08:27 -07:00
David Wendt
354b194b69
avm1: Add test for nested text fields in buttons.
2020-08-12 11:08:27 -07:00
David Wendt
32aad6176b
`FunctionObject::from_builtin_constr` should pull the scope and class off of it's given prototype and copy it onto the constructor function it returns.
2020-08-11 00:04:13 -04:00
David Wendt
11ddccfa6a
Remove the two-step initialization process and construct an ES4 class for `Object`, `Function`, and `Class`.
...
This has some particularly annoying consequences for initialization order: notably, we can't actually create any ES4 classes using the standard machinery until after the three objects I just mentioned get created. Ergo, we have to create them through lower-level means, handing prototypes around, and then initialize AVM2's system prototypes list for it.
When we start adding more system prototypes, we'll also have to fill the extras with blank objects and then slot them in as we create them.
2020-08-11 00:02:12 -04:00
David Wendt
16d8c85d20
Load player globals as soon as possible.
...
We're about to massively change the initialization process, and we really don't want to create another situation where the player can get caught with it's pants down.
2020-08-10 23:35:37 -04:00
David Wendt
a8e267ed16
Allow system prototypes to be initialized after the fact.
2020-08-10 23:35:37 -04:00
David Wendt
b1bcceaa78
Allow accessing the `Class` off of a constructor or prototype that references it.
2020-08-10 23:35:33 -04:00
David Wendt
22ec96b85e
`install_trait` and `install_foreign_trait` should return the value of the thing they installed.
2020-08-10 23:23:35 -04:00
David Wendt
df95482eb1
Allow setting `slot_id` or `disp_id` (depending on kind).
2020-08-10 23:23:34 -04:00
David Wendt
4ed5050f56
Add function to change trait attributes.
2020-08-10 23:23:34 -04:00
David Wendt
a5b62e833e
Add trait attributes, similar to that of class attributes
2020-08-10 23:23:31 -04:00
David Wendt
60d42fa558
Allow creating slot/const traits.
2020-08-10 23:19:22 -04:00
David Wendt
3ca8dfd21a
Allow constructing traits for getters, setters, and unbound free functions.
2020-08-10 23:19:22 -04:00
David Wendt
d366ceab0e
Allow setting the protected namespace of a builtin class.
2020-08-10 23:19:21 -04:00
David Wendt
9dc6cbe1ce
Allow creating builtin traits from methods.
2020-08-10 23:19:21 -04:00
David Wendt
5e932bcb75
Allow implementing interfaces in built-in classes.
2020-08-10 23:19:20 -04:00
David Wendt
94d5170277
When manually instantiating classes for globals, make sure that the classes get the global scope object when instantiated.
2020-08-10 23:19:15 -04:00
David Wendt
3585cf983b
Convert our stub implementations of all non-ECMA classes into `Class`es.
...
This was surprisingly tricky - due to the need to look up superclasses, class trait instantiation requires an active `Activation` and `UpdateContext`. We can't get those during VM instance creation, since the player needs the VM first before it can give it a context to work with. Ergo, we have to tear the global scope initialization in two. At the first possible moment, the player calls a new `load_player_globals` method that initializes all class traits in global scope.
2020-08-10 23:16:07 -04:00
David Wendt
6f284f60eb
Allow constructing a trait from a class.
2020-08-10 23:09:16 -04:00
David Wendt
b0b6cec117
Allow expanding a `QName` into a `Multiname` that selects exactly the `QName` and no more.
2020-08-10 23:09:15 -04:00