Commit Graph

429 Commits

Author SHA1 Message Date
Adrian Wielgosik 41a126885c web: Minimal context menu buttons for movie control 2021-04-27 16:42:02 -07:00
Mike Welsh ff6adaf706 chore: Bump JS packages 2021-04-26 12:09:42 -07:00
Mike Welsh d34b72cc47 web: Expose SWF metadata to JavaScript
Add `RufflePlayer.metadata` that exposes the SWF header fields to
JavaScript.

Add `RufflePlayer.readyState` and fire a `loadedmetadata` event
once the metadata is available, mimicking the HTML5 media APIs.
2021-04-23 16:58:24 -07:00
relrelb 0fa24b4ce0 web: Migrate file-loader to asset modules
file-loader is deprecated and asset modules are the recommended
alternative.
2021-04-21 19:03:19 -07:00
valadaptive f6602dd377
web: Handle errors from CSPs which block WebAssembly
This removes the "Report Bug" link from the error case in which
WebAssembly code generation is disallowed by the host's content security
policy, because there's nothing we can do to fix that, and directs
people to the wiki instead.
2021-04-17 19:21:39 -07:00
Mike Welsh ae9be98821 web: Disable context menu from touch events
Once a touch event is seen, completely disable the context menu to
prevent a long press from triggering the context menu.

Fixes #1972.
2021-04-12 16:28:43 -07:00
Chris Midgley aab3ff781d web: use customElements.get over try-catch 2021-04-09 14:37:09 -07:00
Chris Midgley a171883d39 web: check for window.customElements before entering loop 2021-04-09 14:37:09 -07:00
Chris Midgley 2e42942058 web: try a limited number of times defining a custom element 2021-04-09 14:37:09 -07:00
Chris Midgley 20480ef6d8 web: crash out of infinite loop if not NotSupportedError 2021-04-09 14:37:09 -07:00
Mike Welsh d0c7aa0dff web: Fix fullscreen sizing on Safari
When Ruffle would go fullscreen on Safari, the content would often
not fill the viewport because Ruffle's width/height CSS would
override the :-webkit-full-screen CSS that Safari adds.

