GNOME Bugzilla – Bug 748311
Missing accessible object:state-changed:focused events for terminal widgets
Last modified: 2018-02-10 15:12:40 UTC
Created attachment 302164 [details] accessible-event listener Steps to reproduce: 1. Launch the attached accessible-event listener in xterm or vte. [*] 2. Launch gnome-terminal. 3. Press Return a couple of times to cause text to be inserted. 4. Press Ctrl+Shift+T to create a new tab. 5. Repeat step 3 for the newly-created tab. Expected results: 1. After step 4, an object:state-changed:focused event would be emitted for the terminal in the new tab. 2. After step 5, the text-changed events would say the source is focused, just like occurred after step 3. Actual results: 1. After step 4, the terminal which gave up focus does emit a state-changed event to indicate it gave up focus (this is good). But the new terminal does not emit this event claiming focus. 2. After step 5, the text-changed events say the source is not focused. Impact: Orca deliberately ignores text-changed events in non-focused terminals because it's quite common for a non-focused terminal to be emitting text-changed events (package manager output, compiling output, etc.). But as a result of that, Orca is not presenting text in certain focused terminals because Orca doesn't know the terminals are focused. [*] Note: The listener prints out text-changed events from gnome-terminal. You do not want to log the events resulting from logging the events. ;)
*** Bug 747486 has been marked as a duplicate of this bug. ***
Hmm. VteTerminal doesn't do anything special here, changing the a11y focus state is done in GtkWidgetAccessible which VteTerminalAccessible derives from. Does this happen with other apps with notebooks (gedit, or just about any prefs dialogue)? There is a gtk bug somewhere with missing focus events (bug 677329) so this might be just another manifestation of that.
Aha. It's yet another (yet another, yet another...) case where Gtk+ is giving us focus: events (deprecated) and failing to give us object:state-changed:focused events. <insert sigh here> Will transfer to Gtk+. In the meantime, I added yet another hack to Orca for this. Thanks Christian for the quick triage!
We're moving to gitlab! As part of this move, we are moving bugs to NEEDINFO if they haven't seen activity in more than a year. If this issue is still important to you and still relevant with GTK+ 3.22 or master, please reopen it and we will migrate it to gitlab.
Rather than re-open this bug, making it a dup of bug 711397 which I've just turned into a generic "missing initial object:state-changed:focused events" bug. *** This bug has been marked as a duplicate of bug 711397 ***