This removes support for 'passive' and makes our element and data segment
syntax follow standard syntax much more closely.
Element segments now require either 'func' or 'funcref' in the right
position, and require a table index for active segments that don't use
the designated MVP shorthand.
Data segments require an offset when there's a memory index present.
Also add support for the noise syntax (offset x) for the
initialization offset in active segments.
I did not add support for the variant of in-line elements in the table
definition that allows the starting offset to be specified; this is
followup work.
Also tidy up some naming and comments in an attempt to clarify the
flow in the encoder.
Differential Revision: https://phabricator.services.mozilla.com/D48031
--HG--
extra : moz-landing-system : lando
This is related to bug 1530649. When using <span> element with contentedtiable,
we won't insert <br> element at last. When Korean IME on macOS commits
composition by space key, composition string has space.
Gekco removes U+0020 space when it is last character into editing host. To keep
whitespace, we have to replace with NBSP when it is last.
Differential Revision: https://phabricator.services.mozilla.com/D48146
--HG--
extra : moz-landing-system : lando
{AutoBase,AutoTaggedTuple,AutoList} in BinASTTokenReaderContext is almost no-op
in opt-build.
Made them completely no-op, so that the allocation/call can be optimized out.
Differential Revision: https://phabricator.services.mozilla.com/D48020
--HG--
extra : moz-landing-system : lando
AutoBase::init is almost no-op in opt-build, but given
enterTaggedTuple/enterList isn't inlinable, the parameter cannot be optimized
out, thus the constructor call is also not optimizable.
Moved out the call, in order to make them optimizable in the next patch.
Differential Revision: https://phabricator.services.mozilla.com/D48019
--HG--
extra : moz-landing-system : lando
Part 2 addes smaller Variant types (FieldOrRootContext and FieldOrListContext),
and modifies the code generator to use smaller Variant instead of Context.
Differential Revision: https://phabricator.services.mozilla.com/D48012
--HG--
extra : moz-landing-system : lando
A half of Parser methods are using single context type, and remaining are using
2 context types. There are no place that uses 3 context types necessarily.
Part 1 modifies the code generator to collect context type information, and
reflect the information to Parser methods, to use single non-Variant type
if possible.
Also changed corresponding TokenReader methods to use single non-Variant type.
Differential Revision: https://phabricator.services.mozilla.com/D48011
--HG--
extra : moz-landing-system : lando
Both method take a DOM point with `nsCOMPtr<nsINode>*` and `int32_t*`.
This makes each caller complicated. Instead, we should use stack only class
to return both `EditorDOMPoint` and `nsresult`. I name it `EditResult`.
Additionally, this fixes a bug of `HTMLeditor::SplitStyleAboveRange()`. That
is not tracking new selection start point while it splits elements at end
of given range. This is detected by the debug assertion in
`ToRawRangeBoundary()` (i.e., this fix is required to pass some tests).
Differential Revision: https://phabricator.services.mozilla.com/D47858
--HG--
extra : moz-landing-system : lando
If LSRequestChild actor is unexpectedly destroyed, the nested event loop runs
until the timer fires. This patch improves that by calling the callback in
LSRequestChild::ActorDestroyed which immediatelly finishes RequestHelper and
finishes the nested event loop in the end too.
Differential Revision: https://phabricator.services.mozilla.com/D48194
--HG--
extra : moz-landing-system : lando
This fixes another edge-case that I thought of while debugging this, I think
this makes our behavior correct now. The comment and test-case should be
self-descriptive.
Differential Revision: https://phabricator.services.mozilla.com/D48135
--HG--
extra : moz-landing-system : lando
I think this is the only mozilla-central patch that is needed at all.
The rest should be just searchfox configuration which I'm testing atm.
Differential Revision: https://phabricator.services.mozilla.com/D48256
--HG--
extra : moz-landing-system : lando