Commit graph

1978 commits

Author SHA1 Message Date
Matt Woodrow ext:(%2C%20Miko%20Mynttinen%20%3Cmikokm%40gmail.com%3E%2C%20Timothy%20Nikkel%20%3Ctnikkel%40gmail.com%3E)
31e9b3f8cd Bug 1404181 - Part 2: Track a 'visible' rect for display list building as well as the 'dirty' rect, so that we can do partial building by specifying a smaller 'dirty' rect. r=mstange
MozReview-Commit-ID: 7DUV9dl4zb1

--HG--
extra : rebase_source : e7bf5eacba44ce9cf77c55d623edef33a85f0492
2017-10-04 14:28:38 +13:00
Xidorn Quan
9808fc6a4b Bug 1408235 part 1 - Move stylo checking logic into a separate function. r=heycam
MozReview-Commit-ID: 9fOyC4QUSDA

--HG--
extra : source : 024a940349c480c20d967e4e1e4ddd03fd4f05b3
2017-10-21 11:02:34 +11:00
Timothy Nikkel
52d23be2f4 Bug 1409215. Don't change scroll thumbs into AGRs during display list building. r=mstange
Find the scrollframe for a scrollbar thumb and use it to determine if the scrollthumb is an AGR, instead of recording if the associated scrollframe is active on a frame property during display list building.
2017-05-19 17:04:19 -05:00
Matt Woodrow
d8a662f0d2 Bug 1406727. r=mstange,froydnj a=abillings
--HG--
extra : rebase_source : a9932eb10d3ca451e1ce3a424cd48e957801f593
2017-10-17 15:19:44 +13:00
Kyle Machulis
1cc8b01353 Bug 1406224 - Remove nsIDOMHTMLImageElement; r=bz
MozReview-Commit-ID: GCATWRt6qMo

--HG--
extra : rebase_source : 29854f1374c6ad318da0b5b68be23507667c3be4
2017-10-06 13:27:23 -07:00
Nicholas Nethercote
706daca552 Bug 1406296 (part 1) - Remove the profiler's "displaylistdump" feature. r=mstange.
It's not useful.

--HG--
extra : rebase_source : b18244b6f1e28b29f1f71a4cca55781316e2cdc5
2017-10-06 17:33:30 +11:00
Sebastian Hengst
4a6ee59701 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-10-10 06:22:33 -03:00
Robert Longson
0e21ecb9e3 Bug 1398806 - GetCtx and GetNearestViewport should return the nearest svg or symbol element which is now an SVGViewportElement rather than only returning the nearest svg element because a symbol establishes a viewport too. r=dholbert 2017-10-10 07:58:34 +01:00
Jeremy Chen
419e2e9b26 Bug 1403077 - add two test-only helper functions to access the stylo blocklist. r=heycam
In the current blocklist implementation, we read the stylo blocklist from the user
preferences very early and only once, even earlier than the test preferences
updating happens.

So, to be able to test the functionality of the stylo blocklist, we add these two
nsIDOMWindowUtils APIs to be able to add/remove a mock domain to the existing
blocklist.

MozReview-Commit-ID: K48ejLBcNbn

--HG--
extra : rebase_source : 354fe9871231f2a94f09bd2612c9d21ced4143e8
2017-10-09 12:07:04 +08:00
Jeremy Chen
db85457d66 Bug 1403077 - implement the stylo blocklist mechanism. r=heycam
In this patch, we read the stylo blocklist into nsLayoutUtils's global static
variable during nsLayoutUtils::Initialize(). So, we can decide if we should
fallback to use Gecko backend while updating style backend for a document.

We add "layout.css.stylo-blocklist.blocked_domains" and
"layout.css.stylo-blocklist.enabled" to ContentPrefs.cpp because they are read
very early (during nsLayoutUtils::Initialize).

MozReview-Commit-ID: 8c4n6m9dYD8

