diff --git a/user/super/com/google/gwt/emul/javaemul/internal/ConsoleLogger.java b/user/super/com/google/gwt/emul/javaemul/internal/ConsoleLogger.java
index 0f30941..ea5a530 100644
--- a/user/super/com/google/gwt/emul/javaemul/internal/ConsoleLogger.java
+++ b/user/super/com/google/gwt/emul/javaemul/internal/ConsoleLogger.java
@@ -24,7 +24,7 @@
  */
 public class ConsoleLogger {
   public static ConsoleLogger createIfSupported() {
-    return getConsole() != null ? new ConsoleLogger() : null;
+    return JsUtils.typeOf(getConsole()).equals("undefined") ? null : new ConsoleLogger();
   }
 
   public void log(String level, String message) {
@@ -101,6 +101,8 @@
     public static LogFn groupEnd;
   }
 
-  @JsProperty(namespace = "<window>", name = "window.console")
+  // Using <window> due to https://code.google.com/archive/p/fbug/issues/2914 but probably not
+  // necessary anymore.
+  @JsProperty(namespace = "<window>", name = "console")
   private static native Console getConsole();
 }
diff --git a/user/super/com/google/gwt/emul/javaemul/internal/JsUtils.java b/user/super/com/google/gwt/emul/javaemul/internal/JsUtils.java
index 14a8e50..03fb8a1 100644
--- a/user/super/com/google/gwt/emul/javaemul/internal/JsUtils.java
+++ b/user/super/com/google/gwt/emul/javaemul/internal/JsUtils.java
@@ -31,6 +31,9 @@
   @JsMethod(namespace = "<window>")
   public static native int parseInt(String s, int radix);
 
+  @JsMethod(namespace = "<window>", name = "typeof")
+  public static native String typeOf(Object obj);
+
   public static native boolean isUndefined(Object value) /*-{
     return value === undefined;
   }-*/;
@@ -63,9 +66,5 @@
       map[key] = value;
     } catch(ignored) { }
   }-*/;
-
-  public static native String typeOf(Object o) /*-{
-    return typeof o;
-  }-*/;
 }
 
