Commit Graph

29984 Commits

Author SHA1 Message Date
Tom Ritter
a2349ea483 Bug 1460357 Do not use optimized AVX for Skia convolve_vertically in MinGW r=lsalzman
MozReview-Commit-ID: 8ROpiDD4xYH

--HG--
extra : rebase_source : 73f0d4abf5523bb2cd9862c76df807f0da5dbc83
2018-04-25 22:57:58 -05:00
Martin Stransky
9cb5dba87a Bug 1460603 - GLLibraryEGL: Use wl_display to get EGLDisplay on Wayland r=lsalzman
Patch author is Takuro Ashie <ashie@clear-code.com>

Use wl_display to get EGLDisplay on Wayland because some drivers doesn't support EGL_DEFAULT_DISPLAY.
For example Intel's driver causes crash without this patch.

MozReview-Commit-ID: ILtRJrW6MDs

--HG--
extra : rebase_source : a513bfa3c1fc408743bd5b4aed6e416f4d8cc0d7
2018-05-09 15:26:15 +02:00
Martin Stransky
6ae5806eb6 Bug 1460605 - Use NS_NATIVE_EGL_WINDOW instead of NS_NATIVE_WINDOW on GTK r=lsalzman
Original patch author is Takuro Ashie <ashie@clear-code.com>

NS_NATIVE_EGL_WINDOW is exported by Gtk toolkit code and provides both X11 window
handle for X11 Gtk backend and EGL window handle for Wayland backend.

MozReview-Commit-ID: DEmlaLL7zGY

--HG--
extra : rebase_source : 4e3fb33e68472d61cbc8c555347d4b10343e2628
2018-05-10 16:14:03 +02:00
Margareta Eliza Balazs
d4b9e50875 Merge inbound to mozilla-central. a=merge 2018-05-16 13:00:51 +03:00
Matt Woodrow
33d829994f Bug 1460491 - Part 2: Only recompute visibility for items if they are newly added to this layer, or intersect one that changed. r=jnicol
MozReview-Commit-ID: EAgvVQGsSPE

--HG--
extra : rebase_source : 44bc132a95d6d1b7e9cc3c22adcd4166a099237c
2018-05-16 16:02:37 +12:00
Matt Woodrow
0d65266918 Bug 1460491 - Part 1: Split nsDisplayItem::mVisibleRect into two members, one for each stated purpose. Gets rid of the save/restore since we no longer modify the building rect. r=jnicol
MozReview-Commit-ID: 5wcsSoZRN44

--HG--
extra : rebase_source : 1bf7d655b048a972e392514542aee171e20afe82
2018-05-16 15:56:32 +12:00
Hiroyuki Ikezoe
ea397e2c09 Bug 1460389 - Use non-animated (static) value if the animation is in not in-effect. r=birtles,kats
MozReview-Commit-ID: 87YgNy0RkKt

--HG--
extra : rebase_source : ac77b639a558197082f4ac52c02a9988bb2a9194
2018-05-15 09:02:38 +09:00
Hiroyuki Ikezoe
b63fbaf5f6 Bug 1460389 - Constify arguments for StackingContextHelper ctor. r=kats
MozReview-Commit-ID: 14fu7EYESwu

--HG--
extra : rebase_source : 48dd25d7ad42abde9643d4fec50bff9aa08c41ef
2018-05-15 08:59:33 +09:00
Hiroyuki Ikezoe
586992e21b Bug 1460389 - Remove TransactionBuilder::AppendTransformProperties. r=kats
This function is no longer used since we introduced TransactionWrapper class in
bug 1451469.

MozReview-Commit-ID: FGxi6thbxcP

