Crowdin Bot
9651a19387
chore: Update translations from Crowdin
2024-09-17 12:59:48 +02:00
Lord-McSweeney
4fd9dc45c5
chore: appease clippy
2024-09-16 16:33:49 -07:00
Lord-McSweeney
ae956eb10f
avm2: Avoid unnecessary Gc allocation for `PropertyClass::Name`
2024-09-16 16:33:49 -07:00
Lord-McSweeney
ed9b250d0a
avm2: Correctly differentiate between Any and null Multiname
2024-09-16 16:33:49 -07:00
Lord-McSweeney
6a9f4b665a
avm2: Add warning comment to `handle_input_multiname`
2024-09-16 16:33:49 -07:00
Adrian Wielgosik
4ab0910bff
core: Optimize BMD.fillRect()
2024-09-16 21:06:43 +02:00
Mads Marquart
a3d58f0815
chore: Make macOS specific things also work on iOS
2024-09-16 21:03:57 +02:00
Aaron Hill
514b5ad774
core: Replace `on_exit_frame` with iteration over Loaders
...
This removes the need to traverse the entire display object tree -
we instead just try to fire events (when ready) on corresponding
`MovieClip`s for our `Loader::Movie` instances
2024-09-15 18:10:46 -04:00
Yaman Kassir
c457fba947
core: Strip BOM in URLLoader text data ( #17513 )
2024-09-15 17:39:52 +00:00
Aaron Hill
6898485466
avm2: Use RefLock for BytecodeMethod.verified_info
2024-09-14 20:25:37 -04:00
wsxarcher
7d1373368b
core,web: Add the ability to load TTF/OTF/OTC as default fonts for the extension
2024-09-13 22:22:38 +02:00
Moulins
e6e92dd175
avm2: Also use avmplus' qsort in `Vector.sort`
...
This was forgotten in #17846 .
2024-09-13 21:29:43 +02:00
Kamil Jarosz
cbb1af7825
core: Use proper sandbox type per SWF
...
It's the first step of implementing the security sandbox and its
filesystem/network separation policy.
Before that Ruffle assigned `localTrusted` sandbox type for
all movies except web, where `remote` was used.
The sandbox type also was assigned to the player,
and not SWFs as it should.
This patch does not introduce any sandbox policies based
on the sandbox type, just the proper sandbox type detection.
It is also not possible to specify trusted movies,
and AIR applications don't use the `application` type yet.
2024-09-13 17:30:31 +02:00
Kamil Jarosz
41446f07d8
core: Add SandboxType::Application for AIR apps
2024-09-13 17:30:31 +02:00
Kamil Jarosz
6053fc586d
core: Move SandboxType from avm1 to sandbox module
2024-09-13 17:30:31 +02:00
Lord-McSweeney
f1da1457eb
avm2: Return actual VerifyErrors for constant pool errors
...
This requires passing around an Activation
2024-09-12 16:45:51 -07:00
TÖRÖK Attila
131ec73782
chore: Bump `jpegxr`, `coreaudio-sys` and `bindgen` dependencies
...
Thereby dropping `which`, `lazycell`, and a duplicated `itertools` version.
2024-09-12 16:48:52 +02:00
Moulins
725d887ceb
avm2: replace Rust's sort by avmplus' for `Array` sorts; unblocks #17812
...
Replace the use of Rust's standard sort in `Array.sort` and `sortOn` by
a port of avmplus' QuickSort algorithm. This avoid panics on Rust >=1.81
when `Array.sort` is called with a non-Ord comparison function, and will
always produce the same result as Flash Player.
2024-09-11 21:58:34 +02:00
Lord-McSweeney
42b44901fc
avm2: Add `get_ascii_char` to `AvmStringInterner` and use it
2024-09-11 11:31:58 -07:00
Lord-McSweeney
b3769aa6f2
avm2: Use interned "*" character in `PropertyClass::get_name` and `Multiname::to_qualified_name_or_star`
2024-09-11 09:33:51 -07:00
Lord-McSweeney
3438966a04
avm2: Add `any` field to `CommonMultinames` and use it
...
This should reduce Gc allocations when loading multiname index 0 from the cpool
2024-09-11 09:33:51 -07:00
Lord-McSweeney
4a43ec0548
avm2: Put some more Multinames behind a Gc
2024-09-11 09:33:51 -07:00
TÖRÖK Attila
490c02bb58
core,desktop: Update to `winit` `v0.30.5` and latest `egui` from git
2024-09-11 13:24:14 +02:00
Lord-McSweeney
0adbf65490
avm2: Remove "Display object container has no child with name" warning
2024-09-10 22:46:42 -07:00
Lord-McSweeney
c9a994fb47
core: Remove "Registering export for non-movie clip" warning log
2024-09-10 22:46:42 -07:00
Adrian Wielgosik
aded790672
xml: Cache regex in custom_unescape
2024-09-10 18:04:25 +02:00
Adrian Wielgosik
176b70b1cd
avm2: Cache method body index on Method
2024-09-09 23:45:33 +02:00
Lord-McSweeney
ee996cd433
avm2: Use SystemClassDefs to look up builtin classes in a few more places
2024-09-08 14:46:28 -07:00
Lord-McSweeney
96a8fe65b3
avm2: Move some graphics classes from SystemClasses to SystemClassDefs
2024-09-08 14:46:28 -07:00
Aaron Hill
51f004f171
core: Allow clicking on a non-interactive AVM2 child of a Loader
2024-09-08 12:01:49 -04:00
Mestery
b616f559e7
avm2: Stub desktop AIR APIs
2024-09-08 10:38:54 +02:00
Adrian Wielgosik
7d07eb2b52
avm2: Skip attempting to serialize methods
2024-09-07 13:36:25 +02:00
Tom Schuster
9fb669a343
avm2: Implement Date using ActionScript
2024-09-06 17:32:00 +02:00
TÖRÖK Attila
b4c1f57f25
core: fix: Revert an accidental condition negation in AVM2 stub reporting
2024-09-06 07:24:59 -07:00
Crowdin Bot
92686b10b2
chore: Update translations from Crowdin
2024-09-06 09:02:25 +02:00
Moulins
5550443fdb
avm2: Do not allocate for `Namespace::any()`
...
`Namespace` now holds a `Option<Gc<_>>` internally, with `None`
representing the Any namespace.
2024-09-05 19:23:09 +02:00
TÖRÖK Attila
9e18f66125
chore: Bump `rust-flash-lso` dependency to latest `master`
...
To pull in https://github.com/ruffle-rs/rust-flash-lso/pull/66 .
2024-09-05 13:43:38 +02:00
Kamil Jarosz
8dac02bf95
chore: Fix clippy errors on beta
2024-09-05 08:14:14 +02:00
Lord-McSweeney
2e4085fcb3
avm2: Test for namespace in E4X equality check
2024-09-04 14:00:38 -07:00
Lord-McSweeney
243c6b8ba5
avm2: Remove redundant traits parameter of VTable::init_vtable
2024-09-04 14:00:38 -07:00
Lord-McSweeney
8d25be4639
avm2: Some fixes to Vector.concat
...
- Properly error when passing non-Objects to Vector.concat
- Implement SWFv10 behavior
- Properly error when appending Vector.<A> to Vector.<B> where A and B are both subclasses of Object
2024-09-04 14:00:38 -07:00
Kamil Jarosz
a80a0ab525
core: Fix failing doctests
2024-09-04 22:28:12 +02:00
Nathan Adams
0fb5640e5d
core: Truncate socket host by null bytes
2024-09-04 21:48:22 +02:00
TÖRÖK Attila
1b17cbb9b9
core: Recompute next tick time of timers when they are reset
2024-09-04 21:18:50 +02:00
Crowdin Bot
5efe609dbc
chore: Update translations from Crowdin
2024-09-03 17:44:43 +02:00
dependabot[bot]
2006171721
build(deps): bump the cargo-minor group with 4 updates
...
Bumps the cargo-minor group with 4 updates: [bytemuck](https://github.com/Lokathor/bytemuck ), [tokio](https://github.com/tokio-rs/tokio ), [indexmap](https://github.com/indexmap-rs/indexmap ) and [syn](https://github.com/dtolnay/syn ).
Updates `bytemuck` from 1.17.0 to 1.17.1
- [Changelog](https://github.com/Lokathor/bytemuck/blob/main/changelog.md )
- [Commits](https://github.com/Lokathor/bytemuck/compare/v1.17.0...v1.17.1 )
Updates `tokio` from 1.39.3 to 1.40.0
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.39.3...tokio-1.40.0 )
Updates `indexmap` from 2.4.0 to 2.5.0
- [Changelog](https://github.com/indexmap-rs/indexmap/blob/master/RELEASES.md )
- [Commits](https://github.com/indexmap-rs/indexmap/compare/2.4.0...2.5.0 )
Updates `syn` from 2.0.76 to 2.0.77
- [Release notes](https://github.com/dtolnay/syn/releases )
- [Commits](https://github.com/dtolnay/syn/compare/2.0.76...2.0.77 )
---
updated-dependencies:
- dependency-name: bytemuck
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: cargo-minor
- dependency-name: tokio
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: cargo-minor
- dependency-name: indexmap
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
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-09-02 15:21:27 +02:00
Tom Schuster
7de9135a3b
avm2: Throw special XML parsing error for empty namespace prefixes
2024-09-02 08:25:50 +02:00
TÖRÖK Attila
52eb5d6614
avm2: Add new feature tracy_avm, which emits tracy spans for AVM2 methods
2024-09-02 02:19:15 +02:00
Aaron Hill
a889bd85e5
avm2: Make Sprite.startDrag/stopDrag available to SWF 9
...
The versioning in playerglobal is incorrect - Flash Player
actually exposes this to SWF 9
2024-09-01 17:22:40 -04:00
Kamil Jarosz
898db260a3
core: Add support for wider range of key codes
...
This patch changes the definition of KeyCode from an enum,
which was constraining the possible key codes, to a struct with
a u32 field, which covers all possible cases of a key code.
Key codes in Flash are not related to the physical buttons,
but rather to logical button values.
For instance, typing a non-ASCII key produces a key code related
to that character, and using a non-ANSI keyboard or a layout different
from US QWERTY also produces results matching that assumption.
2024-09-01 21:02:34 +02:00