summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfvogel <fvogelnew1@free.fr>2012-05-17 14:30:38 (GMT)
committerfvogel <fvogelnew1@free.fr>2012-05-17 14:30:38 (GMT)
commita6c84ba46ba6fdbc4d426916fae067f8af6ef1e4 (patch)
tree7bc1ad7d29414f00126f3f2adeadc7cc81183a81
parentc29a2d58d9c3de29bcd7e88011aea2b9c1bcd92e (diff)
downloadtk-a6c84ba46ba6fdbc4d426916fae067f8af6ef1e4.zip
tk-a6c84ba46ba6fdbc4d426916fae067f8af6ef1e4.tar.gz
tk-a6c84ba46ba6fdbc4d426916fae067f8af6ef1e4.tar.bz2
[Bug 1630254]: missing scrolling of text widget when from a -startline == -endline initial state it is configured to display a non-empty part of it
-rw-r--r--ChangeLog6
-rw-r--r--generic/tkTextDisp.c17
2 files changed, 21 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index f2059ce..3668ef5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2012-05-?? Francois Vogel <fvogelnew1@free.fr>
+
+ * generic/tkTextDisp.c: [Bug 1630254]: missing scrolling of text widget
+ when from a -startline == -endline initial state it is configured to display
+ a non-empty part of it
+
2012-05-09 Jan Nijtmans <nijtmans@users.sf.net>
* win/tkWinWm.c: Change TkpWmSetState signature to match UNIX,
diff --git a/generic/tkTextDisp.c b/generic/tkTextDisp.c
index d0cd4d2..13695e8 100644
--- a/generic/tkTextDisp.c
+++ b/generic/tkTextDisp.c
@@ -2005,8 +2005,21 @@ UpdateDisplayInfo(
* widget.
*/
- lineNum = -1;
- bytesToCount = 0; /* Stop compiler warning. */
+ if (textPtr->start == textPtr->end) {
+ /*
+ * Empty peer widget.
+ */
+ lineNum = -1;
+ bytesToCount = 0; /* Stop compiler warning. */
+ } else {
+ /*
+ * Widget that was empty, but no longer is.
+ * (Bug 1630254)
+ */
+ lineNum = TkBTreeNumLines(textPtr->sharedTextPtr->tree,
+ textPtr) - 1;
+ bytesToCount = INT_MAX;
+ }
} else {
lineNum = TkBTreeLinesTo(textPtr,
dInfoPtr->dLinePtr->index.linePtr);