|
Here's a patch that should fix it. It's made against the 0.17.1 CVS version that I checked out today. Considering my checkered history with patches <g>, if the patch isn't made correctly, I'd appreciate any instruction anyone wants to give. I'm an AS/400 programmer, not a Unix guy (as is probably obvious :-) I'll send the same patch for 0.16.1 in a separate msg. --Dave ==================================================================== diff -ur tn5250-0.17.1.old/ChangeLog tn5250-0.17.1/ChangeLog --- tn5250-0.17.1.old/ChangeLog Thu Dec 28 23:10:18 2000 +++ tn5250-0.17.1/ChangeLog Sun Dec 31 14:13:09 2000 @@ -1,3 +1,7 @@ +2000-12-31 Dave McKenzie <davemck@galois.com> +- Another cursor bug: in a window, cursor was positioned at row 1, col 1 + of window instead of at first input field. + 2000-12-27 Rich Duzenbury <theduz@theduz.com> - Added Experimental scs2ps (SCS to Postscript) program. - call by: cat myscsfile | scs2ps diff -ur tn5250-0.17.1.old/src/session.c tn5250-0.17.1/src/session.c --- tn5250-0.17.1.old/src/session.c Wed Dec 6 11:30:39 2000 +++ tn5250-0.17.1/src/session.c Sun Dec 31 14:11:06 2000 @@ -1341,6 +1341,7 @@ TN5250_LOG (("StartOfHeader: entered.\n")); tn5250_dbuffer_clear_table(tn5250_display_dbuffer(This->display)); + tn5250_display_clear_pending_insert(This->display); tn5250_display_indicator_set(This->display, TN5250_DISPLAY_IND_X_SYSTEM); n = tn5250_record_get_byte (This->record); diff -ur tn5250-0.17.1.old/src/wtd.c tn5250-0.17.1/src/wtd.c --- tn5250-0.17.1.old/src/wtd.c Wed Dec 6 11:30:39 2000 +++ tn5250-0.17.1/src/wtd.c Sun Dec 31 14:11:37 2000 @@ -165,15 +165,6 @@ tn5250_wtd_context_putc (This, 0x00); /* CC1 */ tn5250_wtd_context_putc (This, 0x00); /* CC2 */ - /* - Set the insert-cursor address. This is necessary to ensure that - we return to same field we were in before the save_screen. - */ - - tn5250_wtd_context_putc (This, IC); - tn5250_wtd_context_putc (This, This->y); - tn5250_wtd_context_putc (This, This->x); - /* If we have header data, start with a SOH order. */ if (This->dst->header_length != 0) { int i; @@ -182,6 +173,14 @@ for (i = 0; i < This->dst->header_length; i++) tn5250_wtd_context_putc (This, This->dst->header_data[i]); } + /* + Set the insert-cursor address. This is necessary to ensure that + we return to same field we were in before the save_screen. + */ + + tn5250_wtd_context_putc (This, IC); + tn5250_wtd_context_putc (This, This->y); + tn5250_wtd_context_putc (This, This->x); for (This->y = 0; This->y < tn5250_dbuffer_height(This->dst); ================================================================= Sean Porterfield wrote: > The cursor is now in the right place in DFU! > > It still doesn't position correctly in at least one screen of the ERP > software we use. The cursor positions to the upper left of a window > instead of the first input capable field. There is an F13 toggle that > changes some of the text on the window (may even be a different record > of the dspf) and then the cursor goes/stays where it is supposed to. > It's just the first time that it doesn't work. > > I can send a trace file if anyone wants it. +--- | This is the LINUX5250 Mailing List! | To submit a new message, send your mail to LINUX5250@midrange.com. | To subscribe to this list send email to LINUX5250-SUB@midrange.com. | To unsubscribe from this list send email to LINUX5250-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.