summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2021-07-03 23:08:03 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2021-07-03 23:08:03 +0000
commit7d7322e8fbc6fb9c9813bfbca26cc64cd214280f (patch)
treeabe9c36eb63a4fcc07540fa5fff0550437b3c0e6
parent22687e815e0a3b24d4b58c90239ecb8e22f66f0a (diff)
parent044c352e183c6951f68fab9b442a7870c7f64c5e (diff)
downloadMessenger-android12-s2-release.tar.gz
Snap for 7521311 from 044c352e183c6951f68fab9b442a7870c7f64c5e to sc-releaseandroid-vts-12.0_r9android-vts-12.0_r8android-vts-12.0_r7android-vts-12.0_r6android-vts-12.0_r5android-vts-12.0_r4android-vts-12.0_r3android-vts-12.0_r2android-vts-12.0_r12android-vts-12.0_r11android-vts-12.0_r10android-vts-12.0_r1android-security-12.0.0_r61android-security-12.0.0_r60android-security-12.0.0_r59android-security-12.0.0_r58android-security-12.0.0_r57android-security-12.0.0_r56android-security-12.0.0_r55android-security-12.0.0_r54android-security-12.0.0_r53android-security-12.0.0_r52android-security-12.0.0_r51android-security-12.0.0_r50android-security-12.0.0_r49android-security-12.0.0_r48android-security-12.0.0_r47android-security-12.0.0_r46android-security-12.0.0_r45android-security-12.0.0_r44android-security-12.0.0_r43android-security-12.0.0_r42android-security-12.0.0_r41android-security-12.0.0_r40android-security-12.0.0_r39android-security-12.0.0_r38android-security-12.0.0_r37android-security-12.0.0_r36android-security-12.0.0_r35android-security-12.0.0_r34android-platform-12.0.0_r9android-platform-12.0.0_r8android-platform-12.0.0_r7android-platform-12.0.0_r6android-platform-12.0.0_r5android-platform-12.0.0_r4android-platform-12.0.0_r33android-platform-12.0.0_r32android-platform-12.0.0_r31android-platform-12.0.0_r30android-platform-12.0.0_r3android-platform-12.0.0_r29android-platform-12.0.0_r28android-platform-12.0.0_r27android-platform-12.0.0_r26android-platform-12.0.0_r25android-platform-12.0.0_r24android-platform-12.0.0_r23android-platform-12.0.0_r22android-platform-12.0.0_r21android-platform-12.0.0_r20android-platform-12.0.0_r2android-platform-12.0.0_r19android-platform-12.0.0_r18android-platform-12.0.0_r17android-platform-12.0.0_r16android-platform-12.0.0_r15android-platform-12.0.0_r14android-platform-12.0.0_r13android-platform-12.0.0_r12android-platform-12.0.0_r11android-platform-12.0.0_r10android-platform-12.0.0_r1android-cts-12.0_r9android-cts-12.0_r8android-cts-12.0_r7android-cts-12.0_r6android-cts-12.0_r5android-cts-12.0_r4android-cts-12.0_r3android-cts-12.0_r2android-cts-12.0_r12android-cts-12.0_r11android-cts-12.0_r10android-cts-12.0_r1android-12.0.0_r9android-12.0.0_r8android-12.0.0_r34android-12.0.0_r33android-12.0.0_r31android-12.0.0_r30android-12.0.0_r3android-12.0.0_r25android-12.0.0_r2android-12.0.0_r11android-12.0.0_r10android-12.0.0_r1android12-tests-releaseandroid12-security-releaseandroid12-s5-releaseandroid12-s4-releaseandroid12-s3-releaseandroid12-s2-releaseandroid12-s1-releaseandroid12-releaseandroid12-platform-release
Change-Id: Ie4e0b24b7f9c8f64e215629c9ed61578b9856f56
-rw-r--r--src/com/android/car/messenger/core/interfaces/DataModel.java6
-rw-r--r--src/com/android/car/messenger/core/ui/launcher/MessageLauncherActivity.java8
-rw-r--r--src/com/android/car/messenger/impl/datamodels/TelephonyDataModel.java5
-rw-r--r--src/com/android/car/messenger/impl/datamodels/UserAccountLiveData.java10
4 files changed, 29 insertions, 0 deletions
diff --git a/src/com/android/car/messenger/core/interfaces/DataModel.java b/src/com/android/car/messenger/core/interfaces/DataModel.java
index 911b2a0..a2bc91b 100644
--- a/src/com/android/car/messenger/core/interfaces/DataModel.java
+++ b/src/com/android/car/messenger/core/interfaces/DataModel.java
@@ -42,6 +42,12 @@ public interface DataModel {
LiveData<Collection<UserAccount>> getAccounts();
/**
+ * Call this to reload user account live data. This is useful when resuming an activity, to
+ * ensure no account changes was missed.
+ */
+ void refreshUserAccounts();
+
+ /**
* Get collection of conversations for the given account.
*
* @param userAccount The account to which data is being queried. This could be the subscription
diff --git a/src/com/android/car/messenger/core/ui/launcher/MessageLauncherActivity.java b/src/com/android/car/messenger/core/ui/launcher/MessageLauncherActivity.java
index 248ac29..ddd227c 100644
--- a/src/com/android/car/messenger/core/ui/launcher/MessageLauncherActivity.java
+++ b/src/com/android/car/messenger/core/ui/launcher/MessageLauncherActivity.java
@@ -23,6 +23,7 @@ import androidx.fragment.app.FragmentActivity;
import androidx.annotation.NonNull;
+import com.android.car.messenger.core.interfaces.AppFactory;
import com.android.car.messenger.core.models.UserAccount;
import com.android.car.messenger.core.ui.conversationlist.ConversationListFragment;
import com.android.car.messenger.core.util.L;
@@ -71,6 +72,13 @@ public class MessageLauncherActivity extends FragmentActivity implements InsetsC
pushContentFragment(fragment, fragmentTag);
}
+ @Override
+ protected void onResume() {
+ super.onResume();
+ L.d("On Resume of Message Activity.");
+ AppFactory.get().getDataModel().refreshUserAccounts();
+ }
+
private void pushContentFragment(
@NonNull Fragment topContentFragment, @NonNull String fragmentTag) {
getSupportFragmentManager()
diff --git a/src/com/android/car/messenger/impl/datamodels/TelephonyDataModel.java b/src/com/android/car/messenger/impl/datamodels/TelephonyDataModel.java
index e3b25f8..a1816e2 100644
--- a/src/com/android/car/messenger/impl/datamodels/TelephonyDataModel.java
+++ b/src/com/android/car/messenger/impl/datamodels/TelephonyDataModel.java
@@ -51,6 +51,11 @@ public class TelephonyDataModel implements DataModel {
UserAccountLiveData.getInstance(), UserAccountChangeList::getAccounts);
}
+ @Override
+ public void refreshUserAccounts() {
+ UserAccountLiveData.getInstance().refresh();
+ }
+
@NonNull
@Override
public LiveData<Collection<Conversation>> getConversations(@NonNull UserAccount userAccount) {
diff --git a/src/com/android/car/messenger/impl/datamodels/UserAccountLiveData.java b/src/com/android/car/messenger/impl/datamodels/UserAccountLiveData.java
index 8defc5f..1a95a2f 100644
--- a/src/com/android/car/messenger/impl/datamodels/UserAccountLiveData.java
+++ b/src/com/android/car/messenger/impl/datamodels/UserAccountLiveData.java
@@ -79,6 +79,16 @@ public class UserAccountLiveData extends LiveData<UserAccountChangeList> {
loadValue();
}
+ /**
+ * Refresh the user accounts. Updates listeners if a change is found. Useful to call when
+ * something occurs that indicates a change in accounts, such as empty messages. This is useful
+ * as there are occasions when the subscription on change listener is not called after a
+ * subscription is deleted.
+ */
+ public void refresh() {
+ loadValue();
+ }
+
/** Gets the instance of {@link UserAccountLiveData} */
@NonNull
public static UserAccountLiveData getInstance() {