Commit Graph

952 Commits

Author SHA1 Message Date
Mats Palmgren
9214eecbed Bug 1398537 part 2 - [css-multicol] Implement percentages for 'column-gap' (Gecko part). r=dholbert 2018-04-02 01:56:19 +02:00
Xidorn Quan
7141e919dd Bug 1449400 part 1 - Move NS_STYLE_* constants from nsStyleStruct.h to ComputedStyle.h. r=emilio
Since ComputedStyle is where they are actually used. This would also
allow us to avoid including nsStyleStruct.h from ComputedStyle.h after
some header file changes in later patches.

MozReview-Commit-ID: 8aBuNO9CRN0
2018-03-29 22:15:46 +11:00
Xidorn Quan
1ce57ccbed Bug 1448535 part 2 - Remove arena-related code from style structs. r=emilio
MozReview-Commit-ID: LlmauyL3goU
2018-03-29 03:45:18 +11:00
Jonathan Watt
baf9ffb02b Bug 1448714 - Fix up comments referring to 'style context' after the rename of nsStyleContext. r=emilio 2018-03-23 13:49:21 +00:00
Xidorn Quan
37798b3e63 Bug 1448726 - Remove NS_RULE_NODE_* constants. r=emilio
MozReview-Commit-ID: 1DWhfpBT58w
2018-03-26 16:20:24 +11:00
Emilio Cobos Álvarez
1d4859a89a Bug 1447483: Merge nsStyleContext and ServoStyleContext, rename to ComputedStyle. r=jwatt on a CLOSED TREE
MozReview-Commit-ID: JPopq0LudD
2018-03-22 20:06:24 +01:00
Emilio Cobos Álvarez
97286b35c8 Back out changeset b683bb3f22a1 (Bug 1447483) for not landing with all the files. r=me on a CLOSED TREE
This reverts commit 1808914126bb9f9e4a82d2c3d7ac961885fe7d62.

MozReview-Commit-ID: 5skESBseEvo
2018-03-22 20:05:22 +01:00
Emilio Cobos Álvarez
1f5d8de5cc Bug 1447483: Merge nsStyleContext and ServoStyleContext, rename to ComputedStyle. r=jwatt
MozReview-Commit-ID: JPopq0LudD
2018-03-22 19:48:42 +01:00
Emilio Cobos Álvarez
b1a35fbef7 Bug 1447358: Unifdef the old style system code. r=jwatt
Summary:
This has been automatically generated using:

  http://dotat.at/prog/unifdef/

And:

find $OBJDIR -type f -name '*.h' |
while read FILE; do
  echo "$FILE"
  unifdef -m -DMOZ_STYLO -UMOZ_OLD_STYLE "$FILE";
done

find $OBJDIR -type f -name '*.cpp' |
while read FILE; do
  echo "$FILE"
  unifdef -m -DMOZ_STYLO -UMOZ_OLD_STYLE "$FILE";
done

MozReview-Commit-ID: I4NdKqbMXzJ

Reviewers: jwatt

Bug #: 1447358

Differential Revision: https://phabricator.services.mozilla.com/D779
2018-03-21 10:20:34 +01:00
Hiroyuki Ikezoe
b74ec58ba9 Bug 1437272 - Split nsTimingFunction into an independent header file. r=birtles
So that we don't need to include nsStyleStruct.h in gfx any more.

MozReview-Commit-ID: 6nOaAbssLCz
2018-03-08 18:22:45 +09:00
Mike Conley
da3f1e9386 Bug 1434376 - Introduce ChromeOnly window.promiseDocumentFlushed to detect when refresh driver ticks have completed. r=bz
This is particularly useful for knowing when it's safe to query for style and
layout information for a window without causing a synchronous style or layout
flush.

Note that promiseDocumentFlushed was chosen over promiseDidRefresh or promiseRefreshed
to avoid potential confusion with the actual network-level refresh of browsers or
documents.

