[drape] android touches fix

correct resize event on android
This commit is contained in:
ExMix 2015-05-13 16:36:16 +03:00 committed by r.kuznetsov
parent 9a3885d8d7
commit a339be2827
2 changed files with 19 additions and 20 deletions

View file

@ -82,12 +82,14 @@ public abstract class RenderActivity extends MWMFragmentActivity
if (count == 0)
return super.onTouchEvent(event);
int action = event.getAction();
int action = event.getActionMasked();
switch (action)
{
case MotionEvent.ACTION_POINTER_UP:
case MotionEvent.ACTION_UP:
action = NATIVE_ACTION_UP;
break;
case MotionEvent.ACTION_POINTER_DOWN:
case MotionEvent.ACTION_DOWN:
action = NATIVE_ACTION_DOWN;
break;
@ -102,27 +104,27 @@ public abstract class RenderActivity extends MWMFragmentActivity
switch (count)
{
case 1:
{
mLastPointerId = event.getPointerId(0);
{
mLastPointerId = event.getPointerId(0);
final float x0 = event.getX();
final float y0 = event.getY();
final float x0 = event.getX();
final float y0 = event.getY();
return OnTouch(action, true, false, x0, y0, 0, 0);
}
return OnTouch(action, true, false, x0, y0, 0, 0);
}
default:
{
final float x0 = event.getX(0);
final float y0 = event.getY(0);
{
final float x0 = event.getX(0);
final float y0 = event.getY(0);
final float x1 = event.getX(1);
final float y1 = event.getY(1);
final float x1 = event.getX(1);
final float y1 = event.getY(1);
if (event.getPointerId(0) == mLastPointerId)
return OnTouch(action, true, true, x0, y0, x1, y1);
else
return OnTouch(action, true, true, x1, y1, x0, y0);
}
if (event.getPointerId(0) == mLastPointerId)
return OnTouch(action, true, true, x0, y0, x1, y1);
else
return OnTouch(action, true, true, x1, y1, x0, y0);
}
}
}

View file

@ -61,9 +61,6 @@ DrapeEngine::~DrapeEngine()
void DrapeEngine::Resize(int w, int h)
{
if (m_viewport.GetWidth() == w && m_viewport.GetHeight() == h)
return;
m_viewport.SetViewport(0, 0, w, h);
AddUserEvent(ResizeEvent(w, h));
}