[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
lynx-dev ENABLE_SCROLLBACK, other GridText.c changes - patch
From: |
Klaus Weide |
Subject: |
lynx-dev ENABLE_SCROLLBACK, other GridText.c changes - patch |
Date: |
Tue, 29 Dec 1998 08:55:06 -0600 (CST) |
Is enable_scrollback really working to enable scrollback for
anybody? Brief testing shows it doesn't work for me on linux
console. Anyway...
Patch below also includes changes I sent a while ago, which somehow
didn't make it into 2.8.2dev.12. I think Tom just missed them
(otherwise please let me know if you think something is wrong with
them). See
Linkname: Re: lynx-dev lynx 2.8.2 dev8 bug
URL: http://www.flora.org/lynx-dev/html/month1298/msg00168.html
Last Mod: Sat, 05 Dec 1998 10:18:40 GMT
Also removes FREE(special) which looks wrong (but normally not compiled
in).
* The logic added to display_page for avoiding unnecessary screen
redraw with partial display (see 1998-12-03) is now disabled if
enable_scrollback is set. Otherwise displayed pages could appear
as empty (or with only the current link drawn).
* Modify conditions under which screen style cache is reset (only
relevant for color style in combination with partial display).
Patch against 2.8.2dev.12.
--- lynx2-8-2.orig/src/GridText.c Wed Dec 16 15:56:42 1998
+++ lynx2-8-2/src/GridText.c Tue Dec 29 08:14:25 1998
@@ -1180,8 +1180,13 @@
}
#ifdef USE_COLOR_STYLE
+#ifdef DISP_PARTIAL
+ if (display_partial ||
+ line_number != text->first_lineno_last_disp_partial ||
+ line_number > text->last_lineno_last_disp_partial)
+#endif /* DISP_PARTIAL */
LynxResetScreenCache();
-#endif
+#endif /* USE_COLOR_STYLE */
text->top_of_screen = line_number;
display_title(text); /* will move cursor to top of screen */
@@ -1610,6 +1615,7 @@
#ifdef DISP_PARTIAL
if (display_partial && display_flag &&
last_disp_partial >= text->top_of_screen &&
+ !enable_scrollback &&
!recent_sizechange) { /* really remember them if ok - kw */
text->first_lineno_last_disp_partial = text->top_of_screen;
text->last_lineno_last_disp_partial = last_disp_partial;
@@ -2368,7 +2374,6 @@
CTRACE(tfp, "add(%c) %d/%d\n", ch,
HTisDocumentSource(), HTOutputFormat != WWW_SOURCE);
}
- FREE(special);
} /* trace only */
#endif /* DEBUG_APPCH */
@@ -3107,7 +3112,7 @@
*/
i = a->extent;
}
- j = (last->size - i);
+ k = j = (last->size - i);
while (j < last->size) {
if (!IsSpecialAttrChar(last->data[j]) &&
!isspace((unsigned char)last->data[j]) &&
@@ -3146,11 +3151,12 @@
while (i == 0 &&
(a->extent > CurBlankExtent ||
(a->extent == CurBlankExtent &&
+ k == 0 &&
prev != text->last_line &&
(prev->size == 0 ||
prev->data[prev->size - 1] == ']')))) {
start = prev;
- j = prev->size - a->extent + CurBlankExtent;
+ k = j = prev->size - a->extent + CurBlankExtent;
if (j < 0) {
/*
* The anchor starts on a preceding line,
@@ -3175,7 +3181,8 @@
}
if (i == 0) {
if (a->extent > (CurBlankExtent + prev->size) ||
- (a->extent == CurBlankExtent + prev->size &&
+ (a->extent == CurBlankExtent + (int)prev->size &&
+ k == 0 &&
prev->prev != text->last_line &&
(prev->prev->size == 0 ||
prev->prev->data[prev->prev->size - 1] == ']'))) {
@@ -4634,6 +4641,17 @@
*/
if (text)
text->page_has_target = NO;
+
+#ifdef DISP_PARTIAL
+ /* Reset these for the previous and current text. - kw */
+ text->first_lineno_last_disp_partial =
+ text->last_lineno_last_disp_partial = -1;
+ if (HTMainText) {
+ HTMainText->first_lineno_last_disp_partial =
+ HTMainText->last_lineno_last_disp_partial = -1;
+ }
+#endif /* DISP_PARTIAL */
+
/*
* Make this text the most current in the loaded texts list. - FM
*/
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- lynx-dev ENABLE_SCROLLBACK, other GridText.c changes - patch,
Klaus Weide <=