Commit Graph

1228 Commits

Author SHA1 Message Date
Xidorn Quan
833c3ca456 Bug 1363088 - Remove text-shadow handling from HasAuthorSpecifiedRules. r=heycam
After bug 1401825, we no longer need the code for text-shadow anymore,
so we can just remove it.

MozReview-Commit-ID: B2zpzetwW91
2017-10-12 11:13:07 +11: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
Cameron McCormack
0adc428de6 Bug 1397626 - Part 3: Use SharedFontList to store font-family specified and computed values. r=xidorn
MozReview-Commit-ID: J3MNO2un2ov
2017-10-03 12:27:45 +08:00
Cameron McCormack
4ad8de31f3 Bug 1397626 - Part 2: Replace uses of FontFamilyListRefCnt with SharedFontList. r=xidorn
MozReview-Commit-ID: 7HoBae9UOks
2017-10-02 10:24:25 +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
Emilio Cobos Álvarez
361b007536 Bug 1403592: Never flush the user font set when getting font metrics from style resolution. r=Manishearth
In this case, the caller doesn't go through all the PreTraverseSync stuff (we
don't really want it to do so), via GetComputedStyleNoFlush.

It makes sense to not flush the user font set that case, we'll schedule a
restyle properly if / when needed.

Since the set should be flushed otherwise, let's just not flush it from the
styling code.

MozReview-Commit-ID: LLHfxemJ8QQ
2017-09-28 10:12:50 +02: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
Ting-Yu Lin
a78b44acbc Bug 1281101 Part 1 - Remove MOZ_ENABLE_MASK_AS_SHORTHAND from layout code. r=cjku
MozReview-Commit-ID: HWq2IOLsflD
2017-09-21 17:36:57 +08:00
Xidorn Quan
45b9f27e27 Bug 1400438 - Use array instead of linked list for -moz-border-*-colors. r=heycam,mattwoodrow
MozReview-Commit-ID: LPl1Rlg5gRn
2017-09-18 13:38:39 +10:00
Sebastian Hengst
b57b40549e Backed out changeset 61a277705d59 (bug 1400438) for heap write hazard. r=backout 2017-09-20 16:52:02 +02:00
Xidorn Quan
060ebcb57f Bug 1400438 - Use array instead of linked list for -moz-border-*-colors. r=heycam,mattwoodrow
MozReview-Commit-ID: LPl1Rlg5gRn
2017-09-20 22:52:20 +10:00
Sebastian Hengst
60681b0d1d Backed out changeset df9036657f25 (bug 1400438) for crashing chrome test mobile/android/components/extensions/test/mochitest/test_ext_options_ui.html on Android. r=backout on a CLOSED TREE 2017-09-19 16:33:05 +02:00
Xidorn Quan
d04464d1b9 Bug 1400438 - Use array instead of linked list for -moz-border-*-colors. r=heycam,mattwoodrow
MozReview-Commit-ID: LPl1Rlg5gRn
2017-09-18 13:38:39 +10:00
Markus Stange
20d02b9b24 Bug 1387594 - Add a chrome-only CSS property called -moz-font-smoothing-background-color. r=dbaron
This property accepts a color. It's inherited and defaults to transparent.
Its value is respected on macOS when rendering text into transparent pixels.
This property should be used for text that is placed on top of "vibrant"
-moz-appearances, in order to achieve high quality text rendering for such text.

In most cases, the property should be set to a named system color; an upcoming
patch in this patch series will add one such color for each vibrant
-moz-appearance value.
However, in some cases it can also be useful to use a custom color: If text
is rendered into an intermediate surface, for example because a mask is applied
to it, and the background color behind that intermediate surface is known, then
this property can be set to that background color in order to achieve subpixel
AA for the text inside the mask effect. In that case, the font smoothing
background color is respected because text is rendered into transparent pixels
*inside the intermediate surface*. At the moment, the only example of that use
case is the text of the active tab in the state where the text is overflowing.

