summaryrefslogtreecommitdiffstats
path: root/src/com/android/messaging/ui/conversation/ConversationFragment.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/messaging/ui/conversation/ConversationFragment.java')
-rw-r--r--src/com/android/messaging/ui/conversation/ConversationFragment.java30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/com/android/messaging/ui/conversation/ConversationFragment.java b/src/com/android/messaging/ui/conversation/ConversationFragment.java
index a6a191a..49fe6b4 100644
--- a/src/com/android/messaging/ui/conversation/ConversationFragment.java
+++ b/src/com/android/messaging/ui/conversation/ConversationFragment.java
@@ -101,6 +101,7 @@ import com.android.messaging.util.LogUtil;
import com.android.messaging.util.OsUtil;
import com.android.messaging.util.PhoneUtils;
import com.android.messaging.util.SafeAsyncTask;
+import com.android.messaging.util.SecureMessagingHelper;
import com.android.messaging.util.TextUtil;
import com.android.messaging.util.UiUtils;
import com.android.messaging.util.UriUtil;
@@ -163,6 +164,7 @@ public class ConversationFragment extends Fragment implements ConversationDataLi
private Parcelable mListState;
private ConversationFragmentHost mHost;
+ private SecureMessagingHelper mSecureMessagingHelper;
protected List<Integer> mFilterResults;
@@ -430,6 +432,28 @@ public class ConversationFragment extends Fragment implements ConversationDataLi
}
}
);
+ mSecureMessagingHelper = new SecureMessagingHelper(getActivity(),
+ new SecureMessagingHelper.SecurityMessagingCallback() {
+ @Override
+ public void onParticipantsSecurityUpdated() {
+ if (isResumed()) {
+ setMessageSecurity(mSecureMessagingHelper.isAllParticipantsSecured());
+ }
+ }
+
+ @Override
+ public ConversationParticipantsData getParticipantsData() {
+ if (mBinding.isBound()) {
+ return mBinding.getData().getParticipants();
+ } else {
+ return null;
+ }
+ }
+ });
+ }
+
+ private void setMessageSecurity(boolean isAllParticipantsSecured) {
+ mComposeMessageView.setMessageSecurity(isAllParticipantsSecured);
}
/**
@@ -1190,6 +1214,8 @@ public class ConversationFragment extends Fragment implements ConversationDataLi
public void onConversationParticipantDataLoaded(final ConversationData data) {
mBinding.ensureBound(data);
if (mBinding.getData().getParticipantsLoaded()) {
+ mSecureMessagingHelper.checkIfAllParticipantsSecuredAsync();
+
final boolean oneOnOne = mBinding.getData().getOtherParticipant() != null;
mAdapter.setOneOnOne(oneOnOne, true /* invalidate */);
@@ -1439,6 +1465,10 @@ public class ConversationFragment extends Fragment implements ConversationDataLi
return self == null ? ParticipantData.DEFAULT_SELF_SUB_ID : self.getSubId();
}
+ public SecureMessagingHelper getSecureMessagingHelper() {
+ return mSecureMessagingHelper;
+ }
+
@Override
public void invalidateActionBar() {
mHost.invalidateActionBar();