Commit Graph

427 Commits

Author SHA1 Message Date
Brian Birtles
73c7d64d21 Bug 1183461 part 7 - Add EventInfoComparator and sort events; r=heycam
This patch also reworks the dispatch of events in nsRefreshDriver. Previously
the refresh driver would dispatch the transition events for all subdocuments
then the animation events. This arrangement is complicated and not obviously
necessary. This patch simplifies this arrangement by dispatching transition
events and animation events for each document before proceeding to
subdocuments.
2015-09-15 14:05:49 +09:00
Mason Chang
a697625f94 Bug 1160216 - Add a preference to force software vsync and set software vsync rate. r=kats 2015-09-15 08:13:57 -07:00
Victor Porof
a6918158c6 Bug 1195232 - Stop using TracingMetadata from GeckoProfiler.h, r=tromey 2015-08-31 16:14:14 +02:00
Mason Chang
e958cc46f9 Bug 1198362 - Delete PreciseRefreshDriverTimer. r=roc 2015-08-26 09:45:54 -04:00
Mason Chang
fd86cbdc47 Bug 1197898 - Delete vsync refresh driver preference. r=kats 2015-08-25 09:01:40 -04:00
Mason Chang
05ca517d4c Bug 1197201. Delete hardware vsync and vsync compositor prefs. r=kats 2015-08-24 11:27:23 -04:00
Mason Chang
e6d4595f9e Bug 1190257. Use the previous vsync timestamp on windows 10. r=jrmuizel 2015-08-18 09:11:12 -07:00
Mason Chang
3da784a54d Bug 1144946 - Delete PreciseRefreshDriverTimerWindowsDwmVsync refresh driver timer. r=roc 2015-08-13 08:22:28 -07:00
Brian Birtles
400ff4db0d Bug 1180125 part 8 - Dispatch transition events from refresh driver; r=dbaron
This patch causes transition events to be dispatched as a separate step after
sampling the transitions. Eventually this will allow us to sample transitions
from their timeline (independently of where they came from and in potentially
any order) by separating the concepts of sampling and event dispatch.
2015-07-29 10:57:40 +09:00
Brian Birtles
94c7d4f13c Bug 1180125 part 1 - Queue and dispatch CSS animation events as a separate step; r=dbaron
This patch prepares the way for script-generated events by making
event dispatch a separate process that happens after sampling animations.
This will allow us to sample animations from their associated timeline
(removing the need for a further manager to tracker script-generated
animations).

Furthermore, once we sample animations from timelines the order in which they
are sampled is likely to be more or less random so by making event dispatch at
separate step, we have an opportunity to sort the events and dispatch in
a consistent and sensible order. It also ensures that event callbacks will
not be run until all animations (including transitions) have been updated
ensuring they see a consistent view of timing properties.

This patch only affects event handling for CSS animations. Transitions will
be dealt with in a subsequent patch.
2015-07-29 10:57:39 +09:00
Timothy Nikkel
6d39ec837a Bug 1106115. Ensure that we check if we should exit high precision timer mode in the refresh driver after we have processed all requestAnimateFrame callbacks. r=vlad
When the refresh driver ticks it clears the RAF callbacks (content asks for another RAF if it desires) but it wasn't checking if it should exit high precision mode at this point.

The previous code seemed like it was using the wrong model that a RAF is persistent until it is revoked. But that is not the case.
2015-07-30 14:32:19 -05:00
Carsten "Tomcat" Book
e088d1a6e6 Backed out changeset 79bcd4f744c0 (bug 1180125) 2015-07-29 17:32:24 +02:00
Carsten "Tomcat" Book
874849f032 Backed out changeset 677efdac9819 (bug 1180125) 2015-07-29 17:31:57 +02:00
Brian Birtles
dc77bea4ce Bug 1180125 part 8 - Dispatch transition events from refresh driver; r=dbaron
This patch causes transition events to be dispatched as a separate step after
sampling the transitions. Eventually this will allow us to sample transitions
from their timeline (independently of where they came from and in potentially
any order) by separating the concepts of sampling and event dispatch.
2015-07-29 10:57:40 +09:00
Brian Birtles
52884f9d33 Bug 1180125 part 1 - Queue and dispatch CSS animation events as a separate step; r=dbaron
This patch prepares the way for script-generated events by making
event dispatch a separate process that happens after sampling animations.
This will allow us to sample animations from their associated timeline
(removing the need for a further manager to tracker script-generated
animations).

