Commit Graph

338 Commits

Author SHA1 Message Date
relrelb 83c15b8033 render: Replace `BoundingBox` with `swf::Rectangle` 2023-03-04 21:54:23 +02:00
relrelb 5756c847cd swf: Make `Twips::new` a `const fn` 2023-03-04 21:54:23 +02:00
Nathan Adams 545193b098 swf: Deduplicate GradientFilter again 2023-02-28 16:25:12 +01:00
Nathan Adams f79015e201 render: Use swf Filter types where possible. Gradient types had to be split into duplicate classes to allow for different trait impls based on which gradient filter type it is. 2023-02-28 16:25:12 +01:00
Nathan Adams 9224aeca5d swf: Add DropShadowFilter::hide_object(), it's the only time COMPOSITE_SOURCE is used 2023-02-28 16:25:12 +01:00
Nathan Adams 7da2a061cc swf: ColorMatrixFilter::matrix is actually f32, not Fixed16 2023-02-28 16:25:12 +01:00
Nathan Adams ce9159cba4 swf: Fixed read order of BevelFilter colors. The swf spec is wrong. 2023-02-28 16:25:12 +01:00
Aaron Hill 016ab56cdf avm2: Shrink `Op` enum by using a `Box<[i32]>` in `LookupSwitch`
This shaves off one `usize` from the size of `Op`.
2023-02-27 18:09:40 -06:00
relrelb 4e84488c6e chore: Appease clippy 2023-02-27 12:43:23 +02:00
renovate[bot] 71e24eedba fix(deps): update rust dependencies 2023-02-27 11:48:53 +02:00
relrelb dc9ec40d31 chore: Allow `clippy::bool_to_int_with_if`
Seems like Clippy no longer complains about it.
2023-02-26 13:23:38 +02:00
relrelb 5f4f23cceb swf: Don't truncate `ClipEventFlag` in SWFv5
Although in SWFv5 the 2nd byte is documented to be reserved (all 0),
Flash does read it and treats it the same as for SWFv6.

Fixes #8620
2023-02-25 23:20:45 +02:00
relrelb e98aa54599 swf: Introduce `ConvolutionFilterFlags` 2023-02-21 16:55:13 +02:00
relrelb 35ef402b95 swf: Introduce `GradientFilterFlags` 2023-02-21 16:55:13 +02:00
relrelb 1fbfd2cbbc swf: Introduce `BevelFilterFlags` 2023-02-21 16:55:13 +02:00
relrelb 1f9c940331 swf: Introduce `GlowFilterFlags` 2023-02-21 16:55:13 +02:00
relrelb 2aaf337b6a swf: Introduce `BlurFilterFlags` 2023-02-21 16:55:13 +02:00
relrelb c86cd4fa9d swf: Introduce `DropShadowFilterFlags` 2023-02-21 16:55:13 +02:00
relrelb 5a3bb33b78 swf: Cleanup `Twips2d`
* Rename it to `Point`.
* Remove unnecessary methods, such as `.get()`.
2023-02-18 17:51:02 +02:00
Nathan Adams f2acb7c230 swf: Added DoAbc2 tag 2023-02-14 08:51:45 +01:00
Nathan Adams 69f93f926e swf: Rename DoAbc to DoAbc2 2023-02-14 08:51:45 +01:00
renovate[bot] a27bd66b58 fix(deps): update rust dependency patches 2023-02-13 04:59:31 +01:00
Nathan Adams 284a58c817 avm2: Implement BitmapData.apply_filter for ColorMatrixFilter 2023-02-05 18:41:43 +01:00
nosamu 0e4db6a2c9 swf: Accept Scaleform GFx header signatures 2023-01-16 18:25:34 +01:00
renovate[bot] 630558a936 fix(deps): update rust dependencies 2023-01-10 16:37:40 +01:00
Nathan Adams cb6d72b49b wgpu: Split up gradient shader based on type and repeat 2023-01-03 03:39:13 +01:00
dependabot[bot] 5ea1076e35 build(deps): bump enum-map from 2.4.1 to 2.4.2
Bumps [enum-map](https://github.com/xfix/enum-map) from 2.4.1 to 2.4.2.
- [Release notes](https://github.com/xfix/enum-map/releases)
- [Changelog](https://github.com/xfix/enum-map/blob/master/CHANGELOG.md)
- [Commits](https://github.com/xfix/enum-map/compare/v2.4.1...v2.4.2)

---
updated-dependencies:
- dependency-name: enum-map
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-19 16:30:46 -08:00
Mike Welsh 696c9062d3 chore: Inherit cargo metadata from workspace
Use workspace inheritance added in Rust 1.64 to de-duplicate
various settings across all packages.
2022-12-16 15:53:59 -08:00
relrelb bd9078addf chore: Fix `clippy::uninlined_format_args` lints 2022-12-15 08:59:38 +02:00
Adrian Wielgosik 0861153626 swf: make Clippy happy 2022-12-03 22:18:22 +01:00
michiel2005 f4a988bdda
swf: Update link (#8650)
The original link is not working anymore so I put a link to the wayback machine in it's place that leads to the original document

Co-authored-by: Adrian Wielgosik <4729533+adrian17@users.noreply.github.com>
2022-12-01 20:29:09 +01:00
Marco Grassi ad81b3bf14 upgrade lock and toml dependencies 2022-11-26 14:04:59 -05:00
David Wendt 14f27a9e4a docs: Fix up Twips2D doctests 2022-11-23 20:45:37 -07:00
David Wendt a5a6189e61 chore: Remove empty files and outdated references 2022-11-23 20:45:37 -07:00
David Wendt 84b3162a57 chore: cargo fmt & fixes 2022-11-23 20:45:37 -07:00
Mark Richins d345523d02 Fix conflicts 2022-11-23 20:45:37 -07:00
Mark Richins 9941701b3a Fix: change twips_2d to use x and y and fix bug 2022-11-23 20:45:37 -07:00
Mark Richins 63a291ac4b Fix promblems caused by moving Twips 2022-11-23 20:45:37 -07:00
Mark Richins ca6c98785a Rename Twips2d.rs to twips_2d.rs 2022-11-23 20:45:37 -07:00
Mark Richins 331fd09953 Remove struct Twips from types.rs 2022-11-23 20:45:37 -07:00
Mark Richins 53df2bc8f5 add code to Twips2d.rs
TODO: redo comments
2022-11-23 20:45:37 -07:00
Mark Richins db4031ccc5 Create Twips2d.rs
see issue #6973
2022-11-23 20:45:37 -07:00
Moulins 2fa3d31732 Appease Clippy on nightly 2022-11-23 22:39:45 +01:00
dependabot[bot] 25664778f3 build(deps): bump bitstream-io from 1.5.0 to 1.6.0
Bumps [bitstream-io](https://github.com/tuffy/bitstream-io) from 1.5.0 to 1.6.0.
- [Release notes](https://github.com/tuffy/bitstream-io/releases)
- [Commits](https://github.com/tuffy/bitstream-io/compare/v1.5.0...v1.6.0)

---
updated-dependencies:
- dependency-name: bitstream-io
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-21 17:16:38 -07:00
relrelb c516fef65d swf: Simplify read of `PlaceObject` tags
`tag_length` isn't really necessary since each tag is read using
a dedicated `swf::Reader`, which keeps track of the tag boundary
internally.

As a result, `tag_len` can be avoided passed around many times in
`movie_clip.rs`.
2022-11-08 00:05:41 +02:00
relrelb 89f3445d62 swf: Introduce and use `Rectangle::width()` and `Rectangle::height()` 2022-11-01 09:49:04 +02:00
relrelb ee52ce3290 tests: Expand `read_push`
Test that invalid value types are ignored.
2022-10-29 22:26:34 +03:00
relrelb c5f4f555bb avm1: Ignore unknown value type in `ActionPush`
Newest Flash Player exits on unknown value types. However, older versions
(at least FP9) just ignore them and continue to the next value.
Follow the lenient behavior in order to support more content (e.g. #8389
doesn't work on newest Flash Player).

Fixes #8389.
2022-10-29 22:26:34 +03:00
Aaron Hill 68471723b3 core: Fix clippy format string lint 2022-10-27 08:49:39 +03:00
relrelb 178bf4fe24 chore: Extract Cargo `edition` to `[workspace.package]`
This is possible since Rust 1.64.0: https://blog.rust-lang.org/2022/09/22/Rust-1.64.0.html#cargo-improvements-workspace-inheritance-and-multi-target-builds
2022-10-14 22:13:29 +03:00