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

10836 Коммитов

Автор SHA1 Сообщение Дата
Ryan Hunt 44b97f79ca Remove unneeded lambda capture in paint thread (bug 1399692 part 1, r=bas)
MozReview-Commit-ID: 71X22PHRTRz

--HG--
extra : rebase_source : c31d3ad296359af32d528e03a65d744211aac7be
2017-10-31 01:55:24 -04:00
Csoregi Natalia 423b2522c4 Merge inbound to mozilla-central r=merge a=merge 2017-11-01 12:14:00 +02:00
sotaro 3aac464b5a Bug 1408490 - Fix reinitRendering for deviceReset r=dvander 2017-11-01 11:58:10 +09:00
Sebastian Hengst 7a0f790c30 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 4CDH6A5NT2U
2017-11-01 00:36:12 +01:00
Ryan Hunt 4371a10ca6 Add profiler markers for painting on the paint thread. (bug 1412951, r=mstange)
The following commits added the necessary tracking to ensure we always end
a profiler marker when we start one, and this just plugs them in.

MozReview-Commit-ID: C5VXpnlH2QA

--HG--
extra : rebase_source : 832c8abdef45e0a9bbb71bbf105fe4a76d0eb60d
2017-10-30 14:48:16 -04:00
Ryan Hunt 27d35624ce Track when we start and finish painting a layer transaction. (bug 1412951, r=dvander)
This commit adds instrumentation and some asserting to track a "paint group",
which is essentially the first PaintThread::AsyncPaintContents until
PaintThread::AsyncEndLayerTransaction.

I didn't add an AsyncBeginLayerTransaction and use that to start a "paint group"
as I think it makes sense to not have a paint marker if we don't do
any painting.

MozReview-Commit-ID: AlSsUUF5ZOH

--HG--
extra : rebase_source : 84d9feaf5aac39fb9ce32984efda704fa2a68838
2017-10-30 14:49:58 -04:00
Ryan Hunt 71996a3966 Be sure to call EndLayerTransaction if there are queued paints. (bug 1412951, r=dvander)
I believe this is the only case where we miss calling EndLayerTransaction,
but still had queued async paints. This wasn't an issue before, because
the following transaction would then do the synchronization. But I'd
like to use EndLayerTransaction for a profiler mark, so we should call
it unconditionally.

MozReview-Commit-ID: 9rUXBzCZaLO

--HG--
extra : rebase_source : ba360f2451190cf38745121d4dc32f4ed8d1bfe2
2017-10-30 13:44:59 -04:00
Kartikaya Gupta 3a399cf5e5 Bug 1412280 - Update sticky code for API change in WR PR 1940. r=jrmuizel
MozReview-Commit-ID: 2I8wpe3Bt1y

--HG--
extra : rebase_source : 5056aee8978c9bd5c51724ec909125de318f04ad
2017-10-31 09:17:22 -04:00
Chris Peterson 73037a0f6a Bug 1412048 - Replace NS_RUNTIMEABORT(var) with MOZ_CRASH_UNSAFE_OOL(var). r=froydnj data-review=francois
And remove unreachable code after MOZ_CRASH_UNSAFE_OOL().

MOZ_CRASH_UNSAFE_OOL causes data collection because crash strings are annotated to crash-stats and are publicly visible. Firefox data stewards must do data review on usages of this macro. However, all the crash strings this patch collects with MOZ_CRASH_UNSAFE_OOL are already collected with NS_RUNTIMEABORT.

MozReview-Commit-ID: IHmJfuxXSqw

--HG--
extra : rebase_source : 031f30934b58a7b87f960e57179641d44aefe5c5
extra : source : fe9f638a56a53c8721eecc4273dcc074c988546e
2017-10-24 23:38:38 -07:00
Chris Peterson 1df202b177 Bug 1412048 - Replace NS_RUNTIMEABORT("...") with MOZ_CRASH("..."). r=froydnj
And remove unreachable code after MOZ_CRASH().

MozReview-Commit-ID: 6ShBtPRKYlF

--HG--
extra : rebase_source : 0fe45a59411bda663828336e2686707b550144ae
extra : source : 8473fd7333d2abe1ea1cc176510c292a5b34df45
2017-10-24 23:30:31 -07:00
Attila Craciun 2ae920762e Merge mozilla-central to mozilla-autoland. r=merge a=merge CLOSED TREE 2017-10-31 12:53:23 +02:00
Sebastian Hengst 2470a9a87b merge mozilla-central to autoland. r=merge a=merge 2017-11-01 00:38:25 +01:00
Sebastian Hengst f07fc93141 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 4PW6ESqLL73
2017-10-30 23:52:23 +01:00
Andrew Osmond 95ee90ca7f Bug 1331944 - Part 8. Add plumbing to use shared surfaces if available in WebRenderImageData. r=jrmuizel 2017-10-30 13:10:29 -04:00
Andrew Osmond c505acd7e7 Bug 1331944 - Part 7. Handle shared surfaces in WebRenderBridgeParent::AddExternalImage. r=jrmuizel 2017-10-30 13:10:29 -04:00
Andrew Osmond 74f4713f93 Bug 1331944 - Part 6. Expand SharedSurfacesChild to support sharing ImageContainers directly. r=jrmuizel 2017-10-30 13:10:29 -04:00
Andrew Osmond c38ef911b1 Bug 1331944 - Part 5. Integrate SharedSurfacesParent with the WebRender texture cache. r=jrmuizel 2017-10-30 13:10:29 -04:00
Andrew Osmond d9e413fa5a Bug 1331944 - Part 2. Add SharedSurfacesParent/Child to manage shared surfaces. r=jrmuizel 2017-10-30 13:10:29 -04:00
Andrew Osmond b8f42d8fa2 Bug 1331944 - Part 1. Add SourceSurfaceSharedDataWrapper and SourceSurfaceSharedData::HandleLock. r=jrmuizel 2017-10-30 13:10:28 -04:00
Jeff Gilbert 4f2cae0384 Bug 1395497 - Add AndroidSurfaceTexture support to GLBlitHelper. - r=snorp
MozReview-Commit-ID: JttqOoDCE4O
2017-10-30 10:58:56 -05:00
James Willcox 1ee57ae7a7 Bug 1395497 - Create SurfaceTexture in detached state, attach on first use r=jgilbert
MozReview-Commit-ID: HfkEUH9aiBo
2017-10-30 10:58:56 -05:00
Ryan Hunt 32261e72c6 Be sure to invalidate the buffer when content changes and we cannot reuse the buffer. (bug 1412150, r=nical)
Even if we cannot reuse the back buffer, we still use it to initialize the new back buffer.
The correct condition for detecting changes to buffer mode should only care if there is a
buffer, not if we decided to reuse it.

If the buffer mode has changed to component alpha, we need to invalidate and repaint everything
because we won't be able to copy over content to the new buffer correctly.

I believe this is a regression from the refactoring that created this function from
RotatedContentBuffer::BeginPaint.

MozReview-Commit-ID: H9G7GxqekLt

--HG--
extra : rebase_source : afb3321694ce3f1b54ad4dce28b4a7c7c7b47904
extra : amend_source : fdef1994514fcc9b9f2e952767a785841e9ddda0
extra : histedit_source : 3e8324255f516094c242ab3ec0688d2285c85a99
2017-10-28 15:21:13 -05:00
Jamie Nicol 21b5b6db95 Bug 1092294 - Use SurfaceTextures for painted content on android (preffed off). r=nical,snorp
Add a new TextureClientData type, AndroidNativeWindowTextureData,
backed by a SurfaceTexture in single-buffer mode. It uses the
NativeWindow API, which provides producer-side access to the buffer.
This provides a DrawTarget which can be used to paint directly in to
the SurfaceTexture, which can then be composited using a SurfaceTextureHost.

Due to API restrictions it is not possible to read from a NativeWindow
while the corresponding SurfaceTexture has ownership of the
buffer. TiledContentClient now handles that by painting the additional
region that it cannot copy from the front buffer, if required.

MozReview-Commit-ID: 1NZq6MQqwFq

--HG--
extra : rebase_source : 9d1db721d4892f3df033d43127489a85421e8863
2017-10-28 11:59:58 +01:00
Ethan Lin a20e5ebfaa Bug 1407938 - Part2. Extract paint function for filter and svg wrapper. r=jrmuizel
MozReview-Commit-ID: CQpBdZapFH2

--HG--
extra : rebase_source : 1741e12c9f09596c27219ca2b3ce5c3923145593
2017-10-16 16:26:15 +08:00
Ethan Lin 1da48a5cc4 Bug 1407938 - Part1. Add nsDisplaySVGWrapper for webrender as a fallback display item. r=jrmuizel
MozReview-Commit-ID: LBjrqvPziCJ

--HG--
extra : rebase_source : 4f48e0c57a7170bd1d6e97cc6b426aa0cf81be4b
2017-10-16 15:47:46 +08:00
Daniel Holbert 126bd9e1a4 Bug 1412427 part 8: (automated patch) Switch a bunch of C++ files in gfx to use our standard mode lines. r=jrmuizel
This patch was generated automatically by the "modeline.py" script, available
here: https://github.com/amccreight/moz-source-tools/blob/master/modeline.py

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

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

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

MozReview-Commit-ID: 77D61xpSmIl

--HG--
extra : rebase_source : c6162fa3cf539a07177a19838324bf368faa162b
2017-10-27 16:10:06 -07:00
Daniel Holbert de4b2b1c8b Bug 1412427 part 7: Manually fix up a few non-standard quirks in mode lines & MPL text, in gfx source files. r=jrmuizel
MozReview-Commit-ID: JgK3UhG20kn

--HG--
extra : rebase_source : 2677c73948463f84eeafc4895697dbdcd5fccae4
2017-10-27 15:55:40 -07:00
Daniel Holbert 3b352c7239 Bug 1412427 part 6: Remove stray "//" prefix before first line of MPL boilerplate comment, in some gfx source files. r=jrmuizel
This patch was automatically generated. I found the files to be fixed in this
patch with the following command:
grep -r "//  \* This Source Code" gfx

...and then I modified each of these files with the following script
(where $1 is the filename to be modified):
####
old="//  \* This Source Code Form is subject to the terms of the Mozilla Public"
new=" \* This Source Code Form is subject to the terms of the Mozilla Public"
sed -i s%"^$old"%"$new"% $1
####

MozReview-Commit-ID: Ihx0EAOkT2g

--HG--
extra : rebase_source : 4dc97f234495e3ec1f4904e91d43d00fd3810626
2017-10-27 15:55:38 -07:00
Daniel Holbert ecf5ee687e Bug 1412427 part 4: Indent under-indented MPL boilerplate comments by 1 space, for consistency & alignment. (whitespace-only) r=jrmuizel
This patch was automatically generated. I found the files to be fixed in this
patch with the following command:
grep -r "^\* This Source Code" gfx

...and then I modified each of these files with the following script
(where $1 is the filename to be modified):
###
line1="\* This Source Code Form is subject to the terms of the Mozilla Public"
line2="\* License, v\. 2\.0\. If a copy of the MPL was not distributed with this"
line3="\* file, You can obtain one at http://mozilla\.org/MPL/2\.0/\. \*/"

# Insert 1 space at beginning:
sed -i s%"^$line1"%" $line1"% $1
sed -i s%"^$line2"%" $line2"% $1
sed -i s%"^$line3"%" $line3"% $1
###

MozReview-Commit-ID: HXBMrfnhlVr

--HG--
extra : rebase_source : de4c78563711f8366e2978c5199a5041875fbe38
2017-10-27 15:55:37 -07:00
Daniel Holbert 0aa7ac8984 Bug 1412427 part 2: Move vim mode line below emacs mode line in a few gfx files, for consistency. r=jrmuizel
This patch doesn't modify the mode lines at all -- it just swaps their order,
and makes each one its own C++ comment, separate from the MPL boilerplate
comment.

MozReview-Commit-ID: BEZJVj2sMuK

--HG--
extra : rebase_source : 9e0946c8a8d0b67c11b5932b9d1e51e0e6e8ebef
2017-10-27 15:55:37 -07:00
Daniel Holbert 976e9f7e7f Bug 1412427 part 1: Add standard mode line & MPL boilerplate to a few gfx C++ files that are missing it entirely. r=jrmuizel
I copied the boilerplate comment directly from the Coding Style MDN page:
https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Coding_Style#Mode_Line

MozReview-Commit-ID: 8rO6SfBIaRl

--HG--
extra : rebase_source : 90093621cbaa2a62b19e22b0eacad600fc586560
2017-10-27 15:55:37 -07:00
Coroiu Cristina 9ca76dcb7a Backed out changeset b7a07167905c::2932c914e223 (bug 1406327) for failing in dom/vr/test/mochitest/test_vrController_displayId.html r=backout a=backout on a CLOSED TREE
Backed out changeset 2932c914e223 (bug 1406327)
Backed out changeset cfbc6262a064 (bug 1406327)
Backed out changeset b7a07167905c (bug 1406327)
2017-10-30 14:51:52 +02:00
Coroiu Cristina de62a69e14 Merge inbound to mozilla-central r=merge a=merge 2017-10-30 12:16:47 +02:00
JerryShih 5b15c33523 Bug 1399389 - redirect the warn/error message to gfx_critical_error/note in WR. r=kvark
MozReview-Commit-ID: Fxkz3Fq96Tb
2017-10-30 11:31:38 +08:00
Kartikaya Gupta e943be52e0 Bug 1413229 - Stop calling CreateWebRenderCommands for event regions types. r=jrmuizel
These items don't paint anything and are handled separately, so we don't need
to call CreateWebRenderCommands for them. We could just implement
CreateWebRenderCommands for the item and have it return true unconditionally,
but it's still an extra virtual call. Plus there's existing code in
WebRenderCommandBuilder that's conditioned specifically for event regions so
I prefer keeping all the conditioned code together.

MozReview-Commit-ID: 5kTuv7qgiKU

