nosamu
1e3701279c
web: Add preferred renderer config
2023-04-25 09:00:12 +03:00
nosamu
569e822044
extension: Reduce code duplication
2023-04-25 08:48:59 +03:00
nosamu
9b87b31657
web: Don't inherit page CSS
2023-04-25 08:31:17 +03:00
relrelb
7af0a17d83
web: Update JSDoc lint rules
...
* Extend from `plugin:jsdoc/recommended-typescript-error`, which is
more suitable for TypeScript and errors by default.
* Remove default and disabled but passing rules.
* Configure `jsdoc/tag-lines` to match JSDoc style of current codebase.
2023-04-25 08:19:54 +03:00
nosamu
3cde3482f4
core: Add frame rate config option
2023-04-24 14:01:37 +02:00
Daniel Jacobs
256c2fe75c
web: No context menu on iOS if finger moves too far on long-press
...
Co-authored-by: n0samu <71368227+n0samu@users.noreply.github.com>
2023-04-22 08:57:47 +02:00
Daniel Jacobs
ebb14a7ab6
web: Use div element for save manager to support browsers without dialog
2023-04-21 17:28:07 +02:00
nosamu
3614437498
web: Don't duplicate context menu separators
2023-04-18 22:01:09 +02:00
nosamu
76d172b5c5
docs: Fix WindowMode doc comment
2023-04-13 19:54:32 +02:00
Lord-McSweeney
5af0eda375
web: Avoid triggering cloudflare checks
...
mimeTypes.item() and plugins.item() should wrap around 2^32.
2023-04-04 20:32:44 -07:00
relrelb
479926cdba
web: Migrate to TypeScript 5.0.0
...
Work around the newly introduced `--verbatimModuleSyntax` flag:
https://devblogs.microsoft.com/typescript/announcing-typescript-5-0/#verbatimmodulesyntax
2023-04-01 13:11:23 +03:00
Daniel Jacobs
f02e4a71d6
web: Give proper precedence to extension config when it is used
2023-03-31 03:03:11 -07:00
nosamu
e19f63c3c6
web: Small CSS fixups for save manager
2023-03-28 10:37:59 +03:00
Daniel Jacobs
b7c20a6c60
extension: Give precedence to toggles over default options ( fixes #5825 )
...
Also fixes #5696
2023-03-25 22:57:57 -07:00
relrelb
3c69bb27db
web: Enforce ESLint's `spaced-comment` rule
2023-03-25 10:03:55 +03:00
Daniel Jacobs
2ced2d2300
web: Don't polyfill with self-hosted Ruffle while extension is loading
2023-03-24 17:58:54 -07:00
nosamu
f97827ef9c
web: Display config parse errors
2023-03-22 16:51:55 -07:00
Daniel Jacobs
9832ee5845
web: Remove else from save manager, unneeded with early return
2023-03-21 08:47:16 +01:00
Daniel Jacobs
fe17ca8832
web: Don't replace save if user does not confirm needed reload
2023-03-21 08:47:16 +01:00
Daniel Jacobs
f123b5e50c
web: Don't break Ruffle when localStorage is unavailable
2023-03-21 08:47:16 +01:00
Daniel Jacobs
d2e7d8ba7a
web: Improve save manager styling
2023-03-21 08:47:16 +01:00
Daniel Jacobs
0cbfaf4a3e
Add confirmation for delete and reload content for delete conflict
2023-03-21 08:47:16 +01:00
Daniel Jacobs
92618f6894
web: Alow download sol to work on extension page by avoiding fetch
2023-03-21 08:47:16 +01:00
Daniel Jacobs
9671f7ccac
web: Close Save Manager when clicking outside of it
2023-03-21 08:47:16 +01:00
Daniel Jacobs
509d273073
web: Make all save manager functions private
2023-03-21 08:47:16 +01:00
Daniel Jacobs
ef3220e77d
web: Only accept sol files in save manager
2023-03-21 08:47:16 +01:00
Daniel Jacobs
320edd3c0f
web: Allow duplicate key replacement to reload page
2023-03-21 08:47:16 +01:00
Daniel Jacobs
10f35781fc
web: Add title text to save table keys in case of name duplicates
2023-03-21 08:47:16 +01:00
Daniel Jacobs
f71723c082
web: Only show context menu item for save manager when saves exist
2023-03-21 08:47:16 +01:00
Daniel Jacobs
94ff2891e9
web: Don't allow arbitrary upload of save files for technical reasons
2023-03-21 08:47:16 +01:00
Daniel Jacobs
54ad95beb3
web: Make save manager completely functional
2023-03-21 08:47:16 +01:00
Daniel Jacobs
824cc1689c
web: [WIP] Add Save Manager to context menu
2023-03-21 08:47:16 +01:00
MrCheeze
9e71ea9124
web: Allow ExternalInterface.call to call methods of primitive types ( close #9105 )
2023-03-19 07:18:01 +01:00
relrelb
156c76cb94
web: Simplify custom context menu separators logic
...
Instead deduplicating separators in `RufflePlayer.showContextMenu()`
using DOM attributes, do it right in `RufflePlayer.contextMenuItems()`,
using a simpler approach.
2023-03-18 02:10:08 -07:00
Nathan Adams
1bb8515d85
chore: Update avm2 compatibility warning to be less severe
2023-03-15 15:30:25 -07:00
Daniel Jacobs
5a1b43008b
web: Remove Config object; it was never a correct type for the config
2023-03-15 11:45:00 +01:00
Daniel Jacobs
5944bae33b
web: Log a message when the preloader configuration option is false
2023-03-02 10:51:36 +02:00
Daniel Jacobs
3051e66960
web: Mark shadow-DOM elements as readonly
2023-03-02 10:51:36 +02:00
Daniel Jacobs
a63f520449
web: Change preloader name while keeping old name for compatibility
2023-03-02 10:51:36 +02:00
Nathan Adams
b10d4876d3
web: Add compatibilityRules config option to disable all compatibility rules
2023-03-01 21:25:19 +01:00
Daniel Jacobs
c891a82440
web: Don't focus inside setTimeout on iOS and don't fire unneeded events
2023-03-01 08:15:58 +02:00
Daniel Jacobs
584cb4c1cf
web/ui: Open the virtual keyboard when clicking an editable EditText
2023-03-01 08:15:58 +02:00
Daniel Jacobs
b9b1fa4f8d
web: Add context menu item to show virtual keyboard
...
Co-authored-by: n42k <pedro@amaro.sh>
2023-03-01 08:15:58 +02:00
relrelb
9f8419a145
web: Change `ruffle-core` output directory to `dist`
...
This aligns with the other packages.
2023-02-24 12:43:01 +02:00
Daniel Jacobs
bcbf8c9108
web: Allow context menu to work on iOS using PointerEvents ( #9598 )
...
Co-authored-by: nosamu <71368227+n0samu@users.noreply.github.com>
2023-02-23 12:47:08 +02:00
relrelb
140e1fcfee
web: Use `@tsconfig/strictest`
2023-02-22 21:39:12 +02:00
nosamu
70bf0a816a
core: Add options to set and force stage scale mode
2023-02-22 12:13:20 +02:00
relrelb
1581123284
web: Miscellaneous tiny cleanups
2023-02-18 16:35:59 +02:00
relrelb
a7f41f4df5
web: Add missing access modifiers
2023-02-18 16:35:59 +02:00
relrelb
b36643f52d
web: Cleanup some comments
2023-02-18 16:35:59 +02:00
relrelb
903f8bc33a
web: Enforce ESLint's `no-constructor-return` rule
2023-02-18 16:35:59 +02:00
relrelb
f68542991f
web: Enforce ESLint's `curly` rule
2023-02-18 16:35:59 +02:00
relrelb
87ecbcc066
web: Remove `InternalContextMenuItem` type
...
Simply declare it inline.
2023-02-18 16:35:59 +02:00
David Wendt
85f544a6cc
web: Break out all the Flash identifier strings into a separate module and make `plugin-polyfill.ts` only import that.
2023-02-15 21:27:14 -07:00
nosamu
cfa3363416
web: Construct SwfMovie with spoofed URL when loaded from data
2023-01-29 17:55:55 +01:00
Nathan Adams
4117eece3b
web: Indicate when we used cached debug info
2023-01-16 23:18:42 +01:00
Nathan Adams
6f967d4b3c
web: Cache the output of render debug info in case of panics
2023-01-16 23:18:42 +01:00
Lord-McSweeney
8cef9b65a1
Fix playerVerion misspelling
...
...and also add punctuation to docs.
2023-01-16 17:49:24 +01:00
Lord-McSweeney
4049acee66
Update config.ts
2023-01-16 17:49:24 +01:00
nosamu
21c65252f5
web: Warn about root movie fetch over file protocol
2023-01-10 13:34:06 +01:00
CUB3D
11982c6d7d
web: Allow specifying player version
2023-01-10 13:13:30 +01:00
Nathan Adams
a69d30bb67
render: Add debug info method to renderer backends
2023-01-05 05:51:32 +01:00
Lord-McSweeney
9fecbc391c
Fix incorrect line-height being inherited
...
Sets line-height to default on Ruffle's shadow-root, preventing incorrect line-height inheritance from the document.
2023-01-04 08:43:13 +01:00
nosamu
f92be1c798
web: Make RufflePluginArray iterable
2022-12-19 11:56:18 -08:00
nosamu
3a98981030
web: Add CORS panic error message with FAQ link
2022-12-19 11:21:38 -08:00
nosamu
52d94a4a13
web: Fix strings using buildInfo variables
2022-12-14 10:01:35 +01:00
relrelb
54d59b0ab6
web: Fix TypeScript 4.9 upgrade
...
Per the last paragraph in https://devblogs.microsoft.com/typescript/announcing-typescript-4-9/#in-narrowing ,
TypeScript 4.9 checks that the right side of `in` operator is assignable
to `object`.
Since we can't guarantee that in the `Reflect.has()` polyfill, add
a `@ts-expect-error` annotation to avoid build failure.
2022-12-14 07:30:34 +02:00
aidanbabo
d14ce5243f
web: Add version number requested in #8021
...
Change the compile time "macros" such as `%VERSION_NUMBER%` to be
contained in only one file `build-info.ts`.
Closes #8021
2022-12-13 22:49:20 +01:00
Toad06
1cb2678013
web: Add `has` and `ownKeys` methods to the `Reflect` polyfill
2022-11-14 21:31:08 +02:00
relrelb
acdb5ccb52
web: Remove `RufflePlayer` element existence-checks
...
They should always be present.
2022-10-14 11:56:44 +03:00
relrelb
29b661b366
web: Avoid deprecated `HTMLDocument` type
...
As suggested, use `Document` instead.
2022-10-14 11:56:44 +03:00
relrelb
a8f869329e
web: Fix config with `serde-wasm-bindgen`
...
Since `serde-wasm-bindgen` doesn't support `#[serde(default)]` (https://github.com/cloudflare/serde-wasm-bindgen/issues/20 ),
we no longer able to deserialize a partial `Config` object. As a solution,
take care to pass a full object from the TypeScript side.
2022-09-26 17:23:32 +03:00
Nathan Adams
97110cbecd
web: Add renderer type to player debug/panic info
2022-09-04 18:55:13 -07:00
TÖRÖK Attila
8bb6e77525
web: Also enable the "reference-types" feature in the build with WASM extensions
2022-09-02 13:36:20 -07:00
Daniel Jacobs
d9da45d0f2
web: Don't show loading bar when wasm Content-Length does not exist
2022-09-01 21:43:53 +03:00
nosamu
c5c619abbd
web: Correct IANA Flash MIME type
2022-08-29 02:49:23 -07:00
nosamu
c83ae114b2
web: Move MIME type check to its own function
2022-08-29 02:49:23 -07:00
Daniel Jacobs
29bdd138d5
web: Don't add debug info to context menu in insecure context
...
It won't work anyway, since the Clipboard API doesn't work in insecure contexts.
2022-08-28 20:18:46 -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
relrelb
e3831d2228
web: Disallow imports not used as values
...
Configure [`importsNotUsedAsValues`](https://www.typescriptlang.org/tsconfig#importsNotUsedAsValues )
to `error`, and switch from `import` to `import type` where needed.
Also remove the `strict` configuration, as it's inherited from
`@tsconfig/recommended`.
2022-08-26 17:27:29 -07:00
Daniel Jacobs
c008cc4dea
web: Add debug info context menu item
2022-08-26 16:13:55 -07:00
Adrian Wielgosik
b18329c8fe
web: Allow modifying player volume via JS
2022-08-20 11:53:42 -07:00
Daniel Jacobs
7105c1e803
web: Clarify uncompressed length is in bytes in metadata
2022-08-03 09:17:24 +03:00
Daniel Jacobs
ce95f01de3
web: Include uncompressed length of SWF in metadata
2022-08-03 09:17:24 +03:00
Mike Welsh
9fb46c71ad
web: Use `AudioBufferSourceNode` for web audio
...
On web:
* Mix audio on the Rust side, piping to `AudioBufferSourceNode`.
* Decode MP3 using `symphonia`.
2022-07-28 21:25:33 -07:00
relrelb
1accf2d8f9
web: Make `SourceAPI` a singleton
...
As a first step towards a simpler Web API, convert `SourceAPI` from
a class to a constant object, under the assumption that `SourceAPI`
isn't a public Ruffle API and as such is safe to be changed.
As a result the different `ruffle-core` users don't need to construct
a new `SourceAPI` instance before calling `PublicAPI.negotiate()`.
2022-07-23 10:37:33 -07:00
nosamu
01c8c38762
web: Hide loading screen when root movie download fails
2022-07-20 19:55:12 +03:00
Daniel Jacobs
56adcc5665
web: Add a loading screen ( #7396 )
...
* web: Add a loading screen
* web: Workaround sometimes overwitten remove method
* web: Completely remove exact px values from preloader
* web: Add meaningless loading animation to preloader
* web: Make preloader position relative
* web: Minor preloader CSS changes
* web: Don't change autoplay/unmuteOverlay showing logic
* demo: Use preloader-background for demo
* web: Don't fully remove preloader
* web: Hide preloader loading bar if there's no content-length
* web: Fix typo in load-ruffle
* web: Show/hide playButton and unmuteOverlay based on preloader state
* web: Address preloader feedback
* web: Revert ESLint change
* web: Remove unneeded optional chaining
* web: Change load option from hasPreloader to preloader
* web: Address some preloader feedback
* web: Change margin-bottom for preloader loading anim
* web: Simplify preloader conditional
* web: Show/hide full container when hiding/showing preloader
* web: Make preloader full-size
2022-07-19 22:20:53 +03:00
nosamu
a31dd2e101
Revert "web: Add a loading screen"
...
This reverts commit bec0710175
.
2022-07-11 19:05:52 +02:00
nosamu
47d9c5220a
Revert "web: Workaround sometimes overwitten remove method"
...
This reverts commit ed4f0b98b2
.
2022-07-11 19:05:52 +02:00
nosamu
478c69f846
Revert "web: Completely remove exact px values from preloader"
...
This reverts commit 2c067fe5dd
.
2022-07-11 19:05:52 +02:00
nosamu
d79e45e49e
Revert "web: Add meaningless loading animation to preloader"
...
This reverts commit c48ca2874b
.
2022-07-11 19:05:52 +02:00
nosamu
7c522f2d66
Revert "web: Make preloader position relative"
...
This reverts commit ded77ab46a
.
2022-07-11 19:05:52 +02:00
Daniel Jacobs
ded77ab46a
web: Make preloader position relative
2022-07-10 13:30:42 -07:00
Daniel Jacobs
c48ca2874b
web: Add meaningless loading animation to preloader
2022-07-10 13:30:42 -07:00
Daniel Jacobs
2c067fe5dd
web: Completely remove exact px values from preloader
2022-07-10 13:30:42 -07:00
Daniel Jacobs
ed4f0b98b2
web: Workaround sometimes overwitten remove method
2022-07-10 13:30:42 -07:00
Daniel Jacobs
bec0710175
web: Add a loading screen
2022-07-10 13:30:42 -07:00
nosamu
7fa35f2a82
web: Construct relative SWF URLs using document base
2022-07-07 08:58:04 +03:00
Toad06
d53af46c76
web: Disable "Report bug" link if build is outdated
2022-05-30 20:50:15 +03:00