bug-ncurses
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: wbkgd - little bit different behave in last ncurses (regression)


From: Pavel Stehule
Subject: Re: wbkgd - little bit different behave in last ncurses (regression)
Date: Mon, 2 Mar 2020 12:24:54 +0100



po 2. 3. 2020 v 11:18 odesílatel Thomas Dickey <address@hidden> napsal:
On Mon, Mar 02, 2020 at 11:14:41AM +0100, Pavel Stehule wrote:
> po 2. 3. 2020 v 11:10 odesílatel Thomas Dickey <address@hidden> napsal:
>
> > On Tue, Feb 25, 2020 at 10:06:58AM +0100, Pavel Stehule wrote:
> > > Hi
> > >
> > > I tested my ncurses-st-menu demo application and I was surprised so
> > shadows
> > > around menu are displayed incorrectly.
> > >
> > > In my code I try clean run
> > >
> > > clear()
> > > refresh()
> > >
> > > and it was good enough for previous versions.
> > >
> > > The shadow window is implemented in steps
> > >
> > > 1. werase(shadow_window)
> > > 2. overwrite(desktop_window, shadow_window)
> > > 3. I try to change attribute of chars inside shadow window
> > >
> > > mvwin_wch(menu->shadow_window, i, j, &cch);
> > > getcchar(&cch, wch, &attr, &cp, NULL);
> > >
> > > setcchar(&cch, wch,
> > >            shadow_attr | (attr & A_ALTCHARSET),
> > >            config->menu_shadow_cpn, NULL);
> > >
> > > mvwadd_wch(menu->shadow_window, i, j, &cch);
> > >
> > > And this method doesn't work correctly on ncurses version: 6.1, patch:
> > > 20190803
> > >
> > > Fedora Core 31
> > >
> > > The fix is not hard - I had to run explicitly
> > >
> > > wclear(stdsrc)
> > >
> > > But if I understand correctly, then just clear should be enough?
> > >
> > > Older working window preparing
> > >
> > > wbkgd(stdscr, COLOR_PAIR(1));
> > > wrefresh(stdscr);
> > >
> > > Now (after fix)
> > > wbkgd(stdscr, COLOR_PAIR(1));
> > > wclear(stdscr);
> > > wrefresh(stdscr);
> >
> > I took a look at this, compiling your examples against ncurses 6.2,
> > with the wclear commented-out, but don't see the breakage.
> >
>
> If you use master branch of ncurses-st-menu, then it was fixed by extra
> call of wclear by commit
>
> https://github.com/okbob/ncurses-st-menu/commit/b27cd2133f7bec06a3bbc61346214c0d113691a9
>
> so if you want to see this effect you should to checkout to
> afe09650ca5d691d90f89f35059bc5a8e3777f27
> commit.
>
> Or manually remove wclear

that's what I did.  I'll take a look with my Fedora 31 machine,
to see if I missed something.

maybe you have to remove explicitly simple executable file

git checkout d790f6eef348610dc8a71bda9c1e2fe883e06916

and I can repeat this issue

Název        : ncurses
Verze        : 6.1
Vydání       : 12.20190803.fc31
Architektura : x86_64
Velikost     : 647 k
Zdroj        : ncurses-6.1-12.20190803.fc31.src.rpm
Repozitář    : @System
Z repozitáře : fedora
Souhrn       : Ncurses support utilities
URL          : https://invisible-island.net/ncurses/ncurses.html
Licence      : MIT
Popis        : The curses library routines are a terminal-independent method of
             : updating character screens with reasonable optimization.  The ncurses
             : (new curses) library is a freely distributable replacement for the
             : discontinued 4.4 BSD classic curses library.
             :
             : This package contains support utilities, including a terminfo compiler
             : tic, a decompiler infocmp, clear, tput, tset, and a termcap conversion
             : tool captoinfo.

run ./simple and Alt-f



--
Thomas E. Dickey <address@hidden>
https://invisible-island.net
ftp://ftp.invisible-island.net

Attachment: Snímek z 2020-03-02 12-24-37.png
Description: PNG image


reply via email to

[Prev in Thread] Current Thread [Next in Thread]