]> source.dussan.org Git - vaadin-framework.git/commitdiff
Update ES6 detection logic to match what Polymer is using (#9268)
authorArtur <artur@vaadin.com>
Tue, 9 May 2017 06:37:14 +0000 (09:37 +0300)
committerHenri Sara <henri.sara@gmail.com>
Tue, 9 May 2017 06:37:14 +0000 (09:37 +0300)
shared/src/main/java/com/vaadin/shared/VBrowserDetails.java

index 6933d323260532f89e5028dd365ed23f6e75485a..fdf9b5f723f50f966fe0cc8b21cee23154ad00b0 100644 (file)
@@ -611,21 +611,29 @@ public class VBrowserDetails implements Serializable {
      * @since 8.1
      */
     public boolean isEs6Supported() {
-        if (isTooOldToFunctionProperly()) {
-            return false;
+        // Safari 10+
+        if (isSafari() && getBrowserMajorVersion() >= 10) {
+            return true;
         }
-
-        // assumes evergreen browsers support ES6
-        if (isChrome() || isFirefox() || isOpera() || isEdge()) {
+        // Firefox 51+
+        if (isFirefox() && getBrowserMajorVersion() >= 51) {
             return true;
         }
-
-        // Safari > 9
-        if (isSafari() && getBrowserMajorVersion() > 9) {
+        // Opera 36+
+        if (isOpera() && getBrowserMajorVersion() >= 36) {
+            return true;
+        }
+        // Chrome 49+
+        if (isChrome() && getBrowserMajorVersion() >= 49) {
+            return true;
+        }
+        // Edge 15.15063+
+        if (isEdge() && (getBrowserMajorVersion() > 15
+                || (getBrowserMajorVersion() == 15
+                        && getBrowserMinorVersion() >= 15063))) {
             return true;
         }
 
-        // IE11 and Safari 9
         return false;
     }