Add chat modifiers and history

This commit is contained in:
calzoneman 2013-03-29 13:15:46 -05:00
parent d788721b3f
commit 328b38f319
4 changed files with 55 additions and 3 deletions

View file

@ -56,7 +56,7 @@
border-left: 0;
}
#messagebuffer div {
#messagebuffer div, #messagebuffer code {
white-space: pre-wrap; /* css-3 */
white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
white-space: -pre-wrap; /* Opera 4-6 */
@ -106,6 +106,10 @@
font-size: 18pt;
}
.mono {
font-family: Monospace;
}
.poll-notify {
color: #0000aa;
font-weight: bold;

View file

@ -19,6 +19,8 @@ var OPENQUEUE = false;
var CHANNELOPTS = {};
var GRABBEDLI = null;
var OLDINDEX = -1;
var CHATHIST = [];
var CHATHISTIDX = 0;
var uname = readCookie("sync_uname");
var pw = readCookie("sync_pw");
@ -186,6 +188,10 @@ $("#chatline").keydown(function(ev) {
socket.emit("chatMsg", {
msg: $("#chatline").val()
});
CHATHIST.push($("#chatline").val());
if(CHATHIST.length > 10)
CHATHIST.shift();
CHATHISTIDX = CHATHIST.length;
$("#chatline").val("");
}
else if(ev.keyCode == 9) { // Tab completion
@ -214,6 +220,27 @@ $("#chatline").keydown(function(ev) {
ev.preventDefault();
return false;
}
else if(ev.keyCode == 38) {
if(CHATHISTIDX == CHATHIST.length) {
CHATHIST.push($("#chatline").val());
}
if(CHATHISTIDX > 0) {
CHATHISTIDX--;
$("#chatline").val(CHATHIST[CHATHISTIDX]);
}
ev.preventDefault();
return false;
}
else if(ev.keyCode == 40) {
if(CHATHISTIDX < CHATHIST.length - 1) {
CHATHISTIDX++;
$("#chatline").val(CHATHIST[CHATHISTIDX]);
}
ev.preventDefault();
return false;
}
});
$("#opt_submit").click(function() {