Commit Graph

358 Commits

Author SHA1 Message Date
Boris Zbarsky
f5cfc1f710 Bug 851892 part 8. Get rid of css::Rule::GetDOMRule. r=heycam 2017-01-13 10:41:03 -05:00
Boris Zbarsky
9fda0e1e72 Bug 851892 part 7. Push the nsIDOMCSSRule implementation up to css::Rule. r=heycam 2017-01-13 10:41:02 -05:00
Boris Zbarsky
649d4c4204 Bug 851892 part 6. Make css::Rule inherit from nsIDOMCSSRule. r=heycam 2017-01-13 10:41:02 -05:00
Boris Zbarsky
71bd55efef Bug 851892 part 4. Make css::Rule wrappercached. r=heycam,peterv
Note that this increases the size of css::Rule by three words, unfortunately.
2017-01-13 10:41:02 -05:00
Boris Zbarsky
1c28981bb9 Bug 851892 part 2. Remove the now-unused GetExistingDOMRule method. r=heycam 2017-01-13 10:41:02 -05:00
Boris Zbarsky
5865c43716 Bug 851892 part 1. Make all CSS rules cycle-collected. r=heycam 2016-11-30 18:18:14 -05:00
Olli Pettay
3898f7d882 Bug 1326507, remove NS_IMPL_CYCLE_COLLECTION_TRAVERSE_SCRIPT_OBJECTS, r=mccr8 2017-01-03 21:47:55 +02:00
Xidorn Quan
1125f5e9ab Bug 1323919 - Rename nsIMediaList.h to nsMediaList.h. r=heycam
MozReview-Commit-ID: Ake5srkKJbf
2016-12-16 14:50:36 +11:00
Xidorn Quan
2d70bdcd07 Bug 1307357 part 1 - Make css::Rule hold StyleSheet rather than CSSStyleSheet. r=heycam
MozReview-Commit-ID: JsJa4YqpCZy
2016-11-23 10:26:20 +11:00
Xidorn Quan
0124519d82 Bug 1294299 part 1 - Make nsDOMCSSDeclaration use DeclarationBlock. r=heycam
MozReview-Commit-ID: B2eHrpxOMJ8
2016-11-03 14:41:02 +11:00
Xidorn Quan
7ba350b0a6 Bug 1304302 part 8 - Change include of {CSS,Servo}StyleSheet.h to StyleSheetInlines.h. r=heycam
It is a preparation for later patch which moves functions from those
classes into StyleSheet. Some of the functions are better defined in
StyleSheetInlines.h.

This commit is generated by the following command:

find . \( -name '*.h' -or -name '*.cpp' \) -not -name '*StyleSheet*' -exec sed -i -b \
  -e '/^#include/ s_/\(CSS\|Servo\)StyleSheet\.h_/StyleSheetInlines.h_' \
  -e '1,\_^#include "mozilla/StyleSheetInlines.h"_ ! { \_^#include "mozilla/StyleSheetInlines.h"_d }' {} +

