kiteditor 1.0.1
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.
- data/LICENSE +25 -0
- data/app/controllers/mercury/images_controller.rb +5 -0
- data/app/controllers/mercury_controller.rb +34 -0
- data/app/models/mercury/image.rb +17 -0
- data/app/views/layouts/mercury.html.erb +33 -0
- data/app/views/layouts/popup.html.haml +9 -0
- data/app/views/mercury/images/_list.html.haml +22 -0
- data/app/views/mercury/images/index.html.haml +4 -0
- data/app/views/mercury/images/index.js.erb +2 -0
- data/app/views/mercury/lightviews/about.html +11 -0
- data/app/views/mercury/modals/character.html +255 -0
- data/app/views/mercury/modals/htmleditor.html +13 -0
- data/app/views/mercury/modals/link.html +94 -0
- data/app/views/mercury/modals/media.html +1 -0
- data/app/views/mercury/modals/table.html +84 -0
- data/app/views/mercury/palettes/backcolor.html +73 -0
- data/app/views/mercury/palettes/forecolor.html +73 -0
- data/app/views/mercury/panels/history.html +3 -0
- data/app/views/mercury/panels/notes.html +3 -0
- data/app/views/mercury/panels/snippets.html +12 -0
- data/app/views/mercury/selects/formatblock.html +11 -0
- data/app/views/mercury/selects/style.html +5 -0
- data/app/views/mercury/snippets/example/options.html.erb +34 -0
- data/app/views/mercury/snippets/example/preview.html.erb +1 -0
- data/config/engine.rb +44 -0
- data/db/migrate/20110526035601_create_mercury_images.rb +11 -0
- data/features/loading/loading.feature +22 -0
- data/features/loading/navigating.feature +77 -0
- data/features/loading/user_interface.feature +67 -0
- data/features/regions/editable/advanced_editing.feature +0 -0
- data/features/regions/editable/basic_editing.feature +195 -0
- data/features/regions/editable/inserting_links.feature +98 -0
- data/features/regions/editable/inserting_media.feature +110 -0
- data/features/regions/editable/inserting_snippets.feature +102 -0
- data/features/regions/editable/inserting_special_characters.feature +24 -0
- data/features/regions/editable/inserting_tables.feature +109 -0
- data/features/regions/editable/pasting.feature +0 -0
- data/features/regions/editable/uploading_images.feature +0 -0
- data/features/regions/markupable/advanced_editing.feature +0 -0
- data/features/regions/markupable/basic_editing.feature +0 -0
- data/features/regions/markupable/inserting_links.feature +0 -0
- data/features/regions/markupable/inserting_media.feature +0 -0
- data/features/regions/markupable/inserting_snippets.feature +0 -0
- data/features/regions/markupable/inserting_special_characters.feature +0 -0
- data/features/regions/markupable/inserting_tables.feature +0 -0
- data/features/regions/markupable/uploading_images.feature +0 -0
- data/features/regions/snippetable/advanced_editing.feature +0 -0
- data/features/regions/snippetable/basic_editing.feature +0 -0
- data/features/regions/snippetable/inserting_snippets.feature +0 -0
- data/features/saving/saving.feature +33 -0
- data/features/step_definitions/debug_steps.rb +14 -0
- data/features/step_definitions/mercury_steps.rb +438 -0
- data/features/step_definitions/web_steps.rb +211 -0
- data/features/support/env.rb +46 -0
- data/features/support/mercury_contents.rb +25 -0
- data/features/support/mercury_selectors.rb +148 -0
- data/features/support/paths.rb +38 -0
- data/features/support/selectors.rb +44 -0
- data/lib/generators/mercury/install/install_generator.rb +49 -0
- data/lib/generators/mercury/install/templates/mongoid_paperclip_image.rb +17 -0
- data/lib/mercury/authentication.rb +8 -0
- data/lib/mercury-rails.rb +3 -0
- data/spec/javascripts/mercury/dialog_spec.js.coffee +281 -0
- data/spec/javascripts/mercury/dialogs/backcolor_spec.js.coffee +37 -0
- data/spec/javascripts/mercury/dialogs/forecolor_spec.js.coffee +37 -0
- data/spec/javascripts/mercury/dialogs/formatblock_spec.js.coffee +25 -0
- data/spec/javascripts/mercury/dialogs/snippetpanel_spec.js.coffee +30 -0
- data/spec/javascripts/mercury/dialogs/style_spec.js.coffee +25 -0
- data/spec/javascripts/mercury/history_buffer_spec.js.coffee +76 -0
- data/spec/javascripts/mercury/lightview_spec.js.coffee +497 -0
- data/spec/javascripts/mercury/mercury_spec.js.coffee +132 -0
- data/spec/javascripts/mercury/modal_spec.js.coffee +504 -0
- data/spec/javascripts/mercury/modals/htmleditor_spec.js.coffee +30 -0
- data/spec/javascripts/mercury/modals/insertcharacter_spec.js.coffee +29 -0
- data/spec/javascripts/mercury/modals/insertlink_spec.js.coffee +220 -0
- data/spec/javascripts/mercury/modals/insertmedia_spec.js.coffee +167 -0
- data/spec/javascripts/mercury/modals/insertsnippet_spec.js.coffee +52 -0
- data/spec/javascripts/mercury/modals/inserttable_spec.js.coffee +160 -0
- data/spec/javascripts/mercury/native_extensions_spec.js.coffee +60 -0
- data/spec/javascripts/mercury/page_editor_spec.js.coffee +750 -0
- data/spec/javascripts/mercury/palette_spec.js.coffee +49 -0
- data/spec/javascripts/mercury/panel_spec.js.coffee +185 -0
- data/spec/javascripts/mercury/region_spec.js.coffee +298 -0
- data/spec/javascripts/mercury/regions/editable_spec.js.coffee +561 -0
- data/spec/javascripts/mercury/regions/markupable_spec.js.coffee +367 -0
- data/spec/javascripts/mercury/regions/snippetable_spec.js.coffee +370 -0
- data/spec/javascripts/mercury/select_spec.js.coffee +49 -0
- data/spec/javascripts/mercury/snippet_spec.js.coffee +245 -0
- data/spec/javascripts/mercury/snippet_toolbar_spec.js.coffee +184 -0
- data/spec/javascripts/mercury/statusbar_spec.js.coffee +150 -0
- data/spec/javascripts/mercury/table_editor_spec.js.coffee +194 -0
- data/spec/javascripts/mercury/toolbar.button_group_spec.js.coffee +90 -0
- data/spec/javascripts/mercury/toolbar.button_spec.js.coffee +360 -0
- data/spec/javascripts/mercury/toolbar.expander_spec.js.coffee +118 -0
- data/spec/javascripts/mercury/toolbar_spec.js.coffee +222 -0
- data/spec/javascripts/mercury/tooltip_spec.js.coffee +186 -0
- data/spec/javascripts/mercury/uploader_spec.js.coffee +514 -0
- data/spec/javascripts/spec_helper.js +513 -0
- data/spec/javascripts/templates/mercury/dialog.html +2 -0
- data/spec/javascripts/templates/mercury/dialogs/backcolor.html +5 -0
- data/spec/javascripts/templates/mercury/dialogs/forecolor.html +5 -0
- data/spec/javascripts/templates/mercury/dialogs/formatblock.html +3 -0
- data/spec/javascripts/templates/mercury/dialogs/snippetpanel.html +16 -0
- data/spec/javascripts/templates/mercury/dialogs/style.html +3 -0
- data/spec/javascripts/templates/mercury/lightview.html +13 -0
- data/spec/javascripts/templates/mercury/modal.html +13 -0
- data/spec/javascripts/templates/mercury/modals/htmleditor.html +5 -0
- data/spec/javascripts/templates/mercury/modals/insertcharacter.html +5 -0
- data/spec/javascripts/templates/mercury/modals/insertlink.html +30 -0
- data/spec/javascripts/templates/mercury/modals/insertmedia.html +35 -0
- data/spec/javascripts/templates/mercury/modals/insertsnippet.html +6 -0
- data/spec/javascripts/templates/mercury/modals/inserttable.html +27 -0
- data/spec/javascripts/templates/mercury/page_editor.html +35 -0
- data/spec/javascripts/templates/mercury/palette.html +16 -0
- data/spec/javascripts/templates/mercury/panel.html +16 -0
- data/spec/javascripts/templates/mercury/region.html +2 -0
- data/spec/javascripts/templates/mercury/regions/editable.html +3 -0
- data/spec/javascripts/templates/mercury/regions/snippetable.html +4 -0
- data/spec/javascripts/templates/mercury/select.html +16 -0
- data/spec/javascripts/templates/mercury/snippet.html +1 -0
- data/spec/javascripts/templates/mercury/snippet_toolbar.html +16 -0
- data/spec/javascripts/templates/mercury/statusbar.html +8 -0
- data/spec/javascripts/templates/mercury/table_editor.html +65 -0
- data/spec/javascripts/templates/mercury/toolbar.button.html +64 -0
- data/spec/javascripts/templates/mercury/toolbar.button_group.html +9 -0
- data/spec/javascripts/templates/mercury/toolbar.expander.html +18 -0
- data/spec/javascripts/templates/mercury/toolbar.html +11 -0
- data/spec/javascripts/templates/mercury/tooltip.html +12 -0
- data/spec/javascripts/templates/mercury/uploader.html +11 -0
- data/vendor/assets/images/mercury/button.png +0 -0
- data/vendor/assets/images/mercury/close.png +0 -0
- data/vendor/assets/images/mercury/default-snippet.png +0 -0
- data/vendor/assets/images/mercury/loading-dark.gif +0 -0
- data/vendor/assets/images/mercury/loading-light.gif +0 -0
- data/vendor/assets/images/mercury/missing-image.png +0 -0
- data/vendor/assets/images/mercury/search-icon.png +0 -0
- data/vendor/assets/images/mercury/temp-logo.png +0 -0
- data/vendor/assets/images/mercury/toolbar/editable/buttons.png +0 -0
- data/vendor/assets/images/mercury/toolbar/primary/_expander.png +0 -0
- data/vendor/assets/images/mercury/toolbar/primary/_pressed.png +0 -0
- data/vendor/assets/images/mercury/toolbar/primary/historypanel.png +0 -0
- data/vendor/assets/images/mercury/toolbar/primary/insertcharacter.png +0 -0
- data/vendor/assets/images/mercury/toolbar/primary/insertlink.png +0 -0
- data/vendor/assets/images/mercury/toolbar/primary/insertmedia.png +0 -0
- data/vendor/assets/images/mercury/toolbar/primary/inserttable.png +0 -0
- data/vendor/assets/images/mercury/toolbar/primary/inspectorpanel.png +0 -0
- data/vendor/assets/images/mercury/toolbar/primary/notespanel.png +0 -0
- data/vendor/assets/images/mercury/toolbar/primary/preview.png +0 -0
- data/vendor/assets/images/mercury/toolbar/primary/redo.png +0 -0
- data/vendor/assets/images/mercury/toolbar/primary/save.png +0 -0
- data/vendor/assets/images/mercury/toolbar/primary/snippetpanel.png +0 -0
- data/vendor/assets/images/mercury/toolbar/primary/undo.png +0 -0
- data/vendor/assets/images/mercury/toolbar/snippetable/buttons.png +0 -0
- data/vendor/assets/javascripts/mercury/dependencies/jquery-1.7.js +9300 -0
- data/vendor/assets/javascripts/mercury/dependencies/jquery-ui-1.8.13.custom.js +1328 -0
- data/vendor/assets/javascripts/mercury/dependencies/jquery-ui-1.8.18.custom.min.js +356 -0
- data/vendor/assets/javascripts/mercury/dependencies/jquery-ui.1.8.13.custom.min.js +356 -0
- data/vendor/assets/javascripts/mercury/dependencies/jquery.additions.js +206 -0
- data/vendor/assets/javascripts/mercury/dependencies/jquery.htmlClean.js +527 -0
- data/vendor/assets/javascripts/mercury/dependencies/liquidmetal.js +88 -0
- data/vendor/assets/javascripts/mercury/dependencies/showdown.js +1340 -0
- data/vendor/assets/javascripts/mercury/dialog.js.coffee +159 -0
- data/vendor/assets/javascripts/mercury/dialogs/backcolor.js.coffee +6 -0
- data/vendor/assets/javascripts/mercury/dialogs/forecolor.js.coffee +6 -0
- data/vendor/assets/javascripts/mercury/dialogs/formatblock.js.coffee +4 -0
- data/vendor/assets/javascripts/mercury/dialogs/snippetpanel.js.coffee +10 -0
- data/vendor/assets/javascripts/mercury/dialogs/style.js.coffee +4 -0
- data/vendor/assets/javascripts/mercury/finalize.js.coffee +3 -0
- data/vendor/assets/javascripts/mercury/history_buffer.js.coffee +30 -0
- data/vendor/assets/javascripts/mercury/lightview.js.coffee +205 -0
- data/vendor/assets/javascripts/mercury/locales/da.locale.js.coffee +0 -0
- data/vendor/assets/javascripts/mercury/locales/de.locale.js.coffee +206 -0
- data/vendor/assets/javascripts/mercury/locales/es.locale.js.coffee +211 -0
- data/vendor/assets/javascripts/mercury/locales/example.local.js.coffee +211 -0
- data/vendor/assets/javascripts/mercury/locales/fr.locale.js.coffee +211 -0
- data/vendor/assets/javascripts/mercury/locales/it.locale.js.coffee +208 -0
- data/vendor/assets/javascripts/mercury/locales/ko.local.js.coffee +206 -0
- data/vendor/assets/javascripts/mercury/locales/nl.locale.js.coffee +206 -0
- data/vendor/assets/javascripts/mercury/locales/pt.locale.js.coffee +211 -0
- data/vendor/assets/javascripts/mercury/locales/sv.local.js.coffee +209 -0
- data/vendor/assets/javascripts/mercury/locales/swedish_chef.locale.js.coffee +213 -0
- data/vendor/assets/javascripts/mercury/mercury.js.coffee +109 -0
- data/vendor/assets/javascripts/mercury/modal.js.coffee +204 -0
- data/vendor/assets/javascripts/mercury/modals/htmleditor.js.coffee +11 -0
- data/vendor/assets/javascripts/mercury/modals/insertcharacter.js.coffee +4 -0
- data/vendor/assets/javascripts/mercury/modals/insertlink.js.coffee +95 -0
- data/vendor/assets/javascripts/mercury/modals/insertmedia.js.coffee +107 -0
- data/vendor/assets/javascripts/mercury/modals/insertsnippet.js.coffee +12 -0
- data/vendor/assets/javascripts/mercury/modals/inserttable.js.coffee +54 -0
- data/vendor/assets/javascripts/mercury/native_extensions.js.coffee +55 -0
- data/vendor/assets/javascripts/mercury/page_editor.js.coffee +241 -0
- data/vendor/assets/javascripts/mercury/palette.js.coffee +29 -0
- data/vendor/assets/javascripts/mercury/panel.js.coffee +115 -0
- data/vendor/assets/javascripts/mercury/plugins/save_as_xml/mercury/page_editor.js.coffee +28 -0
- data/vendor/assets/javascripts/mercury/plugins/save_as_xml/plugin.js +9 -0
- data/vendor/assets/javascripts/mercury/region.js.coffee +107 -0
- data/vendor/assets/javascripts/mercury/regions/editable.js.coffee +600 -0
- data/vendor/assets/javascripts/mercury/regions/markupable.js.coffee +398 -0
- data/vendor/assets/javascripts/mercury/regions/simple.js.coffee +339 -0
- data/vendor/assets/javascripts/mercury/regions/snippetable.js.coffee +124 -0
- data/vendor/assets/javascripts/mercury/select.js.coffee +44 -0
- data/vendor/assets/javascripts/mercury/snippet.js.coffee +104 -0
- data/vendor/assets/javascripts/mercury/snippet_toolbar.js.coffee +72 -0
- data/vendor/assets/javascripts/mercury/statusbar.js.coffee +51 -0
- data/vendor/assets/javascripts/mercury/support/history.js +1 -0
- data/vendor/assets/javascripts/mercury/table_editor.js.coffee +265 -0
- data/vendor/assets/javascripts/mercury/toolbar.button.js.coffee +173 -0
- data/vendor/assets/javascripts/mercury/toolbar.button_group.js.coffee +42 -0
- data/vendor/assets/javascripts/mercury/toolbar.expander.js.coffee +56 -0
- data/vendor/assets/javascripts/mercury/toolbar.js.coffee +86 -0
- data/vendor/assets/javascripts/mercury/tooltip.js.coffee +74 -0
- data/vendor/assets/javascripts/mercury/uploader.js.coffee +227 -0
- data/vendor/assets/javascripts/mercury.js +479 -0
- data/vendor/assets/javascripts/mercury_loader.js +193 -0
- data/vendor/assets/javascripts/mercury_overrides.js +6 -0
- data/vendor/assets/javascripts/popup.js +8 -0
- data/vendor/assets/stylesheets/mercury/all_images.css.erb +89 -0
- data/vendor/assets/stylesheets/mercury/dialog.css +208 -0
- data/vendor/assets/stylesheets/mercury/lightview.css +151 -0
- data/vendor/assets/stylesheets/mercury/mercury.css +151 -0
- data/vendor/assets/stylesheets/mercury/modal.css +183 -0
- data/vendor/assets/stylesheets/mercury/statusbar.css +32 -0
- data/vendor/assets/stylesheets/mercury/toolbar.css +304 -0
- data/vendor/assets/stylesheets/mercury/tooltip.css +26 -0
- data/vendor/assets/stylesheets/mercury/uploader.css +111 -0
- data/vendor/assets/stylesheets/mercury.css +28 -0
- data/vendor/assets/stylesheets/mercury_overrides.css +17 -0
- data/vendor/assets/stylesheets/popup.css.erb +37 -0
- metadata +634 -0
@@ -0,0 +1,367 @@
|
|
1
|
+
describe "Mercury.Regions.Markupable", ->
|
2
|
+
|
3
|
+
template 'mercury/regions/markupable.html'
|
4
|
+
|
5
|
+
beforeEach ->
|
6
|
+
@regionElement = $('#markupable_region1')
|
7
|
+
|
8
|
+
describe "constructor", ->
|
9
|
+
|
10
|
+
beforeEach ->
|
11
|
+
@buildSpy = spyOn(Mercury.Regions.Markupable.prototype, 'build').andCallFake(=>)
|
12
|
+
@bindEventsSpy = spyOn(Mercury.Regions.Markupable.prototype, 'bindEvents').andCallFake(=>)
|
13
|
+
spyOn(Mercury.Regions.Markupable.prototype, 'pushHistory').andCallFake(=>)
|
14
|
+
|
15
|
+
it "expects an element and window", ->
|
16
|
+
@region = new Mercury.Regions.Markupable(@regionElement, window)
|
17
|
+
expect(@region.element.get(0)).toEqual($('#markupable_region1').get(0))
|
18
|
+
expect(@region.window).toEqual(window)
|
19
|
+
|
20
|
+
it "accepts options", ->
|
21
|
+
@region = new Mercury.Regions.Markupable(@regionElement, window, {foo: 'something'})
|
22
|
+
expect(@region.options).toEqual({foo: 'something'})
|
23
|
+
|
24
|
+
it "sets it's type", ->
|
25
|
+
@region = new Mercury.Regions.Markupable(@regionElement, window)
|
26
|
+
expect(@region.type).toEqual('markupable')
|
27
|
+
|
28
|
+
it "creates a markdown converter using Showdown", ->
|
29
|
+
spy = spyOn(Showdown, 'converter').andCallFake(=>)
|
30
|
+
@region = new Mercury.Regions.Markupable(@regionElement, window)
|
31
|
+
expect(spy.callCount).toEqual(1)
|
32
|
+
expect(@region.converter).toBeDefined()
|
33
|
+
|
34
|
+
it "calls build", ->
|
35
|
+
@region = new Mercury.Regions.Markupable(@regionElement, window)
|
36
|
+
expect(@buildSpy.callCount).toEqual(1)
|
37
|
+
|
38
|
+
it "calls bindEvents", ->
|
39
|
+
@region = new Mercury.Regions.Markupable(@regionElement, window)
|
40
|
+
expect(@bindEventsSpy.callCount).toEqual(1)
|
41
|
+
|
42
|
+
|
43
|
+
describe "#build", ->
|
44
|
+
|
45
|
+
it "creates a textarea", ->
|
46
|
+
|
47
|
+
it "fills the textarea with the contents of the element", ->
|
48
|
+
|
49
|
+
it "sets some styles on the textarea", ->
|
50
|
+
|
51
|
+
it "appends the textarea to the element", ->
|
52
|
+
|
53
|
+
it "creates a preview element", ->
|
54
|
+
|
55
|
+
it "appends the preview element to the element", ->
|
56
|
+
|
57
|
+
it "element is reassigned to the textarea", ->
|
58
|
+
|
59
|
+
it "calls resize", ->
|
60
|
+
|
61
|
+
|
62
|
+
describe "#focus", ->
|
63
|
+
|
64
|
+
it "calls focus on the element", ->
|
65
|
+
|
66
|
+
|
67
|
+
describe "observed events", ->
|
68
|
+
|
69
|
+
describe "custom event: mode", ->
|
70
|
+
|
71
|
+
it "calls togglePreview if the mode is preview", ->
|
72
|
+
|
73
|
+
describe "custom event: focus:frame", ->
|
74
|
+
|
75
|
+
it "calls focus", ->
|
76
|
+
|
77
|
+
it "does nothing if previewing", ->
|
78
|
+
|
79
|
+
it "does nothing if it's not the active region", ->
|
80
|
+
|
81
|
+
describe "custom event: action", ->
|
82
|
+
|
83
|
+
it "calls execCommand", ->
|
84
|
+
|
85
|
+
it "does nothing if previewing", ->
|
86
|
+
|
87
|
+
it "does nothing if it's not the active region", ->
|
88
|
+
|
89
|
+
describe "custom event: unfocus:regions", ->
|
90
|
+
|
91
|
+
it "blurs the element", ->
|
92
|
+
|
93
|
+
it "removes the focus class from the element", ->
|
94
|
+
|
95
|
+
it "triggers the region:blurred event", ->
|
96
|
+
|
97
|
+
it "does nothing if previewing", ->
|
98
|
+
|
99
|
+
it "does nothing if it's not the active region", ->
|
100
|
+
|
101
|
+
describe "dragenter", ->
|
102
|
+
|
103
|
+
it "prevents the default action", ->
|
104
|
+
|
105
|
+
it "does nothing if previewing", ->
|
106
|
+
|
107
|
+
describe "dragover", ->
|
108
|
+
|
109
|
+
it "prevents the default action", ->
|
110
|
+
|
111
|
+
it "does nothing if previewing", ->
|
112
|
+
|
113
|
+
describe "drop", ->
|
114
|
+
|
115
|
+
it "does nothing if previewing", ->
|
116
|
+
|
117
|
+
describe "when there's an active snippet", ->
|
118
|
+
|
119
|
+
it "calls focus", ->
|
120
|
+
|
121
|
+
it "calls displayOptionsFor for the snippet", ->
|
122
|
+
|
123
|
+
it "calls the native undo", ->
|
124
|
+
|
125
|
+
describe "when a file is dropped", ->
|
126
|
+
|
127
|
+
it "calls focus", ->
|
128
|
+
|
129
|
+
it "loads the uploader", ->
|
130
|
+
|
131
|
+
describe "focus", ->
|
132
|
+
|
133
|
+
it "does nothing if previewing", ->
|
134
|
+
|
135
|
+
it "sets the active region to itself", ->
|
136
|
+
|
137
|
+
it "adds the focus class to the element", ->
|
138
|
+
|
139
|
+
it "triggers the region:focused event", ->
|
140
|
+
|
141
|
+
describe "keydown", ->
|
142
|
+
|
143
|
+
it "does nothing if previewing", ->
|
144
|
+
|
145
|
+
it "tells mercury that changes have been made", ->
|
146
|
+
|
147
|
+
it "calls pushHistory", ->
|
148
|
+
|
149
|
+
it "calls execCommand with undo on meta+z", ->
|
150
|
+
|
151
|
+
it "calls execCommand with redo on shift+meta+z", ->
|
152
|
+
|
153
|
+
describe "pressing enter in a list", ->
|
154
|
+
|
155
|
+
it "prevents the default event", ->
|
156
|
+
|
157
|
+
it "adds a new line with the next number or just dash for unordered lists", ->
|
158
|
+
|
159
|
+
describe "pressing tab", ->
|
160
|
+
|
161
|
+
it "calls execCommand with inserHTML and two spaces", ->
|
162
|
+
|
163
|
+
describe "with common actions", ->
|
164
|
+
|
165
|
+
it "calls execCommand with bold on meta+b", ->
|
166
|
+
|
167
|
+
it "calls execCommand with italic on meta+i", ->
|
168
|
+
|
169
|
+
it "calls execCommand with underline on meta+u", ->
|
170
|
+
|
171
|
+
describe "keyup", ->
|
172
|
+
|
173
|
+
it "triggers the region:update event", ->
|
174
|
+
|
175
|
+
it "does nothing if previewing", ->
|
176
|
+
|
177
|
+
describe "mouseup", ->
|
178
|
+
|
179
|
+
it "calls focus", ->
|
180
|
+
|
181
|
+
it "triggers the region:update event", ->
|
182
|
+
|
183
|
+
it "does nothing if previewing", ->
|
184
|
+
|
185
|
+
describe "click on the preview element", ->
|
186
|
+
|
187
|
+
it "sets anchor targets to top if previewing", ->
|
188
|
+
|
189
|
+
|
190
|
+
describe "#content", ->
|
191
|
+
|
192
|
+
describe "when setting the content using a string", ->
|
193
|
+
|
194
|
+
it "sets the value of the element", ->
|
195
|
+
|
196
|
+
describe "when setting the content using an object (with a selection)", ->
|
197
|
+
|
198
|
+
it "sets the value of the element", ->
|
199
|
+
|
200
|
+
it "selects using the selection start/end from the object", ->
|
201
|
+
|
202
|
+
describe "when getting the content", ->
|
203
|
+
|
204
|
+
it "returns the element value", ->
|
205
|
+
|
206
|
+
|
207
|
+
describe "#togglePreview", ->
|
208
|
+
|
209
|
+
describe "when not previewing", ->
|
210
|
+
|
211
|
+
it "sets the value of the preview element to the html from the markdown converter", ->
|
212
|
+
|
213
|
+
it "shows the preview element", ->
|
214
|
+
|
215
|
+
it "hides the element", ->
|
216
|
+
|
217
|
+
describe "when previewing", ->
|
218
|
+
|
219
|
+
it "hides the preview element", ->
|
220
|
+
|
221
|
+
it "shows the element", ->
|
222
|
+
|
223
|
+
|
224
|
+
describe "#execCommand", ->
|
225
|
+
|
226
|
+
it "calls resize", ->
|
227
|
+
|
228
|
+
describe "when a handler exists", ->
|
229
|
+
|
230
|
+
it "calls it if one is defined in actions", ->
|
231
|
+
|
232
|
+
|
233
|
+
describe "#htmlAndSelection", ->
|
234
|
+
|
235
|
+
it "returns an object with the content and the selection start/end", ->
|
236
|
+
|
237
|
+
|
238
|
+
describe "#pushHistory", ->
|
239
|
+
|
240
|
+
it "clears the history timeout", ->
|
241
|
+
|
242
|
+
it "immediately pushes to the history buffer", ->
|
243
|
+
|
244
|
+
it "remembers the last key pressed if one was passed", ->
|
245
|
+
|
246
|
+
describe "when pressing enter, delete, or backspace", ->
|
247
|
+
|
248
|
+
it "immediately pushes to the history buffer", ->
|
249
|
+
|
250
|
+
it "only pushes once for each keyCode (eg. enter enter enter results in one push)", ->
|
251
|
+
|
252
|
+
describe "when pressing any other key", ->
|
253
|
+
|
254
|
+
it "waits for 2.5 seconds and then pushes to the history buffer", ->
|
255
|
+
|
256
|
+
|
257
|
+
describe "#selection", ->
|
258
|
+
|
259
|
+
it "returns a new instance of the selection helper class", ->
|
260
|
+
|
261
|
+
|
262
|
+
describe "#resize", ->
|
263
|
+
|
264
|
+
|
265
|
+
describe "#snippets", ->
|
266
|
+
|
267
|
+
|
268
|
+
|
269
|
+
describe "Mercury.Regions.Markupable.actions", ->
|
270
|
+
|
271
|
+
template 'mercury/regions/markupable.html'
|
272
|
+
|
273
|
+
beforeEach ->
|
274
|
+
#@region = new Mercury.Regions.Markupable($('#markupable_region1'), window)
|
275
|
+
#@actions = Mercury.Regions.Markupable.actions
|
276
|
+
|
277
|
+
describe ".undo", ->
|
278
|
+
|
279
|
+
it "calls undo on the history buffer", ->
|
280
|
+
|
281
|
+
it "sets the contents", ->
|
282
|
+
|
283
|
+
|
284
|
+
describe ".redo", ->
|
285
|
+
|
286
|
+
it "calls redo on the history buffer", ->
|
287
|
+
|
288
|
+
it "sets the contents", ->
|
289
|
+
|
290
|
+
|
291
|
+
describe ".insertHTML", ->
|
292
|
+
|
293
|
+
it "gets the html value if it's a jQuery object", ->
|
294
|
+
|
295
|
+
it "replaces the selection with the content", ->
|
296
|
+
|
297
|
+
|
298
|
+
describe ".insertImage", ->
|
299
|
+
|
300
|
+
it "replaces the selection with the image markup", ->
|
301
|
+
|
302
|
+
|
303
|
+
describe ".insertLink", ->
|
304
|
+
|
305
|
+
it "replaces the selection with the link markup", ->
|
306
|
+
|
307
|
+
|
308
|
+
describe ".insertUnorderedList", ->
|
309
|
+
|
310
|
+
it "replaces the selection with the unordered list markup", ->
|
311
|
+
|
312
|
+
|
313
|
+
describe ".insertOrderedList", ->
|
314
|
+
|
315
|
+
it "replaces the selection with the ordered list markup", ->
|
316
|
+
|
317
|
+
|
318
|
+
describe ".style", ->
|
319
|
+
|
320
|
+
it "wraps the selection in a span tag with a given class", ->
|
321
|
+
|
322
|
+
|
323
|
+
describe ".formatblock", ->
|
324
|
+
|
325
|
+
it "unwraps the line of the selection of any block format markup", ->
|
326
|
+
|
327
|
+
it "wraps the line of the selection with the given block format markup", ->
|
328
|
+
|
329
|
+
|
330
|
+
describe ".bold", ->
|
331
|
+
|
332
|
+
it "wraps the selection in the bold markup (**)", ->
|
333
|
+
|
334
|
+
|
335
|
+
describe ".italic", ->
|
336
|
+
|
337
|
+
it "wraps the selection in the italics markup (_)", ->
|
338
|
+
|
339
|
+
|
340
|
+
describe ".subscript", ->
|
341
|
+
|
342
|
+
it "wraps the selection in a sub tag", ->
|
343
|
+
|
344
|
+
|
345
|
+
describe ".superscript", ->
|
346
|
+
|
347
|
+
it "wraps the selection in a sup tag", ->
|
348
|
+
|
349
|
+
|
350
|
+
describe ".indent", ->
|
351
|
+
|
352
|
+
it "adds a > to the front of the line", ->
|
353
|
+
|
354
|
+
|
355
|
+
describe ".outdent", ->
|
356
|
+
|
357
|
+
it "removes a > from the front of the line", ->
|
358
|
+
|
359
|
+
|
360
|
+
describe ".horizontalRule", ->
|
361
|
+
|
362
|
+
it "replaces the selection with the hr markup (- - -)", ->
|
363
|
+
|
364
|
+
|
365
|
+
describe ".insertSnippet", ->
|
366
|
+
|
367
|
+
it "replaces the selection with the content returned from the snippets getText", ->
|