Index: chrome/common/extensions/docs/js/bootstrap.js |
diff --git a/chrome/common/extensions/docs/js/bootstrap.js b/chrome/common/extensions/docs/js/bootstrap.js |
index 7741df062d465120f993621ae1c96423dd618988..738686ed70d13be505a8be0edd5b063f3e445905 100755 |
--- a/chrome/common/extensions/docs/js/bootstrap.js |
+++ b/chrome/common/extensions/docs/js/bootstrap.js |
@@ -1,9 +1,25 @@ |
+var fileXHREnabled = function() { |
+ var xhr = new XMLHttpRequest(); |
+ try { |
+ xhr.onreadystatechange = function() {}; |
+ xhr.onerror = function() {}; |
+ xhr.open("GET", "nothing.xml", true); |
+ xhr.send(null); |
+ } catch (e) { |
+ return false; |
+ } |
+ |
+ xhr.abort(); |
+ return true; |
+}(); |
+ |
// Regenerate page if we are passed the "?regenerate" search param |
// or if the user-agent is chrome AND the document is being served |
// from the file:/// scheme. |
if (window.location.search == "?regenerate" || |
(navigator.userAgent.indexOf("Chrome") > -1) && |
- (window.location.href.match("^file:"))) { |
+ (window.location.href.match("^file:")) && |
+ fileXHREnabled) { |
// Hide body content initially to minimize flashing. |
document.write('<style id="hider" type="text/css">'); |
@@ -23,4 +39,11 @@ if (window.location.search == "?regenerate" || |
if (location.hash.length > 1) |
location.href = location.href; |
} |
+} else if ((navigator.userAgent.indexOf("Chrome") > -1) && |
+ (window.location.href.match("^file:")) && |
+ !fileXHREnabled) { |
+ window.onload = function() { |
+ // Display the warning to use the --allow-file-access-from-files. |
+ document.getElementById("devModeWarning").style.display = "block"; |
+ } |
} |