1
0
mirror of https://github.com/qTox/qTox.git synced 2024-03-22 14:00:36 +08:00

Merge branch 'pr2688'

This commit is contained in:
tux3 2015-12-15 19:48:29 +01:00
commit 0c2f70eb7e
No known key found for this signature in database
GPG Key ID: 7E086DD661263264
2 changed files with 25 additions and 3 deletions

View File

@ -1226,8 +1226,11 @@ bool Widget::newMessageAlert(QWidget* currentWindow, bool isActive, bool sound,
if (notify)
{
QApplication::alert(currentWindow);
eventFlag = true;
if (inactiveWindow)
{
QApplication::alert(currentWindow);
eventFlag = true;
}
if (Settings::getInstance().getShowWindow())
{
@ -1577,6 +1580,10 @@ bool Widget::event(QEvent * e)
{
switch (e->type())
{
case QEvent::MouseButtonPress:
case QEvent::MouseButtonDblClick:
focusChatInput();
break;
case QEvent::WindowActivate:
if (activeChatroomWidget != nullptr)
{
@ -1584,6 +1591,7 @@ bool Widget::event(QEvent * e)
activeChatroomWidget->updateStatusLight();
setWindowTitle(activeChatroomWidget->getTitle());
}
if (eventFlag)
{
eventFlag = false;
@ -1591,13 +1599,15 @@ bool Widget::event(QEvent * e)
updateIcons();
}
focusChatInput();
#ifdef Q_OS_MAC
emit windowStateChanged(windowState());
case QEvent::WindowStateChange:
Nexus::getInstance().updateWindowsStates();
#endif
break;
default:
break;
}
@ -2080,3 +2090,14 @@ void Widget::retranslateUi()
previousConversationAction->setText(tr("Previous Conversation"));
#endif
}
void Widget::focusChatInput()
{
if (activeChatroomWidget)
{
if (Friend* f = activeChatroomWidget->getFriend())
f->getChatForm()->focusInput();
else if (Group* g = activeChatroomWidget->getGroup())
g->getChatForm()->focusInput();
}
}

View File

@ -221,6 +221,7 @@ private:
static bool filterOnline(int index);
static bool filterOffline(int index);
void retranslateUi();
void focusChatInput();
private:
SystemTrayIcon *icon;