Commit Graph

765 Commits

Author SHA1 Message Date
Moulins d7a056df8e desktop: keep options in-sync when using `Open` or drag-and-dropping a file 2023-06-09 00:42:03 +02:00
Moulins ac69926b5e desktop: add `Ctrl+Shift+O` shortcut for `Open Advanced` 2023-06-09 00:42:03 +02:00
Moulins 08fe4a4c94 desktop: Add button to clear all movie params. in `Open Advanced` 2023-06-09 00:42:03 +02:00
Moulins 5e1716d7e8 desktop: remember `Open Advanced` options across movie loads
Makes opening the same movie repeatedly less tedious.

Note that `Open` still ignore this and will use the default options
provided on the command-line.
2023-06-09 00:42:03 +02:00
Crowdin Bot 93f5869005 chore: Update translations from Crowdin 2023-06-08 00:57:49 +02:00
Crowdin Bot 808deaa378 chore: Update translations from Crowdin 2023-06-05 09:00:51 +02:00
renovate[bot] f1fe998869 chore(deps): lock file maintenance rust dependencies 2023-06-04 22:53:18 -05:00
Crowdin Bot 9767ffca96 chore: Update translations from Crowdin 2023-06-03 15:58:24 +02:00
Nathan Adams 16ce9aa437 core: Add debug rects to debugger 2023-06-03 09:11:06 +02:00
Nathan Adams e12e2a2e54 core: Initial Debug UI 2023-06-03 09:11:06 +02:00
Adrian Wielgosik c8fc810fa6 desktop: rewrite AS3 warning popup in egui 2023-05-31 23:21:30 +02:00
Adrian Wielgosik 5d3544ddc7 desktop: Simple hack to stop ignoring egui redraws 2023-05-30 23:55:31 +02:00
Crowdin Bot 6dc3743f4b chore: Update translations from Crowdin 2023-05-30 23:21:28 +02:00
tinaun ff518b9deb use light menus on light theme & detect changes 2023-05-30 23:07:09 +02:00
Adrian Wielgosik 8d6c08df4d Desktop: Stop busy looping when idling 2023-05-29 22:51:40 +02:00
Nathan Adams d99415c644 desktop: Don't use winit workaround for File->Open, to avoid unresponsive ruffle in that case alone 2023-05-29 22:12:56 +02:00
Nathan Adams 59d917b15a desktop: Default open the Advanced Open dialog 2023-05-29 22:12:56 +02:00
Nathan Adams 0c10e2a7b7 desktop: Add advanced open dialog 2023-05-29 22:12:56 +02:00
Nathan Adams 9e9ee361c4 desktop: Pass PlayerOptions when loading swfs, defaulting to the CLI args 2023-05-29 22:12:56 +02:00
Nathan Adams a86aff07a6 desktop: Use new PlayerOptions struct for player building, not CLI args directly 2023-05-29 22:12:56 +02:00
Nathan Adams 558fea2a7c desktop: Add PlayerController:handle_event that also checks for player pause status 2023-05-29 21:23:00 +02:00
Nathan Adams 101277a32b desktop: Add suspend/resume buttons 2023-05-29 21:23:00 +02:00
renovate[bot] 847dece735 chore(deps): lock file maintenance rust dependencies 2023-05-28 23:54:33 -05:00
Aaron Hill 14c6d1d959 avm2: Implement URLRequest.requestHeaders
These are directly set on the underlying navigator's HTTP
request type, and get printed out in our test navigator backend.

