[Libreoffice-commits] core.git: 2 commits - android/Bootstrap android/experimental desktop/source

2014-09-22 Thread Tomaž Vajngerl
 android/Bootstrap/src/org/libreoffice/kit/Document.java
   |4 
 android/Bootstrap/src/org/libreoffice/kit/Office.java  
   |4 
 android/experimental/LOAndroid3/src/java/org/libreoffice/LOEvent.java  
   |   18 ++
 android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitShell.java   
   |1 
 android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java  
   |   64 +-
 
android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitTileProvider.java 
  |   14 ++
 
android/experimental/LOAndroid3/src/java/org/libreoffice/LibreOfficeMainActivity.java
 |   19 +-
 android/experimental/LOAndroid3/src/java/org/libreoffice/MockTileProvider.java 
   |4 
 android/experimental/LOAndroid3/src/java/org/libreoffice/TileProvider.java 
   |2 
 desktop/source/lib/lokandroid.cxx  
   |   50 ++-
 10 files changed, 129 insertions(+), 51 deletions(-)

New commits:
commit 2897374fdad4fdb2daab273c2cf6f85e5ae49ec1
Author: Tomaž Vajngerl tomaz.vajng...@collabora.com
Date:   Mon Sep 22 22:37:11 2014 +0200

android: cleanly load/close a document when activity starts/stops

Change-Id: I2206a2b6818c030ba756f2b4d014a20d46f4106e

