From 32881228d48f2e1afd5c0a241a8461bdcb1d7169 Mon Sep 17 00:00:00 2001
From: Markus Himmel <markus@himmel-villmar.de>
Date: Thu, 17 Dec 2015 12:01:15 +0100
Subject: [PATCH] Tracker: Add dragged poses to the drag message in the correct
order
The function EachPoseAndModel iterates through poses in reverse order.
This fixes #12333.
---
src/kits/tracker/PoseView.cpp | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/src/kits/tracker/PoseView.cpp b/src/kits/tracker/PoseView.cpp
index 8195ca9..ffd9a1b 100644
a
|
b
|
BPoseView::WasDoubleClick(const BPose* pose, BPoint point, int32 buttons)
|
7496 | 7496 | |
7497 | 7497 | |
7498 | 7498 | static void |
7499 | | AddPoseRefToMessage(BPose*, Model* model, BMessage* message) |
| 7499 | AddPoseRefToMessage(Model* model, BMessage* message) |
7500 | 7500 | { |
7501 | 7501 | // Make sure that every file added to the message has its |
7502 | 7502 | // MIME type set. |
… |
… |
BPoseView::DragSelectedPoses(const BPose* pose, BPoint clickPoint)
|
7536 | 7536 | // add Tracker token so that refs received recipients can script us |
7537 | 7537 | message.AddMessenger("TrackerViewToken", BMessenger(this)); |
7538 | 7538 | |
7539 | | EachPoseAndModel(fSelectionList, &AddPoseRefToMessage, &message); |
| 7539 | // cannot use EachPoseAndModel here, because that iterates the selected |
| 7540 | // poses in reverse order |
| 7541 | for (int32 index = 0; index < fSelectionList->CountItems(); index++) { |
| 7542 | AddPoseRefToMessage(fSelectionList->ItemAt(index)->TargetModel(), |
| 7543 | &message); |
| 7544 | } |
7540 | 7545 | |
7541 | 7546 | // make sure button is still down |
7542 | 7547 | uint32 buttons; |