David Wendt
0f9db1744b
Add a backend for controlling the enclosing web browser.
2019-09-16 20:04:30 -07:00
David Wendt
4502ad54c2
Allow dynamic interdiction to apply to object/embed tags directly
2019-09-14 15:15:26 -05:00
David Wendt
a942eb3ab2
Support data parameter for SWF url.
2019-09-14 15:15:26 -05:00
Mike Welsh
dbbeccaacd
web: More accurate radial gradients on canvas
2019-09-12 01:02:46 -07:00
David Wendt
84759f8cea
Fix our previous changes to the Ruffle core loader so that both the extension and demo work
2019-09-11 20:28:58 -04:00
Mike Welsh
8fcee704c0
chore: cargo fmt
2019-09-09 20:42:08 -05:00
Mike Welsh
ce9a0a8ef6
web: Initial masking support
...
Also add web/src/utils.rs for some methods to ease management
of errors for wasm_bindgen.
2019-09-09 20:42:08 -05:00
Mike Welsh
28f0ce3c83
Mask work
2019-09-09 20:42:08 -05:00
David Wendt
287870ec03
Get rid of the superfluous bootstrap file as it appears to be causing Webpack problems
2019-09-04 23:16:44 -04:00
Mike Welsh
1ff86012ae
chore: Fix jpeg-decoder warnings in Cargo.toml
2019-09-04 15:56:10 -07:00
David Wendt
f59d62516e
Fix demo site regressions.
2019-09-03 18:38:05 -04:00
David Wendt
9dd01494f3
build.sh should be executable
2019-09-01 11:49:27 -06:00
David Wendt
406cc746ce
The MimeType for `application/x-shockwave-flash` should list it's extension as `swf`, not `spl`.
2019-08-31 18:57:26 -04:00
David Wendt
fc67f0872f
Don't break Ruffle if we encounter an embed or object without a size.
2019-08-30 22:27:51 -04:00
David Wendt
adc1a79155
Place the extension related build system back .
...
Built extension files now live in `web/extension/build`.
2019-08-30 22:27:51 -04:00
David Wendt
b4b38057e4
Add checks for the Ruffle element being connected.
...
When a Ruffle player element is disconnected, attempts to play SWF files
fail semi-silently.
We also check for nested objects, since only the top should be
successful in loading.
2019-08-30 22:27:50 -04:00
David Wendt
f01f479f54
Don't forget random bits of object tag contents!
2019-08-30 22:27:50 -04:00
David Wendt
2b2f27afad
Falsify a better-sounding version of Flash.
...
This is at least the version Chrome claims to have.
2019-08-30 22:27:50 -04:00
David Wendt
0d8b72acce
Don't try to wrap text nodes, it won't end well.
2019-08-30 22:27:50 -04:00
David Wendt
190666fe91
Interdict Flash tags that use ActiveX.
2019-08-30 22:27:50 -04:00
David Wendt
21454b327b
Fix incorrect centering on homestarrunner.net its dot com
2019-08-30 22:27:49 -04:00
David Wendt
61171037cd
Recognize really old FutureSplash era tags as Flash
2019-08-30 22:27:49 -04:00
David Wendt
9ec4892ae7
Fix regression caused by the extension file move
2019-08-30 22:27:49 -04:00
David Wendt
de00145755
Add icons for the extension
2019-08-30 22:27:49 -04:00
David Wendt
cdf50e29bd
Move the build system and package files out of the extension directory.
...
This keeps the node_modules out of the extension package.
2019-08-30 22:27:49 -04:00
David Wendt
ce5ab95a9a
Compatibility with Chrome's extension environment
2019-08-30 22:27:48 -04:00
David Wendt
fa5a3164ea
should be executable on unixlikes
2019-08-30 22:27:48 -04:00
David Wendt
c02b4c111b
Overwrite navigator.plugins to defeat flash detects
2019-08-30 22:27:48 -04:00
David Wendt
101b1e5715
Fix not being able to handle multiple embeds.
...
This is caused by `HTMLCollection` being too smart for it's own good and
removing elements behind the loop's back.
2019-08-30 22:27:48 -04:00
David Wendt
6fbdc6f1f4
Respect the page's width and height settings in our custom elements
2019-08-30 22:27:47 -04:00
David Wendt
8060802465
Kill `bootstrap.js`, load the WASM ourselves.
...
Instead of forcing a chunk load on Webpack just so we can have Webpack prepare the WASM for us, we're now using the `no-modules` mode of `wasm-pack` manually and loading the resulting files ourselves.
I still have to force Ruffle to load outside of the extension sandbox though...
2019-08-30 22:27:47 -04:00
David Wendt
7c6ad57443
Let's completely force webpack to run outside of the extension sandbox.
...
This idea was stolen from @devsnek, whom I'm currently writing an explanation for.
2019-08-30 22:27:47 -04:00
David Wendt
7a6169275d
Tell webpack about the extension resource URLs
2019-08-30 22:27:47 -04:00
David Wendt
385b9f807e
Fix most (though not all) of our extension bugs.
...
I still can't figure out how to keep Webpack from making requests to the
injected site...
2019-08-30 22:27:47 -04:00
David Wendt
de5a2c31c0
Add embed support.
2019-08-30 22:27:47 -04:00
David Wendt
9529893437
Add console error logging for failed SWF loads
2019-08-30 22:27:46 -04:00
David Wendt
ee8b6d57ba
Don't pull params until after we've been connected.
...
Otherwise, we don't have any params yet...
2019-08-30 22:27:46 -04:00
David Wendt
5655ad44a3
It turns out, we don't need to wait for DOMContentLoaded.
2019-08-30 22:27:46 -04:00
David Wendt
c0e6866745
Fix the demo file upload option
2019-08-30 22:27:46 -04:00
David Wendt
be21a0dbbb
Configure the `<ruffle-object>` tag to style as a
...
block element, like `<object>`
2019-08-30 22:27:45 -04:00
David Wendt
2a2dbba21f
Use a custom element to actually house the Ruffle
...
instance, even though we can't really upgrade `<object>` directly...
2019-08-30 22:27:45 -04:00
David Wendt
6f32fc022c
Copy attributes from hijacked Flash objects
2019-08-30 22:27:45 -04:00
David Wendt
0414e24ce2
First start on extension packaging
2019-08-30 22:27:45 -04:00
David Wendt
bac5ecfe8d
Alter the demo a bit so that it latches onto an
...
already-existing object tag and replaces it with ruffle.
2019-08-30 22:27:45 -04:00
Mike Welsh
35652ae87e
chore: Update dependencies
...
Run cargo update. Remove git dependency on jpeg-decoder (the latest
version was published to crates.io). Update swf-rs to latest to
disable smoothing in SWFv7 and lower (addresses #28 ).
2019-08-29 14:57:12 -07:00
Mike Welsh
6a5c5ab1df
chore: Add rustfmt.toml and rustfmt pass
2019-08-26 16:38:48 -07:00
Mike Welsh
3a795fff47
web: image-rendering: pixelated for nonsmoothed bitmaps
...
TODO: Firefox uses crisp-edges, Chrome uses pixelated. Clean this up
at some point.
Addresses #28 .
2019-08-24 10:59:56 -05:00
Mike Welsh
324a410cb1
render: Properly render premultiplied alpha bitmaps
2019-08-22 15:24:50 -07:00
Mike Welsh
022a0746ca
web: Add hack for Firefox additive alpha cxforms
...
This hack removes additive alpha components from color transforms
on Firefox. See #38 .
2019-08-22 14:13:37 -07:00
Mike Welsh
3933b00000
web: Use initial timestamp from requestAnimationFrame
...
Previously Performance.now() was used to grab the initial timestamp
for calculating dt in requestAnimationFrame. However, this doesn't
seem to be reliable and resulted in negative dt values in Chrome.
Now we just use an Option for the timestamp and initialize it to None.
The first animation callback will set the timestamp.
2019-08-22 13:28:06 -07:00