--HG--
extra : rebase_source : 8bd1a3fdf6711d06ff7523a25324da3a170215a3
2017-10-31 12:07:23 -04:00
sotaro 23069babc9 Bug 1401609 - Add UpdateWebRenderCanvasData() to handle CanvasRenderer re-creation r=jrmuizel,mstange 2017-10-28 19:07:27 +09:00
Sebastian Hengst 831f2ed98f merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: oIdBL7fmlE
2017-10-28 10:31:58 +02:00
sotaro 4461b5e90f Bug 1408573 - Change buffer allocation to fallible r=nical 2017-10-28 07:30:13 +09:00
Jeff Muizelaar ed62b1d4a1 Bug 1380014. Share fonts with WebRender. r=lsalzman
This changes the serialization format a little bit.
We now have an index at the end of the blob. This
is currently used to store a list of the used font keys.
In the future we'll add rects and can use it for invalidation.
2017-10-27 18:21:27 -04:00
Jeff Muizelaar 2922532654 Bug 1380014. Expose GetFontKeyForUnscaledFont. r=lsalzman
We'll use this to share fonts with BlobImages
2017-10-27 18:21:25 -04:00
sotaro 9ddfb11820 Bug 1412246 - Fix memory leak with WebRenderLayerManager::EndEmptyTransaction() r=nical 2017-10-28 06:54:56 +09:00
Kartikaya Gupta e7b42ecace Bug 1411249 - Handle yet more clipping cases. r=mstange
This extends the fix in bug 1373802 to account for extra levels of
display item nesting. If those extra intermediate display items don't
push any clips we still want to pick up the ClipAndScroll from the
enclosing ancestor that has it.

MozReview-Commit-ID: AmxRz4fBKnX

--HG--
extra : rebase_source : ae12a9f797ab201169ff199d0d42a29df51ee1cb
2017-10-27 13:22:16 -04:00
Kartikaya Gupta 3d6ab7288b Bug 1373802 - Handle more clipping cases. r=mstange
We already support cases where we have scrolling clips applied to fixed
items. However if we had to build nested clips inside those items, then
those nested clips would not properly inherit from the scrolling clips.
This patch addresses that case.

MozReview-Commit-ID: CWp1x0EsyaP

--HG--
extra : rebase_source : f8c80ace2da39edebaabd5339670a68038a18489
2017-10-27 11:41:37 -04:00
Kartikaya Gupta b7e231bc45 Bug 1410777 - Force a full transaction for WR when the window overlay changes. r=mstange
The window buttons are drawn as part of the AddWindowOverlayWebRenderCommands
function which is invoked in the full-transaction codepath. It should be possible
to have the empty transaction codepath simply update the image (without building
a full WR display list) and do a recomposite. That would be more performant but
it requires some plumbing to build and ship across a IpcResourceUpdateQueue on
empty transactions.

MozReview-Commit-ID: 2Mrb0wELD6E

--HG--
extra : rebase_source : 9a94c32f94403050835bf3445176f4fe2c1579fa
2017-10-26 14:17:19 -04:00
Kartikaya Gupta 75717cb048 Bug 1410777 - Remove unused function and dead code left over from the layers-full WR days. r=mstange
This is functionally unrelated to the bug but I noticed it while fiddling with
the code, and the lines affected are kind of intertwined with the next patch so
I'm just doing the code removal as part of this bug.

MozReview-Commit-ID: CwmluhyCdbR

--HG--
extra : rebase_source : 0a86ba7299f63587b77c44fadc804e34ada5a474
2017-10-26 14:17:18 -04:00
Boris Chiou 0576efed8c Bug 1340005 - Part 7: Switch compositor animations to Servo backend for desktop. r=birtles,hiro,nical
We want to always use Servo animation backend on the compositor.
However, Android doesn't support Stylo now, so add a defined flag for it.

MozReview-Commit-ID: 63MnTBnq6yv

--HG--
extra : rebase_source : dce46737f81e4e217e9fd67b6bec722994dca6a2
2017-10-27 21:13:27 +02:00
Boris Chiou 3788926119 Bug 1340005 - Part 6: Move AppendTransformFunction into AnimationValue struct. r=birtles
MozReview-Commit-ID: KhjKXxkllEF

--HG--
extra : rebase_source : 6f22a5f0a90f3f3d160f64c67e6fd6d04a2c1441
2017-10-17 13:11:19 +08:00
Boris Chiou 387cd4d8a1 Bug 1340005 - Part 5: Implement SampleValue for Servo backend. r=birtles
Use the new added FFI, Servo_ComposeAnimationSegment, to compose an
animation segment from Servo backend on the compositor.

MozReview-Commit-ID: LNgpCSIlDl9

--HG--
extra : rebase_source : 5b5c145fae877b4f4b01ea54259737dc9dad2951
2017-10-27 21:09:11 +02:00
Boris Chiou 0129bb4f52 Bug 1340005 - Part 4: Retrieve transform list from AnimationValue. r=birtles
MozReview-Commit-ID: 82NAOBV2rEl

--HG--
extra : rebase_source : 073ff742dcea4573febeec3b57c60b0f1f5736e2
2017-09-25 14:25:43 +08:00
Boris Chiou 743614effe Bug 1340005 - Part 3: Use AnimationValue on the compositor thread. r=birtles
MozReview-Commit-ID: CtnDLsdcr9x

--HG--
extra : rebase_source : 3d4a0f40e2f522471555c04c88474cb08e082851
2017-09-21 17:01:48 +08:00
Boris Chiou 7086921688 Bug 1340005 - Part 2: Implement AnimationValue::Transform. r=birtles
MozReview-Commit-ID: BDKcpDIM9nb

--HG--
extra : rebase_source : 43a5e7f053d746198f422487f7e19f535ccd9dc5
2017-10-27 21:06:30 +02:00
Boris Chiou 701609334e Bug 1340005 - Part 1: Implement AnimationValue::Opacity. r=birtles
We will use Servo backend on the compositor, so implement this for opacity.

MozReview-Commit-ID: BeWR2nBSbjb

--HG--
extra : rebase_source : eb5db3cf04640a83f13857984e792a949f26bcc7
2017-10-27 21:04:52 +02:00
Sebastian Hengst 443416f881 Merge mozilla-central to autoland. r=merge a=merge 2017-10-26 00:39:55 +02:00
Kartikaya Gupta cf3b87c06e Bug 1410527 - Update how we tell WR about position:sticky elements. r=mstange
My original understanding of the API was flawed, and so while I had
position:sticky working in some cases it didn't work properly in a lot
of other cases. This patch corrects the usage of the API to match what
WR is expecting and fixes a lot of test cases.

MozReview-Commit-ID: AdMux19Fk9U

--HG--
extra : rebase_source : e7f970a710b2079501a91eeeac8c292b603210dc
2017-10-25 15:21:32 -04:00
Kartikaya Gupta bec5f23434 Bug 1411238 - Make APZ test logging work in layers-free WR mode. r=botond
Most of this change is just fiddling with function signatures so that they take
a LayerManager* instead of a Layer* (or in some cases, both). This allows
the WebRender codepaths to pass a WebRenderLayerManager* instead of having to
produce a Layer* which it doesn't have.

MozReview-Commit-ID: Fb0C8OUVDin

