Skip to content
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

File Handling #158

Closed
dbaron opened this issue May 8, 2019 · 7 comments · Fixed by #274
Closed

File Handling #158

dbaron opened this issue May 8, 2019 · 7 comments · Fixed by #274
Labels
position: defer venue: W3C CG Specifications in W3C Community Groups (e.g., WICG, Privacy CG)

Comments

@dbaron
Copy link
Contributor

dbaron commented May 8, 2019

Request for Mozilla Position on an Emerging Web Specification

Other information

This proposal was just submitted for TAG review, and it seems at a high level like something I'd be interested in. I haven't looked at the details yet. It's still explainer-only; no spec yet.

@dbaron dbaron added the venue: W3C CG Specifications in W3C Community Groups (e.g., WICG, Privacy CG) label May 8, 2019
@annevk
Copy link
Contributor

annevk commented May 10, 2019

So the main use case seems to be operating on OS-level files in web applications whereby the OS knows about the relevant web application due to a prior visit of the user to that application (and whatever additional restrictions are applied on top). So instead of application -> file, you can now go file -> application, as you already could with native applications.

The bits I don't like here:

  • Relying on app manifest. It's not entirely clear to me that is the way to go for all things and in particular if we get Origin Policy/Manifest there might be changes here.
  • Enforcing a particular kind of URL to be generated. I don't think we should force particular URLs on applications, even if it's only the query parameters (at least not beyond ./well-known/ and friends).

It seems somewhat more natural to me that a service worker is involved here and that opens the application as appropriate and forwards the file handle to the appropriate place.

@dbaron
Copy link
Contributor Author

dbaron commented Feb 24, 2020

In #274 @annevk is proposing a defer position here. I guess that's okay, but given that there is a good bit of activity elsewhere relating to this, e.g., in w3ctag/design-reviews#371, I tend to think it may be worth developing a real position here sooner rather than later.

@annevk
Copy link
Contributor

annevk commented Feb 25, 2020

I'm happy to keep this open until there's been another update.

The other worry I have is that creating good UI for this is hard and there might be quite bit of spam. Even with native applications it's usually pretty bad for common types.

@dbaron
Copy link
Contributor Author

dbaron commented Mar 3, 2020

I think it's also worth noting that this has a dependency on native file system here.

@annevk
Copy link
Contributor

annevk commented Mar 4, 2020

That's defer per #154 and per https://wicg.github.io/native-file-system/ looks pretty drafty still? In that case moving ahead with defer here too seems fine to me, but up to you.

annevk added a commit that referenced this issue Apr 7, 2020
dbaron pushed a commit that referenced this issue Apr 7, 2020
@Jaifroid
Copy link

This API is launching in Chromium browsers as of Chromium 98. Just in case that should be a trigger for considering it further now.

@FossPrime
Copy link

FossPrime commented Feb 24, 2022

Support for it is being actively worked on in vscode.dev, excalidraw launched support for it during the Chrome 92 origin trial, as a Linux, CrOS, Windows and MacOS only feature, Android is notably missing.

Safari 15.2 for MacOS 12 launched expanded File System API support, which is a prerequisite for all use cases, and also missing from Firefox https://caniuse.com/mdn-api_filesystemfilehandle

I've filed an issue with caniuse to track File Handling API support.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
position: defer venue: W3C CG Specifications in W3C Community Groups (e.g., WICG, Privacy CG)
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants