Fix a few issues with conversation info

Signed-off-by: Mario Danic <mario@lovelyhq.com>
This commit is contained in:
Mario Danic 2018-11-23 23:01:39 +01:00
parent 811769c2ab
commit e9b500f5c1
2 changed files with 73 additions and 64 deletions

View File

@ -151,8 +151,16 @@ public class ConversationInfoController extends BaseController {
protected void onViewBound(@NonNull View view) { protected void onViewBound(@NonNull View view) {
super.onViewBound(view); super.onViewBound(view);
materialPreferenceScreen.setStorageModule(new DatabaseStorageModule(conversationUser, conversationToken)); materialPreferenceScreen.setStorageModule(new DatabaseStorageModule(conversationUser, conversationToken));
if (conversation == null) { if (adapter == null) {
fetchRoomInfo(); 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); adapter = new FlexibleAdapter<>(recyclerViewItems, getActivity(), true);
} }
SmoothScrollLinearLayoutManager layoutManager = SmoothScrollLinearLayoutManager layoutManager =
new SmoothScrollLinearLayoutManager(getActivity()); new SmoothScrollLinearLayoutManager(getActivity());
recyclerView.setLayoutManager(layoutManager); recyclerView.setLayoutManager(layoutManager);
recyclerView.setHasFixedSize(true); recyclerView.setHasFixedSize(true);
recyclerView.setAdapter(adapter); recyclerView.setAdapter(adapter);
} }

View File

@ -18,7 +18,7 @@
~ along with this program. If not, see <http://www.gnu.org/licenses/>. ~ 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:apc="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
@ -26,70 +26,74 @@
android:background="@color/nc_white_color" android:background="@color/nc_white_color"
android:orientation="vertical"> android:orientation="vertical">
<ProgressBar <RelativeLayout
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"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content">
android:animateLayoutChanges="true"
android:visibility="gone">
<RelativeLayout <ProgressBar
android:layout_width="match_parent" android:id="@+id/progressBar"
android:layout_height="wrap_content"> 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" />
<ImageView <com.yarolegovich.mp.MaterialPreferenceCategory
android:id="@+id/avatar_image" android:id="@+id/conversation_info_name"
android:layout_width="@dimen/avatar_size_big"
android:layout_height="@dimen/avatar_size_big"
android:layout_centerHorizontal="true" />
<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" />
</RelativeLayout>
</com.yarolegovich.mp.MaterialPreferenceCategory>
<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" />
<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">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
tools:listitem="@layout/rv_item_contact"></androidx.recyclerview.widget.RecyclerView> android:animateLayoutChanges="true"
android:visibility="gone">
</com.yarolegovich.mp.MaterialPreferenceCategory> <RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<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> <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" />
</RelativeLayout>
</com.yarolegovich.mp.MaterialPreferenceCategory>
<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" />
<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">
<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>
</ScrollView>