Neil Jenkins
1a797aca48
Merge pull request #218 from nhnent/leafNodeNames-are-configurable
...
leafNodeNames are configurable
2016-08-05 20:37:12 +10:00
Sungho Kim
b83d071666
leafNodeNames are configurable
2016-07-27 16:59:15 +09:00
Sungho Kim
96b03d4aaf
Fire focus or blur event manually in focus/blur method for MSIE because
...
MSIE invoke focus/blur event listener asynchronously
2016-07-27 16:15:42 +09:00
Neil Jenkins
df9b5add68
Explicit attributes should override defaults
...
Fixes #203
2016-07-16 16:51:24 +10:00
Neil Jenkins
766dea7ccf
Merge inlines when inserting node into range
2016-07-14 12:15:06 +10:00
Neil Jenkins
13241028f1
Workaround Android hiding the keyboard on cut.
2016-07-14 11:32:38 +10:00
Neil Jenkins
aaf84870aa
Ensure focus after paste
2016-07-14 10:39:20 +10:00
Neil Jenkins
db09921d7b
Fix multiple firing of updatePathOnEvent
2016-06-27 13:17:18 +10:00
Neil Jenkins
267085e8c1
Don't disable restore selection on input
...
The only time we don't want to restore selection is if the user explicitly
changes it, by clicking/touching a specific cursor point.
Fixes formatting commands in IE11, where the mutation event first between
calling editor.focus() and the focus event actually firing, rather than
after the focus event as in other browsers.
2016-06-27 12:05:40 +10:00
Neil Jenkins
f060dbf978
Restore selection of focus after call to setHTML.
2016-06-16 14:45:19 +10:00
Neil Jenkins
f593d8ac04
Enforce sane focus/blur events.
...
Because focus/blur events are fired synchonously, browsers can get confused if
UI code starts focusing other elements while inside a focus/blur handler, and
end up firing events in the wrong order which can cause infinite loops.
This change ensures we only get a focus/blur event when they really are
happening, and you always get one then the other.
2016-06-10 11:02:24 +10:00
Neil Jenkins
84ae8a05f5
Interpret null value for set font/size/colour methods correctly.
...
Removes any current formatting of the given type.
2016-06-08 15:38:13 +10:00
Neil Jenkins
048a7296b2
changeFormat should always return self.
2016-06-07 16:27:04 +10:00
Andy Kauffman
8eea926e2b
Limit the undo stack size
...
Add an undo configuration.
If the document is larger than the configured threshold, then limit the
number of undo states that can be saved to the configured amount.
Defaults to no limit.
Merged for #200
2016-06-06 18:50:11 +10:00
Neil Jenkins
bd4d377cf0
Sanitise pasted HTML if DOMPurify library present.
...
This protects against malicious HTML being added to the clipboard, and also
removes unwanted content before insertion.
DOMPurify can be found at https://github.com/cure53/DOMPurify
2016-06-06 12:36:08 +10:00
Neil Jenkins
8b580ed988
Add undo checkpoint on drop.
...
Resolves #188 .
2016-05-26 13:54:26 +10:00
Neil Jenkins
6deae3c188
Strip HTML surrounding copied fragment added by Edge.
...
Fixes #181
2016-05-26 13:09:49 +10:00
Neil Jenkins
d225f384b7
Use selectionchange event if available.
...
Fixes #194 .
2016-05-26 11:07:11 +10:00
Neil Jenkins
aa3857ab77
Use default block config when inserting plain text
2016-05-25 12:41:57 +10:00
Neil Jenkins
f7774c8cf3
Always save selection on blur.
...
Hopefully fixes #194
2016-05-18 18:07:55 +10:00
Neil Jenkins
1f4baefda4
Remove dragover/drop from custom events list.
...
Fixes #183
2016-05-05 12:22:56 +10:00
Neil Jenkins
6c4f8e1aaf
Add support for default <a> attributes
...
Resolves #186 .
2016-05-05 11:50:36 +10:00
Andy Kauffman
f50962db7f
Add a modifyDocument method
...
There are certain times when it is necessary to modify the document
programmatically, such as to set attributes, add tooltips, etc. Such
edits should not be observed as inputs. This method allows edits to be
ignored by the editor.
2016-05-05 11:30:27 +10:00
Andy Kauffman
64ee5db293
insertElement should register as input for older browsers
2016-05-02 13:47:39 -04:00
Neil Jenkins
d9122222b2
Restore range more accurately from bookmark
2016-03-30 16:39:04 +11:00
Neil Jenkins
ed44d72ca7
Add dragover and drop to custom events list
...
Since these are fired by the clipboard handler.
2016-03-30 13:23:47 +11:00
Neil Jenkins
5b4aa6b764
Add getRoot method
2016-03-30 10:42:41 +11:00
Neil Jenkins
bac7c5d2cc
Restore selection on focus, unless explicit click
2016-03-28 09:58:50 +11:00
Neil Jenkins
4ca3b20b8a
Handle old browsers w/o range.getBoundingClientRect
2016-03-24 21:25:14 +11:00
Neil Jenkins
072a2d9fce
Add getCursorPosition method, remove scrollRangeIntoView
...
Scrolling depends so much on the integration. Better to allow the cursor
position to be fetched, and then the integration can do the scrolling when it
wants (for example on each "input" event).
2016-03-24 13:48:09 +11:00
Neil Jenkins
6a348e084b
Make Squire work without an iframe(!)
2016-03-23 17:41:09 +11:00
Neil Jenkins
e133f26db1
Fix getFontInfo iteration up tree
2016-03-18 18:55:21 +11:00
Neil Jenkins
62616ef4ec
Add saveUndoState method to public API
...
For #174
2016-03-11 15:58:32 +11:00
Neil Jenkins
6413034884
Improve copy/paste
...
* In browsers that support it, we now tell it to copy exactly what was selected
in the DOM, and not to add extra gunk which browsers do to preserve exact
styling if pasted into another document.
* Don't use the clipboard APIs with MS Edge, since it only supports plain text.
If we let it fallback to the browser implementation it will insert HTML.
2016-03-11 15:22:49 +11:00
Neil Jenkins
9b88aca813
Fix crash in scrollRangeIntoView if no bounding rect
2016-03-07 17:19:51 +11:00
Neil Jenkins
2fccc317ad
Fix getFontInfo method.
...
Resolves #169
2016-02-03 15:35:13 +11:00
Neil Jenkins
93f7867214
Fix Meta-Left/Right handling in Firefox.
...
Fixes #167 .
2015-12-29 11:15:01 +11:00
Neil Jenkins
8b183c6ef6
Add scrollPointIntoView event for integrations.
2015-12-09 17:29:47 +11:00
Neil Jenkins
9ccf765ba8
Scroll cursor into view after setting selection.
...
Fixes #162 and fixes #165 .
2015-12-09 15:12:47 +11:00
Neil Jenkins
df25d6d596
Add colour/background-colour to result of getFontInfo
...
Resolves #158
2015-12-03 18:14:49 +11:00
Neil Jenkins
0d1f1cf44b
Consistently don't use a space in CSS when setting colour.
...
Fixes #159 .
2015-12-03 17:55:22 +11:00
priceld
abfebbab16
change the walker's currentNode to reflect the changes being made to the tree
2015-12-01 10:53:30 -05:00
Neil Jenkins
987f3afd52
Fix escaping first/last line plain text on insertion.
...
Fixes #157 .
2015-11-20 13:55:57 +11:00
Neil Jenkins
8d178e1a65
Merge pull request #141 from gertsonderby/test/hasFormat
...
Added test suite that checks a number of cases for hasFormat().
2015-10-13 09:10:13 +02:00
Gert Sønderby
c40f900b7d
Fixed copypasta-mistake, nextSibling -> previousSibling.
2015-10-13 08:46:44 +02:00
Ray Brooks
08e85c912b
[Issue-147] Fix Firefox hidden iframe win.getSelection() bug
...
[Issue-147] Fixed code convention errors
2015-10-12 21:52:10 +01:00
Gert K. Sønderby
49ca521704
Fix up ranges in weird cases generated by IE (both start and end to be safe).
2015-10-02 15:26:30 +02:00
Neil Jenkins
9461368a5c
Fix whitespace errors.
...
Thanks to @gertsonderby who pointed these out in #138 .
2015-09-28 15:48:23 +02:00
Gert K. Sønderby
94f5a56255
Added getFontInfo() function, which extracts font-family and font-size styles.
2015-09-03 11:48:47 +01:00
Neil Jenkins
02df8f9ed4
Merge pull request #127 from gertsonderby/remove-all-cleans-inputs
2015-08-27 11:16:20 +01:00