[Precise] Sound indicator have a silent menu item with are not accessible for screen reader

Bug #902715 reported by Attila Hammer
16
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Indicator Display Objects
Fix Released
Medium
Charles Kerr
The Sound Menu
Fix Released
Medium
Conor Curran
indicator-sound (Ubuntu)
Fix Released
Undecided
Unassigned
Precise
Fix Released
Undecided
Unassigned

Bug Description

Dear Developers,

When I using Sound Indicator with Orca screen reader, I possible accessing the volume percent value, possible changing the mute status.
Unfortunately, have a third menu item in the indicator with Orca nothing spokening. Possible this is an empty menu item?
Can you investigate this problem?

Attila

ProblemType: Bug
DistroRelease: Ubuntu 12.04
Package: indicator-sound 0.8.0.0-0ubuntu1
ProcVersionSignature: Ubuntu 3.2.0-3.9-generic 3.2.0-rc4
Uname: Linux 3.2.0-3-generic i686
ApportVersion: 1.90-0ubuntu1
Architecture: i386
Date: Sun Dec 11 07:20:11 2011
InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Alpha i386 (20111202.1)
ProcEnviron:
 LANGUAGE=hu_HU:en
 PATH=(custom, no user)
 LANG=hu_HU.UTF-8
 LC_MESSAGES=hu_HU.UTF-8
 SHELL=/bin/bash
SourcePackage: indicator-sound
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Attila Hammer (hammera) wrote :
Conor Curran (cjcurran)
Changed in indicator-sound (Ubuntu):
status: New → Confirmed
Changed in indicator-sound:
status: New → Confirmed
Revision history for this message
Attila Hammer (hammera) wrote : Re: [Bug 902715] Re: [Precise] Sound indicator have a silent menu item with are not accessible for screen reader

Hy,

I used Joan Marie Diggs Orca developer wroted test script to look what
the output with this silent menu item.
I pasted the output:
object:state-changed:selected(1, 0, 0)
 source: [menu | Hangerő (34%)]
 host_application: [application | indicator-applet-complete]
object:state-changed:iconified(0, 0, 0)
 source: [window | ]
 host_application: [application | indicator-applet-complete]
object:state-changed:iconified(0, 0, 0)
 source: [window | ]
 host_application: [application | indicator-applet-complete]
<<< KEY RELEASED: Left
 >>> KEY PRESSED: Down
object:state-changed:selected(1, 0, 0)
 source: [menu item | Némítás]
 host_application: [application | indicator-applet-complete]
<<< KEY RELEASED: Down
 >>> KEY PRESSED: Down
object:state-changed:selected(1, 0, 0)
 source: [menu item | ]
 host_application: [application | indicator-applet-complete]
<<< KEY RELEASED: Down
 >>> KEY PRESSED: Down
object:state-changed:selected(1, 0, 0)
 source: [menu item | Rhythmbox]
 host_application: [application | indicator-applet-complete]
<<< KEY RELEASED: Down
 >>> KEY PRESSED: Down
object:state-changed:selected(1, 0, 0)
 source: [menu item | Rhythmbox]
 host_application: [application | indicator-applet-complete]
<<< KEY RELEASED: Down
 >>> KEY PRESSED: Down
object:state-changed:selected(1, 0, 0)
 source: [menu item | Hangbeállítások…]
 host_application: [application | indicator-applet-complete]
<<< KEY RELEASED: Down
 >>> KEY PRESSED: Down
object:state-changed:selected(1, 0, 0)
 source: [menu item | Némítás]
 host_application: [application | indicator-applet-complete]
<<< KEY RELEASED: Down
 >>> KEY PRESSED: Down
object:state-changed:selected(1, 0, 0)
 source: [menu item | ]
 host_application: [application | indicator-applet-complete]
<<< KEY RELEASED: Down
 >>> KEY PRESSED: Down

The interesting think is following part:
"object:state-changed:selected(1, 0, 0)
 source: [menu item | ]
 host_application: [application | indicator-applet-complete]"
What the purpose this silent menu item? This menu item doesn't have a label?

Attila

Revision history for this message
Attila Hammer (hammera) wrote :

I think this item is a silent menu item (or slider style widget).
If I press left or right arrow key, the sound volume is increased or
decreased right, but not happening any events to visual impaired user
know the change.
Possible associate this widget a translatable accessible name or
description and spokening for example in percentage the actual volume
when the value is changed with arrow key presses?

Attila

Charles Kerr (charlesk)
Changed in ido:
status: New → Triaged
importance: Undecided → Medium
assignee: nobody → Charles Kerr (charlesk)
Revision history for this message
Charles Kerr (charlesk) wrote :

Looking a little deeper into this, it looks like it needs to be handled in i-sound.

Changed in ido:
status: Triaged → Invalid
Conor Curran (cjcurran)
Changed in indicator-sound:
assignee: nobody → Conor Curran (cjcurran)
importance: Undecided → Medium
status: Confirmed → Triaged
status: Triaged → In Progress
Revision history for this message
Luke Yelavich (themuso) wrote :

Work is needed to update the accessible name of the object with the percentage of the volume, and have this somehow announced when you press left/right to adjust the volume. Its not that high a priority, and I ran out of time to get it done this cycle, but we may be able to get a fix in as an SRU for it. I'll see if I can find some time in the coming weeks to work on it.

Revision history for this message
Conor Curran (cjcurran) wrote :

Luke, I tried this in the branch above.

On a prop update on the indicator side, i tried to set the name but still no sign. Please check the last two commits on that branch to see if they are going in the right direction.

Revision history for this message
Luke Yelavich (themuso) wrote :

What you have in that branch is not going to work because the code is trying to work with a child widget of the menu item. I think setting the DBUSMENU_MENUITEM_PROP_ACCESSIBLE_DESC: property is more appropriate here, as that will use dbusmenu to properly set the accessible name of the menu item, in the atk object associated with the menu item itself.

Revision history for this message
Conor Curran (cjcurran) wrote :

Previously Luke you had added this method to the indicator-sound.c.

void
update_accessible_desc (IndicatorObject * io)
{
  GList *entries = indicator_object_get_entries(io);
  if (!entries)
    return;
  IndicatorObjectEntry * entry = (IndicatorObjectEntry *)entries->data;

  IndicatorSoundPrivate* priv = INDICATOR_SOUND_GET_PRIVATE(io);
  gchar *old_desc = priv->accessible_desc;

  if (priv->volume_widget) {
    priv->accessible_desc = g_strdup_printf(_("Volume (%'.0f%%)"),
                                            volume_widget_get_current_volume (priv->volume_widget));
  }
  else {
    priv->accessible_desc = NULL;
  }

  entry->accessible_desc = priv->accessible_desc;
  g_free (old_desc);
  g_signal_emit(G_OBJECT(io),
                INDICATOR_OBJECT_SIGNAL_ACCESSIBLE_DESC_UPDATE_ID,
                0,
                entry,
                TRUE);
  g_list_free(entries);
}

This is called after a successful property update is received in the volume-widget (just after the said code above). Are you now suggesting that this method needs to call a dbusmenu_property_set using the DBUSMENU_MENUITEM_PROP_ACCESSIBLE_DESC as opposed to emitting that signal ?

Revision history for this message
Conor Curran (cjcurran) wrote :

Luke, I have updated that branch to just set that property on the respective dbusmenuitem. It seems now to work fine when the item is initially focused but it does not broadcast a volume property update, it's only when you move to the slider item will Orca relay the volume. Is this the correct behaviour ?

Revision history for this message
Conor Curran (cjcurran) wrote :

Will release with the fix in the branch above. It can be improved upon when I get to talk with Luke in two weeks.

Charles Kerr (charlesk)
Changed in indicator-sound:
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package indicator-sound - 0.8.5.0-0ubuntu3

---------------
indicator-sound (0.8.5.0-0ubuntu3) quantal; urgency=low

  * debian/patches/lp_992262.patch
    - fix sound indicator not working after amarok close (LP: #992262)
  * debian/patches/lp_902715.patch
    - Partial fix which sets the accessibility property on the volume
      slider menu item. Previously this was achieved by sending a signal
      on the indicator object but now it seems the way to update orca is
      to set/update the appropriate property on the menuitem. Orca doesn't
      broadcast volume updates on slider movement but at least it updates
      when the user moves to the item on the menu, previously it was entirely
      silent. (LP: #902715)
 -- Ken VanDine <email address hidden> Thu, 03 May 2012 16:07:19 -0700

Changed in indicator-sound (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Martin Pitt (pitti) wrote : Please test proposed package

Hello Attila, or anyone else affected,

Accepted indicator-sound into precise-proposed. The package will build now and be available in a few hours. Please test and give feedback here. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you in advance!

Changed in indicator-sound (Ubuntu Precise):
status: New → Fix Committed
tags: added: verification-needed
Revision history for this message
Attila Hammer (hammera) wrote : Re: [Bug 902715] Re: [Precise] Sound indicator have a silent menu item with are not accessible for screen reader

Hy Martin,

Sorry the long delay answer, but this day I am not home before 17:00 PM.
I experienced following positive change in sound indicator the GNOME3
fallback session:
If I go to sound indicator and moving between menu items with up or down
arrow key, Orca wonderful spokening me the actual system volume
(prewious this menu item is full silent before not land this fix with
the indicator-sound package).

Only need resolving one problem if technical this is possible:
When I go to this new accessible menu item and using left or right
arrows, the volume meter change doesn't announced Orca my system, but
volume meter increasing or decreasing are happening right. Not possible
sending this situation the volume percentage value (30%, 33%, etc), or
the actual a11y description text with this menu item?
Only percentage sending the left or right arrow keypresses I think is
shorter output, and don't disturb the user when want fast changing the
volume meter with left or right arrow keys.
If technical not possible resolving this type issue, users when changed
the system volume with left or right arrow key need using Orca where am
I function to listening again the changed volume meter menu item a11y
description.

Attila

Revision history for this message
Sebastien Bacher (seb128) wrote :

Setting to verification-done, the fix seems to not be perfect but address part of the problem and there is no reason to block the SRU, we might want to reopen the bug after it moves to update to address the left,right issue though

tags: added: verification-done
removed: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package indicator-sound - 0.8.5.0-0ubuntu2.1

---------------
indicator-sound (0.8.5.0-0ubuntu2.1) precise-proposed; urgency=low

  * debian/patches/lp_992262.patch
    - fix sound indicator not working after amarok close (LP: #992262)
  * debian/patches/lp_902715.patch
    - Partial fix which sets the accessibility property on the volume
      slider menu item. Previously this was achieved by sending a signal
      on the indicator object but now it seems the way to update orca is
      to set/update the appropriate property on the menuitem. Orca doesn't
      broadcast volume updates on slider movement but at least it updates
      when the user moves to the item on the menu, previously it was entirely
      silent. (LP: #902715)
 -- Ken VanDine <email address hidden> Thu, 03 May 2012 16:16:41 -0700

Changed in indicator-sound (Ubuntu Precise):
status: Fix Committed → Fix Released
Attila Hammer (hammera)
Changed in ido:
status: Invalid → New
Revision history for this message
Attila Hammer (hammera) wrote :

With Sebastian request I reopened this bug to future not need opening
new report with remaining left and right arrow I prewious wrote issue
related.
If I change wrong component the status with new, excuse me.

Attila

Revision history for this message
Bilal Akhtar (bilalakhtar) wrote :

Thank you for co-operating. I'll set the bug accordingly.

Changed in ido:
status: New → Fix Released
Changed in indicator-sound (Ubuntu):
status: Fix Released → Triaged
Revision history for this message
Bilal Akhtar (bilalakhtar) wrote :

The left/right issue appears to be affecting i-sound, like before.

Charles Kerr (charlesk)
Changed in indicator-sound:
status: Fix Committed → Fix Released
milestone: none → 12.10.0
Lars Karlitski (larsu)
Changed in indicator-sound (Ubuntu):
status: Triaged → Fix Released
Revision history for this message
Rob Whyte (fudge) wrote :

Also now present in Trusty.

Luke Yelavich (themuso)
Changed in indicator-sound (Ubuntu):
status: Fix Released → Confirmed
dobey (dobey)
Changed in indicator-sound (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.