summaryrefslogtreecommitdiff
path: root/android
diff options
context:
space:
mode:
authorTomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>2015-03-09 18:16:49 +0900
committerMiklos Vajna <vmiklos@collabora.co.uk>2015-03-16 09:37:58 +0100
commitbdd8a68c7b1bfd78915d222d113709fd468903ec (patch)
treeb72e1b7a66a4152c966f97229ee8fe8476b4fd14 /android
parent80c90f518c2ef0e4a17af6727d9c22bcf20b3b09 (diff)
android: make & build appcompat-v7 library, up target to v21
Previously we included the android support library v4 for some GUI elements like GridView. This commit in addition adds the v7 appcompat library which is needed for the new Lollipop style Toolbar and many other new GUI elements. The appcompat v7 library is not distributed as only a jar file but needs to be build (as it includes additional resources) and included as a library project. So to do this the content is copied from SDK and build with the build system. The files also include the v4 so it doesn't need to be copied from SDK anymore. The target had to be raised to v21 (Lollipop), however the minimum SDK version remains unchanged. Change-Id: I4f1a6ce69e7f6c3f9df784a6835f376a01d4dfdb
Diffstat (limited to 'android')
-rw-r--r--android/.gitignore1
-rw-r--r--android/Bootstrap/Makefile.shared8
-rw-r--r--android/experimental/LOAndroid3/AndroidManifest.xml.in9
-rw-r--r--android/experimental/LOAndroid3/Makefile4
-rw-r--r--android/experimental/LOAndroid3/project.properties3
-rw-r--r--android/experimental/LOAndroid3/res/values-v21/themes.xml10
-rw-r--r--android/experimental/LOAndroid3/res/values/styles.xml8
-rw-r--r--android/experimental/LOAndroid3/res/values/themes.xml12
8 files changed, 39 insertions, 16 deletions
diff --git a/android/.gitignore b/android/.gitignore
index dca2c57fff27..0f7e91bcc642 100644
--- a/android/.gitignore
+++ b/android/.gitignore
@@ -5,3 +5,4 @@ libs
obj
local.properties
native-code.cxx
+AppCompat-v7
diff --git a/android/Bootstrap/Makefile.shared b/android/Bootstrap/Makefile.shared
index a215d44e423e..2a8b54500881 100644
--- a/android/Bootstrap/Makefile.shared
+++ b/android/Bootstrap/Makefile.shared
@@ -18,6 +18,8 @@ APP_DATA_PATH=/data/data/$(APP_PACKAGE)
SODEST=libs/$(ANDROID_APP_ABI)
OBJLOCAL=obj/local/$(ANDROID_APP_ABI)
+APPCOMPATDIR=$(BOOTSTRAPDIR)/../AppCompat-v7
+
define COPYSO
$(error COPYSO should not be used now with DISABLE_DYNLOADING)
endef
@@ -50,6 +52,11 @@ $(BOOTSTRAPDIR)/no-resource-compress.xml : $(ANDROID_SDK_HOME)/tools/ant/build.x
android_version_setup : $(BOOTSTRAPDIR)/no-resource-compress.xml
+prepare-appcompat:
+ mkdir $(APPCOMPATDIR) 2>/dev/null; true
+ cp -rf $(ANDROID_SDK_HOME)/extras/android/support/v7/appcompat/* $(APPCOMPATDIR)
+ $(ANDROID_SDK_HOME)/tools/android update lib-project --target android-21 --path $(APPCOMPATDIR)
+
properties:
echo sdk.dir=$(ANDROID_SDK_HOME) >local.properties
echo sdk.dir=$(ANDROID_SDK_HOME) >../../Bootstrap/local.properties
@@ -70,6 +77,7 @@ clean: android_version_setup properties
$(ANT) $(if $(VERBOSE)$(verbose),,-quiet) -keep-going clean
rm -rf assets libs $(SODEST) $(OBJLOCAL) $(BOOTSTRAPDIR)/no-resource-compress.xml
rm -f native-code.cxx
+ rm -rf $(APPCOMPATDIR)
#
# Build / link the single .so for this app
diff --git a/android/experimental/LOAndroid3/AndroidManifest.xml.in b/android/experimental/LOAndroid3/AndroidManifest.xml.in
index 244c6db60ee5..e151172fd17d 100644
--- a/android/experimental/LOAndroid3/AndroidManifest.xml.in
+++ b/android/experimental/LOAndroid3/AndroidManifest.xml.in
@@ -7,7 +7,7 @@
<!-- App requires OpenGL ES 2.0 -->
<uses-feature android:glEsVersion="0x00020000" android:required="true" />
- <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="17"/>
+ <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="21"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<application
@@ -16,14 +16,14 @@
android:icon="@drawable/main"
android:label="@string/app_name"
android:hardwareAccelerated="true"
- android:theme="@style/AppTheme"
android:largeHeap="false">
<!-- Viewer Activity -->
<activity
android:name=".LibreOfficeMainActivity"
android:label="@string/app_name"
- android:configChanges="orientation|keyboard|keyboardHidden|screenLayout|uiMode|screenSize|smallestScreenSize">
+ android:configChanges="orientation|keyboard|keyboardHidden|screenLayout|uiMode|screenSize|smallestScreenSize"
+ android:theme="@style/LibreOfficeTheme">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<action android:name="android.intent.action.EDIT" />
@@ -91,7 +91,8 @@
<!-- Document Browser Activity -->
<activity android:name=".ui.LibreOfficeUIActivity"
- android:label="@string/app_name">
+ android:label="@string/app_name"
+ android:theme="@style/BrowserTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
diff --git a/android/experimental/LOAndroid3/Makefile b/android/experimental/LOAndroid3/Makefile
index c5c18c73a12b..ecefd10c2f1e 100644
--- a/android/experimental/LOAndroid3/Makefile
+++ b/android/experimental/LOAndroid3/Makefile
@@ -17,12 +17,10 @@ include $(BOOTSTRAPDIR)/Makefile.shared
native-code.cxx: $(SRCDIR)/solenv/bin/native-code.py
$< -j -g core -g writer -g calc -g draw -g edit > $@
-build-ant: android_version_setup copy-stuff link-so properties
+build-ant: android_version_setup copy-stuff prepare-appcompat link-so properties
#
# Copy jar files we need
#
- cp $(ANDROID_SDK_HOME)/extras/android/support/v4/android-support-v4.jar libs
-
for F in java_uno \
juh \
jurt \
diff --git a/android/experimental/LOAndroid3/project.properties b/android/experimental/LOAndroid3/project.properties
index 772d3c57623c..d5ae53d9be96 100644
--- a/android/experimental/LOAndroid3/project.properties
+++ b/android/experimental/LOAndroid3/project.properties
@@ -8,7 +8,8 @@
# project structure.
# Project target.
-target=android-15
+target=android-21
# Use the Bootstrap class
android.library.reference.1=../../Bootstrap
+android.library.reference.2=../../AppCompat-v7
diff --git a/android/experimental/LOAndroid3/res/values-v21/themes.xml b/android/experimental/LOAndroid3/res/values-v21/themes.xml
new file mode 100644
index 000000000000..917f41b1f7ff
--- /dev/null
+++ b/android/experimental/LOAndroid3/res/values-v21/themes.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <style name="LibreOfficeTheme" parent="LibreOfficeTheme.Base">
+ <item name="android:windowContentTransitions">true</item>
+ <item name="android:windowAllowEnterTransitionOverlap">true</item>
+ <item name="android:windowAllowReturnTransitionOverlap">true</item>
+ <item name="android:windowSharedElementEnterTransition">@android:transition/move</item>
+ <item name="android:windowSharedElementExitTransition">@android:transition/move</item>
+ </style>
+</resources> \ No newline at end of file
diff --git a/android/experimental/LOAndroid3/res/values/styles.xml b/android/experimental/LOAndroid3/res/values/styles.xml
deleted file mode 100644
index ff6c9d2c0fb9..000000000000
--- a/android/experimental/LOAndroid3/res/values/styles.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<resources>
-
- <!-- Base application theme. -->
- <style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar">
- <!-- Customize your theme here. -->
- </style>
-
-</resources>
diff --git a/android/experimental/LOAndroid3/res/values/themes.xml b/android/experimental/LOAndroid3/res/values/themes.xml
new file mode 100644
index 000000000000..f0853b8b3425
--- /dev/null
+++ b/android/experimental/LOAndroid3/res/values/themes.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <style name="LibreOfficeTheme" parent="LibreOfficeTheme"/>
+
+ <style name="LibreOfficeTheme.Base" parent="Theme.AppCompat.Light">
+ <item name="android:windowNoTitle">true</item>
+ <item name="windowActionBar">false</item>
+ </style>
+
+ <style name="BrowserTheme" parent="android:Theme.Holo.Light.DarkActionBar">
+ </style>
+</resources>