diff --git a/CHANGELOG.md b/CHANGELOG.md index f8ecb39d..6197ea1d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,19 @@ All notable changes to cmux are documented here. +## [1.29.0] - 2026-02-15 + +### Added +- Cmd+click on links in the browser opens them in a new tab +- Right-click context menu shows "Open Link in New Tab" instead of "Open in New Window" +- Third-party licenses bundled in app with Licenses button in About window +- Update availability pill now visible in Release builds + +### Changed +- Cmd+[/] now triggers browser back/forward when a browser panel is focused (no-op on terminal) +- Reload configuration shortcut changed to Cmd+Shift+, +- Improved browser omnibar suggestions and focus behavior + ## [1.28.2] - 2026-02-14 ### Fixed diff --git a/GhosttyTabs.xcodeproj/project.pbxproj b/GhosttyTabs.xcodeproj/project.pbxproj index df7a0e9c..af139c9c 100644 --- a/GhosttyTabs.xcodeproj/project.pbxproj +++ b/GhosttyTabs.xcodeproj/project.pbxproj @@ -678,7 +678,7 @@ CODE_SIGN_ENTITLEMENTS = ""; CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 39; + CURRENT_PROJECT_VERSION = 40; DEVELOPMENT_TEAM = ""; ENABLE_HARDENED_RUNTIME = NO; GENERATE_INFOPLIST_FILE = NO; @@ -687,7 +687,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MARKETING_VERSION = 1.28.2; + MARKETING_VERSION = 1.29.0; OTHER_LDFLAGS = ( "-lc++", "-framework", @@ -717,7 +717,7 @@ CODE_SIGN_ENTITLEMENTS = ""; CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 39; + CURRENT_PROJECT_VERSION = 40; DEVELOPMENT_TEAM = ""; ENABLE_HARDENED_RUNTIME = NO; GENERATE_INFOPLIST_FILE = NO; @@ -726,7 +726,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MARKETING_VERSION = 1.28.2; + MARKETING_VERSION = 1.29.0; OTHER_LDFLAGS = ( "-lc++", "-framework", @@ -780,10 +780,10 @@ isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 39; + CURRENT_PROJECT_VERSION = 40; GENERATE_INFOPLIST_FILE = YES; MACOSX_DEPLOYMENT_TARGET = 14.0; - MARKETING_VERSION = 1.28.2; + MARKETING_VERSION = 1.29.0; ONLY_ACTIVE_ARCH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.cmuxterm.appuitests; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -797,10 +797,10 @@ isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 39; + CURRENT_PROJECT_VERSION = 40; GENERATE_INFOPLIST_FILE = YES; MACOSX_DEPLOYMENT_TARGET = 14.0; - MARKETING_VERSION = 1.28.2; + MARKETING_VERSION = 1.29.0; ONLY_ACTIVE_ARCH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.cmuxterm.appuitests; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -814,10 +814,10 @@ buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 39; + CURRENT_PROJECT_VERSION = 40; GENERATE_INFOPLIST_FILE = YES; MACOSX_DEPLOYMENT_TARGET = 14.0; - MARKETING_VERSION = 1.28.2; + MARKETING_VERSION = 1.29.0; ONLY_ACTIVE_ARCH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.cmuxterm.apptests; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -833,10 +833,10 @@ buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 39; + CURRENT_PROJECT_VERSION = 40; GENERATE_INFOPLIST_FILE = YES; MACOSX_DEPLOYMENT_TARGET = 14.0; - MARKETING_VERSION = 1.28.2; + MARKETING_VERSION = 1.29.0; ONLY_ACTIVE_ARCH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.cmuxterm.apptests; PRODUCT_NAME = "$(TARGET_NAME)"; diff --git a/Sources/TabManager.swift b/Sources/TabManager.swift index 309fe644..0c9a24c2 100644 --- a/Sources/TabManager.swift +++ b/Sources/TabManager.swift @@ -768,6 +768,21 @@ class TabManager: ObservableObject { return tab.panels[panelId] as? BrowserPanel } + @discardableResult + func zoomInFocusedBrowser() -> Bool { + focusedBrowserPanel?.zoomIn() ?? false + } + + @discardableResult + func zoomOutFocusedBrowser() -> Bool { + focusedBrowserPanel?.zoomOut() ?? false + } + + @discardableResult + func resetZoomFocusedBrowser() -> Bool { + focusedBrowserPanel?.resetZoom() ?? false + } + /// Backwards compatibility: returns the focused surface ID func focusedSurfaceId(for tabId: UUID) -> UUID? { focusedPanelId(for: tabId) diff --git a/docs-site/content/docs/changelog.mdx b/docs-site/content/docs/changelog.mdx index 3d2f2311..83d2e59f 100644 --- a/docs-site/content/docs/changelog.mdx +++ b/docs-site/content/docs/changelog.mdx @@ -5,6 +5,19 @@ description: Release notes and version history for cmux All notable changes to cmux are documented here. +## [1.29.0] - 2026-02-15 + +### Added +- Cmd+click on links in the browser opens them in a new tab +- Right-click context menu shows "Open Link in New Tab" instead of "Open in New Window" +- Third-party licenses bundled in app with Licenses button in About window +- Update availability pill now visible in Release builds + +### Changed +- Cmd+[/] now triggers browser back/forward when a browser panel is focused (no-op on terminal) +- Reload configuration shortcut changed to Cmd+Shift+, +- Improved browser omnibar suggestions and focus behavior + ## [1.28.2] - 2026-02-14 ### Fixed