--HG--
extra : rebase_source : e4c3324cfa20c295db85d5c09df8d8d77865bb6a
2017-10-25 13:22:04 -04:00
Kartikaya Gupta 4c7c7873e4 Bug 1411238 - Make OMTA queries work with layers-free webrender. r=mtseng
MozReview-Commit-ID: Jq57GtjNO3E

--HG--
extra : rebase_source : 15c2e3a4acbc61c60827bf1748ef691f2275fb66
2017-10-25 11:14:41 -04:00
Attila Craciun 7bcf901c3b Merge inbound to mozilla-central r=merge a=merge 2017-10-25 12:30:28 +03:00
Jeff Muizelaar faa4cd1783 Bug 1410550. Allow updating a dirty rect of a blob image. r=kats 2017-10-24 18:11:04 -04:00
Kartikaya Gupta d37fe26642 Bug 1405359 - Add some logging code in ScrollingLayersHelper. r=jrmuizel
MozReview-Commit-ID: Lb4UeUxO5HL

--HG--
extra : rebase_source : e5e8c58380055693664bb1a5241bab4d803dfdab
2017-10-24 18:47:24 -04:00
Kartikaya Gupta 4891a7a56f Bug 1405359 - Avoid pushing and popping identical clip stacks for adjacent display items. r=jrmuizel
Instead of unconditionally pushing and popping clips per display item,
this patch changes things so that for each recursive display list, we
create an ItemClips struct. We push this onto the stack when we enter
the display list, and pop it off at the end. For each display item, we
check to see if the clips would actually change compared to the previous
display item, and only do the pop/repush in that case.

MozReview-Commit-ID: J0MCc2V9hWT

--HG--
extra : rebase_source : 8617cfaa7391457867f01c1b619cb871a21bf3f5
2017-10-24 18:47:17 -04:00
Kartikaya Gupta 746bb09454 Bug 1405359 - Make ScrollingLayersHelper a more stateful class. r=jrmuizel
This makes ScrollingLayersHelper a non-RAII type class, and instead adds
methods to notify it of when we start processing a new transaction or a
new display item within the transaction. This patch has no functional
changes, it's non-obvious refactoring.

MozReview-Commit-ID: GEZzCGbVqB1

--HG--
extra : rebase_source : dd4fab7f34da7c5465ba474db670cf583e8dadf4
2017-10-24 18:46:44 -04:00
Kartikaya Gupta 4aa9c4885f Bug 1405359 - Replace the mPushed* variables with a more encapsulated struct. r=jrmuizel
Storing the per-item clip state in a struct like this will allow us to
easily compare the desired clip state across items, so we can avoid
doing unnecessary work when going from one item to the next. This patch
has no functional changes, it's just refactoring.

MozReview-Commit-ID: GX2FX4YDusO

--HG--
extra : rebase_source : 06d7bae5cbae99d2987881f26f7ebd26965c1799
2017-10-24 18:45:28 -04:00
Kartikaya Gupta ead1f0c769 Bug 1405359 - Stop passing around the clip id cache in all the functions. r=jrmuizel
Instead just keep a ref to it as a member variable. No functional
change.

MozReview-Commit-ID: 9jSBdZRIGuV

--HG--
extra : rebase_source : cd1b2f500e9a833f7d42bce53bdaec2118e0d4c3
2017-10-24 18:45:04 -04:00
Sebastian Hengst 6231274042 Backed out changeset cb49e178390c (bug 1405359) for Windows build bustage in ScrollingLayersHelper.h. r=backout on a CLOSED TREE
--HG--
extra : amend_source : 81b0a5bd94ad8e5d83e455e5a226a578b7060dc4
2017-10-25 00:17:01 +02:00
Sebastian Hengst 1d775e1d29 Backed out changeset f6ce05f8e699 (bug 1405359) 2017-10-25 00:16:55 +02:00
Sebastian Hengst c10fc4a634 Backed out changeset 154c415885b8 (bug 1405359) 2017-10-25 00:16:49 +02:00
Sebastian Hengst eecd8d4a11 Backed out changeset 988d6a397ea8 (bug 1405359) 2017-10-25 00:16:43 +02:00
Sebastian Hengst 5a6323a88c Backed out changeset 1593dfc4cf04 (bug 1405359) 2017-10-25 00:16:37 +02:00
Kartikaya Gupta 0950c9499b Bug 1405359 - Add some logging code in ScrollingLayersHelper. r=jrmuizel
MozReview-Commit-ID: 3OLNPHlkO9M

--HG--
extra : rebase_source : dcfbae96dc8de0a5d726140a05b5807e2b03412d
2017-10-24 16:15:00 -04:00
Kartikaya Gupta 3bc78496af Bug 1405359 - Avoid pushing and popping identical clip stacks for adjacent display items. r=jrmuizel
Instead of unconditionally pushing and popping clips per display item,
this patch changes things so that for each recursive display list, we
create an ItemClips struct. We push this onto the stack when we enter
the display list, and pop it off at the end. For each display item, we
check to see if the clips would actually change compared to the previous
display item, and only do the pop/repush in that case.

MozReview-Commit-ID: GadIp2J8TrA

--HG--
extra : rebase_source : ba64c6b4659b8e51cab19b807088b9a50d71b85a
2017-10-24 16:15:00 -04:00
Kartikaya Gupta 1ef110fd03 Bug 1405359 - Make ScrollingLayersHelper a more stateful class. r=jrmuizel
This makes ScrollingLayersHelper a non-RAII type class, and instead adds
methods to notify it of when we start processing a new transaction or a
new display item within the transaction. This patch has no functional
changes, it's non-obvious refactoring.

MozReview-Commit-ID: 3yq9sPiHMge

--HG--
extra : rebase_source : 286423f56de59211e320f015cb1004a1e98332b8
2017-10-24 16:15:00 -04:00
Kartikaya Gupta 7feb6820bd Bug 1405359 - Replace the mPushed* variables with a more encapsulated struct. r=jrmuizel
Storing the per-item clip state in a struct like this will allow us to
easily compare the desired clip state across items, so we can avoid
doing unnecessary work when going from one item to the next. This patch
has no functional changes, it's just refactoring.

MozReview-Commit-ID: 49B6hmsWZ4V

--HG--
extra : rebase_source : 8ac4bbf039f81bc2d26e92924ed041fa3d18e5ba
2017-10-24 16:15:00 -04:00
Kartikaya Gupta b43a3f46dc Bug 1405359 - Stop passing around the clip id cache in all the functions. r=jrmuizel
Instead just keep a ref to it as a member variable. No functional
change.

MozReview-Commit-ID: 5fccUlSifsA

--HG--
extra : rebase_source : a14672f926c383354db76e553ae23613fe4a432a
2017-10-24 16:14:59 -04:00
Kartikaya Gupta 54a6b4655a Bug 1409446 - Remove old code that is now unused. r=mstange
MozReview-Commit-ID: KEtcbIGTrn3

--HG--
extra : rebase_source : dd2a435cab15930b7d5277d1764eddefd4cca298
2017-10-24 15:46:00 -04:00
Kartikaya Gupta 1dc275308d Bug 1409446 - Switch over to the new code. r=mstange
One of the sticky-pos tests was only passing because of two wrongs that
cancelled each other out in the old code. Specifically, instead of
defining a nested clip with the sticky clip as an ancestor, the clip was being
defined with the root ASR as an ancestor. Both resulted in the nested
clip not scrolling with the actual scrolling scrollframe and so the test
was passing.