--HG--
extra : rebase_source : ca81cd57980d98b9b73f18bb03a8035b161d23ef
2017-09-27 20:35:21 +08:00
Sebastian Hengst
aa78440a09 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: EE6DcCgHufi
2017-10-09 11:19:20 +02:00
Nicholas Nethercote
8a68e6fb83 Bug 1403868 (part 4) - Reduce tools/profiler/public/*.h to almost nothing in non-MOZ_GECKO_PROFILER builds. r=mstange.
Currently the Gecko Profiler defines a moderate amount of stuff when
MOZ_GECKO_PROFILER is undefined. It also #includes various headers, including
JS ones. This is making it difficult to separate Gecko's media stack for
inclusion in Servo.

This patch greatly simplifies how things are exposed. The starting point is:

- GeckoProfiler.h can be #included unconditionally;

- everything else from the profiler must be guarded by MOZ_GECKO_PROFILER.

In practice this introduces way too many #ifdefs, so the patch loosens it by
adding no-op macros for a number of the most common operations.

The net result is that #ifdefs and macros are used a bit more, but almost
nothing is exposed in non-MOZ_GECKO_PROFILER builds (including
ProfilerMarkerPayload.h and GeckoProfiler.h), and understanding what is exposed
is much simpler than before.

Note also that in BHR, ThreadStackHelper is now entirely absent in
non-MOZ_GECKO_PROFILER builds.
2017-10-04 09:11:18 +11:00
Nicholas Nethercote
cbc9fbb2bf Bug 1403868 (part 2) - Tweak profiler_tracing(). r=mstange.
This patch does the following.

- Makes the TracingKind argument non-optional.

- Puts the UniqueProfilerBacktrace argument last in the second variant.

- Reorders AutoProfilerTracing to match the order of the profiler_tracing()
  declarations.

--HG--
extra : rebase_source : 8e9acdaf777c642cd854570771a3f96da6d524d1
2017-10-03 19:48:10 +11:00
Nicholas Nethercote
d225f7151b Bug 1400460 - Rename nsIAtom as nsAtom. r=hiro.
(Path is actually r=froydnj.)

Bug 1400459 devirtualized nsIAtom so that it is no longer a subclass of
nsISupports. This means that nsAtom is now a better name for it than nsIAtom.

MozReview-Commit-ID: 91U22X2NydP

--HG--
rename : xpcom/ds/nsIAtom.h => xpcom/ds/nsAtom.h
extra : rebase_source : ac3e904a21b8b48e74534fff964f1623ee937c67
2017-10-03 09:05:19 +11:00
Xidorn Quan
e9accd246b Bug 1406277 - Completely remove xml:base for style attribute. r=bz
This commit removes:
* layout.css.style-attr-with-xml-base.disabled pref
* deprecation XMLBaseAttributeForStyleAttr
* code path for getting base URI of style attr considering xml:base

MozReview-Commit-ID: 1w96eqhHPab

--HG--
extra : rebase_source : 95e33da698ce0cfc9a44de8bc0d63c3fa4634644
2017-10-06 15:45:33 +11:00
Wes Kocher
6dc323cfe9 Merge m-c to autoland, a=merge
MozReview-Commit-ID: Dxbv9TjDlDY
2017-10-04 16:47:41 -07:00
Emilio Cobos Álvarez
d46ace29b9 Bug 1405605: Bypass the IsReallyFixedPos assertion when the style may have changed due to first-line reparenting. r=bz
MozReview-Commit-ID: HS0670UMqKK
2017-10-04 17:53:13 +02:00
Kartikaya Gupta
561b271b7d Bug 1405399 - Update due to API change in WR cset 75216e5. r=Gankro
MozReview-Commit-ID: GM8qA0MKaHv

--HG--
extra : rebase_source : cb8cddeab931e34ad5cc7392308f177970cdabde
2017-10-04 14:54:37 -04:00
Emilio Cobos Álvarez
660ab8f549 Bug 1404324: Use the placeholder state to remove out-of-flows that aren't real descendants of the destruction root. r=bz
Using the style of the frame can mess things up when we reparent them due to
::first-line before removing them.

MozReview-Commit-ID: 3Dt0wF2XRAH
2017-10-04 10:49:41 +02:00
Sebastian Hengst
0ba56b9c7d Backed out changeset cb247c8a0fe5 (bug 1404324) for landing with wrong commit message. r=backout 2017-10-04 10:48:14 +02:00
Emilio Cobos Álvarez
ae652b0b37 Bug 1404324: Always remove out of flows from the placeholder frame, using its info. r=bz
MozReview-Commit-ID: 3Dt0wF2XRAH
2017-10-04 10:38:34 +02:00
Timothy Nikkel
3ca5249135 Bug 1364295. Simplify some code now that we don't create displayports during display list building. r=mstange 2017-10-02 16:00:16 -05:00
Timothy Nikkel
b6711be167 Bug 1364295. Walk the frame tree looking for a scrollframe to add a displayport to, or one that already has a displayport before displaylist building. r=mstange
And stop creating displayports during display list building.

One thing we can investigate in the future is whether we should use the value of mHaveScrollableDisplayPort stored on the display list builder retained between paints. If it's true then we could potentially skip this pass. It would mean that if there are large changes to the page we wouldn't set a displayport. And we'd need to make sure the value is cleared when we load a new page.
2017-05-19 17:04:19 -05:00
David Major
c772f99f60 Bug 1403220 followup: Limit the PGO workaround to just where it's needed.
No rush merging this one around. Feel free to back this out if the crashes come back.

--HG--
extra : rebase_source : 5d850c0b739e8a47830a65da939241e495a1f7bf
2017-09-28 13:27:01 -04:00
Sebastian Hengst
e0a0f6988b Backed out changeset 45a57448087d (bug 1364295) for failing mochitest gfx/layers/apz/test/mochitest/test_bug982141.html on Android 4.3 API 16. r=backout 2017-09-28 10:06:14 +02:00
Sebastian Hengst
d8bd4d4aaa Backed out changeset e7be72224105 (bug 1364295) 2017-09-28 10:05:22 +02:00
Timothy Nikkel
214beb91cd Bug 1364295. Simplify some code now that we don't create displayports during display list building. r=mstange 2017-09-28 01:25:39 -05:00
Timothy Nikkel
1402ea7c2d Bug 1364295. Walk the frame tree looking for a scrollframe to add a displayport to, or one that already has a displayport before displaylist building. r=mstange
And stop creating displayports during display list building.

One thing we can investigate in the future is whether we should use the value of mHaveScrollableDisplayPort stored on the display list builder retained between paints. If it's true then we could potentially skip this pass. It would mean that if there are large changes to the page we wouldn't set a displayport. And we'd need to make sure the value is cleared when we load a new page.
2017-05-19 17:04:19 -05:00
Brad Werth
0786d1a520 Bug 1302470 Part 3: Fix the case where HTML buttons need to generate display item children when doing opaque hit tests. r=mattwoodrow
MozReview-Commit-ID: HwDYsnMJkM8

--HG--
extra : rebase_source : bf5ec5fd0498376c6426ad2593d2e15db65a4a84
2016-11-30 14:35:37 -08:00
Ryan VanderMeulen
d70d8e1773 Merge m-c to inbound. a=merge 2017-09-27 13:24:21 -04:00
David Major
cb46df4d86 Bug 1403220 - De-optimize some font functions to work around an MSVC PGO crash. r+a=RyanVM 2017-09-27 10:17:00 -04:00
Mats Palmgren
d9d785d520 Bug 1398520 part 4 - Rename nsFormControlFrame to nsCheckboxRadioFrame. r=dholbert
MozReview-Commit-ID: 9nwikVD1cd9

--HG--
rename : layout/forms/nsFormControlFrame.cpp => layout/forms/nsCheckboxRadioFrame.cpp
rename : layout/forms/nsFormControlFrame.h => layout/forms/nsCheckboxRadioFrame.h
2017-09-27 14:12:00 +02:00
Matt Woodrow
991f510e8b Bug 1402199 - Move code for adding extra background items into a helper. r=mstange 2017-09-26 15:57:56 +13:00
Matt Woodrow
d58801ad81 Bug 1402197 - Add an option for GetTransformToAncestor to stop at stacking contexts and displayport. r=mstange 2017-09-26 15:57:55 +13:00
Alexis Beingessner
4dd753b7ab Bug 1400382 - Implement CreateWebRenderCommands for nsDisplayTextOverflow. r=mstange
MozReview-Commit-ID: EQtFvLQCT2U

--HG--
extra : rebase_source : 12548860b96a7a700c793d9cc8c2164e32e568fb
2017-09-21 15:15:58 -04:00
Louis Chang
3fbb65bcdf Bug 1290782 Part 2 - Remove redundant destCtx and IsEmpty check of snappedDestSize since it should always have a value. r=cjku
MozReview-Commit-ID: 25IlXeqURVa

--HG--
extra : rebase_source : 6ba07352dce9d1e89ac895043ea2a2c39ec4a46d
2017-09-20 10:05:49 +08:00
Louis Chang
4ad5aa661d Bug 1290782 Part 1 - When drawing a border-image using an SVG image, we should not take into account any transformation of currentMatrix when computing svg viewport size. r=cjku,dholbert
MozReview-Commit-ID: 8rkwQGKJOvo

--HG--
extra : rebase_source : 868a7e0909bf704610a166948186cf5411721540
2017-09-20 10:05:42 +08:00
Kevin Hsieh
b124cf4bf5 Bug 1395777 (part 2) - Make orthogonal ruby annotations inter-character. r=xidorn
MozReview-Commit-ID: JjpEnQI9Dmv

--HG--
extra : rebase_source : df628c84bd9c5d4b1eedca874c8e924786d6964d
2017-08-31 17:41:13 -07:00
Ting-Yu Lin
34dfa1cea5 Bug 1399767 - Remove preference "layout.css.clip-path-shapes.enabled". r=heycam
The variables (basicShapeSVGBoxValues, etc.) in property_database.js are
moved to the beginning of the file so that they're defined before usage.

MozReview-Commit-ID: 7L3obIY1alP

--HG--
extra : rebase_source : 6c3dff5ecbdad8ef6cf1a49953e4ad1001620b6c
2017-09-15 15:00:30 +08:00
Matt Woodrow
99aae28a5c Bug 1397054 - Reset nsDisplayListBuilder state each frame so that we can use it multiple times. r=mstange
MozReview-Commit-ID: Gb7AnKoZaPu

--HG--
extra : rebase_source : 995e5036cfa4bc88bfb1bc59a6e60801f902efff
2017-09-12 14:10:39 -04:00
Kartikaya Gupta
f397e9054a Bug 1395670 - In webrender layers-free mode, don't add a root scroll metadata if we already have it elsewhere in the tree. r=mstange
MozReview-Commit-ID: B9LY4v9t11Y

--HG--
extra : rebase_source : e6ffb4c7a54e0584a3a4939a3bca34276b69478b
2017-08-31 17:07:41 -04:00
Phil Ringnalda
b8183bc0b4 Backed out 6 changesets (bug 1302470) for mochitest-chrome failures
CLOSED TREE

Backed out changeset 3aab8b1494ef (bug 1302470)
Backed out changeset fdd40abac611 (bug 1302470)
Backed out changeset a67bc2f1b624 (bug 1302470)
Backed out changeset 160522290018 (bug 1302470)
Backed out changeset 6b948c533944 (bug 1302470)
Backed out changeset 399011313b3c (bug 1302470)

MozReview-Commit-ID: 2B3uMAkzNGv
2017-08-31 20:04:24 -07:00
Brad Werth
9bd23fcc62 Bug 1302470 Part 3: Fix the case where HTML buttons need to generate display item children when doing opaque hit tests. r=mattwoodrow
MozReview-Commit-ID: HwDYsnMJkM8

--HG--
extra : rebase_source : 77521a6176a75752bac394759731bf3b07974ebe
2016-11-30 14:35:37 -08:00
Kartikaya Gupta
2f2f47ee81 Bug 1394011 - Place the root ScrollMetadata on the tree we send to APZ in layers-free webrender mode. r=mstange
MozReview-Commit-ID: i6BDSDgKiu

--HG--
extra : rebase_source : c6de7e75ff054a17df5a45f17f88025be3ffd3dc
2017-08-28 17:17:37 -04:00
Kartikaya Gupta
b76249cc0d Bug 1394011 - Extract helper function to compute the root ScrollMetadata. r=mstange
MozReview-Commit-ID: G8G7hI0aBWY

--HG--
extra : rebase_source : 2a68bf8202abe4b2dddd87a9dae0f6f94d854ea4
2017-08-28 17:17:34 -04:00
J. Ryan Stinnett
cb71aaebe0 Bug 1393233 - Add env var to disable Stylo. r=bholley
MozReview-Commit-ID: BjNWGh3LQIj

--HG--
extra : rebase_source : 882c78e175d2cd2d2f3b389ee3240fe7eb2a6c94
2017-08-23 17:58:32 -05:00
Kevin Chen
9fa0238d13 Bug 1362321 - Do not crash in gfxPlatform:Init if there is a TDR happening; r=bas
MozReview-Commit-ID: 9gJCErHosg1

--HG--
extra : rebase_source : 6fc0e95b18ee795f2571d82ca81f3a72970142b3
2017-08-09 18:00:01 +08:00
Kartikaya Gupta
9a79323f32 Bug 1323320 - Skip displayport size assertions when getting the displayport for visibility testing. r=tnikkel
MozReview-Commit-ID: 1GbXxlqdOzq

--HG--
extra : rebase_source : a33d5f3f6e1123014046653e04af17c3a361297c
2017-08-14 14:29:20 -04:00
Matt Woodrow
781ec6ffa1 Bug 1388162 - Add a Destroy function to nsDisplayItem to use instead of manually invoking the destructor, this will allow us to recycle them in the future. r=mstange
* * *
[mq]: fix

MozReview-Commit-ID: LUXZAIL73BJ
2017-08-07 16:07:43 +12:00
Matt Woodrow
40f5b92e3b Bug 1388161 - Store the dirty rect on the display list builder rather than passing it as a parameter to BuildDisplayList. r=mstange 2017-08-07 14:23:35 +12:00
Sebastian Hengst
8257b2d113 Backed out changeset 8f2dd8f13b53 (bug 1388161) for failing chrome's test_animation_performance_warning.html | preserve-3d transform. r=backout 2017-08-10 14:40:21 +02:00
Sebastian Hengst
7f85daeb2a Backed out changeset e9985564e081 (bug 1388162) for failing chrome's test_animation_performance_warning.html | preserve-3d transform. r=backout 2017-08-10 14:40:20 +02:00
Matt Woodrow
95f2e31f88 Bug 1388162 - Add a Destroy function to nsDisplayItem to use instead of manually invoking the destructor, this will allow us to recycle them in the future. r=mstange 2017-08-07 16:07:43 +12:00
Matt Woodrow
a3a130b6ff Bug 1388161 - Store the dirty rect on the display list builder rather than passing it as a parameter to BuildDisplayList. r=mstange 2017-08-07 14:23:35 +12:00
Wes Kocher
2196b718d3 Merge inbound to central, a=merge
MozReview-Commit-ID: DlSLhaepjeU
2017-08-03 18:06:53 -07:00
Ethan Lin
b9a34ae816 Bug 1386477 - Add nullptr check for layerManager->GetRoot() to prevent crash when dumping display list data. r=kats
MozReview-Commit-ID: 6o0PwKvs0HQ
2017-08-03 15:41:01 +08:00
Kartikaya Gupta
80a38fa00e Bug 1383386 - Update null checks to check the correct IPC actor. r=billm
MozReview-Commit-ID: Dr3V9vgzdZC

--HG--
extra : rebase_source : aa858f673f93b1779a001dfaeba6787863962c3d
2017-08-02 20:10:35 -04:00
Sebastian Hengst
c9ff8ee666 Backed out changeset ecbeb9354c24 (bug 1383386) for mass-asserting at gfx/layers/ipc/CompositorBridgeChild.cpp:264. r=backout on a CLOSED TREE 2017-08-02 23:08:43 +02:00
Kartikaya Gupta
cc3312045a Bug 1383386 - Update null checks to check the correct IPC actor. r=billm
MozReview-Commit-ID: AZlFYkuzFVb

--HG--
extra : rebase_source : f3e1836db6833783f8277a3e9f2e5927eb452f46
2017-08-02 09:53:00 -04:00
Kartikaya Gupta
4ed905c664 Bug 1384616 - Save APZ-relevant data from fixed-pos items in the WR scroll data for layers-free transactions. r=jrmuizel
MozReview-Commit-ID: HAFnrCVM9pZ

--HG--
extra : rebase_source : 9b7f5f7a3487501061b0526bfc92b06ef5593a88
2017-07-31 15:27:29 -04:00
Manish Goregaokar
e632c1393e Bug 1383492: stylo: Change nscoord_MAX to 1<<30 - 1 ; r=emilio,dbaron
nscoord_MAX is (1<<30) so that we can check for overflow *after* adding
two nscoords. However, (nscoord_MAX + nscoord_MAX) will still overflow.
Subtracting one makes this no longer possible.

MozReview-Commit-ID: BtbQRMp5kWm
2017-07-27 18:57:32 -07:00
Wes Kocher
fd09155f06 Merge m-c to inbound, a=merge
MozReview-Commit-ID: 418vKEKrk3n
2017-07-24 18:10:56 -07:00
Mason Chang
b4e1afb9e9 Bug 1365876. Blur text shadows on the CPU. r=lsalzman 2017-07-24 13:48:14 -07:00
Kartikaya Gupta
23c0f3a60b Bug 1382682 - Move ViewIDForASR into nsLayoutUtils for reuse. r=mstange
MozReview-Commit-ID: IcYqDO1D2SB

--HG--
extra : rebase_source : b1aa811facf533f4f30ae4e432f73737e1a4528b
2017-07-20 12:33:09 -04:00
Kris Maglione
a2e2fa50da Bug 1379508: Part 1 - Apply the correct client offsets to remote frameloaders in popup widgets. r=kats
On-screen coordinates for points in remote frameloads are calculated relative
to the screen origin of the top-level window, while event coordinates are
calculated relative to the nearest widget. Since popups have their own widgets
separate from the top-level window, their native client offsets have no
particular relation to the origin of the top-level window, and we need to
manually calculate them relative to the origin of the top-level widget
instead.

MozReview-Commit-ID: EDyEyu37XuY

--HG--
extra : rebase_source : 5d3f7a3fb9518d7a0cf149b8c2f579805d75eb3b
extra : absorb_source : f48ee4b131ff67ae686d12f81ed2ad19b934e81e
2017-07-13 15:31:55 -07:00
Louis Chang
29abcbcdde Bug 1319407 - Apply clip-path to each frame when box-decoration-break is clone. r=cjku,heycam
MozReview-Commit-ID: E7IR49MzkWm

--HG--
extra : rebase_source : 79f482236ad377948f94a69e2648d07a24a49e2b
2017-07-24 11:14:47 +08:00
Andrew Osmond
6a22823f58 Bug 1183378 - Part 1. Add nsLayoutUtils::ComputeImageContainerDrawingParameters which generates the parameters needed for GetImageContainerAtSize. r=tnikkel 2017-11-23 06:55:06 -05:00
Masayuki Nakano
4ee17d1b8c Bug 1377989 - part2: Rename nsRange::GetEndParent() to nsRange::GetEndContainer() r=smaug
MozReview-Commit-ID: K4qPjtZ62yO

--HG--
extra : rebase_source : 8653db98b9bd70c77a6aac8d906f401f0222c58a
2017-07-11 21:11:37 +09:00
Masayuki Nakano
2f2ce53be5 Bug 1377989 - part1: Rename nsRange::GetStartParent() to nsRange::GetStartContainer() r=smaug
Web standards use "Container" instead of "Parent".  So, nsRange shouldn't use "Parent" for its members and methods.

MozReview-Commit-ID: Ho6N0diuWtE

--HG--
extra : rebase_source : ee4eb7068a68b118c7fe98e9e9e7fa9c9e7f13e2
2017-07-11 20:53:04 +09:00
Kartikaya Gupta
e65dbb6e13 Bug 1378355 - Update GetMaxDisplayPortSize to respect the gfx.max-texture-size pref. r=tnikkel
MozReview-Commit-ID: D6wF4QrnGSw

--HG--
extra : rebase_source : 355cc3170a45444c29683b054769326c70672391
2017-07-10 10:15:25 -04:00
Kartikaya Gupta
aa30c63e60 Bug 1378355 - Move the safe-maximum displayport fallback code into the GetMaxDisplayPortSize function. r=tnikkel
MozReview-Commit-ID: LdHQuuunl3E

--HG--
extra : rebase_source : 2db1703245694539b924d8330ddc7bedc1a88216
2017-07-10 10:15:24 -04:00
J. Ryan Stinnett
2f3a91332b Bug 1379300 - Add Stylo env var for easier enabling. r=mbrubeck
MozReview-Commit-ID: A8XBdavSkNN

--HG--
extra : rebase_source : 54a599aa7fb5a30980ffaa1d9179ed82432d7d2e
2017-07-07 18:03:44 -05: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
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
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
Carsten "Tomcat" Book
7918eeee02 merge mozilla-inbound to mozilla-central a=merge 2017-06-28 13:23:29 +02:00
Emilio Cobos Álvarez
79491cce00 Bug 1375674: Constify and simplify nsLayoutUtils::{First,Last}ContinuationOrIBSplitSibling. r=heycam
MozReview-Commit-ID: phsCyamDum

--HG--
extra : rebase_source : 805bcaef0732f9c3208b1234cd3aaaf4216eabe9
2017-06-25 01:48:27 +02:00
Bill McCloskey
f115503a0b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Ryan Hunt
99499fb9d6 Bug 1351783 part 7 - Create FocusState and FocusTarget types. r=kats,botond
This commit begins the work needed for tracking focus by creating two new classes,
FocusTarget and FocusState. FocusState is created and used by APZCTreeManager to
track the global focus information, while FocusTarget is created per layer tree and
sent to APZ with local focus information. Between the two we are able to figure out
what the correct scrollable layer is to use in response to a keyboard scroll.

See the comment in `FocusState.h` for more details on the architecture and things
needed in future patches to complete this.

MozReview-Commit-ID: F75VZv3i9U2

--HG--
extra : rebase_source : 3d04bced8e13a9884f0c1b320bad8ba2205d7011
2017-06-05 19:12:22 -05:00
Nicholas Nethercote
58786e1ea7 Bug 1375392 - Tweak the PROFILER_LABEL* macros. r=mstange.
This patch makes the following changes to the macros.

- Removes PROFILER_LABEL_FUNC. It's only suitable for use in functions outside
  classes, due to PROFILER_FUNCTION_NAME not getting class names, and it was
  mostly misused.

- Removes PROFILER_FUNCTION_NAME. It's no longer used, and __func__ is
  universally available now anyway.

- Combines the first two string literal arguments of PROFILER_LABEL and
  PROFILER_LABEL_DYNAMIC into a single argument. There was no good reason for
  them to be separate, and it forced a '::' in the label, which isn't always
  appropriate. Also, the meaning of the "name_space" argument was interpreted
  in an interesting variety of ways.

- Adds an "AUTO_" prefix to PROFILER_LABEL and PROFILER_LABEL_DYNAMIC, to make
  it clearer they construct RAII objects rather than just being function calls.
  (I myself have screwed up the scoping because of this in the past.)

- Fills in the 'js::ProfileEntry::Category::' qualifier within the macro, so
  the caller doesn't need to. This makes a *lot* more of the uses fit onto a
  single line.

The patch also makes the following changes to the macro uses (beyond those
required by the changes described above).

- Fixes a bunch of labels that had gotten out of sync with the name of the
  class and/or function that encloses them.

- Removes a useless PROFILER_LABEL use within a trivial scope in
  EventStateManager::DispatchMouseOrPointerEvent(). It clearly wasn't serving
  any useful purpose. It also serves as extra evidence that the AUTO_ prefix is
  a good idea.

- Tweaks DecodePool::SyncRunIf{Preferred,Possible} so that the labelling is
  done within them, instead of at their callsites, because that's a more
  standard way of doing things.

--HG--
extra : rebase_source : 318d1bc6fc1425a94aacbf489dd46e4f83211de4
2017-06-22 17:08:53 +10:00
Nicholas Nethercote
4183270eec Bug 1375275 (part 3) - Remove profiler_log(). r=mstange.
It's a wafer thin wrapper around profiler_tracing() and it's only used three
times. Let's just remove it.

Note also that those three uses are the only places where TRACING_EVENT is
used. I wonder if they're really needed...

--HG--
extra : rebase_source : ac70b4c77c4592d96957a8e6249597eafc822fd4
2017-06-21 20:50:07 +10:00
Carsten "Tomcat" Book
8a1350b5a6 Backed out changeset 4f6302a98ae4 (bug 1372405)
--HG--
extra : rebase_source : 41632f3158e88e692809731394a683d065a73dfb
2017-06-21 13:59:26 +02:00
Bill McCloskey
6b3e84ed5f Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-20 21:44:11 -07:00
Jonathan Watt
b3ab3e52a0 Bug 1374614 - Support SVG image context paint in XUL tree views (treecol etc.). r=dholbert
MozReview-Commit-ID: LltEP7gTCgq
2017-05-26 14:24:57 +01:00
David Anderson
eda24ede27 Rename LayerManager::Composite to LayerManager::ScheduleComposite. (bug 1365879 part 17, r=mattwoodrow) 2017-06-20 01:17:21 -07:00
Carsten "Tomcat" Book
ea1b86680c Backed out changeset 9846de3bd954 (bug 1372405)
--HG--
extra : rebase_source : 5d4a48e8ec394c329994689d938d2a6e9b2752b0
2017-06-20 08:27:02 +02:00
Bill McCloskey
4592152411 Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-19 22:25:47 -07:00
Andi-Bogdan Postelnicu
a0d2bb2b90 Bug 1374236 - Refactor MaybeSetupTransactionIdAllocator to avoid passing nsView*. r=mats
MozReview-Commit-ID: L3jedbOFdCP

--HG--
extra : rebase_source : b528086230b141e425523aecf439a045a98b7823
2017-06-19 18:58:42 +03:00
Alexis Beingessner
adb013669b Bug 1088760 - Remove nsRenderingContext, replacing all of its uses with gfxContext. r=jwatt,jrmuizel
MozReview-Commit-ID: K1WUIOnvazF
2017-06-13 11:00:10 -04:00
Nicholas Nethercote
0be77baa96 Bug 1370329 (part 1) - Clean up the profiler's RAII classes. r=mstange.
This patch does the following renamings, which increase consistency.

- GeckoProfilerInitRAII -> AutoProfilerInit
- GeckoProfilerThread{Sleep,Wake}RAII -> AutoProfilerThread{Sleep,Wake}
- GeckoProfilerTracingRAII -> AutoProfilerTracing
- AutoProfilerRegister -> AutoProfilerRegisterThread
- ProfilerStackFrameRAII -> AutoProfilerLabel
- nsJSUtils::mProfilerRAII -> nsJSUtils::mAutoProfilerLabel

Plus a few other minor ones (e.g. local variables).

The patch also add MOZ_GUARD_OBJECT macros to all the profiler RAII classes
that lack them, and does some minor whitespace reformatting.

--HG--
extra : rebase_source : 47e298fdd6f6b4af70e3357ec0b7b0580c0d0f50
2017-06-07 12:33:19 +10:00
Sebastian Hengst
f3bf820bfd Backed out changeset 3d1ce85e6348 (bug 1088760) for bustage, at least on Android at layout/generic/nsPluginFrame.cpp:1612. r=backout 2017-06-13 00:30:03 +02:00
Alexis Beingessner
c75211cb95 Bug 1088760 - Remove nsRenderingContext, replacing all of its uses with gfxContext. r=jwatt,jrmuizel
MozReview-Commit-ID: K1WUIOnvazF
2017-06-12 17:32:48 -04:00
Matt Brubeck
78af557ec8 Bug 1365163 - Remove pref layout.css.display-flow-root.enabled. r=mats
MozReview-Commit-ID: AA3tKHCQ5E0

--HG--
extra : rebase_source : 9a7b16043e4aff09a4997138a9016e2f7f791f58
2017-06-05 15:59:22 -07:00
Kartikaya Gupta
10f514bb72 Bug 1369840 - Support content-side APZ test data in WebRenderLayerManager. r=botond
This mostly just copies the functional parts of the APZTestData code from
ClientLayerManager into WebRenderLayerManager, and propagates the paint sequence
number over to the compositor using the existing WebRenderScrollData machinery.

MozReview-Commit-ID: LHupFpqtWTX
2017-06-04 22:29:35 -04:00
Tobias Schneider
a55bd0e5fc Bug 1369870 - Float to int cast in nsLayoutUtils::TransformRect is losing precision. r=mstange 2017-06-02 13:36:13 -07:00
Ryan VanderMeulen
b2f44e5181 Merge inbound to m-c. a=merge 2017-05-31 20:25:52 -04:00