Kamil Jarosz
c2777db656
web: Support async onClick callbacks for context menus
...
The current implementation was synchronous only, so that when
an async callback was used, the menu was being disposed prematurely.
This patch ensures that in case of asynchronous callbacks,
the menu will be disposed after they finish.
2024-06-19 00:15:07 +02:00
Kamil Jarosz
e086ca0719
ci: Enable web_sys_unstable_apis for nightly
...
The custom RUSTFLAGS from CI overrides .cargo/config.toml.
2024-06-19 00:15:07 +02:00
Kamil Jarosz
e75851f4fa
Revert "web: No longer set the `web_sys_unstable_apis` config variable"
...
This reverts commit 5b7c48e43d
.
Co-authored-by: TÖRÖK Attila <torokati44@gmail.com>
2024-06-19 00:15:07 +02:00
TÖRÖK Attila
35f5227e2d
core,desktop: Update `wgpu` to `v0.20.1`, bump `egui`
2024-06-18 23:10:43 +02:00
Lord-McSweeney
e8339088a7
tests: Add a test case for setting `dataFormat` after calling `load`
2024-06-18 20:56:50 +02:00
Lord-McSweeney
9c8e4d7dce
core: Remove `DataFormat` for `URLLoader` loads since we can just check the string field
...
Also, don't set the data as variables if there is no data to set.
2024-06-18 20:56:50 +02:00
Lord-McSweeney
7a1ee0e109
core: `URLLoader` should check the data format after loading finishes, not when starting a load
2024-06-18 20:56:50 +02:00
TÖRÖK Attila
4448e37d98
ci: Release and test with Rust 1.78 instead of stable
...
Co-authored-by: Kamil Jarosz <kjarosh256@gmail.com>
2024-06-18 13:59:57 -04:00
dependabot[bot]
c8fdc59bfc
build(deps-dev): bump the npm-minor group in /web with 3 updates
...
Bumps the npm-minor group in /web with 3 updates: [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin ), [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser ) and [@types/firefox-webext-browser](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/firefox-webext-browser ).
Updates `@typescript-eslint/eslint-plugin` from 7.13.0 to 7.13.1
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases )
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md )
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.13.1/packages/eslint-plugin )
Updates `@typescript-eslint/parser` from 7.13.0 to 7.13.1
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases )
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md )
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.13.1/packages/parser )
Updates `@types/firefox-webext-browser` from 120.0.3 to 120.0.4
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/firefox-webext-browser )
---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: npm-minor
- dependency-name: "@typescript-eslint/parser"
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: npm-minor
- dependency-name: "@types/firefox-webext-browser"
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: npm-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-06-17 23:43:26 +02:00
dependabot[bot]
0cb9e8003a
build(deps): bump chromedriver from 125.0.3 to 126.0.1 in /web
...
Bumps [chromedriver](https://github.com/giggio/node-chromedriver ) from 125.0.3 to 126.0.1.
- [Commits](https://github.com/giggio/node-chromedriver/compare/125.0.3...126.0.1 )
---
updated-dependencies:
- dependency-name: chromedriver
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-06-17 19:07:47 +02:00
dependabot[bot]
6d9e1e7d20
build(deps-dev): bump the npm-minor group in /web with 5 updates
...
Bumps the npm-minor group in /web with 5 updates:
| Package | From | To |
| --- | --- | --- |
| [prettier](https://github.com/prettier/prettier ) | `3.3.1` | `3.3.2` |
| [webpack](https://github.com/webpack/webpack ) | `5.91.0` | `5.92.0` |
| [tsx](https://github.com/privatenumber/tsx ) | `4.14.0` | `4.15.6` |
| [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc ) | `48.2.9` | `48.2.12` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) | `5.2.13` | `5.3.1` |
Updates `prettier` from 3.3.1 to 3.3.2
- [Release notes](https://github.com/prettier/prettier/releases )
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md )
- [Commits](https://github.com/prettier/prettier/compare/3.3.1...3.3.2 )
Updates `webpack` from 5.91.0 to 5.92.0
- [Release notes](https://github.com/webpack/webpack/releases )
- [Commits](https://github.com/webpack/webpack/compare/v5.91.0...v5.92.0 )
Updates `tsx` from 4.14.0 to 4.15.6
- [Release notes](https://github.com/privatenumber/tsx/releases )
- [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs )
- [Commits](https://github.com/privatenumber/tsx/compare/v4.14.0...v4.15.6 )
Updates `eslint-plugin-jsdoc` from 48.2.9 to 48.2.12
- [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases )
- [Changelog](https://github.com/gajus/eslint-plugin-jsdoc/blob/main/.releaserc )
- [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v48.2.9...v48.2.12 )
Updates `vite` from 5.2.13 to 5.3.1
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/v5.3.1/packages/vite )
---
updated-dependencies:
- dependency-name: prettier
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: npm-minor
- dependency-name: webpack
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: npm-minor
- dependency-name: tsx
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: npm-minor
- dependency-name: eslint-plugin-jsdoc
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: npm-minor
- dependency-name: vite
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: npm-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-06-17 18:55:14 +02:00
Crowdin Bot
a731b82b54
chore: Update translations from Crowdin
2024-06-17 14:57:20 +02:00
Adrian Wielgosik
cacfb5a6a4
avm2: Fix and unify converting SWF's 1-based to 0-based slot indexing
2024-06-16 16:11:17 -07:00
Tom Schuster
ff322eb19a
avm2: Test more namespace related properties/methods in XMLNode
...
We skip the weird xml: namespace special case for now.
2024-06-15 22:26:57 +02:00
Tom Schuster
4463a69c87
avm2: Implement namespace support for flash.xml
2024-06-15 22:26:57 +02:00
David Wendt
404081876c
swf: Bump version to 0.2.1 in preparation for new package publication
2024-06-15 07:49:59 +02:00
Kamil Jarosz
30cc299ed6
wgpu: Prevent random crashes on desktop by handling SurfaceErrors properly
...
This patch adds proper handling for SurfaceErrors that may happen
when calling get_current_texture(), instead of always panicking.
This fixes random crashes, e.g. when the GPU took too long to
render a frame, or when the surface has unexpectedly changed.
2024-06-14 23:55:50 +02:00
Crowdin Bot
8fb214ea71
chore: Update translations from Crowdin
2024-06-14 22:41:19 +02:00
Daniel Jacobs
22c73e9536
extension: Use nodenext target for tools instead of commonjs
2024-06-13 19:24:46 -04:00
Daniel Jacobs
f4fd851298
extension: Fix zip tool by adding import.meta.url back
2024-06-13 19:24:46 -04:00
Lord-McSweeney
5ce882da9c
tests: Add a test for calling `newclass` twice on the same `Class`
2024-06-13 23:49:52 +02:00
Lord-McSweeney
18c50df838
avm2: Don't get the `Class` class by using `instance_of` in `into_finished_class`
2024-06-13 23:49:52 +02:00
Lord-McSweeney
1705870951
avm2: Class initializers will be called twice when constructing two `ClassObject`s for one `Class`
2024-06-13 23:49:52 +02:00
Lord-McSweeney
7e7032d908
avm2: Remove `constructor`, `native_constructor`, and `call_handler` fields from `ClassObject`
...
They were already present on `Class`
2024-06-13 23:49:52 +02:00
dependabot[bot]
52404bc3aa
build(deps): bump the cargo-minor group with 6 updates
...
Bumps the cargo-minor group with 6 updates:
| Package | From | To |
| --- | --- | --- |
| [clap](https://github.com/clap-rs/clap ) | `4.5.4` | `4.5.7` |
| [url](https://github.com/servo/rust-url ) | `2.5.0` | `2.5.1` |
| [linkme](https://github.com/dtolnay/linkme ) | `0.3.26` | `0.3.27` |
| [regex](https://github.com/rust-lang/regex ) | `1.10.4` | `1.10.5` |
| [zip](https://github.com/zip-rs/zip2 ) | `2.1.2` | `2.1.3` |
Updates `clap` from 4.5.4 to 4.5.7
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.4...v4.5.7 )
Updates `url` from 2.5.0 to 2.5.1
- [Release notes](https://github.com/servo/rust-url/releases )
- [Commits](https://github.com/servo/rust-url/compare/v2.5.0...v2.5.1 )
Updates `linkme` from 0.3.26 to 0.3.27
- [Release notes](https://github.com/dtolnay/linkme/releases )
- [Commits](https://github.com/dtolnay/linkme/compare/0.3.26...0.3.27 )
Updates `regex` from 1.10.4 to 1.10.5
- [Release notes](https://github.com/rust-lang/regex/releases )
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/regex/compare/1.10.4...1.10.5 )
Updates `zip` from 2.1.2 to 2.1.3
- [Release notes](https://github.com/zip-rs/zip2/releases )
- [Changelog](https://github.com/zip-rs/zip2/blob/master/CHANGELOG.md )
- [Commits](https://github.com/zip-rs/zip2/compare/v2.1.2...v2.1.3 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: cargo-minor
- dependency-name: url
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: cargo-minor
- dependency-name: linkme
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: cargo-minor
- dependency-name: quick-xml
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: cargo-minor
- dependency-name: regex
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: cargo-minor
- dependency-name: zip
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: cargo-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-06-13 01:05:26 +02:00
Crowdin Bot
4fa5853f88
chore: Update translations from Crowdin
2024-06-13 00:44:49 +02:00
Nathan Adams
c3f1a18d20
web: SocketProxy doesn't need serde
2024-06-13 00:22:33 +02:00
Nathan Adams
c9b111996f
web: Make serde (more-)optional in core
2024-06-13 00:22:33 +02:00
Nathan Adams
7eef31046b
render: Make serde optional
2024-06-13 00:22:33 +02:00
Kamil Jarosz
e8dbd58306
core: Use DisplayObject.movie() instead of context.swf where applicable
...
This prevents problems in case of mixed-AVM content.
2024-06-13 00:06:10 +02:00
Kamil Jarosz
b7ca9178fd
tests: Add avm1/focus_mouse_rollout test
2024-06-12 23:49:06 +02:00
Kamil Jarosz
39e8a15db5
core: Update focus after handling press, not before
...
Updating focus before handling press caused onRollOut
to be fired before onPress, but it should be fired after.
2024-06-12 23:49:06 +02:00
Nathan Adams
148fa6bdf1
web: Fixed some remaining references to tools-as-js
2024-06-12 23:33:01 +02:00
Nathan Adams
8c753972ca
web: Replace ts-node with tsx (mostly)
2024-06-12 23:33:01 +02:00
Nathan Adams
9f121947e7
web: Convert extension tools to typescript
2024-06-12 23:33:01 +02:00
Nathan Adams
d5788d0f88
web: Convert core/tools to typescript
2024-06-12 23:33:01 +02:00
Daniel Jacobs
a071b9ea3f
extension: Don't use scripting API for plugin polyfill where unsupported
2024-06-12 23:15:39 +02:00
Daniel Jacobs
a4550f5091
extension: Add comment about wrappedJSObject
2024-06-12 23:15:39 +02:00
Daniel Jacobs
e1efe90dbd
extension: Polyfill plugin using scripting API when MAIN world supported
2024-06-12 23:15:39 +02:00
Daniel Jacobs
c0d094a948
extension: Use scripting permission for Flash spoofing on Firefox too
2024-06-12 23:15:39 +02:00
TÖRÖK Attila
516c56db15
chore: Suppress a `clippy::doc_lazy_continuation` beta lint false positive
2024-06-12 23:09:39 +02:00
TÖRÖK Attila
3a01dc5545
ci: Set the `-znostart-stop-gc` flag for lld when testing
2024-06-12 22:50:29 +02:00
TÖRÖK Attila
0d25b5dba8
chore: Fix `clippy::needless_borrows_for_generic_args` beta lint
2024-06-12 22:42:18 +02:00
TÖRÖK Attila
6b4ee7dfde
chore: Fix most `clippy::doc_lazy_continuation` beta lints
2024-06-12 22:42:18 +02:00
Lord-McSweeney
0e062c4b9b
avm2: Replace two more uses of `instance_of` with `instance_class`
2024-06-12 19:46:32 +02:00
Lord-McSweeney
97f75cc0b4
avm2: Move interface logic from `ClassObject` to `Class`
2024-06-12 19:46:32 +02:00
Lord-McSweeney
90c370d61b
avm2: Always store a Class on vtable
2024-06-12 19:46:32 +02:00
Lord-McSweeney
2c9028d2f9
avm2: Replace most uses of `instance_of` with `instance_class`
...
Also store a Class -> alias mapping instead of a ClassObject -> alias mapping for AMF.
2024-06-12 19:46:32 +02:00
dependabot[bot]
2b17b6ce20
build(deps-dev): bump the npm-minor group in /web with 2 updates
...
Bumps the npm-minor group in /web with 2 updates: [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin ) and [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser ).
Updates `@typescript-eslint/eslint-plugin` from 7.12.0 to 7.13.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases )
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md )
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.13.0/packages/eslint-plugin )
Updates `@typescript-eslint/parser` from 7.12.0 to 7.13.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases )
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md )
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.13.0/packages/parser )
---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: npm-minor
- dependency-name: "@typescript-eslint/parser"
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: npm-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-06-10 22:53:27 +02:00
Kamil Jarosz
439f3f6d62
tests: Add filters/any_blur_scales_with_screen test
...
This test verifies how the blur scales when the screen is scaled.
The test includes all known filters which have a blur,
but some of them (gradient filters) are disabled (made invisible)
because they are not yet fully implemented in Ruffle.
They can be made visible when they are functional
so that this test also covers them.
2024-06-10 18:50:43 +02:00