Commit Graph

30 Commits

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

MozReview-Commit-ID: BgulzkGteAL

--HG--
extra : rebase_source : a4b9d16a4c06c4e85d7d85f485221b1e4ebdfede
2017-10-26 15:08:41 -07:00
Ben Kelly
8547461342 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
a3c8156b38 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
cf2f97c065 Bug 1370025 P5 Remove the old TimeoutManager insertion point logic. r=ehsan 2017-06-05 12:42:33 -07:00
Ben Kelly
e3fc94e5a9 Bug 1363829 P7 Remove the Timeout nsITimer code. r=ehsan 2017-05-31 17:13:19 -07:00
Ben Kelly
f698e87bfb Bug 1363829 P6 Use the TimeoutExecutor in TimeoutManager. r=ehsan 2017-05-31 17:13:19 -07:00
Ben Kelly
9c58cbc4d3 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
5a9cd2b6fb 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
953ad6f162 Bug 1363829 P2 Removing the Timeout argument to TimeoutManager::RunTimeout(). r=ehsan 2017-05-31 17:13:18 -07:00
Ben Kelly
2473d25f1f Bug 1343912 P3 Remove unused Timeout::mPrincipal member variable. r=ehsan 2017-05-19 13:45:55 -07:00
Ben Kelly
d642ac9124 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
928b73f143 Bug 1331804 - Anonymize nsITimer runnable names (r=njn)
MozReview-Commit-ID: 5qoN9BKkH18
2017-01-24 16:34:37 -08:00
Wes Kocher
f7ccafcb58 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
d8c4c4f53b Bug 1331804 - Anonymize nsITimer runnable names (r=njn)
MozReview-Commit-ID: 5qoN9BKkH18
2017-01-24 10:04:55 -08:00
Ehsan Akhgari
453c89e409 Bug 1325467 - Part 1: Add Timeout::mIsTracking; r=bkelly 2017-01-17 21:01:15 -05:00
Ben Kelly
7254b4bfa4 Bug 1329284 Refactor DOM timeout to set mWhen/mTimeRemaining from one place. r=ehsan 2017-01-10 08:08:18 -08:00
Ehsan Akhgari
7326630b5d 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
443e426d7c 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
7168326772 Bug 1299932 - Part 1: Implement gamepadPose attribute in Gamepad API; r=kip,qdot
MozReview-Commit-ID: DiJadVc2TyE

--HG--
extra : rebase_source : f4571090518a084b6d4b1e6fccf951510b227fbd
2016-10-24 18:04:41 +08:00
Ben Kelly
595fb0d20b Bug 1300659 P3 Make setTimeout() and setInterval() use the TabGroup ThrottledEventQueue. r=smaug 2016-11-07 12:30:17 -08:00
Andreas Farre
9a297f4b3e 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

--HG--
extra : rebase_source : 16376c8097a27ab4b5b0e74a2e658f33295703bf
2016-08-22 15:07:50 +02:00
Andreas Farre
d31692e9f6 Bug 1198381 - Extract nsITimeoutHandler from nsIScriptTimeoutHandler. r=smaug
MozReview-Commit-ID: HJHrbodWYVf

--HG--
extra : rebase_source : 33a6c40b1e1e3a05478e9260ccb70f5e7f2206b7
2016-10-05 14:26:08 +02:00
Andreas Farre
9444ceb267 Bug 1198381 - Move/rename nsTimeout to Timeout, r=smaug
MozReview-Commit-ID: 1WrH2ZbOuzj

--HG--
extra : rebase_source : 7883b35b116f2b2a616c8cb2c502f40993feabc4
2016-08-22 14:52:19 +02:00
Carsten "Tomcat" Book
217631aa6d 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
2b410144bf Backed out changeset 24839edcf0ef (bug 1198381) 2016-10-25 12:33:00 +02:00
Carsten "Tomcat" Book
06858c2f4d Backed out changeset ffaf3d371130 (bug 1198381) 2016-10-25 12:32:58 +02:00
Andreas Farre
68e6086f4b 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

--HG--
extra : rebase_source : 82d92f515f24e08fe7da78afe7185c8ceb98a096
2016-08-22 15:07:50 +02:00
Andreas Farre
0981b9665a Bug 1198381 - Extract nsITimeoutHandler from nsIScriptTimeoutHandler. r=smaug
MozReview-Commit-ID: HJHrbodWYVf

--HG--
extra : rebase_source : e51785327f84f08829e1464f1789281fc92b95ad
2016-10-05 14:26:08 +02:00
Andreas Farre
979adce9e5 Bug 1198381 - Move/rename nsTimeout to Timeout, r=smaug
MozReview-Commit-ID: 1WrH2ZbOuzj

--HG--
extra : rebase_source : a010060badf2ffbfeadb1d7f8cc29376c214bcc6
2016-08-22 14:52:19 +02:00