From c559ec63088e2d043eb0cf2e17dd23968aaa40b3 Mon Sep 17 00:00:00 2001 From: rubidium Date: Fri, 4 Dec 2009 14:23:54 +0000 Subject: (svn r18397) -Fix [FS#3346]: after cancelling downloading the download button would remain disabled --- src/network/network_content_gui.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/network/network_content_gui.cpp b/src/network/network_content_gui.cpp index 5d69a21cc..a65544748 100644 --- a/src/network/network_content_gui.cpp +++ b/src/network/network_content_gui.cpp @@ -110,7 +110,6 @@ public: /* Yes... these are the NewGRF windows */ InvalidateWindowClassesData(WC_SAVELOAD); InvalidateWindowData(WC_GAME_OPTIONS, 0, 1); - InvalidateWindowData(WC_NETWORK_WINDOW, 1, 2); break; case CONTENT_TYPE_SCENARIO: @@ -125,6 +124,8 @@ public: } } + /* Always invalidate the download window; tell it we are going to be gone */ + InvalidateWindowData(WC_NETWORK_WINDOW, 1, 2); _network_content_client.RemoveCallback(this); } @@ -781,7 +782,8 @@ public: } } - this->SetWidgetDisabledState(NCLWW_DOWNLOAD, this->filesize_sum == 0 || FindWindowById(WC_NETWORK_STATUS_WINDOW, 0) != NULL); + /* If data == 2 then the status window caused this OnInvalidate */ + this->SetWidgetDisabledState(NCLWW_DOWNLOAD, this->filesize_sum == 0 || (FindWindowById(WC_NETWORK_STATUS_WINDOW, 0) != NULL && data != 2)); this->SetWidgetDisabledState(NCLWW_UNSELECT, this->filesize_sum == 0); this->SetWidgetDisabledState(NCLWW_SELECT_ALL, !show_select_all); this->SetWidgetDisabledState(NCLWW_SELECT_UPDATE, !show_select_upgrade); -- cgit v1.2.3-54-g00ecf