Module: Browser::Platform
- Included in:
- Browser
- Defined in:
- lib/browser/methods/platform.rb
Instance Method Summary collapse
-
#android?(version = nil) ⇒ Boolean
Detect if browser is Android.
-
#android_version ⇒ Object
Detect Android version.
-
#chrome_os? ⇒ Boolean
Detect if current platform is ChromeOS.
-
#ios4? ⇒ Boolean
Detect if is iOS4.
-
#ios5? ⇒ Boolean
Detect if is iOS5.
-
#ios6? ⇒ Boolean
Detect if is iOS6.
-
#ios7? ⇒ Boolean
Detect if is iOS7.
-
#ios8? ⇒ Boolean
Detect if is iOS8.
-
#ios9? ⇒ Boolean
Detect if is iOS9.
-
#ios?(version = nil) ⇒ Boolean
Detect if browser is ios?.
-
#ios_version ⇒ Object
Return the iOS version.
-
#linux? ⇒ Boolean
Detect if current platform is Linux flavor.
-
#mac? ⇒ Boolean
Detect if current platform is Macintosh.
-
#platform ⇒ Object
Return the platform.
- #windows10? ⇒ Boolean
- #windows7? ⇒ Boolean
- #windows8? ⇒ Boolean
- #windows8_1? ⇒ Boolean
-
#windows? ⇒ Boolean
Detect if current platform is Windows.
-
#windows_mobile? ⇒ Boolean
Detect if current platform is Windows Mobile.
-
#windows_phone? ⇒ Boolean
Detect if current platform is Windows Phone.
- #windows_rt? ⇒ Boolean
- #windows_vista? ⇒ Boolean
- #windows_wow64? ⇒ Boolean
-
#windows_x64? ⇒ Boolean
Detect if current platform is Windows in 64-bit architecture.
- #windows_x64_inclusive? ⇒ Boolean
-
#windows_xp? ⇒ Boolean
More info here => msdn.microsoft.com/fr-FR/library/ms537503.aspx#PltToken.
Instance Method Details
#android?(version = nil) ⇒ Boolean
Detect if browser is Android.
4 5 6 |
# File 'lib/browser/methods/platform.rb', line 4 def android?(version = nil) !!(ua =~ /Android/ && !opera?) && detect_version?(android_version, version) end |
#android_version ⇒ Object
Detect Android version.
9 10 11 |
# File 'lib/browser/methods/platform.rb', line 9 def android_version ua[/Android ([\d.]+)/, 1] end |
#chrome_os? ⇒ Boolean
Detect if current platform is ChromeOS
127 128 129 |
# File 'lib/browser/methods/platform.rb', line 127 def chrome_os? in_ua? 'CrOS' end |
#ios4? ⇒ Boolean
Detect if is iOS4.
24 25 26 27 |
# File 'lib/browser/methods/platform.rb', line 24 def ios4? deprecate "Browser##{__method__} is deprecated; use Browser#ios?(version) instead" ios?(4) end |
#ios5? ⇒ Boolean
Detect if is iOS5.
30 31 32 33 |
# File 'lib/browser/methods/platform.rb', line 30 def ios5? deprecate "Browser##{__method__} is deprecated; use Browser#ios?(version) instead" ios?(5) end |
#ios6? ⇒ Boolean
Detect if is iOS6.
36 37 38 39 |
# File 'lib/browser/methods/platform.rb', line 36 def ios6? deprecate "Browser##{__method__} is deprecated; use Browser#ios?(version) instead" ios?(6) end |
#ios7? ⇒ Boolean
Detect if is iOS7.
42 43 44 45 |
# File 'lib/browser/methods/platform.rb', line 42 def ios7? deprecate "Browser##{__method__} is deprecated; use Browser#ios?(version) instead" ios?(7) end |
#ios8? ⇒ Boolean
Detect if is iOS8.
48 49 50 51 |
# File 'lib/browser/methods/platform.rb', line 48 def ios8? deprecate "Browser##{__method__} is deprecated; use Browser#ios?(version) instead" ios?(8) end |
#ios9? ⇒ Boolean
Detect if is iOS9.
54 55 56 57 |
# File 'lib/browser/methods/platform.rb', line 54 def ios9? deprecate "Browser##{__method__} is deprecated; use Browser#ios?(version) instead" ios?(9) end |
#ios?(version = nil) ⇒ Boolean
Detect if browser is ios?.
19 20 21 |
# File 'lib/browser/methods/platform.rb', line 19 def ios?(version = nil) (ipod? || ipad? || iphone?) && detect_version?(ios_version, version) end |
#ios_version ⇒ Object
Return the iOS version.
14 15 16 |
# File 'lib/browser/methods/platform.rb', line 14 def ios_version ua[/OS (\d)/, 1] end |
#linux? ⇒ Boolean
Detect if current platform is Linux flavor.
122 123 124 |
# File 'lib/browser/methods/platform.rb', line 122 def linux? in_ua? 'Linux' end |
#mac? ⇒ Boolean
Detect if current platform is Macintosh.
60 61 62 |
# File 'lib/browser/methods/platform.rb', line 60 def mac? !!(ua =~ /Mac OS X/ && !ios?) end |
#platform ⇒ Object
Return the platform.
132 133 134 135 136 137 138 139 140 |
# File 'lib/browser/methods/platform.rb', line 132 def platform case when linux? then :linux when mac? then :mac when windows? then :windows else :other end end |
#windows10? ⇒ Boolean
90 91 92 |
# File 'lib/browser/methods/platform.rb', line 90 def windows10? windows? && !!(ua =~ /Windows NT 10/) end |
#windows7? ⇒ Boolean
78 79 80 |
# File 'lib/browser/methods/platform.rb', line 78 def windows7? windows? && !!(ua =~ /Windows NT 6.1/) end |
#windows8? ⇒ Boolean
82 83 84 |
# File 'lib/browser/methods/platform.rb', line 82 def windows8? windows? && !!(ua =~ /Windows NT 6.[2-3]/) end |
#windows8_1? ⇒ Boolean
86 87 88 |
# File 'lib/browser/methods/platform.rb', line 86 def windows8_1? windows? && !!(ua =~ /Windows NT 6\.3/) end |
#windows? ⇒ Boolean
Detect if current platform is Windows.
65 66 67 |
# File 'lib/browser/methods/platform.rb', line 65 def windows? !!(ua =~ /Windows/) end |
#windows_mobile? ⇒ Boolean
Detect if current platform is Windows Mobile.
99 100 101 |
# File 'lib/browser/methods/platform.rb', line 99 def windows_mobile? !!(ua =~ /Windows CE/) end |
#windows_phone? ⇒ Boolean
Detect if current platform is Windows Phone.
104 105 106 |
# File 'lib/browser/methods/platform.rb', line 104 def windows_phone? !!(ua =~ /Windows Phone/) end |
#windows_rt? ⇒ Boolean
94 95 96 |
# File 'lib/browser/methods/platform.rb', line 94 def windows_rt? windows8? && !!(ua =~ /ARM/) end |
#windows_vista? ⇒ Boolean
74 75 76 |
# File 'lib/browser/methods/platform.rb', line 74 def windows_vista? windows? && !!(ua =~ /Windows NT 6.0/) end |
#windows_wow64? ⇒ Boolean
113 114 115 |
# File 'lib/browser/methods/platform.rb', line 113 def windows_wow64? windows? && !!(ua =~ /WOW64/i) end |
#windows_x64? ⇒ Boolean
Detect if current platform is Windows in 64-bit architecture.
109 110 111 |
# File 'lib/browser/methods/platform.rb', line 109 def windows_x64? windows? && !!(ua =~ /(Win64|x64)/) && !!(ua =~ /x64/) end |
#windows_x64_inclusive? ⇒ Boolean
117 118 119 |
# File 'lib/browser/methods/platform.rb', line 117 def windows_x64_inclusive? windows_x64? || windows_wow64? end |
#windows_xp? ⇒ Boolean
More info here => msdn.microsoft.com/fr-FR/library/ms537503.aspx#PltToken
70 71 72 |
# File 'lib/browser/methods/platform.rb', line 70 def windows_xp? windows? && !!(ua =~ /Windows NT 5.1/) end |