summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/vehicle_gui.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/vehicle_gui.cpp b/src/vehicle_gui.cpp
index 0b89cd027..c84bd522c 100644
--- a/src/vehicle_gui.cpp
+++ b/src/vehicle_gui.cpp
@@ -1105,8 +1105,16 @@ static inline void ChangeVehicleWindow(WindowClass window_class, VehicleID from_
{
Window *w = FindWindowById(window_class, from_index);
if (w != NULL) {
+ /* Update window_number */
w->window_number = to_index;
if (w->viewport != NULL) w->viewport->follow_vehicle = to_index;
+
+ /* Update vehicle drag data */
+ if (_thd.window_class == window_class && _thd.window_number == (WindowNumber)from_index) {
+ _thd.window_number = to_index;
+ }
+
+ /* Notify the window */
w->InvalidateData();
}
}