MozReview-Commit-ID: Am3G9yvSgdN
2018-02-11 20:14:49 -05:00
Andreea Pavel
f77494f37a Backed out 3 changesets (bug 1434376)for failing browser chrome at browser/base/content/test/performance/browser_urlbar_search_reflows.js on a CLOSED TREE
Backed out changeset b636251b75ab (bug 1434376)
Backed out changeset fccbba9cb959 (bug 1434376)
Backed out changeset b5128504011c (bug 1434376)
2018-02-25 12:44:28 +02:00
Mike Conley
6e072d9d0f Bug 1434376 - Introduce ChromeOnly window.promiseDocumentFlushed to detect when refresh driver ticks have completed. r=bz
This is particularly useful for knowing when it's safe to query for style and
layout information for a window without causing a synchronous style or layout
flush.

Note that promiseDocumentFlushed was chosen over promiseDidRefresh or promiseRefreshed
to avoid potential confusion with the actual network-level refresh of browsers or
documents.

MozReview-Commit-ID: Am3G9yvSgdN
2018-02-11 20:14:49 -05:00
Cosmin Sabou
b577c1c6c0 Backed out 3 changesets (bug 1434376) for build bustages on SystemTimeConverter.h(177)
Backed out changeset 2ed5aefc5bc2 (bug 1434376)
Backed out changeset 1b474fb6d798 (bug 1434376)
Backed out changeset 4e6a21e50be0 (bug 1434376)
2018-02-23 23:17:42 +02:00
Mike Conley
2002a64ddf Bug 1434376 - Introduce ChromeOnly window.promiseDocumentFlushed to detect when refresh driver ticks have completed. r=bz
This is particularly useful for knowing when it's safe to query for style and
layout information for a window without causing a synchronous style or layout
flush.

Note that promiseDocumentFlushed was chosen over promiseDidRefresh or promiseRefreshed
to avoid potential confusion with the actual network-level refresh of browsers or
documents.

MozReview-Commit-ID: Am3G9yvSgdN
2018-02-11 20:14:49 -05:00
Emilio Cobos Álvarez
e43f069814 Bug 1439285: Make the old image request arrive to FinishStyle if we come from ResolveSameStructsAs. r=bholley
MozReview-Commit-ID: H1N9jNql9tl
2018-02-22 19:44:44 +01:00
Cameron McCormack
34288f7f48 Bug 1430014 - Part 5: Stop building old style system classes when MOZ_OLD_STYLE is not defined. r=xidorn
MozReview-Commit-ID: CIHyPdF7Exl
2018-02-01 15:04:04 +11:00
Cameron McCormack
02c617875f Bug 1430014 - Part 4: #ifdef out unnecessary code when the old style system is not built. r=xidorn
MozReview-Commit-ID: 1FZ9VzjcPzN
2018-02-01 15:04:04 +11:00
cku
afd0b3d14e Bug 1207734 - Part 4.c. Temporarily disable async-transform for individual-transform. r=birtles
Since we do not support async-transform for individual-transform yet.

MozReview-Commit-ID: gfOzHpjOnQ
(grafted from dd508458f70d5473256a4bfe5a2f6bc665bbac9d)
2018-01-05 14:45:05 +08:00
cku
7dc339dd52 Bug 1207734 - Part 4.a. Store the final combined transform in nsStyleDisplay::mCombinedTransform. r=birtles
MozReview-Commit-ID: FsuaMoclnL8
(grafted from 793e73f61ee1d0035b3d9d881df4eb784da3c4e9)
2018-01-24 16:22:46 +09:00
cku
b342da0285 Bug 1207734 - Part 1.d. Carry the computed value of individual transform in nsStyleDisplay. r=emilio
Add three more attributes in nsStyleDisplay
1. mSpecifiedRotate to carry computed value of 'rotate' property.
2. mSpecifiedTranslate to carry computed value of 'translate' property.
3. mSpecifiedScale to carry computed value of 'scale' property.

Since each of these tree new property can be an animation target, we have to store
them in speparate attributes, instead of putting them all in mSpecifiedTransform.

MozReview-Commit-ID: G2dBAxzyBWh
(grafted from 04fe9115ce1d189155ff9b2c89b1a656a55dd1c9)
2017-12-06 17:17:34 +08:00
cku
dbe2ffa248 Bug 1207734 - Part 1.c. Fix coding style of HasTransformStyle. r=birtles
MozReview-Commit-ID: 3UgIrO5qLFq
(grafted from a5b445762b46d3c247e4a57864c66454f5d58218)
2018-01-15 11:12:25 +08:00
Emilio Cobos Álvarez
f085fb7158 Bug 1429723: Remove -moz-border-*-colors. r=xidorn
MozReview-Commit-ID: 3P6f7rFcDa6
2018-01-22 18:14:07 +01:00
Hiroyuki Ikezoe
c783c3b8c6 Bug 1420928 - Drop StyleTransition::GetCombinedDuration. r=boris
We no longer call the function directly.  It has been replaced by
nsStyleDisplay::GetTransitionCombinedDuraion(uint32_t).

MozReview-Commit-ID: 9wZExWPmnyG
2018-01-05 06:24:09 +09:00
Hiroyuki Ikezoe
39d45680e3 Bug 1420928 - Add a function that calculates combined duration with a given position in the transition-property list. r=boris
MozReview-Commit-ID: 9YOII9lqtRq
2018-01-05 06:24:08 +09:00
Hiroyuki Ikezoe
260ebbbfb2 Bug 1420928 - Add getters for each transition property in nsStyleDisplay. r=boris
MozReview-Commit-ID: KMUk5VFmKG7
2018-01-05 06:24:08 +09:00
Hiroyuki Ikezoe
1559e331b2 Bug 1420928 - Add getters for each animation property in nsStyleDisplay. r=boris
This is also a prerequisite to use repeated values for the used value.
Note that each count should never be zero since their initial value is 1 and
we never set zero length property value to the member.

MozReview-Commit-ID: 44ZMhopuK6o
2018-01-05 06:24:08 +09:00
Xidorn Quan
6831f9fcc2 Bug 1325940 part 2 - Converted NS_STYLE_BORDER_IMAGE_REPEAT_* to an enum class. r=emilio
MozReview-Commit-ID: Kdzm5D8Dpv
2017-12-21 16:16:40 +11:00
Mats Palmgren
03018ea47a Bug 1422839 part 1 - Add internal overflow-clip-box-block/-inline properties and make overflow-clip-box a shorthand. r=dholbert
MozReview-Commit-ID: axoDaWnOJQ
2017-12-05 21:08:41 +01:00
Ting-Yu Lin
ce7a0e0ebb Bug 1265343 Part 1 - Add shape-image-threshold to style system. r=heycam
devtools/shared/css/generated/properties-db.js is generated by running
"./mach devtools-css-db"

MozReview-Commit-ID: 1U4yoQTDwxi
2017-11-27 15:01:25 +08:00
Ting-Yu Lin
48f97afc24 Bug 1418224 Part 3 - Add shape-outside: <image> support to style system. r=heycam
Some Gecko style system files are modified to prevent assertions and
crashing, and to keep test failures on stylo disabled builds to minimum.

MozReview-Commit-ID: GuxAeCTz0xx
2017-11-17 16:34:37 +08:00
Ting-Yu Lin
e4a120ce82 Bug 1418224 Part 1 - Change StyleShapeSource::SetURL's return type to void. r=heycam
No caller check the return value, and SetURL ever returns true.

MozReview-Commit-ID: 5XPFq41Ktlq
2017-10-02 17:51:20 +08:00
Emilio Cobos Álvarez
2cbb6be7a5 Bug 1420496: Bring back the optimization to avoid traversing XBL subtrees that will likely change. r=heycam
We need to get rid of BindingHolder to handle properly the case of an invalid
binding URL.

MozReview-Commit-ID: 3sIGtcVOt0r
2017-11-24 15:15:38 +01:00
dluca
617c4e7f6a Backed out 4 changesets (bug 1418224) for build bustages r=backout on a CLOSED TREE
Backed out changeset 3ef8715cb8d7 (bug 1418224)
Backed out changeset 0d58d9fed90d (bug 1418224)
Backed out changeset faad7f275749 (bug 1418224)
Backed out changeset 1e86ff6b95ae (bug 1418224)
2017-11-27 07:42:50 +02:00
Ting-Yu Lin
0ba402e925 Bug 1418224 Part 3 - Add shape-outside: <image> support to style system. r=heycam
Some Gecko style system files are modified to prevent assertions and
crashing, and to keep test failures on stylo disabled builds to minimum.

MozReview-Commit-ID: GuxAeCTz0xx
2017-11-17 16:34:37 +08:00
Ting-Yu Lin
1f1bf331d5 Bug 1418224 Part 1 - Change StyleShapeSource::SetURL's return type to void. r=heycam
No caller check the return value, and SetURL ever returns true.

MozReview-Commit-ID: 5XPFq41Ktlq
2017-10-02 17:51:20 +08:00
Botond Ballo
d2150a861f Bug 951793 - Style support for overscroll-behavior. r=heycam
MozReview-Commit-ID: IDAfBZy2D5p
2017-11-25 01:28:58 +01:00
Sebastian Hengst
df2429a1ad Backed out 15 changesets (bug 951793) because it landed before the necessary servo changes. r=backout requested by emilio on a CLOSED TREE
Backed out changeset ca8c86e229df (bug 951793)
Backed out changeset 6eef6403fa71 (bug 951793)
Backed out changeset a5e529f52fb1 (bug 951793)
Backed out changeset 054e837609d0 (bug 951793)
Backed out changeset 713a3c9617ce (bug 951793)
Backed out changeset 884913aa1668 (bug 951793)
Backed out changeset c3340b84e534 (bug 951793)
Backed out changeset 50fe3c6ac486 (bug 951793)
Backed out changeset be4e22e5c257 (bug 951793)
Backed out changeset 7055bd5dfc4e (bug 951793)
Backed out changeset fa6da1e723cf (bug 951793)
Backed out changeset 386f77004d89 (bug 951793)
Backed out changeset fa82cdc01408 (bug 951793)
Backed out changeset 867d8ea5355c (bug 951793)
Backed out changeset e61ac8e48971 (bug 951793)
2017-11-25 01:01:41 +02:00
Botond Ballo
3bc3bacff3 Bug 951793 - Style support for overscroll-behavior. r=heycam
MozReview-Commit-ID: IDAfBZy2D5p
2017-11-22 19:01:11 -05:00
Cameron McCormack
382b3d4bbb Bug 1418899 - Part 4: Move image layer filling function out of nsRuleNode. r=cjku
MozReview-Commit-ID: 2FXGFEkpIKE
2017-11-20 13:53:58 +08:00
Markus Stange
a2cbb75a70 Bug 1414147 - Move fontSmoothingBackgroundColor from nsStyleUserInterface to nsStyleFont / nsFont. r=dbaron
MozReview-Commit-ID: 7i0Sy50Badm
2017-11-02 17:48:44 -04:00
Emilio Cobos Álvarez
837d1e8cbc Bug 1412486: Make the replacement for UniquePtr not have a deleter parameter. r=xidorn
Bindgen now assumes for replaced types that all the template parameters are
used, which makes sense.

We don't use the Deleter, so let's get rid of it.

MozReview-Commit-ID: AXxRgyLorD7
2017-10-30 12:01:01 +01:00
Hiroyuki Ikezoe
f0a38025cf Bug 1329169 - Use atom for animation-name property. r=xidorn
MozReview-Commit-ID: 9yVWXVi1oXf
2017-10-10 17:00:28 +09:00
Nicholas Nethercote
7dbfdaf890 Bug 1400460 - Rename nsIAtom as nsAtom. r=hiro.
(Path is actually r=froydnj.)

