]> jfr.im git - irc/quakenet/qwebirc.git/blobdiff - js/ui/baseui.js
Bump to 1.00
[irc/quakenet/qwebirc.git] / js / ui / baseui.js
index e7ef0eaef7b7adfcc6717d60c8b095eb257adb72..86145c9eb020b9fe837b2f70fb65bc92aaecdb47 100644 (file)
@@ -71,7 +71,7 @@ qwebirc.ui.BaseUI = new Class({
     if(!this.firstClient) {
       this.firstClient = true;
       w.addLine("", "qwebirc v" + qwebirc.VERSION);
-      w.addLine("", "Copyright (C) 2008-2014 Chris Porter and the qwebirc project.");
+      w.addLine("", "Copyright (C) 2008-2017 Chris Porter and the qwebirc project.");
       w.addLine("", "http://www.qwebirc.org");
       w.addLine("", "Licensed under the GNU General Public License, Version 2.");
     }
@@ -213,7 +213,8 @@ qwebirc.ui.BaseUI = new Class({
     this.postInitialize();
 
     this.addCustomWindow("Connect", qwebirc.ui.ConnectPane, "connectpane", {
-      initialNickname: initialNickname, initialChannels: initialChannels, autoConnect: autoConnect, networkName: this.options.networkName, callback: callback, autoNick: autoNick
+      initialNickname: initialNickname, initialChannels: initialChannels, autoConnect: autoConnect, callback: callback, autoNick: autoNick,
+      uiOptions: this.options
     }, qwebirc.ui.WINDOW_CONNECT);
   },
   focusChange: function(newValue) {
@@ -275,10 +276,12 @@ qwebirc.ui.StandardUI = new Class({
   },
   __handleHotkey: function(x) {
     var success = false;
-    if(!x.alt || x.control) {
+    if(!x.alt && !x.control && !x.shift && !x.meta) {
       if((x.key == "backspace" || x.key == "/") && !this.getInputFocused(x)) {
         success = true;
       }
+    } else if(!x.alt || x.control || x.meta) {
+      /* do nothing */
     } else if(x.key == "a" || x.key == "A") {
       var highestNum = 0;
       var highestIndex = -1;
@@ -293,7 +296,7 @@ qwebirc.ui.StandardUI = new Class({
       }
       if(highestIndex > -1)
         this.selectWindow(this.windowArray[highestIndex]);
-    } else if(x.key >= '0' && x.key <= '9') {
+    } else if((x.key >= '0' && x.key <= '9') && !x.shift) {
       success = true;
       
       number = x.key - '0';
@@ -306,13 +309,14 @@ qwebirc.ui.StandardUI = new Class({
         return;
         
       this.selectWindow(this.windowArray[number]);
-    } else if(x.key == "left") {
+    } else if((x.key == "left" || x.key == "up") && !x.shift) {
       this.prevWindow();
       success = true;
-    } else if(x.key == "right") {
+    } else if((x.key == "right" || x.key == "down") && !x.shift) {
       this.nextWindow();
       success = true;
     }
+
     if(success) {
       new Event(x).stop();
       x.preventDefault();
@@ -403,8 +407,8 @@ qwebirc.ui.StandardUI = new Class({
 
     return null;
   },
-  tabComplete: function(element) {
-    this.tabCompleter.tabComplete(element);
+  tabComplete: function(element, backwards) {
+    this.tabCompleter.tabComplete(element, backwards);
   },
   resetTabComplete: function() {
     this.tabCompleter.reset();
@@ -491,7 +495,8 @@ qwebirc.ui.QuakeNetUI = new Class({
   urlDispatcher: function(name, window) {
     if(name == "qwhois") {
       return ["span", function(auth) {
-        this.client.exec("/MSG Q whois #" + auth);
+        if($defined(this.parentObject.options.accountWhoisCommand))
+          this.client.exec(this.parentObject.options.accountWhoisCommand + auth);
       }.bind(window)];
     }
     return this.parent(name, window);