Ocultar MAAttachedWindow al hacer clic afuera
Estoy usando unMAAttachedWindow para mostrar una ventana personalizada debajo de un NSStatusItem en la barra de menú. Todo funciona bien, pero no puedo encontrar una manera fácil de ocultarlo cuando el usuario hace clic fuera de la ventana. Quiero implementar este comportamiento porque es lo que el usuario espera.
Este es el código utilizado para mostrar elMAAttachedWindow
:
- (void)toggleAttachedWindowAtPoint:(NSPoint)pt {
if (!self.attachedWindow) {
self.attachedWindow = [[MAAttachedWindow alloc] initWithView:logView
attachedToPoint:pt
inWindow:nil
onSide:MAPositionBottom
atDistance:5.0];
[self.attachedWindow setLevel:kCGMaximumWindowLevel];
}
if(isVisible)
[self.attachedWindow makeKeyAndOrderFront:self];
else
[self.attachedWindow orderOut];
}
Este código se activa por unNSStatusItem
con una vista personalizada que intercepta un clic sobre ella.