Commit Graph

29274 Commits

Author SHA1 Message Date
Kartikaya Gupta
f789357a7c Bug 1436287 - Disable high-frequency intermittent failure until the proper fix is in place. r=botond
MozReview-Commit-ID: KMcKyGrvOCi

--HG--
extra : rebase_source : a1cda66266fb1d82dc306d728e37d7897fcdfb95
2018-03-06 04:33:31 -05:00
Kartikaya Gupta
98952dab6e Bug 1442627 - Stop exporting a few other apz/src headers. r=botond
These were mostly exported because APZCTreeManager included them and now
they don't need to be exported any more.

MozReview-Commit-ID: 8W3vKOvzYW3

--HG--
extra : rebase_source : 8da95a203692ab3a88d37e66071b914682b44f14
2018-03-06 10:25:39 -05:00
Kartikaya Gupta
45d31fa895 Bug 1442627 - Stop exporting APZCTreeManager.h in mozilla/layers/. r=botond
MozReview-Commit-ID: GC5fSWOYtF5

--HG--
extra : rebase_source : e2dfe679595bf9208e082699a99375cd509b66e3
2018-03-06 10:25:39 -05:00
Kartikaya Gupta
b18710abb6 Bug 1442627 - Move static helpers from APZCTreeManager to APZUtils. r=botond
This also includes unified build fixes that were needed as a result of
the shuffling around.

MozReview-Commit-ID: 1AGG3DHnN1m

--HG--
extra : rebase_source : 7399cea6dff2bd91ab305dee22d93b32382cc0be
2018-03-06 10:25:39 -05:00
Kartikaya Gupta
d437c0bee5 Bug 1442627 - Reduce exposure of the APZCTreeManager. r=botond
Callers should be using one of the more specific subinterfaces like
IAPZCTreeManager (for controller-API methods) or APZSampler (for
sampler-API methods). There's also a bunch of android-specific
dynamic toolbar code that uses this function - I don't want to
deal with that right now, so instead of removing it entirely we can just
make it Android-only.

MozReview-Commit-ID: I8DYWLYoFgP

--HG--
extra : rebase_source : 75e05825194f9c6843506bb5d82e1a0c6e2b08bb
2018-03-06 10:25:38 -05:00
Kartikaya Gupta
6107f5de3d Bug 1442627 - Add new APZSampler APIs to set the test scroll offset and zoom. r=botond
MozReview-Commit-ID: DrH1D42jfJx

--HG--
extra : rebase_source : 22c2546a8188c871bf106d5883452a1be32c482e
2018-03-06 10:25:37 -05:00
Kartikaya Gupta
752091f7a7 Bug 1442627 - Switch some call sites in WebRenderBridgeParent to use APZSampler. r=botond
MozReview-Commit-ID: AqtcAyTkcEK

--HG--
extra : rebase_source : dd00ef41c0dc2ca3f8179a217019d964735af320
2018-03-06 10:25:37 -05:00
Kartikaya Gupta
551f604b60 Bug 1442627 - Don't use GetAPZCTreeManager in CrossProcessCompositorBridgeParent. r=botond
Although CrossProcessCompositorBridgeParent still needs to create a
dummy APZCTreeManager of its own in place, we can at least stop it from
grabbing the "real" APZCTreeManager from CompositorBridgeParent, which
allows access to methods that might not be properly guarded with respect
to thread safety.

MozReview-Commit-ID: Btvez3OkFPs

--HG--
extra : rebase_source : a4bec1769ff2fb899bb2e65f99f8e715f9a94c44
2018-03-06 10:25:36 -05:00
Cosmin Sabou
c17d867e25 Merge inbound to mozilla-central. a=merge
--HG--
rename : browser/base/content/tabbrowser.js => browser/modules/AsyncTabSwitcher.jsm
2018-03-06 06:27:48 +02:00
Botond Ballo
084c2d5c2d Bug 1443231 - Another follow-up to fix a debug assertion in the gtest. r=botond
MozReview-Commit-ID: 4p1zurPLCRB

--HG--
extra : rebase_source : 078b5aa8d558bc2c8bdd13ebe142706287c8123b
2018-03-05 17:00:46 -05:00
Botond Ballo
1b4474359e Bug 1443231 - Follow-up to fix warning-as-error on Windows (CLOSED TREE). r=botond
MozReview-Commit-ID: 52PVwcjRVu3

