This ensures that the document isn't destroyed when we call PokeGC, which will be useful later.
--HG--
extra : rebase_source : 897912892a6aca2d272297723fee32cd65dd6fde
nsDocumentViewer knows which document is involved which will help us later.
Also, fix a typo in the comment.
--HG--
extra : rebase_source : a1d5b81aab5b4efa914082fdbe4a5b3b71ee456d
In non-e10s, all tabs of a window would share one nsRootPresContext. When
switching tabs, the tab switch paint would trigger a call to
nsRootPresContext::ComputePluginGeometryUpdates, which would call
SetEmptyWidgetConfiguration on all registered nsPluginFrames, notably also
those inside the tab that was hidden.
With e10s, every tab has its own nsRootPresContext, and paints in one tab do
not trigger calls to nsRootPresContext::ComputePluginGeometryUpdates on the
root pres contexts of other tabs. So when painting the new tab, the registered
plugin frames in the old tab were not notified that they were now hidden.
This patch now does that in TabChild::MakeHidden.
MozReview-Commit-ID: LlW9dKKFqZE
--HG--
extra : rebase_source : 0e7f24d7ef90d8582d7f60729e712bca78ed8e17
The setup is quite different to Servo-land, so add a comment about the different
setup.
Also, check viewport rules when flushing stylesheets. I believe that the
previous behavior is plain wrong, though I haven't taken the time to come up
with a test case.
In any case, it doesn't hurt any of both back-ends.
MozReview-Commit-ID: 46gtTkesOsr
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
Since we use the presence of a change hint to determine whether we should
recreate a style context, we can't just strip them out on CalcStyleDifference.
MozReview-Commit-ID: GLhbTc2W3d7
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
More functions in nsCSSClipPathInstance will be refactored and moved into
ShapeUtils in subsequent patches.
MozReview-Commit-ID: LmJUevY8YGr
--HG--
extra : rebase_source : 8888fa26fab541d06a3fccad9e4376bb3a66c043
The is a preemptively fix for unified bustage after Part 2 adds a new file
under layout/base/.
The error was:
In static member function 'static bool nsLayoutUtils::SupportsServoStyleBackend(nsIDocument*)':
invalid static_cast from type 'nsIDocument*' to type 'nsDocument*'
MozReview-Commit-ID: A8xTSPgh8Ls
--HG--
extra : rebase_source : 144315f06ecc5d66af1b1b0abbf8ac8269d9d13d
These were fixed by https://github.com/servo/servo/pull/14922.
MozReview-Commit-ID: 3Ypfq0BmkIY
--HG--
extra : rebase_source : c32e69303826b65059dcae963ddce94f5f4c40f8
These were fixed by https://github.com/servo/servo/pull/14922.
MozReview-Commit-ID: H7s2lGJ8QYU
--HG--
extra : rebase_source : ef104630c7715f2f95539a3bb65e46a480ff2bdb
Now that bug 1290209 has landed, we can make StyleSheet.disabled work in Servo
styled documents. This fixes a bunch of test crashes due to the assertion no
longer firing.
MozReview-Commit-ID: 6sLrdrxWlvK
--HG--
extra : rebase_source : cf8ab29f98fbba6be837a38ffe2a03ed9b33b701
More functions in nsCSSClipPathInstance will be refactored and moved into
ShapeUtils in subsequent patches.
MozReview-Commit-ID: LmJUevY8YGr
--HG--
extra : rebase_source : 7cbfe60fec65833db3c7b7d7e9f3157b49b777eb
The is a preemptively fix for unified bustage after Part 2 adds a new file
under layout/base/.
The error was:
In static member function 'static bool nsLayoutUtils::SupportsServoStyleBackend(nsIDocument*)':
invalid static_cast from type 'nsIDocument*' to type 'nsDocument*'
MozReview-Commit-ID: A8xTSPgh8Ls
--HG--
extra : rebase_source : 35935c10e6fee97702ae2cdcd5651ef5096ed195
This patch is not strictly relevant to the current bug, but doing the
work here nicely illustrates how the constructor we added in part 1 can
be used in existing parts of the codebase.