Merge "Message details: Show only one address per line"
This commit is contained in:
commit
978e75ee90
|
@ -796,10 +796,12 @@ public abstract class MessageViewFragmentBase extends Fragment implements View.O
|
|||
}
|
||||
String subject = mMessage.mSubject;
|
||||
String date = formatDate(mMessage.mTimeStamp, true);
|
||||
String from = Address.toString(Address.unpack(mMessage.mFrom));
|
||||
String to = Address.toString(Address.unpack(mMessage.mTo));
|
||||
String cc = Address.toString(Address.unpack(mMessage.mCc));
|
||||
String bcc = Address.toString(Address.unpack(mMessage.mBcc));
|
||||
|
||||
final String SEPARATOR = "\n";
|
||||
String from = Address.toString(Address.unpack(mMessage.mFrom), SEPARATOR);
|
||||
String to = Address.toString(Address.unpack(mMessage.mTo), SEPARATOR);
|
||||
String cc = Address.toString(Address.unpack(mMessage.mCc), SEPARATOR);
|
||||
String bcc = Address.toString(Address.unpack(mMessage.mBcc), SEPARATOR);
|
||||
MessageViewMessageDetailsDialog dialog = MessageViewMessageDetailsDialog.newInstance(
|
||||
getActivity(), subject, date, from, to, cc, bcc);
|
||||
dialog.show(getActivity().getFragmentManager(), null);
|
||||
|
|
|
@ -39,7 +39,6 @@ public class MessageViewMessageDetailsDialog extends DialogFragment {
|
|||
private static final String BUNDLE_TO = "to";
|
||||
private static final String BUNDLE_CC = "cc";
|
||||
private static final String BUNDLE_BCC = "bcc";
|
||||
private static final String TextView = null;
|
||||
|
||||
public static MessageViewMessageDetailsDialog newInstance(Activity parent, String subject,
|
||||
String date, String from, String to, String cc, String bcc) {
|
||||
|
|
|
@ -218,6 +218,17 @@ public class Address {
|
|||
* @return Human readable comma-delimited address string.
|
||||
*/
|
||||
public static String toString(Address[] addresses) {
|
||||
return toString(addresses, ",");
|
||||
}
|
||||
|
||||
/**
|
||||
* Get human readable address strings joined with the specified separator.
|
||||
*
|
||||
* @param addresses Address array
|
||||
* @param separator Separator
|
||||
* @return Human readable comma-delimited address string.
|
||||
*/
|
||||
public static String toString(Address[] addresses, String separator) {
|
||||
if (addresses == null || addresses.length == 0) {
|
||||
return null;
|
||||
}
|
||||
|
@ -226,7 +237,7 @@ public class Address {
|
|||
}
|
||||
StringBuffer sb = new StringBuffer(addresses[0].toString());
|
||||
for (int i = 1; i < addresses.length; i++) {
|
||||
sb.append(',');
|
||||
sb.append(separator);
|
||||
sb.append(addresses[i].toString());
|
||||
}
|
||||
return sb.toString();
|
||||
|
|
|
@ -368,12 +368,20 @@ public class AddressUnitTests extends AndroidTestCase {
|
|||
* Test various combinations of the toString (multi) method
|
||||
*/
|
||||
public void testToStringMulti() {
|
||||
Address[] addresses = Address.parse(MULTI_ADDRESSES_LIST);
|
||||
final Address[] address = Address.parse("noname1@dom1.com");
|
||||
final Address[] addresses = Address.parse(MULTI_ADDRESSES_LIST);
|
||||
|
||||
assertEquals("multi addrsses count", MULTI_ADDRESSES_COUNT, addresses.length);
|
||||
|
||||
{
|
||||
String line = Address.toString(address);
|
||||
assertEquals("toString multi-1",
|
||||
"noname1@dom1.com",
|
||||
line);
|
||||
}
|
||||
{
|
||||
String line = Address.toString(addresses);
|
||||
assertEquals("toString multi",
|
||||
assertEquals("toString multi-n",
|
||||
"noname1@dom1.com,"
|
||||
+ "noname2@dom2.com,"
|
||||
+ "simple name <address3@dom3.org>,"
|
||||
|
@ -387,6 +395,31 @@ public class AddressUnitTests extends AndroidTestCase {
|
|||
line);
|
||||
}
|
||||
|
||||
// With custom separator
|
||||
{
|
||||
String line = Address.toString(address, "$");
|
||||
assertEquals("toString multi-1",
|
||||
"noname1@dom1.com",
|
||||
line);
|
||||
}
|
||||
|
||||
{
|
||||
String line = Address.toString(addresses, "$");
|
||||
assertEquals("toString multi-n",
|
||||
"noname1@dom1.com$"
|
||||
+ "noname2@dom2.com$"
|
||||
+ "simple name <address3@dom3.org>$"
|
||||
+ "\"name,4\" <address4@dom4.org>$"
|
||||
+ "\"big \"G\"\" <bigG@dom5.net>$"
|
||||
+ "\u65E5\u672C\u8A9E <address6@co.jp>$"
|
||||
+ "\u65E5\u672C\u8A9E <address7@co.jp>$"
|
||||
+ "\uD834\uDF01\uD834\uDF46 <address8@ne.jp>$"
|
||||
+ "\uD834\uDF01\uD834\uDF46 <address9@ne.jp>$"
|
||||
+ "noname@dom.com",
|
||||
line);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Test parsing for quoted and encoded name part.
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue