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

430 commits

Author SHA1 Message Date
Neil Jenkins
73ca65edb5 Fix pasting multiple lines into a blockquote.
Pasting is hard to get right in the general case, not least because the
browsers give so little control over the process, leaving you to resort to
crappy hacks. But we can special case the pasting to a blockquote case fairly
easily, and I can't see any particular regression it should cause.

Fixes #59.
2015-04-09 20:16:04 +07:00
Neil Jenkins
62e2f5aa95 Use advanced init mode for Demo.html
So it works in Chrome on the local file system (the iframe loading method runs
afoul of security restrictions).
2015-04-08 19:09:20 +07:00
Neil Jenkins
7db0ae059a Fix cleanup empty <a> on enter in WebKit/Blink
Need to consider zero-width space equivalent to no content.
Also cleanup empty inline nodes in general when cleaning up zero-width spaces
inside them.

Fixes #58
2015-04-08 18:02:23 +07:00
Neil Jenkins
1c0fa1a50f Rewrite getSelectedText method.
Fixes #57.

* Fixes bug where it could return text outside selection
* Inserts new line between blocks.
2015-04-08 17:13:21 +07:00
Neil Jenkins
e6ae25b589 Fix formatting commands when selection has no text nodes
Fixes #60
2015-04-08 15:33:27 +07:00
Neil Jenkins
1b9606452e Check for redundant WS when ensuring bottom line.
Fixes #55.
2015-03-29 18:56:32 +11:00
Neil Jenkins
4c63ad696e Only maintain LI numbering when splitting OL if in BLOCKQUOTE.
Fixes #53
2015-03-29 18:39:50 +11:00
Neil Jenkins
3c8eaa1fcc Use default block settings when fixCursor called on body 2015-03-29 18:36:58 +11:00
Neil Jenkins
61d5004373 Merge pull request #52 from xionglun/master
fix typo: ndoes -> nodes
2015-03-19 20:08:00 +11:00
Allen Heavey
eced74244d fix typo: ndoes -> nodes 2015-03-19 14:55:45 +08:00
Neil Jenkins
1362383aea Fire "select" event whenever selected range is not collapsed
Fixes #50.
2015-03-18 18:19:15 +08:00
Neil Jenkins
6f09cc1cc2 Merge pull request #49 from masonicboom/patch-1
allow "audio" elements
2015-03-07 08:45:34 +08:00
masonicboom
eba853a0f7 allow "audio" elements
http://www.w3.org/wiki/HTML/Elements/audio
2015-03-05 16:57:33 -08:00
Neil Jenkins
437a3c4451 Reword "in in" in README to be less clumsy 2015-03-05 15:19:22 +08:00
Neil Jenkins
39fd173c6a Merge pull request #48 from cvrebert/events
README: hyperlink DOM event refs to MDN docs
2015-03-05 15:15:45 +08:00
Neil Jenkins
1a91065baa Merge pull request #47 from cvrebert/patch-1
README: hyperlink document.execCommand mention to MDN
2015-03-05 15:15:11 +08:00
Neil Jenkins
4d7d99ae7e Merge pull request #46 from cvrebert/size-val
README: link to MDN regarding font size values
2015-03-05 15:14:23 +08:00
Neil Jenkins
041e922779 Merge pull request #45 from cvrebert/patch-4
README: use same return value phrasing for remove{Italic,Underline} as elsewhere
2015-03-05 15:13:43 +08:00
Chris Rebert
b301d152c7 README: hyperlink DOM event refs to MDN docs 2015-03-04 19:09:14 -08:00
Chris Rebert
f25c6713bd README: hyperlink document.execCommand mention to MDN 2015-03-04 19:03:37 -08:00
Chris Rebert
77c0fc6d93 README: link to MDN regarding font size values 2015-03-04 18:53:32 -08:00
Chris Rebert
ce5867f424 README: use same return value phrasing for remove{Italic,Underline} as elsewhere 2015-03-04 18:46:10 -08:00
Neil Jenkins
951214c7e0 Merge pull request #44 from cvrebert/patch-1
README: hyperlink CSS color value refs to MDN docs
2015-03-05 10:45:28 +08:00
Chris Rebert
0506b8a1c7 README: hyperlink CSS color value refs to MDN docs 2015-03-04 18:40:18 -08:00
Neil Jenkins
b8df233def Merge pull request #43 from cvrebert/patch-1
README: hyperlink Range references to MDN docs
2015-03-05 10:38:24 +08:00
Chris Rebert
cde65d93a9 README: hyperlink Range references to MDN docs 2015-03-04 18:34:56 -08:00
Neil Jenkins
bb0b8a92f3 Release v1.1.0
Changes since 1v.0.1:
* New feature: support for setting custom defaultBlockTag.
* Various stability and bug fixes.
2015-03-04 15:54:18 +08:00
Neil Jenkins
ed0ebdae49 Merge adjacent text nodes after extracting range. 2015-03-04 14:50:44 +08:00
Neil Jenkins
5865eb032a Maintain li numbering when splitting OL 2015-02-06 14:19:06 +07:00
Neil Jenkins
5b8e348232 Fix invalid caching of selection nodes in paste handler.
Fixes error thrown when pasting text twice in succession (or more generally,
when pasting it into non-normalised text nodes).
2015-02-06 14:18:38 +07:00
Neil Jenkins
8f83ef32c3 Fix typo in Makefile 2015-02-06 14:17:36 +07:00
Neil Jenkins
dfed911833 Add .jshintrc file so JSHint checks it correctly.
Resolves #25.
2015-01-08 12:25:54 +07:00
Neil Jenkins
8e8874b554 Don't fire an input event on setHTML call. 2014-12-30 10:22:39 +07:00
Neil Jenkins
249ea93c13 Allow defaultBlockTag to be configured
Resolves #23
2014-12-27 15:02:26 +07:00
Neil Jenkins
b69a1635de Use mutation observers where possible to detect change
We need to know when the document is modified in order to fire an "input" event
and set the undo/redo state correctly. Observing keyup is imprecise, as it's
hard to tell whether the key press actually modified anything. Newer browsers
support mutation observers, which tell you precisely when something has changed.
For IE9/10, Opera 12 and other older browsers, we fall back to observing keyup
again.

Fixes #26.
2014-12-27 13:48:15 +07:00
Neil Jenkins
5b5d65f684 Record undo checkpoint before deleting any selection. 2014-12-26 20:04:42 +07:00
Neil Jenkins
797dbf46fb Fix selection lost on action in Presto 2014-12-26 20:01:36 +07:00
Neil Jenkins
54b428aaa6 Fix deleting selection across block boundary. 2014-12-26 14:48:13 +07:00
Neil Jenkins
a46dc2ef02 Take over selection deletion in more cases.
Never really want to let the browser delete a selection; it always makes a mess
of it. This now covers the case when an English letter key or number key is
pressed when a selection exists. Handling this completely (to include all keys
that produce a symbol) is tricky due to cross-browser key event compatibility
issues.
2014-12-26 14:27:19 +07:00
Neil Jenkins
4a264a52c7 Replace feature test w/ UA sniff for buggy splitText. *sigh*
The feature test is sometimes passing in IE9, but then the buggy behaviour
still appears later. FFS IE.
2014-12-26 14:26:29 +07:00
Neil Jenkins
805f3cffff Remove last remnants of IE8 support. 2014-12-26 14:24:22 +07:00
Neil Jenkins
90623a51a2 Clean up empty inlines when deleting selection.
Fixes #6
2014-12-25 15:09:46 +07:00
Neil Jenkins
5b52467815 Fix inserting line break at start of link
Before, hitting enter at the start of the link would result in the link text
being removed from an <a> on the new line, and an empty <a> tag on the previous
line. Now the link remains on the new line as expected, and no empty <a> tag is
produced.

in the preceding block.
2014-12-25 11:39:07 +07:00
Neil Jenkins
f781e07b23 Ensure space is inserted after link if cursor at end of <a> tag
If your cursor is at the end of a link, ensure pressing space always inserts
the space outside of the <a> tag.
2014-12-24 14:24:25 +07:00
Neil Jenkins
824a3b0a3b Resolves #22. 2014-12-20 17:07:11 +11:00
Neil Jenkins
10e17557a8 v1.0.0
It's stable, it's in production; might as well call this 1.0 :)
2014-12-16 10:38:17 +11:00
Neil Jenkins
6cd0c0d272 Merge pull request #16 from craigmarvelley/master
Expose list nesting level in README and demo toolbar.
2014-12-12 10:32:26 +11:00
Craig Marvelley
2d7addd04e Add list level manipulation actions to demo toolbar 2014-12-11 12:35:48 +00:00
Craig Marvelley
8d604d7deb Add increaseListLevel and decreaseListLevel API methods to README 2014-12-11 11:36:42 +00:00
Neil Jenkins
f41c706b76 Merge pull request #12 from grupawp/master
License file name in README.md
2014-12-10 14:55:52 +11:00