Merge branch 'mkirk/crashing-fingerprint'

pull/1/head
Michael Kirk 8 years ago
commit afcb08c105

@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="11762" systemVersion="15G1217" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" colorMatched="YES" initialViewController="tuk-0x-yCb"> <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="12118" systemVersion="16E195" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" colorMatched="YES" initialViewController="tuk-0x-yCb">
<device id="retina4_7" orientation="portrait"> <device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/> <adaptation id="fullscreen"/>
</device> </device>
<dependencies> <dependencies>
<deployment identifier="iOS"/> <deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="11757"/> <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="12086"/>
<capability name="Aspect ratio constraints" minToolsVersion="5.1"/> <capability name="Aspect ratio constraints" minToolsVersion="5.1"/>
<capability name="Constraints to layout margins" minToolsVersion="6.0"/> <capability name="Constraints to layout margins" minToolsVersion="6.0"/>
<capability name="Constraints with non-1.0 multipliers" minToolsVersion="5.1"/> <capability name="Constraints with non-1.0 multipliers" minToolsVersion="5.1"/>
@ -120,9 +120,6 @@
</navigationItem> </navigationItem>
<connections> <connections>
<outlet property="inputToolbar" destination="BdJ-vY-dHA" id="EfK-zI-nSM"/> <outlet property="inputToolbar" destination="BdJ-vY-dHA" id="EfK-zI-nSM"/>
<segue destination="4oU-Rv-yJi" kind="push" identifier="OWSMessagesViewControllerSeguePushConversationSettings" id="vOd-aS-6Wx"/>
<segue destination="urv-62-RsD" kind="modal" identifier="fingerprintSegue" id="tfr-ZV-qWs"/>
<segue destination="Tyf-mN-gzf" kind="modal" identifier="initiateCallSegue" modalTransitionStyle="crossDissolve" id="I6y-pT-nEd"/>
</connections> </connections>
</viewController> </viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="yXZ-iE-5va" userLabel="First Responder" sceneMemberID="firstResponder"/> <placeholder placeholderIdentifier="IBFirstResponder" id="yXZ-iE-5va" userLabel="First Responder" sceneMemberID="firstResponder"/>
@ -1461,8 +1458,6 @@
<simulatedScreenMetrics key="destination" type="retina4_7.fullscreen"/> <simulatedScreenMetrics key="destination" type="retina4_7.fullscreen"/>
</simulatedMetricsContainer> </simulatedMetricsContainer>
<inferredMetricsTieBreakers> <inferredMetricsTieBreakers>
<segue reference="wgA-Oo-kKq"/> <segue reference="E8S-Yc-X7E"/>
<segue reference="D0d-4f-lcI"/>
<segue reference="G2B-Fr-Ezs"/>
</inferredMetricsTieBreakers> </inferredMetricsTieBreakers>
</document> </document>

@ -76,9 +76,6 @@
static NSTimeInterval const kTSMessageSentDateShowTimeInterval = 5 * 60; static NSTimeInterval const kTSMessageSentDateShowTimeInterval = 5 * 60;
static NSString *const OWSMessagesViewControllerSegueShowFingerprint = @"fingerprintSegue";
static NSString *const OWSMessagesViewControllerSeguePushConversationSettings = @"OWSMessagesViewControllerSeguePushConversationSettings";
NSString *const OWSMessagesViewControllerDidAppearNotification = @"OWSMessagesViewControllerDidAppear"; NSString *const OWSMessagesViewControllerDidAppearNotification = @"OWSMessagesViewControllerDidAppear";
typedef enum : NSUInteger { typedef enum : NSUInteger {
@ -819,7 +816,20 @@ typedef enum : NSUInteger {
OWSFingerprint *fingerprint = OWSFingerprint *fingerprint =
[builder fingerprintWithTheirSignalId:theirSignalId theirIdentityKey:theirIdentityKey]; [builder fingerprintWithTheirSignalId:theirSignalId theirIdentityKey:theirIdentityKey];
[self markAllMessagesAsRead]; [self markAllMessagesAsRead];
[self performSegueWithIdentifier:OWSMessagesViewControllerSegueShowFingerprint sender:fingerprint];
NSString *contactName = [self.contactsManager displayNameForPhoneIdentifier:theirSignalId];
UIViewController *viewController =
[[UIStoryboard main] instantiateViewControllerWithIdentifier:@"FingerprintViewController"];
if (![viewController isKindOfClass:[FingerprintViewController class]]) {
OWSAssert(NO);
DDLogError(@"%@ expecting fingerprint view controller, but got: %@", self.tag, viewController);
return;
}
FingerprintViewController *fingerprintViewController = (FingerprintViewController *)viewController;
[fingerprintViewController configureWithThread:self.thread fingerprint:fingerprint contactName:contactName];
[self presentViewController:fingerprintViewController animated:YES completion:nil];
} }
#pragma mark - Calls #pragma mark - Calls
@ -1329,8 +1339,8 @@ typedef enum : NSUInteger {
return; return;
} }
OWSConversationSettingsTableViewController *settingsVC = [[UIStoryboard storyboardWithName:AppDelegateStoryboardMain bundle:NULL] OWSConversationSettingsTableViewController *settingsVC =
instantiateViewControllerWithIdentifier:@"OWSConversationSettingsTableViewController"]; [[UIStoryboard main] instantiateViewControllerWithIdentifier:@"OWSConversationSettingsTableViewController"];
[settingsVC configureWithThread:self.thread]; [settingsVC configureWithThread:self.thread];
[self.navigationController pushViewController:settingsVC animated:YES]; [self.navigationController pushViewController:settingsVC animated:YES];
} }
@ -1846,30 +1856,6 @@ typedef enum : NSUInteger {
[self presentViewController:actionSheetController animated:YES completion:nil]; [self presentViewController:actionSheetController animated:YES completion:nil];
} }
#pragma mark - Navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:OWSMessagesViewControllerSegueShowFingerprint]) {
if (![segue.destinationViewController isKindOfClass:[FingerprintViewController class]]) {
DDLogError(@"%@ Expected Fingerprint VC but got: %@", self.tag, segue.destinationViewController);
return;
}
FingerprintViewController *vc = (FingerprintViewController *)segue.destinationViewController;
if (![sender isKindOfClass:[OWSFingerprint class]]) {
DDLogError(@"%@ Attempting to segue to fingerprint VC without a valid fingerprint: %@", self.tag, sender);
return;
}
OWSFingerprint *fingerprint = (OWSFingerprint *)sender;
NSString *contactName = [self.contactsManager displayNameForPhoneIdentifier:fingerprint.theirStableId];
[vc configureWithThread:self.thread fingerprint:fingerprint contactName:contactName];
} else {
DDLogDebug(@"%@ Received segue: %@", self.tag, segue.identifier);
}
}
#pragma mark - UIImagePickerController #pragma mark - UIImagePickerController
/* /*

Loading…
Cancel
Save