Commit Graph

489 Commits

Author SHA1 Message Date
Hiroyuki Ikezoe
8ffb31fc0b Bug 1374882 - Insert 'Timing' word into the names for setter/getter for timing function. r=birtles
MozReview-Commit-ID: 7h0VcoT4lmb

--HG--
extra : rebase_source : 41fb8f1d0ae4ebb6f5744389c7cccd4baaa5cbe3
2017-06-22 12:12:43 +09:00
Hiroyuki Ikezoe
26a9f87593 Bug 1374882 - Encapsulate TimingParams's member variables. r=birtles
MozReview-Commit-ID: 1KhEdCSwpES

--HG--
extra : rebase_source : 18d1aab946922a10cdd6609f4216e4863fd0ad89
2017-06-22 12:12:43 +09:00
Jonathan Watt
4dbb614775 Bug 1365189, part 1 - Prevent SVG elements that are neither displayable nor paint servers from painting. r=dholbert
MozReview-Commit-ID: 97Q9PN4eUBw
2017-06-06 17:04:37 +01:00
Jonathan Watt
b3ab3e52a0 Bug 1374614 - Support SVG image context paint in XUL tree views (treecol etc.). r=dholbert
MozReview-Commit-ID: LltEP7gTCgq
2017-05-26 14:24:57 +01:00
Andi-Bogdan Postelnicu
a0d2bb2b90 Bug 1374236 - Refactor MaybeSetupTransactionIdAllocator to avoid passing nsView*. r=mats
MozReview-Commit-ID: L3jedbOFdCP

--HG--
extra : rebase_source : b528086230b141e425523aecf439a045a98b7823
2017-06-19 18:58:42 +03:00
Markus Stange
284a74c2dc Bug 1370034 - Call SetWindowTransform with the right values from -moz-window-transform(-origin). r=dbaron
MozReview-Commit-ID: 3IVl3kdbpTd

--HG--
extra : rebase_source : 969b912c1be199844575c8b9e196f07d59638043
2017-06-19 00:49:52 -04:00
Cameron McCormack
1849ea4995 Backout bug 1291457 and bug 1370034 for bustage. 2017-06-19 13:55:15 +08:00
Markus Stange
af3291fdf2 Bug 1370034 - Call SetWindowTransform with the right values from -moz-window-transform(-origin). r=dbaron
MozReview-Commit-ID: 3IVl3kdbpTd

--HG--
extra : rebase_source : 3d1b52a352f21b25a8e4ed683575d0277f7c4dd2
2017-06-19 00:49:52 -04:00
Andi-Bogdan Postelnicu
af9b2f55f1 Bug 1373232 - Use floating point division when dividing nscoord values with a twipsPerPixel factor. r=mats
MozReview-Commit-ID: JR3EDkDuwVA

--HG--
extra : rebase_source : 38f45ebba2abac194e162e812c8864c1da7cc3d9
2017-06-18 09:33:25 +03:00
Sebastian Hengst
3654d560d6 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: DPQl41S3ZkU
2017-06-17 22:26:03 +02:00
Mats Palmgren
5ef66d5e7d Bug 1371958 part 2 - Move a mPaintedLayerItems.GetEntry() call into the else-branch where its result is actually used to avoid an unnecessary hashtable lookup when we don't take the else-branch. r=froydnj
MozReview-Commit-ID: sOwNzB8mxj
2017-06-17 00:06:04 +02:00
Mats Palmgren
f8f1a23dc1 Bug 1371958 part 1 - Use EnsureRemoved instead of Contains+RemoveEntry to avoid an unnecessary hashtable lookup. r=froydnj
MozReview-Commit-ID: 6SPQrQCLBjF
2017-06-17 00:06:04 +02:00
Botond Ballo
941ffc4123 Bug 1371508 - Simplify the dispatch-to-content region in nsDisplayLayerEventRegions::AddFrame() and AddInactiveScrollPort() if it starts to get large. r=tnikkel
MozReview-Commit-ID: C7TCVlxsOFd

--HG--
extra : rebase_source : 55d37333f944a52f6214741870b9e6455e345784
2017-06-14 20:19:21 -04:00
Markus Stange
23716b1586 Bug 1368386 - Add PaintedLayer::InvalidateWholeLayer(). r=mattwoodrow
MozReview-Commit-ID: 7sgQDs82Wwt

