[orca] Updated gtk3 regression tests for Orca



commit 95628a733a9c539804f3a2687a4db2d4f4582aa6
Author: Joanmarie Diggs <jdiggs igalia com>
Date:   Mon Dec 19 12:07:20 2011 -0500

    Updated gtk3 regression tests for Orca

 src/orca/settings_manager.py                     |    2 +-
 test/keystrokes/gtk-demo/role_accel_label.py     |   32 ++++++------
 test/keystrokes/gtk-demo/role_check_menu_item.py |   12 ++--
 test/keystrokes/gtk-demo/role_column_header.py   |   10 ++--
 test/keystrokes/gtk-demo/role_combo_box.py       |   64 ++++++++--------------
 test/keystrokes/gtk-demo/role_dialog.py          |   24 ++++-----
 test/keystrokes/gtk-demo/role_icon.py            |   15 ++---
 test/keystrokes/gtk-demo/role_label.py           |   45 ++++++---------
 test/keystrokes/gtk-demo/role_page_tab.py        |   15 ++----
 test/keystrokes/gtk-demo/role_push_button.py     |   15 ++----
 test/keystrokes/gtk-demo/role_radio_menu_item.py |   24 ++++----
 test/keystrokes/gtk-demo/role_spin_button.py     |   14 ++---
 test/keystrokes/gtk-demo/role_split_pane.py      |    8 ++--
 test/keystrokes/gtk-demo/role_text_multiline.py  |   30 +++++-----
 test/keystrokes/gtk-demo/role_toggle_button.py   |   28 ++--------
 test/keystrokes/gtk-demo/role_toolbar.py         |   17 ++-----
 test/keystrokes/gtk-demo/role_tooltip.py         |   32 -----------
 test/keystrokes/gtk-demo/spoken_indentation.py   |    8 ---
 18 files changed, 142 insertions(+), 253 deletions(-)
---
diff --git a/src/orca/settings_manager.py b/src/orca/settings_manager.py
index da13747..68e8bb0 100644
--- a/src/orca/settings_manager.py
+++ b/src/orca/settings_manager.py
@@ -231,7 +231,7 @@ class SettingsManager(object):
             success = True
             msg += "failed due to ImportError. Giving up."
         except AttributeError:
-            msg += "failed due to AttributeError. Will try again."
+            return False
         else:
             msg += "succeeded."
             fileHnd.close()
diff --git a/test/keystrokes/gtk-demo/role_accel_label.py b/test/keystrokes/gtk-demo/role_accel_label.py
index 5c43602..f59f7d6 100644
--- a/test/keystrokes/gtk-demo/role_accel_label.py
+++ b/test/keystrokes/gtk-demo/role_accel_label.py
@@ -42,7 +42,7 @@ sequence.append(utils.StartRecordingAction())
 sequence.append(WaitForFocus("New", acc_role=pyatspi.ROLE_MENU_ITEM))
 sequence.append(utils.AssertPresentationAction(
     "New menu item",
-    ["BUG? - For some reason, we're not presenting our location. This problem is present in Gtk+ 3, but not Gtk+ 2."]))
+    ["KNOWN ISSUE - See Gtk bug 654410."]))
 #    ["BRAILLE LINE:  'gtk-demo Application UI Manager Frame MenuBar New(Control n)'",
 #     "     VISIBLE:  'New(Control n)', cursor=1",
 #     "SPEECH OUTPUT: 'New Control n'"]))
@@ -56,12 +56,12 @@ sequence.append(KeyComboAction("KP_Enter"))
 sequence.append(PauseAction(3000))
 sequence.append(utils.AssertPresentationAction(
     "New menu item Where Am I",
-    ["BRAILLE LINE:  'gtk-demo Application UI Manager Frame MenuBar New(Control n)'",
-     "     VISIBLE:  'New(Control n)', cursor=1",
+    ["BRAILLE LINE:  'gtk-demo Application UI Manager Frame MenuBar New\((Control|Primary) n\)'",
+     "     VISIBLE:  'New\((Control|Primary) n\)', cursor=1",
      "SPEECH OUTPUT: 'File'",
      "SPEECH OUTPUT: 'menu'",
      "SPEECH OUTPUT: 'New'",
-     "SPEECH OUTPUT: 'Control n 1 of 5.'",
+     "SPEECH OUTPUT: '(Control|Primary) n 1 of 5.'",
      "SPEECH OUTPUT: 'n'"]))
 
 ########################################################################
@@ -72,9 +72,9 @@ sequence.append(KeyComboAction("Down"))
 sequence.append(WaitForFocus("Open", acc_role=pyatspi.ROLE_MENU_ITEM))
 sequence.append(utils.AssertPresentationAction(
     "Open menu item",
-    ["BRAILLE LINE:  'gtk-demo Application UI Manager Frame MenuBar Open(Control o)'",
-     "     VISIBLE:  'Open(Control o)', cursor=1",
-     "SPEECH OUTPUT: 'Open Control o'"]))
+    ["BRAILLE LINE:  'gtk-demo Application UI Manager Frame MenuBar Open\((Control|Primary) o\)'",
+     "     VISIBLE:  'Open\((Control|Primary) o\)', cursor=1",
+     "SPEECH OUTPUT: 'Open (Control|Primary) o'"]))
 
 ########################################################################
 # Now, continue on down the menu.
@@ -84,9 +84,9 @@ sequence.append(KeyComboAction("Down"))
 sequence.append(WaitForFocus("Save", acc_role=pyatspi.ROLE_MENU_ITEM))
 sequence.append(utils.AssertPresentationAction(
     "Save menu item",
-    ["BRAILLE LINE:  'gtk-demo Application UI Manager Frame MenuBar Save(Control s)'",
-     "     VISIBLE:  'Save(Control s)', cursor=1",
-     "SPEECH OUTPUT: 'Save Control s'"]))
+    ["BRAILLE LINE:  'gtk-demo Application UI Manager Frame MenuBar Save\((Control|Primary) s\)'",
+     "     VISIBLE:  'Save\((Control|Primary) s\)', cursor=1",
+     "SPEECH OUTPUT: 'Save (Control|Primary) s'"]))
 
 ########################################################################
 # Now, continue on down the menu.
@@ -96,9 +96,9 @@ sequence.append(KeyComboAction("Down"))
 sequence.append(WaitForFocus("Save As...", acc_role=pyatspi.ROLE_MENU_ITEM))
 sequence.append(utils.AssertPresentationAction(
     "Save As... menu item",
-    ["BRAILLE LINE:  'gtk-demo Application UI Manager Frame MenuBar Save As...(Control s)'",
-     "     VISIBLE:  'Save As...(Control s)', cursor=1",
-     "SPEECH OUTPUT: 'Save As... Control s'"]))
+    ["BRAILLE LINE:  'gtk-demo Application UI Manager Frame MenuBar Save As...\((Control|Primary) s\)'",
+     "     VISIBLE:  'Save As...\((Control|Primary) s\)', cursor=1",
+     "SPEECH OUTPUT: 'Save As... (Control|Primary) s'"]))
 
 ########################################################################
 # Now, continue on down the menu.
@@ -108,9 +108,9 @@ sequence.append(KeyComboAction("Down"))
 sequence.append(WaitForFocus("Quit", acc_role=pyatspi.ROLE_MENU_ITEM))
 sequence.append(utils.AssertPresentationAction(
     "Quit menu item",
-    ["BRAILLE LINE:  'gtk-demo Application UI Manager Frame MenuBar Quit(Control q)'",
-     "     VISIBLE:  'Quit(Control q)', cursor=1",
-     "SPEECH OUTPUT: 'Quit Control q'"]))
+    ["BRAILLE LINE:  'gtk-demo Application UI Manager Frame MenuBar Quit\((Control|Primary) q\)'",
+     "     VISIBLE:  'Quit\((Control|Primary) q\)', cursor=1",
+     "SPEECH OUTPUT: 'Quit (Control|Primary) q'"]))
 
 ########################################################################
 # Dismiss the menu once we get to the "Quit" menu item and wait for
