closure 1.2.701 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1566) hide show
  1. data/README.md +9 -8
  2. data/closure-compiler/README +1 -1
  3. data/closure-compiler/compiler.jar +0 -0
  4. data/docs/SCRIPT.md +142 -0
  5. data/docs/closure/Closure/BeanShell.html +335 -0
  6. data/docs/closure/Closure/Compiler/Compilation.html +636 -0
  7. data/docs/closure/Closure/Compiler/Error.html +116 -0
  8. data/docs/closure/Closure/Compiler.html +387 -0
  9. data/docs/closure/Closure/FileResponse.html +622 -0
  10. data/docs/closure/Closure/Goog.html +1251 -0
  11. data/docs/closure/Closure/Middleware.html +304 -0
  12. data/docs/closure/Closure/Script/NotFound.html +116 -0
  13. data/docs/closure/Closure/Script/RenderStackOverflow.html +116 -0
  14. data/docs/closure/Closure/Script.html +1083 -0
  15. data/docs/closure/Closure/Server.html +439 -0
  16. data/docs/closure/Closure/ShowExceptions.html +266 -0
  17. data/docs/closure/Closure/Sources.html +1272 -0
  18. data/docs/closure/Closure/Templates/Error.html +116 -0
  19. data/docs/closure/Closure/Templates.html +361 -0
  20. data/docs/closure/Closure.html +715 -0
  21. data/docs/closure/_index.html +289 -0
  22. data/docs/closure/class_list.html +47 -0
  23. data/docs/closure/css/common.css +1 -0
  24. data/docs/closure/css/full_list.css +53 -0
  25. data/docs/closure/css/style.css +320 -0
  26. data/{closure-library/LICENSE → docs/closure/file.LICENSE.html} +106 -16
  27. data/docs/closure/file.README.html +79 -0
  28. data/docs/closure/file_list.html +52 -0
  29. data/docs/closure/frames.html +13 -0
  30. data/docs/closure/index.html +79 -0
  31. data/docs/closure/js/app.js +205 -0
  32. data/docs/closure/js/full_list.js +150 -0
  33. data/docs/closure/js/jquery.js +16 -0
  34. data/docs/closure/method_list.html +486 -0
  35. data/docs/closure/top-level-namespace.html +103 -0
  36. data/docs/index.erb +26 -0
  37. data/externs/chrome_extensions.externs +968 -0
  38. data/{scripts/externs/jquery_1_4_2.externs → externs/jquery-1.3.2.externs} +39 -170
  39. data/externs/jquery-1.4.3.externs +1289 -0
  40. data/externs/jquery-1.4.4.externs +1302 -0
  41. data/externs/jquery-1.5.externs +1697 -0
  42. data/externs/jquery.externs +4 -0
  43. data/lib/closure/beanshell.rb +9 -21
  44. data/lib/closure/compiler.rb +247 -102
  45. data/lib/closure/engines.rb +50 -0
  46. data/lib/closure/goog.rb +122 -68
  47. data/lib/closure/script.rb +68 -54
  48. data/lib/closure/server.rb +10 -1
  49. data/lib/closure/show_exceptions.rb +30 -3
  50. data/lib/closure/sources.rb +26 -25
  51. data/lib/closure/templates.rb +79 -124
  52. data/lib/closure/version.rb +1 -1
  53. data/lib/closure.rb +64 -43
  54. data/lib/shim.jar +0 -0
  55. data/scripts/config.ru +25 -0
  56. data/scripts/hello/compiler.js.erb +48 -0
  57. data/scripts/hello/compiler_build.js +5 -0
  58. data/scripts/hello/compiler_build.map +752 -0
  59. data/scripts/hello/compiler_debug.js +125 -0
  60. data/scripts/hello/hello.js +11 -0
  61. data/scripts/hello/index.erb +11 -0
  62. data/scripts/hello/legume.js +20 -0
  63. data/scripts/hello/legume.soy +9 -0
  64. data/scripts/index.erb +45 -5
  65. data/scripts/jquery/compiler.js.erb +7 -0
  66. data/scripts/jquery/compiler_out.js +1 -0
  67. data/scripts/jquery/index.erb +25 -0
  68. data/scripts/jquery/jquery_test.js +8 -0
  69. data/scripts/modules/api.js +11 -0
  70. data/scripts/modules/api_init.js +8 -0
  71. data/scripts/modules/app.js +102 -0
  72. data/scripts/modules/app_init.js +33 -0
  73. data/scripts/modules/compiler.js.erb +34 -0
  74. data/scripts/modules/compiler_build.js +6 -0
  75. data/scripts/modules/compiler_build.map +12077 -0
  76. data/scripts/modules/compiler_build_api.js +1 -0
  77. data/scripts/modules/compiler_build_app.js +74 -0
  78. data/scripts/modules/compiler_build_settings.js +2 -0
  79. data/scripts/modules/compiler_debug.js +6 -0
  80. data/scripts/modules/compiler_debug_api.js +11 -0
  81. data/scripts/modules/compiler_debug_app.js +2870 -0
  82. data/scripts/modules/compiler_debug_settings.js +42 -0
  83. data/scripts/modules/index.erb +18 -0
  84. data/scripts/modules/settings.js +19 -0
  85. data/scripts/modules/settings_init.js +14 -0
  86. data/scripts/{demos/rails_ujs.erb → rails/index.erb} +14 -6
  87. data/scripts/{demos → rails}/rails_ujs.js +0 -40
  88. data/scripts/svn.erb +228 -0
  89. data/scripts/welcome.erb +78 -0
  90. metadata +101 -1507
  91. data/.gitignore +0 -6
  92. data/.yardopts +0 -3
  93. data/closure-library/AUTHORS +0 -12
  94. data/closure-library/README +0 -6
  95. data/closure-library/all_tests.html +0 -113
  96. data/closure-library/alltests.js +0 -16
  97. data/closure-library/closure/bin/build/closurebuilder.py +0 -257
  98. data/closure-library/closure/bin/build/depstree.py +0 -186
  99. data/closure-library/closure/bin/build/depstree_test.py +0 -127
  100. data/closure-library/closure/bin/build/depswriter.py +0 -197
  101. data/closure-library/closure/bin/build/jscompiler.py +0 -69
  102. data/closure-library/closure/bin/build/source.py +0 -86
  103. data/closure-library/closure/bin/build/source_test.py +0 -57
  104. data/closure-library/closure/bin/build/treescan.py +0 -78
  105. data/closure-library/closure/bin/calcdeps.py +0 -570
  106. data/closure-library/closure/bin/scopify.py +0 -211
  107. data/closure-library/closure/css/inlay/g-base.css +0 -82
  108. data/closure-library/closure/css/inlay/g-fixed.css +0 -158
  109. data/closure-library/closure/css/inlay/g-ratio.css +0 -253
  110. data/closure-library/closure/goog/array/array.js +0 -1300
  111. data/closure-library/closure/goog/array/array_test.html +0 -1524
  112. data/closure-library/closure/goog/asserts/asserts.js +0 -277
  113. data/closure-library/closure/goog/asserts/asserts_test.html +0 -163
  114. data/closure-library/closure/goog/async/conditionaldelay.js +0 -238
  115. data/closure-library/closure/goog/async/conditionaldelay_test.html +0 -227
  116. data/closure-library/closure/goog/async/delay.js +0 -174
  117. data/closure-library/closure/goog/async/delay_test.html +0 -148
  118. data/closure-library/closure/goog/async/throttle.js +0 -189
  119. data/closure-library/closure/goog/async/throttle_test.html +0 -102
  120. data/closure-library/closure/goog/base.js +0 -1471
  121. data/closure-library/closure/goog/base_test.html +0 -1166
  122. data/closure-library/closure/goog/bootstrap/webworkers.js +0 -37
  123. data/closure-library/closure/goog/color/alpha.js +0 -436
  124. data/closure-library/closure/goog/color/alpha_test.html +0 -234
  125. data/closure-library/closure/goog/color/color.js +0 -757
  126. data/closure-library/closure/goog/color/color_test.html +0 -645
  127. data/closure-library/closure/goog/color/names.js +0 -176
  128. data/closure-library/closure/goog/crypt/arc4.js +0 -141
  129. data/closure-library/closure/goog/crypt/arc4_test.html +0 -42
  130. data/closure-library/closure/goog/crypt/base64.js +0 -267
  131. data/closure-library/closure/goog/crypt/base64_test.html +0 -106
  132. data/closure-library/closure/goog/crypt/basen.js +0 -242
  133. data/closure-library/closure/goog/crypt/basen_test.html +0 -167
  134. data/closure-library/closure/goog/crypt/crypt.js +0 -103
  135. data/closure-library/closure/goog/crypt/crypt_test.html +0 -68
  136. data/closure-library/closure/goog/crypt/hash32.js +0 -184
  137. data/closure-library/closure/goog/crypt/hash32_test.html +0 -287
  138. data/closure-library/closure/goog/crypt/sha1.js +0 -238
  139. data/closure-library/closure/goog/crypt/sha1_test.html +0 -47
  140. data/closure-library/closure/goog/css/autocomplete.css +0 -43
  141. data/closure-library/closure/goog/css/bubble.css +0 -84
  142. data/closure-library/closure/goog/css/button.css +0 -38
  143. data/closure-library/closure/goog/css/charpicker.css +0 -201
  144. data/closure-library/closure/goog/css/checkbox.css +0 -38
  145. data/closure-library/closure/goog/css/colormenubutton.css +0 -25
  146. data/closure-library/closure/goog/css/colorpalette.css +0 -54
  147. data/closure-library/closure/goog/css/colorpicker-simplegrid.css +0 -50
  148. data/closure-library/closure/goog/css/combobox.css +0 -57
  149. data/closure-library/closure/goog/css/common.css +0 -41
  150. data/closure-library/closure/goog/css/css3button.css +0 -77
  151. data/closure-library/closure/goog/css/css3menubutton.css +0 -23
  152. data/closure-library/closure/goog/css/custombutton.css +0 -164
  153. data/closure-library/closure/goog/css/datepicker.css +0 -148
  154. data/closure-library/closure/goog/css/dialog.css +0 -72
  155. data/closure-library/closure/goog/css/dimensionpicker.css +0 -47
  156. data/closure-library/closure/goog/css/dragdropdetector.css +0 -48
  157. data/closure-library/closure/goog/css/editor/bubble.css +0 -73
  158. data/closure-library/closure/goog/css/editor/dialog.css +0 -66
  159. data/closure-library/closure/goog/css/editor/linkdialog.css +0 -36
  160. data/closure-library/closure/goog/css/editortoolbar.css +0 -225
  161. data/closure-library/closure/goog/css/filteredmenu.css +0 -30
  162. data/closure-library/closure/goog/css/filterobservingmenuitem.css +0 -25
  163. data/closure-library/closure/goog/css/flatbutton.css +0 -65
  164. data/closure-library/closure/goog/css/flatmenubutton.css +0 -63
  165. data/closure-library/closure/goog/css/hovercard.css +0 -51
  166. data/closure-library/closure/goog/css/hsvapalette.css +0 -231
  167. data/closure-library/closure/goog/css/hsvpalette.css +0 -179
  168. data/closure-library/closure/goog/css/imagelessbutton.css +0 -160
  169. data/closure-library/closure/goog/css/imagelessmenubutton.css +0 -23
  170. data/closure-library/closure/goog/css/inputdatepicker.css +0 -12
  171. data/closure-library/closure/goog/css/linkbutton.css +0 -26
  172. data/closure-library/closure/goog/css/menu.css +0 -27
  173. data/closure-library/closure/goog/css/menubutton.css +0 -169
  174. data/closure-library/closure/goog/css/menuitem.css +0 -96
  175. data/closure-library/closure/goog/css/menuseparator.css +0 -19
  176. data/closure-library/closure/goog/css/multitestrunner.css +0 -121
  177. data/closure-library/closure/goog/css/offline.css +0 -147
  178. data/closure-library/closure/goog/css/palette.css +0 -36
  179. data/closure-library/closure/goog/css/popupdatepicker.css +0 -17
  180. data/closure-library/closure/goog/css/roundedpanel.css +0 -29
  181. data/closure-library/closure/goog/css/roundedtab.css +0 -158
  182. data/closure-library/closure/goog/css/submenu.css +0 -28
  183. data/closure-library/closure/goog/css/tab.css +0 -91
  184. data/closure-library/closure/goog/css/tabbar.css +0 -52
  185. data/closure-library/closure/goog/css/tablesorter.css +0 -14
  186. data/closure-library/closure/goog/css/toolbar.css +0 -400
  187. data/closure-library/closure/goog/css/tooltip.css +0 -14
  188. data/closure-library/closure/goog/css/tree.css +0 -147
  189. data/closure-library/closure/goog/css/tristatemenuitem.css +0 -43
  190. data/closure-library/closure/goog/cssom/cssom.js +0 -447
  191. data/closure-library/closure/goog/cssom/cssom_test.html +0 -343
  192. data/closure-library/closure/goog/cssom/cssom_test_import_1.css +0 -11
  193. data/closure-library/closure/goog/cssom/cssom_test_import_2.css +0 -10
  194. data/closure-library/closure/goog/cssom/cssom_test_link_1.css +0 -10
  195. data/closure-library/closure/goog/cssom/iframe/style.js +0 -1020
  196. data/closure-library/closure/goog/cssom/iframe/style_test.html +0 -391
  197. data/closure-library/closure/goog/cssom/iframe/style_test_import.css +0 -10
  198. data/closure-library/closure/goog/datasource/datamanager.js +0 -566
  199. data/closure-library/closure/goog/datasource/datasource.js +0 -646
  200. data/closure-library/closure/goog/datasource/datasource_test.html +0 -265
  201. data/closure-library/closure/goog/datasource/expr.js +0 -544
  202. data/closure-library/closure/goog/datasource/expr_test.html +0 -97
  203. data/closure-library/closure/goog/datasource/fastdatanode.js +0 -792
  204. data/closure-library/closure/goog/datasource/fastdatanode_test.html +0 -254
  205. data/closure-library/closure/goog/datasource/jsdatasource.js +0 -460
  206. data/closure-library/closure/goog/datasource/jsondatasource.js +0 -146
  207. data/closure-library/closure/goog/datasource/jsxmlhttpdatasource.js +0 -191
  208. data/closure-library/closure/goog/datasource/jsxmlhttpdatasource_test.html +0 -94
  209. data/closure-library/closure/goog/datasource/xmldatasource.js +0 -407
  210. data/closure-library/closure/goog/date/date.js +0 -1642
  211. data/closure-library/closure/goog/date/date_test.html +0 -1293
  212. data/closure-library/closure/goog/date/datelike.js +0 -27
  213. data/closure-library/closure/goog/date/daterange.js +0 -398
  214. data/closure-library/closure/goog/date/daterange_test.html +0 -213
  215. data/closure-library/closure/goog/date/relative.js +0 -425
  216. data/closure-library/closure/goog/date/relative_test.html +0 -124
  217. data/closure-library/closure/goog/date/utcdatetime.js +0 -178
  218. data/closure-library/closure/goog/date/utcdatetime_test.html +0 -119
  219. data/closure-library/closure/goog/debug/console.js +0 -138
  220. data/closure-library/closure/goog/debug/debug.js +0 -452
  221. data/closure-library/closure/goog/debug/debug_test.html +0 -32
  222. data/closure-library/closure/goog/debug/debugwindow.js +0 -582
  223. data/closure-library/closure/goog/debug/devcss/devcss.js +0 -435
  224. data/closure-library/closure/goog/debug/devcss/devcss_test.html +0 -365
  225. data/closure-library/closure/goog/debug/devcss/devcssrunner.js +0 -26
  226. data/closure-library/closure/goog/debug/divconsole.js +0 -141
  227. data/closure-library/closure/goog/debug/enhanceerror_test.html +0 -138
  228. data/closure-library/closure/goog/debug/entrypointregistry.js +0 -111
  229. data/closure-library/closure/goog/debug/entrypointregistry_test.html +0 -63
  230. data/closure-library/closure/goog/debug/error.js +0 -47
  231. data/closure-library/closure/goog/debug/error_test.html +0 -85
  232. data/closure-library/closure/goog/debug/errorhandler.js +0 -234
  233. data/closure-library/closure/goog/debug/errorhandler_async_test.html +0 -112
  234. data/closure-library/closure/goog/debug/errorhandler_test.html +0 -186
  235. data/closure-library/closure/goog/debug/errorhandlerweakdep.js +0 -38
  236. data/closure-library/closure/goog/debug/errorreporter.js +0 -324
  237. data/closure-library/closure/goog/debug/errorreporter_test.html +0 -289
  238. data/closure-library/closure/goog/debug/fancywindow.js +0 -265
  239. data/closure-library/closure/goog/debug/formatter.js +0 -314
  240. data/closure-library/closure/goog/debug/gcdiagnostics.js +0 -143
  241. data/closure-library/closure/goog/debug/logbuffer.js +0 -147
  242. data/closure-library/closure/goog/debug/logbuffer_test.html +0 -105
  243. data/closure-library/closure/goog/debug/logger.js +0 -809
  244. data/closure-library/closure/goog/debug/logger_test.html +0 -208
  245. data/closure-library/closure/goog/debug/logrecord.js +0 -271
  246. data/closure-library/closure/goog/debug/reflect.js +0 -163
  247. data/closure-library/closure/goog/debug/reflect_test.html +0 -81
  248. data/closure-library/closure/goog/debug/relativetimeprovider.js +0 -83
  249. data/closure-library/closure/goog/debug/tracer.js +0 -750
  250. data/closure-library/closure/goog/debug/tracer_test.html +0 -57
  251. data/closure-library/closure/goog/demos/advancedtooltip.html +0 -78
  252. data/closure-library/closure/goog/demos/animationqueue.html +0 -149
  253. data/closure-library/closure/goog/demos/autocomplete-basic.html +0 -56
  254. data/closure-library/closure/goog/demos/autocompleteremote.html +0 -40
  255. data/closure-library/closure/goog/demos/autocompleteremotedata.js +0 -18
  256. data/closure-library/closure/goog/demos/autocompleterichremote.html +0 -137
  257. data/closure-library/closure/goog/demos/autocompleterichremotedata.js +0 -33
  258. data/closure-library/closure/goog/demos/bidiinput.html +0 -72
  259. data/closure-library/closure/goog/demos/bubble.html +0 -250
  260. data/closure-library/closure/goog/demos/button.html +0 -395
  261. data/closure-library/closure/goog/demos/charcounter.html +0 -57
  262. data/closure-library/closure/goog/demos/charpicker.html +0 -64
  263. data/closure-library/closure/goog/demos/checkbox.html +0 -122
  264. data/closure-library/closure/goog/demos/color-contrast.html +0 -60
  265. data/closure-library/closure/goog/demos/colormenubutton.html +0 -213
  266. data/closure-library/closure/goog/demos/colorpicker.html +0 -43
  267. data/closure-library/closure/goog/demos/combobox.html +0 -125
  268. data/closure-library/closure/goog/demos/container.html +0 -670
  269. data/closure-library/closure/goog/demos/control.html +0 -477
  270. data/closure-library/closure/goog/demos/css/demo.css +0 -75
  271. data/closure-library/closure/goog/demos/css/emojipicker.css +0 -36
  272. data/closure-library/closure/goog/demos/css/emojisprite.css +0 -92
  273. data/closure-library/closure/goog/demos/css3button.html +0 -166
  274. data/closure-library/closure/goog/demos/css3menubutton.html +0 -285
  275. data/closure-library/closure/goog/demos/cssspriteanimation.html +0 -80
  276. data/closure-library/closure/goog/demos/datepicker.html +0 -183
  277. data/closure-library/closure/goog/demos/debug.html +0 -119
  278. data/closure-library/closure/goog/demos/depsgraph.html +0 -221
  279. data/closure-library/closure/goog/demos/dialog.html +0 -156
  280. data/closure-library/closure/goog/demos/dimensionpicker.html +0 -108
  281. data/closure-library/closure/goog/demos/dimensionpicker_rtl.html +0 -123
  282. data/closure-library/closure/goog/demos/dom_selection.html +0 -88
  283. data/closure-library/closure/goog/demos/drag.html +0 -191
  284. data/closure-library/closure/goog/demos/dragdrop.html +0 -263
  285. data/closure-library/closure/goog/demos/dragdropdetector.html +0 -46
  286. data/closure-library/closure/goog/demos/dragdropdetector_target.html +0 -17
  287. data/closure-library/closure/goog/demos/dragger.html +0 -83
  288. data/closure-library/closure/goog/demos/draglistgroup.html +0 -261
  289. data/closure-library/closure/goog/demos/drilldownrow.html +0 -78
  290. data/closure-library/closure/goog/demos/editor/deps.js +0 -20
  291. data/closure-library/closure/goog/demos/editor/editor.html +0 -139
  292. data/closure-library/closure/goog/demos/editor/field_basic.html +0 -74
  293. data/closure-library/closure/goog/demos/editor/helloworld.html +0 -91
  294. data/closure-library/closure/goog/demos/editor/helloworld.js +0 -81
  295. data/closure-library/closure/goog/demos/editor/helloworld_test.html +0 -75
  296. data/closure-library/closure/goog/demos/editor/helloworlddialog.js +0 -163
  297. data/closure-library/closure/goog/demos/editor/helloworlddialog_test.html +0 -100
  298. data/closure-library/closure/goog/demos/editor/helloworlddialogplugin.js +0 -110
  299. data/closure-library/closure/goog/demos/editor/helloworlddialogplugin_test.html +0 -198
  300. data/closure-library/closure/goog/demos/editor/seamlessfield.html +0 -106
  301. data/closure-library/closure/goog/demos/effects.html +0 -142
  302. data/closure-library/closure/goog/demos/emoji/200.gif +0 -0
  303. data/closure-library/closure/goog/demos/emoji/201.gif +0 -0
  304. data/closure-library/closure/goog/demos/emoji/202.gif +0 -0
  305. data/closure-library/closure/goog/demos/emoji/203.gif +0 -0
  306. data/closure-library/closure/goog/demos/emoji/204.gif +0 -0
  307. data/closure-library/closure/goog/demos/emoji/205.gif +0 -0
  308. data/closure-library/closure/goog/demos/emoji/206.gif +0 -0
  309. data/closure-library/closure/goog/demos/emoji/2BC.gif +0 -0
  310. data/closure-library/closure/goog/demos/emoji/2BD.gif +0 -0
  311. data/closure-library/closure/goog/demos/emoji/2BE.gif +0 -0
  312. data/closure-library/closure/goog/demos/emoji/2BF.gif +0 -0
  313. data/closure-library/closure/goog/demos/emoji/2C0.gif +0 -0
  314. data/closure-library/closure/goog/demos/emoji/2C1.gif +0 -0
  315. data/closure-library/closure/goog/demos/emoji/2C2.gif +0 -0
  316. data/closure-library/closure/goog/demos/emoji/2C3.gif +0 -0
  317. data/closure-library/closure/goog/demos/emoji/2C4.gif +0 -0
  318. data/closure-library/closure/goog/demos/emoji/2C5.gif +0 -0
  319. data/closure-library/closure/goog/demos/emoji/2C6.gif +0 -0
  320. data/closure-library/closure/goog/demos/emoji/2C7.gif +0 -0
  321. data/closure-library/closure/goog/demos/emoji/2C8.gif +0 -0
  322. data/closure-library/closure/goog/demos/emoji/2C9.gif +0 -0
  323. data/closure-library/closure/goog/demos/emoji/2CA.gif +0 -0
  324. data/closure-library/closure/goog/demos/emoji/2CB.gif +0 -0
  325. data/closure-library/closure/goog/demos/emoji/2CC.gif +0 -0
  326. data/closure-library/closure/goog/demos/emoji/2CD.gif +0 -0
  327. data/closure-library/closure/goog/demos/emoji/2CE.gif +0 -0
  328. data/closure-library/closure/goog/demos/emoji/2CF.gif +0 -0
  329. data/closure-library/closure/goog/demos/emoji/2D0.gif +0 -0
  330. data/closure-library/closure/goog/demos/emoji/2D1.gif +0 -0
  331. data/closure-library/closure/goog/demos/emoji/2D2.gif +0 -0
  332. data/closure-library/closure/goog/demos/emoji/2D3.gif +0 -0
  333. data/closure-library/closure/goog/demos/emoji/2D4.gif +0 -0
  334. data/closure-library/closure/goog/demos/emoji/2D5.gif +0 -0
  335. data/closure-library/closure/goog/demos/emoji/2D6.gif +0 -0
  336. data/closure-library/closure/goog/demos/emoji/2D7.gif +0 -0
  337. data/closure-library/closure/goog/demos/emoji/2D8.gif +0 -0
  338. data/closure-library/closure/goog/demos/emoji/2D9.gif +0 -0
  339. data/closure-library/closure/goog/demos/emoji/2DA.gif +0 -0
  340. data/closure-library/closure/goog/demos/emoji/2DB.gif +0 -0
  341. data/closure-library/closure/goog/demos/emoji/2DC.gif +0 -0
  342. data/closure-library/closure/goog/demos/emoji/2DD.gif +0 -0
  343. data/closure-library/closure/goog/demos/emoji/2DE.gif +0 -0
  344. data/closure-library/closure/goog/demos/emoji/2DF.gif +0 -0
  345. data/closure-library/closure/goog/demos/emoji/2E0.gif +0 -0
  346. data/closure-library/closure/goog/demos/emoji/2E1.gif +0 -0
  347. data/closure-library/closure/goog/demos/emoji/2E2.gif +0 -0
  348. data/closure-library/closure/goog/demos/emoji/2E3.gif +0 -0
  349. data/closure-library/closure/goog/demos/emoji/2E4.gif +0 -0
  350. data/closure-library/closure/goog/demos/emoji/2E5.gif +0 -0
  351. data/closure-library/closure/goog/demos/emoji/2E6.gif +0 -0
  352. data/closure-library/closure/goog/demos/emoji/2E7.gif +0 -0
  353. data/closure-library/closure/goog/demos/emoji/2E8.gif +0 -0
  354. data/closure-library/closure/goog/demos/emoji/2E9.gif +0 -0
  355. data/closure-library/closure/goog/demos/emoji/2EA.gif +0 -0
  356. data/closure-library/closure/goog/demos/emoji/2EB.gif +0 -0
  357. data/closure-library/closure/goog/demos/emoji/2EC.gif +0 -0
  358. data/closure-library/closure/goog/demos/emoji/2ED.gif +0 -0
  359. data/closure-library/closure/goog/demos/emoji/2EE.gif +0 -0
  360. data/closure-library/closure/goog/demos/emoji/2EF.gif +0 -0
  361. data/closure-library/closure/goog/demos/emoji/2F0.gif +0 -0
  362. data/closure-library/closure/goog/demos/emoji/2F1.gif +0 -0
  363. data/closure-library/closure/goog/demos/emoji/2F2.gif +0 -0
  364. data/closure-library/closure/goog/demos/emoji/2F3.gif +0 -0
  365. data/closure-library/closure/goog/demos/emoji/2F4.gif +0 -0
  366. data/closure-library/closure/goog/demos/emoji/2F5.gif +0 -0
  367. data/closure-library/closure/goog/demos/emoji/2F6.gif +0 -0
  368. data/closure-library/closure/goog/demos/emoji/2F7.gif +0 -0
  369. data/closure-library/closure/goog/demos/emoji/2F8.gif +0 -0
  370. data/closure-library/closure/goog/demos/emoji/2F9.gif +0 -0
  371. data/closure-library/closure/goog/demos/emoji/2FA.gif +0 -0
  372. data/closure-library/closure/goog/demos/emoji/2FB.gif +0 -0
  373. data/closure-library/closure/goog/demos/emoji/2FC.gif +0 -0
  374. data/closure-library/closure/goog/demos/emoji/2FD.gif +0 -0
  375. data/closure-library/closure/goog/demos/emoji/2FE.gif +0 -0
  376. data/closure-library/closure/goog/demos/emoji/2FF.gif +0 -0
  377. data/closure-library/closure/goog/demos/emoji/none.gif +0 -0
  378. data/closure-library/closure/goog/demos/emoji/sprite.png +0 -0
  379. data/closure-library/closure/goog/demos/emoji/sprite2.png +0 -0
  380. data/closure-library/closure/goog/demos/emoji/unknown.gif +0 -0
  381. data/closure-library/closure/goog/demos/event-propagation.html +0 -192
  382. data/closure-library/closure/goog/demos/events.html +0 -99
  383. data/closure-library/closure/goog/demos/eventtarget.html +0 -70
  384. data/closure-library/closure/goog/demos/filedrophandler.html +0 -63
  385. data/closure-library/closure/goog/demos/filteredmenu.html +0 -118
  386. data/closure-library/closure/goog/demos/focushandler.html +0 -58
  387. data/closure-library/closure/goog/demos/gauge.html +0 -158
  388. data/closure-library/closure/goog/demos/graphics/advancedcoordinates.html +0 -141
  389. data/closure-library/closure/goog/demos/graphics/advancedcoordinates2.html +0 -130
  390. data/closure-library/closure/goog/demos/graphics/basicelements.html +0 -264
  391. data/closure-library/closure/goog/demos/graphics/events.html +0 -113
  392. data/closure-library/closure/goog/demos/graphics/modifyelements.html +0 -195
  393. data/closure-library/closure/goog/demos/graphics/subpixel.html +0 -80
  394. data/closure-library/closure/goog/demos/graphics/tiger.html +0 -105
  395. data/closure-library/closure/goog/demos/graphics/tigerdata.js +0 -2840
  396. data/closure-library/closure/goog/demos/history1.html +0 -132
  397. data/closure-library/closure/goog/demos/history2.html +0 -100
  398. data/closure-library/closure/goog/demos/history3.html +0 -106
  399. data/closure-library/closure/goog/demos/history3js.html +0 -36
  400. data/closure-library/closure/goog/demos/history_blank.html +0 -25
  401. data/closure-library/closure/goog/demos/hovercard.html +0 -177
  402. data/closure-library/closure/goog/demos/hsvapalette.html +0 -55
  403. data/closure-library/closure/goog/demos/hsvpalette.html +0 -56
  404. data/closure-library/closure/goog/demos/html5history.html +0 -87
  405. data/closure-library/closure/goog/demos/imagelessbutton.html +0 -221
  406. data/closure-library/closure/goog/demos/imagelessmenubutton.html +0 -285
  407. data/closure-library/closure/goog/demos/imagelessroundedcorner.html +0 -231
  408. data/closure-library/closure/goog/demos/index.html +0 -19
  409. data/closure-library/closure/goog/demos/index_nav.html +0 -253
  410. data/closure-library/closure/goog/demos/index_splash.html +0 -22
  411. data/closure-library/closure/goog/demos/inline_block_quirks.html +0 -125
  412. data/closure-library/closure/goog/demos/inline_block_standards.html +0 -126
  413. data/closure-library/closure/goog/demos/inputdatepicker.html +0 -60
  414. data/closure-library/closure/goog/demos/inputhandler.html +0 -72
  415. data/closure-library/closure/goog/demos/jsonprettyprinter.html +0 -80
  416. data/closure-library/closure/goog/demos/keyboardshortcuts.html +0 -112
  417. data/closure-library/closure/goog/demos/keyhandler.html +0 -127
  418. data/closure-library/closure/goog/demos/labelinput.html +0 -42
  419. data/closure-library/closure/goog/demos/menu.html +0 -220
  420. data/closure-library/closure/goog/demos/menubutton.html +0 -318
  421. data/closure-library/closure/goog/demos/mousewheelhandler.html +0 -109
  422. data/closure-library/closure/goog/demos/offline.html +0 -268
  423. data/closure-library/closure/goog/demos/onlinehandler.html +0 -77
  424. data/closure-library/closure/goog/demos/palette.html +0 -302
  425. data/closure-library/closure/goog/demos/pastehandler.html +0 -54
  426. data/closure-library/closure/goog/demos/plaintextspellchecker.html +0 -106
  427. data/closure-library/closure/goog/demos/popup.html +0 -200
  428. data/closure-library/closure/goog/demos/popupcolorpicker.html +0 -49
  429. data/closure-library/closure/goog/demos/popupdatepicker.html +0 -53
  430. data/closure-library/closure/goog/demos/popupemojipicker.html +0 -407
  431. data/closure-library/closure/goog/demos/popupmenu.html +0 -89
  432. data/closure-library/closure/goog/demos/progressbar.html +0 -97
  433. data/closure-library/closure/goog/demos/prompt.html +0 -92
  434. data/closure-library/closure/goog/demos/quadtree.html +0 -107
  435. data/closure-library/closure/goog/demos/ratings.html +0 -120
  436. data/closure-library/closure/goog/demos/richtextspellchecker.html +0 -92
  437. data/closure-library/closure/goog/demos/roundedpanel.html +0 -139
  438. data/closure-library/closure/goog/demos/samplecomponent.html +0 -75
  439. data/closure-library/closure/goog/demos/samplecomponent.js +0 -206
  440. data/closure-library/closure/goog/demos/scrollfloater.html +0 -117
  441. data/closure-library/closure/goog/demos/select.html +0 -324
  442. data/closure-library/closure/goog/demos/selectionmenubutton.html +0 -186
  443. data/closure-library/closure/goog/demos/serverchart.html +0 -122
  444. data/closure-library/closure/goog/demos/silverlightclipboardbutton.html +0 -71
  445. data/closure-library/closure/goog/demos/slider.html +0 -110
  446. data/closure-library/closure/goog/demos/splitbehavior.html +0 -164
  447. data/closure-library/closure/goog/demos/splitpane.html +0 -243
  448. data/closure-library/closure/goog/demos/stopevent.html +0 -171
  449. data/closure-library/closure/goog/demos/submenus.html +0 -130
  450. data/closure-library/closure/goog/demos/submenus2.html +0 -150
  451. data/closure-library/closure/goog/demos/tabbar.html +0 -289
  452. data/closure-library/closure/goog/demos/tablesorter.html +0 -116
  453. data/closure-library/closure/goog/demos/tabpane.html +0 -302
  454. data/closure-library/closure/goog/demos/textarea.html +0 -128
  455. data/closure-library/closure/goog/demos/timers.html +0 -291
  456. data/closure-library/closure/goog/demos/toolbar.html +0 -703
  457. data/closure-library/closure/goog/demos/tooltip.html +0 -91
  458. data/closure-library/closure/goog/demos/tracer.html +0 -92
  459. data/closure-library/closure/goog/demos/tree/demo.html +0 -126
  460. data/closure-library/closure/goog/demos/tree/testdata.js +0 -260
  461. data/closure-library/closure/goog/demos/tweakui.html +0 -121
  462. data/closure-library/closure/goog/demos/twothumbslider.html +0 -121
  463. data/closure-library/closure/goog/demos/useragent.html +0 -173
  464. data/closure-library/closure/goog/demos/viewportsizemonitor.html +0 -71
  465. data/closure-library/closure/goog/demos/xpc/blank.html +0 -7
  466. data/closure-library/closure/goog/demos/xpc/index.html +0 -89
  467. data/closure-library/closure/goog/demos/xpc/inner.html +0 -58
  468. data/closure-library/closure/goog/demos/xpc/minimal/blank.html +0 -7
  469. data/closure-library/closure/goog/demos/xpc/minimal/index.html +0 -105
  470. data/closure-library/closure/goog/demos/xpc/minimal/inner.html +0 -75
  471. data/closure-library/closure/goog/demos/xpc/minimal/relay.html +0 -7
  472. data/closure-library/closure/goog/demos/xpc/relay.html +0 -7
  473. data/closure-library/closure/goog/demos/xpc/xpcdemo.js +0 -304
  474. data/closure-library/closure/goog/demos/zippy.html +0 -127
  475. data/closure-library/closure/goog/deps.js +0 -679
  476. data/closure-library/closure/goog/disposable/disposable.js +0 -167
  477. data/closure-library/closure/goog/disposable/disposable_test.html +0 -202
  478. data/closure-library/closure/goog/dom/a11y.js +0 -438
  479. data/closure-library/closure/goog/dom/a11y_test.html +0 -86
  480. data/closure-library/closure/goog/dom/abstractmultirange.js +0 -77
  481. data/closure-library/closure/goog/dom/abstractrange.js +0 -514
  482. data/closure-library/closure/goog/dom/abstractrange_test.html +0 -73
  483. data/closure-library/closure/goog/dom/annotate.js +0 -352
  484. data/closure-library/closure/goog/dom/annotate_test.html +0 -187
  485. data/closure-library/closure/goog/dom/browserfeature.js +0 -50
  486. data/closure-library/closure/goog/dom/browserrange/abstractrange.js +0 -316
  487. data/closure-library/closure/goog/dom/browserrange/browserrange.js +0 -149
  488. data/closure-library/closure/goog/dom/browserrange/browserrange_test.html +0 -562
  489. data/closure-library/closure/goog/dom/browserrange/geckorange.js +0 -82
  490. data/closure-library/closure/goog/dom/browserrange/ierange.js +0 -970
  491. data/closure-library/closure/goog/dom/browserrange/operarange.js +0 -83
  492. data/closure-library/closure/goog/dom/browserrange/w3crange.js +0 -364
  493. data/closure-library/closure/goog/dom/browserrange/webkitrange.js +0 -112
  494. data/closure-library/closure/goog/dom/classes.js +0 -233
  495. data/closure-library/closure/goog/dom/classes_test.html +0 -228
  496. data/closure-library/closure/goog/dom/controlrange.js +0 -511
  497. data/closure-library/closure/goog/dom/controlrange_test.html +0 -246
  498. data/closure-library/closure/goog/dom/dataset.js +0 -90
  499. data/closure-library/closure/goog/dom/dataset_test.html +0 -104
  500. data/closure-library/closure/goog/dom/dom.js +0 -2424
  501. data/closure-library/closure/goog/dom/dom_quirks_test.html +0 -104
  502. data/closure-library/closure/goog/dom/dom_test.html +0 -103
  503. data/closure-library/closure/goog/dom/dom_test.js +0 -1129
  504. data/closure-library/closure/goog/dom/fontsizemonitor.js +0 -159
  505. data/closure-library/closure/goog/dom/fontsizemonitor_test.html +0 -283
  506. data/closure-library/closure/goog/dom/forms.js +0 -403
  507. data/closure-library/closure/goog/dom/forms_test.html +0 -483
  508. data/closure-library/closure/goog/dom/iframe.js +0 -128
  509. data/closure-library/closure/goog/dom/iframe_test.html +0 -87
  510. data/closure-library/closure/goog/dom/iter.js +0 -127
  511. data/closure-library/closure/goog/dom/iter_test.html +0 -97
  512. data/closure-library/closure/goog/dom/multirange.js +0 -519
  513. data/closure-library/closure/goog/dom/multirange_test.html +0 -67
  514. data/closure-library/closure/goog/dom/nodeiterator.js +0 -85
  515. data/closure-library/closure/goog/dom/nodeiterator_test.html +0 -49
  516. data/closure-library/closure/goog/dom/nodeoffset.js +0 -111
  517. data/closure-library/closure/goog/dom/nodeoffset_test.html +0 -88
  518. data/closure-library/closure/goog/dom/pattern/abstractpattern.js +0 -60
  519. data/closure-library/closure/goog/dom/pattern/allchildren.js +0 -73
  520. data/closure-library/closure/goog/dom/pattern/callback/callback.js +0 -82
  521. data/closure-library/closure/goog/dom/pattern/callback/counter.js +0 -72
  522. data/closure-library/closure/goog/dom/pattern/callback/test.js +0 -77
  523. data/closure-library/closure/goog/dom/pattern/childmatches.js +0 -152
  524. data/closure-library/closure/goog/dom/pattern/endtag.js +0 -53
  525. data/closure-library/closure/goog/dom/pattern/fulltag.js +0 -92
  526. data/closure-library/closure/goog/dom/pattern/matcher.js +0 -150
  527. data/closure-library/closure/goog/dom/pattern/matcher_test.html +0 -204
  528. data/closure-library/closure/goog/dom/pattern/nodetype.js +0 -57
  529. data/closure-library/closure/goog/dom/pattern/pattern.js +0 -93
  530. data/closure-library/closure/goog/dom/pattern/pattern_test.html +0 -614
  531. data/closure-library/closure/goog/dom/pattern/repeat.js +0 -188
  532. data/closure-library/closure/goog/dom/pattern/sequence.js +0 -139
  533. data/closure-library/closure/goog/dom/pattern/starttag.js +0 -53
  534. data/closure-library/closure/goog/dom/pattern/tag.js +0 -149
  535. data/closure-library/closure/goog/dom/pattern/text.js +0 -69
  536. data/closure-library/closure/goog/dom/range.js +0 -220
  537. data/closure-library/closure/goog/dom/range_test.html +0 -702
  538. data/closure-library/closure/goog/dom/rangeendpoint.js +0 -32
  539. data/closure-library/closure/goog/dom/savedcaretrange.js +0 -203
  540. data/closure-library/closure/goog/dom/savedcaretrange_test.html +0 -235
  541. data/closure-library/closure/goog/dom/savedrange.js +0 -74
  542. data/closure-library/closure/goog/dom/savedrange_test.html +0 -61
  543. data/closure-library/closure/goog/dom/selection.js +0 -470
  544. data/closure-library/closure/goog/dom/selection_test.html +0 -329
  545. data/closure-library/closure/goog/dom/tagiterator.js +0 -365
  546. data/closure-library/closure/goog/dom/tagiterator_test.html +0 -589
  547. data/closure-library/closure/goog/dom/tagname.js +0 -121
  548. data/closure-library/closure/goog/dom/tagname_test.html +0 -37
  549. data/closure-library/closure/goog/dom/textrange.js +0 -611
  550. data/closure-library/closure/goog/dom/textrange_test.html +0 -127
  551. data/closure-library/closure/goog/dom/textrangeiterator.js +0 -246
  552. data/closure-library/closure/goog/dom/textrangeiterator_test.html +0 -142
  553. data/closure-library/closure/goog/dom/viewportsizemonitor.js +0 -220
  554. data/closure-library/closure/goog/dom/viewportsizemonitor_test.html +0 -166
  555. data/closure-library/closure/goog/dom/xml.js +0 -187
  556. data/closure-library/closure/goog/dom/xml_test.html +0 -77
  557. data/closure-library/closure/goog/editor/browserfeature.js +0 -251
  558. data/closure-library/closure/goog/editor/browserfeature_test.html +0 -124
  559. data/closure-library/closure/goog/editor/clicktoeditwrapper.js +0 -438
  560. data/closure-library/closure/goog/editor/clicktoeditwrapper_test.html +0 -137
  561. data/closure-library/closure/goog/editor/command.js +0 -74
  562. data/closure-library/closure/goog/editor/defines.js +0 -34
  563. data/closure-library/closure/goog/editor/field.js +0 -2594
  564. data/closure-library/closure/goog/editor/field_test.html +0 -1000
  565. data/closure-library/closure/goog/editor/focus.js +0 -32
  566. data/closure-library/closure/goog/editor/focus_test.html +0 -66
  567. data/closure-library/closure/goog/editor/icontent.js +0 -296
  568. data/closure-library/closure/goog/editor/icontent_test.html +0 -209
  569. data/closure-library/closure/goog/editor/link.js +0 -279
  570. data/closure-library/closure/goog/editor/link_test.html +0 -234
  571. data/closure-library/closure/goog/editor/node.js +0 -435
  572. data/closure-library/closure/goog/editor/node_test.html +0 -590
  573. data/closure-library/closure/goog/editor/plugin.js +0 -444
  574. data/closure-library/closure/goog/editor/plugin_test.html +0 -187
  575. data/closure-library/closure/goog/editor/plugins/abstractbubbleplugin.js +0 -535
  576. data/closure-library/closure/goog/editor/plugins/abstractbubbleplugin_test.html +0 -227
  577. data/closure-library/closure/goog/editor/plugins/abstractdialogplugin.js +0 -336
  578. data/closure-library/closure/goog/editor/plugins/abstractdialogplugin_test.html +0 -399
  579. data/closure-library/closure/goog/editor/plugins/abstracttabhandler.js +0 -78
  580. data/closure-library/closure/goog/editor/plugins/abstracttabhandler_test.html +0 -91
  581. data/closure-library/closure/goog/editor/plugins/basictextformatter.js +0 -1740
  582. data/closure-library/closure/goog/editor/plugins/basictextformatter_test.html +0 -1171
  583. data/closure-library/closure/goog/editor/plugins/blockquote.js +0 -422
  584. data/closure-library/closure/goog/editor/plugins/blockquote_test.html +0 -149
  585. data/closure-library/closure/goog/editor/plugins/emoticons.js +0 -83
  586. data/closure-library/closure/goog/editor/plugins/emoticons_test.html +0 -67
  587. data/closure-library/closure/goog/editor/plugins/enterhandler.js +0 -730
  588. data/closure-library/closure/goog/editor/plugins/enterhandler_test.html +0 -739
  589. data/closure-library/closure/goog/editor/plugins/headerformatter.js +0 -95
  590. data/closure-library/closure/goog/editor/plugins/headerformatter_test.html +0 -100
  591. data/closure-library/closure/goog/editor/plugins/linkbubble.js +0 -458
  592. data/closure-library/closure/goog/editor/plugins/linkbubble_test.html +0 -309
  593. data/closure-library/closure/goog/editor/plugins/linkdialogplugin.js +0 -222
  594. data/closure-library/closure/goog/editor/plugins/linkdialogplugin_test.html +0 -370
  595. data/closure-library/closure/goog/editor/plugins/listtabhandler.js +0 -66
  596. data/closure-library/closure/goog/editor/plugins/listtabhandler_test.html +0 -177
  597. data/closure-library/closure/goog/editor/plugins/loremipsum.js +0 -186
  598. data/closure-library/closure/goog/editor/plugins/loremipsum_test.html +0 -169
  599. data/closure-library/closure/goog/editor/plugins/removeformatting.js +0 -772
  600. data/closure-library/closure/goog/editor/plugins/removeformatting_test.html +0 -920
  601. data/closure-library/closure/goog/editor/plugins/spacestabhandler.js +0 -93
  602. data/closure-library/closure/goog/editor/plugins/spacestabhandler_test.html +0 -186
  603. data/closure-library/closure/goog/editor/plugins/tableeditor.js +0 -496
  604. data/closure-library/closure/goog/editor/plugins/tableeditor_test.html +0 -299
  605. data/closure-library/closure/goog/editor/plugins/tagonenterhandler.js +0 -741
  606. data/closure-library/closure/goog/editor/plugins/tagonenterhandler_test.html +0 -481
  607. data/closure-library/closure/goog/editor/plugins/undoredo.js +0 -1014
  608. data/closure-library/closure/goog/editor/plugins/undoredo_test.html +0 -525
  609. data/closure-library/closure/goog/editor/plugins/undoredomanager.js +0 -337
  610. data/closure-library/closure/goog/editor/plugins/undoredomanager_test.html +0 -394
  611. data/closure-library/closure/goog/editor/plugins/undoredostate.js +0 -84
  612. data/closure-library/closure/goog/editor/plugins/undoredostate_test.html +0 -44
  613. data/closure-library/closure/goog/editor/range.js +0 -602
  614. data/closure-library/closure/goog/editor/range_test.html +0 -880
  615. data/closure-library/closure/goog/editor/seamlessfield.js +0 -720
  616. data/closure-library/closure/goog/editor/seamlessfield_quirks_test.html +0 -30
  617. data/closure-library/closure/goog/editor/seamlessfield_test.html +0 -33
  618. data/closure-library/closure/goog/editor/seamlessfield_test.js +0 -392
  619. data/closure-library/closure/goog/editor/style.js +0 -222
  620. data/closure-library/closure/goog/editor/style_test.html +0 -177
  621. data/closure-library/closure/goog/editor/table.js +0 -566
  622. data/closure-library/closure/goog/editor/table_test.html +0 -522
  623. data/closure-library/closure/goog/events/actioneventwrapper.js +0 -131
  624. data/closure-library/closure/goog/events/actioneventwrapper_test.html +0 -176
  625. data/closure-library/closure/goog/events/actionhandler.js +0 -189
  626. data/closure-library/closure/goog/events/actionhandler_test.html +0 -82
  627. data/closure-library/closure/goog/events/browserevent.js +0 -412
  628. data/closure-library/closure/goog/events/browserevent_test.html +0 -145
  629. data/closure-library/closure/goog/events/browserfeature.js +0 -43
  630. data/closure-library/closure/goog/events/event.js +0 -123
  631. data/closure-library/closure/goog/events/event_test.html +0 -70
  632. data/closure-library/closure/goog/events/eventhandler.js +0 -348
  633. data/closure-library/closure/goog/events/eventhandler_test.html +0 -230
  634. data/closure-library/closure/goog/events/events.js +0 -1101
  635. data/closure-library/closure/goog/events/events_test.html +0 -362
  636. data/closure-library/closure/goog/events/eventtarget.js +0 -197
  637. data/closure-library/closure/goog/events/eventtarget_test.html +0 -423
  638. data/closure-library/closure/goog/events/eventtype.js +0 -107
  639. data/closure-library/closure/goog/events/eventwrapper.js +0 -67
  640. data/closure-library/closure/goog/events/filedrophandler.js +0 -224
  641. data/closure-library/closure/goog/events/filedrophandler_test.html +0 -258
  642. data/closure-library/closure/goog/events/focushandler.js +0 -111
  643. data/closure-library/closure/goog/events/imehandler.js +0 -365
  644. data/closure-library/closure/goog/events/imehandler_test.html +0 -271
  645. data/closure-library/closure/goog/events/inputhandler.js +0 -218
  646. data/closure-library/closure/goog/events/keycodes.js +0 -314
  647. data/closure-library/closure/goog/events/keycodes_test.html +0 -72
  648. data/closure-library/closure/goog/events/keyhandler.js +0 -522
  649. data/closure-library/closure/goog/events/keyhandler_test.html +0 -621
  650. data/closure-library/closure/goog/events/keynames.js +0 -124
  651. data/closure-library/closure/goog/events/listener.js +0 -160
  652. data/closure-library/closure/goog/events/mousewheelhandler.js +0 -280
  653. data/closure-library/closure/goog/events/mousewheelhandler_test.html +0 -331
  654. data/closure-library/closure/goog/events/onlinehandler.js +0 -176
  655. data/closure-library/closure/goog/events/onlinelistener_test.html +0 -214
  656. data/closure-library/closure/goog/events/pastehandler.js +0 -444
  657. data/closure-library/closure/goog/events/pastehandler_test.html +0 -354
  658. data/closure-library/closure/goog/events/pools.js +0 -342
  659. data/closure-library/closure/goog/format/emailaddress.js +0 -329
  660. data/closure-library/closure/goog/format/emailaddress_test.html +0 -179
  661. data/closure-library/closure/goog/format/format.js +0 -451
  662. data/closure-library/closure/goog/format/format_test.html +0 -257
  663. data/closure-library/closure/goog/format/htmlprettyprinter.js +0 -406
  664. data/closure-library/closure/goog/format/htmlprettyprinter_test.html +0 -205
  665. data/closure-library/closure/goog/format/jsonprettyprinter.js +0 -405
  666. data/closure-library/closure/goog/format/jsonprettyprinter_test.html +0 -111
  667. data/closure-library/closure/goog/fs/entry.js +0 -406
  668. data/closure-library/closure/goog/fs/error.js +0 -103
  669. data/closure-library/closure/goog/fs/filesaver.js +0 -214
  670. data/closure-library/closure/goog/fs/filesystem.js +0 -59
  671. data/closure-library/closure/goog/fs/filewriter.js +0 -106
  672. data/closure-library/closure/goog/fs/fs.js +0 -183
  673. data/closure-library/closure/goog/fs/fs_test.html +0 -270
  674. data/closure-library/closure/goog/functions/functions.js +0 -219
  675. data/closure-library/closure/goog/functions/functions_test.html +0 -198
  676. data/closure-library/closure/goog/fx/abstractdragdrop.js +0 -1451
  677. data/closure-library/closure/goog/fx/abstractdragdrop_test.html +0 -430
  678. data/closure-library/closure/goog/fx/animation.js +0 -621
  679. data/closure-library/closure/goog/fx/animationqueue.js +0 -348
  680. data/closure-library/closure/goog/fx/cssspriteanimation.js +0 -112
  681. data/closure-library/closure/goog/fx/cssspriteanimation_test.html +0 -125
  682. data/closure-library/closure/goog/fx/dom.js +0 -610
  683. data/closure-library/closure/goog/fx/dragdrop.js +0 -49
  684. data/closure-library/closure/goog/fx/dragdropgroup.js +0 -107
  685. data/closure-library/closure/goog/fx/dragdropgroup_test.html +0 -234
  686. data/closure-library/closure/goog/fx/dragger.js +0 -731
  687. data/closure-library/closure/goog/fx/dragger_test.html +0 -415
  688. data/closure-library/closure/goog/fx/draglistgroup.js +0 -1159
  689. data/closure-library/closure/goog/fx/draglistgroup_test.html +0 -231
  690. data/closure-library/closure/goog/fx/dragscrollsupport.js +0 -274
  691. data/closure-library/closure/goog/fx/dragscrollsupport_test.html +0 -253
  692. data/closure-library/closure/goog/fx/easing.js +0 -50
  693. data/closure-library/closure/goog/fx/fx.js +0 -30
  694. data/closure-library/closure/goog/fx/fx_test.html +0 -157
  695. data/closure-library/closure/goog/gears/basestore.js +0 -523
  696. data/closure-library/closure/goog/gears/basestore_test.html +0 -247
  697. data/closure-library/closure/goog/gears/database.js +0 -935
  698. data/closure-library/closure/goog/gears/database_test.html +0 -699
  699. data/closure-library/closure/goog/gears/fakeworkerpool.js +0 -252
  700. data/closure-library/closure/goog/gears/fakeworkerpool_test.html +0 -188
  701. data/closure-library/closure/goog/gears/gears.js +0 -228
  702. data/closure-library/closure/goog/gears/gears_test.html +0 -78
  703. data/closure-library/closure/goog/gears/httprequest.js +0 -77
  704. data/closure-library/closure/goog/gears/loggerclient.js +0 -131
  705. data/closure-library/closure/goog/gears/loggerclient_test.html +0 -171
  706. data/closure-library/closure/goog/gears/loggerserver.js +0 -158
  707. data/closure-library/closure/goog/gears/loggerserver_test.html +0 -118
  708. data/closure-library/closure/goog/gears/logstore.js +0 -479
  709. data/closure-library/closure/goog/gears/logstore_test.html +0 -600
  710. data/closure-library/closure/goog/gears/managedresourcestore.js +0 -553
  711. data/closure-library/closure/goog/gears/managedresourcestore_test.html +0 -453
  712. data/closure-library/closure/goog/gears/multipartformdata.js +0 -203
  713. data/closure-library/closure/goog/gears/multipartformdata_test.html +0 -220
  714. data/closure-library/closure/goog/gears/statustype.js +0 -37
  715. data/closure-library/closure/goog/gears/urlcapture.js +0 -370
  716. data/closure-library/closure/goog/gears/urlcapture_test.html +0 -392
  717. data/closure-library/closure/goog/gears/worker.js +0 -201
  718. data/closure-library/closure/goog/gears/workerchannel.js +0 -205
  719. data/closure-library/closure/goog/gears/workerchannel_test.html +0 -207
  720. data/closure-library/closure/goog/gears/workerpool.js +0 -241
  721. data/closure-library/closure/goog/gears/workerpool_test.html +0 -203
  722. data/closure-library/closure/goog/graphics/abstractgraphics.js +0 -439
  723. data/closure-library/closure/goog/graphics/affinetransform.js +0 -497
  724. data/closure-library/closure/goog/graphics/affinetransform_test.html +0 -316
  725. data/closure-library/closure/goog/graphics/canvaselement.js +0 -776
  726. data/closure-library/closure/goog/graphics/canvasgraphics.js +0 -632
  727. data/closure-library/closure/goog/graphics/element.js +0 -145
  728. data/closure-library/closure/goog/graphics/ellipseelement.js +0 -59
  729. data/closure-library/closure/goog/graphics/ext/coordinates.js +0 -158
  730. data/closure-library/closure/goog/graphics/ext/coordinates_test.html +0 -74
  731. data/closure-library/closure/goog/graphics/ext/element.js +0 -970
  732. data/closure-library/closure/goog/graphics/ext/element_test.html +0 -144
  733. data/closure-library/closure/goog/graphics/ext/ellipse.js +0 -58
  734. data/closure-library/closure/goog/graphics/ext/ext.js +0 -29
  735. data/closure-library/closure/goog/graphics/ext/graphics.js +0 -209
  736. data/closure-library/closure/goog/graphics/ext/group.js +0 -213
  737. data/closure-library/closure/goog/graphics/ext/image.js +0 -62
  738. data/closure-library/closure/goog/graphics/ext/path.js +0 -140
  739. data/closure-library/closure/goog/graphics/ext/path_test.html +0 -46
  740. data/closure-library/closure/goog/graphics/ext/rectangle.js +0 -53
  741. data/closure-library/closure/goog/graphics/ext/shape.js +0 -144
  742. data/closure-library/closure/goog/graphics/ext/strokeandfillelement.js +0 -69
  743. data/closure-library/closure/goog/graphics/fill.js +0 -29
  744. data/closure-library/closure/goog/graphics/font.js +0 -59
  745. data/closure-library/closure/goog/graphics/graphics.js +0 -124
  746. data/closure-library/closure/goog/graphics/groupelement.js +0 -54
  747. data/closure-library/closure/goog/graphics/imageelement.js +0 -67
  748. data/closure-library/closure/goog/graphics/lineargradient.js +0 -131
  749. data/closure-library/closure/goog/graphics/path.js +0 -508
  750. data/closure-library/closure/goog/graphics/path_test.html +0 -359
  751. data/closure-library/closure/goog/graphics/pathelement.js +0 -50
  752. data/closure-library/closure/goog/graphics/paths.js +0 -86
  753. data/closure-library/closure/goog/graphics/paths_test.html +0 -97
  754. data/closure-library/closure/goog/graphics/rectelement.js +0 -59
  755. data/closure-library/closure/goog/graphics/solidfill.js +0 -70
  756. data/closure-library/closure/goog/graphics/stroke.js +0 -63
  757. data/closure-library/closure/goog/graphics/strokeandfillelement.js +0 -110
  758. data/closure-library/closure/goog/graphics/svgelement.js +0 -262
  759. data/closure-library/closure/goog/graphics/svggraphics.js +0 -813
  760. data/closure-library/closure/goog/graphics/textelement.js +0 -51
  761. data/closure-library/closure/goog/graphics/vmlelement.js +0 -380
  762. data/closure-library/closure/goog/graphics/vmlgraphics.js +0 -863
  763. data/closure-library/closure/goog/history/event.js +0 -54
  764. data/closure-library/closure/goog/history/eventtype.js +0 -30
  765. data/closure-library/closure/goog/history/history.js +0 -979
  766. data/closure-library/closure/goog/history/html5history.js +0 -303
  767. data/closure-library/closure/goog/history/html5history_test.html +0 -163
  768. data/closure-library/closure/goog/i18n/bidi.js +0 -772
  769. data/closure-library/closure/goog/i18n/bidi_test.html +0 -414
  770. data/closure-library/closure/goog/i18n/bidiformatter.js +0 -488
  771. data/closure-library/closure/goog/i18n/bidiformatter_test.html +0 -343
  772. data/closure-library/closure/goog/i18n/charlistdecompressor.js +0 -157
  773. data/closure-library/closure/goog/i18n/charlistdecompressor_test.html +0 -65
  774. data/closure-library/closure/goog/i18n/charpickerdata.js +0 -3185
  775. data/closure-library/closure/goog/i18n/currency.js +0 -385
  776. data/closure-library/closure/goog/i18n/currency_test.html +0 -202
  777. data/closure-library/closure/goog/i18n/currencycodemap.js +0 -210
  778. data/closure-library/closure/goog/i18n/datetimeformat.js +0 -636
  779. data/closure-library/closure/goog/i18n/datetimeformat_test.html +0 -436
  780. data/closure-library/closure/goog/i18n/datetimeparse.js +0 -1111
  781. data/closure-library/closure/goog/i18n/datetimeparse_test.html +0 -796
  782. data/closure-library/closure/goog/i18n/datetimepatterns.js +0 -1586
  783. data/closure-library/closure/goog/i18n/datetimepatternsext.js +0 -7386
  784. data/closure-library/closure/goog/i18n/datetimesymbols.js +0 -3350
  785. data/closure-library/closure/goog/i18n/datetimesymbolsext.js +0 -12938
  786. data/closure-library/closure/goog/i18n/graphemebreak.js +0 -181
  787. data/closure-library/closure/goog/i18n/graphemebreak_test.html +0 -72
  788. data/closure-library/closure/goog/i18n/messageformat.js +0 -556
  789. data/closure-library/closure/goog/i18n/messageformat_test.html +0 -334
  790. data/closure-library/closure/goog/i18n/mime.js +0 -100
  791. data/closure-library/closure/goog/i18n/mime_test.html +0 -51
  792. data/closure-library/closure/goog/i18n/numberformat.js +0 -763
  793. data/closure-library/closure/goog/i18n/numberformat_test.html +0 -605
  794. data/closure-library/closure/goog/i18n/numberformatsymbols.js +0 -10358
  795. data/closure-library/closure/goog/i18n/pluralrules.js +0 -695
  796. data/closure-library/closure/goog/i18n/timezone.js +0 -341
  797. data/closure-library/closure/goog/i18n/timezone_test.html +0 -163
  798. data/closure-library/closure/goog/i18n/uchar.js +0 -1160
  799. data/closure-library/closure/goog/i18n/uchar_test.html +0 -72
  800. data/closure-library/closure/goog/images/blank.gif +0 -0
  801. data/closure-library/closure/goog/images/bubble_close.jpg +0 -0
  802. data/closure-library/closure/goog/images/bubble_left.gif +0 -0
  803. data/closure-library/closure/goog/images/bubble_right.gif +0 -0
  804. data/closure-library/closure/goog/images/button-bg.gif +0 -0
  805. data/closure-library/closure/goog/images/check-outline.gif +0 -0
  806. data/closure-library/closure/goog/images/check-sprite.gif +0 -0
  807. data/closure-library/closure/goog/images/check.gif +0 -0
  808. data/closure-library/closure/goog/images/close_box.gif +0 -0
  809. data/closure-library/closure/goog/images/color-swatch-tick.gif +0 -0
  810. data/closure-library/closure/goog/images/dialog_close_box.gif +0 -0
  811. data/closure-library/closure/goog/images/dimension-highlighted.png +0 -0
  812. data/closure-library/closure/goog/images/dimension-unhighlighted.png +0 -0
  813. data/closure-library/closure/goog/images/dropdn.gif +0 -0
  814. data/closure-library/closure/goog/images/dropdn_disabled.gif +0 -0
  815. data/closure-library/closure/goog/images/dropdown.gif +0 -0
  816. data/closure-library/closure/goog/images/gears_bluedot.gif +0 -0
  817. data/closure-library/closure/goog/images/gears_offline.gif +0 -0
  818. data/closure-library/closure/goog/images/gears_online.gif +0 -0
  819. data/closure-library/closure/goog/images/gears_paused.gif +0 -0
  820. data/closure-library/closure/goog/images/gears_syncing.gif +0 -0
  821. data/closure-library/closure/goog/images/hsv-sprite-sm.gif +0 -0
  822. data/closure-library/closure/goog/images/hsv-sprite-sm.png +0 -0
  823. data/closure-library/closure/goog/images/hsv-sprite.gif +0 -0
  824. data/closure-library/closure/goog/images/hsv-sprite.png +0 -0
  825. data/closure-library/closure/goog/images/hsva-sprite-sm.gif +0 -0
  826. data/closure-library/closure/goog/images/hsva-sprite-sm.png +0 -0
  827. data/closure-library/closure/goog/images/hsva-sprite.gif +0 -0
  828. data/closure-library/closure/goog/images/hsva-sprite.png +0 -0
  829. data/closure-library/closure/goog/images/left_anchor_bubble_bot.gif +0 -0
  830. data/closure-library/closure/goog/images/left_anchor_bubble_top.gif +0 -0
  831. data/closure-library/closure/goog/images/menu-arrows.gif +0 -0
  832. data/closure-library/closure/goog/images/minus.png +0 -0
  833. data/closure-library/closure/goog/images/no_anchor_bubble_bot.gif +0 -0
  834. data/closure-library/closure/goog/images/no_anchor_bubble_top.gif +0 -0
  835. data/closure-library/closure/goog/images/offlineicons.png +0 -0
  836. data/closure-library/closure/goog/images/plus.png +0 -0
  837. data/closure-library/closure/goog/images/ratingstars.gif +0 -0
  838. data/closure-library/closure/goog/images/right_anchor_bubble_bot.gif +0 -0
  839. data/closure-library/closure/goog/images/right_anchor_bubble_top.gif +0 -0
  840. data/closure-library/closure/goog/images/toolbar-bg.png +0 -0
  841. data/closure-library/closure/goog/images/toolbar-separator.gif +0 -0
  842. data/closure-library/closure/goog/images/toolbar_icons.gif +0 -0
  843. data/closure-library/closure/goog/images/tree/I.png +0 -0
  844. data/closure-library/closure/goog/images/tree/cleardot.gif +0 -0
  845. data/closure-library/closure/goog/images/tree/tree.gif +0 -0
  846. data/closure-library/closure/goog/images/tree/tree.png +0 -0
  847. data/closure-library/closure/goog/images/ui_controls.jpg +0 -0
  848. data/closure-library/closure/goog/iter/iter.js +0 -627
  849. data/closure-library/closure/goog/iter/iter_test.html +0 -443
  850. data/closure-library/closure/goog/json/json.js +0 -302
  851. data/closure-library/closure/goog/json/json_test.html +0 -501
  852. data/closure-library/closure/goog/locale/countries.js +0 -288
  853. data/closure-library/closure/goog/locale/countrylanguagenames_test.html +0 -233
  854. data/closure-library/closure/goog/locale/defaultlocalenameconstants.js +0 -847
  855. data/closure-library/closure/goog/locale/genericfontnames.js +0 -73
  856. data/closure-library/closure/goog/locale/genericfontnames_test.html +0 -97
  857. data/closure-library/closure/goog/locale/genericfontnamesdata.js +0 -328
  858. data/closure-library/closure/goog/locale/locale.js +0 -397
  859. data/closure-library/closure/goog/locale/nativenameconstants.js +0 -1354
  860. data/closure-library/closure/goog/locale/scriptToLanguages.js +0 -482
  861. data/closure-library/closure/goog/locale/timezonedetection.js +0 -117
  862. data/closure-library/closure/goog/locale/timezonedetection_test.html +0 -130
  863. data/closure-library/closure/goog/locale/timezonefingerprint.js +0 -250
  864. data/closure-library/closure/goog/locale/timezonelist.js +0 -129
  865. data/closure-library/closure/goog/locale/timezonelist_test.html +0 -165
  866. data/closure-library/closure/goog/math/bezier.js +0 -244
  867. data/closure-library/closure/goog/math/bezier_test.html +0 -70
  868. data/closure-library/closure/goog/math/box.js +0 -236
  869. data/closure-library/closure/goog/math/box_test.html +0 -139
  870. data/closure-library/closure/goog/math/coordinate.js +0 -136
  871. data/closure-library/closure/goog/math/coordinate3.js +0 -168
  872. data/closure-library/closure/goog/math/coordinate3_test.html +0 -208
  873. data/closure-library/closure/goog/math/coordinate_test.html +0 -92
  874. data/closure-library/closure/goog/math/integer.js +0 -736
  875. data/closure-library/closure/goog/math/integer_test.html +0 -1653
  876. data/closure-library/closure/goog/math/line.js +0 -177
  877. data/closure-library/closure/goog/math/line_test.html +0 -62
  878. data/closure-library/closure/goog/math/long.js +0 -801
  879. data/closure-library/closure/goog/math/long_test.html +0 -1571
  880. data/closure-library/closure/goog/math/math.js +0 -355
  881. data/closure-library/closure/goog/math/math_test.html +0 -254
  882. data/closure-library/closure/goog/math/matrix.js +0 -669
  883. data/closure-library/closure/goog/math/matrix_test.html +0 -427
  884. data/closure-library/closure/goog/math/range.js +0 -146
  885. data/closure-library/closure/goog/math/range_test.html +0 -103
  886. data/closure-library/closure/goog/math/rangeset.js +0 -368
  887. data/closure-library/closure/goog/math/rangeset_test.html +0 -619
  888. data/closure-library/closure/goog/math/rect.js +0 -340
  889. data/closure-library/closure/goog/math/rect_test.html +0 -315
  890. data/closure-library/closure/goog/math/size.js +0 -201
  891. data/closure-library/closure/goog/math/size_test.html +0 -174
  892. data/closure-library/closure/goog/math/vec2.js +0 -255
  893. data/closure-library/closure/goog/math/vec2_test.html +0 -203
  894. data/closure-library/closure/goog/math/vec3.js +0 -308
  895. data/closure-library/closure/goog/math/vec3_test.html +0 -231
  896. data/closure-library/closure/goog/memoize/memoize.js +0 -98
  897. data/closure-library/closure/goog/memoize/memoize_test.html +0 -157
  898. data/closure-library/closure/goog/messaging/abstractchannel.js +0 -209
  899. data/closure-library/closure/goog/messaging/abstractchannel_test.html +0 -90
  900. data/closure-library/closure/goog/messaging/bufferedchannel.js +0 -277
  901. data/closure-library/closure/goog/messaging/bufferedchannel_test.html +0 -205
  902. data/closure-library/closure/goog/messaging/deferredchannel.js +0 -79
  903. data/closure-library/closure/goog/messaging/deferredchannel_test.html +0 -107
  904. data/closure-library/closure/goog/messaging/loggerclient.js +0 -131
  905. data/closure-library/closure/goog/messaging/loggerclient_test.html +0 -102
  906. data/closure-library/closure/goog/messaging/loggerserver.js +0 -94
  907. data/closure-library/closure/goog/messaging/loggerserver_test.html +0 -101
  908. data/closure-library/closure/goog/messaging/messagechannel.js +0 -115
  909. data/closure-library/closure/goog/messaging/messaging.js +0 -34
  910. data/closure-library/closure/goog/messaging/messaging_test.html +0 -42
  911. data/closure-library/closure/goog/messaging/multichannel.js +0 -303
  912. data/closure-library/closure/goog/messaging/multichannel_test.html +0 -122
  913. data/closure-library/closure/goog/messaging/portcaller.js +0 -150
  914. data/closure-library/closure/goog/messaging/portcaller_test.html +0 -66
  915. data/closure-library/closure/goog/messaging/portchannel.js +0 -341
  916. data/closure-library/closure/goog/messaging/portchannel_test.html +0 -359
  917. data/closure-library/closure/goog/messaging/portnetwork.js +0 -78
  918. data/closure-library/closure/goog/messaging/portnetwork_test.html +0 -64
  919. data/closure-library/closure/goog/messaging/portoperator.js +0 -196
  920. data/closure-library/closure/goog/messaging/portoperator_test.html +0 -112
  921. data/closure-library/closure/goog/messaging/testdata/portchannel_inner.html +0 -28
  922. data/closure-library/closure/goog/messaging/testdata/portchannel_worker.js +0 -37
  923. data/closure-library/closure/goog/messaging/testdata/portnetwork_inner.html +0 -35
  924. data/closure-library/closure/goog/messaging/testdata/portnetwork_worker1.js +0 -33
  925. data/closure-library/closure/goog/messaging/testdata/portnetwork_worker2.js +0 -33
  926. data/closure-library/closure/goog/module/abstractmoduleloader.js +0 -46
  927. data/closure-library/closure/goog/module/basemodule.js +0 -45
  928. data/closure-library/closure/goog/module/basemoduleloader.js +0 -210
  929. data/closure-library/closure/goog/module/loader.js +0 -269
  930. data/closure-library/closure/goog/module/module.js +0 -166
  931. data/closure-library/closure/goog/module/moduleinfo.js +0 -336
  932. data/closure-library/closure/goog/module/moduleinfo_test.html +0 -109
  933. data/closure-library/closure/goog/module/moduleloadcallback.js +0 -84
  934. data/closure-library/closure/goog/module/moduleloadcallback_test.html +0 -57
  935. data/closure-library/closure/goog/module/moduleloader.js +0 -250
  936. data/closure-library/closure/goog/module/moduleloader_test.html +0 -244
  937. data/closure-library/closure/goog/module/modulemanager.js +0 -1008
  938. data/closure-library/closure/goog/module/modulemanager_test.html +0 -1240
  939. data/closure-library/closure/goog/module/testdata/modA_1.js +0 -22
  940. data/closure-library/closure/goog/module/testdata/modA_2.js +0 -24
  941. data/closure-library/closure/goog/module/testdata/modB_1.js +0 -24
  942. data/closure-library/closure/goog/net/browserchannel.js +0 -2441
  943. data/closure-library/closure/goog/net/browserchannel_test.html +0 -1176
  944. data/closure-library/closure/goog/net/browsertestchannel.js +0 -552
  945. data/closure-library/closure/goog/net/bulkloader.js +0 -174
  946. data/closure-library/closure/goog/net/bulkloader_test.html +0 -232
  947. data/closure-library/closure/goog/net/bulkloaderhelper.js +0 -129
  948. data/closure-library/closure/goog/net/channeldebug.js +0 -288
  949. data/closure-library/closure/goog/net/channelrequest.js +0 -1125
  950. data/closure-library/closure/goog/net/channelrequest_test.html +0 -158
  951. data/closure-library/closure/goog/net/cookies.js +0 -401
  952. data/closure-library/closure/goog/net/cookies_test.html +0 -255
  953. data/closure-library/closure/goog/net/crossdomainrpc.js +0 -848
  954. data/closure-library/closure/goog/net/crossdomainrpc_test.gif +0 -0
  955. data/closure-library/closure/goog/net/crossdomainrpc_test.html +0 -120
  956. data/closure-library/closure/goog/net/crossdomainrpc_test_response.html +0 -59
  957. data/closure-library/closure/goog/net/errorcode.js +0 -130
  958. data/closure-library/closure/goog/net/eventtype.js +0 -37
  959. data/closure-library/closure/goog/net/iframe_xhr_test.html +0 -142
  960. data/closure-library/closure/goog/net/iframe_xhr_test_response.html +0 -17
  961. data/closure-library/closure/goog/net/iframeio.js +0 -1342
  962. data/closure-library/closure/goog/net/iframeio_different_base_test.data +0 -2
  963. data/closure-library/closure/goog/net/iframeio_different_base_test.html +0 -42
  964. data/closure-library/closure/goog/net/iframeio_test.html +0 -368
  965. data/closure-library/closure/goog/net/iframeloadmonitor.js +0 -199
  966. data/closure-library/closure/goog/net/iframeloadmonitor_test.html +0 -113
  967. data/closure-library/closure/goog/net/iframeloadmonitor_test_frame.html +0 -12
  968. data/closure-library/closure/goog/net/iframeloadmonitor_test_frame2.html +0 -12
  969. data/closure-library/closure/goog/net/iframeloadmonitor_test_frame3.html +0 -12
  970. data/closure-library/closure/goog/net/imageloader.js +0 -237
  971. data/closure-library/closure/goog/net/imageloader_test.html +0 -200
  972. data/closure-library/closure/goog/net/imageloader_testimg1.gif +0 -0
  973. data/closure-library/closure/goog/net/imageloader_testimg2.gif +0 -0
  974. data/closure-library/closure/goog/net/imageloader_testimg3.gif +0 -0
  975. data/closure-library/closure/goog/net/jsonp.js +0 -379
  976. data/closure-library/closure/goog/net/jsonp_test.html +0 -328
  977. data/closure-library/closure/goog/net/mockiframeio.js +0 -318
  978. data/closure-library/closure/goog/net/mockxhrlite.js +0 -34
  979. data/closure-library/closure/goog/net/mockxhrlite_test.html +0 -109
  980. data/closure-library/closure/goog/net/multiiframeloadmonitor.js +0 -116
  981. data/closure-library/closure/goog/net/multiiframeloadmonitor_test.html +0 -172
  982. data/closure-library/closure/goog/net/networktester.js +0 -383
  983. data/closure-library/closure/goog/net/networktester_test.html +0 -227
  984. data/closure-library/closure/goog/net/tmpnetwork.js +0 -168
  985. data/closure-library/closure/goog/net/wrapperxmlhttpfactory.js +0 -68
  986. data/closure-library/closure/goog/net/xhrio.js +0 -1093
  987. data/closure-library/closure/goog/net/xhrio_test.html +0 -603
  988. data/closure-library/closure/goog/net/xhriopool.js +0 -87
  989. data/closure-library/closure/goog/net/xhrlite.js +0 -119
  990. data/closure-library/closure/goog/net/xhrlite_test.html +0 -156
  991. data/closure-library/closure/goog/net/xhrlitepool.js +0 -37
  992. data/closure-library/closure/goog/net/xhrmanager.js +0 -763
  993. data/closure-library/closure/goog/net/xhrmonitor.js +0 -254
  994. data/closure-library/closure/goog/net/xhrmonitor_test.html +0 -199
  995. data/closure-library/closure/goog/net/xmlhttp.js +0 -215
  996. data/closure-library/closure/goog/net/xmlhttpfactory.js +0 -64
  997. data/closure-library/closure/goog/net/xpc/crosspagechannel.js +0 -624
  998. data/closure-library/closure/goog/net/xpc/crosspagechannel_test.html +0 -422
  999. data/closure-library/closure/goog/net/xpc/frameelementmethodtransport.js +0 -251
  1000. data/closure-library/closure/goog/net/xpc/iframepollingtransport.js +0 -822
  1001. data/closure-library/closure/goog/net/xpc/iframerelaytransport.js +0 -288
  1002. data/closure-library/closure/goog/net/xpc/nativemessagingtransport.js +0 -280
  1003. data/closure-library/closure/goog/net/xpc/nativemessagingtransport_test.html +0 -164
  1004. data/closure-library/closure/goog/net/xpc/nixtransport.js +0 -454
  1005. data/closure-library/closure/goog/net/xpc/relay.js +0 -72
  1006. data/closure-library/closure/goog/net/xpc/testdata/inner_peer.html +0 -106
  1007. data/closure-library/closure/goog/net/xpc/transport.js +0 -104
  1008. data/closure-library/closure/goog/net/xpc/xpc.js +0 -238
  1009. data/closure-library/closure/goog/object/object.js +0 -553
  1010. data/closure-library/closure/goog/object/object_test.html +0 -376
  1011. data/closure-library/closure/goog/positioning/absoluteposition.js +0 -73
  1012. data/closure-library/closure/goog/positioning/abstractposition.js +0 -47
  1013. data/closure-library/closure/goog/positioning/anchoredposition.js +0 -78
  1014. data/closure-library/closure/goog/positioning/anchoredviewportposition.js +0 -126
  1015. data/closure-library/closure/goog/positioning/anchoredviewportposition_test.html +0 -117
  1016. data/closure-library/closure/goog/positioning/anchoredviewportposition_test_iframe.html +0 -35
  1017. data/closure-library/closure/goog/positioning/clientposition.js +0 -75
  1018. data/closure-library/closure/goog/positioning/menuanchoredposition.js +0 -97
  1019. data/closure-library/closure/goog/positioning/positioning.js +0 -476
  1020. data/closure-library/closure/goog/positioning/positioning_test.html +0 -877
  1021. data/closure-library/closure/goog/positioning/positioning_test_iframe1.html +0 -16
  1022. data/closure-library/closure/goog/positioning/positioning_test_iframe2.html +0 -13
  1023. data/closure-library/closure/goog/positioning/positioning_test_quirk.html +0 -9
  1024. data/closure-library/closure/goog/positioning/positioning_test_standard.html +0 -13
  1025. data/closure-library/closure/goog/positioning/viewportclientposition.js +0 -102
  1026. data/closure-library/closure/goog/positioning/viewportclientposition_test.html +0 -172
  1027. data/closure-library/closure/goog/positioning/viewportposition.js +0 -63
  1028. data/closure-library/closure/goog/proto/proto.js +0 -43
  1029. data/closure-library/closure/goog/proto/serializer.js +0 -68
  1030. data/closure-library/closure/goog/proto/serializer_test.html +0 -43
  1031. data/closure-library/closure/goog/proto2/descriptor.js +0 -198
  1032. data/closure-library/closure/goog/proto2/descriptor_test.html +0 -60
  1033. data/closure-library/closure/goog/proto2/fielddescriptor.js +0 -288
  1034. data/closure-library/closure/goog/proto2/fielddescriptor_test.html +0 -124
  1035. data/closure-library/closure/goog/proto2/lazydeserializer.js +0 -69
  1036. data/closure-library/closure/goog/proto2/message.js +0 -726
  1037. data/closure-library/closure/goog/proto2/message_test.html +0 -356
  1038. data/closure-library/closure/goog/proto2/objectserializer.js +0 -159
  1039. data/closure-library/closure/goog/proto2/objectserializer_test.html +0 -423
  1040. data/closure-library/closure/goog/proto2/package_test.pb.js +0 -164
  1041. data/closure-library/closure/goog/proto2/pbliteserializer.js +0 -150
  1042. data/closure-library/closure/goog/proto2/pbliteserializer_test.html +0 -267
  1043. data/closure-library/closure/goog/proto2/proto_test.html +0 -693
  1044. data/closure-library/closure/goog/proto2/serializer.js +0 -148
  1045. data/closure-library/closure/goog/proto2/test.pb.js +0 -2820
  1046. data/closure-library/closure/goog/proto2/util.js +0 -54
  1047. data/closure-library/closure/goog/pubsub/pubsub.js +0 -326
  1048. data/closure-library/closure/goog/pubsub/pubsub_test.html +0 -635
  1049. data/closure-library/closure/goog/reflect/reflect.js +0 -50
  1050. data/closure-library/closure/goog/spell/spellcheck.js +0 -474
  1051. data/closure-library/closure/goog/spell/spellcheck_test.html +0 -112
  1052. data/closure-library/closure/goog/string/path.js +0 -100
  1053. data/closure-library/closure/goog/string/path_test.html +0 -59
  1054. data/closure-library/closure/goog/string/string.js +0 -1207
  1055. data/closure-library/closure/goog/string/string_test.html +0 -877
  1056. data/closure-library/closure/goog/string/stringbuffer.js +0 -167
  1057. data/closure-library/closure/goog/string/stringbuffer_test.html +0 -101
  1058. data/closure-library/closure/goog/string/stringformat.js +0 -247
  1059. data/closure-library/closure/goog/string/stringformat_test.html +0 -211
  1060. data/closure-library/closure/goog/structs/avltree.js +0 -769
  1061. data/closure-library/closure/goog/structs/avltree_test.html +0 -241
  1062. data/closure-library/closure/goog/structs/circularbuffer.js +0 -219
  1063. data/closure-library/closure/goog/structs/circularbuffer_test.html +0 -105
  1064. data/closure-library/closure/goog/structs/heap.js +0 -332
  1065. data/closure-library/closure/goog/structs/heap_test.html +0 -220
  1066. data/closure-library/closure/goog/structs/inversionmap.js +0 -159
  1067. data/closure-library/closure/goog/structs/inversionmap_test.html +0 -157
  1068. data/closure-library/closure/goog/structs/linkedmap.js +0 -472
  1069. data/closure-library/closure/goog/structs/linkedmap_test.html +0 -300
  1070. data/closure-library/closure/goog/structs/map.js +0 -446
  1071. data/closure-library/closure/goog/structs/map_test.html +0 -430
  1072. data/closure-library/closure/goog/structs/node.js +0 -74
  1073. data/closure-library/closure/goog/structs/pool.js +0 -344
  1074. data/closure-library/closure/goog/structs/pool_test.html +0 -265
  1075. data/closure-library/closure/goog/structs/prioritypool.js +0 -147
  1076. data/closure-library/closure/goog/structs/prioritypool_test.html +0 -478
  1077. data/closure-library/closure/goog/structs/priorityqueue.js +0 -64
  1078. data/closure-library/closure/goog/structs/priorityqueue_test.html +0 -179
  1079. data/closure-library/closure/goog/structs/quadtree.js +0 -571
  1080. data/closure-library/closure/goog/structs/quadtree_test.html +0 -179
  1081. data/closure-library/closure/goog/structs/queue.js +0 -157
  1082. data/closure-library/closure/goog/structs/queue_test.html +0 -140
  1083. data/closure-library/closure/goog/structs/set.js +0 -251
  1084. data/closure-library/closure/goog/structs/set_test.html +0 -551
  1085. data/closure-library/closure/goog/structs/simplepool.js +0 -203
  1086. data/closure-library/closure/goog/structs/stringset.js +0 -404
  1087. data/closure-library/closure/goog/structs/stringset_test.html +0 -251
  1088. data/closure-library/closure/goog/structs/structs.js +0 -341
  1089. data/closure-library/closure/goog/structs/structs_test.html +0 -1050
  1090. data/closure-library/closure/goog/structs/treenode.js +0 -312
  1091. data/closure-library/closure/goog/structs/treenode_test.html +0 -285
  1092. data/closure-library/closure/goog/structs/trie.js +0 -368
  1093. data/closure-library/closure/goog/structs/trie_test.html +0 -378
  1094. data/closure-library/closure/goog/style/cursor.js +0 -125
  1095. data/closure-library/closure/goog/style/cursor_test.html +0 -131
  1096. data/closure-library/closure/goog/style/style.js +0 -1804
  1097. data/closure-library/closure/goog/style/style_quirks_test.html +0 -1928
  1098. data/closure-library/closure/goog/style/style_test.html +0 -2073
  1099. data/closure-library/closure/goog/style/style_test_iframe_quirk.html +0 -29
  1100. data/closure-library/closure/goog/style/style_test_iframe_standard.html +0 -30
  1101. data/closure-library/closure/goog/style/style_test_quirk.html +0 -9
  1102. data/closure-library/closure/goog/style/style_test_standard.html +0 -11
  1103. data/closure-library/closure/goog/testing/asserts.js +0 -970
  1104. data/closure-library/closure/goog/testing/asserts_test.html +0 -966
  1105. data/closure-library/closure/goog/testing/async/mockcontrol.js +0 -174
  1106. data/closure-library/closure/goog/testing/async/mockcontrol_test.html +0 -224
  1107. data/closure-library/closure/goog/testing/asynctestcase.js +0 -812
  1108. data/closure-library/closure/goog/testing/asynctestcase_async_test.html +0 -102
  1109. data/closure-library/closure/goog/testing/asynctestcase_noasync_test.html +0 -98
  1110. data/closure-library/closure/goog/testing/benchmark.js +0 -87
  1111. data/closure-library/closure/goog/testing/benchmarks/jsbinarysizebutton.js +0 -64
  1112. data/closure-library/closure/goog/testing/benchmarks/jsbinarysizebutton_test.html +0 -58
  1113. data/closure-library/closure/goog/testing/benchmarks/jsbinarysizetoolbar.js +0 -66
  1114. data/closure-library/closure/goog/testing/benchmarks/jsbinarysizetoolbar_test.html +0 -49
  1115. data/closure-library/closure/goog/testing/continuationtestcase.js +0 -682
  1116. data/closure-library/closure/goog/testing/continuationtestcase_test.html +0 -349
  1117. data/closure-library/closure/goog/testing/deferredtestcase.js +0 -157
  1118. data/closure-library/closure/goog/testing/deferredtestcase_test.html +0 -152
  1119. data/closure-library/closure/goog/testing/dom.js +0 -596
  1120. data/closure-library/closure/goog/testing/dom_test.html +0 -438
  1121. data/closure-library/closure/goog/testing/editor/dom.js +0 -293
  1122. data/closure-library/closure/goog/testing/editor/dom_test.html +0 -295
  1123. data/closure-library/closure/goog/testing/editor/fieldmock.js +0 -90
  1124. data/closure-library/closure/goog/testing/editor/testhelper.js +0 -168
  1125. data/closure-library/closure/goog/testing/editor/testhelper_test.html +0 -176
  1126. data/closure-library/closure/goog/testing/events/eventobserver.js +0 -85
  1127. data/closure-library/closure/goog/testing/events/eventobserver_test.html +0 -70
  1128. data/closure-library/closure/goog/testing/events/events.js +0 -540
  1129. data/closure-library/closure/goog/testing/events/events_test.html +0 -434
  1130. data/closure-library/closure/goog/testing/events/matchers.js +0 -41
  1131. data/closure-library/closure/goog/testing/events/matchers_test.html +0 -40
  1132. data/closure-library/closure/goog/testing/expectedfailures.js +0 -236
  1133. data/closure-library/closure/goog/testing/expectedfailures_test.html +0 -122
  1134. data/closure-library/closure/goog/testing/fs/blob.js +0 -74
  1135. data/closure-library/closure/goog/testing/fs/blob_test.html +0 -53
  1136. data/closure-library/closure/goog/testing/fs/directoryentry_test.html +0 -185
  1137. data/closure-library/closure/goog/testing/fs/entry.js +0 -511
  1138. data/closure-library/closure/goog/testing/fs/entry_test.html +0 -153
  1139. data/closure-library/closure/goog/testing/fs/file.js +0 -51
  1140. data/closure-library/closure/goog/testing/fs/fileentry_test.html +0 -54
  1141. data/closure-library/closure/goog/testing/fs/filesystem.js +0 -64
  1142. data/closure-library/closure/goog/testing/fs/filewriter.js +0 -314
  1143. data/closure-library/closure/goog/testing/fs/filewriter_test.html +0 -248
  1144. data/closure-library/closure/goog/testing/fs/fs.js +0 -146
  1145. data/closure-library/closure/goog/testing/fs/fs_test.html +0 -54
  1146. data/closure-library/closure/goog/testing/fs/integration_test.html +0 -219
  1147. data/closure-library/closure/goog/testing/functionmock.js +0 -157
  1148. data/closure-library/closure/goog/testing/functionmock_test.html +0 -357
  1149. data/closure-library/closure/goog/testing/graphics.js +0 -64
  1150. data/closure-library/closure/goog/testing/jsunit.js +0 -144
  1151. data/closure-library/closure/goog/testing/loosemock.js +0 -240
  1152. data/closure-library/closure/goog/testing/loosemock_test.html +0 -343
  1153. data/closure-library/closure/goog/testing/messaging/mockmessagechannel.js +0 -77
  1154. data/closure-library/closure/goog/testing/messaging/mockmessageevent.js +0 -100
  1155. data/closure-library/closure/goog/testing/messaging/mockmessageport.js +0 -85
  1156. data/closure-library/closure/goog/testing/messaging/mockportnetwork.js +0 -64
  1157. data/closure-library/closure/goog/testing/mock.js +0 -556
  1158. data/closure-library/closure/goog/testing/mock_test.html +0 -208
  1159. data/closure-library/closure/goog/testing/mockclassfactory.js +0 -580
  1160. data/closure-library/closure/goog/testing/mockclassfactory_test.html +0 -241
  1161. data/closure-library/closure/goog/testing/mockclock.js +0 -395
  1162. data/closure-library/closure/goog/testing/mockclock_test.html +0 -413
  1163. data/closure-library/closure/goog/testing/mockcontrol.js +0 -210
  1164. data/closure-library/closure/goog/testing/mockcontrol_test.html +0 -127
  1165. data/closure-library/closure/goog/testing/mockinterface.js +0 -45
  1166. data/closure-library/closure/goog/testing/mockmatchers.js +0 -395
  1167. data/closure-library/closure/goog/testing/mockmatchers_test.html +0 -388
  1168. data/closure-library/closure/goog/testing/mockrandom.js +0 -128
  1169. data/closure-library/closure/goog/testing/mockrandom_test.html +0 -56
  1170. data/closure-library/closure/goog/testing/mockrange.js +0 -65
  1171. data/closure-library/closure/goog/testing/mockrange_test.html +0 -41
  1172. data/closure-library/closure/goog/testing/mockuseragent.js +0 -143
  1173. data/closure-library/closure/goog/testing/mockuseragent_test.html +0 -59
  1174. data/closure-library/closure/goog/testing/multitestrunner.js +0 -1442
  1175. data/closure-library/closure/goog/testing/net/xhrio.js +0 -595
  1176. data/closure-library/closure/goog/testing/net/xhrio_test.html +0 -321
  1177. data/closure-library/closure/goog/testing/objectpropertystring.js +0 -67
  1178. data/closure-library/closure/goog/testing/performancetable.css +0 -46
  1179. data/closure-library/closure/goog/testing/performancetable.js +0 -162
  1180. data/closure-library/closure/goog/testing/performancetimer.js +0 -166
  1181. data/closure-library/closure/goog/testing/performancetimer_test.html +0 -107
  1182. data/closure-library/closure/goog/testing/propertyreplacer.js +0 -243
  1183. data/closure-library/closure/goog/testing/propertyreplacer_test.html +0 -368
  1184. data/closure-library/closure/goog/testing/pseudorandom.js +0 -162
  1185. data/closure-library/closure/goog/testing/pseudorandom_test.html +0 -98
  1186. data/closure-library/closure/goog/testing/recordfunction.js +0 -194
  1187. data/closure-library/closure/goog/testing/recordfunction_test.html +0 -147
  1188. data/closure-library/closure/goog/testing/singleton.js +0 -82
  1189. data/closure-library/closure/goog/testing/singleton_test.html +0 -39
  1190. data/closure-library/closure/goog/testing/stacktrace.js +0 -470
  1191. data/closure-library/closure/goog/testing/stacktrace_test.html +0 -229
  1192. data/closure-library/closure/goog/testing/strictmock.js +0 -124
  1193. data/closure-library/closure/goog/testing/strictmock_test.html +0 -368
  1194. data/closure-library/closure/goog/testing/style/layoutasserts.js +0 -368
  1195. data/closure-library/closure/goog/testing/style/layoutasserts_test.html +0 -269
  1196. data/closure-library/closure/goog/testing/testcase.js +0 -1053
  1197. data/closure-library/closure/goog/testing/testqueue.js +0 -66
  1198. data/closure-library/closure/goog/testing/testrunner.js +0 -391
  1199. data/closure-library/closure/goog/testing/ui/rendererasserts.js +0 -50
  1200. data/closure-library/closure/goog/testing/ui/rendererasserts_test.html +0 -51
  1201. data/closure-library/closure/goog/testing/ui/rendererharness.js +0 -175
  1202. data/closure-library/closure/goog/testing/ui/style.js +0 -137
  1203. data/closure-library/closure/goog/testing/ui/style_reference.html +0 -27
  1204. data/closure-library/closure/goog/testing/ui/style_test.html +0 -130
  1205. data/closure-library/closure/goog/timer/timer.js +0 -285
  1206. data/closure-library/closure/goog/timer/timer_test.html +0 -118
  1207. data/closure-library/closure/goog/tweak/entries.js +0 -990
  1208. data/closure-library/closure/goog/tweak/entries_test.html +0 -94
  1209. data/closure-library/closure/goog/tweak/registry.js +0 -310
  1210. data/closure-library/closure/goog/tweak/registry_test.html +0 -144
  1211. data/closure-library/closure/goog/tweak/testhelpers.js +0 -111
  1212. data/closure-library/closure/goog/tweak/tweak.js +0 -318
  1213. data/closure-library/closure/goog/tweak/tweakui.js +0 -817
  1214. data/closure-library/closure/goog/tweak/tweakui_test.html +0 -280
  1215. data/closure-library/closure/goog/ui/abstractspellchecker.js +0 -1069
  1216. data/closure-library/closure/goog/ui/activitymonitor.js +0 -286
  1217. data/closure-library/closure/goog/ui/activitymonitor_test.html +0 -44
  1218. data/closure-library/closure/goog/ui/advancedtooltip.js +0 -368
  1219. data/closure-library/closure/goog/ui/advancedtooltip_test.html +0 -274
  1220. data/closure-library/closure/goog/ui/animatedzippy.js +0 -190
  1221. data/closure-library/closure/goog/ui/attachablemenu.js +0 -464
  1222. data/closure-library/closure/goog/ui/autocomplete/arraymatcher.js +0 -156
  1223. data/closure-library/closure/goog/ui/autocomplete/arraymatcher_test.html +0 -130
  1224. data/closure-library/closure/goog/ui/autocomplete/autocomplete.js +0 -627
  1225. data/closure-library/closure/goog/ui/autocomplete/autocomplete_test.html +0 -537
  1226. data/closure-library/closure/goog/ui/autocomplete/basic.js +0 -53
  1227. data/closure-library/closure/goog/ui/autocomplete/basic_test.html +0 -204
  1228. data/closure-library/closure/goog/ui/autocomplete/inputhandler.js +0 -1209
  1229. data/closure-library/closure/goog/ui/autocomplete/inputhandler_test.html +0 -555
  1230. data/closure-library/closure/goog/ui/autocomplete/remote.js +0 -117
  1231. data/closure-library/closure/goog/ui/autocomplete/remotearraymatcher.js +0 -273
  1232. data/closure-library/closure/goog/ui/autocomplete/remotearraymatcher_test.html +0 -73
  1233. data/closure-library/closure/goog/ui/autocomplete/renderer.js +0 -852
  1234. data/closure-library/closure/goog/ui/autocomplete/renderer_test.html +0 -386
  1235. data/closure-library/closure/goog/ui/autocomplete/richinputhandler.js +0 -59
  1236. data/closure-library/closure/goog/ui/autocomplete/richremote.js +0 -108
  1237. data/closure-library/closure/goog/ui/autocomplete/richremotearraymatcher.js +0 -126
  1238. data/closure-library/closure/goog/ui/basicmenu.js +0 -930
  1239. data/closure-library/closure/goog/ui/bidiinput.js +0 -164
  1240. data/closure-library/closure/goog/ui/bubble.js +0 -475
  1241. data/closure-library/closure/goog/ui/button.js +0 -208
  1242. data/closure-library/closure/goog/ui/button_test.html +0 -257
  1243. data/closure-library/closure/goog/ui/buttonrenderer.js +0 -205
  1244. data/closure-library/closure/goog/ui/buttonrenderer_test.html +0 -190
  1245. data/closure-library/closure/goog/ui/buttonside.js +0 -40
  1246. data/closure-library/closure/goog/ui/cccbutton.js +0 -281
  1247. data/closure-library/closure/goog/ui/charcounter.js +0 -200
  1248. data/closure-library/closure/goog/ui/charpicker.js +0 -807
  1249. data/closure-library/closure/goog/ui/checkbox.js +0 -303
  1250. data/closure-library/closure/goog/ui/checkbox_test.html +0 -224
  1251. data/closure-library/closure/goog/ui/checkboxmenuitem.js +0 -53
  1252. data/closure-library/closure/goog/ui/colorbutton.js +0 -58
  1253. data/closure-library/closure/goog/ui/colorbutton_test.html +0 -70
  1254. data/closure-library/closure/goog/ui/colorbuttonrenderer.js +0 -72
  1255. data/closure-library/closure/goog/ui/colormenubutton.js +0 -213
  1256. data/closure-library/closure/goog/ui/colormenubuttonrenderer.js +0 -144
  1257. data/closure-library/closure/goog/ui/colormenubuttonrenderer_test.html +0 -88
  1258. data/closure-library/closure/goog/ui/colorpalette.js +0 -162
  1259. data/closure-library/closure/goog/ui/colorpalette_test.html +0 -169
  1260. data/closure-library/closure/goog/ui/colorpicker.js +0 -344
  1261. data/closure-library/closure/goog/ui/colorsplitbehavior.js +0 -61
  1262. data/closure-library/closure/goog/ui/combobox.js +0 -894
  1263. data/closure-library/closure/goog/ui/combobox_test.html +0 -208
  1264. data/closure-library/closure/goog/ui/component.js +0 -1187
  1265. data/closure-library/closure/goog/ui/component_test.html +0 -723
  1266. data/closure-library/closure/goog/ui/container.js +0 -1296
  1267. data/closure-library/closure/goog/ui/container_test.html +0 -450
  1268. data/closure-library/closure/goog/ui/containerrenderer.js +0 -370
  1269. data/closure-library/closure/goog/ui/containerrenderer_test.html +0 -227
  1270. data/closure-library/closure/goog/ui/containerscroller.js +0 -221
  1271. data/closure-library/closure/goog/ui/containerscroller_test.html +0 -213
  1272. data/closure-library/closure/goog/ui/control.js +0 -1348
  1273. data/closure-library/closure/goog/ui/control_test.html +0 -2128
  1274. data/closure-library/closure/goog/ui/controlcontent.js +0 -28
  1275. data/closure-library/closure/goog/ui/controlrenderer.js +0 -808
  1276. data/closure-library/closure/goog/ui/controlrenderer_test.html +0 -840
  1277. data/closure-library/closure/goog/ui/cookieeditor.js +0 -182
  1278. data/closure-library/closure/goog/ui/cookieeditor_test.html +0 -102
  1279. data/closure-library/closure/goog/ui/css3buttonrenderer.js +0 -147
  1280. data/closure-library/closure/goog/ui/css3menubuttonrenderer.js +0 -144
  1281. data/closure-library/closure/goog/ui/cssnames.js +0 -28
  1282. data/closure-library/closure/goog/ui/custombutton.js +0 -58
  1283. data/closure-library/closure/goog/ui/custombuttonrenderer.js +0 -254
  1284. data/closure-library/closure/goog/ui/customcolorpalette.js +0 -137
  1285. data/closure-library/closure/goog/ui/customcolorpalette_test.html +0 -60
  1286. data/closure-library/closure/goog/ui/datepicker.js +0 -1339
  1287. data/closure-library/closure/goog/ui/datepicker_test.html +0 -190
  1288. data/closure-library/closure/goog/ui/decorate.js +0 -37
  1289. data/closure-library/closure/goog/ui/decorate_test.html +0 -113
  1290. data/closure-library/closure/goog/ui/deprecatedbutton.js +0 -381
  1291. data/closure-library/closure/goog/ui/dialog.js +0 -1776
  1292. data/closure-library/closure/goog/ui/dialog_test.html +0 -493
  1293. data/closure-library/closure/goog/ui/dimensionpicker.js +0 -289
  1294. data/closure-library/closure/goog/ui/dimensionpicker_test.html +0 -128
  1295. data/closure-library/closure/goog/ui/dimensionpickerrenderer.js +0 -387
  1296. data/closure-library/closure/goog/ui/dragdropdetector.js +0 -642
  1297. data/closure-library/closure/goog/ui/drilldownrow.js +0 -494
  1298. data/closure-library/closure/goog/ui/editor/abstractdialog.js +0 -443
  1299. data/closure-library/closure/goog/ui/editor/abstractdialog_test.html +0 -467
  1300. data/closure-library/closure/goog/ui/editor/bubble.js +0 -520
  1301. data/closure-library/closure/goog/ui/editor/bubble_test.html +0 -264
  1302. data/closure-library/closure/goog/ui/editor/defaulttoolbar.js +0 -1062
  1303. data/closure-library/closure/goog/ui/editor/linkdialog.js +0 -833
  1304. data/closure-library/closure/goog/ui/editor/linkdialog_test.html +0 -449
  1305. data/closure-library/closure/goog/ui/editor/messages.js +0 -115
  1306. data/closure-library/closure/goog/ui/editor/tabpane.js +0 -183
  1307. data/closure-library/closure/goog/ui/editor/toolbarcontroller.js +0 -293
  1308. data/closure-library/closure/goog/ui/editor/toolbarfactory.js +0 -437
  1309. data/closure-library/closure/goog/ui/editor/toolbarfactory_test.html +0 -73
  1310. data/closure-library/closure/goog/ui/emoji/emoji.js +0 -72
  1311. data/closure-library/closure/goog/ui/emoji/emojipalette.js +0 -298
  1312. data/closure-library/closure/goog/ui/emoji/emojipaletterenderer.js +0 -206
  1313. data/closure-library/closure/goog/ui/emoji/emojipicker.js +0 -797
  1314. data/closure-library/closure/goog/ui/emoji/emojipicker_test.html +0 -840
  1315. data/closure-library/closure/goog/ui/emoji/fast_nonprogressive_emojipicker_test.html +0 -256
  1316. data/closure-library/closure/goog/ui/emoji/fast_progressive_emojipicker_test.html +0 -256
  1317. data/closure-library/closure/goog/ui/emoji/popupemojipicker.js +0 -410
  1318. data/closure-library/closure/goog/ui/emoji/popupemojipicker_test.html +0 -80
  1319. data/closure-library/closure/goog/ui/emoji/progressiveemojipaletterenderer.js +0 -97
  1320. data/closure-library/closure/goog/ui/emoji/spriteinfo.js +0 -212
  1321. data/closure-library/closure/goog/ui/emoji/spriteinfo_test.html +0 -51
  1322. data/closure-library/closure/goog/ui/filteredmenu.js +0 -562
  1323. data/closure-library/closure/goog/ui/filteredmenu_test.html +0 -299
  1324. data/closure-library/closure/goog/ui/filterobservingmenuitem.js +0 -97
  1325. data/closure-library/closure/goog/ui/filterobservingmenuitemrenderer.js +0 -60
  1326. data/closure-library/closure/goog/ui/flatbuttonrenderer.js +0 -138
  1327. data/closure-library/closure/goog/ui/flatmenubuttonrenderer.js +0 -199
  1328. data/closure-library/closure/goog/ui/formpost.js +0 -109
  1329. data/closure-library/closure/goog/ui/formpost_test.html +0 -109
  1330. data/closure-library/closure/goog/ui/gauge.js +0 -999
  1331. data/closure-library/closure/goog/ui/gaugetheme.js +0 -169
  1332. data/closure-library/closure/goog/ui/hovercard.js +0 -447
  1333. data/closure-library/closure/goog/ui/hovercard_test.html +0 -343
  1334. data/closure-library/closure/goog/ui/hsvapalette.js +0 -311
  1335. data/closure-library/closure/goog/ui/hsvapalette_test.html +0 -152
  1336. data/closure-library/closure/goog/ui/hsvpalette.js +0 -470
  1337. data/closure-library/closure/goog/ui/hsvpalette_test.html +0 -202
  1338. data/closure-library/closure/goog/ui/idgenerator.js +0 -57
  1339. data/closure-library/closure/goog/ui/idletimer.js +0 -299
  1340. data/closure-library/closure/goog/ui/idletimer_test.html +0 -100
  1341. data/closure-library/closure/goog/ui/iframemask.js +0 -256
  1342. data/closure-library/closure/goog/ui/iframemask_test.html +0 -230
  1343. data/closure-library/closure/goog/ui/imagelessbuttonrenderer.js +0 -204
  1344. data/closure-library/closure/goog/ui/imagelessmenubuttonrenderer.js +0 -202
  1345. data/closure-library/closure/goog/ui/imagelessroundedcorner.js +0 -971
  1346. data/closure-library/closure/goog/ui/inputdatepicker.js +0 -306
  1347. data/closure-library/closure/goog/ui/inputdatepicker_test.html +0 -109
  1348. data/closure-library/closure/goog/ui/itemevent.js +0 -50
  1349. data/closure-library/closure/goog/ui/keyboardshortcuthandler.js +0 -981
  1350. data/closure-library/closure/goog/ui/keyboardshortcuthandler_test.html +0 -671
  1351. data/closure-library/closure/goog/ui/labelinput.js +0 -439
  1352. data/closure-library/closure/goog/ui/linkbuttonrenderer.js +0 -67
  1353. data/closure-library/closure/goog/ui/media/flashobject.js +0 -629
  1354. data/closure-library/closure/goog/ui/media/flashobject_test.html +0 -236
  1355. data/closure-library/closure/goog/ui/media/flickr.js +0 -309
  1356. data/closure-library/closure/goog/ui/media/flickr_test.html +0 -90
  1357. data/closure-library/closure/goog/ui/media/media.js +0 -284
  1358. data/closure-library/closure/goog/ui/media/media_test.html +0 -161
  1359. data/closure-library/closure/goog/ui/media/mediamodel.js +0 -840
  1360. data/closure-library/closure/goog/ui/media/mp3.js +0 -225
  1361. data/closure-library/closure/goog/ui/media/mp3_test.html +0 -78
  1362. data/closure-library/closure/goog/ui/media/photo.js +0 -139
  1363. data/closure-library/closure/goog/ui/media/photo_test.html +0 -62
  1364. data/closure-library/closure/goog/ui/media/picasa.js +0 -317
  1365. data/closure-library/closure/goog/ui/media/picasa_test.html +0 -131
  1366. data/closure-library/closure/goog/ui/media/vimeo.js +0 -264
  1367. data/closure-library/closure/goog/ui/media/vimeo_test.html +0 -79
  1368. data/closure-library/closure/goog/ui/media/youtube.js +0 -328
  1369. data/closure-library/closure/goog/ui/media/youtube_test.html +0 -185
  1370. data/closure-library/closure/goog/ui/menu.js +0 -435
  1371. data/closure-library/closure/goog/ui/menu_test.html +0 -129
  1372. data/closure-library/closure/goog/ui/menubase.js +0 -191
  1373. data/closure-library/closure/goog/ui/menubutton.js +0 -815
  1374. data/closure-library/closure/goog/ui/menubutton_test.html +0 -440
  1375. data/closure-library/closure/goog/ui/menubutton_test_frame.html +0 -41
  1376. data/closure-library/closure/goog/ui/menubuttonrenderer.js +0 -226
  1377. data/closure-library/closure/goog/ui/menubuttonrenderer_test.html +0 -161
  1378. data/closure-library/closure/goog/ui/menuheader.js +0 -62
  1379. data/closure-library/closure/goog/ui/menuheaderrenderer.js +0 -55
  1380. data/closure-library/closure/goog/ui/menuitem.js +0 -154
  1381. data/closure-library/closure/goog/ui/menuitem_test.html +0 -506
  1382. data/closure-library/closure/goog/ui/menuitemrenderer.js +0 -353
  1383. data/closure-library/closure/goog/ui/menuitemrenderer_test.html +0 -190
  1384. data/closure-library/closure/goog/ui/menurenderer.js +0 -118
  1385. data/closure-library/closure/goog/ui/menuseparator.js +0 -51
  1386. data/closure-library/closure/goog/ui/menuseparatorrenderer.js +0 -102
  1387. data/closure-library/closure/goog/ui/mockactivitymonitor.js +0 -54
  1388. data/closure-library/closure/goog/ui/nativebuttonrenderer.js +0 -205
  1389. data/closure-library/closure/goog/ui/nativebuttonrenderer_test.html +0 -213
  1390. data/closure-library/closure/goog/ui/offlineinstalldialog.js +0 -1086
  1391. data/closure-library/closure/goog/ui/offlinestatuscard.js +0 -580
  1392. data/closure-library/closure/goog/ui/offlinestatuscomponent.js +0 -545
  1393. data/closure-library/closure/goog/ui/option.js +0 -67
  1394. data/closure-library/closure/goog/ui/palette.js +0 -528
  1395. data/closure-library/closure/goog/ui/paletterenderer.js +0 -318
  1396. data/closure-library/closure/goog/ui/plaintextspellchecker.js +0 -668
  1397. data/closure-library/closure/goog/ui/plaintextspellchecker_test.html +0 -240
  1398. data/closure-library/closure/goog/ui/popup.js +0 -410
  1399. data/closure-library/closure/goog/ui/popup_test.html +0 -137
  1400. data/closure-library/closure/goog/ui/popupbase.js +0 -721
  1401. data/closure-library/closure/goog/ui/popupbase_test.html +0 -186
  1402. data/closure-library/closure/goog/ui/popupcolorpicker.js +0 -441
  1403. data/closure-library/closure/goog/ui/popupcolorpicker_test.html +0 -71
  1404. data/closure-library/closure/goog/ui/popupdatepicker.js +0 -273
  1405. data/closure-library/closure/goog/ui/popupmenu.js +0 -539
  1406. data/closure-library/closure/goog/ui/popupmenu_test.html +0 -197
  1407. data/closure-library/closure/goog/ui/progressbar.js +0 -390
  1408. data/closure-library/closure/goog/ui/prompt.js +0 -307
  1409. data/closure-library/closure/goog/ui/prompt_test.html +0 -65
  1410. data/closure-library/closure/goog/ui/rangemodel.js +0 -301
  1411. data/closure-library/closure/goog/ui/rangemodel_test.html +0 -270
  1412. data/closure-library/closure/goog/ui/ratings.js +0 -441
  1413. data/closure-library/closure/goog/ui/registry.js +0 -166
  1414. data/closure-library/closure/goog/ui/registry_test.html +0 -236
  1415. data/closure-library/closure/goog/ui/richtextspellchecker.js +0 -600
  1416. data/closure-library/closure/goog/ui/richtextspellchecker_test.html +0 -224
  1417. data/closure-library/closure/goog/ui/roundedcorners.js +0 -694
  1418. data/closure-library/closure/goog/ui/roundedpanel.js +0 -609
  1419. data/closure-library/closure/goog/ui/roundedpanel_test.html +0 -57
  1420. data/closure-library/closure/goog/ui/roundedtabrenderer.js +0 -196
  1421. data/closure-library/closure/goog/ui/scrollfloater.js +0 -394
  1422. data/closure-library/closure/goog/ui/scrollfloater_test.html +0 -46
  1423. data/closure-library/closure/goog/ui/select.js +0 -397
  1424. data/closure-library/closure/goog/ui/select_test.html +0 -152
  1425. data/closure-library/closure/goog/ui/selectionmenubutton.js +0 -277
  1426. data/closure-library/closure/goog/ui/selectionmenubutton_test.html +0 -237
  1427. data/closure-library/closure/goog/ui/selectionmodel.js +0 -291
  1428. data/closure-library/closure/goog/ui/separator.js +0 -74
  1429. data/closure-library/closure/goog/ui/serverchart.js +0 -1791
  1430. data/closure-library/closure/goog/ui/serverchart_test.html +0 -598
  1431. data/closure-library/closure/goog/ui/slider.js +0 -125
  1432. data/closure-library/closure/goog/ui/sliderbase.js +0 -1087
  1433. data/closure-library/closure/goog/ui/sliderbase_test.html +0 -198
  1434. data/closure-library/closure/goog/ui/splitbehavior.js +0 -348
  1435. data/closure-library/closure/goog/ui/splitbehavior_test.html +0 -161
  1436. data/closure-library/closure/goog/ui/splitpane.js +0 -844
  1437. data/closure-library/closure/goog/ui/splitpane_test.html +0 -143
  1438. data/closure-library/closure/goog/ui/style/app/buttonrenderer.js +0 -204
  1439. data/closure-library/closure/goog/ui/style/app/buttonrenderer_test.html +0 -155
  1440. data/closure-library/closure/goog/ui/style/app/menubuttonrenderer.js +0 -227
  1441. data/closure-library/closure/goog/ui/style/app/menubuttonrenderer_test.html +0 -167
  1442. data/closure-library/closure/goog/ui/style/app/primaryactionbuttonrenderer.js +0 -88
  1443. data/closure-library/closure/goog/ui/style/app/primaryactionbuttonrenderer_test.html +0 -76
  1444. data/closure-library/closure/goog/ui/submenu.js +0 -660
  1445. data/closure-library/closure/goog/ui/submenu_test.html +0 -446
  1446. data/closure-library/closure/goog/ui/submenurenderer.js +0 -188
  1447. data/closure-library/closure/goog/ui/tab.js +0 -102
  1448. data/closure-library/closure/goog/ui/tab_test.html +0 -61
  1449. data/closure-library/closure/goog/ui/tabbar.js +0 -393
  1450. data/closure-library/closure/goog/ui/tabbar_test.html +0 -611
  1451. data/closure-library/closure/goog/ui/tabbarrenderer.js +0 -173
  1452. data/closure-library/closure/goog/ui/tabbarrenderer_test.html +0 -137
  1453. data/closure-library/closure/goog/ui/tablesorter.js +0 -304
  1454. data/closure-library/closure/goog/ui/tablesorter_test.html +0 -127
  1455. data/closure-library/closure/goog/ui/tabpane.js +0 -674
  1456. data/closure-library/closure/goog/ui/tabpane_test.html +0 -107
  1457. data/closure-library/closure/goog/ui/tabrenderer.js +0 -152
  1458. data/closure-library/closure/goog/ui/tabrenderer_test.html +0 -132
  1459. data/closure-library/closure/goog/ui/textarea.js +0 -573
  1460. data/closure-library/closure/goog/ui/textarea_test.html +0 -305
  1461. data/closure-library/closure/goog/ui/textarearenderer.js +0 -167
  1462. data/closure-library/closure/goog/ui/togglebutton.js +0 -58
  1463. data/closure-library/closure/goog/ui/toolbar.js +0 -45
  1464. data/closure-library/closure/goog/ui/toolbarbutton.js +0 -54
  1465. data/closure-library/closure/goog/ui/toolbarbuttonrenderer.js +0 -55
  1466. data/closure-library/closure/goog/ui/toolbarcolormenubutton.js +0 -57
  1467. data/closure-library/closure/goog/ui/toolbarcolormenubuttonrenderer.js +0 -95
  1468. data/closure-library/closure/goog/ui/toolbarcolormenubuttonrenderer_test.html +0 -66
  1469. data/closure-library/closure/goog/ui/toolbarmenubutton.js +0 -56
  1470. data/closure-library/closure/goog/ui/toolbarmenubuttonrenderer.js +0 -55
  1471. data/closure-library/closure/goog/ui/toolbarrenderer.js +0 -95
  1472. data/closure-library/closure/goog/ui/toolbarselect.js +0 -55
  1473. data/closure-library/closure/goog/ui/toolbarseparator.js +0 -51
  1474. data/closure-library/closure/goog/ui/toolbarseparatorrenderer.js +0 -87
  1475. data/closure-library/closure/goog/ui/toolbartogglebutton.js +0 -53
  1476. data/closure-library/closure/goog/ui/tooltip.js +0 -975
  1477. data/closure-library/closure/goog/ui/tooltip_test.html +0 -351
  1478. data/closure-library/closure/goog/ui/tree/basenode.js +0 -1457
  1479. data/closure-library/closure/goog/ui/tree/basenode_test.html +0 -218
  1480. data/closure-library/closure/goog/ui/tree/treecontrol.js +0 -656
  1481. data/closure-library/closure/goog/ui/tree/treecontrol_test.html +0 -113
  1482. data/closure-library/closure/goog/ui/tree/treenode.js +0 -102
  1483. data/closure-library/closure/goog/ui/tree/typeahead.js +0 -332
  1484. data/closure-library/closure/goog/ui/tree/typeahead_test.html +0 -133
  1485. data/closure-library/closure/goog/ui/tristatemenuitem.js +0 -185
  1486. data/closure-library/closure/goog/ui/tristatemenuitemrenderer.js +0 -86
  1487. data/closure-library/closure/goog/ui/twothumbslider.js +0 -134
  1488. data/closure-library/closure/goog/ui/zippy.js +0 -277
  1489. data/closure-library/closure/goog/ui/zippy_test.html +0 -223
  1490. data/closure-library/closure/goog/uri/uri.js +0 -1595
  1491. data/closure-library/closure/goog/uri/uri_test.html +0 -837
  1492. data/closure-library/closure/goog/uri/utils.js +0 -972
  1493. data/closure-library/closure/goog/uri/utils_test.html +0 -521
  1494. data/closure-library/closure/goog/useragent/adobereader.js +0 -90
  1495. data/closure-library/closure/goog/useragent/adobereader_test.html +0 -34
  1496. data/closure-library/closure/goog/useragent/flash.js +0 -113
  1497. data/closure-library/closure/goog/useragent/flash_test.html +0 -34
  1498. data/closure-library/closure/goog/useragent/iphoto.js +0 -86
  1499. data/closure-library/closure/goog/useragent/jscript.js +0 -94
  1500. data/closure-library/closure/goog/useragent/jscript_test.html +0 -65
  1501. data/closure-library/closure/goog/useragent/picasa.js +0 -111
  1502. data/closure-library/closure/goog/useragent/platform.js +0 -70
  1503. data/closure-library/closure/goog/useragent/platform_test.html +0 -108
  1504. data/closure-library/closure/goog/useragent/product.js +0 -253
  1505. data/closure-library/closure/goog/useragent/product_isversion.js +0 -99
  1506. data/closure-library/closure/goog/useragent/product_test.html +0 -322
  1507. data/closure-library/closure/goog/useragent/useragent.js +0 -464
  1508. data/closure-library/closure/goog/useragent/useragent_test.html +0 -290
  1509. data/closure-library/closure/goog/window/window.js +0 -206
  1510. data/closure-library/closure/goog/window/window_test.html +0 -185
  1511. data/closure-library/third_party/closure/goog/base.js +0 -2
  1512. data/closure-library/third_party/closure/goog/caja/string/html/htmlparser.js +0 -611
  1513. data/closure-library/third_party/closure/goog/caja/string/html/htmlsanitizer.js +0 -605
  1514. data/closure-library/third_party/closure/goog/deps.js +0 -26
  1515. data/closure-library/third_party/closure/goog/dojo/dom/query.js +0 -1537
  1516. data/closure-library/third_party/closure/goog/dojo/dom/query_test.html +0 -63
  1517. data/closure-library/third_party/closure/goog/dojo/dom/query_test.js +0 -160
  1518. data/closure-library/third_party/closure/goog/jpeg_encoder/jpeg_encoder_basic.js +0 -751
  1519. data/closure-library/third_party/closure/goog/loremipsum/text/loremipsum.js +0 -712
  1520. data/closure-library/third_party/closure/goog/loremipsum/text/loremipsum_test.html +0 -61
  1521. data/closure-library/third_party/closure/goog/mochikit/async/deferred.js +0 -530
  1522. data/closure-library/third_party/closure/goog/mochikit/async/deferred_test.html +0 -627
  1523. data/closure-library/third_party/closure/goog/mochikit/async/deferredlist.js +0 -199
  1524. data/closure-library/third_party/closure/goog/mochikit/async/deferredlist_test.html +0 -426
  1525. data/closure-library/third_party/closure/goog/osapi/osapi.js +0 -91
  1526. data/closure-library/third_party/closure/goog/silverlight/AppManifest.xml +0 -6
  1527. data/closure-library/third_party/closure/goog/silverlight/AssemblyInfo.cs +0 -35
  1528. data/closure-library/third_party/closure/goog/silverlight/ClipboardButton.xaml +0 -9
  1529. data/closure-library/third_party/closure/goog/silverlight/ClipboardButton.xaml.cs +0 -74
  1530. data/closure-library/third_party/closure/goog/silverlight/ClipboardButtonApp.xaml +0 -8
  1531. data/closure-library/third_party/closure/goog/silverlight/ClipboardButtonApp.xaml.cs +0 -75
  1532. data/closure-library/third_party/closure/goog/silverlight/ClosureClipboardButton.csproj +0 -108
  1533. data/closure-library/third_party/closure/goog/silverlight/ClosureClipboardButton.csproj.user +0 -29
  1534. data/closure-library/third_party/closure/goog/silverlight/clipboardbutton.js +0 -279
  1535. data/closure-library/third_party/closure/goog/silverlight/silverlight.js +0 -758
  1536. data/closure-library/third_party/closure/goog/silverlight/supporteduseragent.js +0 -138
  1537. data/closure-library/third_party/closure/goog/silverlight/xap_files +0 -0
  1538. data/closure.gemspec +0 -19
  1539. data/config.ru +0 -40
  1540. data/java_src/ClosureScript.java +0 -89
  1541. data/java_src/make.rb +0 -19
  1542. data/lib/closure/sass.rb +0 -56
  1543. data/lib/closure.jar +0 -0
  1544. data/scripts/demos/compiler.build +0 -1
  1545. data/scripts/demos/compiler.debug +0 -24
  1546. data/scripts/demos/compiler.js.erb +0 -22
  1547. data/scripts/demos/compiler.map +0 -114
  1548. data/scripts/demos/deps.js.erb +0 -1
  1549. data/scripts/demos/googly.erb +0 -19
  1550. data/scripts/demos/googly.js +0 -24
  1551. data/scripts/demos/helloworld.erb +0 -24
  1552. data/scripts/demos/helloworld.js +0 -58
  1553. data/scripts/demos/helloworld.soy +0 -45
  1554. data/scripts/demos/index.erb +0 -29
  1555. data/scripts/externs/jquery.externs +0 -4
  1556. data/scripts/fixtures/_partial.haml +0 -2
  1557. data/scripts/fixtures/erb.html.erb +0 -8
  1558. data/scripts/fixtures/haml.haml +0 -6
  1559. data/scripts/fixtures/html.html +0 -9
  1560. data/scripts/fixtures/route_js.js.erb +0 -1
  1561. data/test/beanshell_test.rb +0 -22
  1562. data/test/server_test.rb +0 -67
  1563. data/test/sources_test.rb +0 -41
  1564. data/test/test_helper.rb +0 -12
  1565. /data/{scripts/externs → externs}/jquery-ui.externs +0 -0
  1566. /data/scripts/{demos/jquery.js → jquery/jquery_1.4.4.js} +0 -0
