2011-12-08 12 views
6

He confirmado que esto solo ocurre en Lion. Descubrí lo que parece ser un error en el que necesitas enfocar una ventana dos veces para que Finder devuelva el resultado correcto sobre el puente de scripting o AppleScript. Esto solo ocurre al abrir una carpeta desde el escritorio u otro espacio.En OS X Lion, solicitando al Buscador la selección actual, devuelve el archivo incorrecto

Así es como duplicar:

  1. Cerrar, ocultar o minimizar todas las ventanas hasta que el escritorio está mostrando.
  2. Abra cualquier carpeta en el escritorio, aparecerá una nueva ventana de buscador. Seleccione cualquier archivo en la ventana del buscador haciendo clic en él una vez.
  3. abrir el editor de AppleScript y ejecute el siguiente script:

    tell application "Finder" 
        return selection 
    end tell 
    

El script devolverá únicamente la ruta de la carpeta en el escritorio, no el archivo seleccionado en la ventana del buscador.

Si vuelve a enfocar la ventana, o hace clic en el archivo nuevamente, todo funciona como se espera y el script devuelve la ruta correcta.

Esto parece un error en Lion. Snow Leopard regresa el camino correcto el 100% del tiempo.

He probado los siguientes métodos sin éxito:

  1. Utilizando el puente de secuencias de comandos y https://github.com/davedelong/BetterInfo/blob/master/Finder.h
  2. El uso de "Eventos del sistema" AppleScript hacer clic en "Editar" -> "Copiar"
  3. Usando AppleScript para obtener la selección actual del buscador.

Parece que todos tienen el mismo problema.

¿Me falta algo obvio o es realmente un problema con Lion?

+0

Eso parece ser un error. Y un problema cuando muevo algunos de mis Mac a Lion, ya que algunas de mis aplicaciones usan scripting bridge y NSApplescript para obtener selecciones de buscador. – markhunte

+1

He enviado esto como un error a Apple. Seguirlo aquí: http://openradar.appspot.com/radar?id=1467403 –

+1

Lo he enviado a Apple también. Lamentablemente, el próximo mes sale 10.8, y sigue teniendo el mismo error en la Vista previa 4. ¡Apple, WTF! (Oh, solo veo que tu informe realmente se refiere al mío, lo que significa que fui el primero en informar esto. Mierda, esto no está yendo bien. Apple me gustaba más cuando todavía estaban corrigiendo errores como este.) –

Respuesta

1

Guau, puedo confirmar (al menos a través de applescript) la mayor parte de lo que describes. Me estaba devolviendo una lista vacía, ni siquiera la ruta de escritorio que mencionas. Estaba probando esto usando un script en el menú de AppleScript. La única forma en que podía obtener la selección desde una nueva ventana del Finder era así ...

tell application "System Events" to activate 
tell application "Finder" 
    activate 
    set a to (get selection) as text 
    display dialog a 
end tell 
+0

La activación del buscador no siempre se desea cuando se ejecuta desde otras aplicaciones. Ojalá Apple nos diera otra forma de obtener lo que se seleccionó en el buscador. – markhunte

+0

Sí, el problema es que, incluso si el buscador está activado, esa secuencia de comandos hace que el foco se encienda y se apague, lo cual es una experiencia de interfaz de usuario bastante extraña. –

+0

Es claramente un error en el Finder, no es algo que Apple haya intentado. Solía ​​funcionar antes que Lion, y funciona una vez que se reactiva el Finder. Por lo tanto, "desear" no es útil. Solo informar esto a Apple es. Lo reporté. ¿Tuviste? Si no, ¡hazlo ahora! –

Cuestiones relacionadas