Nathan Adams
23e7a653d8
web: Configure demo to use ./ as asset path
2023-11-26 15:26:21 +01:00
Nathan Adams
54caef3b09
web: Fix fonts in demo
2023-11-25 22:00:34 +01:00
Nathan Adams
63b1c92521
web: Refactor sample selection
2023-11-25 22:00:34 +01:00
Nathan Adams
798ca3bceb
web: Add options to demo to enable url loading and sample loading
2023-11-25 22:00:34 +01:00
Nathan Adams
6f1cc89c47
web: Rewrite demo in react
2023-11-25 22:00:34 +01:00
Nathan Adams
fe99e6350b
web: Don't require webpack, and export MovieMetadata type
2023-11-25 22:00:34 +01:00
Crowdin Bot
d1784dc7c8
chore: Update translations from Crowdin
2023-11-23 00:38:05 +01:00
Daniel Jacobs
30aabc748c
demo: Use toggle instead of checking current class
2023-11-22 18:05:38 -05:00
Daniel Jacobs
ffca5adbf7
demo: Fix positioning of info box so it appears next to ruffle-player
2023-11-22 18:05:38 -05:00
Daniel Jacobs
438274e930
demo: Fix styles that don't work on Safari
2023-11-22 20:30:35 +01:00
Nathan Adams
5177bd496a
web: Hide demo logo when the screen is too small
2023-11-21 19:39:01 +01:00
Nathan Adams
81efa01991
web: Enable clicking on demo file label
2023-11-21 19:39:01 +01:00
Nathan Adams
1b39bdcd0b
web: Use 'x as y' instead of '<y>x'
2023-11-21 19:39:01 +01:00
Nathan Adams
549f017794
web: Rename demo 'main' to 'playerContainer'
2023-11-21 19:39:01 +01:00
Nathan Adams
c0ab99f6ee
web: Add option to hide the url input (forced on right now)
2023-11-21 19:39:01 +01:00
Nathan Adams
151b209f5d
web: Disable overlay when debugging demo
2023-11-21 19:39:01 +01:00
Nathan Adams
20bd980189
web: Copy extension player restyling to demo
2023-11-21 19:39:01 +01:00
Nathan Adams
cf9d99f3fb
web: Convert demo to typescript
2023-11-21 19:39:01 +01:00
Nathan Adams
5c6b544a11
web: Disallow const enums
2023-11-21 19:39:01 +01:00
Nathan Adams
770b671bc5
web: PublicAPI.negotiate's prevRuffle argument is optional
2023-11-21 19:39:01 +01:00
Daniel Jacobs
ffdb248872
demo/extension: Expand iPad check to work for iPadOS 13+
2023-11-15 08:04:23 -05:00
Crowdin Bot
b196c8d1bc
chore: Update translations from Crowdin
2023-11-13 16:53:02 -05:00
Nathan Adams
54fae4fd5b
web: Fix enter key's keyCode, + test
2023-11-13 21:08:38 +01:00
Nathan Adams
0f579ced38
web: Add getTraceOutput util
2023-11-13 21:08:38 +01:00
Nathan Adams
88d5177653
web: Await the player loading in jsApiBefore
2023-11-13 21:08:38 +01:00
Nathan Adams
7c5c4576cc
web: Actually respect the swf url in jsApiBefore
2023-11-13 21:08:38 +01:00
Crowdin Bot
949b294bdf
chore: Update translations from Crowdin
2023-11-10 22:30:29 +01:00
Nathan Adams
94009e4b1a
web: Add credentialAllowList config option
2023-11-09 13:04:12 +01:00
Kornelius Rohrschneider
514611451f
web: Set default Polyfill allowScriptAccess value to samedomain
...
The default allowScriptAccess value for polyfilled elements has been set
to samedomain. This means that it's true if the SWF file has the same
domain as the player website and false otherwise.
To do this, a new isPolyfillElement parameter is given to the
RufflePlayer::load method.
2023-11-08 17:09:54 +01:00
Kornelius Rohrschneider
1b2baf3364
web: Fix Ruffle extension player not using the configuration for files
...
The Ruffle extension player has previously not used the extension
configuration settings when loading local SWF files.
This has been fixed.
2023-11-08 17:09:54 +01:00
Kornelius Rohrschneider
8c8367a09c
web: Fix Ruffle configuration not working properly for Polyfill elements
...
Previously, the Ruffle configuration options weren't working properly
for polyfilled elements.
A polyfilled element can have specific configuration options which
overwrite the more general Ruffle configuration settings.
But the code handling those specific configuration options has
previously set some of them to default values if they haven't been
provided, therefore overwriting the more general configuration settings.
This has been fixed. A getPolyfillOptions function has been created and
returns a URLLoadOptions object, containing only the options that have
been set for the respective element. Helper functions have been adapted
to not return any default values anymore.
getPolyfillOptions is now used in all places where polyfilled options
need to be retrieved (therefore reducing duplicated code).
Documentation has been added to clarify that these options must not
contain any default values, since those would overwrite other
configuration settings with a lower priority.
The extension and demo code has been changed to clarify that no default
values are contained in the element configuration options.
The RuffleEmbed::attributeChangedCallback method has previously loaded
an SWF file only with the parameters and base options. This has been
fixed as well since it now also uses getPolyfillOptions.
When using RuffleObject::connectedCallback to load an SWF file, setting
an element config option to "" hasn't worked for most config options
before either. This has been fixed as well by using the new
getPolyfillOptions function.
The default WindowMode value of the default Ruffle web config has been
set to Window (as it is in the desktop version and according to the
documentation). It has previously been set to Opaque (which causes the
same functionality).
2023-11-08 17:09:54 +01:00
Crowdin Bot
1c4380f633
chore: Update translations from Crowdin
2023-11-07 12:40:56 +01:00
Wumbo
4403848a4b
web: Extension UI improvements ( #13473 )
...
* web: Improve styling of extension pop-up menu
* web: Improve styling of extension settings page
* web: Improve styling of extension player
* web: Make styling more consistent across browsers
* web: Run eslint, fix some problems
* web: Move version text near top of pop-up menu, add to settings menu
* web: Improve logo hover bounds in pop-up and settings
* web: Improve styling of extension status indicator
* web: Update extension pop-up text strings
* web: Misc. sizing/padding changes to extension UI
* web: chore: Add a stylelint exception for #backgroundColor in player.css
Because it's not kebab-case, to match the keys of the metadata object in JS.
---------
Co-authored-by: TÖRÖK Attila <torokati44@gmail.com>
2023-11-03 23:07:25 +01:00
renovate[bot]
9b3df944ad
chore(deps): update node.js dependencies
2023-11-01 11:18:48 +01:00
Nathan Adams
5682e0101d
web: Add defaultFonts config option for specifying the default _sans etc
2023-10-30 15:15:57 +01:00
Nathan Adams
857f65d077
web: Add fontSources config option for loading extra device fonts than our defaults
2023-10-30 15:15:57 +01:00
TÖRÖK Attila
7cec9ed969
chore: Add `--locked` to all `cargo build` invocations
2023-10-28 14:07:39 +02:00
renovate[bot]
997ad1643a
chore(deps): update node.js dependencies
2023-10-27 23:40:04 +02:00
Daniel Jacobs
2eeee80646
web: Switch click and pointer events to act on element and not window
2023-10-27 15:55:16 -04:00
TÖRÖK Attila
c5b9239d08
nit: Fix tool name in error message of extension build
...
This is a fixup for https://github.com/ruffle-rs/ruffle/pull/13733 .
I always confuse these things, and notice these minor mistakes an hour after merging. _Gosh hecking darn it!_
2023-10-27 20:06:39 +02:00
TÖRÖK Attila
e770200dc6
web: Make the error message about a missing version seal more verbose
2023-10-27 15:58:15 +02:00
Crowdin Bot
fd6568aa80
chore: Update translations from Crowdin
2023-10-27 00:49:17 +02:00
Daniel Jacobs
180d275f13
web: Check navigator.clipboard exists before using it
2023-10-26 13:01:55 -04:00
Daniel Jacobs
27831d7881
web: Make ruffle-player inherit pointer-events from parent
2023-10-25 17:03:44 -04:00
Crowdin Bot
1ca5f714f9
chore: Update translations from Crowdin
2023-10-23 03:21:14 +02:00
Nathan Adams
9758bf84c0
web: Exclude a bunch of internal api from the public api (including removing them from documentation)
2023-10-20 20:05:02 +02:00
Nathan Adams
14648ef0d5
web: make loadRuffle() return an instance, not a constructor
2023-10-20 20:05:02 +02:00
Nathan Adams
307f9bc820
web: Rename lastLoaded to nativeConstructor
2023-10-20 20:05:02 +02:00
Nathan Adams
a9db2584c8
web: Make loadRuffle take in BaseLoadOptions, it doesn't need more complex than that
2023-10-20 20:05:02 +02:00
Crowdin Bot
e6f9796094
chore: Update translations from Crowdin
2023-10-17 23:31:22 +02:00
Crowdin Bot
0127c98fdf
chore: Update translations from Crowdin
2023-10-15 19:17:00 +02:00
sleepycatcoding
c170c8561b
web: rudimentary documentation for JS API
2023-10-15 12:00:41 +02:00
sleepycatcoding
1bfcc0a670
web: Rename wsProxy config option to socketProxy
2023-10-15 12:00:41 +02:00
sleepycatcoding
a067e9a5e8
web: Add wsProxy config option
2023-10-15 12:00:41 +02:00
Crowdin Bot
ff2814c84f
chore: Update translations from Crowdin
2023-10-12 23:13:54 +02:00
Crowdin Bot
2422793d1b
chore: Update translations from Crowdin
2023-10-11 13:29:12 -04:00
Crowdin Bot
13b50fecb5
chore: Update translations from Crowdin
2023-10-09 23:10:41 +02:00
Crowdin Bot
3dc75f7ab8
chore: Update translations from Crowdin
2023-10-07 23:37:34 +02:00
Crowdin Bot
53babdd675
chore: Update translations from Crowdin
2023-10-05 23:09:23 +02:00
Adrian Wielgosik
c5704ed819
Revert "web: As appropriate use embed height mentioned in Mozilla bug 810082 c65"
...
This reverts commit b6d0e2ecce
.
2023-10-05 00:50:22 +02:00
Adrian Wielgosik
112b442ad6
Revert "web: Add comment about when a default height of 200px is used"
...
This reverts commit 48c7c52aa2
.
2023-10-05 00:50:22 +02:00
Crowdin Bot
965b42fd3c
chore: Update translations from Crowdin
2023-10-03 23:07:54 +02:00
Daniel Jacobs
48c7c52aa2
web: Add comment about when a default height of 200px is used
2023-10-03 20:14:42 +02:00
Daniel Jacobs
b6d0e2ecce
web: As appropriate use embed height mentioned in Mozilla bug 810082 c65
2023-10-03 20:14:42 +02:00
Crowdin Bot
1886a5d434
chore: Update translations from Crowdin
2023-10-02 23:16:26 +02:00
Daniel Jacobs
1d3728e7ed
i18n: Localize hardware accelerartion information
2023-10-02 14:21:57 -04:00
Daniel Jacobs
0158511a8e
web: Display a pop-up about hardware acceleration when it's disabled
2023-10-02 14:21:57 -04:00
renovate[bot]
030e9270c5
chore(deps): update node.js dependencies
2023-10-02 13:02:30 +02:00
Crowdin Bot
58b18e282b
chore: Update translations from Crowdin
2023-10-02 00:57:34 +02:00
Crowdin Bot
bd67a5845b
chore: Update translations from Crowdin
2023-09-24 12:13:31 +02:00
Crowdin Bot
5b9806bdb3
chore: Update translations from Crowdin
2023-09-19 23:41:23 +02:00
Daniel Jacobs
a768399612
web: Only re-run polyfill when embed or object added to DOM
2023-09-19 20:49:27 +02:00
Daniel Jacobs
65d1ba4803
web: Switch from deprecated rules property to preferred cssRules
2023-09-18 21:28:27 +02:00
Daniel Jacobs
c1f53b3253
web: Fix deletion order of dynamicStyles rules
2023-09-18 21:28:27 +02:00
Crowdin Bot
695c2ff9f5
chore: Update translations from Crowdin
2023-09-18 00:03:15 +02:00
Crowdin Bot
7f416f85a8
chore: Update translations from Crowdin
2023-09-14 23:50:25 +02:00
Daniel Jacobs
33eb739ee6
web: Add width, height, and type to RufflePlayer ( fix #13176 )
2023-09-14 23:49:31 +02:00
Daniel Jacobs
d6bc408286
web: Don't show context menu when any modal is open ( fix #13096 )
2023-09-08 20:26:18 +02:00
Kornelius Rohrschneider
53ba75d587
Move logarithmic volume transformation to AudioMixer
...
Previously, the volume transformation to adapt the volume for
logarithmic hearing has been performed in the VolumeControls Rust struct
and TypeScript class each.
Since this calculation is the same on desktop and web and should be
implemented in the audio backend, it has been moved into the
AudioMixer::mix_audio method.
The VolumeControls struct and class now only calculate the linear volume
out of the checkbox and the slider.
Player::set_volume and Player::volume now don't take and return the
adapted volume, but use the linear volume (which gets saved internally).
2023-09-07 00:51:58 +02:00
Kornelius Rohrschneider
f04470247e
web: Add web volume controls
...
The web version of Ruffle now has a volume controls window. It can be
accessed through the right-click menu (Right-click > Volume controls).
It contains a mute button and a slider from 0 to 100.
To achieve this, a new volume controls modal has been added to the
shadow template.
TypeScript is used to create texts, set the controls and add event
listeners to update the settings and controls when being changed.
The volume settings set in the GUI are saved in a new VolumeControls
class, which is also used to calculate the real volume (adapted for
logarithmic hearing) out of the entered volume and the mute checkbox.
As soon as the volume is changed in the GUI, the real volume will be set
in the Ruffle instance.
The existing ftl files have been adapted (and new ones have been
created) to include the new multilingual text in the right-click menu
and the volume controls window.
This closes #1771 .
2023-09-07 00:51:58 +02:00
Crowdin Bot
d195da59af
chore: Update translations from Crowdin
2023-09-06 23:55:17 +02:00
Crowdin Bot
654799b1a9
chore: Update translations from Crowdin
2023-09-06 12:22:24 +02:00
Crowdin Bot
2996f97578
chore: Update translations from Crowdin
2023-09-02 15:43:08 +02:00
renovate[bot]
d14550e851
chore(deps): update node.js dependencies
2023-09-02 15:19:06 +02:00
Crowdin Bot
cf9171cb78
chore: Update translations from Crowdin
2023-08-31 00:13:04 +02:00
Crowdin Bot
378b415a3b
chore: Update translations from Crowdin
2023-08-26 23:27:47 +02:00
Daniel Jacobs
18e89f6132
web: Remove all occurences of innerHTML (except in test files) ( #12937 )
...
* web: Remove most occurences of innerHTML
* web: Use helper methods for shadow template element creation
* web: Refactor createErrorFooter function
* web: Shadow template code cleanup
* web: Add helper function to add CSS rules to shadow template
---------
Co-authored-by: nosamu <71368227+n0samu@users.noreply.github.com>
2023-08-26 22:51:16 +03:00
nosamu
11a17dfb4e
extension: Don't show CORS error on internal player page
...
The player page is not restricted by CORS
2023-08-26 11:33:56 +02:00
nosamu
3df6e13848
extension: Fix HTML structure of 'open in new tab' message
2023-08-26 11:33:56 +02:00
nosamu
7838d4549b
web: Don't try to enter fullscreen if already in fullscreen & vice versa
...
Fixes #9615
2023-08-26 11:09:02 +03:00
nosamu
b456296769
extension: Persist content script registration across sessions
2023-08-26 01:21:07 +02:00
Crowdin Bot
07c236df5b
chore: Update translations from Crowdin
2023-08-26 00:27:56 +02:00
nosamu
3920eb90cd
extension: Register listeners synchronously at top level of service worker
2023-08-25 23:56:52 +02:00
Crowdin Bot
3ccda582e1
chore: Update translations from Crowdin
2023-08-25 11:50:24 +02:00
Crowdin Bot
1b03ce9ae6
chore: Update translations from Crowdin
2023-08-23 23:59:54 +02:00
Crowdin Bot
d55cc23f55
chore: Update translations from Crowdin
2023-08-22 23:06:46 +02:00
Daniel Jacobs
acc315ebfb
extension: Fix check for scripting permission
2023-08-22 22:47:28 +02:00
Daniel Jacobs
eef65da345
extension: Remove unnecessary lambda functions
2023-08-22 22:17:18 +02:00
Nathan Adams
9d05a37f34
web: Make open-in-new-tab open the local player directly, and disable takeover of all SWF urls
2023-08-22 19:35:05 +02:00
Daniel Jacobs
ba52438c27
extension: Fix-ups for extension player page
2023-08-22 17:50:37 +02:00
Crowdin Bot
3de4b4e989
chore: Update translations from Crowdin
2023-08-21 23:09:03 +02:00
Daniel Jacobs
1a28f83229
extension: Address review feedback
2023-08-20 19:51:14 +02:00
Nathan Adams
d5fa0f56ea
web: Make loadedConfig private again, add reload() method instead
2023-08-20 19:51:14 +02:00
Daniel Jacobs
e7df6d890e
extension: Make the player page a local Ruffle demo
2023-08-20 19:51:14 +02:00
renovate[bot]
98eb789f21
chore(deps): update node.js dependencies
2023-08-19 14:37:36 +02:00
Nathan Adams
cdaf06838c
web: Add short_name for extension
2023-08-19 10:02:53 +02:00
Nathan Adams
d21520a4c7
web: Rename extension to 'Ruffle - Flash Emulator', to increase visibility for everyone searching for 'Flash'
2023-08-19 01:11:25 +02:00
Nathan Adams
9328caa713
web: Remove webRequest permission from chrome extension
2023-08-17 08:51:57 +02:00
Crowdin Bot
cad8e10f30
chore: Update translations from Crowdin
2023-08-15 00:28:29 +02:00
Nathan Adams
ee8da51c6b
web: Use 'chrome?.scripting' to test for direct vs indirect pluginPolyfill pmethod, as firefox pretends to be chrome here
2023-08-14 21:21:20 +02:00
Nathan Adams
49d0d417c2
web: Make firefox also use the hash for player.html swf url
2023-08-14 21:21:20 +02:00
Nathan Adams
2f9387f1ac
web: Inject plugin polyfill immediately, on chrome/edge
2023-08-14 21:21:20 +02:00
Nathan Adams
7533923f9b
web: Remove check for RufflePlayer in content.ts - it can't possibly ever be true
2023-08-14 21:21:20 +02:00
Nathan Adams
1ec12f0931
web: Inject polyfill via url instead of inline, on chrome/edge
2023-08-14 21:21:20 +02:00
Nathan Adams
71000dd19a
web: When using manifest v3, do swf takeover using declarativeNetRequest
2023-08-14 21:21:20 +02:00
Nathan Adams
92ea9a535d
web: Change manifest v3 background script to a service worker
2023-08-14 21:21:20 +02:00
Nathan Adams
5847772b58
web: Apply 'incognito' directly to the v3 manifest, instead of in a script
2023-08-14 21:21:20 +02:00
Nathan Adams
c3b486f19b
web: Apply 'wasm-unsafe-eval' directly to the v3 manifest, instead of in a script (and renamed from 'wasm-eval')
2023-08-14 21:21:20 +02:00
Nathan Adams
8b3ea305a5
web: Changed web_accessible_resources to an object in manifest v3
2023-08-14 21:21:20 +02:00
Nathan Adams
9ddf9b9621
web: Extract "all_urls" in manifest v3 to "host_permissions" from "permissions"
2023-08-14 21:21:20 +02:00
Nathan Adams
54be7ffacd
web: Changed manifest v3 content_security_policy to an object containing extension_pages
2023-08-14 21:21:20 +02:00
Nathan Adams
22601514bc
web: Rename manifest v3 browser_action to action, and removed browser_style as it's no longer an option
2023-08-14 21:21:20 +02:00
Nathan Adams
353193b3e4
web: Split manifest into firefox vs other
2023-08-14 21:21:20 +02:00
Nathan Adams
283a0694de
web: Remove ruffle extension detection plugin
2023-08-14 20:51:11 +02:00
Crowdin Bot
70b43fc2ff
chore: Update translations from Crowdin
2023-08-12 01:36:46 +02:00
Tom Schuster
0a55c04eaf
web: Include the version in the new ruffle instance console message
2023-08-12 01:13:59 +02:00
Crowdin Bot
8e1632ab22
chore: Update translations from Crowdin
2023-08-11 10:23:54 +02:00
nosamu
5936de03e7
extension: Add exclusions for Tuxedo Computers and Taobao
...
Problems reported in #11906 and in a Chrome Web Store review
2023-08-09 08:34:59 +02:00
Crowdin Bot
205ef09cc6
chore: Update translations from Crowdin
2023-08-08 23:49:31 +02:00
Nathan Adams
9125d30e76
web: Don't store the full semver version as the version name, just construct it when needed
2023-08-08 14:33:49 -06:00
Daniel Jacobs
c5aa5189e7
extension: Allow video to load from any source in internal player page
2023-08-07 14:31:33 -06:00
Daniel Jacobs
91c2d0efa4
web: Create modal to hold unsupported videos
2023-08-07 14:31:33 -06:00
Daniel Jacobs
dbb5e381f2
core/desktop/web: Play unsupported videos with browser
2023-08-07 14:31:33 -06:00
TÖRÖK Attila
ddc290ddf9
chore: Appease prettier.
2023-08-07 09:22:58 +03:00
renovate[bot]
863ce90d9d
chore(deps): bump node.js dependencies
2023-08-07 09:22:58 +03:00
Nathan Adams
44623bf28f
web: Remove extension specific code in polyfill, doesn't need to exist now
2023-08-06 23:55:39 +02:00
Nathan Adams
7a39dc9176
web: Add build date as part of version buildinfo
2023-08-06 23:55:39 +02:00
Nathan Adams
64d951099d
web: Compare build ident if all else fails, when finding best versions
2023-08-06 23:55:39 +02:00
Nathan Adams
ee1e8ec267
web: Extension shouldn't set options that are default
2023-08-06 23:55:39 +02:00
Nathan Adams
4f4dbc7973
web: Fix PublicAPI superseding, it previously always thought 'the latest ran' should replace the older version
2023-08-06 23:55:39 +02:00
Adrian Wielgosik
c41d7d56f0
build: Reduce disk use of reproducible docker builds
2023-08-05 12:07:59 +02:00
Crowdin Bot
98c286e997
chore: Update translations from Crowdin
2023-08-04 17:18:58 +02:00
Oleksandr Kalko
2c4bd5c5c7
chore: Run `npm update --save`
2023-07-30 21:12:47 +00:00
Crowdin Bot
280de7cd61
chore: Update translations from Crowdin
2023-07-27 16:39:17 +02:00
renovate[bot]
3326aef6a8
chore(deps): lock file maintenance node.js dependencies
2023-07-25 17:42:46 +02:00
Nathan Adams
e610c9a9ce
web: Readd warnOnUnsupportedContent for backwards compatibility, but mark it deprecated and unused
2023-07-22 23:08:42 +02:00
Nathan Adams
586c3bebf6
core: Remove unsupported content warning
2023-07-22 23:08:42 +02:00
Daniel Jacobs
46a726efc6
chore: formatting
2023-07-21 23:34:43 +02:00
Daniel Jacobs
e99d7f63dc
extension: Don't throw error when Firefox add-on is in review
2023-07-21 23:34:43 +02:00
Nathan Adams
3447b8bfdd
chore: npm run format
2023-07-20 14:00:04 +02:00