diff options
author | Jonathan G Rennison <j.g.rennison@gmail.com> | 2021-02-18 11:29:30 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-18 12:29:30 +0100 |
commit | 15b99f2e7ae0b2ab4bce18c1663dff95220f42e0 (patch) | |
tree | b1f8956efd3f121489310080547197aa999dcd89 | |
parent | 55ed7d16f7e4e8189840ae90048284311eb2f45f (diff) | |
download | openttd-15b99f2e7ae0b2ab4bce18c1663dff95220f42e0.tar.xz |
Fix: Whole status bar instead of money widget refreshed on money change (#8692)
This could result in the rest of the status bar being
redrawn unnecessarily frequently
-rw-r--r-- | src/company_cmd.cpp | 3 | ||||
-rw-r--r-- | src/date.cpp | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/src/company_cmd.cpp b/src/company_cmd.cpp index fee312b8d..21f7125b7 100644 --- a/src/company_cmd.cpp +++ b/src/company_cmd.cpp @@ -35,6 +35,7 @@ #include "game/game.hpp" #include "goal_base.h" #include "story_base.h" +#include "widgets/statusbar_widget.h" #include "table/strings.h" @@ -182,7 +183,7 @@ void InvalidateCompanyWindows(const Company *company) { CompanyID cid = company->index; - if (cid == _local_company) SetWindowDirty(WC_STATUS_BAR, 0); + if (cid == _local_company) SetWindowWidgetDirty(WC_STATUS_BAR, 0, WID_S_RIGHT); SetWindowDirty(WC_FINANCES, cid); } diff --git a/src/date.cpp b/src/date.cpp index 18e1ad180..0fd98c42b 100644 --- a/src/date.cpp +++ b/src/date.cpp @@ -19,6 +19,7 @@ #include "linkgraph/linkgraph.h" #include "saveload/saveload.h" #include "newgrf_profiling.h" +#include "widgets/statusbar_widget.h" #include "safeguards.h" @@ -255,7 +256,7 @@ static void OnNewDay() DisasterDailyLoop(); IndustryDailyLoop(); - SetWindowWidgetDirty(WC_STATUS_BAR, 0, 0); + SetWindowWidgetDirty(WC_STATUS_BAR, 0, WID_S_LEFT); EnginesDailyLoop(); /* Refresh after possible snowline change */ |