Commit Graph

1426 Commits

Author SHA1 Message Date
Ryan Hunt
d4ca63272b Bug 1460753 - Remove TelemetryScrollProbe. r=smaug
The probe is expired and there's no clear owner here so let's remove this
for now.
2018-06-26 17:31:27 -05:00
Emilio Cobos Álvarez
0348c342b8 Bug 1470930: Use enums for passing arguments for event dispatch. r=smaug
MozReview-Commit-ID: DsNuF7GAflJ
2018-06-26 18:22:06 +02:00
Mike Conley
1a33d3d8d9 Bug 1449756 - Make DisplayPort suppression PresShell specific and not process global. r=kats
Originally, DisplayPort suppression was a process-global static. This change makes it possible
to control DisplayPort suppression on a per-PresShell basis.

Differential Revision: https://phabricator.services.mozilla.com/D1759
2018-06-25 21:42:25 +00:00
Kartikaya Gupta
80f159b687 Bug 1436409 - Remove the nsDisplayLayerEventRegions display item. r=mattwoodrow,tnikkel
MozReview-Commit-ID: 6mw0WUGGT0n
2018-06-08 17:31:27 -04:00
Xidorn Quan
177717d2c9 Bug 1423017 - Add a telemetry for out-of-reach overflowing on root. r=botond
MozReview-Commit-ID: 2CyZTVBFP59
2018-06-01 15:35:32 +10:00
arthur.iakab
d31c592e90 Backed out changeset 83c614479dda (bug 1423017) For braking Android reftests 2018-06-08 13:44:17 +03:00
Xidorn Quan
47516fb3bd Bug 1423017 - Add a telemetry for out-of-reach overflowing on root. r=botond
MozReview-Commit-ID: 2CyZTVBFP59
2018-06-01 15:35:32 +10:00
Coroiu Cristina
446a0a1c53 Backed out changeset ad8f78a9b78c (bug 1423017) for causing multiple failures at build/src/dom/base/nsDocument.cpp on a CLOSED TREE 2018-06-07 17:36:02 +03:00
Xidorn Quan
f59b7de243 Bug 1423017 - Add a telemetry for out-of-reach overflowing on root. r=botond
MozReview-Commit-ID: 2CyZTVBFP59
2018-06-01 15:35:32 +10:00
Cameron McCormack
322d7ed5cb Bug 1466448 - Part 2: Remove unused ReflowOutput::mFlags. r=mats 2018-06-04 16:22:10 +10:00
Timothy Guan-tin Chien
282663eb89 Bug 1464412 - Flip vertical resizers on rtl sites r=dao
MozReview-Commit-ID: E0ejPUUCJiJ
2018-05-26 10:18:19 +08:00
Daniel Zielas
be0fdc4ea4 Bug 1455182 - Additional cleanup to nsDisplayOwnLayer and ScrollbarData. r=botond 2018-05-25 07:20:39 +02:00
Matt Woodrow
135bfc272b Bug 1462412 - Correctly ignore the perspective property for frames that aren't transformable. r=dbaron 2018-05-23 10:41:19 +12:00
Matt Woodrow
732163ed31 Bug 1460482 - Force root scroll frame overlay scroll bars to be always on top. r=mstange
MozReview-Commit-ID: 3zeykuDgEHc
2018-05-10 16:52:12 +12:00
Xidorn Quan
e4b77a5e78 Bug 1460116 - Remove ShouldHideScrollbars. r=jimm
MozReview-Commit-ID: 7v6Eylefk4t
2018-05-09 11:40:58 +10:00
Chris Peterson
5d6b16ea3b Bug 1457813 - Part 2: Replace non-asserting NS_PRECONDITIONs with MOZ_ASSERTs. r=froydnj
s/NS_PRECONDITION/MOZ_ASSERT/ and reindent

