ncurses 5.9 - patch 20140315
authorThomas E. Dickey <dickey@invisible-island.net>
Sun, 16 Mar 2014 00:46:02 +0000 (00:46 +0000)
committerThomas E. Dickey <dickey@invisible-island.net>
Sun, 16 Mar 2014 00:46:02 +0000 (00:46 +0000)
+ modify _nc_New_TopRow_and_CurrentItem() to ensure that the menu's
  top-row is adjusted as needed to ensure that the current item is
  on the screen (patch by Johann Klammer).
+ add wgetdelay() to retrieve _delay member of WINDOW if it happens to
  be opaque, e.g., in the pthread configuration (prompted by patch by
  Soren Brinkmann).

13 files changed:
NEWS
dist.mk
include/curses.h.in
man/curs_opaque.3x
man/curs_threads.3x
man/ncurses.3x
menu/m_global.c
package/debian-mingw/changelog
package/debian-mingw64/changelog
package/debian/changelog
package/mingw-ncurses.nsi
package/mingw-ncurses.spec
package/ncurses.spec

diff --git a/NEWS b/NEWS
index a356be370e2f86baee35ab20d5a8edfdb2606501..329d3b8add6dec9b466b0c8578f1204efe1e58cf 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -25,7 +25,7 @@
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
--- $Id: NEWS,v 1.2177 2014/03/08 22:10:41 tom Exp $
+-- $Id: NEWS,v 1.2180 2014/03/15 20:39:44 tom Exp $
 -------------------------------------------------------------------------------
 
 This is a log of changes that ncurses has gone through since Zeyd started
@@ -45,6 +45,14 @@ See the AUTHORS file for the corresponding full names.
 Changes through 1.9.9e did not credit all contributions;
 it is not possible to add this information.
 
+20140315
+       + modify _nc_New_TopRow_and_CurrentItem() to ensure that the menu's
+         top-row is adjusted as needed to ensure that the current item is
+         on the screen (patch by Johann Klammer).
+       + add wgetdelay() to retrieve _delay member of WINDOW if it happens to
+         be opaque, e.g., in the pthread configuration (prompted by patch by
+         Soren Brinkmann).
+
 20140308
        + modify ifdef in read_entry.c to handle the case where
          NCURSES_USE_DATABASE is not defined (patch by Xin Li).
diff --git a/dist.mk b/dist.mk
index 7f43575d1c1de2e8a7844611fef44965edb0ded1..2dcbe1cb697ee0a451ab428a80716f3ce8a3f9c5 100644 (file)
--- a/dist.mk
+++ b/dist.mk
@@ -25,7 +25,7 @@
 # use or other dealings in this Software without prior written               #
 # authorization.                                                             #
 ##############################################################################
-# $Id: dist.mk,v 1.975 2014/03/08 19:20:13 tom Exp $
+# $Id: dist.mk,v 1.976 2014/03/15 16:53:42 tom Exp $
 # Makefile for creating ncurses distributions.
 #
 # This only needs to be used directly as a makefile by developers, but
@@ -37,7 +37,7 @@ SHELL = /bin/sh
 # These define the major/minor/patch versions of ncurses.
 NCURSES_MAJOR = 5
 NCURSES_MINOR = 9
-NCURSES_PATCH = 20140308
+NCURSES_PATCH = 20140315
 
 # We don't append the patch to the version, since this only applies to releases
 VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
index 15c9f7f24375f1cb7b162602297579346073289a..30da31a5aa8905b58eee132fb1599879680460a5 100644 (file)
@@ -32,7 +32,7 @@
  *     and: Thomas E. Dickey                        1996-on                 *
  ****************************************************************************/
 
-/* $Id: curses.h.in,v 1.237 2014/02/01 22:08:12 tom Exp $ */
+/* $Id: curses.h.in,v 1.238 2014/03/15 19:04:15 tom Exp $ */
 
 #ifndef __NCURSES_H
 #define __NCURSES_H
@@ -930,6 +930,7 @@ extern NCURSES_EXPORT(bool) is_pad (const WINDOW *);                /* @GENERATED_EXT_FUNCS@ *
 extern NCURSES_EXPORT(bool) is_scrollok (const WINDOW *);      /* @GENERATED_EXT_FUNCS@ */
 extern NCURSES_EXPORT(bool) is_subwin (const WINDOW *);                /* @GENERATED_EXT_FUNCS@ */
 extern NCURSES_EXPORT(bool) is_syncok (const WINDOW *);                /* @GENERATED_EXT_FUNCS@ */
