summaryrefslogtreecommitdiffstats
path: root/generic/tkTextDisp.c
diff options
context:
space:
mode:
Diffstat (limited to 'generic/tkTextDisp.c')
-rw-r--r--generic/tkTextDisp.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/generic/tkTextDisp.c b/generic/tkTextDisp.c
index 6b6d305..4715864 100644
--- a/generic/tkTextDisp.c
+++ b/generic/tkTextDisp.c
@@ -4780,7 +4780,8 @@ TextRedrawTag(
* the line containing the previous character.
*/
- if (curIndexPtr->byteIndex == 0) {
+ if ((curIndexPtr->byteIndex == 0)
+ && !TkTextIsElided(textPtr, curIndexPtr, NULL)) {
dlPtr = FindDLine(textPtr, dlPtr, curIndexPtr);
} else {
TkTextIndex tmp;
@@ -5036,7 +5037,8 @@ TkTextSetYView(
*/
textPtr->topIndex = *indexPtr;
- if (indexPtr->byteIndex != 0) {
+ if (!(indexPtr->byteIndex == 0
+ && !TkTextIsElided(textPtr, indexPtr, NULL))) {
TkTextFindDisplayLineEnd(textPtr, &textPtr->topIndex, 0, NULL);
}
dInfoPtr->newTopPixelOffset = pickPlace;
@@ -6179,13 +6181,11 @@ GetYPixelCount(
/*
* For the common case where this dlPtr is also the start of the logical
- * line, we can return right away. Note the implicit assumption here that
- * the start of a logical line is always the start of a display line (if
- * the 'elide won't elide first newline' bug is fixed, this will no longer
- * necessarily be true).
+ * line, we can return right away.
*/
- if (dlPtr->index.byteIndex == 0) {
+ if ((dlPtr->index.byteIndex == 0)
+ && !TkTextIsElided(textPtr, &dlPtr->index, NULL)) {
return count;
}