Actually, we use nsCOMArray for mSelectionListeners. NotifySelectionListeners saves current listeners to another nsCOMArray then use it for observing.
When I debug it, array length is mostly ~5, and nsCOMArray uses malloc according to profiler. So since array length is small, we should use AutoTArray instead.
MozReview-Commit-ID: As5PS1KVTt8
--HG--
extra : rebase_source : 89996105b8e7f0f820f4139d5ed6dfcc03d1f70c
GetSelectionController is virtual method, but we should have non-virtual version of GetSelectionController that return value is nsISelectionController since we have a lot of call of GetSelection().
MozReview-Commit-ID: 41JFqTyIh0b
--HG--
extra : rebase_source : 4d40d1a8b31c2b6aff3f3b9ff4609bb3e41ea8f6
<!-- Please describe your changes on the following line: -->
1. Move the logic of computing the initial url from `opts.rs` to `/ports/servo/main.rs`
2. Add a `ServoUrl` argument to `Browser::new`
Based on the requested changes by @paulrouget:
>We can read the pref in main() instead. shell.homepage would be used if the url is not passed as an argument. I'm trying to decouple the "app" logic and the "web engine" logic. I think it's up to the app to set the initial URL, and I'm not sure the initial url should be part of opts.
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix#15636
<!-- Either: -->
- [ ] There are tests for these changes
<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 87140641a4f8636b431db41777d01302f8f6ad3d
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c2593a42892c939c91fff4f40f62e212dd8d0783
ContentCacheInParent::mPendingCompositionCount is now managed with composition events which TabParent received. However, TextComposition doesn't dispatch composition events after coming request to commit active composition. Therefore, composition is committed forcibly in a remote process over 255 times, the main process crashes.
It's the safest way to use TextComposition to manage ContentCacheInParent::mPendingCompositionCount.
MozReview-Commit-ID: DEhzYcK1zcW
--HG--
extra : rebase_source : a47891b1d620bbe4e380e73134ec6da5d21f4ea9
According to the spec, when we cancel an animation we should "reset an
animation's pending tasks"[1] which has following step:
...
4. Reject animation’s current ready promise with a DOMException named "AbortError".
5. Let animation’s current ready promise be the result of creating a new resolved Promise object.
Since we create the ready promise and, if need resolve it when we create it
(see Animation::GetReady), this patch simply clear the ready promise
when an animation is canceled.
[1] https://w3c.github.io/web-animations/#reset-an-animations-pending-tasks
MozReview-Commit-ID: JxoqeA5dXCO
--HG--
extra : rebase_source : 1c51724f236b3ed464eb6af3c20ccc9aaf5aa3e6
The same reason as P1. ShutdownState::Enter() disconnects callbacks to prevent
DecodeError() from being called during shutdown.
MozReview-Commit-ID: EFZiE2zkcUZ
--HG--
extra : rebase_source : 279d5fcdc79f2d4d7861cea627c4314b26aa5da5
This fixes HiDPI and adds overflow for meter bars.
Meter bars should probably have their intrinsic size fixed instead, but
keeping the existing behavior for them is less risky.
MozReview-Commit-ID: xF83bqdDlz
--HG--
extra : rebase_source : d28b4c265298e870d7cc03b11038da605d920b49
nsIPlaintestEditor.setText still use BeginPlaceHolderTransaction and EndPlaceHolderTransaction. But since input.value setter doesn't create undo transaction, it is unnecessary to save/restore selection via AutoPlaceHolderBatch. So before calling setText, we should reset selection to reduce saving and restoring selection.
Save/Restore selection is ~7% of input.value setter.
MozReview-Commit-ID: 6yBKCtRmkQt
--HG--
extra : rebase_source : 4df5d0629f083b75615b96b17bc108613fe80c24
Although we use StartBatchChanges and EndBatchChanges in nsTextEditorState::SetValue, we have a path that EndBatchChanges isn't called. So we should use RAII class to call EndBatchChanges correctly.
MozReview-Commit-ID: 6bjtTT9wItA
--HG--
extra : rebase_source : dc9bdcb1a5ac4bca026e378c79355041d7f2384a
The marker, a red triangle, is clipped during "overflow" property
animation.
MozReview-Commit-ID: CAZ6adTXiQw
--HG--
extra : rebase_source : 888dc520aecba61cd129145ab015780dd8cbc943
In case of gecko, we use only the StyleAnimationValue.
Whereas in case of servo, we use RawServoAnimationValue and
make it an array to store multiple values for shorthand sub properties.
MozReview-Commit-ID: 4PnWBk9WP2Q
--HG--
extra : rebase_source : a2b5878f14241c2cbf4adeeed3a0fa08ae230fa3
With this function we can get multiple RawServoAnimationValue(s) for shorthand
properties.
MozReview-Commit-ID: GPqmsOfVB0
--HG--
extra : rebase_source : a822f574eeb552ad72748bbe4b89f6139621c880
<!-- Please describe your changes on the following line: -->
This is a PR for https://bugzilla.mozilla.org/show_bug.cgi?id=1358966
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
<!-- Either: -->
- [X] These changes do not require tests because it's for stylo
Source-Repo: https://github.com/servo/servo
Source-Revision: 094c2c73ec77dec51dc57d8aee272a91a52ddfb8
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : aeb533a705be2758728c2a2bfc4352d099fdda3f
The new clip from bug 1364007 can cause us to clip to a rectangle that's not
aligned to device pixels. With the current rect inflation, we didn't notice,
but if we want to remove the inflation then we need to make sure to round out
the rect that we clip to.
MozReview-Commit-ID: BO9zds8fiKI
--HG--
extra : rebase_source : f71f283ef73cf58dbc2cc05d06ea9bc864fd5084
This #ifdefs out the multiview for non-photon-theme, and checks for it being
present in various bits of JS that interact with it. As a result, this will
'fix' the issues in this bug and in bug 1370967 for 55 as it moves off
Nightly. bug 1370967 will still need fixing in the photonpanelmultiview /
webextensions.
MozReview-Commit-ID: 6x4HmyvxeRP
--HG--
extra : rebase_source : cdab2fab97795def95b6f4c70c61cfcb1c3ac2f9
The test times out on master and dev edition but not on normal beta. Since
this is difficult to handle in ini files just disable the entire test until there's
a proepr fix for the underlying issue.
MozReview-Commit-ID: B3d7MElHy86
--HG--
extra : rebase_source : eaff065fb42f046173281c713c55ec6a977da812