Browse Source

Joined MobileOS and OS so only one operating system is reported (#7911)

svn changeset:23641/svn branch:6.8
tags/7.0.0.alpha3
Artur Signell 12 years ago
parent
commit
44a1893f97

+ 7
- 18
src/com/vaadin/terminal/gwt/client/BrowserInfo.java View File

@@ -30,9 +30,8 @@ public class BrowserInfo {
private static final String OS_WINDOWS = "win";
private static final String OS_LINUX = "lin";
private static final String OS_MACOSX = "mac";

private static final String MOS_ANDROID = "android";
private static final String MOS_IOS = "ios";
private static final String OS_ANDROID = "android";
private static final String OS_IOS = "ios";

private static BrowserInfo instance;

@@ -173,17 +172,17 @@ public class BrowserInfo {
cssClass = cssClass + " " + prefix + osClass;
}

String mosClass = getMobileOperatingSystemClass();
if (mosClass != null) {
cssClass = cssClass + " " + prefix + mosClass;
}
}

return cssClass;
}

private String getOperatingSystemClass() {
if (browserDetails.isWindows()) {
if (browserDetails.isAndroid()) {
return OS_ANDROID;
} else if (browserDetails.isIOS()) {
return OS_IOS;
} else if (browserDetails.isWindows()) {
return OS_WINDOWS;
} else if (browserDetails.isLinux()) {
return OS_LINUX;
@@ -194,16 +193,6 @@ public class BrowserInfo {
return null;
}

private String getMobileOperatingSystemClass() {
if (isAndroid()) {
return MOS_ANDROID;
} else if (browserDetails.isIOS()) {
return MOS_IOS;
}
// Unknown MOS
return null;
}

public boolean isIE() {
return browserDetails.isIE();
}

+ 9
- 12
src/com/vaadin/terminal/gwt/client/VBrowserDetails.java View File

@@ -29,14 +29,9 @@ public class VBrowserDetails implements Serializable {
private boolean isIE = false;

private OperatingSystem os = OperatingSystem.UNKNOWN;
private MobileSystem ms = MobileSystem.UNKNOWN;

public enum OperatingSystem {
UNKNOWN, WINDOWS, MACOSX, LINUX;
}

public enum MobileSystem {
UNKNOWN, IOS, ANDROID;
UNKNOWN, WINDOWS, MACOSX, LINUX, IOS, ANDROID;
}

private float browserEngineVersion = -1;
@@ -124,18 +119,20 @@ public class VBrowserDetails implements Serializable {
if (userAgent.contains("windows ")) {
os = OperatingSystem.WINDOWS;
} else if (userAgent.contains("linux")) {
os = OperatingSystem.LINUX;
if (userAgent.contains("android")) {
ms = MobileSystem.ANDROID;
os = OperatingSystem.ANDROID;
} else {
os = OperatingSystem.LINUX;

}
} else if (userAgent.contains("macintosh")
|| userAgent.contains("mac osx")
|| userAgent.contains("mac os x")) {
os = OperatingSystem.MACOSX;
if (userAgent.contains("ipad") || userAgent.contains("ipod")
|| userAgent.contains("iphone")) {
ms = MobileSystem.IOS;
os = OperatingSystem.IOS;
} else {
os = OperatingSystem.MACOSX;
}
}
}
@@ -323,7 +320,7 @@ public class VBrowserDetails implements Serializable {
* @return true if run on Android, false otherwise
*/
public boolean isAndroid() {
return ms == MobileSystem.ANDROID;
return os == OperatingSystem.ANDROID;
}

/**
@@ -332,7 +329,7 @@ public class VBrowserDetails implements Serializable {
* @return true if run in iOS, false otherwise
*/
public boolean isIOS() {
return ms == MobileSystem.IOS;
return os == OperatingSystem.IOS;
}

}

Loading…
Cancel
Save