Commit Graph

28354 Commits

Author SHA1 Message Date
Jonathan Kew
90bf3da506 Bug 1412090 - patch 1 - Wrap the font family record used to pass font info from chrome to content on macOS in a union, in preparation for using the same mechanism with a different type of font record on Linux. (No functional change here, just the added union type and some renamings from 'font family list' to 'font list' to be more generic.) r=lsalzman 2017-11-02 17:23:16 +00:00
Jonathan Kew
a7a8736435 Bug 1415880 - Remove the obsolete mIsValid flag from gfxFontEntry, as nothing depends on it any more. r=jrmuizel 2017-11-09 16:54:02 +00:00
Ryan Hunt
6e900ce0c3 Don't reuse a back buffer after a swap if the content or surface changed (bug 1399692 part 9, r=bas)
MozReview-Commit-ID: HGAxkeyESbc

--HG--
extra : rebase_source : df5c404aaf3a613affadf4bfd77ca1fc3765f332
2017-11-05 10:38:47 -05:00
Ryan Hunt
4eab1ce94d Don't copy over regions that will be painted in this frame (bug 1399692 part 8, r=bas)
We do the same in FinalizeFrame, so we should do it here.

MozReview-Commit-ID: JTKDj8yrtI2

--HG--
extra : rebase_source : 9f900a4641df71a8da79a406cc89407a3553221f
extra : intermediate-source : de3aa5583481a3680e3d0cfdbe6b55916f0ef58a
extra : source : fb9b0524428307c4ee097894e37879339df47579
2017-11-04 14:52:31 -04:00
Ryan Hunt
bd171d4d4c Replay buffer commands on paint thread when OMTP is enabled (bug 1399692 part 7, r=bas)
This commit does the work of actually dispatching the recorded buffer operations
to the paint thread, and removing some main thread asserts from TextureClient.

MozReview-Commit-ID: CN3RoQPz9fP

--HG--
extra : rebase_source : 9aeb3a727a930638aeb47a45a358769f1338d844
extra : source : e9349ad2f1f8fec862b1d2271d0d8f25ad0814d4
2017-10-26 00:47:17 -04:00
Ryan Hunt
ae7878997b Record buffer operations to a struct for replaying on paint thread (bug 1399692 part 6, r=bas)
This commit adds a CapturedBufferState which is used to record all the operations
that are necessary for preparing the buffers. The commands are then instantly
executed to preserve the same behavior, but in the following commit they will
be dispatched to the paint thread.

Note: RotatedBuffer's aren't thread safe and so a shallow copy needs to be made
for sending to the paint thread. This complicates the code for AdjustTo as it can
fail naturally and the buffer parameter changes are needed later in BeginPaint.
So the code for AdjustTo is split up a bit to accomodate that.

MozReview-Commit-ID: FwSwFay887o

--HG--
extra : rebase_source : 376f9a7184bdce2cc405e4608d38b8505aafc2d6
extra : source : cb6507b560aaad188fc83a47b664aaa5692a0acd
2017-10-25 10:20:49 -04:00
Ryan Hunt
fed0927bfd Simplify copying the front buffer to the back buffer (bug 1399692 part 5, r=bas)
To sync the back buffer with the front buffer, we set the back buffer rect and
rotation to the front buffer's, and then copy over the pixels that different.

We used to do the updating of the rect and rotation before BeginPaint, but that
isn't necessary and we can move it to be with the copying of pixels.

MozReview-Commit-ID: HzBKvMZkn1

--HG--
extra : rebase_source : a34e50a4d7664e3134f9da06b10f1908aa0d9d60
extra : source : 3d0da65640964e5a0565b5e7b7646cf719ce1449
2017-10-23 18:27:53 -04:00
Ryan Hunt
8a4c400778 Don't create back buffer for front buffer until we know what type to create. (bug 1399692 part 4, r=bas)
This commit is an optimization for double buffering that delays the creation of
a back buffer until we know what kind of content type it needs to be.

Before this commit, we would EnsureBackBufferIfFrontBuffer before BeginPaint,
then in BeginPaint we could determine that we actually needed a different kind
of buffer because the content changed type, and recreate it.

This was needed because BeginPaint would copy the old front buffer to the buffer
created by EnsureBackBufferIfFrontBuffer, and then if anything failed or we had
determined we couldn't reuse the buffer, we would create a new one and copy that
"temporary" back buffer over, and use the new one.

This is unnecessary because we only need read access on that "temporary" back
buffer, and so we can just use the current front buffer instead.

This optimization only affects the double buffered case, and the single buffered
or basic cases should remain the same.

Note: Because we now need the front buffer for copying into the new back buffer,
we cannot Clear() it away in some error cases.

Note: The code in FinalizeFrame assumes that the back and front buffer have the
same size. This was implicitly enforced before, and now needs to be explicitly
enforced. This commit tries to preserve the exact same behavior, although the
restriction should be removed as long as the back buffer is large enough for
the visible region.

MozReview-Commit-ID: 2hyrrUhA4zO

--HG--
extra : rebase_source : 2ddaa7d7d250475cf68524ad2151d8bcc7101013
extra : source : 926af2eca400cf8a16777813ceb586b1d3be7d68
2017-10-23 15:33:40 -04:00
Ryan Hunt
acf6bf600e Remove BufferContentType and add ValidBufferSize (bug 1399692 part 3, r=bas)
BufferContentType and BufferSizeOkFor make more sense as general functions for
any RotatedBuffer, and this helps out in a later patch.

MozReview-Commit-ID: EAVodvl4WTu

--HG--
extra : rebase_source : 6b3406713414a5fe5c1ace6cd0db86c811557323
extra : source : b57a3f0d08478f094328b5a50c57eed35798fdf0
2017-10-23 14:56:13 -04:00
Ryan Hunt
94edce8cf6 Simplify the code for creating a new back buffer (bug 1399692 part 2, r=bas)
MozReview-Commit-ID: D28JNYWD9Uc

--HG--
extra : rebase_source : 96468353c813a9fa9b82f1ffe98ad87f70367a8b
extra : source : 9fcb661df79e51c80f5ffb24717dba655dc97d73
2017-10-23 12:40:01 -04:00
Ryan Hunt
e325148fa6 Remove unneeded lambda capture in paint thread (bug 1399692 part 1, r=bas)
MozReview-Commit-ID: 71X22PHRTRz

--HG--
extra : rebase_source : e5fa03c7754b3e2a64ae2c6e2a4125bc1ba65303
extra : source : 744c8fabaa1c3e6b7322cd2b4c6672b8509c643c
2017-10-31 01:55:24 -04:00
Nika Layzell
ff8b5bd178 Bug 1414974 - Part 3: Move Get{Inner,Outer}WindowWithId onto the specific subclasses, r=smaug
These were originally exposed directly as static methods on nsGlobalWindow, but
as they are clearly associated with either the inner or outer window, it makes
more sense for them to be called as such.

MozReview-Commit-ID: LFq8EfnhDlo
2017-11-09 10:44:47 -05:00
Nika Layzell
3409141758 Bug 1414974 - Part 2: Switch many consumers to nsGlobalWindow{Inner,Outer}, r=smaug
This is a large patch which tries to switch many of the external consumers of
nsGlobalWindow to instead use the new Inner or Outer variants.

MozReview-Commit-ID: 99648Lm46T5
2017-11-09 10:44:47 -05:00
David Anderson
9a31238647 Fix DataSourceSurface mapping in GLReadTexImageHelper.cpp. (bug 1405390 part 6, r=jgilbert)
--HG--
extra : rebase_source : 2e5bb4ede103f2f75617ed7b4d5f06fe35de1d72
2017-11-09 00:43:31 -08:00
David Anderson
7cac78cb17 Fix DataSourceSurface mapping in PaintCounter. (bug 1405390 part 4, r=bas)
--HG--
extra : rebase_source : c4bc6e8642f21098ce35a9a91dba5ca9d9369597
2017-11-09 00:43:31 -08:00
David Anderson
9575a22267 Remove trivial calls to DataSourceSurface::Stride. (bug 1405390 part 3, r=bas)
--HG--
extra : rebase_source : 7700599ef497a2abadc7970af5ea26b48061966e
2017-11-09 00:43:30 -08:00
David Anderson
3f697bb27d Fix canvas and GL uses of DataSourceSurface::GetData. (bug 1405390 part 2, r=jgilbert)
--HG--
extra : rebase_source : eb4dcdfe9374e317a3a1e426bf35999ea50b074d
2017-11-09 00:43:30 -08:00
David Anderson
32e1584385 Remove easily-removed cases of DataSourceSurface::GetData(). (bug 1405390 part 1, r=bas)
--HG--
extra : rebase_source : cc0d8001240efb530daa9845bc126e5026682340
2017-11-09 00:43:29 -08:00
Lee Salzman
3699fb8ded Bug 1415609 - ensure the GPU process initializes the FreeType library. r=jrmuizel
MozReview-Commit-ID: 50a6TBdKnVg
2017-11-08 16:40:20 -05:00
Sebastian Hengst
e3806002a1 merge mozilla-central to mozilla-inbound. r=merge a=merge on a CLOSED TREE 2017-11-09 00:32:30 +02:00
Sebastian Hengst
a353221537 merge mozilla-inbound to mozilla-central. r=merge a=merge 2017-11-09 00:00:16 +02:00
Bas Schouten
911420ff1c Bug 1413857: Make FilterNode refcounting threadsafe. r=rhunt
MozReview-Commit-ID: Kgnq97NJeTv
2017-11-08 20:49:40 +01:00
Bas Schouten
fc5e6c2cf2 Bug 1414448: Protect the SourceSurfaceSkia destructor from racing with DrawTargetWillChange. r=dvander
MozReview-Commit-ID: 6UYDLUEoJZy
2017-11-08 20:49:40 +01:00
Markus Stange
62e25a4903 Bug 1414926 - Make -moz-font-smoothing-background-color changes only cause repaints, not reflows. r=emilio
This case is hit by hovering over menu items, so the optimization is somewhat worthwhile.
As a side-effect, not causing reflows also avoids a XUL <select> popup positioning bug.

