From 187fb1f789247542c5762d0df8dafb59ed14a9af Mon Sep 17 00:00:00 2001 From: Justin Swanson Date: Mon, 18 Aug 2014 20:23:42 -0500 Subject: [PATCH 1/2] Fixes layer not closing fully on keyboard close. --- Library/src/com/slidinglayer/SlidingLayer.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Library/src/com/slidinglayer/SlidingLayer.java b/Library/src/com/slidinglayer/SlidingLayer.java index 5867aa8..740546c 100644 --- a/Library/src/com/slidinglayer/SlidingLayer.java +++ b/Library/src/com/slidinglayer/SlidingLayer.java @@ -1082,7 +1082,7 @@ protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { protected void onSizeChanged(int w, int h, int oldw, int oldh) { super.onSizeChanged(w, h, oldw, oldh); // Make sure scroll position is set correctly. - if (w != oldw) { + if (h != oldh) { completeScroll(); int[] pos = getDestScrollPos(); scrollTo(pos[0], pos[1]); From 8fe06fefc5a97e6d306a3d73e2ffb435020f81d3 Mon Sep 17 00:00:00 2001 From: Justin Swanson Date: Mon, 18 Aug 2014 20:48:28 -0500 Subject: [PATCH 2/2] Position fix logic changes with mScreenSide. --- Library/src/com/slidinglayer/SlidingLayer.java | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/Library/src/com/slidinglayer/SlidingLayer.java b/Library/src/com/slidinglayer/SlidingLayer.java index 740546c..3b4b0a0 100644 --- a/Library/src/com/slidinglayer/SlidingLayer.java +++ b/Library/src/com/slidinglayer/SlidingLayer.java @@ -1082,7 +1082,20 @@ protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { protected void onSizeChanged(int w, int h, int oldw, int oldh) { super.onSizeChanged(w, h, oldw, oldh); // Make sure scroll position is set correctly. - if (h != oldh) { + boolean fix; + switch (mScreenSide) { + case STICK_TO_LEFT: + case STICK_TO_RIGHT: + fix = w != oldw; + break; + case STICK_TO_TOP: + case STICK_TO_BOTTOM: + fix = h != oldh; + break; + default: + fix = (w != oldw) || (h != oldh); + } + if (fix) { completeScroll(); int[] pos = getDestScrollPos(); scrollTo(pos[0], pos[1]);