Skip to content

suggestion: implementation of click and hold behavior #26

@magowiz

Description

@magowiz

To interact correctly with MDSwitch widget, I needed to have a click and hold behavior in order to change its state:
click_on and wait_click methods from client are not working in this case, so I found a tricky workaround for this that I would like to share:

I managed to do this using wait_drag client method, putting as selector the Thumb and as target the same, specifying a proper duration and timeout, in this way I was able to reproduce desired behavior.

Here it is the code I wrote:

switch_locator = f'//MDSwitch[@name~="{provider_name}"]/Thumb[0]'
cli.wait_drag(switch_locator, switch_locator, duration=3, timeout=30)

Maybe it could be useful to implement a click_hold_on or a wait_click_hold method inside client that can use this "trick".
What do you think?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions