Opened 5 years ago
Closed 4 years ago
#11033 closed defect (fixed)
WME: Save text input broken
Reported by: | raziel- | Owned by: | lolbot-iichan |
---|---|---|---|
Priority: | normal | Component: | Engine: Wintermute |
Version: | Keywords: | has-pull-request | |
Cc: | Game: | Wintermute |
Description (last modified by )
ScummVM 2.1.0git (Jul 27 2019 18:57:01)
Features compiled in: Vorbis FLAC MP3 RGB zLib MPEG2 Theora AAC A/52 FreeType2 JPEG PNG cloud (servers, local)
I have a recurring issue with saving games in most (if not all) WME games that use text input for save lists.
1) The BACKSPACE key produces a special char which some of the games cannot display, others display some sort of BOX in different sizes. (see screenshot)
2) If there is a save state, the initial BACKSPACE will, on one press, delete the whole name (while also producing that special, sometimes hidden, char). The deletion of the whole save game name might be by design, though. e.g. Corrosion just has a black space underneath the game screen and no indication (also no change in the pointer when hovering it over that list) on where to click at. (see screenshot)
[ 3) Bad lists design. I cannot see where to click to, to add a new save, maybe this is intended, maybe something is not drawn in ScummVM? (I don't know how the original engine does it, so i can't really comment on it) --- see below]
I CAN use the cursor keys to move around and use DEL to delete those special chars.
It's a little tricky to do so if the special chars are hidden, but it is reproducable all the time.
e.g. in ritter, if i press BACKSPACE three times, i need to press cursor left four times to reach the save game name and be able to delete it. The cursor does not move then though until i reach the name of the save game.
I guess the special chars being visible or not depends on the font used by the game?
Tested games working/not using text inpu (which issue)t:
[Corrosion (3) -- see below]
Dirty Split
Escape from the Mansion
James Peris
Tested games that display this issue (which issue):
1 1/2 Ritter (1,2) - invisible special char
Bickadoodle (1,2)
Chivalry is not dead (1,2) - invisible special char
Dead City (1,2,3)
Five Lethal Demons (1,2) - invisible special char
Five Magical Amulets (1,2)
Helga deep in trouble (1,2) - invisible special char
AmigaOS4 - PPC - SDL - BE
gcc (adtools build 8.3.0) 8.3.0
3) was because of outdated save states.
They won't show up in newer ScummVM binaries.
--empty-- slots are visible, once i delete the outdated save states.
Attachments (2)
Change History (10)
by , 5 years ago
Attachment: | Bickadoodle (Version 1.2_Windo_000.png added |
---|
by , 5 years ago
Attachment: | Corrosion_ Cold Winter Waiting_000.png added |
---|
comment:2 by , 5 years ago
@lol-iichan
Were you able to confirm the other two cases?
And what about ScummVM 2.1.0?
I can confirm that the "bad lists design" seems to be a regression.
Will try to bisect it, but maybe someone else can do that instead, because i'll need to do it manually (git does not feature "automated" bisection on my platform)
Thanks
comment:3 by , 5 years ago
Description: | modified (diff) |
---|
comment:4 by , 5 years ago
Nevermind my comment above.
I had so many old save states that i never really reached an "empty" slot on my quick tests.
Now i did and the empty slots show up fine.
Old save states deleted and all is fine for 3).
comment:5 by , 5 years ago
Keywords: | has-pull-request added |
---|---|
Owner: | set to |
Resolution: | → fixed |
Status: | new → closed |
Were you able to confirm the other two cases?
Yes, I reproduced them on Windows and fixed this in https://github.com/scummvm/scummvm/pull/1978
"BACKSPACE key produces a special char" bug is fixed, as well as handling Ctrl+A and Enter during input.
"initial BACKSPACE will, on one press, delete the whole name" is original behaviour, it's like when you click on adress string on Firefox and press backspace: the whole address is removed. It has the same workaround: before initial backspace press Left Arrow key, then press Right Arrow key, so that selection would reset and caret would return to initial position.
Actualy, WME Engine support text selection highlighting and it is visually obvious in some games (e.g. Bickadoodle) that text is selected and would be removed on initial input. This is done by providing different fonts at FONT_SELECTED and FONT properties for WINDOW::EDIT object of interface\system\savename.window file.
I guess, we can close current defect as fixed and create a new defect tagged "original", stating that text selection is invisible in some games. I believe that it would be possible to implement a small workaround for text selection in them, but it's a low priority feature.
comment:6 by , 5 years ago
Status: | closed → pending |
---|
comment:7 by , 5 years ago
comment:8 by , 4 years ago
Owner: | changed from | to
---|---|
Status: | pending → closed |
Assuming fixed. Let me know if any issues other then selector-related are still reproducable.
I cannot reproduce "3) Bad lists design" with Windows builds.
I see visible lines with word "empty" both at Normal and Enchanced Edition of Corrosion, using both latest ScummVM 2.2.0git and released ScummVM 2.0.0.
HOWEVER, I found an interesting glitch:
Expected result: something is written at slot that was used at step 2 to store a savegame
Actual result: slot is empty, there is neither actual description, nor word "empty" written.
Maybe this is the actual bug that you reproduced? Anyway, I suggest splitting it into separate bug since it is not related to Backspace keypress.