Update to tk 8.5.19
This commit is contained in:
@@ -85,7 +85,16 @@ bind Text <ButtonRelease-1> {
|
||||
}
|
||||
bind Text <Control-1> {
|
||||
%W mark set insert @%x,%y
|
||||
# An operation that moves the insert mark without making it
|
||||
# one end of the selection must insert an autoseparator
|
||||
if {[%W cget -autoseparators]} {
|
||||
%W edit separator
|
||||
}
|
||||
}
|
||||
# stop an accidental double click triggering <Double-Button-1>
|
||||
bind Text <Double-Control-1> { # nothing }
|
||||
# stop an accidental movement triggering <B1-Motion>
|
||||
bind Text <Control-B1-Motion> { # nothing }
|
||||
bind Text <Left> {
|
||||
tk::TextSetCursor %W insert-1displayindices
|
||||
}
|
||||
@@ -241,6 +250,11 @@ bind Text <Control-slash> {
|
||||
}
|
||||
bind Text <Control-backslash> {
|
||||
%W tag remove sel 1.0 end
|
||||
# An operation that clears the selection must insert an autoseparator,
|
||||
# because the selection operation may have moved the insert mark
|
||||
if {[%W cget -autoseparators]} {
|
||||
%W edit separator
|
||||
}
|
||||
}
|
||||
bind Text <<Cut>> {
|
||||
tk_textCut %W
|
||||
@@ -252,7 +266,15 @@ bind Text <<Paste>> {
|
||||
tk_textPaste %W
|
||||
}
|
||||
bind Text <<Clear>> {
|
||||
# Make <<Clear>> an atomic operation on the Undo stack,
|
||||
# i.e. separate it from other delete operations on either side
|
||||
if {[%W cget -autoseparators]} {
|
||||
%W edit separator
|
||||
}
|
||||
catch {%W delete sel.first sel.last}
|
||||
if {[%W cget -autoseparators]} {
|
||||
%W edit separator
|
||||
}
|
||||
}
|
||||
bind Text <<PasteSelection>> {
|
||||
if {$tk_strictMotif || ![info exists tk::Priv(mouseMoved)]
|
||||
@@ -340,7 +362,16 @@ bind Text <Control-t> {
|
||||
}
|
||||
|
||||
bind Text <<Undo>> {
|
||||
# An Undo operation may remove the separator at the top of the Undo stack.
|
||||
# Then the item at the top of the stack gets merged with the subsequent changes.
|
||||
# Place separators before and after Undo to prevent this.
|
||||
if {[%W cget -autoseparators]} {
|
||||
%W edit separator
|
||||
}
|
||||
catch { %W edit undo }
|
||||
if {[%W cget -autoseparators]} {
|
||||
%W edit separator
|
||||
}
|
||||
}
|
||||
|
||||
bind Text <<Redo>> {
|
||||
@@ -1054,9 +1085,18 @@ proc ::tk_textCopy w {
|
||||
|
||||
proc ::tk_textCut w {
|
||||
if {![catch {set data [$w get sel.first sel.last]}]} {
|
||||
# make <<Cut>> an atomic operation on the Undo stack,
|
||||
# i.e. separate it from other delete operations on either side
|
||||
set oldSeparator [$w cget -autoseparators]
|
||||
if {$oldSeparator} {
|
||||
$w edit separator
|
||||
}
|
||||
clipboard clear -displayof $w
|
||||
clipboard append -displayof $w $data
|
||||
$w delete sel.first sel.last
|
||||
if {$oldSeparator} {
|
||||
$w edit separator
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user