[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Lynx-dev] Problem with "select" pulldown lists
From: |
Thomas Dickey |
Subject: |
Re: [Lynx-dev] Problem with "select" pulldown lists |
Date: |
Wed, 12 Oct 2005 19:31:56 -0400 |
User-agent: |
Mutt/1.5.9i |
On Wed, Oct 12, 2005 at 11:20:05AM -0400, Small, Gene wrote:
> Lynx,
>
> Has anyone noticed a problem with the formatting of select pulldowns
> when positioned exactly to the screen edge? I am running lynx with the
> "-nocolor -nomargins -nobold" options which may or may not have any
> effect on the problem. The problem that is occurring is that when the
> item is selected and the items of the list are displayed they use the
> entire width of the screen - not just the width of the widest element.
> This is repeatable both on my device which has a fixed width (26
> character) display and on a terminal window where I can vary the width.
> When I set the width to 26 the problem occurs and when set to 27 it does
> not.
Here's a fix
--- LYCurses.c.orig 2005-10-11 19:22:32.000000000 -0400
+++ LYCurses.c 2005-10-12 19:28:07.000000000 -0400
@@ -1690,8 +1690,13 @@
if (*left_x > 0 && (*left_x + *width + 4) < LYcolLimit)
form_window = newwin(*height, *width + 4, *top_y, *left_x - 1);
if (form_window == 0) {
- *width = LYcolLimit - 4;
- form_window = newwin(*height, LYcolLimit, *top_y, 0);
+ if (*width > LYcolLimit - 4) {
+ *width = LYcolLimit - 4;
+ *left_x = 1;
+ } else {
+ *left_x = LYcolLimit - 4 - *width;
+ }
+ form_window = newwin(*height, *width + 4, *top_y, *left_x - 1);
}
if (form_window == 0) {
HTAlert(POPUP_FAILED);
The last change to that chunk was in 2.8.6dev.6, e.g., the one for
LYstartPopup().
--
Thomas E. Dickey <address@hidden>
http://invisible-island.net
ftp://invisible-island.net