diff options
author | Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk> | 2015-03-06 18:54:27 +0900 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2015-03-09 10:16:19 +0100 |
commit | 58c89e41408e1ea0a93d84a02e0921bfe1b34c5c (patch) | |
tree | 3d42ca63e03ef35501ae816e4e5c02be445a0e99 /android | |
parent | bbb857c1d3a7c1e5e9f2548e63fb8a80807f1ee3 (diff) |
android: support to make selections visible/invisible
Change-Id: Iaebf3e5a2f0c11efa7110b7062ecfc3ae38e0e64
Diffstat (limited to 'android')
-rw-r--r-- | android/experimental/LOAndroid3/src/java/org/libreoffice/TextCursorLayer.java | 20 | ||||
-rw-r--r-- | android/experimental/LOAndroid3/src/java/org/libreoffice/TextCursorView.java | 27 |
2 files changed, 40 insertions, 7 deletions
diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/TextCursorLayer.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/TextCursorLayer.java index 0fa3764cdbd9..ce17c68eb386 100644 --- a/android/experimental/LOAndroid3/src/java/org/libreoffice/TextCursorLayer.java +++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/TextCursorLayer.java @@ -80,6 +80,26 @@ public class TextCursorLayer extends Layer { }); } + public void showSelections() { + LOKitShell.getMainHandler().post(new Runnable() { + public void run() { + LayerView layerView = LOKitShell.getLayerView(); + if (layerView != null) { + layerView.addLayer(TextCursorLayer.this); + } + mCursorView.showSelections(); + } + }); + } + + public void hideSelections() { + LOKitShell.getMainHandler().post(new Runnable() { + public void run() { + mCursorView.hideSelections(); + } + }); + } + public void changeSelections(final List<RectF> selections) { LOKitShell.getMainHandler().post(new Runnable() { public void run() { diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/TextCursorView.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/TextCursorView.java index f1e903814206..685e8c3f7dc5 100644 --- a/android/experimental/LOAndroid3/src/java/org/libreoffice/TextCursorView.java +++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/TextCursorView.java @@ -36,6 +36,7 @@ public class TextCursorView extends View { private Paint mSelectionPaint = new Paint(); private boolean mCursorVisible; + private boolean mSelectionsVisible; public TextCursorView(Context context) { super(context); @@ -57,13 +58,14 @@ public class TextCursorView extends View { postDelayed(cursorAnimation, 500); mCursorPaint.setColor(Color.BLACK); - mCursorPaint.setAlpha(0); + mCursorPaint.setAlpha(0xFF); mCursorVisible = false; mSelectionPaint.setColor(Color.BLUE); mSelectionPaint.setAlpha(50); + mSelectionsVisible = false; mInitialized = true; } } @@ -110,10 +112,13 @@ public class TextCursorView extends View { @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); - canvas.drawRect(mCursorScaledPosition, mCursorPaint); - - for (RectF selection : mScaledSelections) { - canvas.drawRect(selection, mSelectionPaint); + if (mCursorVisible) { + canvas.drawRect(mCursorScaledPosition, mCursorPaint); + } + if (mSelectionsVisible) { + for (RectF selection : mScaledSelections) { + canvas.drawRect(selection, mSelectionPaint); + } } } @@ -129,13 +134,21 @@ public class TextCursorView extends View { public void showCursor() { mCursorVisible = true; - mCursorPaint.setAlpha(0xFF); invalidate(); } public void hideCursor() { mCursorVisible = false; - mCursorPaint.setAlpha(0); + invalidate(); + } + + public void showSelections() { + mSelectionsVisible = true; + invalidate(); + } + + public void hideSelections() { + mSelectionsVisible = false; invalidate(); } }
\ No newline at end of file |