Commit Graph

12864 Commits

Author SHA1 Message Date
Lord-McSweeney a4c6c3592b avm2: `StyleSheet` should extend `EventDispatcher` 2024-07-25 22:29:56 +03:00
Kamil Jarosz 8bfb50f3c1 tests: Add avm2/focus_events_mouse_focusable test
This test verifies the behavior of focus-related events when
trying to focus various interactive objects using mouse.
2024-07-25 16:38:06 +02:00
Kamil Jarosz b6ce6523de tests: Add avm2/focus_events_mixed_key_mouse test
This test verifies the behavior of focus-related events when
changing focus using keyboard and mouse interchangeably.
2024-07-25 16:38:06 +02:00
Kamil Jarosz be903d2cd5 tests: Add avm2/focus_events_mouse_same_object test
This test verifies the behavior of focus-related events when
changing focus to the same object using mouse.
2024-07-25 16:38:06 +02:00
Kamil Jarosz dd4b859268 tests: Add avm2/focus_events_mouse_basic test
This test verifies the behavior of focus-related events when
changing focus using mouse.
2024-07-25 16:38:06 +02:00
Kamil Jarosz c63a014efd tests: Add avm2/focus_events_key_navigation test
This test verifies the behavior of focus-related events
when using keyboard navigation.
2024-07-25 16:38:06 +02:00
Kamil Jarosz e3d013ebf8 tests: Add avm2/focus_events_key_same_object test
This test verifies the behavior of focus-related events when
changing focus to the same object using keyboard.
2024-07-25 16:38:06 +02:00
Kamil Jarosz 2bf3a61a4d tests: Add avm2/focus_events_key_basic test
This test verifies the behavior of focus-related events when
changing focus using keyboard.
2024-07-25 16:38:06 +02:00
Kamil Jarosz 8f4668e5bb tests: Add avm2/focus_events_code test
This test verifies the behavior of focus-related events when
changing focus programmatically.
2024-07-25 16:38:06 +02:00
Kamil Jarosz 594d3d5d2f tests: Add avm2/focusrect_focuslost
This test verifies the behavior of focus-related events when
the window focus is lost.
2024-07-25 16:38:06 +02:00
Kamil Jarosz 266efaf887 tests: Add avm1/focus_mouse_focusable test
This test checks which objects are focusable by mouse in AVM1.
2024-07-25 16:38:06 +02:00
Kamil Jarosz f8309bc548 avm2: Update focus before dispatching mouse events
The order of events seen during testing suggests that the focus
is updated before dispatching any mouse-related events.
2024-07-25 16:38:06 +02:00
Kamil Jarosz 84e291dc37 core: Make AVM2 objects focusable by mouse
When clicking a focusable by mouse object in AVM2,
the focus should be updated.
2024-07-25 16:38:06 +02:00
Kamil Jarosz c30b229408 avm2: Add support for mouseFocusChange/keyFocusChange events 2024-07-25 16:38:06 +02:00
Kamil Jarosz 409f01e42c avm2: Add support for focusOut events 2024-07-25 16:38:06 +02:00
Kamil Jarosz f79ab195be avm2: Add EventObject::focus_event
This method allows constructing FocusEvents.
2024-07-25 16:38:06 +02:00
Kamil Jarosz 021de2bf91 core: Fix grammar in docs 2024-07-25 16:38:06 +02:00
Kamil Jarosz b850c9b0d2 tests: Make renderer optional for focusrect_focuslost 2024-07-25 16:38:06 +02:00
Lord-McSweeney e814692aaf tests: Add a test for gotoing to a frame with a frame label when the frame is the last frame 2024-07-25 15:59:16 +03:00
Lord-McSweeney cd9cfa6b26 core: Fix off-by-one in `MovieClip.frame_exists_within_scene` 2024-07-25 15:59:16 +03:00
Crowdin Bot 9065ce3a03 chore: Update translations from Crowdin 2024-07-24 21:57:36 +02:00
Aaron Hill f6737b68f4 avm2: Add 'avm_caught' trace target to log caught exceptions
When the `avm_debug` feature is enabled, we log all caught exceptions
under the `avm_caught` target at INFO level. This is useful for
debugging SWFs that catch and suppress exceptions, which can end up
hiding errors from unimplemented flash APIs.
2024-07-24 21:03:29 +02:00
dependabot[bot] b6c9e25cf4 build(deps-dev): bump typescript-eslint in /web
Bumps [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) from 8.0.0-alpha.51 to 8.0.0-alpha.54.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/HEAD/packages/typescript-eslint)

---
updated-dependencies:
- dependency-name: typescript-eslint
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-24 19:14:42 +02:00
dependabot[bot] 0c321b3073 build(deps): bump chromedriver from 126.0.5 to 127.0.0 in /web
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 126.0.5 to 127.0.0.
- [Commits](https://github.com/giggio/node-chromedriver/compare/126.0.5...127.0.0)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-24 19:01:33 +02:00
dependabot[bot] eb2c98b8e6 build(deps-dev): bump the npm-minor group in /web with 2 updates
Bumps the npm-minor group in /web with 2 updates: [typescript](https://github.com/Microsoft/TypeScript) and [@types/chrome](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/chrome).


Updates `typescript` from 5.5.3 to 5.5.4
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v5.5.3...v5.5.4)

Updates `@types/chrome` from 0.0.268 to 0.0.269
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/chrome)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor
- dependency-name: "@types/chrome"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-24 18:50:44 +02:00
Daniel Jacobs d8da4ffaa5 extension: Don't redefine the window.close() method 2024-07-24 17:49:10 +02:00
Daniel Jacobs 141eab4292 extension: Unregister event listeners before adding new ones 2024-07-24 17:49:10 +02:00
Daniel Jacobs 830b5df3dc extension: Request permission for SWF origins loaded in player as needed 2024-07-24 17:49:10 +02:00
Moulins cb10589758 core: Don't make dependant AvmStrings pointing to static buffers 2024-07-24 17:30:04 +02:00
Moulins aa956a286f core: Rename `avm_string::Source::Owned` to `Managed`
This avoids confusion with the owned/dependant distinction
2024-07-24 17:30:04 +02:00
Kamil Jarosz d832476ae6 tests: Add avm2/edittext_paragraph_methods test 2024-07-24 17:12:54 +02:00
Kamil Jarosz fe82a23b61 avm2: Implement TextField.getParagraphLength 2024-07-24 17:12:54 +02:00
Kamil Jarosz 670e5f9ac2 avm2: Implement TextField.getFirstCharInParagraph 2024-07-24 17:12:54 +02:00
Kamil Jarosz e9b8cfae1a wstr: Add swf_is_newline util method 2024-07-24 17:12:54 +02:00
Kamil Jarosz 9912141114 core: Use swf_is_whitespace where possible 2024-07-24 17:12:54 +02:00
Daniel Jacobs 1cab534246 ci: Don't test on Edge as the latest release is missing for Linux 2024-07-24 10:57:29 -04:00
Daniel Jacobs a7ee776750 web: Fix globals.d.ts file type declarations 2024-07-23 20:06:15 +02:00
TÖRÖK Attila 9e3035a8bb chore: Fix new beta lint `clippy::manual_inspect` 2024-07-23 18:54:04 +02:00
Daniel Jacobs 07033d3087 web: Use CSS scale attribute instead of non-existent scale property 2024-07-23 11:14:52 -04:00
dependabot[bot] 9337dfc359 build(deps-dev): bump typescript-eslint in /web
Bumps [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) from 8.0.0-alpha.49 to 8.0.0-alpha.51.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/HEAD/packages/typescript-eslint)

