Mike Welsh
e655cf0c08
web: Add Ruffle::audio_context getter
2020-11-24 16:36:33 -08:00
Mike Welsh
8db4482fcf
core: Avoid panic on truncated SWF ( fix #1583 )
2020-11-24 00:29:28 -08:00
Mike Welsh
d9ac9fa076
avm1: Array.reverse should return itself
2020-11-22 13:50:49 -08:00
Mike Welsh
7ac53be24f
avm1: Implement TextField.removeTextField
2020-11-22 01:55:46 -08:00
Mike Welsh
03ab4e28d1
chore: Bump quickxml to 0.20
2020-11-22 01:55:01 -08:00
Mike Welsh
a61d2b54ae
avm1: Implement TextField.type
2020-11-21 16:58:19 -08:00
Mike Welsh
8d78ee5172
avm1: Use f64 when calculating scale/rotation ( fix #1622 )
2020-11-21 11:39:41 -08:00
MrCheeze
5ea3814097
core: Fix issue where unloaded buttons can still trigger mouse rollout events ( close #1603 )
2020-11-21 11:36:21 -08:00
David Wendt
5d542680ae
avm1: Remove bounds checks from `ActionDefineFunction`, `ActionWith`, `ActionDefineFunction2`, and `ActionTry`.
2020-11-20 00:28:56 -08:00
David Wendt
8ff085b464
avm1: Allow execution of opcodes before the start of an action or function.
2020-11-20 00:28:56 -08:00
Mike Welsh
2d463629e2
core: Avoid borrow panic when text is removed ( fix #1580 )
2020-11-19 18:42:31 -08:00
Mike Welsh
d3265bfd60
avm1: Add allow_empty param to Activation:resolve_target_display_object
...
In some cases, the empty string path "" should resolve to the
starting clip. In other cases, it should be considered invalid.
Add a parameter to control this behavior, and set this to false
for MovieClip::hit_test to prevent `clip.hitTest("")` from
returning true.
2020-11-18 17:58:42 -08:00
Mike Welsh
4c01022a38
avm1: Allow string paths in hitTest ( fix #1559 )
2020-11-18 17:58:42 -08:00
relrelb
2e0509694c
docs: Miscellaneous spelling corrections
2020-11-12 13:34:05 -08:00
Mike Welsh
3ce8bc3c4b
avm2: Implement Math
2020-11-12 04:24:47 -08:00
Mike Welsh
b927acb2c2
avm2: trace accepts multiple arguments
2020-11-10 17:05:56 -08:00
Mike Welsh
15d0d814a7
avm1: Exclude unload clip event from continue_if_base_clip_exists
...
Unload event handlers should not halt if their clip is removed
(because it is already removed when an unload handler starts).
This will probably get cleaner if #1535 is fixed (unload clips
stay alive for one frame).
Fixes #447 .
2020-11-09 17:26:19 -08:00
Mike Welsh
3905837679
avm1: Fire initialize clip event
...
This event fires for new clips before any construct clip events.
Split the action queue up into separate priorities, giving
initialize the highest priority.
2020-11-09 10:43:18 -08:00
Mike Welsh
316bc4e920
chore: Appease clippy
2020-11-09 01:52:57 -08:00
relrelb
930d6ebe59
core: Correct MovieClip method names in error messages
...
They all were MovieClip.attachMovie probably becuase of copy-pasting.
2020-11-06 12:33:05 -08:00
David A Roberts
1a978600c6
avm1: Swap rendering order of MovieClip
...
Renders drawing API behind siblings in the same clip.
2020-11-06 12:31:56 -08:00
Nathan Adams
6c270d8c3a
core: Fix double borrow in button post_init - fixes #1450 and #1190
2020-11-03 15:15:47 -08:00
Nathan Adams
8f064eea6e
core: Strip newlines when loading editboxes that contain them and are marked singleline. This appears to be the correct behaviour - they're never stripped anywhere else but on load
2020-11-02 11:43:10 -08:00
Nathan Adams
f285c990c0
avm1: _root should be allowed in text variable bindings
2020-11-02 11:43:10 -08:00
Nathan Adams
51f986e274
core: Propagate text variable bindings when text is typed
2020-11-02 11:43:10 -08:00
Nathan Adams
3b15babec6
core: Show caret on empty edit boxes
2020-11-02 11:43:10 -08:00
Nathan Adams
a067170afd
core: Rename EditText::get_selection to ::selection
2020-11-02 11:43:10 -08:00
Nathan Adams
c520ff1f50
core: Only show carets for editable text
2020-11-02 11:43:10 -08:00
Nathan Adams
e6d39658b9
core: Change text input to be a match statement
2020-11-02 11:43:10 -08:00
Nathan Adams
8abf5a5be8
core: Limit text input to only editable text
2020-11-02 11:43:10 -08:00
Nathan Adams
e856968f75
core: Allow arrow keys in edit boxes
2020-11-02 11:43:10 -08:00
Nathan Adams
5592a6ca9d
core: Perform delete & backspace in edit boxes
2020-11-02 11:43:10 -08:00
Nathan Adams
c910824de8
core: Fix caret position in multi layout text
2020-11-02 11:43:10 -08:00
Nathan Adams
9893972710
core: Allow typing of text in edit boxes
2020-11-02 11:43:10 -08:00
Nathan Adams
881bf3789e
core: Clicking on text will place the caret at the position clicked
2020-11-02 11:43:10 -08:00
Nathan Adams
8a43eb9972
core: Display a caret when the text selection isn't a highlight
2020-11-02 11:43:10 -08:00
Nathan Adams
01c34b97f3
core: Show highlighted text in a slightly different colour (todo: background)
2020-11-02 11:43:10 -08:00
Nathan Adams
163e9fd21b
core: Clicking on (selectable) texts will make that text focused
2020-11-02 11:43:10 -08:00
Nathan Adams
1a230bda09
core: Remove focus when the focused object is removed
2020-11-02 11:43:10 -08:00
Nathan Adams
a4a2cd00b2
avm1: Implement Selection index getters & setSelection - #271
2020-11-02 11:43:10 -08:00
Nathan Adams
3f2057b53e
core: Edit boxes are always focusable, regardless of settings
2020-11-02 11:43:10 -08:00
Nathan Adams
171e23e9e1
avm1: Implement Selection.getFocus and setFocus - #271
2020-11-02 11:43:10 -08:00
Nathan Adams
efbab816e7
avm1: Implement MovieClip.focusEnabled - #263
2020-11-02 11:43:10 -08:00
Nathan Adams
b61a72166f
avm1: Stubbed out Selection - #271
2020-11-02 11:43:10 -08:00
Nathan Adams
93acb07374
core: Introduce a focus tracker, to keep track of one (and only one) focused object
2020-11-02 11:43:10 -08:00
Nathan Adams
f72310be43
core: Change the cursor to an IBeam on selectable text
2020-11-02 11:43:10 -08:00
Nathan Adams
f6b46cb615
core: Implement EditBox.selectable - #280
2020-11-02 11:43:10 -08:00
Mike Welsh
ff74f67db8
avm1: Fix Array.concat incorrectly creating arrays
2020-10-31 02:42:34 -07:00
relrelb
e74e115cd0
core: Fix bug in PcmDecoder::next
...
It looks like the mono and stereo cases were mistakenly swapped
for 8-bit sounds. This commit simply swaps them to the correct
order.
2020-10-30 12:39:57 -07:00
Mike Welsh
0f4219610d
core: Properly handle masker-inside-masker ( fix #1347 )
...
If a masker is placed inside a masker, the inner mask is inactive
and instead renders as normal art, masked by the outer mask. Properly
handle this case by only pushing new masks if we are not currently
drawing the mask stencil.
Maskee inside maskee still functions as expected. (i.e., a clip
using a mask is masked itself).
2020-10-25 20:41:31 -07:00