Index: dart/samples/dartiverse_search/web/client.dart |
=================================================================== |
--- dart/samples/dartiverse_search/web/client.dart (revision 30146) |
+++ dart/samples/dartiverse_search/web/client.dart (working copy) |
@@ -10,6 +10,7 @@ |
class Client { |
static const Duration RECONNECT_DELAY = const Duration(milliseconds: 500); |
+ bool connectPending = false; |
WebSocket webSocket; |
final DivElement log = new DivElement(); |
SearchInputElement searchElement = querySelector('#q'); |
@@ -25,6 +26,7 @@ |
} |
void connect() { |
+ connectPending = false; |
webSocket = new WebSocket('ws://${Uri.base.host}:${Uri.base.port}/ws'); |
webSocket.onOpen.first.then((_) { |
onConnected(); |
@@ -50,8 +52,10 @@ |
} |
void onDisconnected() { |
+ if (connectPending) return; |
+ connectPending = true; |
+ setStatus('Disconnected - start \'bin/server.dart\' to continue'); |
searchElement.disabled = true; |
- setStatus('Disconnected - start \'bin/server.dart\' to continue'); |
new Timer(RECONNECT_DELAY, connect); |
} |