Furthermore, once we sample animations from timelines the order in which they
are sampled is likely to be more or less random so by making event dispatch at
separate step, we have an opportunity to sort the events and dispatch in
a consistent and sensible order. It also ensures that event callbacks will
not be run until all animations (including transitions) have been updated
ensuring they see a consistent view of timing properties.

This patch only affects event handling for CSS animations. Transitions will
be dealt with in a subsequent patch.
2015-07-29 10:57:39 +09:00
Hiroyuki Ikezoe
0c5116ffdd Bug 1187811 - Remove unused epoch time from RunFrameRequestCallbacks. r=bkelly 2015-07-27 01:06:00 +02:00
Victor Porof
e89678a96c Bug 1184376 - Remove nsDocShell::AddProfileTimelineMarker, r=smaug 2015-07-18 09:35:59 -04:00
Ryan VanderMeulen
711946b9be Merge m-c to fx-team. a=merge 2015-07-20 16:05:14 -04:00
Boris Zbarsky
980b01eecd Bug 909154. Remove the prefixed mozRequestAnimationFrame and its accoutrements. r=bkelly 2015-07-20 10:14:24 -04:00
Victor Porof
90aed03d00 Bug 1183229 - Add a way to count the number of timeline-observed docshells outside of nsDocShell, r=smaug 2015-07-18 09:35:59 -04:00
Victor Porof
07e40d2d78 Bug 1183219 - Backed out last 5 changesets for bustage, r=me on a CLOSED TREE 2015-07-18 10:21:09 -04:00
Victor Porof
305525bea7 Bug 1184376 - Remove nsDocShell::AddProfileTimelineMarker, r=smaug 2015-07-18 09:35:59 -04:00
Victor Porof
60519fed4a Bug 1183229 - Add a way to count the number of timeline-observed docshells outside of nsDocShell, r=smaug 2015-07-18 09:35:59 -04:00
Ting-Yu Lin
b81859299e Bug 1182963 - Use nsTHashTable::Iterator in nsRefreshDriver. r=njn 2015-07-15 17:05:06 +08:00
Xidorn Quan
85e40a0687 Bug 1179939 - Avoid crash if we destroy the pres context during flushing style or layout. r=roc 2015-07-13 09:32:04 +10:00
Xidorn Quan
68d3dbfafc Bug 1168705 part 1 - Add mechanism for dispatching events with refresh driver tick. r=roc,khuey 2015-07-02 19:12:31 +10:00
Andrea Marchesini
ea90306738 Bug 1177764 - Use nsTObserverArray in APZCCallbackHelper, r=kats, r=dholbert 2015-06-26 13:20:10 -07:00
Daniel Holbert
dd68a06e04 Bug 1175245: Convert nsRefreshDriver.cpp to use range-based "for" loops. r=tn 2015-06-17 14:36:40 -07:00
Daniel Holbert
c98c211b7d Bug 1175228: Skip profiler_tracing call for requestAnimationFrame callbacks, if we don't have any callbacks. r=BenWa 2015-06-16 12:56:10 -07:00
Eric Rahm
900b3ebc4d Bug 1165515 - Part 13-2: Replace usage of PRLogModuleLevel and PR_LOG_*. rs=froydnj
This is straightforward mapping of PR_LOG levels to their LogLevel
counterparts:
  PR_LOG_ERROR   -> LogLevel::Error
  PR_LOG_WARNING -> LogLevel::Warning
  PR_LOG_WARN    -> LogLevel::Warning
  PR_LOG_INFO    -> LogLevel::Info
  PR_LOG_DEBUG   -> LogLevel::Debug
  PR_LOG_NOTICE  -> LogLevel::Debug
  PR_LOG_VERBOSE -> LogLevel::Verbose

Instances of PRLogModuleLevel were mapped to a fully qualified
mozilla::LogLevel, instances of PR_LOG levels in #defines were mapped to a
fully qualified mozilla::LogLevel::* level, and all other instances were
mapped to us a shorter format of LogLevel::*.

Bustage for usage of the non-fully qualified LogLevel were fixed by adding
|using mozilla::LogLevel;| where appropriate.
2015-06-03 15:25:57 -07:00
Carsten "Tomcat" Book
89becff57d Backed out 14 changesets (bug 1165515) for linux x64 e10s m2 test failures
Backed out changeset d68dcf2ef372 (bug 1165515)
Backed out changeset 7c3b45a47811 (bug 1165515)
Backed out changeset b668b617bef2 (bug 1165515)
Backed out changeset d0916e1283a2 (bug 1165515)
Backed out changeset ac4dc7489942 (bug 1165515)
Backed out changeset e9632ce8bc65 (bug 1165515)
Backed out changeset c16d215cc7e4 (bug 1165515)
Backed out changeset e4d474f3c51a (bug 1165515)
Backed out changeset d87680bf9f7c (bug 1165515)
Backed out changeset b3c0a45ba99e (bug 1165515)
Backed out changeset 9370fa197674 (bug 1165515)
Backed out changeset 50970d668ca1 (bug 1165515)
Backed out changeset ffa4eb6d24b9 (bug 1165515)
Backed out changeset 5fcf1203cc1d (bug 1165515)
2015-06-02 13:05:56 +02:00
Eric Rahm
f5003d5120 Bug 1165515 - Part 13-2: Replace usage of PRLogModuleLevel and PR_LOG_*. rs=froydnj
This is straightforward mapping of PR_LOG levels to their LogLevel
counterparts:
  PR_LOG_ERROR   -> LogLevel::Error
  PR_LOG_WARNING -> LogLevel::Warning
  PR_LOG_WARN    -> LogLevel::Warning
  PR_LOG_INFO    -> LogLevel::Info
  PR_LOG_DEBUG   -> LogLevel::Debug
  PR_LOG_NOTICE  -> LogLevel::Debug
  PR_LOG_VERBOSE -> LogLevel::Verbose

Instances of PRLogModuleLevel were mapped to a fully qualified
mozilla::LogLevel, instances of PR_LOG levels in #defines were mapped to a
fully qualified mozilla::LogLevel::* level, and all other instances were
mapped to us a shorter format of LogLevel::*.

Bustage for usage of the non-fully qualified LogLevel were fixed by adding
|using mozilla::LogLevel;| where appropriate.
2015-06-01 22:17:33 -07:00
Wes Kocher
2a7ed059f1 Backed out 14 changesets (bug 1165515) for b2g mochitest-6 permafail CLOSED TREE
Backed out changeset 9b97e2aa2ed9 (bug 1165515)
Backed out changeset 150606c022a2 (bug 1165515)
Backed out changeset 4e875a488349 (bug 1165515)
Backed out changeset 467e7feeb546 (bug 1165515)
Backed out changeset d6b6cc373197 (bug 1165515)
Backed out changeset 0615265b593c (bug 1165515)
Backed out changeset fafd1dce9f08 (bug 1165515)
Backed out changeset d1df869245f9 (bug 1165515)
Backed out changeset 6876a7c63611 (bug 1165515)
Backed out changeset b7841c94a9a3 (bug 1165515)
Backed out changeset e5e3617f7c73 (bug 1165515)
Backed out changeset 39be3db95978 (bug 1165515)
Backed out changeset 0ec74176f8de (bug 1165515)
Backed out changeset 5b928dd10d71 (bug 1165515)
2015-06-01 17:57:58 -07:00
Eric Rahm
0baf91e33f Bug 1165515 - Part 13-2: Replace usage of PRLogModuleLevel and PR_LOG_*. rs=froydnj
This is straightforward mapping of PR_LOG levels to their LogLevel
counterparts:
  PR_LOG_ERROR   -> LogLevel::Error
  PR_LOG_WARNING -> LogLevel::Warning
  PR_LOG_WARN    -> LogLevel::Warning
  PR_LOG_INFO    -> LogLevel::Info
  PR_LOG_DEBUG   -> LogLevel::Debug
  PR_LOG_NOTICE  -> LogLevel::Debug
  PR_LOG_VERBOSE -> LogLevel::Verbose