MozReview-Commit-ID: AOrijytoHHL

--HG--
extra : rebase_source : c2156eb24171f6d0b0e5476c4a7dbc641a0b5301
2017-11-07 23:01:29 -05:00
Jesse Ruderman
d8977a82a8 Bug 951893 - Add crashtest. r=me 2017-11-08 08:47:09 -05:00
Jesse Ruderman
17aa62fedf Bug 766422 - Add crashtests. r=me 2017-11-08 08:47:09 -05:00
Milan Sreckovic
1c4ab9e9c2 Bug 1389152: Change LogicalRect from having nsRect as a member variable, and exposing its member variable addresses, to storing four nscoord values separately and doing some operations by creating temporary rectangles to ensure consistency. Add a method to BaseRect to get OriginAndSize at once. r=bas,jfkthame.schouten
MozReview-Commit-ID: FhmSXK7p5c6

--HG--
extra : rebase_source : eb542fac9017852fa812b54aa3b12f0522a1e4be
2017-11-07 09:38:31 -05:00
Narcis Beleuzu
218e1676cb Merge inbound to mozilla-central r=merge a=merge 2017-11-08 12:51:09 +02:00
Cervantes Yu
6129f0777e Bug 1414714 - Part 3: Remove more unused prefs defined in gfxPrefs. r=nical
This removes non-"gfx.*" prefs defined in gfxPrefs.h, but the generated gfxPrefs
properties are not accessed anywhere in the code base:
* apz.overscroll.spring_friction
* apz.overscroll.stop_velocity_threshold
* apz.overscroll.stretch_factor
* dom.w3c_touch_events.enabled - this pref is accessed in other places, but not through
gfxPrefs::TouchEventsEnabled().
* general.smoothScroll.lines
* general.smoothScroll.pixels
* layers.composer2d.enabled
* layers.stereo-video.enabled

MozReview-Commit-ID: 5OByjpnFthJ
2017-11-08 15:27:06 +08:00
Cervantes Yu
c6bc943ace Bug 1414714 - Part 2: Remove unused gfx.* prefs. r=nical
The following prefs are removed because they are defined in gfxPrefs, but the
resulting gfxPrefs property is used at all.
* gfx.SurfaceTexture.detach.enabled
* gfx.touch.resample.*
* gfx.screen-mirroring.enabled

MozReview-Commit-ID: CyI3JN4TTu5
2017-11-08 15:26:50 +08:00
Margareta Eliza Balazs
130574a8e2 Merge mozilla-central to mozilla-inbound. r=merge a=merge CLOSED TREE 2017-11-08 00:09:29 +02:00
Lee Salzman
62496c6987 Bug 1412545 - avoid race condition when setting Cairo ft font user data. r=jrmuizel
MozReview-Commit-ID: 4aqfj2xlCc2
2017-11-07 14:10:31 -05:00
Randall Barker
b2e368e0ca Bug 1413362 - part 2: Gecko gfx/vr GVR WebVR implementation r=kip,daoshengmu
MozReview-Commit-ID: HWaXhQo0VML
2017-11-07 10:50:14 -08:00
Kartikaya Gupta
185e484e8c Bug 1414271 - Update for API change in WR PR 1977. r=jrmuizel
MozReview-Commit-ID: Hcnlj0uFHN3

--HG--
extra : rebase_source : 99c14d374bc84cba3cd57ab7bfd40623516791f4
2017-11-07 08:32:07 -05:00
Kartikaya Gupta
8ce461077b Bug 1414271 - Update webrender to commit 34f1e8ed19a19cb950deef89ee31c1cf3d442d22. r=jrmuizel
Also includes regenerated FFI header.

MozReview-Commit-ID: BwH36DHIvrc

--HG--
extra : rebase_source : c672b765e5b56e60d158d492cfbe4ee86b5ce223
2017-11-07 08:31:57 -05:00
Sebastian Hengst
f2944960ec Backed out 3 changesets (bug 1413362) for causing merge conflicts. r=merge a=merge
Backed out changeset 8b15dfaeecaa (bug 1413362)
Backed out changeset 2d9da0d19d04 (bug 1413362)
Backed out changeset 653c66220a5f (bug 1413362)

--HG--
extra : amend_source : e5c12297b0bb6ebe27a2481e4aac6c0ca8160a1b
2017-11-07 12:41:11 +02:00
vincentliu
a900bb5807 Bug 1413651 - Correct the chunk range to dealloc shmem when AllocChunk() fails to return. r=nical 2017-11-07 15:49:46 +08:00
Jeff Gilbert
573afa08c2 Bug 1414977 - Allow webgl.force-index-validation:-1 to disable index validation for testing. - r=daoshengmu
MozReview-Commit-ID: Drw9LsIo1Qt
2017-11-06 19:46:37 -08:00
sotaro
e1d5eb970c Bug 1411472 - Backout because of test failures 2017-11-07 11:34:13 +09:00
Randall Barker
b1f0bd8a25 Bug 1413362 - part 2: Gecko gfx/vr GVR WebVR implementation r=kip,daoshengmu
MozReview-Commit-ID: HWaXhQo0VML
2017-11-06 17:43:28 -08:00
Lee Salzman
135158086d Bug 1403198 - support WR native font handles in blob image. r=jrmuizel
MozReview-Commit-ID: 1n0z2xNZDxp
2017-11-06 20:21:25 -05:00
Lee Salzman
826eee8b2a Bug 1403198 - support WR font descriptors on Mac. r=jrmuizel
MozReview-Commit-ID: BqN51yY88oJ
2017-11-06 20:21:06 -05:00
Lee Salzman
3e6f5e1180 Bug 1403198 - support WR font descriptors with DWrite. r=jrmuizel
MozReview-Commit-ID: 8u3kYoKYOuC
2017-11-06 20:20:43 -05:00
Lee Salzman
b70e5bcc71 Bug 1403198 - support WR font descriptors with Fontconfig. r=jrmuizel
MozReview-Commit-ID: L52PYBwEqNw
2017-11-06 20:20:11 -05:00
Lee Salzman
f11218633f Bug 1403198 - send font descriptors to WR instead of raw fonts where possible. r=jrmuizel
MozReview-Commit-ID: DYcaO3fE1fc
2017-11-06 20:19:46 -05:00
sotaro
4243be10df Bug 1411472 - Add support of PersistentBufferProviderShared r=nical 2017-11-07 09:31:58 +09:00
Andrew Osmond
bda9d3294a Bug 1413011 - Allow the UI/chrome process to shutdown if the compositor thread failed to start. r=dvander
There are up to two compositor threads spawned - one in the GPU process
and one in the UI/chrome process. If the GPU process is used, then
failing to start the UI compositor thread is not fatal -- unless the GPU
process crashes too much and we fallback to the UI/chrome process. If
the GPU process compositor thread failed to start, then the GPU process
will crash and either restart, or fallback to the UI/chrome process
thread. If both fail, then Firefox crashes as expected.

Before we would not setup a content process properly unless the
UI compositor thread was active, even when using the GPU process. Now we
do, which allows the browser to be fully functional. Additionally when
shutting down, we ignore the lack of a compositor thread to permit a
graceful shutdown. In a future patch we will ideally we would not spawn
the compositor thread in a process until we actually need it, and
release assert on its failing to start.
2017-11-06 17:51:48 -05:00
David Anderson
32a0c40657 Don't treat resampled layers as entirely opaque. (bug 1412078, r=mattwoodrow) 2017-11-06 12:18:01 -08:00
James Willcox
bc001da86a Bug 1413230 - Ensure we are attached to the GL context in SurfaceTextureHostOGL::PrepareTextureSource() r=jnicol,nical
MozReview-Commit-ID: BxDng9OG3RF
2017-11-06 09:30:13 -06:00
Ethan Lin
0d2b959f9f Bug 1410583 - Make sure we paint the whole item for blob image. r=jrmuizel
MozReview-Commit-ID: 84LiyRA2WFC

--HG--
extra : rebase_source : 769128dff81e4610decf2fbe53196a94e7857773
2017-11-06 16:51:16 +08:00
JerryShih
ff87dafa78 Bug 1409176 - make SyncObjectD3D11Client become fallible. r=dvander
Currently, the device-reset flow doesn't notify the decoder for device change
immediately. The decoder might use an invalid sync-object for synchronization.
Then, we will hit some assertions.
This patch try to make the synchronization flow become fallible, then we could
pass the error to the media framework for error handling.

MozReview-Commit-ID: BFY32MmOdt0
2017-11-06 16:07:22 +08:00
Markus Stange
1f62b09715 Bug 1414157 - Supply the font smoothing background color in the webrender FontInstanceOptions. r=lsalzman
MozReview-Commit-ID: CaI4FH7GoI8

--HG--
extra : rebase_source : 08a84a0b860e2afa8c0316c459984dd49d3e9561
2017-11-02 22:21:54 -04:00
Markus Stange
06a44912a5 Bug 1414154 - Remove gfxContext::Set/GetFontSmoothingBackgroundColor and TextRunDrawParams::fontSmoothingBGColor. r=lsalzman
MozReview-Commit-ID: BXZP3maOJRi

--HG--
extra : rebase_source : 5ba8b50835d98f78cdf854d914d61f5508edf6e3
2017-11-02 22:31:15 -04:00
Markus Stange
78303f13ce Bug 1414154 - Remove GlyphRenderingOptions. r=lsalzman
MozReview-Commit-ID: JtwnTj1hhPV

--HG--
extra : rebase_source : 2a3e896eec8b6839097baf6e2cccc10eb162827b
2017-11-02 21:42:56 -04:00
Markus Stange
4be8be99f3 Bug 1414154 - Store the font smoothing background color on the ScaledFontMac. r=lsalzman
MozReview-Commit-ID: 9U6CXn1JlYT

--HG--
extra : rebase_source : eea215e1ef3345e06ea92fc150f83a4467eba31d
2017-11-02 21:02:30 -04:00
Markus Stange
f2f07fc63b Bug 1414147 - Move fontSmoothingBackgroundColor from nsStyleUserInterface to nsStyleFont / nsFont. r=dbaron
MozReview-Commit-ID: 7i0Sy50Badm

--HG--
extra : rebase_source : 28f36f191aa82a0ece87b412b59641f7dc061acf
2017-11-02 17:48:44 -04:00
Sebastian Hengst
f0accc0bc5 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-11-04 11:01:09 +01:00
Sebastian Hengst
d61954557d merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: Ai6Y5GGfkfT
2017-11-04 10:58:24 +01:00
Chris Peterson
84d577e4a4 Bug 1412048 - Remove NS_RUNTIMEABORT. r=froydnj
Use MOZ_CRASH, MOZ_CRASH_UNSAFE_OOL, or MOZ_CRASH_UNSAFE_PRINTF instead.

MozReview-Commit-ID: 1kCCHMlgbGP

