Neil Jenkins
5b998f5b6f
Fix Kana-Kanji input on Mac Safari
...
Resolves #332
2018-10-15 08:40:10 +11:00
Neil Jenkins
79e65240bd
Make detect-link regular expression customisable
...
Resolves #313
2018-10-05 17:00:09 +10:00
Neil Jenkins
b14ae45b38
Escape <a> on space even if in nested tags
...
Fixes #326
2018-10-05 16:25:28 +10:00
Neil Jenkins
625d10139e
Add support for <pre>/<code> formatting
2018-07-27 10:47:38 +10:00
Neil Jenkins
e07150192f
Make shift-enter always just add <br>
2018-07-27 09:23:26 +10:00
Neil Jenkins
2d5114c669
Make TreeWalker filter argument optional
2018-07-27 09:22:06 +10:00
Neil Jenkins
e3e7c17315
Add config.willCutCopy option
...
Is an optional function that transforms the HTML being cut/copied before
placing it on the clipboard.
2018-07-12 15:40:01 +10:00
Neil Jenkins
f0594091c5
Allow class names to be configured
2018-07-12 15:22:18 +10:00
Neil Jenkins
7a24d6c505
Make check for link protocol case-insensitive
...
Resolves #308 .
2018-06-23 14:39:59 +10:00
Neil Jenkins
35a25e6d44
Simplify regex for matching link query params
2018-06-23 14:35:16 +10:00
dhoko
55fa0ae8e9
Build lib
2018-06-23 14:21:47 +10:00
Neil Jenkins
db005b379b
Make createRange method public
2018-05-09 17:43:11 +10:00
Neil Jenkins
23b95e6594
Update built version from latest source
2018-04-04 20:14:53 +10:00
Neil Jenkins
b0ac7d32d0
Handle all cases of overwriting content
...
Modern browsers tell you which character will be inserted with event.key, so
we can make sure we handle content deletion ourselves in these cases too.
2018-03-18 10:40:03 +00:00
Neil Jenkins
9dda7cc845
Fix FF does not leave <a> on space
2018-03-18 10:34:12 +00:00
Neil Jenkins
070f2e52a3
Support pasting images in Edge
2017-12-13 16:43:43 +11:00
Neil Jenkins
50fb7c7c53
Preserve block style if pasting on blank line
...
If the clipboard contains block contents, e.g.
<blockquote><p>Foo</p></blockquote>
Then if you paste it into a block that already has content we merge the inline
content from the first block and discard its surrounding block.
However, if you paste into an empty block, we'll now keep the block and remove
the empty one in the document. This seems a reasonable heuristic for determining
user intent.
2017-11-01 10:45:21 +11:00
Neil Jenkins
306230d0df
Better handling of <pre>
...
* Pasting <pre> should not attempt to merge with block.
* Hitting enter should produce a new <pre>, otherwise all new lines after the
break are lost.
2017-09-05 11:42:54 +10:00
Neil Jenkins
033370ebee
Don't try to merge table cell into block on paste
2017-09-04 10:22:49 +10:00
Neil Jenkins
c5be1b79dc
Fix broken variable reference
2017-08-17 14:12:29 +10:00
Neil Jenkins
833d7dfdbd
New (increase|decrease)ListLevel algorithms
...
Fixes #287
2017-08-15 11:11:48 +10:00
Neil Jenkins
6842cb94eb
Fix undo does not always restore cursor position.
...
If the content hasn't changed before an undo point is requested we ignore the
request, but the cursor position may have changed and users expect undo to
restore the cursor position immediately before the requested change was made.
So in this instance we now still record an undo state, but replace the previous
one if the content is unchanged.
2017-07-19 14:29:36 +02:00
Neil Jenkins
48fabd491a
Improved algorithm for inserting tree into range
...
Fixes #283
2017-07-19 14:29:16 +02:00
Neil Jenkins
239b7d19e9
Ignore saved selection if not in document
...
The browser will rewrite the range if the nodes it refers to are removed from
the document, so check that it's still in the document before returning.
2017-07-07 11:48:42 +10:00
Neil Jenkins
a8f07d9adb
Default to allowing URIs with unknown protocols
2017-06-28 16:03:31 +10:00
Neil Jenkins
283a7d1d85
Don't consider editor focused if sub-element focused
...
Fixes #267
2017-05-10 14:22:56 +10:00
Neil Jenkins
632aae016b
Code style fixup
2017-05-10 14:00:28 +10:00
Neil Jenkins
bb593e879a
Don't insert <br> inside end of <a> on enter
...
Fixes #271
2017-03-21 17:06:44 +11:00
Neil Jenkins
70a2b48333
Return cached selection if not focused
...
If an action modifies the selection while the editor is not focused, we cannot
immediately set it in the DOM as this triggers focus. So instead we cache it and
restore on focus. If getSelection is called before the editor is next focused,
we need to return this new selection, not the current DOM selection.
Fixes #259
2017-02-11 09:40:56 -08:00
Neil Jenkins
45fee4c858
Fix potential infinite loop on cut
...
Common ancestor of range may change while range is manipulated for deletion.
2017-01-19 17:08:39 +11:00
Neil Jenkins
9596f4ecf8
Ensure moving boundaries up tree never passes root
2017-01-13 15:15:59 +11:00
Neil Jenkins
79ffc02557
Unify cut and copy implementations
...
* Data added to clipboard should now always be the same for cut as for copy
* Fixes bug when cutting across blocks, where not all parents would be included
in the data added to the clipboard
2017-01-13 10:24:01 +11:00
Neil Jenkins
6f83f23881
Fix delete behaviour
...
1. Fixes cursor position when deleting starting with a selection at beginning
of block.
2. Fixes block disappears when whole inline contents is deleted.
2017-01-10 10:06:28 +11:00
Neil Jenkins
066bdd2cde
Ignore "cut" if no selection
2017-01-10 10:05:56 +11:00
Neil Jenkins
e645489f5f
Fix empty lines missing when copying plain text
2017-01-10 10:05:35 +11:00
Neil Jenkins
e35ad32c09
Fix potential null deref when sanitizing html
2016-12-13 12:15:35 +11:00
Neil Jenkins
c1c63478f0
Check for queued events before disconnecting mutation observer
...
Fixes #252
2016-12-12 10:35:14 +11:00
Neil Jenkins
3d8cd62edb
Improve copying of plain text on windows
2016-12-11 12:32:25 +11:00
Steven Allen
fcb8a4a63c
Use class constants
2016-12-08 21:03:50 -08:00
Neil Jenkins
2c7f7b907c
Fix copying when not inside valid doc structure
2016-12-09 10:42:18 +11:00
Neil Jenkins
8850c76234
Release v1.8.1
2016-12-09 09:34:04 +11:00
Steven Allen
9dcac8c94e
Never pass null as root.
2016-12-08 13:11:52 -08:00
Neil Jenkins
65a621abcf
null arg to setText(Alignment|Direction) should reset value
...
Resolves #247
2016-12-07 19:22:28 +11:00
Neil Jenkins
a899c001eb
Fix null deref in insertHTML
2016-12-07 19:08:52 +11:00
Neil Jenkins
bb40d03899
Export useful Node helper functions
2016-12-07 18:42:48 +11:00
Neil Jenkins
504b40c857
Add pointer from root node to Squire instance.
...
Resolves #253
2016-12-07 17:54:13 +11:00
Neil Jenkins
9fac7ffdb6
Make HTML sanitization configurable.
...
And default to sanitizing setHTML content as well.
2016-12-07 17:24:16 +11:00
Neil Jenkins
801388222d
Fix pasting plain text when not first item
2016-11-21 10:59:44 +11:00
Neil Jenkins
0b72f29ce5
Don't bother caching text node category
2016-11-21 10:59:11 +11:00
Neil Jenkins
f46dee1255
Memoize node category with weak map
...
Fix horrendous performance of isInline etc.
2016-11-15 11:07:15 +11:00