Kamil Jarosz
2ef63d3a61
avm2: Implement TextField.restrict
2024-01-11 23:22:49 +01:00
Kamil Jarosz
1c15cd55b9
avm1: Implement TextField.restrict
2024-01-11 23:22:49 +01:00
Kamil Jarosz
43d4c26b77
core: Implement restrict for EditText
...
EditTextRestrict models the `restrict` property, which is used
to specify which characters the user is allowed to type.
2024-01-11 23:22:49 +01:00
Kamil Jarosz
5ece6981ce
core: Fix caret and selection rendering
...
This commit fixes issues with caret and selection rendering:
1. They had the wrong height and were rendered lower than expected
for some fonts and sizes.
2. The caret was not being rendered at all when there was no text,
but only when the text was set earlier and then deleted.
3. The selection was rendered with translate_x=-1,
which caused overlap over some glyphs.
2024-01-11 23:04:02 +01:00
Nathan Adams
6b7bca1fd6
web: Support F13..F24 keys
2024-01-11 22:40:37 +01:00
TÖRÖK Attila
078b264c19
desktop: Support F13..F24 keys
2024-01-11 22:40:37 +01:00
Nathan Adams
e993f5ce46
core: Support F13..F24 keys
2024-01-11 22:40:37 +01:00
Tom Schuster
7498ed51d8
core: Font kerning is in points not pixels
2024-01-11 21:39:17 +01:00
Tom Schuster
ae8c0148c2
core: Use sans instead of serif when missing a font
2024-01-11 10:35:47 +01:00
Kamil Jarosz
5feafb2ca3
avm1: Add support for onSetFocus & onKillFocus
...
Methods `onSetFocus` & `onKillFocus` are invoked when focus is changed
for `TextField`, `Button`, and `MovieClip`.
Multiple SWFs use these methods to listen to a focus change,
e.g. in order to implement placeholders for text fields.
2024-01-10 21:59:25 -05:00
Aaron Hill
c01ab53d2e
avm2: Stub flash.text.engine.GraphicElement
2024-01-10 21:29:33 -05:00
Aaron Hill
db623a90e8
avm2: Stub TextField.getCharBoundaries
2024-01-10 20:35:29 -05:00
Aaron Hill
57f6963133
render: Implement PixelBender Operation::Select (renamed from Loop) ( #14503 )
2024-01-11 01:04:50 +00:00
sleepycatcoding
aeedec19fa
avm2: Implement XML.normalize
2024-01-11 01:30:47 +01:00
dependabot[bot]
46f95a9522
build(deps): bump follow-redirects from 1.15.2 to 1.15.4 in /web
...
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects ) from 1.15.2 to 1.15.4.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases )
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.2...v1.15.4 )
---
updated-dependencies:
- dependency-name: follow-redirects
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-01-11 01:12:54 +01:00
Tom Schuster
629e8f89ab
tests: Add a test for optimized index access from the interpreter
2024-01-10 23:18:40 +01:00
Tom Schuster
82ce40af82
avm2: Optimize op_get_property index access on array-like
2024-01-10 23:18:40 +01:00
Tom Schuster
532279b4e6
avm2: Inline Avm2::peek
2024-01-10 23:18:40 +01:00
Nathan Adams
d89e4536b3
core: Support Japanese font defaults
2024-01-10 23:15:26 +01:00
Aaron Hill
9a96941de9
avm2: Improve Graphics.drawGraphicsData stubs
...
We now produce stubs or clearer errors for unsupported argument
combinations, instead of unclear `RustError`s
2024-01-10 01:53:27 +01:00
Tom Schuster
ba3d1bbf66
core: Don't treat known aliases as default fonts before trying to load them as device fonts
2024-01-10 00:41:31 +01:00
nosamu
4db454e933
web: Fix download link
2024-01-09 18:06:50 +01:00
Crowdin Bot
6e1e26e0e8
chore: Update translations from Crowdin
2024-01-08 23:28:34 +01:00
Tom Schuster
4db87a9643
desktop: define default fonts
2024-01-08 23:00:18 +01:00
Tom Schuster
b34d3c9ad2
core: Explicitly match and use default fonts, before loading device fonts
2024-01-08 23:00:18 +01:00
Tom Schuster
f47e15b68c
tests: Add a device font test using Tinos
2024-01-08 23:00:18 +01:00
Tom Schuster
2a2bcbbfbc
desktop: Load device fonts from system
2024-01-08 23:00:18 +01:00
Nathan Adams
7e4ac986f2
core: Add FontFace struct, for loading a Font from a file binary
2024-01-08 23:00:18 +01:00
nosamu
d97314d315
extension: Bail if postMessage event has no data
...
Fixes #14486
2024-01-08 18:30:44 +01:00
Aaron Hill
6c2e28a08f
Correctly handle zero-frame MovieClip
...
A MovieClip with zero frames can still have a child added
through ActionScript, which ticks normally.
2024-01-08 08:19:17 -05:00
Daniel Jacobs
f8219a06e0
docs: Use new location for sponsor logos
2024-01-08 00:47:12 -05:00
Daniel Jacobs
b43981f3d9
docs: Update README to point to the new logo SVG location
2024-01-08 00:47:12 -05:00
renovate[bot]
a328deab11
fix(deps): update rust dependencies
2024-01-08 02:59:04 +01:00
Aaron Hill
47db84473a
avm2: Improve handling of Stage3D profile
...
We now validate the passed in profile, and return the selected profile
from 'Context3D.profile'. We don't yet alter the available
registers/textures based on the profile.
2024-01-07 22:34:33 +01:00
Aaron Hill
3156bf31ce
avm2: Throw correct errors in Graphics.[drawPath,drawGraphicsData]
...
This is pretty straightforward, except for the fact that Flash
completely ignores the provided commands when the 'data' vector
is empty (if 'data' has even a single entry, then Flash will validate
that all of the commands have the correct amount of data to run).
One SWF that I tested relies on this behavior.
2024-01-07 19:57:47 +01:00
Tom Schuster
e0abe72da4
avm2: Stub more TextField getLine methods
2024-01-07 12:29:26 -05:00
TÖRÖK Attila
857c3af64f
ci: Allow retrying Rust tests, when also running visual tests, temporarily
...
Because of a crash in the Ubuntu 22.04 graphics drivers.
2024-01-07 05:58:13 +01:00
TÖRÖK Attila
8215ff6fbf
ci: Only check formatting and documentation on Linux
...
To speed up the rest of the runners - they were doing
duplicate work anyway.
2024-01-07 05:58:13 +01:00
TÖRÖK Attila
268a1f5d18
tests: Remove most uses of exclude_warp
...
They no longer seem necessary with cargo nextest.
2024-01-07 05:58:13 +01:00
TÖRÖK Attila
6876fe8226
ci: Switch to cargo nextest
...
- This will help avoid deadlocks with wgpu 0.18 (wgpu/#4885), as every
test is run in a separate process.
- Similarly, WARP seems to be less sensitive to hanging this way.
- Run on 4 threads at once, to overlap CPU-bound and IO-bound work.
2024-01-07 05:58:13 +01:00
nosamu
95ad0f103f
avm2: Stub flash.globalization.DateTimeFormatter
...
Closes #14577
2024-01-06 23:41:53 -05:00
Aaron Hill
b96cfed6c7
avm2: Stub TextField.getCharIndexAtPoint
2024-01-06 23:11:43 -05:00
TÖRÖK Attila
f0ed5c7211
chore: Upgrade gc-arena to 0.5.0
2024-01-06 09:45:35 +01:00
Crowdin Bot
1325181a59
chore: Update translations from Crowdin
2024-01-06 09:30:28 +01:00
Tom Schuster
c28be7bb5f
tests: Test XML attribute name handling
2024-01-06 09:16:04 +01:00
Tom Schuster
7da3411fd0
avm2: Revert XML get_property_local to using has_explicit_namespace
...
This partly reverts #13966 . No new test failure, but makes the add test
for `xml["@attr"]` pass.
2024-01-06 09:16:04 +01:00
Tom Schuster
79e0e8b2ae
avm2: XML::name() needs to mark attributes as such
2024-01-06 09:16:04 +01:00
Kamil Jarosz
47deaf50a2
core: Fix non-ASCII characters input in EditText
...
Casting the character to u8 and back to char caused some non-ASCII
non-control characters to be treated as control characters.
For instance the letter "ą" (U+0105) after casting to u8 and back
became ENQ (U+0005) which is a control character.
Some other letters worked, for instance the letter "ł" (U+0142)
became "B" (U+0042) and was not classified as a control character.
The test edittext_input was added to verify this behavior.
2024-01-05 13:03:43 -08:00
TÖRÖK Attila
217585daa8
chore: Delegate `[lints]` in `Cargo.toml` of all packages to the workspace
2024-01-05 11:28:19 +01:00
TÖRÖK Attila
60f01fd517
chore: Move lint configuration from `.cargo/config.toml` to `Cargo.toml`
...
This got stabilized in Rust 1.74.
2024-01-05 11:28:19 +01:00