Граф коммитов

1490 Коммитов

Автор SHA1 Сообщение Дата
Nicholas Nethercote e60696c015 Bug 1228125 (part 1) - Remove nsIWidget::GetBoundsUntyped(). r=botond.
This requires adding a new overloading of LayoutDevicePixel::ToAppUnits and a
new PixelCastJustification: LayoutDeviceIsParentLayerForRCDRSF.

--HG--
extra : rebase_source : b6d044619918818815b40c1173aa4e0551db28a1
2015-11-25 20:32:47 -08:00
Xidorn Quan 7b1f42e5c6 Bug 1202940 part 2 - Remove layout.css.ruby.enabled pref. r=dbaron
--HG--
extra : source : bb1c73598b74195f9877b189f2e2e19fb1eb0fc0
2015-12-01 09:39:37 +11:00
Randall Barker c3c082c5dd Bug 1224015 - Part 3: ifdef changes to C++APZ so that they only apply to single process APZ. r=tnikkel
Added MOZ_SINGLE_PROCESS_APZ flag.
2015-11-26 20:51:13 -06:00
Randall Barker 73d7c06ec0 Bug 1224015 - Part 1: nsLayoutUtils functions do not account for nsPresShell resolution r=tnikkel 2015-11-26 20:51:13 -06:00
Matt Woodrow c684f27337 Bug 1168263 - Remove TransformRectOut since it's unused. r=roc 2015-11-26 22:32:35 +13:00
Ting-Yu Lin 78fb3c80ac Bug 1226875 - Remove nsIFrame::GetLastChild(). r=mats
--HG--
extra : commitid : J8NTL74JosY
extra : rebase_source : ea686ef5e1bd5d59701ffb4c309c9ff9d0435beb
2015-11-26 17:12:39 +08:00
Ting-Yu Lin 79afc81f6e Bug 1226875 - Remove nsIFrame::GetFirstChild(). r=mats
--HG--
extra : commitid : J8NTL74JosY
extra : rebase_source : 50a196905ac06d09fea17bb1aa17efe821cc7cbb
2015-11-26 17:12:39 +08:00
Jeff Gilbert 19d84fb0fe Bug 1221822 - Finish the WebGL texture refactor. r=kamidphish,mattwoodrow,bz 2015-11-24 20:15:29 -08:00
Matt Woodrow 41a4ad2285 Bug 1222880 - Build a tree of AnimatedGeometryRoots to speed up traversal of ancestors. r=roc,tn 2015-11-25 11:53:51 +13:00
Phil Ringnalda 71a6f5da62 Back out changeset 2f614bcd9405 (bug 1221822) for test_conformance__extensions__ext-sRGB.html and test_webgl2_alpha_luminance.html failures 2015-11-23 21:55:59 -08:00
Jeff Gilbert 87397c265b Bug 1221822 - Finish the WebGL texture refactor. r=kamidphish,mattwoodrow,bz 2015-11-23 19:27:13 -08:00
Mason Chang e74c79f0e3 Bug 1221840. Support repeating images in 1 axis. r=seth 2015-11-23 08:17:35 -08:00
Kartikaya Gupta 3f1887d8f0 Bug 1226872 - Remove unnecessary wrapper methods in nsLayoutUtils. r=roc
--HG--
extra : commitid : 6XdZwhzPuoM
2015-11-23 09:14:18 -05:00
Kartikaya Gupta c460ebbd06 Bug 1226872 - Stop keeping a copy of the resolution in the root scrollframe. r=roc
The only reason we had this in the scrollframe at all was so that it could be
saved/restored as part of the frame state when leaving a page and then going
back to it. However we can accomplish this by just reading/writing the resolution
from/to the presshell instead, so there's no need to keep a second copy of it.

--HG--
extra : commitid : J4QBfG2GGjn
2015-11-23 09:14:15 -05:00
L. David Baron 8edfb62b0c Bug 1223653 patch 2 - Use an enum class for NS_STYLE_BOX_SIZING_*. r=heycam
The casts in nsCSSProps.cpp (defining kBoxSizingKTable) and in
nsComputedDOMStyle::DoGetBoxSizing (using
nsCSSProps::ValueToKeywordEnum) are a little bit annoying, though aren't
a net reduction in typesafety.

The casts in nsRuleNode.cpp (SetDiscrete) are a little more annoying,
though the change in this patch should be sufficient for converting all
properties -- but that may also mean reducing typesafety a bit for all
properties.

