Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Several keybinding menus missing redraws when closed #8514

Closed
6 of 8 tasks
Wuzzy2 opened this issue Aug 11, 2014 · 5 comments · Fixed by #41112
Closed
6 of 8 tasks

Several keybinding menus missing redraws when closed #8514

Wuzzy2 opened this issue Aug 11, 2014 · 5 comments · Fixed by #41112
Labels
<Bug> This needs to be fixed Info / User Interface Game - player communication, menus, etc. (S2 - Confirmed) Bug that's been confirmed to exist

Comments

@Wuzzy2
Copy link
Contributor

Wuzzy2 commented Aug 11, 2014

Version: 7994c6d, ncurses

Closing the input manager (special keybinding menu) in certain places fails to clean up the screen, leaving some blackness.

Here are the affected screens:

To reproduce, simply go to one of these menus, open the input manager with ? and close it again and see what happens.

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Edit by @Leland: updated list of screens and moved to checklist

Maykeye added a commit to Maykeye/Cataclysm-DDA that referenced this issue Oct 29, 2015
Filter filters parts by name

Updated curses port to behave more like curses

* Added redrawwin

* Added handling of null pointer to wrefresh

Moved lcmatch to game.cpp and game.h

Function lcmatch was declared too many times in too many files.

Since all of them included game.h already and including ui.h
made little sense just for lcmatch, moved it to game.*

Workaround for popup in tiles

In several places in tiles build popup didn't appear for the following
reason:

Curses port writes to back renderer but the actual screen is not updated anywhere in
cursesport.cpp. It's updated from renderer in try_update
which is called from message handling routine.

If screen was rewritten before message processed started again, then no matter
how many calls to wrefresh were done, they were not actually printed
to the screen. Only backscreen renderer changed.

Update wrefresh to update actual renderer.
Note that it's not placed inside of `if (win->draw)`.
In e.g. when popup() calls refresh mainwin->draw is false.

Refactored input_context to keep track of windows

Now after input_context corrupts screen after HELP_KEYBINDING,
it redraws windows that were assigned to it.

As result, it fixes  CleverRaven#8514, fixes CleverRaven#9835 in

* Character menu (in-game)
* Construction menu
* Character creation menu
* World creation menu
* Vehicle interaction menu
@illi-kun
Copy link
Contributor

illi-kun commented Apr 14, 2016

Here is the list of affected menus:

Anything else, anyone?

@remyroy
Copy link
Contributor

remyroy commented Apr 16, 2016

See this thread on the forum: http://smf.cataclysmdda.com/index.php?topic=12345.0

The new update does indeed fix most of the refresh issues.

However, I did still run into two refresh bugs when I tested the latest experimental:

  1. The menu that pops up so you can choose what materials to use when crafting doesn't fully refresh when it disappears.

  2. Vehicle headlights cause a black "box" to appear on screen when turned on, overhead lights don't seem to have this issue.

Both issues went away when I set the console and map font values to be the same, so it seems to be the same bug.

@illi-kun
Copy link
Contributor

Thanks for note but it's not the same issue. Issue you described depends on used fonts (according to the last sentence in your quote) and the current issue is independent to any settings.

@illi-kun illi-kun added the Info / User Interface Game - player communication, menus, etc. label Apr 24, 2016
@illi-kun illi-kun removed their assignment Jan 10, 2017
@Leland Leland changed the title Closing the input manager does not clean up the screen correctly Several keybinding menus missing redraws when closed May 24, 2017
@Leland
Copy link
Contributor

Leland commented May 24, 2017

#14270 notes that this is an issue both from the character screen @ and in the look screen V

@Night-Pryanik
Copy link
Contributor

Tested on latest experimental as of September 27, 2019. Character creation menu redraws correctly (though I'm unsure which PR fixed it). Vehicle examine menu still has the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
<Bug> This needs to be fixed Info / User Interface Game - player communication, menus, etc. (S2 - Confirmed) Bug that's been confirmed to exist
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants