diff options
author | Tor Lillqvist <tml@iki.fi> | 2013-03-02 20:58:15 +0200 |
---|---|---|
committer | Tor Lillqvist <tml@iki.fi> | 2013-03-02 21:00:01 +0200 |
commit | c859cc21cd4b577b4e7df8955375fcc5df2bd980 (patch) | |
tree | 4bd094e2a229aba5a460c1f349f3ac1a679555eb /vcl/android | |
parent | ec7986d43be123f66a952ab9619c4beccd0c8446 (diff) |
Start hacking on zoom and scroll events at the VCL "public" level
On the internal ("Sal") VCL level they will correspond to wheel mouse events,
I guess.
Change-Id: Ia422f892d73afe501f529020c2aed9ff8fca99f9
Diffstat (limited to 'vcl/android')
-rw-r--r-- | vcl/android/androidinst.cxx | 58 |
1 files changed, 29 insertions, 29 deletions
diff --git a/vcl/android/androidinst.cxx b/vcl/android/androidinst.cxx index 7fa77792e441..fdac1ecf1d1e 100644 --- a/vcl/android/androidinst.cxx +++ b/vcl/android/androidinst.cxx @@ -922,10 +922,9 @@ Java_org_libreoffice_experimental_desktop_Desktop_key(JNIEnv * /* env */, jchar c, jshort /* timestamp */) { - KeyEvent aEvent(c, c, 0); - SalFrame *pFocus = AndroidSalInstance::getInstance()->getFocusFrame(); if (pFocus) { + KeyEvent aEvent(c, c, 0); Application::PostKeyEvent(VCLEVENT_WINDOW_KEYINPUT, pFocus->GetWindow(), &aEvent); Application::PostKeyEvent(VCLEVENT_WINDOW_KEYUP, pFocus->GetWindow(), &aEvent); } @@ -942,30 +941,30 @@ Java_org_libreoffice_experimental_desktop_Desktop_touch(JNIEnv * /* env */, jint y, jshort /* timestamp */) { - MouseEvent aEvent; - - sal_uLong nEvent; - switch (action) { - case AMOTION_EVENT_ACTION_DOWN: - aEvent = MouseEvent(Point(x, y), 1, MOUSE_SIMPLECLICK, MOUSE_LEFT); - nEvent = VCLEVENT_WINDOW_MOUSEBUTTONDOWN; - break; - case AMOTION_EVENT_ACTION_UP: - aEvent = MouseEvent(Point(x, y), 1, MOUSE_SIMPLECLICK, MOUSE_LEFT); - nEvent = VCLEVENT_WINDOW_MOUSEBUTTONUP; - break; - case AMOTION_EVENT_ACTION_MOVE: - aEvent = MouseEvent(Point(x, y), 1, MOUSE_SIMPLEMOVE, MOUSE_LEFT); - nEvent = VCLEVENT_WINDOW_MOUSEMOVE; - break; - default: - LOGE("Java_org_libreoffice_experimental_desktop_Desktop_touch: Invalid action %d", action); - return; - } - SalFrame *pFocus = AndroidSalInstance::getInstance()->getFocusFrame(); - if (pFocus) + if (pFocus) { + MouseEvent aEvent; + sal_uLong nEvent; + + switch (action) { + case AMOTION_EVENT_ACTION_DOWN: + aEvent = MouseEvent(Point(x, y), 1, MOUSE_SIMPLECLICK, MOUSE_LEFT); + nEvent = VCLEVENT_WINDOW_MOUSEBUTTONDOWN; + break; + case AMOTION_EVENT_ACTION_UP: + aEvent = MouseEvent(Point(x, y), 1, MOUSE_SIMPLECLICK, MOUSE_LEFT); + nEvent = VCLEVENT_WINDOW_MOUSEBUTTONUP; + break; + case AMOTION_EVENT_ACTION_MOVE: + aEvent = MouseEvent(Point(x, y), 1, MOUSE_SIMPLEMOVE, MOUSE_LEFT); + nEvent = VCLEVENT_WINDOW_MOUSEMOVE; + break; + default: + LOGE("Java_org_libreoffice_experimental_desktop_Desktop_touch: Invalid action %d", action); + return; + } Application::PostMouseEvent(nEvent, pFocus->GetWindow(), &aEvent); + } else LOGW("No focused frame to emit event on"); } @@ -978,12 +977,13 @@ Java_org_libreoffice_experimental_desktop_Desktop_zoom(JNIEnv * /* env */, jint x, jint y) { - (void) x; - (void) y; - - if (scale > 1.05) { - } else if (scale < 0.95) { + SalFrame *pFocus = AndroidSalInstance::getInstance()->getFocusFrame(); + if (pFocus) { + ZoomEvent aEvent( Point( x, y ), scale); + Application::PostZoomEvent(VCLEVENT_WINDOW_ZOOM, pFocus->GetWindow(), &aEvent); } + else + LOGW("No focused frame to emit event on"); } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |