X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Finput%2Fandroid%2Ftouchscreen.cpp;h=ac205386ee0781f952ec40d5d68d57a95d07829e;hb=11ab96ba152e389814543a6398e2cd6f17a31092;hp=f4703c340b8d5cca4fc9164a16a57d0474b01726;hpb=74dbff4e7e7cd427ac50820cc6366ea421d4d049;p=libs%2Fgui.git diff --git a/source/input/android/touchscreen.cpp b/source/input/android/touchscreen.cpp index f4703c3..ac20538 100644 --- a/source/input/android/touchscreen.cpp +++ b/source/input/android/touchscreen.cpp @@ -1,11 +1,24 @@ -#include #include "touchscreen.h" +#include namespace Msp { namespace Input { +bool Touchscreen::is_available() +{ + return true; +} + void Touchscreen::input_event(const Graphics::Window::Event &event) { + int type = AInputEvent_getType(event.aevent); + if(type!=AINPUT_EVENT_TYPE_MOTION) + return; + + int source = AInputEvent_getSource(event.aevent); + if(source!=AINPUT_SOURCE_TOUCHSCREEN && source!=AINPUT_SOURCE_STYLUS) + return; + int action = AMotionEvent_getAction(event.aevent); int action_pointer = (action&AMOTION_EVENT_ACTION_POINTER_INDEX_MASK)>>AMOTION_EVENT_ACTION_POINTER_INDEX_SHIFT; action &= AMOTION_EVENT_ACTION_MASK;