Fix macOS 14 deprecation warnings. Make RSCore a local module.

This commit is contained in:
Brent Simmons
2024-11-03 22:13:01 -08:00
parent 813500b55a
commit def4b95fbc
82 changed files with 6711 additions and 91 deletions

View File

@@ -8,6 +8,7 @@
import AppKit
import RSCore
import RSCoreObjC
import Articles
import Account
@@ -200,7 +201,7 @@ private extension TimelineViewController {
let sortedArticles = articles.sortedByDate(.orderedAscending)
let items = sortedArticles.map { ArticlePasteboardWriter(article: $0) }
let standardServices = NSSharingService.sharingServices(forItems: items)
let standardServices = NSSharingService.sharingServices(forItems_noDeprecationWarning: items) as? [NSSharingService] ?? [NSSharingService]()
let customServices = SharingServicePickerDelegate.customSharingServices(for: items)
let services = standardServices + customServices
if services.isEmpty {

View File

@@ -8,6 +8,7 @@
import Cocoa
import os.log
import UniformTypeIdentifiers
class ShareViewController: NSViewController {
@@ -33,14 +34,14 @@ class ShareViewController: NSViewController {
// Try to get any HTML that is maybe passed in
for item in self.extensionContext!.inputItems as! [NSExtensionItem] {
for itemProvider in item.attachments! {
if itemProvider.hasItemConformingToTypeIdentifier(kUTTypePropertyList as String) {
if itemProvider.hasItemConformingToTypeIdentifier(UTType.propertyList.identifier) {
provider = itemProvider
}
}
}
if provider != nil {
provider!.loadItem(forTypeIdentifier: kUTTypePropertyList as String, options: nil, completionHandler: { [weak self] (pList, error) in
provider!.loadItem(forTypeIdentifier: UTType.propertyList.identifier, options: nil, completionHandler: { [weak self] (pList, error) in
if error != nil {
return
}
@@ -60,14 +61,14 @@ class ShareViewController: NSViewController {
// Try to get the URL if it is passed in as a URL
for item in self.extensionContext!.inputItems as! [NSExtensionItem] {
for itemProvider in item.attachments! {
if itemProvider.hasItemConformingToTypeIdentifier(kUTTypeURL as String) {
if itemProvider.hasItemConformingToTypeIdentifier(UTType.url.identifier) {
provider = itemProvider
}
}
}
if provider != nil {
provider!.loadItem(forTypeIdentifier: kUTTypeURL as String, options: nil, completionHandler: { [weak self] (urlCoded, error) in
provider!.loadItem(forTypeIdentifier: UTType.url.identifier, options: nil, completionHandler: { [weak self] (urlCoded, error) in
if error != nil {
return
}