From 69c5492fcef02a4c0a831801eb27011da39f5024 Mon Sep 17 00:00:00 2001 From: Matthew Chen Date: Tue, 12 Feb 2019 11:08:19 -0500 Subject: [PATCH] Clean up ahead of PR. --- Signal.xcodeproj/project.pbxproj | 4 ---- Signal/Signal-Info.plist | 4 ++-- .../Views/ImageEditor/ImageEditorCanvasView.swift | 5 ++++- .../Views/ImageEditor/ImageEditorCropViewController.swift | 2 -- .../Views/ImageEditor/ImageEditorGestureRecognizer.swift | 5 ----- SignalMessaging/Views/ImageEditor/ImageEditorModel.swift | 1 - SignalMessaging/categories/UIView+OWS.swift | 5 ----- 7 files changed, 6 insertions(+), 20 deletions(-) delete mode 100644 SignalMessaging/Views/ImageEditor/ImageEditorGestureRecognizer.swift diff --git a/Signal.xcodeproj/project.pbxproj b/Signal.xcodeproj/project.pbxproj index 76ec0e98b..83685fcda 100644 --- a/Signal.xcodeproj/project.pbxproj +++ b/Signal.xcodeproj/project.pbxproj @@ -252,7 +252,6 @@ 34BEDB1321C43F6A007B0EAE /* ImageEditorView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34BEDB1221C43F69007B0EAE /* ImageEditorView.swift */; }; 34BEDB1621C80BCA007B0EAE /* OWSAnyTouchGestureRecognizer.h in Headers */ = {isa = PBXBuildFile; fileRef = 34BEDB1421C80BC9007B0EAE /* OWSAnyTouchGestureRecognizer.h */; settings = {ATTRIBUTES = (Public, ); }; }; 34BEDB1721C80BCA007B0EAE /* OWSAnyTouchGestureRecognizer.m in Sources */ = {isa = PBXBuildFile; fileRef = 34BEDB1521C80BCA007B0EAE /* OWSAnyTouchGestureRecognizer.m */; }; - 34BEDB1921C82AC5007B0EAE /* ImageEditorGestureRecognizer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34BEDB1821C82AC5007B0EAE /* ImageEditorGestureRecognizer.swift */; }; 34C3C78D20409F320000134C /* Opening.m4r in Resources */ = {isa = PBXBuildFile; fileRef = 34C3C78C20409F320000134C /* Opening.m4r */; }; 34C3C78F2040A4F70000134C /* sonarping.mp3 in Resources */ = {isa = PBXBuildFile; fileRef = 34C3C78E2040A4F70000134C /* sonarping.mp3 */; }; 34C3C7922040B0DD0000134C /* OWSAudioPlayer.h in Headers */ = {isa = PBXBuildFile; fileRef = 34C3C7902040B0DC0000134C /* OWSAudioPlayer.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -942,7 +941,6 @@ 34BEDB1221C43F69007B0EAE /* ImageEditorView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ImageEditorView.swift; sourceTree = ""; }; 34BEDB1421C80BC9007B0EAE /* OWSAnyTouchGestureRecognizer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OWSAnyTouchGestureRecognizer.h; sourceTree = ""; }; 34BEDB1521C80BCA007B0EAE /* OWSAnyTouchGestureRecognizer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = OWSAnyTouchGestureRecognizer.m; sourceTree = ""; }; - 34BEDB1821C82AC5007B0EAE /* ImageEditorGestureRecognizer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ImageEditorGestureRecognizer.swift; sourceTree = ""; }; 34C3C78C20409F320000134C /* Opening.m4r */ = {isa = PBXFileReference; lastKnownFileType = file; path = Opening.m4r; sourceTree = ""; }; 34C3C78E2040A4F70000134C /* sonarping.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; name = sonarping.mp3; path = Signal/AudioFiles/sonarping.mp3; sourceTree = SOURCE_ROOT; }; 34C3C7902040B0DC0000134C /* OWSAudioPlayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OWSAudioPlayer.h; sourceTree = ""; }; @@ -1910,7 +1908,6 @@ 34BBC850220B8EEF00857249 /* ImageEditorCanvasView.swift */, 34BBC853220C7ADA00857249 /* ImageEditorContents.swift */, 34BBC84E220B8A0100857249 /* ImageEditorCropViewController.swift */, - 34BEDB1821C82AC5007B0EAE /* ImageEditorGestureRecognizer.swift */, 34BBC852220C7AD900857249 /* ImageEditorItem.swift */, 34BEDB0D21C405B0007B0EAE /* ImageEditorModel.swift */, 34BBC85C220D19D600857249 /* ImageEditorPanGestureRecognizer.swift */, @@ -3329,7 +3326,6 @@ 45194F931FD7215C00333B2C /* OWSContactOffersInteraction.m in Sources */, 450998681FD8C0FF00D89EB3 /* AttachmentSharing.m in Sources */, 347850711FDAEB17007B8332 /* OWSUserProfile.m in Sources */, - 34BEDB1921C82AC5007B0EAE /* ImageEditorGestureRecognizer.swift in Sources */, 346129F81FD5F31400532771 /* OWS100RemoveTSRecipientsMigration.m in Sources */, 34AC09DF211B39B100997B47 /* OWSNavigationController.m in Sources */, 34074F61203D0CBE004596AE /* OWSSounds.m in Sources */, diff --git a/Signal/Signal-Info.plist b/Signal/Signal-Info.plist index 5cc9da65c..bbc073f5d 100644 --- a/Signal/Signal-Info.plist +++ b/Signal/Signal-Info.plist @@ -7,9 +7,9 @@ CarthageVersion 0.31.2 OSXVersion - 10.14.2 + 10.14.3 WebRTCCommit - aa8bee9bd6f69e388a9ca7506b8702ef8ab7f195 M71 + 55de5593cc261fa9368c5ccde98884ed1e278ba0 M72 CFBundleDevelopmentRegion en diff --git a/SignalMessaging/Views/ImageEditor/ImageEditorCanvasView.swift b/SignalMessaging/Views/ImageEditor/ImageEditorCanvasView.swift index ad538e621..c3529bb55 100644 --- a/SignalMessaging/Views/ImageEditor/ImageEditorCanvasView.swift +++ b/SignalMessaging/Views/ImageEditor/ImageEditorCanvasView.swift @@ -271,7 +271,10 @@ public class ImageEditorCanvasView: UIView { return .zero } - // We want to "fill" the output rect. + // The image content's default size (at scaling = 1) is to fill the output/canvas bounds. + // This makes it easier to clamp the scaling to safe values. + // The downside is that rotation has the side effect of changing the render size of the + // image, which complicates the crop view logic. // // Find the smallest possible image size that will completely fill the output size. // diff --git a/SignalMessaging/Views/ImageEditor/ImageEditorCropViewController.swift b/SignalMessaging/Views/ImageEditor/ImageEditorCropViewController.swift index 78efd5888..264505c1f 100644 --- a/SignalMessaging/Views/ImageEditor/ImageEditorCropViewController.swift +++ b/SignalMessaging/Views/ImageEditor/ImageEditorCropViewController.swift @@ -271,7 +271,6 @@ class ImageEditorCropViewController: OWSViewController { Logger.verbose("") let viewSize = contentView.bounds.size -// contentView.layer.anchorPoint = .zero contentView.layer.setAffineTransform(transform.affineTransform(viewSize: viewSize)) } @@ -603,7 +602,6 @@ class ImageEditorCropViewController: OWSViewController { } private func completeAndDismiss() { - // TODO: self.delegate?.cropDidComplete(transform: transform) self.dismiss(animated: true) { diff --git a/SignalMessaging/Views/ImageEditor/ImageEditorGestureRecognizer.swift b/SignalMessaging/Views/ImageEditor/ImageEditorGestureRecognizer.swift deleted file mode 100644 index 71065b4cf..000000000 --- a/SignalMessaging/Views/ImageEditor/ImageEditorGestureRecognizer.swift +++ /dev/null @@ -1,5 +0,0 @@ -// -// Copyright (c) 2019 Open Whisper Systems. All rights reserved. -// - - diff --git a/SignalMessaging/Views/ImageEditor/ImageEditorModel.swift b/SignalMessaging/Views/ImageEditor/ImageEditorModel.swift index f137b6b49..e73c9f033 100644 --- a/SignalMessaging/Views/ImageEditor/ImageEditorModel.swift +++ b/SignalMessaging/Views/ImageEditor/ImageEditorModel.swift @@ -31,7 +31,6 @@ public class ImageEditorTransform: NSObject { public func affineTransform(viewSize: CGSize) -> CGAffineTransform { let translation = unitTranslation.fromUnitCoordinates(viewSize: viewSize) - Logger.verbose("viewSize: \(viewSize), translation: \(translation), unitTranslation: \(unitTranslation), scaling: \(scaling), rotationRadians: \(rotationRadians), ") // Order matters. We need want SRT (scale-rotate-translate) ordering so that the translation // is not affected affected by the scaling or rotation, which shoud both be about the "origin" // (in this case the center of the content). diff --git a/SignalMessaging/categories/UIView+OWS.swift b/SignalMessaging/categories/UIView+OWS.swift index 2ff5cde1f..8ca4cc6a9 100644 --- a/SignalMessaging/categories/UIView+OWS.swift +++ b/SignalMessaging/categories/UIView+OWS.swift @@ -193,9 +193,4 @@ public extension CGAffineTransform { public func rotate(_ angleRadians: CGFloat) -> CGAffineTransform { return rotated(by: angleRadians) } - -// public func forAnchorPoint(viewSize: CGSize) -> CGAffineTransform { -// let viewCenter = CGRect(origin: .zero, size: viewSize).center -// return CGAffineTransform.translate(viewCenter.inverse()).concatenating(self).translate(viewCenter) -// } }