Commit Graph

432 Commits

Author SHA1 Message Date
Daniel Holbert
bc11da8aa7 Bug 1437623 part 1: (layout/generic) Add missing includes/namespaces to preemptively fix unified bustage. r=mats
MozReview-Commit-ID: GyFPLOsPWt3

--HG--
extra : rebase_source : 9612fb75ee8b3e38ea5528c572b5361d11438590
2018-02-13 09:08:41 -08:00
Alexis Beingessner
ee2b22f00a Bug 1429577 - properly feed in AA setting instead of a random pointer. r=jrmuizel
MozReview-Commit-ID: BVux2XcIbwo

--HG--
extra : rebase_source : d04a9953d5d140e4345327d2887866d6df1d0d05
2018-01-10 17:04:50 -05:00
Miko Mynttinen
2fc0722497 Bug 1425078 - Remove nsDisplayList::AppendNewToTop and nsDisplayList::AppendNewToBottom r=mattwoodrow
MozReview-Commit-ID: E3neKT2sV4Q

--HG--
extra : rebase_source : 98b65e4c82f8a965df211e828bc68d46e7a6716e
2017-12-13 11:23:04 -06:00
Samathy Barratt
d8ba79a56b Bug 1351447 - Rename imagelib's DrawResult to ImgDrawResult r+tnikkel r=tnikkel
Renamed to imgDrawResult

MozReview-Commit-ID: 5ESSgIhhU41

--HG--
rename : image/DrawResult.h => image/ImgDrawResult.h
extra : rebase_source : dbf645574aff7eefe65fa81809d6c07cb5800ec6
2017-12-11 15:37:59 +00:00
Ciure Andrei
b8d4330b53 Backed out changeset 8e33d0ce108c (bug 1351447) for failing /builds/worker/workspace/build/src/widget/cocoa/nsCocoaUtils on OS X r=backout a=backout on a CLOSED TREE
--HG--
rename : image/ImgDrawResult.h => image/DrawResult.h
2017-12-12 09:49:59 +02:00
Samathy Barratt
0749baf2d8 Bug 1351447 - Rename imagelib's DrawResult to ImgDrawResult r=tnikkel
Renamed to imgDrawResult

MozReview-Commit-ID: 5ESSgIhhU41

--HG--
rename : image/DrawResult.h => image/ImgDrawResult.h
extra : rebase_source : 4fba109b84ef456126d50e0d5e525f29f944a46d
2017-12-11 15:37:59 +00:00
Nicolas Silva
ecd94ed690 Bug 1418347 - Use WebRender directly for common bullet items. r=mstange 2017-11-24 14:46:13 +01:00
Andrew Osmond
fa9b3998fc Bug 1183378 - Part 2. Make WebRender command creation use scaled image containers. r=tnikkel 2017-11-23 06:55:06 -05:00
Mats Palmgren
25cd0c37f7 Bug 1400618 part 1 - Collect NAC / generated content and call DestroyAnonymousContent / UnbindFromTree on those after the frames are destroyed. r=bz
MozReview-Commit-ID: 2trDgeJPw25
2017-11-07 01:20:33 +01:00
Andrew Osmond
95ee2e55dc Bug 1404422 - Part 4. Remove imgIOnloadBlocker and related from tree as redundant. r=tnikkel 2017-11-01 06:59:10 -04:00
Daniel Holbert
680815cd6e Bug 1412346 part 5: (automated patch) Switch a bunch of C++ files in layout to use our standard mode lines. r=jfkthame
This patch was generated automatically by the "modeline.py" script, available
here: https://github.com/amccreight/moz-source-tools/blob/master/modeline.py

For every file that is modified in this patch, the changes are as follows:
 (1) The patch changes the file to use the exact C++ mode lines from the
     Mozilla coding style guide, available here:
https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Coding_Style#Mode_Line

 (2) The patch deletes any blank lines between the mode line & the MPL
     boilerplate comment.

 (3) If the file previously had the mode lines and MPL boilerplate in a
     single contiguous C++ comment, then the patch splits them into
     separate C++ comments, to match the boilerplate in the coding style.

MozReview-Commit-ID: EuRsDue63tK

--HG--
extra : rebase_source : 3356d4b80ff6213935192e87cdbc9103fec6084c
2017-10-27 10:33:53 -07:00
Matt Woodrow ext:(%2C%20Miko%20Mynttinen%20%3Cmikokm%40gmail.com%3E%2C%20Timothy%20Nikkel%20%3Ctnikkel%40gmail.com%3E)
17aef36fd6 Bug 1404181 - Part 7: Add a way to check if existing painted items might need to be redrawn for a sync decode. r=mstange
MozReview-Commit-ID: 98qxakaKolI

