Commit Graph

30 Commits

Author SHA1 Message Date
Andreas Farre
b327ddccf4 Bug 1415770 - Simplify handling of IdleRequest list. r=smaug, r=baku 2017-11-28 14:23:46 -05:00
Andrew McCreight
2c2e9cbbbe Bug 1412125, part 2 - Fix dom/ mode lines. r=qdot
This was automatically generated by the script modeline.py.

MozReview-Commit-ID: BgulzkGteAL
2017-10-26 15:08:41 -07:00
Ben Kelly
734ab82e20 Bug 1378586 P3 Reorder Timeout members to improve binary packing. No functional change. r=farre 2017-07-25 08:35:12 -07:00
Ben Kelly
7ad41638d7 Bug 1371664 P4 Remove old TimeoutManager code that adjusted Timeout::When() while in background. r=ehsan 2017-06-13 18:08:28 -07:00
Ben Kelly
d487989fec Bug 1370025 P5 Remove the old TimeoutManager insertion point logic. r=ehsan 2017-06-05 12:42:33 -07:00
Ben Kelly
0b2fb5c651 Bug 1363829 P7 Remove the Timeout nsITimer code. r=ehsan 2017-05-31 17:13:19 -07:00
Ben Kelly
0a97320c46 Bug 1363829 P6 Use the TimeoutExecutor in TimeoutManager. r=ehsan 2017-05-31 17:13:19 -07:00
Ben Kelly
1ab86d69e0 Bug 1363829 P4 Store the scheduled delay on Timeout instead of relying on the nsITimer to hold it. r=ehsan 2017-05-31 17:13:18 -07:00
Ben Kelly
f4e57f4b1f Bug 1363829 P3 Improve Timeout ref counting to avoide bare AddRef/Release calls. r=ehsan 2017-05-31 17:13:18 -07:00
Ben Kelly
45574d8865 Bug 1363829 P2 Removing the Timeout argument to TimeoutManager::RunTimeout(). r=ehsan 2017-05-31 17:13:18 -07:00
Ben Kelly
8b60a48883 Bug 1343912 P3 Remove unused Timeout::mPrincipal member variable. r=ehsan 2017-05-19 13:45:55 -07:00
Ben Kelly
045d7d2e6d Bug 1343912 P2 Change TimeoutManager firing depth to a unique ID that can be expired to optimize cleanup. r=ehsan 2017-05-19 13:45:55 -07:00
Bill McCloskey
128d88fdd9 Bug 1331804 - Anonymize nsITimer runnable names (r=njn)
MozReview-Commit-ID: 5qoN9BKkH18
2017-01-24 16:34:37 -08:00
Wes Kocher
ac78cfc4f2 Backed out 8 changesets (bug 1331804, bug 1332100) for windows vm debug dt5 failures a=backout
Backed out changeset 8bf7f0e27c6c (bug 1331804)
Backed out changeset 600c0b9026c2 (bug 1331804)
Backed out changeset 3a5b5b9ecace (bug 1331804)
Backed out changeset c76432c9954e (bug 1331804)
Backed out changeset 46a9096745e7 (bug 1332100)
Backed out changeset 8b751230fa23 (bug 1331804)
Backed out changeset 2810212347fd (bug 1331804)
Backed out changeset be72b7763910 (bug 1331804)

MozReview-Commit-ID: Ywdsr4GZ4a
2017-01-24 15:12:21 -08:00
Bill McCloskey
bd1d3cc21c Bug 1331804 - Anonymize nsITimer runnable names (r=njn)
MozReview-Commit-ID: 5qoN9BKkH18
2017-01-24 10:04:55 -08:00
Ehsan Akhgari
2c65e6309d Bug 1325467 - Part 1: Add Timeout::mIsTracking; r=bkelly 2017-01-17 21:01:15 -05:00
Ben Kelly
98db9a9e49 Bug 1329284 Refactor DOM timeout to set mWhen/mTimeRemaining from one place. r=ehsan 2017-01-10 08:08:18 -08:00
Ehsan Akhgari
28b71db5ec Bug 1312514 - Part 1: Split tracking and non-tracking timeouts into two separate lists; r=bkelly
This will allow us to schedule these timers differently in the future.
This patch only performs the refactoring, and is not intended to change
any behavior.  Specifically, this patch doesn't change the order in
which timeouts are fired -- they should still all be fired according to
the mWhen field.

