Commit Graph

62325 Commits

Author SHA1 Message Date
Boris Zbarsky
c646473558 Bug 1432186 part 3. Remove nsIDOMNode's nodeName attribute. r=mccr8
MozReview-Commit-ID: Jg0Tuvdi6uX
2018-01-29 23:10:50 -05:00
Boris Zbarsky
4bba913229 Bug 1432186 part 1. Remove nsIDOMNode's prefix, namespaceURI, localName attributes. r=mccr8
Removing them all together because the only non-comm-central consumer is all
the same and this way there's no intermediate state to be maintained there
where we need both the nsINode and the nsIDOMNode.

MozReview-Commit-ID: GDjrroN1jao
2018-01-29 23:10:49 -05:00
Kris Maglione
6476f95b13 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl

--HG--
extra : source : 12fc4dee861c812fd2bd032c63ef17af61800c70
2018-01-29 15:20:18 -08:00
Matt Woodrow
760ed538b7 Bug 1429932 - Part 7: Restrict dirty regions in ComputeRebuildRegion to the overflow area of the current frame so that we discard invalidations that aren't visible. r=miko
MozReview-Commit-ID: BJ5Ud7c9ofk
2018-01-12 11:51:08 +13:00
Matt Woodrow
756660c0c8 Bug 1429932 - Part 6: Attempt to skip Layer building if the display list hasn't changed. r=mstange
MozReview-Commit-ID: 1kBRIVteNb1
2018-01-12 11:50:11 +13:00
Matt Woodrow
ad7cf1fba5 Bug 1429932 - Part 5: Move the Layer building section of nsDisplayList::PaintRoot into a separate function. r=mstange
MozReview-Commit-ID: Cm5ZRU3PoQo
2018-01-12 11:48:14 +13:00
Matt Woodrow
6a606ff229 Bug 1429932 - Part 4: Determine when AttemptPartialUpdate made no changes, and return the result to the caller. r=miko
MozReview-Commit-ID: 6S8WkzHcxP5
2018-01-12 11:46:23 +13:00
Matt Woodrow
b18337f9bd Bug 1429932 - Part 3: Refactor RetainedDisplayListBuilder::AttemptPartialUpdate to have an early return instead of a nested scope. r=miko
MozReview-Commit-ID: L91euwUeJ5x
2018-01-12 11:43:41 +13:00
Matt Woodrow
ce87663049 Bug 1429932 - Part 2: nsDisplayMask can paint images and shouldn't have the TYPE_RENDERS_NO_IMAGES flag. r=mstange
MozReview-Commit-ID: 7viMP1fMdfu
2018-01-12 11:42:11 +13:00
Matt Woodrow
c076460f04 Bug 1429932 - Part 1: Remove mFireAfterPaintEvents and use mTransactions instead. r=tnikkel
This fixes a bug where EnsureEventualDidPaintEvent needs to be called separately for each transaction id, but we skip it since mFireAfterPaintEvents is still true from the previous paint.
We now track the equivalent state by checking for the presence of mTransactions[aTransactionId], and correctly schedule an eventual didpaint for each id.

MozReview-Commit-ID: JnRTycGEyom
2018-01-12 11:41:16 +13:00
Matt Woodrow
119e50197f Bug 1432348 - Null check the inner view when looking for the sub doc for painting. r=miko
--HG--
extra : rebase_source : 4e830b7e4a40e8a82dfea53876606867c28e96d1
2018-01-29 17:21:00 -05:00
Matt Woodrow
c112686a2e Bug 1432348 - Make we sure call the right version of UpdateDrawResult for the display item geometry used. r=tnikkel
--HG--
extra : rebase_source : d5e1961a965374204116f5343c6922cb2593b12b
2018-01-29 17:16:51 -05:00
Matt Woodrow
28b39888b0 Bug 1432968 - Cache the value of In3DContextAndBackfaceIsHidden during display list buidling. r=miko
--HG--
extra : rebase_source : d22ade7260b9e1ea71837b9a262e2ebd931902b9
2018-01-03 18:31:04 +13:00
Brindusan Cristian
af8879d1eb Backed out 2 changesets (bug 1431533) for ESlint failures on a CLOSED TREE
Backed out changeset 6e56f4c8843e (bug 1431533)
Backed out changeset 12fc4dee861c (bug 1431533)
2018-01-30 02:32:43 +02:00
abhinav
d534e6532f Bug 1411129 - Rename MayBeAsynchronouslyScrolled to IsMaybeAsynchronouslyScrolled to follow our naming conventions. r=mats 2018-01-29 17:54:04 +05:30
Kris Maglione
c276bb9375 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl

--HG--
extra : rebase_source : c004a023389f1f6bf3d2f3efe93c13d423b23ccd
2018-01-29 15:20:18 -08:00
Kyle Machulis
ec22ae62ae Bug 1432271 - Remove dom/time; r=baku
dom/time contained the TimeService and TimeManager classes, used for
setting time via Gecko on FirefoxOS. Since FirefoxOS is no longer in
the code base, the directory can be removed.

MozReview-Commit-ID: 8PEk3e6HA67
2018-01-29 13:54:42 -08:00
Jonathan Kew
9e880ec537 Bug 1432552 - Update font-inspector API test to cover the getVariationInstances() method. r=dholbert 2018-01-29 13:24:11 +00:00
Jonathan Kew
9de316c207 Bug 1432552 - patch 1 - Add a getVariationInstances() method to InspectorFontFace. r=dholbert,bz 2018-01-29 13:24:11 +00:00
sotaro
0fae93703a Bug 1413390 - Add PluginGeometryUpdates handling for WebRenderLayerManager r=jrmuizel 2018-01-29 20:55:09 +09:00
shindli
006d377043 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-01-29 12:00:28 +02:00
Andrea Marchesini
a8a933a51f Bug 1425559 - Implement nsIThreadManager::spinEventLoopUntilOrShutdown, r=smaug
Currently nsIThreadManager::spinEventLoopUntil doesn't monitor the shutting
down. Firefox shutting down can be blocked by a 'broken' use of
nsIThreadManager::spinEventLoopUntil.
nsIThreadManager::spinEventLoopUntilOrShutdown should be used instead.
2018-01-28 08:41:36 +01:00
Emilio Cobos Álvarez
f7d932d9fe Bug 1433591: Update the style of child anon box wrapper after owned anon boxes. r=bz
Since the former could inherit from the latter.

Test incoming in a followup.

MozReview-Commit-ID: LJjprcyjDyU
2018-01-28 05:11:07 +01:00
Hiroyuki Ikezoe
b9bff5b5e1 Bug 1415780 - Drop CollectDocuments in nsRefreshDriver.cpp. r=hiro
MozReview-Commit-ID: ETSPKpWDuI4

--HG--
extra : rebase_source : d535999aa9b68d816047f387993f366aeaf0aa45
2018-01-27 19:19:54 +09:00
Hiroyuki Ikezoe
175bc2d176 Bug 1415780 - Let AnimationEventDispatcher observe nsRefreshDriver. r=birtles
So that we can now ensure nsRefreshDriver ticks (i.e. nsRefreshDriver doesn't
stop its timer) for all queued events.
Before this patch, dispatching CSS animation/transition events relied on the
fact that DocumentTimeline observes nsRefreshDriver.  For this fact,
animationcancel or transitioncancel event did not dispatch properly in some
cases, i.e. the case where the animation was dropped from the DocumentTimeline.

MozReview-Commit-ID: 7JYro0MY2U2

--HG--
extra : rebase_source : 28c8e2a50d29c5344e2c5ca3c43af41f4692fa0f
2018-01-27 21:17:27 +09:00
Hiroyuki Ikezoe
7828b6be59 Bug 1415780 - Let nsPresContext have AnimationEventDispatcher. r=birtles
Now we sort CSS animation/transition events by scheduled event time prior
to compositor order.

SortEvents() will be a private method in the next patch in this patch
series.

MozReview-Commit-ID: ICkOayquN0f

--HG--
extra : rebase_source : 405c8232e93c54a073c722a4332873af02daa870
2018-01-27 21:17:27 +09:00
Hiroyuki Ikezoe
21a53275cd Bug 1415780 - Make AnimationEventDispatcher refcountable. r=birtles
In a subsequent patch in this patch series, we want to make nsPresContext
have an AnimationEventDispatcher as RefPtr<>.

Instead, if we were trying to make nsPresContext have the
AnimationEventDispatcher as data object (not RefPtr<>) just like we did in
CommonAnimationManager, we will fall into header inclusion hell since Element.h
includes nsPresContext.h and AnimationEventDispatcher.h ends up including
Element.h.  Even if we could solve the inclusion hell, we will suffer from Rust
bindgen issues for some reasons.

MozReview-Commit-ID: B0nX2JzIRJD

--HG--
extra : rebase_source : 4eb998876b2fc39de8d09cac09c19e1a51cd382e
2018-01-27 21:17:27 +09:00
Hiroyuki Ikezoe
75fc208a71 Bug 1415780 - De-templatize AnimationEventDispatcher. r=birtles,masayuki
Now single AnimationEventDispatcher can handle both CSS animation/transition
events simultaneously.  To do this we had to change AnimationEventInfo and
TransitionEventInfo into a single struct, the struct is also named
AnimationEventInfo.

It results we can sort both CSS animation/transition events altogether.  Thus
we make sure CSS animation/transition events are sorted by scheduled event time
prior to their composite order (i.e. transitions is prior to animations).

At this moment, we don't sort both events altogether since nsAnimationManager
and nsTransitionManager has an AnimationEventDispatcher respectively.  In the
next patch we move AnimationEventDispatcher into nsPresContext, i.e. each
document has an AnimationEventDispatcher without the distinction between
CSS animations and transitions.

Note that, after this patch, we copy all members in InternalTransitionEvent and
InternalAnimationEvent in the copy-constructor of AnimationEventInfo, this
will be fixed once WidgetEvent has move-constructor and move-assignment
(bug 1433008).

MozReview-Commit-ID: 5JAh6N7C6ee

--HG--
extra : rebase_source : 50da76f51cf65cdd1245d93d8b48aaf0ae0ec94b
2018-01-27 21:17:27 +09:00
Hiroyuki Ikezoe
45ef4d82a6 Bug 1415780 - Split AnimationEventDipatcher into an independent file. r=birtles
MozReview-Commit-ID: Fcqtu7G400Z

--HG--
extra : rebase_source : 50de08148dcd4e4db0ea9a9ad1b501718852ca78
2018-01-27 21:17:27 +09:00
Hiroyuki Ikezoe
7fd0af8304 Bug 1415780 - Rename DelayedEventsDispatcher to AnimationEventDispatcher. r=birtles
We plan to use this class to dispatch web animation API events as well
(bug 1354501).

MozReview-Commit-ID: 7DMmc0aJzJ5

--HG--
extra : rebase_source : 445428771238ad31697cede8afbab35c1144a422
2018-01-27 21:17:27 +09:00
Hiroyuki Ikezoe
0340a8a1ca Bug 1415780 - Drop the comment for nsAnimationManager::DispatchEvents(). r=birtles
The comment is no longer correct since bug 1180125.

MozReview-Commit-ID: A4NWgmwAOFt

--HG--
extra : rebase_source : 57471f99bcbef86bf211692eee8cf06513f4b60a
2018-01-27 21:17:26 +09:00
Hiroyuki Ikezoe
2bb54f7aa1 Bug 1415780 - Move AnimationCollection::PseudoTypeAsString into nsCSSPseudoElements. r=birtles
It's not need to be a template function since the function is independent from
AnimationType.

MozReview-Commit-ID: 13WkRIfaQbZ

--HG--
extra : rebase_source : 5df3eb22dc2785b43718f388a9a32915a18c8be2
2018-01-27 21:17:26 +09:00
Hiroyuki Ikezoe
357f94c98c Bug 1415780 - Don't count all observers for nsRefreshDriver. r=smaug
We just need information whether there is still an observer or not in most
cases.  The only case we need to know the count is in an assertion in the
dtor of nsRefreshDriver.  In the dtor we are checking there remains no
observers other than early runners.

Note that the order in HasObserver() was adjusted to reflect that we check
boolean flag first (mViewManagerFlushIsPending) and subsequently check observer
which is likey happen to.  mFrameRequestCallbackDocs should have checked prior
to mResizeEventFlushObservers though.

MozReview-Commit-ID: E1qplusqw1Y

--HG--
extra : rebase_source : ebd9e6eb08952df954c55860638233c9a8729856
2018-01-27 21:17:26 +09:00
Hiroyuki Ikezoe
f4d1fdc0b1 Bug 1415780 - Undef GetCurrentTime in the template function that uses Animation::GetCurrentTime. r=birtles
MozReview-Commit-ID: DaOZtYRx4Ud

--HG--
extra : rebase_source : 40f4465e39e5cc0d846989ab25bf264547778aac
2018-01-27 21:17:26 +09:00
Cosmin Sabou
9366900c12 Merge mozilla-central to inbound. a=merge on a CLOSED TREE 2018-01-27 11:58:35 +02:00
Joel Maher
3e42ad5221 Bug 1433276 - adjust non-e10s test scheduling. r=ahal 2018-01-27 04:49:36 -05:00
Gerald Squelart
0cde8e00c6 Bug 1419508 - Return early from CreateMaskLayer if there is no visible data - r=mattwoodrow
MozReview-Commit-ID: 9jWGXA2eGvv

--HG--
extra : rebase_source : 1e14c7baa20cd3441de7fa4b7b9c4de574121a24
2018-01-25 16:21:23 +11:00
Emilio Cobos Álvarez
09b3922d79 Bug 1432850: Look at the snapshots when invalidating due to stylesheet changes. r=bz
The selectorText test happens to pass right now because well, we don't implement
the setter yet[1], but would fail if we implemented an specific invalidation in
the way I'd have done it yesterday.

[1]: https://bugzilla.mozilla.org/show_bug.cgi?id=37468

MozReview-Commit-ID: DrMTgLzQcnk
2018-01-27 04:21:11 +01:00
Ben Kelly
e71d8db226 Bug 1430139 P3 Remove workers namespace from service worker code. r=asuth 2018-01-26 13:08:59 -08:00
ben.tian@gmail.com
0f573ba322 Bug 1413834 - part 4: Limit frame traversal inside scope owned by document root when shadow host has no frame , r=smaug, emilio
--HG--
extra : rebase_source : 1e7fb01bda9a0927b1bea3085ab50eb3caf054c5
2018-01-26 17:49:47 +02:00
ben.tian@gmail.com
8e8a01efb7 Bug 1413834 - part 1: Limit frame traversal and getting of next tabindex inside scope owned by document root, r=smaug
--HG--
extra : rebase_source : 6a9bca46f5e98311b0179b8b44bebe59bb77e676
2018-01-26 17:47:44 +02:00
Robert Longson
4e0dcdc8da Bug 1419764 - Improve performance where a transform is set by direct matrix manipulation. r=dholbert
MozReview-Commit-ID: zzDTSXtRiU
2018-01-26 10:21:34 -08:00
Jonathan Kew
1827540cbf Bug 1323743 - Add simple chrome mochitest for InspectorFontFace.getVariationAxes(). r=dholbert 2018-01-26 15:47:21 +00:00
Jonathan Kew
a223c0105f Bug 1323743 - patch 2 - Add a getVariationAxes() method to InspectorFontFace for potential devtools use. r=dholbert,bz 2018-01-26 15:47:20 +00:00
Noemi Erli
97a87e010b Backed out 2 changesets (bug 1432271) for bustage in /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/dom/Navigator.h:79:23 on a CLOSED TREE
Backed out changeset 7af7827525c8 (bug 1432271)
Backed out changeset 79b9d49e08db (bug 1432271)
2018-01-27 02:49:25 +02:00
Kyle Machulis
9c6223e5a0 Bug 1432271 - Remove dom/time; r=baku
dom/time contained the TimeService and TimeManager classes, used for
setting time via Gecko on FirefoxOS. Since FirefoxOS is no longer in
the code base, the directory can be removed.

MozReview-Commit-ID: 8PEk3e6HA67

--HG--
extra : rebase_source : 63a0a6c665792ab1885bd4f81261db9be887ffd1
2018-01-22 12:50:11 -08:00
Hiroyuki Ikezoe
471558b3c1 Bug 1433336 - Collect only documents which are observerd by IntersectionObserver in nsRefreshDriver::Tick(). r=smaug
We don't need to collect whole descendants documents.

This patch intentionally leaves animation events handling which is another
caller of CollectDocuments in nsRefreshDriver since the animation part will
be fixed in a different way in bug 1415780.

MozReview-Commit-ID: INAJm1NHLuI

--HG--
extra : rebase_source : 4e255cef604d4455d6efa5dc2ebddd5dc649ee65
2018-01-26 20:11:17 +09:00
Timothy Nikkel
f1bc1aa42e Bug 1417358. Make sure that the override dirty rect that we set when a displayport changes gets cleared even if we don't perform a partial display list update. r=mattwoodrow
We do this by tracking them as a property on the root frame the same way we do for modified frames.

We also set the property in ProcessFrame but that is okay because we are guaranteed to finish the partial update at that point.
2018-01-25 23:42:44 -06:00
Kartikaya Gupta
87625450be Bug 1432541 - Add a reftest. r=mstange
This is a minimal version of the recaptcha popup that was one of the
ways to observe the bug.

MozReview-Commit-ID: JUhw9IkH0Tm

--HG--
extra : rebase_source : a7f15ead1a919f4d66a72b9732c31b1bcfe41678
2018-01-25 18:19:43 -05:00
arthur.iakab
39d63fc827 Merge mozilla-central to autoland 2018-01-26 02:31:18 +02:00