--HG--
extra : rebase_source : 079fe441ed82ef59b4300fc9d1a8ce5f0cf51b7b
2017-09-27 17:03:38 +13:00
Alexis Beingessner
3bcb85ca24 Bug 1407767 - reimplement text bullets to use TextDrawTarget. r=jrmuizel
This makes the implementation more robust and unifies all our text handling
under one implementation.

Also includes some refatoring of our CreateWebRenderCommands impl to divest
us from the layerful/stateful GetLayerState(). Future work should be done
here, but that's low priority for the moment.

MozReview-Commit-ID: Hypb02aDStm

--HG--
extra : rebase_source : 161a17a719b8dcd856378a2af96ac3fde66d3aa7
2017-10-17 16:05:29 -04:00
Sebastian Hengst
6f9c61193c Backed out changeset 2d3b2d4927ef (bug 1407767) for failing reftest layout/reftests/writing-mode/1111944-1-list-marker.html on Linux x64 QuantumRender. r=backout
--HG--
extra : amend_source : fe56b9b0e40c2cad048cfe9c96f0a1f3491bdbe6
2017-10-19 19:53:57 +02:00
Alexis Beingessner
963d7a80ad Bug 1407767 - reimplement text bullets to use TextDrawTarget. r=jrmuizel
This makes the implementation more robust and unifies all our text handling
under one implementation.

Also includes some refatoring of our CreateWebRenderCommands impl to divest
us from the layerful/stateful GetLayerState(). Future work should be done
here, but that's low priority for the moment.

MozReview-Commit-ID: Hypb02aDStm

--HG--
extra : rebase_source : 161a17a719b8dcd856378a2af96ac3fde66d3aa7
2017-10-17 16:05:29 -04:00
Ethan Lin
276f259817 Bug 1402490 - Fix video position for WR. r=kats
MozReview-Commit-ID: GkhcN5YOt5q

--HG--
extra : rebase_source : d57b793cdd588c5dfdb137e3d9edbc45435dad13
2017-10-18 13:56:53 +08:00
Kartikaya Gupta
d8ac050c91 Bug 1409856 - Update all the WebRender code to use LayoutDevice units instead of Layer units. r=jrmuizel
MozReview-Commit-ID: DP3hwlFWyZC
2017-10-18 22:25:11 -04:00
Alexis Beingessner
c0bfb121ad Bug 1405927 - Change PushGlyphs to take webrender formats. r=jrmuizel
Also cleans up a bunch of TextDrawTarget code as fallout.

This is a significant perf win for textFrames.

MozReview-Commit-ID: J1BDkXZdvnc

--HG--
extra : rebase_source : 5a0769a53cadb55a074cfe5d718e259401fa7028
2017-10-04 13:49:51 -04:00
Kartikaya Gupta
5bc0302cb0 Bug 1391816 - Follow-up to rename WebRenderCommandsBuilder to WebRenderCommandBuilder. r=jrmuizel
MozReview-Commit-ID: 3M0CTIheg5s

--HG--
rename : gfx/layers/wr/WebRenderCommandsBuilder.cpp => gfx/layers/wr/WebRenderCommandBuilder.cpp
rename : gfx/layers/wr/WebRenderCommandsBuilder.h => gfx/layers/wr/WebRenderCommandBuilder.h
extra : rebase_source : 713acc860b61f9be81934f2e03491aa6acc6a98e
2017-10-04 10:45:29 -04:00
Ethan Lin
0d6bfa48a2 Bug 1391816 - Move layers-free related functions and variables from WebRenderLayerManager to WebRenderCommandsBuilder. r=jrmuizel
We have too many layers-free things in WebRenderLayerManager. I create a new
class WebRenderCommandsBuilder and move some functions and variables from
WebRenderLayerManager to WebRenderCommandsBuilder.

MozReview-Commit-ID: BJi1E51W7ax

--HG--
extra : rebase_source : ddbfb044d467430403a3c480030ef9dec803c9f7
2017-09-25 15:48:29 +08:00
Kartikaya Gupta
2f1948343f Bug 1403915 - Remove the WebRender*Layer classes and functions that refer to them. r=jrmuizel
MozReview-Commit-ID: 2syFwMc7j3r

--HG--
extra : rebase_source : 9a3852506820eb09328d91007581d74786eba9b0
2017-10-03 16:31:08 -04:00
Kartikaya Gupta
dbe077b3f1 Bug 1403915 - Remove the IsLayersFreeTransaction() machinery and assume it's always true. r=jrmuizel
MozReview-Commit-ID: 7FYVirQ5pal

