summaryrefslogtreecommitdiffstats
path: root/src/android
diff options
context:
space:
mode:
authorBogDan Vatra <bogdan@kdab.com>2016-04-21 15:45:13 +0300
committerBogDan Vatra <bogdan@kdab.com>2016-07-16 12:33:55 +0000
commit27fce8c07d93eec39df2440e253f2c0f719b9e19 (patch)
treed27ba008b5a2c78225360d259837034d362e2474 /src/android
parent178ab885626bcd67507fde7f67f65c1872ac3be3 (diff)
Android: Fix style extract on Android N
Task-number: QTBUG-52744 Change-Id: If53a76929f3bc903573917cfd968431532817ace Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> (cherry picked from commit 392372392c3c9096984a535a975dda163a62a28a) Reviewed-by: Christian Stromme <christian.stromme@qt.io>
Diffstat (limited to 'src/android')
-rw-r--r--src/android/jar/src/org/qtproject/qt5/android/ExtractStyle.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/android/jar/src/org/qtproject/qt5/android/ExtractStyle.java b/src/android/jar/src/org/qtproject/qt5/android/ExtractStyle.java
index f5dac1fa60..22e2c7a85b 100644
--- a/src/android/jar/src/org/qtproject/qt5/android/ExtractStyle.java
+++ b/src/android/jar/src/org/qtproject/qt5/android/ExtractStyle.java
@@ -787,7 +787,14 @@ public class ExtractStyle {
private JSONObject findPatchesMarings(Drawable d) throws JSONException, NoSuchFieldException, IllegalAccessException
{
- NinePatch np = (NinePatch) getAccessibleField(NinePatchDrawable.class, "mNinePatch").get(d);
+ NinePatch np;
+ Field f = tryGetAccessibleField(NinePatchDrawable.class, "mNinePatch");
+ if (f != null) {
+ np = (NinePatch) f.get(d);
+ } else {
+ Object state = getAccessibleField(NinePatchDrawable.class, "mNinePatchState").get(d);
+ np = (NinePatch) getAccessibleField(state.getClass(), "mNinePatch").get(state);
+ }
if (Build.VERSION.SDK_INT < 19)
return getJsonChunkInfo(extractChunkInfo((byte[]) getAccessibleField(np.getClass(), "mChunk").get(np)));
else