GNOME Bugzilla – Bug 349978
[blocked] Orca does not announce a message change when deleting a message in evolution
Last modified: 2008-07-22 19:27:11 UTC
Please describe the problem: When deleting an evolution message from the message boddy orca does not announce the change. Steps to reproduce: 1. Be sure evolution is set to open the next message upon deletion 2. Open a message and read it 3. Press the delete key to delete the message Actual results: Orca says nothing Expected results: Orca should speak and braille the updated location which will normally be the first cell in the header information Does this happen every time? yes Other information:
Thank you - we'll need to look into whether Orca is getting events for this or not. If it is, we should script for it. If it isn't, we should open a new bug for Evolution and make it a blocker for this bug (i.e., we will still probably have to script for it).
Created attachment 70887 [details] Orca debug transcript generated whilst trying to recreate this problem. I've managed to recreate the problem on Ubuntu Dapper Drake (with all latest updates as of this morning). I've attached an Orca debug.out transcript. The "Delete"'ing of the mail message is at line 6729. Visually what is happening is that Evolution isn't destroying the previous message then bringing up a new window with the new message. It's using the same window. Also the end of this new message is being visually shown, not the beginning. I hit Tab to try to bring the display of the message back up to the mail headers (line 7195), and Evolution crashed. The rest of the debug output shows Orca trying to recover from the COMMS_FAILURES generated by that crash. I now need to see if there are any events generated after I hit the Delete key that we can pick up on and use to show that we've deleted a message and that this is a new one. I'll also see if the Evolution crasher is consistently reproducable.
I've filed bug #351358 against Evolution for the crasher.
The interesting events (plus focus changes and speech/braille output) between the 'Delete' key event and the 'Tab' ket event are: ---------------------------------------------------------------------- OBJECT EVENT: object:selection-changed detail=(0,0) app.name='evolution-2.6' name='Messages' role='tree table' state='ENABLED SENSITIVE SHOWING TRANSIENT VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:selection-changed detail=(0,0) app.name='evolution-2.6' name='Messages' role='tree table' state='ENABLED SENSITIVE SHOWING TRANSIENT VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:selection-changed detail=(0,0) app.name='evolution-2.6' name='Messages' role='tree table' state='ENABLED SENSITIVE SHOWING TRANSIENT VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: focus: detail=(0,0) app.name='evolution-2.6' name='Status' role='table cell' state='CHECKED ENABLED FOCUSABLE FOCUSED SELECTABLE SENSITIVE SHOWING TRANSIENT VISIBLE' LOCUS OF FOCUS: app='evolution-2.6' name='Status' role='table cell' event='focus:' ---------------------------------------------------------------------- OBJECT EVENT: focus: detail=(0,0) app.name='evolution-2.6' name='Status' role='table cell' state='CHECKED ENABLED FOCUSABLE FOCUSED SELECTABLE SENSITIVE SHOWING TRANSIENT VISIBLE' ---------------------------------------------------------------------- evolution.locusOfFocusChanged - mail view: message header list. ---------------------------------------------------------------------- SPEECH OUTPUT: 'Status check box checked' ---------------------------------------------------------------------- BRAILLE LINE: 'Status <x> CheckBox Attachment < > Flagged < > A. Patwardhan <Amod.Patwardhan@Sun.COM> Re: Problems with iDVD 11:10 AM ' VISIBLE: 'Status <x> CheckBox Attachment <', cursor=1 ---------------------------------------------------------------------- OBJECT EVENT: focus: detail=(0,0) app.name='evolution-2.6' name=None role='text' state='ENABLED FOCUSABLE FOCUSED MULTI_LINE SENSITIVE SHOWING VISIBLE' ---------------------------------------------------------------------- LOCUS OF FOCUS: app='evolution-2.6' name='' role='text' event='focus:' ---------------------------------------------------------------------- OBJECT EVENT: focus: detail=(0,0) app.name='evolution-2.6' name=None role='text' state='ENABLED FOCUSABLE FOCUSED MULTI_LINE SENSITIVE SHOWING VISIBLE' ---------------------------------------------------------------------- evolution.locusOfFocusChanged - mail view: current message pane: individual lines of text. ---------------------------------------------------------------------- BRAILLE LINE: 'Just wanted to give you a heads-up that Bath & Body Works has ' VISIBLE: 'Just wanted to give you a heads-', cursor=0 ---------------------------------------------------------------------- SPEECH OUTPUT: 'Just wanted to give you a heads-up that Bath & Body Works has ' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-name detail=(0,0) app.name='evolution-2.6' name='Re: Problems with iDVD' role='frame' state='ACTIVE ENABLED RESIZABLE SENSITIVE SHOWING VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-name detail=(0,0) app.name='evolution-2.6' name='Re: Problems with iDVD' role='frame' state='ACTIVE ENABLED RESIZABLE SENSITIVE SHOWING VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:state-changed:showing detail=(0,0) app.name='evolution-2.6' name=None role='panel' state='DEFUNCT' ---------------------------------------------------------------------- OBJECT EVENT: object:state-changed:visible detail=(0,0) IGNORING DEFUNCT OBJECT ---------------------------------------------------------------------- OBJECT EVENT: object:children-changed detail=(0,0) IGNORING DEFUNCT OBJECT ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-name detail=(0,0) app.name='evolution-2.6' name='Attachment Bar' role='layered pane' state='ENABLED FOCUSABLE SENSITIVE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-name detail=(0,0) app.name='evolution-2.6' name='Attachment Bar' role='layered pane' state='ENABLED FOCUSABLE SENSITIVE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-name detail=(0,0) app.name='evolution-2.6' name='Show Attachments' role='panel' state='ENABLED SENSITIVE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-name detail=(0,0) app.name='evolution-2.6' name='Show Attachments' role='panel' state='ENABLED SENSITIVE' ---------------------------------------------------------------------- OBJECT EVENT: object:state-changed:showing detail=(0,0) IGNORING DEFUNCT OBJECT ---------------------------------------------------------------------- OBJECT EVENT: object:state-changed:visible detail=(0,0) IGNORING DEFUNCT OBJECT ---------------------------------------------------------------------- OBJECT EVENT: object:children-changed detail=(0,0) IGNORING DEFUNCT OBJECT ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-name detail=(0,0) app.name='evolution-2.6' name='Attachment Bar' role='layered pane' state='ENABLED FOCUSABLE SENSITIVE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-name detail=(0,0) app.name='evolution-2.6' name='Attachment Bar' role='layered pane' state='ENABLED FOCUSABLE SENSITIVE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-name detail=(0,0) app.name='evolution-2.6' name='Show Attachments' role='panel' state='ENABLED SENSITIVE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-name detail=(0,0) app.name='evolution-2.6' name='Show Attachments' role='panel' state='ENABLED SENSITIVE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-value detail=(0,0) app.name='evolution-2.6' name=None role='split pane' state='ENABLED FOCUSABLE SENSITIVE SHOWING VERTICAL VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-value detail=(0,0) app.name='evolution-2.6' name=None role='split pane' state='ENABLED FOCUSABLE SENSITIVE SHOWING VERTICAL VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-value detail=(0,0) app.name='evolution-2.6' name=None role='split pane' state='ENABLED FOCUSABLE HORIZONTAL SENSITIVE SHOWING VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-value detail=(0,0) app.name='evolution-2.6' name=None role='split pane' state='ENABLED FOCUSABLE HORIZONTAL SENSITIVE SHOWING VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:state-changed:showing detail=(1,0) app.name='evolution-2.6' name=None role='panel' state='ENABLED SENSITIVE SHOWING VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:state-changed:showing detail=(1,0) app.name='evolution-2.6' name=None role='panel' state='ENABLED SENSITIVE SHOWING VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-value detail=(0,0) app.name='evolution-2.6' name=None role='split pane' state='ENABLED FOCUSABLE SENSITIVE SHOWING VERTICAL VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-value detail=(0,0) app.name='evolution-2.6' name=None role='split pane' state='ENABLED FOCUSABLE SENSITIVE SHOWING VERTICAL VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-value detail=(0,0) app.name='evolution-2.6' name=None role='split pane' state='ENABLED FOCUSABLE HORIZONTAL SENSITIVE SHOWING VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-value detail=(0,0) app.name='evolution-2.6' name=None role='split pane' state='ENABLED FOCUSABLE HORIZONTAL SENSITIVE SHOWING VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-value detail=(0,0) app.name='evolution-2.6' name=None role='split pane' state='ENABLED FOCUSABLE SENSITIVE SHOWING VERTICAL VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-value detail=(0,0) app.name='evolution-2.6' name=None role='split pane' state='ENABLED FOCUSABLE SENSITIVE SHOWING VERTICAL VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-value detail=(0,0) app.name='evolution-2.6' name=None role='split pane' state='ENABLED FOCUSABLE HORIZONTAL SENSITIVE SHOWING VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-value detail=(0,0) app.name='evolution-2.6' name=None role='split pane' state='ENABLED FOCUSABLE HORIZONTAL SENSITIVE SHOWING VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-name detail=(0,0) app.name='evolution-2.6' name='Evolution - INBOX (7 total, 1 unread)' role='frame' state='ENABLED RESIZABLE SENSITIVE SHOWING VISIBLE' ---------------------------------------------------------------------- OBJECT EVENT: object:property-change:accessible-name detail=(0,0) app.name='evolution-2.6' name='Evolution - INBOX (7 total, 1 unread)' role='frame' state='ENABLED RESIZABLE SENSITIVE SHOWING VISIBLE' ---------------------------------------------------------------------- Notice there is a: OBJECT EVENT: object:state-changed:showing detail=(0,0) app.name='evolution-2.6' name=None role='panel' state='DEFUNCT' event. Maybe we can script to look for that (in conjunction with a last keyboard event of 'Delete').
Created attachment 70965 [details] [review] Patch to the Evolution script to hopefully detect that we've just deleted a message. One situation where this patch won't work is if new messages arrive in the viewed mail folder between the last time we had focus in the mail message header summary list and just after pressing the Delete key. Still, it does improve the situation.
Created attachment 70966 [details] Orca debug transcript showing the new message being spoken (at line 280).
There is also a problem in that we do not see any "focus:" events if the user deletes the last message in the mail header summary list. I've filed bug #351516 against Evolution on that.
Per Mike's request, making this bug dependant upon Evolution bug #351516, and holding off on doing anything until that bug has been resolved.
Add accessibility keyword. Apologies for spam.
With latest orca and evolution in Ubuntu Feisty this bug seems to be fixed.