/srv/irclogs.ubuntu.com/2010/07/23/#ayatana.txt

sensegood morning09:55
kenvandinegood morning sense10:00
sensebratsche: 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 we10:18
sensell enough.10:18
sensehttps://code.launchpad.net/~indicator-applet-developers/indicator-application/trunk/+activereviews10:19
sensewhoops, wrong lnk10:19
sensehttps://code.launchpad.net/~c10ud/indicator-application/runtime-themepath-change/+merge/3069510:19
klattimersense can i have a look at this too10:20
bratscheYeah, 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
klattimerit might touch something that I'm currently writing a patch for10:20
bratscheAwesome10:20
bratscheThanks klattimer!10:20
senseklattimer, bratsche: OK, that would be great!10:20
klattimersense: can I find a diff?10:20
klattimerI just want to know what's differend ;)10:20
sensehttps://code.launchpad.net/~c10ud/indicator-application/runtime-themepath-change/+merge/3069510:21
klattimerah missed that ;)10:21
klattimerappears to avoid completely what I'm doing10:22
klattimerso I have no objections10:22
sensebratsche: The changes do touch the KDE spec XML file to add a new signal there. How bad is that?10:22
sensegood10:22
senseklattimer: Are you working on submenu related isues?10:22
klattimersense: no, getting absolute paths to render icons10:26
klattimerfor ibus10:26
senseah, something long requested, but always refused10:27
klattimersense: I'm hiding the API away10:30
klattimerno sense publicising it10:30
senseok10:31
senseWe don't want every app to use fancy custom icons.10:31
klattimeribus menus stopped responding... sudden random heisenbugs :/10:36
senseYou 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:39
klattimer:/10:40
klattimeris there a bug filed?10:40
senseI'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
senseThere is a bug for the submenu thing, if you wanted to know that.10:42
klattimersense it's just not responding to activate events10:55
klattimerand therefore I can't change the icon, and therefore unable to test my patch :(10:55
klattimerreally irritating10:55
klattimerbut the other indicators work fine10:56
klattimer:/10:56
senseklattimer: Great... I'll try to look into my activation issues to see what's causing it, maybe it will help you too.10:56
senseklattimer: Maybe something wrong in the declaration of the menu?10:56
klattimernot sure yet10:56
klattimerI'll have to look inside of the indicator applet itself10:57
klattimerso far I've only tried testing changes to libindicator10:57
senseklattimer: 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 instance11:06
sense__main__:1: Warning: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed11:06
senseExample ^^11:06
sensebratsche: Do you know of any recent update that might have done this to PyGTK?11:07
klattimer:(11:11
klattimeris this pygi related perhaps?11:11
senseI 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:12
klattimerk11:13
klattimerI don't know what's being used tbh11:13
klattimerso I'm just throwing out a suggestion ;)11:13
sensebratsche: Also, when importing gtk in Python you get deprecation warnings about "pygobject_register_sinkfunc".11:16
dutchiehey, 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 LEDs11:20
dutchiei'd like to write it myself, but I don't really know where to begin11:20
sensedutchie: 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
dutchiei'm reading that now11:21
dutchieso i should create a non-gui program with an application indicator?11:21
dutchieand not find a system indicator to hook in to?11:21
senseThat 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
klattimerdutchie: you may as well just write a small python app to create the indicator11:22
dutchieyeah, that's what I was thinking of11:22
sensempt: What would you think of an optional Caps Lock status indicator in the Keyboard Indicator?11:22
klattimerbratsche: pygtk is teh bork11:29
klattimer:(11:29
bratscheMaybe this will convince people to stop using fucking Python. ;)11:29
* bratsche radiates hate11:29
bratsche:)11:29
klattimerdon't slate the snake11:29
klattimerhmm, something isn't quite making sense anymore11:36
klattimerthe status icon can't load the image file11:36
klattimer... nothing changed in the status icon11:36
senseIs iBus using Python?11:36
klattimerI think pygtk has gone on holiday or something11:36
klattimersense: the applet does11:36
senseYeah, so it seems.11:36
senseSomething broke it. Maybe it needs to be rebuilt against libgtk+2.0?11:37
klattimersense menus work on the status icon variety of ibus, so I don't think it's necessarily the menu11:38
klattimeri think it's probably dbus menus for the indicators which are mostly broken11:38
klattimerbut pygtk has other issues too11:38
mptsense, interesting, but I think it would be more effective inside fields where it would help. For example, in password fields.11:38
klattimerlets see what magical updates come today11:38
mpthi klattimer11:38
seb128gtk didn't change recently neither did pygtk11:38
sensedutchie: ^^11:39
klattimerhi mpt11:39
senseseb128: Then why would it suddenly start not working?11:39
klattimermpt I think sense was referring to the case stated that when there are no on-keyboard indicators11:39
klattimerwhich I think is a valid reasoning to have them visible always11:39
klattimerreminders in password fields for sure11:39
klattimerbut it's difficult sometimes to spot if you've got a lock on11:39
klattimereven more so if theres no light :)11:40
seb128sense, do you use some cracky ppa?11:40
senseseb128: No, just regular Maverick GTK+.11:41
senseThe strange thing is that the problems have only started yesterday evening or this morning, without any update.11:41
klattimersense pretty much the same thing here11:42
senseseb128: apart from a new GTK+ release11:42
hyperairtry restarting. ibus is full of transient errors.11:42
klattimerand ive also rebooted several times11:42
hyperairokay, so it's not so transient this time. =p11:42
seb128sense, gtk in maverick just changed the appmenu proxy code11:42
sensehyperair: it's not just iBus, it's also the code 'import gtk; menu = gtk.Menu()"11:42
seb128kenvandine, ^11:42
senseseb128: yes, I saw that. That's why I find it so strange.11:42
seb128brb11:43
sensehttp://pastebin.ubuntu.com/467926/11:43
* kenvandine looks11:44
klattimersense: kenvandine running the above test here11:44
klattimerI get the same sinkfunc errors11:44
klattimerbut don't get the menu error after menu = gtk.Menu()11:44
senseThose sinkfunc errors have been there for a long while, though.11:44
kenvandineno errors here11:44
kenvandinebesides the sinkfunc errors11:44
senseMaybe I broke my installation somehow.11:44
klattimersense have you tried updating again today?11:44
senseyes11:45
klattimereither way I'm not getting any response from the menu's in python11:45
klattimerbut am in C11:45
sensehttp://pastebin.ubuntu.com/467927/ is a longer piece of errors11:45
senseklattimer: You think it could be related to localisation?11:45
kenvandinesense, so are all appmenus broken for you?11:46
klattimerI couldn't say11:46
sensekenvandine: No, that's not the case, strangely.11:46
kenvandinesense, ok i thought maybe it was the python bindings11:54
kenvandinebut i just tested that, worked fine here11:55
sensekenvandine: I'll do reïnstall, maybe I broke something.11:56
klattimerkenvandine: 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 indicators11:57
klattimerI just checked through the code, and it's definitely broken somewhere :/11:57
kenvandineklattimer, ok, let me try a simple test here11:57
sensekenvandine: Same thing here.11:58
sensebut only in submenus11:58
kenvandineok, i have a test11:58
kenvandineah!11:58
kenvandineklattimer, in a submenu?11:59
LucidFoxHmm12:00
LucidFoxLiferea upstream has offered me the possibility of joining the team so I could maintain indicator support there.12:00
sensekenvandine, klattimer: I am working on lp:~sense/indicator-application/submenu-later, but I think those changes should just work.12:01
senseLucidFox: Good news!12:01
klattimerkenvandine: well in the main ibus menu12:05
klattimerso not just submenus12:05
senseHere it is just the submenus of Deluge, nothing in the main menu.12:06
kenvandinesense, klattimer: well my test in python with submenus worked12:14
klattimerkenvandine: can you test ibus12:15
* kenvandine is just glad to know the python bindings aren't broken12:15
klattimerthe existing code should bork in the same way12:15
kenvandineklattimer, yeah, but after lunch12:15
kenvandine:)12:15
kenvandinebbiab12:15
kenvandineklattimer, ok, which package are you working on?13:07
klattimeribus-gtk13:08
=== jurgen is now known as jurgenf
klattimerkenvandine: any luck reproducing?13:47
kenvandineyeah13:48
klattimerdiagnosis?13:48
kenvandinetrying to figure out how to run this locally13:48
kenvandineto debug13:48
klattimerrun what?13:49
klattimeribus13:49
kenvandineyeah13:49
klattimeror the applet?13:49
kenvandinethe applet13:49
klattimerah13:49
kenvandinegot tips to save me time?13:49
klattimer/usr/lib/indicator-applet/indicator-applet in a terminal13:49
klattimerthen add it to the panel13:49
klattimerthe output will appear in the terminal13:49
kenvandineoh... not that part13:49
klattimerthen run ibus-daemon13:49
kenvandinethe ibus indicator iteself13:49
kenvandinei have the applet... but i want ibus-daemon to run from my checkout13:50
kenvandinenot from the package13:50
klattimeroh13:50
klattimercant you just package it, install it and run it13:50
klattimerthat's what I do13:50
kenvandinerunning ./bus/ibus-daemon gets all the python imports from the installed version13:50
kenvandinei want to modify it in my checkout and run it locally13:50
kenvandineand ideally even run it in a debugger13:50
kenvandineit isn't obvious how to run it... setting the PYTHONPATH seems to get ignored13:51
klattimer:/13:51
kenvandinewell, maybe it is working13:51
kenvandinewell... working meaning running the code i think it is13:51
kenvandineah, ok...13:52
kenvandineit is getting my PYTHONPATH13:52
kenvandinenow to figure out why it doesn't get signals13:52
klattimerkenvandine: let me know if you have any luck, this is blocking me now14:10
klattimeri have a patch ready, I think but can't test it14:10
kenvandineklattimer, i think it has nothing to do with appindicator14:10
kenvandinethe fallback doesn't get activate either14:11
klattimerdbusmenu?14:11
kenvandinethis thing is pretty crazy... very complex setup for a few dynamic menus14:11
kenvandineno... in ibus-gtk14:11
kenvandineso i got rid of the import appindicator14:11
kenvandineso it goes in the notification area instead of indicator-applet14:12
klattimerand?14:12
klattimerfor me in the notification area the menu's worked14:12
kenvandineand the menu from the StatusIcon doesn't send the event either14:12
klattimeroh dear14:12
klattimerwe've got ourselves a nasty one here14:12
klattimer:/14:13
kenvandineklattimer, yeah i removed that appindicator patch from the package completely and it still doesn't work14:17
kenvandineoh... damn14:18
kenvandinethey do work from the package without the patch14:18
kenvandinebut not when i run ibus-daemon from the source directory14:18
kenvandineklattimer, i don't think this is a problem coming from dbusmenu or appindicator14:18
kenvandinejust the patch needs work14:19
kenvandinesomehow we aren't wired in right14:19
kenvandineto get the signals14:19
kenvandinemight be that we set_enabled somewhere to the wrong thing and it never even emits the signal14:19
kenvandineklattimer, look at the code in language.py with our patch applied14:23
kenvandineall the stuff that emits the signals14:24
klattimer?14:24
kenvandinei bet there is something simple in there that is causing the problem... and of course the code is overly complex for what it does14:24
kenvandineui/gtk/languagebar.py14:25
kenvandinethat seems to be where it emits those signals14:25
klattimerok14:25
klattimerI'll take a look14:25
kenvandine        self.__about_button.connect("clicked", self.__about_button_clicked_cb)14:25
kenvandineso on clicked, it calls self.__about_button_clicked_cb14:26
kenvandineand in that method, it emits the signal14:26
kenvandineactually, self.__about_button_clicked_cb isn't even getting called14:26
klattimeryeah14:27
klattimerthe signals aren't called at all14:27
klattimerthey're just never emitted14:27
kenvandinei was thinking the stock signals might be getting there, but the ones added aren't emitted14:27
kenvandinebut yeah, we aren't even getting those14:27
klattimerlooks like pygtk14:28
klattimerdont you think?14:28
kenvandineok, well i have a suspicion14:28
kenvandineit's dbusmenu14:28
klattimerheh, I thought that earlier14:28
kenvandinethe menu items are ToolButtons14:29
kenvandinewait... maybe languagebar.py is ignored in our case14:29
kenvandineklattimer, well i don't know enough about dbusmenu, but my suspicion is these menu items are made up of ToolButtons14:35
kenvandineand maybe the signals that ToolButtons use aren't being handled via dbusmenu14:35
kenvandinei could be way off, this code is a mess14:36
klattimer:/14:39
klattimeri'll poke around a bit more14:39
klattimerkenvandine: the ToolButton isn't used in the menu14:42
kenvandineok14:42
klattimerjust straight forward ImageMenuItems and MenuItems14:42
klattimerfrom what I can see it's a bog standard MenuItem/ImageMenuItem which hooks its activate signal into a few callbacks14:44
klattimerthe callbacks never get called14:44
klattimerthat means it must be gobject/gtk bindings level14:44
klattimersurely14:44
klattimer!14:45
klattimeror possibly dbusmenu not emitting the signals back to the indicator correctly14:46
klattimereither is possible I suppose14:46
kenvandineklattimer, ok... so it isn't pygtk or dbusmenu15:06
kenvandinei put a break point in panel.py, in the __create_im_menu method15:06
kenvandineat the end of the method, right before "return menu"15:07
kenvandineif i do a menu.show() right there, but not let the program continue15:07
kenvandineit sends the right signal when you click on the menu items15:07
kenvandinebut if i let it continue, and return menu15:08
kenvandineit gets hosed15:08
kenvandineso i think it isn't that the signal isn't getting emitted, but the menu items aren't connected to them anymore15:08
kenvandineklattimer, so i hope that helps :)15:08
klattimerhmm15:12
klattimerthat's bizarre15:12
klattimerwell I've written a python indicator test case15:32
klattimerand the activated signal is fired in that15:32
klattimerthis is a problem with ibus :/15:33
klattimer*shit*15:33
klattimerkenvandine: I think I found the problem ;)15:41
klattimerusing menu.add instead of menu.append15:41
klattimerreplacing all occurrences appears to fix it15:41
klattimeroh, no it doesn't15:42
klattimer:/15:42
klattimerit may have worked once just on it's own15:42
klattimer:/15:42
klattimerthis bug has me beat :/15:43
kenvandineklattimer, something is making it lose the connect to that signal15:47
kenvandinei think the signal is still coming, but the widget isn't hooked up to it anymore15:47
kenvandinebut i don't know why15:47
kenvandinei can make it work 100% of the time from in a debugger :)15:48
kenvandineonce it returns the menu from the __create_im_menu method, it no longer listens for that signal15:48
kenvandinebut as long as i am stopped there it gets it15:48
klattimerkenvandine: that makes no sense though15:53
klattimeras it needs to go on to add it to the indicator15:53
kenvandineno, it is already in the indicator there15:54
kenvandinei didn't go back far enough to see when it is getting added to the indicator15:55
kenvandinebut i am seeing it there15:55
klattimerhmm, then surely it's a double add16:17
klattimer;)16:17
klattimerI think16:17
senseivanka: 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:19
klattimerkenvandine: how could it already be added, menu is created in __create_im_menu16:20
klattimerand it doesn't add the menu to the indicator16:20
kenvandinemust be added somewhere else then...16:22
klattimernope16:23
klattimeronly in __appindicator_update_menu16:23
klattimerafter __create_im_menu os called and the menu is created16:23
klattimerthen other items are appended to the menu, and it's set16:23
kenvandinewell, if i stop it there with a break point and do a menu.show()16:23
klattimerso I can't see how not returning the menu can fix it16:24
kenvandineit starts getting the signals16:24
klattimerhmm16:24
kenvandineit doesn't fix it...16:24
klattimermaybe we need to show the menu16:24
kenvandinei can only make it work if i stop it with a breakpoint16:24
klattimeror the menu items before returning16:24
kenvandineno... i added it there16:24
kenvandineif you let it past that point, even with showing the menu16:24
kenvandineit doesn't get the signals16:24
kenvandinesomething happens to it after that16:24
kenvandinemaybe it gets created a second time16:24
kenvandineand the second one isn't connected16:25
kenvandinebrb16:25
klattimerkenvandine: I fixed it16:52
klattimeryou need to call show on each menu item before adding it to the menu16:52
klattimerthen the signals seem to stay attached16:52
senseah!17:03
senseklattimer: In that case this occurs in libappindicator. I know there is somewhere a check for visible menuitems.17:04
kelelsaiHi, I'm looking to get involved in Ubuntu development. Your website said Papercuts is a great place to start.17:45
kelelsaiI was wondering what I needed to do to get started with this group>17:45
kelelsai?17:45
hyperairbugs.launchpad.net/hundredpapercuts17:46
dakerkelelsai, you should talk to vish17:47
kelelsaithanks!17:47
kelelsaiI'm registering at the link provided and will talk with vish17:47
kelelsaiim a little confused. If I'm working on fixing bugs do I need to be packaging everything up?21:19
kelelsaior is there a different team that does that?21:19
kelelsaiit doesn't matter to me either way. Just curious21:19
hyperairif you can stick a debdiff to the bug, it's better.21:20
kelelsaiok, thanks21:20
hyperairotherwise someone else needs to drop by and stick a debdiff to the bug21:20

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!