Я прочитал Apple Руководство по программированию карманов, но он не отвечает на конкретный вопрос, который у меня есть.
Я пытаюсь написать приложение Cocoa (для OS X, а не iOS), которое будет отслеживать все, что записано в общий картон (так, всякий раз, когда какое-либо приложение копирует и вставляет, но не скажет, перетаскивает и капли, что также использует NSPasteboard). Я мог (почти) выполнить это, в основном, опросив общий картон на фоновом потоке постоянно и проверив changeCount. Конечно, это сделало бы меня очень грязным внутри.
Мой вопрос: есть ли способ попросить сервер Pasteboard уведомить меня о каком-то обратном вызове в любое время, когда будет внесено изменение в общий картон? Я не мог найти ничего в ссылке класса NSPasteboard, но я надеюсь, что он скрывается где-то еще.
Еще один способ, которым я мог бы предположить, что это можно сделать, - это возможность заменить общую реализацию картонной подклассы подклассом NSPasteboard, чтобы я мог определить, что нужно сделать обратный вызов. Может быть, что-то подобное возможно?
Я бы очень хотел, чтобы это было возможно с помощью общедоступных API-интерфейсов App Store, но если вам нужен частный API, я тоже это сделаю.
Спасибо!