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

10417 Коммитов

Автор SHA1 Сообщение Дата
Milan Sreckovic d573665103 Bug 1163440: Behind a preference, off by default, use a mutex around present calls. This makes it easier to test with users that can reproduce some problems. r=bas
MozReview-Commit-ID: 9PTO3ntOFuR

--HG--
extra : rebase_source : 64bf80a9ef789433a7d788fca086bb77c95b1673
2017-07-27 16:02:01 -04:00
Carsten "Tomcat" Book 740c6ff791 Merge mozilla-central to autoland 2017-07-28 15:27:47 +02:00
Kartikaya Gupta 4c1a0de0df Bug 1383041 - Update bindings for IdNamespace changes in WR cset 6a2662c. r=kvark
MozReview-Commit-ID: 32dsMgqoOvf

--HG--
extra : rebase_source : 9e779e2d78ed9943d596a2b2f5c3f516e13b49a7
2017-07-28 08:18:30 -04:00
Kartikaya Gupta a1f87cfcac Bug 1385070 - Remove the WebRenderOMTAEnabled pref. r=ethlin
MozReview-Commit-ID: CWdrpzorNxq

--HG--
extra : rebase_source : c244c3d09579a9f5cb40ac8dd503217e7f96e4c5
2017-07-27 16:11:17 -04:00
Botond Ballo 1e610da876 Bug 1105109 - Add a ScrollByAndClamp() utility function to AsyncPanZoomController. r=kats
MozReview-Commit-ID: GPnuL0kmWsN

--HG--
extra : rebase_source : c5773713b1ca8b1b7b95fc476372f0286690e211
2017-06-19 18:06:03 -04:00
Botond Ballo 9da4eab494 Bug 1105109 - Introduce a FrameMetrics::ClampAndSetScrollOffset() helper. r=kats
MozReview-Commit-ID: 6LCPKrdGM6M

--HG--
extra : rebase_source : 65f51ce5c40d9f1ac64c1f94055aa87d44a72cae
2017-07-28 14:57:54 -04:00
Botond Ballo e3ca66d639 Bug 1105109 - Have APZCTreeManager keep track of the current mouse position. r=kats
MozReview-Commit-ID: 7o80O8rpdNS

--HG--
extra : rebase_source : c775d1d2f245878e10774e41b58d550eabb77d18
2017-06-19 18:04:50 -04:00
Botond Ballo 50e175b0bc Bug 1105109 - Fix unified compilation errors. r=kats
MozReview-Commit-ID: DB3JNwlE3Dw

--HG--
extra : rebase_source : 3d0a92cb9f7dd850d25d6d7b5fbe6eb3291e0d67
2017-07-28 20:17:19 -04:00
Bevis Tseng 95b18d794e Bug 1382172 - Name nsITimerCallback instances in native implementation. r=billm
--HG--
extra : rebase_source : 84de1abfcc30a6964144c2e6718a508c71027b65
2017-07-27 02:18:20 +08:00
Bevis Tseng a7505864a8 Bug 1378930 - Part 2: Remove the aName parameter from SchedulerGroup/DocGroup/DispatcherTrait. r=billm
--HG--
extra : rebase_source : 11319e568a51d16754a6a9990f76c35c86c2bda7
2017-07-26 16:13:35 +08:00
Bevis Tseng d935b29e72 Bug 1378930 - Part 1: Remove nsINamed::SetName(). r=billm
MozReview-Commit-ID: 7aM1yJRsfPH

--HG--
extra : rebase_source : f207a37be835ac4e6c431af56737cebacf5c566d
2017-07-21 11:50:43 +08:00
Nathan Froyd e1013bf46d Bug 1347963 - part 7 - make ImageContainer use RecursiveMutex; r=kats
Making ImageContainer slightly faster with RecursiveMutex is a good thing.
We need to fix up some cargo-culting of includes along the way, though.
2017-07-04 13:47:42 -04:00
Kartikaya Gupta ba4b3b9101 Bug 1384233 - Remove SizePrintfMacros.h. r=froydnj
We have a minimum requirement of VS 2015 for Windows builds, which supports
the z length modifier for format specifiers. So we don't need SizePrintfMacros.h
any more, and can just use %zu and friends directly everywhere.

MozReview-Commit-ID: 6s78RvPFMzv

--HG--
extra : rebase_source : 009ea39eb4dac1c927aa03e4f97d8ab673de8a0e
2017-07-26 16:03:57 -04:00
Kartikaya Gupta 1220276afe Bug 1384181 - Add utility dump functions for debugging. r=jrmuizel
MozReview-Commit-ID: 5YJLGhnMkwG

--HG--
extra : rebase_source : b705d1db828b14d5829ee88aa3b0cebfef0e0b6f
2017-07-26 14:47:49 -04:00
Kartikaya Gupta 5da102e5d4 Bug 1384181 - Build WebRenderLayerScrollData instances for remote layer trees. r=jrmuizel
This adds handling for nsDisplayRemote frames, so that we create a
WebRenderLayerScrollData item for each nsDisplayRemote frame that we
encounter. This is the equivalent of a "ref layer" in a normal layer
tree, and allows the APZ side to glue together the scroll data from
different processes into a full tree.

MozReview-Commit-ID: 3lgsqtCKQya

--HG--
extra : rebase_source : eb93be1ef415349e00c09d7274d49fcf7992d197
2017-07-26 14:47:48 -04:00
Kartikaya Gupta 7a6592bf98 Bug 1384181 - Ensure that the WebRenderScrollData has a single root layer node. r=jrmuizel
The semantics of the WebRenderScrollData structure is that the per-layer
structures form a tree with a single root node. When we build the data
structure from the display list, we are generating (for now) a flat
list. Therefore we need to synthesize a root node in order to make stuff
work as intended.

MozReview-Commit-ID: IDXyziBO7pk

--HG--
extra : rebase_source : 99486a4c5b5e9938c4b7bbaa3f710d25e73d4401
2017-07-26 14:47:48 -04:00
Kartikaya Gupta 1766bdd4ab Bug 1384181 - Reorganize the WebRenderScrollData code to work with layers-free transactions. r=jrmuizel
Until now WebRenderScrollData was only used with "layers" WR
transactions, but we want to use it with layers-free transactions as
well. As such, we need to allow collecting information from display items
instead of layers. This restructures the code a little bit to allow
that. This patch should not have any functional effect on the "layers"
codepath, but on the "layers-free" codepath it is now actually
populating some rudimentary data into the WebRenderScrollData before
sending it across. This will be fleshed out in future patches.

MozReview-Commit-ID: BROqpsHPRND

--HG--
extra : rebase_source : 8510c52895e6be5cb546b42b02d56ec067de0623
2017-07-26 14:47:48 -04:00
Botond Ballo 95d3464484 Bug 1383912 - Ensure we always get a composite for the latest async scroll offset. r=kats
This fixes a regression with apz.frame_delay.enabled=true introduced in
bug 1375949.

MozReview-Commit-ID: AIcGA7c2Co0

--HG--
extra : rebase_source : b118a97674cadef1359e7658539e4e0e9cb785b8
2017-07-24 17:51:15 -04:00
vincentliu 6509ea12d3 Bug 1374254 - Re-adding the aggressive TDR checks in D3D11 EndFrame(). r=dvander 2017-07-26 11:56:44 +08:00
Samael Wang 4652607d6a Bug 1382897 - Auto lock on sIndirectLayerTreesLock in DidComposite. r=mattwoodrow
MozReview-Commit-ID: DZLEjHMmDDt
2017-07-25 17:28:39 +08:00
David Anderson 33346c4c1b Bug 1382829 - Don't mix and match Y/Cb/Cr slots when binding video. r=bas
--HG--
extra : rebase_source : d1345e6ab4025ab266800ae47a2613a5055b8d81
2017-07-25 14:51:27 -04:00
Tom Ritter 3efa760176 Bug 1370007 Generate Shaders on a MinGW Cross Compile on Linux r=dvander,ted
Bug 1365859 introduced a dependency on the Visual Studio binary 'fxc'
to generate Shader bytecode. This was unavailable when compiling for
Windows on Linux as part of a MinGW build.

This commit adds a configure check for fxc, and also searches for
fxc2, which was written (https://github.com/tomrittervg/fxc2) to be
a tiny application that wraps D3DCompileFromFile and can produce
similar (but not exactly the same) output as fxc.

fxc2 is compiled using MinGW for Windows, and runs under wine, so
we need to check for wine also.

Finally, fxc outputs some include information fxc2 doesn't, so
we will just change that assert to not take effect.

MozReview-Commit-ID: 8LVxuODi6cV

--HG--
extra : rebase_source : 9116d266663284d6594e34aa53bd37eae01ba67f
2017-07-24 14:32:08 -05:00
Wes Kocher a1eadef812 Merge m-c to autoland, a=merge
MozReview-Commit-ID: B7oWq7qfpJ0
2017-07-24 18:13:05 -07:00
sotaro 02d4ae4add Bug 1382948 - Fix WebRenderBridgeParent::FlushTransactionIdsForEpoch() r=nical 2017-07-24 21:20:22 +09:00
JerryShih 2fb75025f6 Bug 1349991 - Skip the DidComposite() message for non-updated layer tree. r=dvander,nical,mattwoodrow
MozReview-Commit-ID: NhVBMe7Qha

--HG--
extra : rebase_source : f7fb8dc928b0b804e0e9a37334708999ee3db454
2017-07-24 13:07:35 +02:00
Nicolas Silva 24239ea4f0 Bug 13821850 - Return false in GLContext::Readback if MakeCurrent failed. r=jgilbert 2017-07-24 12:24:18 +02:00
sotaro 042b1fc3ec Bug 1382132 - Improving throttling GenerateFrame() r=nical 2017-07-24 09:22:20 +09:00
Sebastian Hengst 78b9ef353f merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: Lanp1XedkmZ
2017-07-23 11:27:03 +02:00
Kartikaya Gupta 565bb8ca40 Bug 1382215. r=botond 2017-07-22 14:52:49 -04:00
Wes Kocher d45eb771f0 Merge m-c to inbound, a=merge
MozReview-Commit-ID: Ah48RzFU8Mt
2017-07-21 18:20:46 -07:00
Wes Kocher 051dc17e6c Merge inbound to central, a=merge CLOSED TREE
MozReview-Commit-ID: GYc8r8gnS0j
2017-07-21 18:12:55 -07:00
Ryan VanderMeulen f4e3a91992 Merge m-c to inbound. a=merge 2017-07-21 09:40:28 -04:00
Sebastian Hengst 367f0ac5a2 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: IWRTFZdtzaE
2017-07-21 12:56:44 +02:00
Kevin Chen bf448ceacc Bug 1351349 - Blacklist Intel HD Graphics 510/520/530 for Windows 7 without platform update; r=dvander
MozReview-Commit-ID: F94OfZGBRQj

--HG--
extra : rebase_source : a6c471aaa6d280d6448975d5db3f285684df266d
2017-07-20 18:09:47 +08:00
Sylvestre Ledru 7c0ae251cd Bug 1381253 - Remove redundant control flow declarations rs=ehsan
MozReview-Commit-ID: FFxP4aMCbOL

--HG--
extra : amend_source : 3aec108430b11048f47ffe19d5da7ac5034770a9
2017-07-15 19:03:04 +02:00
peter chang 84df6e8c7e Bug 1363830 - use previous frame time when advancing animations, r=kats
MozReview-Commit-ID: CqKOguZXnF9

--HG--
extra : rebase_source : b1ba85d20978fe5e7853a07065df7e3626c4a482
2017-06-29 13:44:00 -07:00
Kartikaya Gupta 4b9801e41b Bug 1359808 - Don't do empty transactions for scroll updates if there are already pending transforms in the layer tree. r=mstange
The pending transforms must have been computed using the older scroll offset
values, which means that updating the scroll offsets without recomputing the
transforms will make them wrong. If we do an empty transaction for the scroll
offset updates, the transforms will not get computed. This patch catches this
scenario and schedules a full paint instead of the empty transaction instead.
The case where the scroll offset is modified *before* the transform is already
handled by code in nsIFrame::TryUpdateTransformOnly.

MozReview-Commit-ID: I5s5J7BS1ru

--HG--
extra : rebase_source : 63fec656440c8bee322f069a4466a311ebcd0f7d
2017-07-12 11:14:11 -04:00
Ethan Lin dd722c7c28 Bug 1382314 - Fix invalidation problem for layers-free mode. r=jrmuizel
MozReview-Commit-ID: 8z03n7zmvOz
2017-07-21 14:21:47 +08:00
Ethan Lin 7aa3422a0a Bug 1378602 - Part3. Add OMTA support for nsDisplayTransform and nsDisplayOpacity. r=kats
MozReview-Commit-ID: CP4WEZgy83a
2017-07-21 14:21:47 +08:00
Ethan Lin a48f3ac6fe Bug 1378602 - Part2. Move animation data from layer to AnimationInfo. r=kats
MozReview-Commit-ID: 4gv8EfPgsii
2017-07-21 14:21:47 +08:00
Stone Shih 04c2d24213 Bug 1309678: Logging touch and mouse events in helper_bug1285070.html for easier debugging. r=kats.
MozReview-Commit-ID: DJHifeaynOX
2017-07-18 15:41:26 +08:00
David Anderson d53eee5b25 Fix crash when ancestor masks have no overlapping area. (bug 1381479, r=bas) 2017-07-20 15:10:40 -07:00
Ryan Hunt 2cac42b189 Bug 1382521 - Don't dereference a null PresShell in FocusTarget. r=kats
MozReview-Commit-ID: 4Zg4XrCIYZD

--HG--
extra : rebase_source : ab7527509ac7c75f4d762554233a38d8bf43478c
extra : histedit_source : 7ebdcff0fc47ce9cfc43dff6b817944fbcf9b0fd
2017-07-19 23:34:59 -04:00
Andrew Osmond ccbd885da6 Bug 1382644 - Remove assert in CompositorManagerChild::Init for false positives. r=me
CompositorManagerChild::mCanSend is cleared in ActorDestroy but that
often comes in too late and after ContentChild::RecvReinitRendering
which reinitializes the singleton. For now, just remove the assert so
that we no longer trigger false positives in the content process after
the GPU process crashes.
2017-07-20 09:03:28 -04:00
Nicolas Silva 0628887ea0 Bug 1378113 - Avoid LayerManager reentrency issues when propagating composite notifications. r=dvander 2017-07-19 10:18:25 +02:00
Kartikaya Gupta c4a54bfe61 Bug 1382682 - Collect scroll metadata for scrollinfo layers as well. r=mstange
MozReview-Commit-ID: JdHExWIpet9

--HG--
extra : rebase_source : d435088cdbc8659e44daeef932f1713ba078b5dc
2017-07-21 08:34:11 -04:00
Kartikaya Gupta e5b6c40781 Bug 1382682 - Collect scroll metadata from the display list in layers-free webrender. r=mstange
MozReview-Commit-ID: 9uiwmjpJH3T

--HG--
extra : rebase_source : 5f6446a78b2f949dfdefcaddc78012efa6241f5b
2017-07-21 08:33:24 -04:00
Ryan VanderMeulen d229288071 Merge m-c to autoland. a=merge
CLOSED TREE

--HG--
extra : amend_source : 2ab51304cc7df444f22c3aac001a1aba61faee3a
2017-07-21 09:42:41 -04:00
Kartikaya Gupta d9edfa153c Bug 1382744 - Make sure we process nested display items for layers-free webrender mode. r=ethlin
MozReview-Commit-ID: mTox2irS1w

--HG--
extra : rebase_source : 97cb2163aaf4a9f6df62688724df2ee051f55880
2017-07-20 14:14:25 -04:00
Bevis Tseng 76fdf58819 Bug 1378476 - Label layers::DestroyTextureData. r=nical 2017-07-19 14:23:19 +08:00
sotaro 200cae20a8 Bug 1382091 - Delete ImageKeys with ClearCachedResources r=nical 2017-07-20 10:30:31 +09:00
Wes Kocher b5bcc4905e Merge inbound to central, a=merge CLOSED TREE
MozReview-Commit-ID: CBL7SUEUGKV
2017-07-19 17:29:56 -07:00
Ryan Hunt f116107a57 Bug 1379280 - Only do async keyboard scrolling for a selection, not a focused element. r=smaug
This commit changes async keyboard scrolling to be enabled only if the content to
scroll is from a selection. This works around the problem of detecting whether
an arbitrary element has key listeners that should prevent async key scrolling,
because when they have the focus we will have disabled async key scrolling.

MozReview-Commit-ID: 6HhSuGZNsMX

--HG--
extra : rebase_source : 98a6449dd1e913136ca66532a67df8e0bb717e52
2017-07-13 15:53:26 -05: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 f082c1791e Bug 1382128 part 4 - Remove WrGlyphInstance. r=kats
MozReview-Commit-ID: 2CpW51FKUoK

--HG--
extra : rebase_source : d24e596dbd1a114d660e0b0ec1657f3efc11965d
2017-07-18 18:53:09 -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
Kartikaya Gupta 78a69a5578 Bug 1382200 - Eliminate LayerMetricsWrapper::IsScrollInfoLayer entirely by inlining it. r=botond
MozReview-Commit-ID: KX35cjOAQw7

--HG--
extra : rebase_source : 2e451ce0250ec17fc7f1a642e5a8a341c073105d
2017-07-19 09:24:28 -04:00
Kartikaya Gupta 4dfe8eadc0 Bug 1382200 - Change implementation of the LayerMetricsWrapper IsScrollInfoLayer to use the metrics flag. r=botond
This also updates the WebRenderScrollDataWrapper function as it is meant
to be semantically equivalent to the LayerMetricsWrapper one, which
allows removal of a flag propagation.

MozReview-Commit-ID: 9DBx4qbhq5A

--HG--
extra : rebase_source : 3201d8a4bb7192ecdbe95983b605ac53b1a28c50
2017-07-19 09:24:24 -04:00
Kartikaya Gupta 1147b9727c Bug 1382200 - Rename Layer::IsScrollInfoLayer to better capture what the call sites care about. r=botond
MozReview-Commit-ID: 1vMBMo5zOhK

--HG--
extra : rebase_source : c7f7e94c87c177cc244885912a916133a7cbfbd3
2017-07-19 09:24:22 -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
Kevin Chen 91dc0db35c Bug 1364563 - Add a path for content process only device reset. r=dvander 2017-07-18 23:09:00 -04:00
Ehsan Akhgari 6bc10c105a Backout changeset bc5d9e5f1c02 (bug 1364563) because of build failures
This reverts commit a5224fd3910ee5116669728fcd5b154e051371fd.
2017-07-19 00:27:36 -04:00
Kevin Chen 563c00da4d Bug 1364563 - Add a path for content process only device reset. r=dvander 2017-07-17 00:13:00 -04:00
sotaro 7ceccd46b7 Bug 1378697 - Release resources in WebRenderXXXLayer::ClearCachedResources() r=nical 2017-07-18 22:37:36 +09:00
Andrew Osmond 094c212d54 Bug 1350408 - Gracefully handle failures in WebRenderLayerManager::Initialize to allow reinit. r=kats 2017-07-18 09:35:07 -04:00
Ryan Hunt 11bda66c5d Bug 1383714 - Update to cbindgen 0.1.19. r=kats
MozReview-Commit-ID: FdtZ9Pw0Z2A

--HG--
extra : rebase_source : 1cabc3fcc16ccf20a8d111389ccbbf518c42f32e
2017-07-21 12:39:25 -04:00
Stone Shih 5c6d99d228 Bug 1351148 Part3: Synthesize native input events with priority. f=kats,smaug. r=smaug.
The test helper_touch_action_regions.html uses nsDOMWindowUtils to synthesize native input events and creates some runnables to trigger the test. It expects the runnables which synthesize native input events are processed first, then the runnables to continue the test, and finally the input events are forwarded from chrome process to content process. Enabling event prioritization may change the execution order.
Wraps those runnables to synthesize native input events as priority=input and dispatches those runnables to continue the test with priority=input to make sure the execution order is as expected.

MozReview-Commit-ID: 8hkaB1FRW9T
2017-05-19 15:41:24 +08:00
Kris Maglione 86877fceef Bug 1381097: Part 1 - Add default-false pref to enable APZ in remote popups. r=kats
Ideally, we definitely want APZ in remote popup browsers for the sake of
responsiveness. However, there are currently some serious painting and
checkerboarding issues that make APZ popups unsuitable for release
populations.

Once these issues are addressed, we should enable the preference by default.
But given the relative lack of testing, and the issues we've seen so far, we
should keep the preference so that we can disable it with a hotfix if further
issues arise.

MozReview-Commit-ID: GOZRdsmLNZR

--HG--
extra : rebase_source : ce0f2ca029d951a9c65ec1482e065b6695793133
2017-07-15 12:01:36 -07:00
Sebastian Hengst 0c7a679780 Backed out changeset e4dc716c401c (bug 1377595) on suspicion of causing reftest failures on Android "(waiting for MozAfterPaint)". r=backout 2017-07-17 17:48:13 +02:00
Nicolas Silva f6e8232b40 Bug 1377595 - Track the valid region in WebRenderPaintedLayer. r=jrmuizel 2017-07-17 13:49:11 +02:00
Nicolas Silva c81891b82b Bug 1377595 - Avoid using blob images for items that must be painted on the content side. r=jnicol
This patch allows us to decide whether to use blob images depending on a MustPaintOnContentSide flag exposed by each display item. If any of the display item assigned to a given painted layer data have this flag, then the painted layer data is marked as preferring content side painting and the webrender layer manager uses this information to decide whether to create a regular content layer or serialize the drawing commands with blob image. This is useful for items that must be painted on the content side such as scroll bars, checkboxes, buttons, etc. Using blob images for these makes us first paint the widget on the content side, then serialize the painted pixels and blit the content again in the blob image which has a lot more overhead than painting the content into a layer and sharing it with webrender directly.
2017-07-17 13:49:07 +02:00
vincentliu 2bf7875f86 Bug 1367689 - Add a preference to make Wrench work with Gecko. r=jrmuize, jerry 2017-07-17 13:38:22 +08:00
Andrew Osmond 7d1a4b1e31 Bug 1377869 - Ensure that CompositorManagerChild will be reinitialized if the GPU process reuses its PID. r=dvander 2017-07-15 09:13:18 -04:00
Andrew Osmond b306aa3fb2 Bug 1380716 - Reinitialize ImageContainer::mImageClient if its parent ImageBridgeChild was also reinitialized. r=sotaro 2017-07-15 07:52:02 -04:00
Wes Kocher 6d62b1970e Merge m-c to inbound, a=merge
MozReview-Commit-ID: 4kiY84LofOi
2017-07-14 17:19:10 -07:00
Wes Kocher e9fa5c772a Merge inbound to central, a=merge
MozReview-Commit-ID: 8nlqm5dHCUQ
2017-07-14 17:14:43 -07:00
David Anderson 28b0c7d639 Fix mask coordinates when rendered into intermediate surfaces with Advanced Layers. (bug 1380744, r=mattwoodrow) 2017-07-14 11:47:54 -07:00
Mason Chang 0f5cb4866e Bug 1380483 - Properly set AA, transform and use rotated buffers with OMTP capturing. r=dvander 2017-07-14 08:01:45 -07:00
Ryan Hunt 8da6a723fb Bug 1381125 - Add whether a focus target has key listeners to the APZ keyboard logs. r=kats
MozReview-Commit-ID: 7S3VAowF2p3

--HG--
extra : rebase_source : 3e5ffeb1ce2329b3bbd68ac4612a4ded4dd49730
2017-07-13 10:56:17 -05:00
Ryan Hunt 0a77e754e4 Bug 1379826 - Use static_cast instead of a C style cast in APZ keyboard logs. r=botond
MozReview-Commit-ID: 4ca18ZxQwuL

--HG--
extra : rebase_source : 73b6103697486d9d6b55a5e156abe55b8411ec46
2017-07-10 18:39:04 -04:00
Milan Sreckovic cc13392457 Bug 1380655: Look for the timeout and terminate GPU process only when we have a separate GPU process, not also when the browser is acting as one. r=dvander
MozReview-Commit-ID: Fp4Dv5SArjX

--HG--
extra : rebase_source : ced0c45cc7a64e619f15c69bfb68b5d850d287fc
2017-07-14 12:18:52 -04:00
Carsten "Tomcat" Book e3195ceb5a Merge mozilla-central to inbound 2017-07-13 16:38:32 +02:00
Carsten "Tomcat" Book 260b5f956f merge mozilla-inbound to mozilla-central a=merge 2017-07-13 16:35:22 +02:00
Nicolas Silva 8d659cbd93 Bug 1378771 - Reduce the minimum painted layer width down to 8 pixels. r=jrmuizel 2017-07-13 13:59:29 +02:00
Kartikaya Gupta 6d0c0db395 Bug 1378966 - Don't cause immediate throttling of the refresh driver on repeat transactions. r=mattwoodrow
MozReview-Commit-ID: 8orAmdpIRTF

--HG--
extra : rebase_source : 2988a9faced2648cd182ebe8adff791634af519f
2017-07-12 09:10:25 -04:00
David Anderson 416337ceb9 Fix Advanced Layers not forcing a clear for the window theme. (bug 1378095 part 2, r=mattwoodrow) 2017-07-13 01:12:05 -07:00
David Anderson ddfbc3d0ae Add a helper for automating ClearView and clear-shader operations. (bug 1378095 part 1, r=mattwoodrow) 2017-07-13 01:11:58 -07:00
Carsten "Tomcat" Book bf8ecdbf1a Merge mozilla-central to autoland 2017-07-12 11:18:59 +02:00
Carsten "Tomcat" Book 0edfa97e38 merge mozilla-inbound to mozilla-central a=merge 2017-07-12 11:07:09 +02:00
David Anderson 6e75188a07 Cache MLGBuffers for systems that don't support constant buffer offsetting. (bug 1379714 part 2, r=bas) 2017-07-11 21:18:45 -07:00
David Anderson 4877a071cd Remove Advanced Layers' buffer cache in preparation for a new one. (bug 1379714 part 1, r=bas) 2017-07-11 21:17:30 -07: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
Mason Chang 9bde55e1f0 Bug 1379322 Don't clear rect when init DrawTargetCapture with OMTP. r=jrmuizel 2017-07-07 18:08:12 -07:00
Carsten "Tomcat" Book 31311070d9 merge mozilla-inbound to mozilla-central a=merge 2017-07-11 12:51:59 +02:00
David Anderson 399881cdfc Report when constant buffer offsetting doesn't work. (bug 1379413 part 2, r=bas)
--HG--
extra : rebase_source : 881471eca6ae17e4b9810bc34b609d58c6eb0b3d
2017-07-11 00:13:26 -07:00
David Anderson ad257fcdb1 Use a runtime test for constant buffer offsetting. (bug 1379413 part 1, r=bas)
--HG--
extra : rebase_source : 9ceae88aac296f8429b9fc83d48aa0b6de325056
2017-07-11 00:13:21 -07:00
David Anderson 88d86847fe Don't use constant buffers for ancillary vertex data. (bug 1379314 part 3, r=mattwoodrow) 2017-07-11 00:05:30 -07:00
David Anderson 912a83e3b7 Refactor how vertices are added to unit-triangle shaders. (bug 1379314 part 2, r=mattwoodrow) 2017-07-11 00:04:50 -07:00
David Anderson 16a351a5e5 Use unit triangles for full polgyon shaders. (bug 1379314 part 1, r=mattwoodrow)
Previously, we submitted polygons as a list of triangles, duplicating
some ancillary data with each vertex. As we move away from constant
buffers for some of this ancillary data, it will bloat the size of each
vertex. To avoid this, we will now instance over a unit triangle
instead. Each instance contains three triangle coordinates and ancillary
data can be shared between them. The target vertex is computed similarly
to how we handle rects in the unit quad shaders.
2017-07-11 00:04:14 -07:00
Kartikaya Gupta 1fd7214235 Bug 1378355 - Remove unused function. r=bas
MozReview-Commit-ID: H051LFrFMgD

--HG--
extra : rebase_source : 2dca4cfb41a94de9e8fce847b985c9193eadc094
2017-07-10 10:15:23 -04:00
David Anderson 1b64928d17 Don't draw diagnostic overlays during drawWindow. (bug 1379828, r=mattwoodrow) 2017-07-10 19:09:34 -07:00
Wes Kocher 868f84f2d8 Merge m-c to inbound, a=merge 2017-07-10 18:48:52 -07:00
Kartikaya Gupta 7fe2c84b1e Bug 1374730 - Update for clip API change in WR cset 0bf6655. r=mrobinson
MozReview-Commit-ID: dEe7yDDZPk

--HG--
extra : rebase_source : 09a1f858a347bdc95baa8015db9fa156b119334a
2017-07-10 07:22:39 -04:00
sotaro e79d584602 Bug 1379033 - Remove CompositorBridgeParentBase::GetAnimationStorage() r=kats
The patch removes CompositorBridgeParentBase::GetAnimationStorage and CrossProcessCompositorBridgeParent::GetAnimationStorage, and remove the "aId" parameter to CompositorBridgeParent::GetAnimationStorage, since it's only ever called with "0" as the argument.
2017-07-10 10:03:12 +09:00
sotaro 02fd7d664d Bug 1379055 - Remove unused member of WebRenderPaintedLayerBlob r=jrmuizel 2017-07-10 09:21:22 +09:00
Kartikaya Gupta 540da41b2f Bug 1379394 - Add a pref to allow disabling the one-handed-zoom gesture in APZ. r=botond
MozReview-Commit-ID: LUB83oLyVkm

--HG--
extra : rebase_source : 4fd4b1c4a2069f4dcf8084be33aac1f64e7bd636
2017-07-08 23:04:33 -04:00
Botond Ballo dda8aeab18 Bug 1375949 - Fix helper_touch_action_regions.html. r=kats
The test was assuming that processing an input event that causes async
scrolling will result in the async scroll being reflected on the next
composite. With the changes in this bug, that is no longer a valid assumption.

MozReview-Commit-ID: HAB3xnmF3vo

--HG--
extra : rebase_source : 86eca7c9f030a2bf4be87d8aa632a97584722191
2017-06-28 17:45:40 -04:00
Botond Ballo 179d5b6afb Bug 1375949 - Fix an incorrect comment in helper_touch_action_regions.html. r=kats
MozReview-Commit-ID: 5UslMnD1SRG

--HG--
extra : rebase_source : bb6c94f0792ac29232443ad07512fcc2099693f2
2017-06-27 14:50:30 -04:00
Botond Ballo a01f110229 Bug 1375949 - Delay application of async scroll offset by one composite, to give content a chance to remain in sync. r=kats
With this in place, scroll-linked effects will remain in sync with async
scrolling if they can be processed and painted within the frame budget.

This change is currently behind a pref that's off by default.

MozReview-Commit-ID: 6GEJTKZh6ON

--HG--
extra : rebase_source : 534bf15ef1c5ca26e1dc0d7eb298063b80aa9dd3
2017-07-05 19:17:14 -04:00
Botond Ballo 8e4f219cfd Bug 1375949 - Repurpose AsyncPanZoomController::AsyncMode into a more general AsyncTransformConsumer enum. r=kats
The AsyncTransformConsumer enumeration captures the distinction between
the two main categories of consumers of async transforms: those using
it for hit-testing and related purposes, and those using it for
compositing.

MozReview-Commit-ID: 59CICcnPvY6

--HG--
extra : rebase_source : ba505e6b2b6f42592660074939a6d24aab7f73ff
2017-06-30 14:31:28 -04:00
sotaro f76bc78842 Bug 1377687 - Clear cached resources in WebRenderBridgeParent::RecvClearCachedResources() r=nical 2017-07-11 09:13:15 +09:00
Kartikaya Gupta b95ebf372e Bug 1379252 - Remove unused argument. r=rbarker
MozReview-Commit-ID: 7G8i0G9LyvZ

--HG--
extra : rebase_source : 229e4ef955e50b5a473c24522e3e499fdf658519
2017-07-07 14:56:10 -04:00
Carsten "Tomcat" Book fe3f254925 Backed out changeset 018e683b25cd (bug 1370007) for breaking tier 2 nightly builds on windows 2017-07-07 15:23:54 +02:00
Carsten "Tomcat" Book b5c809a8bc merge mozilla-inbound to mozilla-central a=merge 2017-07-07 10:35:44 +02:00
Wes Kocher 19d135c982 Merge m-c to autoland, a=merge
MozReview-Commit-ID: 4R4GFHPiij
2017-07-06 16:19:38 -07:00
David Anderson 208baf0a94 Backed out changeset 8eb05f9fc699 for breaking Mac URL bars. (bug 1366618) 2017-07-06 12:13:46 -07:00
Carsten "Tomcat" Book 3f89ce0b43 Merge mozilla-central to mozilla-inbound 2017-07-06 11:21:11 +02:00
Carsten "Tomcat" Book 7857fa0a5e merge mozilla-inbound to mozilla-central a=merge 2017-07-06 11:18:05 +02:00
sotaro 5d1a3c3c3f Bug 1378297 - Add DXGITextureHostD3D11::GetAsSurface() support for webrender wrench r=mattwoodrow 2017-07-06 16:33:19 +09:00
Tom Ritter b1341f974a Bug 1370007 Generate Shaders on a MinGW Cross Compile on Linux r=dvander,ted
Bug 1365859 introduced a dependency on the Visual Studio binary 'fxc'
to generate Shader bytecode. This was unavailable when compiling for
Windows on Linux as part of a MinGW build.

This commit adds a configure check for fxc, and also searches for
fxc2, which was written (https://github.com/tomrittervg/fxc2) to be
a tiny application that wraps D3DCompileFromFile and can produce
similar (but not exactly the same) output as fxc.

fxc2 is compiled using MinGW for Windows, and runs under wine, so
we need to check for wine also.

Finally, fxc outputs some include information fxc2 doesn't, so
we will just change that assert to not take effect.

MozReview-Commit-ID: 8LVxuODi6cV

--HG--
extra : rebase_source : 39acca112f4cd9e6c39f7e47e7c55b13e7606824
2017-07-06 15:35:49 -05:00
Botond Ballo 8b7ba8ac1c Bug 1377020 - Use MOZ_DEFINE_ENUM instead of a sentinel enumerator for enumerations in gfx/layers. r=kats
MozReview-Commit-ID: IUQDb0VIAwQ

--HG--
extra : rebase_source : 50d05ab09a5fb03d16c044edd38f0f3e0dba7ada
2017-06-30 21:18:55 -04:00
Kartikaya Gupta 5a69e4f899 Bug 1378247 - Properly handle async scrollbar-dragging of RTL scrollframes. r=botond
For RTL scrollframes the scrollable rect can extend into the negative-x coordinate
space as the user can scroll leftwards from the "zero" position. The code was
assuming a zero minimum scroll position in a couple of places which broke down
on RTL scrollframes.

MozReview-Commit-ID: 5FxELpafWSD

--HG--
extra : rebase_source : a3c7614528cf59a5c60f350fca84161c8586509f
2017-07-05 15:19:09 -04: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 b72c4833d5 merge mozilla-inbound to mozilla-central a=merge 2017-07-05 13:01:22 +02:00
Morris Tseng 03f68881d2 Bug 1376855 - Removed unused variables and interfaces. r=kats
MozReview-Commit-ID: 5rPI7jNI94K

--HG--
extra : rebase_source : 20ffeb6e064de9ccf19729aa6045ffa595c51429
2017-06-28 13:42:24 -07: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
Morris Tseng 77424afaa9 Bug 1376855 - Introduce WebRenderUserData and WebRenderImageData. r=kats
Layers are retained between transaction and we store some data in the layers.
Thus, if we no longer use layers, we need find another storage to place
those data. I use frame's property to retain WebRenderUserData between
transaction.

MozReview-Commit-ID: Ku5VGBXa3w6

--HG--
extra : rebase_source : 636653f78d1d6c310726a1a2c944141dc691decc
2017-06-28 15:03:27 -07:00
Nicholas Nethercote 26f8199a36 Bug 1375776 (part 5) - Pass in a TimeStamp to LayerTranslationMarkerPayload(). r=mstange.
This makes it more like all the other payload classes.

--HG--
extra : rebase_source : dd30741f487158ace8f9c0427a5c4b00f051ff7b
2017-06-23 16:24:21 +10:00
Nicholas Nethercote 5d446671a8 Bug 1375776 (part 4) - Allow ProfilerMarkerPayload.h to be #included unconditionally. r=mstange.
This requires:

- Moving the constructors of ProfilerMarkerPayload and its subclasses into the
  .h file so they are visible even when ProfilerMarkerPayload.cpp isn't
  compiled.

- Similarly, using a macro to make StreamPayload() a crashing no-op when the
  profiler isn't enabled. (It is never called in that case.)

--HG--
extra : rebase_source : 7aad2fdb1bd4e49782024dba6664e8f992771520
2017-06-23 16:24:15 +10: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
Ehsan Akhgari 74f1a0ceb8 Bug 1378045 - Make ScrollableLayerGuid::Hash() return PLDHashNumber; r=botond 2017-07-04 11:08:29 -04:00
Wes Kocher f8eb8f400a Backed out 2 changesets (bug 1377060) for build bustage a=backout
Backed out changeset c8f818803df7 (bug 1377060)
Backed out changeset bf11ec80b0fb (bug 1377060)

MozReview-Commit-ID: Hp1PtpWYOWV
2017-07-03 11:44:58 -07:00
David Anderson c307f7ba43 Implement asynchronous OMTP behind a pref. (bug 1377060 part 2, r=mchang) 2017-07-03 11:20:40 -07:00
David Anderson 52b2572051 Refactor PaintThread for async painting. (bug 1377060 part 1, r=mchang) 2017-07-03 11:20:33 -07:00
Phil Ringnalda 915412e692 Merge m-i to m-c, a=merge
MozReview-Commit-ID: HINQtggBLDr
2017-07-01 17:36:09 -07:00
Ethan Lin 82a7c2b5e4 Bug 1372118 - Part3. Implement CreateWebRenderCommands for text, transform and background color. r=jrmuizel, r=kats
MozReview-Commit-ID: JRoSjygSFHc
2017-06-30 17:23:20 -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
Ethan Lin de600bafd7 Bug 1372118 - Part1. Have a path to create WebRender commands without layers. r=jrmuizel, r=kats, r=mattwoodrow
MozReview-Commit-ID: 7iOW9rEtwur
2017-06-30 17:23:20 -07:00
David Anderson 0360dc3a99 Fix OpenGL texture coordinate flipping in Advanced Layers. (bug 1377303, r=mattwoodrow) 2017-06-30 11:45:02 -07:00
Ryan Hunt ef12355496 Bug 1376912 - Add logging for APZ keyboard scrolling. r=kats
MozReview-Commit-ID: Gp14vangDaS

--HG--
extra : rebase_source : 5742f67a5330e1b27382613b5e875087fc9d90d2
2017-06-29 14:41:51 -04:00
vincentliu 7d576c4c02 Bug 1373937 - Add gfxCriticalNote() to get error information. r=dvander 2017-06-30 09:42:48 -07:00
Carsten "Tomcat" Book daa67cc9e3 merge mozilla-inbound to mozilla-central a=merge 2017-06-30 12:59:45 +02:00
sotaro 5145e40a3c Bug 1335335 - Manually call DidComposite() when transaction was dropped because of obsoleted command r=nical
The patch fixes a problem on windows. Before the patch, there was a case that moved tab was not re-rendered. When WebRenderBridgeParent reveived obsolted transaction, DidComposite() was not returned to a client side. It stopped nsRefreshDriver to trigger a next transaction.
2017-06-29 18:06:31 -07:00
sotaro 2292edf20c Bug 1335335 - Tab move between different windows does not work when e10s is enabled r=nical
When the tab move happens, related non-root WebRenderBridgeParent is updated as to render to different webrender instance. webrender does not support of sharing resources and keys yet. Then when the tab move happens, the patch just removes all keys and resources that belongs to previous webrender. Ideally all resources that belong to WebRenderBridgeParent should be reallocated in an update webrender. But the patch does not do it, instead it just request WebRenderBridgeChild to re-allocate all resources again for simplicity. Performance improvement will happen in a future patch.

This patch support only tab move that uses only raw data external images. Support of native texture external images will happen in a future patch.
2017-06-29 18:06:11 -07:00
sotaro cb7938acc1 Bug 1376875 - Call Destroy() from LayerTransactionParent::ActorDestroy() r=nical 2017-06-29 16:24:55 -07:00
Ryan Hunt ba66247ed7 Bug 1376526 - Perform scroll snapping with async keyboard scrolling. r=kats
MozReview-Commit-ID: 5AFRpQaw6jL

--HG--
extra : rebase_source : 5f5df5f3a4acfd7164644aeec3595355aa0e8b99
2017-06-29 14:37:54 -04:00
Randall Barker df2adf9cee Bug 1377224 - Ensure the real toolbar is visible when the page is too small to scroll r=kats
MozReview-Commit-ID: 1rTZUoQEi0P
2017-06-29 14:43:25 -07:00
Sebastian Hengst e85b6178ce Backed out changeset ac18f9244933 (bug 1335335) for build bustage: version control conflict in maker file at WebRenderBridgeParent.h:235. r=backout on a CLOSED TREE 2017-06-29 22:02:16 +02:00
Sebastian Hengst 86c1297e01 Backed out changeset c5dbfdc1892e (bug 1335335) 2017-06-29 22:01:19 +02:00
sotaro 6cec97d16c Bug 1335335 - Manually call DidComposite() when transaction was dropped because of obsoleted command r=nical
The patch fixes a problem on windows. Before the patch, there was a case that moved tab was not re-rendered. When WebRenderBridgeParent reveived obsolted transaction, DidComposite() was not returned to a client side. It stopped nsRefreshDriver to trigger a next transaction.
2017-06-29 12:45:29 -07:00
sotaro 23d69372f5 Bug 1335335 - Tab move between different windows does not work when e10s is enabled r=nical
When the tab move happens, related non-root WebRenderBridgeParent is updated as to render to different webrender instance. webrender does not support of sharing resources and keys yet. Then when the tab move happens, the patch just removes all keys and resources that belongs to previous webrender. Ideally all resources that belong to WebRenderBridgeParent should be reallocated in an update webrender. But the patch does not do it, instead it just request WebRenderBridgeChild to re-allocate all resources again for simplicity. Performance improvement will happen in a future patch.

This patch support only tab move that uses only raw data external images. Support of native texture external images will happen in a future patch.
2017-06-29 12:44:53 -07:00
sotaro 1deee6448b Bug 1377024 - Add support of device reset test from about:support r=kats,dvander 2017-06-29 11:46:36 -07:00
Ryan Hunt 341325dac4 Bug 1376549 - Prevent APZ handling of keyboard shortcuts hardcoded in ESM. r=kats
MozReview-Commit-ID: 1IolnCXGPjQ

--HG--
extra : rebase_source : 748ed1700383f255d4c32f82d7e5f1455ede8d50
2017-06-28 16:06:47 -04:00
Carsten "Tomcat" Book 5f00ae3a8b merge mozilla-inbound to mozilla-central a=merge 2017-06-29 15:47:04 +02:00
Ryan Hunt a95f4245e9 Bug 1376997 - Use the correct focus target in WebRenderBridgeParent::UpdateAPZ. r=kats
MozReview-Commit-ID: AXt28gZ3jdi

--HG--
extra : rebase_source : 0358529f0194df93ffa5602956fe2e1617cf80d0
extra : histedit_source : da561f94b8b5ba7b5d9bdc742d011ddd9258f983
2017-06-28 20:00:48 -04:00
Ryan Hunt 83d3e638ed Bug 1376879 - Check if we have a retargeted PresShell in FocusTarget. r=kats
MozReview-Commit-ID: L2v2U0MXecv

--HG--
extra : rebase_source : 271fb2d8c31b511981d4ace880b56df7a9b79455
extra : histedit_source : 37be2c45de26bf84124615900638f6803e11c553
2017-06-28 14:03:34 -04:00
Alastor Wu 67c4ba2c09 Bug 1373177 - part4 : add assertion to make sure the function call order. r=jolin
The Init()/Shutdown() would be run on the main thread, AcquireTexture() would be
on media thread and Fill() would be on compostitor thread.

Add assertion to make sure the call order, since we don't want to call Fill()
or AcquireTexture() after shutdown.

MozReview-Commit-ID: 3Gydr7b4Raq

--HG--
extra : rebase_source : a81f7a58c94b2fc75bba500a6a2d087e05b520cd
2017-06-30 11:14:00 -07:00
Alastor Wu 811f4cea38 Bug 1373177 - part2 : add log. r=jolin
Add lazy log for debugging.

MozReview-Commit-ID: 4VYjLDobFeW

--HG--
extra : rebase_source : f8e52333b0cd0bf7619b1611eb033f69744d0684
2017-06-30 11:12:52 -07:00
Alastor Wu eaf35bf952 Bug 1373177 - part1 : automatically refill the pool if the textures number is lower than specific threshold. r=bechen,jolin,snorp
The pool would be refilled when the compositor starts rendering the frame.
However, if we consume lots of textures but doesn't render any frame, then the
pool would always empty and no one can get new texture id.

One case is that when we release decoders too early before rendering the first
frame, the pool won't be refilled, and it causes all media threads are blocked.

Now we would refill the pool if the textures number is lower than the specific
threshold.

MozReview-Commit-ID: CYBLYi9hFD9

--HG--
extra : rebase_source : 309338a4cf2283ed93afcc4af2cc1cf5e925661d
2017-06-30 11:12:49 -07:00
Kartikaya Gupta 7332c6da98 Bug 1376782 - Replace gfxSize with a typedef to SizeDouble. r=jrmuizel
Most of the changes in this patch are just using the explicit
constructor from gfx::IntSize to gfx::Size, since gfxSize did
that implicitly but gfx::Size doesn't.

MozReview-Commit-ID: CzikGjHEXje

--HG--
extra : rebase_source : 9d19977f2a774d9a2a653db923553a6c2e06f82a
2017-06-28 11:41:21 -04:00
Andrew McCreight 1533adf4c3 Bug 1380124 - Fix 'desctruction' typos. r=njn
MozReview-Commit-ID: 8gNYd7NL58U

--HG--
extra : rebase_source : bc0c85d96a499e8de102d1409685e6b2f7605ffe
2017-07-11 13:04:26 -07:00
Carsten "Tomcat" Book 257a632d4b Merge mozilla-central to autoland on a CLOSED TREE 2017-06-28 16:33:00 +02:00
Carsten "Tomcat" Book 0a8e2e111d Backed out changeset c3ac91f3aeb9 (bug 1343728) 2017-06-28 15:52:09 +02:00
Carsten "Tomcat" Book 45f2e51f0a Merge mozilla-central to autoland 2017-06-28 13:47:29 +02:00
Mats Palmgren 557b895016 Bug 1376460 - Use Lookup instead of Get+Remove to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: CE7r2ESeAia
2017-06-28 01:03:16 +02:00
Mats Palmgren c49a96b7fd Bug 1376297 part 2 - Switch to nsRefPtrHashtable since it's more appropriate for holding RefPtr values. r=froydnj
MozReview-Commit-ID: 5hxCuDpITcC
2017-06-28 01:03:16 +02:00
Mats Palmgren 1bbdb5f4c6 Bug 1376297 part 1 - Use Lookup instead of Get+Remove, and remove a useless Get before Remove, to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: BeuLhwaQ8H6
2017-06-28 01:03:16 +02:00
Mats Palmgren 5293f63576 Bug 1376296 part 2 - Switch to nsRefPtrHashtable since it's more appropriate for holding RefPtr values. r=froydnj
MozReview-Commit-ID: IkVx7XJG0ai
2017-06-28 01:03:16 +02:00
Mats Palmgren bc03580b86 Bug 1376296 part 1 - Use Lookup instead of Get+Remove, and remove a useless Get before Remove, to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: 6YgO0TzY32C
2017-06-28 01:03:16 +02:00
sotaro 5120a89df4 Bug 1375349 - Add calling ScheduleComposition() in CompositorBridgeParent::RecvAdoptChild() r=mattwoodrow 2017-06-27 14:56:16 -07:00
Michael Layzell e291335cf8 Bug 1343728 - Part 2: Add const operator== to TextureFactoryIdentifier and CompositorOptions, r=jrmuizel
MozReview-Commit-ID: 6BayMmqNlyx
2017-06-27 16:24:48 -04:00
David Anderson e09978bd8b Implement LayerMLGPU::SetLayerManager. (bug 1375759, r=mattwoodrow) 2017-06-27 13:11:01 -07:00
David Anderson 5168081e97 Fix not flushing unused TextureHosts in Advanced Layers. (bug 1376243, r=mattwoodrow)
--HG--
extra : rebase_source : 879c210dbe682b2128932b0e85e58927be600a06
2017-06-27 11:59:25 -07:00
Kartikaya Gupta dc174219de Bug 1375497 - Implement some more PLayerTransaction testing APIs in PWebRenderBridge. r=pchang
MozReview-Commit-ID: Em4VROmcUx0

--HG--
extra : rebase_source : c763f6f91f482f7b1ddc03280aff51ead6fd894e
2017-06-27 20:29:06 -04:00
Kartikaya Gupta b95fb227dd Bug 1375497 - Extract helper methods to read animation values. r=pchang
MozReview-Commit-ID: EusfcwPVGkL

--HG--
extra : rebase_source : a52bc1ce8430288e2f2cf41b13fa18d635c9fb7c
2017-06-27 20:29:06 -04:00
Kartikaya Gupta 4635e36bee Bug 1375497 - Make sure the WebRenderBridgeParent respects the testing time set in the CompositorBridgeParent. r=pchang
This allows testing code control over the animation steps running over in the
compositor, which is needed for the OMTA mochitests.

MozReview-Commit-ID: CXJcieSEoRl

--HG--
extra : rebase_source : ad73196ac835e7aae0003befa8c71e81a9019dd2
2017-06-27 20:29:05 -04:00
Kartikaya Gupta e5c184cad5 Bug 1375497 - Modify the SetTestSampleTime and LeaveTestMode functions to take a layers id instead of a LayerTransactionParent. r=pchang
This will make these functions usable from WebRenderBridgeParent, which has a
layers id but doesn't have a LayerTransactionParent.

MozReview-Commit-ID: FvxGPdLeUWe

--HG--
extra : rebase_source : eaed5dedeccda41068cade3d5b4527d0f047eed9
2017-06-27 20:29:05 -04:00
Ryan Hunt 9b1e2c1ec0 Bug 1351783 part 20 - Report async keyboard scrolling to telemetry. r=botond
MozReview-Commit-ID: IwLL2xg3BgY

--HG--
extra : rebase_source : ba0aea8605e33bc9755d6ff454bd4b3549998443
extra : histedit_source : 8de02662e5fd562c3002c18540fc74d4f61cb969
2017-06-22 19:26:07 -04:00
Ryan Hunt fb04e72bad Bug 1351783 part 19 - Rename Keyboard.h to KeyboardMap.h. r=masayuki
This is a better name for the header that matches its main class.

MozReview-Commit-ID: KSt9LVT3yRR

--HG--
rename : gfx/layers/apz/src/Keyboard.cpp => gfx/layers/apz/src/KeyboardMap.cpp
rename : gfx/layers/apz/src/Keyboard.h => gfx/layers/apz/src/KeyboardMap.h
extra : rebase_source : ec4c9ec5afa8479dc4cd3e987fc3293f047beb9e
extra : histedit_source : caa3a11043fc1ccdff3d7853eda69a0a3dfff99e
2017-06-15 18:06:00 -04:00
Ryan Hunt bb5749ccf1 Bug 1351783 part 17 - Do less work when apz.keyboard.enabled is false. r=kats
When keyboard apz is disabled, we don't need to calculate focus targets and
we don't need to update focus state. It should be harmless even if it's done,
but I think it's good to not add something on this critical path that doesn't
do anything.

This commit also disable keyboard map generation in this case too for similar
reasoning. This has the side effect that you can't turn on keyboard apz without
doing a restart.

MozReview-Commit-ID: LxmofT2g7qs

--HG--
extra : rebase_source : 719d29efd80498b824fee03a5be1c1fd05c83074
extra : histedit_source : 7ad71a19782fc6dd203207afbdc7a73a936b3e04
2017-06-06 11:08:45 -05:00
Ryan Hunt db5f497c0f Bug 1351783 part 16 - Perform async scrolling for keyboard events when possible. r=kats,botond,dvander
This commit ties it all together by dispatching keyboard actions to scroll targets
in response to keyboard inputs when we have current and valid focus state.

MozReview-Commit-ID: G7rZiS3FH5e

--HG--
extra : rebase_source : 10129d417fe8ef576cac5bda3157dd8f65b5843a
extra : histedit_source : be651a33f787f68bc764988ddc073d346e854491
2017-06-05 19:46:06 -05:00
Ryan Hunt c24e099b23 Bug 1351783 part 15 - Hook up APZC for scrolling based on a KeyboardScrollAction. r=kats,botond
This commit adds code for keyboard scroll animations and computing the delta
needed for a keyboard scroll action. Keyboard scrolling behavior is more complex
with scroll snapping, so we don't support async keyboard scrolling when we have
scroll snap points.

MozReview-Commit-ID: 97CpprCBp2A

--HG--
extra : rebase_source : 154b2c6b5a6c587fca011ab885c8d46ba6b4d80a
extra : histedit_source : 87ba53fe89069a47751d9ce25fc344011fb0f4de
2017-06-06 04:47:10 -05:00
Ryan Hunt 285770048d Bug 1351783 part 14 - Create a base class for WheelScrollAnimation. r=botond
MozReview-Commit-ID: BtUJo5NAiTR

--HG--
extra : rebase_source : ba3d7cf476ab806094ff2e0c33753e81f88761bf
extra : histedit_source : a898248b30fd1060e82478096fe2624a35473c26
2017-06-15 04:31:50 -04:00
Ryan Hunt 5e36e136d3 Bug 1351783 part 13 - Add a function for determing if a ScrollSnapInfo has scroll snap points. r=botond
MozReview-Commit-ID: 7Dj0RGfQFNC

--HG--
extra : rebase_source : e25f6657f379b286c9393af19b3771c6296db468
extra : histedit_source : e9206c7c276fb9653df142617e08ec3bb7c6f1ad
2017-06-15 03:52:34 -04:00
Ryan Hunt c1312e5abc Bug 1351783 part 12 - Create and sync focus sequence numbers. r=kats,botond,dvander
Focus can change at any moment in a document. This causes non-determinism and
correctness problems for doing keyboard apz scrolling. To get around this, we
will maintain deterministic behavior for focus changes initiated by input events
and see if we can get away with more non-determinism for things like `setTimeout`

In order to do this, we disable async keyboard scrolling when an input event is
processed that could have a event listener. We then attach a sequence number to
that input event and dispatch it to content. In content, we record the highest
sequence number that we have processed from an event, and send that on each focus
update. Using this, we can determine in APZ if we have a current focus target or
if we are still waiting for an input event to be processed and focus to be
reconfirmed.

MozReview-Commit-ID: CWcu8YEFQz4

--HG--
extra : rebase_source : 8c54a619bd4f5ee892f0cc8768a10f3e1e4e0b59
extra : histedit_source : 601ca293a028787883841adc6b40e62c0cc829e5
2017-06-05 19:45:31 -05:00
Ryan Hunt 0785b2f849 Bug 1351783 part 11 - Sync FocusTarget with WebRenderLayerManager. r=kats
MozReview-Commit-ID: LxWt22XY5IE

--HG--
extra : rebase_source : c8eb965d1737d4f6791d96d4f975a31365790632
2017-06-13 02:43:59 -04:00
Ryan Hunt a6a2b4f7c4 Bug 1351783 part 10 - Create and sync the current FocusTarget on each layer transaction. r=kats,botond
This commit modifies PresShell and nsDisplayList to send a FocusTarget update on
every layer transaction. Ideally we would like to send updates as often as possible,
but this seems like it works well. This can be iterated on later, if necessary.

MozReview-Commit-ID: 8PFqIOhzH77

--HG--
extra : rebase_source : 1e2c3b5620f5d7e6e789848da57b2486c3d74f14
2017-06-13 02:00:49 -04:00
Ryan Hunt 3332ba9ac0 Bug 1351783 part 9 - Disable a FocusTarget for an editable element. r=smaug
This commit updates FocusTarget to disable itself if the focused element is editable,
or is a part of an editable document. This is needed because we cannot do async
scrolling when this is the case.

MozReview-Commit-ID: Fl7W3967djG

--HG--
extra : rebase_source : f376dec47965ade11055e10d68311fa9566aca9f
2017-06-05 19:23:45 -05:00
Ryan Hunt 1432b9109d Bug 1351783 part 8 - Gather whether there are key listeners on the focused element. r=kats,smaug
This commit updates FocusTarget to collect whether there are key listeners
on the event target chain for the focused element. This is needed because we
cannot do async scrolling when this is the case.

MozReview-Commit-ID: FhSyF6ffZ4

--HG--
extra : rebase_source : 3e7e8e88ddda1a6b9e8542c131fdbb37e578d7e1
2017-06-05 19:22:16 -05: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
Ryan Hunt cc923c3909 Bug 1351783 part 6 - Create and send KeyboardMap to APZCTreeManager. r=kats
This commit makes it so we initialize, send, and store a KeyboardMap for every
APZCTreeManager for later keyboard event processing.

This is a naive approach so it may be worth improving.

MozReview-Commit-ID: CYTbLL3wRlC

--HG--
extra : rebase_source : 016b80a2a209d4fb5b92bc3adb95bd2dbb4399e0
2017-06-05 18:35:32 -05:00
Ryan Hunt 18867b218f Bug 1351783 part 5 - Add a KeyboardMap type. r=kats,masayuki
The XBL bindings used for scrolling are managed by a nsXBLWindowKeyHandler. This
class loads the handlers and has logic for searching through them to match a
keyboard event. This commit adds a KeyboardMap class for storing KeyboardShortcuts
and for mirroring the search logic of nsXBLWindowKeyHandler.

MozReview-Commit-ID: 5BmFBilKTJy

--HG--
extra : rebase_source : 96cd0f5808ba6c4926e9da368ab3780b1d9d1449
2017-06-05 18:29:04 -05:00
Ryan Hunt 710c2e9481 Bug 1351783 part 4 - Add a KeyboardShortcut type. r=kats,masayuki
Keyboard scrolling works by first dispatching a key event to the focused element
of the page. It is then caught by a XBL binding put on the chrome event handler of
every window. The XBL binding searches through all of its handlers to find one
that can handle the keyboard event. The matching binding has a command string
which is dispatched to the nsGlobalWindowCommands which dispatches to PresShell
which does the actual scrolling.

To do this asynchronously, we need a representation of the XBL handlers that can
be applied to a KeyboardInput to get a KeyboardAction.

This commit adds KeyboardShortcut for this purpose. KeyboardShortcut is designed
to be compatible with nsXBLPrototypeHandler and to only handle the specific cases
we care about for keyboard scrolling. If a XBL handler runs javascript or does
anything else we cannot handle in an OMT situation, then we create a
dispatch-to-content KeyboardShortcut.

MozReview-Commit-ID: 1qzywS3QHVp

--HG--
extra : rebase_source : 8ea4f85c02d04ce5e0fa6e430c44ac920269dd9f
2017-06-05 18:24:35 -05:00
Ryan Hunt a97d402536 Bug 1351783 part 3 - Add a KeyboardScrollAction type. r=kats,masayuki
The different types of keyboard scrolls are represented as command strings that
are dispatched to nsGlobalWindowCommands. This commit adds a class to represent
these command strings, along with a function to find the keyboard scroll action
corresponding to a command string.

MozReview-Commit-ID: 20vvYdzlYYT

--HG--
extra : rebase_source : 8a965429f57534ac65da597cbb05a08284f7eaeb
2017-06-05 18:17:30 -05:00
Ryan Hunt cfc792bc4c Bug 1351783 part 1 - Add includes for unified build issues. r=kats
MozReview-Commit-ID: D57bbW4pmPZ

--HG--
extra : rebase_source : 9af2973a112c7ea641876c1f945797f2c7c945ce
2017-06-05 18:03:02 -05:00
Sebastian Hengst 4798a534fd Backed out changeset 9db369ba372c (bug 1375759) for unused mComputedDrawRegion. r=backout 2017-06-27 20:47:30 +02:00
David Anderson 45ebfe4fb7 Implement LayerMLGPU::SetLayerManager. (bug 1375759, r=mattwoodrow) 2017-06-27 11:31:37 -07:00
Carsten "Tomcat" Book 4e00eff077 merge mozilla-inbound to mozilla-central a=merge 2017-06-27 10:56:41 +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
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 259377b6ab merge mozilla-inbound to mozilla-central a=merge 2017-06-26 13:25:51 +02:00
David Anderson ea272c6f03 Add memory reporting. (bug 1365879 part 26, r=mattwoodrow) 2017-06-23 14:23:14 -07:00
David Anderson 07b79273e2 Add Advanced Layers to the compositor line in about:support. (bug 1365879 part 22, r=milan) 2017-06-23 14:23:13 -07:00
David Anderson 7df9b05034 Add MLGPU feature bits and compositor initialization. (bug 1365879 part 21, r=mattwoodrow) 2017-06-23 14:23:12 -07:00
David Anderson 6376e2c6bb Initial import of Advanced Layers. (bug 1365879 part 20, r=bas) 2017-06-23 14:23:12 -07:00
Andrew Osmond ee57a1a455 Bug 1374278 - Fix a race condition between GPUChild and CompositorManagerChild when the GPU process crashes. r=dvander 2017-06-23 16:12:35 -04:00
David Anderson 6ec4a2c568 Remove leftover files from incomplete backout of bug 1365879 (r=me). 2017-06-23 12:31:05 -07:00
Samael Wang 06b5a3322e Bug 1362166 - Add a timeout to PCompositorManager & kill GPU process on timeout in release builds. r=dvander
MozReview-Commit-ID: Dln8ERrExmz
2017-06-22 17:27:05 +08:00
Jeff Muizelaar 3bc6d736e9 Bug 1372685 - Make DisplayItemLayer dummy target 1x1. r=lsalzman
This is basically the same as what was done in PaintedLayerBlob
2017-06-23 09:46:40 -04:00
Carsten "Tomcat" Book 88fff78f64 Merge mozilla-central to mozilla-inbound 2017-06-23 12:22:24 +02:00
Carsten "Tomcat" Book 4119f2f8fb Backed out changeset 8069471cda21 (bug 1365879) 2017-06-23 12:15:35 +02:00
Carsten "Tomcat" Book 1f871b61e4 Backed out changeset 9d0048e04446 (bug 1365879) 2017-06-23 12:15:32 +02:00
Carsten "Tomcat" Book 661c4ea09c Backed out changeset be62d3eb3b3b (bug 1365879) 2017-06-23 12:15:30 +02:00
Carsten "Tomcat" Book 86edec6643 Backed out changeset 20203c94ef23 (bug 1365879) 2017-06-23 12:15:21 +02: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
David Anderson 5e5166d309 Add memory reporting. (bug 1365879 part 26, r=mattwoodrow)
--HG--
extra : rebase_source : a19fc78fb107d6899244632d18cdb654a4bae8e9
2017-06-22 21:12:21 -07:00
David Anderson 52d5447f23 Add Advanced Layers to the compositor line in about:support. (bug 1365879 part 22, r=milan)
--HG--
extra : rebase_source : 123d4190c0343b60491f34757b26532b9def5075
2017-06-22 21:12:20 -07:00
David Anderson 0505938414 Add MLGPU feature bits and compositor initialization. (bug 1365879 part 21, r=mattwoodrow)
--HG--
extra : rebase_source : 3d8d1a9619d997a2de9eea4e734a0457cd326e91
2017-06-22 21:12:19 -07:00
David Anderson 8eb9963527 Initial import of Advanced Layers. (bug 1365879 part 20, r=bas)
--HG--
extra : rebase_source : 57032a3e3d383c27cfdc2f26841d387ca57d0011
2017-06-22 21:12:19 -07:00
Jeff Muizelaar b9527d4f81 Bug 1374900. Replace CopyRecording with direct use of the memory buffer. r=lsalzman 2017-06-22 23:55:47 -04:00
Nicholas Nethercote 915a56fb41 Bug 1375299 (part 2) - Remove PROFILER_MARKER. r=mstange.
PROFILER_MARKER is now just a trivial wrapper for profiler_add_marker(). This
patch removes it.

--HG--
extra : rebase_source : 9858f34763bb343757896a91ab7ad8bd8e56b076
2017-06-22 13:40:21 +10:00
Jeff Muizelaar 0de540ca2e Bug 1375534 - Add bindings for setting transform style to PushStackingContext. r=kats 2017-06-22 17:30:27 -04:00
Jeff Muizelaar 9781850638 Bug 1373863. Add basic invalidation to PaintedLayerBlobImage. r=kats
This allows us to reuse blob images if they haven't changed.
If they have changed we repaint the whole image.
2017-06-22 17:07:17 -04:00
Mason Chang 3895c778af Bug 1372739 - Use DrawTargetCapture instead of DrawTargetRecording for omtp. r=dvander 2017-06-22 08:36:14 -07:00
Jacek Caban 209eeeaf94 Bug 1372870 - Compiling with mingw-w64 based on GCC 6.3.0 breaks (operands to ?: have different types) r=mattwoodrow 2017-06-22 17:33:39 +02:00
Markus Stange 99dd420f6b Bug 1368846 - Display the window buttons when webrender is used. r=kats,mattwoodrow
MozReview-Commit-ID: Ki4ONGxtzyO

--HG--
extra : rebase_source : b4b223ad64a117cee60fc19819833855b871f95a
2017-06-21 18:58:41 -04:00
sotaro e171eb9a00 Bug 1376896 - Fix AnimatedValue leak at CompositorAnimationStorage during OMTA r=kats 2017-07-06 12:06:41 +09:00
Wes Kocher bfc45b98b9 Merge m-c to inbound, a=merge
MozReview-Commit-ID: 9XdoB5MuVz6
2017-07-05 17:17:41 -07:00
David Anderson 7b27fc5e03 Use greyscale instead of subpixel AA for complex intermediate surfaces. (bug 1366618, r=milan)
--HG--
extra : rebase_source : 95cb64f3b7de631411bc16d109d4b3cade1eea33
2017-07-05 15:43:58 -07:00
David Anderson 2c24b3d088 Ignore container layer batches that don't have an intermediate surface. (bug 1377936, r=mattwoodrow) 2017-07-05 15:39:46 -07:00
David Anderson f914e078f9 Implement asynchronous OMTP behind a pref. (bug 1377060 part 2, r=mchang)
--HG--
extra : rebase_source : b9c49b6c0e80e2bc94a94dee2ddaae4ad985f9ec
2017-07-05 15:19:52 -07:00
David Anderson 6cf29dbc0e Refactor PaintThread for async painting. (bug 1377060 part 1, r=mchang)
--HG--
extra : rebase_source : 4a3601108175cc2f091800f123461187282ca31f
2017-07-05 15:19:47 -07:00
Nathan Froyd 6c8193aed4 Bug 1377962 - add more override declarations for Android-only methods; r=snorp
Trying to get the build running with clang again revealed a few more
missing override declarations.
2017-07-05 16:56:28 -04:00
Carsten "Tomcat" Book 4f3bc4dba8 merge mozilla-inbound to mozilla-central a=merge 2017-06-22 12:47:40 +02:00
Phil Ringnalda 669f3cd603 Merge m-c to autoland
MozReview-Commit-ID: 2R3jZZI6drP
2017-06-21 20:39:08 -07:00
Wes Kocher aef6a66634 Backed out 4 changesets (bug 1343728) for failures in test_group_mouseevents.html a=backout
Backed out changeset 2029cb6bce86 (bug 1343728)
Backed out changeset 0169e09f6030 (bug 1343728)
Backed out changeset 831e95b29f66 (bug 1343728)
Backed out changeset d5630ef01b17 (bug 1343728)

MozReview-Commit-ID: 2RRBTmp5FGj

--HG--
extra : source : 14f84d3b3233a87af51f5ad8302ee24cc2371a01
2017-06-21 17:13:49 -07:00
Wes Kocher ac0fd2038c Merge inbound to m-c a=merge
MozReview-Commit-ID: 3LXFVwSoMvs
2017-06-21 17:58:17 -07:00
Michael Layzell aafcf19442 Bug 1343728 - Part 2: Add const operator== to TextureFactoryIdentifier and CompositorOptions, r=jrmuizel
MozReview-Commit-ID: 6BayMmqNlyx
2017-06-21 14:23:11 -04:00
Mason Chang dafcabde79 Bug 1372441 - Enable replay of ClientPaintedLayers off the main thread. r=dvander 2017-06-20 13:35:39 -07:00
Hiroyuki Ikezoe 8894ec184b Bug 1374882 - Add a TimingParams ctor on the compositor. r=birtles
MozReview-Commit-ID: BFiwrphRND0

--HG--
extra : rebase_source : 79bb7aed8ec25f9b10a34276dec78577c3af7b86
2017-06-22 12:12:42 +09:00
Carsten "Tomcat" Book 8a1350b5a6 Backed out changeset 4f6302a98ae4 (bug 1372405)
--HG--
extra : rebase_source : 41632f3158e88e692809731394a683d065a73dfb
2017-06-21 13:59:26 +02:00
Chris Peterson aa1b22d493 Bug 1373525 - gfx/layers: Remove unused member functions Revoke() of AsyncCanvasRenderer Runnables. r=bas
gfx/layers/AsyncCanvasRenderer.cpp:62:10 [-Wunused-member-function] unused member function 'Revoke'
gfx/layers/AsyncCanvasRenderer.cpp:97:10 [-Wunused-member-function] unused member function 'Revoke'

MozReview-Commit-ID: 11CjGtiXIqv

--HG--
extra : source : a1bc00d769d882d1bd8bbc8a34b48751e488fcb9
extra : intermediate-source : 8f7a070ec05778d6a4f42417772bdd552a433ccc
extra : histedit_source : a5f1974899bb0f41975417b922306a387822ad1f
2017-06-07 00:54:35 -07: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
Wes Kocher bb24138b9d Merge m-c to inbound, a=merge
MozReview-Commit-ID: CaSKFN9T7N4
2017-06-21 18:05:27 -07:00
Matt Woodrow eafc8e49e9 Bug 1373335 - Make sure we clip the opaque region in render target coordinate space, since complex transforms mean that we can't always have a rectangular representation of clips in layer space. r=mstange 2017-06-22 12:41:16 +12:00
Wes Kocher b9d43d4afd Backed out 4 changesets (bug 1343728) for failures in test_group_mouseevents.html a=backout
Backed out changeset 2029cb6bce86 (bug 1343728)
Backed out changeset 0169e09f6030 (bug 1343728)
Backed out changeset 831e95b29f66 (bug 1343728)
Backed out changeset d5630ef01b17 (bug 1343728)

MozReview-Commit-ID: 2RRBTmp5FGj
2017-06-21 17:13:49 -07:00
Jeff Muizelaar e16b0717ca Bug 1373861. Pass a built display list to PushBuiltDisplayList by reference instead of value. r=Ganrko
Previously we needed to pass by value and that was causing us to clear out our
prebuilt display list when we actually wanted to keep it around.

The rust code ended up doing a bit of a silly dance but that's better than copying the display list around.
2017-06-21 18:40:13 -04:00
Kartikaya Gupta c4e762b7e6 Bug 1374682 - Clean up processing of non-cancelable input blocks in InputQueue. r=botond
The main changes here are:
- Make QueuedInput store a InputBlockState instead of a CancelableBlockState,
  and propagate these changes outwards as necessary.
- Hoist some virtual functions from CancelableBlockState up into InputBlockState.
  These are mostly downcast-type functions but also a couple of others
  (DispatchEvent and MustStayActive) that are generally applicable to input
  blocks and not specific to block cancellation.
- Modify the signatures of a few other functions in InputQueue (such as CanDiscardBlock)
  to take a InputBlockState even though all the current call sites pass in a
  CancelableBlockState. This will make it easier to plumb in a new non-cancelable
  block because the function can still be used without modification.

MozReview-Commit-ID: IzhCxVjkKoj

--HG--
extra : rebase_source : b5b415f829e70ea4e7d52481bc84aa016a55e924
2017-06-21 14:22:18 -04:00
Jean-Yves Avenard 2f1f120932 Bug 1223270: P7. Extract D3D11MTAutoEnter and reuse. r=mattwoodrow
MozReview-Commit-ID: Ipz5ygQLxNV

--HG--
extra : rebase_source : 7b294cc18ae5cedde2e1baea5c63c7a3286cba56
2017-06-20 20:45:40 +02:00
Jean-Yves Avenard 00153b34ec Bug 1223270: P2. Add D3D11YCbCrImage type. r=mattwoodrow,nical
And related methods.

Will allow to directly upload a YUV420 buffer into a D3D11 texture.

MozReview-Commit-ID: FugfJB3818Y

--HG--
extra : rebase_source : faaf2667236699513923aaf76ccc462840182aa6
2017-05-03 23:23:45 +02:00
Jean-Yves Avenard e8d34824cb Bug 1223270: P1. Extract AutoLockD3D11Texture. r=mattwoodrow
Will be used in future code.

MozReview-Commit-ID: 5ivawIIt2bu

--HG--
extra : rebase_source : 1c640796907cfce1ce0c7939d0bef64f04b6b0d5
2017-05-04 13:54:05 +02:00
Wes Kocher c0e1236f1a Merge autoland to m-c a=merge
MozReview-Commit-ID: LFtpTAueYrF
2017-06-20 18:24:29 -07:00
Kartikaya Gupta 1be3a1831a Bug 1373381 - Update for size field removal in WR cset d0fdef9. r=jrmuizel
MozReview-Commit-ID: DB8YytEIIH9

--HG--
extra : rebase_source : d58ed1b6c99e7124df98f6dbd16d400f6909fb5e
2017-06-20 09:38:48 -04:00
Sebastian Hengst e1bd0a20d7 Backed out changeset e62923d406f0 (bug 1362166) on suspicion of causing reftest failures on Linux x64 QuantumRender opt, e.g. multicol-rule-hidden-000-ref.xht. r=backout 2017-06-20 18:01:22 +02:00
Samael Wang 0db11efe83 Bug 1362166 - Add a timeout to PCompositorManager & kill GPU process on timeout in release builds. r=dvander
MozReview-Commit-ID: Dln8ERrExmz
2017-06-19 16:45:21 +08:00
Carsten "Tomcat" Book de892834ed Merge mozilla-central to mozilla-inbound 2017-06-20 11:31:34 +02:00
Carsten "Tomcat" Book 013fb0680e merge mozilla-inbound to mozilla-central a=merge 2017-06-20 11:26:40 +02:00
Mason Chang 65fc4594b7 Bug 1371037 - Support for record and replay of ClientPaintedLayers on the main thread. r=dvander 2017-06-15 16:32:59 -07:00
Nicholas Nethercote 453b6f2d11 Bug 1374127 (part 2) - Clean up ProfilerMarkerPayload. r=mstange.
This patch does the following.

- Renames some ProfilerMarkerPayload subclasses so they all of the form
  "FooMarkerPayload", to make the subclass relationship clearer.
  (ProfilerMarkerTracing -- now TracingMarkerPayload -- was the worst
  offender.)

- Removes ProfilerMarkerImagePayload and TouchDataPayload, neither of which are
  used.

- Changes streamCommonProps() to StreamCommonProps().

- Does some minor style and comment fixes in ProfilerMarkerPayload.h.

--HG--
extra : rebase_source : dd732905e96da83bcbf124c70b20011c661fc332
2017-06-19 13:32:32 +10:00
Wes Kocher 976d5437f9 Merge m-c to autoland, a=merge
MozReview-Commit-ID: 6A96Fe0GPjw
2017-06-19 17:37:53 -07:00
Mats Palmgren a0ff91e5d1 Bug 1374089 part 2 - Use nsRefPtrHashtable instead of nsDataHashtable with a RefPtr<> data type, since it's clearer and avoids unnecessary AddRef/Release calls. r=froydnj
MozReview-Commit-ID: 3PshFI1cO38
2017-06-19 18:19:14 +02:00
Mats Palmgren 1da7b46948 Bug 1374089 part 1 - Use LookupForAdd instead of Contains+Put, and remove an unnecessary Contains call before GetAndRemove, to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: 599FkcgcRj0
2017-06-19 18:19:14 +02:00
Wes Kocher 871ead54fd Backed out 2 changesets (bug 1365772) for valgrind failures a=backout
Backed out changeset 3e869b1c08d0 (bug 1365772)
Backed out changeset 66b6c25cacc7 (bug 1365772)

MozReview-Commit-ID: DnIpbwb7KPS

--HG--
extra : rebase_source : 40e29234adb1837283e0bd4be18d96b4311db869
2017-06-19 13:53:23 -07:00
Alexis Beingessner 5267043bbc Bug 1365772 - Allow component alpha to be managed by blocklists. r=kats
MozReview-Commit-ID: 5iEuUtmfkLl

--HG--
extra : rebase_source : ca0c104a5c1923b21d3e40200e5a9ecd66fdebc2
2017-05-30 09:25:40 -04:00
Kartikaya Gupta 86a10aa409 Bug 1373349 - Correct the origin of the content rect when creating scroll layers in WR. r=botond,jrmuizel
Also tweaks the documentation in FrameMetrics.h to be more detailed and
less misleading.

MozReview-Commit-ID: 183V2Q9kY6C

--HG--
extra : rebase_source : 9fb08cf9c2a9df68637fb26014f637b0cb40b188
2017-06-15 15:35:04 -04:00
Sebastian Hengst 905913ead5 Backed out changeset 112d854f652d (bug 1365772) for Windows bustage: 'gfxConfig': is not a class or namespace name at DeviceAttachmentsD3D11.cpp(179). r=backout on a CLOSED TREE
Valgrind also complains: Conditional jump or move depends on uninitialised value(s) at __get_cpuid / cpuid / read_cpu_features / operator
2017-06-19 18:23:50 +02:00
Alexis Beingessner 5c589ff480 Bug 1365772 - Allow component alpha to be managed by blocklists. r=kats
MozReview-Commit-ID: 5iEuUtmfkLl

--HG--
extra : rebase_source : 5c39798c464d790cd76254dedba4c76470dc2126
2017-05-30 09:25:40 -04:00
Nicholas Nethercote 5d3808c6e5 Bug 1373436 (part 4) - Use UniquePtr with profile_add_marker(). r=mstange.
Once the |aPayload| argument to profile_add_marker() became a UniquePtr the
default value of nullptr caused compilation difficulties that could only be
fixed by #including ProfilerMarkerPayload.h into lots of additional places
(because the UniquePtr<T> instantiation required the T to be fully defined). To
get around this I just split profile_add_marker() into two functions, one with
1 argument and one with 2 arguments.

The patch also removes the definition of PROFILER_MARKER_PAYLOAD in the case
where MOZ_GECKO_PROFILER isn't defined. A comment explains why.
2017-06-16 12:26:26 +10:00
Andrew Osmond f4ca4bff53 Bug 1373540 - Fix switchover from the GPU process compositor to the same process compositor. r=me,dvander 2017-06-18 14:49:30 -04:00
Sebastian Hengst 95244ee248 Backed out changeset 866d59780f6d (bug 1373540) for mass test failures on Windows debug (tests terminated with RunWatchdog). r=backout 2017-06-18 01:32:24 +02:00
Sebastian Hengst 968a22a73d merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-06-18 00:25:47 +02:00
Andrew Osmond 60cec7b49f Bug 1373540 - Fix switchover from the GPU process compositor to the same process compositor. r=dvander 2017-06-17 17:52:34 -04:00
Sebastian Hengst e8f0643a4e Backed out changeset 03e899794f41 (bug 1371037) for merge conflict with bug 1368386, v2. r=backout a=backout
MozReview-Commit-ID: De78lCy88sD
2017-06-17 22:49:14 +02:00
Sebastian Hengst 478026cce6 Backed out changeset 03e899794f41 (bug 1371037) for merge conflict with bug 1368386. r=backout 2017-06-17 22:10:05 +02:00
Sebastian Hengst df925a5cf8 Backed out changeset 03e899794f41 (bug 1371037) for merge conflict with bug 1368386. r=backout a=backout
MozReview-Commit-ID: GPp2Knh4JQt

--HG--
extra : amend_source : c62c91c325a892b612945dc8a2d560660085a1aa
extra : transplant_source : %EC%87%3C2%EE%06%AC%C1Wo/%3FoO%CFX%CE%2C%B9%C5
2017-06-17 22:10:05 +02:00
Sebastian Hengst 3654d560d6 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: DPQl41S3ZkU
2017-06-17 22:26:03 +02:00
Jeff Muizelaar 427de06487 Bug 1372685 - Make dummy target 1x1. r=lsalzman
Now that we don't playback our dummy target only needs to be 1x1 instead
of the recording size.  This saves time and memory.
2017-06-17 15:22:26 -04:00
Mason Chang 86004b9db3 Bug 1371037 - Support for record and replay of ClientPaintedLayers on the main thread. r=dvander 2017-06-15 16:32:59 -07:00
Sebastian Hengst a90ef58a2b Backed out changeset 0bade2cd1908 (bug 1343728) 2017-06-16 22:20:43 +02:00
Wes Kocher 296d2b492b Merge m-c to autoland, a=merge
MozReview-Commit-ID: B3DzZrZb3AB
2017-06-16 18:28:40 -07:00
Sebastian Hengst d70c8aa98b merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-06-16 09:52:22 +02:00
Sebastian Hengst 265affc002 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 5wTyHWufcCh
2017-06-16 09:50:00 +02:00
sotaro 61c0f84377 Bug 1372512 - Fix webrender Key leaks of WebRenderBridgeParent on abnormal shutdown r=kats
This bug handles abnormal client shut down case and Tab move between different windows.

Abnormal client shut down case, WebRenderBridgeParent does not receive IPC messages that are sent during WebRenderLayerManager and WebRenderBridgeChild destruction. In this case, webrender keys except keys of external images are not removed from webrender. Abnormal shut down could happen when content process was crashed or content process was killed by ContentParent if shutdown takes too long time.

In the tab move case, the WebRenderBridgeParent will need to be re-bound to a different CompositorBridgeParent and webrender, and so will need to clear all its related keys from the old webrender. This will happen in a future patch.
2017-06-16 15:31:01 +09:00
domfarolino@gmail.com d4253766db Bug 1274663 - Expose API to trigger device reset. r=dvander
--HG--
extra : rebase_source : 5a9d2757f8e7378083ce42131d5a250027569814
2017-06-15 14:34:00 -04:00
Sebastian Hengst 43c84014a1 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: HYo8pUZXJ8Z
2017-06-15 20:12:28 +02:00
Kartikaya Gupta 56e85d2efc Bug 1372603 - Remove unnecessary clip from container layers. r=jrmuizel
MozReview-Commit-ID: F6VnThG5QFI

--HG--
extra : rebase_source : 9d6d670e31520bfe8d5c46297eeba1a0bb3279c9
2017-06-14 15:43:17 -04:00
Kartikaya Gupta aec19f9182 Bug 1372603 - Remove unused functions and parameters. r=jrmuizel
MozReview-Commit-ID: 1DUBPEcCe2u

--HG--
extra : rebase_source : 15c6ac0719a0186a39d619285269555e7a571918
2017-06-14 15:43:16 -04:00
Kartikaya Gupta 60385dfbe4 Bug 1372603 - Move the clip rect for async images outside the iframe item. r=jrmuizel,sotaro
The async images codepath is a bit different in that it pushes an iframe
item to the WR display list and updates it asynchronously. However in
this case it still makes sense to push the layer's local clip
outside the iframe, and just populate the iframe with the image and not
worry about clips inside the iframe. As mentioned in part 1 of this
patchset, this will be needed to properly handle async scrolling.

This patch makes the necessary changes to push the clip outside the
iframe and simplifies what happens in WebRenderCompositableHolder to
generate the display list for the iframe itself.

MozReview-Commit-ID: DeZElH4p4rc

--HG--
extra : rebase_source : 3f3458a6c2607b8290dc2174a248f3d7bd33a3a9
2017-06-14 15:43:16 -04:00
Kartikaya Gupta 4b9fbd6d4d Bug 1372603 - Remove the duplicated clip from WebRenderDisplayItemLayer. r=jrmuizel
Since part 1 of this patch set pushed the layer's local clip as part of
the code in ScrollingLayersHelper, it is no longer needed in the
WebRenderDisplayItemLayer (it is effectively duplicated).

MozReview-Commit-ID: F2HFsx3XI9M

--HG--
extra : rebase_source : 5dfcecb649376d6958760e4e95cd025d01f3124c
2017-06-14 15:43:16 -04:00
Kartikaya Gupta 367cc282d0 Bug 1372603 - Make sure the mask rect is relative to the enclosing stacking context. r=jrmuizel
This ensures that for layers with both transforms and mask layers, the
mask layer is properly positioned outside of the transform and relative
to the proper stacking context.

MozReview-Commit-ID: 79yvhxQCykW

--HG--
extra : rebase_source : 353a7dcc59fb2df0ff2379909a08986ec176ac50
2017-06-14 15:43:16 -04:00
Kartikaya Gupta 1ed171d132 Bug 1372603 - Push the layer's local clip rect outside the stacking context. r=jrmuizel
For various reasons, we want to be pushing the layer's local clip rect
outside of the stacking context rather than inside it. Not only is this
more correct with respect to the semantics of the layer tree, we also
need it in order to properly handle fixed-positioning of layers with
async scrolling.

This patch does the bulk of the work to make this happen. Most of the code
in the individual layer classes to process the layer's local clip rect
is removed, and instead a function in ScrollingLayersHelper is added to
deal with it. There are a couple of places that individual layer classes
still handle this but those will be removed in future patches. Note that
the individual layer classes still need to provide a clip rect of some
sort in order to push their display items, and now they simply use their
visible region bounds for this purpose.

MozReview-Commit-ID: IBmfUdJwYx1

--HG--
extra : rebase_source : 3f48a707f35a398711813d859af1e7184f19fd40
2017-06-14 15:43:16 -04:00
Sebastian Hengst 20d16dadd3 merge mozilla-inbount to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 36YqbsnO3en
2017-06-15 11:11:30 +02:00
Andrew Osmond 9e4c9d88a1 Bug 1365927 - Part 6. Remove CompositorThreadHolder reference from CompositorBridgeParent. r=dvander 2017-06-14 11:40:00 -04:00
Andrew Osmond cafe9dcd45 Bug 1365927 - Part 5. Make PCompositorManager the manager protocol of PCompositorBridge. r=dvander 2017-06-14 11:40:00 -04:00
Andrew Osmond 27eaaaed2f Bug 1365927 - Part 4. Replace PCompositorBridge integration hooks with PCompositorManager. r=dvander 2017-06-14 11:39:59 -04:00
Andrew Osmond 9abc5f52d5 Bug 1365927 - Part 3. Move PCompositorBridge toplevel protocol overrides to PCompositorManager. r=dvander 2017-06-14 11:39:59 -04:00
Andrew Osmond fc4e6a00ae Bug 1365927 - Part 2. Add minimal PCompositorManager protocol. r=dvander 2017-06-14 11:39:59 -04:00
Mats Palmgren 2979d4b762 Bug 1372368 - Use LookupForAdd instead of Get+Put to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: trugd3ihLh
2017-06-14 17:27:25 +02:00
Sebastian Hengst 1b26da1b2f merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-06-15 11:17:07 +02:00
JerryShih 011987c967 Bug 1372803 - Handle GPUVideoTextureHost type for WR. r=sotaro
In windows platform, gecko will use GPUVideoTextureHost type for remote video decoding.
Implement the WR related functions for this type.

MozReview-Commit-ID: KSpndcApK3H
2017-06-15 17:07:46 +08:00
JerryShih 8731715817 Bug 1372803 - Move the RenderTextureHost creation from WebRenderTextureHost to the corresponding TextureHost. r=sotaro
MozReview-Commit-ID: JF19ntiQKfa
2017-06-15 17:07:46 +08:00
sotaro a1ccf002a7 Bug 1372066 - Fix animations leak on abnormal shutdown and tab move between different windows r=kats
This bug handles abnormal client shut down case and Tab move between different windows.

Abnormal client shut down case, WebRenderBridgeParent does not receive IPC messages that are sent during WebRenderLayerManager and WebRenderBridgeChild destruction. In this case, animations under the WebRenderBridgeChild are not removed from CompositorAnimationStorage. Abnormal shut down could happen when content process was crashed or content process was killed by ContentParent if shutdown takes too long time.

In the tab move case, the WebRenderBridgeParent will need to be re-bound to a different CompositorBridgeParent and CompositorAnimationStorage, and so will need to clear all its active animations from the old CompositorAnimationStorage and add animations into the new CompositorAnimationStorage. This will happen in a future patch.
2017-06-15 16:36:03 +09:00
sotaro 33a0f76b05 Bug 1372816 - Send WebRenderParentCommands When EmptyTransaction is aborted r=jrmuizel 2017-06-15 13:38:22 +09:00
domfarolino@gmail.com 5450eab623 Bug 1369549 - Bootstrap a painting thread for OMTP. r=dvander
--HG--
extra : rebase_source : bae591cdace1197a6b4d3a489a46bdaab5293d23
2017-06-09 16:30:00 -04:00
Matt Woodrow 9dc1432982 Bug 1361970 - Make PostProcessLayers occlusion culling work against the surface we will draw to rather than the parent layer. r=mstange
* * *
[mq]: fix

MozReview-Commit-ID: Dm42jlC19pE
* * *
[mq]: fix

MozReview-Commit-ID: 3c1Bp7BeY5T
2017-06-14 13:47:08 +12:00
Wes Kocher bcf1a1c32e Backed out 6 changesets (bug 1365927) for build failures in ipc_message_utils.h a=backout CLOSED TREE
Backed out changeset 11fc0da380a2 (bug 1365927)
Backed out changeset 9f1dee5a6c42 (bug 1365927)
Backed out changeset f4954c824f5c (bug 1365927)
Backed out changeset 144ac6cc76f8 (bug 1365927)
Backed out changeset 961e782cf7c7 (bug 1365927)
Backed out changeset 12a093fb86a4 (bug 1365927)

MozReview-Commit-ID: 6CDxqOJzMjE
2017-06-13 12:45:03 -07:00
Andrew Osmond 5500fe634e Bug 1365927 - Part 6. Remove CompositorThreadHolder reference from CompositorBridgeParent. r=dvander 2017-06-13 15:20:36 -04:00
Andrew Osmond 7dc8c4cc9f Bug 1365927 - Part 5. Make PCompositorManager the manager protocol of PCompositorBridge. r=dvander 2017-06-13 15:20:00 -04:00
Andrew Osmond c17a8c1ea1 Bug 1365927 - Part 4. Replace PCompositorBridge integration hooks with PCompositorManager. r=dvander 2017-06-13 15:19:36 -04:00
Andrew Osmond 9c5b478f2f Bug 1365927 - Part 3. Move PCompositorBridge toplevel protocol overrides to PCompositorManager. r=dvander 2017-06-13 15:19:36 -04:00
Andrew Osmond 9a639f1536 Bug 1365927 - Part 2. Add minimal PCompositorManager protocol. r=dvander 2017-06-13 15:19:36 -04:00
Andrew Osmond 230fa0dcd8 Bug 1365927 - Part 1. Add missing headers and other build housekeeping. r=dvander 2017-06-13 15:17:59 -04:00
Kartikaya Gupta d6cb0eba49 Bug 1372233 - Clean up handling of default branches in APZ switch statements. r=botond
Wherever possible, we exhaustively list all the possibilities instead of
having "default" branches. This way if new items are added to the enum
they won't silently end up in the "default" branch, but the compiler can
tell us that we skipped handling it.
Also wherever possible, the existing NS_WARNINGs were upgrade to
MOZ_ASSERTs or equivalent.

MozReview-Commit-ID: IVDiI0gjFtU

--HG--
extra : rebase_source : 93bac9678e44e2f42602e10d0c7eea26366bae37
2017-06-16 15:22:12 -04:00
Markus Stange fcebd73530 Bug 1368386 - Only call mInvalidRegion.GetRegion() when an up-to-date valid region is requested. r=mattwoodrow
MozReview-Commit-ID: IHb0fNAzyjj

--HG--
extra : rebase_source : 7042eb85f99c0a578a5e732e1edfe364deec330d
2017-06-15 23:35:38 -04:00
Markus Stange 5e44be6da9 Bug 1368386 - Make PaintedLayer::mValidRegion private so that its access can be tightly controlled. r=mattwoodrow
MozReview-Commit-ID: LdtH3hrXT5v

--HG--
extra : rebase_source : c1eff1ba44f9a762cadb028113576bbffee93715
2017-06-15 18:20:53 -04:00
Markus Stange 23716b1586 Bug 1368386 - Add PaintedLayer::InvalidateWholeLayer(). r=mattwoodrow
MozReview-Commit-ID: 7sgQDs82Wwt

--HG--
extra : rebase_source : 6a13c3b53f85d88535451cda57c76e5d845a53d5
extra : source : 92eb66a5357939ca239cb2167dcccbc2328ea51b
2017-06-15 17:29:18 -04:00
Markus Stange da5c42ccd2 Bug 1368386 - Make ProgressiveUpdate's aValidRegion parameter const to make it a bit easier to reason about. r=mattwoodrow
MozReview-Commit-ID: DOfJ8TTuL1t

--HG--
extra : rebase_source : d4e6a1dc8aedb9f6b446c43aeded6823944c497a
2017-06-15 17:30:01 -04:00
Markus Stange fd5c1c95ed Bug 1368386 - Make ProgressiveUpdate's aInvalidRegion parameter const to make it a bit easier to reason about. r=mattwoodrow
The caller of RenderHighPrecision and RenderLowPrecision doesn't look at the
variable that it passes as the aInvalidRegion parameter after the call, so any
modifications that would have happened to this variable don't matter.

MozReview-Commit-ID: B9PaXjZkxv2

--HG--
extra : rebase_source : fb66ae3170a9891fbb5d4d90aebf78230b8f9ce0
2017-06-15 17:18:37 -04:00
Kartikaya Gupta 302b120284 Bug 1372912 - Place the layer local clip in the right spot for fixed-pos layers. r=mrobinson
This patch makes the bg-fixed-child-mask.html reftest pass by ensuring
the clips for the test case are all in the correct spots. See the
comments in the patch for a more detailed explanation.

MozReview-Commit-ID: 21MAHr0PJ9B

--HG--
extra : rebase_source : 649a539a9c9417784c1cd025e372eb7823844bec
2017-06-15 17:02:22 -04:00
Kartikaya Gupta 1e6ddf03d5 Bug 1372912 - Make the clip id more strongly typed. r=jrmuizel,mrobinson
This patch is not really needed, but it avoids accidental conversion
between FrameMetrics::ViewID (which represents a scrolling clip) and a
uint64_t id for a non-scrolling clip.

MozReview-Commit-ID: JriIfpECHe7

--HG--
extra : rebase_source : a7af8465c9c62a60856c190da64667439233f4b0
2017-06-15 17:02:20 -04:00
Kartikaya Gupta 81a3b0b998 Bug 1372912 - Push clips for all the scroll metadata scrollclips. r=jrmuizel
Each layer has a stack of scroll metadata objects, which represent the
set of scrollframes that got flattened into the layer. Effectively the
metadata objects provide the scroll information for the chain of
scrollframes containing that layer's content. Each of these scrollframes
may have a clip, and so we need to push those clips to WR. We need to
take care to insert these clips at the right point in the stack, so that
they are interleaved correctly with the PushScrollLayer calls that we
use to inform WR of the scrolling clips for the scrollframes. This patch
implements this behaviour.

MozReview-Commit-ID: HD3OO5TZHSr

--HG--
extra : rebase_source : 8c5c3b027f3fa6fca8394c57769845569387f32e
2017-06-15 17:02:18 -04:00
Kartikaya Gupta 65a82350c5 Bug 1372912 - Extract a PushLayerClip helper method. r=jrmuizel
No functional changes. We'll want to reuse this code in a future patch.

MozReview-Commit-ID: LEuP38yXBHI

--HG--
extra : rebase_source : 11faa0123e987c255dd7495e4b704346ab2b714d
2017-06-15 17:02:12 -04:00
Sebastian Hengst cd40ca46a9 Backed out changeset 2b883786cf01 (bug 1372912) for bustage at ScrollingLayersHelper.h:19: class 'LayerClip' was previously declared as a struct. r=backout 2017-06-15 22:59:51 +02:00
Sebastian Hengst a1045bb07d Backed out changeset 6f148794682a (bug 1372912) 2017-06-15 22:59:01 +02:00
Sebastian Hengst 8d132d70e6 Backed out changeset 8176859f8b70 (bug 1372912) 2017-06-15 22:58:57 +02:00
Sebastian Hengst 55c85f1bad Backed out changeset 18c0e82c745f (bug 1372912) 2017-06-15 22:58:52 +02:00
Kartikaya Gupta afd9ebbf45 Bug 1372912 - Place the layer local clip in the right spot for fixed-pos layers. r=mrobinson
This patch makes the bg-fixed-child-mask.html reftest pass by ensuring
the clips for the test case are all in the correct spots. See the
comments in the patch for a more detailed explanation.

MozReview-Commit-ID: 5HHtsSkcsji

--HG--
extra : rebase_source : d5d52f33714407a0df41ca06a6a298bef3154c74
2017-06-15 09:41:47 -04:00
Kartikaya Gupta f910c3f66e Bug 1372912 - Make the clip id more strongly typed. r=jrmuizel,mrobinson
This patch is not really needed, but it avoids accidental conversion
between FrameMetrics::ViewID (which represents a scrolling clip) and a
uint64_t id for a non-scrolling clip.

MozReview-Commit-ID: BU7p4WNocXa

--HG--
extra : rebase_source : 0cf69ca0a7b716bd9ad5c3cef114a3b99ec00e1b
2017-06-15 09:41:46 -04:00
Kartikaya Gupta 9b82918f72 Bug 1372912 - Push clips for all the scroll metadata scrollclips. r=jrmuizel
Each layer has a stack of scroll metadata objects, which represent the
set of scrollframes that got flattened into the layer. Effectively the
metadata objects provide the scroll information for the chain of
scrollframes containing that layer's content. Each of these scrollframes
may have a clip, and so we need to push those clips to WR. We need to
take care to insert these clips at the right point in the stack, so that
they are interleaved correctly with the PushScrollLayer calls that we
use to inform WR of the scrolling clips for the scrollframes. This patch
implements this behaviour.

MozReview-Commit-ID: BayxnZuqh4s

--HG--
extra : rebase_source : 94b8ab464c5648a2e87d94ed9d95ed5ff3f486a3
2017-06-15 09:41:46 -04:00
Kartikaya Gupta 6a50a2f2fc Bug 1372912 - Extract a PushLayerClip helper method. r=jrmuizel
No functional changes. We'll want to reuse this code in a future patch.

MozReview-Commit-ID: 1nrMuS9n8A5

--HG--
extra : rebase_source : 75112a65645147c85643d4cd2cf253de3242825b
2017-06-15 09:41:46 -04:00
Michael Layzell e61a1cdcfb Bug 1343728 - Part 2: Add const operator== to TextureFactoryIdentifier and CompositorOptions, r=jrmuizel
MozReview-Commit-ID: 6BayMmqNlyx
2017-06-16 14:59:33 -04:00
peter chang 6010728f95 Bug 1373836 - Generate fixed animation id per layer if animations exist, r=kats
In gecko, it's possible to generate lots of animation ids per layer if animations are changed.
It also introduces lots of memory allocation/deallocation in CompositorAnimationStorage(HashTable).
Generate fixed animations id per layer should help the memory usage and reduce CPU time for memory allocation.
MozReview-Commit-ID: 1hWUD5gNBJH

--HG--
extra : rebase_source : bd3fcfed5caab5d8edfbd29a8e505daf9e8ff95f
2017-06-28 09:31:10 -07:00
David Anderson af47af94ef Compute minimal intermediate surface sizes in Advanced Layers. (bug 1375785, r=mattwoodrow)
--HG--
extra : rebase_source : 60b7a69865a0e9083a61201b8ce1bea2e3c82fd1
2017-06-28 15:26:48 -07:00
sotaro ca474bba44 Bug 1376532 - Do crahs if CreateRenderTexture() is not implemented also on release build r=nical 2017-06-28 10:31:57 -07:00
Jeff Muizelaar e44fb23df8 Bug 1376797 - Store the bounds of the area that we painted. r=mattwoodrow
Previously we would use the size of the current visible region which
didn't actually match the size of the blob image that we had created.
2017-06-28 09:30:25 -07:00
Michael Layzell a6f9d86063 Bug 1343728 - Part 2: Add const operator== to TextureFactoryIdentifier and CompositorOptions, r=jrmuizel
MozReview-Commit-ID: 6BayMmqNlyx
2017-06-28 12:25:27 -04:00
Carsten "Tomcat" Book d1489bfcf4 Merge mozilla-central to mozilla-inbound on a CLOSED TREE
--HG--
extra : amend_source : 67c6f9f68bacd295dde41b981153d8c7ba333461
2017-06-28 16:31:19 +02:00
JerryShih 56f5339e5a Bug 1374548 - Implement the frame selection in BasicImageLayer. r=mattwoodrow
The BasicImageLayer always picks the first frame in image container which is not desired for video playback.

MozReview-Commit-ID: q4QkBT2a7w

--HG--
extra : rebase_source : 732f61eb5ca64a051fc928a1e22706011800d8fb
2017-06-22 21:03:00 +02:00
Christoph Kerschbaumer 17fb630efb Bug 1380765 - Convert tests within gfx/ to comply with new data: URI inheritance model. r=smaug 2017-07-14 12:18:23 +02:00
David Anderson a967d21a69 Allow LayerManagers to disable complex component alpha cases. (bug 1365879 part 19, r=mattwoodrow) 2017-06-20 01:17:22 -07:00
David Anderson eda24ede27 Rename LayerManager::Composite to LayerManager::ScheduleComposite. (bug 1365879 part 17, r=mattwoodrow) 2017-06-20 01:17:21 -07:00
David Anderson 452df9e9d2 Allow ContainerLayers to track their invalid regions. (bug 1365879 part 16, r=mattwoodrow) 2017-06-20 01:17:21 -07:00
David Anderson 5c3229c7cc Add an RAII helper for read-unlocking textures. (bug 1365879 part 15, r=mattwoodrow) 2017-06-20 01:17:21 -07:00
David Anderson 9467c3d33c Don't require a Compositor for setting DiagnosticTypes. (bug 1365879 part 14, r=mattwoodrow) 2017-06-20 01:17:20 -07:00
David Anderson d1eec3b0e9 Don't require a Compositor to track async compositable ownership. (bug 1365879 part 13, r=mattwoodrow) 2017-06-20 01:17:20 -07:00
David Anderson 3a500a9070 Don't require a Compositor for texture backend checks. (bug 1365879 part 12, r=mattwoodrow) 2017-06-20 01:17:19 -07:00
David Anderson 392b83f1c4 Allow LayerManagers to force intermediate surfaces for blend containers. (bug 1365879 part 11, r=mattwoodrow) 2017-06-20 01:17:19 -07:00
David Anderson bae9947dc4 Add IsHidden to CompositorWidget. (bug 1365879 part 10, r=rhunt) 2017-06-20 01:17:19 -07:00
David Anderson f23fbf5237 Add a way to extract TextureSources from a BigImageIterator. (bug 1365879 part 9, r=mattwoodrow) 2017-06-20 01:17:18 -07:00
David Anderson 737535e6d0 Refactor ImageHost to allow acquiring the current TextureSource without locking the underlying TextureHost. (bug 1365879 part 8, r=mattwoodrow) 2017-06-20 01:17:18 -07:00
David Anderson 8974aed87a Allow locklessly acquiring the TextureSources for ContentHosts. (bug 1365879 part 7, r=mattwoodrow) 2017-06-20 01:17:17 -07:00
David Anderson ac1b90f140 Add support for locklessly getting TextureSources from TextureHosts. (bug 1365879 part 6, r=mattwoodrow) 2017-06-20 01:17:17 -07:00
David Anderson e9660f0e6c Allow safe downcasting to ContentTextureHost and ImageHost. (bug 1365879 part 5, r=mattwoodrow) 2017-06-20 01:17:16 -07:00
David Anderson f56c8518c4 Expose ContentTextureHost buffer properties. (bug 1365879 part 4, r=mattwoodrow) 2017-06-20 01:17:16 -07:00
David Anderson f52c24e301 Extract some compositor functions into a LayersHelpers header. (bug 1365879 part 3, r=mattwoodrow) 2017-06-20 01:17:16 -07:00
David Anderson e78f438bc1 Fix potential memory leak in TextureSourceProviderMLGPU. (bug 1365879 part 1, r=mattwoodrow) 2017-06-20 01:17:15 -07:00
David Anderson 2f52d702a2 Unified build fixes to APZ. (bug 1373890, r=kats)
--HG--
extra : rebase_source : cfdba3196705ada8cad6019e32ba2346ce43cf4f
2017-06-20 00:05:39 -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
sotaro df51f39768 Bug 1387922 - Add log of start or fwd Transaction to on screen timing r=nical 2017-08-11 10:57:21 +09: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
Carsten "Tomcat" Book 7ab0637eb6 Backed out changeset 14d0e2a451e7 (bug 1383365) for perma crashes in test_wheel_transactions.html 2017-07-26 13:59:12 +02:00
Carsten "Tomcat" Book 7dbd2bee72 Backed out changeset 1db44c2e7903 (bug 1383365) 2017-07-26 13:58:55 +02:00
Ryan Hunt 3a91a63dd0 Bug 1383365 - Add a test to assert async key scrolling happens. r=botond
MozReview-Commit-ID: 13XydDOHXUE

--HG--
extra : rebase_source : 45daf95f9261afc0d605f74354f33b80f5083459
2017-07-23 12:42:26 -04:00
Ryan Hunt 4f873939a9 Bug 1383365 - Fix APZ focus target log parameter order. r=botond
MozReview-Commit-ID: DJtXaylyseg

--HG--
extra : rebase_source : 1d2e851a591f71d241b1051a10c06efbbbb39f23
2017-07-23 13:58:19 -04:00
David Anderson 3bacd995dc Don't assert about borrowed DT refcounts when async painting. (bug 1381393, r=mattwoodrow) 2017-07-25 22:38:33 -07:00
David Anderson 4ccde3c049 Silence spurious Advanced Layers warnings in the D3D11 debug layer. (bug 1383326, r=bas) 2017-07-25 22:34:29 -07:00
Morris Tseng b2906160cb Bug 1388235 - Support fallback path for nsDisplayFilter. r=jrmuizel
Use FrameLayerBuilder and BasicLayerManager for rendering filter effects
that webrender not supported.

MozReview-Commit-ID: FCa6BWNpnbR
2017-08-18 15:24:30 +08:00
Morris Tseng 5da4bc5316 Bug 1391135 - Only retain WebRenderUserData when layer manager and namespaceID is match. r=kats
MozReview-Commit-ID: JAc3ePuFtzI
2017-08-18 15:21:20 +08:00
sotaro 32cc925261 Bug 1391167 - Call ClearCachedResources() of AncestorMaskLayer in WebRenderLayerManager::ClearLayer() r=nical 2017-08-18 14:47:00 +09:00
Matt Woodrow 94247181df Bug 1377324 - Don't compute prepared data multiple times for ContainerLayers that are duplicated. r=miko 2017-07-07 14:14:19 +12:00
Matt Woodrow 4fd709b953 Bug 1377324 - Don't clear prepared data during rendering since we can visit Layers multiple times in the presence of plane splitting. r=miko 2017-07-07 14:14:11 +12:00
David Anderson 3d539c41cb Fail gently when a D3D11 TextureHost uses a stale provider. (bug 1378282, r=vliu) 2017-07-06 18:35:37 -07:00
David Anderson fa09d4e240 Disable Advanced Layers on transparent popups. (bug 1379014, r=mattwoodrow) 2017-07-06 18:29:38 -07:00
Ryan Hunt fcb54217c6 Bug 1371527 - Add LayersMessageUtils for IPC serialization of mozilla::layers structs. r=dvander
MozReview-Commit-ID: 7UAtrnnlSqI

--HG--
rename : gfx/ipc/GfxMessageUtils.h => gfx/layers/ipc/LayersMessageUtils.h
extra : rebase_source : 99abcb49ede377e5c31440b2d21a5bd79cda65e0
extra : amend_source : d1820fb6e7aee5e0dbcc83242e9264d8f4e7a4d0
2017-06-08 23:32:13 -05: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
Bill McCloskey f9aca3eae6 Bug 1365099 - Convert NS_GetCurrentThread uses in gfx (r=dvander)
MozReview-Commit-ID: 9I4eXsBl2s8
2017-06-12 20:20:08 -07: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
Jeff Muizelaar 64116b92d4 Bug 1362245. Stop running commands during recording for BlobImage. r=lsalzman
This keeps around mFinalDT but mostly doesn't use it (except for when creating
a PathBuilder). All playback is ripped out and we'll no longer hold references
to things to mFinalDT::GraidentStops or SourceSurfaces etc.
2017-06-12 17:53:21 -04: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
Mason Chang 27e2a5cbe7 Bug 1371098 - Fix unified builds when adding a PaintThread. r=kats 2017-06-08 11:18:09 -07:00
peter chang c09bd44dec Bug 1371114 - Add gecko profiler labels for WebRender, r=kats
MozReview-Commit-ID: 4TRZgV8X1Ml

--HG--
extra : rebase_source : 1152c3a1d3444ebf91d55b2e2de4f123e1139a7f
2017-06-09 11:56:13 +08:00
Wes Kocher 7462f47787 Merge m-c to inbound, a=merge
MozReview-Commit-ID: LZOwJMXpznP
2017-06-09 15:58:08 -07:00
Botond Ballo faf8512e63 Bug 1371299 - Restrict the thumb snapping back to its original position to when the thumb is on-screen. r=kats
MozReview-Commit-ID: 2oZMwlusg2n

--HG--
extra : rebase_source : 5400135b4c32327a8deaa73faa2076fb7a000d25
2017-06-09 17:12:38 -04:00
Jeff Muizelaar 0442ca87fb Bug 1367538. Clear user data after we're done with the recorder. r=lsalzman
This helps keep us from accumulating all of the recorders.

The basic idea is to track weak references to the SourceSurfaces and Fonts that
we add UserData to in DrawEventRecorderPrivate and then clear these UserData's
when we're done recording.

This adds a RemoveAndDestroy helper to UserData to make this possible.
2017-06-09 14:31:35 -04:00
Carsten "Tomcat" Book d5a13ba05e merge mozilla-inbound to mozilla-central a=merge 2017-06-09 12:58:49 +02:00
Cameron McCormack 1f30613283 Bug 1369954 - Part 4: Stop running <meta viewport>-related tests on non-Android stylo. r=emilio
Due to the confusing precedence of reftest manifest conditions,
we are running these tests when we shouldn't be.

MozReview-Commit-ID: 6RgI0NgWvay

--HG--
extra : rebase_source : 2e6a8113e1444bef52131ad9c119a31a7e855b7f
2017-06-09 12:20:40 +08:00
Kartikaya Gupta a8a8b628cd Bug 1368496 - Add support for fixed-positioning with APZ. r=jrmuizel
This implements at least enough fixed-positioning support to make the
reftest in layout/reftests/async-scrolling/bg-fixed-child.html pass.
That test implements a simple background-attachment:fixed which is
implemented in the layer tree with a combination of a scrolled clip and
a fixed-position layer. Previous patches in this patchset implemented
support for the scrolled clip, and this patch implements the
fixed-position layer support.

MozReview-Commit-ID: 1Al1YshhUL7

--HG--
extra : rebase_source : e50d5572264567acc03f1ecf220c57c7b5a85a4f
2017-06-08 11:34:01 -04:00
Kartikaya Gupta c8d5fd6ffd Bug 1368496 - Propagate the layer's "scrolled clip" to WebRender. r=jrmuizel
If the layer has a "scrolled clip", that clip scrolls with the content
of the layers (it moves if any of the scrollable frames defined by that
layer are scrolled).

MozReview-Commit-ID: 37hvXWO930f

--HG--
extra : rebase_source : 4150c3bb061d027b483e44418bec7f3b810a9ccc
2017-06-08 11:34:00 -04:00
Kartikaya Gupta 8e9f1257f8 Bug 1368496 - Skip over scrollinfo layers instead of aborting entirely. r=jrmuizel
MozReview-Commit-ID: 5pYcurXfAf

--HG--
extra : rebase_source : c489b9028dffea2e166a16fe6e318833db489ed0
2017-06-08 11:34:00 -04:00
Jeff Muizelaar 4cf1367466 Bug 1370681. WebRender: Remove unnecessary sync messages. r=kats,dvander
These don't need to be sync and we're spending a noticeable amount of
time in DeleteImage.
2017-06-08 18:05:57 -04:00
Ryan VanderMeulen 9b7a73b65a Merge m-c to autoland. a=merge
UPGRADE_NSPR_RELEASE UPGRADE_NSS_RELEASE

--HG--
extra : amend_source : a59e53ba2f8db608f613f21ad6da2b5be8814aa4
2017-06-07 22:55:56 -04:00
Martin Robinson 9915ffcbc3 Bug 1370530 - Convert more CSS filters to WebRender display items. r=jrmuizel
Activate WebRender output for filters that introduce only one pixel
differences in tests. Since the filters spec does not seem to specify
how color values are rounded, this output should be spec compliant.
2017-06-07 03:43:00 -04:00
JerryShih efa30c7964 Bug 1366502 - Make sure all wrapped textureHosts doesn't use TextureFlags::DEALLOCATE_CLIENT flag. v2. r=sotaro
MozReview-Commit-ID: KjZIGRzRomT
2017-06-07 23:44:05 +08:00
JerryShih b28ccb02ff Bug 1366502 - Update the thread model for RegisterExternalImage(), UnregisterExternalImage() and GetRenderTexture() call. v2. r=sotaro
If we call UnregisterExternalImage() at non-render-thread and decrease the RenderTextureHost's ref-count to zero, the RenderTextureHost will be released in non-render-thread.
That will cause some problems if we use some thread-specific functions in ~RenderTextureHost().
This patch uses a message loop in UnregisterExternalImage() to resolve this problem.

MozReview-Commit-ID: CDazxGkE1cK
2017-06-07 23:44:05 +08:00
JerryShih df9418c639 Bug 1366502 - Update WebRenderTextureHost for video pipeline. r=sotaro
MozReview-Commit-ID: 8ODLYyXzHjO
2017-06-07 23:44:04 +08:00
JerryShih 5b3045edee Bug 1366502 - Update TextureD3D11 for video pipeline. v2. r=sotaro
Update for DXGITextureHostD3D11 and DXGIYCbCrTextureHostD3D11.

MozReview-Commit-ID: CQqzHK3jqz7
2017-06-07 23:44:04 +08:00