summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoman Birg <roman@cyngn.com>2016-06-07 09:06:53 -0700
committerRicardo Cerqueira <ricardo@cyngn.com>2016-06-08 15:37:51 +0100
commit0ab00e92c3ec3ce18da4cac89dfec5fd14536692 (patch)
tree6b786d3cc5a00cc3b09b52b58bc0833f4b090ada
parent6c547f79f3529ceb4cc9bb541fea8c742af04efd (diff)
downloadandroid_packages_apps_Messaging-0ab00e92c3ec3ce18da4cac89dfec5fd14536692.tar.gz
android_packages_apps_Messaging-0ab00e92c3ec3ce18da4cac89dfec5fd14536692.tar.bz2
android_packages_apps_Messaging-0ab00e92c3ec3ce18da4cac89dfec5fd14536692.zip
Messaging: fix multi participant "always-ask" MSIM flow
Ticket: CYNGNOS-3013 Change-Id: Ia910253c65869964e5dbd82ec8863df2c0e05e6b Signed-off-by: Roman Birg <roman@cyngn.com>
-rw-r--r--src/com/android/messaging/ui/conversation/ComposeMessageView.java35
-rw-r--r--src/com/android/messaging/ui/conversation/ConversationFragment.java3
-rw-r--r--src/com/android/messaging/util/PhoneUtils.java2
3 files changed, 21 insertions, 19 deletions
diff --git a/src/com/android/messaging/ui/conversation/ComposeMessageView.java b/src/com/android/messaging/ui/conversation/ComposeMessageView.java
index 20d1564..771c1f7 100644
--- a/src/com/android/messaging/ui/conversation/ComposeMessageView.java
+++ b/src/com/android/messaging/ui/conversation/ComposeMessageView.java
@@ -339,18 +339,7 @@ public class ComposeMessageView extends LinearLayout
mSendButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(final View clickView) {
-
- PhoneUtils.setOverrideSendingSubId(ParticipantData.DEFAULT_SELF_SUB_ID);
- if (isSMSPromptEnabled()) {
- showSimSelector((Activity)mOriginalContext, new OnSimSelectedCallback() {
- @Override
- public void onSimSelected(int subId) {
- sendMessageWithSubId(subId);
- }
- });
- } else {
- sendMessageInternal(true /* checkMessageSize */);
- }
+ promptAndSendWithSubId(true);
}
});
mSendButton.setOnLongClickListener(new OnLongClickListener() {
@@ -449,7 +438,7 @@ public class ComposeMessageView extends LinearLayout
@Override // TextView.OnEditorActionListener.onEditorAction
public boolean onEditorAction(final TextView view, final int actionId, final KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_SEND) {
- sendMessageInternal(true /* checkMessageSize */);
+ promptAndSendWithSubId(true /* checkMessageSize */);
return true;
}
return false;
@@ -538,7 +527,7 @@ public class ComposeMessageView extends LinearLayout
new Runnable() {
@Override
public void run() {
- sendMessageInternal(checkMessageSize);
+ promptAndSendWithSubId(checkMessageSize);
}
});
@@ -712,9 +701,19 @@ public class ComposeMessageView extends LinearLayout
mBinding.getData().getSelfId(), false /* excludeDefault */);
}
- private void sendMessageWithSubId(int subId) {
- PhoneUtils.setOverrideSendingSubId(subId);
- sendMessageInternal(true /* checkMessageSize */);
+ private void promptAndSendWithSubId(final boolean checkMessageSize) {
+ PhoneUtils.setOverrideSendingSubId(ParticipantData.DEFAULT_SELF_SUB_ID);
+ if (isSMSPromptEnabled()) {
+ showSimSelector((Activity)mOriginalContext, new OnSimSelectedCallback() {
+ @Override
+ public void onSimSelected(int subId) {
+ PhoneUtils.setOverrideSendingSubId(subId);
+ sendMessageInternal(checkMessageSize);
+ }
+ });
+ } else {
+ sendMessageInternal(checkMessageSize /* checkMessageSize */);
+ }
}
private boolean isDataLoadedForMessageSend() {
@@ -1026,7 +1025,7 @@ public class ComposeMessageView extends LinearLayout
}
public void sendMessageIgnoreMessageSizeLimit() {
- sendMessageInternal(false /* checkMessageSize */);
+ promptAndSendWithSubId(false /* checkMessageSize */);
}
public void onAttachmentPreviewLongClicked() {
diff --git a/src/com/android/messaging/ui/conversation/ConversationFragment.java b/src/com/android/messaging/ui/conversation/ConversationFragment.java
index df93291..448d709 100644
--- a/src/com/android/messaging/ui/conversation/ConversationFragment.java
+++ b/src/com/android/messaging/ui/conversation/ConversationFragment.java
@@ -1500,6 +1500,9 @@ public class ConversationFragment extends Fragment implements ConversationDataLi
@Override
public int getConversationSelfSubId() {
+ if (PhoneUtils.getOverrideSendingSubId() != ParticipantData.DEFAULT_SELF_SUB_ID) {
+ return PhoneUtils.getOverrideSendingSubId();
+ }
final String selfParticipantId = mComposeMessageView.getConversationSelfId();
final ParticipantData self = mBinding.getData().getSelfParticipantById(selfParticipantId);
// If the self id or the self participant data hasn't been loaded yet, fallback to
diff --git a/src/com/android/messaging/util/PhoneUtils.java b/src/com/android/messaging/util/PhoneUtils.java
index 2ba735b..dfbf924 100644
--- a/src/com/android/messaging/util/PhoneUtils.java
+++ b/src/com/android/messaging/util/PhoneUtils.java
@@ -75,7 +75,7 @@ public abstract class PhoneUtils {
private static final ArrayMap<String, ArrayMap<String, String>> sCanonicalPhoneNumberCache =
new ArrayMap<>();
- public static int sOverrideSendingSubId = -1;
+ public static int sOverrideSendingSubId = ParticipantData.DEFAULT_SELF_SUB_ID;
public static int getOverrideSendingSubId() {
return sOverrideSendingSubId;