Nathan Adams
3692cbbb2e
avm2: Implement Namespace constructor and prefix
2024-05-21 19:57:39 +02:00
TÖRÖK Attila
4eb1bb358a
chore: Bump h263-rs git reference
2024-05-21 18:38:29 +02:00
TÖRÖK Attila
2dec49941a
chore: Refer to a specific git hash of jpegxr instead of a branch
2024-05-21 18:38:29 +02:00
TÖRÖK Attila
1b3701e1aa
ci: Disable rust-lld on Rust nightly
2024-05-21 11:15:36 +02:00
Aaron Hill
d8b8ffa4f3
chore: Bump jpegxr dep to fix compiling with latest Clang
2024-05-20 23:23:28 +02:00
dependabot[bot]
c0b0b8257f
build(deps): bump the cargo-minor group with 6 updates
...
----
updated-dependencies:
- dependency-name: anyhow
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: syn
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: cargo-minor
- dependency-name: proc-macro2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: cargo-minor
- dependency-name: crossbeam-channel
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-minor
dependency-group: cargo-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-20 20:56:02 +00:00
dependabot[bot]
48e9eab7cc
build(deps-dev): bump the npm-minor group in /web with 3 updates
...
---
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
- dependency-name: axios
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: npm-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-20 22:38:55 +02:00
Aaron Hill
f301b23f6e
core: Treat NaN rotation as 0.0 when setting scaleX/scaleY
...
The `rotation` value is still reported to ActionScript as `NaN`,
but we treat it as 0.0 when computing the new matrix in the
scaleX/scaleY setters.
2024-05-19 09:52:07 -07:00
Lord-McSweeney
78e9426ba9
avm2: Add some comments for clarification
2024-05-18 17:01:49 -07:00
Lord-McSweeney
c93873a7a2
avm2: Add a note on the `FindProp(Strict)` to `GetScriptGlobals` optimization
2024-05-18 17:01:49 -07:00
Lord-McSweeney
a88d9dc07b
avm2: Simple scoping is not required to optimize GetGlobalScope and GetGlobalSlot
2024-05-18 17:01:49 -07:00
Lord-McSweeney
267e3693ca
Appease clippy
2024-05-18 17:01:49 -07:00
Lord-McSweeney
3fb549f1b5
avm2: Handle lazy multiname in findprop optimization
2024-05-18 17:01:49 -07:00
Lord-McSweeney
eb27151af7
avm2: Don't call global init in optimizer
2024-05-18 17:01:49 -07:00
Lord-McSweeney
12174b5219
avm2: Propagate types from getslot, getglobalscope, and getglobalslot in optimizer
2024-05-18 17:01:49 -07:00
Lord-McSweeney
92de618261
avm2: Fix some very minor bugs with findprop optimization
2024-05-18 17:01:49 -07:00
Lord-McSweeney
796dda1ae0
avm2: Remove `fork_vtable` hack
2024-05-18 17:01:49 -07:00
Lord-McSweeney
767b7b4e44
avm2: Optimize findproperty and findpropstrict to getouterscope, getscopeobject, and getscriptglobals when possible
2024-05-18 17:01:49 -07:00
Lord-McSweeney
f50b68abfd
avm2: Split `GetLex` into `FindPropStrict` and `GetProperty`
2024-05-18 17:01:49 -07:00
Colin
f573f7b141
avm1: Make clip have correct properties when the target of loadClip
2024-05-17 23:07:44 +02:00
TÖRÖK Attila
9522acf61d
render/wgpu: Switch to pipeline-overridable constant for bitmap saturation order toggle
...
Also call it `late_saturate` instead, to avoid the confusing negation
between the constant name and the (now removed) shader module name.
2024-05-17 22:13:13 +02:00
TÖRÖK Attila
45a7cbbc81
ci: Test with Node.js 22 instead of 21
2024-05-17 21:53:01 +02:00
TÖRÖK Attila
6d45a766aa
chore: Run `cargo update` to bump indirect deps in `Cargo.lock`
...
As usual, taking care not to duplicate `tracy-client` by holding back `profiling`.
2024-05-17 21:36:22 +02:00
dependabot[bot]
5fbf39fd7a
build(deps): bump the cargo-minor group across 1 directory with 7 updates
...
Bumps the cargo-minor group with 7 updates in the / directory:
| Package | From | To |
| --- | --- | --- |
| [async-channel](https://github.com/smol-rs/async-channel ) | `2.3.0` | `2.3.1` |
| [serde](https://github.com/serde-rs/serde ) | `1.0.201` | `1.0.202` |
| [either](https://github.com/rayon-rs/either ) | `1.11.0` | `1.12.0` |
| [syn](https://github.com/dtolnay/syn ) | `2.0.63` | `2.0.64` |
| [toml_edit](https://github.com/toml-rs/toml ) | `0.22.12` | `0.22.13` |
| [insta](https://github.com/mitsuhiko/insta ) | `1.38.0` | `1.39.0` |
| [toml](https://github.com/toml-rs/toml ) | `0.8.12` | `0.8.13` |
Updates `async-channel` from 2.3.0 to 2.3.1
- [Release notes](https://github.com/smol-rs/async-channel/releases )
- [Changelog](https://github.com/smol-rs/async-channel/blob/master/CHANGELOG.md )
- [Commits](https://github.com/smol-rs/async-channel/compare/v2.3.0...v2.3.1 )
Updates `serde` from 1.0.201 to 1.0.202
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.201...v1.0.202 )
Updates `either` from 1.11.0 to 1.12.0
- [Commits](https://github.com/rayon-rs/either/compare/1.11.0...1.12.0 )
Updates `syn` from 2.0.63 to 2.0.64
- [Release notes](https://github.com/dtolnay/syn/releases )
- [Commits](https://github.com/dtolnay/syn/compare/2.0.63...2.0.64 )
Updates `toml_edit` from 0.22.12 to 0.22.13
- [Commits](https://github.com/toml-rs/toml/compare/v0.22.12...v0.22.13 )
Updates `insta` from 1.38.0 to 1.39.0
- [Release notes](https://github.com/mitsuhiko/insta/releases )
- [Changelog](https://github.com/mitsuhiko/insta/blob/master/CHANGELOG.md )
- [Commits](https://github.com/mitsuhiko/insta/compare/1.38.0...1.39.0 )
Updates `toml` from 0.8.12 to 0.8.13
- [Commits](https://github.com/toml-rs/toml/compare/toml-v0.8.12...toml-v0.8.13 )
---
updated-dependencies:
- dependency-name: async-channel
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: cargo-minor
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: cargo-minor
- dependency-name: either
dependency-type: direct:production
update-type: version-update:semver-minor
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: insta
dependency-type: direct:production
update-type: version-update:semver-minor
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-05-17 01:41:44 +02:00
dependabot[bot]
fa1ac0e42d
build(deps-dev): bump eslint-plugin-jsdoc in /web in the npm-minor group
...
Bumps the npm-minor group in /web with 1 update: [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc ).
Updates `eslint-plugin-jsdoc` from 48.2.4 to 48.2.5
- [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.4...v48.2.5 )
---
updated-dependencies:
- dependency-name: eslint-plugin-jsdoc
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: npm-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-05-17 01:23:24 +02:00
dependabot[bot]
e356aaf310
build(deps): bump chromedriver from 124.0.3 to 125.0.0 in /web
...
Bumps [chromedriver](https://github.com/giggio/node-chromedriver ) from 124.0.3 to 125.0.0.
- [Commits](https://github.com/giggio/node-chromedriver/compare/124.0.3...125.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-05-17 01:15:39 +02:00
Nathan Adams
b25fe69bac
avm1: Implement StyleSheet.load
2024-05-17 00:37:39 +02:00
Nathan Adams
c1e197189d
avm1: Implement most of StyleSheet
2024-05-17 00:37:39 +02:00
TÖRÖK Attila
7f0e6bfaa5
meta: Deny including multiple versions of `image`
...
To prevent https://github.com/ruffle-rs/ruffle/issues/15836 from reoccurring.
2024-05-17 01:19:01 +03:00
TÖRÖK Attila
331d1789da
render,core,desktop: Port to `wgpu` `v0.20.0`, switch to `egui` `master`
2024-05-17 01:19:01 +03:00
Nathan Adams
b8c1263f9e
avm1: Expose NativeObjects through SuperObject - fixes g2conline
2024-05-17 00:02:45 +02:00
Nathan Adams
dfd9a26a7b
avm1: Implement NetConnection, more or less
2024-05-17 00:02:45 +02:00
Daniel Jacobs
8f67d401f8
Revert "github: Add a Dependabot group just for bumping Cargo.lock"
...
This reverts commit 6c144a038f
.
2024-05-16 23:37:34 +02:00
Kamil Jarosz
710232ee69
tests: Add tab_ordering_automatic_advanced test
...
This test verifies the exact behavior of the automatic tab order.
2024-05-16 21:40:56 +02:00
Kamil Jarosz
aeabe3cbb5
core: Implement proper automatic tab ordering
...
This patch implements proper automatic tab ordering that
behaves exactly the same as in FP.
The automatic order depends only on the position of
the top-left highlight bound corner, referred to as `(x,y)`.
It does not depend on object's size or other corners.
The value of `6y+x` is used to order objects by it.
This means that the next object to be tabbed is the next one
that touches the line `y=-(x-p)/6` (with the smallest `p`).
When two objects have the same value of `6y+x`
(i.e. when the line touches two objects at the same time),
only one of them is included.
This behavior is similar to the naive approach of
"left-to-right, top-to-bottom", but (besides being sometimes
seen as random jumps) takes into account the fact that
the next object to the right may be positioned slightly higher.
This is especially true for objects placed by hand or objects with
different heights (as FP uses the top left corner instead of the center).
This behavior has been discovered experimentally by placing
tabbable objects randomly and bisecting one of their
coordinates to find a difference in behavior.
2024-05-16 21:40:56 +02:00
Kamil Jarosz
f4fb689c7b
tests: Fix tab_ordering_automatic_order_same_position
...
This test was passing totally by accident.
It contained two objects that were lying on the same y=-(x-p)/6 line.
Using the automatic order, only one of these objects should be tabbable,
however in output.txt we can see them both (clipInner2 and clip5b).
That's because the test was performed in FP with a zoom less than 100%,
which apparently changed how FP sees coordinates.
2024-05-16 21:40:56 +02:00
TÖRÖK Attila
f9f4c3bb82
render/wgpu: Drop `naga_oil` in favor of manual string manipulation
2024-05-16 20:24:49 +02:00
TÖRÖK Attila
6c144a038f
github: Add a Dependabot group just for bumping Cargo.lock
...
Hopefully, now that it runs on GHA infra, it won't timeout.
2024-05-16 20:06:02 +02:00
TÖRÖK Attila
b0e812c718
github: Make Dependabot also ignore "profiling"
...
The other two crates are indirect through this.
2024-05-16 20:06:02 +02:00
TÖRÖK Attila
ce778df64f
github: Add a workaround for nextest failing on Windows
2024-05-16 19:47:52 +02:00
sleepycatcoding
ef1f6ce29b
desktop: Use player options from bundle if available
...
These are merged with options from Open Advanced.
2024-05-16 01:14:42 +03:00
sleepycatcoding
6a59cb4445
frontend-utils: Hook up player options to bundle parser
2024-05-16 01:14:42 +03:00
sleepycatcoding
9e70a8697e
frontend-utils: Implement player options deserializer
...
Also adds `ReadExt::get_float_like` helper.
2024-05-16 01:14:42 +03:00
sleepycatcoding
d74c590e4a
frontend-utils: Update bundle specification
...
Co-authored-by: Nathan Adams <dinnerbone@dinnerbone.com>
2024-05-16 01:14:42 +03:00
sleepycatcoding
be8cbd64d6
core/render/web: Make FromStr exclusively for snake_case
2024-05-16 01:14:42 +03:00
Crowdin Bot
a5810b4703
chore: Update translations from Crowdin
2024-05-15 23:58:04 +02:00
Nathan Adams
519de0e230
avm1: Implement __resolve
2024-05-15 22:45:56 +02:00
Aaron Hill
932f2d410b
debug_ui: Render bitmap in new 'Bitmap' display object tab
...
This lets us view a bitmap directly from the debug ui.
We cache an egui texture handle on the `BitmapData` itself,
and invalidate it whenever the BitmapData gets changed.
2024-05-15 15:19:52 -04:00
Aaron Hill
4d2b2893ae
avm2: Prevent loader mouse pick from targeting direct child
...
Loaders have a similar behavior to the main stage - if a mouse pick
would target their direct child (the root movieclip in the stage case,
and the loaded MovieClip in the Loader case), the Stage/Loader is
targeted instead.
2024-05-15 13:41:17 -04:00
Aaron Hill
60000d6930
avm2: Skip mouse pick for all mask children
...
We were previosuly only checking 'clip_depth', but we should
also check 'maskee()'
2024-05-15 12:30:51 -04:00