Commit Graph

12551 Commits

Author SHA1 Message Date
Polo da4eccfc68 avm2: Implement AuthenticationMethod 2024-07-06 22:23:00 +02:00
Polo e015695f47 avm2: Implement NetStreamAppendBytesAction 2024-07-06 22:23:00 +02:00
Polo 430c799e9d avm2: API versioning added for NetStreamPlayTransitions 2024-07-06 22:23:00 +02:00
Polo 3f0c693793 avm2: Implement NetStreamPlayTransitions 2024-07-06 22:23:00 +02:00
Kamil Jarosz 9d7629e486 tests: Add avm2/edittext_mouse_selection test
This test verifies the behavior of selecting text using mouse.
It takes into account normal, word, and line selection.
Example use cases covered by this test:
1. selecting characters,
2. selecting words by double-clicking,
3. selecting multiple words by double-clicking and dragging,
4. selecting lines by triple-clicking,
5. selecting multiple lines by triple-clicking and dragging,
6. double-clicking at word boundaries,
7. double-clicking between spaces,
8. changing the underlying text while clicking and dragging,
9. trying to select while the text field is not selectable.
2024-07-06 18:32:10 +02:00
Kamil Jarosz 594201adc8 text: Implement double/triple click selection
This patch implements selecting words by double-clicking and
selecting lines by triple-clicking.
It also includes support for selecting words and lines while dragging.
2024-07-06 18:32:10 +02:00
Kamil Jarosz dc4ea60d13 text: Add TODO related to opening links 2024-07-06 18:32:10 +02:00
Kamil Jarosz d770422724 core: Calculate click index when not supplied 2024-07-06 18:32:10 +02:00
Kamil Jarosz 44f222a611 tests: Add click index to AutomatedEvent::MouseDown 2024-07-06 18:32:10 +02:00
Kamil Jarosz 9f9d462381 core: Add click index to PlayerEvent::MouseDown 2024-07-06 18:32:10 +02:00
Kamil Jarosz 9188005820 core: Add click index to ClipEvent::Press 2024-07-06 18:32:10 +02:00
Daniel Jacobs a5a9ef9a03 extension: Don't register 4399 content script if Ruffle is disabled 2024-07-06 12:55:37 +02:00
Nathan Adams f8cba925c3 core: Update flash-lso, removes cookie-factory 2024-07-06 12:27:26 +02:00
TÖRÖK Attila 5fb04101e1 web: Fix all context menu items appearing disabled 2024-07-05 17:10:54 +02:00
TÖRÖK Attila fd89aa173d chore: Bump `httparse` to `v1.9.4` 2024-07-05 02:18:15 +02:00
dependabot[bot] 26ee124eb7 build(deps): bump the cargo-minor group across 1 directory with 2 updates
Bumps the cargo-minor group with 2 updates in the / directory: [ttf-parser](https://github.com/RazrFalcon/ttf-parser) and [fontdb](https://github.com/RazrFalcon/fontdb).


Updates `ttf-parser` from 0.21.1 to 0.24.0
- [Changelog](https://github.com/RazrFalcon/ttf-parser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RazrFalcon/ttf-parser/compare/v0.21.1...v0.24.0)

Updates `fontdb` from 0.18.0 to 0.20.0
- [Changelog](https://github.com/RazrFalcon/fontdb/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RazrFalcon/fontdb/compare/v0.18.0...v0.20.0)

---
updated-dependencies:
- dependency-name: ttf-parser
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-minor
- dependency-name: fontdb
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-05 01:41:48 +02:00
Crowdin Bot 23b7810a07 chore: Update translations from Crowdin 2024-07-04 23:11:43 +02:00
Tom Schuster 2dda941ecf tests: Test AMF serialization of dynamic Proxy 2024-07-04 18:43:01 +02:00
Tom Schuster 7884a35e87 avm2: Properly enumerate Proxy objects for AMF serialization
Fixes #16931:
2024-07-04 18:43:01 +02:00
Nathan Adams d0a37b3b61 web: More error cleanup, remove the indirection of errors through an enum 2024-07-04 13:39:06 +02:00
Nathan Adams e67cc08da5 web: Remove ruffleIndexError as a global thing on Error, make our own Error classes 2024-07-04 13:39:06 +02:00
Nathan Adams a8b146df3e web: Move PanicError enum to its own file 2024-07-04 13:39:06 +02:00
Nathan Adams b254b19be2 web: Remove PanicError.JavascriptConfiguration from rust loading - doesn't happen anymore 2024-07-04 13:39:06 +02:00
Nathan Adams 20a8d7be8a web: Move the actual creation of panic error/actions into panic.tsx 2024-07-04 13:39:06 +02:00
Nathan Adams 5ebf876348 web: Move the creation of the github report url to panic.tsx 2024-07-04 13:39:06 +02:00
Nathan Adams f96ca66f82 web: Simplify the actual creation of the panic screen 2024-07-04 13:39:06 +02:00
Nathan Adams 1603dfb016 web: Simplify panic action links a bit, use tsx 2024-07-04 13:39:06 +02:00
Nathan Adams 024d056418 web: Move PanicLinkInfo and createErrorFooter to own file 2024-07-04 13:39:06 +02:00
Nathan Adams ff3d8744f0 web: Use tsx in ruffle-core, convert context menu to use tsx as proof of concept 2024-07-04 13:39:06 +02:00
Nathan Adams 01903f6aee web: Use 'foo as X' instead of '<X>foo' 2024-07-04 13:39:06 +02:00
TÖRÖK Attila 4dd77f903e desktop: Update `egui` to `v0.28.0` 2024-07-04 11:32:48 +02:00
Nathan Adams 02ba384245 ci: Make the crowdin PR with the rufflebuild user 2024-07-03 23:57:16 +02:00
Aaron Hill c65033aa37 avm2: Ignore errors when setting properties in amf deserializer
Flash Player *traces* any errors that occur during setting properties
on the newly-constructed object durting AMf deserialization, and
continues deserializing.
2024-07-03 17:42:02 -04:00
Crowdin Bot e9ec441ef7 chore: Update translations from Crowdin 2024-07-03 23:13:58 +02:00
Kamil Jarosz 5aaff966aa text: Render caret using lines
This patch makes the caret be drawn using lines.
This ensures that the width of the caret is always 1px.

Additionally, it improves caret positioning, so that it's closer to FP.
2024-07-03 15:09:31 +02:00
Daniel Jacobs 772518d25a extension: Switch to declarativeNetRequestWithHostAccess 2024-07-03 13:35:59 +02:00
Daniel Jacobs a6e1bb2f57 actions: Update KSXGitHub/github-actions-deploy-aur 2024-07-03 09:43:48 +02:00
Dave Nicolson 803a8c427a
docs: Make underlines between sponsor icons disappear in README.md 2024-07-02 21:58:34 +00:00
Crowdin Bot ac6f78f8a8 chore: Update translations from Crowdin 2024-07-02 23:56:16 +02:00
Kamil Jarosz 03518e5d9b tests: Add FIXME to text/auto_size/return
This test produces vastly different results compared to FP.
2024-07-02 23:40:50 +02:00
Kamil Jarosz bfbb6c6f83 tests: Add visual/edittext/edittext_border_transform test 2024-07-02 23:40:50 +02:00
Kamil Jarosz 5ed2dc1880 tests: Add visual/edittext/edittext_background_basic_scale2 test
This test verifies the basic rendering of text field's backgrounds
at zoom 200%.
2024-07-02 23:40:50 +02:00
Kamil Jarosz 289b5a72e6 tests: Add visual/edittext/edittext_background_basic test
This test verifies the basic rendering of text field's backgrounds.
2024-07-02 23:40:50 +02:00
Kamil Jarosz 111e081906 tests: Add visual/edittext/edittext_border_filters test
This test checks whether text fields with filters are rendered correctly.
2024-07-02 23:40:50 +02:00
Kamil Jarosz 465e7b4f42 tests: Add visual/edittext/edittext_border_basic_scale2 test
This test checks whether text field borders are rendered properly
at zoom 200%.
2024-07-02 23:40:50 +02:00
Kamil Jarosz ec22df0407 tests: Add visual/edittext/edittext_border_basic test
This test checks whether text field borders are rendered properly.
2024-07-02 23:40:50 +02:00
Kamil Jarosz 59c0bcf073 core: Improve EditText's border and background rendering
This patch removes the drawing used for rendering the border and
the background and renders them using primitives instead.

It provides two methods for drawing the border and the background:
* draw_device_text_box -- when device fonts are used,
* draw_text_box -- when fonts are embedded.

Updated expected images in tests as they are closer to FP now:
* text/auto_size/height,
* text/auto_size/return,
* text/auto_size/width,
* visual/shumway_acid_tests/acid_color_0.

For the test avm2/stage3d_texture it's hard to say whether the current
output is closer to FP or not, as FP renders it with a different scale.
However, I have confirmed that there exists a scale at which FP renders
the text fields exactly as Ruffle after this patch.
2024-07-02 23:40:50 +02:00
Kamil Jarosz d86d69f791 render: Implement drawing lines using canvas
This patch provides an efficient implementation of draw_line
and draw_line_rect for canvas using strokes.
2024-07-02 23:40:50 +02:00
Kamil Jarosz 2ba5e47b59 render: Implement drawing lines using WebGL
This patch provides an efficient implementation of draw_line
and draw_line_rect for WebGL using Gl::LINE_STRIP.
2024-07-02 23:40:50 +02:00
Kamil Jarosz 9ba6569a2e render: Implement drawing lines using wgpu
This patch provides an efficient implementation of draw_line
and draw_line_rect for wgpu using PrimitiveTopology::LineStrip.
2024-07-02 23:40:50 +02:00