]> jfr.im git - irc/quakenet/qwebirc.git/blobdiff - js/ui/qui.js
Add resize scroll position saving.
[irc/quakenet/qwebirc.git] / js / ui / qui.js
index 4de657f01761b845da7d30530e203f9f4432ac25..c0cadfc2647076e221b217b4fb5d6c05cfb9a6c4 100644 (file)
@@ -72,7 +72,8 @@ var QUIWindow = new Class({
       inputbox.value = result;
       setAtEnd(inputbox);
     }.bind(this));
-
+    this.inputbox = inputbox;
+    
     var toppos = 0;
     var rightpos = 0;
     var bottompos = formdiv.getSize().y;
@@ -98,6 +99,15 @@ var QUIWindow = new Class({
     this.lines.setStyle("bottom", bottompos + "px");
     this.lines.setStyle("right", rightpos + "px");
     this.lines.addClass("lines");
+    
+    this.lines.addEvent("scroll", function() {
+      this.scrolleddown = this.scrolledDown();
+    }.bind(this));
+    
+    window.addEvent("resize", function() {
+      if(this.scrolleddown)
+        this.scrollToBottom();
+    }.bind(this));
   },
   updateNickList: function(nicks) {
     this.parent(nicks);
@@ -127,6 +137,8 @@ var QUIWindow = new Class({
     this.tab.removeClass("tab-unselected");
     this.tab.addClass("tab-selected");
     this.parent();
+    
+    this.inputbox.focus();
   },
   deselect: function() {
     this.parent();