Skip to content
This repository was archived by the owner on Aug 5, 2019. It is now read-only.

Commit feae35c

Browse files
committed
recover repo
0 parents  commit feae35c

File tree

78 files changed

+16854
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

78 files changed

+16854
-0
lines changed

animated_favicon1.gif

2.46 KB
Loading

bootstrap/bootstrap.nocache.js

+16
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

bootstrap/clear.cache.gif

43 Bytes
Loading

bootstrap/hosted.html

+364
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,364 @@
1+
<html>
2+
<head><script>
3+
var $wnd = parent;
4+
var $doc = $wnd.document;
5+
var $moduleName, $moduleBase, $entry
6+
,$stats = $wnd.__gwtStatsEvent ? function(a) {return $wnd.__gwtStatsEvent(a);} : null
7+
,$sessionId = $wnd.__gwtStatsSessionId ? $wnd.__gwtStatsSessionId : null;
8+
// Lightweight metrics
9+
if ($stats) {
10+
var moduleFuncName = location.search.substr(1);
11+
var moduleFunc = $wnd[moduleFuncName];
12+
var moduleName = moduleFunc ? moduleFunc.moduleName : "unknown";
13+
$stats({moduleName:moduleName,sessionId:$sessionId,subSystem:'startup',evtGroup:'moduleStartup',millis:(new Date()).getTime(),type:'moduleEvalStart'});
14+
}
15+
var $hostedHtmlVersion="2.1";
16+
17+
var gwtOnLoad;
18+
var $hosted = "localhost:9997";
19+
20+
function loadIframe(url) {
21+
var topDoc = window.top.document;
22+
23+
// create an iframe
24+
var iframeDiv = topDoc.createElement("div");
25+
iframeDiv.innerHTML = "<iframe scrolling=no frameborder=0 src='" + url + "'>";
26+
var iframe = iframeDiv.firstChild;
27+
28+
// mess with the iframe style a little
29+
var iframeStyle = iframe.style;
30+
iframeStyle.position = "absolute";
31+
iframeStyle.borderWidth = "0";
32+
iframeStyle.left = "0";
33+
iframeStyle.top = "0";
34+
iframeStyle.width = "100%";
35+
iframeStyle.backgroundColor = "#ffffff";
36+
iframeStyle.zIndex = "1";
37+
iframeStyle.height = "100%";
38+
39+
// update the top window's document's body's style
40+
var hostBodyStyle = window.top.document.body.style;
41+
hostBodyStyle.margin = "0";
42+
hostBodyStyle.height = iframeStyle.height;
43+
hostBodyStyle.overflow = "hidden";
44+
45+
// insert the iframe
46+
topDoc.body.insertBefore(iframe, topDoc.body.firstChild);
47+
}
48+
49+
var ua = navigator.userAgent.toLowerCase();
50+
if (ua.indexOf("gecko") != -1) {
51+
// install eval wrapper on FF to avoid EvalError problem
52+
var __eval = window.eval;
53+
window.eval = function(s) {
54+
return __eval(s);
55+
}
56+
}
57+
if (ua.indexOf("chrome") != -1) {
58+
// work around __gwt_ObjectId appearing in JS objects
59+
var hop = Object.prototype.hasOwnProperty;
60+
Object.prototype.hasOwnProperty = function(prop) {
61+
return prop != "__gwt_ObjectId" && hop.call(this, prop);
62+
};
63+
// do the same in our parent as well -- see issue 4486
64+
// NOTE: this will have to be changed when we support non-iframe-based DevMode
65+
var hop2 = parent.Object.prototype.hasOwnProperty;
66+
parent.Object.prototype.hasOwnProperty = function(prop) {
67+
return prop != "__gwt_ObjectId" && hop2.call(this, prop);
68+
};
69+
}
70+
71+
// wrapper to call JS methods, which we need both to be able to supply a
72+
// different this for method lookup and to get the exception back
73+
function __gwt_jsInvoke(thisObj, methodName) {
74+
try {
75+
var args = Array.prototype.slice.call(arguments, 2);
76+
return [0, window[methodName].apply(thisObj, args)];
77+
} catch (e) {
78+
return [1, e];
79+
}
80+
}
81+
82+
var __gwt_javaInvokes = [];
83+
function __gwt_makeJavaInvoke(argCount) {
84+
return __gwt_javaInvokes[argCount] || __gwt_doMakeJavaInvoke(argCount);
85+
}
86+
87+
function __gwt_doMakeJavaInvoke(argCount) {
88+
// IE6 won't eval() anonymous functions except as r-values
89+
var argList = "";
90+
for (var i = 0; i < argCount; i++) {
91+
argList += ",p" + i;
92+
}
93+
var argListNoComma = argList.substring(1);
94+
95+
return eval(
96+
"__gwt_javaInvokes[" + argCount + "] =\n" +
97+
" function(thisObj, dispId" + argList + ") {\n" +
98+
" var result = __static(dispId, thisObj" + argList + ");\n" +
99+
" if (result[0]) {\n" +
100+
" throw result[1];\n" +
101+
" } else {\n" +
102+
" return result[1];\n" +
103+
" }\n" +
104+
" }\n"
105+
);
106+
}
107+
108+
/*
109+
* This is used to create tear-offs of Java methods. Each function corresponds
110+
* to exactly one dispId, and also embeds the argument count. We get the "this"
111+
* value from the context in which the function is being executed.
112+
* Function-object identity is preserved by caching in a sparse array.
113+
*/
114+
var __gwt_tearOffs = [];
115+
var __gwt_tearOffGenerators = [];
116+
function __gwt_makeTearOff(proxy, dispId, argCount) {
117+
return __gwt_tearOffs[dispId] || __gwt_doMakeTearOff(dispId, argCount);
118+
}
119+
120+
function __gwt_doMakeTearOff(dispId, argCount) {
121+
return __gwt_tearOffs[dispId] =
122+
(__gwt_tearOffGenerators[argCount] || __gwt_doMakeTearOffGenerator(argCount))(dispId);
123+
}
124+
125+
function __gwt_doMakeTearOffGenerator(argCount) {
126+
// IE6 won't eval() anonymous functions except as r-values
127+
var argList = "";
128+
for (var i = 0; i < argCount; i++) {
129+
argList += ",p" + i;
130+
}
131+
var argListNoComma = argList.substring(1);
132+
133+
return eval(
134+
"__gwt_tearOffGenerators[" + argCount + "] =\n" +
135+
" function(dispId) {\n" +
136+
" return function(" + argListNoComma + ") {\n" +
137+
" var result = __static(dispId, this" + argList + ");\n" +
138+
" if (result[0]) {\n" +
139+
" throw result[1];\n" +
140+
" } else {\n" +
141+
" return result[1];\n" +
142+
" }\n" +
143+
" }\n" +
144+
" }\n"
145+
);
146+
}
147+
148+
function __gwt_makeResult(isException, result) {
149+
return [isException, result];
150+
}
151+
152+
function __gwt_disconnected() {
153+
// Prevent double-invocation.
154+
window.__gwt_disconnected = new Function();
155+
// Do it in a timeout so we can be sure we have a clean stack.
156+
window.setTimeout(__gwt_disconnected_impl, 1);
157+
}
158+
159+
function __gwt_disconnected_impl() {
160+
__gwt_displayGlassMessage('GWT Code Server Disconnected',
161+
'Most likely, you closed GWT Development Mode. Or, you might have lost '
162+
+ 'network connectivity. To fix this, try restarting GWT Development Mode and '
163+
+ '<a style="color: #FFFFFF; font-weight: bold;" href="javascript:location.reload()">'
164+
+ 'REFRESH</a> this page.');
165+
}
166+
167+
// Keep track of z-index to allow layering of multiple glass messages
168+
var __gwt_glassMessageZIndex = 2147483647;
169+
170+
// Note this method is also used by ModuleSpace.java
171+
function __gwt_displayGlassMessage(summary, details) {
172+
var topWin = window.top;
173+
var topDoc = topWin.document;
174+
var outer = topDoc.createElement("div");
175+
// Do not insert whitespace or outer.firstChild will get a text node.
176+
outer.innerHTML =
177+
'<div style="position:absolute;z-index:' + __gwt_glassMessageZIndex-- +
178+
';left:50px;top:50px;width:600px;color:#FFF;font-family:verdana;text-align:left;">' +
179+
'<div style="font-size:30px;font-weight:bold;">' + summary + '</div>' +
180+
'<div style="font-size:15px;">' + details + '</div>' +
181+
'</div>' +
182+
'<div style="position:absolute;z-index:' + __gwt_glassMessageZIndex-- +
183+
';left:0px;top:0px;right:0px;bottom:0px;filter:alpha(opacity=60);opacity:0.6;background-color:#000;"></div>'
184+
;
185+
topDoc.body.appendChild(outer);
186+
var glass = outer.firstChild;
187+
var glassStyle = glass.style;
188+
189+
// Scroll to the top and remove scrollbars.
190+
topWin.scrollTo(0, 0);
191+
if (topDoc.compatMode == "BackCompat") {
192+
topDoc.body.style["overflow"] = "hidden";
193+
} else {
194+
topDoc.documentElement.style["overflow"] = "hidden";
195+
}
196+
197+
// Steal focus.
198+
glass.focus();
199+
200+
if ((navigator.userAgent.indexOf("MSIE") >= 0) && (topDoc.compatMode == "BackCompat")) {
201+
// IE quirks mode doesn't support right/bottom, but does support this.
202+
glassStyle.width = "125%";
203+
glassStyle.height = "100%";
204+
} else if (navigator.userAgent.indexOf("MSIE 6") >= 0) {
205+
// IE6 doesn't have a real standards mode, so we have to use hacks.
206+
glassStyle.width = "125%"; // Get past scroll bar area.
207+
// Nasty CSS; onresize would be better but the outer window won't let us add a listener IE.
208+
glassStyle.setExpression("height", "document.documentElement.clientHeight");
209+
}
210+
211+
$doc.title = summary + " [" + $doc.title + "]";
212+
}
213+
214+
function findPluginObject() {
215+
try {
216+
return document.getElementById('pluginObject');
217+
} catch (e) {
218+
return null;
219+
}
220+
}
221+
222+
function findPluginEmbed() {
223+
try {
224+
return document.getElementById('pluginEmbed')
225+
} catch (e) {
226+
return null;
227+
}
228+
}
229+
230+
function findPluginXPCOM() {
231+
try {
232+
return __gwt_HostedModePlugin;
233+
} catch (e) {
234+
return null;
235+
}
236+
}
237+
238+
gwtOnLoad = function(errFn, modName, modBase){
239+
$moduleName = modName;
240+
$moduleBase = modBase;
241+
242+
// Note that the order is important
243+
var pluginFinders = [
244+
findPluginXPCOM,
245+
findPluginObject,
246+
findPluginEmbed,
247+
];
248+
var topWin = window.top;
249+
var url = topWin.location.href;
250+
if (!topWin.__gwt_SessionID) {
251+
var ASCII_EXCLAMATION = 33;
252+
var ASCII_TILDE = 126;
253+
var chars = [];
254+
for (var i = 0; i < 16; ++i) {
255+
chars.push(Math.floor(ASCII_EXCLAMATION
256+
+ Math.random() * (ASCII_TILDE - ASCII_EXCLAMATION + 1)));
257+
}
258+
topWin.__gwt_SessionID = String.fromCharCode.apply(null, chars);
259+
}
260+
var plugin = null;
261+
for (var i = 0; i < pluginFinders.length; ++i) {
262+
try {
263+
var maybePlugin = pluginFinders[i]();
264+
if (maybePlugin != null && maybePlugin.init(window)) {
265+
plugin = maybePlugin;
266+
break;
267+
}
268+
} catch (e) {
269+
}
270+
}
271+
if (!plugin) {
272+
// try searching for a v1 plugin for backwards compatibility
273+
var found = false;
274+
for (var i = 0; i < pluginFinders.length; ++i) {
275+
try {
276+
plugin = pluginFinders[i]();
277+
if (plugin != null && plugin.connect($hosted, $moduleName, window)) {
278+
return;
279+
}
280+
} catch (e) {
281+
}
282+
}
283+
loadIframe("http://gwt.google.com/missing-plugin");
284+
} else {
285+
if (plugin.connect(url, topWin.__gwt_SessionID, $hosted, $moduleName,
286+
$hostedHtmlVersion)) {
287+
window.onUnload = function() {
288+
try {
289+
// wrap in try/catch since plugins are not required to supply this
290+
plugin.disconnect();
291+
} catch (e) {
292+
}
293+
};
294+
} else {
295+
if (errFn) {
296+
errFn(modName);
297+
} else {
298+
__gwt_displayGlassMessage("Plugin failed to connect to Development Mode server at " +
299+
simpleEscape($hosted),
300+
"Follow the underlying troubleshooting instructions");
301+
loadIframe("http://code.google.com/p/google-web-toolkit/wiki/TroubleshootingOOPHM");
302+
}
303+
}
304+
}
305+
}
306+
307+
function simpleEscape(originalString) {
308+
return originalString.replace("&","&amp;")
309+
.replace("<","&lt;")
310+
.replace(">","&gt;")
311+
.replace("\"","&quot;");
312+
}
313+
314+
window.onunload = function() {
315+
};
316+
317+
// Lightweight metrics
318+
window.fireOnModuleLoadStart = function(className) {
319+
$stats && $stats({moduleName:$moduleName, sessionId:$sessionId, subSystem:'startup', evtGroup:'moduleStartup', millis:(new Date()).getTime(), type:'onModuleLoadStart', className:className});
320+
};
321+
322+
window.__gwt_module_id = 0;
323+
</script></head>
324+
<body>
325+
<font face='arial' size='-1'>This html file is for Development Mode support.</font>
326+
<script><!--
327+
// Lightweight metrics
328+
$stats && $stats({moduleName:$moduleName, sessionId:$sessionId, subSystem:'startup', evtGroup:'moduleStartup', millis:(new Date()).getTime(), type:'moduleEvalEnd'});
329+
330+
// OOPHM currently only supports IFrameLinker
331+
var query = parent.location.search;
332+
if (!findPluginXPCOM()) {
333+
document.write('<embed id="pluginEmbed" type="application/x-gwt-hosted-mode" width="10" height="10">');
334+
document.write('</embed>');
335+
document.write('<object id="pluginObject" CLASSID="CLSID:1D6156B6-002B-49E7-B5CA-C138FB843B4E">');
336+
document.write('</object>');
337+
}
338+
339+
// look for the old query parameter if we don't find the new one
340+
var idx = query.indexOf("gwt.codesvr=");
341+
if (idx >= 0) {
342+
idx += 12; // "gwt.codesvr=".length() == 12
343+
} else {
344+
idx = query.indexOf("gwt.hosted=");
345+
if (idx >= 0) {
346+
idx += 11; // "gwt.hosted=".length() == 11
347+
}
348+
}
349+
if (idx >= 0) {
350+
var amp = query.indexOf("&", idx);
351+
if (amp >= 0) {
352+
$hosted = query.substring(idx, amp);
353+
} else {
354+
$hosted = query.substring(idx);
355+
}
356+
357+
// According to RFC 3986, some of this component's characters (e.g., ':')
358+
// are reserved and *may* be escaped.
359+
$hosted = decodeURIComponent($hosted);
360+
}
361+
362+
query = window.location.search.substring(1);
363+
if (query && $wnd[query]) setTimeout($wnd[query].onScriptLoad, 1);
364+
--></script></body></html>
Loading

0 commit comments

Comments
 (0)