diff options
author | Michael Meeks <michael.meeks@suse.com> | 2012-01-20 17:21:00 +0000 |
---|---|---|
committer | Michael Meeks <michael.meeks@suse.com> | 2012-01-20 17:21:38 +0000 |
commit | 4635ed7aee4cf2d74e6a4459ea7c1a8cc64c97e0 (patch) | |
tree | 7757b5bdb9af6e8add32e94c48f3ce4e0dd1d5fb /android | |
parent | 655b738837427b2c7a953958dec37c275ac0bbb2 (diff) |
android: add new desktop module, it gets to vcl init and fails.
Diffstat (limited to 'android')
-rw-r--r-- | android/qa/desktop/AndroidManifest.xml | 23 | ||||
-rw-r--r-- | android/qa/desktop/Makefile | 202 | ||||
-rw-r--r-- | android/qa/desktop/ant.properties | 17 | ||||
-rw-r--r-- | android/qa/desktop/build.xml | 114 | ||||
-rw-r--r-- | android/qa/desktop/fonts.conf | 134 | ||||
-rw-r--r-- | android/qa/desktop/local.properties.in | 2 | ||||
-rw-r--r-- | android/qa/desktop/project.properties | 14 | ||||
-rw-r--r-- | android/qa/desktop/res/layout/main.xml | 12 | ||||
-rw-r--r-- | android/qa/desktop/res/values/strings.xml | 4 | ||||
-rw-r--r-- | android/qa/desktop/src/dummyfile | 0 |
10 files changed, 522 insertions, 0 deletions
diff --git a/android/qa/desktop/AndroidManifest.xml b/android/qa/desktop/AndroidManifest.xml new file mode 100644 index 000000000000..e59e4b58dd98 --- /dev/null +++ b/android/qa/desktop/AndroidManifest.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="utf-8"?> +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="org.libreoffice.android.libo" + android:versionCode="1" + android:versionName="1.0"> + <uses-sdk android:minSdkVersion="9" /> + + <application android:label="@string/app_name" + android:debuggable="true"> + <!-- Bootstrap is the subclass of android.app.NativeActivity --> + <activity android:name="org.libreoffice.android.Bootstrap" + android:label="LibreOffice Viewer test" + android:configChanges="orientation|keyboardHidden"> + <!-- Tell NativeActivity the name of our .so --> + <meta-data android:name="android.app.lib_name" + android:value="lo-bootstrap" /> + <intent-filter> + <action android:name="android.intent.action.MAIN" /> + <category android:name="android.intent.category.LAUNCHER" /> + </intent-filter> + </activity> + </application> +</manifest> diff --git a/android/qa/desktop/Makefile b/android/qa/desktop/Makefile new file mode 100644 index 000000000000..96f617f81835 --- /dev/null +++ b/android/qa/desktop/Makefile @@ -0,0 +1,202 @@ +# lo-main-library - parameter denoting which shlib to load and execute +# 'lo_main' from + +include ../../../config_host.mk + +# The package of this app +APP_PACKAGE=org.libreoffice.android.libo + +# The name of the Bootstrap activity class +BOOTSTRAP=org.libreoffice.android.Bootstrap + +# The full path the the app's directory needs to be supplied in a +# couple of places, unfortunately. + +APP_DATA_PATH=/data/data/$(APP_PACKAGE) + +SODEST=libs/armeabi-v7a +OBJLOCAL=obj/local/armeabi-v7a + +define COPY +cp $(1) $(SODEST)$(if $(2),/$(2)) && $(STRIP) --strip-debug $(SODEST)$(if $(2),/$(2),/$(notdir $(1))) && \ +cp $(1) $(OBJLOCAL)$(if $(2),/$(2)) +endef + +# The default target just builds. + +all: build-ant + +buildrcs: +# main sofficerc ini ... + mkdir -p assets/program/ + echo "[Bootstrap]" > assets/program/sofficerc + echo "Logo=1" >> assets/program/sofficerc + echo "NativeProgress=1" >> assets/program/sofficerc + echo "URE_BOOTSTRAP=file://assets/program/fundamentalrc" >> assets/program/sofficerc +# fundamentalrc ini ... + echo "[Bootstrap]" > assets/program/fundamentalrc + echo "LO_LIB_DIR=file://$(APP_DATA_PATH)/lib/" >> assets/program/fundamentalrc + echo "URE_LIB_DIR=file://$(APP_DATA_PATH)/lib/" >> assets/program/fundamentalrc # checkme - is this used to find configs ? + echo "BRAND_BASE_DIR=file://assets/" >> assets/program/fundamentalrc + echo "CONFIGURATION_LAYERS=xcsxcu:${BRAND_BASE_DIR}/share/registry module:${BRAND_BASE_DIR}/share/registry/modules res:${BRAND_BASE_DIR}/share/registry bundledext:${${BRAND_BASE_DIR}/program/unorc:BUNDLED_EXTENSIONS_USER}/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend/configmgr.ini sharedext:${${BRAND_BASE_DIR}/program/unorc:SHARED_EXTENSIONS_USER}/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend/configmgr.ini xcsxcu:${${BRAND_BASE_DIR}/program/unorc:UNO_USER_PACKAGES_CACHE}/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend/registry userext:${${BRAND_BASE_DIR}/program/unorc:UNO_USER_PACKAGES_CACHE}/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend/configmgr.ini user:${$BRAND_BASE_DIR/program/bootstraprc:UserInstallation}/user/registrymodifications.xcu" >> assets/program/fundamentalrc + echo "URE_BIN_DIR=file://assets/ure/bin/dir/not-here/can-we/exec-anyway" >> assets/program/fundamentalrc + echo "URE_MORE_TYPES=file:///assets/ure/share/misc/types.rdb file:///assets/program/types/types.rdb $${URE_MORE_TYPES}" >> assets/program/fundamentalrc + echo "URE_MORE_SERVICES=file:///assets/ure/share/misc/services.rdb file:///assets/program/services/services.rdb $${URE_MORE_SERVICES}" >> assets/program/fundamentalrc +# unorc ini ... + echo "[Bootstrap]" > assets/program/unorc + echo "URE_INTERNAL_LIB_DIR=file://$(APP_DATA_PATH)/lib/" >> assets/program/unorc + echo "UNO_TYPES=file:///assets/ure/share/misc/types.rdb file:///assets/program/types/types.rdb $${URE_MORE_TYPES}" >> assets/program/unorc + echo "UNO_SERVICES=file:///assets/ure/share/misc/services.rdb file:///assets/program/services/services.rdb $${URE_MORE_SERVICES}" >> assets/program/unorc + +copy-stuff: buildrcs +# +# Copy shared libraries we need to libs/armeabi-v7a so that ant will +# include them in the .apk. +# +# Copy them to obj/local/armeabi-v7a, too, where gdb will look for +# them. +# + mkdir -p $(SODEST) $(OBJLOCAL) +# +# First the most important one, liblo-bootstrap.so + $(call COPY,$(OUTDIR)/lib/liblo-bootstrap.so) +# +# Then the cppunittester "program". As all "program" +# files we build for Android actually is a shared object. + $(call COPY,$(OUTDIR)/bin/cppunit/cppunittester,libcppunittester.so) +# +# The cppunit library +# + $(call COPY,$(OUTDIR)/lib/libcppunit-1.12.so) +# +# The tests we run here +# + for F in sc_ucalc sc_filters_test; do \ + $(call COPY,$(WORKDIR)/LinkTarget/CppunitTest/libtest_$${F}.so); \ + done +# +# Libs and UNO components that the tests need. +# + for F in $(strip \ + basebmplo \ + basegfxlo \ + bootstrap.uno \ + comphelpgcc3 \ + configmgr.uno \ + deploymentmisclo \ + fileacc \ + fontconfig \ + forlo \ + foruilo \ + freetype \ + fwelo \ + fwilo \ + fwklo \ + gcc3_uno \ + i18nisolang1gcc3 \ + i18npaperlo \ + i18npool.uno \ + i18nutilgcc3 \ + icudatalo \ + icui18nlo \ + iculelo \ + icuuclo \ + jvmaccessgcc3 \ + jvmfwk \ + localedata_en \ + localedata_es \ + localedata_euro \ + localedata_others \ + mergedlo \ + msfilterlo \ + ooxlo \ + reg \ + saxlo \ + sblo \ + sclo \ + scfiltlo \ + sfxlo \ + sotlo \ + stocservices.uno \ + store \ + svllo \ + svtlo \ + test \ + tklo \ + tllo \ + ucb1 \ + ucbhelper4gcc3 \ + ucpfile1 \ + uno_cppu \ + uno_cppuhelpergcc3 \ + uno_sal \ + uno_salhelpergcc3 \ + unoexceptionprotector \ + unotest \ + unoxmllo \ + utllo \ + vbahelperlo \ + vcllo \ + vclplug_svplo \ + xcrlo \ + xml2 \ + xmlreader \ + ); do \ + $(call COPY,$(OUTDIR)/lib/lib$${F}.so); \ + done +# +# Then the shared GNU C++ library + $(call COPY,$(ANDROID_NDK_HOME)/sources/cxx-stl/gnu-libstdc++/libs/armeabi-v7a/libgnustl_shared.so) +# +# Then other "assets" that can be left in the .apk. Let the directory +# structure under assets mimic the install set - except for the fact +# that program/ is renamed to lib/ and we put the ure/lib .so's into +# the assets/lib directory too. + mkdir -p assets/program/types assets/program/services + mkdir -p assets/program/resource + mkdir -p assets/ure/share/misc assets/share/registry/res + cp $(OUTDIR)/bin/types.rdb assets/program/types/ + cp $(OUTDIR)/bin/ure/types.rdb assets/ure/share/misc/ + cp $(OUTDIR)/xml/services.rdb assets/program/services + cp $(OUTDIR)/xml/ure/services.rdb assets/ure/share/misc/ + cp -R $(OUTDIR)/xml/*.xcd assets/share/registry/ + mv assets/share/registry/fcfg_langpack_en-US.xcd assets/share/registry/res/ +# .res files + cp $(OUTDIR)/bin/*en-US.res assets/program/resource/ +# Then assets that are unpacked at run-time into the app's data directory. + mkdir -p assets/unpack/etc/fonts + cp fonts.conf assets/unpack/etc/fonts +# +# Then gdbserver and gdb.setup so that we can debug with ndk-gdb. +# + cp $(ANDROID_NDK_HOME)/toolchains/arm-linux-androideabi-4.4.3/prebuilt/gdbserver $(SODEST) + echo set solib-search-path ./obj/local/armeabi-v7a >$(SODEST)/gdb.setup + + +build-ant: copy-stuff + unset JAVA_HOME && ant debug + +install: copy-stuff + unset JAVA_HOME && ant debug install + @echo + @echo 'Run it with "make run"' + @echo + +uninstall: + adb uninstall $(APP_PACKAGE) + +run: + echo "STAR_RESOURCEPATH=/assets/bin FONTCONFIG_FILE=$(APP_DATA_PATH)/etc/fonts/fonts.conf $(APP_DATA_PATH)/lib/libtest_sc_ucalc.so --headless --protector libunoexceptionprotector.so unoexceptionprotector -env:INIFILENAME=file:///assets/program/sofficerc" >cmdline + adb push cmdline $(APP_DATA_PATH)/cmdline + adb shell am start -n $(APP_PACKAGE)/$(BOOTSTRAP) -e lo-main-library libmergedlo -e lo-main-indirect-cmdline "$(APP_DATA_PATH)/cmdline" + +# If you reinstall an app several times, even if you uninstall it +# between, disk space seems to leak that won't get recycled until you +# stop and start... +stop-start-cycle: + adb shell stop && adb shell start && sleep 10 + +clean: + ant clean + rm -rf assets $(SODEST) $(OBJLOCAL) + diff --git a/android/qa/desktop/ant.properties b/android/qa/desktop/ant.properties new file mode 100644 index 000000000000..ee52d86d94a4 --- /dev/null +++ b/android/qa/desktop/ant.properties @@ -0,0 +1,17 @@ +# This file is used to override default values used by the Ant build system. +# +# This file must be checked in Version Control Systems, as it is +# integral to the build system of your project. + +# This file is only used by the Ant script. + +# You can use this to override default values such as +# 'source.dir' for the location of your java source folder and +# 'out.dir' for the location of your output folder. + +# You can also use it define how the release builds are signed by declaring +# the following properties: +# 'key.store' for the location of your keystore and +# 'key.alias' for the name of the key to use. +# The password will be asked during the build when you use the 'release' target. + diff --git a/android/qa/desktop/build.xml b/android/qa/desktop/build.xml new file mode 100644 index 000000000000..a55977ad994e --- /dev/null +++ b/android/qa/desktop/build.xml @@ -0,0 +1,114 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project name="LibreOfficeQA-SC" default="help"> + + <!-- The local.properties file is created and updated by the 'android' tool. + It contains the path to the SDK. It should *NOT* be checked into + Version Control Systems. --> + <loadproperties srcFile="local.properties" /> + + <!-- The ant.properties file can be created by you. It is only edited by the + 'android' tool to add properties to it. + This is the place to change some Ant specific build properties. + Here are some properties you may want to change/update: + + source.dir + The name of the source directory. Default is 'src'. + out.dir + The name of the output directory. Default is 'bin'. + + For other overridable properties, look at the beginning of the rules + files in the SDK, at tools/ant/build.xml + + Properties related to the SDK location or the project target should + be updated using the 'android' tool with the 'update' action. + + This file is an integral part of the build system for your + application and should be checked into Version Control Systems. + + --> + <property file="ant.properties" /> + + <!-- The project.properties file is created and updated by the 'android' + tool, as well as ADT. + + This contains project specific properties such as project target, and library + dependencies. Lower level build properties are stored in ant.properties + (or in .classpath for Eclipse projects). + + This file is an integral part of the build system for your + application and should be checked into Version Control Systems. --> + <loadproperties srcFile="project.properties" /> + + <!-- quick check on sdk.dir --> + <fail + message="sdk.dir is missing. Make sure to generate local.properties using 'android update project'" + unless="sdk.dir" + /> + + +<!-- extension targets. Uncomment the ones where you want to do custom work + in between standard targets --> +<!-- + <target name="-pre-build"> + </target> + <target name="-pre-compile"> + </target> + + /* This is typically used for code obfuscation. + Compiled code location: ${out.classes.absolute.dir} + If this is not done in place, override ${out.dex.input.absolute.dir} */ + <target name="-post-compile"> + </target> +--> + + <!-- Import the actual build file. + + To customize existing targets, there are two options: + - Customize only one target: + - copy/paste the target into this file, *before* the + <import> task. + - customize it to your needs. + - Customize the whole content of build.xml + - copy/paste the content of the rules files (minus the top node) + into this file, replacing the <import> task. + - customize to your needs. + + *********************** + ****** IMPORTANT ****** + *********************** + In all cases you must update the value of version-tag below to read 'custom' instead of an integer, + in order to avoid having your file be overridden by tools such as "android update project" + --> + <!-- version-tag: 1 --> + <import file="${sdk.dir}/tools/ant/build.xml" /> + + <!-- Re-define the "-package-resources" target to not compress resources --> + + <target name="-package-resources" depends="-crunch"> + <!-- only package resources if *not* a library project --> + <do-only-if-not-library elseText="Library project: do not package resources..." > + <aapt executable="${aapt}" + command="package" + versioncode="${version.code}" + versionname="${version.name}" + debug="${build.is.packaging.debug}" + manifest="AndroidManifest.xml" + assets="${asset.absolute.dir}" + androidjar="${android.jar}" + apkfolder="${out.absolute.dir}" + nocrunch="${build.packaging.nocrunch}" + resourcefilename="${resource.package.file.name}" + resourcefilter="${aapt.resource.filter}" + projectLibrariesResName="project.libraries.res" + projectLibrariesPackageName="project.libraries.package" + previousBuildType="${build.last.target}" + buildType="${build.target}"> + <res path="${out.res.absolute.dir}" /> + <res path="${resource.absolute.dir}" /> + <nocompress /> <!-- forces no compression on any files in assets or res/raw --> + <!-- <nocompress extension="xml" /> forces no compression on specific file extensions in assets and res/raw --> + </aapt> + </do-only-if-not-library> + </target> + +</project> diff --git a/android/qa/desktop/fonts.conf b/android/qa/desktop/fonts.conf new file mode 100644 index 000000000000..0e92c5d78d38 --- /dev/null +++ b/android/qa/desktop/fonts.conf @@ -0,0 +1,134 @@ +<?xml version="1.0"?> +<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> +<!-- /etc/fonts/fonts.conf file to configure system font access --> +<fontconfig> + +<!-- Font directory list --> + + <dir>/system/fonts</dir> + +<!-- + Accept deprecated 'mono' alias, replacing it with 'monospace' +--> + <match target="pattern"> + <test qual="any" name="family"> + <string>mono</string> + </test> + <edit name="family" mode="assign"> + <string>monospace</string> + </edit> + </match> + +<!-- + Accept alternate 'sans serif' spelling, replacing it with 'sans-serif' +--> + <match target="pattern"> + <test qual="any" name="family"> + <string>sans serif</string> + </test> + <edit name="family" mode="assign"> + <string>sans-serif</string> + </edit> + </match> + +<!-- + Accept deprecated 'sans' alias, replacing it with 'sans-serif' +--> + <match target="pattern"> + <test qual="any" name="family"> + <string>sans</string> + </test> + <edit name="family" mode="assign"> + <string>sans-serif</string> + </edit> + </match> + +<!-- + Load local system customization file +--> + <include ignore_missing="yes">conf.d</include> + +<!-- Font cache directory list --> + + <!-- Yeah this hardcoding is wrong of course, will have to fix + later to patch in proper code in fontonfig on Android to + find out a good place. + --> + <cachedir>/data/data/org.libreoffice.android.libo/fontconfig</cachedir> + + <config> +<!-- + These are the default Unicode chars that are expected to be blank + in fonts. All other blank chars are assumed to be broken and + won't appear in the resulting charsets + --> + <blank> + <int>0x0020</int> <!-- SPACE --> + <int>0x00A0</int> <!-- NO-BREAK SPACE --> + <int>0x00AD</int> <!-- SOFT HYPHEN --> + <int>0x034F</int> <!-- COMBINING GRAPHEME JOINER --> + <int>0x0600</int> <!-- ARABIC NUMBER SIGN --> + <int>0x0601</int> <!-- ARABIC SIGN SANAH --> + <int>0x0602</int> <!-- ARABIC FOOTNOTE MARKER --> + <int>0x0603</int> <!-- ARABIC SIGN SAFHA --> + <int>0x06DD</int> <!-- ARABIC END OF AYAH --> + <int>0x070F</int> <!-- SYRIAC ABBREVIATION MARK --> + <int>0x115F</int> <!-- HANGUL CHOSEONG FILLER --> + <int>0x1160</int> <!-- HANGUL JUNGSEONG FILLER --> + <int>0x1680</int> <!-- OGHAM SPACE MARK --> + <int>0x17B4</int> <!-- KHMER VOWEL INHERENT AQ --> + <int>0x17B5</int> <!-- KHMER VOWEL INHERENT AA --> + <int>0x180E</int> <!-- MONGOLIAN VOWEL SEPARATOR --> + <int>0x2000</int> <!-- EN QUAD --> + <int>0x2001</int> <!-- EM QUAD --> + <int>0x2002</int> <!-- EN SPACE --> + <int>0x2003</int> <!-- EM SPACE --> + <int>0x2004</int> <!-- THREE-PER-EM SPACE --> + <int>0x2005</int> <!-- FOUR-PER-EM SPACE --> + <int>0x2006</int> <!-- SIX-PER-EM SPACE --> + <int>0x2007</int> <!-- FIGURE SPACE --> + <int>0x2008</int> <!-- PUNCTUATION SPACE --> + <int>0x2009</int> <!-- THIN SPACE --> + <int>0x200A</int> <!-- HAIR SPACE --> + <int>0x200B</int> <!-- ZERO WIDTH SPACE --> + <int>0x200C</int> <!-- ZERO WIDTH NON-JOINER --> + <int>0x200D</int> <!-- ZERO WIDTH JOINER --> + <int>0x200E</int> <!-- LEFT-TO-RIGHT MARK --> + <int>0x200F</int> <!-- RIGHT-TO-LEFT MARK --> + <int>0x2028</int> <!-- LINE SEPARATOR --> + <int>0x2029</int> <!-- PARAGRAPH SEPARATOR --> + <int>0x202A</int> <!-- LEFT-TO-RIGHT EMBEDDING --> + <int>0x202B</int> <!-- RIGHT-TO-LEFT EMBEDDING --> + <int>0x202C</int> <!-- POP DIRECTIONAL FORMATTING --> + <int>0x202D</int> <!-- LEFT-TO-RIGHT OVERRIDE --> + <int>0x202E</int> <!-- RIGHT-TO-LEFT OVERRIDE --> + <int>0x202F</int> <!-- NARROW NO-BREAK SPACE --> + <int>0x205F</int> <!-- MEDIUM MATHEMATICAL SPACE --> + <int>0x2060</int> <!-- WORD JOINER --> + <int>0x2061</int> <!-- FUNCTION APPLICATION --> + <int>0x2062</int> <!-- INVISIBLE TIMES --> + <int>0x2063</int> <!-- INVISIBLE SEPARATOR --> + <int>0x206A</int> <!-- INHIBIT SYMMETRIC SWAPPING --> + <int>0x206B</int> <!-- ACTIVATE SYMMETRIC SWAPPING --> + <int>0x206C</int> <!-- INHIBIT ARABIC FORM SHAPING --> + <int>0x206D</int> <!-- ACTIVATE ARABIC FORM SHAPING --> + <int>0x206E</int> <!-- NATIONAL DIGIT SHAPES --> + <int>0x206F</int> <!-- NOMINAL DIGIT SHAPES --> + <int>0x2800</int> <!-- BRAILLE PATTERN BLANK --> + <int>0x3000</int> <!-- IDEOGRAPHIC SPACE --> + <int>0x3164</int> <!-- HANGUL FILLER --> + <int>0xFEFF</int> <!-- ZERO WIDTH NO-BREAK SPACE --> + <int>0xFFA0</int> <!-- HALFWIDTH HANGUL FILLER --> + <int>0xFFF9</int> <!-- INTERLINEAR ANNOTATION ANCHOR --> + <int>0xFFFA</int> <!-- INTERLINEAR ANNOTATION SEPARATOR --> + <int>0xFFFB</int> <!-- INTERLINEAR ANNOTATION TERMINATOR --> + </blank> +<!-- + Rescan configuration every 30 seconds when FcFontSetList is called + --> + <rescan> + <int>30</int> + </rescan> + </config> + +</fontconfig> diff --git a/android/qa/desktop/local.properties.in b/android/qa/desktop/local.properties.in new file mode 100644 index 000000000000..27c8eb5f4dac --- /dev/null +++ b/android/qa/desktop/local.properties.in @@ -0,0 +1,2 @@ +# Location of the SDK. This is only used by Ant. +sdk.dir=@ANDROID_SDK_HOME@ diff --git a/android/qa/desktop/project.properties b/android/qa/desktop/project.properties new file mode 100644 index 000000000000..06b2d880c3d4 --- /dev/null +++ b/android/qa/desktop/project.properties @@ -0,0 +1,14 @@ +# This file is automatically generated by Android Tools. +# Do not modify this file -- YOUR CHANGES WILL BE ERASED! +# +# This file must be checked in Version Control Systems. +# +# To customize properties used by the Ant build system use, +# "ant.properties", and override values to adapt the script to your +# project structure. + +# Project target. +target=android-14 + +# Use the Bootstrap class +android.library.reference.1=../../Bootstrap diff --git a/android/qa/desktop/res/layout/main.xml b/android/qa/desktop/res/layout/main.xml new file mode 100644 index 000000000000..5839d8cda704 --- /dev/null +++ b/android/qa/desktop/res/layout/main.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:orientation="vertical" + android:layout_width="fill_parent" + android:layout_height="fill_parent" + > +<TextView + android:layout_width="fill_parent" + android:layout_height="wrap_content" + android:text="Hello World" + /> +</LinearLayout> diff --git a/android/qa/desktop/res/values/strings.xml b/android/qa/desktop/res/values/strings.xml new file mode 100644 index 000000000000..e4de92afb0b5 --- /dev/null +++ b/android/qa/desktop/res/values/strings.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources> + <string name="app_name">LibreOfficeQA-SC</string> +</resources> diff --git a/android/qa/desktop/src/dummyfile b/android/qa/desktop/src/dummyfile new file mode 100644 index 000000000000..e69de29bb2d1 --- /dev/null +++ b/android/qa/desktop/src/dummyfile |