diff options
author | fvogel <fvogel@noemail.net> | 2016-04-29 09:46:18 (GMT) |
---|---|---|
committer | fvogel <fvogel@noemail.net> | 2016-04-29 09:46:18 (GMT) |
commit | 568253d2152a5e4350795501d2443328eb2c71b8 (patch) | |
tree | fa0c69ccba767519a0396be600b2216d4c4224c4 | |
parent | 1fe0e44742a4c3245866f77fde8215676146c8e0 (diff) | |
parent | 98ad79817e81b09b3b037c1faf4d210cec81f40f (diff) | |
download | tk-568253d2152a5e4350795501d2443328eb2c71b8.zip tk-568253d2152a5e4350795501d2443328eb2c71b8.tar.gz tk-568253d2152a5e4350795501d2443328eb2c71b8.tar.bz2 |
Fixed [fd3a4dc111] - <<Modified>> event is not always sent to peers
FossilOrigin-Name: d4b0a69df1e20e0e79bb29f7ee809082ab019354
-rw-r--r-- | generic/tkText.c | 5 | ||||
-rw-r--r-- | tests/text.test | 15 |
2 files changed, 19 insertions, 1 deletions
diff --git a/generic/tkText.c b/generic/tkText.c index 8b94ab7..0a7ae37 100644 --- a/generic/tkText.c +++ b/generic/tkText.c @@ -5215,7 +5215,10 @@ TextEditCmd( */ if ((!oldModified) != (!setModified)) { - GenerateModifiedEvent(textPtr); + for (textPtr = textPtr->sharedTextPtr->peers; textPtr != NULL; + textPtr = textPtr->next) { + GenerateModifiedEvent(textPtr); + } } break; case EDIT_REDO: diff --git a/tests/text.test b/tests/text.test index 0275ee8..a02074b 100644 --- a/tests/text.test +++ b/tests/text.test @@ -6321,6 +6321,21 @@ test text-27.14 {<<Modified>> virtual event - delete before Modified} -body { } -cleanup { destroy .t } -result {thing special} +test text-27.14a {<<Modified>> virtual event - propagation to peers} -body { +# Bug [fd3a4dc111], <<Modified>> event is not always sent to peers + set ::retval 0 + text .t -undo 1 + .t peer create .tt + pack .t .tt + bind .t <<Modified>> {incr ::retval} + bind .tt <<Modified>> {incr ::retval} + .t insert end "This increments ::retval once for each peer, i.e. twice." + .t edit modified 0 ; # shall increment twice as well, not just once + update idletasks + set ::retval +} -cleanup { + destroy .t .tt +} -result {4} test text-27.15 {<<Selection>> virtual event} -body { set ::retval no_selection pack [text .t -undo 1] |