class ChromedriverScreenshot::Platforms

Constants

BODY_CLIENT_HEIGHT
BODY_CLIENT_WIDTH
DOCUMENT_CLIENT_HEIGHT
DOCUMENT_CLIENT_WIDTH
WINDOW_HEIGHT_SCRIPT
WINDOW_WIDTH_SCRIPT

Public Class Methods

create_platform(bridge, use_selenium_2_methods) click to toggle source
# File lib/chromedriver-screenshot/platforms.rb, line 13
def self.create_platform(bridge, use_selenium_2_methods)
  @platform = new(bridge, use_selenium_2_methods)
end
new(bridge, use_version_2) click to toggle source
# File lib/chromedriver-screenshot/platforms.rb, line 52
def initialize(bridge, use_version_2)
  @bridge = bridge
  @use_version_2 = use_version_2
end
platform() click to toggle source
# File lib/chromedriver-screenshot/platforms.rb, line 9
def self.platform
  @platform
end

Public Instance Methods

page_height() click to toggle source
# File lib/chromedriver-screenshot/platforms.rb, line 21
def page_height
  @page_height ||= execute_script("return document.body.scrollHeight")
end
page_width() click to toggle source
# File lib/chromedriver-screenshot/platforms.rb, line 17
def page_width
  @page_width ||= execute_script("return document.body.scrollWidth")
end
screenshot() click to toggle source
# File lib/chromedriver-screenshot/platforms.rb, line 41
def screenshot
  @bridge.window_screenshot.unpack("m")[0]
end
scroll_to(x, y) click to toggle source
# File lib/chromedriver-screenshot/platforms.rb, line 45
def scroll_to(x, y)
  execute_script("window.scrollTo(#{x}, #{y})")
  sleep 1 # don't know why this is necessary
end
window_height() click to toggle source
# File lib/chromedriver-screenshot/platforms.rb, line 29
def window_height
  @window_height ||= execute_script WINDOW_HEIGHT_SCRIPT
end
window_width() click to toggle source
# File lib/chromedriver-screenshot/platforms.rb, line 25
def window_width
  @window_width ||= execute_script WINDOW_WIDTH_SCRIPT
end
window_x() click to toggle source
# File lib/chromedriver-screenshot/platforms.rb, line 33
def window_x
  execute_script("return window.scrollX")
end
window_y() click to toggle source
# File lib/chromedriver-screenshot/platforms.rb, line 37
def window_y
  execute_script("return window.scrollY")
end

Private Instance Methods

execute_script(script) click to toggle source
# File lib/chromedriver-screenshot/platforms.rb, line 57
def execute_script(script)
  if @use_version_2
    @bridge.executeScript(script)
  else
    @bridge.execute_script(script)
  end
end