For clicking locators, WWW::WebKit2::Locator::fire_event adds a click event listener to the element being clicked and wait for this listener to be fired. That works fine, except the element is deleted by the click via JavaScript. It then waits for 30 seconds for the event which will never be triggered before proceeding.