Commit Graph

13009 Commits

Author SHA1 Message Date
Nathan Adams 038a714dbf desktop: Use demangling in tracy 2024-09-02 02:19:15 +02:00
Nathan Adams 2d6d4bc8f5 desktop: Update tracy and bump profiling 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
Lord-McSweeney ad0d3f8fbf avm2: Pass `arguments` to QName native initializer
avmplus test `e4x/QName/e13_3_2` now passes
2024-08-31 14:22:12 -07:00
Lord-McSweeney b4b9c75118 avm2: Rename native instance initializer to super initializer 2024-08-31 14:22:12 -07:00
Lord-McSweeney fc820b7710 avm2: Make several slot operations faster
- `get_slot` and `set_slot_no_coerce` now panic instead of returning Err
- `get_slot` is now inlined
2024-08-31 13:16:05 -07:00
Lord-McSweeney 7214440418 avm2: Switch `ScriptObjectData.slots` from `RefLock<Vec<Value>>` to `Vec<Lock<Value>>` 2024-08-31 13:16:05 -07:00
Lord-McSweeney 52e8534aba avm2: Ensure global object always has correct vtable 2024-08-31 13:16:05 -07:00
MartySVK ea85dd6dfc avm2: Added missing `[API()]` to variables from the list 2024-08-31 21:05:29 +02:00
Crowdin Bot 556fd7306d chore: Update translations from Crowdin 2024-08-31 11:49:48 +02:00
Tom Schuster 2fd8f600bc avm2: Correctly set XML attribute with namespace 2024-08-31 00:35:12 +02:00
Tom Schuster 795fa0df27 avm2: Throw special XML parsing error for unmatched end tag at the root level 2024-08-31 00:20:01 +02:00
oad 9505da8438
core: use char slicing instead of byte slicing (#17686)
* core: use char slicing instead of byte slicing (close #17675)

Fix a panic which can occur when pasting non-ASCII characters into a
textbox. Use char slicing instead of byte slicing when limiting the
length of the text being pasted in. This fixes issue #17675.

* tests: Add test for issue 17675

* tests: fix incorrect output in test "avm2/issue_17675"

The output expected the text to be pasted at the end, even though it
will be pasted at the beginning, which is the correct behaviour here.

* core: use char length instead of byte length

Use char length instead of byte length for text pasting and setting the
current text selection.

* core: use WString for limiting text length and pasting text

Switch to WString from String for limiting text length and pasting text.
Done to ensure this code won't need to be fixed in the future. This does
not work properly with certain characters (e.g., 4-byte UTF-8 chars),
but that's due to how WString handles those characters.

* lint: fix clippy errors

---------

Co-authored-by: oad <48562304+oaddyk@users.noreply.github.com>
Co-authored-by: Adrian Wielgosik <adrian.wielgosik@gmail.com>
2024-08-30 23:49:50 +02:00
zhoufanjin 76ee654812 chore: fix some comments
Signed-off-by: zhoufanjin <shuangcui@live.cn>
2024-08-30 11:17:22 -04:00
Kamil Jarosz a227b51a27 desktop: Use Open URL dialog instead of rfd for opening URLs 2024-08-30 13:13:03 +02:00
Kamil Jarosz 25570ef374 desktop: Add Open URL dialog 2024-08-30 13:13:03 +02:00
Kamil Jarosz 263ef4696e frontend_utils: Replace confirm_website_navigation with navigate_to_website of NavigatorInterface
This makes it possible to implement "Open URL" dialogs asynchronously.
2024-08-30 13:13:03 +02:00
Kamil Jarosz c9839a36f5 desktop: Rename RfdNavigatorInterface to DesktopNavigatorInterface
The interface does not have to necessarily use rfd.
2024-08-30 13:13:03 +02:00
Kamil Jarosz f840b5b70a desktop: Rename event OpenURL to Open
The name OpenURL is ambiguous as it may also mean that a URL should be
opened in the browser.
2024-08-30 13:13:03 +02:00
TÖRÖK Attila 99d7cce82e chore: Bump some locked crate versions, deduplicate `nix`, move away from yanked `bytes` version 2024-08-27 17:33:15 +02:00
TÖRÖK Attila c930b0c77f chore: Update to `proc-macro-crate` `v3.2.0`, deduplicate `toml_edit` and `winnow` 2024-08-27 17:12:03 +02:00
Kamil Jarosz 713224c465 desktop: Allow only one file picker open at a time 2024-08-26 23:45:55 +02:00
Kamil Jarosz be8be123ba desktop: Move pick_file to picker.rs 2024-08-26 23:45:55 +02:00
dependabot[bot] 7931b8f051 build(deps-dev): bump typescript-eslint in /web in the npm-minor group
Bumps the npm-minor group in /web with 1 update: [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint).


Updates `typescript-eslint` from 8.2.0 to 8.3.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.3.0/packages/typescript-eslint)

---
updated-dependencies:
- dependency-name: typescript-eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-26 22:23:26 +02:00
Tom Schuster 48170bd8e6 desktop: Allow starting bookmarks from the bookmarks dialog 2024-08-26 15:08:33 +02:00
dependabot[bot] aff78a5d8e build(deps): bump the cargo-minor group across 1 directory with 8 updates
Bumps the cargo-minor group with 8 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [flate2](https://github.com/rust-lang/flate2-rs) | `1.0.31` | `1.0.33` |
| [serde](https://github.com/serde-rs/serde) | `1.0.208` | `1.0.209` |
| [bitstream-io](https://github.com/tuffy/bitstream-io) | `2.5.0` | `2.5.3` |
| [serde_json](https://github.com/serde-rs/json) | `1.0.125` | `1.0.127` |
| [quote](https://github.com/dtolnay/quote) | `1.0.36` | `1.0.37` |
| [syn](https://github.com/dtolnay/syn) | `2.0.75` | `2.0.76` |
| [zip](https://github.com/zip-rs/zip2) | `2.1.6` | `2.2.0` |
| [reqwest](https://github.com/seanmonstar/reqwest) | `0.12.6` | `0.12.7` |



Updates `flate2` from 1.0.31 to 1.0.33
- [Release notes](https://github.com/rust-lang/flate2-rs/releases)
- [Changelog](https://github.com/rust-lang/flate2-rs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/flate2-rs/compare/1.0.31...1.0.33)

Updates `serde` from 1.0.208 to 1.0.209
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.208...v1.0.209)

Updates `bitstream-io` from 2.5.0 to 2.5.3
- [Commits](https://github.com/tuffy/bitstream-io/compare/v2.5.0...v2.5.3)

Updates `serde_json` from 1.0.125 to 1.0.127
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/1.0.125...1.0.127)

Updates `quote` from 1.0.36 to 1.0.37
- [Release notes](https://github.com/dtolnay/quote/releases)
- [Commits](https://github.com/dtolnay/quote/compare/1.0.36...1.0.37)

Updates `syn` from 2.0.75 to 2.0.76
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](https://github.com/dtolnay/syn/compare/2.0.75...2.0.76)

Updates `zip` from 2.1.6 to 2.2.0
- [Release notes](https://github.com/zip-rs/zip2/releases)
- [Changelog](https://github.com/zip-rs/zip2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zip-rs/zip2/compare/v2.1.6...v2.2.0)

Updates `reqwest` from 0.12.6 to 0.12.7
- [Release notes](https://github.com/seanmonstar/reqwest/releases)
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.12.6...v0.12.7)

---
updated-dependencies:
- dependency-name: flate2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
- dependency-name: bitstream-io
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
- dependency-name: quote
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
- dependency-name: syn
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
- dependency-name: zip
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-minor
- dependency-name: reqwest
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-26 14:04:51 +02:00
dependabot[bot] 1e7b0dfa41 build(deps): bump KSXGitHub/github-actions-deploy-aur
Bumps [KSXGitHub/github-actions-deploy-aur](https://github.com/ksxgithub/github-actions-deploy-aur) from 2.7.2 to 3.0.0.
- [Release notes](https://github.com/ksxgithub/github-actions-deploy-aur/releases)
- [Commits](https://github.com/ksxgithub/github-actions-deploy-aur/compare/v2.7.2...v3.0.0)

---
updated-dependencies:
- dependency-name: KSXGitHub/github-actions-deploy-aur
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-26 13:46:57 +02:00
dependabot[bot] 136412c966 build(deps-dev): bump the npm-minor group in /web with 12 updates
Bumps the npm-minor group in /web with 12 updates:

| Package | From | To |
| --- | --- | --- |
| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.9.0` | `9.9.1` |
| [@wdio/browserstack-service](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-browserstack-service) | `9.0.4` | `9.0.7` |
| [@wdio/mocha-framework](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-mocha-framework) | `9.0.4` | `9.0.6` |
| [@wdio/spec-reporter](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-spec-reporter) | `9.0.4` | `9.0.7` |
| [eslint](https://github.com/eslint/eslint) | `9.9.0` | `9.9.1` |
| [eslint-plugin-react-refresh](https://github.com/ArnaudBarre/eslint-plugin-react-refresh) | `0.4.9` | `0.4.11` |
| [tsx](https://github.com/privatenumber/tsx) | `4.17.0` | `4.18.0` |
| [webpack](https://github.com/webpack/webpack) | `5.93.0` | `5.94.0` |
| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `18.3.3` | `18.3.4` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `5.4.1` | `5.4.2` |
| [axios](https://github.com/axios/axios) | `1.7.4` | `1.7.5` |
| [@types/chai](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/chai) | `4.3.17` | `4.3.18` |


Updates `@eslint/js` from 9.9.0 to 9.9.1
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/commits/v9.9.1/packages/js)

Updates `@wdio/browserstack-service` from 9.0.4 to 9.0.7
- [Release notes](https://github.com/webdriverio/webdriverio/releases)
- [Changelog](https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md)
- [Commits](https://github.com/webdriverio/webdriverio/commits/v9.0.7/packages/wdio-browserstack-service)

Updates `@wdio/mocha-framework` from 9.0.4 to 9.0.6
- [Release notes](https://github.com/webdriverio/webdriverio/releases)
- [Changelog](https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md)
- [Commits](https://github.com/webdriverio/webdriverio/commits/v9.0.6/packages/wdio-mocha-framework)

Updates `@wdio/spec-reporter` from 9.0.4 to 9.0.7
- [Release notes](https://github.com/webdriverio/webdriverio/releases)
- [Changelog](https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md)
- [Commits](https://github.com/webdriverio/webdriverio/commits/v9.0.7/packages/wdio-spec-reporter)

Updates `eslint` from 9.9.0 to 9.9.1
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.9.0...v9.9.1)

Updates `eslint-plugin-react-refresh` from 0.4.9 to 0.4.11
- [Release notes](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/releases)
- [Changelog](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/compare/v0.4.9...v0.4.11)

Updates `tsx` from 4.17.0 to 4.18.0
- [Release notes](https://github.com/privatenumber/tsx/releases)
- [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs)
- [Commits](https://github.com/privatenumber/tsx/compare/v4.17.0...v4.18.0)

Updates `webpack` from 5.93.0 to 5.94.0
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.93.0...v5.94.0)

Updates `@types/react` from 18.3.3 to 18.3.4
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

Updates `vite` from 5.4.1 to 5.4.2
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.4.2/packages/vite)

Updates `axios` from 1.7.4 to 1.7.5
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.7.4...v1.7.5)

Updates `@types/chai` from 4.3.17 to 4.3.18
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/chai)

---
updated-dependencies:
- dependency-name: "@eslint/js"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor
- dependency-name: "@wdio/browserstack-service"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor
- dependency-name: "@wdio/mocha-framework"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor
- dependency-name: "@wdio/spec-reporter"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor
- dependency-name: eslint-plugin-react-refresh
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor
- dependency-name: tsx
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-minor
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-minor
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor
- dependency-name: vite
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor
- dependency-name: axios
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor
- dependency-name: "@types/chai"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-26 13:29:59 +02:00
dependabot[bot] 1344fe5f90 build(deps): bump wasm-bindgen-futures in the wasm-bindgen group
Bumps the wasm-bindgen group with 1 update: [wasm-bindgen-futures](https://github.com/rustwasm/wasm-bindgen).


Updates `wasm-bindgen-futures` from 0.4.42 to 0.4.43
- [Release notes](https://github.com/rustwasm/wasm-bindgen/releases)
- [Changelog](https://github.com/rustwasm/wasm-bindgen/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rustwasm/wasm-bindgen/commits)

---
updated-dependencies:
- dependency-name: wasm-bindgen-futures
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: wasm-bindgen
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-26 13:14:35 +02:00
Tom Schuster 7b4d68808c tests: Two more XML delete tests now pass 2024-08-26 12:57:47 +02:00
Tom Schuster 102e58b551 avm2: Throw when using delete with XMLList operand (name) 2024-08-26 12:57:47 +02:00
Tom Schuster a4f03173c2 avm2: Make XML [[Delete]] follow the spec more closely 2024-08-26 12:57:47 +02:00
Crowdin Bot c869505e88 chore: Update translations from Crowdin 2024-08-25 23:17:10 +02:00
Crowdin Bot 6fca7444b6 chore: Update translations from Crowdin 2024-08-24 23:17:43 +02:00
MartySVK 6ddc28edc4 avm2: Added all missing [API()] to classes from the list 2024-08-24 21:27:18 +02:00
TÖRÖK Attila ce3026701e ci: Grant write permission for contents to nightly web build job 2024-08-24 17:07:35 +02:00
Daniel Jacobs 17744e4ac3 ci: Fix permissions to remove unknown key 2024-08-23 22:12:09 -04:00
Crowdin Bot bfd43297be chore: Update translations from Crowdin 2024-08-24 00:52:55 +02:00
sleepycatcoding c047358ab5 desktop: Change fullscreen fscommand to use event loop events
Previously the fullscreen state was set on the window directly causing a desync with the rest of the player code.
2024-08-23 21:17:25 +02:00
Daniel Jacobs d17b29c165 ci: Further restrict GITHUB_TOKEN permissions 2024-08-23 12:15:48 -04:00
Daniel Jacobs d875015e12 ci: Set most GITHUB_TOKEN permissions back to defaults 2024-08-23 12:15:48 -04:00
Kamil Jarosz 9f8b89168c chore: Move rfd dependency to workspace
This makes sure there's only one version of rfd
used and fixes Flatpak compilation issues.
2024-08-22 12:22:12 +02:00
Tom Schuster a10b31b118 avm2: For AIR report the correct OS in flash.system.Capabilities 2024-08-21 23:16:19 +02:00
crumblingstatue 73919c71c0
core: Make some avm1 object properties editable in debug ui (#17279) 2024-08-21 21:04:58 +00:00
rwv 1098a7da1e chore: generate provenance statements for nightly npm package
See Also: https://docs.npmjs.com/generating-provenance-statements#about-npm-provenance
2024-08-21 22:49:19 +02:00
Yaman Kassir 6d2644ed48
avm2: support CSS comments and fix whitespace issues (#17502) 2024-08-21 20:34:03 +00:00
Tom Schuster 1a853af7e1 tests: Now passing from_avmplus/e4x/XMLList/e13_5_4_11 2024-08-21 22:18:29 +02:00
Tom Schuster 130430e805 avm2: XMLList needs to override has_own_property_string to handle
attributes
2024-08-21 22:18:29 +02:00
Tom Schuster 242c7a64a3 tests: Mark XML test as passing 2024-08-21 20:51:52 +02:00