From: Thomas E. Dickey Date: Sun, 27 Mar 2016 01:05:59 +0000 (+0000) Subject: ncurses 6.0 - patch 20160326 X-Git-Tag: v6.1~94 X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=commitdiff_plain;h=2a32bee362db64f5a06b2124976b928ac3faa578 ncurses 6.0 - patch 20160326 + regenerate HTML manpages. + improve test/demo_menus.c, allowing mouse-click on the menu-headers to switch the active menu. This requires a new extension option O_MOUSE_MENU to tell the menu driver to put mouse events which do not apply to the active menu back into the queue so that the application can handle the event. --- diff --git a/NEWS b/NEWS index 6a983cad..b348f7e7 100644 --- a/NEWS +++ b/NEWS @@ -25,7 +25,7 @@ -- sale, use or other dealings in this Software without prior written -- -- authorization. -- ------------------------------------------------------------------------------- --- $Id: NEWS,v 1.2583 2016/03/19 23:00:31 tom Exp $ +-- $Id: NEWS,v 1.2586 2016/03/27 00:19:02 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. +20160326 + + regenerate HTML manpages. + + improve test/demo_menus.c, allowing mouse-click on the menu-headers + to switch the active menu. This requires a new extension option + O_MOUSE_MENU to tell the menu driver to put mouse events which do not + apply to the active menu back into the queue so that the application + can handle the event. + 20160319 + improve description of tgoto parameters (report by Steffen Nurpmeso). + amend workaround for Solaris line-drawing to restore a special case diff --git a/VERSION b/VERSION index 9d0ab42c..18860146 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -5:0:9 6.0 20160319 +5:0:9 6.0 20160326 diff --git a/dist.mk b/dist.mk index b4894977..2d2eb3c6 100644 --- 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.1098 2016/03/19 14:38:08 tom Exp $ +# $Id: dist.mk,v 1.1099 2016/03/26 12:23:50 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 = 6 NCURSES_MINOR = 0 -NCURSES_PATCH = 20160319 +NCURSES_PATCH = 20160326 # We don't append the patch to the version, since this only applies to releases VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR) diff --git a/doc/html/man/captoinfo.1m.html b/doc/html/man/captoinfo.1m.html index 939c85e6..0bc7f7e9 100644 --- a/doc/html/man/captoinfo.1m.html +++ b/doc/html/man/captoinfo.1m.html @@ -198,7 +198,7 @@

SEE ALSO

        infocmp(1m), curses(3x), terminfo(5)
 
-       This describes ncurses version 6.0 (patch 20160130).
+       This describes ncurses version 6.0 (patch 20160326).
 
 
 

AUTHOR

diff --git a/doc/html/man/clear.1.html b/doc/html/man/clear.1.html
index 73658604..aa31f125 100644
--- a/doc/html/man/clear.1.html
+++ b/doc/html/man/clear.1.html
@@ -67,7 +67,7 @@
 

SEE ALSO

        tput(1), terminfo(5)
 
-       This describes ncurses version 6.0 (patch 20160130).
+       This describes ncurses version 6.0 (patch 20160326).
 
 
 
diff --git a/doc/html/man/curs_termcap.3x.html b/doc/html/man/curs_termcap.3x.html
index 02077a15..80c555ed 100644
--- a/doc/html/man/curs_termcap.3x.html
+++ b/doc/html/man/curs_termcap.3x.html
@@ -1,6 +1,6 @@
 
 
 
@@ -135,11 +135,30 @@
 
 
 

FORMATTING CAPABILITIES

-       The  tgoto  routine  instantiates  the parameters into the
-       given capability.  The output from this routine is  to  be
-       passed to tputs.
-
-       The  tputs  routine  is described on the curs_terminfo(3x)
+       The  tgoto  routine expands the given capability using the
+       parameters.
+
+       o   Because the capability may  have  padding  characters,
+           the  output  of tgoto should be passed to tputs rather
+           than some other output function such as printf.
+
+       o   While tgoto is assumed to be used for the  two-parame-
+           ter  cursor  positioning  capability, termcap applica-
+           tions also use it for single-parameter capabilities.
+
+           Doing this shows a quirk in tgoto: most hardware  ter-
+           minals  use  cursor addressing with row first, but the
+           original developers of the termcap interface chose  to
+           put  the  column  parameter first.  The tgoto function
+           swaps the order of parameters.  It does this also  for
+           calls  requiring  only  a  single  parameter.  In that
+           case, the first parameter is merely a placeholder.
+
+       o   Normally the ncurses library is compiled with terminfo
+           support.  In that case, tgoto uses tparm (a more capa-
+           ble formatter).
+
+       The tputs routine is described  on  the  curs_terminfo(3x)
        manual page.  It can retrieve capabilities by either term-
        cap or terminfo name.
 
