Граф коммитов

538 Коммитов

Автор SHA1 Сообщение Дата
Xidorn Quan e92fe57924 Bug 1266621 part 5 - Convert border-color to store complex color. r=heycam
MozReview-Commit-ID: 19sl9f3EVgt

--HG--
extra : rebase_source : fba71e92cf7d23728a7c963ae12027e7aee7e986
2016-09-27 20:16:35 +10:00
Xidorn Quan 6972756593 Bug 1266621 part 3 - Convert outline-color to store complex color. r=heycam
MozReview-Commit-ID: 70tre2pYqi3

--HG--
extra : rebase_source : 18ff94f359dde9cd174e2991b7dd848686058057
2016-09-27 20:44:19 +10:00
Xidorn Quan 1c2e2c2361 Bug 1266621 part 2 - Convert column-rule-color to store complex color. r=heycam
MozReview-Commit-ID: AB2b5CPABOZ

--HG--
extra : rebase_source : 99766bfc2f7558935fa5adc869fa23844e3b909f
2016-09-27 20:12:08 +10:00
Xidorn Quan cc1649886e Bug 1266621 part 1 - Convert text-decoration-color to store complex color. r=heycam
MozReview-Commit-ID: LEGICgvgQDY

--HG--
extra : rebase_source : 6c68c6e26648354d4d5515e199fdf07711eca726
2016-09-27 20:19:48 +10:00
Carsten "Tomcat" Book 4f900773f5 merge mozilla-inbound to mozilla-central a=merge 2016-09-21 12:03:31 +02:00
Andrea Marchesini 72d886f7a3 Bug 1301249 - nsIDocument::GetDocumentURI() should be fallible, r=smaug 2016-09-20 14:03:05 +02:00
Xidorn Quan 6b6e2ad7b2 Bug 1299741 part 11 - Change text-{emphasis,fill,stroke}-color to using StyleComplexColor. r=dbaron
MozReview-Commit-ID: 1MlgGAkdPn8

--HG--
extra : rebase_source : 293aa61adaa091bb3d4350a4b86ec9cfbb40eb02
2016-09-16 14:40:45 +10:00
Xidorn Quan addef001bc Bug 1299741 part 10 - Make nsStyleContext.cpp:ExtractColor return a Maybe so that ExtractColorLenient can reuse that. r=birtles
MozReview-Commit-ID: HtqoWoJW8i6

--HG--
extra : rebase_source : 855783009cb8a8c800504299c53055634dbc66bd
2016-08-31 17:37:34 +10:00
Hiroyuki Ikezoe 447019c813 Bug 1216843 - Part 3: Use nsCSSValue instead of nscolor to store over 1.0 color components as an accumulated value so that we can correctly calculate intermediate values in interpolation. r=dholbert
MozReview-Commit-ID: GYdqYZA4xXf
2016-09-13 11:48:44 +09:00
Manish Goregaokar aad318e17a Bug 1300337 - Replace None_ variants from nsStyleConsts.h with None; r=heycam,TYLin
MozReview-Commit-ID: CxHzbEzjLxT

--HG--
extra : rebase_source : 232f90b8b107f7fb49f47a29a4e493660b8a7d87
2016-09-04 00:16:58 +05:30
Emilio Cobos Álvarez 619cb14d87 Bug 1299066: Make NS_STYLE_DISPLAY_* an enum class. Prefer indexing instead of linear search in the frame constructor r=heycam,bz
The main renaming was generated with the following python script:

```

import sys
import re

CAMEL_CASE_REGEX = re.compile(r"(^|_|-)([A-Z])([A-Z]+)")
DISPLAY_REGEX = re.compile(r"\bNS_STYLE_DISPLAY_([^M][A-Z_]+)\b")

def to_camel_case(ident):
  return re.sub(CAMEL_CASE_REGEX,
                lambda m: m.group(2) + m.group(3).lower(), ident)

def constant_to_enum(constant):
  return "StyleDisplay::" + to_camel_case(constant) + ("_" if constant == "NONE" else "")

def process_line(line):
  return re.sub(DISPLAY_REGEX,
                lambda m: constant_to_enum(m.group(1)), line)

lines = []
with open(sys.argv[1], "r") as f:
  for line in f:
    lines.append(process_line(line))

with open(sys.argv[1], "w") as f:
  for line in lines:
    f.write(line)
```

And the following shell commands:

```
find . -name '*.cpp' -exec python display.py {} \;
find . -name '*.h' -exec python display.py {} \;
```

