class Selenium::WebDriver::Interactions::Scroll

def initialize(source:, origin: :viewport, duration: 0.25, **opts)

def initialize(source:, origin: :viewport, duration: 0.25, **opts)
  super(source)
  @type = :scroll
  @duration = duration * 1000
  @origin = origin
  @x_offset = opts.delete(:x) || 0
  @y_offset = opts.delete(:y) || 0
  @delta_x = opts.delete(:delta_x) || 0
  @delta_y = opts.delete(:delta_y) || 0
  raise ArgumentError, "Invalid arguments: #{opts.keys}" unless opts.empty?
end