No validation of the header names is performed - on web, this will be
enforced by the browser.
2023-05-28 12:07:37 -05:00
Crowdin Bot e98230c988 chore: Update translations from Crowdin 2023-05-27 00:34:44 +02:00
TÖRÖK Attila 6d76e9669c nit: Github -> GitHub 2023-05-25 10:40:47 +02:00
Nathan Adams defe4d8308 desktop: Support dropping swfs onto the player 2023-05-24 23:50:48 +02:00
Nathan Adams 3e35e7887a desktop: Add a few comments about Player related structs 2023-05-24 23:50:48 +02:00
Nathan Adams ce714b92b6 desktop: When git info is unknown, don't show it 2023-05-24 23:50:48 +02:00
Nathan Adams cd54dc3bc7 desktop: Fix crash on minimize 2023-05-24 23:50:48 +02:00
Nathan Adams 8acd3e653a desktop: Use scale factor to determine menu height 2023-05-24 23:50:48 +02:00
Nathan Adams d8bfb003c5 desktop: Switch to egui 0.22.0 2023-05-24 23:50:48 +02:00
Nathan Adams 67370b0ced desktop: Revert attempts to fix x11 crash and stop relying on inner_size 2023-05-24 23:50:48 +02:00
Nathan Adams cb87dfed7f desktop: Move backend code into a backends mod 2023-05-24 23:50:48 +02:00
Nathan Adams 12e2758464 desktop: Localise texts 2023-05-24 23:50:48 +02:00
Nathan Adams 4600dc5c78 desktop: Forcefully update egui screen_rect to attempt to solve x11 crash 2023-05-24 23:50:48 +02:00
Nathan Adams 2ab2faa24d desktop: Don't recreate surface on resize events, but when drawing and the size is different 2023-05-24 23:50:48 +02:00
Nathan Adams 5c22bcddc6 desktop: Add more links to help menu 2023-05-24 23:50:48 +02:00
Nathan Adams 1dbfa19b04 desktop: Configure the surface immediately 2023-05-24 23:50:48 +02:00
Nathan Adams d11df54291 desktop: Hide menu in fullscreen 2023-05-24 23:50:48 +02:00
Nathan Adams ee59bd006b desktop: Add close movie menu item 2023-05-24 23:50:48 +02:00
Nathan Adams 3005158311 desktop: Always show the menu bar 2023-05-24 23:50:48 +02:00
Nathan Adams 7d7edec08c desktop: Add much more info to About dialog 2023-05-24 23:50:48 +02:00
Nathan Adams 01e33d82c9 desktop: Use vergen to get version info 2023-05-24 23:50:48 +02:00
Nathan Adams f6d0fcf822 desktop: Don't allow resizing of about and open-url dialogs 2023-05-24 23:50:48 +02:00
Nathan Adams e97d32dbc7 desktop: Recreate Player for each movie, and don't start with a Player unless a movie has been specified 2023-05-24 23:50:48 +02:00
Nathan Adams df51531de6 desktop: Move Player creation into PlayerController::new 2023-05-24 23:50:48 +02:00
Nathan Adams 6257c1218f desktop: Make PlayerController.get() return an Option, and handle that 2023-05-24 23:50:48 +02:00
Nathan Adams 2de0b5e7e0 desktop: Wrap Player in a new PlayerController 2023-05-24 23:50:48 +02:00
Nathan Adams 419330ecd5 desktop: Import utils nicer in app.rs 2023-05-24 23:50:48 +02:00
Nathan Adams 73b8f80f57 desktop: Move parse_url and pick_file to util.rs 2023-05-24 23:50:48 +02:00
Nathan Adams 34b1c671a8 desktop: Move --timedemo stuff to time_demo.rs 2023-05-24 23:50:48 +02:00
Nathan Adams 91db9b1f55 desktop: Moved winit_to_ruffle_text_control, winit_to_ruffle_key_code, winit_key_to_char and get_screen_size to util.rs 2023-05-24 23:50:48 +02:00
Nathan Adams d69ffd3a46 desktop: Moved App struct to app.rs 2023-05-24 23:50:48 +02:00
Nathan Adams ff5377a8a9 desktop: Moved trace_path and parameters to Opt 2023-05-24 23:50:48 +02:00
Nathan Adams f54685d656 desktop: Move Opt into cli.rs 2023-05-24 23:50:48 +02:00
Nathan Adams 998302aa77 desktop: Made movie optional when rendering 2023-05-24 23:50:48 +02:00
Nathan Adams a3d3230baf desktop: Turn MovieView into a custom render target 2023-05-24 23:50:48 +02:00
Nathan Adams 67fed1159c desktop: Refactor gui controller into its own file 2023-05-24 23:50:48 +02:00
Nathan Adams 9e17acdb2a desktop: Refactor movie blitting into its own file 2023-05-24 23:50:48 +02:00
Nathan Adams b9322ba93a desktop: Render game separately to UI, blit both onto surface 2023-05-24 23:50:48 +02:00
Mike Welsh 5bf43f9025 desktop: Add Open URL option 2023-05-24 23:50:48 +02:00
Mike Welsh e5a874065e desktop: Switch to loaded state immediately when no SWF running 2023-05-24 23:50:48 +02:00
Mike Welsh cac83320e4 desktop: Check if egui requests a redraw 2023-05-24 23:50:48 +02:00
Mike Welsh 83c3970003 desktop: Add About screen 2023-05-24 23:50:48 +02:00
Mike Welsh 3e150360a2 desktop: Don't show file dialog on startup 2023-05-24 23:50:48 +02:00
Mike Welsh 5efcb90293 desktop: Show menubar by holding Esc 2023-05-24 23:50:48 +02:00
Mike Welsh cb8b8d264c desktop: Implement Open menu option 2023-05-24 23:50:48 +02:00
Mike Welsh 3f878cc869 desktop: Take ownership of `EventLoop` on `App::run`
Change `App::event_loop` to an `Option` that will be taken on
`App::run` so that `App::run` can continue to call methods on
`self` later.