--HG--
extra : rebase_source : 4b33fba54776003b4f0d45b89be07916db1f2340
2017-10-03 16:31:07 -04:00
Morris Tseng
ce9b629335 Bug 1392200 - Add backface-visibility support for layers-free mode. r=kats
For layers-full mode, we set the backface-visibility to visible because
visibility would be handled by FLB and layers.

MozReview-Commit-ID: CUbeUabfC7K
2017-09-21 14:41:38 +08:00
Nicolas Silva
61546da339 Bug 1393031 - Remove unused nsTArray<WebRenderParentCommand>& parameter all over the place. r=jrmuizel 2017-09-20 13:36:53 +02:00
Nicolas Silva
9ffda11244 Bug 1393031 - Use IpcResourceUpdateQueue in more places. r=jrmuizel 2017-09-20 10:56:20 +02:00
Ting-Yu Lin
2e869d8f3d Bug 1341009 - Add nsReflowStatus::IsEmpty() assertions to all nsIFrame::Reflow() methods and some reflow helpers, and remove unneeded Reset(). r=dholbert
nsReflowStatus::IsEmpty() assertions are added after DISPLAY_REFLOW in the
beginning of the Reflow().

A few Reflow() implementations have Reset() calls at the end which are left
in place by this patch (with an explanatory comment added to each). These
ending Reset()s are only needed for cases where a non-splittable frame
passes its own nsReflowStatus to a child's reflow method. Just in case the
child leaves a "not fully complete" value in the nsReflowStatus, the
non-splittable parent frame must clear out the nsReflowStatus before
returning, so that its own parent doesn't then try to split it.

MozReview-Commit-ID: 6Jj3jfMAqj4

--HG--
extra : rebase_source : e1fe6a775ad97e16a6d7cc224634ff962ccb0fbf
2017-09-13 18:00:25 +08:00
Sebastian Hengst
005f4f5fc0 Backed out changeset 8291145f0920 (bug 1393031) 2017-09-14 23:18:05 +02:00
Sebastian Hengst
d27b05e04e Backed out changeset f34a52244cf9 (bug 1393031) 2017-09-14 23:17:35 +02:00
Nicolas Silva
2d3eb6cef7 Bug 1393031 - Remove unused nsTArray<WebRenderParentCommand>& parameter all over the place. r=jrmuizel 2017-09-14 20:21:54 +02:00
Nicolas Silva
58c3eac416 Bug 1393031 - Use IpcResourceUpdateQueue in more places. r=jrmuizel 2017-09-14 20:21:46 +02:00
Nicolas Silva
59e80c8f7e Bug 1393031 - Use shared memory to pass resource update data. r=jrmuizel 2017-09-14 18:48:55 +02:00
Miko Mynttinen
351756e478 Bug 1359584 - Part 3: Improve nsDisplayItem const correctness and fix surrounding whitespace r=mstange
MozReview-Commit-ID: 3GkWiu6C4Zo

--HG--
extra : rebase_source : 1423442cd723b8a052d183394dc5f5ef272a5272
2017-08-24 17:09:44 +02:00
Miko Mynttinen
ce08697502 Bug 1359584 - Part 1: Move mDisableSubpixelAA to nsDisplayItem r=mstange
MozReview-Commit-ID: 70169AFRmjq

--HG--
extra : rebase_source : 9c46e40700430e8286ab8e5b2f986e660c293101
2017-08-24 14:45:21 +02:00
Ethan Lin
87d42ae44a Bug 1393077 - Part1. Round the transformed rectangles and transformed points in StackingContextHelper. r=kats
MozReview-Commit-ID: Gk5z6BwsuTM

--HG--
extra : rebase_source : 36db102162518622f1da659ff83fb71fe4d9eccf
2017-08-31 17:59:41 +08: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
Alexis Beingessner
9c4535798f Bug 1357545 - handle text-shadows/decorations with webrender (layers-free) r=jrmuizel
This replaces our DrawTargetCapture hack with a similar but more powerful TextDrawTarget
hack. The old design had several limitations:

* It couldn't handle shadows
* It couldn't handle selections
* It couldn't handle font/color changes in a single text-run
* It couldn't handle decorations (underline, overline, line-through)

Mostly this was a consequence of the fact that it only modified the start and end
of the rendering algorithm, and therefore couldn't distinguish draw calls for different
parts of the text.

This new design is based on a similar principle as DrawTargetCapture, but also passes
down the TextDrawTarget in the drawing arguments, so that the drawing algorithm can
notify us of changes in phase (e.g. "now we're doing underlines"). This also lets us
directly pass data to TextDrawTarget when possible (as is done for shadows and selections).