diff --git a/test/keystrokes/gtk-demo/role_check_menu_item.py b/test/keystrokes/gtk-demo/role_check_menu_item.py
index 5074a83..8ed3ec8 100644
--- a/test/keystrokes/gtk-demo/role_check_menu_item.py
+++ b/test/keystrokes/gtk-demo/role_check_menu_item.py
@@ -37,9 +37,9 @@ sequence.append(KeyComboAction("Up"))
 sequence.append(WaitForFocus("Bold", acc_role=pyatspi.ROLE_CHECK_MENU_ITEM))
 sequence.append(utils.AssertPresentationAction(
     "Bold check item",
-    ["BRAILLE LINE:  'gtk-demo Application Application Window Frame MenuBar <x> Bold CheckItem(Control b)'",
-     "     VISIBLE:  '<x> Bold CheckItem(Control b)', cursor=1",
-     "SPEECH OUTPUT: 'Bold check item checked Control b'"]))
+    ["BRAILLE LINE:  'gtk-demo Application Application Window Frame MenuBar <x> Bold CheckItem\((Control|Primary) b\)'",
+     "     VISIBLE:  '<x> Bold CheckItem\((Control|Primary) b\)', cursor=1",
+     "SPEECH OUTPUT: 'Bold check item checked (Control|Primary) b'"]))
 
 ########################################################################
 # Do a basic "Where Am I" via KP_Enter.
@@ -49,12 +49,12 @@ sequence.append(KeyComboAction("KP_Enter"))
 sequence.append(PauseAction(3000))
 sequence.append(utils.AssertPresentationAction(
     "Bold check item Where Am I",
-    ["BRAILLE LINE:  'gtk-demo Application Application Window Frame MenuBar <x> Bold CheckItem(Control b)'",
-     "     VISIBLE:  '<x> Bold CheckItem(Control b)', cursor=1",
+    ["BRAILLE LINE:  'gtk-demo Application Application Window Frame MenuBar <x> Bold CheckItem\((Control|Primary) b\)'",
+     "     VISIBLE:  '<x> Bold CheckItem\((Control|Primary) b\)', cursor=1",
      "SPEECH OUTPUT: 'Preferences'",
      "SPEECH OUTPUT: 'menu'",
      "SPEECH OUTPUT: 'Bold'",
-     "SPEECH OUTPUT: 'check item checked Control b 4 of 4.'",
+     "SPEECH OUTPUT: 'check item checked (Control|Primary) b 4 of 4.'",
      "SPEECH OUTPUT: 'b'"]))
 
 ########################################################################
diff --git a/test/keystrokes/gtk-demo/role_column_header.py b/test/keystrokes/gtk-demo/role_column_header.py
index 592dc34..9be2469 100644
--- a/test/keystrokes/gtk-demo/role_column_header.py
+++ b/test/keystrokes/gtk-demo/role_column_header.py
@@ -71,8 +71,9 @@ sequence.append(KeyComboAction("Down", 500))
 sequence.append(WaitForFocus(acc_role=pyatspi.ROLE_TABLE))
 sequence.append(utils.AssertPresentationAction(
     "Enter table",
-    ["BRAILLE LINE:  'gtk-demo Application GtkListStore demo Frame ScrollPane Table Fixed? ColumnHeader < > Fixed? 60482 Normal scrollable notebooks and hidden tabs  '",
-     "     VISIBLE:  '< > Fixed? 60482 Normal scrollab', cursor=1",
+    ["BUG? - For some reason, the VISIBLE braille is not scrolling to the focused cell.",
+     "BRAILLE LINE:  'gtk-demo Application GtkListStore demo Frame ScrollPane Table Fixed? ColumnHeader < > Fixed? 60482 Normal scrollable notebooks and hidden tabs  '",
+     "     VISIBLE:  'gtk-demo Application GtkListStor', cursor=1",
      "SPEECH OUTPUT: 'Fixed? column header Fixed? check box not checked 60482 Normal scrollable notebooks and hidden tabs image'"]))
 
 #    ["KNOWN ISSUE -   Currently we are speaking the selected state here. We probably should not be doing this.",
@@ -156,8 +157,9 @@ sequence.append(WaitAction("object:active-descendant-changed",
                            5000))
 sequence.append(utils.AssertPresentationAction(
     "60482 cell",
-    ["BRAILLE LINE:  'gtk-demo Application GtkListStore demo Frame ScrollPane Table Bug number ColumnHeader < > Fixed? 60482 Normal scrollable notebooks and hidden tabs  '",
-     "     VISIBLE:  '60482 Normal scrollable notebook', cursor=1",
+    ["BUG? - For some reason, the VISIBLE braille is not scrolling to the focused cell.",
+     "BRAILLE LINE:  'gtk-demo Application GtkListStore demo Frame ScrollPane Table Bug number ColumnHeader < > Fixed? 60482 Normal scrollable notebooks and hidden tabs  '",
+     "     VISIBLE:  'gtk-demo Application GtkListStor', cursor=1",
      "SPEECH OUTPUT: 'Bug number column header 60482'"]))
 
 ########################################################################
diff --git a/test/keystrokes/gtk-demo/role_combo_box.py b/test/keystrokes/gtk-demo/role_combo_box.py
index 179826d..cd9306a 100644
--- a/test/keystrokes/gtk-demo/role_combo_box.py
+++ b/test/keystrokes/gtk-demo/role_combo_box.py
@@ -20,6 +20,8 @@ sequence.append(KeyComboAction("<Control>f"))
 sequence.append(WaitForFocus(acc_role=pyatspi.ROLE_TEXT))
 sequence.append(TypeAction("Combo boxes", 1000))
 sequence.append(KeyComboAction("Return", 500))
+sequence.append(PauseAction(1000))
+sequence.append(KeyComboAction("Return", 500))
 
 ########################################################################
 # When the Combo boxes demo window appears, open the combo box.
@@ -35,34 +37,20 @@ sequence.append(utils.AssertPresentationAction(
      "     VISIBLE:  'Combo boxes Frame', cursor=1",
      "BRAILLE LINE:  'gtk-demo Application Combo boxes Frame Some stock icons Panel Warning Combo'",
      "     VISIBLE:  'Warning Combo', cursor=1",
-     "BRAILLE LINE:  'gtk-demo Application Window'",
-     "     VISIBLE:  'gtk-demo Application Window', cursor=22",
-     "BRAILLE LINE:  'gtk-demo Application Combo boxes Frame Some stock icons Panel  ComboWarning Warning'",
-     "     VISIBLE:  'Warning', cursor=1",
      "SPEECH OUTPUT: 'Combo boxes frame'",
-     "SPEECH OUTPUT: 'Some stock icons panel Warning combo box'",
-     "SPEECH OUTPUT: 'window'",
-     "SPEECH OUTPUT: 'Some stock icons panel Warning'"]))
+     "SPEECH OUTPUT: 'Some stock icons panel Warning combo box'"]))
 
 ########################################################################
 # Do a basic "Where Am I" via KP_Enter.
 #
-# JD to WDW: This to me looks like two bug fixes:
-# 1) Lost a trailing space
-# 2) Before we were saying "menu"; I don't think we should in a combo box,
-#    even though technically there is a menu in between a combo box and
-#    the options it contains in the hierarchy.
-# Question: Should we be presenting the containing panel or not?
-#
 sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("KP_Enter"))
 sequence.append(PauseAction(3000))
 sequence.append(utils.AssertPresentationAction(
     "Warning combo box item Where Am I",
-    ["BRAILLE LINE:  'gtk-demo Application Combo boxes Frame Some stock icons Panel  ComboWarning Warning'",
-     "     VISIBLE:  'Warning', cursor=1",
-     "SPEECH OUTPUT: 'Some stock icons'",
-     "SPEECH OUTPUT: 'panel'",
+    ["BRAILLE LINE:  'gtk-demo Application Combo boxes Frame Some stock icons Panel Warning Combo'",
+     "     VISIBLE:  'Warning Combo', cursor=1",
+     "SPEECH OUTPUT: 'combo box'",
      "SPEECH OUTPUT: 'Warning'",
      "SPEECH OUTPUT: '1 of 5'"]))
 
@@ -73,29 +61,21 @@ sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("Down"))
 sequence.append(utils.AssertPresentationAction(
     "New combo box item",
-    ["BRAILLE LINE:  'gtk-demo Application Combo boxes Frame Some stock icons Panel  ComboWarning New'",
-     "     VISIBLE:  'New', cursor=1",
+    ["BRAILLE LINE:  'gtk-demo Application Combo boxes Frame Some stock icons Panel New Combo'",
+     "     VISIBLE:  'New Combo', cursor=1",
      "SPEECH OUTPUT: 'New'"]))
 
 ########################################################################
 # Do a basic "Where Am I" via KP_Enter.
 #
-# JD to WDW: This to me looks like two bug fixes:
-# 1) Lost a trailing space
-# 2) Before we were saying "menu"; I don't think we should in a combo box,
-#    even though technically there is a menu in between a combo box and
-#    the options it contains in the hierarchy.
-# Question: Should we be presenting the containing panel or not?
-#
 sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("KP_Enter"))
 sequence.append(PauseAction(3000))
 sequence.append(utils.AssertPresentationAction(
     "New combo box item Where Am I",
-    ["BRAILLE LINE:  'gtk-demo Application Combo boxes Frame Some stock icons Panel  ComboWarning New'",
-     "     VISIBLE:  'New', cursor=1",
-     "SPEECH OUTPUT: 'Some stock icons'",
-     "SPEECH OUTPUT: 'panel'",
+    ["BRAILLE LINE:  'gtk-demo Application Combo boxes Frame Some stock icons Panel New Combo'",
+     "     VISIBLE:  'New Combo', cursor=1",
+     "SPEECH OUTPUT: 'combo box'",
      "SPEECH OUTPUT: 'New'",
      "SPEECH OUTPUT: '3 of 5'"]))
 
@@ -105,16 +85,23 @@ sequence.append(utils.AssertPresentationAction(
 #
 sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("Return"))
-sequence.append(WaitForFocus("New", acc_role=pyatspi.ROLE_COMBO_BOX))
 sequence.append(utils.AssertPresentationAction(
     "New combo box item selection",
-    ["BRAILLE LINE:  'gtk-demo Application Combo boxes Frame'",
+    ["KNOWN ISSUE - We get some additional crap presented due to unexpected/improper window events from Gtk+",
+     "BRAILLE LINE:  'gtk-demo Application Combo boxes Frame'",
      "     VISIBLE:  'Combo boxes Frame', cursor=1",
      "BRAILLE LINE:  'gtk-demo Application Combo boxes Frame Some stock icons Panel New Combo'",
      "     VISIBLE:  'New Combo', cursor=1",
+     "BRAILLE LINE:  'gtk-demo Application Window'",
+     "     VISIBLE:  'gtk-demo Application Window', cursor=22",
+     "BRAILLE LINE:  'gtk-demo Application Combo boxes Frame Some stock icons Panel  ComboNew New'",
+     "     VISIBLE:  'New', cursor=1",
      "SPEECH OUTPUT: 'Combo boxes frame'",
-     "SPEECH OUTPUT: 'Some stock icons panel New combo box'"]))
+     "SPEECH OUTPUT: 'Some stock icons panel New combo box'",
+     "SPEECH OUTPUT: 'window'",
+     "SPEECH OUTPUT: 'Some stock icons panel New'"]))
 
+sequence.append(KeyComboAction("Escape"))
 sequence.append(KeyComboAction("Tab"))
 sequence.append(WaitForFocus("Boston", acc_role=pyatspi.ROLE_COMBO_BOX))
 
@@ -139,8 +126,8 @@ sequence.append(utils.StartRecordingAction())
 sequence.append(TypeAction("r", 500))
 sequence.append(utils.AssertPresentationAction(
     "Editable text combo box typing",
-    ["BRAILLE LINE:  'gtk-demo Application Combo boxes Frame Editable Panel Fou $l'",
-     "     VISIBLE:  'Fou $l', cursor=5",
+    ["BRAILLE LINE:  'gtk-demo Application Combo boxes Frame Editable Panel Four $l'",
+     "     VISIBLE:  'Four $l', cursor=5",
      "BRAILLE LINE:  'gtk-demo Application Combo boxes Frame Editable Panel Four $l'",
      "     VISIBLE:  'Four $l', cursor=5"]))
 
@@ -229,11 +216,8 @@ sequence.append(utils.AssertPresentationAction(
      "     VISIBLE:  'Combo boxes Frame', cursor=1",
      "BRAILLE LINE:  'gtk-demo Application Combo boxes Frame Editable Panel Two $l Combo'",
      "     VISIBLE:  'Two $l Combo', cursor=1",
-     "BRAILLE LINE:  'gtk-demo Application Combo boxes Frame Editable Panel Two $l'",
-     "     VISIBLE:  'Two $l', cursor=1",
      "SPEECH OUTPUT: 'Combo boxes frame'",
-     "SPEECH OUTPUT: 'Editable panel Two combo box'",
-     "SPEECH OUTPUT: 'Two'"]))
+     "SPEECH OUTPUT: 'Editable panel Two combo box'"]))
 
 sequence.append(KeyComboAction("<Shift>ISO_Left_Tab"))
 sequence.append(WaitForFocus(acc_role=pyatspi.ROLE_TEXT))
diff --git a/test/keystrokes/gtk-demo/role_dialog.py b/test/keystrokes/gtk-demo/role_dialog.py
index c72938b..5f0af45 100644
--- a/test/keystrokes/gtk-demo/role_dialog.py
+++ b/test/keystrokes/gtk-demo/role_dialog.py
@@ -18,35 +18,33 @@ sequence.append(WaitForWindowActivate("GTK+ Code Demos"))
 #
 sequence.append(KeyComboAction("<Control>f"))
 sequence.append(WaitForFocus(acc_role=pyatspi.ROLE_TEXT))
-sequence.append(TypeAction("Expander", 1000))
+sequence.append(TypeAction("Expander"))
+sequence.append(PauseAction(1000))
 
 sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("Return", 500))
-#sequence.append(WaitForWindowActivate("GtkExpander",None))
-sequence.append(WaitAction("object:state-changed:focused",
-                           None,
-                           None,
-                           pyatspi.ROLE_TOGGLE_BUTTON,
-                           5000))
 sequence.append(utils.AssertPresentationAction(
     "Dialog automatic reading",
-    ["BRAILLE LINE:  'gtk-demo Application Window  $l'",
-     "     VISIBLE:  'gtk-demo Application Window  $l', cursor=29",
+    ["KNOWN ISSUE - Sometimes the test present the toggle button; sometimes not. Seems to be a test and timing issue.",
+     "BRAILLE LINE:  'gtk-demo Application Window Expander $l'",
+     "     VISIBLE:  'emo Application Window Expander ', cursor=24",
      "BRAILLE LINE:  'gtk-demo Application Window  $l'",
      "     VISIBLE:  'gtk-demo Application Window  $l', cursor=29",
      "BRAILLE LINE:  'gtk-demo Application GTK+ Code Demos Frame TabList Widget (double click for demo) Page ScrollPane TreeTable Widget (double click for demo) ColumnHeader Expander TREE LEVEL 1'",
-     "     VISIBLE:  'Expander TREE LEVEL 1', cursor=1",
-     "BRAILLE LINE:  'gtk-demo Application GtkExpander Dialog'",
-     "     VISIBLE:  'GtkExpander Dialog', cursor=1",
+     "     VISIBLE:  'gtk-demo Application GTK+ Code D', cursor=1",
      "BRAILLE LINE:  'gtk-demo Application GtkExpander Dialog & y Details ToggleButton'",
      "     VISIBLE:  '& y Details ToggleButton', cursor=1",
+     "BRAILLE LINE:  'gtk-demo Application GtkExpander Dialog'",
+     "     VISIBLE:  'GtkExpander Dialog', cursor=1",
      "SPEECH OUTPUT: 'Widget (double click for demo) page Widget (double click for demo) column header Expander tree level 1'",
      "SPEECH OUTPUT: 'GtkExpander Expander demo. Click on the triangle for details.'",
      "SPEECH OUTPUT: 'Details toggle button not pressed'"]))
 
 ########################################################################
-# Do a basic "Where Am I" via KP_Enter.
+# Give focus to the toggle button. Do a basic "Where Am I" via KP_Enter.
 #
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyComboAction("Tab"))
 sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("KP_Enter"))
 sequence.append(PauseAction(3000))
diff --git a/test/keystrokes/gtk-demo/role_icon.py b/test/keystrokes/gtk-demo/role_icon.py
index 4023e2c..4a25657 100644
--- a/test/keystrokes/gtk-demo/role_icon.py
+++ b/test/keystrokes/gtk-demo/role_icon.py
@@ -39,18 +39,15 @@ sequence.append(utils.AssertPresentationAction(
     "Layered pane focus",
     ["KNOWN ISSUE - Sometimes we get the 'Icon View Basics' stuff; other times we don't. Probably a timing issue.",
      "BRAILLE LINE:  'gtk-demo Application Window Icon View Basics $l'",
-     "     VISIBLE:  'Icon View Basics $l', cursor=17",
-     "BRAILLE LINE:  'Window Icon View Basics $l'",
-     "     VISIBLE:  'Window Icon View Basics $l', cursor=24",
-     "BRAILLE LINE:  'Window Icon View Basics $l'",
-     "     VISIBLE:  'Window Icon View Basics $l', cursor=8",
+     "     VISIBLE:  'ication Window Icon View Basics ', cursor=16",
+     "BRAILLE LINE:  'gtk-demo Application Window  $l'",
+     "     VISIBLE:  'gtk-demo Application Window  $l', cursor=29",
      "BRAILLE LINE:  'gtk-demo Application GTK+ Code Demos Frame TabList Widget (double click for demo) Page ScrollPane TreeTable Widget (double click for demo) ColumnHeader Icon View Basics TREE LEVEL 2'",
-     "     VISIBLE:  'Icon View Basics TREE LEVEL 2', cursor=1",
+     "     VISIBLE:  'gtk-demo Application GTK+ Code D', cursor=1",
      "BRAILLE LINE:  'gtk-demo Application GtkIconView demo Frame'",
      "     VISIBLE:  'GtkIconView demo Frame', cursor=1",
      "BRAILLE LINE:  'gtk-demo Application GtkIconView demo Frame ScrollPane LayeredPane'",
      "     VISIBLE:  'LayeredPane', cursor=1",
-     "SPEECH OUTPUT: 'text Icon View Basics'",
      "SPEECH OUTPUT: 'Widget (double click for demo) page Widget (double click for demo) column header Icon View Basics tree level 2'",
      "SPEECH OUTPUT: 'GtkIconView demo frame'",
      "SPEECH OUTPUT: 'layered pane'"]))
@@ -92,7 +89,7 @@ sequence.append(utils.AssertPresentationAction(
      "     VISIBLE:  'bin Icon', cursor=1",
      "SPEECH OUTPUT: 'Icon panel'",
      "SPEECH OUTPUT: 'bin'",
-     "SPEECH OUTPUT: '1 of 22 items selected on 1 of 22'"]))
+     "SPEECH OUTPUT: '1 of 20 items selected on 1 of 20'"]))
 
 ########################################################################
 # Arrow right and wait for the next icon to be selected.
@@ -130,7 +127,7 @@ sequence.append(utils.AssertPresentationAction(
      "     VISIBLE:  'bin Icon', cursor=1",
      "SPEECH OUTPUT: 'Icon panel'",
      "SPEECH OUTPUT: 'bin'",
-     "SPEECH OUTPUT: '2 of 22 items selected on 1 of 22'"]))
+     "SPEECH OUTPUT: '2 of 20 items selected on 1 of 20'"]))
 
 ########################################################################
 # Close the GtkIconView demo window