The new code changes things so that the nested clip is defined with the
actual scrolling scrollframe as the ancestor, causing the reftest to fail.
Fixing the clip ancestry is not hard but it reveals other problems so
so I'm deferring that to a follow-up bug.

MozReview-Commit-ID: DldAKi1AP4l

--HG--
extra : rebase_source : a448e06fd26fff21bbc4a6f50e04dbbdb427298c
2017-10-24 15:46:00 -04:00
Kartikaya Gupta 83ac5fdb91 Bug 1409446 - Handle nested display item scenarios. r=mstange
This handles some cases where a nested display item's clip chain
implicitly extends from the wrapper item's clip chain.

MozReview-Commit-ID: DmghxOWi81K

--HG--
extra : rebase_source : 8ec95df64fed247650baf8f5e0c868d1934aa6bc
2017-10-24 15:46:00 -04:00
Kartikaya Gupta 4fcc51960c Bug 1409446 - Work around the dual-ancestor case that WR doesn't handle yet. r=mstange
Bug 1409442 is tracking a change that will allow scroll layers to have
multiple ancestors. Without that, there are cases we cannot properly
handle, and so we need to ignore a clip in those scenarios. This patch
makes sure we do that instead of crashing.

MozReview-Commit-ID: 7AU4uyzT6if

--HG--
extra : rebase_source : d483c2a7ecff5cd488a53fa5e6b6da55cc3a1e29
2017-10-24 15:45:59 -04:00
Kartikaya Gupta 9b3a9d0d62 Bug 1409446 - Deal with scenario of two interchangeable DisplayItemClipChain objects causing a cache miss. r=mstange
MozReview-Commit-ID: 4FQvOmMUUKH

--HG--
extra : rebase_source : 9b497dc5f97345aee55f8dbf25d1db926c93c68f
2017-10-24 15:45:59 -04:00
Kartikaya Gupta fdefb982b7 Bug 1409446 - Properly handle out-of-band clips in the new ScrollingLayersHelper code. r=mstange
When display items (such as mask items) push an out-of-band clip, we
can't use clip ids from, or update clip ids into, the cache. We also
need to ensure we take these out-of-band clips into account when
determining the parent for a new clip we are going to define.

MozReview-Commit-ID: GcUI2Hf6SLB

--HG--
extra : rebase_source : 512be5a6998b9c1d6db9d8c550231f0883d721c9
2017-10-24 15:45:59 -04:00
Kartikaya Gupta 54e570d116 Bug 1409446 - Write the new recursive method to define clip chains. r=mstange
This code is more straightforward in its recursion than the old code,
and provides a relatively clean way to explicitly pass the desired
parent when defining a new clip or scroll layer.

Refer to the documentation in the patch for more details.

Note that this patch provides the basic recursive algorithm to define
the clips and scroll layers, although it omits some of the complicating
edge cases which will be added in later patches. The new code is not
invoked from anywhere until all the edge case handling has been done.

MozReview-Commit-ID: 7z51Kd7LlPU

--HG--
extra : rebase_source : 491efac9282a7379f7977a1bc0205ac70e356c3c
2017-10-24 15:45:58 -04:00
Kartikaya Gupta 2878061467 Bug 1409446 - Wire up the DefineClip and DefineScrollLayer APIs to allow specifying ancestry. r=jrmuizel
The APIs now allow providing the parent clip or scroll info explicitly
instead of having to push it on the stack. For now we just pass
Nothing() to preserve the existing behaviour, so this change is a
functinoal no-op.

MozReview-Commit-ID: dtNamN595

--HG--
extra : rebase_source : 3b6bd03b919bd31cd89e3f82283cb962f8f6abc5
2017-10-24 15:45:57 -04:00
Sebastian Hengst 31bf3a1a42 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 4Lk5P5UYmTe
2017-10-24 11:52:35 +02:00
Sebastian Hengst b550a1e851 Backed out changeset 45596e6d2e2f (bug 1409871) on request from rhunt for causing black context menus on Windows. r=backout
--HG--
extra : amend_source : 4258791f4f66808f5faa888b5f5cb4a20ce1ce38
2017-10-23 23:44:15 +02:00
Sebastian Hengst 6eaee8e36d Backed out changeset 0c763c30594d (bug 1409871) 2017-10-23 23:44:09 +02:00
Sebastian Hengst 66bc17f938 Backed out changeset a9f8832adcb4 (bug 1409871) 2017-10-23 23:44:04 +02:00
Sebastian Hengst 1bf364d760 Backed out changeset 940f2c9adec7 (bug 1409871) 2017-10-23 23:43:58 +02:00
Sebastian Hengst 7e404cb4ff Backed out changeset 92d59687d486 (bug 1409871) 2017-10-23 23:43:52 +02:00
Sebastian Hengst 5c130ea67a Backed out changeset d3d5d723a5df (bug 1409871) 2017-10-23 23:43:47 +02:00
Sebastian Hengst 9b3127da10 Backed out changeset 9392889a01d0 (bug 1409871) 2017-10-23 23:43:41 +02:00
Sebastian Hengst 2c1fe21aa6 Backed out changeset d57058c8c12e (bug 1409871) 2017-10-23 23:43:36 +02:00
Sebastian Hengst 2aaf1b71ad Backed out changeset cce97a15c945 (bug 1409871) 2017-10-23 23:43:30 +02:00
Sebastian Hengst b4aa3847a7 Backed out changeset 0c1485b37ae9 (bug 1409871) 2017-10-23 23:43:24 +02:00
Sebastian Hengst 774b6c4844 Backed out changeset ad4b3448dc2e (bug 1409871) 2017-10-23 23:43:19 +02:00
Sebastian Hengst 7c964d3c5d Backed out changeset 7b7bcdf87539 (bug 1409871) 2017-10-23 23:43:13 +02:00
Sebastian Hengst 192e66cd22 Backed out changeset 2d9d7435eb63 (bug 1409871) 2017-10-23 23:43:07 +02:00
Sebastian Hengst 5609b36c6c Backed out changeset c57db572271d (bug 1409871) 2017-10-23 23:43:02 +02:00
Sebastian Hengst 12e38cbd80 Backed out changeset 482309a25d13 (bug 1409871) 2017-10-23 23:42:56 +02:00
Sebastian Hengst 4922cbc9ec Backed out changeset 7e2fc94f5be9 (bug 1409871) 2017-10-23 23:42:51 +02:00
Sebastian Hengst 5e15045655 Backed out changeset 466f20f34a13 (bug 1409871) 2017-10-23 23:42:45 +02:00
Sebastian Hengst 86786de5cd Backed out changeset 352a6f520d27 (bug 1409871) 2017-10-23 23:42:39 +02:00
Sebastian Hengst dcab5a94a3 Backed out changeset 56fe4c3c3b04 (bug 1409871) 2017-10-23 23:42:34 +02:00
Sebastian Hengst 116479cd48 Backed out changeset a4e35be8cf4c (bug 1409871) 2017-10-23 23:42:28 +02:00
Sebastian Hengst 098b3d9efc Backed out changeset f68539cff202 (bug 1409871) 2017-10-23 23:42:22 +02:00
Sebastian Hengst 01a8d04d5d Backed out changeset cd5691720816 (bug 1409871) 2017-10-23 23:42:17 +02:00
Milan Sreckovic 825888a9ed Bug 1387799 - Keep an extra reference. r=jrmuizel 2017-10-23 16:22:47 -04:00
Andrew Osmond 63505fc609 Bug 1399453 - Temporarily annotate crash reports with compositor thread owners. r=dvander
From the crashes associated with bug 1389021, we know that some
compositor thread IPDL owners are not being cleaned up properly. We do
not know which protocols are causing the problem, so we temporarily will
annotate the logs with the ownership status. This should be limited to
under a dozen instances of the protocols.

