[webkit-dev] Determine whether all resources have been
successfully loaded
Plessl Christian
christian at plesslweb.ch
Sat Aug 4 04:36:31 PDT 2007
Hi Darin
Thanks a lot for your insightful reply.
You are perfectly right, in general there is no specific point in
time when a web page can be considered as fully loaded, since new
loads can be triggered by JavaScript etc. For my specific application
that converts HTML pages to PDF I will have to find a good heuristic
to determine the point where I will start the PDF generation.
>> 1) didFinishLoadingFromDataSource is also called for the _missing_
>> resource. I would have expected that didFailLoadingWithError is
>> called
>
> I don't think this is a bug.
> When confronted with a bad URL, I presume the web server passes
> back an error page. From the point of view of the WebKit API,
> loading that error page is a successful load
Good point, I did not think about missing resources like that. Your
suggestion to evaluate the NSHTTPURLResponse seems like a good
solution to the problem.
>> 2) didFinishLoadForFrame myFrame is called, before all resources
>> of frame f2 have been loaded
>
> This might be a bug.
>
> I believe the design is that each frame is independent and parent
> frames don't necessarily wait for subframes. But I could be wrong.
> It might be a bug.
I will file a bug report after I have checked that the same error is
still present in the latest version of WebKit.
What is the simplest way to check this? Will downloading the nightly
webkit build and setting the DYLD_FRAMEWORK_PATH to /Applications/
WebKit.app/Contents/Resources/ work?
>> 3) didFinishLoadForFrame is called although the load was not
>> successfull although. This contradicts Apple's documentation that
>> says: "This method is invoked when a location request for frame
>> has successfully; that is, when all the resources are done
>> loading." (Although the first part of this sentence is unclear and
>> incomplete)
>
> That documentation seems pretty unclear, and quite possibly wrong.
> You can report bugs in the Apple documentation at <http://
> bugreport.apple.com>.
I will report a bug with Apple.
Thanks a lot for your help,
Christian
--
Christian Plessl christian at plesslweb.ch http://plesslweb.ch
More information about the webkit-dev
mailing list