--HG--
extra : rebase_source : ef5628f8bffb5c1fedf6de80056d4ebba41a9edf
2018-05-15 08:59:29 +09:00
Dorel Luca
0d2ff9e60d Merge mozilla-inbound to mozilla-central. a=merge 2018-05-16 00:54:22 +03:00
Jonathan Kew
2579d09699 Bug 1458301 followup #2, also use explicit namespace for std::isinf. r=preemptive bustage fix on CLOSED TREE 2018-05-15 15:37:45 +01:00
Jonathan Kew
35c8691c6f Bug 1458301 followup, use explicit namespace for std::isfinite to fix build failure on some platforms. r=bustage fix on CLOSED TREE 2018-05-15 15:32:33 +01:00
Jonathan Kew
94bd85ef62 Bug 1460764 - patch 2 - Include variationSettings in the gfxFontStyle hash value. r=jwatt 2018-05-15 14:59:26 +01:00
Jonathan Kew
54a3761450 Bug 1460764 - patch 1 - Avoid undefined behavior in gfxFontStyle::Hash() when sizeAdjust is -1.0f. r=jwatt 2018-05-15 14:59:26 +01:00
Jonathan Kew
526ed0b391 Bug 1457417 - Work around Core Text mishandling of 'opsz' axis when set to the font's default, by adjusting to a fractionally-different setting. r=jwatt 2018-05-15 14:59:26 +01:00
Jonathan Kew
a311568f05 Bug 1458301 - Unify font face selection methods to consistently use WeightStyleStretchDistance to evaluate the closeness of an available resource to a requested style. r=jwatt 2018-05-15 14:59:25 +01:00
Kartikaya Gupta
8186c1e30a Bug 1461122 - Ensure we recomposite when getting a main-thread scroll offset update. r=botond
With non-WebRender, the composite is triggered unconditionally when we receive
the transaction from the content side, so we never needed this. The previous
patch adds the composite for the equivalent WebRender codepath, but it's better
to do it explicitly in NotifyLayersUpdated as well. The reason for this is that
with WebRender, this code runs on the updater thread which is not the same as
the compositor thread - so the composition that is scheduled from
WebRenderBridgeParent upon receiving the transaction might happen before the
scroll offset update is actually applied. Triggering a composition from
NotifyLayersUpdated should be a no-op in the cases where a composition is already
scheduled, but in cases where it has not been scheduled, it will schedule one
to ensure the scroll offset update gets composited properly.

MozReview-Commit-ID: Luf76J6QDkr

--HG--
extra : rebase_source : a130f1cf22973910767e96c69962d8b621c0d368
2018-05-15 08:49:36 -04:00
Kartikaya Gupta
d07e6d261b Bug 1461122 - Clean up the composition flow for empty transactions. r=sotaro
This is mostly just refactoring to make the code more understandable. However,
there are a couple of functional changes:
- If we have scroll offset updates we now schedule a composite instead of
  sending the DidComposite right away. This is needed because we want to
  actually composite the scroll offset change.
- If there are WebRenderParentCommands provided, we process them and update the
  epoch in a single transaction, instead of splitting it across two transactions
  for no good reason.

MozReview-Commit-ID: 2HCa19EGxUD

--HG--
extra : rebase_source : f7cdc1b46fbca96b2124582f29c791f8944c1fc9
2018-05-15 08:49:34 -04:00
Kartikaya Gupta
26d10c1120 Bug 1461122 - Implement DidComposite(LayersId,...) for CompositorBridgeParent. r=sotaro
MozReview-Commit-ID: 5glDqCdvkQG