This change will be backed out after a few builds are produced with it
and we see the first crash reports with the relevant data.
2017-10-23 14:11:02 -04:00
Sebastian Hengst f44d2aa184 Backed out changeset dc9d9c01080a (bug 1399453) for static bustage at layers/CompositorThread.h:68: bad implicit conversion constructor for 'CompositorThreadHolderDebug'. r=backout on a CLOSED TREE
--HG--
extra : amend_source : 653c00800bb4ed4800ed62fb9df5529ea9ecf48d
2017-10-23 18:26:14 +02:00
Andrew Osmond d4a18daeed Bug 1399453 - Temporarily annotate crash reports with compositor thread owners. r=dvander
From the crashes associated with bug 1389021, we know that some
compositor thread IPDL owners are not being cleaned up properly. We do
not know which protocols are causing the problem, so we temporarily will
annotate the logs with the ownership status. This should be limited to
under a dozen instances of the protocols.

This change will be backed out after a few builds are produced with it
and we see the first crash reports with the relevant data.
2017-10-23 11:31:02 -04:00
Ryan Hunt 061772f5fa Mark SourceRotatedBuffer methods as override to silence warnings (bug 1409871 part 22, r=nical)
MozReview-Commit-ID: 1xNF8sfXukg

--HG--
extra : rebase_source : 0f54ec0b15dcef474d06a44b38a91738f5643378
2017-10-20 16:32:39 -04:00
Ryan Hunt 7759c671b8 Add documentation for the new rotated buffer subclasses. (bug 1409871 part 21, r=nical)
MozReview-Commit-ID: E2XejdUju9Q

--HG--
extra : rebase_source : f7522aa50dee93575f86ac20c5a3c601a36fd9d9
2017-10-20 12:48:20 -04:00
Ryan Hunt 345dd0aff3 Be sure to unlock the old back buffer before we release it. (bug 1409871 part 20, r=nical)
MozReview-Commit-ID: HR9EiYrDeqT

--HG--
extra : rebase_source : ac39f463009563d1849e6eaa4e6fd27611bc6001
2017-10-20 12:28:41 -04:00
Ryan Hunt f3ade1b01c Remove mInAsyncPaint and move locking new back buffer into BeginPaint (bug 1409871 part 19, r=nical)
mInAsyncPaint is only needed because the code using CreateBuffer expects the
buffer to be locked when it is returned. This isn't necessary because we can
now lock in BeginPaint.

MozReview-Commit-ID: 8WazvBKMbvb

--HG--
extra : rebase_source : ec59ca27e88257bd8e6d384685bee8227f545b31
2017-10-18 15:31:15 -04:00
Ryan Hunt 04ee50acb9 Remove BeginPaintBuffer (bug 1409871 part 18, r=nical)
Now that BeginPaintBuffer and BeginPaint are both implemented by content client,
I think it makes sense to just merge them into one method. This simplifies the
interface clients have to use.

MozReview-Commit-ID: 8bjH6WcpZS9

--HG--
extra : rebase_source : c2aad6cd9d85f7dd09652ee253683f03825e95c6
2017-10-18 15:20:14 -04:00
Ryan Hunt 23a0d9c85e Clean up some methods on ContentClient (bug 1409871 part 17, r=nical)
This commit does some more cleanup on the content client class hierarchy.
Some methods were virtual or instance methods when they didn't need to be.

MozReview-Commit-ID: 2y2D3zYtYvM

--HG--
extra : rebase_source : ebd137e4a1ee8eba10467e987bd2d91ea44ca5a2
2017-10-18 14:54:26 -04:00
Ryan Hunt 7f1dd327e3 Fix PrepareDrawTargetForPainting (bug 1409871 part 16, r=dvander)
CapturedPaintState::mTarget is actually a dual draw target to the black and
white draw targets, so this code will have the white draw target cleared black
and then white. This isn't incorrect, it's just wasteful.

MozReview-Commit-ID: ItgiSmegPK6

--HG--
extra : rebase_source : 9c3c88f463087a75383f1940ddeef6bb68ec35c4
2017-10-18 14:46:54 -04:00
Ryan Hunt eba630e380 Use a rect instead of a region for UpdateDestinationFrom (bug 1409871 part 15, r=nical)
UpdateDestinationFrom actually only uses a rect, so it's best to not be
misleading and force the clients of it to do the conversion.

MozReview-Commit-ID: EsUv3apqnku

--HG--
extra : rebase_source : 6ee0f7454ac2ea21618a62a9ab906857384d0fdf
2017-10-18 14:35:18 -04:00
Ryan Hunt 537500c013 Cleanup rotated buffer declarations and add some documentation. (bug 1409871 part 14, r=nical)
This organizes the rotated buffer declarations and adds some documentation.

MozReview-Commit-ID: 5r24RiUMM6o

--HG--
extra : rebase_source : 28045e2d6b19db1f31796b7119717d417ee2dd34
2017-10-18 14:10:56 -04:00
Ryan Hunt fb77e4394b Update comments for ContentClient (bug 1409871 part 13, r=nical)
This could be a part of the previous commit, but I omitted it to keep the size
down. Just some updates to comments and documentation.

MozReview-Commit-ID: HkCOSIQhBNv

--HG--
extra : rebase_source : 665b6bbe18dcd409809d33e1be37a56c0dc304d7
2017-10-18 13:42:19 -04:00
Ryan Hunt 6cd0ba94af Kill RotatedContentBuffer (bug 1409871 part 12, r=nical)
This commit is the guts of the refactoring.

This commit removes rotated content buffer, and moves the necessary
functionality to content client. All content clients now do not inherit from
rotated content buffer, but contain a refptr to a rotated buffer.

For the basic content client, this is a DrawTargetRotatedBuffer.
For the remote content client, this is a RemoteRotatedBuffer.
The double buffered content client contains an additional RemoteRotatedBuffer
for the front buffer.

Each derived class of content client only needs to implement a method to
create its own rotated buffer. The rest is handled by the base content
client. The remote content clients still override some additional methods
to sync buffers and do IPC.

MozReview-Commit-ID: B9vcSi8UYhm