--HG--
extra : rebase_source : 6a13c3b53f85d88535451cda57c76e5d845a53d5
extra : source : 92eb66a5357939ca239cb2167dcccbc2328ea51b
2017-06-15 17:29:18 -04:00
Sebastian Hengst
20d16dadd3 merge mozilla-inbount to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 36YqbsnO3en
2017-06-15 11:11:30 +02:00
Andrew Osmond
fdb5476ee6 Bug 1365231 - WebRender should not use FLAG_HIGH_QUALITY_SCALING with RasterImage::GetImageContainer. r=jrmuizel 2017-06-14 12:53:07 -04:00
Matt Woodrow
b32bf15627 Bug 1359709 - Scale visible region for preserve-3d layers correctly. r=thinker 2017-06-14 13:48:28 +12:00
Mats Palmgren
a821681287 Bug 1372022 - Replace a series of Contains+Put+Get+Put hashtable lookups with a single LookupForAdd call. r=froydnj
MozReview-Commit-ID: GOSe2Ztahlr
2017-06-14 01:54:27 +02:00
Alexis Beingessner
adb013669b Bug 1088760 - Remove nsRenderingContext, replacing all of its uses with gfxContext. r=jwatt,jrmuizel
MozReview-Commit-ID: K1WUIOnvazF
2017-06-13 11:00:10 -04:00
Nicholas Nethercote
0be77baa96 Bug 1370329 (part 1) - Clean up the profiler's RAII classes. r=mstange.
This patch does the following renamings, which increase consistency.

- GeckoProfilerInitRAII -> AutoProfilerInit
- GeckoProfilerThread{Sleep,Wake}RAII -> AutoProfilerThread{Sleep,Wake}
- GeckoProfilerTracingRAII -> AutoProfilerTracing
- AutoProfilerRegister -> AutoProfilerRegisterThread
- ProfilerStackFrameRAII -> AutoProfilerLabel
- nsJSUtils::mProfilerRAII -> nsJSUtils::mAutoProfilerLabel

Plus a few other minor ones (e.g. local variables).

The patch also add MOZ_GUARD_OBJECT macros to all the profiler RAII classes
that lack them, and does some minor whitespace reformatting.

--HG--
extra : rebase_source : 47e298fdd6f6b4af70e3357ec0b7b0580c0d0f50
2017-06-07 12:33:19 +10:00
Sebastian Hengst
f3bf820bfd Backed out changeset 3d1ce85e6348 (bug 1088760) for bustage, at least on Android at layout/generic/nsPluginFrame.cpp:1612. r=backout 2017-06-13 00:30:03 +02:00
Alexis Beingessner
c75211cb95 Bug 1088760 - Remove nsRenderingContext, replacing all of its uses with gfxContext. r=jwatt,jrmuizel
MozReview-Commit-ID: K1WUIOnvazF
2017-06-12 17:32:48 -04:00
Jeff Hajewski
21dd3e708d Bug 1371354: Changes macro defined NS_SYTLE_IMAGELAYER_ to enum class StyleImageLayer; r=manishearth
MozReview-Commit-ID: DgvenevRHg2
2017-06-09 16:53:34 -07:00
Ryan VanderMeulen
9b7a73b65a Merge m-c to autoland. a=merge
UPGRADE_NSPR_RELEASE UPGRADE_NSS_RELEASE

--HG--
extra : amend_source : a59e53ba2f8db608f613f21ad6da2b5be8814aa4
2017-06-07 22:55:56 -04:00
Martin Robinson
9915ffcbc3 Bug 1370530 - Convert more CSS filters to WebRender display items. r=jrmuizel
Activate WebRender output for filters that introduce only one pixel
differences in tests. Since the filters spec does not seem to specify
how color values are rounded, this output should be spec compliant.
2017-06-07 03:43:00 -04:00
L. David Baron
53383e2d5c Bug 1369260 - Remove use of MOZ_ASSERT_IF in layout. r=heycam
As I've said before, as module owner I prefer that MOZ_ASSERT_IF not be
used in the module because I consider it to be unreadable.  However, a
few uses have crept in, and this patch removes them.

I consider it to be unreadable because the name looks like a name that
uses smalltalk-ish naming conventions, i.e., with a part of the name
corresponding to each parameter, in order.  However, the parameters are
in the order opposite the name.

