Merge "Add browser test for basic watchlist functionality"
[lhc/web/wiklou.git] / resources / src / startup.js
index fe0b029..7e75481 100644 (file)
@@ -2,22 +2,9 @@
  * This file is where we decide whether to initialise the Grade A run-time.
  *
  * - Beware: This file MUST parse without errors on even the most ancient of browsers!
- * - Beware: Do not call mwNow before the isCompatible() check.
  */
 
-/* global mw, mwPerformance, mwNow, isCompatible, $VARS, $CODE */
-
-window.mwPerformance = ( window.performance && performance.mark ) ? performance : {
-       mark: function () {}
-};
-// Define now() here to ensure valid comparison with mediaWikiLoadEnd (T153819).
-window.mwNow = ( function () {
-       var perf = window.performance,
-               navStart = perf && perf.timing && perf.timing.navigationStart;
-       return navStart && typeof perf.now === 'function' ?
-               function () { return navStart + perf.now(); } :
-               function () { return Date.now(); };
-}() );
+/* global mw, isCompatible, $VARS, $CODE */
 
 /**
  * See <https://www.mediawiki.org/wiki/Compatibility#Browsers>
@@ -30,7 +17,7 @@ window.mwNow = ( function () {
  *
  * Browsers we support in our modern run-time (Grade A):
  * - Chrome 13+
- * - IE 10+
+ * - IE 11+
  * - Firefox 4+
  * - Safari 5+
  * - Opera 15+
@@ -86,7 +73,7 @@ window.isCompatible = function ( str ) {
                // support in the modern run-time.
                // Note: Please extend the regex instead of adding new ones
                !(
-                       ua.match( /webOS\/1\.[0-4]|SymbianOS|Series60|NetFront|Opera Mini|S40OviBrowser|MeeGo|Android.+Glass|^Mozilla\/5\.0 .+ Gecko\/$|googleweblight/ ) ||
+                       ua.match( /MSIE 10|webOS\/1\.[0-4]|SymbianOS|Series60|NetFront|Opera Mini|S40OviBrowser|MeeGo|Android.+Glass|^Mozilla\/5\.0 .+ Gecko\/$|googleweblight/ ) ||
                        ua.match( /PlayStation/i )
                )
        );
@@ -150,9 +137,9 @@ window.isCompatible = function ( str ) {
                };
        }
 
-       window.mediaWikiLoadStart = mwNow();
-       mwPerformance.mark( 'mwLoadStart' );
-
+       if ( window.performance && performance.mark ) {
+               performance.mark( 'mwStartup' );
+       }
        script = document.createElement( 'script' );
        script.src = $VARS.baseModulesUri;
        script.onload = function () {