diff options
author | Tobias Markmann <tm@ayena.de> | 2012-04-23 14:23:14 (GMT) |
---|---|---|
committer | Kevin Smith <git@kismith.co.uk> | 2012-04-23 16:37:33 (GMT) |
commit | 5af9a5c5cd4d74b29ce5bf4882b5b8391f09b468 (patch) | |
tree | ccf3fc72e9dd2d65de6f1fe68027f5e5c13f3761 /Swift/QtUI/QtChatWindow.cpp | |
parent | d3ff5908eadb86e14d6eae9c4c9f0b4c959088e9 (diff) | |
download | swift-contrib-5af9a5c5cd4d74b29ce5bf4882b5b8391f09b468.zip swift-contrib-5af9a5c5cd4d74b29ce5bf4882b5b8391f09b468.tar.bz2 |
Move accelerator handling for active-,next-,previous- and close-tab into QtTabbable.
Resolves: #1091
License: This patch is BSD-licensed, see http://www.opensource.org/licenses/bsd-license.php
Diffstat (limited to 'Swift/QtUI/QtChatWindow.cpp')
-rw-r--r-- | Swift/QtUI/QtChatWindow.cpp | 27 |
1 files changed, 8 insertions, 19 deletions
diff --git a/Swift/QtUI/QtChatWindow.cpp b/Swift/QtUI/QtChatWindow.cpp index e4cb004..0d94ecd 100644 --- a/Swift/QtUI/QtChatWindow.cpp +++ b/Swift/QtUI/QtChatWindow.cpp @@ -216,26 +216,15 @@ void QtChatWindow::setTabComplete(TabComplete* completer) { } void QtChatWindow::handleKeyPressEvent(QKeyEvent* event) { + event->ignore(); + QtTabbable::handleKeyPressEvent(event); + if (event->isAccepted()) { + return; + } + event->accept(); + int key = event->key(); - Qt::KeyboardModifiers modifiers = event->modifiers(); - if (key == Qt::Key_W && modifiers == Qt::ControlModifier) { - close(); - } else if ( - (key == Qt::Key_PageUp && modifiers == Qt::ControlModifier) -// || (key == Qt::Key_Left && modifiers == (Qt::ControlModifier & Qt::ShiftModifier)) - ) { - emit requestPreviousTab(); - } else if ( - (key == Qt::Key_PageDown && modifiers == Qt::ControlModifier) -// || (key == Qt::Key_Right && modifiers == (Qt::ControlModifier & Qt::ShiftModifier) - || (key == Qt::Key_Tab && modifiers == Qt::ControlModifier) - ) { - emit requestNextTab(); - } else if ( - (key == Qt::Key_A && modifiers == Qt::AltModifier) - ) { - emit requestActiveTab(); - } else if (key == Qt::Key_Tab) { + if (key == Qt::Key_Tab) { tabComplete(); } else if ((key == Qt::Key_Up) && input_->toPlainText().isEmpty() && !(lastSentMessage_.isEmpty())) { beginCorrection(); |