Add our own :-webkit-full-screen CSS with !important to force 100%
dimensions in fullscreen.
2021-03-25 16:26:37 -07:00
Suhao Jeffrey Huang ce72277a07 web: Hide navigation bar in fullscreen on Android (fix #1698) 2021-03-25 16:26:37 -07:00
relrelb 56cece3336 web: Use publicPath() instead of ruffleRuntimePath
Similarly to how selfhosted currently does.
2021-03-13 02:19:05 -08:00
relrelb 32ff16e1da web: Remove packages/core/.eslintrc.json 2021-03-05 23:07:55 -08:00
relrelb 47c7a05340 web: Add packages/core/tools/.eslintrc.json 2021-03-05 23:07:55 -08:00
relrelb 1ed8dea599 web: Improvements 2021-03-05 23:07:55 -08:00
relrelb f64e5d5b41 web: Get rid of move-file-cli 2021-03-03 07:08:43 -08:00
dependabot-preview[bot] ac056e7f83 build(deps-dev): bump eslint-plugin-jsdoc from 31.6.1 to 32.1.0 in /web
Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 31.6.1 to 32.1.0.
- [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases)
- [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v31.6.1...v32.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-25 14:36:42 -08:00
relrelb d62c3c0500 web: Fix CSS variables in shadow-template.ts
Apparently CSS variables need to be defined in :host rather than in
:root when it comes to shadow DOM.
2021-02-25 14:34:40 -08:00
relrelb 1b41f8fad1 web: Fix panic message alignment 2021-02-25 14:34:40 -08:00
Mike Welsh eb173f06ca web: Strip query params from URL in GitHub issue titles 2021-02-20 14:12:07 -08:00
relrelb 73b5916b2a
web: Fix player positioning 2021-02-19 17:40:43 -08:00
relrelb d3a006f62a web: Cleanup JSON files
Change indentation to 4 spaces and put newline at EOF.
2021-02-19 16:28:09 -08:00
relrelb 6a710fa1f3 web: Remove stale globals definitions
They were removed in 3e084963c6.
2021-02-19 16:28:09 -08:00
relrelb 524fb30acb chore: Cleanup .gitignore
And split it across multiple files.
2021-02-19 16:28:09 -08:00
Mike Welsh 836b631237 web: Revert style changes in #3239 2021-02-18 04:11:04 -08:00
relrelb 1c21856980
web: General refactoring
* web: Don't load a random SWF Instead, show a prompt to select or drag an SWF.
* web: Refactor webpack.config.js
* demo: Refactor index.js
* demo: Cleanup CSS
2021-02-16 20:39:46 -08:00
Ben Lubar 1c620b2c9b add TypeScript documentation for maxExecutionDuration 2021-02-16 20:31:40 -08:00
Adrian Wielgosik f787cffe54
web: Minimal polyfill of window.Reflect 2021-02-09 19:10:47 -08:00
TÖRÖK Attila 4ea1d9e33c web/build: Make successful wasm-opt invocation mandatory on GitHub Actions 2021-02-05 10:38:47 -08:00
Toad06 b5749ee228
web: Fix some context menu and warning message issues 2021-02-04 15:10:04 -08:00
Mads Marquart 1990e51639 avm2: Add UiBackend::display_unsupported_message
To allow displaying rich content when unsupported ActionScript 3 content is encountered.
2021-01-31 23:04:20 -08:00
Brian Gontowski 31dd2729e2 web: Add an onFSCommand callback into JavaScript 2021-01-31 18:03:31 -08:00
Toad06 b62ca3d589
web: Move `allowScriptAccess` to `BaseLoadOptions` 2021-01-30 16:59:58 -08:00
Omar Shehata 218f1f1da5 web: Pause player when tab is inactive (close #347) 2021-01-26 22:34:43 -08:00
Adrian Wielgosik 9195491f1b web: Redesign the context menu 2021-01-26 17:12:43 -08:00
relrelb aeda974143 web: Rename contextMenu to contextMenuElement
Firefox has a read-only "contextMenu" property, so avoid
shadowing it.
2021-01-25 03:51:50 -08:00
relrelb b07eb07afb web: Revert config removal 2021-01-25 03:51:50 -08:00
relrelb 5827801b03 web: Rename config.showContextMenu to config.contextMenu 2021-01-25 03:51:50 -08:00
relrelb 70326108b9 web: Rename "right click menu" to "context menu" 2021-01-25 03:51:50 -08:00
relrelb 21b0128bca web: Add option to disable the context menu 2021-01-25 03:51:50 -08:00
Toad06 dc2b4fcc42 web: Use enum instead of arbitrary values 2021-01-20 15:03:52 -08:00
Toad06 bc47bfb9e9 web: Display appropriate errors when Ruffle fails to initialize 2021-01-20 15:03:52 -08:00
Adrian Wielgosik b69e17bf35
web: Allow customizing log level 2021-01-19 18:10:35 -08:00
Mike Welsh c2b768c453 web: Fallback to instantiate with improper MIME type
Use --target web in wasm-bindgen and file-loader for WASM files,
allowing wasm-bindgen's built-in fallback from
WebAssembly.instantiateStreaming to instantiate.

file-loader spits out the WASM file directly in the output folder,
and imports will resolve to the URL, so that we can load the file
directly, avoiding webpack's built-in wasm loaders.

This allows Ruffle to function on web servers even if they serve
WASM files with the incorrect MIME type, fixing one of our biggest
support requests (#400, #1458). There is some performance impact
on loading with the fallback, but this is preferable to not
working at all.
2021-01-16 15:30:11 -08:00
TÖRÖK Attila 2858faaaf2
web: Drop wasm-pack, invoke wasm-bindgen and wasm-opt directly from npm (#2482) 2021-01-15 12:59:25 -08:00
Mike Welsh 9bb36885bb web: Add backgroundColor option and support bgcolor attribute
Add `backgroundColor` setting to the config options, allowing
a user to override the background color of an SWF. The polyfill
will now look for the `bgcolor` HTML attribute on the embed
and fill in this setting appropriately.
2021-01-13 11:57:19 -08:00
dependabot-preview[bot] 4dbc4e55cc build(deps-dev): bump eslint-plugin-jsdoc from 30.7.13 to 31.0.3 in /web
Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 30.7.13 to 31.0.3.
- [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases)
- [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v30.7.13...v31.0.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-11 12:04:14 -08:00
TÖRÖK Attila cce3a8199d web: Add a config option to disable the message about unsupported content 2021-01-10 16:02:23 -08:00
relrelb 828d8b7339
demo: General refactor
General cleanup and refactoring of the web demo
2021-01-09 19:36:05 -08:00
Toad06 b81fb64be9 web: Prevent "414 URI Too Long" error on Github when reporting bugs 2021-01-07 11:51:00 -08:00
Mike Welsh 01aca9f861 web: Remove upgrade_to_https param from Ruffle::new
Grab it from the `config` directly instead of using an extra param.
2021-01-07 11:46:07 -08:00
Mike Welsh 8728804f28 web: Add letterbox config option 2021-01-07 11:46:07 -08:00
Toad06 24362d72e3
web: Fix minor issues in `ruffle-player.ts` 2021-01-06 12:04:03 -08:00
Toad06 201d014edb web: Read the `allowScriptAccess` property from `embed` tags 2021-01-04 13:08:02 -08:00
dependabot-preview[bot] 338e43888a build(deps-dev): bump typescript from 4.0.5 to 4.1.3 in /web
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.0.5 to 4.1.3.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.0.5...v4.1.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-03 02:01:54 -08:00
Toad06 3ae9ad57fc web: Prevent crashes when native `Window` is overridden 2020-12-30 13:18:13 -08:00
Mike Welsh 3ea8c2fc7e chore: Fix typedoc config for typedoc 0.20 2020-12-29 17:27:48 -08:00
dependabot-preview[bot] 268ed44d6d build(deps-dev): bump typedoc from 0.19.2 to 0.20.0 in /web
Bumps [typedoc](https://github.com/TypeStrong/TypeDoc) from 0.19.2 to 0.20.0.
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases)
- [Commits](https://github.com/TypeStrong/TypeDoc/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-28 12:53:16 -08:00
Sam Morrow 38bdb8b39a web/desktop: Add basic dialog handling (closes #1978) 2020-12-23 19:08:18 -08:00
Toad06 777734f6ba web: Maintain compatibility with prototype.js 2020-12-21 16:26:14 -08:00
Toad06 a6b7474a6b web: Prevent crashes with external libraries 2020-12-20 15:28:52 -08:00
dependabot-preview[bot] 5503399545 build(deps-dev): bump @wdio/cli from 6.10.5 to 6.10.11 in /web
Bumps [@wdio/cli](https://github.com/webdriverio/webdriverio) from 6.10.5 to 6.10.11.
- [Release notes](https://github.com/webdriverio/webdriverio/releases)
- [Changelog](https://github.com/webdriverio/webdriverio/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webdriverio/webdriverio/compare/v6.10.5...v6.10.11)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-19 13:19:11 -08:00
Toad06 d6a857803a web: Fix extension and self-hosted builds conflicting with each other 2020-12-17 12:48:32 -08:00
JMcKiern 63be0455a8
web: Add query string to `Report Bug` link
* web: Add query string to the Report Bug link (closes #1753)
2020-12-14 11:25:10 -08:00
Sam Morrow c4d7b24629 web: Fix cors issues with http (close ruffle-rs#1486) 2020-12-14 05:51:28 -08:00
Toad06 d55f3959b9 web: Detect file extension using the `URL()` constructor 2020-12-13 15:38:18 -08:00
Toad06 5d55a60924
web: Avoid double polyfilling object-inside-object
* web: Avoid double polyfilling object-inside-object
* tests: Add polyfill test for object inside object
2020-12-10 13:36:40 -08:00
Toad06 07d3e7d81b web: Use nullish coalescing operator 2020-12-09 17:01:20 -08:00
Toad06 4ed2470068 web: Fix possible issue with iframe elements no longer existing in the DOM 2020-12-09 17:01:20 -08:00
Toad06 1e61093e32 web: Fix issues with iframe polyfill 2020-12-09 17:01:20 -08:00
techboyg5 021194875a Open shadow DOM 2020-12-07 17:57:15 -08:00
Toad06 3ca08c881f docs: Update `streamSwfUrl` to `load` 2020-12-07 15:22:51 -08:00
Toad06 fc565e2cd6 web: Don't polyfill an object tag if it already contains a ruffle-embed 2020-11-28 14:43:39 -08:00
IWumboYouWumbo b6c0809224 web: Explicitly define font size of context menu 2020-11-27 15:44:24 -08:00
Mike Welsh e66fc6f6a1 web: Avoid double polyfilling embed-inside-object 2020-11-26 18:19:57 -08:00
IWumboYouWumbo 9501ff06b0
web: Refinements to meta user interface (attempt 2)
- Fonts are no longer inherited, Arial is used instead
- Play button is smaller and shares same styling as unmute button
- Context menu text is always aligned to the left
- Panic screen text displays in white instead of black (it's much easier to read this way)
- CSS is cleaner and less redundant
I'm iffy on the changes to the play button aesthetic (it ranges from translucent -> opaque instead of opaque -> brighter opaque) so opinions are welcome.
- Fixed context menu hover issue, added drop shadow
- More redundancy fixes
2020-11-25 20:49:38 -08:00
Nathan Adams c13d5e349b web: Move autoplay/unmuteOverlay from Config to BaseLoadOptions - and made config default the load options 2020-11-25 11:33:51 -08:00
Nathan Adams 797dd83766 web: Merge streamSwfUrl and streamSwfData into load 2020-11-25 11:33:51 -08:00
Nathan Adams a02a81f80f web: Fixed extension & local not detecting eachother correctly 2020-11-24 16:36:33 -08:00
Nathan Adams bcfe59c351 web: Rename Config.public_paths to Config.publicPaths 2020-11-24 16:36:33 -08:00
Nathan Adams 707788218d web: Rename Config.public_path to Config.publicPath 2020-11-24 16:36:33 -08:00
Nathan Adams 103f0d69e8 web: Default autoplay to 'auto' 2020-11-24 16:36:33 -08:00
Nathan Adams cc81122fd8 web: Make sure player config takes priority over global config 2020-11-24 16:36:33 -08:00
Nathan Adams 799c0955b3 web: Add options for autoplay
This is a rewritten version of PR #1161 by Toad06
2020-11-24 16:36:33 -08:00
Nathan Adams a03b2fdea6 web: Add mute overlay
Original code by Toad06 as part of PR #1161
2020-11-24 16:36:33 -08:00
Nathan Adams 3e084963c6 web: Embed build/version info inside the js 2020-11-24 16:36:33 -08:00
Nathan Adams 7a3273a269 web: Add 'docs' command to generate jsdocs 2020-11-24 16:36:33 -08:00
Nathan Adams f5667fc987 web: Fix up documentation to reflect the new state of core vs selfhosted (basically npm vs manual) 2020-11-24 16:36:33 -08:00
Nathan Adams 40bcd3f835 web: Remove no longer needed webpack config in core 2020-11-24 16:36:33 -08:00
Nathan Adams 10db305988 web: Enforce (sensible) documentation 2020-11-24 16:36:33 -08:00
Nathan Adams f1eabe1594 web: Rename install_plugin to installPlugin 2020-11-24 16:36:33 -08:00
Nathan Adams 6a9d0f64e9 web: Rename load_ruffle to loadRuffle 2020-11-24 16:36:33 -08:00
Nathan Adams 8c36e02dc5 web: Rename fetch_ruffle to fetchRuffle 2020-11-24 16:36:33 -08:00
Nathan Adams 41bf30efc8 web: Rename public_path to publicPath 2020-11-24 16:36:33 -08:00
Nathan Adams bccdaf77d4 web: Enforce camelCase 2020-11-24 16:36:33 -08:00
Nathan Adams 1519642a9a web: Fix documentation and warnings inside plugin-polyfill 2020-11-24 16:36:33 -08:00
Nathan Adams 48aa26460d web: Rename methods/variables inside polyfills to be camelCase 2020-11-24 16:36:33 -08:00
Nathan Adams 1bf4f5c4e4 web: Rename plugin_polyfill to pluginPolyfill 2020-11-24 16:36:33 -08:00
Nathan Adams dcf2b712b2 web: Fix documentation and warnings in polyfills 2020-11-24 16:36:33 -08:00
Nathan Adams d2d8bc6f01 web: Properly document and define window.RufflePlayer 2020-11-24 16:36:33 -08:00
Nathan Adams 2c952e954d web: Renamed fields and variables inside PublicAPI to camelCase 2020-11-24 16:36:33 -08:00
Nathan Adams 950d19d1c5 web: Allow taking in "conflict" APIs 2020-11-24 16:36:33 -08:00
Nathan Adams af01621484 web: Rename PublicAPI.local_compatible to PublicAPI.localCompatible 2020-11-24 16:36:33 -08:00
Nathan Adams 980590cf96 web: Rename PublicAPI.newest_source_name to PublicAPI.newestSourceName 2020-11-24 16:36:33 -08:00
Nathan Adams d6afe2edd3 web: Rename PublicAPI.register_source to PublicAPI.registerSource 2020-11-24 16:36:33 -08:00
Nathan Adams f4a710c806 web: Make PublicAPI use Config 2020-11-24 16:36:33 -08:00
Nathan Adams 96d3c30b5e web: Move Config to its own file 2020-11-24 16:36:33 -08:00
Nathan Adams 456557ec20 web: Fix documentation and warnings in PublicAPI 2020-11-24 16:36:33 -08:00
Nathan Adams 5f02ee3ab8 web: Fixed documentation and warnings inside public-path 2020-11-24 16:36:33 -08:00
Nathan Adams ca96553cf0 web: Rename register_element to registerElement 2020-11-24 16:36:33 -08:00
Nathan Adams 32abd35642 web: Changed variables inside RuffleEmbled to be camelCase 2020-11-24 16:36:33 -08:00
Nathan Adams 5a1fb5fba1 web: Rename RuffleEmbed.from_native_embed_element to
RuffleEmbed.fromNativeEmbedElement
2020-11-24 16:36:33 -08:00
Nathan Adams f1b05716dd web: Rename RuffleEmbed.is_interdictable to RuffleEmbed.isInterdictable 2020-11-24 16:36:33 -08:00
Nathan Adams 868548ddc6 web: Fixed documentation and warnings inside RuffleEmbed 2020-11-24 16:36:33 -08:00
Nathan Adams 976ef86da7 web: Rename variables in RuffleObject to camelCase 2020-11-24 16:36:33 -08:00
Nathan Adams 9f8dd465ae web: Rename RuffleObject.from_native_object_element to
RuffleObject.fromNativeObjectElement
2020-11-24 16:36:33 -08:00
Nathan Adams 9633073c1f web: Rename RuffleObject.is_interdictable to
RuffleObject.isInterdictable
2020-11-24 16:36:33 -08:00
Nathan Adams 879fa53417 web: Ignore ruffle-imports, it's not an API 2020-11-24 16:36:33 -08:00
Nathan Adams 5b5091b4b9 web: Rename copy_to_audio_buffer to copyToAudioBuffer 2020-11-24 16:36:33 -08:00
Nathan Adams 68ffc95348 web: Move RuffleObject.params_of to paramsOf (no longer a static member) 2020-11-24 16:36:33 -08:00
Nathan Adams 3faf09696d web: Move RuffleObject.find_case_insensitive to findCaseInsensitive (no
longer a static member)
2020-11-24 16:36:33 -08:00
Nathan Adams f44f2ea9db web: Fix documentation and warnings in RuffleObject 2020-11-24 16:36:33 -08:00
Nathan Adams 7bd4308c22 web: Renamed variables inside register-element to be camelCase 2020-11-24 16:36:33 -08:00
Nathan Adams eaa6dc70f4 web: Rename Registration.internal_name to Registration.internalName 2020-11-24 16:36:33 -08:00
Nathan Adams 87d3bf57bd web: Fixed documentation and warnings inside register_element 2020-11-24 16:36:33 -08:00
Nathan Adams 62ddc7c9cd web: Rename lookup_element to lookupElement 2020-11-24 16:36:33 -08:00
Nathan Adams 5c1a8ecd94 web: Rename private_registry to privateRegistry 2020-11-24 16:36:33 -08:00
Nathan Adams f8486f00f3 web: Rename RufflePlayer.sanitize_parameters to
RufflePlayer.sanitizeParameters
2020-11-24 16:36:33 -08:00
Nathan Adams 8b5f1eee2f web: Rename all variables inside RufflePlayer to be camelCase 2020-11-24 16:36:33 -08:00
Nathan Adams 6e191f2893 web: Rename RufflePlayer.allow_script_access to
RufflePlayer.allowScriptAccess
2020-11-24 16:36:33 -08:00
Nathan Adams 1371a89d1a web: Rename RufflePlayer.is_swf_filename to RufflePlayer.isSwfFilename 2020-11-24 16:36:33 -08:00
Nathan Adams 2e83dad798 web: Rename RufflePlayer.debug_player_info to
RufflePlayer.debugPlayerInfo
2020-11-24 16:36:33 -08:00
Nathan Adams d21cb8473b web: Rename RufflePlayer.trace_observer to RufflePlayer.traceObserver 2020-11-24 16:36:33 -08:00
Nathan Adams 3ad4c0f392 web: Rename RufflePlayer.on_callback_available to
RufflePlayer.onCallbackAvailable
2020-11-24 16:36:33 -08:00
Nathan Adams 8c7f728215 web: Rename RufflePlayer.html_dimension_to_css_dimension to
RufflePlayer.htmlDimensionToCssDimension
2020-11-24 16:36:33 -08:00
Nathan Adams 95a22c486d web: Rename RufflePlayer.copy_element to RufflePlayer.copyElement 2020-11-24 16:36:33 -08:00
Nathan Adams abb311670f web: Rename RufflePlayer.play_swf_data to RufflePlayer.playSwfData 2020-11-24 16:36:33 -08:00
Nathan Adams 2e8e89c52b web: Rename RufflePlayer.hide_right_click_menu to
RufflePlayer.hideRightClickMenu
2020-11-24 16:36:33 -08:00
Nathan Adams 85735d3a45 web: Rename RufflePlayer.open_right_click_menu to
RufflePlayer.openRightClickMenu
2020-11-24 16:36:33 -08:00
Nathan Adams 37ef9c15b4 web: Rename RufflePlayer.play_button_clicked to
RufflePlayer.playButtonClicked
2020-11-24 16:36:33 -08:00
Nathan Adams 4f297948d0 web: Rename RufflePlayer.stream_swf_url to RufflePlayer.streamSwfUrl 2020-11-24 16:36:33 -08:00
Nathan Adams f692ee36a5 web: Rename RufflePlayer.ensure_fresh_instance to
RufflePlayer.ensureFreshInstance
2020-11-24 16:36:33 -08:00
Nathan Adams 4540b73d68 web: Rename RufflePlayer.is_unused_fallback_object to
RufflePlayer.isUnusedFallbackObject
2020-11-24 16:36:33 -08:00
Nathan Adams d0030e6ea7 web: Rename RufflePlayer.update_styles to RufflePlayer.updateStyles 2020-11-24 16:36:33 -08:00
Nathan Adams a25a298277 web: Fixed up documentation and return types inside RufflePlayer 2020-11-24 16:36:33 -08:00
Nathan Adams 96acde5445 web: Rename ShadowTemplate.ruffle_shadow_template to
ShadowTemplate.ruffleShadowTemplate
2020-11-24 16:36:33 -08:00
Nathan Adams f869812464 web: Fixed up documentation and return types inside SourceAPI 2020-11-24 16:36:33 -08:00
Nathan Adams bc3b6ade4e web: Rename SourceAPI.create_player to SourceAPI.createPlayer 2020-11-24 16:36:33 -08:00
Nathan Adams d6478c7d6a web: Rename SourceAPI.plugin_polyfill to SourceAPI.pluginPolyfill 2020-11-24 16:36:33 -08:00
Nathan Adams 3a470b02cc web: Fixed up documentation and return types inside SourceAPI 2020-11-24 16:36:33 -08:00
Nathan Adams 442e3f4f51 web: Renamed local variables inside VersionRange to be camelCase 2020-11-24 16:36:33 -08:00
Nathan Adams 8fab9e25b1 web: Rename VersionRange.from_requirement_string to
VersionRange.fromRequirementString
2020-11-24 16:36:33 -08:00
Nathan Adams 376aeef1af web: Rename VersionRange.satisfied_by to VersionRange.satisfiedBy 2020-11-24 16:36:33 -08:00
Nathan Adams 77f7518cda web: Fixed up documentation and return types inside VersionRange 2020-11-24 16:36:33 -08:00
Nathan Adams cf8686a0b5 web: Renamed local variables inside Version to be camelCase 2020-11-24 16:36:33 -08:00
Nathan Adams a0817e48b0 web: Rename Version.is_stable_or_compatible_prerelease to
Version.isStableOrCompatiblePrerelease
2020-11-24 16:36:33 -08:00
Nathan Adams 6952197004 web: Rename Version.is_equal to Version.isEqual 2020-11-24 16:36:33 -08:00
Nathan Adams f3efc5c80a web: Rename Version.has_precedence_over to Version.hasPrecedenceOver 2020-11-24 16:36:33 -08:00
Nathan Adams ce6288fda8 web: Rename Version.is_compatible_with to Version.isCompatibleWith 2020-11-24 16:36:33 -08:00
Nathan Adams d2e6ae50a9 web: Rename Version.from_semver to Version.fromSemver 2020-11-24 16:36:33 -08:00
Nathan Adams 548fe6d172 web: Rename Version.build_ident to Version.buildIdent 2020-11-24 16:36:33 -08:00
Nathan Adams e5cd299009 web: Rename Version.pr_ident to Version.prIdent 2020-11-24 16:36:33 -08:00
Nathan Adams 022881f9c6 web: Fix up documentation in Version, resolved warnings 2020-11-24 16:36:33 -08:00
Nathan Adams 8abb8df299 web: core no longer uses webpack, but selfhosted still does 2020-11-24 16:36:33 -08:00
Nathan Adams 7701ef9c26 web: Make tests in core use typescript 2020-11-24 16:36:33 -08:00
Nathan Adams 5ff7168fe9 web: Switched core package from javascript to typescript 2020-11-24 16:36:33 -08:00
Will Brindle 13626f9578
demo: Fix play button centering (fix #1669) 2020-11-24 12:56:31 -08:00
relrelb aa33832936 web: Improve context menu position
The maxX and maxY calculation assumed the player covers the whole
viewport. Now it takes into account rect.width and rect.height.
2020-11-21 12:46:06 -08:00
Nathan Adams 9015f77bdc web: Fixed mime issue detection 2020-11-20 00:26:47 +01:00
relrelb 1674132b36 web: Use fullscreen helper methods
In order to be compatible with browsers that don't support the
standard Fullscreen API.

Co-authored-by: Sean-Thomas <sean-thomas@pocketonion.net>
2020-11-18 17:50:12 -08:00
relrelb 456ef1963e web: Move border styling to CSS 2020-11-18 17:50:12 -08:00
relrelb 80ab00cdd6 web: Extract max{X,Y}
As a small refactoring to improve readability.
2020-11-18 17:50:12 -08:00
relrelb 1c0b167e20 Improve web context menu 2020-11-18 17:50:12 -08:00
relrelb b987db010b web: Add fullscreen context menu item
TODO: Retain focus on fullscreen enter/exit.
2020-11-18 17:50:12 -08:00
Nathan Adams dab79107b2 web: Include git details into the build 2020-11-04 16:46:14 -08:00
Nathan Adams d1c58b143f web: Fix right click menu when scrolling - fixes #1484 2020-11-04 16:30:49 -08:00
Nathan Adams a8759f45a1 web: Add specific error for invalid MIME type, with a link back to the wiki 2020-11-02 13:42:36 -08:00
Nathan Adams ffb988026c web: Fix positioning of right click menu 2020-11-01 05:52:40 -08:00
Nathan Adams 66eb645b68 web: Add basic right click menu, only has About Ruffle link so far 2020-10-29 13:27:28 -07:00
Mike Welsh cd96df7ee7 web: Disable automatic publicPath in webpack configs 2020-10-21 15:19:36 -07:00
dependabot-preview[bot] a965d2f6ba build(deps-dev): bump webpack-cli from 3.3.12 to 4.0.0 in /web
Bumps [webpack-cli](https://github.com/webpack/webpack-cli) from 3.3.12 to 4.0.0.
- [Release notes](https://github.com/webpack/webpack-cli/releases)
- [Changelog](https://github.com/webpack/webpack-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-cli/compare/v3.3.12...webpack-cli@4.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-17 15:33:13 -07:00
Mike Welsh 990052db77 chore: Bump to webpack 5 2020-10-17 14:07:28 -07:00
Nathan Adams b7b67cacb2 web: Merge flashvars with swf url query vars 2020-10-12 15:28:16 -07:00
Nathan Adams 6b591269e9 web: Parse flashvars from swf urls 2020-10-12 15:28:16 -07:00
Nathan Adams 6d9155477c core: Add flashvars support - #312 2020-10-12 15:28:16 -07:00
Toad06 1643d2335e web: Correctly detect swf file extension 2020-10-09 12:25:37 -07:00
JustinCB ce6b19f1b2 web: Add more try/catch's to stop error spam crashing sites 2020-10-08 23:35:33 -07:00
Sean-Thomas 6b54cc4311 web: Add pause method for web player
Adds a suspend_audio method to compliment prime_audio on WebAudioBackend, as well as logic in player.rs on the set_is_playing method to suspend audio when is_playing is set to false. Exposes pause method for the ruffle player in JavaScript with logic to display the play button when paused.
2020-09-29 11:05:23 -07:00
Luca Weiss d5cb396331 *: fix spelling mistakes 2020-09-19 16:17:58 -07:00
Nathan Adams e114282a4e web: Implement Show Error Details for panics 2020-09-13 15:20:44 -07:00
Nathan Adams 69d1e903fb web: Destroy shouldn't be able to throw exceptions 2020-09-13 15:20:44 -07:00
Nathan Adams f05fba069d web: Add basic panic screen 2020-09-13 15:20:44 -07:00
Nathan Adams 95275898c7 web: If ruffle panics, inform all instances (if possible) and poison future instances 2020-09-13 15:20:44 -07:00
Nathan Adams 4c6c8ee1f2 web: Add trace_observer to web api, which lets you capture trace output from a specific movie 2020-09-13 13:51:39 -07:00
Nathan Adams 4de2b7f3a0 web: Ensure exposed callbacks are on the <ruffle-player> 2020-09-03 18:17:44 -07:00
Nathan Adams 91cb597a79 web: Expose ExternalInterface callbacks on the player object, not the canvas 2020-09-03 18:17:44 -07:00
Nathan Adams 5880db43cd web: Respect allowScriptAccess, which defaults to false for streaming or 'sameDomain' for objects 2020-09-03 18:17:44 -07:00
Nathan Adams b5531a48d0 web: Allow reentrant ExternalInterface callbacks 2020-09-03 18:17:44 -07:00
Nathan Adams a49e8d8587 web: Implement two-way communication with ExternalInterface 2020-09-03 18:17:44 -07:00
Mike Welsh 4f6af6428e web: Prevent mouse/tap highlighting on player (fix #861) 2020-08-24 11:17:50 -07:00
JustinCB 3f1546ffc3 web: Add spl to flash filename check 2020-08-20 05:30:28 -07:00
JustinCB a2968d6fd0 web: Change polyfills to single true/false setting 2020-08-13 00:46:58 -07:00
JustinCB 6535967b74 Fix files in wrong places & eslint errors 2020-07-29 17:06:51 -07:00
David Wendt f56d16a68d Separate player creation from root movie setup, and allow users of Ruffle to load in movies synchronously or asynchronously.
During the small period of time when a player is created but has no root movie, a temporary empty movie is installed with an assumed stage size and framerate of 550x400@12fps. This is Flash default for new projects, so it seemed appropriate. User ActionScript cannot see these values, and I'm not even sure JavaScript can, either.
2020-07-23 23:02:51 -04:00
Nathan Adams 2df3b81f92 web: Allow avm_debug in web 2020-07-23 11:25:59 -07:00
JustinCB 8495e89a8b web: Match case-insensitively in embeds 2020-07-14 09:12:36 -07:00
JustinCB 64c7d6e393 web: Polyfill if data attribute or movie param is a swf filename 2020-07-14 09:12:36 -07:00
JustinCB ffba4c5a97 web: Match MIME type & clsid case-insensitively 2020-07-14 09:12:36 -07:00
Nathan Adams c07dbbb748 web: Remove & disable package-lock for subpackages, only root should have it 2020-06-13 12:35:14 -07:00
Nathan Adams d7092d0f30 web: Hoist common dev dependencies up to the top (except CLI) and hopefully improve how we bootstrap 2020-06-13 12:35:14 -07:00
dependabot-preview[bot] 94ad4a82c4 build(deps-dev): bump mocha from 7.2.0 to 8.0.1 in /web
Bumps [mocha](https://github.com/mochajs/mocha) from 7.2.0 to 8.0.1.
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mochajs/mocha/compare/v7.2.0...v8.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-11 10:04:46 -07:00
Nathan Adams 75759d9b3b chore: Document web with readmes 2020-05-27 00:11:02 -07:00
Nathan Adams df6764a69c chore: Add license metadata to all packages & crates 2020-05-27 00:11:02 -07:00
JustinCB 4828945666 web: Fix frame polyfill 2020-05-26 23:56:36 -07:00
Nathan Adams 34927583be web: Made VersionRange actually work, and add tests for it 2020-05-23 10:35:53 -07:00
dependabot-preview[bot] f8062b610f build(deps-dev): bump mocha from 7.1.2 to 7.2.0 in /web
Bumps [mocha](https://github.com/mochajs/mocha) from 7.1.2 to 7.2.0.
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/v7.2.0/CHANGELOG.md)
- [Commits](https://github.com/mochajs/mocha/compare/v7.1.2...v7.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-23 17:28:03 +00:00
Justin-CB cbc2f6a03a
web: Avoid TypeError when instantiating polyfill (fix #607)
Co-authored-by: JustinCB <JustinCB@opmbx.org>
2020-05-20 12:42:54 -07:00
Nathan Adams 6b464bf80f web: Build core on preparation of the core package 2020-05-19 11:42:57 +02:00
Nathan Adams d1bb3c4e28 web: Array.flat doesn't exist in node10 2020-05-19 11:42:56 +02:00
Nathan Adams b0b54b59f9 web: Avoid any issues with parseInt("0...") 2020-05-19 11:42:56 +02:00
Nathan Adams f3690db1bf web: Fixed bug with broken comparisons in Version#is_compatible_with 2020-05-19 11:42:55 +02:00
Nathan Adams bd6ed0b234 web: Add initial tests to core package 2020-05-19 11:42:55 +02:00
Nathan Adams 11f68b90f9 web: Switch to using commonjs style require/exports
It looks like things still don't play nice with modules yet :(
2020-05-19 11:42:55 +02:00
Nathan Adams b8e63045b2 web: Moved source of core into core/src, to prep for tests 2020-05-19 11:42:54 +02:00
Nathan Adams 55c9672921 web: Simplified export interface of ruffle-core 2020-05-19 11:42:54 +02:00
Nathan Adams e9a394ac27 web: Only core will build ruffle, the other packages will use that 2020-05-19 11:42:54 +02:00
Nathan Adams 7b8a4ffed1 web: Switch to using lerna for package management 2020-05-19 11:42:53 +02:00
Nathan Adams b6523324ed web: Move each web package into a packages/ directory 2020-05-19 11:42:53 +02:00