--HG--
extra : rebase_source : 2f07ced16bccebf30cd3b2b5fea35e9868d32dad
extra : source : 0bf2c8425b828e71de55dd175fd0dad635b4e67d
2017-10-24 23:41:15 -07:00
NARCIS BELEUZU
582e5ff6cf Merge mozilla-central to inbound. r=merge a=merge on CLOSED TREE 2017-11-03 15:23:15 +02:00
NARCIS BELEUZU
3543cada7e Backed out 7 changesets (bug 1399692) failing on browser chrome browser/base/content/test/performance/browser_urlbar_search_reflows.js
Backed out changeset e9349ad2f1f8 (bug 1399692)
Backed out changeset cb6507b560aa (bug 1399692)
Backed out changeset 3d0da6564096 (bug 1399692)
Backed out changeset 926af2eca400 (bug 1399692)
Backed out changeset b57a3f0d0847 (bug 1399692)
Backed out changeset 9fcb661df79e (bug 1399692)
Backed out changeset 744c8fabaa1c (bug 1399692)
2017-11-03 14:32:46 +02:00
NARCIS BELEUZU
ca445d6992 Backed out changeset fac6f595967b (bug 1399692) 2017-11-03 14:29:10 +02:00
Andrew Osmond
919f128d84 Bug 1408532 - Ensure ImageBridgeParent cleans up old actors if the process ID is reused. r=dvander 2017-11-03 07:49:18 -04:00
NARCIS BELEUZU
2e3654a915 Merge mozilla-inbound to mozilla-central. r=merge a=merge 2017-11-03 12:04:55 +02:00
sotaro
9bdbc201fd Bug 1408421 - Improving throttling GenerateFrame() r=jrmuizel 2017-11-03 11:22:28 +09:00
NARCIS BELEUZU
a6cf88a4bf Merge mozilla-central to inbound. r=merge a=merge on CLOSED TREE 2017-11-03 12:22:35 +02:00
sotaro
551a052a4a Bug 1410766 - Re-acquireDevices in gpu process when SimulateDeviceReset() is called r=dvander 2017-11-03 17:06:37 +09:00
sotaro
bce40231ea Bug 1390741 - Use BasicCompositor if widget type does not support acceleration r=aosmond,kats 2017-11-03 16:38:34 +09:00
Francois Marier
7821a2719e Bug 1411450 - Add the protobuf version to LayerScopePacket.proto. r=mattwoodrow
This is essentially a no-op but it does silence the following warning
whenever the *.pb.* files are re-generated:

[libprotobuf WARNING google/protobuf/compiler/parser.cc:546] No syntax specified for the proto file: LayerScopePacket.proto. Please use 'syntax = "proto2";' or 'syntax = "proto3";' to specify a syntax version. (Defaulted to proto2 syntax.)

MozReview-Commit-ID: 6L1TXHLcjsj

--HG--
extra : rebase_source : c88211414242c921eeefec27476c4a52e6c0974a
2017-10-26 16:15:30 -07:00
Jamie Nicol
cc72c8cff9 Bug 1413693 - Ensure data copied from discarded front buffer isn't also painted. r=mstange
Bug 1092294 introduced a regression in to the code to copy from
the discarded front buffers to the new backbuffers in
SingleTiledContentClient. The aim was to ensure that if locking the
the frontbuffers failed, meaning the region could not be copied, that it
would be painted instead. However due to incorrect logic the
region would both be copied and painted in cases where
there was no onWhite buffers.

To fix this we take both locks (frontLock, and frontOnWhiteLock if
required) up front, so that we either copy both buffers or neither.

MozReview-Commit-ID: 3iepOuweruk

--HG--
extra : rebase_source : 2e2f951c3315f2809191f43a9d5ec4a939c82724
2017-11-02 11:46:08 +00:00
Phil Ringnalda
e0e1cf4354 Backed out 4 changesets (bug 1406327) for crashing other tests, crashing itself, and assertion failures
Backed out changeset 471c710b19b1 (bug 1406327)
Backed out changeset 5890bb3a0d97 (bug 1406327)
Backed out changeset 63c8ee57e38c (bug 1406327)
Backed out changeset 345972733daa (bug 1406327)

MozReview-Commit-ID: IwWx11QSuS4
2017-11-01 21:44:12 -07:00
Daosheng Mu
f10ab3c49f Bug 1406327 - Part 4: RefreshVRDisplays needs to be at VRListenerThread; r=kip
MozReview-Commit-ID: KuhPFqMhTDB

--HG--
extra : rebase_source : 53dac47c5ede72acbe2760f056ca88f8cbc0c6b9
2017-11-01 22:15:06 +08:00
Daosheng Mu
1b3cb570af Bug 1406327 - Part 3: VRSystemManager for multi-threads; r=kip
MozReview-Commit-ID: 4bE5hruFcT2

--HG--
extra : rebase_source : e1184bbd96c7c5663e04db85d4d2c0f44bf4dcd6
2017-10-26 17:45:44 +08:00
Daosheng Mu
292c24950b Bug 1406327 - Part 2: When loading VR content, launching the VR listener thread; r=kip
MozReview-Commit-ID: IyBzJyDEVdv

--HG--
extra : rebase_source : d626c4b0ce7c5ca2a1bda6cb6b8d0d42a4d09e1d
2017-10-26 17:28:37 +08:00
Daosheng Mu
a04c759f89 Bug 1406327 - Part 1: Shutdown VR listener thread when no VR content in seconds; r=dvander,kip
MozReview-Commit-ID: AnYJT8WBkI7

