hint_manager.generate_hints: use rect.width and rect.height where appropriate
[conkeror.git] / modules / timer.js
blobe245f7f218f8f37eba875aa7c0c4c0273ba8589e
1 /**
2  * (C) Copyright 2008 Jeremy Maitin-Shepard
3  *
4  * Use, modification, and distribution are subject to the terms specified in the
5  * COPYING file.
6 **/
8 in_module(null);
10 function timer_callback (callback) {
11     this.callback = callback;
13 timer_callback.prototype = {
14     constructor: timer_callback,
15     QueryInterface: XPCOMUtils.generateQI([Ci.nsITimerCallback]),
17     notify: function (timer) {
18         this.callback.call(null, timer);
19     }
22 function call_after_timeout (callback, timeout) {
23     var timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer);
24     timer.initWithCallback(new timer_callback(callback), timeout, Ci.nsITimer.TYPE_ONE_SHOT);
25     return timer;
28 function call_at_interval (callback, interval) {
29     var timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer);
30     timer.initWithCallback(new timer_callback(callback), interval, Ci.nsITimer.TYPE_REPEATING_SLACK);
31     return timer;
34 function call_at_precise_interval (callback, interval) {
35     var timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer);
36     timer.initWithCallback(new timer_callback(callback), interval, Ci.nsITimer.TYPE_REPEATING_PRECISE);
37     return timer;
40 function timer_cancel (timer) {
41     timer.cancel();
44 provide("timer");