WIP: AX port and noatspi work

This commit is contained in:
Storm Dragon
2025-12-25 20:51:34 -05:00
parent 0a18de8e87
commit e134bf97d5
103 changed files with 12882 additions and 3556 deletions

View File

@@ -27,6 +27,9 @@
OOo-dev 2.3.0 simpress application startup wizard hangs the desktop.
"""
import gi
gi.require_version('Atspi', '2.0')
from gi.repository import Atspi
from macaroon.playback import *
sequence = MacroSequence()
@@ -41,7 +44,7 @@ sequence = MacroSequence()
# SPEECH OUTPUT: 'Next >> button'
#
sequence.append(WaitForWindowActivate("Presentation Wizard", None))
sequence.append(WaitForFocus("Next", acc_role=pyatspi.ROLE_PUSH_BUTTON))
sequence.append(WaitForFocus("Next", acc_role=Atspi.Role.PUSH_BUTTON))
######################################################################
# 2. Press Space to get to the second screen of the startup wizard.
@@ -61,7 +64,7 @@ sequence.append(KeyComboAction("space"))
# SPEECH OUTPUT: 'Create button'
#
sequence.append(KeyComboAction("space"))
sequence.append(WaitForFocus("Create", acc_role=pyatspi.ROLE_PUSH_BUTTON))
sequence.append(WaitForFocus("Create", acc_role=Atspi.Role.PUSH_BUTTON))
######################################################################
# 4. Press Space to start up ooimpress with an empty presentation.
@@ -74,22 +77,22 @@ sequence.append(WaitForFocus("Create", acc_role=pyatspi.ROLE_PUSH_BUTTON))
#
sequence.append(KeyComboAction("space"))
sequence.append(WaitForWindowActivate("Untitled1 - OpenOffice.org Impress", None))
sequence.append(WaitForFocus("", acc_role=pyatspi.ROLE_SCROLL_PANE))
sequence.append(WaitForFocus("", acc_role=Atspi.Role.SCROLL_PANE))
######################################################################
# 5. Enter Alt-f, Alt-c to close the presentation window.
#
sequence.append(KeyComboAction("<Alt>f"))
sequence.append(WaitForFocus("New", acc_role=pyatspi.ROLE_MENU))
sequence.append(WaitForFocus("New", acc_role=Atspi.Role.MENU))
sequence.append(KeyComboAction("<Alt>c"))
sequence.append(WaitForFocus("Save", acc_role=pyatspi.ROLE_PUSH_BUTTON))
sequence.append(WaitForFocus("Save", acc_role=Atspi.Role.PUSH_BUTTON))
######################################################################
# 6. Enter Tab and Return to discard the current changes.
#
sequence.append(KeyComboAction("Tab"))
sequence.append(WaitForFocus("Discard", acc_role=pyatspi.ROLE_PUSH_BUTTON))
sequence.append(WaitForFocus("Discard", acc_role=Atspi.Role.PUSH_BUTTON))
sequence.append(KeyComboAction("Return"))