Remove copy-on-select setting

This commit is contained in:
Lawrence Chen 2026-03-31 04:05:13 -07:00
parent 922c45400f
commit acd45bbd9e
No known key found for this signature in database
4 changed files with 0 additions and 148 deletions

View file

@ -47988,57 +47988,6 @@
} }
} }
}, },
"settings.app.copyOnSelect": {
"extractionState": "manual",
"localizations": {
"en": {
"stringUnit": {
"state": "translated",
"value": "Copy on Select"
}
},
"ja": {
"stringUnit": {
"state": "translated",
"value": "選択時にコピー"
}
}
}
},
"settings.app.copyOnSelect.subtitleOff": {
"extractionState": "manual",
"localizations": {
"en": {
"stringUnit": {
"state": "translated",
"value": "Selecting terminal text does not copy it to the system clipboard."
}
},
"ja": {
"stringUnit": {
"state": "translated",
"value": "ターミナルテキストを選択してもシステムのクリップボードにはコピーしません。"
}
}
}
},
"settings.app.copyOnSelect.subtitleOn": {
"extractionState": "manual",
"localizations": {
"en": {
"stringUnit": {
"state": "translated",
"value": "Automatically copy selected terminal text to the system clipboard."
}
},
"ja": {
"stringUnit": {
"state": "translated",
"value": "選択したターミナルテキストをシステムのクリップボードに自動でコピーします。"
}
}
}
},
"settings.app.paneFirstClickFocus": { "settings.app.paneFirstClickFocus": {
"extractionState": "manual", "extractionState": "manual",
"localizations": { "localizations": {

View file

@ -1379,21 +1379,11 @@ class GhosttyApp {
} }
} }
private func loadCopyOnSelectOverride(_ config: ghostty_config_t) {
loadInlineGhosttyConfig(
TerminalCopyOnSelectSettings.overrideConfigLine(),
into: config,
prefix: "cmux-copy-on-select",
logLabel: "copy-on-select override"
)
}
private func loadDefaultConfigFilesWithLegacyFallback(_ config: ghostty_config_t) { private func loadDefaultConfigFilesWithLegacyFallback(_ config: ghostty_config_t) {
ghostty_config_load_default_files(config) ghostty_config_load_default_files(config)
loadLegacyGhosttyConfigIfNeeded(config) loadLegacyGhosttyConfigIfNeeded(config)
ghostty_config_load_recursive_files(config) ghostty_config_load_recursive_files(config)
loadCmuxAppSupportGhosttyConfigIfNeeded(config) loadCmuxAppSupportGhosttyConfigIfNeeded(config)
loadCopyOnSelectOverride(config)
loadCJKFontFallbackIfNeeded(config) loadCJKFontFallbackIfNeeded(config)
// cmux provides the terminal background via backgroundView (CALayer) // cmux provides the terminal background via backgroundView (CALayer)
// instead of the GPU full-screen bg pass, so the layer can provide // instead of the GPU full-screen bg pass, so the layer can provide

View file

@ -3906,22 +3906,6 @@ enum CommandPaletteRenameSelectionSettings {
} }
} }
enum TerminalCopyOnSelectSettings {
static let enabledKey = "terminalCopyOnSelectEnabled"
static let defaultEnabled = false
static func isEnabled(defaults: UserDefaults = .standard) -> Bool {
if defaults.object(forKey: enabledKey) == nil {
return defaultEnabled
}
return defaults.bool(forKey: enabledKey)
}
static func overrideConfigLine(defaults: UserDefaults = .standard) -> String {
isEnabled(defaults: defaults) ? "copy-on-select = clipboard" : "copy-on-select = false"
}
}
enum CommandPaletteSwitcherSearchSettings { enum CommandPaletteSwitcherSearchSettings {
static let searchAllSurfacesKey = "commandPalette.switcherSearchAllSurfaces" static let searchAllSurfacesKey = "commandPalette.switcherSearchAllSurfaces"
static let defaultSearchAllSurfaces = false static let defaultSearchAllSurfaces = false
@ -4052,8 +4036,6 @@ struct SettingsView: View {
@AppStorage(QuitWarningSettings.warnBeforeQuitKey) private var warnBeforeQuitShortcut = QuitWarningSettings.defaultWarnBeforeQuit @AppStorage(QuitWarningSettings.warnBeforeQuitKey) private var warnBeforeQuitShortcut = QuitWarningSettings.defaultWarnBeforeQuit
@AppStorage(CommandPaletteRenameSelectionSettings.selectAllOnFocusKey) @AppStorage(CommandPaletteRenameSelectionSettings.selectAllOnFocusKey)
private var commandPaletteRenameSelectAllOnFocus = CommandPaletteRenameSelectionSettings.defaultSelectAllOnFocus private var commandPaletteRenameSelectAllOnFocus = CommandPaletteRenameSelectionSettings.defaultSelectAllOnFocus
@AppStorage(TerminalCopyOnSelectSettings.enabledKey)
private var terminalCopyOnSelectEnabled = TerminalCopyOnSelectSettings.defaultEnabled
@AppStorage(CommandPaletteSwitcherSearchSettings.searchAllSurfacesKey) @AppStorage(CommandPaletteSwitcherSearchSettings.searchAllSurfacesKey)
private var commandPaletteSearchAllSurfaces = CommandPaletteSwitcherSearchSettings.defaultSearchAllSurfaces private var commandPaletteSearchAllSurfaces = CommandPaletteSwitcherSearchSettings.defaultSearchAllSurfaces
@AppStorage(ShortcutHintDebugSettings.alwaysShowHintsKey) @AppStorage(ShortcutHintDebugSettings.alwaysShowHintsKey)
@ -4175,19 +4157,6 @@ struct SettingsView: View {
) )
} }
private var terminalCopyOnSelectSubtitle: String {
if terminalCopyOnSelectEnabled {
return String(
localized: "settings.app.copyOnSelect.subtitleOn",
defaultValue: "Automatically copy selected terminal text to the system clipboard."
)
}
return String(
localized: "settings.app.copyOnSelect.subtitleOff",
defaultValue: "Selecting terminal text does not copy it to the system clipboard."
)
}
private var selectedSidebarActiveTabIndicatorStyle: SidebarActiveTabIndicatorStyle { private var selectedSidebarActiveTabIndicatorStyle: SidebarActiveTabIndicatorStyle {
SidebarActiveTabIndicatorSettings.resolvedStyle(rawValue: sidebarActiveTabIndicatorStyle) SidebarActiveTabIndicatorSettings.resolvedStyle(rawValue: sidebarActiveTabIndicatorStyle)
} }
@ -4709,20 +4678,6 @@ struct SettingsView: View {
SettingsCardDivider() SettingsCardDivider()
SettingsCardRow(
String(localized: "settings.app.copyOnSelect", defaultValue: "Copy on Select"),
subtitle: terminalCopyOnSelectSubtitle
) {
Toggle("", isOn: $terminalCopyOnSelectEnabled)
.labelsHidden()
.controlSize(.small)
.accessibilityLabel(
String(localized: "settings.app.copyOnSelect", defaultValue: "Copy on Select")
)
}
SettingsCardDivider()
SettingsCardRow( SettingsCardRow(
String(localized: "settings.app.preferredEditor", defaultValue: "Open Files With"), String(localized: "settings.app.preferredEditor", defaultValue: "Open Files With"),
subtitle: String(localized: "settings.app.preferredEditor.subtitle", defaultValue: "Command to open files on Cmd-click. Leave empty for system default.") subtitle: String(localized: "settings.app.preferredEditor.subtitle", defaultValue: "Command to open files on Cmd-click. Leave empty for system default.")
@ -5893,9 +5848,6 @@ struct SettingsView: View {
.onChange(of: notificationSoundCustomFilePath) { _, _ in .onChange(of: notificationSoundCustomFilePath) { _, _ in
refreshNotificationCustomSoundStatus() refreshNotificationCustomSoundStatus()
} }
.onChange(of: terminalCopyOnSelectEnabled) { _, _ in
GhosttyApp.shared.reloadConfiguration(source: "settings.copy_on_select")
}
.onChange(of: browserInsecureHTTPAllowlist) { oldValue, newValue in .onChange(of: browserInsecureHTTPAllowlist) { oldValue, newValue in
// Keep draft in sync with external changes unless the user has local unsaved edits. // Keep draft in sync with external changes unless the user has local unsaved edits.
if browserInsecureHTTPAllowlistDraft == oldValue { if browserInsecureHTTPAllowlistDraft == oldValue {
@ -6020,7 +5972,6 @@ struct SettingsView: View {
showMenuBarExtra = MenuBarExtraSettings.defaultShowInMenuBar showMenuBarExtra = MenuBarExtraSettings.defaultShowInMenuBar
warnBeforeQuitShortcut = QuitWarningSettings.defaultWarnBeforeQuit warnBeforeQuitShortcut = QuitWarningSettings.defaultWarnBeforeQuit
commandPaletteRenameSelectAllOnFocus = CommandPaletteRenameSelectionSettings.defaultSelectAllOnFocus commandPaletteRenameSelectAllOnFocus = CommandPaletteRenameSelectionSettings.defaultSelectAllOnFocus
terminalCopyOnSelectEnabled = TerminalCopyOnSelectSettings.defaultEnabled
commandPaletteSearchAllSurfaces = CommandPaletteSwitcherSearchSettings.defaultSearchAllSurfaces commandPaletteSearchAllSurfaces = CommandPaletteSwitcherSearchSettings.defaultSearchAllSurfaces
ShortcutHintDebugSettings.resetVisibilityDefaults() ShortcutHintDebugSettings.resetVisibilityDefaults()
alwaysShowShortcutHints = ShortcutHintDebugSettings.defaultAlwaysShowHints alwaysShowShortcutHints = ShortcutHintDebugSettings.defaultAlwaysShowHints

View file

@ -584,44 +584,6 @@ final class GhosttyConfigTests: XCTestCase {
XCTAssertFalse(TelemetrySettings.isEnabled(defaults: defaults)) XCTAssertFalse(TelemetrySettings.isEnabled(defaults: defaults))
} }
func testTerminalCopyOnSelectDefaultsToDisabledWhenUnset() {
let suiteName = "cmux.tests.copy-on-select.\(UUID().uuidString)"
guard let defaults = UserDefaults(suiteName: suiteName) else {
XCTFail("Failed to create isolated user defaults suite")
return
}
defer {
defaults.removePersistentDomain(forName: suiteName)
}
defaults.removeObject(forKey: TerminalCopyOnSelectSettings.enabledKey)
XCTAssertFalse(TerminalCopyOnSelectSettings.isEnabled(defaults: defaults))
XCTAssertEqual(
TerminalCopyOnSelectSettings.overrideConfigLine(defaults: defaults),
"copy-on-select = false"
)
}
func testTerminalCopyOnSelectUsesClipboardOverrideWhenEnabled() {
let suiteName = "cmux.tests.copy-on-select.\(UUID().uuidString)"
guard let defaults = UserDefaults(suiteName: suiteName) else {
XCTFail("Failed to create isolated user defaults suite")
return
}
defer {
defaults.removePersistentDomain(forName: suiteName)
}
defaults.set(true, forKey: TerminalCopyOnSelectSettings.enabledKey)
XCTAssertTrue(TerminalCopyOnSelectSettings.isEnabled(defaults: defaults))
XCTAssertEqual(
TerminalCopyOnSelectSettings.overrideConfigLine(defaults: defaults),
"copy-on-select = clipboard"
)
}
private func rgb255(_ color: NSColor) -> RGB { private func rgb255(_ color: NSColor) -> RGB {
let srgb = color.usingColorSpace(.sRGB)! let srgb = color.usingColorSpace(.sRGB)!
var red: CGFloat = 0 var red: CGFloat = 0