---
updated-dependencies:
- dependency-name: typescript-eslint
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-23 05:25:58 +02:00
dependabot[bot] e9c610816b build(deps): bump enumset from 1.1.3 to 1.1.4 in the cargo-minor group
Bumps the cargo-minor group with 1 update: [enumset](https://github.com/Lymia/enumset).


Updates `enumset` from 1.1.3 to 1.1.4
- [Changelog](https://github.com/Lymia/enumset/blob/main/RELEASES.md)
- [Commits](https://github.com/Lymia/enumset/compare/v1.1.3...v1.1.4)

---
updated-dependencies:
- dependency-name: enumset
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-22 23:42:23 +02:00
TÖRÖK Attila bff15397d3 chore: Switch to the `image::ImageReader` alias from the deprecated `image::io::Reader` 2024-07-22 20:13:02 +02:00
dependabot[bot] 88b5fafd7d build(deps): bump the cargo-minor group with 10 updates
Bumps the cargo-minor group with 10 updates:

| Package | From | To |
| --- | --- | --- |
| [image](https://github.com/image-rs/image) | `0.25.1` | `0.25.2` |
| [thiserror](https://github.com/dtolnay/thiserror) | `1.0.62` | `1.0.63` |
| [tokio](https://github.com/tokio-rs/tokio) | `1.38.0` | `1.38.1` |
| [syn](https://github.com/dtolnay/syn) | `2.0.71` | `2.0.72` |
| [toml_edit](https://github.com/toml-rs/toml) | `0.22.15` | `0.22.16` |
| [embed-resource](https://github.com/nabijaczleweli/rust-embed-resource) | `2.4.2` | `2.4.3` |
| [gloo-net](https://github.com/rustwasm/gloo) | `0.5.0` | `0.6.0` |
| [zip](https://github.com/zip-rs/zip2) | `2.1.3` | `2.1.5` |
| [libloading](https://github.com/nagisa/rust_libloading) | `0.8.4` | `0.8.5` |
| [toml](https://github.com/toml-rs/toml) | `0.8.14` | `0.8.15` |


Updates `image` from 0.25.1 to 0.25.2
- [Changelog](https://github.com/image-rs/image/blob/main/CHANGES.md)
- [Commits](https://github.com/image-rs/image/compare/v0.25.1...v0.25.2)

Updates `thiserror` from 1.0.62 to 1.0.63
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.62...1.0.63)

Updates `tokio` from 1.38.0 to 1.38.1
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.38.0...tokio-1.38.1)

Updates `syn` from 2.0.71 to 2.0.72
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](https://github.com/dtolnay/syn/compare/2.0.71...2.0.72)

Updates `toml_edit` from 0.22.15 to 0.22.16
- [Commits](https://github.com/toml-rs/toml/compare/v0.22.15...v0.22.16)

Updates `embed-resource` from 2.4.2 to 2.4.3
- [Release notes](https://github.com/nabijaczleweli/rust-embed-resource/releases)
- [Commits](https://github.com/nabijaczleweli/rust-embed-resource/compare/v2.4.2...v2.4.3)

Updates `gloo-net` from 0.5.0 to 0.6.0
- [Release notes](https://github.com/rustwasm/gloo/releases)
- [Changelog](https://github.com/rustwasm/gloo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rustwasm/gloo/compare/0.5.0...0.6.0)

Updates `zip` from 2.1.3 to 2.1.5
- [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.3...v2.1.5)

Updates `libloading` from 0.8.4 to 0.8.5
- [Commits](https://github.com/nagisa/rust_libloading/compare/0.8.4...0.8.5)

Updates `toml` from 0.8.14 to 0.8.15
- [Commits](https://github.com/toml-rs/toml/compare/toml-v0.8.14...toml-v0.8.15)

---
updated-dependencies:
- dependency-name: image
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
- dependency-name: syn
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
- dependency-name: toml_edit
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
- dependency-name: embed-resource
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
- dependency-name: gloo-net
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-minor
- dependency-name: zip
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
- dependency-name: libloading
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
- dependency-name: toml
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-22 20:13:02 +02:00
Crowdin Bot db1e4208e3 chore: Update translations from Crowdin 2024-07-22 19:41:49 +02:00
Kamil Jarosz 92b94d133c avm2: Stub orientation-related Stage API 2024-07-22 19:41:50 +03:00
Kamil Jarosz c6fb941da1 avm2: Add flash.display.StageOrientation 2024-07-22 19:41:50 +03:00
Kamil Jarosz 55cf29c864 avm2: Remove unused imports from Stage 2024-07-22 19:41:50 +03:00
dependabot[bot] eba2466bed build(deps-dev): bump typescript-eslint in /web
Bumps [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) from 8.0.0-alpha.44 to 8.0.0-alpha.49.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/HEAD/packages/typescript-eslint)

---
updated-dependencies:
- dependency-name: typescript-eslint
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-22 14:43:08 +02:00
dependabot[bot] b180a1b81d build(deps): bump the npm-minor group in /web with 8 updates
Bumps the npm-minor group in /web with 8 updates:

| Package | From | To |
| --- | --- | --- |
| [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) | `48.7.0` | `48.8.3` |
| [eslint-plugin-prettier](https://github.com/prettier/eslint-plugin-prettier) | `5.1.3` | `5.2.1` |
| [eslint-plugin-react-refresh](https://github.com/ArnaudBarre/eslint-plugin-react-refresh) | `0.4.8` | `0.4.9` |
| [mocha](https://github.com/mochajs/mocha) | `10.6.0` | `10.7.0` |
| [stylelint-prettier](https://github.com/prettier/stylelint-prettier) | `5.0.1` | `5.0.2` |
| [chromedriver](https://github.com/giggio/node-chromedriver) | `126.0.4` | `126.0.5` |
| [typedoc](https://github.com/TypeStrong/TypeDoc) | `0.26.4` | `0.26.5` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `5.3.3` | `5.3.4` |


Updates `eslint-plugin-jsdoc` from 48.7.0 to 48.8.3
- [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.7.0...v48.8.3)

Updates `eslint-plugin-prettier` from 5.1.3 to 5.2.1
- [Release notes](https://github.com/prettier/eslint-plugin-prettier/releases)
- [Changelog](https://github.com/prettier/eslint-plugin-prettier/blob/master/CHANGELOG.md)
- [Commits](https://github.com/prettier/eslint-plugin-prettier/compare/v5.1.3...v5.2.1)

Updates `eslint-plugin-react-refresh` from 0.4.8 to 0.4.9
- [Release notes](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/releases)
- [Changelog](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/compare/v0.4.8...v0.4.9)

Updates `mocha` from 10.6.0 to 10.7.0
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mochajs/mocha/compare/v10.6.0...v10.7.0)

Updates `stylelint-prettier` from 5.0.1 to 5.0.2
- [Changelog](https://github.com/prettier/stylelint-prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/stylelint-prettier/compare/v5.0.1...v5.0.2)

Updates `chromedriver` from 126.0.4 to 126.0.5
- [Commits](https://github.com/giggio/node-chromedriver/compare/126.0.4...126.0.5)

Updates `typedoc` from 0.26.4 to 0.26.5
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases)
- [Changelog](https://github.com/TypeStrong/typedoc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.26.4...v0.26.5)

Updates `vite` from 5.3.3 to 5.3.4
- [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.4/packages/vite)

---
updated-dependencies:
- dependency-name: eslint-plugin-jsdoc
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-minor
- dependency-name: eslint-plugin-prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-minor
- dependency-name: eslint-plugin-react-refresh
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor
- dependency-name: mocha
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-minor
- dependency-name: stylelint-prettier
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: npm-minor
- dependency-name: typedoc
  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-patch
  dependency-group: npm-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-22 14:31:09 +02:00
Daniel Jacobs a7674a5cae Revert "ci: Temporarily pin to Node 22.4"
This reverts commit da82b8ff04.
2024-07-22 07:47:43 -04:00