Lord-McSweeney
8e997f0131
avm2: Optimize a GetProperty after a GetLocal0 to GetSlot or CallMethod
2024-01-29 22:48:00 -08:00
Lord-McSweeney
8d3847b216
avm2: Add default xml namespace handling opcodes since several SWFs mention them but don't actually use them
2024-01-29 22:48:00 -08:00
Lord-McSweeney
c4a3b3f49f
avm2: Implement simple Op::CoerceX optimizations
2024-01-29 22:48:00 -08:00
Lord-McSweeney
f9fb739460
avm2: Record all possible jump targets, remove Convert-B/D/I/U opcodes since those are equivalent to the corresponding CoerceX opcodes
2024-01-29 22:48:00 -08:00
Lord-McSweeney
2022321a03
avm2: Add an `Op` enum to AVM2; pre-pool double/uint/ints for `pushX` opcodes
2024-01-29 22:48:00 -08:00
Lord-McSweeney
65848104a6
avm2: Implement verifier based off Adrian's initial work
2024-01-29 22:48:00 -08:00
Daniel Jacobs
21ef5c65bf
ci: Update web workflow to use paths-filter v4
2024-01-29 23:13:25 -05:00
Daniel Jacobs
bac2256c32
ci: Update Rust workflow to use paths-filter v4
2024-01-29 23:13:25 -05:00
Aaron Hill
1cf669c75e
avm2: Convert invalid rectangle to zero rectangle in getBounds
2024-01-29 13:25:16 -05:00
Aaron Hill
f31d9bc491
avm2: Make Math.random() more closely match Flash Player
...
See the comments for details. Our previous implementation
was 'too good', and broke Bloons Tower Defense 5 by
generating `Number`s that Flash Player would never generate.
2024-01-28 22:46:19 -05:00
Fancy2209
f2880975ba
avm2: Report OS as Windows instead of Linux for now ( #14985 )
2024-01-28 22:10:54 +00:00
Aaron Hill
5b685d411f
chore: Fix nightly Clippy lints
2024-01-28 16:03:29 -05:00
Tom Schuster
40c0f90105
tests: Test all remaining FileReference properties
2024-01-28 17:14:10 +01:00
Tom Schuster
b8d8aafe89
avm2: Implement the remaining flash.net.FileReference properties
2024-01-28 17:14:10 +01:00
Nathan Adams
fcb74d8fbc
wgpu: Deduplicate common gradients from a single Mesh
2024-01-27 21:37:22 +01:00
Nathan Adams
e479d12af0
render: Make Mesh a struct, not just an alias for Vec<Draw>
2024-01-27 21:37:22 +01:00
Nathan Adams
6dac4958fb
swf: Derive Hash for Gradient and associated types
2024-01-27 21:37:22 +01:00
Nathan Adams
2d42abcb70
wgpu: Don't use max_uniform_buffer_binding_size as a limit for BufferBuilder when making meshes
2024-01-27 21:37:22 +01:00
Nathan Adams
ab404bae2a
wgpu: Remove ouroboros and typed-arena, no longer needed
2024-01-27 21:37:22 +01:00
Nathan Adams
3be2efe7cf
wgpu: Clean up DynamicTransforms, after the merge
2024-01-27 21:37:22 +01:00
Nathan Adams
c3423b86f8
wgpu: Use vertex buffer and staging belt for bevel filter
2024-01-27 21:37:22 +01:00
Nathan Adams
7e0bd48061
wgpu: Use vertex buffer and staging belt for glow filter
2024-01-27 21:37:22 +01:00
Nathan Adams
2722a6588e
wgpu: Use vertex buffer and staging belt for simple filters
2024-01-27 21:37:22 +01:00
Nathan Adams
9320de354c
wgpu: Use staging belt and single buffer for filter arguments
2024-01-27 21:37:22 +01:00
Nathan Adams
76d07faacf
wgpu: Make sync index Option<> in make_queue_sync_handle
2024-01-27 21:37:22 +01:00
Nathan Adams
f99f89122a
wgpu: Remove uniform encoder
2024-01-27 21:37:22 +01:00
Nathan Adams
de975a9727
wgpu: Merge Transforms and ColorAdjustments
2024-01-27 21:37:22 +01:00
Nathan Adams
1231d2fead
wgpu: Extract out ESTIMATED_OBJECTS_PER_CHUNK, set it to 200
2024-01-27 21:37:22 +01:00
Nathan Adams
574e83f3a3
wgpu: Use max_uniform_buffer_binding_size from adapter
2024-01-27 21:37:22 +01:00
Nathan Adams
befce41e11
wgpu: Remove push constant support - simplifies code significantly, and it should be same perf now
2024-01-27 21:37:22 +01:00
Nathan Adams
fd604b3a18
wgpu: Try using a single buffer/bindgroup for transform/colortransforms, no longer dynamically allocated
2024-01-27 21:37:22 +01:00
Nathan Adams
6824f33cc6
wgpu: Add limits to BufferBuilder (but currently not respected for Meshes)
2024-01-27 21:37:22 +01:00
Adrian Wielgosik
4981cbd89b
avm2: Avoid double lookup in setPropertyIsEnumerable
2024-01-27 16:51:17 +01:00
Nathan Adams
e778e5ed58
desktop: Fix context menu, use new approach rather than trying to hack activate egui's menu
2024-01-27 09:44:31 +01:00
Tom Schuster
941e60aef5
web: Temporary disable display_file_save_dialog to prevent panics
2024-01-27 00:41:14 +01:00
Crowdin Bot
4769a45999
chore: Update translations from Crowdin
2024-01-26 22:54:04 +01:00
arthomnix
3e82ba9a63
desktop: Allow specifying WGPU instance flags from environment
2024-01-26 22:33:18 +01:00
Tom Schuster
7a73dd0661
avm2: Only use embedded CFF fonts for TLF
2024-01-26 21:57:48 +01:00
sleepycatcoding
36fc30e283
debug_ui: Do not render container as collapsible if it has no children
2024-01-26 20:34:49 +01:00
Nathan Adams
f678d13ca8
tests: Throw an Err, not panic, in Approximations::compare
2024-01-26 18:59:06 +01:00
Nathan Adams
aee051fa45
tests: Split test running into tick/test phases. This is enough to make it work on web.
2024-01-26 18:59:06 +01:00
Nathan Adams
b6614d9705
tests: Turn Test::run() into Test::create_test_runner() - handle running externally
2024-01-26 18:59:06 +01:00
Nathan Adams
1b8d3f7392
tests: Output comparison is part of the TestRunner
2024-01-26 18:59:06 +01:00
Nathan Adams
7c4e345905
tests: Make Environment::create_renderer only make one renderer, not N amount
2024-01-26 18:59:06 +01:00
Nathan Adams
bd64ee2942
tests: Extract out Test::movie()
2024-01-26 18:59:06 +01:00
Nathan Adams
5040bf3aff
tests: Extract out a TestRunner struct
2024-01-26 18:59:06 +01:00
Moulins
ac7086528f
avm1: Implement proper behavior for Gradient***Filter array setters
...
Among other things:
- resizing `colors` should also resize `alphas` and `ratios`
- shrinking `ratios` should also shrink `colors` and `alphas`, but
growing it doesn't change the size
2024-01-26 18:40:06 +01:00
Moulins
19ff294e60
avm1: Follow FP 32 (not FP 11) behavior for ColorMatrix/ConvolutionFilter
2024-01-26 18:40:06 +01:00
Moulins
bd2165bd0f
swf: Properly read/write ConvolutionFilters; these contain f32s, not Fixed16s
2024-01-26 18:40:06 +01:00
Moulins
659917bff2
avm1: Fix inaccuracies in DisplacementMapFilter
...
- `mode` should reject non-lowercased values
- `mapPoint` should reset to `(0, 0)` when set to an invalid value
2024-01-26 18:40:06 +01:00