5
私は小さなステータスバーのアプリを構築しています、アイコンをクリックすると、NSPopoverが表示されます。私がエル・キャピタンにアップグレードするまで、すべてはうまくいきました。問題は、私が最初にアプリケーションを起動するとき、私はポップオーバーを見たいので、私はステータスバーのアイコンを自動的に押して、画面の左下隅に表示されます。私はそれを閉じて再び開いて、画面の上から問題なく表示されます。あなたは間違ったことを見ますか?これは、コードであると私はshowPopoverの値を印刷するとき、私はそれが動作する小さな遅延の後にアイコンプレスをシミュレートする場合は何も間違っては、NSPopover時には、間違った位置、エルキャピタン
private let menu = MenuBarController()
override init() {
super.init()
self.menu.onMouseDown = {
if (self.menu.iconView?.isSelected == true) {
self.showPopover()
} else {
self.hidePopover()
}
}
}
func showPopover() {
let icon = self.menu.iconView!
let edge = NSRectEdge.MinY
let rect = icon.frame
self.popover?.showRelativeToRect(rect, ofView: icon, preferredEdge: edge);
}
func applicationDidFinishLaunching(aNotification: NSNotification) {
let icon = self.menu.iconView!
icon.mouseDown(NSEvent())
}
もありません。