@@ -147,16 +166,16 @@
 

GLOBAL VARIABLES

        The variables PC, UP and BC are set by tgetent to the ter-
        minfo   entry's   data   for   pad_char,   cursor_up   and
-       backspace_if_not_bs,  respectively.   UP  is  not  used by
+       backspace_if_not_bs, respectively.   UP  is  not  used  by
        ncurses.  PC is used in the tdelay_output function.  BC is
-       used  in  the tgoto emulation.  The variable ospeed is set
+       used in the tgoto emulation.  The variable ospeed  is  set
        by ncurses in a system-specific coding to reflect the ter-
        minal speed.
 
 
 

RETURN VALUE

        Except where explicitly noted, routines that return an in-
-       teger return ERR upon failure and OK (SVr4 only  specifies
+       teger  return ERR upon failure and OK (SVr4 only specifies
        "an integer value other than ERR") upon successful comple-
        tion.
 
@@ -165,67 +184,67 @@
 
 

BUGS

        If you call tgetstr to fetch ca or any other parameterized
-       string,  be aware that it will be returned in terminfo no-
+       string, be aware that it will be returned in terminfo  no-
        tation, not the older and not-quite-compatible termcap no-
-       tation.   This  will not cause problems if all you do with
-       it is call tgoto or tparm,  which  both  expand  terminfo-
-       style  strings  as terminfo.  (The tgoto function, if con-
-       figured to support termcap, will check if  the  string  is
-       indeed  terminfo-style  by  looking for "%p" parameters or
-       "$<..>" delays, and invoke a termcap-style parser  if  the
+       tation.  This will not cause problems if all you  do  with
+       it  is  call  tgoto  or tparm, which both expand terminfo-
+       style strings as terminfo.  (The tgoto function,  if  con-
+       figured  to  support  termcap, will check if the string is
+       indeed terminfo-style by looking for  "%p"  parameters  or
+       "$<..>"  delays,  and invoke a termcap-style parser if the
        string does not appear to be terminfo).
 
-       Because  terminfo  conventions for representing padding in
-       string capabilities differ  from  termcap's,  tputs("50");
-       will  put  out a literal "50" rather than busy-waiting for
+       Because terminfo conventions for representing  padding  in
+       string  capabilities  differ  from termcap's, tputs("50");
+       will put out a literal "50" rather than  busy-waiting  for
        50 milliseconds.  Cope with it.
 
-       Note that termcap has nothing analogous to terminfo's  sgr
-       string.   One consequence of this is that termcap applica-
-       tions assume me (terminfo sgr0) does not reset the  alter-
-       nate  character  set.  This implementation checks for, and
+       Note  that termcap has nothing analogous to terminfo's sgr
+       string.  One consequence of this is that termcap  applica-
+       tions  assume me (terminfo sgr0) does not reset the alter-
+       nate character set.  This implementation checks  for,  and
        modifies the data shown to the termcap interface to accom-
        modate termcap's limitation in this respect.
 
 
 

PORTABILITY

-       The  XSI  Curses  standard,  Issue 4 describes these func-
-       tions.  However, they are marked TO BE WITHDRAWN  and  may
+       The XSI Curses standard, Issue  4  describes  these  func-
+       tions.   However,  they are marked TO BE WITHDRAWN and may
        be removed in future versions.
 
-       Neither  the  XSI  Curses  standard nor the SVr4 man pages
-       documented the return values of tgetent correctly,  though
-       all  three were in fact returned ever since SVr1.  In par-
-       ticular, an omission in the XSI Curses  documentation  has
-       been  misinterpreted  to  mean  that tgetent returns OK or
+       Neither the XSI Curses standard nor  the  SVr4  man  pages
+       documented  the return values of tgetent correctly, though
+       all three were in fact returned ever since SVr1.  In  par-
+       ticular,  an  omission in the XSI Curses documentation has
+       been misinterpreted to mean that  tgetent  returns  OK  or
        ERR.  Because the purpose of these functions is to provide
-       compatibility  with  the termcap library, that is a defect
+       compatibility with the termcap library, that is  a  defect
        in XCurses, Issue 4, Version 2 rather than in ncurses.
 
-       External variables are provided  for  support  of  certain
-       termcap  applications.  However, termcap applications' use
+       External  variables  are  provided  for support of certain
+       termcap applications.  However, termcap applications'  use
        of those variables is poorly documented, e.g., not distin-
-       guishing  between  input  and output.  In particular, some
+       guishing between input and output.   In  particular,  some
        applications are reported to declare and/or modify ospeed.
 
-       The comment that only the first two characters of  the  id
-       parameter  are  used  escapes many application developers.
-       The original  BSD  4.2  termcap  library  (and  historical
+       The  comment  that only the first two characters of the id
+       parameter are used escapes  many  application  developers.
+       The  original  BSD  4.2  termcap  library  (and historical
        relics thereof) did not require a trailing null NUL on the
-       parameter name passed to tgetstr,  tgetnum  and  tgetflag.
-       Some  applications  assume that the termcap interface does
+       parameter  name  passed  to tgetstr, tgetnum and tgetflag.
+       Some applications assume that the termcap  interface  does
        not require the trailing NUL for the parameter name.  Tak-
        ing into account these issues:
 
-       o   As  a special case, tgetflag matched against a single-
-           character identifier provided that was at the  end  of
-           the  terminal  description.   You should not rely upon
-           this behavior in portable programs.  This  implementa-
-           tion  disallows matches against single-character capa-
+       o   As a special case, tgetflag matched against a  single-
+           character  identifier  provided that was at the end of
+           the terminal description.  You should  not  rely  upon
+           this  behavior in portable programs.  This implementa-
+           tion disallows matches against single-character  capa-
            bility names.
 
-       o   This implementation disallows matches by  the  termcap
-           interface  against extended capability names which are
+       o   This  implementation  disallows matches by the termcap
+           interface against extended capability names which  are
            longer than two characters.
 
 
diff --git a/doc/html/man/form.3x.html b/doc/html/man/form.3x.html
index 81d04f8c..32a724ae 100644
--- a/doc/html/man/form.3x.html
+++ b/doc/html/man/form.3x.html
@@ -235,7 +235,7 @@
        curses(3x) and related pages whose names begin "form_" for
        detailed descriptions of the entry points.
 
-       This describes ncurses version 6.0 (patch 20160130).
+       This describes ncurses version 6.0 (patch 20160326).
 
 
 
diff --git a/doc/html/man/infocmp.1m.html b/doc/html/man/infocmp.1m.html
index e7e4325b..bd0619a7 100644
--- a/doc/html/man/infocmp.1m.html
+++ b/doc/html/man/infocmp.1m.html
@@ -475,7 +475,7 @@
 
        http://invisible-island.net/ncurses/tctest.html
 
-       This describes ncurses version 6.0 (patch 20160130).
+       This describes ncurses version 6.0 (patch 20160326).
 
 
 

AUTHOR

diff --git a/doc/html/man/infotocap.1m.html b/doc/html/man/infotocap.1m.html
index 2bdd6fc9..5ca10104 100644
--- a/doc/html/man/infotocap.1m.html
+++ b/doc/html/man/infotocap.1m.html
@@ -88,7 +88,7 @@
 

SEE ALSO

        curses(3x), tic(1m), infocmp(1m), terminfo(5)
 
-       This describes ncurses version 6.0 (patch 20160130).
+       This describes ncurses version 6.0 (patch 20160326).
 
 
 

AUTHOR

diff --git a/doc/html/man/menu.3x.html b/doc/html/man/menu.3x.html
index 0f75fe3a..bf1fabb6 100644
--- a/doc/html/man/menu.3x.html
+++ b/doc/html/man/menu.3x.html
@@ -217,7 +217,7 @@
        curses(3x) and related pages whose names begin "menu_" for
        detailed descriptions of the entry points.
 
-       This describes ncurses version 6.0 (patch 20160130).
+       This describes ncurses version 6.0 (patch 20160326).
 
 
 
diff --git a/doc/html/man/menu_opts.3x.html b/doc/html/man/menu_opts.3x.html
index 7ee1424f..091e223e 100644
--- a/doc/html/man/menu_opts.3x.html
+++ b/doc/html/man/menu_opts.3x.html
@@ -1,7 +1,7 @@
 
 
 
@@ -96,6 +96,12 @@
             Don't   wrap   around  next-item  and  previous-item,
             requests to the other end of the menu.
 
+       O_MOUSE_MENU
+            If user clicks with the mouse and it does not fall on
+            the  currently  active  menu,  push KEY_MOUSE and the
+            MEVENT data back on the queue to allow processing  in
+            another part of the calling program.
+
 
 

RETURN VALUE

        Except for menu_opts, each routine returns one of the fol-
@@ -120,12 +126,12 @@
 
 
 

PORTABILITY

-       These routines emulate the System V  menu  library.   They
+       These  routines  emulate  the System V menu library.  They
        were not supported on Version 7 or BSD versions.
 
 
 

AUTHORS

-       Juergen  Pfeifer.   Manual  pages  and  adaptation for new
+       Juergen Pfeifer.  Manual  pages  and  adaptation  for  new
        curses by Eric S. Raymond.
 
 
diff --git a/doc/html/man/ncurses.3x.html b/doc/html/man/ncurses.3x.html
index 25bac76a..7ebff4c3 100644
--- a/doc/html/man/ncurses.3x.html
+++ b/doc/html/man/ncurses.3x.html
@@ -60,7 +60,7 @@
        sonable optimization.  This implementation is "new curses"
        (ncurses) and is the approved replacement for 4.4BSD clas-
        sic  curses,  which has been discontinued.  This describes
-       ncurses version 6.0 (patch 20160130).
+       ncurses version 6.0 (patch 20160326).
 
        The ncurses library emulates the curses library of  System
        V  Release  4  UNIX,  and  XPG4 (X/Open Portability Guide)
diff --git a/doc/html/man/panel.3x.html b/doc/html/man/panel.3x.html
index 3057e74c..dc31c7a9 100644
--- a/doc/html/man/panel.3x.html
+++ b/doc/html/man/panel.3x.html
@@ -209,7 +209,7 @@
 

SEE ALSO

        curses(3x), curs_variables(3x),
 
-       This describes ncurses version 6.0 (patch 20160130).
+       This describes ncurses version 6.0 (patch 20160326).
 
 
 

AUTHOR

diff --git a/doc/html/man/tabs.1.html b/doc/html/man/tabs.1.html
index ab5201a4..866c4dff 100644
--- a/doc/html/man/tabs.1.html
+++ b/doc/html/man/tabs.1.html
@@ -158,7 +158,7 @@
 

SEE ALSO

        tset(1), infocmp(1m), curses(3x), terminfo(5).
 
-       This describes ncurses version 6.0 (patch 20160130).
+       This describes ncurses version 6.0 (patch 20160326).
 
 
 
diff --git a/doc/html/man/terminfo.5.html b/doc/html/man/terminfo.5.html
index 4ab7625d..a769f917 100644
--- a/doc/html/man/terminfo.5.html
+++ b/doc/html/man/terminfo.5.html
@@ -75,7 +75,7 @@
        nals by giving a set of capabilities which they  have,  by
        specifying how to perform screen operations, and by speci-
        fying padding requirements and  initialization  sequences.
-       This describes ncurses version 6.0 (patch 20160130).
+       This describes ncurses version 6.0 (patch 20160326).
 
        Entries in terminfo consist of a sequence of `,' separated
        fields (embedded commas may be escaped with a backslash or
diff --git a/doc/html/man/tic.1m.html b/doc/html/man/tic.1m.html
index 02cc3b71..0eca59df 100644
--- a/doc/html/man/tic.1m.html
+++ b/doc/html/man/tic.1m.html
@@ -398,7 +398,7 @@
        infocmp(1m),    captoinfo(1m),   infotocap(1m),   toe(1m),
        curses(3x), term(5).  terminfo(5).
 
-       This describes ncurses version 6.0 (patch 20160130).
+       This describes ncurses version 6.0 (patch 20160326).
 
 
 

AUTHOR

diff --git a/doc/html/man/toe.1m.html b/doc/html/man/toe.1m.html
index da43ec58..6662f8cd 100644
--- a/doc/html/man/toe.1m.html
+++ b/doc/html/man/toe.1m.html
@@ -117,7 +117,7 @@
        tic(1m),   infocmp(1m),   captoinfo(1m),    infotocap(1m),
        curses(3x), terminfo(5).
 
-       This describes ncurses version 6.0 (patch 20160130).
+       This describes ncurses version 6.0 (patch 20160326).
 
 
 
diff --git a/doc/html/man/tput.1.html b/doc/html/man/tput.1.html
index 11941e4e..a9d26bec 100644
--- a/doc/html/man/tput.1.html
+++ b/doc/html/man/tput.1.html
@@ -329,7 +329,7 @@
 

SEE ALSO

        clear(1), stty(1), tabs(1), terminfo(5), curs_termcap(3x).
 
-       This describes ncurses version 6.0 (patch 20160130).
+       This describes ncurses version 6.0 (patch 20160326).
 
 
 
diff --git a/doc/html/man/tset.1.html b/doc/html/man/tset.1.html
index 25da9be7..e5025198 100644
--- a/doc/html/man/tset.1.html
+++ b/doc/html/man/tset.1.html
@@ -315,7 +315,7 @@
        csh(1),   sh(1),   stty(1),   curs_terminfo(3x),   tty(4),
        terminfo(5), ttys(5), environ(7)
 
-       This describes ncurses version 6.0 (patch 20160130).
+       This describes ncurses version 6.0 (patch 20160326).
 
 
 
diff --git a/man/menu_opts.3x b/man/menu_opts.3x
index 7285f2fd..8c33c0df 100644
--- a/man/menu_opts.3x
+++ b/man/menu_opts.3x
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2015,2016 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: menu_opts.3x,v 1.13 2015/12/05 23:42:45 tom Exp $
+.\" $Id: menu_opts.3x,v 1.14 2016/03/26 22:42:41 tom Exp $
 .TH menu_opts 3X ""
 .SH NAME
 \fBset_menu_opts\fP,
@@ -77,6 +77,12 @@ Move the cursor to within the item name while pattern-matching.
 O_NONCYCLIC
 Don't wrap around next-item and previous-item,
 requests to the other end of the menu.
+.TP 5
+O_MOUSE_MENU
+If user clicks with the mouse
+and it does not fall on the currently active menu,
+push \fBKEY_MOUSE\fP and the \fBMEVENT\fP data
+back on the queue to allow processing in another part of the calling program.
 .SH RETURN VALUE
 Except for \fBmenu_opts\fR, each routine returns one of the following:
 .TP 5
diff --git a/menu/m_driver.c b/menu/m_driver.c
index 1a7a3911..8e72999b 100644
--- a/menu/m_driver.c
+++ b/menu/m_driver.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2012,2016 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_driver.c,v 1.31 2012/03/10 23:43:41 tom Exp $")
+MODULE_ID("$Id: m_driver.c,v 1.32 2016/03/26 21:51:52 tom Exp $")
 
 /* Macros */
 
@@ -530,7 +530,11 @@ menu_driver(MENU * menu, int c)
 		}
 	    }
 	  else
-	    result = E_REQUEST_DENIED;
+	    {
+	      if (menu->opt & O_MOUSE_MENU)
+		ungetmouse(&event);	/* let someone else handle this */
+	      result = E_REQUEST_DENIED;
+	    }
 	}
 #endif /* NCURSES_MOUSE_VERSION */
       else
diff --git a/menu/menu.h b/menu/menu.h
index 4eeac018..11281830 100644
--- a/menu/menu.h
+++ b/menu/menu.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2007,2009 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2009,2016 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            *
@@ -30,7 +30,7 @@
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
  ****************************************************************************/
 
-/* $Id: menu.h,v 1.20 2009/04/05 00:28:07 tom Exp $ */
+/* $Id: menu.h,v 1.21 2016/03/26 21:52:08 tom Exp $ */
 
 #ifndef ETI_MENU
 #define ETI_MENU
@@ -56,6 +56,7 @@ typedef int Item_Options;
 #define O_IGNORECASE    (0x08)
 #define O_SHOWMATCH     (0x10)
 #define O_NONCYCLIC     (0x20)
+#define O_MOUSE_MENU    (0x40)
 
 /* Item options: */
 #define O_SELECTABLE    (0x01)
diff --git a/menu/menu.priv.h b/menu/menu.priv.h
index b54b1952..cb1ebc45 100644
--- a/menu/menu.priv.h
+++ b/menu/menu.priv.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2012,2014 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2014,2016 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            *
@@ -30,7 +30,7 @@
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
  ****************************************************************************/
 
-/* $Id: menu.priv.h,v 1.25 2014/11/01 14:47:00 tom Exp $ */
+/* $Id: menu.priv.h,v 1.26 2016/03/26 21:50:56 tom Exp $ */
 
 /***************************************************************************
 * Module menu.priv.h                                                       *
@@ -78,7 +78,8 @@ extern NCURSES_EXPORT_VAR(MENU) _nc_Default_Menu;
 		       O_ROWMAJOR     | \
 		       O_IGNORECASE   | \
 		       O_SHOWMATCH    | \
-		       O_NONCYCLIC    )
+		       O_NONCYCLIC    | \
+		       O_MOUSE_MENU   )
 
 #define ALL_ITEM_OPTS (O_SELECTABLE)
 
diff --git a/package/debian-mingw/changelog b/package/debian-mingw/changelog
index da6da781..a02c8aee 100644
--- a/package/debian-mingw/changelog
+++ b/package/debian-mingw/changelog
@@ -1,8 +1,8 @@
-ncurses6 (6.0+20160319) unstable; urgency=low
+ncurses6 (6.0+20160326) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey   Sat, 19 Mar 2016 10:38:08 -0400
+ -- Thomas E. Dickey   Sat, 26 Mar 2016 08:23:50 -0400
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
diff --git a/package/debian-mingw64/changelog b/package/debian-mingw64/changelog
index da6da781..a02c8aee 100644
--- a/package/debian-mingw64/changelog
+++ b/package/debian-mingw64/changelog
@@ -1,8 +1,8 @@
-ncurses6 (6.0+20160319) unstable; urgency=low
+ncurses6 (6.0+20160326) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey   Sat, 19 Mar 2016 10:38:08 -0400
+ -- Thomas E. Dickey   Sat, 26 Mar 2016 08:23:50 -0400
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
diff --git a/package/debian/changelog b/package/debian/changelog
index 0e22cf67..3e5b6464 100644
--- a/package/debian/changelog
+++ b/package/debian/changelog
@@ -1,8 +1,8 @@
-ncurses6 (6.0+20160319) unstable; urgency=low
+ncurses6 (6.0+20160326) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey   Sat, 19 Mar 2016 10:38:08 -0400
+ -- Thomas E. Dickey   Sat, 26 Mar 2016 08:23:50 -0400
 
 ncurses6 (5.9-20120608) unstable; urgency=low
 
diff --git a/package/mingw-ncurses.nsi b/package/mingw-ncurses.nsi
index cd715669..d19162c3 100644
--- a/package/mingw-ncurses.nsi
+++ b/package/mingw-ncurses.nsi
@@ -1,4 +1,4 @@
-; $Id: mingw-ncurses.nsi,v 1.150 2016/03/19 14:38:08 tom Exp $
+; $Id: mingw-ncurses.nsi,v 1.151 2016/03/26 12:23:50 tom Exp $
 
 ; TODO add examples
 ; TODO bump ABI to 6
@@ -10,7 +10,7 @@
 !define VERSION_MAJOR "6"
 !define VERSION_MINOR "0"
 !define VERSION_YYYY  "2016"
-!define VERSION_MMDD  "0319"
+!define VERSION_MMDD  "0326"
 !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}
 
 !define MY_ABI   "5"
diff --git a/package/mingw-ncurses.spec b/package/mingw-ncurses.spec
index 0ccebb81..ef044b98 100644
--- a/package/mingw-ncurses.spec
+++ b/package/mingw-ncurses.spec
@@ -3,7 +3,7 @@
 Summary: shared libraries for terminal handling
 Name: mingw32-ncurses6
 Version: 6.0
-Release: 20160319
+Release: 20160326
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
diff --git a/package/ncurses.spec b/package/ncurses.spec
index 5ae2085e..f4c60119 100644
--- a/package/ncurses.spec
+++ b/package/ncurses.spec
@@ -1,7 +1,7 @@
 Summary: shared libraries for terminal handling
 Name: ncurses6
 Version: 6.0
-Release: 20160319
+Release: 20160326
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
diff --git a/test/demo_menus.c b/test/demo_menus.c
index 0fe0f92d..7fe0ea37 100644
--- a/test/demo_menus.c
+++ b/test/demo_menus.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 2005-2014,2015 Free Software Foundation, Inc.              *
+ * Copyright (c) 2005-2015,2016 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: demo_menus.c,v 1.55 2015/08/22 22:59:56 tom Exp $
+ * $Id: demo_menus.c,v 1.59 2016/03/27 00:02:01 tom Exp $
  *
  * Demonstrate a variety of functions from the menu library.
  * Thomas Dickey - 2005/4/9
@@ -270,13 +270,6 @@ menu_create(ITEM ** items, int count, int ncols, MenuNo number)
     if (mcols + (2 * margin + x) >= COLS)
 	mcols = COLS - (2 * margin + x);
 
-#ifdef TRACE
-    if (number == eTrace)
-	menu_opts_off(result, O_ONEVALUE);
-    else
-	menu_opts_on(result, O_ONEVALUE);
-#endif
-
     menuwin = newwin(mrows + (2 * margin), mcols + (2 * margin), y, x);
     set_menu_win(result, menuwin);
     keypad(menuwin, TRUE);
@@ -285,6 +278,16 @@ menu_create(ITEM ** items, int count, int ncols, MenuNo number)
 
     set_menu_sub(result, derwin(menuwin, mrows, mcols, margin, margin));
 
+#ifdef TRACE
+    if (number == eTrace)
+	menu_opts_off(result, O_ONEVALUE);
+    else
+	menu_opts_on(result, O_ONEVALUE);
+#endif
+#if defined(NCURSES_MOUSE_VERSION) && defined(O_MOUSE_MENU)
+    menu_opts_on(result, O_MOUSE_MENU);
+#endif
+
     post_menu(result);
 
     set_menu_init(result, my_menu_init);
@@ -751,6 +754,36 @@ move_menus(MENU * current, int by_y, int by_x)
     }
 }
 
+#ifdef KEY_RESIZE
+static void
+resize_menu(MENU ** menu)
+{
+#if 0
+    WINDOW *win = menu_win(*menu);
+    WINDOW *sub = menu_sub(*menu);
+#endif
+    (void) menu;
+}
+
+static void
+resize_menus(MENU * current)
+{
+    (void) current;
+
+    werase(status);
+    wnoutrefresh(status);
+    wresize(status, 1, COLS);
+    mvwin(status, LINES - 1, 0);
+
+    resize_menu(&mpBanner);
+    resize_menu(&mpFile);
+    resize_menu(&mpSelect);
+#ifdef TRACE
+    resize_menu(&mpTrace);
+#endif
+}
+#endif
+
 static void
 show_status(int ch, MENU * menu)
 {
@@ -774,7 +807,7 @@ perform_menus(void)
     int ch = ERR;
 
 #ifdef NCURSES_MOUSE_VERSION
-    mousemask(ALL_MOUSE_EVENTS, (mmask_t *) 0);
+    mousemask(BUTTON1_CLICKED, (mmask_t *) 0);
 #endif
 
     menu_display(last_menu);
@@ -803,6 +836,11 @@ perform_menus(void)
 	case KEY_SRIGHT:
 	    move_menus(last_menu, 0, 1);
 	    continue;
+#ifdef KEY_RESIZE
+	case KEY_RESIZE:
+	    resize_menus(last_menu);
+	    continue;
+#endif
 	}
 	cmd = menu_virtualize(ch);
 
@@ -836,9 +874,17 @@ perform_menus(void)
 #endif
 	    }
 
+#if defined(NCURSES_MOUSE_VERSION) && defined(O_MOUSE_MENU)
 	    if ((code == E_REQUEST_DENIED) && (cmd == KEY_MOUSE)) {
+		(void) menu_getc(mpBanner);
 		code = menu_driver(mpBanner, cmd);
+		if (code == E_REQUEST_DENIED) {
+		    MEVENT event;
+		    if (menu_getc(mpBanner) == KEY_MOUSE)
+			getmouse(&event);	/* give up */
+		}
 	    }
+#endif
 
 	    break;
 	}
@@ -946,7 +992,7 @@ main(int argc, char *argv[])
 
     setlocale(LC_ALL, "");
 
-    while ((c = getopt(argc, argv, "a:de:fhmp:s:t:")) != -1) {
+    while ((c = getopt(argc, argv, "fht:")) != -1) {
 	switch (c) {
 #if HAVE_RIPOFFLINE
 	case 'f':