package com.example.todocloud.customcomponent;

import android.content.Context;
import android.support.v4.widget.SwipeRefreshLayout;
import android.util.AttributeSet;
import android.widget.ListView;

/**
 * Ha a gyerek komponens egy ListView, akkor ezt az egyedi komponenst használva megelőzhetők a
 * görgetési gondok. Több View komponens esetén, ahol pl. már ScrollView-t használunk, a
 * ScrollView segítségével oldható meg ugyan ez a probléma.
 */
public class ScrollableSwipeRefreshLayout extends SwipeRefreshLayout {

  public ScrollableSwipeRefreshLayout(Context context) {
    super(context);
  }

  public ScrollableSwipeRefreshLayout(Context context, AttributeSet attrs) {
    super(context, attrs);
  }

  @Override
  public boolean canChildScrollUp() {
    ListView listView = (ListView) this.findViewById(android.R.id.list);
    return listView.getChildCount() > 0 && listView.getChildAt(0).getTop() != 0;
  }

}

@@ -204,247 +204,240 @@
 %0A * 
-Ha a gyerek komponens egy ListView, akkor ezt az egyedi komponenst haszn%C3%A1lva megel%C5%91zhet%C5%91k a%0A * g%C3%B6rget%C3%A9si gondok. T%C3%B6bb V
+Provide proper scrolling function, if the child view of SwipeRefreshLayout is a ListView. In%0A * case, if we use more v
 iew 
-k
+c
 omponen
+t
 s 
-eset%C3%A9n, ahol pl. m%C3%A1r ScrollView-t haszn%C3%A1lunk, a
+in a ScrollView, this class won't help, we can fix
 %0A * 
-S
+s
 croll
-View seg%C3%ADts%C3%A9g%C3%A9vel oldhat%C3%B3 meg ugyan ez a probl%C3%A9ma
+ing behavior with the ScrollView itself
 .%0A *
@@ -832,83 +832,146 @@
     
-return listView.getChildCount() %3E 0 && listView.getChildAt(0).getTop() != 0
+boolean isListViewScrolledToTop = listView.getChildAt(0).getTop() != 0;%0A    return listView.getChildCount() %3E 0 && isListViewScrolledToTop
 ;%0A  

Simplify ScrollableSwipeRefreshLayout class