--HG--
extra : rebase_source : e7bcf7d338b79002e30a7647c15669f1958409e2
2018-05-15 08:49:29 -04:00
Bogdan Tara
fbf34d5681 Backed out 3 changesets (bug 1461122) for build bustages on workspace/build/src/obj-firefox/dist/include/mozilla/layers/CompositorBridgeParent.h CLOSED TREE
Backed out changeset 90445f7b62cd (bug 1461122)
Backed out changeset 9f87280ba566 (bug 1461122)
Backed out changeset 0efbd05857c2 (bug 1461122)
2018-05-15 15:13:08 +03:00
Kartikaya Gupta
4faa5a5649 Bug 1461122 - Ensure we recomposite when getting a main-thread scroll offset update. r=botond
With non-WebRender, the composite is triggered unconditionally when we receive
the transaction from the content side, so we never needed this. The previous
patch adds the composite for the equivalent WebRender codepath, but it's better
to do it explicitly in NotifyLayersUpdated as well. The reason for this is that
with WebRender, this code runs on the updater thread which is not the same as
the compositor thread - so the composition that is scheduled from
WebRenderBridgeParent upon receiving the transaction might happen before the
scroll offset update is actually applied. Triggering a composition from
NotifyLayersUpdated should be a no-op in the cases where a composition is already
scheduled, but in cases where it has not been scheduled, it will schedule one
to ensure the scroll offset update gets composited properly.

MozReview-Commit-ID: Luf76J6QDkr

--HG--
extra : rebase_source : 3e8cc6c9cd6fb79ab1f7ec3d1e38a34a2c7f6011
2018-05-14 13:19:14 -04:00
Kartikaya Gupta
8677ec2d23 Bug 1461122 - Clean up the composition flow for empty transactions. r=sotaro
This is mostly just refactoring to make the code more understandable. However,
there are a couple of functional changes:
- If we have scroll offset updates we now schedule a composite instead of
  sending the DidComposite right away. This is needed because we want to
  actually composite the scroll offset change.
- If there are WebRenderParentCommands provided, we process them and update the
  epoch in a single transaction, instead of splitting it across two transactions
  for no good reason.

MozReview-Commit-ID: 2HCa19EGxUD

--HG--
extra : rebase_source : e5643b83914b47889e4bde6c0f8658fedb3d54fc
2018-05-14 13:19:13 -04:00
Kartikaya Gupta
976a28d5ae Bug 1461122 - Implement DidComposite(LayersId,...) for CompositorBridgeParent. r=sotaro
MozReview-Commit-ID: 5glDqCdvkQG

--HG--
extra : rebase_source : b3d50c9ffaa1b829b8a23fc5e16d15d1509eb080
2018-05-14 13:19:13 -04:00
Jed Davis
bfc90a5627 Bug 1401776 - Raise fd limit to 4096 on Unix. r=glandium,mcmanus
This is to accommodate non-networking fd usage (IPC transports, various
databases, .xpi files, etc.), so it's separate from Necko's existing
manipulation of the fd limit, which is tied into Necko's internal limits
on how many sockets it will try to poll at once.

Note that resource limits are inherited by child processes, so this needs
to be done only in the parent.

This patch also removes similar code used on Solaris and Mac OS X.  The
Mac case (bug 1036682) refers to fd use by graphics textures, which
shouldn't be consuming fds anymore (even transiently) as of bug 1161166.

MozReview-Commit-ID: 2uodrkW5sUn

--HG--
extra : rebase_source : 5306f4995000459b89bed048ecafba3c262bbbdf
2018-05-10 17:36:32 -06:00
Narcis Beleuzu
932adad93d Merge inbound to mozilla-central. a=merge 2018-05-15 00:36:35 +03:00
Adrian Wielgosik
4fca802957 Bug 1460940 - Convert NS_NewDOMDocument to use nsIDocument. r=bz
MozReview-Commit-ID: GoJ30YZGRhq

