From 897ad56e59bb5b8cc2564cc2f525723786ea610f Mon Sep 17 00:00:00 2001 From: brstgt Date: Fri, 25 Jul 2014 15:57:19 +0200 Subject: [PATCH 1/7] Update gradle plugin, catch NPE caused by some motorola devices when setting layer type --- library/build.gradle | 6 +++--- .../slidingmenu/lib/SlidingMenu.java | 17 +++++++++++------ 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/library/build.gradle b/library/build.gradle index e2a5bf978..a1cc1e0bd 100644 --- a/library/build.gradle +++ b/library/build.gradle @@ -3,7 +3,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:0.4.+' + classpath 'com.android.tools.build:gradle:0.11.+' } } apply plugin: 'android-library' @@ -13,8 +13,8 @@ dependencies { } android { - compileSdkVersion 17 - buildToolsVersion "17.0.0" + compileSdkVersion 19 + buildToolsVersion "19.1.0" defaultConfig { minSdkVersion 7 diff --git a/library/src/com/jeremyfeinstein/slidingmenu/lib/SlidingMenu.java b/library/src/com/jeremyfeinstein/slidingmenu/lib/SlidingMenu.java index 8b88708b9..0a879508a 100644 --- a/library/src/com/jeremyfeinstein/slidingmenu/lib/SlidingMenu.java +++ b/library/src/com/jeremyfeinstein/slidingmenu/lib/SlidingMenu.java @@ -1008,12 +1008,17 @@ public void manageLayers(float percentOpen) { if (layerType != getContent().getLayerType()) { getHandler().post(new Runnable() { public void run() { - Log.v(TAG, "changing layerType. hardware? " + (layerType == View.LAYER_TYPE_HARDWARE)); - getContent().setLayerType(layerType, null); - getMenu().setLayerType(layerType, null); - if (getSecondaryMenu() != null) { - getSecondaryMenu().setLayerType(layerType, null); - } + try { + Log.v(TAG, "changing layerType. hardware? " + (layerType == View.LAYER_TYPE_HARDWARE)); + getContent().setLayerType(layerType, null); + getMenu().setLayerType(layerType, null); + if (getSecondaryMenu() != null) { + getSecondaryMenu().setLayerType(layerType, null); + } + } + catch (NullPointerException e) { + // Happens on some motorola devices + } } }); } From 73f040e0420a8eff0662fa239d80e35b0bc0b729 Mon Sep 17 00:00:00 2001 From: brstgt Date: Thu, 4 Sep 2014 12:03:52 +0200 Subject: [PATCH 2/7] Catch ArrayIndexOutOfBoundsException thrown by android framework --- .../slidingmenu/lib/CustomViewAbove.java | 36 +++++++++++-------- 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/library/src/com/jeremyfeinstein/slidingmenu/lib/CustomViewAbove.java b/library/src/com/jeremyfeinstein/slidingmenu/lib/CustomViewAbove.java index fa73ef05b..5d1a71981 100644 --- a/library/src/com/jeremyfeinstein/slidingmenu/lib/CustomViewAbove.java +++ b/library/src/com/jeremyfeinstein/slidingmenu/lib/CustomViewAbove.java @@ -779,21 +779,27 @@ private void determineDrag(MotionEvent ev) { final int pointerIndex = getPointerIndex(ev, activePointerId); if (activePointerId == INVALID_POINTER || pointerIndex == INVALID_POINTER) return; - final float x = MotionEventCompat.getX(ev, pointerIndex); - final float dx = x - mLastMotionX; - final float xDiff = Math.abs(dx); - final float y = MotionEventCompat.getY(ev, pointerIndex); - final float dy = y - mLastMotionY; - final float yDiff = Math.abs(dy); - if (xDiff > (isMenuOpen()?mTouchSlop/2:mTouchSlop) && xDiff > yDiff && thisSlideAllowed(dx)) { - startDrag(); - mLastMotionX = x; - mLastMotionY = y; - setScrollingCacheEnabled(true); - // TODO add back in touch slop check - } else if (xDiff > mTouchSlop) { - mIsUnableToDrag = true; - } + try { + final float x = MotionEventCompat.getX(ev, pointerIndex); + final float dx = x - mLastMotionX; + final float xDiff = Math.abs(dx); + final float y = MotionEventCompat.getY(ev, pointerIndex); + final float dy = y - mLastMotionY; + final float yDiff = Math.abs(dy); + if (xDiff > (isMenuOpen()?mTouchSlop/2:mTouchSlop) && xDiff > yDiff && thisSlideAllowed(dx)) { + startDrag(); + mLastMotionX = x; + mLastMotionY = y; + setScrollingCacheEnabled(true); + // TODO add back in touch slop check + } else if (xDiff > mTouchSlop) { + mIsUnableToDrag = true; + } + } + catch (ArrayIndexOutOfBoundsException e) { + // Ignore. Occasionally happens in MotionEventCompat.getX + // Known problem, caused in Android Framework + } } @Override From 2c7ea770ae872fe1670f9324eae481fc8d43c731 Mon Sep 17 00:00:00 2001 From: brstgt Date: Thu, 4 Sep 2014 12:04:20 +0200 Subject: [PATCH 3/7] Update android build tools --- library/build.gradle | 12 ++++---- library/library.iml | 73 +++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 75 insertions(+), 10 deletions(-) diff --git a/library/build.gradle b/library/build.gradle index a1cc1e0bd..089c4112a 100644 --- a/library/build.gradle +++ b/library/build.gradle @@ -3,22 +3,22 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:0.11.+' + classpath 'com.android.tools.build:gradle:0.12.+' } } -apply plugin: 'android-library' +apply plugin: 'com.android.library' dependencies { - compile 'com.android.support:support-v4:13.0.0' + compile 'com.android.support:support-v4:20.0.0' } android { - compileSdkVersion 19 - buildToolsVersion "19.1.0" + compileSdkVersion 20 + buildToolsVersion "20.0.0" defaultConfig { minSdkVersion 7 - targetSdkVersion 16 + targetSdkVersion 20 } sourceSets { diff --git a/library/library.iml b/library/library.iml index a6e3c8f47..f56ac03e5 100644 --- a/library/library.iml +++ b/library/library.iml @@ -1,19 +1,84 @@ - + + + + + + - + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + From eeb2c8d8676d4b69a7535a3fde19cfe6e9d6aa52 Mon Sep 17 00:00:00 2001 From: brstgt Date: Mon, 12 Jan 2015 08:40:41 +0100 Subject: [PATCH 4/7] Update to android studio 1.0.2, update gradle wrapper --- library/library.iml | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/library/library.iml b/library/library.iml index f56ac03e5..c150a83f5 100644 --- a/library/library.iml +++ b/library/library.iml @@ -1,11 +1,16 @@ - + + + + + - - - - @@ -29,11 +29,13 @@ + + From f70b6b8a0cef02873119a27319d05446ff5f290a Mon Sep 17 00:00:00 2001 From: brstgt Date: Mon, 26 Jan 2015 17:09:35 +0100 Subject: [PATCH 5/7] Fix menus on samsung phones Integrate mopub SDK Fix some CL crashes --- library/library.iml | 1 + 1 file changed, 1 insertion(+) diff --git a/library/library.iml b/library/library.iml index c150a83f5..6361d1d91 100644 --- a/library/library.iml +++ b/library/library.iml @@ -9,6 +9,7 @@