class UserAgent::Browsers::Vivaldi

Public Class Methods

extend?(agent) click to toggle source
# File lib/user_agent/browsers/vivaldi.rb, line 4
def self.extend?(agent)
  agent.detect { |useragent| useragent.product == 'Vivaldi' }
end

Public Instance Methods

application() click to toggle source
# File lib/user_agent/browsers/vivaldi.rb, line 20
def application
  self.reject { |agent| agent.comment.nil? || agent.comment.empty? }.first
end
browser() click to toggle source
# File lib/user_agent/browsers/vivaldi.rb, line 8
def browser
  'Vivaldi'
end
build() click to toggle source
# File lib/user_agent/browsers/vivaldi.rb, line 12
def build
  webkit.version
end
localization() click to toggle source
# File lib/user_agent/browsers/vivaldi.rb, line 56
def localization
  return unless application

  application.comment[3]
end
os() click to toggle source
# File lib/user_agent/browsers/vivaldi.rb, line 42
def os
  return unless application

  if application.comment[0] =~ /Windows NT/
    OperatingSystems.normalize_os(application.comment[0])
  elsif application.comment[2].nil?
    OperatingSystems.normalize_os(application.comment[1])
  elsif application.comment[1] =~ /Android/
    OperatingSystems.normalize_os(application.comment[1])
  else
    OperatingSystems.normalize_os(application.comment[2])
  end
end
platform() click to toggle source
# File lib/user_agent/browsers/vivaldi.rb, line 24
def platform
  return unless application

  if application.comment[0] =~ /Windows/
    'Windows'
  elsif application.comment.any? { |c| c =~ /CrOS/ }
    'ChromeOS'
  elsif application.comment.any? { |c| c =~ /Android/ }
    'Android'
  else
    application.comment[0]
  end
end
version() click to toggle source
# File lib/user_agent/browsers/vivaldi.rb, line 16
def version
  last.version
end
webkit() click to toggle source
# File lib/user_agent/browsers/vivaldi.rb, line 38
def webkit
  detect_product("AppleWebKit")
end