[09:55] <sense> good morning
[10:00] <kenvandine> good morning sense
[10:18] <sense> bratsche: You're looking after Application Indicators while Ted is on holiday? Does that also include merge requests? C10uD and I worked yesterday on implementing icon theme path changes and I filed a merge request for it, but I was wondering whether anyone will look at it for the next few days. I would be happy if the change -- when accepted -- could land before Alpha 3 because I do think that such important changes to the library need to be tested we
[10:18] <sense> ll enough.
[10:19] <sense> https://code.launchpad.net/~indicator-applet-developers/indicator-application/trunk/+activereviews
[10:19] <sense> whoops, wrong lnk
[10:19] <sense> https://code.launchpad.net/~c10ud/indicator-application/runtime-themepath-change/+merge/30695
[10:20] <klattimer> sense can i have a look at this too
[10:20] <bratsche> Yeah, I can take a look at it.  I'm in the middle of debugging some X crashiness first though, so it may be awhile before I look at it.
[10:20] <klattimer> it might touch something that I'm currently writing a patch for
[10:20] <bratsche> Awesome
[10:20] <bratsche> Thanks klattimer!
[10:20] <sense> klattimer, bratsche: OK, that would be great!
[10:20] <klattimer> sense: can I find a diff?
[10:20] <klattimer> I just want to know what's differend ;)
[10:21] <sense> https://code.launchpad.net/~c10ud/indicator-application/runtime-themepath-change/+merge/30695
[10:21] <klattimer> ah missed that ;)
[10:22] <klattimer> appears to avoid completely what I'm doing
[10:22] <klattimer> so I have no objections
[10:22] <sense> bratsche: The changes do touch the KDE spec XML file to add a new signal there. How bad is that?
[10:22] <sense> good
[10:22] <sense> klattimer: Are you working on submenu related isues?
[10:26] <klattimer> sense: no, getting absolute paths to render icons
[10:26] <klattimer> for ibus
[10:27] <sense> ah, something long requested, but always refused
[10:30] <klattimer> sense: I'm hiding the API away
[10:30] <klattimer> no sense publicising it
[10:31] <sense> ok
[10:31] <sense> We don't want every app to use fancy custom icons.
[10:36] <klattimer> ibus menus stopped responding... sudden random heisenbugs :/
[10:39] <sense> You mean that it doesn't react to activate events anymore? I'm having the same issue with my work on making later added submenus work.
[10:40] <klattimer> :/
[10:40] <klattimer> is there a bug filed?
[10:42] <sense> I'm not sure what causes it, so I haven't filed a bug. It may be my own fault. I get some complaints, so it seems, that some pointer is not a valid GtkMenuItem.
[10:42] <sense> There is a bug for the submenu thing, if you wanted to know that.
[10:55] <klattimer> sense it's just not responding to activate events
[10:55] <klattimer> and therefore I can't change the icon, and therefore unable to test my patch :(
[10:55] <klattimer> really irritating
[10:56] <klattimer> but the other indicators work fine
[10:56] <klattimer> :/
[10:56] <sense> klattimer: Great... I'll try to look into my activation issues to see what's causing it, maybe it will help you too.
[10:56] <sense> klattimer: Maybe something wrong in the declaration of the menu?
[10:56] <klattimer> not sure yet
[10:57] <klattimer> I'll have to look inside of the indicator applet itself
[10:57] <klattimer> so far I've only tried testing changes to libindicator
[11:06] <sense> klattimer: I'm afraid PyGTK is somewhat broken on Maverick, maybe that's causing problems.
[11:06] <sense> >>> menu = gtk.Menu()
[11:06] <sense> __main__:1: Warning: invalid (NULL) pointer instance
[11:06] <sense> __main__:1: Warning: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed
[11:06] <sense> Example ^^
[11:07] <sense> bratsche: Do you know of any recent update that might have done this to PyGTK?
[11:11] <klattimer> :(
[11:11] <klattimer> is this pygi related perhaps?
[11:12] <sense> I thought we weren't going to use that this release yet. (PyGI has been integrated into GObject/GLib and the separate package isn't necessary anymore in Maverick, though.)
[11:13] <klattimer> k
[11:13] <klattimer> I don't know what's being used tbh
[11:13] <klattimer> so I'm just throwing out a suggestion ;)
[11:16] <sense> bratsche: Also, when importing gtk in Python you get deprecation warnings about "pygobject_register_sinkfunc".
[11:20] <dutchie> hey, i've said it before, but I was wondering about what to do about some sort of indicator to show the status of caps lock etc for keyboards that don't have LEDs
[11:20] <dutchie> i'd like to write it myself, but I don't really know where to begin
[11:21] <sense> dutchie: You need to have something running in the background that periodically checks and updates the indicator. You could check the code examples at <https://wiki.ubuntu.com/DesktopExperienceTeam/ApplicationIndicators> for code to start with.
[11:21] <dutchie> i'm reading that now
[11:21] <dutchie> so i should create a non-gui program with an application indicator?
[11:21] <dutchie> and not find a system indicator to hook in to?
[11:22] <sense> That could be a better solution, but I'm not sure you can dynamically extend stuff, you'll probably have to write a patch for the Keyboard Indicator.
[11:22] <klattimer> dutchie: you may as well just write a small python app to create the indicator
[11:22] <dutchie> yeah, that's what I was thinking of
[11:22] <sense> mpt: What would you think of an optional Caps Lock status indicator in the Keyboard Indicator?
[11:29] <klattimer> bratsche: pygtk is teh bork
[11:29] <klattimer> :(
[11:29] <bratsche> Maybe this will convince people to stop using fucking Python. ;)
[11:29]  * bratsche radiates hate
[11:29] <bratsche> :)
[11:29] <klattimer> don't slate the snake
[11:36] <klattimer> hmm, something isn't quite making sense anymore
[11:36] <klattimer> the status icon can't load the image file
[11:36] <klattimer> ... nothing changed in the status icon
[11:36] <sense> Is iBus using Python?
[11:36] <klattimer> I think pygtk has gone on holiday or something
[11:36] <klattimer> sense: the applet does
[11:36] <sense> Yeah, so it seems.
[11:37] <sense> Something broke it. Maybe it needs to be rebuilt against libgtk+2.0?
[11:38] <klattimer> sense menus work on the status icon variety of ibus, so I don't think it's necessarily the menu
[11:38] <klattimer> i think it's probably dbus menus for the indicators which are mostly broken
[11:38] <klattimer> but pygtk has other issues too
[11:38] <mpt> sense, interesting, but I think it would be more effective inside fields where it would help. For example, in password fields.
[11:38] <klattimer> lets see what magical updates come today
[11:38] <mpt> hi klattimer
[11:38] <seb128> gtk didn't change recently neither did pygtk
[11:39] <sense> dutchie: ^^
[11:39] <klattimer> hi mpt
[11:39] <sense> seb128: Then why would it suddenly start not working?
[11:39] <klattimer> mpt I think sense was referring to the case stated that when there are no on-keyboard indicators
[11:39] <klattimer> which I think is a valid reasoning to have them visible always
[11:39] <klattimer> reminders in password fields for sure
[11:39] <klattimer> but it's difficult sometimes to spot if you've got a lock on
[11:40] <klattimer> even more so if theres no light :)
[11:40] <seb128> sense, do you use some cracky ppa?
[11:41] <sense> seb128: No, just regular Maverick GTK+.
[11:41] <sense> The strange thing is that the problems have only started yesterday evening or this morning, without any update.
[11:42] <klattimer> sense pretty much the same thing here
[11:42] <sense> seb128: apart from a new GTK+ release
[11:42] <hyperair> try restarting. ibus is full of transient errors.
[11:42] <klattimer> and ive also rebooted several times
[11:42] <hyperair> okay, so it's not so transient this time. =p
[11:42] <seb128> sense, gtk in maverick just changed the appmenu proxy code
[11:42] <sense> hyperair: it's not just iBus, it's also the code 'import gtk; menu = gtk.Menu()"
[11:42] <seb128> kenvandine, ^
[11:42] <sense> seb128: yes, I saw that. That's why I find it so strange.
[11:43] <seb128> brb
[11:43] <sense> http://pastebin.ubuntu.com/467926/
[11:44]  * kenvandine looks
[11:44] <klattimer> sense: kenvandine running the above test here
[11:44] <klattimer> I get the same sinkfunc errors
[11:44] <klattimer> but don't get the menu error after menu = gtk.Menu()
[11:44] <sense> Those sinkfunc errors have been there for a long while, though.
[11:44] <kenvandine> no errors here
[11:44] <kenvandine> besides the sinkfunc errors
[11:44] <sense> Maybe I broke my installation somehow.
[11:44] <klattimer> sense have you tried updating again today?
[11:45] <sense> yes
[11:45] <klattimer> either way I'm not getting any response from the menu's in python
[11:45] <klattimer> but am in C
[11:45] <sense> http://pastebin.ubuntu.com/467927/ is a longer piece of errors
[11:45] <sense> klattimer: You think it could be related to localisation?
[11:46] <kenvandine> sense, so are all appmenus broken for you?
[11:46] <klattimer> I couldn't say
[11:46] <sense> kenvandine: No, that's not the case, strangely.
[11:54] <kenvandine> sense, ok i thought maybe it was the python bindings
[11:55] <kenvandine> but i just tested that, worked fine here
[11:56] <sense> kenvandine: I'll do reïnstall, maybe I broke something.
[11:57] <klattimer> kenvandine: I'm definitely having a problem in that an activated signal emitted on a menu doesn't cause the callback to fire in python application indicators
[11:57] <klattimer> I just checked through the code, and it's definitely broken somewhere :/
[11:57] <kenvandine> klattimer, ok, let me try a simple test here
[11:58] <sense> kenvandine: Same thing here.
[11:58] <sense> but only in submenus
[11:58] <kenvandine> ok, i have a test
[11:58] <kenvandine> ah!
[11:59] <kenvandine> klattimer, in a submenu?
[12:00] <LucidFox> Hmm
[12:00] <LucidFox> Liferea upstream has offered me the possibility of joining the team so I could maintain indicator support there.
[12:01] <sense> kenvandine, klattimer: I am working on lp:~sense/indicator-application/submenu-later, but I think those changes should just work.
[12:01] <sense> LucidFox: Good news!
[12:05] <klattimer> kenvandine: well in the main ibus menu
[12:05] <klattimer> so not just submenus
[12:06] <sense> Here it is just the submenus of Deluge, nothing in the main menu.
[12:14] <kenvandine> sense, klattimer: well my test in python with submenus worked
[12:15] <klattimer> kenvandine: can you test ibus
[12:15]  * kenvandine is just glad to know the python bindings aren't broken
[12:15] <klattimer> the existing code should bork in the same way
[12:15] <kenvandine> klattimer, yeah, but after lunch
[12:15] <kenvandine> :)
[12:15] <kenvandine> bbiab
[13:07] <kenvandine> klattimer, ok, which package are you working on?
[13:08] <klattimer> ibus-gtk
[13:47] <klattimer> kenvandine: any luck reproducing?
[13:48] <kenvandine> yeah
[13:48] <klattimer> diagnosis?
[13:48] <kenvandine> trying to figure out how to run this locally
[13:48] <kenvandine> to debug
[13:49] <klattimer> run what?
[13:49] <klattimer> ibus
[13:49] <kenvandine> yeah
[13:49] <klattimer> or the applet?
[13:49] <kenvandine> the applet
[13:49] <klattimer> ah
[13:49] <kenvandine> got tips to save me time?
[13:49] <klattimer> /usr/lib/indicator-applet/indicator-applet in a terminal
[13:49] <klattimer> then add it to the panel
[13:49] <klattimer> the output will appear in the terminal
[13:49] <kenvandine> oh... not that part
[13:49] <klattimer> then run ibus-daemon
[13:49] <kenvandine> the ibus indicator iteself
[13:50] <kenvandine> i have the applet... but i want ibus-daemon to run from my checkout
[13:50] <kenvandine> not from the package
[13:50] <klattimer> oh
[13:50] <klattimer> cant you just package it, install it and run it
[13:50] <klattimer> that's what I do
[13:50] <kenvandine> running ./bus/ibus-daemon gets all the python imports from the installed version
[13:50] <kenvandine> i want to modify it in my checkout and run it locally
[13:50] <kenvandine> and ideally even run it in a debugger
[13:51] <kenvandine> it isn't obvious how to run it... setting the PYTHONPATH seems to get ignored
[13:51] <klattimer> :/
[13:51] <kenvandine> well, maybe it is working
[13:51] <kenvandine> well... working meaning running the code i think it is
[13:52] <kenvandine> ah, ok...
[13:52] <kenvandine> it is getting my PYTHONPATH
[13:52] <kenvandine> now to figure out why it doesn't get signals
[14:10] <klattimer> kenvandine: let me know if you have any luck, this is blocking me now
[14:10] <klattimer> i have a patch ready, I think but can't test it
[14:10] <kenvandine> klattimer, i think it has nothing to do with appindicator
[14:11] <kenvandine> the fallback doesn't get activate either
[14:11] <klattimer> dbusmenu?
[14:11] <kenvandine> this thing is pretty crazy... very complex setup for a few dynamic menus
[14:11] <kenvandine> no... in ibus-gtk
[14:11] <kenvandine> so i got rid of the import appindicator
[14:12] <kenvandine> so it goes in the notification area instead of indicator-applet
[14:12] <klattimer> and?
[14:12] <klattimer> for me in the notification area the menu's worked
[14:12] <kenvandine> and the menu from the StatusIcon doesn't send the event either
[14:12] <klattimer> oh dear
[14:12] <klattimer> we've got ourselves a nasty one here
[14:13] <klattimer> :/
[14:17] <kenvandine> klattimer, yeah i removed that appindicator patch from the package completely and it still doesn't work
[14:18] <kenvandine> oh... damn
[14:18] <kenvandine> they do work from the package without the patch
[14:18] <kenvandine> but not when i run ibus-daemon from the source directory
[14:18] <kenvandine> klattimer, i don't think this is a problem coming from dbusmenu or appindicator
[14:19] <kenvandine> just the patch needs work
[14:19] <kenvandine> somehow we aren't wired in right
[14:19] <kenvandine> to get the signals
[14:19] <kenvandine> might be that we set_enabled somewhere to the wrong thing and it never even emits the signal
[14:23] <kenvandine> klattimer, look at the code in language.py with our patch applied
[14:24] <kenvandine> all the stuff that emits the signals
[14:24] <klattimer> ?
[14:24] <kenvandine> i bet there is something simple in there that is causing the problem... and of course the code is overly complex for what it does
[14:25] <kenvandine> ui/gtk/languagebar.py
[14:25] <kenvandine> that seems to be where it emits those signals
[14:25] <klattimer> ok
[14:25] <klattimer> I'll take a look
[14:25] <kenvandine>         self.__about_button.connect("clicked", self.__about_button_clicked_cb)
[14:26] <kenvandine> so on clicked, it calls self.__about_button_clicked_cb
[14:26] <kenvandine> and in that method, it emits the signal
[14:26] <kenvandine> actually, self.__about_button_clicked_cb isn't even getting called
[14:27] <klattimer> yeah
[14:27] <klattimer> the signals aren't called at all
[14:27] <klattimer> they're just never emitted
[14:27] <kenvandine> i was thinking the stock signals might be getting there, but the ones added aren't emitted
[14:27] <kenvandine> but yeah, we aren't even getting those
[14:28] <klattimer> looks like pygtk
[14:28] <klattimer> dont you think?
[14:28] <kenvandine> ok, well i have a suspicion
[14:28] <kenvandine> it's dbusmenu
[14:28] <klattimer> heh, I thought that earlier
[14:29] <kenvandine> the menu items are ToolButtons
[14:29] <kenvandine> wait... maybe languagebar.py is ignored in our case
[14:35] <kenvandine> klattimer, well i don't know enough about dbusmenu, but my suspicion is these menu items are made up of ToolButtons
[14:35] <kenvandine> and maybe the signals that ToolButtons use aren't being handled via dbusmenu
[14:36] <kenvandine> i could be way off, this code is a mess
[14:39] <klattimer> :/
[14:39] <klattimer> i'll poke around a bit more
[14:42] <klattimer> kenvandine: the ToolButton isn't used in the menu
[14:42] <kenvandine> ok
[14:42] <klattimer> just straight forward ImageMenuItems and MenuItems
[14:44] <klattimer> from what I can see it's a bog standard MenuItem/ImageMenuItem which hooks its activate signal into a few callbacks
[14:44] <klattimer> the callbacks never get called
[14:44] <klattimer> that means it must be gobject/gtk bindings level
[14:44] <klattimer> surely
[14:45] <klattimer> !
[14:46] <klattimer> or possibly dbusmenu not emitting the signals back to the indicator correctly
[14:46] <klattimer> either is possible I suppose
[15:06] <kenvandine> klattimer, ok... so it isn't pygtk or dbusmenu
[15:06] <kenvandine> i put a break point in panel.py, in the __create_im_menu method
[15:07] <kenvandine> at the end of the method, right before "return menu"
[15:07] <kenvandine> if i do a menu.show() right there, but not let the program continue
[15:07] <kenvandine> it sends the right signal when you click on the menu items
[15:08] <kenvandine> but if i let it continue, and return menu
[15:08] <kenvandine> it gets hosed
[15:08] <kenvandine> so i think it isn't that the signal isn't getting emitted, but the menu items aren't connected to them anymore
[15:08] <kenvandine> klattimer, so i hope that helps :)
[15:12] <klattimer> hmm
[15:12] <klattimer> that's bizarre
[15:32] <klattimer> well I've written a python indicator test case
[15:32] <klattimer> and the activated signal is fired in that
[15:33] <klattimer> this is a problem with ibus :/
[15:33] <klattimer> *shit*
[15:41] <klattimer> kenvandine: I think I found the problem ;)
[15:41] <klattimer> using menu.add instead of menu.append
[15:41] <klattimer> replacing all occurrences appears to fix it
[15:42] <klattimer> oh, no it doesn't
[15:42] <klattimer> :/
[15:42] <klattimer> it may have worked once just on it's own
[15:42] <klattimer> :/
[15:43] <klattimer> this bug has me beat :/
[15:47] <kenvandine> klattimer, something is making it lose the connect to that signal
[15:47] <kenvandine> i think the signal is still coming, but the widget isn't hooked up to it anymore
[15:47] <kenvandine> but i don't know why
[15:48] <kenvandine> i can make it work 100% of the time from in a debugger :)
[15:48] <kenvandine> once it returns the menu from the __create_im_menu method, it no longer listens for that signal
[15:48] <kenvandine> but as long as i am stopped there it gets it
[15:53] <klattimer> kenvandine: that makes no sense though
[15:53] <klattimer> as it needs to go on to add it to the indicator
[15:54] <kenvandine> no, it is already in the indicator there
[15:55] <kenvandine> i didn't go back far enough to see when it is getting added to the indicator
[15:55] <kenvandine> but i am seeing it there
[16:17] <klattimer> hmm, then surely it's a double add
[16:17] <klattimer> ;)
[16:17] <klattimer> I think
[16:19] <sense> ivanka: We still need more people for the trips during GUADEC if we want them all to continue. Are you, or is someone you know, interested in one of the things listed at <http://live.gnome.org/GUADEC/2010/Trips>?
[16:20] <klattimer> kenvandine: how could it already be added, menu is created in __create_im_menu
[16:20] <klattimer> and it doesn't add the menu to the indicator
[16:22] <kenvandine> must be added somewhere else then...
[16:23] <klattimer> nope
[16:23] <klattimer> only in __appindicator_update_menu
[16:23] <klattimer> after __create_im_menu os called and the menu is created
[16:23] <klattimer> then other items are appended to the menu, and it's set
[16:23] <kenvandine> well, if i stop it there with a break point and do a menu.show()
[16:24] <klattimer> so I can't see how not returning the menu can fix it
[16:24] <kenvandine> it starts getting the signals
[16:24] <klattimer> hmm
[16:24] <kenvandine> it doesn't fix it...
[16:24] <klattimer> maybe we need to show the menu
[16:24] <kenvandine> i can only make it work if i stop it with a breakpoint
[16:24] <klattimer> or the menu items before returning
[16:24] <kenvandine> no... i added it there
[16:24] <kenvandine> if you let it past that point, even with showing the menu
[16:24] <kenvandine> it doesn't get the signals
[16:24] <kenvandine> something happens to it after that
[16:24] <kenvandine> maybe it gets created a second time
[16:25] <kenvandine> and the second one isn't connected
[16:25] <kenvandine> brb
[16:52] <klattimer> kenvandine: I fixed it
[16:52] <klattimer> you need to call show on each menu item before adding it to the menu
[16:52] <klattimer> then the signals seem to stay attached
[17:03] <sense> ah!
[17:04] <sense> klattimer: In that case this occurs in libappindicator. I know there is somewhere a check for visible menuitems.
[17:45] <kelelsai> Hi, I'm looking to get involved in Ubuntu development. Your website said Papercuts is a great place to start.
[17:45] <kelelsai> I was wondering what I needed to do to get started with this group>
[17:45] <kelelsai> ?
[17:46] <hyperair> bugs.launchpad.net/hundredpapercuts
[17:47] <daker> kelelsai, you should talk to vish
[17:47] <kelelsai> thanks!
[17:47] <kelelsai> I'm registering at the link provided and will talk with vish
[21:19] <kelelsai> im a little confused. If I'm working on fixing bugs do I need to be packaging everything up?
[21:19] <kelelsai> or is there a different team that does that?
[21:19] <kelelsai> it doesn't matter to me either way. Just curious
[21:20] <hyperair> if you can stick a debdiff to the bug, it's better.
[21:20] <kelelsai> ok, thanks
[21:20] <hyperair> otherwise someone else needs to drop by and stick a debdiff to the bug