Closed Bug 150984 Opened 23 years ago Closed 23 years ago

Chimera fails to download non-displayable files via FTP (single-click link or button)

Categories

(Camino Graveyard :: General, defect)

PowerPC
macOS
defect
Not set
blocker

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: chrispetersen, Assigned: sdagley)

References

()

Details

Attachments

(2 files, 3 obsolete files)

Build: 2002-06-10-05 Platform: OS X 10.1.5 Expected Results: Clicking on file or link should open save dialog immediately What I got: Clicking on file or link appears to do nothing. The user must right- click or control- click on link , then select Save file as. BTW, This is probably a dup of another bug but couldn't find this specific issue in bug summary. Steps to reproduce: 1) Go to url 2) Click on Chimera build 3) Save dialog doesn't appear like expected
This is very cumbersome on the user to have to select Save File as to properly download a file. Needs to automatically open save dialog or open Download window after clicking.
Severity: normal → blocker
Blocks: 147975
*** Bug 152241 has been marked as a duplicate of this bug. ***
->dagley
Assignee: saari → sdagley
*** Bug 153341 has been marked as a duplicate of this bug. ***
Component: Page Layout → General
QA Contact: winnie → sairuh
Summary: Attempting to download file isn't automatic for the user → Attempting to download (via single clicking link) file isn't automatic for the user
Build 20020621 16:08 With ftp, an alert says "550 ..path../Chimera.dmg.gz: Not a directory." ftp://ftp.mozilla.org/pub/chimera/nightly/latest-trunk/
*** Bug 153974 has been marked as a duplicate of this bug. ***
This should just fall out when carlen lands 118203. Leaving open to verify.
Depends on: 118203
local file landing is done, but this isn't fixed yet. Needs more work
Hrm, now I'm doubting this is directly related to 118203. It looks more like the backend code isn't figuring out that it needs to download the file. Digging deeper...
There are at least these issues: 1. We don't have anything which implements NS_IHELPERAPPLAUNCHERDLG_CONTRACTID. The lack of that causes nsExternalAppHandler::OnStartRequest to abort. Even making a dummy impl of the component which would just answer "open using helper app" without posing any UI is some work. 2. The mac version of nsOSHelperAppService.cpp needs to be hooked into the build instead of the Unix one. This is just a matter of file movement and Makefile changes. This is the code that makes use of nsILocalFileMac.
Attached patch as far as i've gotten (obsolete) — Splinter Review
this is as far as i got. i still get WARNING: Cannot tell if file:///Users/pink/Library/Chimera/Profiles/default/8lavktqv.slt/downloads.rdf is a directory or file, file nsIOServiceUnix.cpp, line 71 and the file doesn't start downloading.
Can someone modify this summary so that it reflects the symptom more? This effectively breaks ftp URLs for people, but the summary doesn't say "ftp". I found this bug by searching RESOLVED bugs w/ "ftp" in the summary.
Taking a stab at a new summary. Chimera will successfully access files via FTP that it can display such as HTML, text, or image files, but fails when directed to access a file it must download, such as .gz.
Summary: Attempting to download (via single clicking link) file isn't automatic for the user → Chimera fails to download non-displayable files via FTP
Summary: Chimera fails to download non-displayable files via FTP → Chimera fails to download non-displayable files via FTP (single-click link or button)
Attached patch patch for uriloader Makefile (obsolete) — Splinter Review
With the files in their new place, it builds (haven't tested) with these Makefile changes.
minor update to pink's patch. Still not working with Mac version of uriloader building :-(
Attachment #89839 - Attachment is obsolete: true
In nsExternalHelperAppHandler::ExecuteDesiredAction(), mProgressWindowCreated == FALSE. This stops the code from moving the downloaded file from temp to where it should be, or launching it, etc.
With this patch, the download actually completes. There is no progress shown though, so that needs to be filled in. It replaces the component which implements nsIDownload rather than using the one from xpfe which depends on having a download manager. Right now, I don't think we need a manager. Let's just hook the stubbed out impl of nsIDownload and nsIWebProgressListener to our download dialog.
Attachment #90044 - Attachment is obsolete: true
can we get what we have checked in please? We need to burn a CD early on monday, and we really need this working, even without a progress dialog.
Unfortunately we can not use the progress dialog implementation in ProgressDlgController.mm as the progress dialog for downloads initiated by uriloader. It's not just a dialog, it initiates and controls the download itself.
Ok, it's 5:30 in the morning and I'm still finding problems with the automatic download and launch helper app sans progress dialog so it looks like Conrad's patch that prompts and saves sans progress is the best we have for now.
Is there any way we can toss up a simple dialog with this patch that simply says something like "downloading..."?
patch landed, with no visible progress. I took a look at separating the progress dialog controller so it can be re-used and it's not hard, but it will take more than the two hours i had available to do the work. qa: verify that files are downloaded, but i'm opening another bug on the lack of progress (bug 156300)
Status: NEW → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
> Unfortunately we can not use the progress dialog implementation in > ProgressDlgController.mm as the progress dialog for downloads initiated by > uriloader. It's not just a dialog, it initiates and controls the download itself. So can't we have some kind of proxy or controller that controls the download, and have both speak to the same dialog?
> So can't we have some kind of proxy or controller that controls the download, and have both speak to the same dialog? That's my plan.
after looking at the code, there's only a little in the progress dialog controller that knows about the particular download listener that impls the weird "manual save" behavior. it should be easy, as conrad noted, to abstract this out so we can re-use the controller.
With the 2002-07-08-13 build, single-clicking on ftp link results in a save dialog opening. I can specify the name and location of file. Verifying that file is saved and can be opened in Finder.
Status: RESOLVED → VERIFIED
I think this is missing uriloader/exthandler/mac/Makefile.in in the patch. To diff new files, you need to first add the file with 'cvs add', then use the -N option to 'cvs diff'.
Just to clarify the details on bryner's comment re: a missing Makefile.in - uriloader/exthandler/Makefile.in takes care of building files in uriloader/exthandler/mac/
No longer blocks: 147975
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: