Please note that any of the selected items should honor the selection setting on the braile tab of the orca prefs.  For example, if the item is selected and orca is set to use dots 7 and 8 for selection the selected item should be underlined with dots 7 and 8.  
Layered (Icon) Pane.
--------------------
Using gtk-demo (Icon View->Icon View Basics):

Case #1:
1/ Start Orca.
2/ Start gtk-demo (Icon View->Icon View Basics).
3/ Press Down arrow to move focus to the first icon ("bin").
   The "bin" icon is selected.
4/ Press Down
   The "lib" icon is selected. The "bin icon has been unselected.

At this point we get the following event:
OBJECT EVENT: focus:                                   detail=(0,0)
    app.name='gtk-demo' name='lib' role='icon' state='enabled focusable focused selectable sensitive showing visible' relations=''

with the following braille and speech output:

BRAILLE LINE:  'gtk-demo Application GtkIconView demo Frame ScrollPane LayeredPane lib Icon'
     VISIBLE:  'lib Icon', cursor=1
SPEECH OUTPUT: ''
SPEECH OUTPUT: 'lib icon selected'

this one is correct 
----

Case #2:
1/ Start Orca.
2/ Start gtk-demo (Icon View->Icon View Basics).
3/ Press Down arrow to move focus to the first icon ("bin").
   The "bin" icon is selected.
4/ Press Shift-Down
   Both the "bin" and "lib" icons are now selected.

At this point we get the following event:
OBJECT EVENT: focus:                                   detail=(0,0)
    app.name='gtk-demo' name='lib' role='icon' state='enabled focusable focused selectable sensitive showing visible' relations=''

with the following braille and speech output:

BRAILLE LINE:  'gtk-demo Application GtkIconView demo Frame ScrollPane LayeredPane lib Icon'
     VISIBLE:  'lib Icon', cursor=1
SPEECH OUTPUT: ''
SPEECH OUTPUT: 'lib icon selected'

Once again we are not speaking the bin icon.  The way selection is being spoken is correct.  
----

Case #3:
1/ Start Orca.
2/ Start gtk-demo (Icon View->Icon View Basics).
3/ Press Down arrow to move focus to the first icon ("bin").
   The "bin" icon is selected.
4/ Press Control-Down
   The "bin" icon is still selected and the dotted rectangle
   is around the "lib" icon.

At this point we get the following event:
OBJECT EVENT: focus:                                   detail=(0,0)
    app.name='gtk-demo' name='lib' role='icon' state='enabled focusable focused selectable sensitive showing visible' relations=''

with the following braille and speech output:

BRAILLE LINE:  'gtk-demo Application GtkIconView demo Frame ScrollPane LayeredPane lib Icon'
     VISIBLE:  'lib Icon', cursor=1
SPEECH OUTPUT: ''
SPEECH OUTPUT: 'lib icon'
this one is correct
----

Case #4:
1/ Start Orca.
2/ Start gtk-demo (Icon View->Icon View Basics).
3/ Press Down arrow to move focus to the first icon ("bin").
   The "bin" icon is selected.
4/ Press Control-Space
   The "bin" icon is no longer selected, but is surronded
   by the dotted rectangle.

When Control-Space is pressed, we do not get any events.
[BUG?] This would seem like a bug, otherwise we have no way of
detecting that the selection state for this icon has changed.

Yes, this seems like a bug to me as well.  We should be speaking selected or unselected if the state changes.  Braille marking should change as well.
-----------------------------------------------------------------------------

Tree Table.
-----------
Using gtk-demo (Tree View->Tree Store):

Case #1:
1/ Start Orca.
2/ Start gtk-demo (Tree View->Tree Store).
3/ Press Down arrow to move focus to the "January" row.
   This row is surronded by the dotted rectangle but is 
   not selected.
4/ Press Down
   The "January" row is now selected.
5/ Press Down
   The "New Years Day" row is now selected. The "January"
   row has been unselected.

At this point we get the following events:

OBJECT EVENT: object:state-changed:selected            detail=(0,0)
    app.name='gtk-demo' name='January' role='table cell' state='enabled expandable expanded focusable focused selectable sensitive showing single line transient visible' relations='node child of'

OBJECT EVENT: object:selection-changed                 detail=(0,0)
    app.name='gtk-demo' name='None' role='tree table' state='enabled focusable focused sensitive showing visible manages descendants' relations=''

OBJECT EVENT: object:active-descendant-changed         detail=(78,0)
    app.name='gtk-demo' name='None' role='tree table' state='enabled focusable focused sensitive showing visible manages descendants' relations=''

with the last one generating the following braille and 
speech output:

BRAILLE LINE:  'gtk-demo Application Card planning sheet Frame ScrollPane TreeTable Holiday ColumnHeader New Years Day Cell TREE LEVEL 2'
     VISIBLE:  'New Years Day Cell TREE LEVEL 2', cursor=1
SPEECH OUTPUT: ''
SPEECH OUTPUT: 'Holiday column header'
SPEECH OUTPUT: 'New Years Day'
SPEECH OUTPUT: 'tree level 2'
We actually should say "newyears day selected" 
----

Case #2:
1/ Start Orca.
2/ Start gtk-demo (Tree View->Tree Store).
3/ Press Down arrow to move focus to the "January" row.
   This row is surronded by the dotted rectangle but is
   not selected.
4/ Press Down
   The "January" row is now selected.
5/ Press Shift-Down
   Both the "January" and "New Years Day" rows are selected.

At this point we get the following events:

OBJECT EVENT: object:state-changed:selected            detail=(0,0)
    app.name='gtk-demo' name='January' role='table cell' state='enabled expandable expanded focusable focused selectable selected sensitive showing single line transient visible' relations='node child of'

OBJECT EVENT: object:state-changed:selected            detail=(1,0)
    app.name='gtk-demo' name='January' role='table cell' state='enabled expandable expanded focusable focused selectable selected sensitive showing single line transient visible' relations='node child of'

OBJECT EVENT: object:selection-changed                 detail=(0,0)
    app.name='gtk-demo' name='None' role='tree table' state='enabled focusable focused sensitive showing visible manages descendants' relations=''

OBJECT EVENT: object:active-descendant-changed         detail=(78,0)
    app.name='gtk-demo' name='None' role='tree table' state='enabled focusable focused sensitive showing visible manages descendants' relations=''

with the last one generating the following braille 
and speech output:

BRAILLE LINE:  'gtk-demo Application Card planning sheet Frame ScrollPane TreeTable Holiday ColumnHeader New Years Day Cell TREE LEVEL 2'
     VISIBLE:  'New Years Day Cell TREE LEVEL 2', cursor=1
SPEECH OUTPUT: ''
SPEECH OUTPUT: 'Holiday column header'
SPEECH OUTPUT: 'New Years Day'
SPEECH OUTPUT: 'tree level 2'
Once again here we should speak "new years day tree level 2 selected"  
----

Case #3:
1/ Start Orca.
2/ Start gtk-demo (Tree View->Tree Store).
3/ Press Down arrow to move focus to the "January" row.
   This row is surronded by the dotted rectangle but is
   not selected.
4/ Press Down
   The "January" row is now selected.
5/ Press Control-Down
   The "January" row is still selected and the dotted rectangle
   is around the "New Years Day" row.

At this point we get the following event:

OBJECT EVENT: object:active-descendant-changed         detail=(78,0)
    app.name='gtk-demo' name='None' role='tree table' state='enabled focusable focused sensitive showing visible manages descendants' relations=''

with the following braille and speech output:

BRAILLE LINE:  'gtk-demo Application Card planning sheet Frame ScrollPane TreeTable Holiday ColumnHeader New Years Day Cell TREE LEVEL 2'
     VISIBLE:  'New Years Day Cell TREE LEVEL 2', cursor=1
SPEECH OUTPUT: ''
SPEECH OUTPUT: 'Holiday column header'
SPEECH OUTPUT: 'New Years Day'
SPEECH OUTPUT: 'tree level 2'
this one is correct.
----

Case #4:
1/ Start Orca.
2/ Start gtk-demo (Tree View->Tree Store).
3/ Press Down arrow to move focus to the "January" row.
   This row is surronded by the dotted rectangle but is
   not selected.
4/ Press Down
   The "January" row is now selected.
5/ Press Control-Space
   The "January" row is no longer selected, but is surronded
   by the dotted rectangle.

At this point we get the following events:

OBJECT EVENT: object:state-changed:selected            detail=(0,0)
    app.name='gtk-demo' name='January' role='table cell' state='enabled expandable expanded focusable focused selectable sensitive showing single line transient visible' relations='node child of'

OBJECT EVENT: object:selection-changed                 detail=(0,0)
    app.name='gtk-demo' name='None' role='tree table' state='enabled focusable focused sensitive showing visible manages descendants' relations=''

but no braille or speech output is generated.
This is a bug.  We should say "unselected" 
----

Case #5:
1/ Start Orca.
2/ Start gtk-demo (Tree View->Tree Store).
3/ Press Down arrow to move focus to the "January" row.
   This row is surronded by the dotted rectangle but is
   not selected.
4/ Press Down
   The "January" row is now selected.
5/ Press Down four more times.
   The "February" row is now selected.
6/ Press Shift-Left
   The three rows after the "February" row are collapsed.

At this point we get the following event:

OBJECT EVENT: object:state-changed:expanded            detail=(0,0)
    app.name='gtk-demo' name='February' role='table cell' state='active enabled expandable focusable selectable selected sensitive showing single line transient visible' relations='node child of'

with the following braille and speech output:

BRAILLE LINE:  'gtk-demo Application Card planning sheet Frame ScrollPane TreeTable Holiday ColumnHeader February Cell collapsed TREE LEVEL 1'
     VISIBLE:  'February Cell collapsed TREE LEV', cursor=1
SPEECH OUTPUT: 'collapsed'
This is correct.
=============================================================================
