PDA

View Full Version : Chromium's wonky google gears support causes Sencha failure



jep
4 May 2011, 1:07 PM
Chromium does something rather annoying with google gears. It creates the google.gears.factory object, but it's non-functional. It doesn't have a "create" method. You can see this bug logged here:

http://code.google.com/p/chromium/issues/detail?id=12529

What this means is that sencha touch bombs out whenever the GeoLocation function is used because of this code:



if (Ext.supports.GeoLocation) {
this.provider = this.provider ||
(navigator.geolocation ? navigator.geolocation :
(window.google || {}).gears ? google.gears.factory.create('beta.geolocation') : null);
}

....

{
identity: 'GeoLocation',
fn: function() {
return (typeof navigator != 'undefined' && typeof navigator.geolocation != 'undefined') || (typeof google != 'undefined' && typeof google.gears != 'undefined');
}
}


If you want to not have map stuff bomb out under Chromium (including the Map example in the distribution), you should probably check to see if google.gears.factory.create is defined.