--HG--
extra : rebase_source : 1c2b39bdcce30f47d1b675615a35c4573556459e
2018-03-05 16:38:17 -05:00
Cosmin Sabou
ed1b2a8736 Backed out 4 changesets (bug 1437167) for build bustages on nsUpdateDriver.cpp and WindowsMessageLoop.cpp on a CLOSED TREE.
Backed out changeset b98740e7c639 (bug 1437167)
Backed out changeset 4476e8f51fa6 (bug 1437167)
Backed out changeset c79dc40faa41 (bug 1437167)
Backed out changeset b608d2dcbb86 (bug 1437167)
2018-03-06 00:09:46 +02:00
Jonathan Kew
195f35adee Bug 253143 - Do not add letter-spacing after zero-width format controls such as ZWSP. r=jwatt 2018-03-05 21:57:57 +00:00
Jonathan Watt
88c85e4536 Bug 499025 - Don't open an error pop-up if the user cancels printing. r=bobowen
This fixes PrintTargetWindows::BeginPrinting to detect when the
user cancels and have it return NS_ERROR_ABORT in that case.

The rest of the changes are simply making sure that the various
call points up the call stack don't print a warning message if
NS_ERROR_ABORT is returned up from
PrintTargetWindows::BeginPrinting.

MozReview-Commit-ID: 6xZ5SPje6TT
2018-02-06 20:14:47 +00:00
Nika Layzell
68cee68ee8 Bug 1440511 - Part 9: Correct serialization and deserialization of arrays of Shmem objects, r=froydnj
MozReview-Commit-ID: KEFduw2Pn8r
2018-03-05 16:00:03 -05:00
Nika Layzell
69042a522a Bug 1440511 - Part 8: Include ParamTraits impls which are used in ipdlh files, r=froydnj
MozReview-Commit-ID: 9AfzlhyTgsY
2018-03-05 16:00:03 -05:00
Nika Layzell
262be91f75 Bug 1437167 - Part 1: Stop using PRIntervalTime as the argument to CondVar::Wait and Monitor::Wait, r=mstange, r=froydnj
MozReview-Commit-ID: BN18I8Q6c7S
2018-03-05 16:00:00 -05:00
Nathan Froyd
062f6d980e Bug 1443236 - remove static init and shutdown nsRegion routines; r=kats
These routines are no-ops; let's get rid of them.
2018-03-05 14:06:50 -05:00
shindli
c91203c009 Backed out changeset f24d341229db (bug 1443095) for c3 leaksanitizer memory leaks on a CLOSED TREE 2018-03-05 18:36:38 +02:00
Jonathan Kew
32fdb32190 Bug 1443095 - Update graphite2 library to release 1.3.11. r=jrmuizel 2018-03-05 15:33:01 +00:00
Jonathan Kew
d405368c27 Bug 1435692 - patch 1 - Add support in gfx for automatic application of the optical size axis in variation fonts that support it. r=jwatt 2018-03-03 22:12:10 +01:00
shindli
b1ab6c8442 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-03-03 01:18:17 +02:00
shindli
73e569944b Merge inbound to mozilla-central. a=merge 2018-03-03 01:06:35 +02:00
Kartikaya Gupta
c5fc95c74e Bug 1442608 - Fix rendering failure with WebRender on Windows. r=nical
This works around a rendering failure on Windows where the browser window opens
and remains white. Details of why this happens can be found in bug 1442748; this
workaround just forces a scene build if we get a GenerateFrame request after
having the root pipeline id set on the pending scene, but if it hasn't yet
been propagated to the current scene. This ensures the render isn't skipped
and prevents the C++-side frame throttler from preventing future composites.
2018-03-02 16:45:18 -05:00
Jeff Gilbert
92795185ee Bug 1440849 - Update ANGLE to firefox-60 branch.
MozReview-Commit-ID: lF5zaIWzjP
2018-03-02 13:42:31 -08:00
Jeff Gilbert
b7a6fddcc3 Bug 1440849 - Nuke old ANGLE.
MozReview-Commit-ID: G0uEx2efEKe
2018-03-02 13:42:24 -08:00
Jeff Gilbert
d7f00b4cb7 Bug 1440849 - Gecko changes due to Angle update. - r=jrmuizel
MozReview-Commit-ID: LJhesu56ORJ
2018-03-02 13:42:20 -08:00
Jeff Gilbert
6d4ebfc2a5 Bug 1440849 - Add update-angle.py to facilitate updating Angle. - r=jrmuizel
MozReview-Commit-ID: 4aWcnb2UCmB
2018-03-02 13:42:17 -08:00
Andrew Osmond
d41a50c664 Bug 1421818 - Disable D2D backend if WebRender is enabled. r=jrmuizel 2018-03-02 13:16:26 -05:00
Kartikaya Gupta
7bb7b24179 Bug 1441916 - Introduce an APZSampler interface for APZCTreeManager. r=botond
This interface should be used for accessing any sampler-thread functions
on APZCTreeManager. Eventually the interface will handle thread
delegation so that if it is called from a thread that is not the sampler
thread it will redirect the calls appropriately. For now it just allows
to logically group the public APZCTreeManager methods that are to be run
on the sampler thread.

MozReview-Commit-ID: GArPvjfuYYr

