From bc4c96a140926ec86fe50356080fff32b2697cd5 Mon Sep 17 00:00:00 2001 From: "rginda%netscape.com" Date: Wed, 1 Nov 2000 09:33:16 +0000 Subject: [PATCH] -- CHATZILLA CHANGES ONLY -- sr = scc, r = syd fix for bug 57633, which also fixes 27805,40636,41343,51352,54145,56708,57104,57138, and some other random unfiled bugs. --- extensions/irc/jar.mn | 1 + extensions/irc/js/lib/chatzilla-service.js | 8 +- extensions/irc/js/lib/events.js | 1 + extensions/irc/js/lib/irc.js | 58 ++++-- extensions/irc/js/lib/utils.js | 5 +- extensions/irc/xul/content/chatzilla.xul | 160 ++++++++------- extensions/irc/xul/content/handlers.js | 55 +++-- extensions/irc/xul/content/rdf.js | 6 +- extensions/irc/xul/content/readprefs.js | 84 ++++++-- extensions/irc/xul/content/static.js | 221 +++++++++++++-------- 10 files changed, 381 insertions(+), 218 deletions(-) diff --git a/extensions/irc/jar.mn b/extensions/irc/jar.mn index a99a5ebb6892..afbf6092d873 100644 --- a/extensions/irc/jar.mn +++ b/extensions/irc/jar.mn @@ -24,6 +24,7 @@ chatzilla.jar: skin/modern/chatzilla/output-marble.css (xul/skin/output-marble.css) skin/modern/chatzilla/images/xtal.jpg (xul/skin/images/xtal.jpg) skin/modern/chatzilla/images/blue_rock.gif (xul/skin/images/blue_rock.gif) + skin/modern/chatzilla/images/face-ear.gif (xul/skin/images/face-ear.gif) skin/modern/chatzilla/images/face-frown.gif (xul/skin/images/face-frown.gif) skin/modern/chatzilla/images/face-tongue.gif (xul/skin/images/face-tongue.gif) skin/modern/chatzilla/images/face-angry.gif (xul/skin/images/face-angry.gif) diff --git a/extensions/irc/js/lib/chatzilla-service.js b/extensions/irc/js/lib/chatzilla-service.js index 652aa7306731..e1ebdf96c224 100644 --- a/extensions/irc/js/lib/chatzilla-service.js +++ b/extensions/irc/js/lib/chatzilla-service.js @@ -80,7 +80,7 @@ CLineService.prototype.defaultArgs =""; CLineService.prototype.openWindowWithArgs=false; /* factory for command line handler service (CLineService) */ -CLineFactory = new Object(); +var CLineFactory = new Object(); CLineFactory.createInstance = function (outer, iid) { @@ -128,7 +128,7 @@ function (aContentType, aCommand, aWindowTarget, aSourceContext, aChannel) else { var ass = Components.classes[ASS_CONTRACTID].getService(nsIAppShellService); - var w = ass.getHiddenDOMWindow(); + w = ass.getHiddenDOMWindow(); w.open("chrome://chatzilla/content/chatzilla.xul?" + aChannel.URI.spec, "_blank", "chrome,menubar,toolbar,resizable"); } @@ -136,7 +136,7 @@ function (aContentType, aCommand, aWindowTarget, aSourceContext, aChannel) } /* content handler factory object (IRCContentHandler) */ -IRCContentHandlerFactory = new Object(); +var IRCContentHandlerFactory = new Object(); IRCContentHandlerFactory.createInstance = function (outer, iid) { @@ -179,7 +179,7 @@ function (aURI) } /* protocol handler factory object (IRCProtocolHandler) */ -IRCProtocolHandlerFactory = new Object(); +var IRCProtocolHandlerFactory = new Object(); IRCProtocolHandlerFactory.createInstance = function (outer, iid) { diff --git a/extensions/irc/js/lib/events.js b/extensions/irc/js/lib/events.js index 6613d5e8259c..7187fe899915 100644 --- a/extensions/irc/js/lib/events.js +++ b/extensions/irc/js/lib/events.js @@ -90,6 +90,7 @@ function ep_hook(e, hooks) } } + return false; } CEventPump.prototype.addHook = diff --git a/extensions/irc/js/lib/irc.js b/extensions/irc/js/lib/irc.js index 416e9ac9bfe1..b17c916b8620 100644 --- a/extensions/irc/js/lib/irc.js +++ b/extensions/irc/js/lib/irc.js @@ -76,6 +76,8 @@ function userIsMe (user) return false; } + + return false; } /* @@ -135,6 +137,7 @@ function net_doconnect(e) var attempt = (typeof e.attempt == "undefined") ? 1 : e.attempt + 1; var host = (typeof e.lastHost == "undefined") ? 0 : e.lastHost + 1; + var ev; if (attempt > this.MAX_CONNECT_ATTEMPTS) return false; @@ -147,7 +150,7 @@ function net_doconnect(e) { dd ("cant make socket."); - var ev = new CEvent ("network", "error", this, "onError"); + ev = new CEvent ("network", "error", this, "onError"); ev.meat = "Unable to create socket: " + ex; this.eventPump.addEvent (ev); return false; @@ -159,13 +162,13 @@ function net_doconnect(e) if (c.connect (this.serverList[host].name, this.serverList[host].port, (void 0), true)) { - var ev = new CEvent ("network", "connect", this, "onConnect"); + ev = new CEvent ("network", "connect", this, "onConnect"); ev.server = this.primServ = new CIRCServer (this, c); this.eventPump.addEvent (ev); } else { /* connect failed, try again */ - var ev = new CEvent ("network", "do-connect", this, "onDoConnect"); + ev = new CEvent ("network", "do-connect", this, "onDoConnect"); ev.lastHost = host; ev.attempt = attempt; this.eventPump.addEvent (ev); @@ -475,7 +478,7 @@ function serv_onsenddata (e) if (this.sendQueue.length > 0) this.parent.eventPump.addEvent (new CEvent ("server", "senddata", this, "onSendData")); - + return true; } CIRCServer.prototype.onPoll = @@ -483,6 +486,7 @@ function serv_poll(e) { var lines; var ex; + var ev; try { @@ -499,12 +503,11 @@ function serv_poll(e) } else if (typeof ex != "undefined") { - var ev = new CEvent ("server", "disconnect", this, - "onDisconnect"); - ev.reason = "error"; - ev.exception = ex; - this.parent.eventPump.addEvent (ev); - return false; + ev = new CEvent ("server", "disconnect", this, "onDisconnect"); + ev.reason = "error"; + ev.exception = ex; + this.parent.eventPump.addEvent (ev); + return false; } else line = "" @@ -515,11 +518,12 @@ function serv_poll(e) if (line) { - var ev = new CEvent ("server", "data-available", this, - "onDataAvailable"); + ev = new CEvent ("server", "data-available", this, "onDataAvailable"); ev.line = line; this.parent.eventPump.addEvent (ev); } + + return true; } @@ -549,6 +553,8 @@ function serv_ppline(e) ev.data = lines[i].replace(/\r/g, ""); this.parent.eventPump.addEvent (ev); } + + return true; } /* @@ -862,6 +868,9 @@ function serv_chanmode (e) e.modeStr = mode_str; e.usersAffected = new Array(); + var nick; + var user; + for (var i = 0; i < mode_str.length ; i++) { switch (mode_str[i]) @@ -875,16 +884,16 @@ function serv_chanmode (e) case "o": /* operator */ if (modifier == "+") { - var nick = e.params[BASE_PARAM + params_eaten]; - var user = new CIRCChanUser (e.channel, nick, true); + nick = e.params[BASE_PARAM + params_eaten]; + user = new CIRCChanUser (e.channel, nick, true); params_eaten++; e.usersAffected.push (user); } else if (modifier == "-") { - var nick = e.params[BASE_PARAM + params_eaten]; - var user = new CIRCChanUser (e.channel, nick, false); + nick = e.params[BASE_PARAM + params_eaten]; + user = new CIRCChanUser (e.channel, nick, false); params_eaten++; e.usersAffected.push (user); } @@ -893,18 +902,17 @@ function serv_chanmode (e) case "v": /* voice */ if (modifier == "+") { - var nick = e.params[BASE_PARAM + params_eaten]; - var user = new CIRCChanUser (e.channel, nick, (void 0), - true); + nick = e.params[BASE_PARAM + params_eaten]; + user = new CIRCChanUser (e.channel, nick, (void 0), true); params_eaten++; e.usersAffected.push (user); } else if (modifier == "-") { - var nick = e.params[BASE_PARAM + params_eaten]; - var user = new CIRCChanUser (e.channel, nick, (void 0), - false); + nick = e.params[BASE_PARAM + params_eaten]; + user = new CIRCChanUser (e.channel, nick, (void 0), + false); params_eaten++; e.usersAffected.push (user); } @@ -1365,6 +1373,8 @@ function CIRCChannel (parent, name) parent.channels[name] = this; + return this; + } CIRCChannel.prototype.TYPE = "IRCChannel"; @@ -1474,6 +1484,7 @@ function chan_part () { this.parent.sendData ("PART " + this.name + "\n"); + this.users = new Object(); return true; } @@ -1697,6 +1708,8 @@ function CIRCUser (parent, nick, name, host) parent.users[nick] = this; + return this; + } CIRCUser.prototype.TYPE = "IRCUser"; @@ -1804,6 +1817,7 @@ function CIRCChanUser (parent, nick, isOp, isVoice) parent.users[nick] = this; + return this; } function cusr_setop (f) diff --git a/extensions/irc/js/lib/utils.js b/extensions/irc/js/lib/utils.js index 7fb71a6a48bc..2b0742df1b1f 100644 --- a/extensions/irc/js/lib/utils.js +++ b/extensions/irc/js/lib/utils.js @@ -31,6 +31,9 @@ var DEBUG = true; +var dumpln; +var dd; + if (typeof document == "undefined") /* in xpcshell */ dumpln = print; else @@ -119,7 +122,7 @@ function dumpObjectTree (o, recurse, compress, level) case "function": var sfunc = String(o[i]).split("\n"); if (sfunc[2] == " [native code]") - var sfunc = "[native code]"; + sfunc = "[native code]"; else sfunc = sfunc.length + " lines"; s += pfx + tee + i + " (function) " + sfunc + "\n"; diff --git a/extensions/irc/xul/content/chatzilla.xul b/extensions/irc/xul/content/chatzilla.xul index 2104db60f4d5..4b731841164d 100644 --- a/extensions/irc/xul/content/chatzilla.xul +++ b/extensions/irc/xul/content/chatzilla.xul @@ -28,7 +28,7 @@ - + @@ -57,35 +57,60 @@ - - - - - - - + + + + + + + - + - + - - - - - - + + + + + + + + + + + + + + + + + + + + --> - - - - - - - - - - - - - - - - - + + + - - - - + + - - + @@ -196,7 +205,8 @@ - +