--HG--
extra : rebase_source : 0995705c2c31c1a779c22c8336482d4c7e89e319
2018-05-11 19:46:15 +02:00
Margareta Eliza Balazs
17675612bf Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-05-14 19:49:50 +03:00
Margareta Eliza Balazs
2b9779c593 Merge inbound to mozilla-central. a=merge 2018-05-14 19:44:11 +03:00
shindli
42cb453a11 Backed out 3 changesets (bug 1453501) for bustage in build/build/src/gfx/gl/GLContextProviderEGL.cpp on a CLOSED TREE
Backed out changeset 8b53a7b34121 (bug 1453501)
Backed out changeset c07588586701 (bug 1453501)
Backed out changeset 6c231423492b (bug 1453501)
2018-05-14 17:05:14 +03:00
James Willcox
58d7215e3c Bug 1453501 - Allow the compositor to be created in a paused state r=kats
MozReview-Commit-ID: B0wc8MYaBJg
2018-05-14 08:15:38 -05:00
James Willcox
5c6878f58e Bug 1453501 - Allow GLContextEGL to be used without a surface r=jgilbert
Right now GLContextProviderEGL requires the widget to have a valid
EGLSurface when creating a non-offscreen GLContext. This patch falls
back to a dummy pbuffer surface or EGL_NO_SURFACE if supported, allowing
the GLContext creation to succeed. This will give us some more flexibility
on Android where the widget surface is not always readily available.

Additinally, we use the fallback surface any time MakeCurrent() is
called without a valid surface. This is needed to allow things like
Compositor shutdown when there is no widget surface available.

MozReview-Commit-ID: 1kbLIGNiOkV
2018-05-14 08:15:37 -05:00
Kartikaya Gupta
56f43bc35b Bug 1437036 - Implement GetLastTransactionId in WebRenderLayerManager. r=hiro
MozReview-Commit-ID: CLymsb5w3pk

--HG--
extra : rebase_source : e2c5ee70c637305d6057953bf5fb135d1ccf3831
2018-05-14 08:53:52 -04:00
sotaro
0098e3b6c3 Bug 1460496 - Remove WebRenderCanvasRendererSync r=nical 2018-05-14 10:25:47 +09:00
Margareta Eliza Balazs
8c891cd16f Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-05-14 19:48:37 +03:00
Kearwood Gilbert
a6a73845e8 Bug 1423731 - Update OpenVR to 1.0.18 r=rbarker
MozReview-Commit-ID: HnsMlUukB6z

--HG--
extra : rebase_source : 4c270d99cf6e54dfff653a1475a32b43548d4a77
2018-05-04 16:31:58 -07:00
Kartikaya Gupta
948e9e9519 Bug 1460861 - Update for API change in WR PR 2750. r=Gankro
MozReview-Commit-ID: F0T9oudhunt

--HG--
extra : rebase_source : 1156a8bf23919e5b49465c42ba2227a3408b30c5
2018-05-14 10:25:27 -04:00
Kartikaya Gupta
d76b5fa54a Bug 1460861 - Update webrender to commit 9d20df4e76e3b19c569fd89965f70a2c278ff0c8. r=Gankro
MozReview-Commit-ID: C9hlaYMrM7W

--HG--
extra : rebase_source : 83eb50452bfa712dd011a90a1fc1ceeddbce758f
2018-05-14 10:25:05 -04:00
James Willcox
2448df528a Bug 1453501 - Allow the compositor to be created in a paused state r=kats
MozReview-Commit-ID: B0wc8MYaBJg
2018-05-14 11:12:39 -05:00
James Willcox
369ac65ffe Bug 1453501 - Allow GLContextEGL to be used without a surface r=jgilbert
Right now GLContextProviderEGL requires the widget to have a valid
EGLSurface when creating a non-offscreen GLContext. This patch falls
back to a dummy pbuffer surface or EGL_NO_SURFACE if supported, allowing
the GLContext creation to succeed. This will give us some more flexibility
on Android where the widget surface is not always readily available.

Additinally, we use the fallback surface any time MakeCurrent() is
called without a valid surface. This is needed to allow things like
Compositor shutdown when there is no widget surface available.

