@@ -0,0 +1,1119 @@
+package org.realityforge.gwt.online.client.html5;%0A%0Aimport com.google.web.bindery.event.shared.EventBus;%0Aimport com.google.web.bindery.event.shared.SimpleEventBus;%0Aimport org.realityforge.gwt.online.client.OnlineIndicator;%0A%0Apublic final class Html5OnlineIndicator%0A  extends OnlineIndicator%0A%7B%0A  public static native boolean isSupported()/*-%7B%0A    return typeof ($wnd.onLine) == %22boolean%22;%0A  %7D-*/;%0A%0A  public Html5OnlineIndicator()%0A  %7B%0A    this( new SimpleEventBus() );%0A  %7D%0A%0A  public Html5OnlineIndicator( final EventBus eventBus )%0A  %7B%0A    super( eventBus );%0A    registerListeners0();%0A  %7D%0A%0A  @Override%0A  public final native boolean isOnLine() /*-%7B%0A   return navigator.onLine;%0A  %7D-*/;%0A%0A  private native void registerListeners0() /*-%7B%0A    var that = this;%0A%0A    var onOnLine = $entry( function () %7B%0A      that.@org.realityforge.gwt.online.client.OnlineIndicator::onOnLine()();%0A    %7D );%0A    $wnd.addEventListener( %22online%22, onOnLine );%0A%0A    var onOffLine = $entry( function () %7B%0A      that.@org.realityforge.gwt.online.client.OnlineIndicator::onOffLine()();%0A    %7D );%0A    $wnd.addEventListener( %22offline%22, onOffLine );%0A  %7D-*/;%0A%7D%0A

Add GWT implementation