MozReview-Commit-ID: D98qQnxoFaq
2017-09-14 23:09:46 +02:00
Xidorn Quan
fc8edefa79 Bug 1393189 part 3 - Replace all uses of nsCSSProps::kListStyleKTable with gBuiltinStyleTable. r=dholbert
The change in CounterStyleManager::BuildCounterStyle converts a case-
insensitive comparison to a case-sensitive comparison by comparing atom
pointer directly. But this is fine because all names of builtin counter
styles should have been lowercased by the parser. For Gecko, it is done
in CSSParserImpl::ParseCounterStyleName, and for Servo, it is done in
counter_style::parse_counter_style_name.

MozReview-Commit-ID: JHHmzEaNIpn
2017-08-29 15:36:32 +10:00
Kevin Hsieh
b044805d48 Bug 1367860 (part 3) - Construct language-specific default variable font as fallback font, not specified font. r=dbaron
MozReview-Commit-ID: 5kBHhvacxbS
2017-08-18 12:56:02 -07:00
Kevin Hsieh
860e72eb68 Bug 1367860 (part 2) - Update CSS fallback font when lang changes. r=dbaron
MozReview-Commit-ID: 1VzxKnJJ1kD
2017-08-18 11:30:21 -07:00
Kevin Hsieh
850aaaec90 Bug 1367860 (part 1) - Handle CSS font-family units using switch instead of if. r=dbaron
MozReview-Commit-ID: DBwSHM8kfGP
2017-08-18 11:26:44 -07:00
Nazım Can Altınova
5e5b68d3c7 Bug 1355721 - stylo: Implement font feature values lookup r=emilio,xidorn
MozReview-Commit-ID: 7wgQ1NCn7vL
2017-08-23 18:05:53 -07:00
Gregory Szorc
336b6b8347 Backed out changesets b749fc196a50, 2791eac8d760 (bug 1355721) for build bustage
CLOSED TREE
2017-08-24 20:30:17 -07:00
Nazım Can Altınova
639d0c6171 Bug 1355721 - stylo: Implement font feature values lookup r=emilio,xidorn
MozReview-Commit-ID: 7wgQ1NCn7vL
2017-08-23 18:05:53 -07:00
Jeremy Chen
c5de85fe8a Bug 1375332 - stylo: move minimum font size applying into the default constructor of nsStyleFont. r=emilio
In Stylo, we read font related user prefs to set the default font size only
if we set 'font-size' property. However, users are allowed to set their
preferred minimum font size through the user prefs, even without using
'font-size' property.

Gecko used to do this in nsRuleNode::SetDefaultOnRoot, which calles the
default constructor of nsStyleFont and does the minimum font size applying
right after. Moving the minimum font size applying into the default
constructor of nsStyleFont shoud be no harm to Gecko, but makes Stylo
share the same code path and behave the same.

MozReview-Commit-ID: BDcJX92o0uR
2017-08-23 18:14:03 +08:00
hardik tyagi
e3bd4cc789 Bug 1389862: Change NS_STYLE_CONTENT macro definitions to scoped enum class StyleContent; r=manishearth
MozReview-Commit-ID: 4ojiXrCNRIN
2017-08-14 23:56:24 -07:00
Xidorn Quan
a29da54fad Bug 1388255 - Make nsStylePosition::mGridTemplate{Columns,Rows} a UniquePtr. r=canaltinova,dholbert
MozReview-Commit-ID: 8SOE6sAavCX
2017-08-09 11:30:25 +10:00
Manish Goregaokar
8f46c1f6dd Bug 1358688 - Part 1: Don't unzoom text for font-size:larger/smaller ; r=emilio
This used to be necessary when larger/smaller did a table lookup.
However as of bug 1361550 these are simple ratios and should be treated
the same as em units.