--HG--
extra : rebase_source : a727d5548b0167eb12676837b173355eb0dd38a5
2017-10-16 19:45:11 -04:00
Ryan Hunt 2c54579797 Move buffer related decisions into their own function. (bug 1409871 part 11, r=nical)
This commit splits off the part of BeginPaint that makes the decision about
whether to keep the buffer, its surface type, its content type, and the regions
to invalidate or paint.

MozReview-Commit-ID: JcPlv8GiRpA

--HG--
extra : rebase_source : 73c2de46ac9e11437e6a52aadd1da56028a7d3ec
2017-10-12 19:52:29 -04:00
Ryan Hunt 273ecb795e Add RotatedBuffer::AdjustTo. (bug 1409871 part 10, r=nical)
This commit adds a method to rotated buffer to perform the adjusting to the new
destination rect, and potential unrotating that may need to happen. The goal of
this is to simplify and prepare BeginPaint to be moved to content client.

MozReview-Commit-ID: B4qeZqLjORR

--HG--
extra : rebase_source : 8ee7fb96ce8f1207b73027bb1d171dabd5b35788
2017-10-12 18:37:29 -04:00
Ryan Hunt 962f98cab9 Remove PaintState::mDidSelfCopy. (bug 1409871 part 9, r=nical)
Miscellaneous cleanup, PaintState doesn't need to know this as no one uses
this information outside of the content client classes.

MozReview-Commit-ID: 6K8LxEPvp4V

--HG--
extra : rebase_source : 931f7726d2f8f1f5ab32b5cf8f9030aa39a64bff
2017-10-12 17:24:50 -04:00
Ryan Hunt f5daa1eff3 Move mFrontAndBackBufferDiffer to ContentClientDoubleBuffered. (bug 1409871 part 8, r=nical)
Miscellaneous cleanup, ContentClientSingleBuffered doesn't need to track if
the front and back buffer differ.

MozReview-Commit-ID: IvAw0b92jsh

--HG--
extra : rebase_source : c6b2d91666338f1d222f783b7a14e9d3b0ad6802
2017-10-12 12:58:17 -04:00
Ryan Hunt 731b3dc042 Refactor copying from the old buffer to the new buffer to use RotatedBuffer. (bug 1409871 part 7, r=nical)
This commit refactors part of BeginPaint to treat the new and old back buffer's
as rotated buffers. The goal of this is to simplify and prepare this function to
be moved out of rotated content buffer.

MozReview-Commit-ID: 5iHeMbCWfpo

--HG--
extra : rebase_source : 232b699ca5d906e4784338914ebddd510730c379
2017-10-12 12:35:37 -04:00
Ryan Hunt fd9427a323 Add a DrawTargetRotatedBuffer. (bug 1409871 part 6, r=nical)
This adds a new implementation of rotated buffer, which is backed by draw
targets. This will be the rotated buffer that basic content clients use.

MozReview-Commit-ID: Knn79yEFnxN

--HG--
extra : rebase_source : 78201bbb31c76e2b8131d912600b55500ba4cbdb
2017-10-11 16:26:10 -04:00
Ryan Hunt bc88ed32b9 Use a RemoteRotatedBuffer for the front buffer of ContentClientDoubleBuffered. (bug 1409871 part 5, r=nical)
The front buffer for a double buffered content client is really just another
rotated buffer, so it can simplify the code to use the class we just added.
The goal is to have the back and the front buffer using remote rotated buffers,
but this is a good first step.

Note: The front buffer is represented as a Maybe<RemoteRotatedBuffer> in this
commit, but in the future it will be a RefPtr. That can't be done yet, because
rotated buffer can't implement refcounting in addition to compositable client.

MozReview-Commit-ID: Czk3otkf1pb

--HG--
extra : rebase_source : b7cc399643295bb63efa86739f3dae29d3375ae6
2017-10-11 15:22:57 -04:00
Ryan Hunt d7d2f8b642 Add a RemoteRotatedBuffer. (bug 1409871 part 4, r=nical)
This adds a new implementation of rotated buffer, which is backed by texture
clients. This will be the rotated buffer that remote content clients use.

MozReview-Commit-ID: 3Y776uk5mFG

--HG--
extra : rebase_source : 40acce3f4150c5f6f51bf73f0b3c7e974ed8fd72
2017-10-11 14:34:41 -04:00
Ryan Hunt cbde30661f Move DrawTo to RotatedBuffer. (bug 1409871 part 3, r=nical)
Similar to the previous patch, more functionality can be moved to rotated
buffer and out of rotated content client.

MozReview-Commit-ID: FNqfonyBBq9

--HG--
extra : rebase_source : fce8c6212321e6e25dc414c517a28e1e3c747c25
2017-10-11 15:31:20 -04:00
Ryan Hunt 568306b4d0 Move UpdateDestinationFrom to RotatedBuffer. (bug 1409871 part 2, r=nical)
UpdateDestinationFrom is a useful method for any rotated buffer. This will be
needed when content clients are no longer rotated buffers.

Note: EnsureBuffer and EnsureBufferOnWhite were moved out of
UpdateDestinationFrom because I'd like to kill those methods, and so the calls
were moved to all users of UpdateDestinationFrom.

MozReview-Commit-ID: 2e3HhUsZ6iw

--HG--
extra : rebase_source : dd8f5a52808924a64ea0eb17359b6b749426b64e
2017-10-11 13:40:16 -04:00
Ryan Hunt ee9531597a Remove ContentClientRemote. (bug 1409871 part 1, r=nical)
This class doesn't seem to be necessary and only complicates the class
hierarchy.

MozReview-Commit-ID: 6dRXce1vB9T

--HG--
extra : rebase_source : 71591b44c68f9c8b73c7aadb6be245caaec0fbb5
2017-10-11 12:43:39 -04:00
Morris Tseng f482bf5f38 Bug 1410359 - Remove unused css filter codes. r=kats
Some css filter codes only used in layers-full mode. Since layers-full
already removed, we can also remove those unused codes.

MozReview-Commit-ID: 8YrfOfuXHNt

--HG--
extra : rebase_source : e9475d9100fbc2e5b301833f31fde1db458117aa
2017-10-20 16:10:03 +08:00
Matt Woodrow ext:(%2C%20Miko%20Mynttinen%20%3Cmikokm%40gmail.com%3E%2C%20Timothy%20Nikkel%20%3Ctnikkel%40gmail.com%3E) e97adfa0ce Bug 1404181 - Part 27: Add some retained-dl debugging tools. r=mstange
MozReview-Commit-ID: EQO1lAbUnpY

--HG--
extra : rebase_source : a11bfd8055bd83e9215211a4e48d43735d7010ba
2017-10-21 16:54:24 +13:00
Francois Marier 7f48d0bdd3 Bug 1385461 - Upgrade to the latest version of the protobuf library. r=dimi,fitzgen,glandium,mattwoodrow,mossop
The tarball that was imported is the 3.4.1 release:

  https://github.com/google/protobuf/releases/tag/v3.4.1
  https://github.com/google/protobuf/releases/download/v3.4.1/protobuf-cpp-3.4.1.tar.gz

This drops all of the customizations that are no longer needed,
which includes a few issues that were fixed upstream:

