diff options
author | Lars Henriksen <LarsHenriksen@get2net.dk> | 2017-10-27 08:17:57 +0200 |
---|---|---|
committer | Lukas Fleischer <lfleischer@calcurse.org> | 2017-10-29 08:42:03 +0100 |
commit | 012a0e6670533911d70f47533e064969c7fc3b65 (patch) | |
tree | 4e9714e1f78039bad0a63a34abd829ef1c5196c9 /src/wins.c | |
parent | e9bddf38e829184c3e569c4c666901e7b29f2e43 (diff) | |
download | calcurse-012a0e6670533911d70f47533e064969c7fc3b65.tar.gz calcurse-012a0e6670533911d70f47533e064969c7fc3b65.zip |
Fix multiple popup windows
The window was not deleted if an "already in use"-key was detected,
and a new one was created as the loop was reentered.
Create/delete of the popup are moved outside the loop.
A redrawwin() call is needed to have the window displayed again.
Signed-off-by: Lukas Fleischer <lfleischer@calcurse.org>
Diffstat (limited to 'src/wins.c')
-rw-r--r-- | src/wins.c | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -163,6 +163,17 @@ int wins_doupdate(void) return rc; } +int wins_redrawwin(WINDOW *win) +{ + int rc; + + SCREEN_ACQUIRE; + rc = redrawwin(win); + SCREEN_RELEASE; + + return rc; +} + /* Get the current layout. */ int wins_layout(void) { |