В OS X Lion запрос Finder о текущем выборе возвращает неправильный файл

Я подтвердил, что это происходит только в Lion. Я обнаружил, похоже, ошибку, из-за которой вам нужно дважды фокусировать окно, чтобы Finder вернул правильный результат через мост сценариев или AppleScript. Это происходит только при открытии папки с рабочего стола или из другого пространства.

Вот как это можно сделать:

  1. Закройте, скройте или сверните все окна до появления рабочего стола.
  2. Откройте любую папку на рабочем столе, появится новое окно finder. Выберите любой файл в этом окне, щелкнув по нему один раз.
  3. Откройте редактор AppleScript и запустите следующий сценарий:

    tell application "Finder"
     вернуть выбор
    end tell
    

Сценарий вернет только путь к папке на рабочем столе, а не выбранный файл в окне Finder.

Если перефокусировать окно или снова щелкнуть на файле, все работает, как ожидалось, и скрипт возвращает правильный путь.

Похоже, что это ошибка в Lion. Snow Leopard возвращает правильный путь в 100% случаев.

Я безуспешно пробовал следующие методы:

  1. Использование скриптового моста и https://github.com/davedelong/BetterInfo/blob/master/Finder.h
  2. Использование "Системных событий" яблочного скрипта для нажатия "Edit"->"Copy"
  3. Использование AppleScript для получения текущего выбора из finder.

Похоже, что у всех одна и та же проблема.

Я упускаю что-то очевидное или это действительно проблема Lion?

6
задан Levi Nunnink 8 December 2011 в 18:29
поделиться