forked from Lainports/freebsd-ports
28 lines
875 B
C++
28 lines
875 B
C++
--- ./lib/server/CClientProxy1_0.cpp.orig 2006-04-02 03:47:03.000000000 +0200
|
|
+++ ./lib/server/CClientProxy1_0.cpp 2007-07-24 16:59:59.000000000 +0200
|
|
@@ -401,7 +401,7 @@
|
|
&x, &y, &w, &h, &dummy1, &mx, &my)) {
|
|
return false;
|
|
}
|
|
- LOG((CLOG_DEBUG "received client \"%s\" info shape=%d,%d %dx%d", getName().c_str(), x, y, w, h));
|
|
+ LOG((CLOG_DEBUG "received client \"%s\" info shape=%d,%d %dx%d mouse=%d,%d", getName().c_str(), x, y, w, h, mx, my));
|
|
|
|
// validate
|
|
if (w <= 0 || h <= 0) {
|
|
@@ -413,8 +413,14 @@
|
|
m_info.m_y = y;
|
|
m_info.m_w = w;
|
|
m_info.m_h = h;
|
|
- m_info.m_mx = mx;
|
|
- m_info.m_my = my;
|
|
+
|
|
+ if(mx >= x && mx < x+w && my >= y && my < y+h) {
|
|
+ m_info.m_mx = mx;
|
|
+ m_info.m_my = my;
|
|
+ } else {
|
|
+ m_info.m_mx = x + w/2;
|
|
+ m_info.m_my = y + h/2;
|
|
+ }
|
|
|
|
// acknowledge receipt
|
|
LOG((CLOG_DEBUG1 "send info ack to \"%s\"", getName().c_str()));
|