MozReview-Commit-ID: 2zM7O0awynG
2017-08-02 11:28:08 -07:00
Emilio Cobos Álvarez
54f1c009a9 Bug 1384542: Move GetParent and IsLinkContext to GeckoStyleContext. r=heycam
MozReview-Commit-ID: C19yGcphixX
2017-07-31 14:32:59 +02:00
Emilio Cobos Álvarez
5a23788fa4 Bug 1384542: Get rid of GetParentAllowServo in implementation of CSS 'justify-items' property. r=dholbert,heycam
MozReview-Commit-ID: 4qydjqSoVXs
2017-07-31 14:32:51 +02:00
Kevin Hsieh
e65cc86685 Bug 1383925 - Remove unnecessary copy construction of default font in nsRuleNode.cpp. r=dholbert
MozReview-Commit-ID: 6awjBjmEBsM
2017-07-24 17:56:54 -07:00
Xidorn Quan
7ecc3b6ca1 Bug 1382077 part 2 - Move mUsesViewportUnits into nsStyleSet. r=heycam
MozReview-Commit-ID: DQ4ZoLLNPeN
2017-07-24 11:51:32 +10:00
Carsten "Tomcat" Book
07d253a893 Backed out changeset 972821835d48 (bug 1382077) 2017-07-25 12:17:16 +02:00
Xidorn Quan
2798346a35 Bug 1382077 part 2 - Move mUsesViewportUnits into nsStyleSet. r=heycam
MozReview-Commit-ID: DQ4ZoLLNPeN
2017-07-24 11:51:32 +10:00
Emilio Cobos Álvarez
224666fa6f Bug 1383634: Remove usage of GetParentAllowServo in nsRuleNode. r=xidorn
This is Gecko-only code, so no need to allow Servo.

MozReview-Commit-ID: H4xZx0jMREI
2017-07-24 10:11:40 +02:00
Kevin Hsieh
883fbb97ad bug 1363349 (part 1) - refactor CSSCalc.h to share code better, via a templated ReduceCalcOps class r=dholbert
MozReview-Commit-ID: IvU2StpKHLm
2017-07-12 18:13:07 -07:00
Cameron McCormack
796951490e Bug 1353312 - Don't use conditions when caching a struct with no rules. r=dbaron
MozReview-Commit-ID: 2Q1xWcDY10T
2017-07-05 23:23:10 -04:00
Emilio Cobos Álvarez
79dc52d467 Bug 1370802: There's actually no need for lang to be lowercased. r=heycam
MozReview-Commit-ID: KwtbLqR9Y81
2017-06-17 02:27:59 +02:00
Emilio Cobos Álvarez
ceb7a883d3 Bug 1370802: Parse lang attributes as atoms. r=heycam
MozReview-Commit-ID: Cnq3wB7aVB1
2017-06-15 21:48:26 +02:00
Markus Stange
539f07616a Bug 1370034 - Add CSS properties -moz-window-transform and -moz-window-transform-origin, style system parts (excluding stylo). r=dbaron
MozReview-Commit-ID: BlLMswF0bKO
2017-06-19 01:44:22 -04:00
Markus Stange
b8c33eb763 Bug 1370034 - Add -moz-window-opacity property, style system parts (excluding stylo). r=dbaron
MozReview-Commit-ID: J2SPMzh0I9C
2017-06-18 21:04:40 -04:00
Cameron McCormack
95368ca21c Backout bug 1291457 and bug 1370034 for bustage. 2017-06-19 13:55:15 +08:00
Markus Stange
ec6ecdb465 Bug 1370034 - Add CSS properties -moz-window-transform and -moz-window-transform-origin, style system parts (excluding stylo). r=dbaron
MozReview-Commit-ID: BlLMswF0bKO
2017-06-19 00:21:16 -04:00
Markus Stange
39724e9b46 Bug 1370034 - Add -moz-window-opacity property, style system parts (excluding stylo). r=dbaron
MozReview-Commit-ID: J2SPMzh0I9C
2017-06-18 21:04:40 -04:00
Manish Goregaokar
533734efc7 Bug 1373018 - Part 10: stylo: Remove StyleSource; r=bholley
MozReview-Commit-ID: 4IcROeDNoBA
2017-06-10 22:27:45 -07:00
Manish Goregaokar
e8a3c268a8 Bug 1373018 - Part 8: stylo: Move nsStyleContext::SetStyle to GeckoStyleContext; r=bholley
MozReview-Commit-ID: ycXu95whnG
2017-06-10 22:27:45 -07:00
Alexis Beingessner
3117218f13 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
1b1d14e565 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
c6fbc5e17e 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
e7886588bb 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
Carsten "Tomcat" Book
77340b6737 merge mozilla-inbound to mozilla-central a=merge 2017-06-02 14:22:17 +02:00
Jeff Hajewski
adba322437 Bug 1369448 - Change NS_STYLE_WHITESPACE macro definitions to enum class; r=manishearth
MozReview-Commit-ID: HUXYWXk8eiI
2017-06-01 15:37:22 -07:00