--HG--
extra : rebase_source : 884cf6c3ce00f3df8ffe7dfa5fc12ef971f3cefc
2018-03-01 23:00:41 -05:00
Kartikaya Gupta
3565e0cee9 Bug 1441916 - Modify the static GetAPZCTreeManager to return an IAPZCTreeManager. r=botond
This static function has only two call sites. One (in GPUProcessManager)
is unused, so it can be removed. The other (in
InProcessCompositorSession) takes the returned APZCTreeManager and
exposes it as an IAPZCTreeManager. Instead of doing this, we can simply
expose it as an IAPZCTreeManager from CompositorBridgeParent itself, to
reduce the number of places that can potentially grab a handle to the
APZCTreeManager.

MozReview-Commit-ID: BjLf6GSsnKz

--HG--
extra : rebase_source : ab24190a12053db06192fab4d1b7a932fe2d1724
2018-03-01 23:00:41 -05:00
Kartikaya Gupta
bad638dcd9 Bug 1441916 - Introduce the notion of the APZ sampler thread. r=botond
The sampler thread is similar to the controller thread in that it doesn't
correspond to a particular actual thread, but instead introduces an
abstraction that allows us to reason about code flow and data ownership
that is logically grouped on a single thread. For now the sampler thread
remains mapped to the compositor thread, but eventually we will allow
it to be render backend thread when webrender is enabled.

MozReview-Commit-ID: D6i2t5lDvkv

--HG--
extra : rebase_source : 06211ad878973c76ca3fd618386bbbd0cfdd4821
2018-03-01 23:00:41 -05:00
Kartikaya Gupta
3f4e721fca Bug 1441916 - Remove calls to GetIndirectShadowTree inside APZCTreeManager. r=botond
Calling GetIndirectShadowTree and holding on to the result - or holding
on to pointers from the LayerTreeState - is fine on the compositor
thread, but if we want to allow APZ to accept layer updates and scroll
offset sampling on some other thread, then we should avoid doing this.
This patch replaces calls to GetIndirectShadowTree with the
CallWithIndirectShadowTree function and ensures anything that outlives
the function is held on to with a RefPtr. Of course, this only takes
care of the more superficial concerns - we will also need to robustify
those classes' implementations to handle being called from multiple
threads; that will be tackled later.

MozReview-Commit-ID: E40JGFjooPo

--HG--
extra : rebase_source : e2f88c621433bb99919abf2d3a78ce1c53463d2d
2018-03-01 23:00:41 -05:00
Kartikaya Gupta
1f2c9f3565 Bug 1441916 - Move APZTestData from the LayerTreeState structure into the APZ. r=botond
This encapsulates the APZTestData better inside APZCTreeManager, which
we will want once we allow the hit-test tree update to happen on a
thread other than the compositor thread.

MozReview-Commit-ID: 66uSsagVfEu

--HG--
extra : rebase_source : 8e6ae809bfa0dde4e0e5fb2e321dd315174eafd6
2018-03-01 23:00:40 -05:00
Kartikaya Gupta
dc48e7a8ab Bug 1441916 - Replace the code to clear focus targets with the simpler hook. r=botond
Instead of keeping track of all the layers ids that we've seen during
the tree walk, we can now just get notified when a layer subtree is
removed, and clear out the state for that layers id at that point.

MozReview-Commit-ID: DVlWX3upWJ6

--HG--
extra : rebase_source : 8510418115a86a3c898f055db2cfa92cda2a0642
2018-03-01 23:00:40 -05:00
Kartikaya Gupta
728f8af857 Bug 1441916 - Add hooks in APZCTreeManager to respond to layer tree changes. r=botond
MozReview-Commit-ID: 4dDYQ1YGOO

--HG--
extra : rebase_source : 819e53bde7b1ebf4a6d9d5df0f0f96956c0d0006
2018-03-01 23:00:40 -05:00
Kartikaya Gupta
55418e4896 Bug 1440664 - Re-generate FFI header. r=jrmuizel
MozReview-Commit-ID: 8oJcG2CPR2U

--HG--
extra : rebase_source : e68540523e0c0ba3f755dfdd60b120eeebe14a88
2018-03-01 16:52:36 -05:00
Martin Robinson
ee5a6b3d13 Bug 1440664 - Update gecko WR bindings for API changes in WR PR 2449. r=kats
MozReview-Commit-ID: AUTNkZ36p8b

--HG--
extra : rebase_source : 4452312fca3355f2d8830eb94f317e48777e8248
2018-03-01 16:49:54 -05:00
Kartikaya Gupta
62f9190877 Bug 1440664 - Update webrender to commit 22b831c02479eea31821f49a0fac7dd699083557. r=jrmuizel
MozReview-Commit-ID: 38UtaEA1NuB

--HG--
extra : rebase_source : c35153e2303cdef27020687718623de2120d29bb
2018-03-01 16:49:20 -05:00
Matt Woodrow
720a1bf71e Bug 1440177 - Part 2: Combine PaintedLayerItemsEntry and PaintedDisplayItemLayerUserData into a single struct. r=jnicol
These two structs store very similar state (including duplicating the mask layer common clip count), and the former uses an expensive hashtable for lookups.
This patch combines the two, and uses a vector of entries instead of the hashtable so we can do the cleanup pass.
* * *
[mq]: fix

MozReview-Commit-ID: KamhbGAIqpD

--HG--
extra : rebase_source : 2d4c1522b04018dfab5cd4eabde828349548548c
2018-02-13 15:56:43 +13:00
Dorel Luca
3ccafa2b66 Merge mozilla-inbound to mozilla-central. a=merge 2018-03-02 00:09:29 +02:00
Masatoshi Kimura
b1b043af08 Bug 1442266 - Stop including unnecessary <iostream>. r=froydnj
MozReview-Commit-ID: B0JDqyBanFE

--HG--
extra : rebase_source : dec1e2678083e3fb2b9a6b89322d1fa747ed6d4a
2018-03-01 23:07:56 +09:00
Jonathan Kew
464c469099 Bug 1440938 - Fall back to cairo's glyph metrics API if FreeType fails in some way, or if we're not using a variation font. r=lsalzman 2018-02-28 22:02:25 +00:00
Andrew Osmond
2088409e88 Bug 523950 - Part 3. Add preferences to control animated image decoding behaviour. r=tnikkel
image.animated.decode-on-demand.threshold-kb is the maximum size in kB
that the aggregate frames of an animation can use before it starts to
discard already displayed frames, and redecode them as necessary. The
lower it is set to, the less overall memory we will consume at the
expense of execution time for as long as the tab with the animation(s)
above the threshold are kept open.

image.animated.decode-on-demand.batch-size is the minimum number of
frames we want to have buffered ahead of an animation's currently
displayed frame. The decoding will request this number of frames at a
time to maximize use of memory caching. Note that this is related to the
above preference as well; increasing the batch size will in effect raise
what the minimum threshold. This simplifies the logic in patches later
in the series.
2018-02-28 13:34:52 -05:00
Florian Quèze
c714053d73 Bug 1433175 - scripted patch to replace Components.classes[, Components.interfaces.nsI, Components.utils. and Components.results. with Cc, Ci, Cu and Cr, r=Mossop. 2018-02-28 18:51:33 +01:00
Ryan VanderMeulen
6ecf16b619 Bug 1434447 - Update HarfBuzz to 1.7.5. r=jfkthame
--HG--
extra : rebase_source : 04cf40893bd7dc2e2cf7727574af1ef956968f84
2018-02-27 12:37:56 -05:00
Andreea Pavel
fa0861e443 Merge mozilla-inbound to mozilla-central. a=merge on a CLOSED TREE 2018-02-28 00:24:02 +02:00
Emilio Cobos Álvarez
c03ffd9c62 Bug 1425759: Simplify the style backend type setup. r=bholley
Now that what we use to decide whether a document is styled by Servo are only
prefs and the doc principal, we don't need to inherit the style backend type,
since unless the pref has changed, the result will be the same.

MozReview-Commit-ID: KBmeBn1cRne
2018-02-27 12:39:20 +01:00
Doug Thayer
52f81f80c7 Bug 1398845 - Handle null mBuffer in PaintedLayerComposite::IsOpaque r=mstange
In some cases we can end up with a PaintedLayerComposite still present
in the layer tree but with its mBuffer cleaned up. Whether this should
be occurring or not is still under discussion, but nevertheless a
PaintedLayerComposite without its mBuffer should not be considered
opaque, and treating it as opaque results in a black flash on OSX when
following links from the activity stream.

MozReview-Commit-ID: KklHEivfBWZ

--HG--
extra : rebase_source : aaad21550d520501b788505389ad7006dc41377c
2018-02-22 20:53:10 -08:00
Zhang Junzhi
3492fb331e Bug 1438794 - Makes single-line text controls in vertical-writing mode vertically scrollable if they overflow vertically; and makes them horizontally unscrollable no matter whether they overflow horizontally. r=kats
As for now, the scrollable direction with a mouse wheel for a single-line text
control is hard-coded; that is, only horizontal wheel scrolls are able to take
effect while vertical ones aren't. However, this isn't the desired case for
vertical writing mode, where the opposite case definitely suits better.

This commit refines the hard-coded scrollable direction for a single-line text
control to be writing-mode-adaptive.

MozReview-Commit-ID: 4Zkoe2ExPCZ

--HG--
extra : rebase_source : 113b2ea80b6bbbcd2d8379b438de97eedd616551
2018-02-23 02:40:44 +08:00