This was written primarily with the vim commands:
:%s/MOZ_ASSERT_IF(\([^,]*\),/MOZ_ASSERT(!\1 ||/
:wn
followed by manual cleanup for indentation and removal of !!.

MozReview-Commit-ID: G6rLbOn7k8d
2017-06-06 22:27:17 -07:00
Martin Robinson
7d937678f4 Bug 1365972 - Add initial WebRender support for nsDisplayFilter. r=rhunt, r=mattwoodrow 2017-06-06 06:28:00 -04:00
Jared Wein
6e57031fc1 Bug 1364221 - Allow frames to be prerendered as long as the area of the frame is less than the area of the relative limit and the dimensions are less than the absolute limit. r=mattwoodrow,mstange
MozReview-Commit-ID: C3QLjaCRbzE

--HG--
extra : rebase_source : 1c9ad6b7c04d65b8b71f5112b7f4c91415aa70d9
2017-06-05 17:01:19 -04:00
Wes Kocher
b6e4ea3caa Backed out changeset 5450b06e79e5 (bug 1369910) for assertions in FrameLayerBuilder.cpp CLOSED TREE
MozReview-Commit-ID: 9m63lG6kj7B
2017-06-05 10:28:32 -07:00
Botond Ballo
724180965f Bug 1369910 - Simplify AddingOwnLayer() call sites in ProcessDisplayItems(). r=mstange
MozReview-Commit-ID: 3kH48WPAOv7

--HG--
extra : rebase_source : f0cf90be411a15e106457c06609c377082259af0
2017-06-02 16:43:33 -04:00
Miko Mynttinen
c64fdb5312 Bug 1367219 - Avoid multiple hashtable lookups in DisplayItemData destructor r=mattwoodrow
MozReview-Commit-ID: Jr4yx5A9gWd

--HG--
extra : rebase_source : 4e742e3d0a21285af6a729dcf860da365f242cfb
2017-06-06 18:12:17 +02:00
Botond Ballo
539791ed1e Bug 1367488 - Pre-render offscreen portions of scrollbar thumbs inside an iframe. r=mstange
MozReview-Commit-ID: LCBHnFJdGtp

--HG--
extra : rebase_source : 1ab1d812674d321d76e634953284b3983774d798
2017-05-29 18:05:05 -04:00
Kartikaya Gupta
f7afb5a21c Merge m-c to graphics, a=merge
MozReview-Commit-ID: COZj8Itgjcz
2017-06-01 09:56:23 -04:00
Kartikaya Gupta
e4ec0de51e Merge m-c to graphics, a=merge
MozReview-Commit-ID: 2CUZPQ4s8xT
2017-05-31 08:07:53 -04:00
Mason Chang
39305a1bbc Bug 1368190 - Enable outer box shadows with negative spread radius. r=rhunt 2017-05-26 12:49:07 -07:00
Kartikaya Gupta
b7ee577f62 Merge m-c to graphics, a=merge
MozReview-Commit-ID: 8IWAJNO52ry
2017-05-29 08:28:04 -04:00
Ryan Hunt
66462a04c7 Bug 1365495 - Let WebRender premultiply gradient stop colors r=jrmuizel
WebRender now expects a non-premultiplied gradient stop color in the API.

--HG--
extra : amend_source : a1e80f703962ef0215c33fb8d61a123b45d4c994
2017-05-18 20:30:15 -04:00
Mason Chang
5040d43ad7 Bug 1366866 - Enable inset box shadows with negative offsets. r=rhunt 2017-05-23 11:08:10 -07:00
Morris Tseng
eace48c34e Bug 1367332 - Don't build image layer if image map is presence. r=mattwoodrow
MozReview-Commit-ID: 5w43NRlTL6d

--HG--
extra : rebase_source : 1f27df0662f798d4b9dc460e0125a4de6c6e9408
2017-05-24 16:16:40 +08:00
Mats Palmgren
297b9d70e1 Bug 1365614 part 3 - Backout bug 1333482 part 1-9. Removes support for [-webkit-]appearance for now b/c web compat issues. r=bz
MozReview-Commit-ID: IbwWM0FL6HF

--HG--
extra : source : bbb688fe1ba3f5201a190c6e25b693ef7272ea2d
2017-05-21 17:15:00 +08:00
Jonathan Kew
9adc6c6cc5 Bug 1368252 - Call GetLayerActivity() instead of directly looking up frame's LayerActivityProperty(). r=mats 2017-05-28 11:22:39 +01:00
Jonathan Kew
a8f81efd8e Bug 1365982 - Attach frame properties to each frame instead of looking them up in a hashtable on the prescontext. r=mats
--HG--
rename : layout/base/FramePropertyTable.cpp => layout/base/FrameProperties.cpp
rename : layout/base/FramePropertyTable.h => layout/base/FrameProperties.h
2017-05-27 12:36:00 +01:00
cku
b533c4c2ae Bug 1362000 - (followup) remove unused headers. r=me
MozReview-Commit-ID: 4SO8tdhbIHt

--HG--
extra : rebase_source : 7abc0bddf356bc705b130ea15294f8c5036f6ccf
2017-05-27 16:57:44 +08:00
Carsten "Tomcat" Book
00d4ea331d Backed out changeset bbb688fe1ba3 (bug 1365614) 2017-05-22 15:45:31 +02:00
Mats Palmgren
e706869580 Bug 1365614 part 3 - Backout bug 1333482 part 1-9. Removes support for [-webkit-]appearance for now b/c web compat issues. r=bz 2017-05-21 17:15:00 +08:00
Ryan VanderMeulen
c2e6a4f474 Backed out changeset bb1542b364f2 (bug 1364221) for Android 4.2 x86 test_animation_performance_warning.html failures on a CLOSED TREE. 2017-05-26 15:37:14 -04:00
cku
a71c525e73 Bug 1350663 - Repaint mask layer when the offset between mask region and mask layer changed. r=mstange
Let's said we have a div,
  <div id="outer" style="width:200px, height:200px;
  mask="url(opaque-200X100-transparent-200X100.png)"">
    <div id="innter" style="position:fixed;
                            left:0px; top:0px; width:200px; height:100px;
                            mask-repeat: no-repeat;
                            background-color: blue;"></div>
  </div>

Some hints:
1. '#inner' is out-of-flow
2. '#outer' itself does not draw any things, no background/ border, etc....
3. Mask applied on '#outer'.
4. opaque-100X200-transparent-100X200.png is a 200X200 image. The upper side of
   this image is opaque; the lower side of this image is transparent.

After page load, you will see a 200X100 blue rect on left-top corner. This blue
rect is contributed by 200X100 blue '#inner' and 200X100 opaque upper part of
mask. So far so good.

Then you scroll down 100px. '#inner' is not moved, since it's an out-of-flow
element, mask move up 100px with '#outter'. Ideally, you should see nothing in
the view, since '#inner' is now masked by transparent part of the image mask.

On FF, you will still see a 200X100 blue rect in view as if no scrolling at all,
which is wrong.

Here is the root cause of this bug:
1. At beginning, we create a 200X100 mask layer, which fit the size of '#inner'.
   Not 200X200 of '#outer', since '#outer' basically draw nothing, we smartly
   choose a more compact draw target for painting the mask.
2. Things go wrong after scrolling down. By scroll down 100px, the size of the
   mask layer is still "200X100", so we _think_ cached mask layer is still
   reusable, but it is not.
   Before scrolling, we paint (0, 0, 200, 100) portion of the 200X200 mask onto
   mask layer; after scrolling, we should paint (0, _100_, 200, 100) portion of
   mask onto mask layer. We did not keep this kind of offset information in
   CSSMaskLayerUserData, so we don't know that the cached mask layer should be
   rejected.

It's difficult to create a reftest for this bug as well. With scrollTo, we may
mimic an environment of this error, but since reftest harness will trigger
whole viewport repaint while taking a snapshot, we actually can not repro this
issue on it.

MozReview-Commit-ID: H5xaUSssMRh

--HG--
extra : rebase_source : 47103b6638e50dd2fb39f7b47e9cdc653446cd20
2017-05-14 19:28:01 +08:00
cku
0fa11bffa0 Bug 1362000 - (follow-up) Simplify match logic in CSSMaskLayerUserData::operator==. r=mstange
Remove HasUserSpaceOnUseUnitsMaskOrClipPath since it's not necessary.
MozReview-Commit-ID: 2sen23m5GjE

--HG--
extra : rebase_source : fe15fc807daf79f6f2175224928a1d83736cf85b
2017-05-27 01:38:54 +08:00
Jared Wein
bc9c4a158e Bug 1364221 - Allow frames to be prerendered as long as the area of the frame is less than the area of the relative limit and the dimensions are less than the absolute limit. r=mattwoodrow,mstange
MozReview-Commit-ID: C3QLjaCRbzE

--HG--
extra : rebase_source : 71907fe872ad6347ea30f1af441a3a3bd0724366
2017-05-23 17:41:06 -04:00
cku
082f6c2f30 Bug 1362000 - When the position of masked frame changed, always regenerate mask layer if any of maskUnits/maskContentUnits/clipPathUnits is userSpaceOnUse. r=cjku
For SVG mask/clipPath, comparison at [1] is not enough to detect whether cached
mask layer is reusable duriang animation. Since aMaskItem->IsInvalid() may keep
return fasle during OMTA. Bring in new condition check in
CSSMaskLayerUserData::IsMaskReusable..

I do not create a reftest for this bug, the reason is almost the same with bug
1350663.

So I manually verified paiting result by visit this three pages:
 https://codepen.io/tadeuszwojcik/pen/ZKJwRE
 https://codepen.io/tadeuszwojcik/pen/oWexWW
 http://codepen.io/iiroullin/pen/oWEOOM

[1] https://hg.mozilla.org/mozilla-central/file/2bc714f86791/layout/painting/FrameLayerBuilder.cpp#l3887

MozReview-Commit-ID: 7lUKTMYPFXo

--HG--
extra : rebase_source : c3e4d7b9df0c335222f09d7ce7d6918c7dbad00e
extra : source : 4717af028474a700a2b7e81eecae142f2ab82ff1
2017-05-12 20:17:14 +08:00