Commit Graph

12279 Commits

Author SHA1 Message Date
Adrian Wielgosik 224edfe06f core: Unify WStr::MAX_LEN range checks 2024-06-02 23:00:23 +02:00
Adrian Wielgosik 6a75def83a avm2: Fix panic on substr(i, len>usize::MAX) 2024-06-02 23:00:23 +02:00
TÖRÖK Attila 925e92c2be chore: Run `cargo update`, but carefully 2024-06-02 17:26:23 +02:00
Crowdin Bot e3316aac52 chore: Update translations from Crowdin 2024-06-02 01:27:23 +02:00
sleepycatcoding 83cc8cf294 avm2: Implement a few avmplus XML edge cases 2024-06-02 01:52:52 +03:00
Tom Schuster 1402a59a20 avm2: :Implement FLV Date to Avm2Value conversion 2024-06-02 00:35:36 +02:00
Nathan Adams 50c84f3e88 frontend-utils: Set a useragent for requests 2024-06-01 22:32:48 +02:00
Tom Schuster cdbc6d289c avm2: Implement the abstract equality comparison for QName 2024-06-01 20:52:17 +02:00
Nathan Adams b04d12877e web: Use RuffleHandle as a custom key type, not a wrapper over DefaultKey 2024-06-01 20:34:10 +02:00
Nathan Adams dda9058f07 web: Rename Ruffle to RuffleHandle 2024-06-01 20:34:10 +02:00
Nathan Adams ad2f1dc1a5 web: Move some ExternalInterface util methods out of lib.rs 2024-06-01 20:34:10 +02:00
Nathan Adams 1e3511c7b0 web: Move some input util methods out of lib.rs 2024-06-01 20:34:10 +02:00
dependabot[bot] 88aafba757 build(deps): bump crowdin/github-action from 1 to 2
Bumps [crowdin/github-action](https://github.com/crowdin/github-action) from 1 to 2.
- [Release notes](https://github.com/crowdin/github-action/releases)
- [Commits](https://github.com/crowdin/github-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: crowdin/github-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-01 18:05:45 +02:00
dependabot[bot] febbfe8f42 build(deps): bump the cargo-minor group with 4 updates
Bumps the cargo-minor group with 4 updates: [tokio](https://github.com/tokio-rs/tokio), [regress](https://github.com/ridiculousfish/regress), [fontdb](https://github.com/RazrFalcon/fontdb) and [zip](https://github.com/zip-rs/zip2).


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

Updates `regress` from 0.9.1 to 0.10.0
- [Release notes](https://github.com/ridiculousfish/regress/releases)
- [Commits](https://github.com/ridiculousfish/regress/compare/v0.9.1...v0.10.0)

Updates `fontdb` from 0.17.0 to 0.18.0
- [Changelog](https://github.com/RazrFalcon/fontdb/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RazrFalcon/fontdb/compare/v0.17.0...v0.18.0)

Updates `zip` from 2.1.0 to 2.1.1
- [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.0...v2.1.1)

---
updated-dependencies:
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-minor
- dependency-name: regress
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-minor
- dependency-name: fontdb
  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
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-01 17:46:28 +02:00
dependabot[bot] 9f353d3086 build(deps): bump the npm-minor group in /web with 5 updates
Bumps the npm-minor group in /web with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [@wdio/cli](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-cli) | `8.38.0` | `8.38.1` |
| [stylelint](https://github.com/stylelint/stylelint) | `16.6.0` | `16.6.1` |
| [chromedriver](https://github.com/giggio/node-chromedriver) | `125.0.2` | `125.0.3` |
| [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) | `48.2.6` | `48.2.7` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `5.2.11` | `5.2.12` |


Updates `@wdio/cli` from 8.38.0 to 8.38.1
- [Release notes](https://github.com/webdriverio/webdriverio/releases)
- [Changelog](https://github.com/webdriverio/webdriverio/blob/v8.38.1/CHANGELOG.md)
- [Commits](https://github.com/webdriverio/webdriverio/commits/v8.38.1/packages/wdio-cli)

Updates `stylelint` from 16.6.0 to 16.6.1
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.6.0...16.6.1)

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

Updates `eslint-plugin-jsdoc` from 48.2.6 to 48.2.7
- [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.6...v48.2.7)

Updates `vite` from 5.2.11 to 5.2.12
- [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.2.12/packages/vite)

---
updated-dependencies:
- dependency-name: "@wdio/cli"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor
- dependency-name: stylelint
  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: 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-patch
  dependency-group: npm-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-01 17:28:10 +02:00
Nathan Adams 618e061564 core: Expand on audio related error messages 2024-06-01 14:08:54 +02:00
Crowdin Bot fe8dae29b5 chore: Update translations from Crowdin 2024-06-01 13:52:52 +02:00
Kamil Jarosz f0c41cdc4f tests: Rename cache_as_bitmap/edittext_selection_filters
The _filters prefix is superfluous, as we are already
in the cache_as_bitmap directory.
2024-05-31 22:24:34 +02:00
Kamil Jarosz a561945fae tests: Add cache_as_bitmap/edittext_scroll test
This test verifies that the edittext is scrollable when cached as bitmap.
2024-05-31 22:24:34 +02:00
Kamil Jarosz 4b8d6f5990 tests: Add AutomatedEvent::MouseWheel
This event allows testing mouse scrolling.
2024-05-31 22:24:34 +02:00
Kamil Jarosz f4a517dbd1 text: Invalidate bitmap cache on scroll
This patch fixes scrolling text fields when filters are applied.
2024-05-31 22:24:34 +02:00
sleepycatcoding 2fd5dfde9c avm2: Implement XMLList.normalize 2024-05-31 22:09:17 +02:00
Tom Schuster 0b2881c8a6 tests: A simple test for ToXMLString with namespaces 2024-05-30 21:14:06 +02:00
Tom Schuster d98e3d9b99 avm2: Parse XML namespace declaration and make ToXMLString output them
This does not implement any of the XML API functions that interact with
namespaces.

Fixes #16340
2024-05-30 21:14:06 +02:00
TÖRÖK Attila 42ea1331c1 tests: Add a visual test for H.264 video decoding
Featuring the legendary Big Buck Bunny.
2024-05-30 20:22:33 +02:00
TÖRÖK Attila b7a100337e tests: Make H.264 videos work in visual tests 2024-05-30 20:22:33 +02:00
TÖRÖK Attila 76da9621c9 desktop: Add a preference to enable the OpenH264 decoder 2024-05-30 20:22:33 +02:00
TÖRÖK Attila 381b77cda0 video/external: Add OpenH264 decoder 2024-05-30 20:22:33 +02:00
TÖRÖK Attila b282d1325a core: Pass on H.264 packets from FLV streams to the video backend 2024-05-30 20:22:33 +02:00
TÖRÖK Attila a66bec40dd video: Add `configure_video_stream_decoder` to the `VideoBackend` trait 2024-05-30 20:22:33 +02:00
TÖRÖK Attila fe2a264a93 video: Add "external" video backend 2024-05-30 20:22:33 +02:00
TÖRÖK Attila c462c7b1d4 swf: Add VideoCodec value for H.264 (AVC) 2024-05-30 20:22:33 +02:00
Daniel Jacobs 7234c2ea3a web: Just remove packages folder when building Dockerfile 2024-05-30 14:05:38 -04:00
Daniel Jacobs d3947f90cd ci: Ignore just the Docker package files in the reproducible build 2024-05-30 14:05:38 -04:00
sleepycatcoding 007a532717 avm2: Implement XMLList.contains 2024-05-30 00:43:45 +03:00
Tom Schuster 1fe1b8d67d avm2: Introduce an E4XNamespace type (NFCI) 2024-05-29 22:37:40 +02:00
Daniel Jacobs 4b07af26cf chore: Fix inaccurate comments 2024-05-29 17:23:29 +02:00
Daniel Jacobs 65bdf925b8 web: Change nodeName of polyfilled Flash elements to match original name 2024-05-29 17:23:29 +02:00
Daniel Jacobs f5faa39a2d chore: Properly detect files as GLSL on GitHub 2024-05-29 09:52:44 -04:00
Daniel Jacobs bb00d7a8ab chore: Remove inaccurate syntax comment from another AS file 2024-05-29 09:36:04 -04:00
Daniel Jacobs 7a36473f0f chore: Remove inaccurate syntax comment from AS file 2024-05-29 09:36:04 -04:00
Nathan Adams 1712cd61e5 web: Wait until the player is fully ready, for tests 2024-05-29 00:03:47 +02:00
Nathan Adams dda7411589 web: Specify polyfill/ path specifically, so it can be other paths later 2024-05-29 00:03:47 +02:00
Nathan Adams de36fc2d82 web: Clean up utils.ts optional args a bit 2024-05-29 00:03:47 +02:00
Nathan Adams 885c443737 web: Check TS types with 'lint' 2024-05-29 00:03:47 +02:00
Nathan Adams c7566d5a4a web: Convert selfhosted tests to typescript 2024-05-29 00:03:47 +02:00
Kamil Jarosz fe4e180adf tests: Add attach_movie_stop test
This test verifies that stop() works properly for a movie clip
attached with attachMovie in DoInitAction.
2024-05-28 23:57:13 +02:00
Kamil Jarosz c32b27c294 core: Fix stop() when executing attachMovie in DoInitAction
This fixes a bug where the code in the first frame of a movie clip
could have been executed after the second frame
(so that instructions like stop did not work properly).

That is because when the first frame was executed in preload
(e.g. for a sprite attached using attachMovie), the actions were queued,
the second frame was executed in run_frame, and then the actions from
the first frame were executed.

Ensuring that all actions are executed after preload fixes this issue.
2024-05-28 23:57:13 +02:00
Adrian Wielgosik 2532d7e927 avm2: Refactor Executable->BoundMethod, introduce freestanding exec() 2024-05-28 23:32:21 +02:00
Kamil Jarosz 3bb47db5f9 avm1: Move FunctionObject's base to FunctionObjectData
This shrinks AVM1's Object (from 24 to 16 bytes on x64), and
allows future shrinkage of AVM1's Value (e.g. from 24 to 16 bytes
on x64 after putting all strings behind a Gc pointer).
2024-05-28 23:18:11 +02:00