- r512.patch from bug 892856:

    https://searchfox.org/mozilla-central/rev/bab9dbe9c4ef71f71fb07e53b701fb2dfde277d9/toolkit/components/protobuf/r512.patch
    b04e5cba35/src/google/protobuf/io/zero_copy_stream_impl.cc (L43)

- vs2013.patch, also from bug 892856:

    https://searchfox.org/mozilla-central/rev/bab9dbe9c4ef71f71fb07e53b701fb2dfde277d9/toolkit/components/protobuf/vs2013.patch
    b04e5cba35/src/google/protobuf/wire_format_lite_inl.h (L39)

- sparc64 fixes in m-c-changes.patch from bug 1275204:

    https://hg.mozilla.org/integration/mozilla-inbound/rev/21d692e82582
    b04e5cba35/src/google/protobuf/stubs/platform_macros.h (L68)

The LOGLEVEL_ERROR hack in m-c-changes.patch from bug 1024774 and
bug 1320179 was replaced by a NOGDI define in moz.build as suggested
by upstream:

    https://github.com/google/protobuf/pull/3745/files#r144915445

The other customizations that were dropped came from bug 1024774.

The patch for OpenBSD/32-bit will likely be fixed upstream in a
future release:

    https://github.com/google/protobuf/pull/3747#issuecomment-336581244

Upgrading the protobuf library also required re-generating all
of the existing .pb.h and pb.cc files (they are neither forward
nor backward-compatible) and making adjustments to the build
config to make it compile (and silence warnings).

text_format.cc can now be compiled as part of UNIFIED_SOURCES.

MozReview-Commit-ID: 7F2IqFmwQnN

--HG--
extra : rebase_source : b907a28a8063ecd82bb38530d309faafc7b83175
2017-10-18 15:02:05 -07:00
Francois Marier c5abf40a20 Bug 1385461 - Re-sync LayerScopePacket.proto with the generated files. r=mattwoodrow
This got out of sync in bug 1317862 and bug 1337130:

  https://hg.mozilla.org/mozilla-central/rev/f2d4190eaaf8
  https://hg.mozilla.org/mozilla-central/rev/48b29a84e4e5

MozReview-Commit-ID: H9PWK4O0GX

--HG--
extra : rebase_source : 346905f375b61af5c657c78b867710363b066102
2017-10-11 16:15:57 -07:00
Matt Woodrow ext:(%2C%20Miko%20Mynttinen%20%3Cmikokm%40gmail.com%3E%2C%20Timothy%20Nikkel%20%3Ctnikkel%40gmail.com%3E) 3fa03bb34e Bug 1404181 - Part 22: Make sure we mark frames as modified any time they change position or style data and make sure we don't accidentally mark the root as being modified when we don't need to. r=mstange
MozReview-Commit-ID: J5ov5cwvvrE

--HG--
extra : rebase_source : 4eadb82e5e0b3264cc7d6aeef2693ce8aea69b43
2017-09-29 10:51:49 +13:00
Sebastian Hengst 091894faea merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: JpMeK9OdQsz
2017-10-21 10:59:18 +02:00
Sebastian Hengst aa75559a2f merge mozilla-central to autoland. r=merge a=merge 2017-10-21 00:16:08 +02:00
Sebastian Hengst ad8006bcb6 Backed out changeset fd03410adaba (bug 1408781) for build bustage at gfx/layers/mlgpu/PaintedLayerMLGPU.h:62: 'SetRenderRegion' overrides a member function but is not marked 'override'. r=backout on a CLOSED TREE
--HG--
extra : amend_source : 6c4a95d8314f969e2b449381ae14378e9e6bd7a8
2017-10-20 20:52:56 +02:00
Sebastian Hengst 41d5742833 Backed out changeset 4d2c317e3936 (bug 1408781) 2017-10-20 20:52:50 +02:00
David Anderson adbf5d8b01 Cache invalidation properties after compositing, not before. (bug 1408781 part 2, r=mattwoodrow)
--HG--
extra : rebase_source : c9763856b7686253e15d9072d93ed787a79b50b0
2017-10-20 10:31:46 -07:00
David Anderson e5f304d59f Store the AL render region separately from the shadow visible region. (bug 1408781 part 1, r=mattwoodrow)
--HG--
extra : rebase_source : 14c97296ca7dbe638179476abbe3c8eada5e159a
2017-10-20 10:31:46 -07:00
Kartikaya Gupta b4862ba64a Bug 1402450 - Ensure the test properly delays until the content process receives the touch events. r=botond
It appears that in this case just waiting for the APZ flush to complete was
insufficient, probably because the APZ flush and touch inputs go via different
IPC channels and therefore do not provide ordering guarantees. So instead of
waiting for the APZ flush, let's just wait until the touchstart is received
in the content process and use that to resume the test.

MozReview-Commit-ID: AcPRhox1Xkg

--HG--
extra : rebase_source : be6653c7835d9a61bdc215266367adcc8adf8f0b
2017-10-20 13:23:20 -04:00
David Anderson 8cd7b1c9be Cache invalidation properties after compositing, not before. (bug 1408781 part 2, r=mattwoodrow) 2017-10-20 15:09:13 -07:00
David Anderson d2ae9a5558 Store the AL render region separately from the shadow visible region. (bug 1408781 part 1, r=mattwoodrow) 2017-10-20 15:09:12 -07:00
sotaro 62965ef405 Bug 1407069 - Do not hold external image in SetCurrentTextureHost if ImageHost is async. r=nical 2017-10-20 16:42:58 +02:00
Nicolas Silva e620af06b0 Bug 1407069 - Associate epochs to async image updates. r=sotaro 2017-10-20 16:42:53 +02:00
sotaro 8d85c3d52b Bug 1405952 - Remove PWebRenderBridge::SetDisplayListSync r=kats,kanru 2017-10-20 19:48:57 +09:00
Sebastian Hengst bc6dddb88b merge autoland to mozilla-central. r=merge a=merge
MozReview-Commit-ID: BY4c5BIOF81
2017-10-20 11:37:54 +02:00
Lee Salzman 6235863fa6 Bug 1408481 - pass AA via GlyphOptions to WR PushGlyphs. r=gankro
MozReview-Commit-ID: LVieyPaaouc
2017-10-19 22:54:28 -04:00
Botond Ballo 2c1a3530e6 Bug 1340415 - Ensure main-thread and async autoscrolling do not happen at the same time. r=kats
The two happening at the same time can lead to the APZ autoscroll being
cancelled due to APZ receiving a main-thread scroll offset update.

To achieve this:

  - The content process assumes APZ is handling the autoscroll until
    told otherwise.

  - If the parent process knows APZ won't handle an autoscroll, it
    tells the content process via its response to the Autoscroll:Start
    message. This covers all cases where APZ doesn't handle the
    autoscroll, except the case where APZCTreeManager itself rejects
    the autoscroll and it lives in the compositor process rather than
    the parent process.

  - If APZCTreeManager rejects an autoscroll and it lives in the
    compositor process, it sends an 'autoscroll-rejected-by-apz' message
    to the content process.

MozReview-Commit-ID: L62v4COai6W

--HG--
extra : rebase_source : bc4c6417e77461634263defb88e67ed5036c454e
2017-10-18 18:18:13 -04:00