www.dropbox.com - Unable to upload files
Categories
(Web Compatibility :: Site Reports, defect, P1)
Tracking
(firefox128 affected, firefox130 affected)
People
(Reporter: ctanase, Unassigned)
References
(Depends on 1 open bug, )
Details
(Keywords: webcompat:platform-bug, webcompat:site-report, Whiteboard: [webcompat-source:web-bugs])
User Story
platform:android impact:workflow-broken configuration:general affects:all branch:release diagnosis-team:webcompat
Attachments
(1 file)
1.00 MB,
video/mp4
|
Details |
Environment:
Operating system: Android 11
Firefox version: Firefox Mobile 128.0/130
Steps to reproduce:
- Go to https://www.dropbox.com
- Log into your account.
- Tap on "Upload" and then on "File".
- Upload any file.
- Observe the behavior.
Expected Behavior:
The file gets uploaded.
Actual Behavior:
The file is stuck in queue.
Notes:
- Reproduces regardless of the status of ETP
- Reproduces in Firefox Nightly, and Firefox Release
- Does not reproduce in Chrome
Created from https://github.com/webcompat/web-bugs/issues/139564
Reporter | ||
Comment 1•4 months ago
|
||
Reporter | ||
Updated•4 months ago
|
Updated•4 months ago
|
Updated•3 months ago
|
Comment 2•3 months ago
|
||
In Chrome, uploading happens via POST to https://www.dropbox.com/2/files/upload_session/append_v2 which happens after https://www.dropbox.com/cmd/upload_precheck
Comment 3•3 months ago
|
||
We get this far and it looks like isWebkitFile is false which causes us to not get much further:
this.uploadLocalFiles = async() => {
const t = this.itemsAsList.filter(
(
t => t.source === s.FileSource.Computer &&
!t.isDir &&
t.file &&
- 1 !== Q.indexOf(t.status)
)
);
for (const e of t) e.file &&
s.isWebkitFile(e.file) &&
(
this.scheduler.addFile(e.file, e.destPath, e, e.contentEncryptionInfo),
e.status = s.UploadStatus.Queued,
e.bytesUploaded = 0,
this.updateParentStatus(e)
);
this.isStopped = !1,
this.notifyAll(),
await this.scheduler.startUploading(),
this.notifyAll()
isWebkitFile
looks something like: e => 'webkitRelativePath' in e
Comment 4•3 months ago
|
||
webkitRelativePath is not exposed on Android because:
- name: dom.webkitBlink.dirPicker.enabled
type: RelaxedAtomicBool
value: @IS_NOT_ANDROID@
mirror: always
Comment 5•3 months ago
|
||
setting dom.webkitBlink.dirPicker.enabled=true
makes uploading work
Comment 6•3 months ago
|
||
dom.webkitBlink.dirPicker.enabled
has always been disabled on Android: https://hg.mozilla.org/mozilla-central/rev/5785e6e80c66
Smaug, do you know why?
Updated•3 months ago
|
Comment 7•2 months ago
|
||
baku might recall. (Was it that there isn't/wasn't a good file picker or what on Android?)
Comment 8•2 months ago
|
||
Baku said he doesn't remember. I'll investigate.
Comment 9•2 months ago
|
||
<input type=file webkitdirectory> is definitely not working on Android when enabled, but it is not really working on mobile Chrome either.
Need to do some more testing.
Comment 10•2 months ago
|
||
There's logging under "FilePickerDelegate" which may help:
const { debug, warn } = GeckoViewUtils.initLogging("FilePickerDelegate");
Comment 11•2 months ago
|
||
Aha, https://searchfox.org/mozilla-central/rev/6e6265bd607cbe4c96e714f86d3d9e36620f63d6/mobile/shared/components/geckoview/FilePickerDelegate.sys.mjs#20,23
That is why https://mozilla.pettay.fi/moztests/webkitdirectory.html can't work even if the pref is enabled.
Comment 12•2 months ago
|
||
I guess that GeckoView side have to design delegate API (bug 1674428).
Description
•