@@ -1,1171 +0,0 @@
1
- <!DOCTYPE html>
2
-
3
- <!--
4
- All Rights Reserved.
5
- -->
6
-
7
- <html>
8
- <!--
9
- Copyright 2008 The Closure Library Authors. All Rights Reserved.
10
-
11
- Use of this source code is governed by the Apache License, Version 2.0.
12
- See the COPYING file for details.
13
- -->
14
- <head>
15
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
16
- <title>goog.editor.plugins.BasicTextFormatter Tests</title>
17
- <script type="text/javascript" src="../../base.js"></script>
18
- <script type="text/javascript">
19
- goog.require('goog.array');
20
- goog.require('goog.dom');
21
- goog.require('goog.dom.Range');
22
- goog.require('goog.editor.plugins.BasicTextFormatter');
23
- goog.require('goog.object');
24
- goog.require('goog.testing.ExpectedFailures');
25
- goog.require('goog.testing.PropertyReplacer');
26
- goog.require('goog.testing.editor.FieldMock');
27
- goog.require('goog.testing.editor.TestHelper');
28
- goog.require('goog.testing.jsunit');
29
- goog.require('goog.userAgent');
30
- </script>
31
- </head>
32
- <body style="font-size:16px">
33
- <!-- This has to be created here so it is loaded when we need it -->
34
- <iframe id="iframe"></iframe>
35
-
36
- <div id="html">
37
- <ul id="outerUL" type="1">
38
- <li>foo</li>
39
- <ul id="innerUL">
40
- <li>foo</li>
41
- <li>bar</li>
42
- <li>baz</li>
43
- </ul>
44
- <li>bar</li>
45
- <li>baz</li>
46
- </ul>
47
- ...
48
- <ul id="outerUL2">
49
- <li>foo</li>
50
- <ul>
51
- <li>foo</li>
52
- <li>bar</li>
53
- <li>baz</li>
54
- </ul>
55
- <ul>
56
- <li>foo</li>
57
- <li>bar</li>
58
- <li>baz</li>
59
- </ul>
60
- <li>bar</li>
61
- <li>baz</li>
62
- </ul>
63
-
64
- <ol id="ol">
65
- <li>foo</li>
66
- <li>bar</li>
67
- <li>baz</li>
68
- </ol>
69
-
70
- <p>before <span id="toQuote">Foo. Bar, baz.</span> after</p>
71
- <p>before <div id="toQuote2">Foo.<p/>Bar,<p/>baz.</div> after</p>
72
-
73
- <div id="divQuote"><div>lorem</div><div>ipsum</div><div>dolor</div></div>
74
-
75
- <p id="geckolist"><font face="courier">test</font></p>
76
-
77
- <table>
78
- <tr> <th> head1</th>
79
- <th id= "outerTh"><span id="emptyTh">head2</span></th> </tr>
80
- <tr> <td> one </td> <td>two </td> </tr>
81
- <tr>
82
- <td> three</td>
83
- <td id="outerTd"> <span id="emptyTd"><strong>four</strong></span></td>
84
- </tr>
85
- <tr id="outerTr"> <td><span id="emptyTr"> five </span></td></tr>
86
- </table>
87
-
88
- <div id="linkwrapper">Foo<span id="link">Pre<a href="http://www.google.com">Outside Span<span style="font-size:15pt">Inside Span</span></a></span></div>
89
- </div>
90
-
91
- <div id="root"></div>
92
-
93
- <div id="real-field"></div>
94
-
95
- <script type="text/javascript">
96
- var stubs = new goog.testing.PropertyReplacer();
97
-
98
- var SAVED_HTML = goog.dom.getElement('html').innerHTML;
99
- var FIELDMOCK;
100
- var FORMATTER;
101
- var ROOT = goog.dom.getElement('root');
102
- var HELPER;
103
- var OPEN_SUB = goog.userAgent.WEBKIT && !goog.userAgent.isVersion('530') ?
104
- '<span class="Apple-style-span" style="vertical-align: sub;">' :
105
- '<sub>';
106
- var CLOSE_SUB = goog.userAgent.WEBKIT && !goog.userAgent.isVersion('530') ?
107
- '</span>' : '</sub>';
108
- var OPEN_SUPER = goog.userAgent.WEBKIT && !goog.userAgent.isVersion('530') ?
109
- '<span class="Apple-style-span" style="vertical-align: super;">' :
110
- '<sup>';
111
- var CLOSE_SUPER = goog.userAgent.WEBKIT && !goog.userAgent.isVersion('530') ?
112
- '</span>' : '</sup>';
113
- var MOCK_BLOCKQUOTE_STYLE = 'border-left: 1px solid gray;';
114
- var MOCK_GET_BLOCKQUOTE_STYLES = function() {
115
- return MOCK_BLOCKQUOTE_STYLE;
116
- };
117
-
118
- var REAL_FIELD;
119
- var REAL_PLUGIN;
120
-
121
- var expectedFailures = new goog.testing.ExpectedFailures();
122
-
123
- function setUp() {
124
- FIELDMOCK = new goog.testing.editor.FieldMock();
125
-
126
- FORMATTER = new goog.editor.plugins.BasicTextFormatter();
127
- FORMATTER.fieldObject = FIELDMOCK;
128
- }
129
-
130
- function setUpRealField() {
131
- REAL_FIELD = new goog.editor.Field('real-field');
132
- REAL_PLUGIN = new goog.editor.plugins.BasicTextFormatter();
133
- REAL_FIELD.registerPlugin(REAL_PLUGIN);
134
- REAL_FIELD.makeEditable();
135
- }
136
-
137
- function setUpRealFieldIframe() {
138
- REAL_FIELD = new goog.editor.Field('iframe');
139
- FORMATTER = new goog.editor.plugins.BasicTextFormatter();
140
- REAL_FIELD.registerPlugin(FORMATTER);
141
- REAL_FIELD.makeEditable();
142
- }
143
-
144
- function selectRealField() {
145
- goog.dom.Range.createFromNodeContents(REAL_FIELD.getElement()).select();
146
- REAL_FIELD.dispatchSelectionChangeEvent();
147
- }
148
-
149
- function tearDown() {
150
- tearDownFontSizeTests();
151
-
152
- if (REAL_FIELD) {
153
- REAL_FIELD.makeUneditable();
154
- REAL_FIELD.dispose();
155
- REAL_FIELD = null;
156
- }
157
-
158
- expectedFailures.handleTearDown();
159
- stubs.reset();
160
-
161
- goog.dom.getElement('html').innerHTML = SAVED_HTML;
162
- }
163
-
164
- function setUpListAndBlockquoteTests() {
165
- var htmlDiv = document.getElementById('html');
166
- HELPER = new goog.testing.editor.TestHelper(htmlDiv);
167
- HELPER.setUpEditableElement();
168
-
169
- FIELDMOCK.getElement();
170
- FIELDMOCK.$anyTimes();
171
- FIELDMOCK.$returns(htmlDiv);
172
- }
173
-
174
- function tearDownHelper() {
175
- HELPER.tearDownEditableElement();
176
- HELPER.dispose();
177
- HELPER = null;
178
- }
179
-
180
- function tearDownListAndBlockquoteTests() {
181
- tearDownHelper();
182
- }
183
-
184
- function testIEList() {
185
- if (goog.userAgent.IE) {
186
- setUpListAndBlockquoteTests();
187
-
188
- FIELDMOCK.queryCommandValue('rtl').$returns(null);
189
-
190
- FIELDMOCK.$replay();
191
- var ul = goog.dom.getElement('outerUL');
192
- goog.dom.Range.createFromNodeContents(ul.firstChild.firstChild).select();
193
- FORMATTER.fixIELists_();
194
- assertFalse('Unordered list must not have ordered type', ul.type == '1');
195
- var ol = goog.dom.getElement('ol');
196
- ol.type = 'disc';
197
- goog.dom.Range.createFromNodeContents(ol.firstChild.firstChild).select();
198
- FORMATTER.fixIELists_();
199
- assertFalse('Ordered list must not have unordered type',
200
- ol.type == 'disc');
201
- ol.type = '1';
202
- goog.dom.Range.createFromNodeContents(ol.firstChild.firstChild).select();
203
- FORMATTER.fixIELists_();
204
- assertTrue('Ordered list must retain ordered list type',
205
- ol.type == '1');
206
- tearDownListAndBlockquoteTests();
207
- }
208
- }
209
-
210
- function testWebKitList() {
211
- if (goog.userAgent.WEBKIT) {
212
- setUpListAndBlockquoteTests();
213
-
214
- FIELDMOCK.queryCommandValue('rtl').$returns(null);
215
-
216
- FIELDMOCK.$replay();
217
- var ul = document.getElementById('outerUL');
218
- var html = ul.innerHTML;
219
- goog.dom.Range.createFromNodeContents(ul).select();
220
-
221
- FORMATTER.fixSafariLists_();
222
- assertEquals('Contents of UL shouldn\'t change',
223
- html, ul.innerHTML);
224
-
225
- ul = document.getElementById('outerUL2');
226
- goog.dom.Range.createFromNodeContents(ul).select();
227
-
228
- FORMATTER.fixSafariLists_();
229
- var childULs = ul.getElementsByTagName('ul');
230
- assertEquals('UL should have one child UL',
231
- 1, childULs.length);
232
- tearDownListAndBlockquoteTests();
233
- }
234
- }
235
-
236
- function testGeckoListFont() {
237
- if (goog.userAgent.GECKO) {
238
- setUpListAndBlockquoteTests();
239
- FIELDMOCK.queryCommandValue(
240
- goog.editor.Command.DEFAULT_TAG).$returns('BR').$times(2);
241
-
242
- FIELDMOCK.$replay();
243
- var p = goog.dom.getElement('geckolist');
244
- var font = p.firstChild;
245
- goog.dom.Range.createFromNodeContents(font).select();
246
- retVal = FORMATTER.beforeInsertListGecko_();
247
- assertFalse('Workaround shouldn\'t be applied when not needed', retVal);
248
-
249
- font.innerHTML = '';
250
- goog.dom.Range.createFromNodeContents(font).select();
251
- var retVal = FORMATTER.beforeInsertListGecko_();
252
- assertTrue('Workaround should be applied when needed', retVal);
253
- document.execCommand('insertorderedlist', false, true);
254
- assertTrue('Font should be Courier',
255
- /courier/i.test(document.queryCommandValue('fontname')));
256
- tearDownListAndBlockquoteTests();
257
- }
258
- }
259
-
260
- function setUpSubSuperTests() {
261
- ROOT.innerHTML = '12345';
262
- HELPER = new goog.testing.editor.TestHelper(ROOT);
263
- HELPER.setUpEditableElement();
264
- }
265
-
266
- function tearDownSubSuperTests() {
267
- tearDownHelper();
268
- }
269
-
270
- function testSubscriptRemovesSuperscript() {
271
- setUpSubSuperTests();
272
- FIELDMOCK.$replay();
273
-
274
- HELPER.select('12345', 1, '12345', 4); // Selects '234'.
275
- FORMATTER.execCommandInternal(
276
- goog.editor.plugins.BasicTextFormatter.COMMAND.SUPERSCRIPT);
277
- HELPER.assertHtmlMatches('1'+OPEN_SUPER+'234'+CLOSE_SUPER+'5');
278
- FORMATTER.execCommandInternal(
279
- goog.editor.plugins.BasicTextFormatter.COMMAND.SUBSCRIPT);
280
- HELPER.assertHtmlMatches('1'+OPEN_SUB+'234'+CLOSE_SUB+'5');
281
-
282
- FIELDMOCK.$verify();
283
- tearDownSubSuperTests();
284
- }
285
-
286
- function testSuperscriptRemovesSubscript() {
287
- setUpSubSuperTests();
288
- FIELDMOCK.$replay();
289
-
290
- HELPER.select('12345', 1, '12345', 4); // Selects '234'.
291
- FORMATTER.execCommandInternal(
292
- goog.editor.plugins.BasicTextFormatter.COMMAND.SUBSCRIPT);
293
- HELPER.assertHtmlMatches('1'+OPEN_SUB+'234'+CLOSE_SUB+'5');
294
- FORMATTER.execCommandInternal(
295
- goog.editor.plugins.BasicTextFormatter.COMMAND.SUPERSCRIPT);
296
- HELPER.assertHtmlMatches('1'+OPEN_SUPER+'234'+CLOSE_SUPER+'5');
297
-
298
- FIELDMOCK.$verify();
299
- tearDownSubSuperTests();
300
- }
301
-
302
- function testSubscriptRemovesSuperscriptIntersecting() {
303
- // Tests: 12345 , sup(23) , sub(34) ==> 1+sup(2)+sub(34)+5
304
- // This is more complex because the sub and sup calls are made on separate
305
- // fields which intersect each other and queryCommandValue seems to return
306
- // false if the command is only applied to part of the field.
307
- setUpSubSuperTests();
308
- FIELDMOCK.$replay();
309
-
310
- HELPER.select('12345', 1, '12345', 3); // Selects '23'.
311
- FORMATTER.execCommandInternal(
312
- goog.editor.plugins.BasicTextFormatter.COMMAND.SUPERSCRIPT);
313
- HELPER.assertHtmlMatches('1'+OPEN_SUPER+'23'+CLOSE_SUPER+'45');
314
- HELPER.select('23', 1, '45', 1); // Selects '34'.
315
- FORMATTER.execCommandInternal(
316
- goog.editor.plugins.BasicTextFormatter.COMMAND.SUBSCRIPT);
317
- HELPER.assertHtmlMatches('1'+OPEN_SUPER+'2'+CLOSE_SUPER
318
- +OPEN_SUB+'34'+CLOSE_SUB+'5');
319
-
320
- FIELDMOCK.$verify();
321
- tearDownSubSuperTests();
322
- }
323
-
324
- function testSuperscriptRemovesSubscriptIntersecting() {
325
- // Tests: 12345 , sub(23) , sup(34) ==> 1+sub(2)+sup(34)+5
326
- setUpSubSuperTests();
327
- FIELDMOCK.$replay();
328
-
329
- HELPER.select('12345', 1, '12345', 3); // Selects '23'.
330
- FORMATTER.execCommandInternal(
331
- goog.editor.plugins.BasicTextFormatter.COMMAND.SUBSCRIPT);
332
- HELPER.assertHtmlMatches('1'+OPEN_SUB+'23'+CLOSE_SUB+'45');
333
- HELPER.select('23', 1, '45', 1); // Selects '34'.
334
- FORMATTER.execCommandInternal(
335
- goog.editor.plugins.BasicTextFormatter.COMMAND.SUPERSCRIPT);
336
- HELPER.assertHtmlMatches('1'+OPEN_SUB+'2'+CLOSE_SUB
337
- +OPEN_SUPER+'34'+CLOSE_SUPER+'5');
338
-
339
- FIELDMOCK.$verify();
340
- tearDownSubSuperTests();
341
- }
342
-
343
- function setUpLinkTests(url) {
344
- stubs.set(window, 'prompt', function() {
345
- return url;
346
- });
347
-
348
- ROOT.innerHTML = '12345';
349
- HELPER = new goog.testing.editor.TestHelper(ROOT);
350
- HELPER.setUpEditableElement();
351
-
352
- FIELDMOCK.getElement().$anyTimes().$returns(ROOT);
353
-
354
- FIELDMOCK.execCommand(goog.editor.Command.MODAL_LINK_EDITOR,
355
- goog.testing.mockmatchers.isObject).$returns(undefined);
356
- FIELDMOCK.setModalMode(true);
357
-
358
- FIELDMOCK.isSelectionEditable().$anyTimes().$returns(true);
359
-
360
- FORMATTER.focusField_ = function() {
361
- throw 'Field should not be re-focused';
362
- }
363
- }
364
-
365
- function tearDownLinkTests() {
366
- tearDownHelper();
367
- }
368
-
369
- function testLink() {
370
- setUpLinkTests('http://www.x.com/');
371
- FIELDMOCK.$replay();
372
-
373
- HELPER.select('12345', 3);
374
- FORMATTER.execCommandInternal(goog.editor.Command.LINK);
375
- HELPER.assertHtmlMatches(
376
- goog.editor.BrowserFeature.GETS_STUCK_IN_LINKS ?
377
- '123<a href="http://www.x.com/">http://www.x.com/</a>&nbsp;45' :
378
- '123<a href="http://www.x.com/">http://www.x.com/</a>45');
379
-
380
- FIELDMOCK.$verify();
381
- tearDownLinkTests();
382
- }
383
-
384
- function testSelectedLink() {
385
- setUpLinkTests('http://www.x.com/');
386
- FIELDMOCK.$replay();
387
-
388
- HELPER.select('12345', 1, '12345', 4);
389
- FORMATTER.execCommandInternal(goog.editor.Command.LINK);
390
- HELPER.assertHtmlMatches(
391
- goog.editor.BrowserFeature.GETS_STUCK_IN_LINKS ?
392
- '1<a href="http://www.x.com/">234</a>&nbsp;5' :
393
- '1<a href="http://www.x.com/">234</a>5');
394
-
395
- FIELDMOCK.$verify();
396
- tearDownLinkTests();
397
- }
398
-
399
- function testCanceledLink() {
400
- setUpLinkTests(undefined);
401
- FIELDMOCK.$replay();
402
-
403
- HELPER.select('12345', 1, '12345', 4);
404
- FORMATTER.execCommandInternal(goog.editor.Command.LINK);
405
- HELPER.assertHtmlMatches('12345');
406
-
407
- assertEquals('234', FIELDMOCK.getRange().getText());
408
-
409
- FIELDMOCK.$verify();
410
- tearDownLinkTests();
411
- }
412
-
413
- function setUpJustifyTests(html) {
414
- ROOT.innerHTML = html;
415
- HELPER = new goog.testing.editor.TestHelper(ROOT);
416
- HELPER.setUpEditableElement(ROOT);
417
-
418
- FIELDMOCK.getElement();
419
- FIELDMOCK.$anyTimes();
420
- FIELDMOCK.$returns(ROOT);
421
-
422
- FIELDMOCK.getElement();
423
- FIELDMOCK.$anyTimes();
424
- FIELDMOCK.$returns(ROOT);
425
- }
426
-
427
- function tearDownJustifyTests() {
428
- tearDownHelper();
429
- }
430
-
431
- function testJustify() {
432
- setUpJustifyTests('<div>abc</div><p>def</p><div>ghi</div>');
433
- FIELDMOCK.$replay();
434
-
435
- HELPER.select('abc', 1, 'def', 1); // Selects 'bcd'.
436
- FORMATTER.execCommandInternal(
437
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_CENTER);
438
- HELPER.assertHtmlMatches(
439
- '<div style="text-align: center">abc</div>' +
440
- '<p style="text-align: center">def</p>' +
441
- '<div>ghi</div>');
442
-
443
- FIELDMOCK.$verify();
444
- tearDownJustifyTests();
445
- }
446
-
447
- function testJustifyInInline() {
448
- setUpJustifyTests('<div>a<i>b</i>c</div><div>d</div>');
449
- FIELDMOCK.$replay();
450
-
451
- HELPER.select('b', 0, 'b', 1); // Selects 'b'.
452
- FORMATTER.execCommandInternal(
453
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_CENTER);
454
- HELPER.assertHtmlMatches(
455
- '<div style="text-align: center">a<i>b</i>c</div><div>d</div>');
456
-
457
- FIELDMOCK.$verify();
458
- tearDownJustifyTests();
459
- }
460
-
461
- function testJustifyInBlock() {
462
- setUpJustifyTests('<div>a<div>b</div>c</div>');
463
- FIELDMOCK.$replay();
464
-
465
- HELPER.select('b', 0, 'b', 1); // Selects 'h'.
466
- FORMATTER.execCommandInternal(
467
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_CENTER);
468
- HELPER.assertHtmlMatches(
469
- '<div>a<div style="text-align: center">b</div>c</div>');
470
-
471
- FIELDMOCK.$verify();
472
- tearDownJustifyTests();
473
- }
474
-
475
- var isFontSizeTest = false;
476
- var defaultFontSizeMap;
477
-
478
- function setUpFontSizeTests() {
479
- isFontSizeTest = true;
480
- ROOT.innerHTML = '1<span style="font-size:2px">23</span>4' +
481
- '<span style="font-size:5px; white-space:pre">56</span>7';
482
- HELPER = new goog.testing.editor.TestHelper(ROOT);
483
- HELPER.setUpEditableElement();
484
- FIELDMOCK.getElement().$returns(ROOT).$anyTimes();
485
-
486
- // Map representing the sizes of the text in the HTML snippet used in these
487
- // tests. The key is the exact text content of each text node, and the value
488
- // is the initial size of the font in pixels. Since tests may cause a text
489
- // node to be split in two, this also contains keys that initially don't
490
- // match any text node, but may match one later if an existing node is
491
- // split. The value for these keys is null, signifying no text node should
492
- // exist with that content.
493
- defaultFontSizeMap = {
494
- '1': 16,
495
- '2': null,
496
- '23': 2,
497
- '3': null,
498
- '4': 16,
499
- '5': null,
500
- '56': 5,
501
- '6': null,
502
- '7': 16
503
- };
504
- assertFontSizes('Assertion failed on default font sizes!', {});
505
- }
506
-
507
- function tearDownFontSizeTests() {
508
- if (isFontSizeTest) {
509
- tearDownHelper();
510
- isFontSizeTest = false;
511
- }
512
- }
513
-
514
- /**
515
- * Asserts that the text nodes set up by setUpFontSizeTests() have had their
516
- * font sizes changed as described by sizeChangesMap.
517
- * @param {string} msg Assertion error message.
518
- * @param {Object.<string, number|null>} sizeChangesMap Maps the text content
519
- * of a text node to be measured to its expected font size in pixels, or
520
- * null if that text node should not be present in the document (i.e.
521
- * because it was split into two). Only the text nodes that have changed
522
- * from their default need to be specified.
523
- */
524
- function assertFontSizes(msg, sizeChangesMap) {
525
- goog.object.extend(defaultFontSizeMap, sizeChangesMap);
526
- for (var k in defaultFontSizeMap) {
527
- var node = HELPER.findTextNode(k);
528
- var expected = defaultFontSizeMap[k];
529
- if (expected) {
530
- assertNotNull(msg + ' [couldn\'t find text node "' + k + '"]', node);
531
- assertEquals(msg + ' [incorrect font size for "' + k + '"]',
532
- expected, goog.style.getFontSize(node.parentNode));
533
- } else {
534
- assertNull(msg + ' [unexpected text node "' + k + '"]', node);
535
- }
536
- }
537
- }
538
-
539
- /**
540
- * Regression test for {@bug 1286408}. Tests that when you change the font
541
- * size of a selection, any font size styles that were nested inside are
542
- * removed.
543
- */
544
- function testFontSizeOverridesStyleAttr() {
545
- setUpFontSizeTests();
546
- FIELDMOCK.$replay();
547
-
548
- HELPER.select('1', 0, '4', 1); // Selects 1234.
549
- FORMATTER.execCommandInternal(
550
- goog.editor.plugins.BasicTextFormatter.COMMAND.FONT_SIZE, 6);
551
-
552
- assertFontSizes('New font size should override existing font size',
553
- {'1': 32, '23': 32, '4': 32});
554
-
555
- if (goog.editor.BrowserFeature.DOESNT_OVERRIDE_FONT_SIZE_IN_STYLE_ATTR) {
556
- var span = HELPER.findTextNode('23').parentNode;
557
- assertFalse('Style attribute should be gone',
558
- span.getAttributeNode('style') != null &&
559
- span.getAttributeNode('style').specified);
560
- }
561
-
562
- FIELDMOCK.$verify();
563
- }
564
-
565
- /**
566
- * Make sure the style stripping works when the selection starts and stops in
567
- * different nodes that both contain font size styles.
568
- */
569
- function testFontSizeOverridesStyleAttrMultiNode() {
570
- setUpFontSizeTests();
571
- FIELDMOCK.$replay();
572
-
573
- HELPER.select('23', 0, '56', 2); // Selects 23456.
574
- FORMATTER.execCommandInternal(
575
- goog.editor.plugins.BasicTextFormatter.COMMAND.FONT_SIZE, 6);
576
- var span = HELPER.findTextNode('23').parentNode;
577
- var span2 = HELPER.findTextNode('56').parentNode;
578
-
579
- assertFontSizes(
580
- 'New font size should override existing font size in all spans',
581
- {'23': 32, '4': 32, '56': 32});
582
- var whiteSpace = goog.userAgent.IE ?
583
- goog.style.getCascadedStyle(span2, 'whiteSpace') :
584
- goog.style.getComputedStyle(span2, 'whiteSpace');
585
- assertEquals('Whitespace style in last span should have been left',
586
- 'pre', whiteSpace);
587
-
588
- if (goog.editor.BrowserFeature.DOESNT_OVERRIDE_FONT_SIZE_IN_STYLE_ATTR) {
589
- assertFalse('Style attribute should be gone from first span',
590
- span.getAttributeNode('style') != null &&
591
- span.getAttributeNode('style').specified);
592
- assertTrue('Style attribute should not be gone from last span',
593
- span2.getAttributeNode('style') != null &&
594
- span2.getAttributeNode('style').specified);
595
- }
596
-
597
- FIELDMOCK.$verify();
598
- }
599
-
600
- /**
601
- * Makes sure the font size style is not removed when only a part of the
602
- * element with font size style is selected during the font size command.
603
- */
604
- function testFontSizeDoesntOverrideStyleAttr() {
605
- setUpFontSizeTests();
606
- FIELDMOCK.$replay();
607
-
608
- HELPER.select('23', 1, '4', 1); // Selects 34 (half of span with font size).
609
- FORMATTER.execCommandInternal(
610
- goog.editor.plugins.BasicTextFormatter.COMMAND.FONT_SIZE, 6);
611
-
612
- assertFontSizes(
613
- 'New font size shouldn\'t override existing font size before selection',
614
- {'2': 2, '23': null, '3': 32, '4': 32});
615
-
616
- FIELDMOCK.$verify();
617
- }
618
-
619
- /**
620
- * Makes sure the font size style is not removed when only a part of the
621
- * element with font size style is selected during the font size command, but
622
- * is removed for another element that is fully selected.
623
- */
624
- function testFontSizeDoesntOverrideStyleAttrMultiNode() {
625
- setUpFontSizeTests();
626
- FIELDMOCK.$replay();
627
-
628
- HELPER.select('23', 1, '56', 2); // Selects 3456.
629
- FORMATTER.execCommandInternal(
630
- goog.editor.plugins.BasicTextFormatter.COMMAND.FONT_SIZE, 6);
631
-
632
- assertFontSizes(
633
- 'New font size shouldn\'t override existing font size before ' +
634
- 'selection, but still override existing font size in last span',
635
- {'2': 2, '23': null, '3': 32, '4': 32, '56': 32});
636
-
637
- FIELDMOCK.$verify();
638
- }
639
-
640
- /**
641
- * Helper to make sure the precondition that executing the font size command
642
- * wraps the content in font tags instead of modifying the style attribute is
643
- * maintained by the browser even if the selection is already text that is
644
- * wrapped in a tag with a font size style. We test this with several
645
- * permutations of how the selection looks: selecting the text in the text
646
- * node, selecting the whole text node as a unit, or selecting the whole span
647
- * node as a unit. Sometimes the browser wraps the text node with the font
648
- * tag, sometimes it wraps the span with the font tag. Either one is ok as
649
- * long as a font tag is actually being used instead of just modifying the
650
- * span's style, because our fix for {@bug 1286408} would remove that style.
651
- * @param {function} doSelect Function to select the "23" text in the test
652
- * content.
653
- */
654
- function doTestFontSizeStyledSpan(doSelect) {
655
- // Make sure no new browsers start getting this bad behavior. If they do,
656
- // this test will unexpectedly pass.
657
- expectedFailures.expectFailureFor(
658
- !goog.editor.BrowserFeature.DOESNT_OVERRIDE_FONT_SIZE_IN_STYLE_ATTR);
659
-
660
- try {
661
- setUpFontSizeTests();
662
- FIELDMOCK.$replay();
663
-
664
- doSelect();
665
- FORMATTER.execCommandInternal(
666
- goog.editor.plugins.BasicTextFormatter.COMMAND.FONT_SIZE, 7);
667
- var parentNode = HELPER.findTextNode('23').parentNode;
668
- var grandparentNode = parentNode.parentNode;
669
- var fontNode = goog.dom.getElementsByTagNameAndClass(goog.dom.TagName.FONT,
670
- undefined, ROOT)[0];
671
- var spanNode = goog.dom.getElementsByTagNameAndClass(goog.dom.TagName.SPAN,
672
- undefined, ROOT)[0];
673
- assertTrue('A font tag should have been added either outside or inside' +
674
- ' the existing span',
675
- parentNode == spanNode && grandparentNode == fontNode ||
676
- parentNode == fontNode && grandparentNode == spanNode);
677
-
678
- FIELDMOCK.$verify();
679
- } catch (e) {
680
- expectedFailures.handleException(e);
681
- }
682
- }
683
-
684
- function testFontSizeStyledSpanSelectingText() {
685
- doTestFontSizeStyledSpan(function() {
686
- HELPER.select('23', 0, '23', 2);
687
- });
688
- }
689
-
690
- function testFontSizeStyledSpanSelectingTextNode() {
691
- doTestFontSizeStyledSpan(function() {
692
- var textNode = HELPER.findTextNode('23');
693
- HELPER.select(textNode.parentNode, 0, textNode.parentNode, 1);
694
- });
695
- }
696
-
697
- function testFontSizeStyledSpanSelectingSpanNode() {
698
- doTestFontSizeStyledSpan(function() {
699
- var spanNode = HELPER.findTextNode('23').parentNode;
700
- HELPER.select(spanNode.parentNode, 1, spanNode.parentNode, 2);
701
- });
702
- }
703
-
704
- function setUpIframeField(content) {
705
- var ifr = document.getElementById('iframe');
706
- var body = ifr.contentWindow.document.body;
707
- body.innerHTML = content;
708
-
709
- HELPER = new goog.testing.editor.TestHelper(body);
710
- HELPER.setUpEditableElement();
711
- FIELDMOCK = new goog.testing.editor.FieldMock(ifr.contentWindow);
712
- FIELDMOCK.getElement();
713
- FIELDMOCK.$anyTimes();
714
- FIELDMOCK.$returns(body);
715
- FIELDMOCK.queryCommandValue('rtl');
716
- FIELDMOCK.$anyTimes();
717
- FIELDMOCK.$returns(null);
718
- FORMATTER.fieldObject = FIELDMOCK;
719
- }
720
-
721
- function tearDownIframeField() {
722
- tearDownHelper();
723
- }
724
-
725
- function setUpConvertBreaksToDivTests() {
726
- ROOT.innerHTML = '<p>paragraph</p>one<br id="br1">two<br><br><br>three';
727
- HELPER = new goog.testing.editor.TestHelper(ROOT);
728
- HELPER.setUpEditableElement();
729
-
730
- FIELDMOCK.getElement();
731
- FIELDMOCK.$anyTimes();
732
- FIELDMOCK.$returns(ROOT);
733
- }
734
-
735
- function tearDownConvertBreaksToDivTests() {
736
- tearDownHelper();
737
- }
738
-
739
- /** @bug 1414941 */
740
- function testConvertBreaksToDivsKeepsP() {
741
- if (goog.editor.BrowserFeature.CAN_LISTIFY_BR) {
742
- return;
743
- }
744
- setUpConvertBreaksToDivTests();
745
- FIELDMOCK.$replay();
746
-
747
- HELPER.select('three', 0);
748
- FORMATTER.convertBreaksToDivs_();
749
- assertEquals('There should still be a <p> tag',
750
- 1, FIELDMOCK.getElement().getElementsByTagName('p').length);
751
- var html = FIELDMOCK.getElement().innerHTML.toLowerCase();
752
- assertNotBadBrElements(html);
753
- assertNotContains('There should not be empty <div> elements',
754
- '<div><\/div>', html);
755
-
756
- FIELDMOCK.$verify();
757
- tearDownConvertBreaksToDivTests();
758
- }
759
-
760
- /**
761
- * @bug 1414937
762
- * @bug 934535
763
- */
764
- function testConvertBreaksToDivsDoesntCollapseBR() {
765
- if (goog.editor.BrowserFeature.CAN_LISTIFY_BR) {
766
- return;
767
- }
768
- setUpConvertBreaksToDivTests();
769
- FIELDMOCK.$replay();
770
-
771
- HELPER.select('three', 0);
772
- FORMATTER.convertBreaksToDivs_();
773
- var html = FIELDMOCK.getElement().innerHTML.toLowerCase();
774
- assertNotBadBrElements(html);
775
- assertNotContains('There should not be empty <div> elements',
776
- '<div><\/div>', html);
777
- if (goog.userAgent.IE) {
778
- // <div><br></div> misbehaves in IE
779
- assertNotContains(
780
- '<br> should not be used to prevent <div> from collapsing',
781
- '<div><br><\/div>', html);
782
- }
783
-
784
- FIELDMOCK.$verify();
785
- tearDownConvertBreaksToDivTests();
786
- }
787
-
788
- function testConvertBreaksToDivsSelection() {
789
- if (goog.editor.BrowserFeature.CAN_LISTIFY_BR) {
790
- return;
791
- }
792
- setUpConvertBreaksToDivTests();
793
- FIELDMOCK.$replay();
794
-
795
- HELPER.select('two', 1, 'three', 3);
796
- var before = FIELDMOCK.getRange().getText().replace(/\s/g, '');
797
- FORMATTER.convertBreaksToDivs_();
798
- assertEquals('Selection must not be changed',
799
- before, FIELDMOCK.getRange().getText().replace(/\s/g, ''));
800
-
801
- FIELDMOCK.$verify();
802
- tearDownConvertBreaksToDivTests();
803
- }
804
-
805
- /** @bug 1414937 */
806
- function testConvertBreaksToDivsInsertList() {
807
- setUpConvertBreaksToDivTests();
808
- FIELDMOCK.$replay();
809
-
810
- HELPER.select('three', 0);
811
- FORMATTER.execCommandInternal('insertorderedlist');
812
- assertTrue('Ordered list must be inserted',
813
- FIELDMOCK.getEditableDomHelper().getDocument().queryCommandState(
814
- 'insertorderedlist'));
815
- tearDownConvertBreaksToDivTests();
816
- }
817
-
818
- /**
819
- * Regression test for {@bug 1939883}, where if a br has an id, it causes
820
- * the convert br code to throw a js error. This goes a step further and
821
- * ensures that the id is preserved in the resulting div element.
822
- */
823
- function testConvertBreaksToDivsKeepsId() {
824
- if (goog.editor.BrowserFeature.CAN_LISTIFY_BR) {
825
- return;
826
- }
827
- setUpConvertBreaksToDivTests();
828
- FIELDMOCK.$replay();
829
-
830
- HELPER.select('one', 0, 'two', 0);
831
- FORMATTER.convertBreaksToDivs_();
832
- var html = FIELDMOCK.getElement().innerHTML.toLowerCase();
833
- assertNotBadBrElements(html);
834
- var idBr = document.getElementById('br1');
835
- assertNotNull('There should still be a tag with id="br1"', idBr);
836
- assertEquals('The tag with id="br1" should be a <div> now',
837
- goog.dom.TagName.DIV,
838
- idBr.tagName);
839
- assertNull('There should not be any tag with id="temp_br"',
840
- document.getElementById('temp_br'));
841
-
842
- FIELDMOCK.$verify();
843
- tearDownConvertBreaksToDivTests();
844
- }
845
-
846
- /**
847
- * @bug 2420054
848
- */
849
- var JUSTIFICATION_COMMANDS = [
850
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_LEFT,
851
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_RIGHT,
852
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_CENTER,
853
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_FULL
854
- ];
855
- function doTestIsJustification(command) {
856
- setUpRealField();
857
- REAL_FIELD.setHtml(false, 'foo');
858
- selectRealField();
859
- REAL_FIELD.execCommand(command);
860
-
861
- for (var i = 0; i < JUSTIFICATION_COMMANDS.length; i++) {
862
- if (JUSTIFICATION_COMMANDS[i] == command) {
863
- assertTrue('queryCommandValue(' +JUSTIFICATION_COMMANDS[i] +
864
- ') should be true after execCommand(' + command + ')',
865
- REAL_FIELD.queryCommandValue(JUSTIFICATION_COMMANDS[i]));
866
- } else {
867
- assertFalse('queryCommandValue(' +JUSTIFICATION_COMMANDS[i] +
868
- ') should be false after execCommand(' + command + ')',
869
- REAL_FIELD.queryCommandValue(JUSTIFICATION_COMMANDS[i]));
870
- }
871
- }
872
- }
873
- function testIsJustificationLeft() {
874
- doTestIsJustification(
875
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_LEFT);
876
- }
877
- function testIsJustificationRight() {
878
- doTestIsJustification(
879
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_RIGHT);
880
- }
881
- function testIsJustificationCenter() {
882
- doTestIsJustification(
883
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_CENTER);
884
- }
885
- function testIsJustificationFull() {
886
- doTestIsJustification(
887
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_FULL);
888
- }
889
-
890
- /**
891
- * Regression test for {@bug 1414813}, where all 3 justification buttons are
892
- * considered "on" when you first tab into the editable field. In this
893
- * situation, when lorem ipsum is the only node in the editable field iframe
894
- * body, mockField.getRange() returns an empty range.
895
- */
896
- function testIsJustificationEmptySelection() {
897
- var mockField = new goog.testing.LooseMock(goog.editor.Field);
898
-
899
- mockField.getRange();
900
- mockField.$anyTimes();
901
- mockField.$returns(null);
902
- mockField.getPluginByClassId('Bidi');
903
- mockField.$anyTimes();
904
- mockField.$returns(null);
905
- FORMATTER.fieldObject = mockField;
906
-
907
- mockField.$replay();
908
-
909
- assertFalse('Empty selection should not be justified',
910
- FORMATTER.isJustification_(
911
- goog.editor.plugins.BasicTextFormatter.
912
- COMMAND.JUSTIFY_CENTER));
913
- assertFalse('Empty selection should not be justified',
914
- FORMATTER.isJustification_(
915
- goog.editor.plugins.BasicTextFormatter.
916
- COMMAND.JUSTIFY_FULL));
917
- assertFalse('Empty selection should not be justified',
918
- FORMATTER.isJustification_(
919
- goog.editor.plugins.BasicTextFormatter.
920
- COMMAND.JUSTIFY_RIGHT));
921
- assertFalse('Empty selection should not be justified',
922
- FORMATTER.isJustification_(
923
- goog.editor.plugins.BasicTextFormatter.
924
- COMMAND.JUSTIFY_LEFT));
925
-
926
- mockField.$verify();
927
- }
928
-
929
- function testIsJustificationSimple1() {
930
- setUpRealField();
931
- REAL_FIELD.setHtml(false,'<div align="right">foo</div>');
932
- selectRealField();
933
-
934
- assertFalse(REAL_FIELD.queryCommandValue(
935
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_LEFT));
936
- assertTrue(REAL_FIELD.queryCommandValue(
937
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_RIGHT));
938
- }
939
-
940
- function testIsJustificationSimple2() {
941
- setUpRealField();
942
- REAL_FIELD.setHtml(false,'<div style="text-align: right;">foo</div>');
943
- selectRealField();
944
-
945
- assertFalse(REAL_FIELD.queryCommandValue(
946
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_LEFT));
947
- assertTrue(REAL_FIELD.queryCommandValue(
948
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_RIGHT));
949
- }
950
-
951
- function testIsJustificationComplete1() {
952
- setUpRealField();
953
- REAL_FIELD.setHtml(false,
954
- '<div align="left">a</div><div align="right">b</div>');
955
- selectRealField();
956
-
957
- assertFalse(REAL_FIELD.queryCommandValue(
958
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_LEFT));
959
- assertFalse(REAL_FIELD.queryCommandValue(
960
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_RIGHT));
961
- }
962
-
963
- function testIsJustificationComplete2() {
964
- setUpRealField();
965
- REAL_FIELD.setHtml(false,
966
- '<div align="left">a</div><div align="left">b</div>');
967
- selectRealField();
968
-
969
- assertTrue(REAL_FIELD.queryCommandValue(
970
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_LEFT));
971
- assertFalse(REAL_FIELD.queryCommandValue(
972
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_RIGHT));
973
- }
974
-
975
- function testIsJustificationComplete3() {
976
- setUpRealField();
977
- REAL_FIELD.setHtml(false,
978
- '<div align="right">a</div><div align="right">b</div>');
979
- selectRealField();
980
-
981
- assertFalse(REAL_FIELD.queryCommandValue(
982
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_LEFT));
983
- assertTrue(REAL_FIELD.queryCommandValue(
984
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_RIGHT));
985
- }
986
-
987
- function testIsJustificationComplete4() {
988
- setUpRealField();
989
- REAL_FIELD.setHtml(false,
990
- '<div align="right"><div align="left">a</div></div>' +
991
- '<div align="right">b</div>');
992
- selectRealField();
993
-
994
- assertFalse(REAL_FIELD.queryCommandValue(
995
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_LEFT));
996
- assertTrue(REAL_FIELD.queryCommandValue(
997
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_RIGHT));
998
- }
999
-
1000
- function testIsJustificationComplete5() {
1001
- setUpRealField();
1002
- REAL_FIELD.setHtml(false,
1003
- '<div align="right">a</div>b' +
1004
- '<div align="right">c</div>');
1005
- selectRealField();
1006
-
1007
- assertFalse(REAL_FIELD.queryCommandValue(
1008
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_LEFT));
1009
- assertFalse(REAL_FIELD.queryCommandValue(
1010
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_RIGHT));
1011
- }
1012
-
1013
- /** @bug 2472589 */
1014
- function doTestIsJustificationPInDiv(useCss, align, command) {
1015
- setUpRealField();
1016
- var html = '<div ' +
1017
- (useCss ? 'style="text-align:' : 'align="') + align +
1018
- '"><p>foo</p></div>';
1019
- REAL_FIELD.setHtml(false, html);
1020
- selectRealField();
1021
- assertTrue(
1022
- 'P inside ' + align + ' aligned' + (useCss ? ' (using CSS)' : '') +
1023
- ' DIV should be considered ' + align + ' aligned',
1024
- REAL_FIELD.queryCommandValue(command));
1025
- }
1026
- function testIsJustificationPInDivLeft() {
1027
- doTestIsJustificationPInDiv(false, 'left',
1028
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_LEFT);
1029
- }
1030
- function testIsJustificationPInDivRight() {
1031
- doTestIsJustificationPInDiv(false, 'right',
1032
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_RIGHT);
1033
- }
1034
- function testIsJustificationPInDivCenter() {
1035
- doTestIsJustificationPInDiv(false, 'center',
1036
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_CENTER);
1037
- }
1038
- function testIsJustificationPInDivJustify() {
1039
- doTestIsJustificationPInDiv(false, 'justify',
1040
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_FULL);
1041
- }
1042
- function testIsJustificationPInDivLeftCss() {
1043
- doTestIsJustificationPInDiv(true, 'left',
1044
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_LEFT);
1045
- }
1046
- function testIsJustificationPInDivRightCss() {
1047
- doTestIsJustificationPInDiv(true, 'right',
1048
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_RIGHT);
1049
- }
1050
- function testIsJustificationPInDivCenterCss() {
1051
- doTestIsJustificationPInDiv(true, 'center',
1052
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_CENTER);
1053
- }
1054
- function testIsJustificationPInDivJustifyCss() {
1055
- doTestIsJustificationPInDiv(true, 'justify',
1056
- goog.editor.plugins.BasicTextFormatter.COMMAND.JUSTIFY_FULL);
1057
- }
1058
-
1059
-
1060
- function testPrepareContent() {
1061
- setUpRealField();
1062
- assertPreparedContents("\n", "\n");
1063
-
1064
- if (goog.editor.BrowserFeature.COLLAPSES_EMPTY_NODES) {
1065
- assertPreparedContents("&nbsp;<script>alert('hi')<" + "/script>",
1066
- "<script>alert('hi')<" + "/script>");
1067
- } else {
1068
- assertNotPreparedContents("<script>alert('hi')<" + "/script>");
1069
- }
1070
-
1071
- if (goog.editor.BrowserFeature.CONVERT_TO_B_AND_I_TAGS) {
1072
- assertPreparedContents("<b id='foo'>hi</b>",
1073
- "<strong id='foo'>hi</strong>");
1074
- assertPreparedContents("<i>hi</i>", "<em>hi</em>");
1075
- assertNotPreparedContents("<embed/>");
1076
- } else {
1077
- assertNotPreparedContents("<em>hi</em>");
1078
- assertNotPreparedContents("<strong id='foo'>hi</strong>");
1079
- }
1080
- }
1081
-
1082
- function testScrubImagesRemovesCustomAttributes() {
1083
- var fieldElem = goog.dom.getElement('real-field');
1084
- fieldElem.innerHTML = '';
1085
- var attrs = {'src': 'http://www.google.com/foo.jpg',
1086
- 'tabIndex': '0',
1087
- 'tabIndexSet': '0'};
1088
- attrs[goog.HASH_CODE_PROPERTY_] = '0';
1089
- goog.dom.appendChild(fieldElem,
1090
- goog.dom.createDom('img', attrs));
1091
-
1092
- setUpRealField();
1093
-
1094
- var html = REAL_FIELD.getCleanContents();
1095
- assert('Images must not have forbidden attributes: ' + html,
1096
- -1 == html.indexOf('tabIndex') && -1 == html.indexOf('closure'));
1097
- assert('Image URLs must not be made relative by default: ' + html,
1098
- -1 != html.indexOf('/foo.jpg'));
1099
- }
1100
-
1101
- function testGeckoSelectionChange() {
1102
- if (!goog.userAgent.GECKO || !goog.userAgent.isVersion('1.9')) {
1103
- return;
1104
- }
1105
-
1106
- setUpRealFieldIframe();
1107
- // Use native selection for this test because goog.dom.Range will
1108
- // change selections of <br>
1109
- var ifr = document.getElementById('iframe');
1110
- ifr.contentWindow.document.body.innerHTML = 'hello<br id="br1"><br id="br2">';
1111
- var body = ifr.contentWindow.document.body;
1112
- var range = REAL_FIELD.getRange();
1113
- var browserRange = range.getBrowserRangeObject();
1114
- browserRange.setStart(body, 2);
1115
- browserRange.setEnd(body, 2);
1116
- FORMATTER.applyExecCommandGeckoFixes_('formatblock');
1117
- var updatedRange = REAL_FIELD.getRange().getBrowserRangeObject();
1118
- assertEquals('Range should have been updated to deep range',
1119
- 'br2', updatedRange.startContainer.id);
1120
- assertEquals('Range should have been updated to deep range',
1121
- 0, updatedRange.startOffset);
1122
- }
1123
-
1124
- function testIEExecCommandFixes() {
1125
- if (!goog.userAgent.IE) {
1126
- return;
1127
- }
1128
-
1129
- setUpRealField();
1130
- REAL_FIELD.setHtml(false, '<blockquote>hi</blockquote>');
1131
- goog.dom.Range.createFromNodeContents(REAL_FIELD.getElement()).select();
1132
-
1133
- var nodes = REAL_PLUGIN.applyExecCommandIEFixes_('insertOrderedList');
1134
- assertHTMLEquals(
1135
- '<blockquote>hi <div style="height:0px"></div></blockquote>',
1136
- REAL_FIELD.getCleanContents());
1137
- }
1138
-
1139
- /**
1140
- * Assert that the prepared contents matches the expected.
1141
- */
1142
- function assertPreparedContents(expected, original) {
1143
- assertEquals(expected,
1144
- REAL_FIELD.reduceOp_(
1145
- goog.editor.Plugin.Op.PREPARE_CONTENTS_HTML, original));
1146
- }
1147
-
1148
- /**
1149
- * Assert that sanitization doesn't affect the given text.
1150
- */
1151
- function assertNotPreparedContents(text) {
1152
- assertPreparedContents(text, text);
1153
- }
1154
-
1155
- /**
1156
- * Assert that only BR elements expected to persist after convertBreaksToDivs_
1157
- * are in the HTML.
1158
- */
1159
- function assertNotBadBrElements(html) {
1160
- if (goog.userAgent.IE) {
1161
- assertNotContains('There should not be <br> elements', '<br', html);
1162
- } else {
1163
- assertFalse('There should not be <br> elements, except ones to prevent ' +
1164
- '<div>s from collapsing' + html,
1165
- /(?!<div>)<br>(?!<\/div>)/.test(html))
1166
- }
1167
- }
1168
-
1169
- </script>
1170
- </body>
1171
- </html>