This patch implements a number of cleanups for how send semantics are
represented in IPDL types.
1. needsMoreJuiceThan is inlined.
2. convertsTo is renamed to sendSemanticsSatisfiedBy to be more descriptive,
and is no longer a class method.
3. nestedRange, sendSemantics and the methods that operate on them
are moved from IPDLType to a new class, which MessageType and
ProtocolType now inherit from.
4. IPDLType.hasReply has been inlined into MessageType.hasReply.
Differential Revision: https://phabricator.services.mozilla.com/D167836
This moves the initialisation parts from SearchService to AddonSearchEngine.
It is primarily aimed at moving the parts interacting with the add-on manager.
Differential Revision: https://phabricator.services.mozilla.com/D167049
`this.forNode` (with `this` being a `PanelMultiView` instance) may
return a node that was already disconnected before, in which case its
`node` member will be void. To avoid unexpected promise rejections, add
a null check before `_moveOutKids()`.
Differential Revision: https://phabricator.services.mozilla.com/D167369
Expire page <-> icon relations older than 180 days if the page is not bookmarked
and there is a root icon for the page's origin.
Differential Revision: https://phabricator.services.mozilla.com/D168198
Ported most of the removed tests from D167236, except the payload test because of a misbehavior regarding to icon URL parsing (and thus fails on Chrome if ported as-is).
It's still covered in dom/serviceworkers/test/test_notification_get.html, so skipping it does not decrease the coverage.
Differential Revision: https://phabricator.services.mozilla.com/D167943
This removes the devtools.target-switching.server.enabled preference,
which was only having an impact on tab debugging.
Toolboxes other than tabs aren't yet using "server side target switching",
which will probably happen once we enable EFT in these and
we would probably not use a preference for enabling this.
This remove all assertions in tests covering client side target switching.
And it removed a couple of tests that became irrelevant.
Differential Revision: https://phabricator.services.mozilla.com/D166921
This would explain the failure (it seems like the popup opens at the
wrong position because the screen rect is off in the iframe process).
Differential Revision: https://phabricator.services.mozilla.com/D168214
Even in the HTML mode, `HTMLEditor` should not join elements having different
styles because from users' point of view, it looses style data and looks odd.
Note that even in the HTML mode, CSS styled elements may appear, for example,
pasting content whose elements styled with CSS.
Differential Revision: https://phabricator.services.mozilla.com/D167744
The other browsers do not allow to type text into right hand inline element,
however, Gecko allows it depending on the cursor movement immediately before.
I think that Gecko's behavior is reasonable for users from point of view of
style editing. However, for providing consistent behavior between browsers,
we should collapse selection to end of left paragraph's text node when joining
paragraphs. Then, web apps do not need to arrange `Selection` for consistent
behavior between browsers and we can keep the Gecko's better style handling.
Differential Revision: https://phabricator.services.mozilla.com/D167743
Reverts an optimization that can cause artifacts on some pages. We
need to do a deeper investigation at some point to find out why,
and then reenable the optimization.
Differential Revision: https://phabricator.services.mozilla.com/D168026
Revert the original changes from bug 1772049 for now. We don't
currently rely on that patch, having found a simpler way to
handle how that code interacts with the backdrop-filter code.
Differential Revision: https://phabricator.services.mozilla.com/D168015
Generated by running
find servo/components/style -name "*.rs" -exec perl -p -i -e "s/write_str\(\"(.)\"\)/write_char('\1')/g" {} \;
(and then added `use std::fmt::Write;` in a couple of places to fix build errors that arose).
Differential Revision: https://phabricator.services.mozilla.com/D168217
I actually regressed this from D166661 within this current patch queue.
It isn't clear why the old code was somehow keeping the parent/ext-storage.js class
alive -or- somehow magically recalling apiManager.asyncGetAPI after addon reload.
But now we handle the case of addon reload explicitly.
Differential Revision: https://phabricator.services.mozilla.com/D167364
This actor was only used by the legacy listener.
Its main method was listStores which exposed all the storage type actors.
Now they are exposed via storage Resource watchers.
This requires to tweak the decision making to show the storage panel
as the actor no longer exists... Unfortunately we can't check for
resource traits on the watcher actor as the browser toolbox
on older runtime won't expose it.
Note that this.front wasn't used for a little while in ui.js.
I had to keep a few things in the frontend in order to still be able
to connect to old servers. But I put lots of comments to do proper cleanup later.
Differential Revision: https://phabricator.services.mozilla.com/D166770
This glue, necessary to communicated between content and parent processes
was only necessary when manually spawning the storage actors.
Now that this code is only used via ResourceWatcher, running in the right process
right away, we no longer need any cross process communication.
Differential Revision: https://phabricator.services.mozilla.com/D166694
This was the last resource type requiring to keep the old storage actor as-is.
This will help drastically simplify it and move storage type code into each Resource Watcher class.
Differential Revision: https://phabricator.services.mozilla.com/D166661