def checkForA11yInteractively(): # pragma: no cover
"""
Checks if accessibility is enabled, and presents a dialog prompting the
user if it should be enabled if it is not already, then halts execution.
"""
if isA11yEnabled():
return
dialog = Gtk.Dialog('Enable Assistive Technology Support?',
None,
Gtk.DialogFlags.MODAL | Gtk.DialogFlags.DESTROY_WITH_PARENT,
(Gtk.STOCK_QUIT, Gtk.ResponseType.CLOSE,
"_Enable", Gtk.ResponseType.ACCEPT))
question = """Dogtail requires that Assistive Technology Support be enabled for it to function. Would you like to
enable Assistive Technology support now?
Note that you will have to log out for the change to fully take effect.
""".strip()
dialog.set_default_response(Gtk.ResponseType.ACCEPT)
questionLabel = Gtk.Label(label=question)
questionLabel.set_line_wrap(True)
dialog.vbox.pack_start(questionLabel, True, True, 0)
dialog.show_all()
result = dialog.run()
if result == Gtk.ResponseType.ACCEPT:
logger.log("Enabling accessibility...")
enableA11y()
elif result == Gtk.ResponseType.CLOSE:
bailBecauseA11yIsDisabled()
dialog.destroy()
评论列表
文章目录