aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/titanic/core/drop_target.cpp3
-rw-r--r--engines/titanic/input_handler.cpp4
2 files changed, 4 insertions, 3 deletions
diff --git a/engines/titanic/core/drop_target.cpp b/engines/titanic/core/drop_target.cpp
index 8165d58f8d..f02efeee5d 100644
--- a/engines/titanic/core/drop_target.cpp
+++ b/engines/titanic/core/drop_target.cpp
@@ -113,9 +113,10 @@ bool CDropTarget::DropObjectMsg(CDropObjectMsg *msg) {
}
bool CDropTarget::MouseDragStartMsg(CMouseDragStartMsg *msg) {
+ CTreeItem *dragItem = msg->_dragItem;
if (!checkStartDragging(msg))
return false;
- //msg->_dragItem = msg->_dragItem;
+ msg->_dragItem = dragItem;
CGameObject *obj = dynamic_cast<CGameObject *>(findByName(_itemName));
if (_itemName.empty() || _fieldF4 || !obj)
diff --git a/engines/titanic/input_handler.cpp b/engines/titanic/input_handler.cpp
index e4c60d24e9..ba2c08ed89 100644
--- a/engines/titanic/input_handler.cpp
+++ b/engines/titanic/input_handler.cpp
@@ -100,8 +100,8 @@ void CInputHandler::processMessage(CMessage *msg) {
CMouseDragMoveMsg moveMsg(_mousePos);
moveMsg.execute(_dragItem);
}
- } else {
- if (mouseMsg->isButtonUpMsg() && _dragItem) {
+ } else if (mouseMsg->isButtonUpMsg()) {
+ if (_dragItem) {
// Mouse drag ended
CGameObject *target = dragEnd(_mousePos, _dragItem);
CMouseDragEndMsg endMsg(_mousePos, target);