chiark / gitweb /
Make Disobedience login window work even when you're logged in.
[disorder] / disobedience / client.c
index d81aac2f34c90287204c27a71b13a4c8e859139c..66a5bfc0f59fe331c8eb933130b3bb16c5d37dc1 100644 (file)
@@ -68,8 +68,7 @@ static gboolean gtkclient_dispatch(GSource *source,
   if(revents & (G_IO_OUT|G_IO_HUP|G_IO_ERR))
     mode |= DISORDER_POLL_WRITE;
   time(&esource->last_poll);
-  if(!login_window)
-    disorder_eclient_polled(esource->client, mode);
+  disorder_eclient_polled(esource->client, mode);
   return TRUE;                          /* ??? not documented */
 }
 
@@ -126,7 +125,8 @@ static void gtkclient_comms_error(void attribute((unused)) *u,
 /** @brief Report a protocol-level error
  *
  * The error will not be retried.  We offer a callback to the submitter of the
- * original command and if none is supplied we pop up an error box.
+ * original command and if none is supplied we drop the error message in the
+ * status bar.
  */
 static void gtkclient_protocol_error(void attribute((unused)) *u,
                                     void *v,
@@ -134,11 +134,12 @@ static void gtkclient_protocol_error(void attribute((unused)) *u,
                                     const char *msg) {
   struct callbackdata *cbd = v;
 
+  fprintf(stderr, "protocol error: %s\n", msg);
   D(("gtkclient_protocol_error %s", msg));
   if(cbd && cbd->onerror)
     cbd->onerror(cbd, code, msg);
   else
-    popup_protocol_error(code, msg);
+    gtk_label_set_text(GTK_LABEL(report_label), msg);
 }
 
 /** @brief Report callback from eclient */