* closing a window no longer takes you to debugger
* send mouse_[move/up/weel] only if the cursor is inside a window(not above decorator) * added WinBorder::MouseWheel() git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10912 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -287,7 +287,17 @@ void WinBorder::MouseMoved(PointerEvent& evt)
|
||||
fDecorator->DrawMinimize();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (fTopLayer->fFullVisible.Contains(evt.where))
|
||||
{
|
||||
BMessage movemsg(B_MOUSE_MOVED);
|
||||
movemsg.AddInt64("when",evt.when);
|
||||
movemsg.AddPoint("where",evt.where);
|
||||
movemsg.AddInt32("buttons",evt.buttons);
|
||||
|
||||
Window()->SendMessageToClient(&movemsg);
|
||||
}
|
||||
|
||||
fLastMousePosition = evt.where;
|
||||
}
|
||||
|
||||
@@ -349,6 +359,31 @@ void WinBorder::MouseUp(PointerEvent& evt)
|
||||
Window()->Minimize(true);
|
||||
return;
|
||||
}
|
||||
|
||||
if (fTopLayer->fFullVisible.Contains(evt.where))
|
||||
{
|
||||
BMessage upmsg(B_MOUSE_UP);
|
||||
upmsg.AddInt64("when",evt.when);
|
||||
upmsg.AddPoint("where",evt.where);
|
||||
upmsg.AddInt32("modifiers",evt.modifiers);
|
||||
|
||||
Window()->SendMessageToClient(&upmsg);
|
||||
}
|
||||
}
|
||||
|
||||
void WinBorder::MouseWheel(PointerEvent& evt, BPoint& ptWhere)
|
||||
{
|
||||
if (fTopLayer->fFullVisible.Contains(ptWhere))
|
||||
{
|
||||
BMessage wheelmsg(B_MOUSE_WHEEL_CHANGED);
|
||||
wheelmsg.AddInt64("when",evt.when);
|
||||
wheelmsg.AddFloat("be:wheel_delta_x",evt.wheel_delta_x);
|
||||
wheelmsg.AddFloat("be:wheel_delta_y",evt.wheel_delta_y);
|
||||
|
||||
Window()->Lock();
|
||||
Window()->SendMessageToClient(&wheelmsg);
|
||||
Window()->Unlock();
|
||||
}
|
||||
}
|
||||
|
||||
//! Sets the decorator focus to active or inactive colors
|
||||
|
||||
Reference in New Issue
Block a user