MozReview-Commit-ID: 54H5x27Pmso
2016-09-26 22:03:25 +10:00
Nicholas Nethercote
c57fffaa55 Bug 1297300 - Add missing checks to GetSpec() calls in layout/. r=dholbert,heycam. 2016-08-31 20:10:10 +10: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
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
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
Ehsan Akhgari
adf6627feb Bug 1256178 - Drop the moz prefix from the MozCSSKeyframeRule and MozCSSKeyframesRule interfaces; r=bzbarsky 2016-03-15 10:23:01 -04:00
Nicholas Nethercote
88eb373ea0 Bug 1249171 - Simplify nsCOMArray::SizeOfExcludingThis(). r=erahm.
Using explicit iteration at measurement sites is much simpler and nicer than
using callbacks.
2016-02-19 14:54:45 +11:00
John Daggett
4969d69992 Bug 1157064 - font-display descriptor parsing. r=dbaron 2016-01-07 14:02:58 +09:00
L. David Baron
28e210dee6 Bug 1226489 - Pass only a single rule to StyleRuleChanged. r=bzbarsky 2015-11-20 14:34:12 -08:00
L. David Baron
125c812012 Bug 1221436 patch 7 - Remove ReplaceStyleRule/ReplaceRuleInGroup mechanism. r=heycam
This is no longer used, thanks to patch 5.
2015-11-09 15:57:17 +08:00
L. David Baron
c2f4281c75 Bug 1221436 patch 3 - Remove Rule::SetHTMLCSSStyleSheet and related code, now unused. r=heycam
This was made unused by patch 2.
2015-11-09 15:57:16 +08:00
L. David Baron
803bcb878f Bug 978833 patch 15 - Make css::Rule no longer inherit from nsIStyleRule. r=heycam
This inheritance was previously needed only by a subset of the classes
derived from css::Rule (css::StyleRule, nsCSSKeyframeRule,
nsCSSPageRule).  After patch 12, it is now needed by none.
2015-11-05 16:44:10 +08:00
L. David Baron
6b8930f65a Bug 978833 patch 9 - Move keyframe !important data assertion to where it will continue to happen. r=heycam
The current location of the assertion will stop being called in patch 12
and will go away in patch 15; the new location is valid both before and
after patch 12.
2015-11-05 16:44:09 +08:00
L. David Baron
a26a645eff Bug 978833 patch 7 - Fuse allocation of ImportantStyleData with Declaration. r=heycam
Note that this adds a new public API to css::Declaration; the equivalent
API is removed from css::StyleRule and nsCSSPageRule in patch 13.  But
the removal and addition need to be on opposite sides of patch 12.

This fused allocation is no larger than having a pointer, and it removes
having to worry about cycles.
2015-11-05 16:44:09 +08:00
L. David Baron
61dc6e0519 Bug 978833 patch 5 - Rename ImportantRule to ImportantStyleData. r=heycam
(This is part of a longer term plan to rename nsIStyleRule to StyleData
and nsIStyleRuleProcessor to StyleDataSource.  I'm not doing all of that
here, though.)
2015-11-05 16:44:08 +08:00
L. David Baron
6659f091f4 Bug 978833 patch 4 - Add pointer back from css::Declaration to css::Rule. r=heycam
This is used in patch 12, in nsStyleSet::AssertNoCSSRules and in
inDOMUtils::GetCSSStyleRules.
2015-11-05 16:44:08 +08:00
L. David Baron
a497d9a85d Bug 978833 patch 3 - Make css::Declaration implement nsIStyleRule. r=heycam
We switch to using this implementation instead of the one in
css::StyleRule in patch 12.

(Yes, implementing QueryInterface for a CID is ugly, but it's the same
thing StyleRule does.  Unfortunately now we'll need to have it in both
places.)
2015-11-05 16:44:08 +08:00
L. David Baron
c39b72429a Bug 978833 patch 2 - Make css::Declaration reference-counted. r=heycam
This is done in preparation for making it implement nsIStyleRule, which
happens in patch 3, and which is used in patch 12.
2015-11-05 16:44:08 +08:00
Birunthan Mohanathas
d382a21947 Bug 1217320 - Remove more XPIDL signature comments in .cpp files. r=froydnj
Comment-only, DONTBUILD.
2015-10-27 06:54:25 +02:00
Nathan Froyd
4e6d8f6705 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
2015-10-18 01:24:48 -04:00
Cameron McCormack
6f90b41a9a Bug 77999 - Part 1: Add nsDocumentRuleResultCacheKey. r=dbaron 2015-06-26 13:52:47 +10:00
Kevin Wern
22b58a71ec Bug 1148694 patch 2 - Remove interface and implementation of CSSCharsetRule. r=dbaron 2015-04-21 00:08:36 -07:00
Cameron McCormack
eb82fe6bac Bug 1149042 - Call AttributeWillChange before a style="" attribute gets created when touching element.style. r=smaug 2015-04-10 10:41:35 +10:00
Ehsan Akhgari
ea41d8de48 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Boris Zbarsky
3a822d99b4 Bug 1117172 part 3. Change the wrappercached WrapObject methods to allow passing in aGivenProto. r=peterv
The only manual changes here are to BindingUtils.h, BindingUtils.cpp,
Codegen.py, Element.cpp, IDBFileRequest.cpp, IDBObjectStore.cpp,
dom/workers/Navigator.cpp, WorkerPrivate.cpp, DeviceStorageRequestChild.cpp,
Notification.cpp, nsGlobalWindow.cpp, MessagePort.cpp, nsJSEnvironment.cpp,
Sandbox.cpp, XPCConvert.cpp, ExportHelpers.cpp, and DataStoreService.cpp.  The
rest of this diff was generated by running the following commands:

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObject\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(Binding(?:_workers)?::Wrap\((?:aCx|cx|aContext|aCtx|js), [^,)]+)\)/\1, aGivenProto)/g'
2015-03-19 10:13:33 -04:00
Nicholas Nethercote
0247de46d8 Bug 1127201 (attempt 2, part 1) - Replace most NS_ABORT_IF_FALSE calls with MOZ_ASSERT. r=Waldo. 2015-02-09 14:34:50 -08:00
Andrew McCreight
e048a7df33 Back out Bug 1127201 (part 2) for various problems. 2015-02-06 15:04:32 -08:00
Nicholas Nethercote
40ab0270d5 Bug 1127201 (part 2) - Convert all NS_ABORT_IF_FALSE calls to MOZ_ASSERT. r=Waldo. 2015-02-04 20:05:36 -08:00
L. David Baron
ff080cde67 Bug 1100773 patch 2 - Convert style rule List methods to use fprintf_stderr. r=heycam
Note that getting decent logcat output on Android and B2G requires not
splitting lines of output across multiple fprintf_stderr calls.
2014-11-26 22:29:44 -08:00
L. David Baron
4bd15269cc Bug 1100773 patch 1 - Fix bracing of indent loops in style rule print functions. r=heycam 2014-11-26 22:29:44 -08:00
Boris Zbarsky
a0c3c5386e Bug 1019191 part 15. Remove now-dead DOMCI_DATA bits. r=peterv 2014-10-22 11:40:49 -04:00
John Daggett
86582fcf9e Bug 1079422 - eliminate the ptr to FontFace within @font-face rules. r=heycam 2014-10-09 16:03:56 +09:00
Cameron McCormack
71b2c92f8c Bug 1028497 - Part 7: Add ability to create a FontFace for a @font-face rule; store it on the nsCSSFontFaceRule. r=jdaggett,bzbarsky
Every nsCSSFontFaceRule that is used will get a FontFace object to
reflect it in the FontFaceSet.  Here we add storage on the
nsCSSFontFaceRule for its FontFace, although it will be the
FontFaceSet's responsibility to set it.  We also add a static
constructor function on FontFace to create one that reflects a rule.
2014-10-02 12:32:06 +10:00
Cameron McCormack
7f1838edce Bug 1070316 - Factor out descriptor storage from nsCSSFontFaceStyleDecl. r=dbaron 2014-09-25 09:25:40 +10:00
Cameron McCormack
1bb97cae82 Bug 1069761 - Move AppendSerializedFontSrc to nsStyleUtil. r=jdaggett 2014-09-22 10:32:58 +10:00
Cameron McCormack
af3c434b06 Bug 1069065 - Cycle collect ImportRule. r=bzbarsky 2014-09-19 11:12:31 +10:00
Ehsan Akhgari
8bb87f8a27 Bug 1060985 - Fix more bad implicit constructors in layout; r=roc 2014-08-31 23:36:37 -04:00
Birunthan Mohanathas
b89e87846b Bug 1045801 - Rename SafeCast to AssertedCast. r=Waldo 2014-08-25 12:17:32 -07:00
Cameron McCormack
61c6b368fa Bug 1043181 - Copy mValues and mGeneration in the nsCSSCounterStyleRule copy constructor. r=dbaron 2014-07-25 11:50:24 +10:00