android: add getCSSRect to TileIdentifier and use id in SubTile

Change-Id: I565a5f88d5913f5337f5c3d32d54be71a32f542a
This commit is contained in:
Tomaž Vajngerl
2015-01-21 13:35:48 +09:00
committed by Miklos Vajna
parent f3fdc828f1
commit 07a736ff67
2 changed files with 20 additions and 12 deletions

View File

@@ -1,5 +1,6 @@
package org.libreoffice;
import android.graphics.Rect;
import android.graphics.RectF;
import org.mozilla.gecko.gfx.IntSize;
@@ -17,14 +18,27 @@ public class TileIdentifier {
this.size = size;
}
public RectF getRect() {
public RectF getRectF() {
return new RectF(x, y, x + size.width, y + size.height);
}
public RectF getCSSRect() {
float cssX = x * zoom;
float cssY = y * zoom;
return new RectF(cssX, cssY, cssX + (size.width * zoom), cssY + (size.height * zoom));
public RectF getCSSRectF() {
float cssX = x / zoom;
float cssY = y / zoom;
float cssSizeW = size.width / zoom;
float cssSizeH = size.height / zoom;
return new RectF(cssX, cssY, cssX + cssSizeW, cssY + cssSizeH);
}
public Rect getCSSRect() {
float cssX = x / zoom;
float cssY = y / zoom;
float sizeW = size.width / zoom;
float sizeH = size.height / zoom;
return new Rect(
(int) cssX, (int) cssY,
(int) (cssX + sizeW),
(int) (cssY + sizeH) );
}
@Override

View File

@@ -19,13 +19,7 @@ public class SubTile extends SingleTileLayer {
}
public void refreshTileMetrics() {
Rect position = getPosition();
float positionX = id.x / id.zoom;
float positionY = id.y / id.zoom;
float tileSizeWidth = id.size.width / id.zoom;
float tileSizeHeight = id.size.height / id.zoom;
position.set((int) positionX, (int) positionY, (int) (positionX + tileSizeWidth), (int) (positionY + tileSizeHeight));
setPosition(position);
setPosition(id.getCSSRect());
}
public void markForRemoval() {