-
-
Notifications
You must be signed in to change notification settings - Fork 787
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
avm1: Partially implement FileReference #7596
Conversation
3aa44bd
to
7857128
Compare
e315d8b
to
b0f687a
Compare
b0f687a
to
104b04f
Compare
104b04f
to
1302720
Compare
Thanks for the patience here, this one's a little chunky but I'll take some time to review it this week |
ea3bd5d
to
9adbeb8
Compare
Since Many thanks for your help, @CUB3D. |
Howdy y'all! I have a flash project that I would like to revive and it works ALMOST perfectly in Ruffle...but it relies on the file dialog 😞 ...We're so close, but so far. Would anyone be interested in reviving this pull request and seeing it across the finish line? I would be happy to spend some money to make it worth your time. If it impacts your decision the flash project we are trying to revive is an open source project and it is going to be used by the community of another open source project . The SWF file that we are hoping to run again is here: It's browser based so downloading with WASM would be important. Thanks for all the awesome work! Let me know if I can make it worth someone's while to get this PR wrapped up and merged in. ❤️ ❤️ |
9adbeb8
to
b563953
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with one minor fixup
|
3333d81
to
c2e39ca
Compare
c2e39ca
to
af38664
Compare
Thank you so much for doing this! Is adding support for ActionScript3 on the road map at all? Is there anything that I could do to help get it on the road map? |
This partially implements
flash.net.FileReference
(#307), based of @hatal175's initial work on implementingbrowse
from around 2021.Implements:
browse
AsyncFileDialog
crate on all platforms.download
onProgress
callback is ran after the download has completedupload
Does not implement:
cancel
In addition to adding the above, the test harnesses have been updated to allow simulating successful / failed requests, via a new
TestNavigatorBackend
and dialog interactions can be simulated via theTestUiBackend
allowing regression tests for the new functionality.On web platforms, the ability to upload is dependent on cors configuration for the destination which may still prevent some content from working.
Whilst implementing this, care has been taken to match the ordering for the callbacks that Flash Player invokes in erroneous conditions, however there may still be some differences in some scenarios. To facilitate this,
NavigatorBackend::fetch
has been updated to return aFetchError
containing error details.Remaining:
Dates
file-handle-inner
on wasm PolyMeilex/rfd#153)