Граф коммитов

17458 Коммитов

Автор SHA1 Сообщение Дата
J. Ryan Stinnett ba1293b3ca Bug 1371457 - Add restyle markers for Stylo. r=bholley,gregtatum
Add restyle markers to `PrepareAndTraverseSubtree` to cover both initial styling
and part of the work of restyling.  Also add restyle markers around the post
traversal work in `DoProcessPendingRestyles`.

A new marker is also added around the change hint processing after the post
traversal.

MozReview-Commit-ID: 43PSyCJLikR

--HG--
extra : rebase_source : 923dd3d5526a7d68ab08f86e6dc233c9c61fa97f
2017-06-28 12:03:18 -07:00
J. Ryan Stinnett 9679cb9dce Bug 1371457 - Change restyle marker data to animation state. r=bholley,gregtatum
Stylo doesn't have a good equivalent for restyle hints to expose in markers and
the ones exposed for Gecko aren't very accurate either, so we don't want to
expose the restyle hint anymore.

At the same time, several animation restyle tests currently use the hint inside
the marker to check when animation-only restyles have happened.  We can preserve
this by changing the data inside the marker to be a flag for whether the restyle
is animation only, which we know for both Gecko and Stylo.

MozReview-Commit-ID: 8L8KU8Ush7P

--HG--
extra : rebase_source : 4eef80653c1ef79ee1539d27fe6a70fbfaf441ad
2017-06-28 11:59:28 -07:00
Carsten "Tomcat" Book 7857fa0a5e merge mozilla-inbound to mozilla-central a=merge 2017-07-06 11:18:05 +02:00
Kartikaya Gupta 4826f32d87 Bug 1377169 - Turn gfxRect into a typedef. r=jrmuizel
One thing to note here is that the Scale function on gfxRect has a
different implementation than that in gfx::Rect which is replacing it.
The former just scales the width/height directly whereas the latter
scales the XMost/YMost and recomputes the width/height.

MozReview-Commit-ID: 5FImdIaNfC3

--HG--
extra : rebase_source : 98662d2a52ff9652ec60b066641a07c6d5ee8e08
2017-07-05 11:22:00 -04:00
Kartikaya Gupta cad9534e69 Bug 1377090 - Turn gfxMatrix into a typedef for MatrixDouble. r=jrmuizel
Most of this patch is updating a few places that use gfxMatrix to use
the equivalent-but-differently-named functions on MatrixDouble:
- Translate/Rotate/Scale get turned into PreTranslate/PreRotate/PreScale
- Transform(Point) gets turned into TransformPoint(Point)
- gfxMatrix::TransformBounds(gfxRect) gets turned into
  gfxRect::TransformBoundsBy(gfxMatrix).
- gfxMatrix::Transform(gfxRect) gets turned into
  gfxRect::TransformBy(gfxMatrix).
The last two functions are added in this patch as convenience wrappers
to gfxRect instead of Matrix.h because we don't want Matrix.h to "know"
about gfxRect (to avoid adding gecko dependencies on Moz2D). Once we
turn gfxRect into a typedef for RectDouble these will be eliminated
anyway.

MozReview-Commit-ID: BnOjHzmOSKn

--HG--
extra : rebase_source : cf1692d1f0d44a4b05d684a66678739181a426d5
2017-07-05 11:18:49 -04:00
Kartikaya Gupta 1c54bb2347 Bug 1377090 - Make the Matrix class templated so we can instantiate it with a double type. r=bas
This extracts a BaseMatrix template of which Matrix is now a particular
specialization. The BaseMatrix allows us to reuse the same code for
floats and doubles, much like the other "base" classes (BasePoint,
BaseRect, etc.).

MozReview-Commit-ID: HO7bA83S9E0

--HG--
extra : rebase_source : dcd84d9a978cdea00bb54eb11eefcca9c6635901
2017-07-05 11:18:48 -04:00
Carsten "Tomcat" Book 6a0985654f Backed out changeset 9b2f0f827468 (bug 1377902) for bustage 2017-07-05 16:56:22 +02:00
Emilio Cobos Álvarez dfa6bdea00 Bug 1377902: Trivially cleanup a bit of the FC code. r=mats
MozReview-Commit-ID: HJKVk7lWp4p

