Перетаскивание файла док-станции Ubuntu 17

В Ubuntu 16 я мог перетаскивать файлы в приложения в доке, но в Ubuntu 17.10 это не работало. Есть ли способ сделать это?


DnD файлов на значках в доке gnome-shells для открытия приложения, сброшенного на, не поддерживается.

Даже создатель расширения Dash to Dock отмечает это, ссылаясь на — https://github.com/micheleg/dash-to-dock/issues/578

Доки сторонних производителей должны работать должным образом, 2 примеры — Docky & Plank. Обратите внимание, что plank — это только xorg, поддержки wayland пока нет. (или когда-либо?

Другой путь — установить единство и использовать его вместо этого. Хотя для лучшей производительности единства следует также вернуться к lightdm и удалить gdm3, gnome-shell и т. д. Обратите внимание, что единство также только xorg.



Перетаскивание файлов на значок док-станции в Cocoa

Как я могу перетащить файл (или выбрать открыть его в Finder) типа, указанного в Info.plist, на значок моей док-станции, а затем вызвать метод с полным путем к файлу?


Если вы установили правильно настройте массив CFBundleDocumentTypes вашего Info.plist (либо LSItemContentTypes, либо CFBundleTypeExtensions), тогда вам просто нужно настроить делегат NSApplication и реализовать метод делегата application: openFile :.

Если вы ожидаете одновременного удаления нескольких файлов, реализуйте application: openFiles :.

Для обещанных файлов ( NSFilesPromisePboardType / kPasteboardTypeFileURLPromise ) см. Удаление обещанных файлов на значок приложения в Dock.


Вот обновленное решение для Xcode 5 в AppDelegate.m

  - (BOOL) приложение :(  NSApplication *) отправитель openFile: (NSString *) имя файла {NSLog (@ "% @", имя файла);  return YES;}  

И в настройках Xcode Document Types в Project> Targets> Info:

Проверьте настройки в Info.plist, если у вас есть пустой массив ‘Document Content Type UTIs’, который следует заполнить должным образом или удалить.

Ваш Info.plist должен выглядеть примерно так:

1


В текущих системах вы можете использовать UTI вместо старых четырехсимвольные типы (например, fold выше). В редакторе типа документа Xcode создайте новый тип с помощью:

  • Имя: Папка
  • Идентификатор: public.folder

public.folder — это подтип public.directory . public.folder соответствует каталогам, которые отображаются как таковые для пользователя, то есть не пакетам, подобным оболочкам .app ..


Выберите ваше приложение в целевой группе боковой панели и используйте получить данные. Затем в новом окне выберите вкладку свойств, чтобы добавить новый тип документа. Назовите ее «Папка» для удобства, а типы ОС должны быть «свернутыми»; тип и роль магазина, которые вы можете оставить как есть.

0


Если вы на самом деле создаете приложение на основе документов, настраивая его так, чтобы он указывал путь, заставляя вас выполнять гораздо больше работы, чем нужно. Просто используйте шаблон приложения на основе документа. Контроллер документа создаст для вас экземпляр нужного класса; вам нужно только написать этот класс.

Приложение, которое вы создаете таким образом, будет обрабатывать отбрасывание файлов (открывая их как документы) бесплатно.

1

Оцените статью
clickpad.ru
Добавить комментарий