[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[vidalia-svn] r1497: Don't send geoip requests if the user isn't even looking at (trunk/src/gui/network)



Author: edmanm
Date: 2006-12-04 21:25:45 -0500 (Mon, 04 Dec 2006)
New Revision: 1497

Modified:
   trunk/src/gui/network/netviewer.cpp
   trunk/src/gui/network/netviewer.h
Log:
Don't send geoip requests if the user isn't even looking at the map. When the
user opens the map window, start the queue timers again if the queue isn't
empty.


Modified: trunk/src/gui/network/netviewer.cpp
===================================================================
--- trunk/src/gui/network/netviewer.cpp	2006-12-04 06:48:22 UTC (rev 1496)
+++ trunk/src/gui/network/netviewer.cpp	2006-12-05 02:25:45 UTC (rev 1497)
@@ -125,6 +125,18 @@
              this,   SLOT(resolved(int, QList<GeoIp>)));
 }
 
+/** Display the network map window. If there are geoip requests waiting in the
+ * queue, start the queue timers now. */
+void
+NetViewer::showWindow()
+{
+  if (!_resolveQueue.isEmpty()) {
+    _minResolveQueueTimer.start(MIN_RESOLVE_QUEUE_DELAY);
+    _maxResolveQueueTimer.start(MAX_RESOLVE_QUEUE_DELAY);
+  }
+  VidaliaWindow::showWindow();
+}
+
 /** Clears map, lists and stops timer when we get disconnected */
 void
 NetViewer::gotDisconnected()
@@ -351,7 +363,7 @@
 void
 NetViewer::resolve()
 {
-  if (!_resolveQueue.isEmpty()) {
+  if (!_resolveQueue.isEmpty() && isVisible()) {
     /* Flush the resolve queue and stop the timers */
     _geoip.resolve(_resolveQueue);
     _resolveQueue.clear();

Modified: trunk/src/gui/network/netviewer.h
===================================================================
--- trunk/src/gui/network/netviewer.h	2006-12-04 06:48:22 UTC (rev 1496)
+++ trunk/src/gui/network/netviewer.h	2006-12-05 02:25:45 UTC (rev 1497)
@@ -50,6 +50,8 @@
   NetViewer(QWidget* parent = 0);
 
 public slots:
+  /** Displays the network map window. */
+  void showWindow();
   /** Loads a list of current circuits and streams. */
   void loadConnections();
   /** Adds a circuit to the list and the map */