From 3d6b8e2bb5742ff00aaef2484b8702f1e9e9ac6e Mon Sep 17 00:00:00 2001 From: Michael Kirk Date: Sun, 22 Jul 2018 23:19:48 -0700 Subject: [PATCH 1/2] hide navbar blur layer in attachment approval, which has a clear navbar --- SignalMessaging/Views/OWSNavigationBar.swift | 15 +++++++++++++++ .../AttachmentApprovalViewController.swift | 10 +++++----- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/SignalMessaging/Views/OWSNavigationBar.swift b/SignalMessaging/Views/OWSNavigationBar.swift index cab3b561c..04014a96d 100644 --- a/SignalMessaging/Views/OWSNavigationBar.swift +++ b/SignalMessaging/Views/OWSNavigationBar.swift @@ -40,6 +40,7 @@ public class OWSNavigationBar: UINavigationBar { @objc public static let backgroundBlurMutingFactor: CGFloat = 0.5 + var blurEffectView: UIView? override init(frame: CGRect) { super.init(frame: frame) @@ -53,6 +54,7 @@ public class OWSNavigationBar: UINavigationBar { let blurEffect = UIBlurEffect(style: .light) let blurEffectView = UIVisualEffectView(effect: blurEffect) blurEffectView.isUserInteractionEnabled = false + self.blurEffectView = blurEffectView // remove hairline below bar. self.shadowImage = UIImage() @@ -71,6 +73,8 @@ public class OWSNavigationBar: UINavigationBar { NotificationCenter.default.addObserver(self, selector: #selector(didChangeStatusBarFrame), name: .UIApplicationDidChangeStatusBarFrame, object: nil) } + // MARK: Layout + @objc public func callDidChange() { Logger.debug("\(self.logTag) in \(#function)") @@ -125,4 +129,15 @@ public class OWSNavigationBar: UINavigationBar { } } } + + // MARK: + + @objc + public func makeClear() { + self.backgroundColor = .clear + self.setBackgroundImage(UIImage(), for: .default) + self.shadowImage = UIImage() + self.clipsToBounds = true + self.blurEffectView?.isHidden = true + } } diff --git a/SignalMessaging/attachments/AttachmentApprovalViewController.swift b/SignalMessaging/attachments/AttachmentApprovalViewController.swift index d0a0d5752..15fff1703 100644 --- a/SignalMessaging/attachments/AttachmentApprovalViewController.swift +++ b/SignalMessaging/attachments/AttachmentApprovalViewController.swift @@ -67,11 +67,11 @@ public class AttachmentApprovalViewController: OWSViewController, CaptioningTool let vc = AttachmentApprovalViewController(attachment: attachment, delegate: delegate) let navController = OWSNavigationController(rootViewController: vc) - // Make navigationBar clear - navController.navigationBar.backgroundColor = .clear - navController.navigationBar.setBackgroundImage(UIImage(), for: .default) - navController.navigationBar.shadowImage = UIImage() - navController.navigationBar.clipsToBounds = true + guard let navigationBar = navController.navigationBar as? OWSNavigationBar else { + owsFail("\(self.logTag) in \(#function) navigationBar was nil or unexpected class") + return navController + } + navigationBar.makeClear() return navController } From 1d4ead080b0155a9c343efdd78ce2f325dea8eae Mon Sep 17 00:00:00 2001 From: Michael Kirk Date: Sun, 22 Jul 2018 23:26:32 -0700 Subject: [PATCH 2/2] fix color behind navbar --- Signal/src/ViewControllers/NewGroupViewController.m | 2 ++ .../ViewControllers/ThreadSettings/UpdateGroupViewController.m | 2 ++ 2 files changed, 4 insertions(+) diff --git a/Signal/src/ViewControllers/NewGroupViewController.m b/Signal/src/ViewControllers/NewGroupViewController.m index 2e1a73c5e..a7acd7b4a 100644 --- a/Signal/src/ViewControllers/NewGroupViewController.m +++ b/Signal/src/ViewControllers/NewGroupViewController.m @@ -102,6 +102,8 @@ const NSUInteger kNewGroupViewControllerAvatarWidth = 68; self.title = [MessageStrings newGroupDefaultTitle]; + self.view.backgroundColor = UIColor.ows_themeBackgroundColor; + self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:NSLocalizedString(@"NEW_GROUP_CREATE_BUTTON", @"The title for the 'create group' button.") style:UIBarButtonItemStylePlain diff --git a/Signal/src/ViewControllers/ThreadSettings/UpdateGroupViewController.m b/Signal/src/ViewControllers/ThreadSettings/UpdateGroupViewController.m index c76d00467..e4f3580c3 100644 --- a/Signal/src/ViewControllers/ThreadSettings/UpdateGroupViewController.m +++ b/Signal/src/ViewControllers/ThreadSettings/UpdateGroupViewController.m @@ -102,6 +102,8 @@ NS_ASSUME_NONNULL_BEGIN OWSAssert(self.thread.groupModel); OWSAssert(self.thread.groupModel.groupMemberIds); + self.view.backgroundColor = UIColor.ows_themeBackgroundColor; + [self.memberRecipientIds addObjectsFromArray:self.thread.groupModel.groupMemberIds]; self.previousMemberRecipientIds = [NSSet setWithArray:self.thread.groupModel.groupMemberIds];