diff --git a/src/openrct2-ui/windows/EditorInventionsList.cpp b/src/openrct2-ui/windows/EditorInventionsList.cpp index de479ff7b0..1be94fea55 100644 --- a/src/openrct2-ui/windows/EditorInventionsList.cpp +++ b/src/openrct2-ui/windows/EditorInventionsList.cpp @@ -509,6 +509,12 @@ public: return item == _selectedResearchItem; } + // hack to fix #17544: OnScrollMouseOver never gets called while dragging + void SetSelectedResearchItem(ResearchItem* item) + { + _selectedResearchItem = item; + } + void MoveResearchItem(const ResearchItem& item, ResearchItem* beforeItem, bool isInvented) { _selectedResearchItem = nullptr; @@ -597,6 +603,7 @@ public: auto* research = res.has_value() ? res->research : nullptr; if (!inventionListWindow->IsResearchItemSelected(research)) { + inventionListWindow->SetSelectedResearchItem(research); inventionListWindow->Invalidate(); } }