diff options
author | BogDan Vatra <bogdan@kdab.com> | 2016-04-21 15:45:13 +0300 |
---|---|---|
committer | BogDan Vatra <bogdan@kdab.com> | 2016-04-30 06:29:09 +0000 |
commit | 392372392c3c9096984a535a975dda163a62a28a (patch) | |
tree | 15c94db2e16927f73aeea7960777b8561897a91b /src | |
parent | a954ba83154f6ad080e96dd7277c8f250e62f8db (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>
Diffstat (limited to 'src')
-rw-r--r-- | src/android/jar/src/org/qtproject/qt5/android/ExtractStyle.java | 9 |
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 46a443c365..3f74383a82 100644 --- a/src/android/jar/src/org/qtproject/qt5/android/ExtractStyle.java +++ b/src/android/jar/src/org/qtproject/qt5/android/ExtractStyle.java @@ -794,7 +794,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 |