summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--android/experimental/LOAndroid3/src/java/org/libreoffice/LOEvent.java3
-rw-r--r--android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitInputConnectionHandler.java8
-rw-r--r--android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitShell.java13
-rw-r--r--android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java10
-rw-r--r--android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitTileProvider.java11
-rw-r--r--android/experimental/LOAndroid3/src/java/org/libreoffice/MockTileProvider.java6
-rw-r--r--android/experimental/LOAndroid3/src/java/org/libreoffice/TileProvider.java11
7 files changed, 18 insertions, 44 deletions
diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOEvent.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOEvent.java
index bc786f5261b3..807d0d05788d 100644
--- a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOEvent.java
+++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOEvent.java
@@ -83,10 +83,9 @@ public class LOEvent implements Comparable<LOEvent> {
mDocumentTouchCoordinate = documentTouchCoordinate;
}
- public LOEvent(int type, String keyEventType, KeyEvent keyEvent) {
+ public LOEvent(int type, KeyEvent keyEvent) {
mType = type;
mTypeString = "Key Event";
- mKeyEventType = keyEventType;
mKeyEvent = keyEvent;
}
diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitInputConnectionHandler.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitInputConnectionHandler.java
index dc4c85669a67..36d477dc6997 100644
--- a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitInputConnectionHandler.java
+++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitInputConnectionHandler.java
@@ -16,13 +16,13 @@ public class LOKitInputConnectionHandler implements InputConnectionHandler {
@Override
public boolean onKeyPreIme(int keyCode, KeyEvent event) {
- LOKitShell.sendKeyPressEvent(event);
+ LOKitShell.sendKeyEvent(event);
return false;
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
- LOKitShell.sendKeyPressEvent(event);
+ LOKitShell.sendKeyEvent(event);
return false;
}
@@ -33,13 +33,13 @@ public class LOKitInputConnectionHandler implements InputConnectionHandler {
@Override
public boolean onKeyMultiple(int keyCode, int repeatCount, KeyEvent event) {
- LOKitShell.sendKeyPressEvent(event);
+ LOKitShell.sendKeyEvent(event);
return false;
}
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
- LOKitShell.sendKeyReleaseEvent(event);
+ LOKitShell.sendKeyEvent(event);
return false;
}
}
diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitShell.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitShell.java
index ab25078e5716..1e3036c3cbdf 100644
--- a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitShell.java
+++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitShell.java
@@ -90,17 +90,10 @@ public class LOKitShell {
}
/**
- * Send key press event to LOKitThread.
+ * Send key event to LOKitThread.
*/
- public static void sendKeyPressEvent(KeyEvent event) {
- LOKitShell.sendEvent(new LOEvent(LOEvent.KEY_EVENT, "KeyPress", event));
- }
-
- /**
- * Send key release event to LOKitThread.
- */
- public static void sendKeyReleaseEvent(KeyEvent event) {
- LOKitShell.sendEvent(new LOEvent(LOEvent.KEY_EVENT, "KeyRelease", event));
+ public static void sendKeyEvent(KeyEvent event) {
+ LOKitShell.sendEvent(new LOEvent(LOEvent.KEY_EVENT, event));
}
public static void sendSizeChangedEvent(int width, int height) {
diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java
index 3d71423aa34e..8ae5749b54dd 100644
--- a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java
+++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java
@@ -194,7 +194,7 @@ public class LOKitThread extends Thread implements TileProvider.TileInvalidation
touch(event.mTouchType, event.mMotionEvent, event.mDocumentTouchCoordinate);
break;
case LOEvent.KEY_EVENT:
- keyEvent(event.mKeyEventType, event.mKeyEvent);
+ keyEvent(event.mKeyEvent);
break;
case LOEvent.TILE_REEVALUATION_REQUEST:
tileReevaluationRequest(event.mComposedTileLayer);
@@ -205,18 +205,14 @@ public class LOKitThread extends Thread implements TileProvider.TileInvalidation
/**
* Processes key events.
*/
- private void keyEvent(String keyEventType, KeyEvent keyEvent) {
+ private void keyEvent(KeyEvent keyEvent) {
if (!LOKitShell.isEditingEnabled()) {
return;
}
if (mTileProvider == null) {
return;
}
- if (keyEventType.equals("KeyPress")) {
- mTileProvider.keyPress(keyEvent);
- } else if (keyEventType.equals("KeyRelease")) {
- mTileProvider.keyRelease(keyEvent);
- }
+ mTileProvider.sendKeyEvent(keyEvent);
}
/**
diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitTileProvider.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitTileProvider.java
index 97fb009a4cb2..d8753de1ac61 100644
--- a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitTileProvider.java
+++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitTileProvider.java
@@ -314,23 +314,20 @@ public class LOKitTileProvider implements TileProvider, Document.MessageCallback
}
@Override
- public void keyPress(KeyEvent keyEvent) {
+ public void sendKeyEvent(KeyEvent keyEvent) {
if (keyEvent.getAction() == KeyEvent.ACTION_MULTIPLE) {
String keyString = keyEvent.getCharacters();
for (int i = 0; i < keyString.length(); i++) {
int codePoint = keyString.codePointAt(i);
mOffice.postKeyEvent(Office.KEY_PRESS, codePoint, getKeyCode(keyEvent));
}
- } else {
+ } else if (keyEvent.getAction() == KeyEvent.ACTION_DOWN) {
mOffice.postKeyEvent(Office.KEY_PRESS, getCharCode(keyEvent), getKeyCode(keyEvent));
+ } else if (keyEvent.getAction() == KeyEvent.ACTION_UP) {
+ mOffice.postKeyEvent(Office.KEY_RELEASE, getCharCode(keyEvent), getKeyCode(keyEvent));
}
}
- @Override
- public void keyRelease(KeyEvent keyEvent) {
- mOffice.postKeyEvent(Office.KEY_RELEASE, getCharCode(keyEvent), getKeyCode(keyEvent));
- }
-
private void mouseButton(int type, PointF inDocument, int numberOfClicks) {
int x = (int) pixelToTwip(inDocument.x, mDPI);
int y = (int) pixelToTwip(inDocument.y, mDPI);
diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/MockTileProvider.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/MockTileProvider.java
index ed1e0697cbe2..e6fbcd2f508b 100644
--- a/android/experimental/LOAndroid3/src/java/org/libreoffice/MockTileProvider.java
+++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/MockTileProvider.java
@@ -94,11 +94,7 @@ public class MockTileProvider implements TileProvider {
}
@Override
- public void keyPress(KeyEvent keyEvent) {
- }
-
- @Override
- public void keyRelease(KeyEvent keyEvent) {
+ public void sendKeyEvent(KeyEvent keyEvent) {
}
diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/TileProvider.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/TileProvider.java
index 0050d1ea2ed7..92dbb3d7462b 100644
--- a/android/experimental/LOAndroid3/src/java/org/libreoffice/TileProvider.java
+++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/TileProvider.java
@@ -69,18 +69,11 @@ public interface TileProvider {
void registerInvalidationCallback(TileProvider.TileInvalidationCallback tileInvalidationCallback);
/**
- * Trigger a key press.
+ * Trigger a key event.
*
* @param keyEvent - contains information about key event
*/
- void keyPress(KeyEvent keyEvent);
-
- /**
- * Trigger a key release.
- *
- * @param keyEvent - contains information about key event
- */
- void keyRelease(KeyEvent keyEvent);
+ void sendKeyEvent(KeyEvent keyEvent);
/**
* Trigger a mouse button down event.