#instantbird log on 12 01 2011

All times are UTC.

00:04:10 <-- ecaron has quit (Quit: Instantbird 1.1)
00:24:40 --> clokep has joined #instantbird
00:24:40 * ChanServ sets mode +h clokep 
00:26:32 <-- chrisccoulson has quit (Ping timeout)
00:58:04 <-- aleth has quit (Quit: Instantbird 1.2a1pre)
01:37:40 <-- Mook_as has quit (Quit: gone)
02:01:00 --> BlueMaxima has joined #instantbird
02:05:48 <-- gmoro_ has quit (Ping timeout)
02:09:26 --> gmoro_ has joined #instantbird
04:33:16 <-- clokep has quit (Quit: Instantbird 1.2a1pre)
05:00:46 <-- Suiseiseki has quit (Connection reset by peer)
05:23:18 --> Mook has joined #instantbird
05:28:51 --> billysanca has joined #instantbird
05:29:08 <-- billysanca has quit (Quit: Instantbird 1.2a1pre)
05:30:47 --> waynenguyen has joined #instantbird
05:47:35 --> Suiseiseki has joined #instantbird
05:54:48 <-- Mook has quit (Quit: ChatZilla 0.9.87-rdmsoft [XULRunner 6.0/20110811165603])
06:10:38 --> hunsly has joined #instantbird
06:58:47 <-- hunsly has quit (Connection reset by peer)
07:10:05 --> myk has joined #instantbird
08:11:20 --> jb has joined #instantbird
08:20:09 --> chrisccoulson has joined #instantbird
08:23:31 <-- myk has quit (Ping timeout)
08:40:10 --> Mic has joined #instantbird
08:40:10 * ChanServ sets mode +h Mic 
08:43:14 <-- Novarg has quit (Ping timeout)
08:43:21 --> Novarg has joined #instantbird
08:46:51 <-- jb has quit (Ping timeout)
08:48:20 --> Tomek has joined #instantbird
08:57:00 --> jb has joined #instantbird
09:08:10 <-- jb has quit (Ping timeout)
09:20:15 --> flo has joined #instantbird
09:20:16 * ChanServ sets mode +qo flo flo 
09:24:30 --> MadWookiee has joined #instantbird
09:35:35 --> mmkmou has joined #instantbird
09:54:32 --> gerard-majax has joined #instantbird
09:55:28 --> jb has joined #instantbird
09:56:18 --> aleth has joined #instantbird
09:57:03 <flo> Hello :)
09:58:33 <aleth> Hi :)
10:04:17 <BlueMaxima> Hi
10:05:39 <Mic> Hi
10:08:13 <flo> I'm not sure it's a good thing that I'm using clokep's JS-IRC implementation as the reference documentation for how one is supposed to use jsProtoHelper to handle the Join Chat dialog
10:09:08 <-- waynenguyen has quit (Ping timeout)
10:16:38 <aleth> You didn't write jsProtoHelper? or just a long time ago...
10:16:55 <flo> I reviewed that part
10:17:23 <flo> but I don't remember most of our APIs, I keep lxr'ing for usage examples
10:19:45 <aleth> documented-by-example ;)
10:20:10 <flo> except JS-IRC isn't in lxr yet ;)
10:30:58 <-- Tomek has quit (Ping timeout)
10:37:41 <-- jb has quit (Ping timeout)
10:38:09 --> jb has joined #instantbird
10:40:30 * Mic is now known as bp
10:41:30 <flo> bp: you are still red if you just /nick ;)
10:41:49 <bp> ;)
10:42:05 * bp is now known as Mic
10:42:10 * Mic is now known as bop
10:42:13 * bop is now known as bp
10:42:15 <-- jb has quit (Connection reset by peer)
10:42:36 <-- bp has quit (Quit: Instantbird 1.2a1pre)
10:42:40 --> Mic has joined #instantbird
10:42:40 * ChanServ sets mode +h Mic 
10:42:47 * Mic is now known as bp
10:42:54 <bp> hmm
10:43:23 <bp> Putting a conversation on hold and restoring it changes the color for me
10:43:31 <bp> That's a bug, I'd say.
10:44:02 <flo> yeah, it's a bug. Probably not worth fixing though
10:48:54 * aleth is now known as aloha
10:49:12 * aloha is now known as aleth
10:49:40 <aleth> I might as well fix the easy part of it.
10:51:05 <flo> aleth: what's the easy part?
10:52:31 <aleth> modifying updateBuddy to change the color along with the name. I thought it already did that
10:52:54 <bp> The color is kept intentionally.
10:53:31 <aleth> Well, in that case, ok
10:54:01 <aleth> Keep it as it is then :)
10:54:28 <aleth> It does make sense.
11:07:27 --> jb has joined #instantbird
11:12:00 --> clokep has joined #instantbird
11:12:00 * ChanServ sets mode +h clokep 
11:14:18 <clokep> flo: You should document parts as you figure it out again. ;)
11:21:34 <clokep> If I remember it's fairly simple though.:)
11:22:44 <bp> For some nick colors the desaturation effect on context bubbles works quite well while for others (blueish colors) it doesn't :(
11:35:16 --> waynenguyen has joined #instantbird
11:40:37 <-- MadWookiee has quit (Ping timeout)
11:56:04 <-- clokep has quit (Quit: Instantbird 1.2a1pre)
12:05:26 <-- bp has quit (Ping timeout)
12:10:36 --> MadWookiee has joined #instantbird
12:16:46 --> Mic has joined #instantbird
12:16:46 * ChanServ sets mode +h Mic 
12:20:20 <-- gmoro_ has quit (Quit: Leaving)
12:20:43 --> gmoro_ has joined #instantbird
12:51:31 <-- Mic has quit (Quit: Instantbird 1.2a1pre)
12:51:47 --> clokep_work has joined #instantbird
12:51:47 * ChanServ sets mode +h clokep_work 
12:55:35 <clokep_work> flo: By the way, if you need to pick my brain about the APIs in jsProtoHelper feel free. :)
13:04:49 <flo> clokep_work: I think I've already figured out what I needed
13:05:21 <flo> I wanted something that wasn't really possible (default values for chat room fields that depend on the account), so I hacked my way around it ;)
13:05:53 <flo> with a code like this: http://pastebin.instantbird.com/1143
13:07:10 <clokep_work> I see. That's for the nick I'd guess?
13:07:15 <flo> yes
13:07:21 <clokep_work> Defaulting the nick to the current nick.
13:07:36 <flo> libpurple does that
13:07:37 <clokep_work> Or the current jid it seems. ;)
13:07:44 <clokep_work> Yeah, it makes sense.
13:08:04 <flo> it also defaults the server to what it has discovered using XMPP service discovery, but I haven't implemented that yet
13:11:31 <clokep_work> Ah, interesting.
13:12:37 --> deOmega has joined #instantbird
13:13:29 <deOmega> good day.   I hope things are going well for everyone. 
13:14:05 <flo> deOmega: Hello :)
13:14:10 <deOmega> Was there an addon or a fix to prevent or hide the display of joins, parts, nick change etc etc in irc channels?
13:14:43 <clokep_work> No.
13:14:53 <deOmega> ok.  thx
13:15:05 <clokep_work> I think you filed a bug about it though. ;)
13:15:35 <deOmega> clokep_work: man my memory.   Really sorry
13:16:00 <clokep_work> deOmega: No problem. I'm pretty sure we've talked about it before, but possibly it was with someone else. :)
13:16:21 <deOmega> I am pretty sure i have asked teh same question a few times, and will again..  so ignore me when i do
13:16:23 <clokep_work> Bubbles collapses them, but it won't hide all. I suppose you could modify a message theme to not show them?
13:16:48 <clokep_work> Nah it's fine. :)
13:17:27 <deOmega> i think it is apretty god idea for  very active irc channels.  I tried migrating from  MIRC to  IB, because I am using   less alerts in teh rooms
13:17:30 <flo> deOmega: if we ignore you, you will wonder if we have seen the question, and ask again, won't you? ;)
13:18:44 <deOmega> but found two blockers.    Hiding the events and the inability to   have it remember individual channel window positions on relaunch (I think I recently filed a bug for the latter)
13:19:07 <deOmega> flo: Ignore  meaning,  take me lightly as opposed to an annoyance.
13:19:45 <clokep_work> "remember individual channel window positions" you mean if you uopen up channels in separate windows and tile them (for example) you want it to reappear like that?
13:20:17 <deOmega> yes
13:20:22 <deOmega> exactly
13:22:02 <aleth> Like clokep_work says, modifying a message style to not display system messages at all would not be hard. Just delete everything apart from the opening/closing div tags in Status.html and NextStatus.html should do it I think.
13:22:57 <flo> aleth: why not remove the divs too?
13:23:53 <aleth> flo: sure, try that too, but without testing I don't know how the parser would respond to an empty or absent Status.html
13:24:19 <aleth> (or without looking at the code)
13:24:29 <flo> I'm not really sure either
13:24:43 <aleth> While simply displaying nothing should be unproblematic.
13:24:47 <flo> but if we can avoid inserting DOM nodes we don't want, that's better :)
13:24:52 <aleth> Of course
13:26:35 <aleth> Well, deOmega can try it and see :)
13:26:42 <flo> Psi is really hard to use :(
13:28:09 <deOmega> aleth: Sorry, but   to be honest,  this is gibberish to me:   Just delete everything apart from the opening/closing div tags in Status.html and NextStatus.html should do it 
13:28:33 <clokep_work> The other issue is that it would remove the status messages from every protocol, not just IRC. ;)
13:28:38 <clokep_work> flo: Psi?
13:29:03 <deOmega> I am fine removiing all status messages
13:29:18 <deOmega> the big red, orange or green dot works well for me
13:29:23 <flo> clokep_work: trying to create an XMPP MUC. Our current libpurple plugins fails to do that (maybe because we don't handle the purple_request API)
13:29:41 <flo> (although psi created the room without asking anything more...)
13:30:52 <aleth> deOmega: A message style (when not built in) comes as an add-on which is basically a .zip file called .xpi so you can tell it's an add-on. Inside there are a bunch of files, among them the ones I mentioned.
13:31:27 <flo> Psi sends a <x xmlns="jabber:x:data" type="submit" /> stanza that I didn't expect to see in the log, so maybe that's why it doesn't work with instantbird
13:31:38 <aleth> deOmega: For an example of a slightly modified bubbles message style as an add-on you can look at this https://addons.instantbird.org/en-US/instantbird/addon/302/
13:31:58 <flo> things seem quite broken with the libpurple plugin anyway (or the jabber.org server is broken (or both!))
13:33:56 <clokep_work> Ah, Psi is an XMPP client. :)
13:34:09 <aleth> It's a bit disappointinig if a client that only does XMPP does that in a nonstandard way
13:34:30 <clokep_work> I randomly can't get into XMPP rooms with libpurple/Instantbird. But there's no errors or sSTR.
13:34:36 <flo> aleth: well, I can't really figure out how the UI works, so I may just be doing something wrong :)
13:34:45 <deOmega> aleth: thank you,  i have tried modifying  message styles before and should have indicated that, but  the instructions u gave went over y head at the moment.  WIll try to explore and truly appreciate your attention.
13:35:17 <deOmega> BUt,m    in my mind, this is not really an individual  issue.. does this look like a room or a service anyone would want to be using?  
13:35:19 <deOmega> http://i42.tinypic.com/35coby0.jpg
13:35:47 <flo> deOmega: this looks like a message theme I wouldn't be using
13:36:07 <aleth> deOmega: That's why the bubbles style collapses system messages ;)
13:37:13 <deOmega> OK, thank you
13:37:39 <flo> http://lxr.instantbird.org/instantbird/source/instantbird/content/joinchat.js#139 sucks :(
13:37:40 <deOmega> so teh solution is based on one  message  style
13:38:04 <flo> paper sheets also collapses system messages
13:38:10 <aleth> deOmega: It's the message style that decides how things get displayed
13:40:22 <clokep_work> flo: I filed a bug on that in fact. ;)
13:40:22 <deOmega> I have tried every message style that has been  created, and applaud some of the new ones... but they just do not seem to work for me, so this is really  I see then a personal issue, and so i need to adapt.
13:40:40 <flo> clokep_work: but do you have an acceptable solution to propose for it?
13:41:05 <flo> (I mean, a solution that doesn't involve redesigning completely the current sucky auto-join feature)
13:41:07 <aleth> deOmega: It's not that you need to adapt, it's that it sounds like you want to develop/customize your own message style :) Which is not that hard
13:41:08 <deOmega> I am almost 50.  What is  a snap for some of you guys is not for me at this stage (and getting harder I am  finding)
13:41:33 <deOmega> I am willing to pay someone to develop one
13:41:42 <deOmega> so if you like i would pay you to develop one
13:42:23 <flo> deOmega: unfortunately you can't pay someone to describe what *you* want, and that's the first thing that's needed before someone can start coding ;)
13:42:49 <deOmega> feel free to message me at jahkae@gmail.com with terms and I will   tell you what i am looking for.
13:43:23 <deOmega> flo: I am not that simple.  I know that much
13:43:55 <flo> deOmega: describing what one wants is often surprisingly difficult ;)
13:44:43 <flo> there are things that aren't fixed because of technical issues, but lots of things that aren't fixed are also because even though it's obvious the current behavior is wrong, nobody knows what a good behavior could be.
13:45:19 <aleth> And if you do have a style you otherwise like, but just want to remove the status messages, that's not something you have to pay anyone for.
13:45:19 <clokep_work> flo: any ideas I had would be in bug 623
13:45:22 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=623 nor, --, ---, nobody, NEW, Auto-Join option field is hard coded for certain protocols
13:45:25 <-- XaviorPenguin has quit (Quit: Instantbird 1.1)
13:46:26 <aleth> deOmega: Are you on linux? The forgetting of window positions is a mozilla bug there.
13:46:43 <flo> clokep_work: so just add a |readonly attribute canAutoJoin| flag on prplIAccount?account?
13:46:45 <deOmega> Windows 7
13:46:50 <flo> s/account\?//
13:46:55 --> XaviorPenguin has joined #instantbird
13:47:23 <flo> aleth: his problem with the window positions is that he is using several different windows, and we currently remember only the position of one conversation window
13:48:12 <aleth> Ah OK. More like "I'd like session restore" then
13:48:53 <flo> hmm, yes
13:49:18 <aleth> Because just restoring the windows with nothing in them is not helpful either.
13:50:18 <deOmega> aleth: they would be very active windows, so they would not stay empty for long.
13:50:28 <clokep_work> flo: Yes that should do it.
13:50:29 <deOmega> I do it with mirc currently
13:51:12 <flo> aleth: I think we would need to store some window information (size, position) for each conversation that wasn't in the main conversation window, and restore that instead of just adding a tab to the main window
13:52:34 <aleth> Actually, might 'session restore' not be a reasonable replacement for 'auto-join'? Would take it out of the code you were just looking at.
13:52:41 <flo> clokep_work: http://lxr.instantbird.org/instantbird/source/instantbird/content/joinchat.js#74 doesn't even work
13:52:48 <flo> there's no .visible property on XUL elements
13:52:51 <flo> only .hidden
13:53:59 <clokep_work> :(
13:54:06 <clokep_work> Well that stinks.
13:55:33 <flo> yeah, I just wasted some time wondering why it wasn't saved when I checked the auto-login checkbox ;)
13:55:39 <-- Tobin has quit (Ping timeout)
13:56:41 --> Tobin has joined #instantbird
13:57:13 <-- BlueMaxima has quit (Quit: Instantbird 1.1)
13:59:42 <-- XaviorPenguin has left #instantbird ()
14:01:18 <-- Tobin has quit (Connection reset by peer)
14:01:36 --> Tobin has joined #instantbird
14:05:36 <flo> clokep_work: http://lxr.instantbird.org/instantbird/source/instantbird/content/joinchat.js#143 the code at lines 143-147 and 156-157 makes me sad too :(
14:07:46 <flo> http://lxr.instantbird.org/instantbird/source/chat/components/public/imIAccount.idl#56 really needs a getter returning a serialized version
14:15:56 <deOmega> so, i have the nasty habit of typing messages in teh wrong window
14:16:23 <deOmega> the buddy icons and configuration of the theme i am using has absolutely   eliminated that
14:17:09 <deOmega> of course it is as a result of the enhancements that has been made  to Ib over the past year or so
14:17:13 <flo> so you mean you want your theme to show the buddy icon for each message?
14:17:57 <deOmega> So as a recovering alcoholic, it has been about 6 months or so  since i have  typed in the wrong window  (I think) 
14:18:03 <deOmega> yes
14:18:34 <deOmega> as=like
14:18:46 <flo> ;)
14:19:23 <deOmega> I do not drink alcoholic bevs :)
14:19:54 <flo> I don't think that changes the need for icons in message themes though ;)
14:20:28 <deOmega> There is a new message style that enhances the  user icon, but the  message and teh icon takes up too much space
14:20:41 <deOmega> this is really the only message style that simply works for me
14:21:15 * flo would like if someone could add the icons in bubbles in a good looking way
14:21:53 <deOmega> icon-wise and compact message spacing, so i  can see someone's ramble, and their image next to it, so i know  at a glance who it is or more importantly, who it is NOT :)
14:22:53 <flo> still want to avoid saying things to your wife? :-P
14:23:02 <deOmega> Yup!
14:24:43 <aleth> deOmega: In case you don't know, I think minimal2 supports user icons. And so does this one but it's less compact https://addons.instantbird.org/en-US/instantbird/addon/311/
14:25:07 <deOmega> yes, i think i have tried them all
14:25:22 <deOmega> wel, except the horrible looking ones.
14:25:43 <deOmega> but  every new one, i have  tried.
14:26:04 <deOmega> I really liked  bubbles, but the  user icon  became an issue
14:26:12 <deOmega> lack of
14:27:08 <aleth> Personally I'm glad for their absence... I guess preferences differ.
14:27:30 <deOmega> Absolutely.  And i truly respect that as well as understand it
14:28:15 <flo> aleth: I think presence/absence of buddy icons would be a quite decent use of variants. The colors in the way it's done now are quite pointless :(
14:28:20 <deOmega> when something works for me, i also wonder if my preference is really the best way though
14:28:48 <aleth> flo: Yes, colour variants are Just Wrong. There should be a color picker for that.
14:33:06 <aleth> User icons for bubbles wouldn't be easy, because you'd want them outside the bubble ;)
14:34:22 <flo> and vertically centered
14:34:42 <aleth> Yup. Lining up with that img
14:47:29 <flo> clokep_work: http://pastebin.instantbird.com/1145 do you think "</stream:stream>" is actually sent before closing the socket when executing this code?
14:58:44 <-- waynenguyen has quit (Ping timeout)
14:59:23 --> ecaron has joined #instantbird
15:05:23 <flo> we may have a few students from the university of Every working on Instantbird-related projects this year again (as part of a Mozilla course they are taking).
15:05:45 <flo> last year I have https://wiki.instantbird.org/Instantbird:extension_wish_list as the page with project ideas
15:05:57 <flo> we should probably check that the ideas there still make sense
15:06:35 <flo> s/Every/Evry/
15:08:54 * flo thinks deOmega's idea of restoring the position of each conversation window could totally go in that list
15:09:18 <aleth> In fact Session Restore would make a great add-on
15:09:39 <aleth> And I think Status Restore is broken, you said?
15:10:00 <flo> I don't even the first idea of that list
15:10:43 <aleth> It seems to have a couple of odd items
15:10:46 <flo> OTR!
15:10:52 <flo> that should go in that list :-D
15:10:53 <aleth> Good idea!
15:10:57 <flo> (if it isn't there already)
15:11:13 <aleth> Make the list full of actually useful things, ditch the "let me google that for you" trivia
15:11:53 <aleth> QQ is listed
15:12:08 <flo> lmgtfy is fun
15:12:15 <flo> I would probably actually use it! :)
15:12:18 <aleth> I guess...
15:12:36 <aleth> It certainly has a use case :)
15:12:55 <ecaron> Are the ideas only for add-ons? Or would something that'd be more like a core adjustment be feasible for the list? Namely I'm thinking about a way to access logs for offline buddies and making pulling up the log for a person from within the conversation dialog seem more intuitive?
15:12:59 <aleth> Buddy pounce is there, that's the other one that came to mind
15:13:10 <flo> hmm, should I just remove the ideas I don't like, or move them to another page/ a section at the end?
15:13:25 <aleth> Sound notifications are done already, right?
15:13:33 <aleth> (at least I think there was an add-on)
15:14:08 <flo> ecaron: we can tell students to work on patches. Whatever makes them use Mozilla technologies is acceptable.
15:14:26 * ecaron wishes my college had a cool program like that
15:14:33 <aleth> flo: I'd say make sure the most desired ones are most visible, maybe add a "just for fun" section
15:14:47 <aleth> Remove obsolete ones
15:14:52 <flo> producing a patch may be more difficult for them though, as they may have a hard time compiling Instantbird, and the add-ons have the nice benefit that they can be demoed on the already released version of Instantbird
15:15:08 <aleth> Some make no sense to me :|
15:15:19 <ecaron> Also both interpretations of "contact search" would make good add-ons, and also probably garner more vocal support from the VC people who asked for them in the first place.
15:15:39 <flo> also, for add-ons, we can accept a much lower code quality (basically, if it works and doesn't cause security issues, it's OK)
15:15:42 <aleth> Patches would be harder as they probably have limited time
15:15:52 <flo> for patches, we want code that is maintainable
15:16:38 <ecaron> Ah, makes sense. Would either of my ideas be feasible as add-ons? (Sorry that they're primarily about scratching my own itch)
15:17:47 <flo> ecaron: we shouldn't include things that make them think about UX (or desappointing results are garanteed :()
15:18:16 <aleth> And 'Better log handling' is a really major project
15:18:32 <flo> I've no idea of what you actually want to see implemented when you say "a way to access logs for offline buddies". It's already possible to show offline buddies in the contact list, and then see the logs from the context menu
15:19:06 <flo> "making pulling up the log for a person from within the conversation dialog seem more intuitive" this sounds a lot like "add a context menu on the top toolbar of the conversation window, which is clearly a bug already on file.
15:19:30 <ecaron> Right, but if you have 400+ buddies, it sucks to have to do that and scroll/search forever to pull up the log for them. Pidgin's implementation of that need really nails it.
15:20:04 <flo> I've no idea of what pidgin does for that
15:20:07 <ecaron> No, it doesn't sound anything like "add a context menu". When you see the person's icon, you expect to be able to right-click on it and access the same menu as when you click their name in the contact list.
15:20:37 <ecaron> The same menu that you see when you right-click their status icon in their tab.
15:20:56 <flo> how is that not adding a context menu?
15:22:44 --> myk has joined #instantbird
15:23:02 <-- myk has quit (Quit: Instantbird 1.1)
15:23:08 <ecaron> I read "on the top toolbar of the conversation window" as implying a need for a menu bar.
15:25:30 <aleth> ecaron: bug 859 I believe
15:25:33 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=859 min, --, ---, nobody, NEW, Add context menu to 'conv-top'
15:26:19 <flo> yes
15:26:25 <ecaron> Spot on. I was searching the other 38 context menu bugs to see which one it was.
15:26:42 <flo> the coding work for that is probably quite easy
15:26:54 <flo> deciding what should be in that menu may not be as easy
15:27:49 <ecaron> flo: What's your preferred method for sharing screenshots?
15:28:00 <flo> imgur seemed to work
15:28:16 <flo> I tend to scp to an HTTP-accessible folder of my own server
15:28:34 <aleth> or attach it to the bug
15:28:46 <aleth> (if related)
15:28:52 <flo> sure! :)
15:29:00 <ecaron> (btw, if just moved from etherpad to etherpad-lite on our internal server - OMG IT IS SO MUCH BETTER)
15:30:09 <ecaron> flo: Other chat programs have a File -> Show User Log option, and when you click it you're brought to this dialog: http://imgur.com/9Xnjj
15:30:23 <ecaron> You just start typing the name and it autocompletes.
15:31:02 <flo> hmm, yeah...
15:31:11 <flo> we can hopefully do way better than that
15:31:19 <aleth> Not sure that's the best possible solution
15:32:01 <flo> the case that's currently very painful in Instantbird is finding a log of a conversation you have had with someone who isn't in the contact list
15:32:38 <aleth> Logs in general are painful currently. grep is the best way to access atm. But this is a known issue
15:33:15 <flo> we need awesome logs ;)
15:33:26 <ecaron> Bug 843 is the one that's starting that conversation, right?
15:33:29 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=843 nor, --, ---, nobody, UNCO, Three column log window
15:33:43 <ecaron> Although its title kind of buries the depth of the plan.
15:34:19 <flo> I don't like that either
15:34:31 <flo> my (secret?) plan is to remove the log viewer
15:34:50 <aleth> Infinite scroll & good search ftw
15:34:53 <flo> yeah
15:35:19 <flo> opening a conversation with the last messages displayed and not typing anything is basically the same action as checking the logs. Why would we have 2 different UIs for that?
15:35:39 <aleth> Exactly.
15:35:51 <flo> the only problem is that it makes it hard to search for something when you don't know who said it
15:36:01 <flo> (or in which room it was said)
15:36:22 <aleth> Not necessarily - that could be a (global) Search menu item in the Contacts window
15:36:38 <aleth> Though it would be a lot of work
15:36:42 <flo> we need meta-conversations
15:37:20 <flo> that can display parts of several other conversations, and redirect you to the specific conversation (= open and select the tab) if you double click on a part of a specific conversation
15:37:35 <aleth> Right, for listing search results
15:38:08 <flo> aleth: it's also the "MUC-style IM overview" idea of the wish list
15:38:45 <aleth> Is that even doable as an add-on?
15:38:53 <flo> why not,
15:38:53 <flo> ?
15:39:34 <aleth> I meant doable in a way you'd like to incorporate as a patch later
15:39:52 <flo> the add-on is to try the UX
15:39:57 <aleth> Ah OK
15:39:59 <flo> we can rewrite the code later
15:49:46 <-- aleth has quit (Quit: Instantbird 1.2a1pre)
15:53:24 <-- jb has quit (Ping timeout)
15:55:26 --> jb has joined #instantbird
16:17:49 --> XaviorPenguin has joined #instantbird
16:28:27 <flo> hmm, time to look at JS-IRC again. I wonder what I'm supposed to put in _participants ;)
16:29:24 <flo> ah, instances of GenericConvChatBuddyPrototype :)
16:37:06 --> Tomek has joined #instantbird
16:37:34 --> clokep_wp7 has joined #instantbird
16:38:59 <clokep_wp7> Flo: I doubt that message actually gets sent before closing the stream. If there is a response we should wait for it before closing.
16:39:27 <flo> I don't think there's a response coming
16:39:31 <clokep_wp7> And i had the ChatFields structure too.
16:39:49 <flo> but the jabber.org server seems to behave strangely if I reconnect immediately after that
16:39:55 <clokep_wp7> Ok. :-(
16:40:23 <flo> it seems that I can reconnect with the same resource, and then when my first connection times out, it sends a presence type="unavailable" to the new connection
16:40:37 <flo> so basically my new connection ends up connected but offline (uh?)
16:40:41 <flo> or something messed up like that
16:41:01 <clokep_wp7> Yes, I'd guess it isn't getting sent.
16:41:19 <flo> I wanted to wireshark that, but I forgot
16:41:51 <flo> I would like a "close once the send buffer is empty" method ;)
16:42:07 <flo> another solution would be to just not close the socket
16:42:11 <flo> send, and wait.
16:42:22 <clokep_wp7> Don't we need a send buffer to then? :-P
16:42:27 <flo> when receiving that, the server will close his side of the socket and we will get disconnected
16:42:46 <-- clokep_wp7 has quit (Broken pipe)
16:42:52 <flo> but relying on the server doing the right thing seems wrong to me
16:43:46 --> clokep_wp7 has joined #instantbird
16:44:40 <clokep_wp7> That makes sense i think.
16:45:46 <-- clokep_wp7 has quit (Client exited)
16:51:04 <deOmega> ecaron: When i created that  bug 843, the depth escaped me... and probably still does.   
16:51:08 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=843 nor, --, ---, nobody, UNCO, Three column log window
16:52:58 <flo> r+ in https://bugzilla.mozilla.org/show_bug.cgi?id=697546 :)
16:53:16 <-- mmkmou has quit (Ping timeout)
16:57:00 <deOmega> aleth: this is what i have  in the status html file:  
16:57:03 <deOmega> http://i40.tinypic.com/1fb51.jpg
16:57:46 <deOmega> I  do not see a next starus.htm file
16:57:54 <-- ecaron has quit (Ping timeout)
16:58:24 <deOmega> are u saying to  delete everything except 1, 2 and 10?
16:59:05 <flo> deOmega: he was staying everything but 1, 2 and 8
16:59:09 <flo> *saying
16:59:44 <deOmega> uh oh.  :)
16:59:56 <deOmega> Thank you
17:00:51 --> hunsly has joined #instantbird
17:04:13 <-- hunsly has quit (Ping timeout)
17:07:52 <-- deOmega has quit (Quit: Instantbird 1.2a1pre)
17:09:13 --> mmkmou has joined #instantbird
17:10:30 --> deOmega has joined #instantbird
17:10:47 <deOmega> that was simply fantastic!
17:11:50 <deOmega> Thanks for the tips.    that problem has been resolved.  Only thing i needed to change was the status html.
17:12:37 <XaviorPenguin> Hey, just wondering.  The Buddy List window, in Windows, it keeps position but in Linux, it does not, when you minimize or restore from tray.  Is that because it is an OS issue or a program settings issue?  I am sharing my profile (working just fine by the way) on the same machine dual booting with Win7 and xubuntu.
17:18:11 <clokep_work> XaviorPenguin: Mozilla code has issues remembering window positions on Linux.
17:18:24 <XaviorPenguin> Ok, tis what I thought, rock on
17:19:39 <clokep_work> Yeah. :( It really sucks though.
17:19:49 <flo> someone should fix it ;)
17:20:00 <flo> with a test, so that it doesn't regress! :)
17:20:02 <clokep_work> flo: I agree that relying on the server is the "wrong" way. You could put a timeout in of 15? 30? seconds? But that's ugly too.
17:20:21 <flo> wouldn't 1 be enough?
17:20:57 <clokep_work> Not if someone has a really crappy connection?
17:21:01 <flo> if your connection can't send 16 bytes within a second, you are likely to timeout anyway, won't you? ;)
17:21:38 <clokep_work> I suppose.
17:23:03 --> hunsly has joined #instantbird
17:31:07 --> ecaron has joined #instantbird
17:31:34 --> ecaron1 has joined #instantbird
17:32:56 <-- ecaron has quit (Ping timeout)
17:33:23 <-- ecaron1 has quit (Ping timeout)
17:34:20 <deOmega> have a great day  folks and a fantastic Christmas season.  
17:35:09 <deOmega> for some reason, today, i am forgetting that this window minimizes to teh  contact list instead of closing .
17:35:34 <-- MadWookiee has quit (Quit: Instantbird 1.1)
17:36:20 <deOmega> btw,  ecaron emailed me regarding a blog.. did not  get a follow-up response  from him.
17:36:24 <clokep_work> Thanks deOmega! You too. :)
17:36:37 <deOmega> :)
17:37:02 <-- deOmega has left #instantbird ()
17:46:41 --> Mook_as has joined #instantbird
17:48:31 <-- XaviorPenguin has left #instantbird ()
18:01:00 --> ecaron has joined #instantbird
18:05:25 <-- flo has quit (Quit: Instantbird 1.2a1pre)
18:08:16 <-- clokep_work has quit (Quit: http://www.mibbit.com ajax IRC Client)
18:09:48 <-- gerard-majax has quit (Ping timeout)
18:21:18 --> clokep_work has joined #instantbird
18:21:19 * ChanServ sets mode +h clokep_work 
18:40:37 <-- ecaron has quit (Quit: Instantbird 1.1)
18:45:36 <-- hunsly has quit (Ping timeout)
18:51:40 --> Mnyromyr has joined #instantbird
19:03:42 <-- mmkmou has left #instantbird ()
19:05:29 --> gerard-majax has joined #instantbird
19:08:13 --> hunsly has joined #instantbird
19:18:20 --> ecaron has joined #instantbird
19:23:14 <-- Tomek has quit (Ping timeout)
19:31:44 --> Tomek has joined #instantbird
19:34:31 --> aleth has joined #instantbird
19:51:09 <-- aleth has quit (Quit: Instantbird 1.2a1pre)
19:53:35 --> aleth has joined #instantbird
20:00:53 <-- hunsly has quit (Ping timeout)
20:09:21 --> Plop has joined #instantbird
20:12:02 <-- Plop has quit (Ping timeout)
20:12:57 --> Plop has joined #instantbird
20:14:37 <-- Plop has quit (Ping timeout)
20:14:48 --> Plop has joined #instantbird
20:16:02 <-- jb has quit (Ping timeout)
20:17:39 --> Mic has joined #instantbird
20:17:39 * ChanServ sets mode +h Mic 
20:18:02 <Mic> Hi
20:23:06 * aleth is now known as xps
20:25:09 <-- Plop has quit (Ping timeout)
20:25:14 --> Plop has joined #instantbird
20:27:05 <clokep_work> ecaron: deOmega said he answered your email earlier but never heard a response, not sure if it went into your spam, etc.
20:27:07 --> flo has joined #instantbird
20:27:07 * ChanServ sets mode +qo flo flo 
20:27:34 * xps is now known as aleth
20:27:50 <-- chrisccoulson has quit (Ping timeout)
20:29:04 * Mic hopes that the Wikimedia foundation doesn't have too many employees. I'm tired of it after two 'personal appeal's already.
20:36:04 * ecaron hopes the next wikimedia employee is hot
20:37:26 * ecaron perhaps working on a beach somewhere
20:37:45 <ecaron> prudes
20:38:07 <ecaron> instantbot: back me up
20:38:10 <instantbot> ecaron: Sorry, I've no idea what 'back me up' might be.
20:42:30 <clokep_work> ecaron: But if it drives more traffic to WP, wouldn't that cost more money? ;)
20:42:54 <flo> I don't think they pay for the hosting
20:43:12 <ecaron> :) I figured unique visitors would go up, but page views would go down because you'd have no reason to surf around.
21:15:30 <Mic> flo: is bug 1117 the expected behaviour or a real bug?
21:15:33 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=1117 nor, --, ---, nobody, NEW, No user icons on tooltip for offline contacts
21:16:42 <flo> Mic: probably a bug
21:17:04 <flo> by the way, I don't think JS-XMPP behaves this way
21:19:15 <Mic> hmm, the thing about ICQ doesn't seem to be 100% true. I have one offline contact with icon but he was still online minutes ago.
21:19:47 <-- ecaron has quit (Ping timeout)
21:19:56 <Mic> Thanks for commenting, let's wait what JS-XMPP will do :)
21:19:59 <aleth> libpurple-xmpp also has the little lightbulb behind the offline symbol, that's all I can check right now
21:20:23 * flo wonders why aleth is blue this evening
21:20:41 <aleth> I think I briefly changed my nick earlier today
21:20:49 <flo> oh, xps
21:21:47 <aleth> Just put the conv on hold briefly if you want the old color back ;)
21:21:59 --> ecaron has joined #instantbird
21:22:44 <Mic> Good night.
21:22:52 <-- Mic has quit (Quit: Leaving.)
21:23:06 <clokep_work> Mic: The bug might not hold true if they were online during the session.
21:23:43 --> chrisccoulson has joined #instantbird
21:24:07 <-- ecaron has quit (Ping timeout)
21:24:10 --> ecaron has joined #instantbird
21:29:05 <-- clokep_work has quit (Quit: http://www.mibbit.com ajax IRC Client)
21:44:47 --> DGMurdockIII has joined #instantbird
22:05:19 <flo> clokep: https://twitter.com/#!/twitterapi/status/142362890689712128 ! :)
22:07:37 <-- gerard-majax has quit (Ping timeout)
22:15:09 --> jb has joined #instantbird
22:24:11 --> clokep has joined #instantbird
22:24:11 * ChanServ sets mode +h clokep 
22:28:35 <clokep> flo: Varuna just made two check-ins to his repo today?
22:28:49 <flo> wow
22:29:40 <clokep> I guess the question mark is "did you know". :)
22:30:18 <flo> no
22:30:31 <flo> but I noticed he was connected to gtalk this afternoon
22:30:33 <flo> (using gmail though)
22:46:19 --> jb1 has joined #instantbird
22:46:55 <-- jb has quit (Ping timeout)
22:49:08 <-- jb1 has quit (Quit: Instantbird 1.1)
22:50:09 --> XaviorPenguin has joined #instantbird
22:50:14 <-- XaviorPenguin has left #instantbird ()
22:56:41 <flo> clokep: how soon do you intend to handle localizability in JS-IRC?
22:57:57 <clokep> flo: I can do it sooner rather than later if you'd ike.
22:59:32 <-- ecaron has quit (Quit: Instantbird 1.1)
23:01:48 <flo> it shouldn't be too hard with the l10n helper we wrote :)
23:02:03 <flo> clokep: well, how soon would you like js-irc to be integrated?
23:02:10 <flo> we can't integrate something that isn't localizable
23:02:21 <flo> (well, we can, but then we can't release; which isn't a good state to be in)
23:02:21 <clokep> Did you review it today?
23:02:35 <clokep> I think we can integrate it as soon as I strip or handle IRC formatting characters.
23:02:57 <flo> I thought I would. But I talked with people over IM... and my evening disappeared :-S
23:03:19 <flo> I'm looking at it right now, but too tired to give really useful comments
23:05:56 <flo> I've a trivial comment for ircCommands.jsm. You have lots of methods that do: |if (...) { /* several lines of code */ return;} return false;|
23:06:10 <flo> if you reverse the test and return false early, then you can reduce the indent of the whole function
23:06:23 <clokep> Alright.
23:06:38 <clokep> I'll take a look at it.
23:06:56 <flo> that's just a coding style nit of course. Not something important
23:08:45 <flo> for the localization, I think all the command helpString will become getter. Is that right?
23:09:09 <clokep> I believe so.
23:09:42 <flo> you may want to have the getter return this.name + localized string.
23:09:55 <flo> this way you are sure the localizer won't attempt to translate the command name
23:10:15 <clokep> Good idea. :)
23:10:18 <flo> + in the case of the /join and /j command, you can use one localized string for both help messages
23:12:47 <flo> do your DEBUG/LOG/WARN/ERROR call report the correct locations?
23:14:45 <flo> clokep: I suspect the registerCommands function in your ircUtils file isn't very helpful
23:15:06 <flo> I don't see any loadCategory function, so I don't see why that's exported in that module
23:16:34 <clokep> It's possible some things are artifacts.
23:16:41 <-- Mnyromyr has quit (Quit: ChatZilla 0.9.86 [SeaMonkey 1.1.19/2010030105])
23:17:04 <flo> clokep: probably. I'm just flagging things that seem like they need an editor pointed at them ;)
23:17:25 <clokep> flo: Of course! Just saying I might also have no idea what it's from. :-D
23:17:47 <flo> just fix it in that case :)
23:17:55 * Mook_as mumbles about string concat being evil for user-visible things, but is without context and is therefore probably wrong
23:18:27 <flo> the ircAccounts exported global variable seems like something I won't like, but I haven't read enough of the code to propose something else
23:18:55 <flo> Mook_as: what are you talking about? :)
23:19:19 <Mook_as> the this.name + localized string. thing, except I don't know what getter it is :p
23:19:21 <clokep> flo: It's to be able to reference the JS account objects from other modules (e.g. in ircCommands.jsm).
23:19:26 <flo> we could also use a formatted string
23:19:30 <clokep> Mook_as: It's for a command name.
23:19:46 <flo> Mook_as: it's for the string you see when you type /help join
23:19:59 <Mook_as> then, yeah, it should probably be formatted
23:20:34 <flo> Mook_as: yeah, formatting it sounds better. Although I can't imagine any valid reason for that name not being the first thing in the string
23:21:35 <flo> clokep: what's the unregisterHandler function?/why is it commented out?
23:22:16 <flo> "see above for the fields toimplement." missing space here ;)
23:22:23 <clokep> flo: It's supposed to be so you can unregister a handler for IRC or CTCP commands (i.e. if you're uninstalling an extension, you'd want to delete the reference).
23:22:43 <clokep> flo: That space was missed so it would fit on one line! :P
23:25:00 <flo> |if (aCommand in handler.commands)| is aCommand a value from the network? If so, can it have problematic values like "watch", "hasOwnProperties", etc... ?
23:25:48 <clokep> Yes, aCommand is from the network.
23:26:06 <clokep> I need to go through all of the IRC code and use the global hawOwnProperty function you made for Twitter.
23:26:19 <flo> maybe not everywhere
23:26:37 <flo> only on things that can take a random crafted value from the network
23:26:57 <clokep> Like nick names? :)
23:27:05 <flo> ircHandlers.jsm/handleMessage -> I don't see the point of the |handled| variable.
23:27:37 <clokep> It (theoretically) let's it fall through to another handler.
23:27:42 <clokep> CTCP uses it.
23:28:03 <clokep> If I get your question correctly.
23:28:31 <flo> you can write: if (aCommand in handler.commands (fix that test!) &&\n handler.commands[aCommand].call(...)) { LOG(JSON.stringify(aMessage)); return true; }
23:28:36 <flo> and then return false at the end of the function
23:29:23 * clokep will be back (phone)
23:33:52 <flo> ircCtcp.jsm/lowLevelDequote seems quite inefficient
23:34:50 <flo> the (aString[i] == "\0x10") case seems to do the same thing as the next general else case.
23:35:24 <flo> and more generally, it seems you could use indexOf to jump directly to the \020 characters
23:36:01 <flo> or can't that whole function be replaced by a simple regexp replace?
23:37:28 <clokep> flo: I don't think it can be a regexp, but maybe it can be with the sticky flag (I had forgotten that existed at the time).
23:38:03 <flo> wasn't there a way to use replace with a function instead of the replacement string?
23:38:34 <flo> if so the regexp is just /\020./g
23:38:47 <flo> (not sure of how special chars are expressed in regexps
23:38:48 <flo> )
23:38:50 <clokep> Ah, I could do that probably. :)
23:39:14 <clokep> (The case i was concerned about is \020\020\020\020.)
23:39:16 <flo> what happens if the last character of the string is the escape char?
23:39:33 <clokep> I had thought of doing /\020\020/\020/, but that would reduce that to a single \020 instead of \020\020.
23:39:43 <clokep> flo: It blows up most likely.
23:39:59 * flo doesn't like that function
23:40:07 <flo> highLevelDequote looks very similar
23:40:09 <clokep> Is your "fix that test!" above referring to using that hasOwnProperty deal?
23:40:15 <clokep> They're essentailly the same function.
23:40:28 <clokep> CTCP quoting will make you shoot yourself in the foot.
23:40:51 <flo> yes
23:41:20 <Mook_as> just out of curiosity, where is this code? (review request? hg clone?)
23:41:54 <flo> at least using .hasOwnProperty if you have a good reason to think "hasOwnProperty" can't be there already. If you have no way, to know, use the function from imXPCOMUtils
23:42:03 <flo> Mook_as: bug 507
23:42:08 <Mook_as> merci
23:42:10 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=507 enh, --, ---, clokep, ASSI, Implement IRC in JavaScript
23:43:03 <clokep> Mook_as: Feel free to provide any feedback as well.
23:44:05 * clokep is making notes of all this.
23:44:12 <clokep> fixing the easy things now. :-D
23:44:15 <flo> ctcpFormat can probably be simplified too
23:45:47 <flo> hmm, does that couple of function (ctcpFormat + applyFormatting) even work?
23:46:00 <clokep> flo: No, that's broken right now.
23:46:08 <flo> hmm, ok :)
23:46:13 <clokep> (That's what I was discussing before about handling or striping CTCP formatting...)
23:46:23 <clokep> I think it just needs to be added to when I parse the original message actually.
23:47:18 <Mook_as> it looks like using a callback works, yes - "aaaaab".replace(/a./g, function(m, i) m[1]) -> "aab"
23:47:48 <clokep> :) Thank you Mook_as! :)
23:48:01 <flo> clokep: inside var ctcpHandleMessage = function(aMessage) {, whats the if (temp[0]) test for? Does it work?
23:48:23 <Mook_as> I tried to do the lookup too, but I can't think of the equivalent of python's dict().get() :p
23:49:24 <flo> clokep: if the regexp didn't match anything, I think temp is null, so temp[0] will throw
23:49:40 <clokep> flo That handles a case where you do "\x01\x01blahblah"
23:49:49 <clokep> I.e. an epmty CTCP command.
23:50:40 <flo> I don't understand :(
23:50:45 <Mook_as> for ctcpRawMessage - is that supposed to be ([\w\W])* instead of ([\w\W]*) ?
23:50:54 <clokep> No.
23:51:11 <clokep> flo: A ctcp command is encapsulated in \x01\x01 characters.
23:51:15 <Mook_as> temp[0] can be empty (but temp is defined, otherwise it wouldn't be inside the while() loop)
23:51:20 <clokep> So it would be \x01ACTION goes for a walk\x01
23:51:44 <clokep> But you can do more than one in a message: \x01ACTION goes for a walk\x01\x01ACTION reads a book\x01
23:51:48 <flo> Mook_as: ah, right :)
23:52:03 <clokep> But a (stupid) client could send \x01\x01\x01ACTION goes for a walk\x01
23:52:05 <flo> I don't see how it can be empty though
23:52:07 <clokep> Where the first two are an empty command.
23:52:20 <flo> isn't the index 0 the full matched expression?
23:52:30 <Mook_as> clokep: will there be stuff before / after the \x01?
23:52:44 <clokep> Mook_as: Define "stuff".
23:52:50 <clokep> flo: It should be temp[1].
23:53:00 <flo> makes more sense!
23:53:04 <Mook_as> (i.e. can you s/^\x01|\x01$// and split on \x01?)
23:53:46 <clokep> Mook_as: You can't split on it, because it goes before AND after the CTCP message.
23:54:03 <Mook_as> oh, right, split on \x01\x01 then :p
23:54:03 <clokep> But it has to be in pairs.
23:54:49 <clokep> Theoretically you could send this message: "\x01ACTION goes for a walk\x01 some other message content\x01ACTION reads a paper\x01"
23:54:52 <clokep> Yes it's really that ridiculous.
23:55:01 <Mook_as> ick
23:55:09 <clokep> I think the code right now would actually ignore the "some other message content"
23:56:16 <clokep> Mook_as: Now you understand why I wrote a rant in my blog about IRC. ;)
23:56:41 <clokep> Honestly will we ever receive that case? Probably not, but the code wasn't too complicated to handle multiple CTCP requests in a message, so I wrote it.
23:56:54 <flo> the consoleString variable before calling WARN doesn't seem useful
23:57:42 <clokep> Yeah.
23:57:51 <clokep> It was before I had short LOG and WARN functions. :)