diff options
author | Paul Gilbert | 2018-11-04 21:37:56 -0800 |
---|---|---|
committer | Paul Gilbert | 2018-12-08 19:05:59 -0800 |
commit | 6b39263dab79ab20118bc2bb17677a0c5b14e84c (patch) | |
tree | 32dade46f35c5861c0a1e5327ecda1d17306ec4a /engines/gargoyle | |
parent | 75f1ac769ba8158ff73f724a91e9544b29943905 (diff) | |
download | scummvm-rg350-6b39263dab79ab20118bc2bb17677a0c5b14e84c.tar.gz scummvm-rg350-6b39263dab79ab20118bc2bb17677a0c5b14e84c.tar.bz2 scummvm-rg350-6b39263dab79ab20118bc2bb17677a0c5b14e84c.zip |
GLK: Workaround to show caret for second line entry onwards
Not sure how original GLK code properly re-renders the caret,
since the line isn't marked as dirty once input starts.
This workaround marks the line as dirty when a line request is
done, which allows the line to be redrawn with the caret
Diffstat (limited to 'engines/gargoyle')
-rw-r--r-- | engines/gargoyle/window_text_buffer.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/engines/gargoyle/window_text_buffer.cpp b/engines/gargoyle/window_text_buffer.cpp index 61cf92a22c..9b32393edc 100644 --- a/engines/gargoyle/window_text_buffer.cpp +++ b/engines/gargoyle/window_text_buffer.cpp @@ -637,6 +637,9 @@ void TextBufferWindow::requestLineEvent(char *buf, glui32 maxlen, glui32 initlen putText(buf, initlen, _inCurs, 0); } + // WORKAROUND: Mark bottom line as dirty so caret will be drawn + _lines[0]._dirty = true; + _echoLineInput = _echoLineInputBase; if (_lineTerminatorsBase && _termCt) { @@ -690,6 +693,9 @@ void TextBufferWindow::requestLineEventUni(glui32 *buf, glui32 maxlen, glui32 in putTextUni(buf, initlen, _inCurs, 0); } + // WORKAROUND: Mark bottom line as dirty so caret will be drawn + _lines[0]._dirty = true; + _echoLineInput = _echoLineInputBase; if (_lineTerminatorsBase && _termCt) { |