summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoraleksandar-stefanovic <theonewithideas@gmail.com>2017-01-25 20:28:21 +0100
committerChristian Lohmaier <lohmaier+LibreOffice@googlemail.com>2017-01-31 10:53:36 +0000
commitd339bba78ada3655097e96c82eeb886818ee5080 (patch)
tree9d14cdefbfdb8722e170e7ba9897322ee27eed47
parent644d92ada400e335e256215598a532f116438a1f (diff)
Removed static context from JavaPanZoomController
Removed static context, and edited the access levels of some methods in the classes, along with some general code style fixes. Change-Id: I89c71fa38eaafb5cda721602cfc8dad10ba7d26a Reviewed-on: https://gerrit.libreoffice.org/33557 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Tested-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
-rw-r--r--android/source/src/java/org/mozilla/gecko/gfx/GeckoLayerClient.java22
-rw-r--r--android/source/src/java/org/mozilla/gecko/gfx/JavaPanZoomController.java24
-rw-r--r--android/source/src/java/org/mozilla/gecko/gfx/PanZoomController.java31
3 files changed, 38 insertions, 39 deletions
diff --git a/android/source/src/java/org/mozilla/gecko/gfx/GeckoLayerClient.java b/android/source/src/java/org/mozilla/gecko/gfx/GeckoLayerClient.java
index fdcdb1ba51f0..12c939690200 100644
--- a/android/source/src/java/org/mozilla/gecko/gfx/GeckoLayerClient.java
+++ b/android/source/src/java/org/mozilla/gecko/gfx/GeckoLayerClient.java
@@ -5,7 +5,7 @@
package org.mozilla.gecko.gfx;
-import android.content.Context;
+import org.libreoffice.LibreOfficeMainActivity;
import android.graphics.PointF;
import android.graphics.RectF;
import android.util.DisplayMetrics;
@@ -20,7 +20,7 @@ public class GeckoLayerClient implements PanZoomTarget {
private LayerRenderer mLayerRenderer;
- private Context mContext;
+ private LibreOfficeMainActivity mContext;
private IntSize mScreenSize;
private DisplayPortMetrics mDisplayPort;
@@ -50,7 +50,7 @@ public class GeckoLayerClient implements PanZoomTarget {
private PanZoomController mPanZoomController;
private LayerView mView;
- public GeckoLayerClient(Context context) {
+ public GeckoLayerClient(LibreOfficeMainActivity context) {
// we can fill these in with dummy values because they are always written
// to before being read
mContext = context;
@@ -65,7 +65,7 @@ public class GeckoLayerClient implements PanZoomTarget {
public void setView(LayerView view) {
mView = view;
- mPanZoomController = PanZoomController.Factory.create(this, view);
+ mPanZoomController = PanZoomController.Factory.create(mContext, this, view);
mView.connect(this);
}
@@ -87,10 +87,6 @@ public class GeckoLayerClient implements PanZoomTarget {
mPanZoomController.destroy();
}
- public Context getContext() {
- return mContext;
- }
-
Layer getRoot() {
return mIsReady ? mRootLayer : null;
}
@@ -132,7 +128,7 @@ public class GeckoLayerClient implements PanZoomTarget {
sendResizeEventIfNecessary();
}
- public PanZoomController getPanZoomController() {
+ PanZoomController getPanZoomController() {
return mPanZoomController;
}
@@ -173,7 +169,7 @@ public class GeckoLayerClient implements PanZoomTarget {
});
}
- void adjustViewport(DisplayPortMetrics displayPort) {
+ private void adjustViewport(DisplayPortMetrics displayPort) {
ImmutableViewportMetrics metrics = getViewportMetrics();
ImmutableViewportMetrics clampedMetrics = metrics.clamp();
@@ -221,7 +217,7 @@ public class GeckoLayerClient implements PanZoomTarget {
}
}
- DisplayPortMetrics getDisplayPort() {
+ private DisplayPortMetrics getDisplayPort() {
return mDisplayPort;
}
@@ -235,7 +231,7 @@ public class GeckoLayerClient implements PanZoomTarget {
mRootLayer.endTransaction();
}
- public void geometryChanged() {
+ private void geometryChanged() {
sendResizeEventIfNecessary();
if (getRedrawHint()) {
adjustViewport(null);
@@ -342,7 +338,7 @@ public class GeckoLayerClient implements PanZoomTarget {
}
/* Root Layer Access */
- public void reevaluateTiles() {
+ private void reevaluateTiles() {
mLowResLayer.reevaluateTiles(mViewportMetrics, mDisplayPort);
mRootLayer.reevaluateTiles(mViewportMetrics, mDisplayPort);
}
diff --git a/android/source/src/java/org/mozilla/gecko/gfx/JavaPanZoomController.java b/android/source/src/java/org/mozilla/gecko/gfx/JavaPanZoomController.java
index 3987b00b6773..131c534afe20 100644
--- a/android/source/src/java/org/mozilla/gecko/gfx/JavaPanZoomController.java
+++ b/android/source/src/java/org/mozilla/gecko/gfx/JavaPanZoomController.java
@@ -28,7 +28,7 @@ import java.util.TimerTask;
* Many ideas are from Joe Hewitt's Scrollability:
* https://github.com/joehewitt/scrollability/
*/
-public class JavaPanZoomController
+class JavaPanZoomController
extends GestureDetector.SimpleOnGestureListener
implements PanZoomController, SimpleScaleGestureDetector.SimpleScaleGestureListener
{
@@ -77,6 +77,7 @@ public class JavaPanZoomController
private final Axis mY;
private final TouchEventHandler mTouchEventHandler;
private Thread mMainThread;
+ private LibreOfficeMainActivity mContext;
/* The timer that handles flings or bounces. */
private Timer mAnimationTimer;
@@ -91,7 +92,8 @@ public class JavaPanZoomController
/* Whether or not to wait for a double-tap before dispatching a single-tap */
private boolean mWaitForDoubleTap;
- public JavaPanZoomController(PanZoomTarget target, View view) {
+ JavaPanZoomController(LibreOfficeMainActivity context, PanZoomTarget target, View view) {
+ mContext = context;
PAN_THRESHOLD = 1/16f * LOKitShell.getDpi(view.getContext());
MAX_SCROLL = 0.075f * LOKitShell.getDpi(view.getContext());
mTarget = target;
@@ -100,7 +102,7 @@ public class JavaPanZoomController
mY = new AxisY(mSubscroller);
mTouchEventHandler = new TouchEventHandler(view.getContext(), view, this);
- mMainThread = LibreOfficeMainActivity.mAppContext.getMainLooper().getThread();
+ mMainThread = mContext.getMainLooper().getThread();
checkMainThread();
setState(PanZoomState.NOTHING);
@@ -111,7 +113,7 @@ public class JavaPanZoomController
mTouchEventHandler.destroy();
}
- private static final float easeOut(float t) {
+ private static float easeOut(float t) {
// ease-out approx.
// -(t-1)^2+1
t = t-1;
@@ -202,7 +204,7 @@ public class JavaPanZoomController
}
/** This function must be called on the UI thread. */
- public void startingNewEventBlock(MotionEvent event, boolean waitingForTouchListeners) {
+ void startingNewEventBlock(MotionEvent event, boolean waitingForTouchListeners) {
checkMainThread();
mSubscroller.cancel();
if (waitingForTouchListeners && (event.getAction() & MotionEvent.ACTION_MASK) == MotionEvent.ACTION_DOWN) {
@@ -214,7 +216,7 @@ public class JavaPanZoomController
}
/** This function must be called on the UI thread. */
- public void preventedTouchFinished() {
+ void preventedTouchFinished() {
checkMainThread();
if (mState == PanZoomState.WAITING_LISTENERS) {
// if we enter here, we just finished a block of events whose default actions
@@ -276,7 +278,7 @@ public class JavaPanZoomController
private boolean handleTouchMove(MotionEvent event) {
if (mState == PanZoomState.PANNING_LOCKED || mState == PanZoomState.PANNING) {
if (getVelocity() > 18.0f) {
- LibreOfficeMainActivity.mAppContext.hideSoftKeyboard();
+ mContext.hideSoftKeyboard();
}
}
@@ -555,7 +557,7 @@ public class JavaPanZoomController
return getVelocity() < STOPPED_THRESHOLD;
}
- PointF resetDisplacement() {
+ private PointF resetDisplacement() {
return new PointF(mX.resetDisplacement(), mY.resetDisplacement());
}
@@ -593,7 +595,7 @@ public class JavaPanZoomController
protected abstract void animateFrame();
/* This should always run on the UI thread */
- protected final void terminate() {
+ final void terminate() {
mAnimationTerminated = true;
}
}
@@ -986,7 +988,7 @@ public class JavaPanZoomController
* While we usually use device pixels, zoomToRect must be specified in CSS
* pixels.
*/
- public boolean animatedZoomTo(RectF zoomToRect) {
+ boolean animatedZoomTo(RectF zoomToRect) {
final float startZoom = getMetrics().zoomFactor;
RectF viewport = getMetrics().getViewport();
@@ -1030,7 +1032,7 @@ public class JavaPanZoomController
* Move the viewport to the top-left point to and zoom to the desired
* zoom factor. Input zoom factor can be null, in this case leave the zoom unchanged.
*/
- public boolean animatedMove(PointF topLeft, Float zoom) {
+ boolean animatedMove(PointF topLeft, Float zoom) {
RectF moveToRect = getMetrics().getCssViewport();
moveToRect.offsetTo(topLeft.x, topLeft.y);
diff --git a/android/source/src/java/org/mozilla/gecko/gfx/PanZoomController.java b/android/source/src/java/org/mozilla/gecko/gfx/PanZoomController.java
index dd0de0caf898..ebcd641f21af 100644
--- a/android/source/src/java/org/mozilla/gecko/gfx/PanZoomController.java
+++ b/android/source/src/java/org/mozilla/gecko/gfx/PanZoomController.java
@@ -8,28 +8,29 @@ package org.mozilla.gecko.gfx;
import android.graphics.PointF;
import android.view.MotionEvent;
import android.view.View;
+import org.libreoffice.LibreOfficeMainActivity;
-public interface PanZoomController {
+interface PanZoomController {
- static class Factory {
- static PanZoomController create(PanZoomTarget target, View view) {
- return new JavaPanZoomController(target, view);
+ class Factory {
+ static PanZoomController create(LibreOfficeMainActivity context, PanZoomTarget target, View view) {
+ return new JavaPanZoomController(context, target, view);
}
}
- public void destroy();
+ void destroy();
- public boolean onTouchEvent(MotionEvent event);
- public boolean onMotionEvent(MotionEvent event);
- public void notifyDefaultActionPrevented(boolean prevented);
+ boolean onTouchEvent(MotionEvent event);
+ boolean onMotionEvent(MotionEvent event);
+ void notifyDefaultActionPrevented(boolean prevented);
- public boolean getRedrawHint();
- public PointF getVelocityVector();
+ boolean getRedrawHint();
+ PointF getVelocityVector();
- public void pageRectUpdated();
- public void abortPanning();
- public void abortAnimation();
+ void pageRectUpdated();
+ void abortPanning();
+ void abortAnimation();
- public void setOverScrollMode(int overscrollMode);
- public int getOverScrollMode();
+ void setOverScrollMode(int overscrollMode);
+ int getOverScrollMode();
}