diff --git a/test/keystrokes/gtk-demo/role_label.py b/test/keystrokes/gtk-demo/role_label.py
index 4df3311..1f6d560 100644
--- a/test/keystrokes/gtk-demo/role_label.py
+++ b/test/keystrokes/gtk-demo/role_label.py
@@ -68,15 +68,6 @@ sequence.append(utils.AssertPresentationAction(
 ########################################################################
 # Do an extended "Where Am I" via double KP_Enter.
 #
-# JD to WDW: The difference here is that we are not repeating the speech
-# output. Personally I think that's a good thing. Is there any reason
-# we should be duplicating output in the case of a detailed/extended
-# where am i?
-#
-# WDW to JD: the first should be for the first KP_Enter (i.e., basic
-# where am I) and the second should be for the second KP_Enter (i.e.,
-# extended where am I). So, why did we end up losing one?
-#
 sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("KP_Enter"))
 sequence.append(KeyComboAction("KP_Enter"))
@@ -105,10 +96,10 @@ sequence.append(WaitAction("object:text-caret-moved",
                            5000))
 sequence.append(utils.AssertPresentationAction(
     "This message box label caret movement to 'h'",
-    ["BRAILLE LINE:  'gtk-demo Application Information Alert This message box has  $l'",
-     "     VISIBLE:  'This message box has  $l', cursor=1",
-     "BRAILLE LINE:  'gtk-demo Application Information Alert This message box has  $l'",
-     "     VISIBLE:  'This message box has  $l', cursor=2",
+    ["BRAILLE LINE:  'gtk-demo Application Information Alert This message box has been popped up the following $l'",
+     "     VISIBLE:  'This message box has been popped', cursor=1",
+     "BRAILLE LINE:  'gtk-demo Application Information Alert This message box has been popped up the following $l'",
+     "     VISIBLE:  'This message box has been popped', cursor=2",
      "SPEECH OUTPUT: 'T'",
      "SPEECH OUTPUT: 'unselected' voice=system",
      "SPEECH OUTPUT: 'h'"]))
@@ -125,8 +116,8 @@ sequence.append(WaitAction("object:text-selection-changed",
                            5000))
 sequence.append(utils.AssertPresentationAction(
     "This message box label caret select 'his' of 'This'",
-    ["BRAILLE LINE:  'gtk-demo Application Information Alert This message box has  $l'",
-     "     VISIBLE:  'This message box has  $l', cursor=5",
+    ["BRAILLE LINE:  'gtk-demo Application Information Alert This message box has been popped up the following $l'",
+     "     VISIBLE:  'This message box has been popped', cursor=5",
      "SPEECH OUTPUT: 'his'",
      "SPEECH OUTPUT: 'selected' voice=system"]))
 
@@ -138,8 +129,8 @@ sequence.append(KeyComboAction("KP_Enter"))
 sequence.append(PauseAction(3000))
 sequence.append(utils.AssertPresentationAction(
     "This message box label caret selection Where Am I",
-    ["BRAILLE LINE:  'gtk-demo Application Information Alert This message box has  $l'",
-     "     VISIBLE:  'This message box has  $l', cursor=5",
+    ["BRAILLE LINE:  'gtk-demo Application Information Alert This message box has been popped up the following $l'",
+     "     VISIBLE:  'This message box has been popped', cursor=5",
      "SPEECH OUTPUT: 'This message box has been popped up the following",
      "number of times:'",
      "SPEECH OUTPUT: 'selected label'"]))
@@ -153,10 +144,10 @@ sequence.append(KeyComboAction("KP_Enter"))
 sequence.append(PauseAction(3000))
 sequence.append(utils.AssertPresentationAction(
     "This message box label caret selection Extended Where Am I",
-    ["BRAILLE LINE:  'gtk-demo Application Information Alert This message box has  $l'",
-     "     VISIBLE:  'This message box has  $l', cursor=5",
-     "BRAILLE LINE:  'gtk-demo Application Information Alert This message box has  $l'",
-     "     VISIBLE:  'This message box has  $l', cursor=5",
+    ["BRAILLE LINE:  'gtk-demo Application Information Alert This message box has been popped up the following $l'",
+     "     VISIBLE:  'This message box has been popped', cursor=5",
+     "BRAILLE LINE:  'gtk-demo Application Information Alert This message box has been popped up the following $l'",
+     "     VISIBLE:  'This message box has been popped', cursor=5",
      "SPEECH OUTPUT: 'This message box has been popped up the following",
      "number of times:'",
      "SPEECH OUTPUT: 'selected label'"]))
@@ -175,10 +166,10 @@ sequence.append(WaitAction("object:text-selection-changed",
                            5000))
 sequence.append(utils.AssertPresentationAction(
     "This message box label caret select 'T' in 'This'",
-    ["BRAILLE LINE:  'gtk-demo Application Information Alert This message box has  $l'",
-     "     VISIBLE:  'This message box has  $l', cursor=2",
-     "BRAILLE LINE:  'gtk-demo Application Information Alert This message box has  $l'",
-     "     VISIBLE:  'This message box has  $l', cursor=1",
+    ["BRAILLE LINE:  'gtk-demo Application Information Alert This message box has been popped up the following $l'",
+     "     VISIBLE:  'This message box has been popped', cursor=2",
+     "BRAILLE LINE:  'gtk-demo Application Information Alert This message box has been popped up the following $l'",
+     "     VISIBLE:  'This message box has been popped', cursor=1",
      "SPEECH OUTPUT: 'h'",
      "SPEECH OUTPUT: 'unselected' voice=system",
      "SPEECH OUTPUT: 'T' voice=uppercase",
@@ -196,8 +187,8 @@ sequence.append(WaitAction("object:text-selection-changed",
                            5000))
 sequence.append(utils.AssertPresentationAction(
     "This message box label caret select rest of 'This'",
-    ["BRAILLE LINE:  'gtk-demo Application Information Alert This message box has  $l'",
-     "     VISIBLE:  'This message box has  $l', cursor=5",
+    ["BRAILLE LINE:  'gtk-demo Application Information Alert This message box has been popped up the following $l'",
+     "     VISIBLE:  'This message box has been popped', cursor=5",
      "SPEECH OUTPUT: 'This'",
      "SPEECH OUTPUT: 'unselected' voice=system"]))
 
diff --git a/test/keystrokes/gtk-demo/role_page_tab.py b/test/keystrokes/gtk-demo/role_page_tab.py
index fc83a84..34283f5 100644
--- a/test/keystrokes/gtk-demo/role_page_tab.py
+++ b/test/keystrokes/gtk-demo/role_page_tab.py
@@ -18,27 +18,20 @@ sequence.append(WaitForWindowActivate("GTK+ Code Demos"))
 #
 sequence.append(KeyComboAction("<Control>f"))
 sequence.append(WaitForFocus(acc_role=pyatspi.ROLE_TEXT))
-sequence.append(TypeAction("Printing", 1000))
+sequence.append(TypeAction("Printing"))
+sequence.append(KeyComboAction("Return", 500))
 
 sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("Return", 500))
-#sequence.append(WaitForWindowActivate("Print",None))
-sequence.append(WaitForFocus("General", acc_role=pyatspi.ROLE_PAGE_TAB))
+sequence.append(PauseAction(1000))
 sequence.append(utils.AssertPresentationAction(
     "General page tab",
-    ["BRAILLE LINE:  'gtk-demo Application Window  $l'",
-     "     VISIBLE:  'gtk-demo Application Window  $l', cursor=29",
-     "BRAILLE LINE:  'gtk-demo Application Window  $l'",
-     "     VISIBLE:  'gtk-demo Application Window  $l', cursor=29",
-     "BRAILLE LINE:  'gtk-demo Application GTK+ Code Demos Frame TabList Widget (double click for demo) Page ScrollPane TreeTable Widget (double click for demo) ColumnHeader Printing TREE LEVEL 1'",
-     "     VISIBLE:  'Printing TREE LEVEL 1', cursor=1",
-     "BRAILLE LINE:  'gtk-demo Application Print Dialog'",
+    ["BRAILLE LINE:  'gtk-demo Application Print Dialog'",
      "     VISIBLE:  'Print Dialog', cursor=1",
      "BRAILLE LINE:  'gtk-demo Application Print Dialog TabList'",
      "     VISIBLE:  'TabList', cursor=1",
      "BRAILLE LINE:  'gtk-demo Application Print Dialog General Page'",
      "     VISIBLE:  'General Page', cursor=1",
-     "SPEECH OUTPUT: 'Widget (double click for demo) page Widget (double click for demo) column header Printing tree level 1'",
      "SPEECH OUTPUT: 'Print Range Copies'",
      "SPEECH OUTPUT: 'tab list'",
      "SPEECH OUTPUT: 'General page'"]))
diff --git a/test/keystrokes/gtk-demo/role_push_button.py b/test/keystrokes/gtk-demo/role_push_button.py
index cb18554..4e540c4 100644
--- a/test/keystrokes/gtk-demo/role_push_button.py
+++ b/test/keystrokes/gtk-demo/role_push_button.py
@@ -18,25 +18,18 @@ sequence.append(WaitForWindowActivate("GTK+ Code Demos"))
 #
 sequence.append(KeyComboAction("<Control>f"))
 sequence.append(WaitForFocus(acc_role=pyatspi.ROLE_TEXT))
-sequence.append(TypeAction("Button Boxes", 1000))
+sequence.append(TypeAction("Button Boxes"))
+sequence.append(KeyComboAction("Return", 500))
 
 sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("Return", 500))
-#sequence.append(WaitForWindowActivate("Print",None))
-sequence.append(WaitForFocus("OK", acc_role=pyatspi.ROLE_PUSH_BUTTON))
+sequence.append(PauseAction(1000))
 sequence.append(utils.AssertPresentationAction(
     "OK button",
-    ["BRAILLE LINE:  'gtk-demo Application Window  $l'",
-     "     VISIBLE:  'gtk-demo Application Window  $l', cursor=29",
-     "BRAILLE LINE:  'gtk-demo Application Window  $l'",
-     "     VISIBLE:  'gtk-demo Application Window  $l', cursor=29",
-     "BRAILLE LINE:  'gtk-demo Application GTK+ Code Demos Frame TabList Widget (double click for demo) Page ScrollPane TreeTable Widget (double click for demo) ColumnHeader Button Boxes TREE LEVEL 1'",
-     "     VISIBLE:  'Button Boxes TREE LEVEL 1', cursor=1",
-     "BRAILLE LINE:  'gtk-demo Application Button Boxes Frame'",
+    ["BRAILLE LINE:  'gtk-demo Application Button Boxes Frame'",
      "     VISIBLE:  'Button Boxes Frame', cursor=1",
      "BRAILLE LINE:  'gtk-demo Application Button Boxes Frame Horizontal Button Boxes Panel Spread Panel OK Button'",
      "     VISIBLE:  'OK Button', cursor=1",
-     "SPEECH OUTPUT: 'Widget (double click for demo) page Widget (double click for demo) column header Button Boxes tree level 1'",
      "SPEECH OUTPUT: 'Button Boxes frame'",
      "SPEECH OUTPUT: 'Horizontal Button Boxes panel Spread panel OK button'"]))
 
diff --git a/test/keystrokes/gtk-demo/role_radio_menu_item.py b/test/keystrokes/gtk-demo/role_radio_menu_item.py
index cbbf1a9..bd263f8 100644
--- a/test/keystrokes/gtk-demo/role_radio_menu_item.py
+++ b/test/keystrokes/gtk-demo/role_radio_menu_item.py
@@ -36,9 +36,9 @@ sequence.append(KeyComboAction("Right"))
 sequence.append(WaitForFocus("Red", acc_role=pyatspi.ROLE_CHECK_MENU_ITEM))
 sequence.append(utils.AssertPresentationAction(
     "Red button",
-    ["BRAILLE LINE:  'gtk-demo Application Application Window Frame MenuBar Preferences Menu <x> Red CheckItem(Control r)'",
-     "     VISIBLE:  '<x> Red CheckItem(Control r)', cursor=1",
-     "SPEECH OUTPUT: 'Red check item checked Control r'"]))
+    ["BRAILLE LINE:  'gtk-demo Application Application Window Frame MenuBar Preferences Menu <x> Red CheckItem\((Control|Primary) r\)'",
+     "     VISIBLE:  '<x> Red CheckItem\((Control|Primary) r\)', cursor=1",
+     "SPEECH OUTPUT: 'Red check item checked (Control|Primary) r'"]))
 
 ########################################################################
 # Do a basic "Where Am I" via KP_Enter.
@@ -54,14 +54,14 @@ sequence.append(KeyComboAction("KP_Enter"))
 sequence.append(PauseAction(3000))
 sequence.append(utils.AssertPresentationAction(
     "Red button Where Am I",
-    ["BRAILLE LINE:  'gtk-demo Application Application Window Frame MenuBar Preferences Menu <x> Red CheckItem(Control r)'",
-     "     VISIBLE:  '<x> Red CheckItem(Control r)', cursor=1",
+    ["BRAILLE LINE:  'gtk-demo Application Application Window Frame MenuBar Preferences Menu <x> Red CheckItem\((Control|Primary) r\)'",
+     "     VISIBLE:  '<x> Red CheckItem\((Control|Primary) r\)', cursor=1",
      "SPEECH OUTPUT: 'Preferences'",
      "SPEECH OUTPUT: 'menu'",
      "SPEECH OUTPUT: 'Color'",
      "SPEECH OUTPUT: 'menu'",
      "SPEECH OUTPUT: 'Red'",
-     "SPEECH OUTPUT: 'check item checked Control r 1 of 3.'",
+     "SPEECH OUTPUT: 'check item checked (Control|Primary) r 1 of 3.'",
      "SPEECH OUTPUT: 'r'"]))
 
 ########################################################################
@@ -73,9 +73,9 @@ sequence.append(WaitForFocus("Green",
                              acc_role=pyatspi.ROLE_CHECK_MENU_ITEM))
 sequence.append(utils.AssertPresentationAction(
     "Green button",
-    ["BRAILLE LINE:  'gtk-demo Application Application Window Frame MenuBar Preferences Menu < > Green CheckItem(Control g)'",
-     "     VISIBLE:  '< > Green CheckItem(Control g)', cursor=1",
-     "SPEECH OUTPUT: 'Green check item not checked Control g'"]))
+    ["BRAILLE LINE:  'gtk-demo Application Application Window Frame MenuBar Preferences Menu < > Green CheckItem\((Control|Primary) g\)'",
+     "     VISIBLE:  '< > Green CheckItem\((Control|Primary) g\)', cursor=1",
+     "SPEECH OUTPUT: 'Green check item not checked (Control|Primary) g'"]))
 
 ########################################################################
 # Do a basic "Where Am I" via KP_Enter.
@@ -91,14 +91,14 @@ sequence.append(KeyComboAction("KP_Enter"))
 sequence.append(PauseAction(3000))
 sequence.append(utils.AssertPresentationAction(
     "Green button Where Am I",
-    ["BRAILLE LINE:  'gtk-demo Application Application Window Frame MenuBar Preferences Menu < > Green CheckItem(Control g)'",
-     "     VISIBLE:  '< > Green CheckItem(Control g)', cursor=1",
+    ["BRAILLE LINE:  'gtk-demo Application Application Window Frame MenuBar Preferences Menu < > Green CheckItem\((Control|Primary) g\)'",
+     "     VISIBLE:  '< > Green CheckItem\((Control|Primary) g\)', cursor=1",
      "SPEECH OUTPUT: 'Preferences'",
      "SPEECH OUTPUT: 'menu'",
      "SPEECH OUTPUT: 'Color'",
      "SPEECH OUTPUT: 'menu'",
      "SPEECH OUTPUT: 'Green'",
-     "SPEECH OUTPUT: 'check item not checked Control g 2 of 3.'",
+     "SPEECH OUTPUT: 'check item not checked (Control|Primary) g 2 of 3.'",
      "SPEECH OUTPUT: 'g'"]))
 
 ########################################################################
diff --git a/test/keystrokes/gtk-demo/role_spin_button.py b/test/keystrokes/gtk-demo/role_spin_button.py
index 4580466..7eeead1 100644
--- a/test/keystrokes/gtk-demo/role_spin_button.py
+++ b/test/keystrokes/gtk-demo/role_spin_button.py
@@ -18,16 +18,12 @@ sequence.append(WaitForWindowActivate("GTK+ Code Demos"))
 #
 sequence.append(KeyComboAction("<Control>f"))
 sequence.append(WaitForFocus(acc_role=pyatspi.ROLE_TEXT))
-sequence.append(TypeAction("Color Selector", 1000))
+sequence.append(TypeAction("Color Selector"))
 sequence.append(KeyComboAction("Return", 500))
 
-########################################################################
-# When the Printing demo window appears, open the color selector.
-# 
-#sequence.append(WaitForWindowActivate("Print",None))
-sequence.append(WaitForFocus("Change the above color",
-                             acc_role=pyatspi.ROLE_PUSH_BUTTON))
+sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("Return", 500))
+sequence.append(PauseAction(1000))
 
 ########################################################################
 #
@@ -80,8 +76,8 @@ sequence.append(WaitAction("object:property-change:accessible-value",
 sequence.append(PauseAction(1000))
 sequence.append(utils.AssertPresentationAction(
     "Hue spin button decrement value",
-    ["BRAILLE LINE:  'gtk-demo Application Changing color ColorChooser ColorChooser Hue: 239 $l'",
-     "     VISIBLE:  'Hue: 239 $l', cursor=6",
+    ["BRAILLE LINE:  'gtk-demo Application Changing color ColorChooser ColorChooser Hue: 240 $l'",
+     "     VISIBLE:  'Hue: 240 $l', cursor=6",
      "BRAILLE LINE:  'gtk-demo Application Changing color ColorChooser ColorChooser Hue: 239 $l'",
      "     VISIBLE:  'Hue: 239 $l', cursor=6",
      "BRAILLE LINE:  'gtk-demo Application Changing color ColorChooser ColorChooser Hue: 239 $l'",
diff --git a/test/keystrokes/gtk-demo/role_split_pane.py b/test/keystrokes/gtk-demo/role_split_pane.py
index c5f3b38..eb580fc 100644
--- a/test/keystrokes/gtk-demo/role_split_pane.py
+++ b/test/keystrokes/gtk-demo/role_split_pane.py
@@ -18,15 +18,15 @@ sequence.append(WaitForWindowActivate("GTK+ Code Demos"))
 #
 sequence.append(KeyComboAction("<Control>f"))
 sequence.append(WaitForFocus(acc_role=pyatspi.ROLE_TEXT))
-sequence.append(TypeAction("Paned Widgets", 1000))
+sequence.append(TypeAction("Paned Widgets"))
 sequence.append(KeyComboAction("Return", 500))
 
+sequence.append(KeyComboAction("Return", 500))
+sequence.append(PauseAction(1000))
+
 ########################################################################
 # When the demo comes up, go to the split pane.
 #
-#sequence.append(WaitForWindowActivate("Panes",None))
-sequence.append(WaitForFocus("Hi there", acc_role=pyatspi.ROLE_PUSH_BUTTON))
-
 sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("F8", 500))
 sequence.append(WaitForFocus(acc_role=pyatspi.ROLE_SPLIT_PANE))
diff --git a/test/keystrokes/gtk-demo/role_text_multiline.py b/test/keystrokes/gtk-demo/role_text_multiline.py
index 3a5bf0a..9bca444 100644
--- a/test/keystrokes/gtk-demo/role_text_multiline.py
+++ b/test/keystrokes/gtk-demo/role_text_multiline.py
@@ -102,11 +102,11 @@ sequence.append(utils.AssertPresentationAction(
      "     VISIBLE:  ' $l', cursor=1"]))
 
 sequence.append(KeyComboAction("Return", 500))
-sequence.append(TypeAction("I'm just typing away like a mad little monkey with nothing better to do in my life than eat fruit and type.", 500))
+sequence.append(TypeAction("I am just typing away like a mad little monkey with nothing better to do in my life than eat fruit and type.", 500))
 sequence.append(KeyComboAction("Return", 500))
 sequence.append(TypeAction("The keyboard sure can get sticky.", 500))
 sequence.append(KeyComboAction("Return", 500))
-sequence.append(TypeAction("Tis this and thus thou art in Rome?", 500))
+sequence.append(TypeAction("Tis this and thus thou art in Rome.", 500))
 sequence.append(KeyComboAction("Return", 500))
 
 ########################################################################
@@ -236,7 +236,7 @@ sequence.append(utils.AssertPresentationAction(
 
 ########################################################################
 # Press Home to move to the beginning of the line. Arrow down to 
-# "I'm typing away..." and use Shift End to select to the end of the 
+# "I am typing away..." and use Shift End to select to the end of the 
 # line.
 #
 sequence.append(utils.StartRecordingAction())
@@ -270,16 +270,16 @@ sequence.append(utils.AssertPresentationAction(
      "     VISIBLE:  'This is a test. $l', cursor=1",
      "BRAILLE LINE:  ' $l'",
      "     VISIBLE:  ' $l', cursor=1",
-     "BRAILLE LINE:  'I'm just typing away like a mad little monkey with nothing better to do in my life than eat fruit and type. $l'",
-     "     VISIBLE:  'I'm just typing away like a mad ', cursor=1",
-     "BRAILLE LINE:  'I'm just typing away like a mad little monkey with nothing better to do in my life than eat fruit and type. $l'",
+     "BRAILLE LINE:  'I am just typing away like a mad little monkey with nothing better to do in my life than eat fruit and type. $l'",
+     "     VISIBLE:  'I am just typing away like a mad', cursor=1",
+     "BRAILLE LINE:  'I am just typing away like a mad little monkey with nothing better to do in my life than eat fruit and type. $l'",
      "     VISIBLE:  'y life than eat fruit and type. ', cursor=32",
      "SPEECH OUTPUT: 'T'",
-     "SPEECH OUTPUT: 'unselected'",
-     "SPEECH OUTPUT: 'blank'",
-     "SPEECH OUTPUT: 'I'm just typing away like a mad little monkey with nothing better to do in my life than eat fruit and type.'",
-     "SPEECH OUTPUT: 'I'm just typing away like a mad little monkey with nothing better to do in my life than eat fruit and type.'",
-     "SPEECH OUTPUT: 'selected'"]))
+     "SPEECH OUTPUT: 'unselected' voice=system",
+     "SPEECH OUTPUT: 'blank' voice=system",
+     "SPEECH OUTPUT: 'I am just typing away like a mad little monkey with nothing better to do in my life than eat fruit and type.'",
+     "SPEECH OUTPUT: 'I am just typing away like a mad little monkey with nothing better to do in my life than eat fruit and type.'",
+     "SPEECH OUTPUT: 'selected' voice=system"]))
 
 ########################################################################
 # Shift Control Right arrow to select the first two words on the next
@@ -309,7 +309,7 @@ sequence.append(utils.AssertPresentationAction(
     ["BRAILLE LINE:  'The keyboard sure can get sticky. $l'",
      "     VISIBLE:  'The keyboard sure can get sticky', cursor=13",
      "SPEECH OUTPUT: 'text'",
-     "SPEECH OUTPUT: 'I'm just typing away like a mad little monkey with nothing better to do in my life than eat fruit and type.",
+     "SPEECH OUTPUT: 'I am just typing away like a mad little monkey with nothing better to do in my life than eat fruit and type.",
      "The keyboard'",
      "SPEECH OUTPUT: 'selected'"]))
 
@@ -327,11 +327,11 @@ sequence.append(utils.AssertPresentationAction(
      "BRAILLE LINE:  'The keyboard sure can get sticky. $l'",
      "     VISIBLE:  'The keyboard sure can get sticky', cursor=13",
      "SPEECH OUTPUT: 'text'",
-     "SPEECH OUTPUT: 'I'm just typing away like a mad little monkey with nothing better to do in my life than eat fruit and type.",
+     "SPEECH OUTPUT: 'I am just typing away like a mad little monkey with nothing better to do in my life than eat fruit and type.",
      "The keyboard'",
      "SPEECH OUTPUT: 'selected'",
      "SPEECH OUTPUT: 'text'",
-     "SPEECH OUTPUT: 'I'm just typing away like a mad little monkey with nothing better to do in my life than eat fruit and type.",
+     "SPEECH OUTPUT: 'I am just typing away like a mad little monkey with nothing better to do in my life than eat fruit and type.",
      "The keyboard'",
      "SPEECH OUTPUT: 'selected'"]))
 
@@ -346,7 +346,7 @@ sequence.append(utils.AssertPresentationAction(
     ["SPEECH OUTPUT: '",
      "The keyboard sure can get sticky.'",
      "SPEECH OUTPUT: '",
-     "Tis this and thus thou art in Rome?'",
+     "Tis this and thus thou art in Rome.'",
      "SPEECH OUTPUT: '",
      "'"]))
 
diff --git a/test/keystrokes/gtk-demo/role_toggle_button.py b/test/keystrokes/gtk-demo/role_toggle_button.py
index 700fc29..faa5f6f 100644
--- a/test/keystrokes/gtk-demo/role_toggle_button.py
+++ b/test/keystrokes/gtk-demo/role_toggle_button.py
@@ -18,31 +18,15 @@ sequence.append(WaitForWindowActivate("GTK+ Code Demos"))
 #
 sequence.append(KeyComboAction("<Control>f"))
 sequence.append(WaitForFocus(acc_role=pyatspi.ROLE_TEXT))
-sequence.append(TypeAction("Expander", 1000))
-
-sequence.append(utils.StartRecordingAction())
-sequence.append(KeyComboAction("Return", 500))
-#sequence.append(WaitForWindowActivate("GtkExpander",None))
-sequence.append(WaitForFocus("Details", acc_role=pyatspi.ROLE_TOGGLE_BUTTON))
-sequence.append(utils.AssertPresentationAction(
-    "Toggle button initial focus",
-    ["BRAILLE LINE:  'gtk-demo Application Window  $l'",
-     "     VISIBLE:  'gtk-demo Application Window  $l', cursor=29",
-     "BRAILLE LINE:  'gtk-demo Application Window  $l'",
-     "     VISIBLE:  'gtk-demo Application Window  $l', cursor=29",
-     "BRAILLE LINE:  'gtk-demo Application GTK+ Code Demos Frame TabList Widget (double click for demo) Page ScrollPane TreeTable Widget (double click for demo) ColumnHeader Expander TREE LEVEL 1'",
-     "     VISIBLE:  'Expander TREE LEVEL 1', cursor=1",
-     "BRAILLE LINE:  'gtk-demo Application GtkExpander Dialog'",
-     "     VISIBLE:  'GtkExpander Dialog', cursor=1",
-     "BRAILLE LINE:  'gtk-demo Application GtkExpander Dialog & y Details ToggleButton'",
-     "     VISIBLE:  '& y Details ToggleButton', cursor=1",
-     "SPEECH OUTPUT: 'Widget (double click for demo) page Widget (double click for demo) column header Expander tree level 1'",
-     "SPEECH OUTPUT: 'GtkExpander Expander demo. Click on the triangle for details.'",
-     "SPEECH OUTPUT: 'Details toggle button not pressed'"]))
+sequence.append(TypeAction("Expander"))
+sequence.append(KeyComboAction("Return"))
 
 ########################################################################
-# Do a basic "Where Am I" via KP_Enter.
+# Give focus to the toggle button. Do a basic "Where Am I" via KP_Enter.
 #
+sequence.append(PauseAction(1000))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyComboAction("Tab"))
 sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("KP_Enter"))
 sequence.append(PauseAction(3000))
diff --git a/test/keystrokes/gtk-demo/role_toolbar.py b/test/keystrokes/gtk-demo/role_toolbar.py
index b6d6499..acc5721 100644
--- a/test/keystrokes/gtk-demo/role_toolbar.py
+++ b/test/keystrokes/gtk-demo/role_toolbar.py
@@ -19,27 +19,19 @@ sequence.append(WaitForWindowActivate("GTK+ Code Demos"))
 #
 sequence.append(KeyComboAction("<Control>f"))
 sequence.append(WaitForFocus(acc_role=pyatspi.ROLE_TEXT))
-sequence.append(TypeAction("Application main window", 1000))
+sequence.append(TypeAction("Application main window"))
+sequence.append(KeyComboAction("Return"))
+sequence.append(PauseAction(1000))
 
 sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("Return"))
-sequence.append(PauseAction(3000))
-sequence.append(WaitForWindowActivate("Application Window",None))
 sequence.append(WaitForFocus("Open", acc_role=pyatspi.ROLE_PUSH_BUTTON))
 sequence.append(utils.AssertPresentationAction(
     "Open button initial focus",
-    ["KNOWN ISSUE - Sometimes we are more verbose here than others. Seems to be a timing issue that needs to be investigated.",
-     "BRAILLE LINE:  'gtk-demo Application Window  $l'",
-     "     VISIBLE:  'gtk-demo Application Window  $l', cursor=29",
-     "BRAILLE LINE:  'gtk-demo Application Window  $l'",
-     "     VISIBLE:  'gtk-demo Application Window  $l', cursor=29",
-     "BRAILLE LINE:  'gtk-demo Application GTK+ Code Demos Frame TabList Widget (double click for demo) Page ScrollPane TreeTable Widget (double click for demo) ColumnHeader Application main window TREE LEVEL 1'",
-     "     VISIBLE:  'Application main window TREE LEV', cursor=1",
-     "BRAILLE LINE:  'gtk-demo Application Application Window Frame'",
+    ["BRAILLE LINE:  'gtk-demo Application Application Window Frame'",
      "     VISIBLE:  'Application Window Frame', cursor=1",
      "BRAILLE LINE:  'gtk-demo Application Application Window Frame ToolBar Open Button'",
      "     VISIBLE:  'Open Button', cursor=1",
-     "SPEECH OUTPUT: 'Widget (double click for demo) page Widget (double click for demo) column header Application main window tree level 1'",
      "SPEECH OUTPUT: 'Application Window frame'",
      "SPEECH OUTPUT: 'Open button'"]))
 
@@ -118,7 +110,6 @@ sequence.append(KeyComboAction("<Alt>F4"))
 #
 #sequence.append(WaitForWindowActivate("GTK+ Code Demos",None))
 sequence.append(PauseAction(1000))
-sequence.append(KeyComboAction("Home"))
 
 # Just a little extra wait to let some events get through.
 #
diff --git a/test/keystrokes/gtk-demo/role_tooltip.py b/test/keystrokes/gtk-demo/role_tooltip.py
index b1c3c24..1a567ad 100644
--- a/test/keystrokes/gtk-demo/role_tooltip.py
+++ b/test/keystrokes/gtk-demo/role_tooltip.py
@@ -28,11 +28,6 @@ sequence.append(KeyComboAction("Return", 500))
 sequence.append(WaitForFocus("Open", acc_role=pyatspi.ROLE_PUSH_BUTTON))
 sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("<Control>F1"))
-sequence.append(WaitAction("object:state-changed:visible",
-                           None,
-                           None,
-                           pyatspi.ROLE_TOOL_TIP,
-                           5000))
 sequence.append(utils.AssertPresentationAction(
     "Show Open tooltip",
     ["BRAILLE LINE:  'Open a file'",
@@ -44,11 +39,6 @@ sequence.append(utils.AssertPresentationAction(
 #
 sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("<Control>F1"))
-sequence.append(WaitAction("object:state-changed:visible",
-                           None,
-                           None,
-                           pyatspi.ROLE_TOOL_TIP,
-                           5000))
 sequence.append(utils.AssertPresentationAction(
     "Hide Open tooltip",
     ["BRAILLE LINE:  'gtk-demo Application Application Window Frame ToolBar Open Button'",
@@ -66,11 +56,6 @@ sequence.append(WaitForFocus("Quit", acc_role=pyatspi.ROLE_PUSH_BUTTON))
 
 sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("<Control>F1"))
-sequence.append(WaitAction("object:state-changed:visible",
-                           None,
-                           None,
-                           pyatspi.ROLE_TOOL_TIP,
-                           5000))
 sequence.append(utils.AssertPresentationAction(
     "Show Quit tooltip",
     ["BRAILLE LINE:  'Quit'",
@@ -82,11 +67,6 @@ sequence.append(utils.AssertPresentationAction(
 #
 sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("<Control>F1"))
-sequence.append(WaitAction("object:state-changed:visible",
-                           None,
-                           None,
-                           pyatspi.ROLE_TOOL_TIP,
-                           5000))
 sequence.append(utils.AssertPresentationAction(
     "Hide Quit tooltip",
     ["BRAILLE LINE:  'gtk-demo Application Application Window Frame ToolBar Quit Button'",
@@ -102,11 +82,6 @@ sequence.append(WaitForFocus("GTK!", acc_role=pyatspi.ROLE_PUSH_BUTTON))
 
 sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("<Control>F1"))
-sequence.append(WaitAction("object:state-changed:visible",
-                           None,
-                           None,
-                           pyatspi.ROLE_TOOL_TIP,
-                           5000))
 sequence.append(utils.AssertPresentationAction(
     "Show GTK+ tooltip",
     ["BRAILLE LINE:  'GTK+'",
@@ -118,11 +93,6 @@ sequence.append(utils.AssertPresentationAction(
 #
 sequence.append(utils.StartRecordingAction())
 sequence.append(KeyComboAction("<Control>F1"))
-sequence.append(WaitAction("object:state-changed:visible",
-                           None,
-                           None,
-                           pyatspi.ROLE_TOOL_TIP,
-                           5000))
 sequence.append(utils.AssertPresentationAction(
     "Hide GTK+ tooltip",
     ["BRAILLE LINE:  'gtk-demo Application Application Window Frame ToolBar GTK! Button'",
@@ -135,9 +105,7 @@ sequence.append(utils.AssertPresentationAction(
 # "Application main window" menu.  Let the harness kill the app.
 #
 sequence.append(KeyComboAction("<Alt>F4", 500))
-#sequence.append(WaitForWindowActivate("GTK+ Code Demos",None))
 sequence.append(PauseAction(1000))
-sequence.append(KeyComboAction("Home"))
 
 # Just a little extra wait to let some events get through.
 #
diff --git a/test/keystrokes/gtk-demo/spoken_indentation.py b/test/keystrokes/gtk-demo/spoken_indentation.py
index fd5679f..967374f 100644
--- a/test/keystrokes/gtk-demo/spoken_indentation.py
+++ b/test/keystrokes/gtk-demo/spoken_indentation.py
@@ -474,14 +474,6 @@ sequence.append(utils.AssertPresentationAction(
 #
 sequence.append(KeyComboAction("<Alt>F4"))
 
-########################################################################
-# Go back to the main gtk-demo window and reselect the
-# "Application main window" menu.  Let the harness kill the app.
-#
-#sequence.append(WaitForWindowActivate("GTK+ Code Demos",None))
-sequence.append(PauseAction(1000))
-sequence.append(KeyComboAction("Home"))
-
 # Just a little extra wait to let some events get through.
 #
 sequence.append(PauseAction(3000))



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]