diff --git a/NetNewsWire.xcodeproj/project.pbxproj b/NetNewsWire.xcodeproj/project.pbxproj index 0f5f85fef..1aa69eaf0 100644 --- a/NetNewsWire.xcodeproj/project.pbxproj +++ b/NetNewsWire.xcodeproj/project.pbxproj @@ -182,8 +182,6 @@ 51707439232AA97100A461A3 /* ShareFolderPickerController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51707438232AA97100A461A3 /* ShareFolderPickerController.swift */; }; 517630042336215100E15FFF /* main.js in Resources */ = {isa = PBXBuildFile; fileRef = 517630032336215100E15FFF /* main.js */; }; 517630052336215100E15FFF /* main.js in Resources */ = {isa = PBXBuildFile; fileRef = 517630032336215100E15FFF /* main.js */; }; - 5183CCD0226E1E880010922C /* NonIntrinsicLabel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5183CCCF226E1E880010922C /* NonIntrinsicLabel.swift */; }; - 5183CCDA226E31A50010922C /* NonIntrinsicImageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5183CCD9226E31A50010922C /* NonIntrinsicImageView.swift */; }; 5183CCE5226F4DFA0010922C /* RefreshInterval.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5183CCE4226F4DFA0010922C /* RefreshInterval.swift */; }; 5183CCE6226F4E110010922C /* RefreshInterval.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5183CCE4226F4DFA0010922C /* RefreshInterval.swift */; }; 5183CCE8226F68D90010922C /* AccountRefreshTimer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5183CCE7226F68D90010922C /* AccountRefreshTimer.swift */; }; @@ -317,7 +315,6 @@ 51E4DAED2425F6940091EB5B /* CloudKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 51E4DAEC2425F6940091EB5B /* CloudKit.framework */; }; 51E595A5228CC36500FCC42B /* ArticleStatusSyncTimer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51E595A4228CC36500FCC42B /* ArticleStatusSyncTimer.swift */; }; 51E595A6228CC36500FCC42B /* ArticleStatusSyncTimer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51E595A4228CC36500FCC42B /* ArticleStatusSyncTimer.swift */; }; - 51EAED96231363EF00A9EEE3 /* NonIntrinsicButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51EAED95231363EF00A9EEE3 /* NonIntrinsicButton.swift */; }; 51EC114C2149FE3300B296E3 /* FolderTreeMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51EC114B2149FE3300B296E3 /* FolderTreeMenu.swift */; }; 51EF0F7E2277A57D0050506E /* TimelineAccessibilityCellLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51EF0F7D2277A57D0050506E /* TimelineAccessibilityCellLayout.swift */; }; 51EF0F802277A8330050506E /* TimelineCellLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51EF0F7F2277A8330050506E /* TimelineCellLayout.swift */; }; @@ -1111,8 +1108,6 @@ 516AE9B22371C372007DEEAA /* FeedTableViewSectionHeaderLayout.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedTableViewSectionHeaderLayout.swift; sourceTree = ""; }; 51707438232AA97100A461A3 /* ShareFolderPickerController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShareFolderPickerController.swift; sourceTree = ""; }; 517630032336215100E15FFF /* main.js */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.javascript; path = main.js; sourceTree = ""; }; - 5183CCCF226E1E880010922C /* NonIntrinsicLabel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NonIntrinsicLabel.swift; sourceTree = ""; }; - 5183CCD9226E31A50010922C /* NonIntrinsicImageView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NonIntrinsicImageView.swift; sourceTree = ""; }; 5183CCE4226F4DFA0010922C /* RefreshInterval.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RefreshInterval.swift; sourceTree = ""; }; 5183CCE7226F68D90010922C /* AccountRefreshTimer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountRefreshTimer.swift; sourceTree = ""; }; 518651AB23555EB20078E021 /* NNW3Document.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NNW3Document.swift; sourceTree = ""; }; @@ -1195,7 +1190,6 @@ 51E498B224A806AA00B667CB /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; 51E4DAEC2425F6940091EB5B /* CloudKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CloudKit.framework; path = System/Library/Frameworks/CloudKit.framework; sourceTree = SDKROOT; }; 51E595A4228CC36500FCC42B /* ArticleStatusSyncTimer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArticleStatusSyncTimer.swift; sourceTree = ""; }; - 51EAED95231363EF00A9EEE3 /* NonIntrinsicButton.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NonIntrinsicButton.swift; sourceTree = ""; }; 51EC114B2149FE3300B296E3 /* FolderTreeMenu.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = FolderTreeMenu.swift; path = AddFeed/FolderTreeMenu.swift; sourceTree = ""; }; 51EF0F7D2277A57D0050506E /* TimelineAccessibilityCellLayout.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TimelineAccessibilityCellLayout.swift; sourceTree = ""; }; 51EF0F7F2277A8330050506E /* TimelineCellLayout.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TimelineCellLayout.swift; sourceTree = ""; }; @@ -1847,9 +1841,6 @@ 512AF9DC236F05230066F8BE /* InteractiveLabel.swift */, 51934CC1230F5963006127BE /* InteractiveNavigationController.swift */, 51A9A5F42380F6A60033AADF /* ModalNavigationController.swift */, - 51EAED95231363EF00A9EEE3 /* NonIntrinsicButton.swift */, - 5183CCD9226E31A50010922C /* NonIntrinsicImageView.swift */, - 5183CCCF226E1E880010922C /* NonIntrinsicLabel.swift */, 51A9A6092382FD240033AADF /* PoppableGestureRecognizerDelegate.swift */, C5A6ED6C23C9B0C800AB6BE2 /* UIActivityViewController-Extensions.swift */, 51F85BF82274AA7B00C787DC /* UIBarButtonItem-Extensions.swift */, @@ -3802,11 +3793,9 @@ 512E08E72268801200BDCFDD /* FeedTreeControllerDelegate.swift in Sources */, 51C452A422650A2D00C03939 /* ArticleUtilities.swift in Sources */, 5195C1DA2720205F00888867 /* ShadowTableChanges.swift in Sources */, - 5183CCDA226E31A50010922C /* NonIntrinsicImageView.swift in Sources */, B2B80778239C4C7000F191E0 /* RSImage-AppIcons.swift in Sources */, 518ED21D23D0F26000E0A862 /* UIViewController-Extensions.swift in Sources */, 51A9A5F52380F6A60033AADF /* ModalNavigationController.swift in Sources */, - 51EAED96231363EF00A9EEE3 /* NonIntrinsicButton.swift in Sources */, 51C4527B2265091600C03939 /* UnreadIndicatorView.swift in Sources */, 5186A635235EF3A800C97195 /* VibrantLabel.swift in Sources */, 51F85BF92274AA7B00C787DC /* UIBarButtonItem-Extensions.swift in Sources */, @@ -3922,7 +3911,6 @@ 512E09012268907400BDCFDD /* FeedTableViewSectionHeader.swift in Sources */, 51C45268226508F600C03939 /* FeedUnreadCountView.swift in Sources */, D3A39865246505DF00F9A366 /* FindInArticleActivity.swift in Sources */, - 5183CCD0226E1E880010922C /* NonIntrinsicLabel.swift in Sources */, 5137C2EA26F63AE6009EFEDB /* ArticleThemeImporter.swift in Sources */, 5108F6D22375EED2001ABC45 /* TimelineCustomizerViewController.swift in Sources */, 519E743D22C663F900A78E47 /* SceneDelegate.swift in Sources */, diff --git a/iOS/UIKit Extensions/NonIntrinsicButton.swift b/UIKitExtras/Sources/UIKitExtras/NonIntrinsicButton.swift similarity index 77% rename from iOS/UIKit Extensions/NonIntrinsicButton.swift rename to UIKitExtras/Sources/UIKitExtras/NonIntrinsicButton.swift index 715f85c7f..65432eba7 100644 --- a/iOS/UIKit Extensions/NonIntrinsicButton.swift +++ b/UIKitExtras/Sources/UIKitExtras/NonIntrinsicButton.swift @@ -10,10 +10,10 @@ import Foundation import UIKit -class NonIntrinsicButton: UIButton { +public final class NonIntrinsicButton: UIButton { // Prevent autolayout from messing around with our frame settings - override var intrinsicContentSize: CGSize { + public override var intrinsicContentSize: CGSize { return CGSize(width: UIView.noIntrinsicMetric, height: UIView.noIntrinsicMetric) } diff --git a/iOS/UIKit Extensions/NonIntrinsicImageView.swift b/UIKitExtras/Sources/UIKitExtras/NonIntrinsicImageView.swift similarity index 75% rename from iOS/UIKit Extensions/NonIntrinsicImageView.swift rename to UIKitExtras/Sources/UIKitExtras/NonIntrinsicImageView.swift index 2403e1729..514231652 100644 --- a/iOS/UIKit Extensions/NonIntrinsicImageView.swift +++ b/UIKitExtras/Sources/UIKitExtras/NonIntrinsicImageView.swift @@ -8,10 +8,10 @@ import UIKit -class NonIntrinsicImageView: UIImageView { +public final class NonIntrinsicImageView: UIImageView { // Prevent autolayout from messing around with our frame settings - override var intrinsicContentSize: CGSize { + public override var intrinsicContentSize: CGSize { return CGSize(width: UIView.noIntrinsicMetric, height: UIView.noIntrinsicMetric) } diff --git a/iOS/UIKit Extensions/NonIntrinsicLabel.swift b/UIKitExtras/Sources/UIKitExtras/NonIntrinsicLabel.swift similarity index 76% rename from iOS/UIKit Extensions/NonIntrinsicLabel.swift rename to UIKitExtras/Sources/UIKitExtras/NonIntrinsicLabel.swift index 3cd615f6f..da1a7405d 100644 --- a/iOS/UIKit Extensions/NonIntrinsicLabel.swift +++ b/UIKitExtras/Sources/UIKitExtras/NonIntrinsicLabel.swift @@ -8,10 +8,10 @@ import UIKit -class NonIntrinsicLabel: UILabel { +public final class NonIntrinsicLabel: UILabel { // Prevent autolayout from messing around with our frame settings - override var intrinsicContentSize: CGSize { + public override var intrinsicContentSize: CGSize { return CGSize(width: UIView.noIntrinsicMetric, height: UIView.noIntrinsicMetric) } diff --git a/iOS/Feeds/Cell/FeedTableViewCell.swift b/iOS/Feeds/Cell/FeedTableViewCell.swift index b8638d070..7916fbede 100644 --- a/iOS/Feeds/Cell/FeedTableViewCell.swift +++ b/iOS/Feeds/Cell/FeedTableViewCell.swift @@ -7,6 +7,7 @@ // import UIKit +import UIKitExtras import Account import Tree import Images diff --git a/iOS/IconView.swift b/iOS/IconView.swift index d26bb22c1..b9904dca8 100644 --- a/iOS/IconView.swift +++ b/iOS/IconView.swift @@ -7,6 +7,7 @@ // import UIKit +import UIKitExtras import Images final class IconView: UIView { diff --git a/iOS/Settings/AboutViewController.swift b/iOS/Settings/AboutViewController.swift index d072aafca..79ca72c56 100644 --- a/iOS/Settings/AboutViewController.swift +++ b/iOS/Settings/AboutViewController.swift @@ -7,8 +7,9 @@ // import UIKit +import UIKitExtras -class AboutViewController: UITableViewController { +final class AboutViewController: UITableViewController { @IBOutlet weak var aboutTextView: UITextView! @IBOutlet weak var creditsTextView: UITextView! diff --git a/iOS/Settings/SettingsViewController.swift b/iOS/Settings/SettingsViewController.swift index d126a132a..76e361128 100644 --- a/iOS/Settings/SettingsViewController.swift +++ b/iOS/Settings/SettingsViewController.swift @@ -7,6 +7,7 @@ // import UIKit +import UIKitExtras import Account import CoreServices import SafariServices diff --git a/iOS/Timeline/Cell/TimelineTableViewCell.swift b/iOS/Timeline/Cell/TimelineTableViewCell.swift index 020ec47b1..c9608fc06 100644 --- a/iOS/Timeline/Cell/TimelineTableViewCell.swift +++ b/iOS/Timeline/Cell/TimelineTableViewCell.swift @@ -7,6 +7,7 @@ // import UIKit +import UIKitExtras import Images class TimelineTableViewCell: VibrantTableViewCell {