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

7 Коммитов

Автор SHA1 Сообщение Дата
Cameron McCormack 48fe6dbe69 Bug 1472065 - Initialize mSheet and mParentRule in css::Rule's constructor. r=xidorn
MozReview-Commit-ID: JI3cMiJaH3x

--HG--
extra : rebase_source : 3f45a63c8817df9550c5c638ad5b978421fa051c
2018-06-29 12:56:09 +10:00
Jeff Gilbert 5b753da289 Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot
MozReview-Commit-ID: JtTcLL5OPF0
2018-06-26 17:05:01 -07:00
Olli Pettay abf54817b9 Bug 1428246 - The attributeChangedCallback is fired twice for the *first* style attribute change, r=peterv
The idea with this patch is that style code will first call
InlineStyleDeclarationWillChange before style declaration has changed, and SetInlineStyleDeclaration once it has changed.

In order to be able to report old attribute value, InlineStyleDeclarationWillChange reads the value and also calls AttributeWillChange (so that DOMMutationObserser can grab the old value). Later SetInlineStyleDeclaration passes the old value to
SetAttrAndNotify so that mutation events and attributeChanged callbacks are handled correctly.

Because of performance, declaration can't be cloned for reading the old value. And that is why the recently-added callback is used to detect when declaration is about to change (bug 1466963 and followup bug 1468665).

To keep the expected existing behavior, even if declaration isn't changed, but just a new declaration was created (since there wasn't any), we need to still run all these
willchange/set calls. That is when the code has 'if (created)' checks.

Since there are several declaration implementation and only nsDOMCSSAttributeDeclaration needs the about-to-change callback, GetPropertyChangeClosure is the one to initialize the callback closure, and the struct which is then passes as data to the closure.

Apparently we lost mutation event testing on style attribute when the pref was added, so test_style_attr_listener.html is modified to test both pref values.

--HG--
extra : rebase_source : 9e605d43f22e650ac3912fbfb41abb8d5a2a0c8f
2018-06-26 12:54:00 +03:00
Nazım Can Altınova 77fad93235 Bug 1451289 - Part 7: Merge ServoPageRule and CSSPageRule r=emilio
MozReview-Commit-ID: 5kqMLZWXFN5

--HG--
extra : rebase_source : 1ef8e31634b1be81c0df3c36bb56d13f7be9a9a2
2018-06-05 13:39:42 +02:00
Cameron McCormack c875640061 Bug 1427512 - Part 12: Remove nsIDOMCSSPageRule. r=xidorn
MozReview-Commit-ID: 3UjngxQgQ6W
2018-01-11 16:17:55 +08:00
Andrew McCreight 78807d8776 Bug 1391005 - Eliminate NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED. r=peterv
Replace it with NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION, because it
has been the same for a while.

MozReview-Commit-ID: 5agRGFyUry1

--HG--
extra : rebase_source : 5388c56b2f6905c6ef969150f0c5b77bf247624d
2017-08-29 16:02:48 -07:00
J. Ryan Stinnett 0ccdacdf3a Bug 1345206 - Extract CSSPageRule base class. r=xidorn
Extract a `CSSPageRule` base class from the existing Gecko `nsCSSPageRule`
class.  This will be used in the next commit as the parent of a new
`ServoPageRule` for the Servo variant.

MozReview-Commit-ID: 1F3FWfVKH29

--HG--
extra : rebase_source : 5186cf2e233f3a757676a0127752faa8cc748cd4
2017-03-31 19:14:49 -05:00