I'd like to find something better to do about them, but I think I'm ok
landing this before doing that.  Bug 1224918 covers doing better.

--HG--
extra : commitid : GEVyZB5b23F
2015-11-19 18:09:29 -08:00
L. David Baron f4b9c949b7 Bug 1224464 patch 2 - Make nsCSSProps keyword tables be arrays of structs, to represent what they logically are. r=heycam
--HG--
extra : commitid : 5YOv7qQkUeW
2015-11-19 18:08:57 -08:00
Tobias Schneider 1262c58ac3 Bug 1221677 - "[css-grid] Put the 'subgrid' support behind a pref, disabled by default". r=mats 2015-11-13 13:15:00 +01:00
Timothy Nikkel 2dbd0146a5 Bug 1223639. Rename ForceInside to MoveInsideAndClamp so it's clearer what it does. r=botond
This has led to confusion at least twice.
2015-11-11 16:38:25 -06:00
Timothy Nikkel 518ea0ea30 Bug 1223639. Use ForceInside to constrain the displayport rect to the scrollable rect instead of intersect. r=botond
ForceInside shifts the rect first, and then clamps if needed. So the displayport doesn't get shrunk unnecessarily.

Bug 1191539 fixed this bug by applying ForceInside to the screen rect of the display port, which happens before the incorrect Intersect call.

It's better to remove the Intersect call and just do ForceInside once at the end to the final display port rect.

Bug 957668 introduced this bug by using Intersect instead of ForceInside when copying the code from AsyncPanZoomController::CalculatePendingDisplayPort when creating the code that computed a displayport rect from displayport margins.
2015-11-11 16:38:24 -06:00
Botond Ballo 6a70e1aa18 Bug 1222661 - Replace FromUntyped(obj) calls with FromUnknown*(obj). r=nical
--HG--
extra : rebase_source : c1afe8560b838e1a3be0ce50847861b1815d3dc9
extra : source : d649f163c825736efaf3ac3ad73040beeb48a6ef
2015-11-09 18:22:25 -05:00
Bas Schouten 0c86230a51 Bug 1210560 - Part 6: Convert code to support non-operator OVER in nsCSSRendering to moz2d. r=roc 2015-11-11 16:15:40 +01:00
Kartikaya Gupta 733738df2c Bug 1214267 - Send the side to which fixed-pos items are attached so that we can move them in the compositor more correctly when the viewport size is changing. r=mattwoodrow
--HG--
extra : commitid : ALBL7XCsNm0
2015-11-11 10:07:29 -05:00
Jamie Nicol 7f20521a78 Bug 1223479 - Fix displayport size calculation on fennec. r=kats
The displayport was accidentally being calculated as too large. This was
leading to a large number of tiles existing at once, causing very high
memory usage.
2015-11-11 09:38:12 +00:00
Kartikaya Gupta 795d8736fd Bug 1205087 - Cache the AnimatedGeometryRoot on DisplayItem. r=roc 2015-10-05 17:09:34 -04:00
Nicholas Nethercote ad0dd8414a Bug 1223310 (part 2) - Use LayoutDeviceIntRect for bounds-related functions in nsIWidget. r=kats.
The patch renames the existing functions (GetBounds(), GetClientBounds(), etc)
by adding an |Untyped| suffix. It then adds typed equivalents, and uses those
typed equivalents in all the call sites where it's easy to do so. The trickier
remaining call sites are converted to use the Untyped-suffix version.

--HG--
extra : rebase_source : 6bfb15bfc4698e2eba7d4db55497299d3dffcd51
2015-11-09 21:37:32 -08:00
Jonathan Kew e735d0520a Bug 1122918 - Put the logical values for 'float' and 'clear' behind a pref, and enable them only on nightly builds and for B2G. r=heycam 2015-11-10 09:07:01 +00:00
Timothy Nikkel d180a1153d Bug 1221870. Make fixed pos items always find the root scroll frame when looking for the nearest scrollable. r=botond
Not just when it's the root document.
2015-11-09 18:21:40 -06:00
Timothy Nikkel ae9c7ca837 Bug 1208780. Set a zero-margin displayport on all scrollable ancestors of frames with displayports if they don't already have a displayport. r=botond 2015-11-05 18:57:17 -06:00
Timothy Nikkel 528864b6be Bug 1215977. Add a flag for GetNearestScrollable that makes fixed pos frames return the root scroll frame of their document. And make APZCCallbackHelper use it to restore previous behaviour. r=botond
We may want to do this for fixed pos frames in all documents (not just root documents). However, this patch only maintains the previous behaviour on purpose.
2015-11-04 19:51:03 -06:00
Timothy Nikkel 8fedb37cdc Bug 1215977. Only match the root scroll frame in GetNearestScrollableFrame if we encounter it. r=botond
Instead of returning the root scroll frame if we encountered the root frame (which is the parent of the root scroll frame).

This allows the use of GetNearestScrollableFrame to walk up the frame tree without getting into a infinite loop going from root scroll frame to root frame and back.

This regresses bug 1105823 in that fixed pos frames will no longer find the root scroll frame of their document. The next patch will fix that.

The only other type of frame that will be affected when calling GetNearestScrollableFrame are viewport (root) frames. However, the only user of SCROLLABLE_ALWAYS_MATCH_ROOT (APZCCallbackHelper) calls GetNearestScrollableFrame on the result of a hit test on a display list. Viewport frames never create any display items whose HitTest function could return the viewport frame.
2015-11-04 19:51:03 -06:00
Timothy Nikkel b9113902fc Bug 1215974. In GetNearestScrollableFrame don't skip the root scroll frame if we are asked to always match the root scroll frame even if it doesn't WantAsyncScroll(). r=botond
SCROLLABLE_ALWAYS_MATCH_ROOT should take precendence over SCROLLABLE_ONLY_ASYNC_SCROLLABLE as if we fail to find the root scroll frame we will have no usable scroll frame at all.
2015-11-04 19:51:03 -06:00
Mats Palmgren a09faf6998 Bug 1176775 part 1 - [css-grid] Implement "Implied Minimum Size of Grid Items" (special min-width/height:auto behavior). r=dholbert 2015-11-03 21:45:33 +01:00
Kartikaya Gupta 2a13672d4b Bug 1141884 - Handle wheel events on the main thread if the frame has snapping. r=dvander,mstange
--HG--
extra : commitid : Jw0Kdhy4ob6
2015-11-03 14:21:40 -05:00
Timothy Nikkel fab15510f7 Bug 1156238. Fix the computation of animated geometry roots for transform items. r=mattwoodrow
Removing the "stop at ancestor" parameter from functions that compute AGR meant that nsLayoutUtils::GetAnimatedGeometryRootFor could no longer pass the display item's reference frame as the "stop at ancestor" which meant that the AGR could cross the reference frame for the item, which we don't want. So we make transformed frames into AGRs.

This makes the computation of display items whose frames are transformed tricky. We need the AGR of the transform item to be the ancestor AGR, not the underlying frame of the transform item (which is now an AGR). So we modify nsLayoutUtils::GetAnimatedGeometryRootFor to handle this. (The patch from bug 1205087 didn't suffer from this problem because it special cased the computation of the AGR of transform items. Leaving anybody who called nsLayoutUtils::GetAnimatedGeometryRootFor to get the wrong result.)

The computation of the AGR for scroll metadata in ContainerState::ProcessDisplayItems specifically bypassed nsLayoutUtils::GetAnimatedGeometryRootFor to avoid it's special processing of fixed background items. However we do want the AGR for scroll metadata to do this special processing of transform items. So we add a flag to bypass the fixed background behaviour and use it for the scroll metadata AGR.
2015-11-03 02:03:47 -06:00
Matt Woodrow cf0b78ff4c Bug 1156238. Always stop at the root reference frame when looking for an animated geometry root. r=roc,mattwoodrow
This removes the "aStopAtAncestor" argument to agr computing functions. In most cases an AGR was passed for the stop at ancestor, so we'd stop at it anyway since it was an AGR. Most of the remaining cases the root reference frame was passed. And in a few cases something else was passed, which we probably don't want (returning something that isn't an AGR and isn't the root reference frame as an AGR).

The ShouldFixToViewport case is a little tricky. We want to get the AGR of the nearest viewport frame, but only if we don't have to cross our root reference frame to get it. This happens in practice for example when a select dropdown has background-attachment: fixed inside it.

Except for the ShouldFixToViewport bit, this patch is a subset of part 3 in bug 1205087 (which has more changes, and has been temporarily backed out, the remaining bits can hopefully land soon).

The ShouldFixToViewport part is by Timothy Nikkel <tnikkel@gmail.com>
2015-11-03 02:03:47 -06:00
Timothy Nikkel f1cb02157d Bug 1215356. When setting a display port, schedule paint on that frame, not the root frame of the document. r=mattwoodrow
If we set a display port on an element in a popup we need to repaint the popup, not the main window.
2015-11-01 11:45:40 -06:00
Milan Sreckovic 33b10a1074 Bug 1214802 - gfxEnv - consolidate environment variables used by the graphics code in one place. r=botond 2015-10-28 14:31:00 +01:00
Kartikaya Gupta 72ef88ba25 Bug 1212136 - Remove noisy warning that we don't have time to investigate properly. r=tnikkel 2015-10-29 11:27:00 +01:00
James Willcox 7fa8522446 Bug 1213970 - Enable APZ on iOS r=kats 2015-10-28 14:10:27 -05:00
Nathan Froyd 055e2365e3 Bug 1217939 - part 2 - move nsContentUtils::GetSelectionBoundingRect to nsLayoutUtils; r=smaug
All callers of this function are in layout/base/ and it uses a lot of
things from nsLayoutUtils, so nsLayoutUtils seems like a better fit for
it.
2015-10-23 13:39:00 -04:00
Benoit Girard ed6ac1f03b Bug 1204136 - Align DisplayPort on non-tiling platform. r=botond
--HG--
extra : commitid : LTz9E2S15m7
2015-10-13 15:19:51 -04:00
James Kitchener 1c9740d59e Bug 1011020 - Add the ability to fall back to not snapping, if snapping results in a zero area rect r=roc (relanding with correct bug number, DONTBUILD) 2015-10-17 10:18:00 -07:00
Phil Ringnalda 31d432d507 Back out changeset 2fe5dee8825d (not 1101020) for landing with the wrong bug number 2015-10-17 21:44:43 -07:00
James Kitchener 9faa73de5f Bug 1101020 - Add the ability to fall back to not snapping, if snapping results in a zero area rect r=roc 2015-10-17 10:18:00 -07:00
Nathan Froyd 01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Nathan Froyd 583afa0965 Bug 1207245 - part 3 - switch all uses of mozilla::RefPtr<T> to nsRefPtr<T>; r=ehsan
This commit was generated using the following script, executed at the
top level of a typical source code checkout.

 # Don't modify select files in mfbt/ because it's not worth trying to
 # tease out the dependencies currently.
 #
 # Don't modify anything in media/gmp-clearkey/0.1/ because those files
 # use their own RefPtr, defined in their own RefCounted.h.
find . -name '*.cpp' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    grep -v 'mfbt/RefPtr.h' | \
    grep -v 'mfbt/nsRefPtr.h' | \
    grep -v 'mfbt/RefCounted.h' | \
    grep -v 'media/gmp-clearkey/0.1/' | \
    xargs perl -p -i -e '
 s/mozilla::RefPtr/nsRefPtr/g; # handle declarations in headers
 s/\bRefPtr</nsRefPtr</g; # handle local variables in functions
 s#mozilla/RefPtr.h#mozilla/nsRefPtr.h#; # handle #includes
 s#mfbt/RefPtr.h#mfbt/nsRefPtr.h#;       # handle strange #includes
'

 # |using mozilla::RefPtr;| is OK; |using nsRefPtr;| is invalid syntax.
find . -name '*.cpp' -o -name '*.mm' | xargs sed -i -e '/using nsRefPtr/d'

 # RefPtr.h used |byRef| for dealing with COM-style outparams.
 # nsRefPtr.h uses |getter_AddRefs|.
 # Fixup that mismatch.
find . -name '*.cpp' -o -name '*.h'| \
    xargs perl -p -i -e 's/byRef/getter_AddRefs/g'
2015-10-18 00:40:10 -04:00
Wes Kocher e5f3e2417f Backed out changeset b5fe97ae33f4 (bug 1204136) for m-e10s(5) failures
--HG--
extra : rebase_source : d49471e4dde51e84a789436da3c70c8e62a9964f
2015-10-15 15:50:27 -07:00
Benoit Girard 4cd87bf27e Bug 1204136 - Align DisplayPort on non-tiling platform. r=botond
--HG--
extra : commitid : BT0rkz1nhRJ
extra : rebase_source : b9f30549119244d87b41c436e194f0097f70a8e2
2015-10-13 15:19:51 -04:00
Timothy Nikkel 96fca396cf Bug 1210578. Part 3. Create DecideScrollableLayer that encapsulates all logic to create display ports and build scrollable layers. r=mstange
For root scroll frames we need information about the async scrolling (or lack thereof) of the scroll frame before we get to ScrollFrameHelper::BuildDisplayList for the scroll frame. We need it in nsLayoutUtils::PaintFrame and nsSubdocumentFrame::BuildDisplayList. So we factor out all the code responsible for async scrolling decisions into one function we can call from all three places.
2015-10-12 15:21:49 -05:00
Timothy Nikkel d566a599fe Backout part 1 of bug 1195431 (cf841511b71a). 2015-10-12 15:21:48 -05:00
Nicholas Nethercote 0f5722f4da Bug 1211324 (part 5) - Remove GraphicsFilter and gfxGraphicsFilter. r=mattwoodrow. 2015-10-05 17:18:10 -07:00
Nicholas Nethercote 4fc2610c3c Bug 1211324 (part 4) - Replace GraphicsFilter constants with gfx::Filter equivalents. r=mattwoodrow.
The conversion is as follows:

- GraphicsFilter::FILTER_NEAREST == gfx::Filter::POINT
- GraphicsFilter::FILTER_GOOD    == gfx::Filter::GOOD
- GraphicsFilter::FILTER_BEST    == gfx::Filter::LINEAR

Also typedef GraphicsFilter to gfx::Filter; this will be removed in the next
patch.

These changes mean ToFilter() and ThebesFilter() are no longer needed.
2015-10-05 17:12:46 -07:00
Nicholas Nethercote b06269a38d Bug 1211324 (part 3) - Remove GraphicsFilter::FILTER_FAST and replace it with FILTER_BEST. r=mattwoodrow.
This may sound like an odd change but it's what the current code effectively
already does due to the way ToFilter() and ThebesFilter() are defined.
2015-10-05 16:59:32 -07:00
Carsten "Tomcat" Book c1f520e05c Backed out changeset 79746e93020a (bug 1011020) for causing bug 1212267
--HG--
extra : rebase_source : 16ad5f13377beb3075b06d97a793059a575d55cb
2015-10-07 12:17:02 +02:00
James Kitchener 590b916a4a Bug 1011020 - Add the ability to fall back to not snapping, if snapping results in a zero area rect r=roc - relanding with correct bug number on a CLOSED TREE 2015-10-05 05:00:00 +02:00
Carsten "Tomcat" Book 903a88eacc Backed out 1 changesets (bug 1101020) for landing with wrong bugnumber on a CLOSED TREE
Backed out changeset 18d4a0ca8cc1 (bug 1101020)
2015-10-07 09:24:27 +02:00
James Kitchener 0eb9204d80 Bug 1101020 - Add the ability to fall back to not snapping, if snapping results in a zero area rect r=roc 2015-10-07 11:18:08 +05:30
Botond Ballo 72a3a301c4 Bug 1205511 - Use nsPresContext::DevToCSSPixelScale() where appropriate. r=kats
--HG--
extra : source : 16ed1b039eb1522f555c35e9df6e5632c69ff0a4
2015-09-28 20:14:26 -04:00
Botond Ballo 514da6416f Bug 1208661 - Show display list and layer textures in-line in the HTML paint dump. r=BenWa
--HG--
extra : rebase_source : 83b8aa0650599932297bb75aa3e9bdeed589f87b
extra : source : 9ba5b04a7a416c7cace04b2191e105aa694ff2ef
2015-09-28 15:22:05 -04:00
Botond Ballo 4daa211ca8 Bug 1208661 - Do not assume that PaintRoot()'s contributions to the HTML paint dump will all be inside a <script> tag. r=BenWa
--HG--
extra : rebase_source : f95fafa791d4a15ec215311bda0ca16c8a951dc8
extra : source : 0148877df48d9a6b402ab26db161c55f57d47bce
2015-09-25 19:23:13 -04:00
Botond Ballo 0883bb5acc Bug 1206915 - Handle nested PaintFrame() calls correctly during paint dumping. r=mattwoodrow,BenWa
--HG--
extra : source : fab68f61b2f73bbd9b1e9a0c8f542ced62da60b0
2015-09-21 19:05:44 -04:00
Botond Ballo 9836d10039 Bug 1206915 - Make paint dumping to a file e10s-friendly. r=mattwoodrow
--HG--
extra : source : 5ba62147fd9fd23faa11bafcefb752f542476c84
2015-09-21 18:44:28 -04:00
Botond Ballo 9c084c0d2e Bug 1206915 - Avoid reordering of different parts of paint dump output. r=mattwoodrow
--HG--
extra : source : b0aac5d41d2493ae03852adc38f1928ac738e505
2015-09-21 18:37:23 -04:00
Kartikaya Gupta 0123b19fc5 Back out the bits of bug 1205087 that cache the AnimatedGeometryRoot on DisplayItem. r=backout
The change breaks some scenarios with APZ scrolling, in particular the code
that layerizes the scroll handoff chain for deeply nested scrollable frames.

--HG--
extra : commitid : KeQX4HyPKXd
2015-09-28 15:17:34 -04:00
Nicholas Nethercote ff7df9ad79 Bug 1208283 (part 4) - Change FrameMetrics::mBackgroundColor from gfxRGBA to gfx::Color. r=jwatt.
This removes some ToColor() calls.

--HG--
extra : rebase_source : 05ee3e5aaa784e12c15fa42845864eacec45271f
2015-09-24 18:17:45 -07:00
Matt Woodrow c066ccca63 Bug 1205087 - Cache the AnimatedGeometryRoot on DisplayItem. r=roc 2015-09-24 18:26:36 -04:00
Matt Woodrow 55713b7206 Bug 1205087 - Make nsSVGIntegrationUtils paint frame continuations manually since combining them meant that our reference frame wasn't an ancestor of all painted frames. r=roc 2015-09-24 18:26:34 -04:00
Matt Woodrow d58f9e3efb Bug 1205087 - Remove LayerManager parameter for ShouldFixToViewport. r=roc 2015-09-24 18:25:08 -04:00
Nicholas Nethercote a37228e1fe Bug 1207944 (part 4) - Use SetColor(const Color&) when setting from an nscolor. r=jwatt.
In various places SetColor() gets passed an nscolor. These are converted
(either implicitly or explicitly) to a gfxRBGA, and then to a gfx::Color.

This patch changes all these cases to avoid the middle step, by (a)
constructing a gfx::Color directly instead of an nscolor, or (b) by converting
an nscolor with Color::FromABGR().

--HG--
extra : rebase_source : ae423a422b37ada8ca0cb6f130350b4a71d58fc4
2015-09-23 23:41:30 -07:00
Nicholas Nethercote 842dd1cf5a Bug 1207741 - Remove gfxIntSize. r=nical.
gfxIntSize is just a typedef of gfx::IntSize, so this is very mechanical. The
only tricky part is deciding for each occurrence whether to replace it with
IntSize, gfx::IntSize or mozilla::gfx::IntSize; in all cases I went with the
shortest one that worked given the existing "using namespace" declarations.

--HG--
extra : rebase_source : 67fd15f87222b16defa70ef795c6d77dfacf1c36
2015-09-23 11:49:05 -07:00
Jonathan Kew b20e9ca870 Bug 1193519 pt 5 - Expose the sideways-lr value for writing-mode to CSS. r=dholbert 2015-09-24 10:23:34 +01:00
Jonathan Kew a091884801 Bug 1193488 - Update values of writing-mode and text-orientation to reflect the CSS WG decision to revise them in the Writing Modes spec. r=dholbert 2015-09-23 22:16:01 +01:00
Kartikaya Gupta d058a7e7fe Bug 1195431 - Small refactoring to use conditionals consistently. r=tn
--HG--
extra : commitid : 70zviYNmOkz
2015-09-23 09:34:42 -04:00
Kartikaya Gupta d674ba3676 Bug 1195431 - Extract a couple of helper functions. r=tn
--HG--
extra : commitid : FK958utOKA5
2015-09-23 09:34:41 -04:00
Markus Stange add7126be5 Back out changeset 61baabe617c9 (bug 1191539) because of regressions like bug 1205863 and probably bug 1206209.
--HG--
extra : commitid : 95ws4N7uA3K
2015-09-20 01:14:15 +02:00
David Anderson 300922f68a Remove willFlushRetainedLayers, which is superceded by DLBI. (bug 1205970 part 2, r=mattwoodrow) 2015-09-18 18:45:24 -07:00
Thinker K.F. Li e1e17a72cb Bug 1097464 - Part 6: Handle preserves-3d by compositor. r=roc
Remove WrapPreserve3DList() and replaced it by creating a
nsDisplayTransform item for each transformed frame.

 - Add an additional item for each top frame extending 3D context to
   separate consequence contexts.

 - Effective transform of a layer is the accumulation of ancestors in
   the same 3D context.

 - The layers creating new context and extended by children need a
   temporary buffer if it's effective transform is not 2D.

 - Clip rects are accumulated along the context chain.

 - Visible rects of items are computed from dirty regions of the frame
   creating the context and accumulated transforms.

 - Bounds of items are computed from accumulated transforms and
   accumulated bounds of the descent frames.

 - Backface hidden is handled by compositor and BasicLayerManager.

--HG--
extra : rebase_source : 1a894b057a117a8520898c9f83308d92c122b180
2015-09-17 03:31:00 +02:00
Thinker K.F. Li d9c38a58c1 Bug 1097464 - Part 5: Fix preserve3d wording for nsIFrame. r=roc
--HG--
extra : rebase_source : 9d30e48106871ba631aff03afd153eaf45ac954e
2015-09-17 03:31:00 +02:00
Phil Ringnalda 7171096144 Back out 2 changesets (bug 1205087) for mass bustage
CLOSED TREE

Backed out changeset 0573cd4aed27 (bug 1205087)
Backed out changeset 11a3cb42f729 (bug 1205087)
2015-09-17 19:30:42 -07:00
Matt Woodrow ad13620acc Bug 1205087 - Remove LayerManager parameter for ShouldFixToViewport. r=roc
--HG--
extra : rebase_source : a55ebf8ab3ea6cad0ff9945f9ee9857421053e0b
2015-09-17 21:03:42 -04:00
Carsten "Tomcat" Book f7534678df Backed out 6 changesets (bug 1097464) for causing OS X 10.10 Reftest Errors
Backed out changeset fbf63ce1ba88 (bug 1097464)
Backed out changeset fdaf4cfa6707 (bug 1097464)
Backed out changeset 727ebd9f744a (bug 1097464)
Backed out changeset 03f03a776042 (bug 1097464)
Backed out changeset 5ec6364b87d7 (bug 1097464)
Backed out changeset 47d056b3af7f (bug 1097464)

--HG--
extra : rebase_source : e2da133b489e4adba373303dad6e559826927e19
2015-09-17 16:24:43 +02:00
Thinker K.F. Li 76109f93c4 Bug 1097464 - Part 6 - Handle preserves-3d by compositor. r=roc
Remove WrapPreserve3DList() and replaced it by creating a
nsDisplayTransform item for each transformed frame.

 - Add an additional item for each top frame extending 3D context to
   separate consequence contexts.

 - Effective transform of a layer is the accumulation of ancestors in
   the same 3D context.

 - The layers creating new context and extended by children need a
   temporary buffer if it's effective transform is not 2D.

 - Clip rects are accumulated along the context chain.

 - Visible rects of items are computed from dirty regions of the frame
   creating the context and accumulated transforms.

 - Bounds of items are computed from accumulated transforms and
   accumulated bounds of the descent frames.

 - Backface hidden is handled by compositor and BasicLayerManager.
2015-09-17 03:31:00 +02:00
Thinker K.F. Li 31e7d8b95d Bug 1097464 - Part 5 - Fix preserve3d wording for nsIFrame. r=roc 2015-09-17 03:31:00 +02:00
Olli Pettay 68663347da Bug 1205466, make HasApzAwareListeners check faster, r=masayuki
--HG--
extra : rebase_source : 41c94b02117a09785938349dc9ad513af9bf048b
2015-09-17 13:16:20 +03:00
Benoit Girard 30a1ad2268 Bug 1191539 - Don't further increase the size of the displayport when rounding up. r=kats
--HG--
extra : commitid : 4Y78gwVp4Zq
2015-09-15 16:45:02 -04:00
Robert Longson 0c7534f0a8 Bug 1175492 - unpref transform-origin percentage handling for SVG elements r=jwatt 2015-09-15 22:10:48 +01:00
Botond Ballo a22ee7711a Bug 1166301 - Store a flag on Layer to tell fixed background layers apart from fixed position layers. r=mattwoodrow
--HG--
extra : rebase_source : eaad2e8c7f85f20cc691353d9675611eee4733ee
extra : source : 33b55c6b3a48e3e9a2f19f498f56084d6905dfc1
2015-09-04 17:26:33 -04:00
Benoit Girard 282b6c7b96 Bug 1191539 - DisplayPort should ForceInside frameRect to match compositor DisplayPort. r=kats
--HG--
extra : commitid : Ee4ufF6D1Pm
extra : rebase_source : a0eb0d18b98cff49c82dd3e9f59e8461c4f0b3c0
2015-09-09 14:41:38 -04:00
Matt Woodrow 6e6e6105aa Bug 1202029 - Use the containing block for determining perspective for transformed elements. r=dbaron
--HG--
extra : rebase_source : f8a1403a77e71179aca097e26567bcb3b7c1848b
2015-09-14 14:17:40 -04:00
Kartikaya Gupta 8f2b8f8996 Bug 1202290 - Remove special-case condition for Fennec that is not needed any more. r=tn
The special-case was added back when the Fennec dynamic toolbar showing/hiding
behaviour didn't resize the content area. As of bug 1180295 that is no longer
the case, and showing/hiding the dynamic toolbar *does* resize the content area.
Therefore the widget bounds always represents the actual content area and can
be used directly as the composition bounds.

In addition, the special-case code relied on a particular quirk of the Fennec
CSS viewport determination code which was removed in bug 1180267. The quirk was
that the CSS viewport height was always set such that it would cover the
available screen height when the page was zoomed out to the minimum allowed
zoom. This behaviour was technically incorrect as it would ignore any height
properties provided in the meta-viewport tag. Now that this quirk has been
removed, the special-case code breaks because the root frame's height is
independent of the screen height and can result in an incorrect composition
bounds.

--HG--
extra : commitid : 69FDhj50WEN
2015-09-09 23:22:19 -04:00
Mats Palmgren 685fccb096 Bug 1174553 part 2 - Move the AddPercents function into a static method in the nsLayoutUtils class. r=dholbert 2015-09-04 22:06:57 +02:00
Mats Palmgren 44d4f3b05b Bug 1174553 part 1 - Add a new flag (BAIL_IF_REFLOW_NEEDED) for IntrinsicForWM() that makes it return early with a NS_INTRINSIC_WIDTH_UNKNOWN result if a reflow is needed to determine the child's correct BSize. r=dholbert 2015-09-04 22:06:57 +02:00
Mats Palmgren bbb026b9f4 Bug 1174546 part 1 - Introduce nsLayoutUtils::MinSizeContributionForAxis which calculates an intrinsic size contribution from aFrame's 'min-width' property (or 'min-height' if the given axis is vertical) and the corresponding border, padding and margin values. r=jfkthame 2015-09-04 22:06:57 +02:00
David Anderson 99013f5fcf Hoist scroll info items above inactive blur containers. (bug 1193557 part 1, r=mstange) 2015-09-04 17:17:50 -07:00
Wes Kocher 99c36f1e96 Backed out changeset 24cd0974b365 (bug 1174546) for reftest bustage 2015-09-04 16:23:01 -07:00
Wes Kocher 95b85d4c58 Backed out changeset 25537ff71d2b (bug 1174553) 2015-09-04 16:22:40 -07:00
Wes Kocher ad2d2381f0 Backed out changeset eea3ecbb5983 (bug 1174553) 2015-09-04 16:22:38 -07:00
Mats Palmgren c80456a8fb Bug 1174553 part 2 - Move the AddPercents function into a static method in the nsLayoutUtils class. r=dholbert 2015-09-04 22:06:57 +02:00
Mats Palmgren 2df2316058 Bug 1174553 part 1 - Add a new flag (BAIL_IF_REFLOW_NEEDED) for IntrinsicForWM() that makes it return early with a NS_INTRINSIC_WIDTH_UNKNOWN result if a reflow is needed to determine the child's correct BSize. r=dholbert 2015-09-04 22:06:57 +02:00
Mats Palmgren ebc2ad4495 Bug 1174546 part 1 - Introduce nsLayoutUtils::MinSizeContributionForAxis which calculates an intrinsic size contribution from aFrame's 'min-width' property (or 'min-height' if the given axis is vertical) and the corresponding border, padding and margin values. r=jfkthame 2015-09-04 22:06:57 +02:00