Commit Graph

216 Commits

Author SHA1 Message Date
015e1b8444 android: prefer external storage in DocumentLoader / LibreOffice4Android
With this, these apps can be used even if /data is something like 128MB,
e.g. on normal phones, not tablets / emulators.

Change-Id: I7c8f2787b6395e98e8065e2e207aa09d9a2f39b3
Acked-by: Tor Lillqvist <tml@iki.fi>
2013-06-28 09:51:10 +02:00
19efe68b1e Imrove scrolling in the Android "Desktop" app
I got scrolling to respond to the JNI scroll method call.  (This is not yet
the gesture I want to implement (scroll by pixels), but at least it’s a
start.)

At first I tried to do some hacking in the C++ part, then found the problem
was in the Java parameters, which set the mouse whell delta too big.  When
passed the value 1 or -1 to the Y value of AppSupport.scroll(int x, int y),
the scrolling is reasonable.

Change-Id: Id8fa0ada1a035760b7b05bf21325d0e51ef28fdc
2013-06-27 13:28:35 +03:00
7d528592ac android: Keep the images_tango.zip name as is
Not sure why I used to store it as images.zip. Probably just a mistake. The
code uses the images_tango.name.zip when trying to open it.

Sure, no toolbar with images is displayed currently anyway, so having this
file in the .apk is pointless, but there has been talk of reverting the
disabling of toolbars, sigh.

Change-Id: I12dfd3abe8f329d660b518f6b37904aa00423bc2
2013-05-02 15:26:25 +03:00
802a87e181 Adapt to library name changes for Android, too
Change-Id: I6da1f38c5a9693c13ef841442cbef017d388416a
2013-05-02 11:58:41 +03:00
abacc389db android: remove lotus word pro filter - bit optimistic.
Change-Id: I08bbec95db2ae9bc7226cd5ca1cc7b81c235a26f
2013-04-30 13:19:51 +01:00
5a15474709 Adapt to changes in type rdb file locations and names
The old bin/ure/types.rdb was just a duplicate of bin/udkapi.rdb. There is no
bin/types.rdb any more either. We have just udkapi.rdb, offapi.rdb and
oovbaapi.rdb now.

Change-Id: Idd0911f1d4d48f172af159b852918d429f17cc92
2013-04-24 12:45:47 +03:00
b5fea2f46a The file names of many UNO components have changed
Change-Id: I18f90b058e40ca15164fd3e8c33bc904b930981d
2013-04-23 19:33:04 +03:00
07c1b61933 Small refactoring of the Android "desktop app" code, no functional change
Move the native methods out to a separate AppSupport class so that they aren't
in our "experimenal" Desktop app's namespace. Don't hardcode the name of that
class in the native code, but have the app register the class to which the
damage callbacks should be done.

Possibly the AppSupport and Bootstrap classes should be combined. Later.

Also, the "android" part of the package name is superfluous; it is
Android-specific code, no information gained by having an "android" part in
the package name.

Change-Id: Iddf55c8034ead7693887ace8438deb002c5eea9f
2013-04-19 18:50:36 +03:00
41d6003e87 Make the use of SAL_LOG=+WARN+INFO optional
Change-Id: I6af17a7745f4de88b4933e93b77eda1050760794
2013-04-19 11:03:43 +03:00
9e7c73d54c Minor comment change
Change-Id: I14e9b86c23ff000df2339a37ba78a11cc319f27c
2013-04-19 11:03:43 +03:00
bf2a1812a4 Attempt to avoid popping up keyboard after panning
Change-Id: Ie5639ea5a2c50e54ab880ac850287de07ff69959
2013-04-19 11:03:42 +03:00
1c0e3ea7a0 fix android build
Change-Id: I97903559e1f6ef48476a74a674c0832d9cb44640
2013-04-14 15:00:05 +02:00
f3c4b5606d Add more components
Change-Id: I3ea18b4a075516f3c098fad5d63466f20bf0b494
2013-04-12 19:03:49 +03:00
f204dc1f8f Get soffice.cfg from its new location for Android, too
Change-Id: I2d65b51ec9a223994d39dc9433d1290b44422e1d
2013-04-11 13:44:14 +03:00
7640fa315e Typo: string.xml->strings.xml
To make available for localization

Change-Id: I5469549422c7a2d2618ed9e836895f6698328b17
2013-04-02 21:29:42 +02:00
de8d12acf1 Use proper version numbers
Change-Id: Ib0284c3fe63636e42b2e72ab76b02a8197c837e0
2013-03-27 14:36:27 +02:00
783d3928b7 Try to make the scrolling and zooming actions snappier
Now it does work nicely during the gesture when all the action is on the Java
side (translating and scaling the pre-rendered bitmap). Looks a bit sad, of
course, that nothing scrolls in to replace the parts of page(s) scrolled out
during the gesture, and correspondingly for zooming.

To then get the stuff down in the murky depths of the LO code to do what I
want still is beyond me.

Change-Id: I9ce33ed482013d18a877d1798de3bce5ac608e5e
2013-03-07 21:51:26 +02:00
e669502dcf Start hacking on scrolling
Change-Id: I74f1d7feb935be65629bdbd7464f9882229948e5
2013-03-07 10:15:58 +02:00
0ce2d740a2 Handle damage tracking and redrawing properly in the "desktop" Android app
In the damaged() method do a callback up to Java code in Desktop that
invalidates the view. For now store the view in a static field, but need to do
that in a cleaner way eventually. There might in some circumstancest be
several instances of the Desktop activity present. Obviously should also run
just one LO thread.

Get rid of the temporary self-invalidattion in onDraw() silliness.

Start the LO thread that runs soffice_main() from Java, not from native
code. Apparently only threads created from Java have proper class loaders in
Android.

No need for an own DoReleaseYield() in AndroidSalInstance, the one in the
SvpSalInstance base class does what needs to be done.

Change-Id: I4cb85b352fca1f1375f726620ec8c93d2047f113
2013-03-07 02:33:42 +02:00
4ceb66d86f Drop unused timestamp parameters
Change-Id: I1d825c39cde67c204110b4a787b3ffb290331fe5
2013-03-06 09:27:10 +02:00
0b10d7cf50 Rework scaling once more
Don't ask the LO code to zoom while scaling in progress. That is way too
slow. Return to the idea of just scaling the already rendered bitmap
containing the "top-level window" from LO's perspective, UI elements and
all. (Obviously if we continue to work on thie demo app, the desktop style UI
elements need to disappear from the sides of the LO "window", so that the only
thing LO renders is the actual viewport of the document contents.)

This time, instead of scaling the View, which for some reason causes horrible
flickering glitches at least on my device, draw the bitmap scaled in
onDraw. Much smoother for some reason.

Of course when we then in onScaleEnd() ask LO to do the actual zoom, what
eventually results (remember that the LO code runs asynchronously in a
separate thread, and the zoom request only gets posted to that thread) is not
at all the same as what just drawing the bitmap at scale produced. (Especially
not as there is no way yet to have LO zoom centred on a specific pivot point.)

Change-Id: Id80576c99a03f5f8bf0d8039c6c7406322581956
2013-03-05 21:36:31 +02:00
5f63a1ab95 Field can be moved into the inner class
Change-Id: I053f7d4a17aec9c8b24b92a40de635c71492a3dc
2013-03-04 12:46:23 +02:00
70e8c341af Android "desktop" app: Simplify bootstrapping on the Java side
No need to call defaultBootstrap_InitialComponentContext() etc on the Java
side in this app. The full SVMain() etc will do all that anyway.

Change-Id: I555ccd8efbd0260a72fa5904bb6dcd255eed37d4
2013-03-03 23:38:08 +02:00
6339bf1325 Android "desktop" app: More hacking on scaling
Added a new "mode" for the CommandWheelData, COMMAND_WHEEL_ZOOM_SCALE, where
the "delta" is the scale percentage to multiply the curent zoom factor
with. Implement in Writer and Calc.

But actually, I am more and more startng to think that live scaling of the
document view during the pinch/spread gesture will never perform fast
enough. Need to go back to the (simple) trick to just scale the BitmapView,
and do the actual LO re-zoom only when the gesture finishes. But in order for
that to look nicer, need to get rid of the LO UI element clutter around the
document, scrollbars, buttons etc. Plus of course need to make sure the LO
zooming happens around the gesture center position.

Change-Id: I20dfcb4c2a97aacbf7e5b6ea5c24816b237fe687
2013-03-03 22:29:54 +02:00
5facce3c21 Add scroll and fling gesture recognition
Not yet passed on down.

Also fix a misleading comment.

Change-Id: I1e6f79c84b1e13f48e4b2620e44b326fb6fc4ee9
2013-03-03 22:29:42 +02:00
f5ca04caca Related to fdo#60724: correct spelling
Using the autocorrect list of LibreOffice
extras/source/autotext/lang/en-US/acor/DocumentList.xml

Change-Id: I8b93969bc0742c2e95b8b7db3c4c37691e8d3657
Script: http://pastebin.ca/2327716
2013-03-03 17:14:16 +01:00
06b58a702f Do "real" zooming also while the scale gesture is in progress
Would work nicely if only it wasn't so compute intensive. Or is it the
(temporary hack) constant redrawing that is killing performance?

Change-Id: I0b152411a413a818fba7a0f41a3462e423c6ab54
2013-03-03 01:14:16 +02:00
92c033df8f libucppkg1 is needed, for auto-save I think
Change-Id: Ie4ec4e2518c9e0621b75afe21f22862e3e8bf726
2013-03-03 01:14:15 +02:00
bd36b992cf Support an ad-hoc (non-gbuild) Makefile workflow for the Android apps
For now, we want to keep being able to just say for instance "make run" in the
android app directories.