MozReview-Commit-ID: 91xYCbLC2Vf
2016-09-01 20:41:17 -07:00
Neerja Pancholi 0ab64cae78 Bug 1295271 - Remove all _moz_ prefixes from all instances of _moz_column r=dbaron
Command used:
find -E ./* -iregex '.*(\.cpp|\.h)' | xargs egrep -l '.*_moz_column.*' | xargs sed -i '' 's/_moz_column/column/g'


MozReview-Commit-ID: CJbSfDfhmle

--HG--
extra : rebase_source : f3989585c0f5ac98ebbcf7c9a729b4c89c5ddeab
2016-08-30 17:21:03 -07:00
L. David Baron 611f172de6 Bug 1251075 - Optimize away nsChangeHint_UpdateContainingBlock in nsStyleContext::CalcStyleDifference when possible. r=bz
MozReview-Commit-ID: 4Owobm1vZLn
2016-08-29 11:43:29 -07:00
Bobby Holley 6ba364070d Bug 1297572 - Prevent HasPseudoElementData from erroneously tracking anonymous boxes. r=heycam
The layout inspector ends up traversing into the root scroll frame in the next patch. If we don't
fix this, we erroneously enter this code here:

http://searchfox.org/mozilla-central/rev/44f6964ba95b8ddd8ebf70c55b34cd2323afeef4/layout/style/nsComputedDOMStyle.cpp#682

in this test:

devtools/client/inspector/markup/test/browser_markup_anonymous_04.js
2016-08-25 21:34:21 -07:00
Jeremy Chen 2cad5e8979 Bug 1296561 - calculate initial-letter's size according to specification. r=jfkthame
MozReview-Commit-ID: AtuY2UHCGaR

--HG--
extra : rebase_source : 2eecaf954695bb96aae1f1ce52a7b3df49e89618
2016-08-23 09:40:14 +08:00
Nathan Froyd d9759d258f 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 4b87f11bd9 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

--HG--
rename : layout/style/nsCSSProperty.h => layout/style/nsCSSPropertyID.h
2016-08-16 18:37:48 -07:00
Gregory Szorc 1794619188 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

--HG--
extra : amend_source : 927e1cdfa8e55ccbd873d404d905caf6871c8c4f
extra : histedit_source : 07095868c3f767258e1d7d2645193bf4811b13bb%2Ca49ae5a28bf6e67298b6208ee9254c25a2539712
2016-08-16 17:50:40 -07:00
Wes Kocher 48b8d407c8 Merge inbound to central, a=merge
a=release to get around the webidl hook for a comment-only change

--HG--
extra : amend_source : f7e57101e1a25d3cf3536a256898ec2a21c54b38
2016-08-16 17:05:30 -07:00
Wes Kocher 57773cd69e 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
Xidorn Quan ff0f0fef3b Bug 1295111 part 2 - Add static_assert to ensure that is updated properly. r=dbaron
MozReview-Commit-ID: G2RNUcXs4yQ

--HG--
extra : rebase_source : 0ecbe3e09a8783c7149959c3580116d9e3ecd449
2016-08-15 20:52:05 +10:00
Nathan Froyd fa4f709cfd 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
Julian Seward 0749ba9357 Bug 1289098 - Fixes to avoid Valgrind false positives with gcc-5.4 -O2 builds. r=dbaron.
--HG--
extra : rebase_source : 489e0686b650f329c41bc5d2c2504ac308b9541d
2016-08-16 11:05:08 +02:00
Jonathan Chan 9c62a2c11c 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

--HG--
rename : layout/style/nsCSSProperty.h => layout/style/nsCSSPropertyID.h
2016-08-09 16:28:19 -07:00
Bobby Holley 3b101f50f2 Bug 1291885 - Use leak logging in a few more places. r=emilio 2016-08-03 18:31:04 -07:00
Emilio Cobos Álvarez 7f36b64101 Bug 1290335: stylo: Allow processing change hints generated from Servo. r=heycam
MozReview-Commit-ID: Alc0wcXvHcD
2016-08-03 15:11:15 -07:00
Bobby Holley fe8622a540 Bug 1289622 - Add the ability to store change hints on the style context. r=heycam 2016-07-27 13:35:12 -07:00
Bobby Holley 747712c081 Bug 1289622 - Add a ServoComputedValues* overload for CalcStyleDifference. r=heycam 2016-07-27 13:35:11 -07:00
Bobby Holley 9f75d89883 Bug 1289622 - Delegate CalcStyleDifference to a templated helper. r=heycam 2016-07-27 13:35:09 -07:00
Jeremy Chen 9d8ddf9b2d Bug 1287308 - part1: replace uses of NS_STYLE_HINT_NONE with nsChangeHint(0). r=dbaron
MozReview-Commit-ID: CN66AimiuEu

--HG--
extra : rebase_source : 6caaa30e9afa8645ea31c4918230ba2ec53bc74a
2016-07-17 22:20:21 +08:00
Emilio Cobos Álvarez e6ed33b04e Bug 1283242: style: Whitespace cleanup and remove dead code. r=bobbyholley+313730
gNewCount and gSharedCount aren't even declared.

--HG--
extra : rebase_source : 3c7d79a360ad6eef2e884de513ee45a289d4cd0a
2016-06-29 11:27:42 +00:00
Cameron McCormack 2a58c3e595 Bug 1277163 - Rename nsStyleContext* argument to Calc(Style)Difference methods to indicate it's the new style. r=dbaron
MozReview-Commit-ID: 9AvGc1tjJpx
2016-06-21 11:47:54 +10:00
Bobby Holley 9c8af73cc2 Bug 1274443 - Avoid calling ApplyStyleFixups for ServoComputedValues. r=heycam 2016-05-24 18:50:28 -07:00
Bobby Holley e4b157691b Bug 1274443 - Properly cache and flag servo style structs in nsStyleContext::StyleData. r=heycam 2016-05-24 18:50:26 -07:00
Jeremy Chen 685cf4c3d8 Bug 1273766 - part3: purge NS_UpdateHint inline. r=heycam
MozReview-Commit-ID: IIOT9jq8hOl

--HG--
extra : rebase_source : dfb3d874ce4419f32f13e662bd495e97ac9cac10
2016-05-23 11:26:03 +08:00
Jeremy Chen 0f24420a8f Bug 1273766 - part2: purge NS_SubtractHint inline. r=heycam
MozReview-Commit-ID: 1UX1wZJNnat

--HG--
extra : rebase_source : e74d1cf5ca0866897634339a0fe6df65e0d249ae
2016-05-23 11:26:03 +08:00
Cameron McCormack 4ca33888b2 Bug 1271869 - Rename NS_STYLE_TEXT_ALIGN_DEFAULT to NS_STYLE_TEXT_ALIGN_START. r=dholbert 2016-05-11 14:03:34 +10:00
Jeremy Chen 84a70f3910 Bug 1248708 - Part1: parse and compute -webkit-text-stroke property. r=heycam 2016-04-23 01:40:39 +08:00
Xidorn Quan 1f5f8a54d0 Bug 1260543 - Treat currentcolor as computed value which is not interpolatable with actual color for text-emphasis-color and -webkit-text-fill-color. r=birtles
MozReview-Commit-ID: GUXEDHxOdNC

--HG--
extra : rebase_source : 83f47535dc6f5a1f5fe72f60ba4877ec9a16a6df
2016-04-08 13:43:09 +10:00
Cameron McCormack cd6a2cb8f8 Bug 1266324 - Rename style const macro for unicode-bidi:bidi-override to be consistent with other style consts. r=jfkthame 2016-04-22 10:37:21 +10:00
Xidorn Quan 68af7e6457 Bug 1097499 part 4 - Adjust computed value of writing-mode on text frames when text-combine-upright is used. r=heycam
MozReview-Commit-ID: KNRe0ZpzxGr

--HG--
extra : source : dfd24ab49704b6542207aaab5b1283a4db355e60
2016-04-22 09:18:41 +10:00
Xidorn Quan d5599a3104 Bug 1097499 part 3 - Add a separate anonbox for text nodes. r=heycam
MozReview-Commit-ID: 1GfoFEGhyka

--HG--
extra : source : 38b806fd0fa54934439db0de75600def43142272
2016-04-22 09:18:41 +10:00
Xidorn Quan 747a0b5474 Bug 1097499 part 2 - Add a macro to simplify usage of nsStyleContext::GetUniqueStyleData. r=heycam
MozReview-Commit-ID: IS8KUbkXp8m

--HG--
extra : source : 5ee7bfeb7ceafcfff6c0bbd90507ed0b7b8de351
2016-04-22 09:18:41 +10:00
Bobby Holley 1c7f68df06 Bug 1258017 - Cleanup fixes for trunk. r=me 2016-04-21 13:56:40 -07:00
Cameron McCormack 0718df89c3 Bug 1261754 - Part 8: Move box-shadow from nsStyleBorder to a new nsStyleEffects struct. r=dholbert 2016-04-12 15:52:42 +10:00
Cameron McCormack 6883fc4b42 Bug 1261754 - Part 3: Move quotes from nsStyleQuotes to nsStyleList and delete nsStyleQuotes. r=dholbert 2016-04-12 15:52:40 +10:00
Cameron McCormack 7b70aa2a8c Bug 1261265 - Fix nsStyleContext::MoveTo flag assertions to allow mismatch on parents if bit is set on child. r=dholbert 2016-04-11 16:22:05 +10:00
Bobby Holley a5883b607d Bug 1261552 - Introduce StyleStructContext, and make all style struct constructors take it. r=heycam 2016-04-04 23:14:29 -07:00
Bobby Holley 57b406bba3 Bug 1260310 - Generalize nsStyleContext to support resolving styles from either nsRuleNode or ServoComputedValues. r=heycam 2016-03-29 22:16:35 -07:00
Bobby Holley 3836b7c35b Bug 1258017 - Redesign and simplify rule tree GC. r=dbaron
The basic idea here is as follows:
* Rule nodes are reference-counted, but releasing them adds them to a linked
  list rather than freeing them. This allows for the reuse that motivated the
  original GC scheme.
* We get rid of the marking, and instead rely on the reference count.
* Sweeping no longer requires a complicated traversal. We just pop items
  off the free list until it's empty. When a child is destroyed, its parent
  may go onto the free list.
* We remove special handling for the root node, and use a regular reference-counted
  edge from the style set.
* The free list automatically asserts that it's empty (meaning all nodes have been
  freed) in its destructor, which runs when the style set is destroyed.
* We get rid of the list of style context roots on the style set. We still need
  a count though, because of the HasCachedStyleData check.
2016-03-28 08:59:22 -07:00