Don't update the position if the handle was not first pressed
Change-Id: If09a2ca954a3bfca00b5a0839fea2899e7576c1d Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
This commit is contained in:
parent
5f924134ff
commit
f3397ec659
@ -61,6 +61,7 @@ class CursorView extends ImageView
|
|||||||
// The coordinare which where clicked
|
// The coordinare which where clicked
|
||||||
private float m_offsetX;
|
private float m_offsetX;
|
||||||
private float m_offsetY;
|
private float m_offsetY;
|
||||||
|
private boolean m_pressed = false;
|
||||||
|
|
||||||
CursorView (Context context, CursorHandle handle) {
|
CursorView (Context context, CursorHandle handle) {
|
||||||
super(context);
|
super(context);
|
||||||
@ -79,10 +80,13 @@ class CursorView extends ImageView
|
|||||||
case MotionEvent.ACTION_DOWN: {
|
case MotionEvent.ACTION_DOWN: {
|
||||||
m_offsetX = ev.getRawX();
|
m_offsetX = ev.getRawX();
|
||||||
m_offsetY = ev.getRawY() + getHeight() / 2;
|
m_offsetY = ev.getRawY() + getHeight() / 2;
|
||||||
|
m_pressed = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case MotionEvent.ACTION_MOVE: {
|
case MotionEvent.ACTION_MOVE: {
|
||||||
|
if (!m_pressed)
|
||||||
|
return false;
|
||||||
mHandle.updatePosition(Math.round(ev.getRawX() - m_offsetX),
|
mHandle.updatePosition(Math.round(ev.getRawX() - m_offsetX),
|
||||||
Math.round(ev.getRawY() - m_offsetY));
|
Math.round(ev.getRawY() - m_offsetY));
|
||||||
break;
|
break;
|
||||||
@ -90,6 +94,7 @@ class CursorView extends ImageView
|
|||||||
|
|
||||||
case MotionEvent.ACTION_UP:
|
case MotionEvent.ACTION_UP:
|
||||||
case MotionEvent.ACTION_CANCEL:
|
case MotionEvent.ACTION_CANCEL:
|
||||||
|
m_pressed = false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user