+extern NCURSES_EXPORT(int) wgetdelay (const WINDOW *);         /* @GENERATED_EXT_FUNCS@ */
 extern NCURSES_EXPORT(int) wgetscrreg (const WINDOW *, int *, int *); /* @GENERATED_EXT_FUNCS@ */
 
 #else
@@ -1349,6 +1350,7 @@ NCURSES_EXPORT(int) vsscanf(const char *, const char *, va_list);
 #define is_scrollok(win)       ((win) ? (win)->_scroll : FALSE)
 #define is_subwin(win)         ((win) ? ((win)->_flags & _SUBWIN) != 0 : FALSE)
 #define is_syncok(win)         ((win) ? (win)->_sync : FALSE)
+#define wgetdelay(win)         ((win) ? (win)->_delay : 0)
 #define wgetparent(win)                ((win) ? (win)->_parent : 0)
 #define wgetscrreg(win,t,b)    ((win) ? (*(t) = (win)->_regtop, *(b) = (win)->_regbottom, OK) : ERR)
 #endif
index 8c315ddda432a7879898e88710c93b548147df67..62eb4e0b58a31790ec11099ea96ce79a97d1bcf4 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 2007-2010,2013 Free Software Foundation, Inc.              *
+.\" Copyright (c) 2007-2013,2014 Free Software Foundation, Inc.              *
 .\"                                                                          *
 .\" Permission is hereby granted, free of charge, to any person obtaining a  *
 .\" copy of this software and associated documentation files (the            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_opaque.3x,v 1.10 2013/07/20 19:42:29 tom Exp $
+.\" $Id: curs_opaque.3x,v 1.11 2014/03/15 19:24:23 tom Exp $
 .TH curs_opaque 3X ""
 .ie \n(.g .ds `` \(lq
 .el       .ds `` ``
@@ -78,6 +78,8 @@
 .br
 \fBWINDOW * wgetparent(const WINDOW *win);\fR
 .br
+\fBint wgetdelay(const WINDOW *win);\fR
+.br
 \fBint wgetscrreg(const WINDOW *win, int *top, int *bottom);\fR
 .br
 .SH DESCRIPTION
@@ -123,6 +125,9 @@ i.e., created by \fBsubwin\fP or \fBderwin\fP
 \fBis_syncok\fR
 returns the value set in \fBsyncok\fR
 .TP 5
+\fBwgetdelay\fR
+returns the delay timeout as set in \fBwtimeout\fP.
+.TP 5
 \fBwgetparent\fR
 returns the parent WINDOW pointer for subwindows,
 or NULL for windows having no parent.
index 5732e924c1b54cdfc1f5f334d1f025f5d730ed90..cddfd16b5e3844ba5da10a3a97e2996ed1dbbe69 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 2008-2010,2012 Free Software Foundation, Inc.              *
+.\" Copyright (c) 2008-2012,2014 Free Software Foundation, Inc.              *
 .\"                                                                          *
 .\" Permission is hereby granted, free of charge, to any person obtaining a  *
 .\" copy of this software and associated documentation files (the            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_threads.3x,v 1.19 2012/05/26 17:03:26 tom Exp $
+.\" $Id: curs_threads.3x,v 1.20 2014/03/15 19:25:28 tom Exp $
 .TH curs_threads 3X ""
 .de bP
 .IP \(bu 4
@@ -540,6 +540,7 @@ wget_wch/screen (input-operation)
 wget_wstr/screen (input-operation)
 wgetbkgrnd/window
 wgetch/screen (input-operation)
+wgetdelay/window
 wgetn_wstr/screen (input-operation)
 wgetnstr/screen (input-operation)
 wgetparent/window
index 0c0c2ef39747762071c7600f03e82c282b6ed6e4..9a7ec6bd8cb25d87b353dc517ee379305dcf31e7 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998-2012,2013 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2013,2014 Free Software Foundation, Inc.              *
 .\"                                                                          *
 .\" Permission is hereby granted, free of charge, to any person obtaining a  *
 .\" copy of this software and associated documentation files (the            *
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: ncurses.3x,v 1.115 2014/03/08 22:07:02 tom Exp $
+.\" $Id: ncurses.3x,v 1.116 2014/03/15 19:26:00 tom Exp $
 .hy 0
 .TH ncurses 3X ""
 .ie \n(.g .ds `` \(lq
index d85f207ed57e44e67340b699f786a341bef73ad8..fc4103c2b88c0f4631493b861beb03be57d9e929 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2012,2014 Free Software Foundation, Inc.              *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
@@ -37,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_global.c,v 1.27 2012/06/10 00:09:15 tom Exp $")
+MODULE_ID("$Id: m_global.c,v 1.28 2014/03/15 20:37:22 tom Exp $")
 
 static char mark[] = "-";
 /* *INDENT-OFF* */
@@ -568,7 +568,9 @@ _nc_New_TopRow_and_CurrentItem(
 
       cur_item = menu->curitem;
       assert(cur_item);
-      menu->toprow = (short)new_toprow;
+      menu->toprow = (short)(((menu->rows - menu->frows) >= 0)
+                            ? min(menu->rows - menu->frows, new_toprow)
+                            : 0);
       menu->curitem = new_current_item;
 
       if (mterm_called)
@@ -590,7 +592,9 @@ _nc_New_TopRow_and_CurrentItem(
     }
   else
     {                          /* if we are not posted, this is quite simple */
-      menu->toprow = (short)new_toprow;
+      menu->toprow = (short)(((menu->rows - menu->frows) >= 0)
+                            ? min(menu->rows - menu->frows, new_toprow)
+                            : 0);
       menu->curitem = new_current_item;
     }
 }
index 13be3173c98b460cff09c1cf46945c6eb322278a..cff4790cb025fe33cbd8667d2f920e219087cdbe 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (5.9-20140308) unstable; urgency=low
+ncurses6 (5.9-20140315) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 08 Mar 2014 14:20:13 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 15 Mar 2014 12:53:42 -0400
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
index 13be3173c98b460cff09c1cf46945c6eb322278a..cff4790cb025fe33cbd8667d2f920e219087cdbe 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (5.9-20140308) unstable; urgency=low
+ncurses6 (5.9-20140315) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 08 Mar 2014 14:20:13 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 15 Mar 2014 12:53:42 -0400
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
index 3f7600ad78cd89880829e543a62845015cdb69b6..c0f99aed6a036b726870cb8a7a0e1dcb6fca5dfb 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (5.9-20140308) unstable; urgency=low
+ncurses6 (5.9-20140315) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 08 Mar 2014 14:20:13 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 15 Mar 2014 12:53:42 -0400
 
 ncurses6 (5.9-20120608) unstable; urgency=low
 
index a5b989f4dbd521188e67074e827965aae6a9cee0..e78e4e74219f71284d1af1ba3f51c8ca22cd6cfe 100644 (file)
@@ -1,4 +1,4 @@
-; $Id: mingw-ncurses.nsi,v 1.30 2014/03/08 19:20:13 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.31 2014/03/15 16:53:42 tom Exp $\r
 \r
 ; TODO add examples\r
 ; TODO bump ABI to 6\r
@@ -10,7 +10,7 @@
 !define VERSION_MAJOR "5"\r
 !define VERSION_MINOR "9"\r
 !define VERSION_YYYY  "2014"\r
-!define VERSION_MMDD  "0308"\r
+!define VERSION_MMDD  "0315"\r
 !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}\r
 \r
 !define MY_ABI   "5"\r
index 85ed94f76b68cc9dc3b5dbb8ce3d981c816a8e33..cd8ad6413b6097b31d460d148426afe182d90eef 100644 (file)
@@ -3,7 +3,7 @@
 Summary: shared libraries for terminal handling
 Name: mingw32-ncurses6
 Version: 5.9
-Release: 20140308
+Release: 20140315
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
index a01506d10520539737f78a32fe2be5e8a015aa11..9bac0f44055b3ed1cd076b22d2852b41a0297efa 100644 (file)
@@ -1,7 +1,7 @@
 Summary: shared libraries for terminal handling
 Name: ncurses6
 Version: 5.9
-Release: 20140308
+Release: 20140315
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz