radiant-ck_editor_filter-extension 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (531) hide show
  1. data/README.markdown +7 -1
  2. data/VERSION +1 -1
  3. data/ck_editor_filter_extension.rb +1 -1
  4. data/public/javascripts/extensions/ck_editor_filter/ckeditor/CHANGES.html +1130 -373
  5. data/public/javascripts/extensions/ck_editor_filter/ckeditor/INSTALL.html +2 -2
  6. data/public/javascripts/extensions/ck_editor_filter/ckeditor/LICENSE.html +2 -2
  7. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/adobeair/application.xml +32 -0
  8. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/adobeair/run.bat +9 -0
  9. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/adobeair/run.sh +8 -0
  10. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/adobeair/sample.html +45 -0
  11. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/ajax.html +23 -25
  12. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/api.html +64 -24
  13. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/api_dialog.html +36 -19
  14. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/api_dialog/my_dialog.js +1 -1
  15. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/asp/advanced.asp +105 -0
  16. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/asp/events.asp +136 -0
  17. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/asp/index.html +103 -0
  18. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/asp/replace.asp +72 -0
  19. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/asp/replaceall.asp +77 -0
  20. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/asp/sample_posteddata.asp +46 -0
  21. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/asp/standalone.asp +72 -0
  22. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/assets/_posteddata.php +59 -0
  23. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/assets/output_for_flash.fla +0 -0
  24. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/assets/output_for_flash.swf +0 -0
  25. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/assets/output_xhtml.css +204 -0
  26. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/assets/parsesample.css +70 -0
  27. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/assets/swfobject.js +18 -0
  28. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/autogrow.html +103 -0
  29. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/bbcode.html +136 -0
  30. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/devtools.html +94 -0
  31. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/divreplace.html +27 -10
  32. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/enterkey.html +39 -12
  33. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/fullpage.html +33 -13
  34. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/index.html +88 -25
  35. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/jqueryadapter.html +34 -8
  36. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/output_for_flash.html +275 -0
  37. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/output_html.html +285 -0
  38. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/output_xhtml.html +181 -0
  39. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/php/advanced.php +56 -29
  40. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/php/events.php +58 -35
  41. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/php/index.html +47 -0
  42. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/php/replace.php +48 -24
  43. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/php/replaceall.php +50 -30
  44. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/php/standalone.php +52 -33
  45. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/placeholder.html +81 -0
  46. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/readonly.html +91 -0
  47. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/replacebyclass.html +22 -7
  48. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/replacebycode.html +25 -8
  49. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/sample.css +85 -3
  50. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/sample.js +1 -1
  51. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/sample_posteddata.php +21 -59
  52. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/sharedspaces.html +32 -10
  53. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/skins.html +38 -11
  54. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/stylesheetparser.html +93 -0
  55. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/tableresize.html +115 -0
  56. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/ui_color.html +49 -7
  57. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/ui_languages.html +53 -23
  58. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/adapters/jquery.js +17 -8
  59. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/_bootstrap.js +21 -18
  60. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/ckeditor.js +42 -4
  61. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/ckeditor_base.js +66 -29
  62. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/ckeditor_basic.js +12 -15
  63. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/command.js +138 -2
  64. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/commanddefinition.js +59 -16
  65. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/config.js +142 -18
  66. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dataprocessor.js +6 -7
  67. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom.js +2 -3
  68. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/comment.js +1 -1
  69. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/document.js +29 -2
  70. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/documentfragment.js +3 -3
  71. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/domobject.js +59 -11
  72. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/element.js +249 -27
  73. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/elementpath.js +18 -3
  74. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/event.js +1 -1
  75. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/node.js +84 -56
  76. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/nodelist.js +4 -1
  77. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/range.js +345 -48
  78. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/rangelist.js +213 -0
  79. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/text.js +6 -1
  80. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/walker.js +40 -29
  81. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/window.js +1 -1
  82. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dtd.js +15 -11
  83. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/editor.js +336 -15
  84. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/editor_basic.js +19 -12
  85. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/env.js +80 -17
  86. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/event.js +12 -6
  87. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/eventInfo.js +5 -5
  88. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/focusmanager.js +27 -12
  89. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/htmlparser.js +17 -5
  90. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/htmlparser/basicwriter.js +3 -3
  91. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/htmlparser/cdata.js +1 -1
  92. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/htmlparser/comment.js +1 -1
  93. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/htmlparser/element.js +14 -5
  94. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/htmlparser/filter.js +34 -8
  95. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/htmlparser/fragment.js +105 -108
  96. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/htmlparser/text.js +1 -1
  97. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/lang.js +12 -7
  98. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/loader.js +7 -9
  99. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/plugindefinition.js +18 -1
  100. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/plugins.js +21 -3
  101. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/resourcemanager.js +1 -1
  102. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/scriptloader.js +7 -25
  103. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/skins.js +5 -25
  104. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/themes.js +1 -1
  105. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/tools.js +61 -12
  106. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/ui.js +13 -1
  107. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/_languages.js +2 -1
  108. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/_translationstatus.txt +58 -57
  109. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/af.js +521 -410
  110. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/ar.js +160 -49
  111. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/bg.js +162 -51
  112. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/bn.js +162 -51
  113. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/bs.js +162 -51
  114. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/ca.js +260 -149
  115. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/cs.js +233 -122
  116. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/cy.js +159 -48
  117. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/da.js +162 -51
  118. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/de.js +217 -106
  119. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/el.js +162 -51
  120. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/en-au.js +166 -55
  121. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/en-ca.js +166 -55
  122. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/en-gb.js +277 -166
  123. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/en.js +166 -55
  124. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/eo.js +162 -51
  125. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/es.js +182 -71
  126. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/et.js +162 -51
  127. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/eu.js +162 -51
  128. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/fa.js +162 -51
  129. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/fi.js +178 -67
  130. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/fo.js +339 -228
  131. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/fr-ca.js +162 -51
  132. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/fr.js +261 -150
  133. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/gl.js +162 -51
  134. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/gu.js +162 -51
  135. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/he.js +179 -68
  136. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/hi.js +162 -51
  137. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/hr.js +162 -51
  138. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/hu.js +341 -230
  139. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/is.js +162 -51
  140. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/it.js +162 -51
  141. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/ja.js +195 -84
  142. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/ka.js +810 -0
  143. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/km.js +162 -51
  144. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/ko.js +162 -51
  145. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/lt.js +162 -51
  146. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/lv.js +162 -51
  147. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/mn.js +162 -51
  148. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/ms.js +162 -51
  149. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/nb.js +286 -175
  150. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/nl.js +178 -67
  151. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/no.js +286 -175
  152. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/pl.js +279 -168
  153. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/pt-br.js +318 -208
  154. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/pt.js +162 -51
  155. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/ro.js +162 -51
  156. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/ru.js +159 -48
  157. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/sk.js +192 -81
  158. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/sl.js +161 -50
  159. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/sr-latn.js +162 -51
  160. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/sr.js +162 -51
  161. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/sv.js +357 -247
  162. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/th.js +162 -51
  163. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/tr.js +345 -235
  164. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/uk.js +387 -276
  165. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/vi.js +336 -225
  166. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/zh-cn.js +271 -160
  167. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/zh.js +162 -51
  168. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/a11yhelp/dialogs/a11yhelp.js +16 -5
  169. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/a11yhelp/lang/en.js +3 -3
  170. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/a11yhelp/lang/he.js +216 -0
  171. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/a11yhelp/plugin.js +4 -3
  172. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/about/dialogs/about.js +4 -1
  173. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/about/plugin.js +2 -1
  174. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/adobeair/plugin.js +228 -0
  175. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/ajax/plugin.js +152 -0
  176. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/autogrow/plugin.js +88 -0
  177. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/basicstyles/plugin.js +27 -19
  178. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/bbcode/plugin.js +924 -0
  179. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/bidi/plugin.js +331 -0
  180. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/blockquote/plugin.js +8 -4
  181. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/button/plugin.js +70 -55
  182. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/clipboard/dialogs/paste.js +115 -78
  183. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/clipboard/plugin.js +133 -69
  184. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/colorbutton/plugin.js +91 -23
  185. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/colordialog/dialogs/colordialog.js +192 -43
  186. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/colordialog/plugin.js +12 -10
  187. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/contextmenu/plugin.js +124 -221
  188. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/devtools/lang/en.js +16 -0
  189. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/devtools/plugin.js +173 -0
  190. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/dialog/dialogDefinition.js +840 -56
  191. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/dialog/plugin.js +652 -301
  192. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/dialogadvtab/plugin.js +205 -0
  193. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/dialogui/plugin.js +179 -50
  194. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/div/dialogs/div.js +40 -40
  195. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/div/plugin.js +4 -4
  196. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/docprops/dialogs/docprops.js +686 -0
  197. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/docprops/plugin.js +22 -0
  198. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/domiterator/plugin.js +59 -53
  199. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/editingblock/plugin.js +62 -17
  200. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/elementspath/plugin.js +137 -108
  201. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/enterkey/plugin.js +117 -47
  202. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/entities/plugin.js +95 -45
  203. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/fakeobjects/plugin.js +22 -16
  204. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/filebrowser/plugin.js +75 -30
  205. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/find/dialogs/find.js +111 -69
  206. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/find/plugin.js +2 -1
  207. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/flash/dialogs/flash.js +28 -20
  208. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/flash/plugin.js +14 -11
  209. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/floatpanel/plugin.js +50 -21
  210. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/font/plugin.js +3 -2
  211. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/format/plugin.js +17 -13
  212. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/dialogs/button.js +38 -55
  213. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/dialogs/checkbox.js +21 -11
  214. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/dialogs/form.js +6 -6
  215. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/dialogs/hiddenfield.js +26 -17
  216. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/dialogs/radio.js +6 -6
  217. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/dialogs/select.js +13 -7
  218. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/dialogs/textarea.js +4 -4
  219. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/dialogs/textfield.js +11 -5
  220. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/images/hiddenfield.gif +0 -0
  221. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/plugin.js +112 -41
  222. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/horizontalrule/plugin.js +1 -1
  223. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/htmldataprocessor/plugin.js +200 -63
  224. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/htmlwriter/plugin.js +26 -21
  225. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/iframe/dialogs/iframe.js +257 -0
  226. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/iframe/images/placeholder.png +0 -0
  227. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/iframe/plugin.js +106 -0
  228. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/iframedialog/plugin.js +59 -7
  229. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/image/dialogs/image.js +243 -218
  230. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/image/plugin.js +19 -2
  231. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/indent/plugin.js +335 -223
  232. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/justify/plugin.js +115 -30
  233. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/keystrokes/plugin.js +3 -7
  234. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/link/dialogs/anchor.js +85 -40
  235. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/link/dialogs/link.js +163 -184
  236. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/link/plugin.js +180 -32
  237. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/list/plugin.js +165 -81
  238. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/listblock/plugin.js +11 -6
  239. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/liststyle/dialogs/liststyle.js +204 -0
  240. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/liststyle/plugin.js +66 -0
  241. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/maximize/plugin.js +109 -40
  242. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/menu/plugin.js +166 -67
  243. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/menubutton/plugin.js +12 -7
  244. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/newpage/plugin.js +3 -3
  245. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/pagebreak/plugin.js +95 -29
  246. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/panel/plugin.js +43 -20
  247. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/panelbutton/plugin.js +10 -11
  248. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/pastefromword/filter/default.js +316 -119
  249. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/pastefromword/plugin.js +32 -11
  250. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/pastetext/dialogs/pastetext.js +19 -29
  251. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/pastetext/plugin.js +15 -79
  252. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/placeholder/dialogs/placeholder.js +71 -0
  253. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/placeholder/lang/en.js +16 -0
  254. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/placeholder/lang/he.js +16 -0
  255. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/placeholder/placeholder.gif +0 -0
  256. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/placeholder/plugin.js +171 -0
  257. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/popup/plugin.js +9 -7
  258. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/preview/plugin.js +3 -2
  259. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/print/plugin.js +2 -1
  260. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/removeformat/plugin.js +89 -36
  261. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/resize/plugin.js +71 -18
  262. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/richcombo/plugin.js +40 -29
  263. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/save/plugin.js +2 -1
  264. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/scayt/dialogs/options.js +114 -110
  265. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/scayt/plugin.js +531 -170
  266. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/selection/plugin.js +791 -331
  267. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_address.png +0 -0
  268. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_blockquote.png +0 -0
  269. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_div.png +0 -0
  270. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_h1.png +0 -0
  271. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_h2.png +0 -0
  272. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_h3.png +0 -0
  273. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_h4.png +0 -0
  274. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_h5.png +0 -0
  275. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_h6.png +0 -0
  276. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_p.png +0 -0
  277. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_pre.png +0 -0
  278. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/plugin.js +14 -8
  279. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showborders/plugin.js +63 -26
  280. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/smiley/dialogs/smiley.js +31 -22
  281. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/smiley/plugin.js +15 -6
  282. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/sourcearea/plugin.js +18 -14
  283. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/specialchar/dialogs/specialchar.js +36 -59
  284. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/specialchar/lang/en.js +89 -0
  285. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/specialchar/plugin.js +45 -4
  286. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/styles/plugin.js +632 -212
  287. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/{stylescombo → styles}/styles/default.js +5 -2
  288. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/stylescombo/plugin.js +77 -140
  289. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/stylesheetparser/plugin.js +143 -0
  290. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/tab/plugin.js +109 -3
  291. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/table/dialogs/table.js +106 -23
  292. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/table/plugin.js +11 -3
  293. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/tableresize/plugin.js +450 -0
  294. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/tabletools/dialogs/tableCell.js +66 -64
  295. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/tabletools/plugin.js +348 -179
  296. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/templates/dialogs/templates.js +41 -36
  297. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/templates/plugin.js +3 -4
  298. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/templates/templates/default.js +2 -2
  299. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/toolbar/plugin.js +193 -122
  300. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/uicolor/dialogs/uicolor.js +6 -5
  301. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/uicolor/lang/en.js +1 -1
  302. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/uicolor/lang/he.js +15 -0
  303. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/uicolor/plugin.js +2 -2
  304. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/uicolor/yui/assets/yui.css +1 -1
  305. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/undo/plugin.js +73 -12
  306. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/wsc/dialogs/ciframe.html +1 -1
  307. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/wsc/dialogs/tmpFrameset.html +1 -1
  308. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/wsc/dialogs/wsc.css +1 -2
  309. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/wsc/dialogs/wsc.js +20 -4
  310. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/wsc/plugin.js +2 -2
  311. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/wysiwygarea/plugin.js +751 -251
  312. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/xml/plugin.js +170 -0
  313. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/dialog.css +116 -18
  314. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/editor.css +1 -1
  315. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/elementspath.css +2 -1
  316. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/icons.css +42 -2
  317. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/icons.png +0 -0
  318. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/icons_rtl.png +0 -0
  319. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/mainui.css +25 -5
  320. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/menu.css +36 -15
  321. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/panel.css +18 -17
  322. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/presets.css +1 -1
  323. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/reset.css +7 -1
  324. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/richcombo.css +27 -10
  325. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/skin.js +4 -36
  326. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/templates.css +16 -12
  327. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/toolbar.css +69 -83
  328. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/dialog.css +111 -13
  329. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/editor.css +1 -1
  330. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/elementspath.css +2 -1
  331. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/icons.css +40 -1
  332. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/icons.png +0 -0
  333. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/icons_rtl.png +0 -0
  334. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/mainui.css +33 -7
  335. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/menu.css +37 -15
  336. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/panel.css +23 -22
  337. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/presets.css +1 -1
  338. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/reset.css +7 -1
  339. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/richcombo.css +40 -20
  340. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/skin.js +10 -17
  341. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/templates.css +16 -10
  342. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/toolbar.css +79 -32
  343. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/dialog.css +112 -13
  344. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/editor.css +1 -1
  345. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/elementspath.css +2 -1
  346. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/icons.css +40 -1
  347. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/icons.png +0 -0
  348. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/icons_rtl.png +0 -0
  349. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/mainui.css +25 -5
  350. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/menu.css +38 -16
  351. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/panel.css +22 -21
  352. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/presets.css +1 -1
  353. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/reset.css +7 -1
  354. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/richcombo.css +36 -23
  355. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/skin.js +10 -17
  356. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/templates.css +16 -10
  357. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/toolbar.css +67 -27
  358. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/themes/default/theme.js +106 -46
  359. data/public/javascripts/extensions/ck_editor_filter/ckeditor/adapters/jquery.js +2 -2
  360. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor.asp +955 -0
  361. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor.js +141 -117
  362. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor.pack +13 -7
  363. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor.php +1 -1
  364. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor_basic.js +4 -4
  365. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor_basic_source.js +2 -2
  366. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor_php4.php +27 -54
  367. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor_php5.php +26 -53
  368. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor_source.js +2 -2
  369. data/public/javascripts/extensions/ck_editor_filter/ckeditor/config.js +1 -1
  370. data/public/javascripts/extensions/ck_editor_filter/ckeditor/contents.css +4 -16
  371. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/_languages.js +2 -2
  372. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/_translationstatus.txt +58 -57
  373. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/af.js +2 -2
  374. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/ar.js +2 -2
  375. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/bg.js +2 -2
  376. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/bn.js +2 -2
  377. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/bs.js +2 -2
  378. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/ca.js +2 -2
  379. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/cs.js +2 -2
  380. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/cy.js +2 -2
  381. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/da.js +2 -2
  382. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/de.js +2 -2
  383. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/el.js +2 -2
  384. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/en-au.js +2 -2
  385. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/en-ca.js +2 -2
  386. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/en-gb.js +2 -2
  387. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/en.js +2 -2
  388. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/eo.js +2 -2
  389. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/es.js +2 -2
  390. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/et.js +2 -2
  391. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/eu.js +2 -2
  392. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/fa.js +2 -2
  393. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/fi.js +2 -2
  394. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/fo.js +2 -2
  395. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/fr-ca.js +2 -2
  396. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/fr.js +2 -2
  397. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/gl.js +2 -2
  398. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/gu.js +2 -2
  399. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/he.js +2 -2
  400. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/hi.js +2 -2
  401. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/hr.js +2 -2
  402. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/hu.js +2 -2
  403. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/is.js +2 -2
  404. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/it.js +2 -2
  405. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/ja.js +2 -2
  406. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/ka.js +6 -0
  407. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/km.js +2 -2
  408. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/ko.js +2 -2
  409. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/lt.js +2 -2
  410. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/lv.js +2 -2
  411. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/mn.js +2 -2
  412. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/ms.js +2 -2
  413. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/nb.js +2 -2
  414. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/nl.js +2 -2
  415. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/no.js +2 -2
  416. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/pl.js +2 -2
  417. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/pt-br.js +2 -2
  418. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/pt.js +2 -2
  419. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/ro.js +2 -2
  420. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/ru.js +2 -2
  421. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/sk.js +2 -2
  422. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/sl.js +2 -2
  423. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/sr-latn.js +2 -2
  424. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/sr.js +2 -2
  425. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/sv.js +2 -2
  426. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/th.js +2 -2
  427. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/tr.js +2 -2
  428. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/uk.js +2 -2
  429. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/vi.js +2 -2
  430. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/zh-cn.js +2 -2
  431. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/zh.js +2 -2
  432. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js +2 -2
  433. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/a11yhelp/lang/en.js +2 -2
  434. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/a11yhelp/lang/he.js +6 -0
  435. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/about/dialogs/about.js +2 -2
  436. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/adobeair/plugin.js +6 -0
  437. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/ajax/plugin.js +6 -0
  438. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/autogrow/plugin.js +6 -0
  439. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/bbcode/plugin.js +9 -0
  440. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/clipboard/dialogs/paste.js +3 -3
  441. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/colordialog/dialogs/colordialog.js +3 -2
  442. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/devtools/lang/en.js +6 -0
  443. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/devtools/plugin.js +6 -0
  444. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/dialog/dialogDefinition.js +1 -1
  445. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/div/dialogs/div.js +3 -2
  446. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/docprops/dialogs/docprops.js +10 -0
  447. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/docprops/plugin.js +6 -0
  448. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/find/dialogs/find.js +5 -5
  449. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/flash/dialogs/flash.js +5 -5
  450. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/dialogs/button.js +2 -2
  451. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/dialogs/checkbox.js +2 -2
  452. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/dialogs/form.js +2 -2
  453. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/dialogs/hiddenfield.js +2 -2
  454. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/dialogs/radio.js +2 -2
  455. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/dialogs/select.js +4 -4
  456. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/dialogs/textarea.js +2 -2
  457. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/dialogs/textfield.js +2 -2
  458. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/images/hiddenfield.gif +0 -0
  459. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/iframe/dialogs/iframe.js +7 -0
  460. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/iframe/images/placeholder.png +0 -0
  461. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/iframedialog/plugin.js +2 -2
  462. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/image/dialogs/image.js +9 -9
  463. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/link/dialogs/anchor.js +2 -2
  464. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/link/dialogs/link.js +7 -7
  465. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/liststyle/dialogs/liststyle.js +6 -0
  466. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/pastefromword/filter/default.js +7 -6
  467. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/pastetext/dialogs/pastetext.js +2 -2
  468. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/placeholder/dialogs/placeholder.js +6 -0
  469. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/placeholder/lang/en.js +6 -0
  470. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/placeholder/lang/he.js +6 -0
  471. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/placeholder/placeholder.gif +0 -0
  472. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/placeholder/plugin.js +6 -0
  473. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/radiantpreview/images/radiant-preview.png +0 -0
  474. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/scayt/dialogs/options.js +4 -4
  475. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/scayt/dialogs/toolbar.css +1 -1
  476. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_address.png +0 -0
  477. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_blockquote.png +0 -0
  478. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_div.png +0 -0
  479. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_h1.png +0 -0
  480. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_h2.png +0 -0
  481. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_h3.png +0 -0
  482. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_h4.png +0 -0
  483. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_h5.png +0 -0
  484. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_h6.png +0 -0
  485. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_p.png +0 -0
  486. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_pre.png +0 -0
  487. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/smiley/dialogs/smiley.js +3 -3
  488. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/specialchar/dialogs/specialchar.js +3 -3
  489. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/specialchar/lang/en.js +6 -0
  490. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/{stylescombo → styles}/styles/default.js +2 -2
  491. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/stylesheetparser/plugin.js +6 -0
  492. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/table/dialogs/table.js +5 -5
  493. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/tableresize/plugin.js +7 -0
  494. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/tabletools/dialogs/tableCell.js +4 -4
  495. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/templates/dialogs/templates.js +3 -3
  496. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/templates/templates/default.js +2 -2
  497. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/uicolor/dialogs/uicolor.js +3 -3
  498. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/uicolor/lang/en.js +1 -1
  499. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/uicolor/lang/he.js +6 -0
  500. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/uicolor/plugin.js +2 -2
  501. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/uicolor/yui/assets/yui.css +2 -2
  502. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/uicolor/yui/yui.js +1 -1
  503. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/wsc/dialogs/ciframe.html +1 -1
  504. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/wsc/dialogs/tmpFrameset.html +1 -1
  505. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/wsc/dialogs/wsc.css +2 -2
  506. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/wsc/dialogs/wsc.js +3 -3
  507. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/xml/plugin.js +6 -0
  508. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/kama/dialog.css +5 -5
  509. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/kama/editor.css +9 -8
  510. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/kama/icons.png +0 -0
  511. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/kama/icons_rtl.png +0 -0
  512. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/kama/skin.js +3 -3
  513. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/kama/templates.css +2 -2
  514. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/office2003/dialog.css +5 -5
  515. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/office2003/editor.css +10 -9
  516. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/office2003/icons.png +0 -0
  517. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/office2003/icons_rtl.png +0 -0
  518. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/office2003/skin.js +2 -2
  519. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/office2003/templates.css +2 -2
  520. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/v2/dialog.css +5 -4
  521. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/v2/editor.css +9 -8
  522. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/v2/icons.png +0 -0
  523. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/v2/icons_rtl.png +0 -0
  524. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/v2/skin.js +2 -2
  525. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/v2/templates.css +2 -2
  526. data/public/javascripts/extensions/ck_editor_filter/ckeditor/themes/default/theme.js +4 -4
  527. data/public/javascripts/extensions/ck_editor_filter/radiant.ckeditor.js +21 -12
  528. metadata +94 -9
  529. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/ajax.js +0 -143
  530. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/imagecacher.js +0 -58
  531. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/xml.js +0 -165
@@ -1,5 +1,5 @@
1
1
  /*
2
- Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved.
2
+ Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
3
3
  For licensing, see LICENSE.html or http://ckeditor.com/license
4
4
  */
5
5
 
@@ -16,7 +16,7 @@ CKEDITOR.plugins.add( 'panel',
16
16
  * @constant
17
17
  * @example
18
18
  */
19
- CKEDITOR.UI_PANEL = 2;
19
+ CKEDITOR.UI_PANEL = 'panel';
20
20
 
21
21
  CKEDITOR.ui.panel = function( document, definition )
22
22
  {
@@ -31,7 +31,7 @@ CKEDITOR.ui.panel = function( document, definition )
31
31
  css : []
32
32
  });
33
33
 
34
- this.id = CKEDITOR.tools.getNextNumber();
34
+ this.id = CKEDITOR.tools.getNextId();
35
35
  this.document = document;
36
36
 
37
37
  this._ =
@@ -73,7 +73,7 @@ CKEDITOR.ui.panel.prototype =
73
73
  */
74
74
  render : function( editor, output )
75
75
  {
76
- var id = 'cke_' + this.id;
76
+ var id = this.id;
77
77
 
78
78
  output.push(
79
79
  '<div class="', editor.skinClass ,'"' +
@@ -130,18 +130,12 @@ CKEDITOR.ui.panel.prototype =
130
130
  {
131
131
  if ( this.forceIFrame || this.css.length )
132
132
  {
133
- var iframe = this.document.getById( 'cke_' + this.id + '_frame' ),
133
+ var iframe = this.document.getById( this.id + '_frame' ),
134
134
  parentDiv = iframe.getParent(),
135
135
  dir = parentDiv.getAttribute( 'dir' ),
136
136
  className = parentDiv.getParent().getAttribute( 'class' ),
137
137
  langCode = parentDiv.getParent().getAttribute( 'lang' ),
138
138
  doc = iframe.getFrameDocument();
139
- // Initialize the IFRAME document body.
140
- doc.$.open();
141
-
142
- // Support for custom document.domain in IE.
143
- if ( CKEDITOR.env.isCustomDomain() )
144
- doc.$.domain = document.domain;
145
139
 
146
140
  var onLoad = CKEDITOR.tools.addFunction( CKEDITOR.tools.bind( function( ev )
147
141
  {
@@ -150,7 +144,7 @@ CKEDITOR.ui.panel.prototype =
150
144
  this.onLoad();
151
145
  }, this ) );
152
146
 
153
- doc.$.write(
147
+ var data =
154
148
  '<!DOCTYPE html>' +
155
149
  '<html dir="' + dir + '" class="' + className + '_container" lang="' + langCode + '">' +
156
150
  '<head>' +
@@ -162,18 +156,20 @@ CKEDITOR.ui.panel.prototype =
162
156
  // after <body>, so it (body) becames immediatelly
163
157
  // available. (#3031)
164
158
  CKEDITOR.tools.buildStyleHtml( this.css ) +
165
- '<\/html>' );
166
- doc.$.close();
159
+ '<\/html>';
160
+
161
+ doc.write( data );
167
162
 
168
163
  var win = doc.getWindow();
169
164
 
170
165
  // Register the CKEDITOR global.
171
166
  win.$.CKEDITOR = CKEDITOR;
172
167
 
173
- doc.on( 'keydown', function( evt )
168
+ // Arrow keys for scrolling is only preventable with 'keypress' event in Opera (#4534).
169
+ doc.on( 'key' + ( CKEDITOR.env.opera? 'press':'down' ), function( evt )
174
170
  {
175
171
  var keystroke = evt.data.getKeystroke(),
176
- dir = this.document.getById( 'cke_' + this.id ).getAttribute( 'dir' );
172
+ dir = this.document.getById( this.id ).getAttribute( 'dir' );
177
173
 
178
174
  // Delegate key processing to block.
179
175
  if ( this._.onKeyDown && this._.onKeyDown( keystroke ) === false )
@@ -186,15 +182,17 @@ CKEDITOR.ui.panel.prototype =
186
182
  if ( keystroke == 27 || keystroke == ( dir == 'rtl' ? 39 : 37 ) )
187
183
  {
188
184
  if ( this.onEscape && this.onEscape( keystroke ) === false )
189
- evt.data.preventDefault( );
185
+ evt.data.preventDefault();
190
186
  }
191
187
  },
192
188
  this );
193
189
 
194
190
  holder = doc.getBody();
191
+ holder.unselectable();
192
+ CKEDITOR.env.air && CKEDITOR.tools.callFunction( onLoad );
195
193
  }
196
194
  else
197
- holder = this.document.getById( 'cke_' + this.id );
195
+ holder = this.document.getById( this.id );
198
196
 
199
197
  this._.holder = holder;
200
198
  }
@@ -224,9 +222,12 @@ CKEDITOR.ui.panel.prototype =
224
222
  block = blocks[ name ],
225
223
  current = this._.currentBlock,
226
224
  holder = this.forceIFrame ?
227
- this.document.getById( 'cke_' + this.id + '_frame' )
225
+ this.document.getById( this.id + '_frame' )
228
226
  : this._.holder;
229
227
 
228
+ // Disable context menu for block panel.
229
+ holder.getParent().getParent().disableContextMenu();
230
+
230
231
  if ( current )
231
232
  {
232
233
  // Clean up the current block's effects on holder.
@@ -244,6 +245,16 @@ CKEDITOR.ui.panel.prototype =
244
245
 
245
246
  this._.onKeyDown = block.onKeyDown && CKEDITOR.tools.bind( block.onKeyDown, block );
246
247
 
248
+ block.onMark = function( item )
249
+ {
250
+ holder.setAttribute( 'aria-activedescendant', item.getId() + '_option' );
251
+ };
252
+
253
+ block.onUnmark = function()
254
+ {
255
+ holder.removeAttribute( 'aria-activedescendant' );
256
+ };
257
+
247
258
  block.show();
248
259
 
249
260
  return block;
@@ -278,6 +289,9 @@ CKEDITOR.ui.panel.block = CKEDITOR.tools.createClass(
278
289
  if ( blockDefinition )
279
290
  CKEDITOR.tools.extend( this, blockDefinition );
280
291
 
292
+ if ( !this.attributes.title )
293
+ this.attributes.title = this.attributes[ 'aria-label' ];
294
+
281
295
  this.keys = {};
282
296
 
283
297
  this._.focusIndex = -1;
@@ -300,9 +314,11 @@ CKEDITOR.ui.panel.block = CKEDITOR.tools.createClass(
300
314
 
301
315
  // Safari need focus on the iframe window first(#3389), but we need
302
316
  // lock the blur to avoid hiding the panel.
303
- if ( CKEDITOR.env.webkit )
317
+ if ( CKEDITOR.env.webkit || CKEDITOR.env.opera )
304
318
  item.getDocument().getWindow().focus();
305
319
  item.focus();
320
+
321
+ this.onMark && this.onMark( item );
306
322
  }
307
323
  },
308
324
 
@@ -377,3 +393,10 @@ CKEDITOR.ui.panel.block = CKEDITOR.tools.createClass(
377
393
  }
378
394
  }
379
395
  });
396
+
397
+ /**
398
+ * Fired when a panel is added to the document
399
+ * @name CKEDITOR#ariaWidget
400
+ * @event
401
+ * @param {Object} holder The element wrapping the panel
402
+ */
@@ -1,5 +1,5 @@
1
1
  /*
2
- Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved.
2
+ Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
3
3
  For licensing, see LICENSE.html or http://ckeditor.com/license
4
4
  */
5
5
 
@@ -17,7 +17,7 @@ CKEDITOR.plugins.add( 'panelbutton',
17
17
  * @constant
18
18
  * @example
19
19
  */
20
- CKEDITOR.UI_PANELBUTTON = 4;
20
+ CKEDITOR.UI_PANELBUTTON = 'panelbutton';
21
21
 
22
22
  (function()
23
23
  {
@@ -93,7 +93,7 @@ CKEDITOR.UI_PANELBUTTON = 4;
93
93
  return;
94
94
 
95
95
  var panelDefinition = this._.panelDefinition || {},
96
- panelBlockDefinition = this._.panelDefinition.block,
96
+ panelBlockDefinition = this._.panelDefinition.block,
97
97
  panelParentElement = panelDefinition.parent || CKEDITOR.document.getBody(),
98
98
  panel = this._.panel = new CKEDITOR.ui.floatPanel( editor, panelParentElement, panelDefinition ),
99
99
  block = panel.addBlock( _.id, panelBlockDefinition ),
@@ -104,7 +104,6 @@ CKEDITOR.UI_PANELBUTTON = 4;
104
104
  if ( me.className )
105
105
  this.element.getFirst().addClass( me.className + '_panel' );
106
106
 
107
- _.oldState = me._.state;
108
107
  me.setState( CKEDITOR.TRISTATE_ON );
109
108
 
110
109
  _.on = 1;
@@ -113,16 +112,16 @@ CKEDITOR.UI_PANELBUTTON = 4;
113
112
  me.onOpen();
114
113
  };
115
114
 
116
- panel.onHide = function()
115
+ panel.onHide = function( preventOnClose )
117
116
  {
118
117
  if ( me.className )
119
118
  this.element.getFirst().removeClass( me.className + '_panel' );
120
119
 
121
- me.setState( _.oldState );
120
+ me.setState( me.modes && me.modes[ editor.mode ] ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED );
122
121
 
123
122
  _.on = 0;
124
123
 
125
- if ( me.onClose )
124
+ if ( !preventOnClose && me.onClose )
126
125
  me.onClose();
127
126
  };
128
127
 
@@ -136,10 +135,10 @@ CKEDITOR.UI_PANELBUTTON = 4;
136
135
  this.onBlock( panel, block );
137
136
 
138
137
  block.onHide = function()
139
- {
140
- _.on = 0;
141
- me.setState( CKEDITOR.TRISTATE_OFF );
142
- };
138
+ {
139
+ _.on = 0;
140
+ me.setState( CKEDITOR.TRISTATE_OFF );
141
+ };
143
142
  }
144
143
  }
145
144
  });
@@ -1,5 +1,5 @@
1
1
  /*
2
- Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved.
2
+ Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
3
3
  For licensing, see LICENSE.html or http://ckeditor.com/license
4
4
  */
5
5
 
@@ -60,15 +60,13 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
60
60
  child = child.firstChild( evaluator );
61
61
  if ( child )
62
62
  return child;
63
- else
64
- continue;
65
63
  }
66
64
  }
67
65
 
68
66
  return null;
69
67
  };
70
68
 
71
- // Adding a (set) of styles to the element's attributes.
69
+ // Adding a (set) of styles to the element's 'style' attributes.
72
70
  elementPrototype.addStyle = function( name, value, isPrepend )
73
71
  {
74
72
  var styleText, addingStyleText = '';
@@ -120,65 +118,107 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
120
118
  return result;
121
119
  };
122
120
 
123
- var cssLengthRelativeUnit = /^(\d[.\d]*)+(em|ex|px|gd|rem|vw|vh|vm|ch|mm|cm|in|pt|pc|deg|rad|ms|s|hz|khz){1}?/i;
124
- var emptyMarginRegex = /^(?:\b0[^\s]*\s*){1,4}$/;
121
+ // 1. move consistent list item styles up to list root.
122
+ // 2. clear out unnecessary list item numbering.
123
+ function postProcessList( list )
124
+ {
125
+ var children = list.children,
126
+ child,
127
+ attrs,
128
+ count = list.children.length,
129
+ match,
130
+ mergeStyle,
131
+ styleTypeRegexp = /list-style-type:(.*?)(?:;|$)/,
132
+ stylesFilter = CKEDITOR.plugins.pastefromword.filters.stylesFilter;
133
+
134
+ attrs = list.attributes;
135
+ if ( styleTypeRegexp.exec( attrs.style ) )
136
+ return;
137
+
138
+ for ( var i = 0; i < count; i++ )
139
+ {
140
+ child = children[ i ];
141
+
142
+ if ( child.attributes.value && Number( child.attributes.value ) == i + 1 )
143
+ delete child.attributes.value;
144
+
145
+ match = styleTypeRegexp.exec( child.attributes.style );
146
+
147
+ if ( match )
148
+ {
149
+ if ( match[ 1 ] == mergeStyle || !mergeStyle )
150
+ mergeStyle = match[ 1 ];
151
+ else
152
+ {
153
+ mergeStyle = null;
154
+ break;
155
+ }
156
+ }
157
+ }
158
+
159
+ if ( mergeStyle )
160
+ {
161
+ for ( i = 0; i < count; i++ )
162
+ {
163
+ attrs = children[ i ].attributes;
164
+ attrs.style && ( attrs.style = stylesFilter( [ [ 'list-style-type'] ] )( attrs.style ) || '' );
165
+ }
166
+
167
+ list.addStyle( 'list-style-type', mergeStyle );
168
+ }
169
+ }
170
+
171
+ var cssLengthRelativeUnit = /^([.\d]*)+(em|ex|px|gd|rem|vw|vh|vm|ch|mm|cm|in|pt|pc|deg|rad|ms|s|hz|khz){1}?/i;
172
+ var emptyMarginRegex = /^(?:\b0[^\s]*\s*){1,4}$/; // e.g. 0px 0pt 0px
173
+ var romanLiternalPattern = '^m{0,4}(cm|cd|d?c{0,3})(xc|xl|l?x{0,3})(ix|iv|v?i{0,3})$',
174
+ lowerRomanLiteralRegex = new RegExp( romanLiternalPattern ),
175
+ upperRomanLiteralRegex = new RegExp( romanLiternalPattern.toUpperCase() );
176
+
177
+ var orderedPatterns = { 'decimal' : /\d+/, 'lower-roman': lowerRomanLiteralRegex, 'upper-roman': upperRomanLiteralRegex, 'lower-alpha' : /^[a-z]+$/, 'upper-alpha': /^[A-Z]+$/ },
178
+ unorderedPatterns = { 'disc' : /[l\u00B7\u2002]/, 'circle' : /[\u006F\u00D8]/,'square' : /[\u006E\u25C6]/},
179
+ listMarkerPatterns = { 'ol' : orderedPatterns, 'ul' : unorderedPatterns },
180
+ romans = [ [1000, 'M'], [900, 'CM'], [500, 'D'], [400, 'CD'], [100, 'C'], [90, 'XC'], [50, 'L'], [40, 'XL'], [10, 'X'], [9, 'IX'], [5, 'V'], [4, 'IV'], [1, 'I'] ],
181
+ alpahbets = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
182
+
183
+ // Convert roman numbering back to decimal.
184
+ function fromRoman( str )
185
+ {
186
+ str = str.toUpperCase();
187
+ var l = romans.length, retVal = 0;
188
+ for ( var i = 0; i < l; ++i )
189
+ {
190
+ for ( var j = romans[i], k = j[1].length; str.substr( 0, k ) == j[1]; str = str.substr( k ) )
191
+ retVal += j[ 0 ];
192
+ }
193
+ return retVal;
194
+ }
195
+
196
+ // Convert alphabet numbering back to decimal.
197
+ function fromAlphabet( str )
198
+ {
199
+ str = str.toUpperCase();
200
+ var l = alpahbets.length, retVal = 1;
201
+ for ( var x = 1; str.length > 0; x *= l )
202
+ {
203
+ retVal += alpahbets.indexOf( str.charAt( str.length - 1 ) ) * x;
204
+ str = str.substr( 0, str.length - 1 );
205
+ }
206
+ return retVal;
207
+ }
125
208
 
126
209
  var listBaseIndent = 0,
127
- previousListItemMargin;
210
+ previousListItemMargin = null,
211
+ previousListId;
128
212
 
129
- CKEDITOR.plugins.pastefromword =
213
+ var plugin = ( CKEDITOR.plugins.pastefromword =
130
214
  {
131
215
  utils :
132
216
  {
133
217
  // Create a <cke:listbullet> which indicate an list item type.
134
- createListBulletMarker : function ( bulletStyle, bulletText )
218
+ createListBulletMarker : function ( bullet, bulletText )
135
219
  {
136
- var marker = new CKEDITOR.htmlParser.element( 'cke:listbullet' ),
137
- listType;
138
-
139
- // TODO: Support more list style type from MS-Word.
140
- if ( !bulletStyle )
141
- {
142
- bulletStyle = 'decimal';
143
- listType = 'ol';
144
- }
145
- else if ( bulletStyle[ 2 ] )
146
- {
147
- if ( !isNaN( bulletStyle[ 1 ] ) )
148
- bulletStyle = 'decimal';
149
- // No way to distinguish between Roman numerals and Alphas,
150
- // detect them as a whole.
151
- else if ( /^[a-z]+$/.test( bulletStyle[ 1 ] ) )
152
- bulletStyle = 'lower-alpha';
153
- else if ( /^[A-Z]+$/.test( bulletStyle[ 1 ] ) )
154
- bulletStyle = 'upper-alpha';
155
- // Simply use decimal for the rest forms of unrepresentable
156
- // numerals, e.g. Chinese...
157
- else
158
- bulletStyle = 'decimal';
159
-
160
- listType = 'ol';
161
- }
162
- else
163
- {
164
- if ( /[l\u00B7\u2002]/.test( bulletStyle[ 1 ] ) ) //l·•
165
- bulletStyle = 'disc';
166
- else if ( /[\u006F\u00D8]/.test( bulletStyle[ 1 ] ) ) //oØ
167
- bulletStyle = 'circle';
168
- else if ( /[\u006E\u25C6]/.test( bulletStyle[ 1 ] ) ) //n◆
169
- bulletStyle = 'square';
170
- else
171
- bulletStyle = 'disc';
172
-
173
- listType = 'ul';
174
- }
175
-
176
- // Represent list type as CSS style.
177
- marker.attributes =
178
- {
179
- 'cke:listtype' : listType,
180
- 'style' : 'list-style-type:' + bulletStyle + ';'
181
- };
220
+ var marker = new CKEDITOR.htmlParser.element( 'cke:listbullet' );
221
+ marker.attributes = { 'cke:listsymbol' : bullet[ 0 ] };
182
222
  marker.add( new CKEDITOR.htmlParser.text( bulletText ) );
183
223
  return marker;
184
224
  },
@@ -200,48 +240,69 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
200
240
  resolveList : function( element )
201
241
  {
202
242
  // <cke:listbullet> indicate a list item.
203
- var children = element.children,
204
- attrs = element.attributes,
243
+ var attrs = element.attributes,
205
244
  listMarker;
206
245
 
207
246
  if ( ( listMarker = element.removeAnyChildWithName( 'cke:listbullet' ) )
208
- && listMarker.length
209
- && ( listMarker = listMarker[ 0 ] ) )
247
+ && listMarker.length
248
+ && ( listMarker = listMarker[ 0 ] ) )
210
249
  {
211
250
  element.name = 'cke:li';
212
251
 
213
252
  if ( attrs.style )
214
253
  {
215
- attrs.style = CKEDITOR.plugins.pastefromword.filters.stylesFilter(
254
+ attrs.style = plugin.filters.stylesFilter(
216
255
  [
217
256
  // Text-indent is not representing list item level any more.
218
257
  [ 'text-indent' ],
219
258
  [ 'line-height' ],
220
- // Resolve indent level from 'margin-left' value.
259
+ // First attempt is to resolve indent level from on a constant margin increment.
221
260
  [ ( /^margin(:?-left)?$/ ), null, function( margin )
222
261
  {
223
- // Be able to deal with component/short-hand form style.
262
+ // Deal with component/short-hand form.
224
263
  var values = margin.split( ' ' );
225
- margin = values[ 3 ] || values[ 1 ] || values [ 0 ];
264
+ margin = plugin.utils.convertToPx( values[ 3 ] || values[ 1 ] || values [ 0 ] );
226
265
  margin = parseInt( margin, 10 );
227
266
 
228
- // Figure out the indent unit by looking at the first increament.
229
- if ( !listBaseIndent && previousListItemMargin && margin > previousListItemMargin )
267
+ // Figure out the indent unit by checking the first time of incrementation.
268
+ if ( !listBaseIndent && previousListItemMargin !== null && margin > previousListItemMargin )
230
269
  listBaseIndent = margin - previousListItemMargin;
231
270
 
232
- attrs[ 'cke:margin' ] = previousListItemMargin = margin;
271
+ previousListItemMargin = margin;
272
+
273
+ attrs[ 'cke:indent' ] = listBaseIndent && ( Math.ceil( margin / listBaseIndent ) + 1 ) || 1;
274
+ } ],
275
+ // The best situation: "mso-list:l0 level1 lfo2" tells the belonged list root, list item indentation, etc.
276
+ [ ( /^mso-list$/ ), null, function( val )
277
+ {
278
+ val = val.split( ' ' );
279
+ var listId = Number( val[ 0 ].match( /\d+/ ) ),
280
+ indent = Number( val[ 1 ].match( /\d+/ ) );
281
+
282
+ listId !== previousListId && ( attrs[ 'cke:reset' ] = 1 );
283
+ previousListId = listId;
284
+ attrs[ 'cke:indent' ] = indent;
233
285
  } ]
234
- ] )( attrs.style, element ) || '' ;
286
+ ] )( attrs.style, element ) || '';
235
287
  }
236
288
 
237
- // Inherit list-type-style from bullet.
238
- var listBulletAttrs = listMarker.attributes,
239
- listBulletStyle = listBulletAttrs.style;
289
+ // First level list item might be presented without a margin.
240
290
 
241
- element.addStyle( listBulletStyle );
242
- CKEDITOR.tools.extend( attrs, listBulletAttrs );
291
+
292
+ // In case all above doesn't apply.
293
+ if ( !attrs[ 'cke:indent' ] )
294
+ {
295
+ previousListItemMargin = 0;
296
+ attrs[ 'cke:indent' ] = 1;
297
+ }
298
+
299
+ // Inherit attributes from bullet.
300
+ CKEDITOR.tools.extend( attrs, listMarker.attributes );
243
301
  return true;
244
302
  }
303
+ // Current list disconnected.
304
+ else
305
+ previousListId = previousListItemMargin = listBaseIndent = null;
245
306
 
246
307
  return false;
247
308
  },
@@ -307,7 +368,7 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
307
368
  // Resolve how many level nested.
308
369
  while ( parent )
309
370
  {
310
- parent.attributes && parent.attributes[ 'cke:list'] && indentLevel++;
371
+ parent.attributes && parent.attributes[ 'cke:list' ] && indentLevel++;
311
372
  parent = parent.parent;
312
373
  }
313
374
 
@@ -346,10 +407,29 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
346
407
  }
347
408
 
348
409
  child.name = 'cke:li';
410
+
411
+ // Inherit numbering from list root on the first list item.
412
+ attrs.start && !i && ( attributes.value = attrs.start );
413
+
414
+ plugin.filters.stylesFilter(
415
+ [
416
+ [ 'tab-stops', null, function( val )
417
+ {
418
+ var margin = val.split( ' ' )[ 1 ].match( cssLengthRelativeUnit );
419
+ margin && ( previousListItemMargin = parseInt( plugin.utils.convertToPx( margin[ 0 ] ), 10 ) );
420
+ } ],
421
+ [ 'mso-list', null, function( val )
422
+ {
423
+ val = val.split( ' ' );
424
+ var listId = Number( val[ 0 ].match( /\d+/ ) );
425
+ listId !== previousListId && ( attributes[ 'cke:reset' ] = 1 );
426
+ previousListId = listId;
427
+ } ]
428
+ ] )( attributes.style );
429
+
349
430
  attributes[ 'cke:indent' ] = indentLevel;
350
- previousListItemMargin = 0;
351
431
  attributes[ 'cke:listtype' ] = element.name;
352
- listStyleType && child.addStyle( 'list-style-type', listStyleType, true );
432
+ attributes[ 'cke:list-style-type' ] = listStyleType;
353
433
  }
354
434
  }
355
435
 
@@ -369,11 +449,19 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
369
449
  var children = element.children, child,
370
450
  listItem, // The current processing cke:li element.
371
451
  listItemAttrs,
372
- listType, // Determine the root type of the list.
373
452
  listItemIndent, // Indent level of current list item.
453
+ lastIndent,
374
454
  lastListItem, // The previous one just been added to the list.
375
- list, parentList, // Current staging list and it's parent list if any.
376
- indent;
455
+ list, // Current staging list and it's parent list if any.
456
+ openedLists = [],
457
+ previousListStyleType,
458
+ previousListType;
459
+
460
+ // Properties of the list item are to be resolved from the list bullet.
461
+ var bullet,
462
+ listType,
463
+ listStyleType,
464
+ itemNumeric;
377
465
 
378
466
  for ( var i = 0; i < children.length; i++ )
379
467
  {
@@ -384,43 +472,128 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
384
472
  child.name = 'li';
385
473
  listItem = child;
386
474
  listItemAttrs = listItem.attributes;
387
- listType = listItem.attributes[ 'cke:listtype' ];
475
+ bullet = listItemAttrs[ 'cke:listsymbol' ];
476
+ bullet = bullet && bullet.match( /^(?:[(]?)([^\s]+?)([.)]?)$/ );
477
+ listType = listStyleType = itemNumeric = null;
478
+
479
+ if ( listItemAttrs[ 'cke:ignored' ] )
480
+ {
481
+ children.splice( i--, 1 );
482
+ continue;
483
+ }
484
+
485
+
486
+ // This's from a new list root.
487
+ listItemAttrs[ 'cke:reset' ] && ( list = lastIndent = lastListItem = null );
388
488
 
389
489
  // List item indent level might come from a real list indentation or
390
490
  // been resolved from a pseudo list item's margin value, even get
391
491
  // no indentation at all.
392
- listItemIndent = parseInt( listItemAttrs[ 'cke:indent' ], 10 )
393
- || listBaseIndent && ( Math.ceil( listItemAttrs[ 'cke:margin' ] / listBaseIndent ) )
394
- || 1;
395
-
396
- // Ignore the 'list-style-type' attribute if it's matched with
397
- // the list root element's default style type.
398
- listItemAttrs.style && ( listItemAttrs.style =
399
- CKEDITOR.plugins.pastefromword.filters.stylesFilter(
400
- [
401
- [ 'list-style-type', listType == 'ol' ? 'decimal' : 'disc' ]
402
- ] )( listItemAttrs.style )
403
- || '' );
492
+ listItemIndent = Number( listItemAttrs[ 'cke:indent' ] );
493
+
494
+ // We're moving out of the current list, cleaning up.
495
+ if ( listItemIndent != lastIndent )
496
+ previousListType = previousListStyleType = null;
497
+
498
+ // List type and item style are already resolved.
499
+ if ( !bullet )
500
+ {
501
+ listType = listItemAttrs[ 'cke:listtype' ] || 'ol';
502
+ listStyleType = listItemAttrs[ 'cke:list-style-type' ];
503
+ }
504
+ else
505
+ {
506
+ // Probably share the same list style type with previous list item,
507
+ // give it priority to avoid ambiguous between C(Alpha) and C.(Roman).
508
+ if ( previousListType && listMarkerPatterns[ previousListType ] [ previousListStyleType ].test( bullet[ 1 ] ) )
509
+ {
510
+ listType = previousListType;
511
+ listStyleType = previousListStyleType;
512
+ }
513
+ else
514
+ {
515
+ for ( var type in listMarkerPatterns )
516
+ {
517
+ for ( var style in listMarkerPatterns[ type ] )
518
+ {
519
+ if ( listMarkerPatterns[ type ][ style ].test( bullet[ 1 ] ) )
520
+ {
521
+ // Small numbering has higher priority, when dealing with ambiguous
522
+ // between C(Alpha) and C.(Roman).
523
+ if ( type == 'ol' && ( /alpha|roman/ ).test( style ) )
524
+ {
525
+ var num = /roman/.test( style ) ? fromRoman( bullet[ 1 ] ) : fromAlphabet( bullet[ 1 ] );
526
+ if ( !itemNumeric || num < itemNumeric )
527
+ {
528
+ itemNumeric = num;
529
+ listType = type;
530
+ listStyleType = style;
531
+ }
532
+ }
533
+ else
534
+ {
535
+ listType = type;
536
+ listStyleType = style;
537
+ break;
538
+ }
539
+ }
540
+ }
541
+ }
542
+ }
543
+
544
+ // Simply use decimal/disc for the rest forms of unrepresentable
545
+ // numerals, e.g. Chinese..., but as long as there a second part
546
+ // included, it has a bigger chance of being a order list ;)
547
+ !listType && ( listType = bullet[ 2 ] ? 'ol' : 'ul' );
548
+ }
549
+
550
+ previousListType = listType;
551
+ previousListStyleType = listStyleType || ( listType == 'ol' ? 'decimal' : 'disc' );
552
+ if ( listStyleType && listStyleType != ( listType == 'ol' ? 'decimal' : 'disc' ) )
553
+ listItem.addStyle( 'list-style-type', listStyleType );
404
554
 
555
+ // Figure out start numbering.
556
+ if ( listType == 'ol' && bullet )
557
+ {
558
+ switch ( listStyleType )
559
+ {
560
+ case 'decimal' :
561
+ itemNumeric = Number( bullet[ 1 ] );
562
+ break;
563
+ case 'lower-roman':
564
+ case 'upper-roman':
565
+ itemNumeric = fromRoman( bullet[ 1 ] );
566
+ break;
567
+ case 'lower-alpha':
568
+ case 'upper-alpha':
569
+ itemNumeric = fromAlphabet( bullet[ 1 ] );
570
+ break;
571
+ }
572
+
573
+ // Always create the numbering, swipe out unnecessary ones later.
574
+ listItem.attributes.value = itemNumeric;
575
+ }
576
+
577
+ // Start the list construction.
405
578
  if ( !list )
406
579
  {
407
- list = new CKEDITOR.htmlParser.element( listType );
580
+ openedLists.push( list = new CKEDITOR.htmlParser.element( listType ) );
408
581
  list.add( listItem );
409
582
  children[ i ] = list;
410
583
  }
411
584
  else
412
585
  {
413
- if ( listItemIndent > indent )
586
+ if ( listItemIndent > lastIndent )
414
587
  {
415
- list = new CKEDITOR.htmlParser.element( listType );
588
+ openedLists.push( list = new CKEDITOR.htmlParser.element( listType ) );
416
589
  list.add( listItem );
417
590
  lastListItem.add( list );
418
591
  }
419
- else if ( listItemIndent < indent )
592
+ else if ( listItemIndent < lastIndent )
420
593
  {
421
594
  // There might be a negative gap between two list levels. (#4944)
422
- var diff = indent - listItemIndent,
423
- parent;
595
+ var diff = lastIndent - listItemIndent,
596
+ parent;
424
597
  while ( diff-- && ( parent = list.parent ) )
425
598
  list = parent.parent;
426
599
 
@@ -433,13 +606,16 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
433
606
  }
434
607
 
435
608
  lastListItem = listItem;
436
- indent = listItemIndent;
609
+ lastIndent = listItemIndent;
437
610
  }
438
- else
439
- list = null;
611
+ else if ( list )
612
+ list = lastIndent = lastListItem = null;
440
613
  }
441
614
 
442
- listBaseIndent = 0;
615
+ for ( i = 0; i < openedLists.length; i++ )
616
+ postProcessList( openedLists[ i ] );
617
+
618
+ list = lastIndent = lastListItem = previousListId = previousListItemMargin = listBaseIndent = null;
443
619
  },
444
620
 
445
621
  /**
@@ -465,7 +641,7 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
465
641
  // html-encoded quote might be introduced by 'font-family'
466
642
  // from MS-Word which confused the following regexp. e.g.
467
643
  //'font-family: &quot;Lucida, Console&quot;'
468
- styleText
644
+ ( styleText || '' )
469
645
  .replace( /&quot;/g, '"' )
470
646
  .replace( /\s*([^ :;]+)\s*:\s*([^;]+)\s*(?=;|$)/g,
471
647
  function( match, name, value )
@@ -589,7 +765,6 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
589
765
  stylesFilter = filters.stylesFilter,
590
766
  elementMigrateFilter = filters.elementMigrateFilter,
591
767
  styleMigrateFilter = CKEDITOR.tools.bind( this.filters.styleMigrateFilter, this.filters ),
592
- bogusAttrFilter = filters.bogusAttrFilter,
593
768
  createListBulletMarker = this.utils.createListBulletMarker,
594
769
  flattenList = filters.flattenList,
595
770
  assembleList = filters.assembleList,
@@ -754,11 +929,21 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
754
929
 
755
930
  'p' : function( element )
756
931
  {
757
- element.filterChildren();
932
+ // This's a fall-back approach to recognize list item in FF3.6,
933
+ // as it's not perfect as not all list style (e.g. "heading list") is shipped
934
+ // with this pattern. (#6662)
935
+ if ( /MsoListParagraph/.exec( element.attributes[ 'class' ] ) )
936
+ {
937
+ var bulletText = element.firstChild( function( node )
938
+ {
939
+ return node.type == CKEDITOR.NODE_TEXT && !containsNothingButSpaces( node.parent );
940
+ });
941
+ var bullet = bulletText && bulletText.parent,
942
+ bulletAttrs = bullet && bullet.attributes;
943
+ bulletAttrs && !bulletAttrs.style && ( bulletAttrs.style = 'mso-list: Ignore;' );
944
+ }
758
945
 
759
- var attrs = element.attributes,
760
- parent = element.parent,
761
- children = element.children;
946
+ element.filterChildren();
762
947
 
763
948
  // Is the paragraph actually a list item?
764
949
  if ( resolveListItem( element ) )
@@ -810,8 +995,8 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
810
995
 
811
996
  'font' : function( element )
812
997
  {
813
- // IE/Safari: drop the font tag if it comes from list bullet text.
814
- if ( !CKEDITOR.env.gecko && isListBulletIndicator( element.parent ) )
998
+ // Drop the font tag if it comes from list bullet text.
999
+ if ( isListBulletIndicator( element.parent ) )
815
1000
  {
816
1001
  delete element.name;
817
1002
  return;
@@ -829,7 +1014,6 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
829
1014
  element.attributes );
830
1015
  styleText && parent.addStyle( styleText );
831
1016
  delete element.name;
832
- return;
833
1017
  }
834
1018
  // Convert the merged into a span with all attributes preserved.
835
1019
  else
@@ -863,8 +1047,8 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
863
1047
 
864
1048
  'span' : function( element )
865
1049
  {
866
- // IE/Safari: remove the span if it comes from list bullet text.
867
- if ( !CKEDITOR.env.gecko && isListBulletIndicator( element.parent ) )
1050
+ // Remove the span if it comes from list bullet text.
1051
+ if ( isListBulletIndicator( element.parent ) )
868
1052
  return false;
869
1053
 
870
1054
  element.filterChildren();
@@ -874,9 +1058,9 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
874
1058
  return null;
875
1059
  }
876
1060
 
877
- // For IE/Safari: List item bullet type is supposed to be indicated by
1061
+ // List item bullet type is supposed to be indicated by
878
1062
  // the text of a span with style 'mso-list : Ignore' or an image.
879
- if ( !CKEDITOR.env.gecko && isListBulletIndicator( element ) )
1063
+ if ( isListBulletIndicator( element ) )
880
1064
  {
881
1065
  var listSymbolNode = element.firstChild( function( node )
882
1066
  {
@@ -884,8 +1068,18 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
884
1068
  });
885
1069
 
886
1070
  var listSymbol = listSymbolNode && ( listSymbolNode.value || 'l.' ),
887
- listType = listSymbol.match( /^([^\s]+?)([.)]?)$/ );
888
- return createListBulletMarker( listType, listSymbol );
1071
+ listType = listSymbol && listSymbol.match( /^(?:[(]?)([^\s]+?)([.)]?)$/ );
1072
+
1073
+ if ( listType )
1074
+ {
1075
+ var marker = createListBulletMarker( listType, listSymbol );
1076
+ // Some non-existed list items might be carried by an inconsequential list, indicate by "mso-hide:all/display:none",
1077
+ // those are to be removed later, now mark it with "cke:ignored".
1078
+ var ancestor = element.getAncestor( 'span' );
1079
+ if ( ancestor && (/ mso-hide:\s*all|display:\s*none /).test( ancestor.attributes.style ) )
1080
+ marker.attributes[ 'cke:ignored' ] = 1;
1081
+ return marker;
1082
+ }
889
1083
  }
890
1084
 
891
1085
  // Update the src attribute of image element with href.
@@ -931,7 +1125,7 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
931
1125
  {
932
1126
  if ( element.getAncestor( /h\d/ ) && !config.pasteFromWordNumberedHeadingToList )
933
1127
  delete element.name;
934
- }
1128
+ }
935
1129
  },
936
1130
 
937
1131
  attributeNames :
@@ -953,6 +1147,9 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
953
1147
  // Provide a white-list of styles that we preserve, those should
954
1148
  // be the ones that could later be altered with editor tools.
955
1149
  [
1150
+ // Leave list-style-type
1151
+ [ ( /^list-style-type$/ ), null ],
1152
+
956
1153
  // Preserve margin-left/right which used as default indent style in the editor.
957
1154
  [ ( /^margin$|^margin-(?!bottom|top)/ ), null, function( value, element, name )
958
1155
  {
@@ -1059,7 +1256,7 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
1059
1256
  {
1060
1257
  // Bullet symbol could be either text or an image.
1061
1258
  var listSymbol = listInfo[ 1 ] || ( imageInfo && 'l.' ),
1062
- listType = listSymbol && listSymbol.match( />([^\s]+?)([.)]?)</ );
1259
+ listType = listSymbol && listSymbol.match( />(?:[(]?)([^\s]+?)([.)]?)</ );
1063
1260
  return createListBulletMarker( listType, listSymbol );
1064
1261
  }
1065
1262
 
@@ -1082,7 +1279,7 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
1082
1279
  : falsyFilter
1083
1280
  };
1084
1281
  }
1085
- };
1282
+ });
1086
1283
 
1087
1284
  // The paste processor here is just a reduced copy of html data processor.
1088
1285
  var pasteProcessor = function()