#instantbird log on 06 02 2013

All times are UTC.

00:13:37 <-- EionRobb has quit (Ping timeout)
00:14:59 --> dew has joined #instantbird
00:17:05 <-- mpmc has quit (Connection reset by peer)
00:29:27 --> EionRobb has joined #instantbird
00:38:43 <-- rosonline has quit (Client exited)
01:00:35 <-- EionRobb has quit (Ping timeout)
01:46:11 --> Kaishi has joined #instantbird
02:04:25 --> mconley_ has joined #instantbird
02:05:03 <-- mconley has quit (Ping timeout)
02:17:57 --> Mook has joined #instantbird
03:07:42 <instant-buildbot> build #872 of linux-nightly-default is complete: Success [build successful]  Build details are at http://buildbot.instantbird.org/builders/linux-nightly-default/builds/872
03:29:43 <instant-buildbot> build #864 of macosx-nightly-default is complete: Success [build successful]  Build details are at http://buildbot.instantbird.org/builders/macosx-nightly-default/builds/864
03:29:58 <-- wnayes has quit (Quit: wnayes)
03:37:16 <-- mconley_ has quit (Connection reset by peer)
03:37:54 --> mconley has joined #instantbird
03:48:54 --> clokep has joined #instantbird
03:48:54 * ChanServ sets mode +o clokep 
03:56:15 --> dionisos has joined #instantbird
03:58:02 <-- clokep has quit (Connection reset by peer)
04:00:56 <-- mconley has quit (Input/output error)
04:06:25 --> DGMurdockIII has joined #instantbird
04:11:21 <-- DGMurdockIII has quit (Connection reset by peer)
04:26:48 --> mconley has joined #instantbird
04:28:56 <-- dionisos has quit (Ping timeout)
05:03:40 --> FireFly_TB has joined #instantbird
05:10:20 <-- mconley has quit (Input/output error)
05:38:43 <-- douglaswth has quit (Quit: OMGWTFBBQ!)
05:39:21 --> douglaswth has joined #instantbird
06:09:33 <instant-buildbot> build #967 of win32-nightly-default is complete: Success [build successful]  Build details are at http://buildbot.instantbird.org/builders/win32-nightly-default/builds/967
06:12:32 --> zen_monkey has joined #instantbird
06:12:49 <-- zen_monkey has left #instantbird (Saliendo)
06:35:11 --> jb has joined #instantbird
06:36:27 --> jb1 has joined #instantbird
06:37:03 <-- jb has quit (Input/output error)
06:39:13 <-- jb1 has quit (Quit: jb1)
06:39:29 --> jb has joined #instantbird
06:55:31 <-- jb has quit (Quit: jb)
06:55:45 --> jb has joined #instantbird
07:00:02 --> nhnt11 has joined #instantbird
07:01:10 <-- Mook has quit (Ping timeout)
07:01:15 <-- jb has quit (Quit: jb)
07:01:39 --> jb has joined #instantbird
07:05:18 --> Mook has joined #instantbird
07:17:04 <-- jb has quit (Connection reset by peer)
07:31:49 --> jb has joined #instantbird
07:36:56 --> zen_monkey has joined #instantbird
07:37:10 --> Mic has joined #instantbird
07:37:10 * ChanServ sets mode +h Mic 
07:40:41 <Mic> nhnt11: I'll start an etherpad for questions, answers, ideas, comments, .. IRC logs aren't ideal for this ;)
07:44:41 <Mic> https://etherpad.mozilla.org/instantbird-gsoc-2013-awesometab
07:45:58 <nhnt11> Mic: Right we probably should've done that a while ago.
07:46:44 <-- zen_monkey has left #instantbird (Saliendo)
07:50:28 <nhnt11> Mic: Today I want to start by going through whatever I did yesterday and do it again, this time ensuring every small change works before going to the next one and also committing and pushing each step to my repo. It would probably save a lot of debugging later.
07:51:49 <Mic> Good idea, I was a bit afraid you might lose track of some things with so many changes at once ;)
07:53:10 <nhnt11> Mic: I had the same thought before falling asleep yesterday night :P
07:54:03 <Mic> Which revision was yesterdays diff based on btw?
07:56:11 <nhnt11> default
07:56:11 <Mic> Nevermind, I think just messed up my repo.
07:56:22 <nhnt11> Okay
07:57:20 --> EionRobb has joined #instantbird
08:03:50 <Mic> nhnt11: do you know the alltabs menu? That's the menu attached to the arrow that appears when the tab strip is overflowing.
08:03:58 <nhnt11> Oh right.
08:04:04 <nhnt11> Oops
08:05:00 <Mic> You can open several conversations at once when you select multiple participants and press Enter then. In case you'd like to try...
08:06:00 <nhnt11> Mic: I've used the menu, just that I keep forgetting it's called "alltabs" :P
08:07:53 * nhnt11 will be back after lunch
08:12:15 <-- Mook has quit (Quit: Mook)
08:34:16 <-- FireFly_TB has quit (Ping timeout)
09:22:15 <-- instant-buildbot has quit (Quit: buildmaster reconfigured: bot disconnecting)
09:22:21 --> instant-buildbot has joined #instantbird
09:22:21 * ChanServ sets mode +v instant-buildbot 
09:38:46 <-- jb has quit (Ping timeout)
10:03:00 --> mpmc has joined #instantbird
10:17:17 * nhnt11 wonders how much breakage this tabbrowser stuff will cause when "Enable tabbed conversations" is disabled in preferences...
10:24:46 <Mic> nhnt11: I would say none.
10:24:56 <Mic> Or not much at least.
10:26:11 <Mic> The tabbrowser refuses accepting more tabs (that will need some attention) then and the code in imWindows.jsm will spawn a new window as a result.
10:27:42 <Mic> hmm, no. I was describing how the "MUCs in separate window" behavior is implemented.
10:29:01 <Mic> Ah, it works the same for "open in tabs" in general.
10:29:10 <Mic> http://lxr.instantbird.org/instantbird/source/instantbird/content/tabbrowser.xml#397
10:29:36 <Mic> http://lxr.instantbird.org/instantbird/source/instantbird/modules/imWindows.jsm#141
10:54:10 <-- EionRobb has quit (Quit: Leaving.)
10:54:49 <nhnt11> Mic: Right, so it would be like one tab per window, with the tab hidden. Cool.
10:55:49 <nhnt11> I'll be back..
10:55:54 * nhnt11 is now known as nhnt11_away
10:57:42 --> aleth has joined #instantbird
10:57:42 * ChanServ sets mode +h aleth 
11:29:38 --> clokep has joined #instantbird
11:29:38 * ChanServ sets mode +o clokep 
11:38:47 <-- clokep has quit (Quit: Instantbird 1.5a1pre -- http://www.instantbird.com)
11:40:17 --> clokep has joined #instantbird
11:40:17 * ChanServ sets mode +o clokep 
11:40:44 <clokep> Yay, Mozilla 21!
11:41:22 <aleth> Congrats :) That looked like a painful update.
11:41:56 <clokep> It wasn't the most fun. ;)
11:42:01 <clokep> THe next ones are going to be worse. :-/
11:42:14 <aleth> Reasons to be cheerful :-/
11:42:28 <aleth> Why? Big build system changes?
11:43:55 <clokep> moz.build
11:46:06 <-- nhnt11_away has quit (Quit: Instantbird 1.4 -- http://www.instantbird.com)
11:46:17 --> nhnt11 has joined #instantbird
11:46:36 <-- nhnt11 has quit (Quit: Instantbird 1.4 -- http://www.instantbird.com)
11:46:45 --> nhnt11 has joined #instantbird
11:47:37 <-- nhnt11 has left #instantbird ()
11:47:47 <clokep> aleth: They're moving makefile.in contents into "moz.build" files that do special things (I forget what), but they're doing it slowly.
11:47:56 --> nhnt11 has joined #instantbird
11:47:57 <clokep> So each Mozilla update w'ell need to figure out what to move and then edit all our makefiles...
11:48:12 <aleth> Ouch.
11:50:10 <instantbot> clokep@gmail.com requested review from florian@instantbird .org for attachment 2473 on bug 1989.
11:50:13 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=1989 min, --, ---, clokep, ASSI, Port |Bug 659788 - Add icons for Windows 7 jumplist taskbar items.|
11:54:35 <-- nhnt11 has quit (Quit: Instantbird 1.4 -- http://www.instantbird.com)
11:54:45 --> nhnt11 has joined #instantbird
11:56:47 <-- Even has quit (Quit: Instantbird 1.5a1pre -- http://www.instantbird.com)
11:56:55 --> Even has joined #instantbird
11:56:56 * ChanServ sets mode +o Even 
11:57:19 <-- nhnt11 has quit (Quit: Instantbird 1.4 -- http://www.instantbird.com)
11:57:29 --> nhnt11 has joined #instantbird
12:00:46 <-- nhnt11 has quit (Input/output error)
12:00:55 --> nhnt11 has joined #instantbird
12:02:59 <nhnt11> I just saw that my BitBucket repo's access level is "Public". Does that mean anyone can see it, or anyone can push to it? :S
12:03:17 <aleth> Anyone can see it.
12:03:25 <nhnt11> Good :)
12:03:37 <nhnt11> Why would they call that "Access level" :S
12:05:10 <aleth> Is it? Afaik you can see who can push to the repo under "access management"
12:08:27 <-- aleth has quit (Quit: Ciao)
12:08:32 --> aleth has joined #instantbird
12:08:32 * ChanServ sets mode +h aleth 
12:09:25 <clokep> Which is just you, by default. :)
12:11:10 <-- clokep has quit (Ping timeout)
12:28:05 --> Mic|web has joined #instantbird
12:30:48 <-- Mic|web has quit (Quit: http://www.mibbit.com ajax IRC Client)
12:53:12 <aleth> nhnt11: Is the tab context menu really the one thing that is complicating things for you?
12:53:22 <nhnt11> Not really no.
12:53:35 <nhnt11> It's just that I keep losing track of what I'm doing because of so many changes :P
12:53:37 <aleth> What's the biggest problem?
12:53:47 <nhnt11> Hence my decision to do it piece by piece today.
12:54:22 <aleth> It might make sense to draw some charts too... what receives which events etc
12:54:37 <aleth> So you get the structure more or less right before you start coding.
12:55:42 <aleth> A context menu which appears on all tabs could live in instantbird.xul, where the conversation context menu already is.
12:56:18 <aleth> Just in case you hadn't considered that possibility ;)
12:57:30 <aleth> Have you found out if you need to abstract tabs yet, or if it's enough to differentiate at the level of panels?
12:58:15 <-- nhnt11 has quit (Ping timeout)
12:58:37 <aleth> If you put your proposed structure in an etherpad, it's also easier to discuss it than if it's only implicit in a huge diff of code.
12:59:17 * aleth understands why nhnt11 wrote a /logs command addon ;)
13:00:08 <Mic> aleth: I think there should be a way to get logs from log.bezut.info. Ideally as our standard JSON logs ;)
13:00:17 --> nhnt11 has joined #instantbird
13:01:41 <Mic> Recreating the structure on paper's not bad, I frequently find myself staring at the screen and hypnotizing pixels when trying to think about the structure of code ;)
13:02:04 <-- nhnt11 has quit (Ping timeout)
13:02:35 <Mic> Looks like nhnt11 has a flaky connection at the moment :S
13:06:47 <Mic> aleth: the problem is not where to put the context menu when it's used by every tabs. The problem is rather what to do with it when it's not.
13:07:19 <Mic> Conversation tabs should have additional items on theirs, like closing the conversation or showing the logs.
13:07:21 <aleth> Mic: That's not a new problem though. The content context menu fetches protocol-specific entries from the account too.
13:08:03 <Mic> That's exactly what I suggested. Keeping the context menu where it is (in tabbrowser) and extending it with items provided by the tab.
13:08:22 <aleth> Sounds good.
13:08:38 <aleth> The way it's done is to have a "constructor" in JS called by popupshowing.
13:09:55 <aleth> I think it would be useful for nhnt11 to draw a diagram of the various dependencies and what gets called by what before coding
13:11:19 <aleth> I'm not sure it's necessary to abstract tabs, it may be enough to just add some generic methods to panels.
13:11:59 <aleth> But whatever the best solution, it's useful to discuss it before coding it ;)
13:17:19 <aleth> Then again, finding a way to share a diagram drawn on paper might cost too much time too.
13:18:17 <Mic> Telefax? :P
13:18:56 <aleth> Classic image sharing :P
13:19:03 <Mic> Snail mail?
13:19:14 <aleth> Put the negatives in the post...
13:20:01 <Mic> "Just drop it in my office"
13:20:45 <Mic> OK, we shouldn't pollute the logs when we ask others not to do so...
13:21:29 <aleth> Your idea of putting up an etherpad seems the best way to go :D
13:21:59 <Mic> That's were we discussed the context menu/alltabs menu creation by the way.
13:22:41 --> nhnt11 has joined #instantbird
13:22:56 <aleth> Is there anything conversation-specific in tabbrowser atm that really can't be moved to conversation.xml without making it a mess?
13:23:34 <nhnt11> aleth: I think everything can be moved.
13:25:36 <aleth> So no need to differentiate at the tab level at all? Neat.
13:27:21 <-- nhnt11 has quit (Quit: Instantbird 1.4 -- http://www.instantbird.com)
13:27:56 --> nhnt11 has joined #instantbird
13:28:29 <-- nhnt11 has quit (Quit: Instantbird 1.4 -- http://www.instantbird.com)
13:28:34 --> nhnt11 has joined #instantbird
13:29:29 <nhnt11> Yes my connection is very flaky at the moment... :(
13:29:38 <aleth> Part of what's confusing about tabbrowser is referring to the same thing by different names imho, e.g. mCurrentConversation and selectedConversation...
13:30:03 <nhnt11> True.
13:30:35 <aleth> If a variable is internal it should begin with an underscore, if not, there shouldn't be a need to have such a getter
13:31:54 <aleth> Maybe that and things like the .parentNode.parentNode... will be cleaned up "automatically" in the process ;)
13:32:33 <nhnt11> Heh.
13:33:11 <aleth> Maybe there was an XBL-specific reason to add getters like selectedConversation though
13:34:49 <aleth> "Maybe that and things like the .parentNode.parentNode... will be cleaned up "automatically" in the process" I didn't mean to suggest you should definitely do it btw, just that often getting the structure right also simplifies the code.
13:57:53 <nhnt11> How do I dump all the methods of an object to Error Console? I tried Cu.reportError(Object.keys(obj)); But that's not working :/
13:58:08 <nhnt11> Should I ask such generic questions in the etherpad as well?
13:58:23 <Mic> No, just ask them here.
13:58:26 <aleth> nhnt11: You'll only get the JS properties that way.
13:58:44 <aleth> DOM attributes are separate.
13:58:56 <nhnt11> Ah.
13:59:26 <nhnt11> Okay so I made conversation extend tabContent (I dropped the "generic"), and tabContent has a method called "testtest".
13:59:38 <nhnt11> I'm trying to verify that I can call this function using conv.testtest()
13:59:59 <aleth> tabContent is a panel?
14:00:06 <nhnt11> Yeah.
14:00:27 <aleth> Maybe call it xxxPanel?
14:00:49 <nhnt11> Well for this test it's pretty empty. Since conversation didn't extend anything, I didn't make tabContent extend anything either.
14:00:52 <aleth> Content is confusing as generally all this is part of the chrome, not the content.
14:01:17 <aleth> (Not sure if Mic agrees)
14:01:27 <nhnt11> aleth: Right, I'll change it then. Not a problem.
14:01:44 <Mic> Panel might be better then, yes.
14:02:02 <aleth> And can you call the function?
14:02:14 <nhnt11> aleth: No.
14:02:17 <nhnt11> No such function.
14:02:32 <nhnt11> I'm pretty sure I'm doing something wrong.
14:03:00 <nhnt11> Here's my binding: <binding id="conversation" extends="chrome://instantbird/content/tabcontent.xml#tabContent">
14:03:08 <Mic> Can you pastebin the code?
14:03:34 <nhnt11> Mic: Doing it now.
14:06:30 * nhnt11 makes a mental note to write an addon to add a command to pastebin a file
14:07:11 <Mic> nhnt11: are you using an IDE?
14:07:17 <nhnt11> http://pastebin.instantbird.com/
14:07:22 <nhnt11> Mic: Komodo Edit.
14:07:22 * aleth would like an add-on that pastebins anything in the editbox that is longer than N lines
14:07:39 <nhnt11> aleth: That would work too.
14:08:08 <Mic> There's a macro for Komodo Edit that sends the current selection to a pastebin and return the link to it.
14:08:21 <nhnt11> Oops I just realized that link isn't my paste
14:08:25 <nhnt11> Mic: I'll google that.
14:08:28 <nhnt11> http://pastebin.instantbird.com/211763
14:09:09 <nhnt11> I have a feeling I'm missing something that I need to do to make extending work properly.
14:09:16 <Mic> https://bitbucket.org/clokep/komodo-tools/src
14:09:27 <aleth> Where is the code that calls the method?
14:10:11 <nhnt11> aleth: Error console.
14:10:16 <nhnt11> :P
14:10:56 <nhnt11> aleth: http://pastebin.instantbird.com/211764
14:12:08 <Mic> I assumed you wanted to call the method from the extending binding (here "conversation" calling a not-overridden method of "tabContent").
14:12:22 <nhnt11> Mic: That's the idea yes.
14:13:27 <Mic> That should just work.
14:13:43 <aleth> I wonder if testing this from the error console doesn't give you additional problems.
14:13:54 <nhnt11> Mic: That's what I thought. But instead I get, conv.testtest is not a function.
14:14:03 <nhnt11> aleth: Okay then I have an add-on ready, just a sec.
14:14:26 <Mic> I meant that it should jsut work when you do it from the extending binding.
14:15:46 <nhnt11> Mic: Umm.
14:15:52 <nhnt11> So why can't I call it manually
14:15:54 <nhnt11> ?
14:15:59 <nhnt11> That doesn't make sense to me.
14:17:56 <nhnt11> Mic: Right, I just found out none of conversation's methods are available.
14:18:01 <nhnt11> Not just the extended one.
14:18:22 <Mic> I think the ".conv" is too many
14:18:37 <aleth> I agree
14:18:55 <nhnt11> Mic: No, mCurrentConversation is the linkedConversation.
14:19:05 <nhnt11> linkedConversation.conv is the conversation that was created.
14:19:41 <nhnt11> Ah wait maybe I'm wrong.
14:19:54 <Mic> Don't you want it to be ".tab"?
14:19:58 <aleth> The conv property of the conversation binding is not what you mean
14:20:19 <nhnt11> aleth: Yeah okay. I was a bit confused but I just looked at _addconversation and you're right.
14:20:34 <nhnt11> Test worked!
14:20:37 <nhnt11> :)
14:20:59 <nhnt11> _addConversation creates the conversation as conv, then does conv.conv = aConv.
14:21:05 <nhnt11> (urgh)
14:21:06 <Mic> Was "[...] is too many" actually english? :S
14:21:22 <nhnt11> Mic: I got what you meant :)
14:21:57 * nhnt11 cringes every time he glances at | conv.conv = aConv; |
14:22:15 <aleth> That does look like it's not ideal code ;)
14:23:04 <aleth> At various levels in the code, what is meant by a "conversation" changes. This is confusing when one first starts coding for IB...
14:23:24 <nhnt11> aleth: I'm discovering that again and again :P
14:23:54 <aleth> Newer code generally is more explicit about this and/or has more comments.
14:23:58 <nhnt11> Mic: I'm going to try and avoid adding a generictab like in yesterday's diff.
14:25:42 <aleth> or maybe it's just tabbrowser in particular which is a bit confusing in that way.
14:26:21 <aleth> ;)
14:34:52 <nhnt11> Heh. :P
14:35:54 <aleth> When things have sorted themselves out and you create your patch, please add comments wherever you were confused initially :)
14:36:15 <aleth> i.e. where the code is not self-explanatory
14:36:55 <nhnt11> Sure.
14:37:02 <nhnt11> I still have a ways to go.
14:37:11 <nhnt11> I'll be back after dinner.
14:37:16 * nhnt11 is now known as nhnt11_away
14:38:37 <-- mpmc has quit (Connection reset by peer)
14:39:00 <-- nhnt11_away has quit (Ping timeout)
15:11:30 --> mconley has joined #instantbird
15:17:16 <-- aleth has quit (Quit: Ciao)
15:28:45 --> nhnt11_away has joined #instantbird
15:29:06 * nhnt11_away is now known as nhnt11
15:31:48 <-- nhnt11 has quit (Ping timeout)
15:31:54 --> nhnt11 has joined #instantbird
15:37:33 <-- nhnt11 has quit (Ping timeout)
15:40:47 --> nhnt11 has joined #instantbird
15:42:24 <nhnt11> Mic: In XBL, for an empty method, can I just leave it as <method name="name"/> or is a body required? (e.g. with just a return statement)
15:42:46 --> jb has joined #instantbird
15:51:40 --> nhnt13 has joined #instantbird
15:51:58 <nhnt11> test
15:56:33 <-- nhnt13 has quit (Quit: Instantbird 1.5a1pre -- http://www.instantbird.com)
15:58:18 <nhnt11> Mic: Instead of having an etherpad, can we perhaps create another IRC channel (say #instantbird-gsoc)? Just a though.. it would save having etherpad open all the time, and also allows notifications :P
15:58:22 <nhnt11> s/though/thought
16:04:09 <nhnt11> Okay, I just pushed a commit that makes tabbrowser-tab pretty much conversation-ignorant :)
16:06:21 --> mikk_s has joined #instantbird
16:06:44 <-- mikk_s has quit (Client exited)
16:13:31 <-- jb has quit (Quit: jb)
16:24:47 <-- mconley has quit (Input/output error)
16:24:59 <Mic> I've no problem keeping the Etherpad tab open all the time but I also found it annoying that it doesn't notify of changes.
16:25:24 <nhnt11> Mic: Yeah so #instantbird-gsoc? :P
16:26:24 <Mic> This channel is solely for developing Instantbird, don't be afraid to post and ping people as you like ;)
16:27:48 <Mic> Additionally we get logs and opinions from others for free too ;)
16:28:29 <nhnt11> Well since you didn't want to pollute the logs... I'm fine with anything though :)
16:31:12 <Mic> Don't worry, we're certainly not polluting the logs with discussions that are on topic.
16:32:03 <nhnt11> I have to go for a bit.
16:32:08 * nhnt11 is now known as nhnt11_away
16:32:33 <-- nhnt11_away has quit (Quit: Instantbird 1.4 -- http://www.instantbird.com)
16:33:16 <Mic> Have fun!
16:39:10 --> mconley has joined #instantbird
16:41:35 <-- mconley has quit (Input/output error)
17:12:03 --> nhnt11 has joined #instantbird
17:13:24 <-- nhnt11 has quit (Quit: Instantbird 1.4 -- http://www.instantbird.com)
17:16:54 --> nhnt11 has joined #instantbird
17:19:17 --> stig has joined #instantbird
17:19:27 <stig> hello
17:19:32 <Mic> Hello stig
17:19:42 <stig> Hey
17:19:49 <stig> I'm nhnt11's friend
17:19:56 <stig> he's your mentor?
17:20:04 <stig> mentee*
17:20:10 <nhnt11> stig no offtopic please.
17:20:21 <nhnt11> stig wanted to try writing a few addons so I directed him here.
17:20:25 <Mic> Yes, I am, how can I help you?
17:20:49 <Mic> Nice to hear that!
17:22:40 <Mic> Just ask if there's anything you need help with :)
17:24:30 <stig> Nothing as of yet
17:24:33 <stig> Thanks
17:24:34 <stig> :)
17:26:54 --> Mook has joined #instantbird
17:27:52 <Mic> Someone will answer sooner or later.. 
17:28:22 <Mic> You might want to have a look at https://wiki.instantbird.org/Main_Page
17:29:08 <Mic> It has information on how to compile Instantbird, what's the necessary data to mark an add-on compatible to Instantbird, links to useful pages around the project, this sort of stuff.
17:34:42 * nhnt11 just saw the first item in the extension wish list
17:35:13 <nhnt11> (and expresses his ++ to it)
17:35:47 * Mic likes #3 ;)
17:58:59 <flo-retina> Mic, nhnt11: I think gsoc discussions are on topic here ;)
17:59:29 <flo-retina> maybe we should have another channel for the offtopic chatter that we like to have between us
17:59:52 * flo-retina enjoys knowing how people who are here everyday are doing, etc...
18:00:26 <flo-retina> so I think we could use another channel for off topic rants and that kind of stuff :)
18:01:19 <nhnt11> flo-retina: #instantbird-offtop? :P
18:02:24 --> mconley has joined #instantbird
18:02:30 <flo-retina> nhnt11: #instantbirders?
18:02:48 <nhnt11> flo-retina: That works :)
18:03:04 <nhnt11> or #instantbirds, but that may be too much like angrybirds.
18:03:12 * nhnt11 doesn't know why he thought of angry birds there.
18:03:22 * flo-retina often posts links to off topic pictures of cars here ;)
18:03:57 <nhnt11> Heh.
18:05:24 <Mic> #Instantbirdians? scnr ;)
18:05:51 <nhnt11> Someone just start a channel ;)
18:07:16 --> Mnyromyr has joined #instantbird
18:07:24 <Mic> #ib-talk ?
18:07:47 <flo-retina> should we make it private (or at least hide it in /list)?
18:10:06 <Mic> Are there reasons for or against any of these?
18:10:09 <nhnt11> flo-retina: Aha, a VIP channel :P
18:16:38 * nhnt11 may or may not be back later.
18:16:43 <nhnt11> So good night!
18:16:46 <-- nhnt11 has left #instantbird ()
18:18:05 <-- stig has quit (Quit: Instantbird 1.3 -- http://www.instantbird.com)
18:21:11 <-- Mnyromyr has quit (Quit: ChatZilla 0.9.86 [SeaMonkey 1.1.19/2010030105])
18:21:48 --> Mnyromyr has joined #instantbird
18:44:48 --> chrisccoulson has joined #instantbird
18:49:21 <-- mconley has quit (Input/output error)
19:01:50 --> mconley has joined #instantbird
19:10:23 --> clokep has joined #instantbird
19:10:23 * ChanServ sets mode +o clokep 
19:19:17 <clokep> nhnt11: "Polluting the logs" is only for off topic things, if it's "instantbird" it's on topic. Always.
19:28:36 <Mic> Yes, I explained that too.
19:28:53 <Mic> I think I got across a bit strict wrt to on/offtopic talk :S
19:32:22 <clokep> Mic The Enforcer!
19:34:20 <Mic> Ha, that sounds cool. Does Mozilla issue badges with that? :D
19:50:30 <-- mconley has quit (Input/output error)
20:06:27 <clokep> Mic: Let me know if we end up having an OT channel.
20:06:38 <clokep> FYI I always sit in #chatdev too. For fun.
20:26:07 --> nhnt11 has joined #instantbird
20:26:51 <nhnt11> Right, I couldn't sleep so I decided to try getting tabPanels to inject their own menu items.
20:27:24 <nhnt11> I got it to work pretty easily but with a problem: Injected menu items never go away (so items keep piling every time you right click)
20:27:38 <nhnt11> clokep, Mic, flo-retina: Any ideas? ^
20:28:06 <clokep> nhnt11: Not without seeing the code...sorry. (And I'm busy righ tnow. :()
20:28:14 <nhnt11> I could remove them when the menu is un-shown (for want of a better phrase) but there must be a better way...
20:28:45 <nhnt11> clokep: No problem, I'll pastebin and please reply or not at your leisure.
20:30:22 <nhnt11> Here's the code: http://pastebin.instantbird.com/211989
20:38:23 <-- Mnyromyr has quit (Quit: ChatZilla 0.9.86 [SeaMonkey 1.1.19/2010030105])
20:42:36 --> rosonline has joined #instantbird
20:43:01 <Mic> nhnt11: in the real case you'll have to update the items anyways. At least when the type of tab changes that the menu gets opened for.
20:44:32 <nhnt11> Mic: I'm currently working on the following solution: add a "tbpersist" attribute to the tabbrowser items, and then search and destroy items without this attribute before showing the menu
20:45:15 <Mic> Isn't there an event when the menu is hidden?
20:45:39 <nhnt11> Mic: Not sure, but the code will be the same even if there is.
20:45:46 <nhnt11> Just done at a different time.
20:46:03 <nhnt11> Right now, I'm trying to figure out how to get all elements *without* a given attribute... :S
20:46:32 <nhnt11> Mic: Do you know the "value" of an attribute that doesn't exist?
20:46:39 <Mic> Get all children of the menu and iterate over them?
20:46:49 <nhnt11> Mic: I was hoping there was a better way :P
20:47:13 <nhnt11> I'll do it that way for now...
20:47:48 * nhnt11 seems to get the most work done after midnight... always. :/
20:48:03 <Mic> Give me a minute to look something up for you on MDN.
20:50:25 <nhnt11> Mic: Here's a weird way I just thought of: get and store all menu items with the attribute, remove all elements, then add the stored ones back in :P
20:50:44 * nhnt11 is not serious about that though...
20:51:12 <Mic> Something like document.querySelectorAll("tabContextMenu > menuitem :not([tbpersist])") might work.
20:51:41 <Mic> Something like document.querySelectorAll("#tabContextMenu > menuitem :not([tbpersist])") might work.
20:52:41 <nhnt11> Hmm
20:52:47 --> jb has joined #instantbird
20:55:27 <Mic> No, better use the query without the "#tabContextMenu > " part directly on the #tabContextMenu-element.
20:56:29 <nhnt11> Mic: Right, I adapted that.
20:56:36 <Mic> let contextMenu = document.getElementById("tabContextMenu"); let nonPersistedItems = contextMenu.querySelectorAll("menuitem :not([tbpersist])")
20:56:54 <nhnt11> About to try aPopupMenu.querySelectorAll("not([tbpersist])")
20:57:19 <nhnt11> We already have the menu as a parameter. life = simplified :P
20:57:33 <Mic> That's even better :)
20:57:41 <nhnt11> I'll include menuitem though
20:57:49 <nhnt11> Actually no.
20:57:58 <nhnt11> Even separators that must persist should have the attribute.
20:58:14 <Mic> It's :not() by the way.
20:58:32 <nhnt11> Right, that was a typo :)
20:59:07 * nhnt11 had never heard of CSS selectors before this.
20:59:29 <Mic> Some of the separator might need to be hidden in case that there are no items added between them.
20:59:43 <Mic> That could be done in CSS though.
20:59:45 <nhnt11> Mic: I'll take care of that separately.
20:59:58 <Mic> (using adjacent sibling selectors)
21:01:25 <nhnt11> Okay so since clokep has already registered #chatdev and sits there alone, maybe we should give him some company and use it for offtop :P
21:03:57 <Mic> Is that an offtopic channel?
21:04:06 <Mic> I wouldn't say so from the description.
21:04:41 <nhnt11> Mic: Well it's unused and "02:13:45 * clokep is squatting." so... :P
21:05:13 <nhnt11> Btw, the code works :)
21:05:33 <Mic> clokep: did you suggest to use #chatdev as offtopic channel?
21:06:18 <nhnt11> Mic: He didn't afaik, that was me. Just a suggestion, I have no idea what clokep intended it to be for.
21:06:33 <Mic> Try /msg chanserv info #chatdev
21:07:07 <nhnt11> :-/
21:07:17 <nhnt11> Okay. Seems serious.
21:07:18 <Mic> I'll be away again, do you have anything else I could help you with?
21:07:31 <nhnt11> I don't think so :)
21:07:40 <Mic> OK, bbl then
21:07:41 <nhnt11> Thanks!
21:07:46 <nhnt11> Bye
21:13:38 --> zen_monkey has joined #instantbird
21:16:44 <-- jb has quit (Ping timeout)
21:21:37 <-- zen_monkey has left #instantbird (Saliendo)
21:36:18 --> EionRobb has joined #instantbird
21:44:08 <-- nhnt11 has quit (Ping timeout)
21:50:31 --> DGMurdockIII has joined #instantbird
22:22:22 <clokep> Ah, Instant*B*ird (*sigh*) was mentioned again on the Pidgin dev mailing list. ;)
22:22:30 <clokep> Apparently one of the GSoC projects is a native QT UI.
22:22:57 <Mic> What does Instantbird have to do with that? ;)
22:23:27 <clokep> We don't use the same HTML rendering engine as Pidgin. (Which used to use GtkHtml and now uses GtkWebkit.)
22:23:49 <clokep> They were proposing to just use the QtWebkit engine from the start (and Instantbird was given as an example of why that would be "OK").
22:24:21 <clokep> (Entirely off topic, but if you haven't checked out Daft Punk's new album, you definitely should. There's a few great songs on there.)
22:24:29 <flo-retina> I don't even understand why they are concerned about the rendering engine
22:24:35 <flo-retina> if their HTML doesn't suck, it's irrelevant
22:24:45 <clokep> I agree.
22:24:54 <clokep> Did someone try to make a QT client already for libpurple? :-S
22:25:01 <flo-retina> does it matter? :-P
22:25:11 <clokep> Nope. :)
22:25:16 * clokep is just bored. ;)
22:25:18 <flo-retina> :-D
22:25:29 * flo-retina just posted 122 photos
22:25:30 * Mook doesn't understand how instantbird makes using qtwebkit okay
22:25:44 <clokep> Also, FYI, I'll be traveling in approximately an hour for at least 36 hours. So...I won't be able to answers questions for qheaden tomorrow. :)
22:25:48 <flo-retina> http://queze.net/goinfre/mamie/renescure2013/ if you are really bored ;)
22:26:00 <clokep> Mook: We use qtxpcom.
22:26:05 <flo-retina> Mook: don't even try to understand :)
22:26:12 <Mook> ... we do!?
22:26:50 <flo-retina> maybe I should use my blog to offer HTML formatting of all the photos I post, so they can be seen by loading a single page :-S
22:28:12 <clokep> That would be helpful. :-D
22:28:21 <clokep> Facebook? :P
22:28:28 <flo-retina> come on
22:28:35 <flo-retina> instagram? :-D
22:29:33 <flo-retina> Good evening/night
22:29:33 <-- flo-retina has quit (Quit: Instantbird 1.5a1pre -- http://www.instantbird.com)
22:36:33 <clokep> Only if you apply cool black and white filters.
22:40:09 --> mconley has joined #instantbird
23:01:34 <Mic> Good night
23:01:42 <clokep> Ciao!
23:02:34 <-- Mic has quit (Quit: Instantbird -- http://www.instantbird.com)
23:09:40 <-- clokep has quit (Quit: Instantbird 1.5a1pre -- http://www.instantbird.com)