├── Libs ├── Yixi.js ├── donate-with-alipay.png └── logo.png ├── README.md ├── a11y.html ├── alarms.html ├── api_index.html ├── api_other.html ├── apps.html ├── autoupdate.html ├── background_pages.html ├── bookmarks.html ├── browserAction.html ├── browsingData.html ├── clipboard ├── gc-sidebar_ul ├── gc-topnav └── top_header ├── commands.html ├── contentSecurityPolicy.html ├── contentSettings.html ├── content_scripts.html ├── contextMenus.html ├── cookies.html ├── crx.html ├── debugger.html ├── declarativeWebRequest.html ├── devguide.html ├── devtools.html ├── devtools_inspectedWindow.html ├── devtools_network.html ├── devtools_panels.html ├── docs.html ├── downloads.html ├── event_pages.html ├── events.html ├── examples └── tutorials │ └── getstarted │ ├── popup.html │ └── popup.js ├── experimental.html ├── experimental_browsingData.html ├── experimental_contentSettings.html ├── experimental_contextMenus.html ├── experimental_cookies.html ├── experimental_debugger.html ├── experimental_devtools.html ├── experimental_devtools_audits.html ├── experimental_devtools_console.html ├── experimental_devtools_inspectedWindow.html ├── experimental_devtools_network.html ├── experimental_devtools_panels.html ├── experimental_devtools_resources.html ├── experimental_discovery.html ├── experimental_history.html ├── experimental_identity.html ├── experimental_infobars.html ├── experimental_inputUI.html ├── experimental_privacy.html ├── experimental_processes.html ├── experimental_record.html ├── experimental_speechInput.html ├── experimental_storage.html ├── experimental_systemInfo_cpu.html ├── experimental_systemInfo_storage.html ├── experimental_webInspector.html ├── experimental_webInspector_audits.html ├── experimental_webInspector_panels.html ├── experimental_webInspector_resources.html ├── experimental_webRequest.html ├── extension.html ├── external_extensions.html ├── faq.html ├── fileBrowserHandler.html ├── fontSettings.html ├── getstarted.html ├── history.html ├── hosting.html ├── i18n-messages.html ├── i18n.html ├── idle.html ├── index.html ├── input_ime.html ├── management.html ├── manifest.html ├── manifestVersion.html ├── match_patterns.html ├── messaging.html ├── notifications.html ├── npapi.html ├── omnibox.html ├── options.html ├── override.html ├── overview.html ├── packaging.html ├── pageAction.html ├── pageCapture.html ├── permission_warnings.html ├── permissions.html ├── privacy.html ├── proxy.html ├── runtime.html ├── samples.html ├── sandboxingEval.html ├── scriptBadge.html ├── search_results.html ├── stable └── static │ ├── css │ ├── api.css │ ├── index.css │ ├── prettify.css │ ├── print.css │ ├── samples.css │ └── site.css │ ├── images │ ├── a11y │ │ ├── focus-outline-2.png │ │ ├── focus-outline.png │ │ └── standard-html-controls.png │ ├── active-tab-after.png │ ├── active-tab-before.png │ ├── applifecycle.png │ ├── bookmarks.png │ ├── browser-action.png │ ├── calculator-128.png │ ├── calculator-16.png │ ├── chrome_logo.gif │ ├── console-button.gif │ ├── container.png │ ├── csperrors.png │ ├── customframe.png │ ├── devtools-1.gif │ ├── devtools-2.gif │ ├── devtools-3.gif │ ├── devtools-audits-category.png │ ├── devtools-audits-results.png │ ├── devtools-localvars.gif │ ├── devtools-panels.png │ ├── editor.png │ ├── fetchedicon.png │ ├── filebrowserhandler.png │ ├── fileicons.png │ ├── gearsicon.png │ ├── gettingstarted-1.jpg │ ├── gettingstarted-icon.png │ ├── gettingstarted-popup.jpg │ ├── hello-world-small.png │ ├── hello-world.png │ ├── hotdogmenu.png │ ├── i18n-after-1.gif │ ├── i18n-after-2.gif │ ├── i18n-before.gif │ ├── i18n-hierarchy.gif │ ├── i18n-strings.gif │ ├── icon.png │ ├── index │ │ └── gmail-small.png │ ├── infobar.png │ ├── jstransferrequests.png │ ├── listoffiles.png │ ├── load_after.png │ ├── load_after_small.png │ ├── mvc.png │ ├── noframe.png │ ├── notification-linux.png │ ├── notification-mac.png │ ├── notification-windows.png │ ├── ntp-blank.png │ ├── ntp-default.png │ ├── omnibox.png │ ├── overview │ │ ├── arch-1.gif │ │ ├── arch-2.gif │ │ ├── arch-3.gif │ │ ├── arch-cs.gif │ │ ├── browser-action-with-popup.png │ │ ├── browser-action.png │ │ └── page-action.png │ ├── package-success.gif │ ├── page-action.png │ ├── perms-hw1.png │ ├── perms-hw2-disabled.png │ ├── perms-hw2.png │ ├── perms-optional.png │ ├── play-button.gif │ ├── sample-default-icon.png │ ├── sidearrow.png │ ├── tabs.png │ ├── themes-1.gif │ ├── themes-2.gif │ ├── themes-3.gif │ ├── todos.png │ ├── toggle_sprite.png │ ├── toolsmenu.gif │ ├── tut_analytics │ │ ├── screenshot01.png │ │ ├── screenshot02.png │ │ ├── screenshot03.png │ │ └── screenshot04.png │ ├── update-success.gif │ ├── uploader.png │ ├── webrequestapi.png │ ├── windows.png │ └── writecompleted.png │ └── js │ ├── branch.js │ ├── filter.js │ ├── prettify.js │ ├── samples.js │ └── sidebar.js ├── storage.html ├── tabs.html ├── themes.html ├── topSites.html ├── tts.html ├── ttsEngine.html ├── tut_analytics.html ├── tut_debugging.html ├── tut_migration_to_manifest_v2.html ├── tut_oauth.html ├── tutorials.html ├── types.html ├── webNavigation.html ├── webRequest.html ├── webstore.html ├── whats_new.html ├── windows.html └── xhr.html /Libs/Yixi.js: -------------------------------------------------------------------------------- 1 | /*this function use for all page UI*/ 2 | 3 | (function () { 4 | var Header = document.getElementById('header'); 5 | var h_html = '
此文档基于google chrome官方文档进行翻译制作,并非官方版本,有关更多的详情请查看这里。' 6 | + '支持我们的工作,你可以我们。
' 7 | + ''; 8 | Header.style.color = "#000"; 9 | Header.innerHTML = h_html; 10 | 11 | var gc_footer = document.getElementById('gc-footer'); 12 | var copyleft = gc_footer.getElementsByTagName('p')[0]; 13 | var copy_html = '本文档翻译自Google Chrome Extensions,翻译参考https://sites.google.com/site/crxdoczh。' 14 | + '所有内容遵循CC BY 3.0,代码示例准遵循BCD License。'; 15 | copyleft.innerHTML = copy_html; 16 | gc_footer.getElementsByTagName('p')[1].innerHTML = ""; 17 | 18 | var Yixi_footer = document.getElementById('footer_cus'); 19 | var f_html = '一兮,生活工作点点滴滴' 20 | Yixi_footer.innerHTML = f_html; 21 | 22 | })(); -------------------------------------------------------------------------------- /Libs/donate-with-alipay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/Libs/donate-with-alipay.png -------------------------------------------------------------------------------- /Libs/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/Libs/logo.png -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ChromeExtensionDocument 2 | ======================= 3 | 4 | chrome插件中文开发文档(非官方) -------------------------------------------------------------------------------- /clipboard/gc-sidebar_ul: -------------------------------------------------------------------------------- 1 |
2 | 197 |
-------------------------------------------------------------------------------- /clipboard/gc-topnav: -------------------------------------------------------------------------------- 1 |
2 |

chrome插件中文开发文档(非官方)

3 | 23 |
-------------------------------------------------------------------------------- /clipboard/top_header: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/tutorials/getstarted/popup.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Getting Started Extension's Popup 5 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /examples/tutorials/getstarted/popup.js: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style license that can be 3 | // found in the LICENSE file. 4 | 5 | var req = new XMLHttpRequest(); 6 | req.open( 7 | "GET", 8 | "http://api.flickr.com/services/rest/?" + 9 | "method=flickr.photos.search&" + 10 | "api_key=90485e931f687a9b9c2a66bf58a3861a&" + 11 | "text=hello%20world&" + 12 | "safe_search=1&" + // 1 is "safe" 13 | "content_type=1&" + // 1 is "photos only" 14 | "sort=relevance&" + // another good one is "interestingness-desc" 15 | "per_page=20", 16 | true); 17 | req.onload = showPhotos; 18 | req.send(null); 19 | 20 | function showPhotos() { 21 | var photos = req.responseXML.getElementsByTagName("photo"); 22 | 23 | for (var i = 0, photo; photo = photos[i]; i++) { 24 | var img = document.createElement("image"); 25 | img.src = constructImageURL(photo); 26 | document.body.appendChild(img); 27 | } 28 | } 29 | 30 | // See: http://www.flickr.com/services/api/misc.urls.html 31 | function constructImageURL(photo) { 32 | return "http://farm" + photo.getAttribute("farm") + 33 | ".static.flickr.com/" + photo.getAttribute("server") + 34 | "/" + photo.getAttribute("id") + 35 | "_" + photo.getAttribute("secret") + 36 | "_s.jpg"; 37 | } 38 | -------------------------------------------------------------------------------- /experimental_browsingData.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | experimental.browsingData - chrome插件中文开发文档(非官方) 10 | 11 | 12 | 13 | 14 | 15 |
16 |

Google Chrome Extensions

17 | 37 |
38 |
39 |
40 | 235 |
236 |
237 |

experimental.browsingData

238 | 239 | 240 | 241 |

242 | The BrowsingData API is no longer experimental; 243 | it's supported! You can read all about it at its new home: 244 |

245 | 246 |
247 | chrome.browsingData 248 |
249 |
250 |
251 | 252 | 259 | 286 | 287 | -------------------------------------------------------------------------------- /experimental_cookies.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | experimental.chrome.cookies - chrome插件中文开发文档(非官方) 10 | 11 | 12 | 13 | 14 | 15 |
16 |

Google Chrome Extensions

17 | 37 |
38 |
39 |
40 | 235 |
236 |
237 |

experimental.chrome.cookies

238 | 239 | 240 | 241 |

242 | The cookies API is no longer experimental; 243 | it's supported! 244 | You can read all about it at its new home: 245 |

246 | 247 |
248 | chrome.cookies 249 |
250 |
251 |
252 | 253 | 260 | 287 | 288 | -------------------------------------------------------------------------------- /experimental_debugger.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | experimental.debugger - chrome插件中文开发文档(非官方) 10 | 11 | 12 | 13 | 14 | 15 |
16 |

Google Chrome Extensions

17 | 37 |
38 |
39 |
40 | 235 |
236 |
237 |

experimental.debugger

238 | 239 | 240 | 241 |

242 | The Debugger API is no longer experimental; 243 | it's supported! You can read all about it at its new home: 244 |

245 | 246 |
247 | chrome.debugger 248 |
249 |
250 |
251 | 252 | 259 | 286 | 287 | -------------------------------------------------------------------------------- /experimental_devtools_panels.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | experimental.devtools.panels - chrome插件中文开发文档(非官方) 10 | 11 | 12 | 13 | 14 | 15 |
16 |

Google Chrome Extensions

17 | 37 |
38 |
39 |
40 | 235 |
236 |
237 |

experimental.devtools.panels

238 | 239 | 240 | 241 |

242 | The devtools.panels API is no longer experimental; 243 | it's supported! You can read all about it at its new home: 244 |

245 | 246 |
247 | chrome.devtools.panels 248 |
249 |
250 |
251 | 252 | 259 | 286 | 287 | -------------------------------------------------------------------------------- /experimental_devtools_resources.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | chrome.experimental.devtools.resourcesAPI - chrome插件中文开发文档(非官方) 10 | 11 | 12 | 13 | 14 | 15 |
16 |

Google Chrome Extensions

17 | 37 |
38 |
39 |
40 | 235 |
236 |
237 |

chrome.experimental.devtools.resourcesAPI

238 | 239 | 240 |

241 | The experimental.devtools.resources module is deprecated, use 242 | experimental.devtools.network instead. 244 |

245 |
246 |
247 | 248 | 255 | 282 | 283 | -------------------------------------------------------------------------------- /experimental_history.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | experimental.chrome.history - chrome插件中文开发文档(非官方) 10 | 11 | 12 | 13 | 14 | 15 |
16 |

Google Chrome Extensions

17 | 37 |
38 |
39 |
40 | 235 |
236 |
237 |

experimental.chrome.history

238 | 239 | 240 | 241 |

242 | The history API is no longer experimental; 243 | it's supported! 244 | You can read all about it at its new home: 245 |

246 | 247 |
248 | chrome.history 249 |
250 |
251 |
252 | 253 | 260 | 287 | 288 | -------------------------------------------------------------------------------- /experimental_inputUI.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | InputUI API - chrome插件中文开发文档(非官方) 10 | 11 | 12 | 13 | 14 | 15 |
16 |

Google Chrome Extensions

17 | 37 |
38 |
39 |
40 | 235 |
236 |
237 |

InputUI API

238 | 239 | 240 | 241 | 242 |

243 | Use the chrome.experimental.input.ui module to implement 244 | input method user interface. This module is for Chrome OS only. 245 | chrome.experimental.* APIs page. 246 |

247 |
248 |
249 | 250 | 257 | 284 | 285 | -------------------------------------------------------------------------------- /experimental_privacy.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | experimental.privacy - chrome插件中文开发文档(非官方) 10 | 11 | 12 | 13 | 14 | 15 |
16 |

Google Chrome Extensions

17 | 37 |
38 |
39 |
40 | 235 |
236 |
237 |

experimental.privacy

238 | 239 | 240 | 241 |

242 | The Privacy API is no longer experimental; 243 | it's supported! You can read all about it at its new home: 244 |

245 | 246 |
247 | chrome.privacy 248 |
249 |
250 |
251 | 252 | 259 | 286 | 287 | -------------------------------------------------------------------------------- /experimental_storage.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | experimental.storage - chrome插件中文开发文档(非官方) 10 | 11 | 12 | 13 | 14 | 15 |
16 |

Google Chrome Extensions

17 | 37 |
38 |
39 |
40 | 235 |
236 |
237 |

experimental.storage

238 | 239 | 240 | 241 |

242 | The Storage API is no longer experimental; 243 | it's supported! You can read all about it at its new home: 244 |

245 | 246 |
247 | chrome.storage 248 |
249 |
250 |
251 | 252 | 259 | 286 | 287 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | chrome插件中文开发文档(非官方) 12 | 13 | 14 | 15 | 16 | 17 |
18 |

chrome插件中文开发文档(非官方)

19 | 39 |
40 |
41 |
42 | 43 | 44 | 107 | 137 | 138 |
45 |

什么是扩展程序?

46 |

47 | 扩展程序是一些能够修改或增强Chrome浏览器功能的小程序。您可以利用各种Web技术,例如HTML、JavaScript和CSS,来编写自己的扩展程序。 48 |

49 |

50 | A screenshot of an extension's icon in the browser bar 51 | 扩展程序只有很少的用户界面或者完全没有。例如,右边的图片中的图标为 52 | Gmail扩展程序. 53 | 的用户界面。 54 | 55 |

56 | 57 |

58 | 扩展程序将它所需的文件集成在一个文件中,提供给用户下载和安装。这一集成意味着扩展程序不像普通的网上应用程序那样,它们不需要依赖网上的内容。 59 |

60 |

61 | 您可以使用 62 | Chrome开发者信息中心 63 | 将您的扩展程序发布到 64 | Chrome网上应用店。 65 | 有关更多信息,请参见 66 | 网上应用店开发者文档。 67 |

68 |

69 | 此文档大部分翻译内容基于 70 | https://sites.google.com/site/crxdoczh/home 71 |

72 |

73 | Chrome开发QQ交流群:186758632 74 |

75 |

76 | Chrome开发google+社群:Chrome扩展程序/应用程序开发人员文档(非官方中文版) 77 |

78 | 79 |

80 | 此文档基于google chrome官方文档,Chrome扩展程序的开发文档在不断地变化,此文档将尽量即使跟进,若有疑问,一切以官方文档为准。 81 |

82 |

83 | 再次感谢Samuel V辛苦翻译。中文部分持续更新中。 84 |

85 |

86 | 关于 一兮, Diigo.com前端工程师,参与开发的chrome插件/应用程序有: 87 |

104 | 105 |

106 |
108 |

我应该如何开始?

109 |

110 |
    111 |
  1. 112 | 遵循入门教程 113 |
  2. 114 |
  3. 115 | 阅读 116 | 概述 117 |
  4. 118 |
  5. 119 | 阅读 120 | Chromium博客(英文),获取最新信息 121 |
  6. 122 |
  7. 123 | 订阅 124 | chromium-extensions群组(英文) 125 |
  8. 126 |
127 |

128 |

特色视频(英文)

129 |

130 | 技术视频
131 | 开发者快照 (below) 132 |

133 |

134 | 135 |

136 |
139 |
140 |
141 | 142 | 149 | 176 | 177 | -------------------------------------------------------------------------------- /stable/static/css/api.css: -------------------------------------------------------------------------------- 1 | /* Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 | * Use of this source code is governed by a BSD-style license that can be 3 | * found in the LICENSE file. 4 | */ 5 | 6 | .type_name, 7 | .variable, 8 | .property { 9 | font-style: italic; 10 | } 11 | 12 | .api_reference div.summary { 13 | border: 1px solid #93B4D9; 14 | font-family: "Courier New", courier, monospace; 15 | padding: 0.5em 0.5em 0.5em 2em; 16 | text-indent: -1.5em; 17 | background-color: #CADEF4; 18 | margin-top: 1em; 19 | } 20 | 21 | /* This style is used because types with functions prefix the function with the 22 | * type name, using a lowercase first letter. 23 | */ 24 | .api_reference div.lower:first-letter { 25 | text-transform: lowercase; 26 | } 27 | 28 | .api_reference div.description { 29 | margin-left: 2em; 30 | } 31 | 32 | div.summary .subdued { 33 | color: #7594B8; 34 | } 35 | 36 | .optional { 37 | color: #7D7D7D; 38 | } 39 | -------------------------------------------------------------------------------- /stable/static/css/index.css: -------------------------------------------------------------------------------- 1 | /* Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 | * Use of this source code is governed by a BSD-style license that can be 3 | * found in the LICENSE file. 4 | */ 5 | 6 | #gc-pagecontent { 7 | margin: 0; 8 | } 9 | 10 | #gc-pagecontent #index td { 11 | padding: 6px 12px; 12 | } 13 | 14 | #howDoIStart { 15 | width: 330px; 16 | } 17 | 18 | #howDoIStart ol { 19 | margin: 0 0 1em 15px; 20 | padding: 0; 21 | } 22 | -------------------------------------------------------------------------------- /stable/static/css/prettify.css: -------------------------------------------------------------------------------- 1 | /* Pretty printing styles. Used with prettify.js. */ 2 | 3 | /* SPAN elements with the classes below are added by prettyprint. */ 4 | .pln { color: #000 } /* plain text */ 5 | 6 | @media screen { 7 | .str { color: #080 } /* string content */ 8 | .kwd { color: #008 } /* a keyword */ 9 | .com { color: #800 } /* a comment */ 10 | .typ { color: #606 } /* a type name */ 11 | .lit { color: #066 } /* a literal value */ 12 | /* punctuation, lisp open bracket, lisp close bracket */ 13 | .pun, .opn, .clo { color: #660 } 14 | .tag { color: #008 } /* a markup tag name */ 15 | .atn { color: #606 } /* a markup attribute name */ 16 | .atv { color: #080 } /* a markup attribute value */ 17 | .dec, .var { color: #606 } /* a declaration; a variable name */ 18 | .fun { color: red } /* a function name */ 19 | } 20 | 21 | /* Use higher contrast and text-weight for printable form. */ 22 | @media print, projection { 23 | .str { color: #060 } 24 | .kwd { color: #006; font-weight: bold } 25 | .com { color: #600; font-style: italic } 26 | .typ { color: #404; font-weight: bold } 27 | .lit { color: #044 } 28 | .pun, .opn, .clo { color: #440 } 29 | .tag { color: #006; font-weight: bold } 30 | .atn { color: #404 } 31 | .atv { color: #060 } 32 | } 33 | 34 | pre.prettyprint { } 35 | 36 | /* Specify class=linenums on a pre to get line numbering */ 37 | ol.linenums { margin-top: 0; margin-bottom: 0 } /* IE indents via margin-left */ 38 | li.L0, 39 | li.L1, 40 | li.L2, 41 | li.L3, 42 | li.L5, 43 | li.L6, 44 | li.L7, 45 | li.L8 { list-style-type: none } 46 | /* Alternate shading for lines */ 47 | li.L1, 48 | li.L3, 49 | li.L5, 50 | li.L7, 51 | li.L9 { background: #eee } 52 | -------------------------------------------------------------------------------- /stable/static/css/print.css: -------------------------------------------------------------------------------- 1 | /* Chrome extensions developer guide - styles for printing */ 2 | 3 | /* Make preformatted text wrap 4 | (ref: http://myy.helia.fi/~karte/pre-wrap-css3-mozilla-opera-ie.html) */ 5 | pre { 6 | white-space: pre-wrap; /* css-3 */ 7 | white-space: -moz-pre-wrap; /* Mozilla, since 1999 */ 8 | white-space: -pre-wrap; /* Opera 4-6 */ 9 | white-space: -o-pre-wrap; /* Opera 7 */ 10 | word-wrap: break-word; /* Internet Explorer 5.5+ */ 11 | } 12 | -------------------------------------------------------------------------------- /stable/static/css/samples.css: -------------------------------------------------------------------------------- 1 | #controls { 2 | margin: 10px 0; 3 | background: #EEE; 4 | padding: 10px; 5 | border-radius: 10px; 6 | } 7 | 8 | #search_input { 9 | width: 30em; 10 | } 11 | 12 | .label { 13 | font-weight: bold; 14 | } 15 | 16 | td.label { 17 | min-width: 150px; 18 | text-align: right; 19 | vertical-align: top; 20 | padding-right: 10px; 21 | } 22 | 23 | .sample { 24 | position: relative; 25 | padding-left: 80px; 26 | } 27 | 28 | img.icon { 29 | position: absolute; 30 | width: 64px; 31 | height: 64px; 32 | left: 0; 33 | top: 40px; 34 | } 35 | 36 | #controls td { 37 | border: none; 38 | } 39 | -------------------------------------------------------------------------------- /stable/static/css/site.css: -------------------------------------------------------------------------------- 1 | /* Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 | * Use of this source code is governed by a BSD-style license that can be 3 | * found in the LICENSE file. 4 | */ 5 | 6 | .hidden { 7 | display: none; 8 | } 9 | 10 | body { 11 | color: #333; 12 | font: 13px/22px 'Open Sans',arial,sans-serif; 13 | font-weight: 400; 14 | background-color: white; 15 | margin: auto; 16 | padding: 0; 17 | } 18 | 19 | /*this place use for header and footer*/ 20 | #header { 21 | color:transparent; 22 | } 23 | #header .header_info { 24 | text-align: right; 25 | height:50px; 26 | line-height:50px; 27 | background:url('../../../Libs/logo.png') no-repeat; 28 | 29 | } 30 | #header .header_info a { 31 | color:red; 32 | } 33 | #header .header_info a:hover { 34 | text-decoration:underline; 35 | } 36 | #header .header_info img { 37 | width:100px; 38 | vertical-align:middle; 39 | } 40 | #header .clear { 41 | clear:both; 42 | } 43 | 44 | /**/ 45 | 46 | 47 | 48 | p { 49 | margin: 1em 0 0 0; 50 | color: #767676; 51 | font-size: 14px; 52 | } 53 | 54 | p.note, 55 | p.caution, 56 | p.warning { 57 | margin: 1em 0 0 0; 58 | padding: .2em .5em .2em .9em; 59 | background-color: #F5F5F5; 60 | border-top: 1px solid; 61 | border-bottom: 1px solid; 62 | overflow: hidden; 63 | } 64 | 65 | p.note { 66 | border-color: #36C; 67 | } 68 | p.caution { 69 | border-color: #FC3; 70 | } 71 | p.warning { 72 | border-color: #A03; 73 | } 74 | 75 | p.warning em, 76 | p.warning strong { 77 | color: #A03; 78 | } 79 | 80 | a, a:link { 81 | text-decoration: none; 82 | color: #39F; 83 | font-weight: 600; 84 | } 85 | 86 | a:visited { 87 | color: #236bb2; 88 | } 89 | 90 | a:active, 91 | a:hover { 92 | color: #3bf; 93 | } 94 | 95 | #toc a { 96 | color: black; 97 | } 98 | 99 | ol, ul { 100 | color: #767676; 101 | } 102 | 103 | #header { 104 | margin: auto; 105 | max-width: 1160px; 106 | padding: 0 50px; 107 | position: relative; 108 | height: 60px; 109 | } 110 | 111 | #logo { 112 | position: relative; 113 | padding-top: 10px; 114 | z-index: 2; 115 | } 116 | 117 | #logo img { 118 | padding: 10px 0; 119 | } 120 | 121 | #cse { 122 | width: 400px; 123 | padding-top: 5px; 124 | z-index: 1; 125 | position: absolute; 126 | right: 50px; 127 | } 128 | 129 | /* 130 | * Without a border, the results from the custom search are hard to tell apart 131 | * from the rest of the content 132 | */ 133 | .gsc-resultsbox-visible { 134 | border-left: 1px solid #E9E9E9; 135 | border-right: 1px solid #E9E9E9; 136 | border-bottom: 1px solid #E9E9E9; 137 | } 138 | 139 | li { 140 | margin: .3em 0 0 1.5em; 141 | padding: 0; 142 | } 143 | 144 | ol li { 145 | margin-top: 1em; 146 | } 147 | 148 | img { 149 | border: none; 150 | padding: 10px 0; 151 | } 152 | 153 | p img { 154 | padding: 0 2px; 155 | } 156 | 157 | code, 158 | pre { 159 | font-family: monospace; 160 | color: #080; 161 | } 162 | 163 | code { 164 | font-size: 10pt; 165 | } 166 | 167 | pre { 168 | font-size: 10pt; 169 | background-color: #F5F5F5; 170 | margin: 1em 0 0 0; 171 | padding: .99em; 172 | overflow: auto; 173 | word-wrap: break-word; 174 | position: relative; 175 | } 176 | 177 | pre a { 178 | text-decoration: underline!important; 179 | } 180 | 181 | pre b { 182 | background: yellow; 183 | } 184 | 185 | pre[data-filename]::after { 186 | content: attr(data-filename); 187 | background-color: darkGray; 188 | right: 0; 189 | top: 0; 190 | position: absolute; 191 | font-size: 16px; 192 | color: #FFF; 193 | padding: 2px 25px; 194 | text-transform: uppercase; 195 | } 196 | 197 | dt { 198 | font-weight: bold; 199 | margin: .75em 0 0 0; 200 | } 201 | 202 | dl { 203 | margin: 0; 204 | } 205 | 206 | dd { 207 | margin: .4em 0 0 2em; 208 | padding: 0; 209 | font-weight: normal; 210 | } 211 | 212 | .displayModeWarning { 213 | background-color: #FF7735; 214 | color: white; 215 | font-weight: bold; 216 | padding: 6px 8px; 217 | } 218 | 219 | span.displayModeWarning { 220 | margin-right: 2px; 221 | } 222 | 223 | #gc-container { 224 | margin: auto; 225 | max-width: 1160px; 226 | padding: 0 50px; 227 | position: relative; 228 | height: auto; 229 | } 230 | 231 | #gc-topnav { 232 | font-size: 1em; 233 | margin: auto; 234 | max-width: 1160px; 235 | padding: 0; 236 | white-space: nowrap; 237 | background-color: white; 238 | border-top: 1px solid #E5E5E5; 239 | border-bottom: 1px solid #E5E5E5; 240 | } 241 | 242 | #gc-topnav h1 { 243 | font-size: 1.5em; 244 | line-height: 1.3em; 245 | font-weight: bold; 246 | background-color: transparent; 247 | border: 0; 248 | margin: 0; 249 | padding: 0 0 0 14px; 250 | float: left; 251 | border-top: 10px solid white; 252 | } 253 | 254 | #gc-topnav li { 255 | font-weight: 600; 256 | height: 45px; 257 | text-transform: uppercase; 258 | white-space: nowrap; 259 | display: inline-block; 260 | margin: 0; 261 | padding: 0; 262 | } 263 | 264 | #gc-topnav ul { 265 | font-size: 12px; 266 | height: 45px; 267 | text-align: right; 268 | list-style: none; 269 | margin: 0; 270 | } 271 | 272 | #gc-topnav li a { 273 | color: #333; 274 | } 275 | #gc-topnav li a:hover { 276 | color: #39f; 277 | } 278 | 279 | #gc-topnav div { 280 | border-top: 10px solid white; 281 | margin: 0 30px; 282 | position: relative; 283 | height: 29px; 284 | } 285 | 286 | .pageData { 287 | display: none; 288 | } 289 | 290 | #gc-pagecontent { 291 | margin: 30px 0 100px 250px; 292 | } 293 | 294 | #gc-pagecontent h2 { 295 | border-top: 1px solid #CCC; 296 | font-size: 170%; 297 | font-weight: normal; 298 | margin: 2em 0 0 0; 299 | padding: 40px 0; 300 | } 301 | 302 | #gc-pagecontent h3 { 303 | font-size: 130%; 304 | font-weight: bold; 305 | margin: 1.5em 0 0 0; 306 | top: 0em; 307 | } 308 | 309 | #gc-pagecontent h4 { 310 | font-size: 110%; 311 | margin: .7em 0 0 0; 312 | position: relative; 313 | top: .4em; 314 | } 315 | 316 | #gc-pagecontent h5 { 317 | font-size: 100%; 318 | margin: 0; 319 | } 320 | 321 | #gc-pagecontent h1.page_title, 322 | #gc-pagecontent h2.page_title { 323 | line-height: 130%; 324 | font-size: 320%; 325 | margin: 0; 326 | padding: .8em 0 0; 327 | border: none; 328 | background: none; 329 | font-weight: normal; 330 | } 331 | 332 | #gc-pagecontent table { 333 | border-collapse: collapse; 334 | } 335 | #gc-pagecontent th { 336 | text-align: left; 337 | padding: 6px 12px; 338 | } 339 | #gc-pagecontent td { 340 | padding: 6px 12px; 341 | /*border: 1px solid #36C;*/ 342 | vertical-align: top; 343 | } 344 | 345 | /* Provide an intro table for api reference docs. */ 346 | #gc-pagecontent table.intro 347 | #gc-pagecontent table.intro th, 348 | #gc-pagecontent table.intro td { 349 | border-collapse: separate; 350 | border-style: none; 351 | } 352 | 353 | #gc-pagecontent table.intro { 354 | padding: 0; 355 | } 356 | 357 | #gc-pagecontent table.intro th { 358 | border-style: none; 359 | padding: 6px 12px; 360 | text-align: left; 361 | } 362 | 363 | #gc-pagecontent table.intro td { 364 | border-bottom: 1px solid #E5E5E5; 365 | padding: 6px 12px; 366 | vertical-align: top; 367 | } 368 | 369 | /* Provide an intro table for api reference docs. */ 370 | #gc-pagecontent table.intro 371 | #gc-pagecontent table.intro th, 372 | #gc-pagecontent table.intro td { 373 | border-collapse: separate; 374 | border-style: none; 375 | } 376 | 377 | #gc-pagecontent table.intro { 378 | padding: 0; 379 | } 380 | 381 | #gc-pagecontent table.intro th { 382 | border-style: none; 383 | padding: 6px 12px; 384 | text-align: left; 385 | } 386 | 387 | #gc-pagecontent table.intro td { 388 | border-bottom: 1px solid #E5E5E5; 389 | padding: 6px 12px; 390 | vertical-align: top; 391 | } 392 | 393 | /* Provide a "simple" version of the table to use just for layout. */ 394 | #gc-pagecontent table.simple, 395 | #gc-pagecontent table.simple th, 396 | #gc-pagecontent table.simple td { 397 | border-collapse: separate; 398 | border-style: none; 399 | } 400 | #gc-pagecontent table.simple { 401 | padding: 0; 402 | } 403 | #gc-pagecontent table.simple th, 404 | #gc-pagecontent table.simple td { 405 | padding: 1px; 406 | } 407 | 408 | #gc-footer { 409 | clear: both; 410 | margin: auto; 411 | color: #666; 412 | max-width: 1160px; 413 | padding: 0 50px; 414 | } 415 | 416 | #gc-footer .text { 417 | text-align: center; 418 | padding: 30px 0; 419 | margin: 0 0 0 0; 420 | } 421 | 422 | #gc-sidebar { 423 | margin: 0; 424 | margin-top: 2.5em; 425 | width: 180px; 426 | float: left; 427 | } 428 | 429 | /* Sidebar link/button styling. */ 430 | #gc-sidebar span, 431 | #gc-sidebar a { 432 | color: #767676; 433 | display: block; 434 | position: relative; 435 | font-weight: normal; 436 | } 437 | #gc-sidebar a:visited { 438 | color: #767676; 439 | } 440 | #gc-sidebar a:hover, 441 | #gc-sidebar a.selected { 442 | color: #39F; 443 | } 444 | #gc-sidebar a.button { 445 | color: #767676; 446 | } 447 | #gc-sidebar span.level2, 448 | #gc-sidebar a.level2 { 449 | font-weight: bold; 450 | } 451 | 452 | #gc-sidebar .toggleIndicator { 453 | position: absolute; 454 | right: 0; 455 | top: 3px; 456 | background: url(../images/toggle_sprite.png) no-repeat 0 0; 457 | height: 8px; 458 | width: 8px; 459 | } 460 | #gc-sidebar .toggleIndicator.toggled { 461 | background-position: 0 -9px; 462 | } 463 | 464 | /* Sidebar list styling. */ 465 | #gc-sidebar ul { 466 | list-style: none; 467 | padding: 0; 468 | } 469 | #gc-sidebar ul.level2 { 470 | margin-left: 10px; 471 | padding-top: 10px; 472 | } 473 | #gc-sidebar ul.level3 { 474 | margin-left: 20px; 475 | padding-top: 10px; 476 | list-style: url(../images/sidearrow.png); 477 | } 478 | 479 | /* Sidebar list element styling. */ 480 | #gc-sidebar li { 481 | margin: 0; 482 | padding: 8px 0; 483 | line-height: 120%; 484 | } 485 | #gc-sidebar li.level2 { 486 | border-top: 1px solid #E5E5E5; 487 | } 488 | 489 | #gc-toc div.line { 490 | border-top: thin solid #FAFAFA; 491 | height: 1px; 492 | margin: 1.3em 1em 0 0; 493 | padding: 0; 494 | } 495 | 496 | #toc { 497 | background-color: #F5F5F5; 498 | float: right; 499 | margin: 5px 0px 0px 0px; 500 | padding: 5px; 501 | width: 250px; 502 | word-break: break-word; 503 | /* We want this element to have a visual left-margin of 20px, but margins on 504 | floated elements don't affect the borders and background of the elements 505 | they float over. So we add this border to force the issue. */ 506 | border-left: 20px solid white; 507 | border-bottom: 20px solid white; 508 | z-index: 3; 509 | position: relative; 510 | } 511 | 512 | #toc * { 513 | padding: 0; 514 | list-style: none; 515 | font-weight: 600; 516 | } 517 | 518 | #toc h2 { 519 | font-weight: bold; 520 | font-size: 100%; 521 | margin: 0; 522 | border: none; 523 | padding: 0; 524 | } 525 | 526 | #toc ol { 527 | margin: 1em 0 0 0; 528 | } 529 | 530 | #toc ol li { 531 | margin: .5em 0 .5em 1em; 532 | line-height: 1.2em; 533 | } 534 | 535 | #toc ol li ol { 536 | margin: 0; 537 | } 538 | 539 | #toc ol li ol li { 540 | margin: .5em 0 .5em 1em; 541 | } 542 | 543 | .filtered_item { 544 | line-height: 6px; 545 | } 546 | 547 | #filtered_apis { 548 | margin-top: 5px; 549 | } 550 | 551 | #skipto { 552 | display: none; 553 | } 554 | 555 | input.gsc-search-button.gsc-search-button-v2 { 556 | padding: 8px 30px; 557 | margin-top: 5px; 558 | } 559 | 560 | div.gsc-control-cse { 561 | margin: 0; 562 | padding: 0; 563 | position: relative; 564 | z-index: 2; 565 | } 566 | 567 | td.gsc-input { 568 | padding: 0 0; 569 | } 570 | 571 | div.gsc-input-box { 572 | height: 30px; 573 | width: 250px; 574 | float: right; 575 | } 576 | 577 | #known_issues { 578 | background: #F5F5F5; 579 | padding-top: 1px; 580 | padding-bottom: 16px; 581 | padding-right: 16px; 582 | padding-left: 16px; 583 | } 584 | 585 | #search_results td { 586 | border: none; 587 | } 588 | 589 | #search_results { 590 | float: left; 591 | } 592 | 593 | /* List with largeish images floated to the right. */ 594 | .imaged li { 595 | clear: right; 596 | } 597 | 598 | .imaged li img { 599 | float: right; 600 | margin-bottom: 1em; 601 | } 602 | 603 | .imaged + p { 604 | clear: right; 605 | } 606 | -------------------------------------------------------------------------------- /stable/static/images/a11y/focus-outline-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/a11y/focus-outline-2.png -------------------------------------------------------------------------------- /stable/static/images/a11y/focus-outline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/a11y/focus-outline.png -------------------------------------------------------------------------------- /stable/static/images/a11y/standard-html-controls.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/a11y/standard-html-controls.png -------------------------------------------------------------------------------- /stable/static/images/active-tab-after.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/active-tab-after.png -------------------------------------------------------------------------------- /stable/static/images/active-tab-before.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/active-tab-before.png -------------------------------------------------------------------------------- /stable/static/images/applifecycle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/applifecycle.png -------------------------------------------------------------------------------- /stable/static/images/bookmarks.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/bookmarks.png -------------------------------------------------------------------------------- /stable/static/images/browser-action.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/browser-action.png -------------------------------------------------------------------------------- /stable/static/images/calculator-128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/calculator-128.png -------------------------------------------------------------------------------- /stable/static/images/calculator-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/calculator-16.png -------------------------------------------------------------------------------- /stable/static/images/chrome_logo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/chrome_logo.gif -------------------------------------------------------------------------------- /stable/static/images/console-button.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/console-button.gif -------------------------------------------------------------------------------- /stable/static/images/container.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/container.png -------------------------------------------------------------------------------- /stable/static/images/csperrors.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/csperrors.png -------------------------------------------------------------------------------- /stable/static/images/customframe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/customframe.png -------------------------------------------------------------------------------- /stable/static/images/devtools-1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/devtools-1.gif -------------------------------------------------------------------------------- /stable/static/images/devtools-2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/devtools-2.gif -------------------------------------------------------------------------------- /stable/static/images/devtools-3.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/devtools-3.gif -------------------------------------------------------------------------------- /stable/static/images/devtools-audits-category.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/devtools-audits-category.png -------------------------------------------------------------------------------- /stable/static/images/devtools-audits-results.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/devtools-audits-results.png -------------------------------------------------------------------------------- /stable/static/images/devtools-localvars.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/devtools-localvars.gif -------------------------------------------------------------------------------- /stable/static/images/devtools-panels.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/devtools-panels.png -------------------------------------------------------------------------------- /stable/static/images/editor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/editor.png -------------------------------------------------------------------------------- /stable/static/images/fetchedicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/fetchedicon.png -------------------------------------------------------------------------------- /stable/static/images/filebrowserhandler.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/filebrowserhandler.png -------------------------------------------------------------------------------- /stable/static/images/fileicons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/fileicons.png -------------------------------------------------------------------------------- /stable/static/images/gearsicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/gearsicon.png -------------------------------------------------------------------------------- /stable/static/images/gettingstarted-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/gettingstarted-1.jpg -------------------------------------------------------------------------------- /stable/static/images/gettingstarted-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/gettingstarted-icon.png -------------------------------------------------------------------------------- /stable/static/images/gettingstarted-popup.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/gettingstarted-popup.jpg -------------------------------------------------------------------------------- /stable/static/images/hello-world-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/hello-world-small.png -------------------------------------------------------------------------------- /stable/static/images/hello-world.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/hello-world.png -------------------------------------------------------------------------------- /stable/static/images/hotdogmenu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/hotdogmenu.png -------------------------------------------------------------------------------- /stable/static/images/i18n-after-1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/i18n-after-1.gif -------------------------------------------------------------------------------- /stable/static/images/i18n-after-2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/i18n-after-2.gif -------------------------------------------------------------------------------- /stable/static/images/i18n-before.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/i18n-before.gif -------------------------------------------------------------------------------- /stable/static/images/i18n-hierarchy.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/i18n-hierarchy.gif -------------------------------------------------------------------------------- /stable/static/images/i18n-strings.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/i18n-strings.gif -------------------------------------------------------------------------------- /stable/static/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/icon.png -------------------------------------------------------------------------------- /stable/static/images/index/gmail-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/index/gmail-small.png -------------------------------------------------------------------------------- /stable/static/images/infobar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/infobar.png -------------------------------------------------------------------------------- /stable/static/images/jstransferrequests.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/jstransferrequests.png -------------------------------------------------------------------------------- /stable/static/images/listoffiles.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/listoffiles.png -------------------------------------------------------------------------------- /stable/static/images/load_after.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/load_after.png -------------------------------------------------------------------------------- /stable/static/images/load_after_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/load_after_small.png -------------------------------------------------------------------------------- /stable/static/images/mvc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/mvc.png -------------------------------------------------------------------------------- /stable/static/images/noframe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/noframe.png -------------------------------------------------------------------------------- /stable/static/images/notification-linux.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/notification-linux.png -------------------------------------------------------------------------------- /stable/static/images/notification-mac.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/notification-mac.png -------------------------------------------------------------------------------- /stable/static/images/notification-windows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/notification-windows.png -------------------------------------------------------------------------------- /stable/static/images/ntp-blank.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/ntp-blank.png -------------------------------------------------------------------------------- /stable/static/images/ntp-default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/ntp-default.png -------------------------------------------------------------------------------- /stable/static/images/omnibox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/omnibox.png -------------------------------------------------------------------------------- /stable/static/images/overview/arch-1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/overview/arch-1.gif -------------------------------------------------------------------------------- /stable/static/images/overview/arch-2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/overview/arch-2.gif -------------------------------------------------------------------------------- /stable/static/images/overview/arch-3.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/overview/arch-3.gif -------------------------------------------------------------------------------- /stable/static/images/overview/arch-cs.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/overview/arch-cs.gif -------------------------------------------------------------------------------- /stable/static/images/overview/browser-action-with-popup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/overview/browser-action-with-popup.png -------------------------------------------------------------------------------- /stable/static/images/overview/browser-action.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/overview/browser-action.png -------------------------------------------------------------------------------- /stable/static/images/overview/page-action.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/overview/page-action.png -------------------------------------------------------------------------------- /stable/static/images/package-success.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/package-success.gif -------------------------------------------------------------------------------- /stable/static/images/page-action.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/page-action.png -------------------------------------------------------------------------------- /stable/static/images/perms-hw1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/perms-hw1.png -------------------------------------------------------------------------------- /stable/static/images/perms-hw2-disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/perms-hw2-disabled.png -------------------------------------------------------------------------------- /stable/static/images/perms-hw2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/perms-hw2.png -------------------------------------------------------------------------------- /stable/static/images/perms-optional.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/perms-optional.png -------------------------------------------------------------------------------- /stable/static/images/play-button.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/play-button.gif -------------------------------------------------------------------------------- /stable/static/images/sample-default-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/sample-default-icon.png -------------------------------------------------------------------------------- /stable/static/images/sidearrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/sidearrow.png -------------------------------------------------------------------------------- /stable/static/images/tabs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/tabs.png -------------------------------------------------------------------------------- /stable/static/images/themes-1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/themes-1.gif -------------------------------------------------------------------------------- /stable/static/images/themes-2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/themes-2.gif -------------------------------------------------------------------------------- /stable/static/images/themes-3.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/themes-3.gif -------------------------------------------------------------------------------- /stable/static/images/todos.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/todos.png -------------------------------------------------------------------------------- /stable/static/images/toggle_sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/toggle_sprite.png -------------------------------------------------------------------------------- /stable/static/images/toolsmenu.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/toolsmenu.gif -------------------------------------------------------------------------------- /stable/static/images/tut_analytics/screenshot01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/tut_analytics/screenshot01.png -------------------------------------------------------------------------------- /stable/static/images/tut_analytics/screenshot02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/tut_analytics/screenshot02.png -------------------------------------------------------------------------------- /stable/static/images/tut_analytics/screenshot03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/tut_analytics/screenshot03.png -------------------------------------------------------------------------------- /stable/static/images/tut_analytics/screenshot04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/tut_analytics/screenshot04.png -------------------------------------------------------------------------------- /stable/static/images/update-success.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/update-success.gif -------------------------------------------------------------------------------- /stable/static/images/uploader.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/uploader.png -------------------------------------------------------------------------------- /stable/static/images/webrequestapi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/webrequestapi.png -------------------------------------------------------------------------------- /stable/static/images/windows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/windows.png -------------------------------------------------------------------------------- /stable/static/images/writecompleted.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yixi/ChromeExtensionDocument/6354bcce5316f14d7dbb1b656840461caeccbca6/stable/static/images/writecompleted.png -------------------------------------------------------------------------------- /stable/static/js/branch.js: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style license that can be 3 | // found in the LICENSE file. 4 | 5 | (function() { 6 | var branchChooser = document.getElementById('branchChooser'); 7 | // No branch chooser on stable (for example). 8 | if (!branchChooser) 9 | return; 10 | 11 | branchChooser.addEventListener('change', function() { 12 | var value = event.target.value; 13 | if (!value) 14 | return; 15 | var current_branch = window.bootstrap.branchInfo.current; 16 | var path = window.location.pathname.split('/'); 17 | if (path[0] == '') 18 | path = path.slice(1); 19 | var index = path.indexOf(current_branch); 20 | if (index != -1) 21 | path[index] = value; 22 | else 23 | path.splice(0, 0, value); 24 | window.location = '/' + path.join('/'); 25 | }); 26 | })() 27 | -------------------------------------------------------------------------------- /stable/static/js/filter.js: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style license that can be 3 | // found in the LICENSE file. 4 | 5 | // This is used for the search box on the left navigation bar. The APIs are 6 | // filtered and displayed based on what the user is typing in the box. 7 | (function() { 8 | var search_box = document.getElementById('api_search'); 9 | var filtered_apis = document.getElementById('filtered_apis'); 10 | 11 | function filterAPIs() { 12 | var search_text = search_box.value.toLowerCase(); 13 | var apis = window.bootstrap.api_names; 14 | if (!search_text) { 15 | filtered_apis.style.display = 'none'; 16 | return; 17 | } 18 | var api_list = '' 19 | for (var i = 0; i < apis.length; ++i) { 20 | if (apis[i].name.toLowerCase().indexOf(search_text) != -1) 21 | api_list += '
  • ' + apis[i].name + '
  • ' 23 | } 24 | if (api_list != filtered_apis.innerHtml) 25 | filtered_apis.innerHTML = api_list; 26 | if (!api_list) 27 | filtered_apis.style.display = 'none'; 28 | else 29 | filtered_apis.style.display = ''; 30 | } 31 | 32 | filtered_apis.style.display = 'none'; 33 | search_box.addEventListener('search', filterAPIs); 34 | search_box.addEventListener('keyup', filterAPIs); 35 | })(); 36 | -------------------------------------------------------------------------------- /stable/static/js/prettify.js: -------------------------------------------------------------------------------- 1 | var q=null;window.PR_SHOULD_USE_CONTINUATION=!0; 2 | (function(){function L(a){function m(a){var f=a.charCodeAt(0);if(f!==92)return f;var b=a.charAt(1);return(f=r[b])?f:"0"<=b&&b<="7"?parseInt(a.substring(1),8):b==="u"||b==="x"?parseInt(a.substring(2),16):a.charCodeAt(1)}function e(a){if(a<32)return(a<16?"\\x0":"\\x")+a.toString(16);a=String.fromCharCode(a);if(a==="\\"||a==="-"||a==="["||a==="]")a="\\"+a;return a}function h(a){for(var f=a.substring(1,a.length-1).match(/\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\[0-3][0-7]{0,2}|\\[0-7]{1,2}|\\[\S\s]|[^\\]/g),a= 3 | [],b=[],o=f[0]==="^",c=o?1:0,i=f.length;c122||(d<65||j>90||b.push([Math.max(65,j)|32,Math.min(d,90)|32]),d<97||j>122||b.push([Math.max(97,j)&-33,Math.min(d,122)&-33]))}}b.sort(function(a,f){return a[0]-f[0]||f[1]-a[1]});f=[];j=[NaN,NaN];for(c=0;ci[0]&&(i[1]+1>i[0]&&b.push("-"),b.push(e(i[1])));b.push("]");return b.join("")}function y(a){for(var f=a.source.match(/\[(?:[^\\\]]|\\[\S\s])*]|\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\\d+|\\[^\dux]|\(\?[!:=]|[()^]|[^()[\\^]+/g),b=f.length,d=[],c=0,i=0;c=2&&a==="["?f[c]=h(j):a!=="\\"&&(f[c]=j.replace(/[A-Za-z]/g,function(a){a=a.charCodeAt(0);return"["+String.fromCharCode(a&-33,a|32)+"]"}));return f.join("")}for(var t=0,s=!1,l=!1,p=0,d=a.length;p=5&&"lang-"===b.substring(0,5))&&!(o&&typeof o[1]==="string"))c=!1,b="src";c||(r[f]=b)}i=d;d+=f.length;if(c){c=o[1];var j=f.indexOf(c),k=j+c.length;o[2]&&(k=f.length-o[2].length,j=k-c.length);b=b.substring(5);B(l+i,f.substring(0,j),e,p);B(l+i+j,c,C(b,c),p);B(l+i+k,f.substring(k),e,p)}else p.push(l+i,b)}a.e=p}var h={},y;(function(){for(var e=a.concat(m), 9 | l=[],p={},d=0,g=e.length;d=0;)h[n.charAt(k)]=r;r=r[1];n=""+r;p.hasOwnProperty(n)||(l.push(r),p[n]=q)}l.push(/[\S\s]/);y=L(l)})();var t=m.length;return e}function u(a){var m=[],e=[];a.tripleQuotedStrings?m.push(["str",/^(?:'''(?:[^'\\]|\\[\S\s]|''?(?=[^']))*(?:'''|$)|"""(?:[^"\\]|\\[\S\s]|""?(?=[^"]))*(?:"""|$)|'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$))/,q,"'\""]):a.multiLineStrings?m.push(["str",/^(?:'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$)|`(?:[^\\`]|\\[\S\s])*(?:`|$))/, 10 | q,"'\"`"]):m.push(["str",/^(?:'(?:[^\n\r'\\]|\\.)*(?:'|$)|"(?:[^\n\r"\\]|\\.)*(?:"|$))/,q,"\"'"]);a.verbatimStrings&&e.push(["str",/^@"(?:[^"]|"")*(?:"|$)/,q]);var h=a.hashComments;h&&(a.cStyleComments?(h>1?m.push(["com",/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,q,"#"]):m.push(["com",/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\n\r]*)/,q,"#"]),e.push(["str",/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,q])):m.push(["com",/^#[^\n\r]*/, 11 | q,"#"]));a.cStyleComments&&(e.push(["com",/^\/\/[^\n\r]*/,q]),e.push(["com",/^\/\*[\S\s]*?(?:\*\/|$)/,q]));a.regexLiterals&&e.push(["lang-regex",/^(?:^^\.?|[!+-]|!=|!==|#|%|%=|&|&&|&&=|&=|\(|\*|\*=|\+=|,|-=|->|\/|\/=|:|::|;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|[?@[^]|\^=|\^\^|\^\^=|{|\||\|=|\|\||\|\|=|~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\s*(\/(?=[^*/])(?:[^/[\\]|\\[\S\s]|\[(?:[^\\\]]|\\[\S\s])*(?:]|$))+\/)/]);(h=a.types)&&e.push(["typ",h]);a=(""+a.keywords).replace(/^ | $/g, 12 | "");a.length&&e.push(["kwd",RegExp("^(?:"+a.replace(/[\s,]+/g,"|")+")\\b"),q]);m.push(["pln",/^\s+/,q," \r\n\t\xa0"]);e.push(["lit",/^@[$_a-z][\w$@]*/i,q],["typ",/^(?:[@_]?[A-Z]+[a-z][\w$@]*|\w+_t\b)/,q],["pln",/^[$_a-z][\w$@]*/i,q],["lit",/^(?:0x[\da-f]+|(?:\d(?:_\d+)*\d*(?:\.\d*)?|\.\d\+)(?:e[+-]?\d+)?)[a-z]*/i,q,"0123456789"],["pln",/^\\[\S\s]?/,q],["pun",/^.[^\s\w"-$'./@\\`]*/,q]);return x(m,e)}function D(a,m){function e(a){switch(a.nodeType){case 1:if(k.test(a.className))break;if("BR"===a.nodeName)h(a), 13 | a.parentNode&&a.parentNode.removeChild(a);else for(a=a.firstChild;a;a=a.nextSibling)e(a);break;case 3:case 4:if(p){var b=a.nodeValue,d=b.match(t);if(d){var c=b.substring(0,d.index);a.nodeValue=c;(b=b.substring(d.index+d[0].length))&&a.parentNode.insertBefore(s.createTextNode(b),a.nextSibling);h(a);c||a.parentNode.removeChild(a)}}}}function h(a){function b(a,d){var e=d?a.cloneNode(!1):a,f=a.parentNode;if(f){var f=b(f,1),g=a.nextSibling;f.appendChild(e);for(var h=g;h;h=g)g=h.nextSibling,f.appendChild(h)}return e} 14 | for(;!a.nextSibling;)if(a=a.parentNode,!a)return;for(var a=b(a.nextSibling,0),e;(e=a.parentNode)&&e.nodeType===1;)a=e;d.push(a)}var k=/(?:^|\s)nocode(?:\s|$)/,t=/\r\n?|\n/,s=a.ownerDocument,l;a.currentStyle?l=a.currentStyle.whiteSpace:window.getComputedStyle&&(l=s.defaultView.getComputedStyle(a,q).getPropertyValue("white-space"));var p=l&&"pre"===l.substring(0,3);for(l=s.createElement("LI");a.firstChild;)l.appendChild(a.firstChild);for(var d=[l],g=0;g=0;){var h=m[e];A.hasOwnProperty(h)?window.console&&console.warn("cannot override language handler %s",h):A[h]=a}}function C(a,m){if(!a||!A.hasOwnProperty(a))a=/^\s*=o&&(h+=2);e>=c&&(a+=2)}}catch(w){"console"in window&&console.log(w&&w.stack?w.stack:w)}}var v=["break,continue,do,else,for,if,return,while"],w=[[v,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"], 18 | "catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"],F=[w,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"],G=[w,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"], 19 | H=[G,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var"],w=[w,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"],I=[v,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"], 20 | J=[v,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"],v=[v,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"],K=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/,N=/\S/,O=u({keywords:[F,H,w,"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END"+ 21 | I,J,v],hashComments:!0,cStyleComments:!0,multiLineStrings:!0,regexLiterals:!0}),A={};k(O,["default-code"]);k(x([],[["pln",/^[^]*(?:>|$)/],["com",/^<\!--[\S\s]*?(?:--\>|$)/],["lang-",/^<\?([\S\s]+?)(?:\?>|$)/],["lang-",/^<%([\S\s]+?)(?:%>|$)/],["pun",/^(?:<[%?]|[%?]>)/],["lang-",/^]*>([\S\s]+?)<\/xmp\b[^>]*>/i],["lang-js",/^]*>([\S\s]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\S\s]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]), 22 | ["default-markup","htm","html","mxml","xhtml","xml","xsl"]);k(x([["pln",/^\s+/,q," \t\r\n"],["atv",/^(?:"[^"]*"?|'[^']*'?)/,q,"\"'"]],[["tag",/^^<\/?[a-z](?:[\w-.:]*\w)?|\/?>$/i],["atn",/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^\s"'>]*(?:[^\s"'/>]|\/(?=\s)))/],["pun",/^[/<->]+/],["lang-js",/^on\w+\s*=\s*"([^"]+)"/i],["lang-js",/^on\w+\s*=\s*'([^']+)'/i],["lang-js",/^on\w+\s*=\s*([^\s"'>]+)/i],["lang-css",/^style\s*=\s*"([^"]+)"/i],["lang-css",/^style\s*=\s*'([^']+)'/i],["lang-css", 23 | /^style\s*=\s*([^\s"'>]+)/i]]),["in.tag"]);k(x([],[["atv",/^[\S\s]+/]]),["uq.val"]);k(u({keywords:F,hashComments:!0,cStyleComments:!0,types:K}),["c","cc","cpp","cxx","cyc","m"]);k(u({keywords:"null,true,false"}),["json"]);k(u({keywords:H,hashComments:!0,cStyleComments:!0,verbatimStrings:!0,types:K}),["cs"]);k(u({keywords:G,cStyleComments:!0}),["java"]);k(u({keywords:v,hashComments:!0,multiLineStrings:!0}),["bsh","csh","sh"]);k(u({keywords:I,hashComments:!0,multiLineStrings:!0,tripleQuotedStrings:!0}), 24 | ["cv","py"]);k(u({keywords:"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END",hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["perl","pl","pm"]);k(u({keywords:J,hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["rb"]);k(u({keywords:w,cStyleComments:!0,regexLiterals:!0}),["js"]);k(u({keywords:"all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes", 25 | hashComments:3,cStyleComments:!0,multilineStrings:!0,tripleQuotedStrings:!0,regexLiterals:!0}),["coffee"]);k(x([],[["str",/^[\S\s]+/]]),["regex"]);window.prettyPrintOne=function(a,m,e){var h=document.createElement("PRE");h.innerHTML=a;e&&D(h,e);E({g:m,i:e,h:h});return h.innerHTML};window.prettyPrint=function(a){function m(){for(var e=window.PR_SHOULD_USE_CONTINUATION?l.now()+250:Infinity;p=0){var k=k.match(g),f,b;if(b= 26 | !k){b=n;for(var o=void 0,c=b.firstChild;c;c=c.nextSibling)var i=c.nodeType,o=i===1?o?b:c:i===3?N.test(c.nodeValue)?b:o:o;b=(f=o===b?void 0:o)&&"CODE"===f.tagName}b&&(k=f.className.match(g));k&&(k=k[1]);b=!1;for(o=n.parentNode;o;o=o.parentNode)if((o.tagName==="pre"||o.tagName==="code"||o.tagName==="xmp")&&o.className&&o.className.indexOf("prettyprint")>=0){b=!0;break}b||((b=(b=n.className.match(/\blinenums\b(?::(\d+))?/))?b[1]&&b[1].length?+b[1]:!0:!1)&&D(n,b),d={g:k,h:n,i:b},E(d))}}p