|
@@ -19,25 +19,29 @@ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
|
import argparse
|
|
|
import logging
|
|
|
|
|
|
-from Xlib import X, XK
|
|
|
+import Xlib.display
|
|
|
+from Xlib import XK, X
|
|
|
|
|
|
import rescriptoon
|
|
|
+from rescriptoon._keys import USKeyCode, invert_string_to_keysym
|
|
|
|
|
|
-_DEFAULT_TOGGLE_KEYSYM_NAME = "grave"
|
|
|
+_DEFAULT_TOGGLE_KEYCODE: int = USKeyCode.grave.value
|
|
|
|
|
|
_VERBOSITY_LEVELS = [logging.WARNING, logging.INFO, logging.DEBUG]
|
|
|
|
|
|
|
|
|
def main() -> None:
|
|
|
+ display = Xlib.display.Display()
|
|
|
argparser = argparse.ArgumentParser(
|
|
|
description="Attach rescriptoon to running Toontown Rewritten engines.",
|
|
|
)
|
|
|
+ default_toggle_keysym = display.keycode_to_keysym(_DEFAULT_TOGGLE_KEYCODE, index=0)
|
|
|
argparser.add_argument(
|
|
|
"--toggle",
|
|
|
"-t",
|
|
|
metavar="KEYSYM_NAME",
|
|
|
dest="toggle_keysym_name",
|
|
|
- default=_DEFAULT_TOGGLE_KEYSYM_NAME,
|
|
|
+ default=invert_string_to_keysym(default_toggle_keysym),
|
|
|
help="key to turn extended keyboard controls on / off."
|
|
|
+ " any keysym name may be used"
|
|
|
+ " (see XStringToKeysym & X11/keysymdef.h, "
|
|
@@ -62,4 +66,6 @@ def main() -> None:
|
|
|
raise ValueError(
|
|
|
"controls toggle: unknown keysym name '{}'".format(args.toggle_keysym_name)
|
|
|
)
|
|
|
- rescriptoon.Overlay(toggle_keysym=toggle_keysym).run()
|
|
|
+ rescriptoon.Overlay(
|
|
|
+ display=display, toggle_keycode=display.keysym_to_keycode(toggle_keysym)
|
|
|
+ ).run()
|