Commit Graph

10914 Commits

Author SHA1 Message Date
Nathan Adams 81efa01991 web: Enable clicking on demo file label 2023-11-21 19:39:01 +01:00
Nathan Adams 1b39bdcd0b web: Use 'x as y' instead of '<y>x' 2023-11-21 19:39:01 +01:00
Nathan Adams 549f017794 web: Rename demo 'main' to 'playerContainer' 2023-11-21 19:39:01 +01:00
Nathan Adams c0ab99f6ee web: Add option to hide the url input (forced on right now) 2023-11-21 19:39:01 +01:00
Nathan Adams 151b209f5d web: Disable overlay when debugging demo 2023-11-21 19:39:01 +01:00
Nathan Adams 20bd980189 web: Copy extension player restyling to demo 2023-11-21 19:39:01 +01:00
Nathan Adams cf9d99f3fb web: Convert demo to typescript 2023-11-21 19:39:01 +01:00
Nathan Adams 5c6b544a11 web: Disallow const enums 2023-11-21 19:39:01 +01:00
Nathan Adams 770b671bc5 web: PublicAPI.negotiate's prevRuffle argument is optional 2023-11-21 19:39:01 +01: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
renovate[bot] 2a83274c7f fix(deps): update rust dependencies 2023-11-19 21:09:42 -05: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
sleepycatcoding a78a67ee24 avm2: Implement [[HasProperty]] for XMLList 2023-11-16 16:09:37 -05:00
Daniel Jacobs 117a4ea0bf avm2: Add ContextMenu clipboard related properties 2023-11-16 15:53:10 -05:00
Daniel Jacobs 75923e5568 avm2: Make MouseEvent isRelatedPropertyInaccessible a getter/setter 2023-11-16 18:33:26 +01:00
Daniel Jacobs ffdb248872 demo/extension: Expand iPad check to work for iPadOS 13+ 2023-11-15 08:04:23 -05:00
Crowdin Bot b196c8d1bc chore: Update translations from Crowdin 2023-11-13 16:53:02 -05:00
Nathan Adams 3a55b3a5fc tests: Clean up main method a bit 2023-11-13 22:28:10 +01:00
Nathan Adams d6f16b0be5 tests: Make tests use a virtual filesystem, which currently maps to the regular physical FS rooted in a test directory 2023-11-13 22:28:10 +01:00
Tom Schuster c7a1e1178a avm2: TLF GroupElement tests 2023-11-13 21:59:29 +01:00
Tom Schuster 1e5e80aa2c avm2: GroupElement TLF improvements 2023-11-13 21:59:29 +01:00
Fancy2209 c4d0084809
docs: Make Readme.md reflect the current state of Ruffle (#13956)
* Ruffle is neither a POC nor missing ActionScript the Third anymore

* "...by any means. Please report any issues..."

* More Phrasing Updates.
2023-11-13 20:22:59 +00:00
Nathan Adams 54fae4fd5b web: Fix enter key's keyCode, + test 2023-11-13 21:08:38 +01:00
Nathan Adams 0f579ced38 web: Add getTraceOutput util 2023-11-13 21:08:38 +01:00
Nathan Adams 88d5177653 web: Await the player loading in jsApiBefore 2023-11-13 21:08:38 +01:00
Nathan Adams 7c5c4576cc web: Actually respect the swf url in jsApiBefore 2023-11-13 21:08:38 +01:00
Nathan Adams f2b02acf44 chore: Appease clippy-beta 2023-11-13 20:26:50 +01:00
renovate[bot] 32c65e6460 fix(deps): update rust dependencies 2023-11-13 09:10:26 +01:00
TÖRÖK Attila 11c5a68452 avm2: nit: Fix typo: explict_namespace -> explicit_namespace
Spotted by @Lord-McSweeney.
2023-11-12 14:58:32 -08:00
TÖRÖK Attila 660cdd9477 core: nit: Fixed a typo and a double space in comments. 2023-11-12 14:58:32 -08:00
Aaron Hill 1501a858f6 avm2: Improve E4XNode::matches_name
Avmplus constructs a full `QName`, and uses the normal
Multiname matching logic. This would be a large refactor,
so I've just modified the existing method to properly
handle multiple namespaces.

I've also included a closely related fix - we should only treat
a multiname with the literal local name "@foo" as an attribute
when the namespace is the empty public namespace. We were incorrectly
reparsing multinames that contained multiple namespaces.
2023-11-12 17:38:56 -05:00
Tom Schuster 451e4bad10 amv2: Simplify XmlObject get_enumerant_name 2023-11-12 22:03:52 +01:00
Nathan Adams 424821724f desktop: Show ruffle logo in about dialog 2023-11-12 21:42:02 +01:00
Lord-McSweeney 576c7e1b14 avm2: Add `AccessibilityImplementation.accDoDefaultAction` 2023-11-12 06:52:51 -08:00
Aaron Hill de4d58630a avm2: Add stub for Graphics uvt parameter 2023-11-12 15:19:47 +01:00
Aaron Hill c360d45729 avm2: Use 'has_own_property' to check for prop in 'resolve_definition'
If Actionscript explicitly sets the property to 'undefined', we
should still succeed.
2023-11-12 00:38:35 +01:00
Aaron Hill f04496d1f3 chore: Update ahash and self_cell
Both of these had yanked versions, and self_cell had a security advisory
2023-11-12 00:15:51 +01:00
Lord-McSweeney 3cc9915076 avm2: TLF EditTexts should not be selectable 2023-11-11 06:53:18 -08:00
Lord-McSweeney fdb2a06ad8 avm2: Fix TLF text getting cut off vertically 2023-11-11 06:53:18 -08:00
Lord-McSweeney 1bb2422595
avm2: Correctness fixes to AMF serialization (#13537)
Fixes some cases where `amf::serialize_value` returns `None`
---------

Co-authored-by: Lord-McSweeney <Lord-McSweeney@github.com>
2023-11-10 17:59:26 -08:00
Lord-McSweeney 172b76d01f avm2: `DataEvent` fixes
- `DataEvent.data` should delegate to the superclass's `TextEvent.text`
- `DataEvent.clone` implementation was wrong
2023-11-10 15:09:28 -08:00
Aaron Hill b056e12f4b avm2: Re-use same AMFValue for the same Object ptr
This preserves object identity across a serialization
round-trip. Unfortunately, we don't currently implement this
correctly in flash_lso, so I've added a stub message.

Once flash_lso is fixed, this code will start working. For now,
it just allows us to detect (via the stub) if this is actually
used by an SWF.
2023-11-10 17:52:47 -05:00
sleepycatcoding e8ccbf4e2c avm2: Support enumeration for XML objects
Previously, iterating the XML object would iterate the prototype. This broke filtering expressions on XML objects, which should work.
2023-11-10 22:50:19 +01:00
Crowdin Bot 949b294bdf chore: Update translations from Crowdin 2023-11-10 22:30:29 +01:00
Nathan Adams f03b6307a8 core: Don't invalidate when setting filters to the same value 2023-11-10 22:24:45 +01:00