9d2e859663
LibreOffice Online/loleaflet-ui (Asturian) Currently translated at 43.6% (132 of 303 strings) Change-Id: I6adf4778f1f8f211dfd227e984612b8ee4fef4c0 update translations LibreOffice Online/loleaflet-help (Hungarian) Currently translated at 54.8% (228 of 416 strings) Change-Id: I69009d578b7393753a5ed95275299d0bb39e6590 update translations LibreOffice Online/loleaflet-ui (French) Currently translated at 100.0% (303 of 303 strings) Change-Id: Ibebe7be8ddc62481db0215b3e7b011329f027ffb update translations LibreOffice Online/loleaflet-ui (Asturian) Currently translated at 42.9% (130 of 303 strings) Change-Id: Ica86de787c1955663d23489e223904a8775158d0 update translations LibreOffice Online/loleaflet-ui (Upper Sorbian) Currently translated at 99.3% (301 of 303 strings) Change-Id: I63e1133cdae519d915f281c999f1732aef8dfa05 update translations LibreOffice Online/loleaflet-help (Portuguese (Brazil)) Currently translated at 100.0% (416 of 416 strings) Change-Id: Idd34049c4cc8302e1b15b428133caf9a29eb2e55 update translations LibreOffice Online/loleaflet-ui (Portuguese (Brazil)) Currently translated at 100.0% (303 of 303 strings) Change-Id: I0f298c34080a02674022ed8815b3f5d58a5e7826 update translations LibreOffice Online/ios (Catalan) Currently translated at 100.0% (5 of 5 strings) Change-Id: I3aeca458029f0edffa32f2aea8ef6a00e2ac748b update translations LibreOffice Online/android-lib (Catalan) Currently translated at 91.7% (11 of 12 strings) Change-Id: I0d86b120271daaf91ec2e066b2b7a73941b33e57 update translations LibreOffice Online/android-app (Catalan) Currently translated at 100.0% (102 of 102 strings) Change-Id: Ie4f8ae751d22aa155d7d5a89bb1995ae52ee0338 update translations LibreOffice Online/loleaflet-help (Catalan) Currently translated at 88.0% (366 of 416 strings) Change-Id: Iedf2a800978f44c1b0d2a22d4821be633b58cfe6 update translations LibreOffice Online/loleaflet-ui (Portuguese) Currently translated at 100.0% (303 of 303 strings) Change-Id: If166c521d94d09fd522d99ef233023176eff355d update translations LibreOffice Online/loleaflet-ui (Basque) Currently translated at 100.0% (303 of 303 strings) Change-Id: Ibb8520da7f6c5844b256700e049625cac27cee86 update translations LibreOffice Online/loleaflet-ui (Catalan) Currently translated at 100.0% (303 of 303 strings) Change-Id: Icb0a137bd78485605516d7aef94ead3b83567b70 update translations LibreOffice Online/loleaflet-ui (Portuguese (Brazil)) Currently translated at 100.0% (303 of 303 strings) Change-Id: I5e64a1c26cf999959b64238c6a2115bdab1e930c update translations LibreOffice Online/loleaflet-ui (French) Currently translated at 100.0% (303 of 303 strings) Change-Id: I45fc83f9f720bff5c4defe80a70a6edf7c225ac0 update translations LibreOffice Online/loleaflet-ui (Italian) Currently translated at 100.0% (303 of 303 strings) Change-Id: I7dada1af32e55930cd009cfcce8f96e02261799d update translations LibreOffice Online/loleaflet-ui (German) Currently translated at 100.0% (303 of 303 strings) Change-Id: Idee344891877cee3cd7fabdbbc351bd49f12f5c2 update translations LibreOffice Online/loleaflet-help (Swedish) Currently translated at 48.8% (203 of 416 strings) Change-Id: I9c22ed001d6dbf033e35af1aed4995e5f879f45c update translations LibreOffice Online/loleaflet-ui (Hungarian) Currently translated at 100.0% (303 of 303 strings) Change-Id: I7de9f25d40913e6f56977b4a8cbd3eccc9fd66ca update translations LibreOffice Online/loleaflet-ui (Bulgarian) Currently translated at 99.7% (302 of 303 strings) Change-Id: Ie415976c3af682b4c38b90759123f93bb86f5d84 update translations LibreOffice Online/loleaflet-ui (Slovak) Currently translated at 100.0% (303 of 303 strings) Change-Id: I43ea70e85fca66e230faedfb9c16805c5408b8ef update translations LibreOffice Online/loleaflet-ui (Swedish) Currently translated at 100.0% (303 of 303 strings) Change-Id: Ibeda6cd55247cbc175392653f170400610664677 update translations LibreOffice Online/loleaflet-ui (Polish) Currently translated at 100.0% (303 of 303 strings) Change-Id: Iccc1e8eaefb301852ac8a57293f151f4899f7459 update translations LibreOffice Online/loleaflet-ui (Hungarian) Currently translated at 99.3% (301 of 303 strings) Change-Id: I61e604b801a409d3264969d80e316af323aaca09 update translations LibreOffice Online/loleaflet-ui (Spanish) Currently translated at 100.0% (303 of 303 strings) Change-Id: I3f1aad278526e9ea4ac240fbd062b165eec8f965 update translations LibreOffice Online/loleaflet-ui (Welsh) Currently translated at 100.0% (303 of 303 strings) Change-Id: I76d65ec0486525a153e177b4469e216321b9fdf5 update translations LibreOffice Online/loleaflet-ui (Catalan) Currently translated at 100.0% (303 of 303 strings) Change-Id: I49fe9d19dfee8968c199a20fe1145aeec4753e00 update translations LibreOffice Online/loleaflet-ui (Asturian) Currently translated at 42.2% (128 of 303 strings) Change-Id: I79c1f149afa5440312d639a3ebe9ddb1375212c4 Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Change-Id: Ie642d64b78420343148a02f611483311dad9dfc7 Translation: LibreOffice Online/loleaflet-ui Translate-URL: https://weblate.documentfoundation.org/projects/libo_online/loleaflet-ui/ update translations LibreOffice Online/loleaflet-ui (Asturian) Currently translated at 41.9% (127 of 303 strings) Change-Id: I7281cc18e6373f0259ab246f86d4ad5995dab8cb update translations LibreOffice Online/loleaflet-ui (Portuguese (Brazil)) Currently translated at 100.0% (303 of 303 strings) Change-Id: I523a467f175cd3e8c9ca84ec775aa5abe55c0a12 update translations LibreOffice Online/android-app (Chinese (Traditional)) Currently translated at 100.0% (102 of 102 strings) Change-Id: I3e9ece54fd64f762e16490d0be5c20e14504e2db update translations LibreOffice Online/android-lib (Chinese (Traditional)) Currently translated at 100.0% (12 of 12 strings) Change-Id: Ia6e1e276e0c491b1f14349ebd76aac2b61b2bd00 update translations LibreOffice Online/loleaflet-ui (Polish) Currently translated at 100.0% (303 of 303 strings) Change-Id: Ib50768fb855466e27a3910b13bfbc8543e88753d update translations LibreOffice Online/loleaflet-ui (Spanish) Currently translated at 99.7% (302 of 303 strings) Change-Id: I388d4f3758196e1ed2542cdb8caee4525e2c5357 update translations LibreOffice Online/loleaflet-ui (Catalan) Currently translated at 99.7% (302 of 303 strings) Change-Id: I318c1641814ce7d7a143e980e1d21e0451151e8f update translations LibreOffice Online/loleaflet-ui (Asturian) Currently translated at 41.6% (126 of 303 strings) Change-Id: I6db98d2c9c0be471b11f1bca1716959a690c56b1 Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Change-Id: Ica8210358d50d7283915161a10a791af20d35744 Translation: LibreOffice Online/loleaflet-ui Translate-URL: https://weblate.documentfoundation.org/projects/libo_online/loleaflet-ui/ update translations LibreOffice Online/loleaflet-ui (Chinese (Traditional)) Currently translated at 100.0% (299 of 299 strings) Change-Id: Ia4410ce7ee0b09cb440fc4b60a94fbb1e2003830 update translations LibreOffice Online/ios (Chinese (Traditional)) Currently translated at 100.0% (5 of 5 strings) Change-Id: Ifb7ff42bc93a2347971a56e6df002e4e786dae3e update translations LibreOffice Online/loleaflet-ui (Chinese (Traditional)) Currently translated at 100.0% (299 of 299 strings) Change-Id: I9f679f6a13ba077c7ec7f23d5aa2aafc0f818691 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/94583 Tested-by: Jenkins Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com> |
||
---|---|---|
.. | ||
app | ||
gradle/wrapper | ||
lib | ||
templates | ||
.gitignore | ||
build.gradle.in | ||
gradle.properties | ||
gradlew | ||
gradlew.bat | ||
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) Or + command line: ./gradlew build == 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-build 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