gecko-dev/editor
Masayuki Nakano a269bbe497 Bug 1644313 - part 1: Create new path to handle backspace or (forward) delete with the new normalizer r=m_kato
`InputEvent.getTargetRange()` should have actual delete range.  It means that
the range should contain the invisible leading/trailing white-spaces which
need to be removed for keep them invisible, but should not contain the range
of normalizing white-space sequence because they are not target of edit action
indicated by `InputEvent.inputType`.

So, we can use new path which uses the new white-space normalizer for
computing the value of `InputEvent.getTargetRanges()` because difference of
white-space normalizer shouldn't affect the deleting ranges (although, some
existing path calls `DeleteNodeIfInvisibleAndEditableTextNode()` later so that
the new method, `ComputeRangeInTextNodesContainingInvisibleWhiteSpaces()`, does
not exactly same thing, but the result shouldn't become different in usual
cases).  This new path can test with some WPTs under `editing/other`.

This patch creates new backspace/delete key handler when caret is at next
to a white-space as `HTMLEditor::HandleDeleteTextAroundCollapsedSelection()`
and creates helper methods of `WSRunScanner` to treat invisible leading and
trailing white-spaces.

Note that new failures are caused by the difference whether adjacent white-space
sequence at deletion is normalized or not in edge cases.  They will be fixed
by the part.5.

Depends on D84943

Differential Revision: https://phabricator.services.mozilla.com/D84944
2020-07-29 00:04:00 +00:00
..
composer Bug 1649554: Part 1 - Move deprecated component registration helpers out of XPCOMUtils. r=mccr8,remote-protocol-reviewers,marionette-reviewers,perftest-reviewers,webcompat-reviewers,whimboo,twisniewski 2020-07-10 23:58:30 +00:00
libeditor Bug 1644313 - part 1: Create new path to handle backspace or (forward) delete with the new normalizer r=m_kato 2020-07-29 00:04:00 +00:00
reftests Bug 312971 - Unprefix -moz-read-write / -moz-read-only. r=edgar 2020-05-14 16:46:08 +00:00
spellchecker Bug 1648010 - Replace uses of NS_LITERAL_STRING/NS_LITERAL_CSTRING macros by _ns literals. r=geckoview-reviewers,jgilbert,agi,hsivonen,froydnj 2020-07-01 08:29:29 +00:00
txmgr Bug 1337953 - Make nsDeque templated on pointer type r=froydnj 2020-06-25 02:39:23 +00:00
AsyncSpellCheckTestHelper.jsm
moz.build Bug 1449522 - Remove nsIEditorStyleSheets. r=masayuki,m_kato 2020-04-17 22:54:48 +00:00
nsIDocumentStateListener.idl Bug 1612477 - part 2: Remove nsIDocumentStateListener.NotifyDocumentCreated() r=m_kato 2020-02-04 06:19:55 +00:00
nsIEditActionListener.idl Bug 1639161 - part 3: Get rid of nsIEditActionListener::DidDeleteText() r=m_kato 2020-05-21 08:23:04 +00:00
nsIEditor.idl Bug 1619914 - part 2: Mark transaction class methods and their caller methods as `MOZ_CAN_RUN_SCRIPT r=m_kato 2020-04-03 08:32:01 +00:00
nsIEditorMailSupport.idl
nsIEditorObserver.idl
nsIEditorSpellCheck.idl
nsIHTMLAbsPosEditor.idl
nsIHTMLEditor.idl Bug 1624007 - Don't check IsSelectionRangeContainerNotContent() for/in GetElementOrParentElement*() r=m_kato 2020-04-09 10:10:36 +00:00
nsIHTMLInlineTableEditor.idl
nsIHTMLObjectResizer.idl
nsITableEditor.idl Bug 1635709: part 17) Annotate CellIndexes's methods with MOZ_CAN_RUN_SCRIPT. r=masayuki 2020-05-14 10:08:44 +00:00