MozReview-Commit-ID: KuUsnVe2h8L
2018-04-28 12:50:58 -07:00
Matt Woodrow
e1c0c17a13 Bug 1456534 - Make sure we do a full display list rebuild on the next frame after creating a displayport during painting. r=mstange
MozReview-Commit-ID: 9SZMjf43G7S
2018-05-04 10:23:18 -04:00
Neil Deakin
caf5cbe37b Bug 1444920, remove the debug='true' flag from xul elements and the corresponding debug frame flags, r=dholbert 2018-05-02 10:32:54 -04:00
Timothy Guan-tin Chien
d9c731270c Bug 1450017 - Part IV, Always set resizer direction explicitly in ScrollFrameHelper::CreateAnonymousContent() r=enndeakin+6102
Given that we have access to the RTL/writing modes information via
ScrollFrameHelper::IsPhysicalLTR(), set the dir to bottomleft/bottomright
instead of context-aware value bottomend.

MozReview-Commit-ID: Lfe053WOsY2
2018-04-10 21:10:29 +08:00
Jamie Nicol
09d3582344 Bug 1449608 - Avoid calling ComputeScrollMetadata repeatedly for same scroll frame and clip. r=mstange
Currently in ContainerState::SetupScrollingMetadata we call
ComputeScrollMetadata for every layer and for each ASR in the layer's
clip chain. If there are many sibling layers with the same clip then
this is largely wasted work.

This change makes us cache the most recently calculated result, and
only recalculate if the ASR or clip is different.

There was a small portion of ComputeScrollMetadata that must actually
be executed for every layer and ASR in its clip chain. This has been moved
to a separate function, ClipLayerToDisplayPort, that is still called
every time.

MozReview-Commit-ID: 7Zzblmimtc5
2018-04-19 14:48:04 +01:00
Narcis Beleuzu
0660cc7dfd Backed out changeset 544e2832e783 (bug 1449608) for bustages "xul.dll : fatal error LNK112". CLOSED TREE 2018-04-24 21:06:41 +03:00
Jamie Nicol
cd4876a599 Bug 1449608 - Avoid calling ComputeScrollMetadata repeatedly for same scroll frame and clip. r=mstange
Currently in ContainerState::SetupScrollingMetadata we call
ComputeScrollMetadata for every layer and for each ASR in the layer's
clip chain. If there are many sibling layers with the same clip then
this is largely wasted work.

This change makes us cache the most recently calculated result, and
only recalculate if the ASR or clip is different.

There was a small portion of ComputeScrollMetadata that must actually
be executed for every layer and ASR in its clip chain. This has been moved
to a separate function, ClipLayerToDisplayPort, that is still called
every time.

MozReview-Commit-ID: 7Zzblmimtc5
2018-04-19 14:48:04 +01:00
Matt Woodrow
af78a1a9ab Bug 1439809 - Add an index parameter to nsDisplayWrapList to prevent scrollbar frames from creating duplicates. r=mattwoodrow
MozReview-Commit-ID: 8somakqqA3P
2018-04-24 12:59:08 +12:00
Andreea Pavel
3d0b771dd9 Backed out changeset b443e56d2f62 (bug 1449608) for build bustages on a CLOSED TREE 2018-04-24 00:16:58 +03:00
Jamie Nicol
2558f2bd84 Bug 1449608 - Avoid calling ComputeScrollMetadata repeatedly for same scroll frame and clip. r=mstange
Currently in ContainerState::SetupScrollingMetadata we call
ComputeScrollMetadata for every layer and for each ASR in the layer's
clip chain. If there are many sibling layers with the same clip then
this is largely wasted work.

This change makes us cache the most recently calculated result, and
only recalculate if the ASR or clip is different.

There was a small portion of ComputeScrollMetadata that must actually
be executed for every layer and ASR in its clip chain. This has been moved
to a separate function, ClipLayerToDisplayPort, that is still called
every time.

MozReview-Commit-ID: 7Zzblmimtc5
2018-04-19 14:48:04 +01:00
Daniel Zielas
09c4bc2cb0 Bug 1453469 - Remove nsDisplayOwnLayer::mScrollTarget. r=botond
MozReview-Commit-ID: 1LAWH96mm5m
2018-04-14 09:42:45 +02:00
Sebastian Hengst
d91e9954eb Backed out 4 changesets (bug 525063) on request from Andi. a=backout
Backed out changeset 516c4fb1e4b8 (bug 525063)
Backed out changeset 6ff8aaef2866 (bug 525063)
Backed out changeset bf13e4103150 (bug 525063)
Backed out changeset d7d2f08e051c (bug 525063)
2018-04-13 16:01:28 +03:00
shindli
0d3a6e02cc Merge inbound to mozilla-central. a=merge 2018-04-12 02:45:34 +03:00
Tristan Bourvon
6095241db8 Bug 525063 - Initialize uninitialized class attributes in m-c. r=ehsan 2018-04-10 21:11:02 +02:00
Matt Woodrow
3ae7a838dd Bug 1451971 - Rebuild the whole page when we have perspective or preserve-3d. r=miko
MozReview-Commit-ID: 2SkKvpdLWMi
2018-04-11 21:49:30 +12:00
Nika Layzell
cccd4523db Bug 1438026 - Part 3: Replace nsPresState with the new PresState type, r=baku 2018-04-10 17:49:44 -04:00
Matt Woodrow
53b2b93de8 Bug 1450360 - Respect the z-index property set on scrollbars. r=mstange 2018-04-03 12:13:48 +12:00
Matt Woodrow
a87fa744ef Bug 1448841 - Part 4: Always put the CompositorHitTestInfo for inactive scrollports at the very top. r=mstange
MozReview-Commit-ID: 4SuL4ErQggS
2018-03-29 23:02:25 +13:00
Matt Woodrow
6ad1ef596f Bug 1448841 - Part 3: Disable partial display list building when we have overlay scrollbars. r=mstange
MozReview-Commit-ID: HeMaqItUJdD
2018-03-29 23:01:47 +13:00
Matt Woodrow
9729a23cc1 Bug 1448841 - Part 2: Only compute the highest z-index for overlay scrollbars. r=mstange
MozReview-Commit-ID: KFw4dbdCHMf
2018-03-29 23:01:21 +13:00
Emilio Cobos Álvarez
1d4859a89a Bug 1447483: Merge nsStyleContext and ServoStyleContext, rename to ComputedStyle. r=jwatt on a CLOSED TREE
MozReview-Commit-ID: JPopq0LudD
2018-03-22 20:06:24 +01:00
Emilio Cobos Álvarez
97286b35c8 Back out changeset b683bb3f22a1 (Bug 1447483) for not landing with all the files. r=me on a CLOSED TREE
This reverts commit 1808914126bb9f9e4a82d2c3d7ac961885fe7d62.

MozReview-Commit-ID: 5skESBseEvo
2018-03-22 20:05:22 +01:00
Emilio Cobos Álvarez
1f5d8de5cc Bug 1447483: Merge nsStyleContext and ServoStyleContext, rename to ComputedStyle. r=jwatt
MozReview-Commit-ID: JPopq0LudD
2018-03-22 19:48:42 +01:00
Boris Zbarsky
152cd3ba6e Bug 1447098 part 1. Rename FromContent on various DOM classes to FromNode. r=mystor
MozReview-Commit-ID: 202nkbmkwfR
2018-03-21 17:39:04 -04:00
Sylvestre Ledru
055d8432e6 Bug 1443080 - Use the static call for static methods (not instance) r=Ehsan
MozReview-Commit-ID: JwHh4bzxuTR
2018-03-16 14:29:15 +01:00
Coroiu Cristina
8c03201dcc Backed out 2 changesets (bug 1443080) for spidermonkey build bustage at build/src/js/src/jit/BaselineCacheIRCompiler.cpp
Backed out changeset 7d509bb8a35d (bug 1443080)
Backed out changeset 53bdcd5937cd (bug 1443080)
2018-03-14 11:13:21 +02:00
Sylvestre Ledru
4a52aab337 Bug 1443080 - Use the static call for static methods (not instance) r=Ehsan
MozReview-Commit-ID: JwHh4bzxuTR
2018-03-05 13:43:54 +01:00
Botond Ballo
db8e4c6e60 Bug 1307555 - Create a hit test info item for a scroll frame's scrolled frame that's not clipped to the displayport. r=mstange
MozReview-Commit-ID: 5MJg4zqxSAk
2018-02-26 19:03:32 -05:00
Chris Peterson
20b28f1d54 Bug 1443402 - Fix some -Wmissing-prototypes warnings in layout. r=dholbert
-Wmissing-prototypes is a new optional warning available in clang ToT. It warns about global functions that have no previous function declaration (e.g. from an #included header file). These functions can probably be made static (allowing the compiler to better optimize them) or they may be unused.

Confusingly, clang's -Wmissing-prototypes is equivalent to gcc's -Wmissing-declarations, not gcc's -Wmissing-prototypes. A function prototype is a function declaration that specifies the function's argument types. C++ requires that all function declarations specify their argument types, but C does not. As such, gcc's -Wmissing-prototypes is a C-only warning about C functions that have no previous function *prototypes* (with argument types), even if a previous function *declaration* (without argument types) was seen.

MozReview-Commit-ID: FGKVLzeQ2oK
2018-02-22 21:03:45 -08:00
Emilio Cobos Álvarez
cc74b7b9fd Bug 1440258: Flag doc level anonymous content instead of guessing. r=bholley
Poking at the frame tree has problems: If we poke in negative (using
eSkipNativeAnonymousContent), as we were doing, we mess up the case where we're
actually _not_ doc-level, and _not_ ::before or ::after. This can't happen for
content documents, but can happen for chrome (since nsDocElementBoxFrame
implements nsIAnonymousContentCreator).

If we poke in positive, as we used to, you get that right, but mess up the
root scrollbar case.

Instead, use a node property to mark doc level anon content. This is a case rare
enough that it seems worth to not steal a node bit.

To recap the failure:

 * The initial value of -moz-control-character-visiblity is different on beta
   and nightly.

 * XUL has a global rule setting -moz-control-character-visibility on the root,
   to a value so that it's the initial one on nightly, but the non-initial one
   on beta.

 * Changes to this property cause a reframe.

 * Reframes of a nsIAnonymousContentCreator anon content reframe the container.

 * We were failing to inherit correctly for the nsIAnonymousContentCreator
   content for the root XUL element on the initial styling, inheriting from the
   default computed values instead, since we failed to reach the root element's
   primary frame from GetFlattenedTreeParentForDocumentElementNAC ->
   AppendDocumentLevelNativeAnonymousContentTo, since the primary frame is set
   _after_ processing children.

   This seems somewhat risky to change, and inconsistent with any other stuff
   the frame constructor does, see bug 973390.

 * Given that, the next restyle of the root element, in this case caused due to
   the customizable UI, we _found_ the actual correct parent, recomputed the
   style, saw that -moz-control-character-visiblity had changed, and reframed.
   But we were reframing the whole window, not just the NAC, because of the
   fourth bullet point. Reframing the whole window caused us to lose the popup
   state (that's bug 1440506).

   Worse than that is the fact that given we reframe and reconstruct the
   anonymous countent again, we go back to the initial bogus state, just
   awaiting for the next restyle to reframe the whole window.

I wish there was a bullet-proof way to test it that isn't just counting reframes
and relying on which properties reframe or not, but due to the nature of
nsIAnonymousContentCreator's NAC, it's not possible in any easy way I can think
of.

MozReview-Commit-ID: IPYB5trsN8R
2018-02-23 20:31:52 +01:00
Matt Woodrow
6f1864699b Bug 1436904 - Part 1: Add a static constructor function for display items. r=Bas 2018-02-13 13:43:28 +13:00
Dorel Luca
3276af0faa Backed out 3 changesets (bug 1436904) for many crashes see bugs: 1440281, 1440302, 1440303, 1440313. a=backout
Backed out changeset 27f0762d4472 (bug 1436904)
Backed out changeset 27640f52e188 (bug 1436904)
Backed out changeset 2b4d117c27dc (bug 1436904)
2018-02-22 17:28:59 +02:00
Botond Ballo
3583ad5eaf Bug 1425573 - Require target confirmation for events that hit unlayerized scroll frames with non-default overscroll-behavior. r=kats
MozReview-Commit-ID: K88tXahKg8H
2018-02-16 20:16:41 -05:00
Matt Woodrow
2bcbca93c9 Bug 1436904 - Part 1: Add a static constructor function for display items. r=Bas 2018-02-13 13:43:28 +13:00
Emilio Cobos Álvarez
0b6cb79adb Bug 1436855: Flush notifications via the document in AsyncScrollPortEvent. r=bz
One at a time...

MozReview-Commit-ID: JbPtIneDlg0
2018-02-12 01:05:14 +01:00