In doing this, I also improved the logic copied from ContainsOnlyColoredGlyphs to handle
changes in font/color mid-text-run (which can happen because of font fallback).

The end result is:

* We handle all shadows natively
* We handle all selections natively
* We handle all decorations natively
* We handle font/color changes in a single text-run
    * Although we still hackily intercept draw calls
    * But we don't need to buffer commands, reducing total memcopies

In addition, this change integrates webrender's PushTextShadow and PushLine APIs,
which were designed for this use case. This is only done in the layerless path;
WebrenderTextLayer continues to be semantically limited, as we aren't actively
maintaining non-layers-free webrender anymore.

This also doesn't modify TextLayers, to minimize churn. In theory they can be
augmented to support the richer semantics that TextDrawTarget has, but there's
little motivation since the API is largely unused with this change.

MozReview-Commit-ID: 4IjTsSW335h

--HG--
extra : rebase_source : d69f69648ade5c7a8e6bb756f4b8ab9e2543e576
2017-06-19 10:58:28 -04: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
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
Mason Chang
cc5d07571f Bug 1381973 - Lazily create the reference DT in DrawTargetCapture. r=dvander 2017-07-26 15:43:00 -07:00
Andrew Osmond
02e515fc18 Bug 1359833 - Part 5. Callers pass the loading document to imgRequestProxy::SyncClone and GetStaticRequest. r=tnikkel 2017-07-19 14:15:11 -04:00
Ryan Hunt
522bc76415 Bug 1382128 part 8 - Remove Wr prefix from some type aliases. r=kats
MozReview-Commit-ID: 5h7QobhcYc1

--HG--
extra : rebase_source : 34d6636b6c3726ccc21b105f05227e27f84e63c9
2017-07-19 03:28:58 -04:00
Ryan Hunt
017d292cac Bug 1382128 part 2 - Remove WrPoint, WrSize, WrRect, WrMatrix, and WrColor. r=kats
MozReview-Commit-ID: 9koNScu4CyE

--HG--
extra : rebase_source : 68185e949ddf2ae346a5d597d056a7f2d9ea7a28
2017-07-18 18:32:46 -04:00
Ryan Hunt
3f3cb0a954 Bug 1382128 part 1 - Use a namespace in webrender_bindings. r=kats
MozReview-Commit-ID: 3JTMa9Ix5S7

--HG--
extra : rebase_source : 0bea14d9e395cab260d2db5135b1f64e9f82b2e2
2017-06-27 19:20:36 -04:00
Ethan Lin
a11b08a3ac Bug 1377571 - Add fallback path for layers-free. r=jrmuizel
MozReview-Commit-ID: KOM7JXYljX2

--HG--
extra : rebase_source : 94a8c314ac311a05256a27bd61648815b0e42734
2017-07-06 00:29:41 +08:00
Morris Tseng
b01c8dcc1a Bug 1376855 - Support nsDisplayBullet in layers free mode. r=kats
MozReview-Commit-ID: 8fCufpOLejH

--HG--
extra : rebase_source : a2a4024b8282336d60f7e9c416e93513860866d7
2017-06-28 13:39:34 -07:00
Ethan Lin
17960f3f3e Bug 1372118 - Part2. Use new interface of CreateWebRenderCommands for non-image display items. r=jrmuizel, r=kats
MozReview-Commit-ID: BcmRjQhDEyf
2017-06-30 17:23:20 -07:00
Kartikaya Gupta
34903d0ba6 Bug 1376215 - Stop exposing the WrClipRegionToken in WebRenderAPI.h APIs. r=jrmuizel
No functional changes intended in this patch. It merely simplifies the
additional patch that we'll need to update gecko past WR cset 0bf6655,
and saves some potential manual rebasing work.

MozReview-Commit-ID: Km8dBotP3NQ

--HG--
extra : rebase_source : 77c34ec1cbbc1c0fe4d1971feb131d30c97f0d66
2017-06-26 07:49:52 -04:00
Carsten "Tomcat" Book
c2622cfcd0 Backed out changeset 504e5b1de987 (bug 1376215) for bustage 2017-06-26 13:07:09 +02:00
Kartikaya Gupta
b459b56298 Bug 1376215 - Stop exposing the WrClipRegionToken in WebRenderAPI.h APIs. r=jrmuizel
No functional changes intended in this patch. It merely simplifies the
additional patch that we'll need to update gecko past WR cset 0bf6655,
and saves some potential manual rebasing work.

MozReview-Commit-ID: AgMyNapY2Og

--HG--
extra : rebase_source : d8522d8e806522a4a0e8b2cd1669db0374bd5e63
2017-06-25 14:45:54 -04:00