[18:48] <AlanBell> charles_: hi
[18:48] <AlanBell> charles_: needs help getting started with orca to test indicator strings
[18:48] <charles> right
[18:48]  * AlanBell will be back later but if someone else could help that would be great
[18:48] <charles> heh :)
[18:49] <charles> so, I'm adding (or, fixing) the accessible text for the power indicator, but have never used Orca before and was wondering if there is a Right Way to go about testing my work
[18:59]  * charles idles
[19:54] <AlanBell> hi charles 
[19:54]  * AlanBell is now full of chicken curry
[19:55] <AlanBell> I am just doing a bunch of precise updates, to get started with orca if you go to the system settings there is an option to turn on the screen reader
[19:56] <AlanBell> that should start orca and tell you that you need to log out to turn on accessibilty, if you do that and log back in then at-spi should be running and orca should read stuff out to you as you navigate around the desktop
[19:57] <AlanBell> blind people don't have much use for a mouse so you will be using the keyboard (the mouse works with orca, but you are not testing properly if you are using it)
[19:57] <AlanBell> F10 should get you to the unity panel, then you can go right through the global menu to the indicators, or left to go straight to them
[19:58] <AlanBell> if you can't see them you are probably going to conceptualise the indicators are to the left and the menu is to the right and F10 puts you in the middle
[21:33] <TheMuso> charles: Indicator-power charles indicator-power is a system indicator, so you need to provide an implementation of get_accessible_desc for the indicator entry object, and whenever the power information updates, you need to trigger the UPDATE_ACCESSIBLE_DESC signal.
[21:34] <charles> TheMuso: yes, that's what I'm doing. looks like I need to emit it for each of my entries
[21:34] <TheMuso> charles: Correct.
[21:34] <TheMuso> charles: As you know, there can be more than one indicator entry for each indicator object.
[21:35] <charles> right
[21:35] <charles> it looks like i-p currently has code to set the accessible string, but what's missing is pushing that string to the entries and emitting the signal
[21:36] <charles> if you're interested, hold on and I'll push my patch to a temporary branch so that it's visible
[21:36] <TheMuso> charles: Right.
[21:36] <TheMuso> charles: Very much so, am happy to help test.
[21:36] <TheMuso> I was the one who initiated the accessible description work for indicators, so I have some experience with them.
[21:37] <charles> TheMuso: thank you! :)
[21:37] <charles> just a sec then
[21:39] <charles> TheMuso: http://bazaar.launchpad.net/~charlesk/indicator-power/fix-891932/revision/130
[21:41] <TheMuso> charles: Thanks.
[21:44] <TheMuso> charles: Why does indicator-power have multiple entries, and what are they for?
[21:45] <TheMuso> charles: Oh hang on, you probably only have the 1, but you use indicator_object_Get_entries, just like other indicators, sorry don't mind me.
[21:46] <charles> TheMuso: indicator-power doesn't currently have multiple entries
[21:47] <charles> I suppose I just wrote it to futureproof the code
[21:47] <TheMuso> charles: Yeah tahts fine, I ended up having to do something similar when I implemented accessible descriptions for indicator-sound etc.
[21:49] <charles> we don't really handle the case of initializing the accessiblity string when a new entry is added -- either in indicator-power or indicator-sound
[21:49] <charles> but it's probably not a situation that is going to happen
[21:53] <TheMuso> No I'd say not, since system indicators generally only have one entry anyway, with the exception of indicator-session.
[21:53] <charles> TheMuso: other than that, does the code look right?
[21:53] <TheMuso> charles: Looks ok to me, give me a bit and I'll build it and test.
[21:54] <charles> very nice, ty
[21:57] <TheMuso> brb
[22:00] <TheMuso> Hrm, the code looks right, but its not working... Orca is not giving me anything when I arrow over the indicator in the menu bar... I wonder if its because a signal hasn't yet been emitted such that the panel code hasn't requested the indicator yet.
[22:00] <TheMuso> We had this problem with indicator-sound.
[22:00]  * TheMuso sees if he can change the power state such that indicator-power picks it up.
[22:01] <TheMuso> charles: Yep, we still need an initial signal emitted at indicator startup, like is done with indicator-sound.
[22:01] <TheMuso> as per above.
[22:01] <charles> *nod*
[22:01] <TheMuso> Changing the pwoer state works fine, and I get info about the power state etc.
[22:01] <charles> but the initial is empty
[22:02] <charles> yep yep
[22:02] <TheMuso> Correct.
[22:04] <charles> hmm...
[22:05] <charles> ...there are two events that matter here, one is the initial creation of the Entry, the other is when we get information from upower
[22:05] <TheMuso> Right.
[22:05] <charles> if the Entry is created first, then the new information from upower will update the accessible string & emit the event as per that patch
[22:05] <TheMuso> Right.
[22:06] <charles> if the upower information comes in first, the entry /should/ be initialized with the accessibility string...
[22:06] <TheMuso> Right.
[22:06] <TheMuso> TIs a race I fear.
[22:06] <charles> so either way, the entry should get the accessibility string
[22:07] <charles> I'm not sure that I understand what the missing piece is
[22:08] <charles> because there's code to handle both of those cases
[22:08] <TheMuso> Well, when I logged in and checked the power indicator with Orca, I was not told anything about my notebook battery, which should be charged. I unplugged the notebook and plugged it back in again, and checked the indicator, and heard that my battery is charged.
[22:08] <charles> *nod*
[22:08] <charles> I believe you, I just don't understand why it's happening :)
[22:08] <TheMuso> So, on initial login, I get nothing form the indicator which mesans the panel was not able to get the accessible description.
[22:08] <TheMuso> Yep olk.
[22:09] <charles> so you experienced this in indicator-sound and solved it by emitting a signal on startup?
[22:09] <TheMuso> I'd need to find the exact commt where this was fixed, but something like that. Give me a sec.
[22:09] <TheMuso> commit
[22:10] <charles> maybe panel doesn't query for the string until the signal's emitted...?
[22:11] <TheMuso> No, it queries for the string when the atk object for the indicator is created, and connects to the signal to update the atk object when the signal is emitted.
[22:16] <TheMuso> Ok, so indicator-sound emits the signal when it creates the volume slider widget, then updates the accessible desc whenever it receives volume change events from gnome-settings-daemon/pulseaudio, or whenever a user uses the slider widget to change the volume.
[22:17] <TheMuso> So, you could emit the accessible_desc update signal when you create the primary power device menu item...
[22:17] <charles> ok
[22:17] <charles> TheMuso: I need to be afk for a bit, will you be around in an hour?
[22:18] <TheMuso> Its worth giving it a try anyway.
[22:18] <TheMuso> charles: Yes I will, its on the relative beginning of my work day.
[22:18] <TheMuso> only
[22:18] <charles> very nice :)
[22:18] <charles> see you in a bit, then
[22:18] <TheMuso> Will do, and thanks for your work.
[23:40] <charles> TheMuso: I think I found the problem, do you want to re-test?
[23:40] <charles> https://code.launchpad.net/~charlesk/indicator-power/fix-891932
[23:42] <TheMuso> charles: Thanks.
[23:43] <TheMuso> brb
[23:52] <TheMuso> charles: Yep that works.
[23:55] <charles> TheMuso: great!
[23:55] <charles> in that case...
[23:55] <charles> https://code.launchpad.net/~charlesk/indicator-power/fix-891932/+merge/94299 ;)