This reorganizes the JSScript constructor sequence into the following layers and responsibilities:
JSScript(...) The actual C++ constructor putting script in
GC-safe state.
JSScript::New(...) Performs allocation within GC.
JSScript::Create(...) Common initialization for all script
initialization pathways.
This is more in-line with how other GC-things are created. The bitfields
saved from compile options are now done at the JSScript::Create level.
Differential Revision: https://phabricator.services.mozilla.com/D9946
--HG--
extra : moz-landing-system : lando
For resolves that aren't associated with a hostrecord (like the initial
NS verification) there is no mRec pointer so set a blank originSuffix
then.
MozReview-Commit-ID: FuTP9qCm2Iu
Differential Revision: https://phabricator.services.mozilla.com/D10366
--HG--
extra : moz-landing-system : lando
Input Events Level 2 declares "deleteByComposition" for empty composition
removes selected content and "deleteCompositionText" for canceling composition.
https://w3c.github.io/input-events/#interface-InputEvent-Attributes
Therefore, TextEditor::OnCompositionChange() should use a new EditAction for
the former only when new composition string is empty, there is no composition
string and there is non-collapsed Selection.
And also TextEditor::OnCompositionEnd() should use another new EditAction for
the latter when composition is canceled with empty string (we don't restore
selected content which is removed by the composition).
Additionally, due to bug 1305387, we don't dispatch "input" event when
we handle TextEditor::OnCompositionChange(). Instead, we dispatch it
when we handle TextEditor::OnCompositionEnd(). Therefore, we need to
use EditAction::eCommitComposition in TextEditor::OnCompositionEnd().
Differential Revision: https://phabricator.services.mozilla.com/D10520
--HG--
extra : moz-landing-system : lando
- Move the helper functions for system addon tests into their own head
file, also move some of the boilerplate for creating a test server that
is repeated in many of those tests into the new file.
- Switch from using xpis checked into the tree to using extensions
created on the fly from tests, using overridden cert checks.
- Switch from bootstrap extensions to webextensions, adjust tests as
needed to deal with the async nature of webextension startup/shutdown.
Differential Revision: https://phabricator.services.mozilla.com/D10422
--HG--
extra : rebase_source : 13326210c067f4d71b80c20031de557acd0a376a
extra : source : 990f1ff813f8f3e3de3bd876f5d14f1e465d9332
This will later be used to store variable length data that hangs off of
each JSScript. This primarily is a refactor of existing JSScript code to
put in its own data structure.
- ScopeArray and friends now store offsets instead of pointers. This
saves memory on 64-bit platforms and simplifies cloning.
- GCPtr constructors are used instead of relying on pod_calloc. This
fixes C++ object-model violations.
- A packed bitfield is used to locate optional array headers instead of
previous daisy-chain approach. This also lets js::PrivateScriptData
understand array layout without coupling to JSScript.
In the onStateChange event the this._dompc._pc is not guaranteed to exist. This causes exceptions to be thrown durring tests.
Differential Revision: https://phabricator.services.mozilla.com/D10101
--HG--
extra : moz-landing-system : lando
A minor update to drop the redundant "mozilla" namespace prefix in
`cbindgen_types` array.
Depends on D10305
Differential Revision: https://phabricator.services.mozilla.com/D10325
--HG--
extra : moz-landing-system : lando
This needs to update the "fill-rule" and "clip-rule" to use
predefined_type to avoid some compilation errors.
Differential Revision: https://phabricator.services.mozilla.com/D10142
--HG--
extra : moz-landing-system : lando