#11624 closed defect (fixed)
UlLTIMA 8: on iOS needs textinput
Reported by: | DominusExult | Owned by: | criezy |
---|---|---|---|
Priority: | normal | Component: | Port: iOS |
Version: | Keywords: | ||
Cc: | Game: | Ultima VIII: Pagan |
Description
After the intro you cannot enter your name as no text input keyboard comes up.
Probably needs more work as well to control the Avatar after this hurdle.
Possible ways to look into this is the iOS port of Exult.
Change History (6)
comment:1 by , 4 years ago
comment:2 by , 4 years ago
I tried adding the g_system->setFeatureState(OSystem::kFeatureVirtualKeyboard, true);
call to Ultima8Engine::enterTextMode(Gump*)
(and the false call in Ultima8Engine::leaveTextMode(Gump*)
and it almost works properly.
In theory this looks like the proper thing to do, but the issue is that this is called for any ModalGump
, and this includes for example Movies. It is a bit strange to have the keyboard popup when we start a movie (although I guess this helps if we want to skip it with Esc ;-) ). So I am wondering if we should check the Gump type and only show the virtual keyboard for the MenuGump (the used used to enter the name).
comment:3 by , 4 years ago
Owner: | set to |
---|---|
Resolution: | → fixed |
Status: | new → closed |
I have decided to push the change as is. But feel free to comment on whether we should restrict the virtual keyboard to some ModalGump
(such as the MenuGump
).
Note: you can also always enable keyboard input in ScummVM iOS by rotating your device to portrait mode or using the pinch-in gesture (and pinch out to hide it).
comment:4 by , 4 years ago
hmm, it definitely needs some finetuning. Only show in the modal gump AND in the "write diary" gump (I don't know which that is - u8_save_gump). And in the write diary gump it would be great if it were onls to show when you tap a savegame slot, e.g. when the blinking cursor shows up.
Thanks for the advice on going into portrait mode or pinching the screen, didn't know that.
comment:6 by , 4 years ago
I have relocated the virtual keyboard enabling to the EditWidget gump OnFocus method. I think that is indeed a better solution than my initial commit.
On Discord:
<criezy> If the virtual keyboard doesn't automatically shows when we need to enter text, this means that the engine is probably missing calls to g_system->setFeatureState(OSystem::kFeatureVirtualKeyboard, true); (and false to hide the keyboard again).
AFAIK the only places text input is needed is for adding your name and adding savegame names