--HG--
extra : rebase_source : 29a1b91602ef52e02869a028487fde67f815d6ec
2017-07-05 16:30:24 +02:00
Carsten "Tomcat" Book 49921c11be Merge mozilla-central to autoland 2017-07-05 13:05:51 +02:00
Carsten "Tomcat" Book b72c4833d5 merge mozilla-inbound to mozilla-central a=merge 2017-07-05 13:01:22 +02:00
Phil Ringnalda 22cb9f77bb Merge m-c to m-i
MozReview-Commit-ID: H6zGgEm7oOM
2017-07-04 20:32:07 -07:00
Emilio Cobos Álvarez 7ae63d2e3b Bug 1378190: Try to make ServoRestyleManager easier to follow. r=heycam
MozReview-Commit-ID: B9bw23n2jUe

--HG--
extra : rebase_source : 2fbd43cee1c3b0efafaa51ef6755adcfe6f31598
2017-07-04 19:16:04 +02:00
Bobby Holley 25d2053570 Bug 1378005 - Detect prescontext re-initialization and drop any servo data that exists. r=emilio
MozReview-Commit-ID: 76dmk3ip3hv
2017-07-04 15:02:18 -07:00
Ehsan Akhgari 86018d0bcc Bug 1377447 - Add a new flush type between Frames and InterruptibleLayout to initialize layout if needed and use it from CheckIfFocusable; r=smaug 2017-07-04 22:00:09 -04:00
Emilio Cobos Álvarez 2e8ba7dadc Bug 1378280: Assert we're not in a style refresh when attributes or state changes. r=heycam
MozReview-Commit-ID: CYaYWWfUY6d

--HG--
extra : rebase_source : 2838f0f7b4a90a5ff9626b75a050de95631a9081
2017-07-05 07:29:55 +02:00
Mats Palmgren f79b080654 Bug 1377707 - Ensure that LogTestDataForPaint is not called at all when APZTestLoggingEnabled() is false. r=tn
MozReview-Commit-ID: 8z7eqBBsn0R
2017-07-05 02:04:15 +02:00
Mats Palmgren 977a9e5f89 Bug 1376498 part 4 - Make all nsClassHashtable::RemoveAndForget() consumers use Remove() instead. r=froydnj
MozReview-Commit-ID: G64YQLlgm6r
2017-07-05 02:01:45 +02:00
Ehsan Akhgari dd036d1249 Backout bug 1377447 for more test failures on a CLOSED TREE 2017-07-04 17:01:42 -04:00
Ehsan Akhgari 04bd0e3db3 Bug 1377447 - Add a new flush type between Frames and InterruptibleLayout to initialize layout if needed and use it from CheckIfFocusable; r=smaug 2017-07-04 15:13:20 -04:00
Sebastian Hengst 6df5db8045 Backed out changeset bd3edebd5f20 (bug 1377447) for failing its own test 1377447-1.html on Windows 7 and OS X. r=backout 2017-07-04 18:18:30 +02:00
Ehsan Akhgari d39018ac62 Bug 1377447 - Add a new flush type between Frames and InterruptibleLayout to initialize layout if needed and use it from CheckIfFocusable; r=smaug 2017-07-04 11:13:30 -04:00
Brian Birtles f6eddc29f3 Bug 1365472 - Use animated class names when doing selector matching in Servo; r=heycam
Using SVG SMIL it is possible to animate the class attribute of an element using
markup such as the following:

  <style>
    .red {
      fill: red;
    }
  </style>
  <svg>
    <circle cx="50" cy="50" r="30" fill="blue">
      <set attributeName="class" to="red" begin="1s"/>
    </circle>
  </svg>

In Gecko, Element::GetClasses handles this case by looking for an animated class
string when the element in question is an SVG element.

This patch causes our Servo bindings to use GetClasses when querying attribute
values for selector matching.

Note that animating the class attribute is *not* expected to affect attribute
selectors such as `circle[class="red"]`. It does in Chrome, but that is due to
a Blink bug where animating attributes using SMIL affects the result of
getAttribute:

  https://bugs.chromium.org/p/chromium/issues/detail?id=735820

This patch adjusts the behavior for both the GeckoElement case and the
ServoElementSnapshot case.

MozReview-Commit-ID: DAFWHSH1aYB