diff --git 
a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOEvent.java 
b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOEvent.java
index 746ceb5..4aa32cb 100644
--- a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOEvent.java
+++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOEvent.java
@@ -12,17 +12,24 @@ public class LOEvent {
 public static final int VIEWPORT = 3;
 public static final int DRAW = 4;
 public static final int CHANGE_PART = 5;
+public static final int LOAD = 6;
+
 public int mType;
-ViewportMetrics viewportMetrics;
 private ViewportMetrics mViewportMetrics;
 private String mTypeString;
 private int mPartIndex;
+private String mFilename;
 
 public LOEvent(int type, int widthPixels, int heightPixels, int tileWidth, 
int tileHeight) {
 mType = type;
 mTypeString = Size Changed:  + widthPixels +   + heightPixels;
 }
 
+public LOEvent(int type, String filename) {
+mType = type;
+mFilename = filename;
+}
+
 public LOEvent(int type, IntSize tileSize) {
 mType = type;
 mTypeString = Tile size;
@@ -65,6 +72,10 @@ public class LOEvent {
 return new LOEvent(CHANGE_PART, part);
 }
 
+public static LOEvent load(String inputFile) {
+return new LOEvent(LOAD, inputFile);
+}
+
 public String getTypeString() {
 return mTypeString;
 }
@@ -76,4 +87,9 @@ public class LOEvent {
 public int getPartIndex() {
 return mPartIndex;
 }
+
+public String getFilename() {
+return mFilename;
+}
+
 }
diff --git 
a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitShell.java 
b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitShell.java
index 0d44d66..fbf8675 100644
--- a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitShell.java
+++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitShell.java
@@ -38,4 +38,5 @@ public class LOKitShell {
 public static Handler getMainHandler() {
 return LibreOfficeMainActivity.mAppContext.mMainHandler;
 }
+
 }
diff --git 
a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java 
b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java
index bc08b98..25a1705 100644
--- a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java
+++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java
@@ -22,21 +22,19 @@ public class LOKitThread extends Thread {
 private LibreOfficeMainActivity mApplication;
 private TileProvider mTileProvider;
 private ViewportMetrics mViewportMetrics;
-private String mInputFile;
 private Rect mOldRect;
 private boolean mCheckboardImageSet = false;
 
-LOKitThread(String inputFile) {
-mInputFile = inputFile;
+public LOKitThread() {
 }
 
-RectF normlizeRect(ImmutableViewportMetrics metrics) {
+private RectF normlizeRect(ImmutableViewportMetrics metrics) {
 RectF rect = metrics.getViewport();
 float zoomFactor = metrics.zoomFactor;
 return new RectF(rect.left / zoomFactor, rect.top / zoomFactor, 
rect.right / zoomFactor, rect.bottom / zoomFactor);
 }
 
-Rect roundToTileSize(RectF input, int tileSize) {
+private Rect roundToTileSize(RectF input, int tileSize) {
 int minX = (Math.round(input.left)/ tileSize) * tileSize;
 int minY = (Math.round(input.top) / tileSize) * tileSize;
 int maxX = ((Math.round(input.right)  / tileSize) + 1) * tileSize;
@@ -44,7 +42,7 @@ public class LOKitThread 

[Libreoffice-commits] core.git: 2 commits - android/Bootstrap android/experimental desktop/source

2014-07-02 Thread Tomaž Vajngerl
 android/Bootstrap/src/org/libreoffice/kit/Document.java
  |2 
 android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java  
  |  134 +++--
 
android/experimental/LOAndroid3/src/java/org/libreoffice/LibreOfficeMainActivity.java
|   33 -
 
android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/BufferedCairoImage.java
   |4 
 
android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/GeckoGLLayerClient.java
   |  265 --
 
android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/GeckoLayerClient.java
 |  174 ++
 
android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/GeckoSoftwareLayerClient.java
 |  151 +
 android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/Layer.java  
  |4 
 
android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/LayerRenderer.java
|1 
 
android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/MultiTileLayer.java
   |   86 ---
 android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/SubTile.java
  |   15 
 desktop/source/lib/lokandroid.cxx  
  |   10 
 12 files changed, 244 insertions(+), 635 deletions(-)

New commits:
commit b8ce647194c3c0f715296bee540ff18cfefa3497
Author: Tomaž Vajngerl tomaz.vajng...@collabora.com
Date:   Wed Jul 2 11:11:56 2014 +0200

LOAndroid3: add tiled rendering from document - one tile first

Change-Id: Ib9c27cc8fcc9aee8670c217a4a5ab84bd3035577

diff --git 
a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java 
b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java
index ea3472b..abcbe65 100644
--- a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java
+++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java
@@ -6,6 +6,7 @@ import android.graphics.Color;
 import android.graphics.Paint;
 import android.graphics.Rect;
 import android.util.JsonWriter;
+import android.util.Log;
 
 import org.mozilla.gecko.gfx.ViewportMetrics;
 
@@ -15,72 +16,110 @@ import java.nio.ByteBuffer;
 import java.util.Random;
 import java.util.concurrent.ConcurrentLinkedQueue;
 
+import org.libreoffice.kit.LibreOfficeKit;
+import org.libreoffice.kit.Office;
+import org.libreoffice.kit.Document;
+
 public class LOKitThread extends Thread {
 private static final String LOGTAG = GeckoThread;
+private static final int TILE_SIZE = 256;
+
+public Office mOffice;
+public Document mDocument;
 
 public ConcurrentLinkedQueueLOEvent gEvents = new 
ConcurrentLinkedQueueLOEvent();
 private ViewportMetrics mViewportMetrics;
-private Random rand = new Random();
 
 LOKitThread() {
 }
 
-private boolean draw() throws InterruptedException {
+private void openDocument() {
+// enable debugging messages as the first thing
+
LibreOfficeKit.putenv(SAL_LOG=+WARN+INFO-INFO.legacy.osl-INFO.i18nlangtag);
+LibreOfficeKit.init(LibreOfficeMainActivity.mAppContext);
+
+mOffice = new Office(LibreOfficeKit.getLibreOfficeKitHandle());
+String input = /assets/test1.odt;
+mDocument = mOffice.documentLoad(input);
+}
+
+private synchronized boolean draw() throws InterruptedException {
 final LibreOfficeMainActivity application = 
LibreOfficeMainActivity.mAppContext;
 
-Bitmap bitmap = 
application.getLayerClient().getLayerController().getDrawable(docu);
-//bitmap = convert(bitmap, Bitmap.Config.ARGB_);
+openDocument();
+
+long height = mDocument.getDocumentHeight();
+long width  = mDocument.getDocumentWidth();
+
+Log.e(LOGTAG, Document Size:  + width +   + height);
+
+int pageWidth = 1024;
+int pageHeight = 1024;
+
+String metadata = createJson(0, 0, 256, 256, pageWidth, pageHeight, 0, 
0, 1.0);
+
+Rect bufferRect = application.getLayerClient().beginDrawing(256, 256, 
TILE_SIZE, TILE_SIZE, metadata);
+
+/*if (bufferRect == null) {
+Log.e(LOGTAG, beginDrawing - false);
+return false;
+}*/
+
+Log.e(LOGTAG, Filling tiles..);
+
+ByteBuffer buffer = ByteBuffer.allocateDirect(TILE_SIZE * TILE_SIZE * 
4);
+
+Log.e(LOGTAG, PaintTile..);
+
+mDocument.paintTile(buffer, 256, 256, 1024, 1024, 4096, 4096);
+
+Log.e(LOGTAG, EndPaintTile..);
 
-StringWriter stringWriter = new StringWriter();
+Bitmap bitmap = Bitmap.createBitmap(TILE_SIZE, TILE_SIZE, 
Bitmap.Config.ARGB_);
+bitmap.copyPixelsFromBuffer(buffer);
 
+application.getLayerClient().addTile(bitmap, 0, 0);
+
+Log.e(LOGTAG, EndDrawing..);
+application.getLayerClient().endDrawing(0, 0, 256, 256);
+
+return true;
+}
+
+private String createJson(ViewportMetrics 

[Libreoffice-commits] core.git: 2 commits - android/Bootstrap android/experimental

2013-11-01 Thread Tor Lillqvist
 android/Bootstrap/Makefile.shared|1 
 android/experimental/LibreOffice4Android/dummies.cxx |   31 +++
 android/experimental/desktop/dummies.cxx |   30 ++
 3 files changed, 62 insertions(+)

New commits:
commit 9b629f296732e8da630efe95321d9b1769b17a2f
Author: Tor Lillqvist t...@collabora.com
Date:   Fri Nov 1 08:59:03 2013 +0200

Add (dummy) touch_ui_dialog_modal() implementations

Change-Id: I12fde9cc7180118ade39b7a037d05e8793bd1c12

diff --git a/android/experimental/LibreOffice4Android/dummies.cxx 
b/android/experimental/LibreOffice4Android/dummies.cxx
index 89766e8..5607ecf 100644
--- a/android/experimental/LibreOffice4Android/dummies.cxx
+++ b/android/experimental/LibreOffice4Android/dummies.cxx
@@ -11,6 +11,8 @@
 // that the LO layer calls. As this experimental Android app doesn't
 // handle any of that, these do nothing.
 
+#include android/log.h
+
 #include touch/touch.h
 
 extern C
@@ -41,4 +43,33 @@ touch_ui_selection_none()
 {
 }
 
+
+static const char *
+dialog_kind_to_string(MLODialogKind kind)
+{
+switch (kind) {
+case MLODialogMessage:
+return MSG;
+case MLODialogInformation:
+return INF;
+case MLODialogWarning:
+return WRN;
+case MLODialogError:
+return ERR;
+case MLODialogQuery:
+return QRY;
+default:
+return WTF;
+}
+}
+
+extern C
+__attribute__ ((visibility(default)))
+MLODialogResult
+touch_ui_dialog_modal(MLODialogKind kind, const char *message)
+{
+__android_log_print(ANDROID_LOG_INFO, ===  %s: %s, 
dialog_kind_to_string(kind), message);
+return MLODialogOK;
+}
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/android/experimental/desktop/dummies.cxx 
b/android/experimental/desktop/dummies.cxx
index 89766e8..f89009a 100644
--- a/android/experimental/desktop/dummies.cxx
+++ b/android/experimental/desktop/dummies.cxx
@@ -11,6 +11,8 @@
 // that the LO layer calls. As this experimental Android app doesn't
 // handle any of that, these do nothing.
 
+#include android/log.h
+
 #include touch/touch.h
 
 extern C
@@ -41,4 +43,32 @@ touch_ui_selection_none()
 {
 }
 
+static const char *
+dialog_kind_to_string(MLODialogKind kind)
+{
+switch (kind) {
+case MLODialogMessage:
+return MSG;
+case MLODialogInformation:
+return INF;
+case MLODialogWarning:
+return WRN;
+case MLODialogError:
+return ERR;
+case MLODialogQuery:
+return QRY;
+default:
+return WTF;
+}
+}
+
+extern C
+__attribute__ ((visibility(default)))
+MLODialogResult
+touch_ui_dialog_modal(MLODialogKind kind, const char *message)
+{
+__android_log_print(ANDROID_LOG_INFO, ===  %s: %s, 
dialog_kind_to_string(kind), message);
+return MLODialogOK;
+}
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
commit 354c1a99ea29e41dd948600071ccc6215d77c29a
Author: Tor Lillqvist t...@collabora.com
Date:   Fri Nov 1 08:58:38 2013 +0200

Add FREEHAND_LIBS

Change-Id: I0230a18aaf5c8c9fe9f55a137cc62cbfc3992d42

diff --git a/android/Bootstrap/Makefile.shared 
b/android/Bootstrap/Makefile.shared
index 20d1c0c..657e433 100644
--- a/android/Bootstrap/Makefile.shared
+++ b/android/Bootstrap/Makefile.shared
@@ -83,6 +83,7 @@ LIBS = \
   -Wl,--start-group \
   $(wildcard $(INSTDIR)/$(LIBO_LIB_FOLDER)/lib*.a) \
   $(wildcard $(WORKDIR)/LinkTarget/StaticLibrary/lib*.a) \
+  $(FREEHAND_LIBS) \
   $(HARFBUZZ_LIBS) \
   $(HUNSPELL_LIBS) \
   $(HYPHEN_LIB) \
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits