From: Johannes Sixt Date: Sat, 14 Dec 2024 14:53:35 +0000 (+0100) Subject: gitk: offer "Copy commit ID to X11 selection" only on X11 X-Git-Tag: v2.48.0-rc1~31^2^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=36625a6974156fbc56bbb97c983b09ae303a06ff;p=thirdparty%2Fgit.git gitk: offer "Copy commit ID to X11 selection" only on X11 This option is only useful where a selection clipboard is available, which is only the case on X11. Do not clutter the UI in other environments. Signed-off-by: Johannes Sixt --- diff --git a/gitk b/gitk index 38baf20b95..12c0dc401e 100755 --- a/gitk +++ b/gitk @@ -1969,6 +1969,10 @@ proc confirm_popup {msg {owner .}} { return $confirm_ok } +proc haveselectionclipboard {} { + return [expr {[tk windowingsystem] eq "x11"}] +} + proc setoptions {} { global use_ttk @@ -7410,7 +7414,7 @@ proc selectline {l isnew {desired_loc {}} {switch_to_patch 0}} { $sha1entry delete 0 end $sha1entry insert 0 $id - if {$autoselect} { + if {$autoselect && [haveselectionclipboard]} { $sha1entry selection range 0 $autosellen } if {$autocopy} { @@ -11605,9 +11609,11 @@ proc prefspage_general {notebook} { ${NS}::checkbutton $page.autocopy -text [mc "Copy commit ID to clipboard"] \ -variable autocopy grid x $page.autocopy -sticky w - ${NS}::checkbutton $page.autoselect -text [mc "Copy commit ID to X11 selection"] \ - -variable autoselect - grid x $page.autoselect -sticky w + if {[haveselectionclipboard]} { + ${NS}::checkbutton $page.autoselect -text [mc "Copy commit ID to X11 selection"] \ + -variable autoselect + grid x $page.autoselect -sticky w + } spinbox $page.autosellen -from 1 -to 40 -width 4 -textvariable autosellen ${NS}::label $page.autosellenl -text [mc "Length of commit ID to copy"] grid x $page.autosellenl $page.autosellen -sticky w