GLK: Switch focus window immediately after requesting lines or chars
This commit is contained in:
parent
3b8d006c8b
commit
8393faf036
4 changed files with 45 additions and 13 deletions
|
@ -653,6 +653,9 @@ void TextBufferWindow::requestLineEvent(char *buf, uint maxlen, uint initlen) {
|
||||||
|
|
||||||
if (g_vm->gli_register_arr)
|
if (g_vm->gli_register_arr)
|
||||||
_inArrayRock = (*g_vm->gli_register_arr)(buf, maxlen, "&+#!Cn");
|
_inArrayRock = (*g_vm->gli_register_arr)(buf, maxlen, "&+#!Cn");
|
||||||
|
|
||||||
|
// Switch focus to the new window
|
||||||
|
_windows->inputGuessFocus();
|
||||||
}
|
}
|
||||||
|
|
||||||
void TextBufferWindow::requestLineEventUni(uint32 *buf, uint maxlen, uint initlen) {
|
void TextBufferWindow::requestLineEventUni(uint32 *buf, uint maxlen, uint initlen) {
|
||||||
|
@ -707,6 +710,23 @@ void TextBufferWindow::requestLineEventUni(uint32 *buf, uint maxlen, uint initle
|
||||||
|
|
||||||
if (g_vm->gli_register_arr)
|
if (g_vm->gli_register_arr)
|
||||||
_inArrayRock = (*g_vm->gli_register_arr)(buf, maxlen, "&+#!Iu");
|
_inArrayRock = (*g_vm->gli_register_arr)(buf, maxlen, "&+#!Iu");
|
||||||
|
|
||||||
|
// Switch focus to the new window
|
||||||
|
_windows->inputGuessFocus();
|
||||||
|
}
|
||||||
|
|
||||||
|
void TextBufferWindow::requestCharEvent() {
|
||||||
|
_charRequest = true;
|
||||||
|
|
||||||
|
// Switch focus to the new window
|
||||||
|
_windows->inputGuessFocus();
|
||||||
|
}
|
||||||
|
|
||||||
|
void TextBufferWindow::requestCharEventUni() {
|
||||||
|
_charRequestUni = true;
|
||||||
|
|
||||||
|
// Switch focus to the new window
|
||||||
|
_windows->inputGuessFocus();
|
||||||
}
|
}
|
||||||
|
|
||||||
void TextBufferWindow::cancelLineEvent(Event *ev) {
|
void TextBufferWindow::cancelLineEvent(Event *ev) {
|
||||||
|
|
|
@ -220,13 +220,9 @@ public:
|
||||||
|
|
||||||
virtual void getSize(uint *width, uint *height) const override;
|
virtual void getSize(uint *width, uint *height) const override;
|
||||||
|
|
||||||
virtual void requestCharEvent() override {
|
virtual void requestCharEvent() override;
|
||||||
_charRequest = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
virtual void requestCharEventUni() override {
|
virtual void requestCharEventUni() override;
|
||||||
_charRequestUni = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
virtual void setEchoLineEvent(uint val) override {
|
virtual void setEchoLineEvent(uint val) override {
|
||||||
_echoLineInput = val != 0;
|
_echoLineInput = val != 0;
|
||||||
|
|
|
@ -265,6 +265,9 @@ void TextGridWindow::requestLineEvent(char *buf, uint maxlen, uint initlen) {
|
||||||
|
|
||||||
if (g_vm->gli_register_arr)
|
if (g_vm->gli_register_arr)
|
||||||
_inArrayRock = (*g_vm->gli_register_arr)(buf, maxlen, "&+#!Cn");
|
_inArrayRock = (*g_vm->gli_register_arr)(buf, maxlen, "&+#!Cn");
|
||||||
|
|
||||||
|
// Switch focus to the new window
|
||||||
|
_windows->inputGuessFocus();
|
||||||
}
|
}
|
||||||
|
|
||||||
void TextGridWindow::requestLineEventUni(uint32 *buf, uint maxlen, uint initlen) {
|
void TextGridWindow::requestLineEventUni(uint32 *buf, uint maxlen, uint initlen) {
|
||||||
|
@ -317,6 +320,23 @@ void TextGridWindow::requestLineEventUni(uint32 *buf, uint maxlen, uint initlen)
|
||||||
|
|
||||||
if (g_vm->gli_register_arr)
|
if (g_vm->gli_register_arr)
|
||||||
_inArrayRock = (*g_vm->gli_register_arr)(buf, maxlen, "&+#!Iu");
|
_inArrayRock = (*g_vm->gli_register_arr)(buf, maxlen, "&+#!Iu");
|
||||||
|
|
||||||
|
// Switch focus to the new window
|
||||||
|
_windows->inputGuessFocus();
|
||||||
|
}
|
||||||
|
|
||||||
|
void TextGridWindow::requestCharEvent() {
|
||||||
|
_charRequest = true;
|
||||||
|
|
||||||
|
// Switch focus to the new window
|
||||||
|
_windows->inputGuessFocus();
|
||||||
|
}
|
||||||
|
|
||||||
|
void TextGridWindow::requestCharEventUni() {
|
||||||
|
_charRequestUni = true;
|
||||||
|
|
||||||
|
// Switch focus to the new window
|
||||||
|
_windows->inputGuessFocus();
|
||||||
}
|
}
|
||||||
|
|
||||||
void TextGridWindow::cancelLineEvent(Event *ev) {
|
void TextGridWindow::cancelLineEvent(Event *ev) {
|
||||||
|
|
|
@ -171,9 +171,9 @@ public:
|
||||||
|
|
||||||
virtual void getSize(uint *width, uint *height) const override;
|
virtual void getSize(uint *width, uint *height) const override;
|
||||||
|
|
||||||
virtual void requestCharEvent() override {
|
virtual void requestCharEvent() override;
|
||||||
_charRequest = true;
|
|
||||||
}
|
virtual void requestCharEventUni() override;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Prepare for inputing a line
|
* Prepare for inputing a line
|
||||||
|
@ -197,10 +197,6 @@ public:
|
||||||
_mouseRequest = false;
|
_mouseRequest = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual void requestCharEventUni() override {
|
|
||||||
_charRequestUni = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
virtual void requestMouseEvent() override {
|
virtual void requestMouseEvent() override {
|
||||||
_mouseRequest = true;
|
_mouseRequest = true;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue