teamcapybara/capybara · error · ArgumentError

Modifier keys are not supported while dragging in this versi

Error message

Modifier keys are not supported while dragging in this version of Chrome.

What it means

Error "Modifier keys are not supported while dragging in this version of Chrome." thrown in teamcapybara/capybara.

Source

Thrown at lib/capybara/selenium/nodes/chrome_node.rb:103

    end
  end

protected

  def catch_error?(error, errors = nil)
    # Selenium::WebDriver::Error::UnknownError:
    #    unknown error: unhandled inspector error: {"code":-32000,"message":"Node with given id does not belong to the document"}
    super ||
      (error.is_a?(Selenium::WebDriver::Error::UnknownError) &&
       error.message.include?('Node with given id does not belong to the document'))
  end

private

  def perform_legacy_drag(element, drop_modifiers)
    return super if chromedriver_fixed_actions_key_state? || element.obscured?

    raise ArgumentError, 'Modifier keys are not supported while dragging in this version of Chrome.' unless drop_modifiers.empty?

    # W3C Chrome/chromedriver < 77 doesn't maintain mouse button state across actions API performs
    # https://bugs.chromium.org/p/chromedriver/issues/detail?id=2981
    browser_action.release.perform
    browser_action.click_and_hold(native).move_to(element.native).release.perform
  end

  def browser_version(to_float: true)
    caps = capabilities
    ver = caps[:browser_version] || caps[:version]
    ver = ver.to_f if to_float
    ver
  end

  def chromedriver_fixed_actions_key_state?
    Gem::Requirement.new('>= 76.0.3809.68').satisfied_by?(chromedriver_version)
  end

View on GitHub (pinned to 15b5fdb76e)

When it happens

Trigger: Thrown at lib/capybara/selenium/nodes/chrome_node.rb:103 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of teamcapybara/capybara@15b5fdb76e (2026-08-21). Data as JSON: /api/errors/3fb2580cf02628f2. Report an issue: GitHub.