Kaydet (Commit) c08069f2 authored tarafından Tomaž Vajngerl's avatar Tomaž Vajngerl Kaydeden (comit) Miklos Vajna

android: clicking on toolbar icon exits edit mode

Change-Id: Idc8c94629bd7a23be1e3a13e88debc478d6ab880
üst 1771f21e
...@@ -315,6 +315,10 @@ public class InvalidationHandler implements Document.MessageCallback { ...@@ -315,6 +315,10 @@ public class InvalidationHandler implements Document.MessageCallback {
mTextCursorLayer.showGraphicSelection(); mTextCursorLayer.showGraphicSelection();
} }
public OverlayState getCurrentState() {
return mState;
}
public enum OverlayState { public enum OverlayState {
NONE, NONE,
TRANSITION, TRANSITION,
......
...@@ -23,6 +23,7 @@ public class LOEvent implements Comparable<LOEvent> { ...@@ -23,6 +23,7 @@ public class LOEvent implements Comparable<LOEvent> {
public static final int CHANGE_HANDLE_POSITION = 10; public static final int CHANGE_HANDLE_POSITION = 10;
public static final int SWIPE_RIGHT = 11; public static final int SWIPE_RIGHT = 11;
public static final int SWIPE_LEFT = 12; public static final int SWIPE_LEFT = 12;
public static final int NAVIGATION_CLICK = 13;
public final int mType; public final int mType;
public int mPriority = 0; public int mPriority = 0;
......
...@@ -142,4 +142,8 @@ public class LOKitShell { ...@@ -142,4 +142,8 @@ public class LOKitShell {
public static void sendChangeHandlePositionEvent(TextSelectionHandle.HandleType handleType, PointF documentCoordinate) { public static void sendChangeHandlePositionEvent(TextSelectionHandle.HandleType handleType, PointF documentCoordinate) {
LOKitShell.sendEvent(new LOEvent(LOEvent.CHANGE_HANDLE_POSITION, handleType, documentCoordinate)); LOKitShell.sendEvent(new LOEvent(LOEvent.CHANGE_HANDLE_POSITION, handleType, documentCoordinate));
} }
public static void sendNavigationClickEvent() {
LOKitShell.sendEvent(new LOEvent(LOEvent.NAVIGATION_CLICK));
}
} }
...@@ -213,6 +213,18 @@ public class LOKitThread extends Thread { ...@@ -213,6 +213,18 @@ public class LOKitThread extends Thread {
case LOEvent.SWIPE_RIGHT: case LOEvent.SWIPE_RIGHT:
onSwipeRight(); onSwipeRight();
break; break;
case LOEvent.NAVIGATION_CLICK:
if (mInvalidationHandler.getCurrentState() == InvalidationHandler.OverlayState.NONE) {
LOKitShell.getMainHandler().post(new Runnable() {
@Override
public void run() {
LibreOfficeMainActivity.mAppContext.onBackPressed();
}
});
} else {
mInvalidationHandler.changeStateTo(InvalidationHandler.OverlayState.NONE);
}
break;
} }
} }
......
...@@ -126,8 +126,8 @@ public class LibreOfficeMainActivity extends ActionBarActivity { ...@@ -126,8 +126,8 @@ public class LibreOfficeMainActivity extends ActionBarActivity {
toolbar.setNavigationOnClickListener(new View.OnClickListener() { toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View view) {
onBackPressed(); LOKitShell.sendNavigationClickEvent();
} }
}); });
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment