diff --git a/Signal/src/environment/Environment.h b/Signal/src/environment/Environment.h
index e1a5d37ee..3b72d72e2 100644
--- a/Signal/src/environment/Environment.h
+++ b/Signal/src/environment/Environment.h
@@ -87,5 +87,4 @@ andCurrentRegionCodeForPhoneNumbers:(NSString*)currentRegionCodeForPhoneNumbers
 + (void)messageIdentifier:(NSString*)identifier;
 + (void)groupModel:(GroupModel*)model;
 
-
 @end
diff --git a/Signal/src/textsecure/Messages/TSMessagesManager.m b/Signal/src/textsecure/Messages/TSMessagesManager.m
index 895013f29..c114deede 100644
--- a/Signal/src/textsecure/Messages/TSMessagesManager.m
+++ b/Signal/src/textsecure/Messages/TSMessagesManager.m
@@ -35,6 +35,7 @@
 
 #import "Environment.h"
 #import "PreferencesUtil.h"
+#import "ContactsManager.h"
 
 #import <CocoaLumberjack/DDLog.h>
 
@@ -255,10 +256,17 @@
                 [[[TSInfoMessage alloc] initWithTimestamp:timeStamp inThread:gThread messageType:TSInfoMessageTypeGroupUpdate customMessage:updateGroupInfo] saveWithTransaction:transaction];
             }
             else if(content.group.type==PushMessageContentGroupContextTypeQuit) {
-                NSString* updateGroupInfo = [NSString stringWithFormat:@"%@ has left group",message.source];
+                NSString *nameString = [[Environment.getCurrent contactsManager] nameStringForPhoneIdentifier:message.source];
+    
+                if (!nameString) {
+                    nameString = message.source;
+                }
+    
+                NSString* updateGroupInfo = [NSString stringWithFormat:@"%@ has left group",nameString];
                 NSMutableArray *newGroupMembers = [NSMutableArray arrayWithArray:gThread.groupModel.groupMemberIds];
                 [newGroupMembers removeObject:message.source];
                 gThread.groupModel.groupMemberIds = newGroupMembers;
+                
                 [gThread saveWithTransaction:transaction];
                 [[[TSInfoMessage alloc] initWithTimestamp:timeStamp inThread:gThread messageType:TSInfoMessageTypeGroupUpdate customMessage:updateGroupInfo] saveWithTransaction:transaction];
             }
diff --git a/Signal/src/view controllers/MessagesViewController.m b/Signal/src/view controllers/MessagesViewController.m
index 05fc4c127..071328cfd 100644
--- a/Signal/src/view controllers/MessagesViewController.m	
+++ b/Signal/src/view controllers/MessagesViewController.m	
@@ -110,7 +110,6 @@ typedef enum : NSUInteger {
 - (void)setupWithThread:(TSThread *)thread{
     self.thread = thread;
     isGroupConversation = [self.thread isKindOfClass:[TSGroupThread class]];
-   
 }
 
 - (void)viewDidLoad {
@@ -1027,7 +1026,6 @@ typedef enum : NSUInteger {
 
 }
 
-
 - (IBAction)unwindGroupUpdated:(UIStoryboardSegue *)segue{
     [self.inputToolbar.contentView.textView resignFirstResponder];
     NewGroupViewController *ngc = [segue sourceViewController];
diff --git a/Signal/src/view controllers/TSMessageAdapter.m b/Signal/src/view controllers/TSMessageAdapter.m
index 09ea9de6e..0be978e7d 100644
--- a/Signal/src/view controllers/TSMessageAdapter.m	
+++ b/Signal/src/view controllers/TSMessageAdapter.m	
@@ -79,9 +79,11 @@
             TSIncomingMessage *message = (TSIncomingMessage*)interaction;
             adapter.senderId   = message.authorId;
             adapter.senderDisplayName = message.authorId;
+            adapter.messageType       = TSIncomingMessageAdapter;
         } else {
             adapter.senderId   = ME_MESSAGE_IDENTIFIER;
             adapter.senderDisplayName = @"Me";
+            adapter.messageType = TSOutgoingMessageAdapter;
         }
     }