From dce27059ff48ec3510f85d7dbfa940c28e6ac7c7 Mon Sep 17 00:00:00 2001 From: Nico Verbruggen Date: Fri, 3 Dec 2021 19:49:03 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=8F=97=20WIP:=20Ensure=20the=20right-clic?= =?UTF-8?q?k=20menu=20works=20correctly?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- phpmon/Domain/SiteList/SiteListVC.swift | 42 ++++++++++++++++++------- 1 file changed, 30 insertions(+), 12 deletions(-) diff --git a/phpmon/Domain/SiteList/SiteListVC.swift b/phpmon/Domain/SiteList/SiteListVC.swift index 0d5f1e7..5079589 100644 --- a/phpmon/Domain/SiteList/SiteListVC.swift +++ b/phpmon/Domain/SiteList/SiteListVC.swift @@ -37,20 +37,11 @@ class SiteListVC: NSViewController, NSTableViewDelegate, NSTableViewDataSource { // MARK: - Lifecycle - override func viewDidLoad() { - let menu = NSMenu() - // menu.addItem(withTitle: "Secure", action: #selector(self.action), keyEquivalent: "L") - menu.addItem(withTitle: "Open in Browser...", action: #selector(self.openInBrowser), keyEquivalent: "O") - tableView.menu = menu - } + override func viewDidLoad() {} - override func viewWillAppear() { - - } + override func viewWillAppear() {} - override func viewWillDisappear() { - - } + override func viewWillDisappear() {} // MARK: - Table View @@ -84,6 +75,33 @@ class SiteListVC: NSViewController, NSTableViewDelegate, NSTableViewDataSource { return userCell } + func tableViewSelectionDidChange(_ notification: Notification) { + let menu = NSMenu() + + let site = Valet.shared.sites[self.tableView.selectedRow] + + if self.tableView.selectedRow == -1 { + tableView.menu = nil + return + } + + menu.addItem( + withTitle: site.secured ? "Unsecure" : "Secure", + action: #selector(self.secure), + keyEquivalent: "L" + ) + menu.addItem( + withTitle: "Open in Browser...", + action: #selector(self.openInBrowser), + keyEquivalent: "O" + ) + tableView.menu = menu + } + + @objc public func secure() { + + } + @objc public func openInBrowser() { if self.tableView.selectedRow == -1 { return