Sha256: f12982fe9c9b5c6c2f1e3b90b6e65f39e1e97772a1d17755ea952037693c3b0d

Contents?: true

Size: 1.05 KB

Versions: 1

Compression:

Stored size: 1.05 KB

Contents

module ChromedriverScreenshot
  class Platforms
    def self.platform
      @platform
    end

    def self.create_platform(bridge)
      @platform = new(bridge)
    end

    def page_width
      @page_width ||= @bridge.executeScript("return document.body.scrollWidth")
    end

    def page_height
      @page_height ||= @bridge.executeScript("return document.body.scrollHeight")
    end

    def window_width
      @window_width ||= @bridge.executeScript("return document.body.clientWidth")
    end

    def window_height
      @window_height ||= @bridge.executeScript("return document.body.clientHeight")
    end

    def window_x
      @bridge.executeScript("return window.scrollX")
    end

    def window_y
      @bridge.executeScript("return window.scrollY")
    end

    def screenshot
      @bridge.window_screenshot.unpack("m")[0]
    end

    def scroll_to(x, y)
      @bridge.executeScript("window.scrollTo(#{x}, #{y})")
      sleep 1 # don't know why this is necessary
    end

    private

    def initialize(bridge)
      @bridge = bridge
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
chromedriver-screenshot-0.2.4 lib/chromedriver-screenshot/platforms.rb