]> git.sesse.net Git - ccbs/blobdiff - bigscreen/groupscreen.cpp
Make backgrounded invalidated screens less database-noisy.
[ccbs] / bigscreen / groupscreen.cpp
index a9251a316a0ed663ee9ec5d900c953ee25fa069b..88fce1cc03606f527cce3c12158cd641c2956466 100644 (file)
@@ -1,6 +1,7 @@
 #include <cstdio>
 #include <algorithm>
 #include <map>
+#include <assert.h>
 
 #include "resolution.h"
 #include "groupscreen.h"
@@ -26,13 +27,12 @@ bool GroupScreen::check_invalidated()
                return true;
        if (!scores_changed.get_flag())
                return false;
+       scores_changed.reset_flag();
 
        bool needs_update;
        conn.perform(FetchNeedsUpdate(last_updated, tournament, round, parallel, &needs_update));
 
-       if (!needs_update)
-               scores_changed.reset_flag();
-       
+       valid = !needs_update;
        return needs_update;
 }
 
@@ -197,7 +197,7 @@ void GroupScreen::find_column_widths(const Group &group, std::vector<unsigned> &
                for (unsigned i = 0; i <= num_scores + 2; ++i)
                        sumcolwidth += colwidth[i] + 20;
                
-               if (sumcolwidth < 780)
+               if (sumcolwidth < LOGICAL_SCREEN_WIDTH - 20)
                        break;
 
                if (mode == 0) {
@@ -209,7 +209,7 @@ void GroupScreen::find_column_widths(const Group &group, std::vector<unsigned> &
         * If we have space to go, distribute as much as we can to the chosen song column, so we won't have
         * total and rank jumping around.
         */
-       if (sumcolwidth < 780) {
+       if (sumcolwidth < LOGICAL_SCREEN_WIDTH - 20) {
                int first_chosen_col = -1;
                unsigned col = 1;
 
@@ -221,7 +221,7 @@ void GroupScreen::find_column_widths(const Group &group, std::vector<unsigned> &
                }
 
                if (first_chosen_col != -1) {
-                       colwidth[first_chosen_col] += 780 - sumcolwidth;
+                       colwidth[first_chosen_col] += LOGICAL_SCREEN_WIDTH - 20 - sumcolwidth;
                }
        }
 }