Fixed bug. It is not possible to refresh folder when it is empty
authorjabarros <jabarros@solidgear.es>
Tue, 29 Jul 2014 13:04:06 +0000 (15:04 +0200)
committerjabarros <jabarros@solidgear.es>
Tue, 29 Jul 2014 13:04:06 +0000 (15:04 +0200)
res/layout/list_fragment.xml
src/com/owncloud/android/ui/fragment/ExtendedListFragment.java

index 95673e1..be13607 100644 (file)
         
     </android.support.v4.widget.SwipeRefreshLayout>
 
-    <TextView
-       android:id="@+id/empty_list_view"
+    <android.support.v4.widget.SwipeRefreshLayout
+        android:id="@+id/swipe_refresh_files_emptyView"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
-        android:gravity="center_vertical|center_horizontal"
-        android:text="@string/empty"
-        android:visibility="gone"
-       />
+        android:visibility="gone" >
+
+        <ScrollView
+            android:layout_width="match_parent"
+            android:layout_height="match_parent" >
 
+            <LinearLayout
+                       android:id="@+id/linearLayout1"
+                       android:layout_width="match_parent"
+                       android:layout_height="wrap_content"
+                       android:orientation="vertical"
+                       android:layout_gravity="center"
+                       android:gravity="center">
+
+                   <TextView
+                               android:id="@+id/empty_list_view"
+                               android:layout_width="match_parent"
+                               android:layout_height="wrap_content"
+                               android:gravity="center_vertical|center_horizontal"
+                               android:text="@string/empty"
+                               android:visibility="visible" />
+
+            </LinearLayout>
+        </ScrollView>
+    </android.support.v4.widget.SwipeRefreshLayout>
 </FrameLayout>
index 917f7a5..7c2f628 100644 (file)
@@ -46,6 +46,7 @@ public class ExtendedListFragment extends SherlockFragment implements OnItemClic
     protected ExtendedListView mList;
     
     private SwipeRefreshLayout mRefreshLayout;
+    private SwipeRefreshLayout mRefreshEmptyLayout;
     private TextView mEmptyListMessage;
     
     public void setListAdapter(ListAdapter listAdapter) {
@@ -67,7 +68,7 @@ public class ExtendedListFragment extends SherlockFragment implements OnItemClic
         mEmptyListMessage = (TextView) v.findViewById(R.id.empty_list_view);
         mList = (ExtendedListView)(v.findViewById(R.id.list_root));
         mList.setOnItemClickListener(this);
-        mList.setEmptyView(mEmptyListMessage); // looks like it's not a cool idea
+
         mList.setDivider(getResources().getDrawable(R.drawable.uploader_list_separator));
         mList.setDividerHeight(1);
 
@@ -78,12 +79,13 @@ public class ExtendedListFragment extends SherlockFragment implements OnItemClic
         
         // Pull down refresh
         mRefreshLayout = (SwipeRefreshLayout) v.findViewById(R.id.swipe_refresh_files);
-        // Colors in animations: background
-        mRefreshLayout.setColorScheme(R.color.background_color, R.color.background_color, 
-                 R.color.background_color, R.color.background_color);
+        mRefreshEmptyLayout = (SwipeRefreshLayout) v.findViewById(R.id.swipe_refresh_files_emptyView);
         
-        mRefreshLayout.setOnRefreshListener(this);
+        onCreateSwipeToRefresh(mRefreshLayout);
+        onCreateSwipeToRefresh(mRefreshEmptyLayout);
         
+        mList.setEmptyView(mRefreshEmptyLayout);
+
         return v;
     }
 
@@ -131,8 +133,9 @@ public class ExtendedListFragment extends SherlockFragment implements OnItemClic
 
     @Override
     public void onRefresh() {
-        // to be @overriden  
+        // to be @overriden
         mRefreshLayout.setRefreshing(false);
+        mRefreshEmptyLayout.setRefreshing(false);
     }
 
     /**
@@ -181,5 +184,13 @@ public class ExtendedListFragment extends SherlockFragment implements OnItemClic
     public String getEmptyViewText() {
         return (mEmptyListMessage != null) ? mEmptyListMessage.getText().toString() : "";
     }
-    
+
+    private void onCreateSwipeToRefresh(SwipeRefreshLayout refreshLayout) {
+        // Colors in animations: background
+        refreshLayout.setColorScheme(R.color.background_color, R.color.background_color, R.color.background_color,
+                R.color.background_color);
+
+        refreshLayout.setOnRefreshListener(this);
+    }
+
 }