Kartikaya Gupta
1c54bb2347
Bug 1377090 - Make the Matrix class templated so we can instantiate it with a double type. r=bas
...
This extracts a BaseMatrix template of which Matrix is now a particular
specialization. The BaseMatrix allows us to reuse the same code for
floats and doubles, much like the other "base" classes (BasePoint,
BaseRect, etc.).
MozReview-Commit-ID: HO7bA83S9E0
--HG--
extra : rebase_source : dcd84d9a978cdea00bb54eb11eefcca9c6635901
2017-07-05 11:18:48 -04:00
Morris Tseng
77424afaa9
Bug 1376855 - Introduce WebRenderUserData and WebRenderImageData. r=kats
...
Layers are retained between transaction and we store some data in the layers.
Thus, if we no longer use layers, we need find another storage to place
those data. I use frame's property to retain WebRenderUserData between
transaction.
MozReview-Commit-ID: Ku5VGBXa3w6
--HG--
extra : rebase_source : 636653f78d1d6c310726a1a2c944141dc691decc
2017-06-28 15:03:27 -07:00
Boris Zbarsky
5bd9b06ca0
Bug 1376640. Fix dynamic updates when an inline that sits between a first-letter and its block changes style. r=heycam
...
MozReview-Commit-ID: 8osMUpYVRvR
2017-06-28 22:19:35 -07:00
Carsten "Tomcat" Book
f32372e861
Backed out changeset 2992d5af6251 (bug 1376640) for assertion failures like Assertion failure: mOwner == ExpectedOwnerForChild(aFrame) (Missed some frame in the hierarchy?)
2017-06-29 08:22:08 +02:00
Boris Zbarsky
991d1134d8
Bug 1376640. Fix dynamic updates when an inline that sits between a first-letter and its block changes style. r=heycam
...
MozReview-Commit-ID: 8osMUpYVRvR
2017-06-28 22:19:35 -07:00
Masayuki Nakano
5a78a77b68
Bug 1375825 - part2: ContentEventHandler::ExpandToClusterBoundary() should check the return value of nsTextFrame::PeekOffsetCharacter() r=jfkthame
...
ContentEventHandler::ExpandToClusterBoundary() doesn't check the return value of nsTextFrame::PeekOffsetCharacter(). Therefore, it may set its result to reversed offset. (e.g., when aForward is true and offset is 6, the result may be 5. When aForward is false and offset is 5, the result may be 6.)
For avoiding that, ContentEventHandler::ExpandToClusterBoundary() should check the result and only when it returns nsIFrame::FOUND, it should compute the proper offset.
On the other hand, it's too bad for ContentEventHandler that nsTextFrame::PeekOffsetCharacter() to return nsIFrame::CONTINUE_UNSELECTABLE when the user-select style is "all" because IME doesn't expect such cases.
Therefore, this patch adds additional argument to nsIFrame::PeekOffsetCharacter(), aOptions which is a struct containing bool members. The reason why it's not a bit mask enum is, such struct doesn't cause simple mistake at checking the value and the code is shorter. When mIgnoreUserStyleAll of it is true, this patch makes nsTextFrame not return nsIFrame::CONTINUE_UNSELECTABLE.
MozReview-Commit-ID: ACNNBTP92YZ
--HG--
extra : rebase_source : bd85da902e7fb59135d15514cb20a5599a4a640b
2017-06-29 10:58:16 +09:00
Boris Zbarsky
1a3c859dec
Bug 1324618 part 5. Add a way to pass a different style context for later continuations to UpdateStyleOfOwnedChildFrame. r=emilio
...
We're going to want this for first-letter, because the primary frame and its continuations have different styles.
MozReview-Commit-ID: 6ZjtnRWXgd9
2017-06-26 23:35:08 -07:00
Carsten "Tomcat" Book
96db50c5ec
Backed out changeset b40d51d1f78e (bug 1324618)
2017-06-27 10:39:45 +02:00
Boris Zbarsky
0da68a43f6
Bug 1324618 part 5. Add a way to pass a different style context for later continuations to UpdateStyleOfOwnedChildFrame. r=emilio
...
We're going to want this for first-letter, because the primary frame and its continuations have different styles.
MozReview-Commit-ID: 6ZjtnRWXgd9
--HG--
extra : rebase_source : 52286f984973b9d0e1a1ea51c439e599eae00a38
2017-06-26 23:35:08 -07:00
Emilio Cobos Álvarez
3b4c243485
Bug 1374752: Pack together the StyleSet, ChangeList and handled change hints, and use the latter with anonymous boxes while we're at it. r=heycam
...
MozReview-Commit-ID: DiWcUwD9po5
--HG--
extra : rebase_source : 9805874c06c6376a13e0379211363cb51f3e033d
2017-06-20 23:21:27 +02: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
Markus Stange
24f428aed3
Bug 1370034 - Implement UpdateWidgetProperties for top level windows and for popups, and call nsIWidget::SetWindowShadow. r=dbaron
...
MozReview-Commit-ID: 9ooCdDRLOSq
--HG--
extra : rebase_source : 9394de7379c628cd5cd3d993b1902f59876801c2
2017-06-16 15:08:30 -04:00
Markus Stange
ccaf464b9e
Bug 1370034 - Add -moz-window-opacity property, style system parts (excluding stylo). r=dbaron
...
MozReview-Commit-ID: J2SPMzh0I9C
--HG--
extra : rebase_source : b8c5f267f99fb7bab560af82a386cd3f3a9af5f3
2017-06-18 21:04:40 -04:00
Mats Palmgren
06d9d2ec37
Bug 1373884 - s/FramePropertyTable/FrameProperties/ in a couple of places. r=me
...
MozReview-Commit-ID: ID1bBk6hbOR
2017-06-19 00:07:36 +02:00
Cameron McCormack
139e81fb2f
Bug 1364361 - Part 1: Refactor frame anon box restyling machinery so it can return a list of anon boxes. r=bholley,bz
...
MozReview-Commit-ID: 3InVAUw8djN
* * *
Bug 1364361 - Followup to address review comment. r=me
MozReview-Commit-ID: IpdoSon9MAj
--HG--
extra : rebase_source : 086c49319d3847099614d65c8bb9d924f4e9be38
2017-06-16 17:22:33 +08:00
Sebastian Hengst
9365133d05
Backed out changeset e7ec499159f7 (bug 1364361) for bustage at nsIFrame.h:3348: bad implicit conversion constructor for 'OwnedAnonBox'. r=backout
2017-06-16 11:19:03 +02:00
Cameron McCormack
b76836a0c6
Bug 1364361 - Part 1: Refactor frame anon box restyling machinery so it can return a list of anon boxes. r=bholley,bz
...
MozReview-Commit-ID: 3InVAUw8djN
* * *
Bug 1364361 - Followup to address review comment. r=me
MozReview-Commit-ID: IpdoSon9MAj
--HG--
extra : rebase_source : 8a6a9b88d678c52be8fa6f64b2664a08634a4a98
2017-06-16 15:32:40 +08:00
Sebastian Hengst
fe67a32efc
Backed out changeset 12db2d364b64 (bug 1364361) for heap write hazard. r=backout
2017-06-16 09:27:42 +02:00
Cameron McCormack
eaf366ae43
Bug 1364361 - Part 1: Refactor frame anon box restyling machinery so it can return a list of anon boxes. r=bholley,bz
...
MozReview-Commit-ID: 3InVAUw8djN
--HG--
extra : rebase_source : 83d5e20a9ec92a35c015386828b0c53c6c4eaeb5
2017-05-22 13:14:32 +08:00
Manish Goregaokar
abdbfa30c6
Bug 1373018 - Part 9: stylo: Make more things on nsStyleContext inlined; r=bholley
...
MozReview-Commit-ID: FYiOtmSK2oC
--HG--
extra : rebase_source : a543fc05b6a5b5bd3c143d87730c66a1f8743f16
2017-06-10 22:27:45 -07:00
Matt Woodrow
1323cbe13d
Bug 1359709 - Use the DOM-ordering parent frame when deciding if a frame combines its transform with ancestors. r=dbaron
2017-06-14 13:47:50 +12: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
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
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
Mats Palmgren
a99de96d28
Bug 1367207
part 1 - Add a nsIFrame bool:1 member to track whether the frame has some image requests associated with it. Skip the call to DropRequestsForFrame() on frame destruction if the bit isn't set. r=dholbert
...
MozReview-Commit-ID: 5CLpsQgJkCv
2017-06-07 15:22:41 +02:00
Botond Ballo
52ab6c0bae
Bug 1365761 - Do not dispatch mouse-move events targeted as a slider frame to web content. r=smaug
...
MozReview-Commit-ID: Cpi7orSO7dS
--HG--
extra : rebase_source : 30bd643922409f47eb2318938a07e7543337d625
2017-06-05 15:05:47 -04:00
Jonathan Kew
9593c3715f
Bug 1369355 - Simplify nsIFrame::GetOverflowAreasProperty, as callers already know whether a property is present. r=mats
2017-06-01 15:34:46 +01:00
Ryan VanderMeulen
b2f44e5181
Merge inbound to m-c. a=merge
2017-05-31 20:25:52 -04:00
Brad Werth
9f3994b7ed
Bug 1355675 Part 1: Add optional inCSSUnits parameters to GetTransformMatrix and GetTransformToAncestor. r=mattwoodrow
...
MozReview-Commit-ID: EA5uqeoUWE3
--HG--
extra : rebase_source : d57f895a356dfa106cf99c1411216f05b0914620
2017-05-30 09:05:52 -07:00
Mats Palmgren
357e4b9560
bug 1368547 part 2 - Remove nsFrameManager/PresShell methods dealing with placeholders and introduce a nsIFrame::GetPlaceholderFrame() convenience method. r=jfkthame
...
MozReview-Commit-ID: GBUiUBqJxhQ
2017-05-31 21:29:49 +02:00
Mats Palmgren
2cecf134ac
bug 1368547 part 1 - Remove nsFrameManagerBase::mPlaceholderMap and store the placeholder on a frame property on the out-of-flow instead. r=jfkthame
...
MozReview-Commit-ID: 6AOxc2XgtO1
2017-05-31 21:29:49 +02:00
Jonathan Kew
db627c3bfb
Bug 1368369 - pt 1 - Use nsTArray instead of AutoTArray in FrameProperties, and embed the FrameProperties object directly in nsIFrame. r=mats
2017-05-31 19:52:53 +01:00
Jonathan Kew
20b8376ffd
Bug 1368654 - pt 1 - Implement memory reporter support for FrameProperties. r=mats
2017-05-31 19:52:47 +01:00
Jonathan Kew
ee384ef57b
Bug 1368249 - Create nsIFrame::AddProperty API for use when the property is known to not already exist, and use to optimize some call sites. r=mats
2017-05-28 13:16:55 +01:00
Sebastian Hengst
99f17a4e95
Backed out changeset 59c0589220ec (bug 1368249) unused function GetNormalPosition at nsIFrame.h:1073. r=backout
2017-05-28 15:38:15 +02:00
Jonathan Kew
1f8beade4e
Bug 1368249 - Create nsIFrame::AddProperty API for use when the property is known to not already exist, and use to optimize some call sites. r=mats
2017-05-28 13:16:55 +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
Bas Schouten
cf309d5907
Bug 1367906: Cache the presence of rounded corners upon style changes. r=dbaron r=mattwoodrow
...
Profiling indicates a significant amount of time is spent during displaylist building accessing style information in order to detect border radii. This is a cost that for frames with no border radii only needs to be paid when the style changes.
Since nsIFrame still has 16 bits available for storing data without growing it in size, this patch recomputes whether there are border radii upon DidGetStyleContext and stores that information in one of these unused bits.
MozReview-Commit-ID: 4Jm29qUwXq3
2017-05-26 16:56:55 +00:00
Mats Palmgren
154f4890bf
Bug 1362886 part 2 - Devirtualize the IsLeaf() method by doing an array lookup instead. r=jfkthame
...
MozReview-Commit-ID: 1zm9rFhRVZ3
2017-05-26 12:11:12 +02:00
Mats Palmgren
367f5ef1e8
Bug 1362886 part 1 - Annotate the FRAME_ID for each concrete frame class whether it's a leaf or not. Generate an array containing the IsLeaf state for each frame class. r=jfkthame
...
MozReview-Commit-ID: 8m52kG8EwCv
2017-05-26 12:11:12 +02:00
Mats Palmgren
a254b64145
Bug 1364805 part 4 - Remove the now unused LayoutFrameType values from the ctors. r=jfkthame
...
MozReview-Commit-ID: 1RSDoc3pQXf
2017-05-26 12:11:11 +02:00
Mats Palmgren
483a804512
Bug 1364805 part 3 - Implement Type() by indexing a static array using the mClass field. Remove the nsIFrame::mType field. r=jfkthame
...
In the nsWindowMemoryReporter.cpp / nsArenaMemoryStats.h I'm only
including the concrete frame classes now - we obviously never have
instances of the other IDs so there's no need to collect stats for them.
MozReview-Commit-ID: 48uFCZ3xKBC
2017-05-26 12:11:11 +02:00
Mats Palmgren
1242172259
Bug 1364805 part 2 - Add a nsIFrame::mClass field and propagate the concrete class' value up the ctor chain. r=jfkthame
...
nsIFrame::mClass is of type enum class nsQueryFrame::ClassID which is
a strict subset of the nsQueryFrame::FrameIID values. For a concrete
frame class, its FrameIID is the same numeric value as its ClassID.
MozReview-Commit-ID: 1N0AkCGo1ol
2017-05-26 12:11:11 +02:00
Mats Palmgren
e51607abe1
Bug 1359341 part 2 - Add a couple of private frame state bits to nsPlaceholderFrame to be used for propagating "line emptiness" during reflow. r=jfkthame
...
MozReview-Commit-ID: Ds98Sn5PZav
2017-05-23 19:09:26 +02:00
Wes Kocher
9a8d52f7af
Merge m-c to autoland, a=merge
...
MozReview-Commit-ID: AVwPRGa5re9
2017-05-22 16:38:46 -07:00
Jonathan Kew
fcf175b16a
Bug 1365928 - patch 2 - Annotate style-struct getters with MOZ_NONNULL_RETURN for better optimization. r=mats
2017-05-22 19:00:19 +01: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
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