This is a little awkward, and better might be to remove `App::new`
and make `App:run` return `Result<!, Error>,` but `!` types are
experimental.
2023-05-24 23:50:48 +02:00
Mike Welsh c00b4bf55c desktop: Initial GUI work 2023-05-24 23:50:48 +02:00
Mike Welsh ef1125f456 desktop: Add egui crates 2023-05-24 23:50:48 +02:00
nosamu 91330d4a9f desktop: Fire both KeyDown and TextControl events
Fixup for #11059, which broke left/right arrows on desktop
2023-05-22 21:24:35 +02:00
renovate[bot] 5d2477fe98 chore(deps): lock file maintenance rust dependencies 2023-05-22 19:12:08 +03:00
nosamu 7dfc36c6fc web: Support pasting from clipboard 2023-05-21 15:26:42 +02:00
nosamu ee956927b7 core: Fix TextField.maxChars handling and address other reviews 2023-05-21 15:26:42 +02:00
nosamu 4e579b7e68 core: Move left/right arrow handling to `text_control_input` 2023-05-21 15:26:42 +02:00
nosamu 0dbb4c46e4 core: Move `Delete` and `Backspace` handling to `text_control_input()`
Co-authored-by: jmckiern <jmckiern@tcd.ie>
2023-05-21 15:26:42 +02:00
nosamu fab72ac01c core: Implement handling of text control input
Co-authored-by: jmckiern <jmckiern@tcd.ie>
2023-05-21 15:26:42 +02:00
jmckiern 67d74047a9 core: Add clipboard_content getter 2023-05-21 15:26:42 +02:00
Rasmus M d15d64e86e
desktop: Add volume option to CLI 2023-05-09 06:29:46 +00:00
Nathan Adams 9c2e77c88f desktop: Use system preferred language 2023-05-09 00:06:49 +02:00
Nathan Adams 229c301e18 core: Add i18n module using Fluent 2023-05-09 00:06:49 +02:00
Kornelius Rohrschneider fe56f8d212 core: Implement suggested changes in PR to documentation & code
- Documentation has been added, improved and clarified.
- The code of a string concatenation has been improved.
2023-05-02 17:13:42 +02:00
Kornelius Rohrschneider 27738a492e web: Implement suggested changes in PR to navigate_to_url handling
The suggested changes to the navigate_to_url handling in the feedback to
the pull request have been implemented.
Therefore, this commit consists of multiple smaller changes:

1. The allow_javascript_calls variable has been removed (as a CLI
argument and in the navigator). Javascript calls are now always denied
on desktop. This is because setting the argument was useless; no
javascript was executed in any case, at most, just a browser tab opened.
Therefore, it makes no sense to include this option.
2. The NavigateWebsiteHandlingMode default value has been provisionally
changed from Confirm to Allow. In the future (after a GUI toolkit has
been added), the default confirmation windows should include a "Save
this preference" checkbox.
3. The NetworkingRestrictionMode enum has been renamed to
NetworkingAccessMode since the previous naming was counter-intuitive.
4. The NavigateWebsiteHandlingMode enum (and variables related to it)
have been renamed to OpenURLMode to simplify the name.
5. The documentation has been improved.
2023-05-02 17:13:42 +02:00
Kornelius Rohrschneider 44ef22f646 core: Add navigate_to_url call configuration options
New configuration options (changing the navigate_to_url call handling)
have been added. The default behaviour has been changed as well.

A NavigateWebsiteHandlingMode enum has been added to Ruffle (in Rust and
Typescript). It contains the values "Allow", "Confirm" and "Deny" and
describes how navigate_to_url website calls should be handled. Allow
means that all website calls are allowed, Confirm means that a
confirmation window opens with each website call and Deny means that all
website calls are denied.
A respective navigate_website_handling_mode variable has been added to
the desktop CLI and to the JS config. The default value is "Confirm" in
each. The variable is given to the navigator (ExternalNavigatorBackend
or WebNavigatorBackend, depending on the platform) and is saved in it.
On each navigate_to_url website call, the respective navigator is now
checking navigate_website_handling_mode and acts correspondingly (allows
it, opens a confirmation window or denies it).
This changes the default behaviour of Ruffle from allowing all website
calls to opening a confirmation window with each website call.
On Safari, the confirm window can cause the background music to stop,
but this seems to be an issue with Safari.
Closes #838.