--HG--
extra : rebase_source : fff277f9801760fa00261283fbc1ca42b59a8fd8
2017-10-26 16:51:14 +08:00
Botond Ballo
a155122b36 Bug 1382534 - Add a UnionMaybeRects() method to gfx/2d/Rect.h. r=mstange
MozReview-Commit-ID: 3G4Hlj54Thy

--HG--
extra : rebase_source : 6c2b22f28ee648bc93f4cb3471727f992f8cb34e
2017-08-23 17:45:15 -04:00
Kearwood "Kip" Gilbert
efffd1d8b9 Bug 1413357 - Remove VRManagerChild::RecvParentAsyncMessages r=daoshengmu
- This IPC is no longer used and can be removed to simplify
  the PVRManager protocol.
MozReview-Commit-ID: Kno5CHkI17K

--HG--
extra : rebase_source : 227e36b00bc2d6a3b83b48d80fbfdfe35196057d
2017-10-31 15:53:50 -07:00
Andrew Osmond
2e03149cc0 Backed out changeset d84ea38d6fd0 (bug 1399453) because the annotations are no longer needed. 2017-11-01 13:34:43 -04:00
Jeff Muizelaar
df5772565c Bug 1412848. Use the proper types and functions. r=lsalzman
The previous code was a bad copypasta
2017-11-02 17:47:33 -04:00
Ryan Hunt
c6d2561056 Mark ShallowCopy as override to fix bustage (bug 1399692, r=me)
MozReview-Commit-ID: 2LIxzNFrcA3

--HG--
extra : rebase_source : dab0937161a2ffa15e48cf0273a714cf10b35443
extra : amend_source : bc6b97ea306b5351535f9b0e7e399fa6f545683b
2017-11-02 17:43:52 -04:00
Ryan Hunt
153dbb56d7 Replay buffer commands on paint thread when OMTP is enabled (bug 1399692 part 7, r=bas)
This commit does the work of actually dispatching the recorded buffer operations
to the paint thread, and removing some main thread asserts from TextureClient.

MozReview-Commit-ID: CN3RoQPz9fP

--HG--
extra : rebase_source : c14b9da390e88907e184409404c5c21b5fe23dff
2017-10-26 00:47:17 -04:00
Ryan Hunt
37542c54f7 Record buffer operations to a struct for replaying on paint thread (bug 1399692 part 6, r=bas)
This commit adds a CapturedBufferState which is used to record all the operations
that are necessary for preparing the buffers. The commands are then instantly
executed to preserve the same behavior, but in the following commit they will
be dispatched to the paint thread.

Note: RotatedBuffer's aren't thread safe and so a shallow copy needs to be made
for sending to the paint thread. This complicates the code for AdjustTo as it can
fail naturally and the buffer parameter changes are needed later in BeginPaint.
So the code for AdjustTo is split up a bit to accomodate that.

MozReview-Commit-ID: FwSwFay887o

--HG--
extra : rebase_source : 3e8b49d5931d853857dd1b2eeff914465251f613
2017-10-25 10:20:49 -04:00
Ryan Hunt
12cec070ad Simplify copying the front buffer to the back buffer (bug 1399692 part 5, r=bas)
To sync the back buffer with the front buffer, we set the back buffer rect and
rotation to the front buffer's, and then copy over the pixels that different.

We used to do the updating of the rect and rotation before BeginPaint, but that
isn't necessary and we can move it to be with the copying of pixels.

MozReview-Commit-ID: HzBKvMZkn1

--HG--
extra : rebase_source : b5f5a0c46c225b8d2fbdd1891a16f3c0812382eb
2017-10-23 18:27:53 -04:00
Ryan Hunt
cf8f4842ac Don't create back buffer for front buffer until we know what type to create. (bug 1399692 part 4, r=bas)
This commit is an optimization for double buffering that delays the creation of
a back buffer until we know what kind of content type it needs to be.

Before this commit, we would EnsureBackBufferIfFrontBuffer before BeginPaint,
then in BeginPaint we could determine that we actually needed a different kind
of buffer because the content changed type, and recreate it.

This was needed because BeginPaint would copy the old front buffer to the buffer
created by EnsureBackBufferIfFrontBuffer, and then if anything failed or we had
determined we couldn't reuse the buffer, we would create a new one and copy that
"temporary" back buffer over, and use the new one.

This is unnecessary because we only need read access on that "temporary" back
buffer, and so we can just use the current front buffer instead.

This optimization only affects the double buffered case, and the single buffered
or basic cases should remain the same.

