On Feb 9, 2008 1:22 PM, Paul Lindner <[EMAIL PROTECTED]> wrote: > On Fri, Feb 08, 2008 at 07:36:57PM -0800, Kevin Brown wrote: > > Unfortunately, Quirks mode is required by the spec. See Item 6 under > > "Compliance" at http://code.google.com/apis/gadgets/docs/spec.html. > > That's really unfortunate. Right now you have a great opportunity to > make a clean break towards standards mode. People are going to be > rewriting their Apps for Caja, plus they'll be customizing UI etal for > each new platform.
Indeed -- I'm all for standards mode on Cajoled gadgets, but that ultimately depends on whether we have a way to clearly identify that a gadget has been marked safe for cajoling in the spec up front. This is something that needs to be brought up at the next open social container meeting, I think. > > This issue has been brought up numerous times in the past, but there > hasn't > > been a resolution on it yet. The only reason for this is that many (if > not > > all) existing gadgets have to be updated to use standards mode since the > > original iGoogle site used quirks mode. > > > > > Where are these discussions taking place? Internal to Google I assume? Internal to Google, at container meetings and hackathons, and at individual meetings between container implementations. > Has anyone actually tried, say the top 100 apps rendered in standards > mode? I really doubt that it's that much of a problem. I've done the top 20 from the igoogle directory; of those about half appeared to render exactly the same, and the rest had minor variations. I didn't see any that broke horribly, but we could certainly see that for gadgets that relied heavily on the IE quirks mode box model or float behavior. > > > Many people (myself included) have attempted to move it towards > > standards mode, but so far nobody's come up with a viable solution > > for backwards compatibility. > > How about this: > > * Always render iGoogle gadgets using legacy gmodules.com. We can't require dependencies on google infrastructure -- especially not since google itself is moving towards using shindig (we're already using it for orkut today). iGoogle won't be any different from what works everywhere else. > * New widgets (those using opensocial or other new technologies) will > be sent through a Shindig based server. This is not possible to detect in the spec (we can detect usage of the opensocial feature, but not all gadgets will use opensocial). Some discussion has been kicked around about a new attribute to indicate whether something has been verified safe for cajoling, and we could possibly use that as an opportunity to work this change in as well. This requires spec change, however we will most likely > * Mark quirks mode deprecated with a sunset of 1 year from now. We can't make this decision in Shindig -- we have to follow the spec. I'm all for changing the spec, but we need a solution that all containers can agree to. I'd recommend bringing this up on the open social spec discussion group (http://groups.google.com/group/opensocial). We can certainly add the code path to switch between quirks and standards mode in Shindig, and then make the triggering happen whenever the spec gets settled. I'd recommend something like passing a "quirks" query string parameter to the iframe url for the time being. This will at least allow existing containers to manually set standards vs. quirks mode for specific gadgets that have been verified to need one or the other by hand.