Additionally, an allow_javascript_calls variable (which defaults to
false) has been added to the desktop CLI. The variable is given to the
desktop navigator and is saved in it.
If a navigate_to_url javascript call is executed on desktop, the
navigator is now checking allow_javascript_calls and acts
correspondingly (allows it or denies it).
This changes the default behaviour of Ruffle on desktop to not allowing
javascript calls.
Closes #9316.
2023-05-02 17:13:42 +02:00
Toad06 45795c9d24 desktop/web: Add a mouse enter event 2023-04-25 18:01:49 +02:00
relrelb ff7c458739 core: Accept borrowed strings in `NavigatorBackend::navigate_to_url`
This avoids some unnecessary clones.
2023-04-24 22:06:47 +03:00
nosamu 3cde3482f4 core: Add frame rate config option 2023-04-24 14:01:37 +02:00
renovate[bot] 3b3c08a354 chore(deps): lock file maintenance rust dependencies 2023-04-24 01:22:07 +02:00
nosamu 6e8929e6d0 desktop: Handle relative URLs in navigate_to_url
Fixes #10773
2023-04-22 13:57:27 +02:00
nosamu 8a15eb3c38 desktop: Fix loading relative URLs when movie URL ends in empty path segment 2023-04-05 11:42:43 -07:00
nosamu 460f0811b7 desktop: Add base URL option 2023-04-05 11:25:49 -07:00
nosamu da41f4a966 desktop: Add max execution duration option 2023-04-05 11:25:49 -07:00
renovate[bot] cd3ad90d61 chore(deps): lock file maintenance rust dependencies 2023-04-02 22:00:49 -07:00
renovate[bot] 4eaf1b21e7 chore(deps): update rust crate embed-resource to v2
Co-authored-by: Mike Welsh <mwelsh@gmail.com>
2023-04-02 21:02:33 -07:00
renovate[bot] 5052e942b5 chore(deps): lock file maintenance rust dependencies 2023-03-28 09:31:15 +03:00
renovate[bot] 7c280fc171 fix(deps): update rust dependencies
`syn` breaking changes:
 * `Method` renamed to `Fn`
 * `extra-traits` feature necessary for `Debug` impls
2023-03-20 06:35:08 +01:00
renovate[bot] f6f646a756 chore(deps): lock file maintenance rust dependencies 2023-03-19 19:45:30 -07:00
Nathan Adams 1bb8515d85 chore: Update avm2 compatibility warning to be less severe 2023-03-15 15:30:25 -07:00
Aaron Hill 66aad3ebc5 core: Use a separate matrix for stage alignment and HiDPI scaling
The stage alignment settings viewport_scale_factor should *not* be
applied to `Stage.transform.matrix`, which is only ever changed
as a result of explicit modification from ActionScript. Instead,
alignment and scaling are performed a separate step, which is
transparent to ActionScript.

I've implemented this through a new `viewport_matrix` field,
which is used during stage rendering and mouse coordinate
transformation.

This makes Stage3D instances properly scale - previously, they
would render unscaled. The linux standalone Flash Player doesn't
seem to use HiDPI mode, so I didn't realize that this was a bug
until now.

In the process of implementing this, I discovered and fixed a bug
with how we handle changing the viewport size under winit.
Calling `self.window.set_inner_size` does not immediately take
effect (at least on X11) - calling `self.window.inner_size()`
will report the old size until the next resize event.
Since build our Stage matrices from `self.window.inner_size()`
(and start running the SWF) immediately after `RuffleEvent::OnMetadata`,
we would run a few SWF frames with an incorrect viewport size. This
is visible to SWFs that have the scale mode set to "noScale", and
could break SWFs that expect the initial viewport size to be
the movie size. I've fixed this by delaying SWF execution until
we get a Resize event (if `self.window.inner_size()` does not
immediately report the size we set).
2023-03-13 02:02:40 -05:00
renovate[bot] 130144a76d fix(deps): update rust dependencies 2023-03-05 20:43:46 -06:00
Aaron Hill 830d5198f2 desktop: Actually use 'quality' flag
This was being completely ignored
2023-03-04 18:45:25 -06:00
Aria Aghaei 352ed20d34
desktop: Handle errors before detaching from console on Windows CLI (#9781)
Co-authored-by: relrelb <relrelbachar@gmail.com>
2023-03-04 12:33:26 +00:00
Nathan Adams ef42a391f5 core: Add default_compatibility_rules as a feature, and document when we add rules 2023-03-01 21:25:19 +01:00
Daniel Jacobs 584cb4c1cf web/ui: Open the virtual keyboard when clicking an editable EditText 2023-03-01 08:15:58 +02:00
relrelb b3fd1a47c6 core: Require `SwfMovie::url` 2023-02-28 19:05:20 +02:00
relrelb b3d45bc7b0 desktop: Avoid deprecated `KeyboardInput::modifiers`
As suggested, use `WindowEvent::ModifiersChanged` instead.
2023-02-27 13:02:58 +02:00
renovate[bot] 71e24eedba fix(deps): update rust dependencies 2023-02-27 11:48:53 +02:00
Aria Aghaei 44149614c7
desktop: min and max window size for ruffle (#9608)
Co-authored-by: Swag Gaming <memail@cock.li>
Co-authored-by: Aria Aghaei <ariaaghaei@gmail.com>
Co-authored-by: relrelb <relrelbachar@gmail.com>
2023-02-24 11:04:44 +00:00
nosamu 70bf0a816a core: Add options to set and force stage scale mode 2023-02-22 12:13:20 +02:00
nosamu 15435c6bea desktop: Support `file` URLs 2023-02-16 19:46:16 +02:00
renovate[bot] 43628fdef5 fix(deps): update rust crate winit to 0.28.1 2023-02-16 18:11:12 +02:00
nosamu e68cb433b2 desktop: Support flashvars passed via URL parameters 2023-02-14 23:05:22 +01:00
renovate[bot] a27bd66b58 fix(deps): update rust dependency patches 2023-02-13 04:59:31 +01:00
Aaron Hill c597f9f996 core: Fix Clippy lints on nightly 2023-02-13 03:38:54 +01:00
nosamu 1a65a0942c desktop: Add --letterbox option 2023-02-09 23:43:25 -08:00
Nathan Adams 68761608fc desktop: Add --quality option 2023-02-06 16:08:04 +01:00
Nathan Adams 6e224a7ba0 desktop: Don't record memory stacks by default 2023-02-05 18:02:19 +01:00
nosamu 12c67d5068 desktop: Improve --help messages 2023-02-03 21:17:56 +01:00
renovate[bot] caaf6d5c87 fix(deps): update rust dependencies 2023-01-31 09:39:42 -06:00
Aaron Hill e91f586523 desktop: Bump cpal to 0.15.0
`build_output_stream` now takes in a `timeout` parameter - I've
passed in `None` to keep the current behavior.

cpal addded lots of new `SampleFormat` enum values. For now, I'm
just returning an error if we encounter any of them - a quick test
showed that desktop audio is still working on my Linux machine.
2023-01-31 16:15:16 +01:00
p0008874 9bdc02e3a7 Update main.rs 2023-01-28 12:43:21 -07:00
p0008874 520248bc1d Add detail on dont_warn_on_unsupported_content 2023-01-28 12:43:21 -07:00
renovate[bot] 175d131986 fix(deps): update rust crate webbrowser to 0.8.6 2023-01-27 01:00:30 +01:00
CUB3D f559fe0077 desktop: Add key code for Numpad Enter 2023-01-24 22:12:32 -06:00
CUB3D 92d1e81a16 desktop: Add keycodes for Tab, Return and Backspace 2023-01-24 22:12:32 -06:00
renovate[bot] 8b6eef1715 fix(deps): update rust dependencies 2023-01-24 20:10:40 -06:00
Nathan Adams f83c573734 desktop: Make crash headings ### instead of # 2023-01-19 00:50:56 +01:00
Nathan Adams e02b19ba86 desktop: Reorder extra info in crash report 2023-01-19 00:50:56 +01:00
Nathan Adams a986cc05fe desktop: Clippy lint 2023-01-19 00:50:56 +01:00
Nathan Adams e27fdda3dc desktop: Add version info to crash report 2023-01-19 00:50:56 +01:00
Nathan Adams 2189d19324 desktop: Also include avm2 stacktrace in panic report 2023-01-19 00:50:56 +01:00
Nathan Adams 3c8f5b41cc chore: Added platform dropdown to crash report template 2023-01-19 00:50:56 +01:00
Nathan Adams ea37d0a3ad desktop: Implement crash report dialog when a panic happens 2023-01-19 00:50:56 +01:00
nosamu c16705ceee desktop: Add `.spl` to file dialog filter 2023-01-16 18:05:36 +01:00
Nathan Adams 047bfc5700 desktop: Don't allow -p for --player_version as it conflicts with --power 2023-01-10 22:24:48 +01:00
CUB3D 7254d3c110 chore: Fmt 2023-01-10 13:13:30 +01:00
CUB3D 8db909a7d4 desktop: Allow specifying player version 2023-01-10 13:13:30 +01:00
Nathan Adams 1f7a5f44f9 desktop: Disallow unwrap() and unwrap_err() in desktop crate 2023-01-10 11:10:46 +01:00
Nathan Adams 817f51c18e desktop: Removed unwraps in build.rs 2023-01-10 11:10:46 +01:00
Nathan Adams fbe1630a4b desktop: Removed unwraps in ui backend 2023-01-10 11:10:46 +01:00
Nathan Adams f812030f70 desktop: Removed unwrap and replaced with ? in storage backend 2023-01-10 11:10:46 +01:00
Nathan Adams ee17d05a84 desktop: Removed unwrap in navigator 2023-01-10 11:10:46 +01:00
Nathan Adams e20eb77035 desktop: movie_url is always Some, simplify code 2023-01-10 11:10:46 +01:00
Nathan Adams 48d8cb54f4 desktop: Replaced most unwraps with expects or ? in main.rs 2023-01-10 11:10:46 +01:00
Nathan Adams 4d85b6a75b wgpu: Hook up wgpu renderer, and wgpu's profiling, to tracy 2023-01-08 20:02:26 +01:00
Nathan Adams f606735720 desktop: Add tracy feature 2023-01-08 20:02:26 +01:00
Nathan Adams b27a1045a1 desktop: Switch from env_logger to tracing-subscriber 2023-01-06 04:25:22 +01:00
Nathan Adams ab6012c42c desktop: Switch from log to tracing 2023-01-06 04:25:22 +01:00
dependabot[bot] 8fc4e8431c build(deps): bump webbrowser from 0.8.2 to 0.8.4
Bumps [webbrowser](https://github.com/amodm/webbrowser-rs) from 0.8.2 to 0.8.4.
- [Release notes](https://github.com/amodm/webbrowser-rs/releases)
- [Changelog](https://github.com/amodm/webbrowser-rs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/amodm/webbrowser-rs/compare/v0.8.2...v0.8.4)

---
updated-dependencies:
- dependency-name: webbrowser
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-03 12:09:08 +02:00
dependabot[bot] 664c67ea27 build(deps): bump clap from 4.0.29 to 4.0.32
Bumps [clap](https://github.com/clap-rs/clap) from 4.0.29 to 4.0.32.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.29...v4.0.32)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-26 22:04:33 +01:00
Mike Welsh c30eb38741 audio: Rename symphonia feature to mp3 2022-12-17 22:48:42 -08:00
Mike Welsh 696c9062d3 chore: Inherit cargo metadata from workspace
Use workspace inheritance added in Rust 1.64 to de-duplicate
various settings across all packages.
2022-12-16 15:53:59 -08:00
dependabot[bot] 823965aeb4 build(deps): bump cpal from 0.14.1 to 0.14.2
Bumps [cpal](https://github.com/rustaudio/cpal) from 0.14.1 to 0.14.2.
- [Release notes](https://github.com/rustaudio/cpal/releases)
- [Changelog](https://github.com/RustAudio/cpal/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rustaudio/cpal/commits)

---
updated-dependencies:
- dependency-name: cpal
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-06 00:18:23 +01:00
adasiko 04b12e9eae Update Info.plist
Missing symbol "? 🤨
2022-12-04 13:54:54 +01:00
Marco Grassi 6873cda76e move away from unmaintained clipboard crate and use arboard crate 2022-11-26 14:04:59 -05:00
Marco Grassi ad81b3bf14 upgrade lock and toml dependencies 2022-11-26 14:04:59 -05:00
dependabot[bot] ccb1fa1b1b build(deps): bump clap from 4.0.24 to 4.0.26
Bumps [clap](https://github.com/clap-rs/clap) from 4.0.24 to 4.0.26.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.24...v4.0.26)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-21 18:07:28 -07:00
dependabot[bot] b3debc96af build(deps): bump clap from 4.0.22 to 4.0.24
Bumps [clap](https://github.com/clap-rs/clap) from 4.0.22 to 4.0.24.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.22...v4.0.24)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-15 09:33:20 +02:00
dependabot[bot] 98aa6014de build(deps): bump webbrowser from 0.8.1 to 0.8.2
Bumps [webbrowser](https://github.com/amodm/webbrowser-rs) from 0.8.1 to 0.8.2.
- [Release notes](https://github.com/amodm/webbrowser-rs/releases)
- [Changelog](https://github.com/amodm/webbrowser-rs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/amodm/webbrowser-rs/compare/v0.8.1...v0.8.2)

---
updated-dependencies:
- dependency-name: webbrowser
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-15 09:02:49 +02:00
TÖRÖK Attila 2b4d8d9c6e core,desktop: Add and implement AudioBackend::get_sample_history() 2022-11-10 19:11:29 -05:00
dependabot[bot] 9303304e3b build(deps): bump clap from 4.0.18 to 4.0.22
Bumps [clap](https://github.com/clap-rs/clap) from 4.0.18 to 4.0.22.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.18...v4.0.22)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-08 00:25:12 +02:00
relrelb 89f3445d62 swf: Introduce and use `Rectangle::width()` and `Rectangle::height()` 2022-11-01 09:49:04 +02:00
dependabot[bot] da02dc453d build(deps): bump winit from 0.27.4 to 0.27.5
Bumps [winit](https://github.com/rust-windowing/winit) from 0.27.4 to 0.27.5.
- [Release notes](https://github.com/rust-windowing/winit/releases)
- [Changelog](https://github.com/rust-windowing/winit/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-windowing/winit/compare/v0.27.4...v0.27.5)

---
updated-dependencies:
- dependency-name: winit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-01 00:40:32 +02:00
Aaron Hill 68471723b3 core: Fix clippy format string lint 2022-10-27 08:49:39 +03:00
cyraid f51e4dd67f
desktop: Fix #8315 by setting the base_url from the movie_url so requests later can use relative url's. (#8358)
Co-authored-by: Dennis Fehr <dennis.james.fehr@gmail.com>
2022-10-25 13:26:19 +03:00
dependabot[bot] a569f60124 build(deps): bump cpal from 0.14.0 to 0.14.1
Bumps [cpal](https://github.com/rustaudio/cpal) from 0.14.0 to 0.14.1.
- [Release notes](https://github.com/rustaudio/cpal/releases)
- [Changelog](https://github.com/RustAudio/cpal/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rustaudio/cpal/commits)

---
updated-dependencies:
- dependency-name: cpal
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-25 11:31:07 +03:00
dependabot[bot] c9f5524748 build(deps): bump clap from 4.0.15 to 4.0.18
Bumps [clap](https://github.com/clap-rs/clap) from 4.0.15 to 4.0.18.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.15...v4.0.18)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-25 09:00:26 +03:00
Aaron Hill 9dd0914bda core: Add root movie URL spoofing (desktop only).
The desktop player now takes a `--spoof-url` argument, which overrides
the movie URL provided to ActionScript. This does not affect non-root
movies loaded through `Loader`.
2022-10-22 15:24:14 -05:00
David Wendt 058a7a8b66 desktop: Allow specifying the load behavior for desktop 2022-10-18 16:47:49 -06:00
relrelb 178bf4fe24 chore: Extract Cargo `edition` to `[workspace.package]`
This is possible since Rust 1.64.0: https://blog.rust-lang.org/2022/09/22/Rust-1.64.0.html#cargo-improvements-workspace-inheritance-and-multi-target-builds
2022-10-14 22:13:29 +03:00
relrelb 47a22070a4 desktop: Avoid deprecated `winit::EventLoop::with_user_event()`
Use `EventLoopBuilder::with_user_event().build()` instead, as suggested
by the deprecation warning.
2022-10-11 10:59:19 +03:00
dependabot[bot] 7817301cc4 build(deps): bump winit from 0.26.1 to 0.27.4
Bumps [winit](https://github.com/rust-windowing/winit) from 0.26.1 to 0.27.4.
- [Release notes](https://github.com/rust-windowing/winit/releases)
- [Changelog](https://github.com/rust-windowing/winit/blob/v0.27.4/CHANGELOG.md)
- [Commits](https://github.com/rust-windowing/winit/compare/v0.26.1...v0.27.4)

---
updated-dependencies:
- dependency-name: winit
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-11 10:59:19 +03:00
dependabot[bot] 76f18cbc37 build(deps): bump clap from 4.0.9 to 4.0.12
Bumps [clap](https://github.com/clap-rs/clap) from 4.0.9 to 4.0.12.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.9...v4.0.12)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-11 00:32:53 +03:00
relrelb a9dedf759a chore: Fix `clap` update
As described in https://github.com/clap-rs/clap/blob/master/CHANGELOG.md#400---2022-09-28.
2022-10-05 21:33:34 +03:00
dependabot[bot] 32a370f803 build(deps): bump clap from 3.2.20 to 4.0.9
Bumps [clap](https://github.com/clap-rs/clap) from 3.2.20 to 4.0.9.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.2.20...v4.0.9)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-05 21:33:34 +03:00
dependabot[bot] cf26158030 build(deps): bump url from 2.2.2 to 2.3.1
Bumps [url](https://github.com/servo/rust-url) from 2.2.2 to 2.3.1.
- [Release notes](https://github.com/servo/rust-url/releases)
- [Commits](https://github.com/servo/rust-url/compare/v2.2.2...v2.3.1)

---
updated-dependencies:
- dependency-name: url
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-13 09:42:27 +03:00
dependabot[bot] bff0855435 build(deps): bump webbrowser from 0.7.1 to 0.8.0
Bumps [webbrowser](https://github.com/amodm/webbrowser-rs) from 0.7.1 to 0.8.0.
- [Release notes](https://github.com/amodm/webbrowser-rs/releases)
- [Changelog](https://github.com/amodm/webbrowser-rs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/amodm/webbrowser-rs/compare/v0.7.1...v0.8.0)

---
updated-dependencies:
- dependency-name: webbrowser
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-13 00:10:04 +03:00
Aaron Hill 474fd7fa8f desktop: Always mark task as ready on wake
We were incorrectly skipping the call to `task.set_ready`
if `self.waiting_for_poll` was set. The `waiting_for_poll` flag
should only be used to avoid redundant messages being sent into
the event loop.

This was causing us to ignore wakeups if more than one wakup
arrived in between calls to `poll_all`.
2022-09-11 15:48:17 -05:00
Nathan Adams c7f420dde5 wgpu: Moved WgpuRenderBackend into backend.rs 2022-09-11 09:07:53 +02:00
Mike Welsh 70c7174bfe audio: Switch to symphonia by default
Deprecate minimp3 for MP3 decoding and switch to symphonia on
desktop by default. Eventually the minimp3 feature will be removed.
2022-09-05 17:54:07 -07:00
dependabot[bot] aacc3c231a build(deps): bump clap from 3.2.18 to 3.2.20
Bumps [clap](https://github.com/clap-rs/clap) from 3.2.18 to 3.2.20.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/v3.2.20/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.2.18...v3.2.20)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-05 14:47:03 -07:00
= 2b3249c9a4 core: Made core no longer depend on software video decoders 2022-09-04 17:46:58 -07:00
= f0013bdec8 video: Moved individual decoders to software video backend 2022-09-04 17:46:58 -07:00
dependabot[bot] 4831640471 build(deps): bump cpal from 0.13.5 to 0.14.0
Bumps [cpal](https://github.com/rustaudio/cpal) from 0.13.5 to 0.14.0.
- [Release notes](https://github.com/rustaudio/cpal/releases)
- [Changelog](https://github.com/RustAudio/cpal/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rustaudio/cpal/commits)

---
updated-dependencies:
- dependency-name: cpal
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-29 15:15:14 -07:00
dependabot[bot] 33cc87ce27 build(deps): bump clap from 3.2.17 to 3.2.18
Bumps [clap](https://github.com/clap-rs/clap) from 3.2.17 to 3.2.18.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/v3.2.18/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.2.17...v3.2.18)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-30 00:19:02 +03:00
= f180183ec5 core: Add audio feature, made dasp optional 2022-08-28 21:10:05 -07:00
= c6c22cebc9 core: Make nellymoser optional, enable on desktop and web 2022-08-28 21:10:05 -07:00
= f5245d72da core: Make core not use minimp3 by default - only desktop uses it 2022-08-28 21:10:05 -07:00
EmperorBale f8289b47d8
avm2: Implement call stack & stack traces (#7564)
* avm2: Implement call stack

* avm2: Class traits should have a special prefix

* avm2: Stack tracebacks should also contain error message

* avm2: Move method naming to Executable

* avm2: Handle getter and setter methods in tracebacks

* chore: Formatting

* chore: Add comments

* avm2: Make full_name write to a string, instead of creating a new one

* core: Make GcArena publicly accessible

* core: Add Deref impl for Either type

* desktop: Add AVM2 call stack to panic message

* avm2: Prefix native methods with a `/`

* chore: Appease clippy

* avm2: Check if method actually contains bytecode instead of unwrapping

* web: Add AVM2 stack trace to panic message

* chore: Formatting

* chore: Clippy

* avm2: Fix stack traces for free standing functions

* core: Remove global data from context

* core: Rename GcGlobalData to GcCallstack

* core: Introduce StaticCallstack, make GcArena private again

Co-authored-by: Adrian Wielgosik <4729533+adrian17@users.noreply.github.com>
2022-08-28 18:30:20 +02:00
= b7dcd26c38 core: Use Cow<str> for FullscreenError in UI backend, as it can't ever be anything else 2022-08-25 23:43:21 +02:00
= 726217c6c2 desktop: Use anyhow to replace generic errors with more meaningful ones 2022-08-25 23:43:21 +02:00
= 30e7d23cc0 desktop: Use anyhow errors for desktop audio errors 2022-08-25 23:43:21 +02:00
= 5b5ee7d448 core: Made audio backend use actual real error enums, and not box<error> 2022-08-25 23:43:21 +02:00
Aaron Hill 98c7f443ce core: Only store viewport dimensions in `RenderBackend`
Previously, the viewport height and width were stored in
both `Stage` and the `RenderBackend`. Any changes to the viewport
dimensions (e.g. due to window resizing) needed to be updated in both
places to keep our handling of the viewport consistent.

This PR adds a new `ViewportDimensions` type, which holds the
width, height, and scale factor. It is stored inside the
`RenderBackend` impl, and is retrieved using the newly added
method `RenderBackend.get_viewport_dimensions`. After a `Player`
has been constructed, any code that needes access to the viewport
dimensions will ultimate go through this method.

Unfortunately, `Stage` needs to use the viewport dimensions
in `build_matrices`. Therefore, any code modifying the viewport
dimensions should go through `player.set_viewport_dimensions`,
which ensures that the stage matrices are rebuilt after the render
backend is updated.
2022-08-22 13:44:30 -07:00
dependabot[bot] 7ffe92a36a build(deps): bump clap from 3.2.16 to 3.2.17
Bumps [clap](https://github.com/clap-rs/clap) from 3.2.16 to 3.2.17.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/v3.2.17/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.2.16...v3.2.17)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-16 00:30:12 +03:00
relrelb e42a6b62e6 core: Require `target` in `NavigatorBackend::navigate_to_url`
Make the `target` parameter just a `String` instead of an `Option<String>`.
`None` is not needed as it's totally equivalent to an empty string.
2022-08-06 11:20:03 +03:00
dependabot[bot] dcf6243c47 build(deps): bump rfd from 0.9.1 to 0.10.0
Bumps [rfd](https://github.com/PolyMeilex/rfd) from 0.9.1 to 0.10.0.
- [Release notes](https://github.com/PolyMeilex/rfd/releases)
- [Changelog](https://github.com/PolyMeilex/rfd/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PolyMeilex/rfd/compare/0.9.1...0.10.0)

---
updated-dependencies:
- dependency-name: rfd
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 23:52:23 +03:00
dependabot[bot] d0535f4cb8 build(deps): bump clap from 3.2.15 to 3.2.16
Bumps [clap](https://github.com/clap-rs/clap) from 3.2.15 to 3.2.16.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.2.15...v3.2.16)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 23:06:07 +03:00
dependabot[bot] df07f610e7 build(deps): bump clap from 3.2.14 to 3.2.15
Bumps [clap](https://github.com/clap-rs/clap) from 3.2.14 to 3.2.15.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/v3.2.15/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.2.14...v3.2.15)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-25 23:35:39 +03:00