Fix jank on conversation screen

Onboarding should only appear if needed

Test: manual
Fixes: 156756305
Change-Id: I663677772806db9c80979cdac103c9fa657ee7e2
This commit is contained in:
Julia Reynolds
2020-05-15 13:58:51 -04:00
parent cd237ccf9b
commit f0c3245639
2 changed files with 8 additions and 2 deletions

View File

@@ -15,10 +15,12 @@
-->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/onboarding"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:gravity="center"
android:visibility="gone"
android:orientation="vertical">
<ImageView

View File

@@ -19,13 +19,14 @@ package com.android.settings.notification.app;
import android.content.Context;
import android.os.AsyncTask;
import android.service.notification.ConversationChannelWrapper;
import android.view.View;
import androidx.preference.Preference;
import androidx.preference.PreferenceCategory;
import com.android.settings.R;
import com.android.settings.notification.NotificationBackend;
import com.android.settingslib.widget.LayoutPreference;
import java.util.Collections;
import java.util.List;
public class NoConversationsPreferenceController extends ConversationListPreferenceController {
@@ -56,6 +57,7 @@ public class NoConversationsPreferenceController extends ConversationListPrefere
@Override
public void updateState(Preference preference) {
LayoutPreference pref = (LayoutPreference) preference;
// Load conversations
new AsyncTask<Void, Void, Void>() {
@Override
@@ -69,6 +71,8 @@ public class NoConversationsPreferenceController extends ConversationListPrefere
if (mContext == null) {
return;
}
pref.findViewById(R.id.onboarding).setVisibility(mConversations.size() == 0
? View.VISIBLE : View.GONE);
preference.setVisible(mConversations.size() == 0);
}
}.execute();