Commit Graph

8510 Commits

Author SHA1 Message Date
Nathan Adams fc00ae8eb6 core: Load filters from PlaceObject tag 2023-02-28 16:25:12 +01:00
Nathan Adams 1408252ca3 core: Switch DisplayObjectBase::filters from avm2 objects to Vec<Filter> 2023-02-28 16:25:12 +01:00
Nathan Adams e39fbe871d render: Add Filter::GradientGlowFilter 2023-02-28 16:25:12 +01:00
Nathan Adams bb38a7fa55 render: Add Filter::GradientBevelFilter 2023-02-28 16:25:12 +01:00
Nathan Adams c8030d047d render: Add Filter::GlowFilter 2023-02-28 16:25:12 +01:00
Nathan Adams c9656c429e render: Add Filter::DropShadowFilter 2023-02-28 16:25:12 +01:00
Nathan Adams dbe2efff00 render: Add Filter::DisplacementMapFilter 2023-02-28 16:25:12 +01:00
Nathan Adams f9c7303f01 render: Add Filter::ConvolutionFilter 2023-02-28 16:25:12 +01:00
Nathan Adams 9c1f6ea129 render: Add Filter::BevelFilter 2023-02-28 16:25:12 +01:00
Nathan Adams 5ee3a4b512 avm2: Extract out the Value -> Filter logic into a trait 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
Aaron Hill 54eb6e33ca avm2: Ignore XML comments and processing instructions by default
This matches the default value of the settings on XML.
2023-02-27 15:53:39 -06:00
EmperorBale 4adb7853b7 avm2: Add concurrent classes 2023-02-27 12:27:37 -08:00
EmperorBale d166295ee1 avm2: Add Telemetry class 2023-02-27 12:13:16 -08:00
Aaron Hill 82d03b4062 avm2: Ignore XML declaration and doctype
These are completely ignored by AVM2
2023-02-27 13:41:18 -06:00
Aaron Hill c04b463f1f avm2: Implement XML.children, XMLList.children, and related methods 2023-02-27 13:25:16 -06:00
Aaron Hill 7f58b92348 avm2: Implement encodeURI and encodeURIComponent 2023-02-27 12:40:39 -06:00
Aaron Hill e970174339 ci: Don't fail the build on Nightly clippy lints
We consistently get false-positives from nightly changes,
so don't fail the build (but still print warnings).
2023-02-27 12:28:18 -06:00
Nathan Adams cfcd257932 avm2: Xml(foo) converts foo to string 2023-02-27 17:37:28 +01:00
Nathan Adams 38d1478ffa avm2: Implement Sprite.hitArea 2023-02-27 16:28:14 +01:00
relrelb b3d45bc7b0 desktop: Avoid deprecated `KeyboardInput::modifiers`
As suggested, use `WindowEvent::ModifiersChanged` instead.
2023-02-27 13:02:58 +02:00
relrelb 4e84488c6e chore: Appease clippy 2023-02-27 12:43:23 +02:00
Toad06 df309ba4cd web: Fix broken extensions 2023-02-27 12:19:13 +02:00
renovate[bot] 71e24eedba fix(deps): update rust dependencies 2023-02-27 11:48:53 +02:00
p0008874 23192b4149
i18n: Update zh-tw (#9749) 2023-02-26 23:02:10 +02:00
creeper-0910 7a029af2f4 Added translation of settings screen 2023-02-26 16:08:42 +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
Lord-McSweeney 6630222ba9
avm2: Stub flash.profiler.showRedrawRegions (#9732) 2023-02-25 19:52:45 -05:00
Aaron Hill f9fc4b3179
avm2: Store interfaces from superclases/superinterfaces in ClassObject (#9728) 2023-02-25 23:57:50 +00:00
Aaron Hill c7709dffec avm2: Handle Event::CData when parsing XML 2023-02-25 17:26:31 -06:00
Adrian Wielgosik 55c59da6ac avm2: Convert TextFormat to AS 2023-02-25 23:55:43 +01:00
Adrian Wielgosik 35120e9fdc avm2: Convert Graphics to AS 2023-02-25 23:55:43 +01:00
Adrian Wielgosik 8bdf215462 avm2: Add a test for box-then-to-bool bug 2023-02-25 23:31:17 +01:00
Adrian Wielgosik b9dc8a4d52 avm2: Do not box primitives when doing AS-level coercions 2023-02-25 23:31:17 +01:00
Adrian Wielgosik e063d5b5a8 avm2: Fix coerce_to_boolean on boxed primitives 2023-02-25 23:31:17 +01:00
Lord-McSweeney 16b724246c Remove stub mention from BitmapData 2023-02-25 23:12:39 +01:00
Lord-McSweeney f14ef0a4dd Cleanup globals.as 2023-02-25 23:12:39 +01:00
Lord-McSweeney 9c8f99e9ce Use AvmError instead of RustError when throwing argumentError in Stage. 2023-02-25 23:12:39 +01:00
Lord-McSweeney 91ae3ae31e Port Stage overrides to ActionScript
And throw IllegalOperationError s.
2023-02-25 23:12:39 +01:00
Lord-McSweeney e72a935f1b Move IllegalOperationError up so Stage can use it 2023-02-25 23:12:39 +01: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
Aaron Hill b26f2fd6fb
avm2: Initial incomplete implementation of XML (#9647) 2023-02-25 20:06:36 +00:00
creeper-0910 a36ef7fd0c Update Japanese locale files 2023-02-25 17:08:32 +02:00
relrelb 3f412a54b6 web: Wrap "comments" in `package.json` to a maximum of 100 characters per line 2023-02-25 16:18:38 +02:00
relrelb 1592d26afe web: Take advantage of npm pre & post scripts
To logically separate between WebAssembly (pre)build, TypeScript
build, and `set_version.js` postbuild.
More info at: https://docs.npmjs.com/cli/v9/using-npm/scripts#pre--post-scripts
2023-02-25 16:18:38 +02:00
relrelb f181794b46 web: Rename some scripts to improve clarity
* `build:ruffle_web` -> `build:wasm-vanilla`
* `build:ruffle_web-wasm_extensions*` -> `build:wasm-extensions*`
* `build:cargo_bindgen_opt` -> `build:wasm`
2023-02-25 16:18:38 +02:00
relrelb 17ac6c79d3 web: Reduce script duplication
By introducing the `$WASM_BINDGEN_FLAGS` and `$WASM_OPT_FLAGS`
environment variables, similarly to what already done with `$CARGO_FLAGS`.
2023-02-25 16:18:38 +02:00
relrelb 3035dd7161 web: Use `Closure::new()`
`Closure::new()` works on stable Rust since wasm-bindgen 0.2.81.
Use it in place of `Closure::wrap()` for more concise code.
2023-02-25 11:20:10 +02:00
relrelb 79cc42c739 web: Use TypeScript project references
This slightly improves TypeScript build times, and allows LSP to work
across packages without building `ruffle-core`.

Official documentation at:
https://www.typescriptlang.org/docs/handbook/project-references.html
2023-02-25 02:00:23 +02:00
Aaron Hill 9d0ab3b8c5
Merge pull request #9680 from Aaron1011/lots-of-native 2023-02-24 16:22:18 -06:00