diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/chat/messages/MessageListFragment.kt b/app/src/main/java/de/kuschku/quasseldroid/ui/chat/messages/MessageListFragment.kt index b0b50ffb7e188646c767b600e0a3e97db4003fcd..3d836f317fe96c2bedf7c2bb18629564d3bae6e9 100644 --- a/app/src/main/java/de/kuschku/quasseldroid/ui/chat/messages/MessageListFragment.kt +++ b/app/src/main/java/de/kuschku/quasseldroid/ui/chat/messages/MessageListFragment.kt @@ -9,6 +9,7 @@ import android.content.ClipboardManager import android.content.Intent import android.os.Bundle import android.support.design.widget.FloatingActionButton +import android.support.v4.widget.SwipeRefreshLayout import android.support.v7.widget.LinearLayoutManager import android.support.v7.widget.RecyclerView import android.view.* @@ -38,6 +39,9 @@ class MessageListFragment : ServiceBoundFragment() { @BindView(R.id.scrollDown) lateinit var scrollDown: FloatingActionButton + @BindView(R.id.swipeRefreshLayout) + lateinit var swipeRefreshLayout: SwipeRefreshLayout + @Inject lateinit var appearanceSettings: AppearanceSettings @@ -176,6 +180,11 @@ class MessageListFragment : ServiceBoundFragment() { } } + swipeRefreshLayout.setColorSchemeColors(*senderColors) + swipeRefreshLayout.setOnRefreshListener { + loadMore() + } + var isScrolling = false messageList.addOnScrollListener( object : RecyclerView.OnScrollListener() { @@ -242,6 +251,8 @@ class MessageListFragment : ServiceBoundFragment() { if (first != null) { if (previousVisible == visible) { loadMore() + } else { + swipeRefreshLayout.isRefreshing = false } previousVisible = visible diff --git a/app/src/main/res/layout/fragment_messages.xml b/app/src/main/res/layout/fragment_messages.xml index 86ae1bcc52ac85d1f79cb8721aff7a4ecf60dcec..abb48fc544e1a1a76a64639d424ac20d261b1ccf 100644 --- a/app/src/main/res/layout/fragment_messages.xml +++ b/app/src/main/res/layout/fragment_messages.xml @@ -7,12 +7,19 @@ android:background="?attr/colorBackground" tools:showIn="@layout/activity_main"> - <android.support.v7.widget.RecyclerView - android:id="@+id/messages" + <android.support.v4.widget.SwipeRefreshLayout + android:id="@+id/swipeRefreshLayout" android:layout_width="match_parent" - android:layout_height="match_parent" - app:stackFromEnd="true" - tools:listitem="@layout/widget_chatmessage_plain" /> + android:layout_height="match_parent"> + + <android.support.v7.widget.RecyclerView + android:id="@+id/messages" + android:layout_width="match_parent" + android:layout_height="match_parent" + app:stackFromEnd="true" + tools:listitem="@layout/widget_chatmessage_plain" /> + + </android.support.v4.widget.SwipeRefreshLayout> <android.support.design.widget.FloatingActionButton android:id="@+id/scrollDown"