diff --git a/.DS_Store b/.DS_Store index 7fca78b..33de3b1 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/EnhancedTerminal-Distribution/EnhancedTerminal.app/Contents/MacOS/EnhancedTerminal b/EnhancedTerminal-Distribution/EnhancedTerminal.app/Contents/MacOS/EnhancedTerminal index a0dd3c3..2976c9f 100755 Binary files a/EnhancedTerminal-Distribution/EnhancedTerminal.app/Contents/MacOS/EnhancedTerminal and b/EnhancedTerminal-Distribution/EnhancedTerminal.app/Contents/MacOS/EnhancedTerminal differ diff --git a/EnhancedTerminal-v3.0-20260131.zip b/EnhancedTerminal-v3.0-20260131.zip index d07349e..b84f1aa 100644 Binary files a/EnhancedTerminal-v3.0-20260131.zip and b/EnhancedTerminal-v3.0-20260131.zip differ diff --git a/EnhancedTerminal.app/Contents/MacOS/EnhancedTerminal b/EnhancedTerminal.app/Contents/MacOS/EnhancedTerminal index 2976c9f..1287c8e 100755 Binary files a/EnhancedTerminal.app/Contents/MacOS/EnhancedTerminal and b/EnhancedTerminal.app/Contents/MacOS/EnhancedTerminal differ diff --git a/MainWindowController.swift b/MainWindowController.swift index a7115ec..5107c32 100644 --- a/MainWindowController.swift +++ b/MainWindowController.swift @@ -52,6 +52,8 @@ class MainWindowController: NSWindowController { var settingsWindow: SettingsWindowController! var zoomedPane: TerminalSession? var preZoomSplitView: NSSplitView? + var lastTabClickTime: Date? + var lastTabClickIndex: Int = -1 convenience init() { let window = NSWindow( @@ -317,11 +319,6 @@ class MainWindowController: NSWindowController { tabButton.font = NSFont.systemFont(ofSize: 11) tabButton.translatesAutoresizingMaskIntoConstraints = false - // Add double-click for rename - let doubleClickGesture = NSClickGestureRecognizer(target: self, action: #selector(tabDoubleClicked(_:))) - doubleClickGesture.numberOfClicksRequired = 2 - tabButton.addGestureRecognizer(doubleClickGesture) - // Highlight current tab if index == tabManager.currentIndex { tabButton.contentTintColor = .systemBlue @@ -421,12 +418,27 @@ class MainWindowController: NSWindowController { } @objc func tabClicked(_ sender: NSButton) { - switchToTab(index: sender.tag) + let index = sender.tag + let now = Date() + + // Check for double-click (within 0.3 seconds) + if let lastClick = lastTabClickTime, + lastTabClickIndex == index, + now.timeIntervalSince(lastClick) < 0.3 { + // Double-click detected + tabDoubleClicked(sender) + lastTabClickTime = nil + lastTabClickIndex = -1 + } else { + // Single click + lastTabClickTime = now + lastTabClickIndex = index + switchToTab(index: index) + } } - @objc func tabDoubleClicked(_ sender: NSClickGestureRecognizer) { - guard let button = sender.view as? NSButton else { return } - let index = button.tag + @objc func tabDoubleClicked(_ sender: NSButton) { + let index = sender.tag let alert = NSAlert() alert.messageText = "Rename Tab"