Tengo una aplicación que usa un NSStatusItem
. En pantallas pequeñas, no hay mucho espacio en la barra de estado. Cuando un usuario cambia a una aplicación con muchos elementos de menú, mi elemento de estado se oculta. ¿Hay alguna manera de recibir notificaciones sobre esto?informándome cuando NSStatusItem está oculto
lo que he intentado hasta ahora:
- que comprueba si se dispara cualquier
NSNotification
: No - que comprueba si el
statusView
se retira de la jerarquía de vistas: No - yo nos registramos
isHiddenOrHasHiddenAncestor
: No
Aquí está el código que uso para crear el elemento de estado.
self.statusItem = [[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength];
MyStatusView *maView = [[[MyStatusView alloc] initWithFrame:CGRectMake(0, 0, 50, 22)] autorelease];
[statusItem setTitle:@"Ma Status Item"];
[statusItem setView:maView];
¿Puedes probar si su propiedad view.center cambia a medida que se mueve fuera de la pantalla? Es posible que pueda agregar la notificación de KVO a la propiedad del centro para establecer un tipo de devolución de llamada, pero no sé si eso funcionaría para un statusItem. – Suz
También tengo un temporizador en ejecución que registra los límites relativos a la ventana. No cambia ... Parece que maView está en su propia ventana (NSWindow> NSNextStepFrame> maView). Trataremos de ver si esto se mueve fuera de la pantalla. – stigi
Los límites de ventana también están todavía en pantalla. La ventana podría estar superpuesta por otra cosa. No sé cómo comprobar esto ... – stigi