&& windowid == this->window_id)
return;
- if (msg->FindPoint ("_drop_point_", &whereto) == B_OK)
- {
- this->ConvertFromScreen (&whereto);
+ whereto = msg->DropPoint ();
- rq.window = this;
- rq.message = DetachCurrentMessage ();
- rq.x = whereto.x;
- rq.y = whereto.y;
+ this->ConvertFromScreen (&whereto);
- haiku_write (DRAG_AND_DROP_EVENT, &rq);
- }
+ rq.window = this;
+ rq.message = DetachCurrentMessage ();
+ rq.x = whereto.x;
+ rq.y = whereto.y;
+
+ haiku_write (DRAG_AND_DROP_EVENT, &rq);
}
else if (msg->GetPointer ("menuptr"))
{
block_input_function ();
- if (!allow_same_view)
+ if (!allow_same_view &&
+ (msg->ReplaceInt32 ("emacs:window_id", window->window_id)
+ == B_NAME_NOT_FOUND))
msg->AddInt32 ("emacs:window_id", window->window_id);
if (!vw->LockLooper ())