git-gui: add smart case search mode in searchbar
Setting config gui.search.smartcase to true, the search mode in the searchbar (from the blame view) is by default case-insensitive. But entering an upper case letter into the search field activates the case- sensitive search mode. Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com> Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
This commit is contained in:
parent
12b219f7f9
commit
0a0243d733
@ -7,7 +7,8 @@ field w
|
||||
field ctext
|
||||
|
||||
field searchstring {}
|
||||
field casesensitive 1
|
||||
field casesensitive
|
||||
field default_casesensitive
|
||||
field searchdirn -forwards
|
||||
|
||||
field smarktop
|
||||
@ -18,6 +19,12 @@ constructor new {i_w i_text args} {
|
||||
set w $i_w
|
||||
set ctext $i_text
|
||||
|
||||
if {[is_config_true gui.search.smartcase]} {
|
||||
set default_casesensitive 0
|
||||
} else {
|
||||
set default_casesensitive 1
|
||||
}
|
||||
|
||||
${NS}::frame $w
|
||||
${NS}::label $w.l -text [mc Find:]
|
||||
entry $w.ent -textvariable ${__this}::searchstring -background lightgreen
|
||||
@ -45,6 +52,7 @@ constructor new {i_w i_text args} {
|
||||
method show {} {
|
||||
if {![visible $this]} {
|
||||
grid $w
|
||||
set casesensitive $default_casesensitive
|
||||
}
|
||||
focus -force $w.ent
|
||||
}
|
||||
@ -125,6 +133,9 @@ method _incrsearch {} {
|
||||
if {[catch {$ctext index anchor}]} {
|
||||
$ctext mark set anchor [_get_new_anchor $this]
|
||||
}
|
||||
if {[regexp {[[:upper:]]} $searchstring]} {
|
||||
set casesensitive 1
|
||||
}
|
||||
if {$searchstring ne {}} {
|
||||
set here [_do_search $this anchor mlen]
|
||||
if {$here ne {}} {
|
||||
|
Loading…
Reference in New Issue
Block a user