Commit Graph

1155 Commits

Author SHA1 Message Date
Kamil Jarosz e9cd9a2864 desktop: Use trash can emoji on remove buttons
This replaces the letter x with the trash can emoji,
which looks nicer and has clearer semantics.
2024-09-19 08:18:24 -07:00
TÖRÖK Attila 309d600c6d desktop: Bump `egui` to latest `master`, set theme instead of visuals 2024-09-19 13:05:30 +02:00
Crowdin Bot 0729e79659 chore: Update translations from Crowdin 2024-09-18 23:17:21 +02:00
Kamil Jarosz bade6dd50c chore: Fix compilation warnings on non-Linux 2024-09-18 12:00:14 +02:00
TÖRÖK Attila 8ad1c1069c video/external: Make OpenH264 support optional by adding the `openh264` feature
And enable it in desktop and tests.
2024-09-18 11:28:27 +02:00
TÖRÖK Attila 0e1d500654 video/external: Move OpenH264 related stuff into the `openh264` decoder module 2024-09-18 11:28:27 +02:00
Crowdin Bot 35f1fda4b2 chore: Update translations from Crowdin 2024-09-18 00:36:55 +02:00
Mads Marquart 0f2b66a808 desktop: Move cpal audio backend to frontend-utils 2024-09-18 00:21:29 +02:00
Crowdin Bot 9651a19387 chore: Update translations from Crowdin 2024-09-17 12:59:48 +02:00
dependabot[bot] a74d177a4a build(deps): bump webbrowser in the cargo-minor group
Bumps the cargo-minor group with 1 update: [webbrowser](https://github.com/amodm/webbrowser-rs).


Updates `webbrowser` from 1.0.1 to 1.0.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/v1.0.1...v1.0.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-16 23:20:03 +02:00
Kamil Jarosz 673f28152e desktop: Migrate old log files from config directory
Ruffle used to save log files in config directory.
This patch makes Ruffle migrate those files at startup.
2024-09-16 18:13:06 +02:00
Kamil Jarosz e2e826259d desktop: Do not store logs in config directory
Logs are non-essential and can be removed, contrary to config files.
This patch changes the log directory from config dir to cache dir.
2024-09-16 18:13:06 +02:00
Kamil Jarosz b59ee2f91b desktop: Remove Utility Freedesktop category
As per the documentation [1,2], Ruffle hardly fits in this category.

[1] https://specifications.freedesktop.org/menu-spec/latest/category-registry.html#main-category-registry
[2] https://specifications.freedesktop.org/menu-spec/latest/additional-category-registry.html
2024-09-16 12:01:35 +02:00
dependabot[bot] 17763ecb16 build(deps): bump the cargo-minor group with 4 updates
Bumps the cargo-minor group with 4 updates: [anyhow](https://github.com/dtolnay/anyhow), [fontdb](https://github.com/RazrFalcon/fontdb), [gilrs](https://gitlab.com/gilrs-project/gilrs) and [pretty_assertions](https://github.com/rust-pretty-assertions/rust-pretty-assertions).


Updates `anyhow` from 1.0.87 to 1.0.89
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.87...1.0.89)

Updates `fontdb` from 0.21.0 to 0.22.0
- [Changelog](https://github.com/RazrFalcon/fontdb/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RazrFalcon/fontdb/compare/v0.21.0...v0.22.0)

Updates `gilrs` from 0.10.9 to 0.11.0
- [Commits](https://gitlab.com/gilrs-project/gilrs/compare/v0.10.9...v0.11.0)

Updates `pretty_assertions` from 1.4.0 to 1.4.1
- [Release notes](https://github.com/rust-pretty-assertions/rust-pretty-assertions/releases)
- [Changelog](https://github.com/rust-pretty-assertions/rust-pretty-assertions/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rust-pretty-assertions/rust-pretty-assertions/compare/v1.4.0...v1.4.1)

---
updated-dependencies:
- dependency-name: anyhow
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
- dependency-name: fontdb
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-minor
- dependency-name: gilrs
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-minor
- dependency-name: pretty_assertions
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-16 11:07:08 +02:00
Kamil Jarosz 94bdf6b9c6 desktop: Use FilePicker for picking files in ActionScript
This improves the experience of picking files from AS, as the pickers
will now be properly integrated with Ruffle.
2024-09-15 20:00:42 +02:00
Kamil Jarosz 4e395b26ad desktop: Add FilePicker::show_dialog
This method makes it possible to easily integrate an existing RFD
dialog with Ruffle, i.e. make sure it's a proper child of the main window
and ensure there's only one picker present at any moment.
2024-09-15 20:00:42 +02:00
Kamil Jarosz c34a4adb71 desktop: Rename pick_file to pick_ruffle_file
This change emphasizes that we want to pick a file to open by Ruffle
contrary to picking files e.g. from ActionScript.
2024-09-15 20:00:42 +02:00
Kamil Jarosz c378835038 desktop: Add VectorGraphics Freedesktop category
Ruffle handles SWF files, which are generally vector graphic animations.
2024-09-15 18:15:37 +02:00
Kamil Jarosz 6c1b17c2f4 desktop: Change order of Freedesktop categories
Apparently the order matters when desktop environments
decide to include the app only in one category.
It seems that we should list more important categories first.
2024-09-15 18:15:37 +02:00
Kamil Jarosz 5760aa7a8e chore: Use PanicHookInfo instead of PanicInfo
Renamed in Rust 1.81.0, see https://releases.rs/docs/1.81.0/#compatibility-notes
2024-09-13 00:47:41 +02:00
Kamil Jarosz e8f52fd8b5 video: Use cache dir for storing downloaded OpenH264 library
Using the executable's parent directory is a bad idea in most cases,
as the place where Ruffle is installed should not be modified.
This patch changes the directory where the OpenH264 library is saved to
the cache directory, which should always be writable.
2024-09-12 13:05:27 +02:00
Kamil Jarosz 3da0246856 desktop: Add cache directory to options 2024-09-12 13:05:27 +02:00
Kamil Jarosz 22fda90f92 video: Prefer loading system OpenH264 library to downloading it
Some systems do have OpenH264 installed and in order to get
rid of the delay caused by downloading the library
(and needlessly downloading it in the first place),
an attempt is made first to load OpenH264 as a system library.
When loading fails (or version is mismatched), only then Ruffle
downloads OpenH264 and uses that version of the library.
2024-09-12 12:03:02 +02:00
Kamil Jarosz d0ede26cce desktop: Install Ruffle metadata in PKGBUILD
This most importantly adds a way of opening Ruffle using GUI.
2024-09-12 11:00:32 +02:00
Crowdin Bot 3b6d5088d1 chore: Update translations from Crowdin 2024-09-11 23:27:35 +02:00
Kamil Jarosz 75e4eaaba5 desktop: Improve filters in file pickers 2024-09-11 13:48:16 +02:00
Kamil Jarosz 14302b8287 desktop: Internationalize file pickers 2024-09-11 13:48:16 +02:00
TÖRÖK Attila 490c02bb58 core,desktop: Update to `winit` `v0.30.5` and latest `egui` from git 2024-09-11 13:24:14 +02:00
Crowdin Bot fac9b33f79 chore: Update translations from Crowdin 2024-09-10 00:24:03 +02:00
Crowdin Bot 0e1568b71b chore: Update translations from Crowdin 2024-09-08 23:20:02 +02:00
Mestery b616f559e7 avm2: Stub desktop AIR APIs 2024-09-08 10:38:54 +02:00
Crowdin Bot 357508ae86 chore: Update translations from Crowdin 2024-09-08 00:45:59 +02:00
Crowdin Bot 43f5aaaab9 chore: Update translations from Crowdin 2024-09-06 23:23:36 +02:00
Kamil Jarosz e179b41ca7 desktop: Add network access dialog
Add network access dialog written in egui and replace
rfd's socket confirmation with it.
2024-09-06 21:46:59 +02:00
Crowdin Bot 92686b10b2 chore: Update translations from Crowdin 2024-09-06 09:02:25 +02:00
Kamil Jarosz d80246f85a desktop: Move icon.svg to packages/linux
Currently, the SVG icon is used only in Linux packages and moving it
to packages/linux makes it easier to package downstream.
Additionally it makes it possible to adapt it for Linux desktop
specifically.
2024-09-05 11:29:20 +02:00
Kamil Jarosz b56d9234ff desktop: Add ruffle to conflicts in PKGBUILD
This ensures that the package conflicts with every
other package providing ruffle.
2024-09-05 11:29:20 +02:00
Kamil Jarosz b18d21261e chore: Move PKGBUILD to desktop/packages 2024-09-05 11:29:20 +02:00
Crowdin Bot f538f67a17 chore: Update translations from Crowdin 2024-09-04 23:22:12 +02:00
Kamil Jarosz 6d577f50e4 desktop: Use MessageDialog for messages
This commit replaces rfd's MessageDialog with our custom MessageDialog
written using egui.
2024-09-04 20:59:31 +02:00
Kamil Jarosz fc13643cc8 desktop: Implement MessageDialog in egui
The implemented MessageDialog is meant to replace the rfd MessageDialog
in order to be consistent with other UI elements.
2024-09-04 20:59:31 +02:00
Kamil Jarosz 5cdf4c8030 desktop: Add OpenDialog event for opening dialogs
This event replaces AskToOpenUrl and is more generic, because
it may open any dialog (specified as an argument).
2024-09-04 20:59:31 +02:00
Kamil Jarosz b4422bffc4 desktop: Add LocalizableText struct
This structure allows specifying localizable text when there's no locale
available, but it will be available in the future (e.g. when rendering).
It has several advantages over specifying bare labels:

1. labels cannot be easily mixed with non-localizable text,
2. it's easy to find labels in use by looking for enum variant usages.

It's also better than providing a function of locale which requires
complicated type definitions and dynamic dispatch.
2024-09-04 20:59:31 +02:00
Kamil Jarosz 646ab4e5bc desktop: Add show_ prefix to appropriate methods from Dialogs 2024-09-04 20:59:31 +02:00
Crowdin Bot f82f58f28a chore: Update translations from Crowdin 2024-09-04 10:24:56 +02:00
Crowdin Bot 5efe609dbc chore: Update translations from Crowdin 2024-09-03 17:44:43 +02:00
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
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
Crowdin Bot 556fd7306d chore: Update translations from Crowdin 2024-08-31 11:49:48 +02:00