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

51 Коммитов

Автор SHA1 Сообщение Дата
Xidorn Quan ea2d289c2c Bug 1292432 part 9 - Change WebIDL interface of CSSStyleSheet to StyleSheet. r=heycam
MozReview-Commit-ID: 5AXhsuvvrwe

--HG--
extra : source : 218d4c72938f74f16af22239a99fbdf0e4c621cf
2016-10-14 22:25:38 +11:00
Xidorn Quan 541b51df00 Bug 1292432 part 8 - Move XPCOM IDL methods which just call WebIDL methods to StyleSheet. r=heycam
MozReview-Commit-ID: 3xpdLGc6hqH

--HG--
extra : source : d156efabc47b4a2966a5972dec6755d40fcc624e
2016-10-14 22:25:38 +11:00
Xidorn Quan 2169694adb Bug 1292432 part 7 - Move other WebIDL methods to StyleSheet. r=heycam
MozReview-Commit-ID: J0tXKbZvcEq

--HG--
extra : source : c9cdb1228b36ffe102aad302f3c030c744c8fe26
2016-10-14 22:25:38 +11:00
Xidorn Quan acac5f6e5c Bug 1292432 part 6 - Make StyleSheet implement GetCssRules/InsertRule/DeleteRule. r=heycam
MozReview-Commit-ID: KD552jWZnA3

--HG--
extra : source : d53d77022ec76005a23977992eb03cae77e81706
2016-10-14 22:25:38 +11:00
Xidorn Quan 727c0552af Bug 1292432 part 4 - Move SubjectSubsumesInnerPrincipal to StyleSheet. r=heycam
MozReview-Commit-ID: 1DItyq2QrDz

--HG--
extra : source : f3157f4296b9f32491189bfe2898bf2bfa5fb139
2016-10-14 22:25:38 +11:00
Xidorn Quan 03f63ec3b1 Bug 1292432 part 3 - Add WillDirty and DidDirty to StyleSheet. r=heycam
MozReview-Commit-ID: 17O1vYVxuCk

--HG--
extra : source : ea6b9576cccfce1bade7353f00ac668385a2af05
2016-10-14 22:25:38 +11:00
Xidorn Quan 28a773809d Bug 1292432 part 2 - Make StyleSheet inherit nsIDOMCSSStyleSheet. r=heycam
Some method impls are also moved from CSSStyleSheet to StyleSheet so
that they can be shared between the two subclasses.

The new interface methods added to ServoStyleSheet is currently left
unimplemented. They would be implemented in later patches.

MozReview-Commit-ID: 45wHT9BSHTK

--HG--
extra : source : f92bc0d37dbfce91334bff1ed2782489bcc8587a
2016-10-14 22:25:38 +11:00
Boris Zbarsky 3f10f5ed57 Bug 1308287 part 1. Change [NeedsSubjectPrincipal] to only do the Maybe thing for interfaces that can be exposed to workers. r=baku
The idea is to not make consumers think about whether the principal exists or
not when the caller knows for sure that it does.

The substantive changes are in dom/bindings, nsHTMLDocument::SetDesignMode, and
around the CanUseStorage bits.  Everything else is pretty mechanical.
2016-10-10 21:07:48 -04:00
Xidorn Quan 3202d476c0 Bug 1306212 part 2 - Remove visibility restriction of StyleSheetInfo. r=heycam
MozReview-Commit-ID: 8xAkfwtDpRu

--HG--
extra : rebase_source : c09503f93909ed44a873162638af36ef5ba1452b
2016-09-29 16:17:58 +10:00
Andrea Marchesini 5b032f7c12 Bug 1297393 - Make passing of subject principals to webidl entry points explicit - part 5 - CSSStyleSheet, r=ehsan 2016-09-29 08:55:21 +02:00
Xidorn Quan 2f49a48a09 Bug 1304302 part 10 - Replace all uses of StyleSheetHandle. r=heycam
This commit is generated by the following commands with some minor
manual adjustment:

find . \( -name '*.h' -or -name '*.cpp' \) -not -path './layout/style/StyleSheet*' -exec sed -i -b \
  -e '/^\(#include\|using\)/s/StyleSheetHandle/StyleSheet/g' \
  -e 's/\(mozilla::\)\?StyleSheetHandle::RefPtr/RefPtr<\1StyleSheet>/g' \
  -e 's/StyleSheetHandle()/nullptr/g' \
  -e 's/->AsStyleSheet()//g' \
  -e 's/StyleSheetHandle/StyleSheet*/g' {} +
sed -i -b 's/sheet->AsVoidPtr()/sheet.get()/' layout/style/Loader.cpp
sed -i -b 's/AsHandle()/this/' layout/style/StyleSheet.cpp

MozReview-Commit-ID: 7abdvlKHukd

--HG--
extra : source : e5682242db07203b5a91810fe1e243c955310588
2016-09-26 22:03:25 +10:00
Xidorn Quan 4d65721d59 Bug 1304302 part 4 - Add all methods StyleSheetHandle needs to StyleSheet. r=heycam
The methods are written in the same order as in StyleSheetHandle::Ptr.

MozReview-Commit-ID: 6b4311ailNj

--HG--
extra : source : 9cea4a56fc487dd21a8739d4d9be8f01d5fdc93c
2016-09-26 22:03:25 +10:00
Bobby Holley 19f8c5faa5 Bug 1291390 - Make parsing mode an immutable property of the StyleSheet. r=heycam 2016-08-03 10:26:14 -07:00
Bobby Holley 1dfd6a8070 Bug 1291390 - Hoist the ParsingMode getter to the superclass and give it a special binary name for WebIDL. r=bholley,r=heycam
In the next patch we want to introduce an accessor called ParsingMode, which conflicts with this one.
2016-08-03 10:26:14 -07:00
Cameron McCormack 72db41da62 Bug 1253788 - Don't reload inline chrome:// style sheets in nsXBLPrototypeResources. r=bzbarsky 2016-03-26 17:02:30 +11:00
Bobby Holley abd6123240 Bug 1252611 - Hoist IsComplete/SetComplete into StyleSheet. r=dholbert 2016-03-10 22:18:59 -08:00
Bobby Holley 0ff743226a Bug 1252611 - Add a method to get the StyleSheetInfo for a given StyleSheet. r=dholbert
One of the annoying things about sharing algorithms on the superclass here is that
certain members live on StyleSheet and others live on StyleSheetInfo (a situation
resulting from the split between CSSStyleSheet and CSSStyleSheetInner). This allows
us to write general algorithms on StyleSheet that touch members on StyleSheetInfo
without paying the price of virtual dispatch.
2016-03-10 22:18:57 -08:00
Bobby Holley 3293dd162c Bug 1252611 - Hoist mDocument into StyleSheet. r=dholbert 2016-03-10 22:18:56 -08:00
Cameron McCormack 03e9025216 Bug 1250788 - Part 3.2: Factor out CSSStyleSheet members so they can be used by ServoStyleSheet. r=bholley 2016-02-26 12:51:01 +11:00
Cameron McCormack 604555f6e0 Bug 1250788 - Part 3.1: Factor out CSSStyleSheetInner members so they can be used by ServoStyleSheet. r=bholley 2016-02-26 12:51:01 +11:00
Cameron McCormack 0ecd5593cc Bug 1244074 - Part 4: Use StyleSheetHandle instead of concrete style sheet class in most places. r=dholbert 2016-02-24 18:01:12 +11:00
Cameron McCormack 919e1a53c7 Bug 1244074 - Part 1: Move SheetParsingMode to a separate file. r=dholbert 2016-02-24 18:01:11 +11:00
Cameron McCormack 7c95c39734 Bug 1244068 - Part 4: Use StyleSetHandle instead of concrete style set class in most places. r=dholbert 2016-02-24 18:01:11 +11:00
Birunthan Mohanathas d7371d07d0 Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
Phil Ringnalda d381b4bca6 Back out 7 changesets (bug 1235261) for cpptest failures in TestTArray
CLOSED TREE

Backed out changeset d66c3f19a210 (bug 1235261)
Backed out changeset 467d945426bb (bug 1235261)
Backed out changeset 32b61df13142 (bug 1235261)
Backed out changeset c50bb8ed4196 (bug 1235261)
Backed out changeset 0ff0fa6fe81f (bug 1235261)
Backed out changeset df70e89669da (bug 1235261)
Backed out changeset 064969357fc9 (bug 1235261)
2016-01-31 10:10:57 -08:00
Birunthan Mohanathas 373593275e Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-01-31 17:12:12 +02:00
Tom Tromey 279d6ac586 Bug 1230491 - add CSSStyleSheet::parsingMode; r=heycam,bz 2016-01-12 09:50:43 -07:00
Cameron McCormack fd2fba0c73 Bug 990250 - Fold nsIStyleSheet into CSSStyleSheet. r=dbaron 2015-11-17 17:04:09 +11:00
L. David Baron 62dcb6818d Bug 1221436 patch 7 - Remove ReplaceStyleRule/ReplaceRuleInGroup mechanism. r=heycam
This is no longer used, thanks to patch 5.

--HG--
extra : commitid : HUH1X5rr3Ij
2015-11-09 15:57:17 +08:00
L. David Baron c054fd2a09 Bug 1221436 patch 5 - Stop generating new style rules in DeclarationChanged (and rename it to SetDeclaration), since we no longer need a new style rule for nsIStyleRule identity rules. r=heycam
(I think the change DOMCSSDeclarationImpl::GetCSSDeclaration fixes a
purely theoretical bug that would happen if it were possible to get
ahold of a CSS rule without calling either
CSSStyleSheet::EnsureUniqueInner (which is called by
CSSRuleListImpl::IndexedGetter) or Declaration::SetImmutable (which is
called by rule matching, including that triggered by
inIDomUtils::GetCSSStyleRules).  If that were possible, then mutating
such a declaration would mutate the shared Declaration, and then call
WillDirty which would clone the now-mutated Declaration, leading to the
mutation applying to both sheets that shared it rather than just the one
that should have been modified.)

This is the simplification allowed by bug 978833 patch 11 (and part of
what we would otherwise have needed to duplicate in @page and keyframe
rules; we'd also have needed to duplicate the object split between the
internal object and the DOM-exposed object, but for style rules that's
probably worth keeping for the memory savings).

--HG--
extra : commitid : 4LV6uqm7iYf
2015-11-09 15:57:17 +08:00
Cameron McCormack 917185f23e Bug 1220516 - Devirtualize CSSStyleSheet::GetOriginalURI. r=bzbarsky 2015-11-06 12:10:15 +11:00
Cameron McCormack ddac6ef6db Bug 1220506 - Remove unused CSSStyleSheet::InsertStyleSheetAt. r=bzbarsky 2015-11-05 19:02:59 +11:00
Cameron McCormack 4a88ac6c5e Bug 1220513 - Remove unused CSSStyleSheet::StyleSheetCount. r=bzbarsky 2015-11-05 18:24:41 +11:00
Cameron McCormack 7d1d45fcfb Bug 1220509 - Remove unused CSSStyleSheet::PrependStyleRule. r=bzbarsky 2015-11-05 18:24:30 +11:00
Nathan Froyd 01583602a9 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

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Tom Tromey c3e2a29d05 Bug 1202095 - re-use @imported style sheets from inIDOMUtils.parseStyleSheet. r=heycam 2015-09-18 07:27:00 +02:00
Francois Marier 34de332db0 Bug 992096 - Implement Sub Resource Integrity [1/2]. r=baku,r=ckerschb
Code changes
2015-08-12 20:19:11 -07:00
Birunthan Mohanathas a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Cameron McCormack 7c894d7982 Bug 77999 - Part 2: Add RuleProcessorCache. r=dbaron 2015-06-26 13:52:47 +10:00
Cameron McCormack b26c6e1429 Bug 1170888 - Restyle the document in EnsureSafeToHandOutCSSRules if we previously cloned sheet inners outside of that method. r=bzbarsky 2015-06-26 13:49:58 +10:00
Andrew McCreight a886770a11 Bug 861449 - Incremental css::Rule destroyer. r=dbaron
Destroying large arrays of css::Rules during page teardown can take
multiple milliseconds in incremental CC. To reduce CC pauses, this
patch introduces a new class nsIncrementalClearCOMRuleArray that uses
the deferred finalizer to incrementally destroy these rule arrays.
2015-06-15 12:34:23 -07:00
Andrea Marchesini 085da9302a Bug 1156632 - Remove unused forward class declarations - patch 5 - rdf, parser, layout and something else, r=ehsan 2015-04-22 08:29:22 +02:00
Andrea Marchesini e6f385fb3d Bug 1148527 - Indentation fix after bug 1145631, r=ehsan 2015-03-27 18:52:19 +00:00
Ehsan Akhgari 883849ee32 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 dc24477d79 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
Ehsan Akhgari 4354953b4f Bug 1118486 - Part 1: Use `= delete` instead of MOZ_DELETE directly; r=Waldo
Most of this patch (with the exception of dom/bindings/Codegen.py) was
generated by the following bash script:

#!/bin/bash

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "*/.git*" \
       ! -wholename "obj-*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -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_DELETE '= delete'
2015-01-08 23:19:05 -05:00
Sid Stamm 7235c3b5b2 Bug 704320 - Add referrer policy support to stylesheet and CSS loads and fonts. (r=bz) 2014-11-18 08:46:47 -05:00
Ehsan Akhgari 2b84010cb8 Bug 1048246 - Fix more bad implicit constructors in layout; r=roc
--HG--
extra : rebase_source : ed828993139bc70232508364a9f046e38b7d3e06
2014-08-07 19:48:38 -04:00
Ms2ger bad4ca4d29 Bug 1022855 - Rename nsCSSStyleSheet to mozilla::CSSStyleSheet; r=heycam
--HG--
rename : layout/style/nsCSSStyleSheet.cpp => layout/style/CSSStyleSheet.cpp
rename : layout/style/nsCSSStyleSheet.h => layout/style/CSSStyleSheet.h
2014-06-20 12:32:49 +02:00
Ms2ger 451c7edf83 Backout revision 308e51eae10c for build bustage.
--HG--
rename : layout/style/CSSStyleSheet.cpp => layout/style/nsCSSStyleSheet.cpp
rename : layout/style/CSSStyleSheet.h => layout/style/nsCSSStyleSheet.h
2014-06-20 13:00:08 +02:00