Browse Source

Fix a few issues with conversation info

Signed-off-by: Mario Danic <mario@lovelyhq.com>
Mario Danic 6 years ago
parent
commit
e9b500f5c1

+ 9 - 4
app/src/main/java/com/nextcloud/talk/controllers/ConversationInfoController.java

@@ -151,8 +151,16 @@ public class ConversationInfoController extends BaseController {
     protected void onViewBound(@NonNull View view) {
         super.onViewBound(view);
         materialPreferenceScreen.setStorageModule(new DatabaseStorageModule(conversationUser, conversationToken));
-        if (conversation == null) {
+        if (adapter == null) {
             fetchRoomInfo();
+        } else {
+            loadConversationAvatar();
+            materialPreferenceScreen.setVisibility(View.VISIBLE);
+            nameCategoryView.setVisibility(View.VISIBLE);
+            participantsListCategory.setVisibility(View.VISIBLE);
+            progressBar.setVisibility(View.GONE);
+            conversationDisplayName.setText(conversation.getDisplayName());
+            setupAdapter();
         }
     }
 
@@ -161,13 +169,10 @@ public class ConversationInfoController extends BaseController {
             adapter = new FlexibleAdapter<>(recyclerViewItems, getActivity(), true);
         }
 
-
-
         SmoothScrollLinearLayoutManager layoutManager =
                 new SmoothScrollLinearLayoutManager(getActivity());
         recyclerView.setLayoutManager(layoutManager);
         recyclerView.setHasFixedSize(true);
-
         recyclerView.setAdapter(adapter);
     }
 

+ 58 - 54
app/src/main/res/layout/controller_conversation_info.xml

@@ -18,7 +18,7 @@
   ~ along with this program.  If not, see <http://www.gnu.org/licenses/>.
   -->
 
-<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:apc="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
@@ -26,70 +26,74 @@
     android:background="@color/nc_white_color"
     android:orientation="vertical">
 
-    <ProgressBar
-        android:id="@+id/progressBar"
-        android:layout_width="@dimen/item_height"
-        android:layout_height="@dimen/item_height"
-        android:layout_centerInParent="true"
-        android:layout_marginStart="@dimen/activity_horizontal_margin"
-        android:layout_marginLeft="@dimen/activity_horizontal_margin"
-        android:layout_marginEnd="@dimen/activity_horizontal_margin"
-        android:layout_marginRight="@dimen/activity_horizontal_margin"
-        android:indeterminate="true"
-        android:indeterminateTint="@color/colorPrimary"
-        android:indeterminateTintMode="src_in" />
-
-    <com.yarolegovich.mp.MaterialPreferenceCategory
-        android:id="@+id/conversation_info_name"
+    <RelativeLayout
         android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:animateLayoutChanges="true"
-        android:visibility="gone">
+        android:layout_height="wrap_content">
+
+        <ProgressBar
+            android:id="@+id/progressBar"
+            android:layout_width="@dimen/item_height"
+            android:layout_height="@dimen/item_height"
+            android:layout_centerInParent="true"
+            android:layout_marginStart="@dimen/activity_horizontal_margin"
+            android:layout_marginLeft="@dimen/activity_horizontal_margin"
+            android:layout_marginEnd="@dimen/activity_horizontal_margin"
+            android:layout_marginRight="@dimen/activity_horizontal_margin"
+            android:indeterminate="true"
+            android:indeterminateTint="@color/colorPrimary"
+            android:indeterminateTintMode="src_in" />
 
-        <RelativeLayout
+        <com.yarolegovich.mp.MaterialPreferenceCategory
+            android:id="@+id/conversation_info_name"
             android:layout_width="match_parent"
-            android:layout_height="wrap_content">
+            android:layout_height="wrap_content"
+            android:animateLayoutChanges="true"
+            android:visibility="gone">
 
-            <ImageView
-                android:id="@+id/avatar_image"
-                android:layout_width="@dimen/avatar_size_big"
-                android:layout_height="@dimen/avatar_size_big"
-                android:layout_centerHorizontal="true" />
+            <RelativeLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content">
 
-            <TextView
-                android:id="@+id/display_name_text"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:layout_below="@id/avatar_image"
-                android:layout_centerHorizontal="true"
-                android:layout_marginTop="@dimen/margin_between_elements" />
+                <ImageView
+                    android:id="@+id/avatar_image"
+                    android:layout_width="@dimen/avatar_size_big"
+                    android:layout_height="@dimen/avatar_size_big"
+                    android:layout_centerHorizontal="true" />
 
-        </RelativeLayout>
-    </com.yarolegovich.mp.MaterialPreferenceCategory>
+                <TextView
+                    android:id="@+id/display_name_text"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_below="@id/avatar_image"
+                    android:layout_centerHorizontal="true"
+                    android:layout_marginTop="@dimen/margin_between_elements" />
 
-    <include
-        layout="@layout/notification_settings_item"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_below="@id/conversation_info_name"
-        android:visibility="gone" />
+            </RelativeLayout>
+        </com.yarolegovich.mp.MaterialPreferenceCategory>
 
-    <com.yarolegovich.mp.MaterialPreferenceCategory
-        android:id="@+id/participants_list_category"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_below="@+id/notification_settings"
-        android:visibility="gone"
-        apc:mpc_title="@string/nc_participants"
-        apc:mpc_title_color="@color/colorPrimary">
+        <include
+            layout="@layout/notification_settings_item"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_below="@id/conversation_info_name"
+            android:visibility="gone" />
 
-        <androidx.recyclerview.widget.RecyclerView
-            android:id="@+id/recycler_view"
+        <com.yarolegovich.mp.MaterialPreferenceCategory
+            android:id="@+id/participants_list_category"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            tools:listitem="@layout/rv_item_contact"></androidx.recyclerview.widget.RecyclerView>
+            android:layout_below="@+id/notification_settings"
+            android:visibility="gone"
+            apc:mpc_title="@string/nc_participants"
+            apc:mpc_title_color="@color/colorPrimary">
 
-    </com.yarolegovich.mp.MaterialPreferenceCategory>
+            <androidx.recyclerview.widget.RecyclerView
+                android:id="@+id/recycler_view"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                tools:listitem="@layout/rv_item_contact"></androidx.recyclerview.widget.RecyclerView>
 
+        </com.yarolegovich.mp.MaterialPreferenceCategory>
 
-</RelativeLayout>
+    </RelativeLayout>
+</ScrollView>