Debido a algunas secuencias de comandos limpias y auto-escritas y demasiado entusiastas en mi Mac, me he encontrado con un problema muy específico: todas mis aplicaciones se niegan a abrir la segunda ventana, por ejemplo. 'guardar archivo', 'abrir archivo', 'exportar archivo' windows. En algunas aplicaciones, las ventanas 'guardar archivo' se abren, pero cuando intento cambiar el directorio donde se guarda el archivo, la ventana desaparecerá y no volverá a aparecer a menos que reinicie OSX.
He estado intentando averiguar si existe algún sistema de sistema específico que sea responsable de abrir / mostrar este tipo de ventanas, pero aún no he podido encontrar una.
Sin embargo, he encontrado este código python en GitHub y me ha ayudado a ver Las ventanas de las que estoy hablando todavía se están abriendo, pero simplemente no se muestran.
Tomaré Safari como ejemplo. Cuando ejecuto Safari, la secuencia de comandos muestra el siguiente resultado:
PID WID x,y,w,h [Title] Subtitle
---------------------------------------------------------------------
502 110 {385,104,160,18 } [Safari]
502 97 {426,57,590,96 } [Safari]
502 96 {1,23,1439,851 } [Safari] How to force window size via command line by windowid? - Ask Different
502 95 {0,0,1440,22 } [Safari]
502 94 {0,0,1440,22 } [Safari]
Ahora, cuando presiono (en Safari) Archive --> Save as...
nada parece estar sucediendo. Pero cuando vuelvo a ejecutar el script mencionado, la salida dice lo siguiente:
PID WID x,y,w,h } [Title] Subtitle
-------------------------------------------------------------
502 169 {104,22,216,341 } [Safari] Archive
502 168 {45,22,188,239 } [Safari]
502 110 {254,237,86,18 } [Safari]
502 97 {426,57,590,96 } [Safari]
502 96 {1,23,1439,851 } [Safari] How to force window size via command line by windowid? - Ask Different
502 95 {0,0,1440,22 } [Safari]
502 94 {0,0,1440,22 } [Safari]
Supongo que esta línea:
502 169 {104,22,216,341 } [Safari] Archive
Indica que la ventana 'Guardar archivo' se ha activado. Se ha etiquetado como windowID 169
y sus dimensiones (x, y, w, h) son 104,22,216,341
.
Podría alguien decirme:
¿Cuáles son las 'dimensiones visibles' habituales (x, y, w, h) para las ventanas OSX y cómo puedo forzar que esos valores cambien a una entrada dada a través de la línea de comandos una vez que conozco el ID de ventana?
¡Muchas gracias!
EDIT: Acabo de descubrir en aquí que es posible establecer los límites de una ventana a través de applecript / osascript, así que me estoy acercando.
Sin embargo, en relación con mi ejemplo de Safari, esto solo funciona si puedo decirle a Safari que establezca los límites de la primera ventana, la segunda, etc. Como muestra la salida mencionada anteriormente, mi Safari ejecuta al menos 5 ventanas diferentes (o al menos, ha reclamado 5 ID de ventana). Pero corriendo:
osascript -e 'tell application "Safari" to properties of every window'
reveló que Safari solo indexó dos de ellos:
documento: documento de aplicación de MacScripter / Call por ID en lugar de por Nombre, closeable: verdadero, zoom: verdadero, clase: ventana, índice: 1, visible: verdadero, nombre: aplicación MacScripter / Call por ID en lugar de por Nombre, modal: falso, miniaturizable: verdadero, titulado: verdadero, id: 1045, miniaturizado: falso, flotante: falso, redimensionable: verdadero, límites: 0, 23, 1440, 875, pestaña actual: pestaña 2 de la ID de la ventana 1045, con zoom: verdadero, documento: valor faltante, se puede cerrar: falso, zoom: verdadero, clase: ventana, índice: 2, visible: falso, nombre:, modal: falso, miniaturizable: falso, titulado: falso, id: 1057, miniaturizado: falso, flotando: falso, redimensionable: falso, límites: 425, 57, 1015, 104, zoomable: falso
Por lo tanto, todavía no puedo configurar la visibilidad y el tamaño de la ventana 'Archivar'.