ef25b5abc9
LibreOffice Online/loleaflet-help (Catalan) Currently translated at 83.7% (348 of 416 strings) Change-Id: I3ad0b027f015027cabc7d498f37d384ddd19350e update translations LibreOffice Online/loleaflet-help (Ukrainian) Currently translated at 61.5% (256 of 416 strings) Change-Id: I6f4aa96b26b6af6ff02eff00a40fe3a8133c45be update translations LibreOffice Online/ios (Portuguese) Currently translated at 60.0% (3 of 5 strings) Change-Id: I2b844c4b059e3dd728df5912650e60f65f7053be update translations LibreOffice Online/loleaflet-ui (Uyghur) Currently translated at 33.6% (98 of 292 strings) Change-Id: I46dc25d98d561f6709b237f0a84b3f1e1da68e08 update translations LibreOffice Online/loleaflet-ui (Portuguese) Currently translated at 100.0% (292 of 292 strings) Change-Id: I851ff8f304149b96b6ed48244f1030a5175359ac update translations LibreOffice Online/ios (Slovenian) Currently translated at 100.0% (5 of 5 strings) Change-Id: I849d9be6f25338a466effef314e42bf37d147027 update translations LibreOffice Online/loleaflet-help (Slovenian) Currently translated at 100.0% (416 of 416 strings) Change-Id: I4b1c0b76463911999063976975d4892f0210197e update translations LibreOffice Online/loleaflet-help (Kabyle) Currently translated at 34.4% (143 of 416 strings) Change-Id: I1d5925357b4cea2e8e9722fa6998c3d3c380a843 update translations LibreOffice Online/loleaflet-ui (Slovenian) Currently translated at 100.0% (292 of 292 strings) Change-Id: I91b8a732bd2d0a2a7d212f6c0a47a21031eb44a5 update translations LibreOffice Online/loleaflet-help (Kabyle) Currently translated at 32.7% (136 of 416 strings) Change-Id: Ib992b2f62569331988f33391f31dca9cf8905f0c update translations LibreOffice Online/loleaflet-help (Kabyle) Currently translated at 13.9% (58 of 416 strings) Change-Id: I744b65c54cf12a90a9e57054c38d0d89ced4a6df update translations LibreOffice Online/android-app (Italian) Currently translated at 100.0% (102 of 102 strings) Change-Id: I4c1469053eb748b6bc8a4e670596558c879a5d28 update translations LibreOffice Online/android-app (Polish) Currently translated at 100.0% (102 of 102 strings) Change-Id: I870403d3085537585989f10d472b412727b87308 update translations LibreOffice Online/ios (Italian) Currently translated at 100.0% (5 of 5 strings) Change-Id: I0bf80f893ec4c040d655e18779c82c5736dcfc8b update translations LibreOffice Online/loleaflet-ui (Italian) Currently translated at 100.0% (292 of 292 strings) Change-Id: Ic091131c12bffe52d6a69e50ead294e8b9f63b70 update translations LibreOffice Online/loleaflet-help (Catalan) Currently translated at 82.9% (345 of 416 strings) Change-Id: I6663593ad7a6e4b2a7552d9e71a9a79d7fc03c96 update translations LibreOffice Online/loleaflet-ui (Asturian) Currently translated at 38.7% (113 of 292 strings) Change-Id: I8cff16ddb03f06066dcd578189b99645b5d96e4e update translations LibreOffice Online/loleaflet-ui (Asturian) Currently translated at 38.4% (112 of 292 strings) Change-Id: I4cb4b91e82481ae514a0e367468a8964b5323c08 update translations LibreOffice Online/android-app (Norwegian Bokmål) Currently translated at 19.6% (20 of 102 strings) Change-Id: I15c90a011c2c571ae55d3c2737ffef753d19abb3 update translations LibreOffice Online/loleaflet-help (Catalan) Currently translated at 82.0% (341 of 416 strings) Change-Id: If47317855ce8ba5ffbaf196a19a83c33c869322f update translations LibreOffice Online/loleaflet-ui (Spanish) Currently translated at 100.0% (292 of 292 strings) Change-Id: Ia42e9a1430778b3016dc75f9f9cd8655abcbaaf7 update translations LibreOffice Online/loleaflet-ui (Asturian) Currently translated at 38.0% (111 of 292 strings) Change-Id: Ie47422bb64f80479e51a8cc6ce36b1006f16261f update translations LibreOffice Online/loleaflet-ui (Norwegian Bokmål) Currently translated at 100.0% (292 of 292 strings) Change-Id: I2c68047c392ba5e59b15559c91ab6b2fa8776fb1 update translations LibreOffice Online/loleaflet-ui (Norwegian Bokmål) Currently translated at 84.2% (246 of 292 strings) Change-Id: I907738b84f269d91566a0799ffdde8bf2df77088 update translations LibreOffice Online/loleaflet-ui (Norwegian Bokmål) Currently translated at 83.9% (245 of 292 strings) Change-Id: I20379cffc474e3f19ef3405480b5bde2660dba45 update translations LibreOffice Online/loleaflet-ui (Norwegian Bokmål) Currently translated at 83.6% (244 of 292 strings) Change-Id: Ifd8a469b1ebc84e5268f1d68573e8780652ce751 update translations LibreOffice Online/android-app (English (United Kingdom)) Currently translated at 100.0% (102 of 102 strings) Change-Id: I30f51f7608a1f044bdc5b186aa01839b18d8ffc8 update translations LibreOffice Online/android-app (Norwegian Bokmål) Currently translated at 16.7% (17 of 102 strings) Change-Id: Id4cba08b5e29462c0afdb6426a907e9d85083663 update translations LibreOffice Online/ios (English (United Kingdom)) Currently translated at 100.0% (5 of 5 strings) Change-Id: I8a9b664a8af79edb980672cbc533ff6438d5d76e update translations LibreOffice Online/loleaflet-help (Norwegian Bokmål) Currently translated at 49.8% (207 of 416 strings) Change-Id: Ib7dbbc93fa9e679365f29f67f0e3a73292e53ab4 update translations LibreOffice Online/loleaflet-ui (Norwegian Bokmål) Currently translated at 83.2% (243 of 292 strings) Change-Id: I53927f7a520fbc96fd6cecedea110b6aa60aa305 update translations LibreOffice Online/loleaflet-ui (English (United Kingdom)) Currently translated at 100.0% (292 of 292 strings) Change-Id: Ie7e5cc86446150aea8b92f371c1a1180629b7b81 update translations LibreOffice Online/android-lib (Norwegian Bokmål) Currently translated at 100.0% (12 of 12 strings) Change-Id: I8f9228044c1ddc07f4f8f7b54b1d8ae3502b2117 update translations LibreOffice Online/loleaflet-help (Norwegian Bokmål) Currently translated at 48.3% (201 of 416 strings) Change-Id: I75a61efe1d236c1b0c58ed7ddc04596c1370dea4 update translations LibreOffice Online/ios (Kabyle) Currently translated at 100.0% (5 of 5 strings) Change-Id: I70f0a571212f5fe22cd94dac193a77803b6dd97b update translations LibreOffice Online/android-lib (Kabyle) Currently translated at 100.0% (12 of 12 strings) Change-Id: Id3e383aec23bed9864fb846f74832d75c7d2f675 update translations LibreOffice Online/loleaflet-ui (Kabyle) Currently translated at 30.1% (88 of 292 strings) Change-Id: I49e204a2d3856ec3b2a89aba5a4e4803b255227a update translations LibreOffice Online/android-app (Kabyle) Currently translated at 100.0% (102 of 102 strings) Change-Id: I9be799209b74c6a064fb339fbc8973fa9efd1f3b update translations LibreOffice Online/loleaflet-ui (Asturian) Currently translated at 37.3% (109 of 292 strings) Change-Id: I67d995f71c373e4a7b7f715111e8c439e0fbeeb0 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/91815 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com> |
||
---|---|---|
.. | ||
app | ||
lib | ||
templates | ||
.gitignore | ||
build.gradle | ||
gradle.properties | ||
gradlew | ||
gradlew.bat | ||
Makefile.am | ||
README | ||
settings.gradle |
The development of this Android app has to be done on Linux, it's currently not possible to build the native parts on Windows. * Compile LibreOffice master for Android. Do this in the folder where you cloned the LibreOffice core (e.g master-android). Create an autogen.input file: --build=x86_64-unknown-linux-gnu --with-android-ndk=/home/$USER/Android/Sdk/ndk-bundle --with-android-sdk=/home/$USER/Android/Sdk --with-distro=LibreOfficeAndroid --enable-sal-log Run ./autogen.sh && make * Build the POCO for Android # clone the poco repository in the same folder where LibreOffice core and online folders are placed. git clone https://github.com/pocoproject/poco poco-android cd poco-android # use the 1.9.1 branch git checkout -b poco-1.9.1 origin/poco-1.9.1 # configure ./configure --config=Android --no-samples --no-tests --minimal # make it PATH="$PATH":~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin make -j8 ANDROID_ABI=armeabi-v7a CC=armv7a-linux-androideabi21-clang CXX=armv7a-linux-androideabi21-clang++ SYSLIBS=-static-libstdc++ # install it to /opt/poco-android PATH="$PATH":~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin make -j8 ANDROID_ABI=armeabi-v7a CC=armv7a-linux-androideabi21-clang CXX=armv7a-linux-androideabi21-clang++ SYSLIBS=-static-libstdc++ install INSTALLDIR=/opt/poco-android * 64bit POCO for Android # checkout the 1.9.1 in a different location and apply the following patch: --- a/build/config/Android +++ b/build/config/Android @@ -21,6 +21,11 @@ TOOL = arm-linux-androideabi ARCHFLAGS = -march=armv7-a -mfloat-abi=softfp LINKFLAGS = -Wl,--fix-cortex-a8 else +ifeq ($(ANDROID_ABI),arm64-v8a) +TOOL = aarch64-linux-android +#ARCHFLAGS = -march=armv7-a -mfloat-abi=softfp +#LINKFLAGS = -Wl,--fix-cortex-a8 +else ifeq ($(ANDROID_ABI),x86) TOOL = i686-linux-android ARCHFLAGS = -march=i686 -msse3 -mstackrealign -mfpmath=sse @@ -29,6 +34,7 @@ $(error Invalid ABI specified in ANDROID_ABI) endif endif endif +endif # # Define Tools # configure as above and make it: PATH="$PATH":~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin make -j8 ANDROID_ABI=arm64-v8a CC=aarch64-linux-android21-clang CXX=aarch64-linux-android21-clang++ SYSLIBS=-static-libstdc++ # install PATH="$PATH":~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin make -j8 ANDROID_ABI=arm64-v8a CC=aarch64-linux-android21-clang CXX=aarch64-linux-android21-clang++ SYSLIBS=-static-libstdc++ install INSTALLDIR=/opt/poco-android-64bit * Configure the online.git (eg. in online-android folder) Don't forget to change --with-lo-builddir in the following: ./autogen.sh && ./configure CC=~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi21-clang CXX=~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi21-clang++ --host=arm-linux-androideabi --enable-androidapp --with-lo-builddir=/local/libreoffice/master-android --with-poco-includes=/opt/poco-android/include --with-poco-libs=/opt/poco-android/lib --disable-setcap --enable-silent-rules --enable-debug * Build the JavaScript, HTML and CSS files also in the online-android folder # just run 'make' make * Build the actual app + Start Android Studio + Open this 'android' subdir as a project + Build from Android Studio (Build -> Make Project) == Building 32bit + 64bit combined .apk == + you need to build both a 32bit (armeabi-v7a) and 64bit (arm64-v8a) core + you need to build both a 32bit and 64bit POCO + and then provide paths to both to the ./configure, separated by a colon ':', like: --with-lo-builddir=/local/libreoffice/master-android-release:/local/libreoffice/master-android-release-64bit \ --with-poco-includes=/opt/poco-android/include:/opt/poco-android-64bit/include \ --with-poco-libs=/opt/poco-android/lib:/opt/poco-android-64bit/lib \ == Debugging == To debug the native code in Android Studio, you need the debugging symbols and to setup lldb to actually read & use them. * Add debugging symbols for the modules you are interested in To autogen.input, add something like: --enable-symbols="vcl/ desktop/ sal/ svx/ framework/ sfx2/ tools/ cppu/ cppuhelper/ filter/ comphelper/ Library_sw Library_swd Library_swui" clean the appropriate modules, like make vcl.clean desktop.clean sal.clean svx.clean framework.clean sfx2.clean tools.clean cppu.clean cppuhelper.clean filter.clean comphelper.clean sw.clean and rebuild using 'make'. * Add android/source/obj/local/armeabi-v7a from core.git as a Symbol Directory In Android Studio, choose Run -> Debug... -> Edit Configurations... There go to the Android App -> app, choose the Debugger tab, and: Debug type: Auto (or Dual) Symbol Directories: here add the full path, like /local/libreoffice/master-android/android/source/obj/local/armeabi-v7a This path contains the non-stripped version of the liblo-native-code.so, and the debugger will read the symbols from that one (even if the APK contains the stripped version). *NB* ensure that this is before any internal source directories - since the internal source contains stripped native code. [Alternatively you can add the following to your ~/.lldbinit instead: settings set target.inline-breakpoint-strategy always settings append target.exec-search-paths /local/libreoffice/master-android/android/source/obj/local/armeabi-v7a ] * To use pretty printers for types like OUString, add the following to your ~/.lldbinit: command script import '/local/libreoffice/master-android/solenv/lldb/libreoffice/LO.py' From now on, you will be able to debug directly in the Android Studio debugger. Happy debugging! Note: to re-buld your app with a newly compiled libnative-lo code - it is == Tip: How to speed up your core.git build == If you use icecream for parallel building, you can use it for cross-compilation too. # first generate a tarball with the toolchain (once) icecc-create-env ~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi21-clang ~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi21-clang++ And add it and the paths to the compiler as the first things to the autogen.input: CC=icecc [here copy what the output of ./autogen.sh without icecream said for C compiler] CXX=icecc [here copy what the output of ./autogen.sh without icecream said for C++ compiler] ICECC_VERSION=/path/to/the/tarball/generated/above/955ceb546ceb7a5715bf0223ddd788fe.tar.gz --with-parallelism=[amount of cpu threads in your icecream farm] --enable-icecream [...the original autogen.input...] So the result will look something like this: CC=icecc /home/$USER/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang -mthumb -march=armv7-a -mfloat-abi=softfp -mfpu=neon -Wl,--fix-cortex-a8 -gcc-toolchain /home/$USER/Android/Sdk/ndk-bundle/to> CXX=icecc /home/$USER/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ -mthumb -march=armv7-a -mfloat-abi=softfp -mfpu=neon -Wl,--fix-cortex-a8 -gcc-toolchain /home/$USER/Android/Sdk/ndk-bundle> ICECC_VERSION=/local/libreoffice/android/955ceb546ceb7a5715bf0223ddd788fe.tar.gz --with-parallelism=25 --enable-icecream --build=x86_64-unknown-linux-gnu --with-android-ndk=/home/$USER/Android/Sdk/ndk-bundle --with-android-sdk=/home/$USER/Android/Sdk --with-distro=LibreOfficeAndroid --enable-sal-log