Neil Jenkins
aaaae70504
Tidy code.
2016-08-05 20:49:44 +10:00
Andy Kauffman
6e1b864663
Remove Unneeded ZWS
...
ZWS are added when formats are added, however these are not cleaned up
if the format is changed. Now they will be cleaned up if they only
contain ZWS and no text.
2016-08-05 20:48:24 +10:00
Neil Jenkins
1a797aca48
Merge pull request #218 from nhnent/leafNodeNames-are-configurable
...
leafNodeNames are configurable
2016-08-05 20:37:12 +10:00
Neil Jenkins
989c8f10b4
Merge pull request #217 from nhnent/enforce-fireEvent-after-focus-blur-method-invoked
...
Fire focus or blur event manually in focus/blur method for MSIE
2016-08-05 20:32:41 +10:00
Sungho Kim
b83d071666
leafNodeNames are configurable
2016-07-27 16:59:15 +09:00
Sungho Kim
c3d4d551ed
Fix MSIE detection regex
2016-07-27 16:33:06 +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
d4abc182c8
If selection, delete contents before letting brower insert space
...
Fixes #213
2016-07-14 11:31:11 +10:00
Neil Jenkins
aaf84870aa
Ensure focus after paste
2016-07-14 10:39:20 +10:00
Neil Jenkins
c1eb254758
Merge pull request #211 from InteractiveIntelligence/Path-contains-format-values
...
Update README and Tests
2016-07-09 21:24:42 +10:00
Andy Kauffman
ea4e4ca592
reset build/squire.js
2016-07-08 10:04:48 -04:00
Andy Kauffman
00c1363d17
Remove strange empty line in build/squire.js
2016-07-08 08:59:01 -04:00
Andy Kauffman
f5a816be76
Update failing test after merge
2016-07-07 10:20:49 -04:00
Andy Kauffman
daec81d03f
Merge remote-tracking branch 'refs/remotes/neilj/master' into Path-contains-format-values
...
# Conflicts:
# build/squire-raw.js
# build/squire.js
# source/Node.js
2016-07-07 09:54:41 -04:00
Andy Kauffman
1c9dc9ebb5
Update getPath tests
2016-07-07 09:39:06 -04:00
Andy Kauffman
9b75e26451
Update README
2016-07-07 09:38:06 -04:00
Neil Jenkins
6ef4ad96e8
Fix whitespace
2016-07-07 16:11:45 +10:00
Andy Kauffman
964070ee46
Path contains format values
...
Add values of font size, font face, and color to the path. This allows
us to distinguish path changes to different formats.
2016-07-07 16:11:45 +10:00
Andy Kauffman
32fa092a79
Path contains format values
...
Add values of font size, font face, and color to the path. This allows
us to distinguish path changes to different formats.
2016-07-06 13:27:22 -04:00
Neil Jenkins
3428d61331
Merge pull request #208 from eightyeight/patch-2
...
Make the existence of the NPM package more obvious
2016-06-30 11:46:41 +10:00
Daniel Buckmaster
046579fe5f
Add link to NPM package in readme
2016-06-29 14:21:02 +10:00
Neil Jenkins
afb49532de
Release v1.6.0
2016-06-28 17:09:48 +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
Andy Kauffman
9dcc4fb79f
Cleanup P and Underline tags
...
node.
2016-05-26 14:16:15 +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
7ecf75f246
Fix determining if at start of block when at end of doc
...
Fixes #190
2016-05-26 11:42:53 +10:00
Neil Jenkins
d225f384b7
Use selectionchange event if available.
...
Fixes #194 .
2016-05-26 11:07:11 +10:00
Neil Jenkins
4354b46db9
Don't merge <a> tags.
...
Fixes #198
2016-05-26 10:33:18 +10:00
Neil Jenkins
aa3857ab77
Use default block config when inserting plain text
2016-05-25 12:41:57 +10:00
Andy Kauffman
4e7e290fbc
Fix block boundary issue
...
If the node is at the end of the document, this method can fail with
'TypeError: Cannot read property 'previousSibling' of null'
2016-05-19 10:28:46 +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
Neil Jenkins
bcb24f1865
Merge pull request #187 from InteractiveIntelligence/insertElement-input-for-old-browsers
...
insertElement should register as input for older browsers
2016-05-05 11:29:00 +10:00
Andy Kauffman
64ee5db293
insertElement should register as input for older browsers
2016-05-02 13:47:39 -04:00
Neil Jenkins
0f361d69c6
Add IFRAME to list of inline nodes.
...
Resolves #180 .
2016-05-01 16:36:43 +10:00
Neil Jenkins
6a28aafd2f
Add HR as a leaf node name.
2016-05-01 16:33:47 +10:00
Neil Jenkins
e3d0576a38
Workaround Facebook iOS URL copying bug
2016-04-11 16:58:13 +10:00