Change-Id: I1898d5466c0df6007fa32b202888bed644fa9489
2013-03-03 01:14:15 +02:00
ec7986d43b Try to make the temporary pinch/spread hack look nicer
Change-Id: Id293e04c089b9304721f83fb4eb77cffab67cedd
2013-03-02 21:00:01 +02:00
a8ee2fd020 Start hacking on zooming
Change-Id: Ibc9aad490c4616d339e95352a0b8a7f7bed93070
2013-03-02 21:00:01 +02:00
251f6a416c add more stuff to android gitignore
Change-Id: Ibc61098fbde8d253411d834822e3f0c67249c52a
2013-03-01 18:50:02 -05:00
b89ea45e5b fix android build in separate dir
Change-Id: Id7cf80e1da87a56dee645dc01e64dedc4a8586ab
2013-03-01 18:50:02 -05:00
18e035964e Cleanups to the android and ios makefilery
Also build the "desktop" app from gbuild.

Change-Id: I45fc265c9515b22e10bd7644f54dbfa23601e063
2013-03-01 10:55:51 +02:00
043f614a3e Bin some unnecessarily verbose logging
Change-Id: I9c9b2a5405f994f180bd51a3a6c91815d0f70435
2013-03-01 00:37:20 +02:00
e63165c685 Pass touch events on to the ScaleGestureDetector
Note that the listener doesn't do anything with the scale gestures yet,
though. I guesss either a new type of VCL event is needed for zooming, or then
we could fake entering of Control-+ and Control-- key events (or whatever the
default bindings for zoom in and out are).

Change-Id: Ib2ba138dd3e7874f85e9fc9fb7ac7198fa6212d3
2013-03-01 00:37:20 +02:00
429827a3e8 Loading a test document works now
Change-Id: I02f8ff9c1a2379fe03dff4e5a0dd4a05634d4034
2013-03-01 00:37:19 +02:00
7361c08a86 Avoid "Warning: -writer is deprecated. Use --writer instead."
Change-Id: I348df07e6c821969b04fc83b2720d200ffb89f68
2013-02-28 22:34:23 +02:00
664a49160c Use more logial directory structure
The package is org.libreoffice.experimental.desktop so put the source file in
src/org/libreoffice/experimental/desktop.

Change-Id: I08660962dbd44eb48da0c966e218f49287ab5ca7
2013-02-28 01:44:57 +02:00
2769264989 Some keys need special handling
Change-Id: Ic2d2d3889d1facbf0042a946fdaf9acd472d0f94
2013-02-28 01:31:45 +02:00
3cf4f1a13b Handle touch events
Change-Id: I9c9d200731df9ba48ee61f7c97692ed9b9f06648
2013-02-28 00:25:01 +02:00
2341da1f20 We need the spell library as soon as we have some text in Writer
Change-Id: Ice3eb23f57069043c0c971fce5dfe22aa95c3870
2013-02-27 21:00:54 +02:00
7cf5fea499 Send text input to the LO code
Change-Id: I28070fb1a8b85c9737d2a78a8a713243ce47dde9
2013-02-27 21:00:53 +02:00
d2a640d69e Make it easier to debug the app by sleeping for a while if a property is set
If the property log.tag.LODesktopSleepOnCreate is set to "VERBOSE" then sleep
after liblo-native-code.so has been loaded to give the developer a chance to
start ndk-gdb and set breakpoints. Yeah, a bit silly to overload a logging
property like this, but it was the first idea I came up with.

Change-Id: I665f87778d083d2d167a5d16f24e2d50b1fba042
2013-02-26 23:48:54 +02:00
dacaa0af50 Remove copy-pasted imports and comments
Change-Id: I47e61b4ae7d95797f4d17031e9613bb549eb4813
2013-02-26 23:48:54 +02:00
75a2bdea02 Experiment with enabling text input (not propagated to LO yet...)
Change-Id: Ie9e393dcf23b1b6c219c9bcdf9a3014d7c1cc950
2013-02-26 23:48:53 +02:00
eb37322f14 Temporary (one hopes) hack to get the actual view size down to SvpSalFrame
Change-Id: I0c2a2301de1b0de71fc6724ff2af73fbf6b406ef
2013-02-25 18:08:58 +02:00
511b9fefe2 Use actual size of view instead of hardcoded 1000x600
The View size is available only after the view has been connected to the
activity, it seems, so move the Bitmap creation to onDraw().

Note that the code in SvpSalFrame::SvpSalFrame() in vcl/headless/svpframe.cxx
still hardcodes another (!) size, 800x600. This affcects the size of the
desktop-style "top-level window" displayed by the android/experimental/desktop
app. I didn't yet figure out the right way to pass the actual view size to the
SvpSalFrame. And there is also a hardcoded third (!) size, 1280x750, in
AndroidSalInstance::GetWorkArea(), although I don't know what that affects, if
anything.

Change-Id: I042bf764cd66efa7069c36601170b90d57fa174c
2013-02-25 15:44:19 +02:00
754bd309dd BitmapView can be a member class
Change-Id: I172cfc0bcad780e99469ac01c9ba7467befe53de
2013-02-22 20:47:16 +02:00
b7777dbf8e Rename the package and .apk of the "desktop" test app to avoid confusion
It used the same package name as DocumentLoader and the same .apk name as the
eary sc cppunit test app. Probably having two unrelated apps with the same
package name causes some confusion somewhere.

Change-Id: I11414b9cd59694eb97d39bfaeac4ed1066ae3aab
2013-02-22 18:15:57 +02:00