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

767 Коммитов

Автор SHA1 Сообщение Дата
Morris Tseng a832ce6127 Bug 1161662 - Exclude post scale from layer.GetTransform(). r=roc
--HG--
extra : rebase_source : 7c6d495d597adf9e74963bb2799dc28230d4c649
2015-05-07 01:18:00 +02:00
L. David Baron c8c50385b3 Bug 1153539 patch 2 - Compute scale for rasterizing off-main-thread transform animations based on ratio to display size in addition to maximum and minimum scale. r=roc
This fixes bug 1153539 with the Firefox download arrow being pixellated
(verified by testing locally).

I also confirmed what happens on a flame device with the transform
unlocking the Firefox OS homescreen (bug 945082 / bug 972310).  For that
transform (which had a maximum scale of 2), I see four calls to
GetSuitableScale:
  GetSuitableScale: aMaxScale=2.000000, displayVisibleRatio=1.000000
  GetSuitableScale: aMaxScale=2.000000, displayVisibleRatio=1.000586
  GetSuitableScale: aMaxScale=2.000000, displayVisibleRatio=1.000000
  GetSuitableScale: aMaxScale=2.000000, displayVisibleRatio=1.000586
(Presumably the first and third are for width, and the second and fourth
are for height.)  I believe this shows that bug 972310 will remain fixed
with this patch.

I chose to use the pres context's visible area rather than the screen
size because it seemed more appropriate, and also because (if memory
serves correctly) it's much cheaper to get.
2015-05-06 08:52:20 +02:00
Morris Tseng 42696f4b94 Bug 1156636 - Remove post scale multiplication for event regions. r=roc 2015-04-28 01:46:00 +02:00
Markus Stange e72a2b1b6a Bug 1147194 - Do scroll info layer hoisting when building the display list. r=tn
--HG--
extra : amend_source : 35ca22eae3b3088eaae5143af8c47177bf601800
2015-04-30 14:54:48 -04:00
Markus Stange c8321737e0 Bug 1141089 - Add more asserts for DisplayItemData, trying to catch whether we're accessing deleted instances. r=roc 2015-04-21 14:13:54 -04:00
Nicolas Silva cfff5e52c5 Bug 1155621 - Make nsIntRect and nsIntPoint typedefs of mozilla::gfx::IntRect and mozilla::gfx::IntPoint. r=Bas 2015-04-21 17:04:57 +02:00
Timothy Nikkel c92044ef7a Bug 1156598. Remove old, dead scroll layer item code. r=mstange 2015-04-20 22:48:10 -05:00
Morris Tseng 8b1d489941 Bug 1147279 - Get correct translation when layer optimize away. r=roc
--HG--
extra : rebase_source : e9e56fe3a0f1d8a88de1e0b40151ed2e452e4ff9
2015-04-14 22:39:00 +02:00
Ying-Ruei Liang (KK) f17daf9c2a Bug 1143522 - Convert Layer::mClipRect to ParentLayerIntRect. r=botond
Change interface of getter/setter for mClipRect,
also necessary modification for codes that use these resources.

* * *
Bundle mUseClipRect and mClipRect as Maybe<ParentLayerIntRect> mClipRect

--HG--
extra : rebase_source : ca0c60404a28b7418df88104b863760033289910
2015-04-11 22:03:00 -04:00
Markus Stange 266307725b Bug 1141089 - Check that we're unsetting sDestroyedFrame correctly. r=roc
--HG--
extra : rebase_source : 7e88934f0bfe1753423925d96917db1ff85d8e7c
2015-04-10 17:34:28 -04:00
Markus Stange 591611146d Bug 1141089 - Turn these two assertions into release assertions. r=roc
--HG--
extra : rebase_source : dbdaa24b17ce6c6b6746233cbd7c1c3fe3efa03d
2015-04-10 17:34:04 -04:00
Markus Stange 1cc08a8e75 Bug 1141089 - Use const nsTArray* in all the places where we don't change the array's contents. r=roc
--HG--
extra : rebase_source : 4fa139270347b9fa031c2d63c423b333b19f2ff7
2015-04-10 17:42:42 -04:00
Markus Stange d40c904a58 Bug 1141089 - Add a few more MOZ_RELEASE_ASSERT(mLayer) checks, just for fun. r=roc
--HG--
extra : rebase_source : 8f8c75dd60f08aac6beaea088c3bd9210898d799
2015-04-10 17:30:09 -04:00
Markus Stange f3f481c41f Bug 1141089 - Remove unused DisplayItemData copy constructor. r=roc
--HG--
extra : rebase_source : 50f0d21ccd6fdac5769caeebf8ec95a2d7174d2d
2015-04-10 17:23:22 -04:00
Markus Stange af62baff7f Bug 1141089 - Initialize DisplayItemData with a non-null mLayer, so that mLayer is non-null throughout the object's whole lifetime. r=roc
--HG--
extra : rebase_source : 5d924989657f4356e25f02be3b2df725f9ff39af
2015-04-10 17:11:04 -04:00
Seth Fowler ea22de2fd8 Bug 1150774 (Part 2) - Use the correct units in nsDisplayImageContainer::ConfigureLayer and related code. r=botond 2015-04-07 18:55:28 -07:00
Markus Stange f7f6e94e3e Bug 1151306 - Add a missing check during background color pulling. r=roc
--HG--
extra : rebase_source : cf647fb460c0f8e9f83e540e27055ef563af0d50
2015-04-05 14:05:44 -04:00
Markus Stange 192ff01616 Bug 1148855 - Rework how display items are assigned to PaintedLayers and make it work the same way with and without APZ. r=roc
--HG--
extra : rebase_source : e6f246f2ee67e4b3478f5687774fb257f40dc5b4
2015-04-02 14:22:40 -04:00
Markus Stange e2ab5a8c41 Bug 1148855 - Intermediate state that unifies APZ and non-APZ layerization behavior somewhat.
--HG--
extra : rebase_source : a5ec7aab3b588c6c5967cfbf1cebc607f6e24953
2015-04-01 17:31:56 -04:00
Markus Stange cd1c8ccd7f Bug 1148855 - Mark some ContainerState methods as const. r=roc
--HG--
extra : rebase_source : a25baee09a55ab02032c37bdf2ddfc005313203a
2015-03-25 18:08:56 -04:00
Nicolas Silva e3eaf89e3f Bug 1132854 - Make nsIntSize a typedef of gfx::IntSize. r=Bas, roc 2015-03-29 16:59:08 +02:00
Tom Tromey 918392e548 Bug 1144820 - Use rvalue reference in AddProfileTimelineMarker. r=smaug 2015-03-27 08:41:00 -04:00
Kearwood (Kip) Gilbert f97c17593c Bug 1035611 - Part 1: Updated Matrix4x4::ProjectRectBounds to properly handle infinite values when untransformed rects cross the w=0 plane. r=mattwoodrow
- Added specialized rect clipping functionality to Matrix4x4::ProjectRectBounds
  so we don't have to return infinite values when rects cross the w=0 plane
  in homogenous coordinate space.
- Updated callsites of ProjectRectBounds to pass a clipping rect that is
  appropriate for the units that are returned.

--HG--
extra : rebase_source : 9b1088a77e88259e2c32379ade23fbc2236596fb
2015-03-13 16:42:00 -04:00
Kushan Joshi 98880a696a Bug 1101627 - Add touch action regions. r=kats 2015-03-24 09:13:24 -04:00
Ehsan Akhgari 883849ee32 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Markus Stange 0605c44412 Bug 1144307 - Destroy scroll info layer items when we're done with them. r=tn 2015-03-17 22:04:33 -04:00
Markus Stange 4fe0677dda Bug 1141595 - Make scroll info display item hoisting work after bug 913443. r=tn
--HG--
extra : rebase_source : 7e13f848ec50f5c6a91876dc1e618d0fe31ffab2
2015-03-16 18:37:04 -04:00
Markus Stange 235900b2b8 Bug 1141089 - Add some release assertions to gather more data. r=roc
--HG--
extra : rebase_source : 1575191a4bf2ebebb3e15fc82ac3c2addffa67d6
2015-03-16 16:04:00 -04:00
Botond Ballo 2eb9751320 Bug 1139675 - Simplify the APIs for getting and setting the pres shell resolution. r=mstange,mattwoodrow
--HG--
extra : rebase_source : 18444e5f9304bbf9c2c14903be6aa4ebf8a08af3
extra : source : 60fe56e752d984a8d074af1bec1dfcd40a41e5f6
2015-03-06 18:07:59 -05:00
Jeff Muizelaar 735ab827c5 Bug 1143789. Remove unnecessary cast to BasicLayerManager. r=mstange
--HG--
extra : rebase_source : ca8d18b5aae563a74f913f5b112c6e7c2bcea8f6
2015-03-16 14:19:32 -04:00
Markus Stange dee805a312 Bug 1142211 - Add layerization testing mechanisms to reftest. r=roc
This adds support for class="reftest-opaque-layer" and for
reftest-assigned-layer="some-layer-name" to the reftest harness.

From reftest/README.txt:

Opaque Layer Tests: class="reftest-opaque-layer"
================================================

If an element should be assigned to a PaintedLayer that's opaque, set the class
"reftest-opaque-layer" on it. This checks whether the layer is opaque during
the last paint of the test, and it works whether your test is an invalidation
test or not. In order to pass the test, the element has to have a primary
frame, and that frame's display items must all be assigned to a single painted
layer and no other layers, so it can't be used on elements that create stacking
contexts (active or inactive).

Layerization Tests: reftest-assigned-layer="layer-name"
=======================================================

If two elements should be assigned to the same PaintedLayer, choose any string
value as the layer name and set the attribute reftest-assigned-layer="yourname"
on both elements. Reftest will check whether all elements with the same
reftest-assigned-layer value share the same layer. It will also test whether
elements with different reftest-assigned-layer values are assigned to different
layers.
The same restrictions as with class="reftest-opaque-layer" apply: All elements
must have a primary frame, and that frame's display items must all be assigned
to the same PaintedLayer and no other layers. If these requirements are not
met, the test will fail.
2015-03-11 14:51:59 -04:00
Markus Stange 59f454bb84 Bug 1141281 - Don't put empty Info: lines into the layers dump. r=BenWa 2015-03-09 00:41:11 -04:00
Markus Stange 0a619bf51b Bug 1141408 - Don't include the display item's memory address in the profile label. r=BenWa 2015-03-07 18:40:03 -05:00
Milan Sreckovic 76dd5cd892 Bug 1140113 - Catch direct (and some indirect) callers of CreateDrawTarget* and deal with failure. r=mstange 2015-03-09 15:48:20 -04:00
Markus Stange 094adf661f Bug 913443 - Remove duplicated argument variables. r=roc
--HG--
extra : rebase_source : 6d0b1d34c6924a332cee831b92f083c0669a7e52
2015-03-04 12:08:28 -05:00
Markus Stange 27e19b0136 Bug 913443 - Recycle PaintedLayers as soon as possible. r=roc
This means layers are assigned bottom-to-top.

--HG--
extra : rebase_source : 9754de60da630de59d83c2fa9b01d48c0ff13eb2
2015-03-04 00:18:47 -05:00
Markus Stange d2e50e0e0b Bug 913443 - When determining the layer to recycle, only consider layers that have display items in common with the layer we need. r=roc
--HG--
extra : rebase_source : de75c55e2937363843def273206310a786232582
2015-03-04 00:21:00 -05:00
Markus Stange fcc59b48af Bug 913443 - Delay PaintedLayer recycling until PopPaintedLayerData(). r=roc
Once we're smarter about recycling the right layer, we can't decide on a layer
as soon as we encounter its first display item. We might need to have to look
at all of the assigned display items. This change makes that requirement
explicit.

--HG--
extra : rebase_source : 743deff9257c2da3b87d7f929465e09ea33859c0
2015-03-03 21:32:08 -05:00
Markus Stange ea7ef16627 Bug 913443 - Add a display item buffer for PaintedLayerData so that we can assign items without needing to know the actual Layer. r=roc
--HG--
extra : rebase_source : f6a699f1cd57b8980a84e91870a28247d1f07ea9
2015-03-04 00:21:55 -05:00
Markus Stange 4d0928d52d Bug 913443 - Change the order of these calls. r=roc
The calls above don't need access to the PaintedLayer, but the ones this change
is moving down do. This change just makes it more obvious that we're free to
move the calls to an even later point.

--HG--
extra : rebase_source : e63bbc37a634e84e28a86e765f50927a63fbce2f
2015-03-03 17:21:42 -05:00
Markus Stange 9fcb811dd6 Bug 913443 - Move IsWidgetLayerManager() check out of UpdateCommonClipCount. r=roc
UpdateCommonClipCount accesses the PaintedLayerData's mLayer field in order to
get the layer manager. We want to be able to call UpdateCommonClipCount when
mLayer is null.

--HG--
extra : rebase_source : d2964e3e390e0cd564469dee2bf691e76be07cf2
2015-03-03 17:00:55 -05:00
Markus Stange 253c09b332 Bug 913443 - Remove unused aItemVisibleRect argument. r=roc
--HG--
extra : rebase_source : 57c555b1e7c3aafa0ea1659cdb00b4daba0e1723
2015-03-03 16:57:30 -05:00
Markus Stange 3c736ea719 Bug 913443 - Break CreateOrRecyclePaintedLayer up even more. r=roc
--HG--
extra : rebase_source : 925d0803b07ff088297327b9082cbb1ff84ecb61
2015-03-02 19:25:13 -05:00
Markus Stange 4215086d34 Bug 913443 - Extract layer hint calculation. r=roc
--HG--
extra : rebase_source : eee7b00b69b46e106865911e58a0b06a8643980e
2015-03-02 19:24:18 -05:00
Markus Stange 09230009c4 Bug 913443 - Break up CreateOrRecyclePaintedLayer into more parts. r=roc
--HG--
extra : rebase_source : d02edc77f41f0192f17d756e70e6e5c447c420bd
2015-03-02 18:43:58 -05:00
Markus Stange 5f382d9022 Bug 913443 - Remove some #ifdefs. r=roc
This function will be split up into more functions, and carrying along the
#ifdefs throughout those would be a pain.

--HG--
extra : rebase_source : 19902be9ca536f515dee62bb110c02ccb9e7f954
2015-03-02 18:29:12 -05:00
Markus Stange d867421498 Bug 913443 - Remove mention of the word ThebesLayer in a comment. r=roc
--HG--
extra : rebase_source : 08a2bc7ce404129b47b0e3e51187926fc3298cee
2015-03-02 18:19:12 -05:00
Markus Stange 511a39c19d Bug 961887 - Find uniform opaque background colors under ContainerLayers. r=roc
--HG--
extra : rebase_source : 7b5877bc9336e3b01ec43732a5697fba7994c465
2015-02-25 11:47:22 -05:00
Markus Stange 6d5ecb7b01 Bug 961887 - Make FindOpaqueBackgroundColorFor take a region instead of a PaintedLayerData. r=roc
--HG--
extra : rebase_source : 21afe457b330919ba98705c39cd12e44734244cc
extra : source : 97c8184c30588f83147d1abe9ac66696ae35fd7a
2015-02-20 14:46:09 -05:00
Markus Stange f56803507c Bug 961887 - Refactor mVisibleAboveRegion management. r=roc
--HG--
extra : rebase_source : fc3b37cdce3cfce091e3552d2a2fc4d0d7c16fad
extra : source : f02c5c1f77048fabaf45c2f7626f900157ee47f7
2015-02-18 17:37:19 -05:00