--HG--
extra : rebase_source : 292c4e2fb419818ea851aca12790ff7e70f2e1d4
2017-06-27 10:55:03 -07:00
Hiroyuki Ikezoe 1da5513453 Bug 1377648 - Check summary frame instead of summary element on removing the summary. r=heycam
In case of removing summary element, we need to check details *frame* children
instead of details *element* children since the summary element has been
already removed from details element children list.

MozReview-Commit-ID: GEzDId9CYf9

--HG--
extra : rebase_source : 50834606413b916a3c0d6074a7a52e8bdbe845a0
2017-07-05 15:52:37 +09:00
Hiroyuki Ikezoe ee7e6f49d2 Bug 1377648 - Use inFlowFrame to check the target frame is summary and its parent is details. r=heycam
Considering the case where the summary element has position:absolute, we need
to use inFlowFrame and its parent instead of aFrame itself.

MozReview-Commit-ID: Ds8xxyBuyO5

--HG--
extra : rebase_source : 6254dae16e0371c55ae469390a5aaafa300b740c
2017-07-05 12:39:32 +09:00
Ting-Yu Lin 51d252c459 Bug 1377196 Part 1 - Store nsBindingManager* in ServoStyleSet. r=heycam
We need to call nsBindingManager's method from ServoStyleSet in a later
patch.

Also, we call nsStyleSet::SetBindingManager() immediately after we call
nsStyleSet::Init(). Therefore, we could pass binding manager to Init()
directly, and delete SetBindingManager().

MozReview-Commit-ID: 43WTpW3mSKX

--HG--
extra : rebase_source : f24f6085c51dfae1a969aee1e073720097d240d5
2017-06-29 13:43:59 -07:00
Wes Kocher bfc45b98b9 Merge m-c to inbound, a=merge
MozReview-Commit-ID: 9XdoB5MuVz6
2017-07-05 17:17:41 -07:00
Ryan Hunt 25c8269307 Bug 1377814 - Don't schedule an empty transaction on an APZ focus sequence number update. r=botond
MozReview-Commit-ID: 3SERspy0w9s

--HG--
extra : rebase_source : c0f4e1e0c4f3db2aa827cd1dd0692461bf02d060
extra : amend_source : 46c66f36ce0865ba5d3a6c1b9f4a9764595db447
2017-07-05 16:20:40 -05:00
Carsten "Tomcat" Book daa67cc9e3 merge mozilla-inbound to mozilla-central a=merge 2017-06-30 12:59:45 +02:00
Cameron McCormack aee3fd5f2f Bug 1362924 - Part 2: Add script blockers around remaining PresShell::{Destroy,Initialize} calls to protect against re-entrant nsDocumentViewer calls. r=tnikkel
MozReview-Commit-ID: G0lUGsNLb2b
2017-06-28 09:35:45 -04:00
Cameron McCormack 35ec5d97b3 Bug 1362924 - Part 1: Stop synchronously running XBL constructors and flushing style in PresShell::Initialize. r=tnikkel
MozReview-Commit-ID: 8GUm6Mt5wiK
2017-06-28 09:33:04 -04:00
Mats Palmgren 021ccf02e1 Bug 1377135 - Use LookupForAdd instead of Get+Put to avoid unnecessary hashtable lookups in nsRefreshDriver::AddImageRequest. r=froydnj
MozReview-Commit-ID: 4h0fvadmBn0
2017-06-29 20:53:46 +02:00
Ryan Hunt f2d4d39378 Bug 1376538 - Transmit APZ focus target updates on empty transactions. r=kats
This commit also schedules empty transactions on input events that trigger a
focus sequence number update.

MozReview-Commit-ID: 1FWXfStLsGv

