renovate[bot]
a0c33382bf
fix(deps): update wasm-bindgen
2023-12-04 12:08:22 +01:00
TÖRÖK Attila
82d61faa2c
avm2: Use explicitly wrapping integer arithmetic operations
2023-12-03 16:34:27 +01:00
Aaron Hill
19c3df7cb6
avm2: Perform early allocation and exposing of SimpleButton object
...
The allocated-but-unconstructed object should be set on
the parent field before we construct the 'up state' object - this
is observable by ActionScript
2023-11-30 12:49:32 -08:00
MrCheeze
9f6ab2b7c6
core: Allow default fonts to use bold/italic fonts
2023-11-30 21:04:41 +01:00
Lord-McSweeney
1ce3ec636a
avm2: Prevent `AVM1Movie`s from being moved around in the DO hierarchy
2023-11-30 07:12:37 -08:00
Lord-McSweeney
889c13f7c6
core: Remove leftover `avm2_avm1movie`
2023-11-30 07:12:37 -08:00
Lord-McSweeney
24c9f9386f
core: Resolve review comments (no functional changes)
2023-11-30 07:12:37 -08:00
Lord-McSweeney
f458a391fc
avm2: Use caller movie when creating a `Bitmap`
2023-11-30 07:12:37 -08:00
Lord-McSweeney
7e145d7c7c
core: Don't run DoABC(2) tags when the root movie is AVM1
...
KOF vs DNF relies on this.
2023-11-30 07:12:37 -08:00
Lord-McSweeney
8e1f145aba
core: Use correct movie version for `Bitmap` DOs
2023-11-30 07:12:37 -08:00
Lord-McSweeney
5c04925ebc
core/avm1: Remove usage of `context.stage` in a few places
2023-11-30 07:12:37 -08:00
Lord-McSweeney
23f7291a52
core: Immediately post-instantiate an AVM1 MovieClip being loaded by AVM2
2023-11-30 07:12:37 -08:00
Lord-McSweeney
a71bfe777c
avm2: Fix building after rebase, fix `AVM1Movie`, use `Avm2Activation::caller_movie_or_root` where appropriate
2023-11-30 07:12:37 -08:00
Lord-McSweeney
fb8bde252f
core/avm2: Hook up AVM1Movie
2023-11-30 07:12:37 -08:00
Lord-McSweeney
7eb3c3be0c
core: Remove NotAvm2 AVM2 mouse pick enum option since it is equivalent to Miss
2023-11-30 07:12:37 -08:00
Lord-McSweeney
cdbb08b4ee
core: Remove context.is_action_script_3
2023-11-30 07:12:37 -08:00
Lord-McSweeney
58f33b6b94
core: Provide global domain for loading movies without avm2_data.
2023-11-30 07:12:37 -08:00
Lord-McSweeney
6eba8a6444
core: Use current movie instead of root movie in Avm1Button.event_dispatch
2023-11-30 07:12:37 -08:00
Lord-McSweeney
2553b1acdb
core: Set movie of Stage's ChildContainer when Stage's movie is set
2023-11-30 07:12:37 -08:00
Lord-McSweeney
45f6dfdbd4
core: Remove some uses of context.swf
2023-11-30 07:12:37 -08:00
Lord-McSweeney
fd538915b3
core: Change some uses of Avm1Activation::from_stub to from_nothing
2023-11-30 07:12:37 -08:00
Lord-McSweeney
43fdd30fc1
core: Improve mouse picking for mixed AVM
2023-11-30 07:12:37 -08:00
Lord-McSweeney
9e2b49f857
core: Remove most uses of context.is_action_script_3()
2023-11-30 07:12:37 -08:00
David Wendt
6d77fea750
avm1, avm2: Convert Object to AVM values as well
2023-11-28 18:53:01 -07:00
David Wendt
204bdbf74c
avm1: Implement strict array conversion for AVM1, too.
2023-11-28 18:53:01 -07:00
Lord-McSweeney
0a4d1449fc
avm2: Implement StrictArray conversion for FLV script data
2023-11-28 18:53:01 -07:00
David Wendt
ab02e89b3b
core: FLV's Strict Array type holds values, not key/value pairs.
...
*draws a zero on the 'days since last misdocumented feature' sign*
2023-11-28 18:53:01 -07:00
renovate[bot]
6da223a875
fix(deps): update rust dependencies
2023-11-27 09:44:47 +01:00
Aaron Hill
24aa9b8fe4
avm2: Copy data for async loadCompressedTextureFromByteArray
...
The caller might modify the ByteArray immediately after the call,
so we need to copy the ByteArray.
2023-11-25 19:11:54 -08:00
TÖRÖK Attila
941f87ca8e
core/audio: Remove the now unused clip_frame parameter of start_stream
2023-11-26 03:51:28 +01:00
TÖRÖK Attila
8ce95d76fe
core/audio: Remove the now unused stream_handle parameter of start_stream
2023-11-26 03:51:28 +01:00
TÖRÖK Attila
23960883f8
core/audio: Remove the now dummy is_loading_complete
2023-11-26 03:51:28 +01:00
TÖRÖK Attila
ca8de7b791
core/avm2: Add sampledataevent to globals
2023-11-26 03:51:28 +01:00
Aaron Hill
993d8d9f9b
core: Add PlayerRuntime::{FlashPlayer, AIR} for Adobe AIR support
...
We've now had two different bug reports involving Adobe AIR
SWFs, so I'm going to go ahead and start adding a framework
for AIR support.
This commit just adds a command-line option
`--player-runtime <flash-player|air>` (defaulting to `flash-player`),
and passes it along to the `Player`. The actual value is currently
unused - in a follow-up PR, I'm going to implement namespace versioning
for AIR.
2023-11-25 19:05:51 -05:00
Aaron Hill
e0998642f6
core: Divide by 255 in blend_over calculation
...
This prevents the value from being changed when blending a
source pixel of 0x0 over a destination pixel (with alpha).
2023-11-25 22:29:30 +01:00
Lord-McSweeney
f41059a60a
avm2: Version-gate `JSON` to SWFv13 and above
2023-11-25 13:15:42 -08:00
Aaron Hill
f12f457f5d
avm2: Fix handling of public indices with nested iteration
...
This more closely aligns our code with the corresponding avmplus code.
A user-supplied index of '0' is special-cased, and we correctly
resume iteration when a public index mismatch is detected.
2023-11-25 21:34:48 +01:00
Tom Schuster
a2021cd3e2
avm2: Remove dead init_display_object fn
2023-11-25 11:38:08 -05:00
MrCheeze
5920a6426e
core: Allow Regular/Bold/Italic device fonts to be registered separately
2023-11-24 17:08:35 +01:00
Tom Schuster
96059a8e25
avm2: Implement flash.system.Security pageDomain
2023-11-23 19:55:32 +01:00
Lord-McSweeney
d3489ef1f3
avm2: Implement URLLoader for VARIABLES data format
2023-11-23 19:40:28 +01:00
sleepycatcoding
7be2eae4b8
avm2: Implement QName enumeration
2023-11-23 19:25:08 +01:00
Aaron Hill
c920ceba51
avm2: Set RUNNING_CONSTRUCT_FRAME flag inside DisplayObject ctor
...
This ensures that this flag is set regardless of whether the
object is constructed by the timeline or from ActionScript
(it was previously only set when constructed by the timeline).
2023-11-23 10:36:37 -05:00
Robin Allen
cad162121b
core: Fix MorphShape inaccuracy on complex paths ( #14089 )
...
* core: Fix MorphShape inaccuracy on complex paths
It's inaccurate to interpolate the moveTo/lineTo deltas individually
because on complex paths they're often small integers, which won't
interpolate smoothly.
Instead, interpolate absolute positions.
2023-11-21 12:41:45 +00:00
MrCheeze
d23d16cb11
avm2: Report ProgressEvent when a sound is loaded ( close #8932 )
2023-11-20 16:14:03 -08:00
Robin Allen
1ce772befa
core: fix lerp_twips sometimes being off-by-one due to FP error
2023-11-20 13:21:32 +01:00
renovate[bot]
7757d060ff
fix(deps): update rust dependencies to v2
2023-11-20 09:03:08 +01:00
Aaron Hill
92a50d37f0
avm2: Mark MovieClip as initialized in 'on_construction_complete'
...
This ensures that a re-entrant 'construct_frame' call (e.g. due
to a goto or AVM2 button) does not end up marking a MovieClip as
initialized too early.
This issue was causing us to run 'fire_init_and_complete_events' too
early, firing Loader events before we had actually finished (and
before the SWF had registered the relevant listeners).
2023-11-19 20:52:23 -05:00
Lord-McSweeney
23a65c50f2
avm2: Add `Activation::caller_movie_or_root` to default to root movie and use it
2023-11-19 11:50:50 -08:00
Lord-McSweeney
5be2eb499a
avm1: Copy `Activation`'s local register set when running a `catch`
2023-11-19 10:15:36 -08:00