Author: jflesch
Date: 2008-01-27 12:11:50 +0000 (Sun, 27 Jan 2008)
New Revision: 17314

Modified:
   trunk/apps/Thaw/src/thaw/fcp/FCPTransferQuery.java
   trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueueTableModel.java
Log:
TrayIcon / QueueWatcher : Should fix the ballon-user-to-death bug

Modified: trunk/apps/Thaw/src/thaw/fcp/FCPTransferQuery.java
===================================================================
--- trunk/apps/Thaw/src/thaw/fcp/FCPTransferQuery.java  2008-01-27 12:02:59 UTC 
(rev 17313)
+++ trunk/apps/Thaw/src/thaw/fcp/FCPTransferQuery.java  2008-01-27 12:11:50 UTC 
(rev 17314)
@@ -90,10 +90,14 @@
                                if (blocks <= 0 || diffTime <= 0)
                                        return;

+                               long prevAverageSpeed = averageSpeed;
+                               long prevETA = ETA;
+                       
                                averageSpeed = (blocks * BLOCK_SIZE) / 
diffTime;                        
                                ETA = diffTime; /* ok, it's a little bit icky, 
but it does the trick :) */

-                               notifyChange();
+                               if (prevAverageSpeed != averageSpeed || prevETA 
!= ETA)
+                                       notifyChange(new Long(ETA));

                                return;
                        }
@@ -270,7 +274,12 @@
                notifyObservers();
        }

+       public void notifyChange(Object o) {
+               setChanged();
+               notifyObservers(o);
+       }

+       
        /**** To implement : ****/



Modified: trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueueTableModel.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueueTableModel.java  
2008-01-27 12:02:59 UTC (rev 17313)
+++ trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueueTableModel.java  
2008-01-27 12:11:50 UTC (rev 17314)
@@ -366,7 +366,8 @@

                if (o instanceof FCPTransferQuery
                    && queries.indexOf(o) >= 0
-                   && ((FCPTransferQuery)o).isFinished()) {
+                   && ((FCPTransferQuery)o).isFinished()
+                   && !(arg instanceof Long /* update of the total time/ETA 
*/)) {

                        String str = null;



Reply via email to