0
Fork 0
mirror of https://github.com/fastmail/Squire.git synced 2024-12-22 15:23:29 -05:00
Commit graph

578 commits

Author SHA1 Message Date
Neil Jenkins
e1d30b7082 Fix error when copying inline text-only. 2016-09-10 09:24:14 -04:00
Neil Jenkins
26b71dee8e Fix copying inline styles when selection not on boundary.
Resolves #219 properly this time.
2016-09-09 12:14:57 -04:00
Neil Jenkins
9aacad6e3c Make Shift-Ctrl-V paste as plain text.
Fixes #230.
2016-09-04 20:58:49 -04:00
Neil Jenkins
cbde7a9198 Always preserve inline formatting on copy
Fixes #219.
2016-09-04 20:44:36 -04:00
Neil Jenkins
25ff83455e Exports some useful internal functions
This is a rebase/slight tidy of #226.
2016-08-23 20:59:38 +10:00
Neil Jenkins
cbee85ae61 Merge pull request #224 from superhuman/fix_tests
Fix tests that call selectAll
2016-08-23 20:49:26 +10:00
Neil Jenkins
5aaae1eba9 Merge pull request #225 from superhuman/time_element_is_inline
Fix bug where TIME element was not being counted as inline
2016-08-23 20:48:29 +10:00
Islam Sharabash
ead3ea9f39 Fix bug where TIME element was not being counted as inline
This makes inline node detection count the TIME element as an inline element.
This was causing <br> to be inserted into a TIME element incorrectly via fixCursor.
2016-08-22 13:16:05 -07:00
Islam Sharabash
082fb79fcd Fix tests by resetting the selection when selectAll is called 2016-08-22 12:59:51 -07:00
Neil Jenkins
b2f0c42553 Release v1.6.2 2016-08-10 16:25:27 +10:00
Neil Jenkins
aae328e226 Ensure valid DOM tree is added to clipboard on copy
Fixes #204.
2016-08-10 16:24:13 +10:00
Neil Jenkins
7291fe0000 Release v1.6.1 2016-08-05 21:01:51 +10:00
Neil Jenkins
484a629357 Add documentation for using Squire w/o iframe
Resolves #215
2016-08-05 20:59:03 +10:00
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