Mercurial > hg > STI-GWT
comparison war/scripts/OpenLayers/lib/Gears/gears_init.js @ 3:cf06b77a8bbd
Committed branch of the e4D repos sti-gwt branch 16384.
git-svn-id: http://dev.dariah.eu/svn/repos/eu.dariah.de/ap1/sti-gwt-dariah-geobrowser@36 f2b5be40-def6-11e0-8a09-b3c1cc336c6b
author | StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b> |
---|---|
date | Tue, 17 Jul 2012 13:34:40 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
2:2897af43ccc6 | 3:cf06b77a8bbd |
---|---|
1 /* | |
2 * Copyright 2007, Google Inc. | |
3 * | |
4 * Redistribution and use in source and binary forms, with or without | |
5 * modification, are permitted provided that the following conditions are met: | |
6 * | |
7 * 1. Redistributions of source code must retain the above copyright notice, | |
8 * this list of conditions and the following disclaimer. | |
9 * 2. Redistributions in binary form must reproduce the above copyright notice, | |
10 * this list of conditions and the following disclaimer in the documentation | |
11 * and/or other materials provided with the distribution. | |
12 * 3. Neither the name of Google Inc. nor the names of its contributors may be | |
13 * used to endorse or promote products derived from this software without | |
14 * specific prior written permission. | |
15 * | |
16 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED | |
17 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | |
18 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO | |
19 * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | |
20 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, | |
21 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; | |
22 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, | |
23 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR | |
24 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF | |
25 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |
26 * | |
27 * Sets up google.gears.*, which is *the only* supported way to access Gears. | |
28 * | |
29 * Circumvent this file at your own risk! | |
30 * | |
31 * In the future, Gears may automatically define google.gears.* without this | |
32 * file. Gears may use these objects to transparently fix bugs and compatibility | |
33 * issues. Applications that use the code below will continue to work seamlessly | |
34 * when that happens. | |
35 */ | |
36 | |
37 (function() { | |
38 // We are already defined. Hooray! | |
39 if (window.google && google.gears) { | |
40 return; | |
41 } | |
42 | |
43 var factory = null; | |
44 | |
45 // Firefox | |
46 if (typeof GearsFactory != 'undefined') { | |
47 factory = new GearsFactory(); | |
48 } else { | |
49 // IE | |
50 try { | |
51 factory = new ActiveXObject('Gears.Factory'); | |
52 // privateSetGlobalObject is only required and supported on WinCE. | |
53 if (factory.getBuildInfo().indexOf('ie_mobile') != -1) { | |
54 factory.privateSetGlobalObject(this); | |
55 } | |
56 } catch (e) { | |
57 // Safari | |
58 if ((typeof navigator.mimeTypes != 'undefined') | |
59 && navigator.mimeTypes["application/x-googlegears"]) { | |
60 factory = document.createElement("object"); | |
61 factory.style.display = "none"; | |
62 factory.width = 0; | |
63 factory.height = 0; | |
64 factory.type = "application/x-googlegears"; | |
65 document.documentElement.appendChild(factory); | |
66 } | |
67 } | |
68 } | |
69 | |
70 // *Do not* define any objects if Gears is not installed. This mimics the | |
71 // behavior of Gears defining the objects in the future. | |
72 if (!factory) { | |
73 return; | |
74 } | |
75 | |
76 // Now set up the objects, being careful not to overwrite anything. | |
77 // | |
78 // Note: In Internet Explorer for Windows Mobile, you can't add properties to | |
79 // the window object. However, global objects are automatically added as | |
80 // properties of the window object in all browsers. | |
81 if (!window.google) { | |
82 google = {}; | |
83 } | |
84 | |
85 if (!google.gears) { | |
86 google.gears = {factory: factory}; | |
87 } | |
88 })(); |