--HG--
extra : rebase_source : 02c6f07287b6909493f6f88345a3cca93ab3e45b
2017-06-28 15:11:04 -04:00
Carsten "Tomcat" Book 1367c473cd Merge mozilla-central to mozilla-inbound 2017-06-29 15:49:39 +02:00
Carsten "Tomcat" Book 5f00ae3a8b merge mozilla-inbound to mozilla-central a=merge 2017-06-29 15:47:04 +02:00
Olli Pettay da0ec0a364 Bug 1375491, make child process to cache ime properties only at animation tick time, r=masayuki
--HG--
extra : rebase_source : 6f13f4d91fc4873d135824431adb4b0b2843b738
2017-06-29 14:46:11 +03:00
Carsten "Tomcat" Book f32372e861 Backed out changeset 2992d5af6251 (bug 1376640) for assertion failures like Assertion failure: mOwner == ExpectedOwnerForChild(aFrame) (Missed some frame in the hierarchy?) 2017-06-29 08:22:08 +02:00
Boris Zbarsky 991d1134d8 Bug 1376640. Fix dynamic updates when an inline that sits between a first-letter and its block changes style. r=heycam
MozReview-Commit-ID: 8osMUpYVRvR
2017-06-28 22:19:35 -07:00
Sebastian Hengst 36ddc45095 Backed out changeset 8a07aa497968 (bug 1312605) for failing mobile/android/tests/browser/chrome/test_session_scroll_position.html. r=backout 2017-06-29 05:06:15 +02:00
Sebastian Hengst 37b8fdc065 Backed out changeset e1283673d436 (bug 1312605) 2017-06-29 05:05:05 +02:00
Emilio Cobos Álvarez 22eedb837d Bug 1375969: Fix MightHave{State,Attribute}Dependency for XBL. r=heycam
MozReview-Commit-ID: 8I29pMHq4uf
2017-06-28 18:45:34 -07:00
Jan Henning 657e52aaed Bug 1312605 - Part 1 - Don't clobber resolution changes that happen before first paint on Fennec. r=kats
When going back/forward through a tab's session history, the saved resolution from the LayoutHistoryState is set on the PresShell before first paint. On Fennec, this means that it is subsequently going to be overwritten by the MobileViewportManager's default zoom calculation.

To fix this, we make use of the MVM's feature to set a "restored" resolution that will then be taken into account on first paint.

MozReview-Commit-ID: 43o97M6fiaZ

--HG--
extra : rebase_source : 45d29057de137cb306617481311622c6ca620fa3
2017-06-28 16:13:01 -07:00
Jan Henning af9f59581a Bug 1312605 - Part 0 - Fix indentation in MVM. r=kats
MozReview-Commit-ID: FYAZNhVzPsb

--HG--
extra : rebase_source : 9dc0251763dc574e932b4508564d9ed8065f21c2
2017-06-28 11:23:02 -07:00
Cameron McCormack e9022dc34e Bug 1376647 - Use new MayHaveAnonymousChildren flag to skip work in AllChildrenIterator and some util functions. r=bholley
MozReview-Commit-ID: 783VtcY7qQF
2017-06-27 17:53:39 -07:00
Sebastian Hengst 0dae3d6940 Backed out changeset ee62473b968c (bug 1376647) for build bustage: no member named 'MayHaveAnonymousChildren' in 'nsIContent' at dom/base/nsContentUtils.cpp:10258. r=backout on a CLOSED TREE 2017-06-29 01:09:42 +02:00
Cameron McCormack e389f956ce Bug 1376647 - Use new MayHaveAnonymousChildren flag to skip work in AllChildrenIterator and some util functions. r=bholley
MozReview-Commit-ID: 783VtcY7qQF

--HG--
extra : rebase_source : 9837ea050a56c86cc7572bc1f51945cb67b55226
2017-06-27 17:53:39 -07:00
Kartikaya Gupta 56edc85a6e Bug 1376782 - Replace gfxPoint with a typedef to PointDouble. r=jrmuizel
This also moves the WithinEpsilonOf function from gfxPoint into
PointTyped, and changes call sites that are using
gfxPoint::Transform(Matrix4x4) to use Matrix4x4::TransformPoint(Point)
instead, which should be equivalent.

MozReview-Commit-ID: 3Z0bsU41rQt

--HG--
extra : rebase_source : 390e8de546d641d324e7125a06d0b8b51a48b946
2017-06-28 11:42:23 -04:00
Bobby Holley 834849b377 Bug 1376655 - Move EnsureSameStructsCached to GeckoStyleContext. r=emilio 2017-06-28 10:08:37 -07:00
Bobby Holley 83be980ecc Bug 1376655 - Don't call EnsureSameStructsCached in ServoRestyleManager. r=emilio 2017-06-28 10:08:37 -07:00
Bobby Holley 5681b4713c Bug 1376655 - Use ServoStyleContext in more places. r=emilio 2017-06-28 10:08:36 -07:00
Carsten "Tomcat" Book 7918eeee02 merge mozilla-inbound to mozilla-central a=merge 2017-06-28 13:23:29 +02:00