Note: Because we now need the front buffer for copying into the new back buffer,
we cannot Clear() it away in some error cases.

MozReview-Commit-ID: 2hyrrUhA4zO

--HG--
extra : rebase_source : 8eb7f992758d2e1db47eb88fe8d31651b335be6d
2017-10-23 15:33:40 -04:00
Ryan Hunt
f7fab34fd0 Remove BufferContentType and add ValidBufferSize (bug 1399692 part 3, r=bas)
BufferContentType and BufferSizeOkFor make more sense as general functions for
any RotatedBuffer, and this helps out in a later patch.

MozReview-Commit-ID: EAVodvl4WTu

--HG--
extra : rebase_source : 22c004e81257bf2d31438972c17b7b4f61532b23
2017-10-23 14:56:13 -04:00
Ryan Hunt
f3f6dc6284 Simplify the code for creating a new back buffer (bug 1399692 part 2, r=bas)
MozReview-Commit-ID: D28JNYWD9Uc

--HG--
extra : rebase_source : e494a32dcef12baac681f2140eea81339392d333
2017-10-23 12:40:01 -04:00
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
Markus Stange
9d74ba14bd Bug 1413178 - Initialize the new field that was added in webrender commit 479d43ab4f245c42b33e12f9b6f050045ec84ab3. r=lsalzman
MozReview-Commit-ID: 3oFtSjbnBsI

--HG--
extra : rebase_source : b3d792787a9226265d02eaff027e0919aca1d17d
2017-11-03 00:37:20 -04:00
Kartikaya Gupta
69f8f61109 Bug 1413178 - Re-generate FFI header. r=lsalzman
MozReview-Commit-ID: 53SneuKAusl

--HG--
extra : rebase_source : 9ace105caaf16c9fc2a844cd82a483e84d5ceb53
2017-11-03 10:59:33 -04:00
Kartikaya Gupta
5a6135f9dd Bug 1413178 - Update webrender to commit fae962bfd6e1997f4b921ee93c3c1cc5abca3256. r=lsalzman
MozReview-Commit-ID: LStxYqdw50U

--HG--
extra : rebase_source : a732f4a3e6ed28902d61de03dfea69626733711d
2017-11-03 10:28:15 -04:00
NARCIS BELEUZU
8a7f727056 Merge mozilla-central to autoland. r=merge a=merge CLOSED TREE 2017-11-03 15:07:59 +02:00
NARCIS BELEUZU
0a208387ad Merge mozilla-central to autoland. r=merge a=merge on CLOSED TREE 2017-11-03 12:20:45 +02:00
Ethan Lin
4f02235ca5 Bug 1413680 - DrawTargetRecording should return the real size instead of the dummy drawtarget's size. r=jrmuizel
MozReview-Commit-ID: E63f8ZIGYm2

--HG--
extra : rebase_source : d966d435308ca66a4d0c64f5e90db218ed1fe31f
2017-11-02 13:50:38 +08:00
Kartikaya Gupta
c832839650 Bug 1411627 - Send the applied offset for sticky frames to WR. r=mstange
There are cases where we do a main-thread paint at a scroll position
where sticky offsets have been applied in order to keep sticky items
visually unmoving. From that paint, it's possible to do an async-scroll
in the direction that reduces the sticky offset. In order for WR to
handle this case properly we need to tell WR how much of a sticky offset
was already applied on the main thread.

MozReview-Commit-ID: 79DsfPpsIfA

--HG--
extra : rebase_source : e39316702cff3bd4ee6721c7503a1a9267734cd8
2017-11-07 10:16:48 -05:00
Csoregi Natalia
423b2522c4 Merge inbound to mozilla-central r=merge a=merge 2017-11-01 12:14:00 +02:00
Lee Salzman
1eba4acd8d Bug 1412942 - pad Mac font data when checksumming. r=jfkthame
MozReview-Commit-ID: 3941eAWNXoR
2017-10-31 23:13:25 -04:00
sotaro
3aac464b5a Bug 1408490 - Fix reinitRendering for deviceReset r=dvander 2017-11-01 11:58:10 +09:00
Sebastian Hengst
2181970726 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-11-01 00:39:58 +01: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
David Anderson
997c7019bc Don't cache DrawTargetCaptures in nsCanvasFrame. (bug 1395478 part 10, r=mattwoodrow)
--HG--
extra : rebase_source : fc0746099e910f1e46842f292f60b2f00ee25f38
2017-10-31 12:02:32 -07:00