Instances of PRLogModuleLevel were mapped to a fully qualified
mozilla::LogLevel, instances of PR_LOG levels in #defines were mapped to a
fully qualified mozilla::LogLevel::* level, and all other instances were
mapped to us a shorter format of LogLevel::*.

Bustage for usage of the non-fully qualified LogLevel were fixed by adding
|using mozilla::LogLevel;| where appropriate.
2015-06-01 14:31:01 -07:00
Seth Fowler
78f8fd77c3 Bug 1169880 - Recompute image visibility on a timer if layout or style flushes have occurred. r=tn 2015-05-29 23:50:51 -07:00
Eric Rahm
5b59cf4e0b Bug 1165515 - Part 1: Convert PR_LOG to MOZ_LOG. r=froydnj 2015-05-21 13:22:04 -07:00
Eric Rahm
ddc8ac650b Bug 1165518 - Part 2: Replace prlog.h with Logging.h. rs=froydnj 2015-05-19 11:15:34 -07:00
Jordan Santell
80e1ba93bf Bug 1164338 - Move styles markers to be generated in DoProcessRestyles rather than when the Flush_Style queue is flushed. r=smaug,heycam 2015-05-18 16:03:04 -07:00
Eric Rahm
5ccd7b80b4 Bug 1162673 - Part 1: Remove instances of #ifdef PR_LOGGING in layout. r=froydnj
PR_LOGGING is now always defined, we can remove #ifdefs checking for it.
2015-05-11 13:53:18 -07:00
Olli Pettay
8c8bd21dd0 Backout Bug 1149555 because of tresize regression, a=backout 2015-05-08 20:12:41 +03:00
Daniel Holbert
f4a29bbf62 Bug 1161731: Remove newline characters from the ends of NS_WARNING messages in /gfx and /layout. r=mstange 2015-05-05 13:57:47 -07:00
Olli Pettay
f40b7ab96e Bug 1149555 - Update resize event firing to follow the specs, dispatch right before rAF callbacks, r=dbaron 2015-05-05 17:56:01 +03:00
Seth Fowler
3f88e08b1d Bug 1145439 (Part 1) - Throttle requestAnimationFrame for non-visible iframes. r=mstange,mchang 2015-04-21 09:44:40 -07:00
Brian Birtles
4679b63be2 Bug 1154615 part 2 - Rename PendingPlayerTracker to PendingAnimationTracker; r=jwatt
This patch also updates the method names on PendingAnimationTracker but leaves
a number of local variables which will be fixed in a subsequent patch.
2015-04-21 10:22:09 +09:00
Olli Pettay
e42357febc Backout Bug 930793 because of talos regressions,r=backout 2015-04-13 19:02:27 +03:00
Olli Pettay
c1c812eafe Bug 930793 - Remove favor performance mode, r=avih,roc 2015-04-12 23:08:55 +03:00
Ryan VanderMeulen
ef7aaf774b Backed out changeset 3366d180e8ee (bug 1145439) for test_scroll_event_ordering.html failures. 2015-04-09 22:59:10 -04:00
Seth Fowler
d07bba6c7c Bug 1145439 - Throttle requestAnimationFrame for non-visible iframes. r=mstange,mchang 2015-04-09 17:52:23 -07:00
Wes Kocher
7a479b8fc4 Backed out changeset b0de9cef013b (bug 1145439) for Gu orange 2015-04-03 14:11:11 -07:00
Seth Fowler
59f89c2450 Bug 1145439 - Throttle requestAnimationFrame for non-visible iframes. r=mstange,mchang 2015-04-03 11:51:11 -07:00