Commit Graph

1228 Commits

Author SHA1 Message Date
Nathan Froyd
404078d785 Bug 1295192 - part 1 - remove CPP_THROW_NEW on layout struct operator new overloads that forward to nsPresShell::AllocateByObjectID; r=dholbert
Structs in our style system use an arena-style allocation system,
managed by the presshell to which they belong.  All of the relevant
overloads that forward allocation requests to the presshell declare
themselves as CPP_THROW_NEW, which indicates that they do not throw
exceptions.  The C++ specification states that operator new overloads
that declare themselves to not throw exceptions require a null check on
their return value.  However, the relevant presshell allocation method,
AllocateByObjectID, is infallible and will never return a null pointer.

The callers of all of these methods are therefore doing useless
(compiler-generated) null checks.  Let's get rid of those useless checks
by removing the CPP_THROW_NEW annotations.  This change declares these
methods will return non-null pointers and throw exceptions in case of
errors--but as we don't use exceptions, and AllocateByObjectID will
abort on OOM, everything works out OK.
2016-08-17 15:28:45 -04:00
Jonathan Chan
2eeb9e0a7f Bug 1293739 - Part 2: Rename nsCSSPropertySet to nsCSSPropertyIDSet. r=dholbert
The previous patch in this series renamed nsCSSProperty to nsCSSPropertyID.
This patch renames nsCSSPropertySet to nsCSSPropertyIDSet accordingly.

This patch is generated by the following commands (note: if you're running
using OS X's sed, which accepts slightly different flags, you'll have to
specify an actual backup suffix in -i, or use gsed from Homebrew):

  hg stat -c \
  | cut -c 3-  \
  | tr '\n' '\0' \
  | xargs -0 -P 8 gsed --follow-symlinks 's/\bnsCSSPropertySet\b/nsCSSPropertyIDSet/g' -i''

Then:

  hg mv layout/style/nsCSSPropertySet.h layout/style/nsCSSPropertyIDSet.h

... and finally, manually renaming nsCSSPropertySet in the include guard in
nsCSSPropertyIDSet.h.

(NOTE: Re-landing this patch on a CLOSED TREE to correctly-address the merge bustage that closed the tree.)

MozReview-Commit-ID: ASUNs7FWbKP
2016-08-16 18:46:58 -07:00
Jonathan Chan
e201b93c16 Bug 1293739 - Part 1: Rename nsCSSProperty to nsCSSPropertyID. r=dholbert
This patch is generated by the following commands (note: if you're running
using OS X's sed, which accepts slightly different flags, you'll have to
specify an actual backup suffix in -i, or use gsed from Homebrew):

  hg stat -c \
  | cut -c 3-  \
  | tr '\n' '\0' \
  | xargs -0 -P 8 gsed --follow-symlinks 's/\bnsCSSProperty\b/nsCSSPropertyID/g' -i''

Then:

  hg mv layout/style/nsCSSProperty.h layout/style/nsCSSPropertyID.h

... and finally, manually renaming nsCSSProperty in the include guard in
nsCSSProperty.h.

MozReview-Commit-ID: ZV6jyvmLfA
2016-08-16 18:37:48 -07:00
Gregory Szorc
3bcd02ebea Backed out changesets dcdb85fc5517, 702bca0deee2, 9cKX8gC1ATA (bug 1293739) for build bustage; a=bustage
The merge from inbound to central conflicted with the merge from
autoland to central, it appears. Per tree rules, the commit from the
autoland repo wins and the inbound commit gets backed out.

CLOSED TREE
2016-08-16 17:50:40 -07:00
Wes Kocher
bb9e0744e6 Merge inbound to central, a=merge
a=release to get around the webidl hook for a comment-only change
2016-08-16 17:05:30 -07:00
Wes Kocher
63041461e3 Backed out 4 changesets (bug 1295192) for being a possible cause of crashtest assertions CLOSED TREE
Backed out changeset 7f10779fe019 (bug 1295192)
Backed out changeset e683dce4197a (bug 1295192)
Backed out changeset 67d12eaa8074 (bug 1295192)
Backed out changeset 44f143a01f78 (bug 1295192)
2016-08-16 11:22:04 -07:00
Daisuke Akatsuka
f2b0e52be2 Bug 1277433 - Part 1: Use discrete animation for appropriate CSS Alignment properties. r=dholbert,heycam
MozReview-Commit-ID: BHtzuwJOuB5
2016-08-16 14:29:21 +09:00
Manish Goregaokar
1a43d137cb Bug 1295177 - Convert STYLE_FILL_RULE_* to an enum class; r=xidorn
MozReview-Commit-ID: HnNFNyD4oVJ
2016-08-15 21:47:04 +05:30
Nathan Froyd
66b623e381 Bug 1295192 - part 4 - use a non-null-checked placement new operator in layout code; r=dholbert
The standard placement new function is declared to not throw, which
means that, per spec, a null check on its result is required.  There are
a number of places throughout layout/ where we know that we are passing
non-null pointers to placement new (and receiving them as a return
value), and we are therefore doing useless work performing these null
checks.

Therefore, we should be using an operator new overload that doesn't
require the null check.  MFBT has just such an overload, so use that.
2016-08-16 17:05:38 -04:00
Nathan Froyd
dabc06ebd0 Bug 1295192 - part 1 - remove CPP_THROW_NEW on layout struct operator new overloads that forward to nsPresShell::AllocateByObjectID; r=dholbert
Structs in our style system use an arena-style allocation system,
managed by the presshell to which they belong.  All of the relevant
overloads that forward allocation requests to the presshell declare
themselves as CPP_THROW_NEW, which indicates that they do not throw
exceptions.  The C++ specification states that operator new overloads
that declare themselves to not throw exceptions require a null check on
their return value.  However, the relevant presshell allocation method,
AllocateByObjectID, is infallible and will never return a null pointer.

The callers of all of these methods are therefore doing useless
(compiler-generated) null checks.  Let's get rid of those useless checks
by removing the CPP_THROW_NEW annotations.  This change declares these
methods will return non-null pointers and throw exceptions in case of
errors--but as we don't use exceptions, and AllocateByObjectID will
abort on OOM, everything works out OK.
2016-08-16 17:05:39 -04:00
Jonathan Chan
fafebb61e5 Bug 1293739 - Part 2: Rename nsCSSPropertySet to nsCSSPropertyIDSet. r=dholbert
The previous patch in this series renamed nsCSSProperty to nsCSSPropertyID.
This patch renames nsCSSPropertySet to nsCSSPropertyIDSet accordingly.

This patch is generated by the following commands (note: if you're running
using OS X's sed, which accepts slightly different flags, you'll have to
specify an actual backup suffix in -i, or use gsed from Homebrew):

  hg stat -c \
  | cut -c 3-  \
  | tr '\n' '\0' \
  | xargs -0 -P 8 gsed --follow-symlinks 's/\bnsCSSPropertySet\b/nsCSSPropertyIDSet/g' -i''

Then:

  hg mv layout/style/nsCSSPropertySet.h layout/style/nsCSSPropertyIDSet.h

... and finally, manually renaming nsCSSPropertySet in the include guard in
nsCSSPropertyIDSet.h.

MozReview-Commit-ID: ASUNs7FWbKP
2016-08-09 16:28:21 -07:00
Jonathan Chan
23ccd0531f Bug 1293739 - Part 1: Rename nsCSSProperty to nsCSSPropertyID. r=dholbert
This patch is generated by the following commands (note: if you're running
using OS X's sed, which accepts slightly different flags, you'll have to
specify an actual backup suffix in -i, or use gsed from Homebrew):

  hg stat -c \
  | cut -c 3-  \
  | tr '\n' '\0' \
  | xargs -0 -P 8 gsed --follow-symlinks 's/\bnsCSSProperty\b/nsCSSPropertyID/g' -i''

Then:

  hg mv layout/style/nsCSSProperty.h layout/style/nsCSSPropertyID.h

... and finally, manually renaming nsCSSProperty in the include guard in
nsCSSProperty.h.

MozReview-Commit-ID: ZV6jyvmLfA
2016-08-09 16:28:19 -07:00
cku
f008efa984 Bug 1295065 - Fix assertion failure at FragmentOrURL::SetValue after enabling mask-as-shorthand. r=heycam
MozReview-Commit-ID: AUySGzzqjQo
2016-08-15 12:00:03 +08:00
cku
70f5971663 Bug 1295062 - Fix mask-position initial value in nsRuleNode::ComputeSVGResetData. r=astley,heycam
MozReview-Commit-ID: EvbSdG0xLtV
2016-08-15 15:33:03 +08:00
Manish Goregaokar
573a62e695 Bug 1295895 - Correctly capitalize StyleFillRule; r=heycam
MozReview-Commit-ID: ZfHrllA9QV
2016-08-17 12:13:26 +05:30
Ravi Shankar
62a1eae26d Bug 1291667 - Change NS_STYLE_USER_SELECT_* constants to enum classes; r=heycam,manishearth
MozReview-Commit-ID: IcDt3XYvdlj
2016-08-10 21:42:21 +05:30
Carsten "Tomcat" Book
7f5dd04451 Merge mozilla-central to mozilla-inbound 2016-08-10 16:02:57 +02:00
cku
b2fa455831 Bug 1291280 - Part 4. Fix compile error after enable-mask-as-shorthand. r=me
MozReview-Commit-ID: Edy8CiMGCfK
2016-08-10 19:37:55 +08:00
Sebastian Hengst
03d6e9f367 Backed out changeset ff84b85aa1cb (bug 1291667) for asserting at nsRuleNode.cpp:1322 and failing mochitests and reftests. r=backout 2016-08-10 12:59:15 +02:00
Ravi Shankar
94124bd377 Bug 1291667 - Change NS_STYLE_USER_SELECT_* constants to enum classes; r=Manishearth,heycam
MozReview-Commit-ID: 2qBMmQrtuR9
2016-08-10 13:57:32 +08:00
Ting-Yu Lin
d42431d103 Bug 1293604 - Replace NS_STYLE_FLOAT_* with StyleFloat enum class. r=dbaron
MozReview-Commit-ID: 4K6TyIm6cs3
2016-08-09 17:32:54 +08:00
Ting-Yu Lin
1bcd857cd6 Bug 1288626 Part 8 - Add shape-outside support to style system. r=heycam
I have to move the definition of StyleBasicShape and StyleShapeSource prior to
where nsStyleDisplay::mShapeOutside is defined since the template struct need to
be fully defined before using as a member variable.

Use SetIdent() in CreatePrimitiveValueForBasicShapeOrURL() in
nsComputedDOMStyle.cpp per bug 1288626 comment 6.

MozReview-Commit-ID: 1KZS299CFul
2016-07-22 15:40:01 +08:00
Ting-Yu Lin
5256d6f706 Bug 1288626 Part 7 - Rename StyleClipShapeSizing to StyleClipPathGeometryBox. r=heycam
Change to geometry box to match the name in the spec.
https://drafts.fxtf.org/css-masking-1/#the-clip-path

MozReview-Commit-ID: 8jDTynCkJ4A
2016-07-28 13:45:43 +08:00
Ting-Yu Lin
db41f5c015 Bug 1288626 Part 6 - Generalize StyleClipPath to be template struct StyleShapeSource. r=heycam
The only difference between clip-path and shape-outside is the reference box
enum, so I generalize StyleClipPath to be a template struct StyleShapeSource to
accommodate both. I'll have to move all the method definition to the header to
make the linker happy.

The only logic change is calling operator==() instead of EqualURIs to compare
urls in StyleShapeSource::operator==().

MozReview-Commit-ID: LOBGVVpnnB
2016-08-04 13:43:08 +08:00
Ting-Yu Lin
00dc2871aa Bug 1288626 Part 4 - Rename nsStyleClipPath to StyleClipPath. r=heycam
MozReview-Commit-ID: 2iT4elvtTGd
2016-07-28 10:29:33 +08:00
Ting-Yu Lin
403c83e1f8 Bug 1288626 Part 3 - Rename nsStyleBasicShape to StyleBasicShape. r=heycam
MozReview-Commit-ID: 9NUKpZ4s4kG
2016-07-27 18:14:36 +08:00
Ting-Yu Lin
f4871b826d Bug 1288626 Part 2 - Use basic shape enum class defined in nsStyleConsts.h. r=heycam
Rename StyleBasicShape to StyleBasicShapeType in nsStyleConsts.h, and
replace the old enum nsStyleBasicShape::Type by the enum class
StyleBasicShapeType.

Also, replace NS_ASSERTION() by MOZ_ASSERT().

MozReview-Commit-ID: EuS4ZtYKsk6
2016-07-27 17:59:33 +08:00
cku
608464ed2b Bug 1291280 - Part 2. Declare nsStyleImageLayers::Layer::mSourceURI as FragmentOrURI r=heycam
MozReview-Commit-ID: 6KFb7MjlLqj
2016-08-06 06:38:44 +08:00
cku
31c970fe69 Bug 652991 - Part 9. Using FragmentOrURL to represent PanitServer url. r=heycam
MozReview-Commit-ID: IZf0fGantoB
2016-07-05 01:00:15 +08:00
cku
773e94febb Bug 652991 - Part 7. Using FragmentOrURL to represent SVG filter url. r=heycam
MozReview-Commit-ID: F6BpTQfC82i
2016-07-23 16:16:59 +08:00
cku
3f66d7ecff Bug 652991 - Part 5. Using FragmentOrURL to represent SVG clippath. r=heycam
MozReview-Commit-ID: BErpWUQ5iQ1
2016-07-05 00:59:57 +08:00
cku
813a776895 Bug 652991 - Part 3. Using FragmentOrURL to represent SVG maker url. r=heycam
MozReview-Commit-ID: IQDGL7j5p1q
2016-06-24 02:11:51 +08:00
Cameron McCormack
956e044bfa Bug 1281081 - Convert image request setting macros into a function with a callback. r=xidorn
MozReview-Commit-ID: 91uN8S8nEgp
2016-06-22 19:49:04 +10:00
Neerja Pancholi
dd25bad891 Bug 1288797 - Replace nsAutoPtr with UniquePtr in nsStyleStruct.h (for variable "mCropRect") r=dholbert
MozReview-Commit-ID: 1UFbO0jgM1k
2016-07-28 15:06:02 -07:00
Jeremy Chen
2c264512f6 Bug 1289007 - part1: parse and compute initial-letter property. r=heycam
MozReview-Commit-ID: E0eXolZ93oJ
2016-07-28 15:23:36 +08:00
Daisuke Akatsuka
ad6c07aadb Bug 1264865 - Part 3: Remove codes that are no longer in use. r=birtles
MozReview-Commit-ID: Dhrco8madlz
2016-07-27 10:13:17 +09:00
Ting-Yu Lin
1ea5d47341 Bug 1289052 - Move nsRuleNode methods as static functions to .cpp file. r=heycam
MozReview-Commit-ID: 7tG2NlvQzGz
2016-07-25 17:26:44 +08:00
Manish Goregaokar [:manishearth]
cba3783f88 Bug 1288383 - "Replace clip-path, box-shadow, float-edge, and user-focus consts with enum classes" bustage fix. a=tomcat 2016-07-25 02:27:00 +02:00
Manish Goregaokar
d7eaba573c Bug 1288383 - Replace NS_STYLE_USER_FOCUS_* with an enum class; r=heycam
MozReview-Commit-ID: A7BYcfsn1tI
2016-07-25 11:56:40 +05:30
Manish Goregaokar
23be3f2e35 Bug 1288383 - Replace NS_STYLE_FLOAT_EDGE_* with an enum class; r=heycam
MozReview-Commit-ID: FrH5kGWeXkL
2016-07-25 11:56:05 +05:30
Manish Goregaokar
fa33e2df00 Bug 1288383 - Replace NS_STYLE_BOX_SHADOW_* and NS_STYLE_BASIC_SHAPE_* with enum classes; r=heycam
MozReview-Commit-ID: EgC9rPNXbod
2016-07-25 11:53:27 +05:30
Ting-Yu Lin
10912a51e3 Bug 1277129 Part 1c - Rename nsHTMLReflowState to ReflowInput. r=dbaron
This patch is generated by the following script:

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -e "s/$1/$2/g" "{}" \;
}

rename nsHTMLReflowState ReflowInput

MozReview-Commit-ID: 9r9vdVv1pXc
2016-07-21 18:36:35 +08:00
Chris Peterson
6c0f810682 Bug 1277106 - Part 2: Expand MOZ_UTF16() strings to u"" string literals. r=Waldo 2016-07-20 22:03:25 -07:00
Hiroyuki Ikezoe
803e64ff07 Bug 1282076 - Store all non-inherited structs which are stored on the rule node on the style context if we have animation data. r=heycam 2016-07-21 06:12:41 +09:00
Manish Goregaokar
f0b17743f1 Bug 1287755 - Replace NS_STYLE_CLIP_SHAPE_SIZING_* with an enum class; r=heycam
MozReview-Commit-ID: KutLb8H9JOk
2016-07-20 11:12:42 +05:30
Chris Peterson
c35faf4632 Bug 1277775 - Replace MOZ_CONSTEXPR{_VAR,_TMPL} with constexpr. r=froydnj 2016-07-08 14:39:53 -07:00
Ting-Yu Lin
76df1c76cf Bug 1280647 - Rename nsStyleDisplay member mFloats to mFloat. r=dholbert
Also rename mOriginalFloats to mOriginalFloat.

MozReview-Commit-ID: COfmU34CtJU
2016-06-18 22:16:20 +01:00
Cameron McCormack
f4c2c87e5a Bug 1277154 followup, actually fix the bustage 2016-06-08 09:21:52 +10:00
Cameron McCormack
7493b8c1c7 Bug 1277154 - Remove bitfields from nsStyleSVG to help with rust bindgen. r=xidorn 2016-06-03 17:16:39 +10:00
Astley Chen
b6e6de9d4c Bug 1258286: Part 1 - add layer types to nsStyleImageLayers and layer initialization. r=heycam 2016-06-03 23:56:54 +08:00