NSPopoverを閉じる方法
BehaviorでNSPopoverの閉じる方法(挙動)を指定します。
let popover = NSPopover() popover.behavior = .transient
Behaviorは3種類定義されています。
applicationDefined
開発者が動作を定義する。(閉じるボタンをつけるなど。)
自動で閉じることはない。transient
NSPopoverからフォーカスが外れると自動で閉じる。semitransient
transientと同じだが、他Window(他のアプリケーション含む)へのフォーカス移動では閉じない。
また、他Windowへフォーカスを移動した後にNSPopoverを表示しているWindowへフォーカスを移動しても閉じない。
基本的にtransient
を使用して、NSPopoverを表示したまま他Windowを操作する必要があればsemitransient
を使えばいいように思います。