From f8433aa85a69b1fcbed2ca1de1d031bd95041aba Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Mon, 13 Jun 2022 14:47:06 +0200 Subject: click-element: Unpack lambda dict into if Easier to do assertions, and seems cleaner than storing lambdas. --- qutebrowser/components/misccommands.py | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/qutebrowser/components/misccommands.py b/qutebrowser/components/misccommands.py index 53c057e26..a4550de43 100644 --- a/qutebrowser/components/misccommands.py +++ b/qutebrowser/components/misccommands.py @@ -297,15 +297,16 @@ def click_element(tab: apitypes.Tab, filter_: str, value: str = None, *, raise cmdutils.CommandError("Argument 'value' is only " "optional with filter 'focused'!") - handlers = { - 'id': lambda: tab.elements.find_id(elem_id=value, callback=single_cb), - 'css': lambda: - tab.elements.find_css(value, callback=multiple_cb, error_cb=message.error), - 'position': lambda: - _wrap_find_at_pos(cast(str, value), tab=tab, callback=single_cb), - 'focused': lambda: tab.elements.find_focused(callback=single_cb), - } - handlers[filter_]() + if filter_ == "id": + tab.elements.find_id(elem_id=value, callback=single_cb) + elif filter_ == "css": + tab.elements.find_css(value, callback=multiple_cb, error_cb=message.error) + elif filter_ == "position": + _wrap_find_at_pos(cast(str, value), tab=tab, callback=single_cb) + elif filter_ == "focused": + tab.elements.find_focused(callback=single_cb) + else: + raise utils.Unreachable(filter_) @cmdutils.register(debug=True) -- cgit v1.2.3-54-g00ecf