LivePage and Safari
When I loaded up the Chatola demo, I noticed that Safari (2.0.2) was still "loading" the page. I sat there waiting for a few seconds before I realized that it would never stop because of the way the LivePage works. (Yes, I'm brand-new.) The first time, I clicked on Stop and of course nothing worked. To work around the problem, I included the LivePage code in the <head>, and added an onload handler to <body> to call connect(0). This didn't fix it, so I changed it to setTimeout('connect()', 1). That worked, Safari no longer tells the user that it's waiting for the page to load. This seems like a Safari bug, but would it make sense to patch the Nevow code with this work-around? Where do you get started to submit a change like this? Thanks! Beau
On Thu, Dec 01, 2005 at 12:13:16PM -0500, Beau Hartshorne wrote: I'm not a javascript or Safari expert but...
When I loaded up the Chatola demo, I noticed that Safari (2.0.2) was still "loading" the page. I sat there waiting for a few seconds before I realized that it would never stop because of the way the LivePage works. (Yes, I'm brand-new.) The first time, I clicked on Stop and of course nothing worked.
The problem is that the livepage opens a connection from the browser to the server after the rendering is complete. This makes the browser believe the page has still to finish rendering and keeps the loading up. I'm unsure if this has to be considered a bug or a different implementation but it is indeed annoying.
To work around the problem, I included the LivePage code in the <head>, and added an onload handler to <body> to call connect(0). This didn't fix it, so I changed it to setTimeout('connect()', 1). That worked, Safari no longer tells the user that it's waiting for the page to load.
LivePage is about to be deprecated in favour of Athena but this fix still makes sense for Athena too (since the same problem is available there). I think patching both makes sense and if using the timeout actually fixes the problem without breaking functionality then be it. :).
This seems like a Safari bug, but would it make sense to patch the Nevow code with this work-around? Where do you get started to submit a change like this?
In the nevow bug tracker. http://divmod.org/trac/newticket -- Valentino Volonghi aka Dialtone Now Running MacOSX 10.4 Blog: http://vvolonghi.blogspot.com http://weever.berlios.de
I'm unsure if this has to be considered a bug or a different implementation but it is indeed annoying.
I checked on #webkit, and they said it may be a Safari bug. They invited me to submit it to WebKit's bugzilla.
LivePage is about to be deprecated in favour of Athena but this fix still makes sense for Athena too (since the same problem is available there). I think patching both makes sense and if using the timeout actually fixes the problem without breaking functionality then be it. :).
It doesn't seem to cause any problems with Safari, Firefox or IE. Does the perpetual loading problem exist in any other browsers?
In the nevow bug tracker.
Does someone have an active installation of Chatola that we could use to demonstrate the reduction (for trac and bugzilla)? Thanks, Beau
On Thu, Dec 01, 2005 at 12:57:20PM -0500, Beau Hartshorne wrote:
I checked on #webkit, and they said it may be a Safari bug. They invited me to submit it to WebKit's bugzilla.
Then I think it's ok to work around it until it is not needed anymore.
It doesn't seem to cause any problems with Safari, Firefox or IE. Does the perpetual loading problem exist in any other browsers?
Not that I know of.
Does someone have an active installation of Chatola that we could use to demonstrate the reduction (for trac and bugzilla)?
http://divmod.org:8081/chatola/ All nevow examples are running under http://divmod.org:8081/ Thanks for the help :) -- Valentino Volonghi aka Dialtone Now Running MacOSX 10.4 Blog: http://vvolonghi.blogspot.com http://weever.berlios.de
Beau Hartshorne wrote:
When I loaded up the Chatola demo, I noticed that Safari (2.0.2) was still "loading" the page. I sat there waiting for a few seconds before I realized that it would never stop because of the way the LivePage works. (Yes, I'm brand-new.) The first time, I clicked on Stop and of course nothing worked.
To work around the problem, I included the LivePage code in the <head>, and added an onload handler to <body> to call connect(0). This didn't fix it, so I changed it to setTimeout('connect()', 1). That worked, Safari no longer tells the user that it's waiting for the page to load.
Thanks a lot for figuring this out. This has been an annoyance on JotSpot Live, and I'm happy to have a solution. I'd suggest: setTimeout(function(){connect()}, 1) as a slightly nicer way to phrase that. I'm testing this locally and it looks good - I'll be deploying it on JotSpot Live soon unless I run into any problems. Abe
participants (3)
-
Abe Fettig -
Beau Hartshorne -
Valentino Volonghi aka Dialtone