From 27bd00bec835988b3f5631bf8cf9e97048aad026 Mon Sep 17 00:00:00 2001 From: Fabio Bas Date: Sun, 29 Jun 2014 18:06:39 +0200 Subject: [PATCH 1/3] Direct chat: ensure focus is on the input line; fixes #113 --- cockatrice/src/tab_message.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/cockatrice/src/tab_message.cpp b/cockatrice/src/tab_message.cpp index 80a56154..eec46bb9 100644 --- a/cockatrice/src/tab_message.cpp +++ b/cockatrice/src/tab_message.cpp @@ -34,6 +34,10 @@ TabMessage::TabMessage(TabSupervisor *_tabSupervisor, AbstractClient *_client, c retranslateUi(); setLayout(vbox); + + setFocusProxy(sayEdit); + chatView->setFocusProxy(sayEdit); + sayEdit->setFocus(); } TabMessage::~TabMessage() From d86fa410df8cdcca08fb00c5a48efecfbe616391 Mon Sep 17 00:00:00 2001 From: Fabio Bas Date: Sun, 29 Jun 2014 19:16:31 +0200 Subject: [PATCH 2/3] Chat room: ensure focus on the input line --- cockatrice/src/tab_room.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/cockatrice/src/tab_room.cpp b/cockatrice/src/tab_room.cpp index 79673e0f..2af3dd1e 100644 --- a/cockatrice/src/tab_room.cpp +++ b/cockatrice/src/tab_room.cpp @@ -97,6 +97,10 @@ TabRoom::TabRoom(TabSupervisor *_tabSupervisor, AbstractClient *_client, ServerI const int gameListSize = info.game_list_size(); for (int i = 0; i < gameListSize; ++i) gameSelector->processGameInfo(info.game_list(i)); + + setFocusProxy(sayEdit); + chatView->setFocusProxy(sayEdit); + sayEdit->setFocus(); } TabRoom::~TabRoom() From 6f18e3692dbddb2f4efca9f02374a76e3a51fa6b Mon Sep 17 00:00:00 2001 From: Fabio Bas Date: Thu, 3 Jul 2014 15:45:13 +0200 Subject: [PATCH 3/3] Chat room: ensure the line input has focus when the window gets created --- cockatrice/src/tab_room.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cockatrice/src/tab_room.cpp b/cockatrice/src/tab_room.cpp index 2af3dd1e..a7514e79 100644 --- a/cockatrice/src/tab_room.cpp +++ b/cockatrice/src/tab_room.cpp @@ -9,6 +9,7 @@ #include #include #include +#include #include "tab_supervisor.h" #include "tab_room.h" #include "tab_userlists.h" @@ -100,7 +101,7 @@ TabRoom::TabRoom(TabSupervisor *_tabSupervisor, AbstractClient *_client, ServerI setFocusProxy(sayEdit); chatView->setFocusProxy(sayEdit); - sayEdit->setFocus(); + QTimer::singleShot(0, sayEdit, SLOT(setFocus())); } TabRoom::~TabRoom()