Bug 1400459 devirtualized nsIAtom so that it is no longer a subclass of
nsISupports. This means that nsAtom is now a better name for it than nsIAtom.

MozReview-Commit-ID: 91U22X2NydP
2017-10-03 09:05:19 +11:00
Ting-Yu Lin
b445303baa Bug 1404243 Part 4 - Change StyleShapeSource's URL value storage by using nsStyleImage. r=heycam
This is for implementing shape-outside: <image> later.

MozReview-Commit-ID: 93TmLecRjRx
2017-09-29 16:24:23 +08:00
Ting-Yu Lin
d35b7d33db Bug 1404243 Part 3 - Remove refcount for StyleBasicShape, and use UniquePtr to hold it. r=heycam
After StyleBasicShape is set to StyleShapeSource, it's life cycle never go
beyond StyleShapeSource, so I make StyleBasicShape hold by a UniquePtr in
StyleShapeSource.

Also, replace all raw pointers to StyleBasicShape by UniquePtr in all APIs.

MozReview-Commit-ID: 1MfIFjP8TsQ
2017-09-25 18:50:24 +08:00
Ting-Yu Lin
bdeac3a666 Bug 1404243 Part 2 - Change StyleShapeSource::operator==() to use logic in DefinitelyEquals(). r=heycam
The original operator==() (implemented by EqualsInternal<true>) is not been
used. Therefore, I expand EqualsInternal<false> into it, and move it to
nsStyleStruct.cpp.

Also, use DefinitelyEqualURIs() in nsStyleStruct.cpp in operator==().

MozReview-Commit-ID: HccwKvzQHR
2017-09-29 14:36:35 +08:00
Ting-Yu Lin
73270862cd Bug 1404243 Part 1 - Move StyleShapeSource's large methods to nsStyleStruct.cpp. r=heycam
MozReview-Commit-ID: 5X5LGCSzSwX
2017-09-27 11:32:38 +08:00
Nicholas Nethercote
9fda5528d2 Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam.
This patch merges nsAtom into nsIAtom. For the moment, both names can be used
interchangeably due to a typedef. The patch also devirtualizes nsIAtom, by
making it not inherit from nsISupports, removing NS_DECL_NSIATOM, and dropping
the use of NS_IMETHOD_. It also removes nsIAtom's IIDs.

These changes trigger knock-on changes throughout the codebase, changing the
types of lots of things as follows.

- nsCOMPtr<nsIAtom> --> RefPtr<nsIAtom>

- nsCOMArray<nsIAtom> --> nsTArray<RefPtr<nsIAtom>>
  - Count() --> Length()
  - ObjectAt() --> ElementAt()
  - AppendObject() --> AppendElement()
  - RemoveObjectAt() --> RemoveElementAt()

- ns*Hashtable<nsISupportsHashKey, ...> -->
  ns*Hashtable<nsRefPtrHashKey<nsIAtom>, ...>

- nsInterfaceHashtable<T, nsIAtom> --> nsRefPtrHashtable<T, nsIAtom>
  - This requires adding a Get() method to nsRefPtrHashtable that it lacks but
    nsInterfaceHashtable has.

- nsCOMPtr<nsIMutableArray> --> nsTArray<RefPtr<nsIAtom>>
  - nsArrayBase::Create() --> nsTArray()
  - GetLength() --> Length()
  - do_QueryElementAt() --> operator[]

The patch also has some changes to Rust code that manipulates nsIAtom.

MozReview-Commit-ID: DykOl8aEnUJ
2017-09-26 08:33:21 +10:00
Manish Goregaokar
5ff33e95bc Bug 1399228 - stylo: Add font keyword info fields on nsStyleFont; r=emilio
MozReview-Commit-ID: ERCnLLiAsFg
2017-09-23 12:55:34 -07:00