Commit Graph

353 Commits

Author SHA1 Message Date
Robert O'Callahan
ef28de860d Bug 945634. The fixed-pos anchor point should be in the layer's coordinate system, whose 0,0 is the top-left of the fixed-pos frame. r=mattwoodrow 2013-12-13 01:33:02 +13:00
Emmanuele Bassi
141702440c Bug 773296 - Part 1: Add a preference for CSS variables. r=dbaron 2013-12-12 13:09:40 +11:00
Benoit Girard
b2639bf599 Bug 948531 - Layerize elements with transition or animation immediately. r=mattwoodrow 2013-12-11 15:48:06 -05:00
Ryan VanderMeulen
5aada6624a Backed out changeset d8fb025ca7d2 (bug 948531) for suspicion of causing OSX 10.6 debug mochitest-5 orange.
CLOSED TREE
2013-12-11 18:47:03 -05:00
Benoit Girard
c8d365b1cc Bug 948531 - Layerize elements with transition or animation immediately. r=mattwoodrow
--HG--
extra : rebase_source : 06725514680d5041c547149f6ecd758061936a4e
2013-12-11 15:48:06 -05:00
Matt Woodrow
0c90ac3d7c Bug 948221 - Part 7: Convert SurfaceFromElement to Moz2D. r=roc,Bas,bjacob 2013-12-12 10:05:27 +13:00
Matt Woodrow
9de3115a9b Bug 948221 - Part 2: Remove SFE_WANT_NEW_SURFACE since it's never used. r=roc 2013-11-27 14:05:02 +13:00
Corey Ford
c8776d4f8f Bug 916302 - Part 1: Generalize nsLayoutUtils::GetAllInFlowRects to support other types of frame rects beyond border rects. r=dholbert
This adds extra bits for the aFlags parameter to GetAllInFlowRects and GetAllInFlowRectsUnion, removes BoxToRect::GetRectFromFrameFun, and also adds a few more rect-getting methods to nsIFrame.
2013-12-03 11:13:16 -08:00
Botond Ballo
20adb2fb8e Bug 900092 - Remove FrameMetrics::ROOT_SCROLL_ID. r=kats,tn 2013-11-08 19:07:00 -05:00
Simon Montagu
f20115ff1e Add support for unicode-bidi: -moz-plaintext in XUL. Bug 869833, r=roc 2013-11-18 17:24:16 +02:00
Robert O'Callahan
3044512b73 Bug 919144. Part 10: Fold nsDisplayFixedPosition into nsDisplayStickyPosition. r=mattwoodrow
--HG--
extra : rebase_source : 597e2a178762509421a32d53be6242cd588c7995
2013-09-27 18:02:03 +12:00
Robert O'Callahan
ef35905e93 Bug 919144. Part 8: Delete lots of code that's no longer needed. r=mattwoodrow
I never liked nsDisplayListBuilder::IsFixedItem anyway, its behavior and
naming was confusing. Also, it assumed there's only one viewport displayport,
on the rootmost document, and that's a bad assumption in general.
We're able to remove calls to ForceVisiblityForFixedItem because FrameLayerBuilder
is now responsible for inflating the visible region of the fixed-pos layers.

--HG--
extra : rebase_source : e93d8e25d2f5c7f3e167e47203d961e6b4293b81
2013-09-27 18:01:16 +12:00
Robert O'Callahan
6a4446c592 Bug 919144. Part 4: Create nsLayoutUtils::IsFixedPosFrameInDisplayPort. r=mats
--HG--
extra : rebase_source : a7b7179efd91838ec7205f7109182c78814d33c5
2013-09-27 18:01:11 +12:00
Robert O'Callahan
613478ead4 Bug 919144. part 3: The displayport out parameters to GetDisplayPort and GetCriticalDisplayPort are optional, so make them optional. r=mattwoodrow
--HG--
extra : rebase_source : 487f895279982c4b74fcd720c5c97381e46036d8
2013-09-27 17:57:20 +12:00
Robert O'Callahan
3d6d117d48 Bug 919144. Part 1: Rename identifiers from 'active scroll(ed) root' to 'animated geometry root'. r=mattwoodrow
Also sneaks in a couple of other refactorings:

--HG--
extra : rebase_source : 8b0e0729f26231d98ed069b54dd4f7c1e51b10b5
2013-09-26 09:07:26 +12:00
Kartikaya Gupta
5f3734c16a Bug 937843 - Make an argument to nsLayoutUtils::FindIDFor const. r=tn 2013-11-13 13:22:24 -05:00
Robert O'Callahan
1daba93a73 Bug 911889. Part 3: Create nsLayoutUtils::HasAnimations, and suppress opacity:0 optimizations whenever there's any opacity animation even if it's not using the compositor. r=dbaron 2013-09-04 23:30:57 +12:00
Phil Ringnalda
b679ae2f4c Back out 0a88dee3b92b:dc5cc7d7b84d (bug 911889) for beaucoup unexpected assertions
--HG--
extra : rebase_source : a2a13633b6028c99a3c732dbbafe8c800bc32071
2013-10-28 23:38:02 -07:00
Robert O'Callahan
05b58a7e00 Bug 911889. Part 3: Create nsLayoutUtils::HasAnimations, and suppress opacity:0 optimizations whenever there's any opacity animation even if it's not using the compositor. r=dbaron
--HG--
extra : rebase_source : b3ffe185686e38226e0979060a74669271e1c2d5
2013-09-04 23:30:57 +12:00
Mats Palmgren
fd271184f9 Bug 929991 - Put 'text-align: true X' support behind a preference (disabled by default). r=heycam 2013-10-27 20:56:32 +00:00
Robert O'Callahan
201d29edb6 Bug 261037. Support scrolled fieldsets. r=mats
--HG--
extra : rebase_source : 248521189921b2a46f0805582a3789b27c26ecbd
2013-10-23 00:46:40 +02:00
Ed Morley
fd12559480 Backed out changeset ce20f4b16d56 (bug 261037) for reftest failures in 478811-1.html on a CLOSED TREE 2013-10-24 10:28:44 +01:00
Robert O'Callahan
f82ba263d9 Bug 261037. Support scrolled fieldsets. r=mats
The main change here is to have nsCSSFrameConstructor able to construct
a scrollframe for nsFieldSetFrame's inner frame.
To make this work properly (as much like normal scrolled elements, and
to be consistent with Chrome), we need another major change, which is to move
the padding from the nsFieldSetFrame to its inner frame. We do this by copying
the padding to the inner frame and ignoring the padding on the outer frame.
To get this right for percentage padding and intrinsic widths is a little
tricky. For that, we need nsLayoutUtils::IntrinsicForContainer to be able to
ignore the padding on a frame so we don't add it twice.
Overriding nsFieldSetFrame::GetScrollTargetFrame makes setting scrollTop/
scrollLeft on a <fieldset> work as expected.
* * *
Bug 261037 - A fieldset overflow:auto reftest.

--HG--
extra : rebase_source : d737eebdc25b3b748a84de676d5e8e066505e00b
2013-10-23 00:46:40 +02:00
Ed Morley
1cb147e161 Backed out changeset ffd9c7bbd2fe (bug 261037) for compilation failures in nsCSSFrameConstructor on a CLOSED TREE 2013-10-23 15:44:19 +01:00
Robert O'Callahan
d4185c2d7c Bug 261037. Support scrolled fieldsets. r=mats
The main change here is to have nsCSSFrameConstructor able to construct
a scrollframe for nsFieldSetFrame's inner frame.
To make this work properly (as much like normal scrolled elements, and
to be consistent with Chrome), we need another major change, which is to move
the padding from the nsFieldSetFrame to its inner frame. We do this by copying
the padding to the inner frame and ignoring the padding on the outer frame.
To get this right for percentage padding and intrinsic widths is a little
tricky. For that, we need nsLayoutUtils::IntrinsicForContainer to be able to
ignore the padding on a frame so we don't add it twice.
Overriding nsFieldSetFrame::GetScrollTargetFrame makes setting scrollTop/
scrollLeft on a <fieldset> work as expected.
* * *
Bug 261037 - A fieldset overflow:auto reftest.

--HG--
extra : rebase_source : 6ca585f685965d3a538bde64ad4057c5fd7b538f
2013-10-23 00:46:40 +02:00
Olli Pettay
cb249f7db1 Bug 928403 - optimize nsFrameConstructorState::ProcessFrameInsertions, r=roc
--HG--
rename : testing/mochitest/b2g-debug.json => testing/mochitest/b2g.json
extra : rebase_source : c45d39f4b50f248b28a6ebfb50128084bb59ebe4
2013-10-22 15:06:01 +03:00
Birunthan Mohanathas
b823b8896b Bug 784739 - Switch from NULL to nullptr in layout/; r=ehsan
--HG--
extra : rebase_source : 0d0d9e11be9d39e4457bddd0bac7e19a50b91b0b
2013-10-08 14:47:21 -04:00
Cameron McCormack
00c39ab36a Bug 921731 - Part 0: Add "layout.css.unset-value.enabled" pref. r=bzbarsky 2013-10-04 04:48:41 +10:00
Masayuki Nakano
0823bd31f1 Bug 920377 part.31 Get rid of nsEvent r=roc 2013-10-02 12:46:04 +09:00
Masayuki Nakano
096a701901 Bug 920377 part.30 Get rid of nsGUIEvent r=roc 2013-10-02 12:46:03 +09:00
Robert O'Callahan
567884049e Bug 916520. Rename nsClientRect(List) to mozilla::dom::DOMRect(List). r=khuey
--HG--
rename : content/html/content/src/nsClientRect.cpp => content/base/src/DOMRect.cpp
rename : content/html/content/src/nsClientRect.h => content/base/src/DOMRect.h
rename : dom/webidl/ClientRect.webidl => dom/webidl/DOMRect.webidl
rename : dom/webidl/ClientRectList.webidl => dom/webidl/DOMRectList.webidl
extra : rebase_source : ebe27ef21b38f7df5065f37b971508b740c8cf3c
2013-09-20 22:21:03 +12:00
Ehsan Akhgari
18ef76b0d7 Bug 921753 - Part 2: Move GraphicsFilters outside of gfxPattern.h so that we won't need to #include that header everywhere GraphicsFilter is needed; r=roc
This patch reduces the number of files that transitively #include
gfx/2d.h from 1582 to 1362.
2013-10-01 17:01:19 -04:00
Ehsan Akhgari
27c999b3b4 Bug 921753 - Part 1: Avoid #including nsStyleStructInlines.h in nsIFrame.h; r=roc
This patch reduces the number of files that transitively #include
gfx/2d.h from 1782 to 1582.
2013-10-01 17:00:38 -04:00
Ehsan Akhgari
f720bbfbaa Bug 921876 - Stop #including nsIFrame.h in nsLayoutUtils.h; r=roc
This patch does the following:
* Move nsIFrame::IntrinsicSize to mozilla::IntrinsicSize so that it can
  be forward-declared.
* Move a number of templated inline nsLayoutUtils methods to nsIFrame.
* Use mozilla::layout::FrameChildListID instead of the
  nsIFrame::ChildListID typedef in nsLayoutUtils.h.
* Move nsReflowFrameRunnable to its only user, nsProgressMeterFrame.cpp.
* Make a number of functions requiring nsIFrame.h out-of-line.
* Remove the nsIFrame.h #include from nsLayoutUtils.h and add it to the
  places which require it implicitly.
2013-09-30 17:26:04 -04:00
L. David Baron
31df6fcc33 Bug 828312 patch 9a: Make sticky positioning handle block-in-inline splits correctly. r=dholbert
This assumes that the specification for how position:sticky behaves for
block-in-inline splits matches the specification for position:relative,
in other words, matches
http://www.w3.org/TR/CSS21/visuren.html#anonymous-block-level .

It's also necessary for patch 9b since the new rule for handling of
style change hints is that a style change hint applies to all
continuations and all block-in-inline siblings ("special siblings").

The change in StickyScrollContainer::GetScrollRanges is really the fix
for bug 918994, but adjusted for the change here to use block-in-inline
siblings ("special siblings") in addition to continuations.
2013-09-25 12:28:08 -07:00
Mats Palmgren
ae50ca5ce4 Bug 919318 - Drop the Get prefix on the frame methods GetFirstContinuation, GetLastContinuation, GetFirstInFlow, GetLastInFlow and also on nsLayoutUtils::GetLastContinuationWithChild, because they never return null. r=dholbert 2013-09-25 11:42:34 +00:00
Timothy Nikkel
5a0f35ceaa Bug 847223. Part 6. Use the first reflow of relevant image frames to add/remove them from the visible list. r=mats 2013-09-14 19:05:05 -05:00
Seth Fowler
c9627e154d Bug 825771 (Part 3) - Add support for image-orientation to nsImageFrame. r=dholbert 2013-08-28 15:39:07 -07:00
Ehsan Akhgari
52416f5705 Bug 908746 - Move some macros from nsHTMLReflowState.h to nsIFrame.h so that we can stop #including nsHTMLReflowState.h in nsLayoutUtils.h; r=mats 2013-08-23 18:20:19 -04:00
David Zbarsky
214420a48a Bug 908180 - Don't #include nsGUIEvent.h in nsIPresShell.h. r=mounir 2013-08-23 13:56:20 -04:00
David Zbarsky
2dcee164d7 Backout c619171e0070 for windows assertion failure on a CLOSED TREE 2013-08-23 14:58:41 -04:00
David Zbarsky
c76b222982 Bug 908180 - Don't #include nsGUIEvent.h in nsIPresShell.h r=mounir 2013-08-23 13:56:20 -04:00
Ehsan Akhgari
c2ce7e67ab Bug 906790 - Minimize layout/base #includes; r=roc 2013-08-19 18:55:18 -04:00
Botond Ballo
cc9d060ff1 Bug 895905 - Eliminate some of the special handling of ROOT_SCROLL_ID. r=kats, r=tn 2013-08-08 15:56:08 -04:00
Botond Ballo
c7e59f7954 Bug 895905 - B2G mechanism for content to inform APZC about scroll events. Handles multi-APZC. r=kats 2013-08-08 15:56:08 -04:00
Markus Stange
a16556961c Bug 904541 - Don't #include Layers.h in nsPresContext.h. r=roc 2013-08-14 13:33:03 +02:00
Corey Ford
df05870c1e Bug 894716 - Parameterize nsLayoutUtils::GetNearestScrollableFrame. r=dbaron 2013-07-30 21:01:06 -07:00
Ryan VanderMeulen
02d1dbe0d8 Merge m-c to inbound. 2013-07-30 18:08:18 -04:00
Kartikaya Gupta
80fc21967b Bug 866232 - Update TabChild to better handle scrolling subframes. r=BenWa, mattwoodrow 2013-07-30 14:03:42 -04:00
Robert O'Callahan
343eac0301 Bug 837242. Part 1: Convert bool parameters to flags. r=mats 2013-07-26 14:31:41 +12:00