# Path: libxyz/ui/display.py
# def is_lowui_ge_0_9_9():
#     if hasattr(urwid, "VERSION") and urwid.VERSION >= (0, 9, 9):
#         return True
#     else:
#         return False


from libxyz.ui.display import is_lowui_ge_0_9_9

        self.update()

    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    def update(self, data=None):
        """
        Set/load keycodes data
        @param data: Keycodes data. If not provided load via get_keys()
        @type data: dict
        """

        if data is not None:
            self.keycodes = data
        else:
            self.keycodes = self.plugin.get_keys()

    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    def get(self, allow_empty=False):
        """
        Get input from screen and search if it matches any user-defined
        keycodes

        @param allow_empty: If set, returns empty list if nothing was typed
        """

        _input = None

        if allow_empty:

# Path: libxyz/ui/display.py
# def is_lowui_ge_0_9_9():
#     if hasattr(urwid, "VERSION") and urwid.VERSION >= (0, 9, 9):
#         return True
#     else:
#         return False


# Path: libxyz/core/inputwrapper.py
from libxyz.ui.display import is_lowui_ge_0_9_9


        self.update()

    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    def update(self, data=None):
        """
        Set/load keycodes data
        @param data: Keycodes data. If not provided load via get_keys()
        @type data: dict
        """

        if data is not None:
            self.keycodes = data
        else:
            self.keycodes = self.plugin.get_keys()

    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    def get(self, allow_empty=False):
        """
        Get input from screen and search if it matches any user-defined
        keycodes

        @param allow_empty: If set, returns empty list if nothing was typed
        """

        _input = None

        if allow_empty:

            if is_lowui_ge_0_9_9():