MozReview-Commit-ID: 1kbLIGNiOkV
2018-05-14 11:12:39 -05:00
Brindusan Cristian
e471ad3958 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-05-12 12:50:40 +03:00
Brindusan Cristian
1df25b391a Merge inbound to mozilla-central. a=merge 2018-05-12 12:47:14 +03:00
Hiroyuki Ikezoe
4ff74a279c Bug 1461023 - Disable the assertion that checks the previous opacity animation value exists when we skip computing opacity animation. r=kats
We are going to re-enable the assertion with a proper fix in bug 1459775.

MozReview-Commit-ID: 2jy6vIImqD

--HG--
extra : rebase_source : ce81b8b2f7dfb47f7db07e820989a65eac38859a
2018-05-12 08:01:46 +09:00
Kartikaya Gupta
bc221bf045 Bug 1460988 - Don't hold the layer trees lock while making calls that block on WR threads. r=sotaro
MozReview-Commit-ID: BKNf5wpG1br

--HG--
extra : rebase_source : bd4d382095c5f562f31fb2ba2ad0098fd1944c00
2018-05-11 16:36:22 -04:00
Kartikaya Gupta
d067a7cdae Bug 1452390 - Implement paint-skipping support in WebRender. r=botond
The majority of this patch is just plumbing. The interesting parts are
in WebRenderLayerManager and APZUpdater/WebRenderScrollData. Unlike
ClientLayerManager, which updates the FrameMetrics on the client side
and sends the modified version over to the compositor, this WR version
just sends the update info over to the compositor, which then applies
the update to the metrics saved in APZUpdater before triggering the
hit-testing tree rebuild.

MozReview-Commit-ID: 4latUMa8RFw

--HG--
extra : rebase_source : d0aeaf5a9c8107bbcaf8b0da6d68a0f47f455be5
2018-05-11 21:18:22 -04:00
Kartikaya Gupta
1324d322fd Bug 1452390 - Make WebRenderScrollData::HasMetadataFor work properly on the parent side. r=botond
MozReview-Commit-ID: A2ScgCFVZ8J

--HG--
extra : rebase_source : 981b8ca3e5916397db0db523a044d4e984359e79
2018-05-11 21:18:21 -04:00
Alexis Beingessner
c9ec03e046 Bug 1451424 - emit a dispatch-to-content hittest region for all svg blobs. r=kats,mstange
MozReview-Commit-ID: 9yCF8dacZ7V

--HG--
extra : rebase_source : 1616231586866cc689d56757f3b93beb3886cda6
2018-05-08 18:32:42 -04:00
Jonathan Kew
dba372ac43 Bug 1396450 - Don't apply ToLowerCase to font feature identifiers used in @font-feature-values rules, as the spec says they're case sensitive. r=xidorn 2018-05-14 10:05:25 +01:00
Kartikaya Gupta
65a4d7b8f6 Bug 1459935 - Update for API change in WR PR 2747. r=jrmuizel
MozReview-Commit-ID: CXPExT8Ho7p

--HG--
extra : rebase_source : 9bbb52b70f1e6c750028961125215e62ddb5fb76
2018-05-11 09:15:24 -04:00
Kartikaya Gupta
5681e385b8 Bug 1459935 - Update webrender to commit 4811a6e7c06f9dd1b4056e5f5e66983842983ba0. r=jrmuizel
MozReview-Commit-ID: HUUVwbPauIk

--HG--
extra : rebase_source : 619a602c1c1730c66e517367c3fc11df76bd9479
2018-05-11 09:14:03 -04:00
Kartikaya Gupta
2b4b8a09ab Bug 1457466 - Make the GenerateFrame transaction bypass the scene builder thread. r=nical
This allows frames to be generated by the render backend thread even
while the scene builder thread is busy with a long scene build. The
GenerateFrame transaction also contains APZ and OMTA information, so
this allows the user to scroll and view OMTAnimations during long scene
builds.

MozReview-Commit-ID: KG5YC2KwIaH

--HG--
extra : rebase_source : 3ba559aa22a3a036a3b3a034ea20caacdc8c864a
2018-05-11 09:09:19 -04:00