Class: UserAgent::Browsers::Chrome
- Inherits:
-
Base
- Object
- Array
- Base
- UserAgent::Browsers::Chrome
show all
- Defined in:
- lib/user_agent/browsers/chrome.rb
Constant Summary
collapse
- ChromeBrowsers =
%w(
Iron
).freeze
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from Base
#<=>, #bot?, #eql?, #method_missing, #mobile?, #respond_to?, #to_h, #to_s, #to_str
Methods included from Comparable
#<, #<=, #==, #>, #>=
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
in the class UserAgent::Browsers::Base
Class Method Details
.extend?(agent) ⇒ Boolean
4
5
6
7
8
|
# File 'lib/user_agent/browsers/chrome.rb', line 4
def self.extend?(agent)
agent.detect { |useragent|
%w(Chrome CriOS).include?(useragent.product)
}
end
|
Instance Method Details
#application ⇒ Object
33
34
35
|
# File 'lib/user_agent/browsers/chrome.rb', line 33
def application
self.reject { |agent| agent..nil? || agent..empty? }.first
end
|
#browser ⇒ Object
14
15
16
|
# File 'lib/user_agent/browsers/chrome.rb', line 14
def browser
ChromeBrowsers.detect { |browser| respond_to?(browser) } || 'Chrome'
end
|
#build ⇒ Object
18
19
20
|
# File 'lib/user_agent/browsers/chrome.rb', line 18
def build
webkit.version
end
|
#localization ⇒ Object
69
70
71
72
73
|
# File 'lib/user_agent/browsers/chrome.rb', line 69
def localization
return unless application
application.[3]
end
|
37
38
39
40
41
42
43
44
45
46
47
48
49
|
# File 'lib/user_agent/browsers/chrome.rb', line 37
def platform
return unless application
if application.[0] =~ /Windows/
'Windows'
elsif application..any? { |c| c =~ /CrOS/ }
'ChromeOS'
elsif application..any? { |c| c =~ /Android/ }
'Android'
else
application.[0]
end
end
|
#version ⇒ Object
Prior to Safari 3, the user agent did not include a version number
23
24
25
26
27
28
29
30
31
|
# File 'lib/user_agent/browsers/chrome.rb', line 23
def version
str = if detect_product("CriOs")
crios.version
else
chrome.version
end
Version.new(str)
end
|
#webkit ⇒ Object
51
52
53
|
# File 'lib/user_agent/browsers/chrome.rb', line 51
def webkit
detect { |useragent| useragent.product == "AppleWebKit" }
end
|