The implementation works by splitting timeout storage per window into
two Timeouts objects, mNormalTimeouts and mTrackingTimeouts.  The ForEach
helper methods are extended to deal with both of these objects, and as a
result, most of the algorithms operating on the list of timeouts work
correctly without any modification, with the notable exception of
RunTimeout.

In RunTimeout(), the order in which Timeout objects are processed does
matter, so for that case we use the OrderedTimeoutIterator class to
iterate over both linked lists simultaneously in the mWhen order.  Also,
inserting the dummy timeout when running the timeouts is only necessary
for the linked list where the last expired timeout is coming from, so we
only inject the dummy timer into the corresponding list, therefore we
remember which list we picked the last expired timeout from when
looking for it.
2016-12-20 12:40:26 -05:00
Ehsan Akhgari
ba45de7747 Bug 1321903 - Refactor the timeout/interval management code out of nsGlobalWindow; r=bkelly
This code now lives in TimeoutManager.  Note that this is a transition
state, the Timeout list management code also needs to be refactored out
later.

In order to simplify the lifetime management of the new class, its
lifetime is equal to the lifetime of its containing nsGlobalWindow.  In
a few places where we need to dispatch runnables to do asynchronous work
on this object, we hold the containing window alive to guarantee safety.

This patch also removes a bit of dead code that was left over from the
code removed in bug 1281793. See:
https://hg.mozilla.org/mozilla-central/rev/0ac748f4d677#l1.63
2016-12-13 14:08:47 -05:00
Daosheng Mu
eb4ff2b641 Bug 1299932 - Part 1: Implement gamepadPose attribute in Gamepad API; r=kip,qdot
MozReview-Commit-ID: DiJadVc2TyE
2016-10-24 18:04:41 +08:00
Ben Kelly
dd034d74fa Bug 1300659 P3 Make setTimeout() and setInterval() use the TabGroup ThrottledEventQueue. r=smaug 2016-11-07 12:30:17 -08:00
Andreas Farre
3ab0673319 Bug 1198381 - Extend setTimeout handling in nsGlobalWindow, r=smaug
The requestIdleCallback feature behaves in many ways as setTimeout
since it takes an optional timout when the idle callback will be
called regardless of the user agent being idle or not. This means that
the same mechanisms controlling setTimeout are needed for
requestIdleCallback.

MozReview-Commit-ID: 9mESsJnUexf
2016-08-22 15:07:50 +02:00
Andreas Farre
a1bf32bb0a Bug 1198381 - Extract nsITimeoutHandler from nsIScriptTimeoutHandler. r=smaug
MozReview-Commit-ID: HJHrbodWYVf
2016-10-05 14:26:08 +02:00
Andreas Farre
95c440b772 Bug 1198381 - Move/rename nsTimeout to Timeout, r=smaug
MozReview-Commit-ID: 1WrH2ZbOuzj
2016-08-22 14:52:19 +02:00
Carsten "Tomcat" Book
be05d6bf8b Backed out changeset 228cc133fe6b (bug 1198381) for causing increased number of hangs in navigate() in marionette tests 2016-10-25 12:34:22 +02:00
Carsten "Tomcat" Book
48b41a87ad Backed out changeset 24839edcf0ef (bug 1198381) 2016-10-25 12:33:00 +02:00
Carsten "Tomcat" Book
50bf70ea06 Backed out changeset ffaf3d371130 (bug 1198381) 2016-10-25 12:32:58 +02:00
Andreas Farre
8be8404a91 Bug 1198381 - Extend setTimeout handling in nsGlobalWindow, r=smaug
The requestIdleCallback feature behaves in many ways as setTimeout
since it takes an optional timout when the idle callback will be
called regardless of the user agent being idle or not. This means that
the same mechanisms controlling setTimeout are needed for
requestIdleCallback.

MozReview-Commit-ID: 9mESsJnUexf
2016-08-22 15:07:50 +02:00
Andreas Farre
e8a146b724 Bug 1198381 - Extract nsITimeoutHandler from nsIScriptTimeoutHandler. r=smaug
MozReview-Commit-ID: HJHrbodWYVf
2016-10-05 14:26:08 +02:00
Andreas Farre
f291dc880c Bug 1198381 - Move/rename nsTimeout to Timeout, r=smaug
MozReview-Commit-ID: 1WrH2ZbOuzj
2016-08-22 14:52:19 +02:00