Пример #1
0
async def open_palette(commands_runner: CommandsRunner, ui: PlayerUI,
                       window: Window):
    palette = PaletteComponent(size=6)

    ui.stack_layout.add(palette)
    window.root_component.update_layout()

    window.focus(palette)

    subscription = window.input_component.value.subscribe(
        lambda value: palette.filter(value))

    result = await window.input(">")

    window.blur_active_component()
    palette.detach()

    if result is not None:
        commands_runner.run_text_command(palette.value)

    if subscription:
        subscription.dispose()
Пример #2
0
def dismiss_error(window: Window):
    if window.active_component:
        window.active_component.detach()
        window.blur_active_component()