changeset 146:0f48d2f5ab8a

change column width in a timeout to make dragging the splitter smoother
author Myk Melez <myk@mozilla.org>
date Tue, 08 Jul 2008 17:41:31 -0700
parents c6cb99e579fe
children 900164bbacce
files extension/content/river2.js
diffstat 1 files changed, 9 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/extension/content/river2.js	Tue Jul 08 17:16:56 2008 -0700
+++ b/extension/content/river2.js	Tue Jul 08 17:41:31 2008 -0700
@@ -950,8 +950,16 @@
     document.documentElement.removeEventListener("mousemove", this, false);
   },
 
+  // Note: because this function gets passed directly to setTimeout,
+  // |this| doesn't reference splitterDragObserver inside the function.
+  callback: function(width) {
+    document.getElementById("innerContentBox").style.MozColumnWidth = width + "px";
+  },
+
   handleEvent: function(event) {
+    if (this._timeout)
+      this._timeout = window.clearTimeout(this._timeout);
     document.getElementById("columnResizeSplitter").left = event.clientX;
-    document.getElementById("innerContentBox").style.MozColumnWidth = event.clientX + "px";
+    this._timeout = window.setTimeout(this.callback, 500, event.clientX);
   }
 }