diff options
Diffstat (limited to 'Swift/QtUI')
-rw-r--r-- | Swift/QtUI/QtTabbable.cpp | 13 | ||||
-rw-r--r-- | Swift/QtUI/QtTextEdit.cpp | 26 | ||||
-rw-r--r-- | Swift/QtUI/QtUtilities.cpp | 1 | ||||
-rw-r--r-- | Swift/QtUI/QtUtilities.h | 7 |
4 files changed, 28 insertions, 19 deletions
diff --git a/Swift/QtUI/QtTabbable.cpp b/Swift/QtUI/QtTabbable.cpp index 5659157..124d1b4 100644 --- a/Swift/QtUI/QtTabbable.cpp +++ b/Swift/QtUI/QtTabbable.cpp @@ -14,15 +14,8 @@ #include <Swift/QtUI/QtChatTabs.h> +#include <Swift/QtUI/QtUtilities.h> namespace Swift { -namespace { -#ifdef SWIFTEN_PLATFORM_MACOSX -const Qt::KeyboardModifier ctrlHardwareKeyModifier = Qt::MetaModifier; -#else -const Qt::KeyboardModifier ctrlHardwareKeyModifier = Qt::ControlModifier; -#endif -} - QtTabbable::QtTabbable() : QWidget() { shortcuts << new QShortcut(QKeySequence(Qt::CTRL + Qt::Key_W), window(), SLOT(close())); @@ -53,7 +46,7 @@ bool QtTabbable::event(QEvent* event) { // According to Qt's focus documentation, one can only override CTRL+TAB via reimplementing QWidget::event(). #ifdef SWIFTEN_PLATFORM_LINUX - if (keyEvent->modifiers() == ctrlHardwareKeyModifier && keyEvent->key() == Qt::Key_Tab && event->type() != QEvent::KeyRelease) { + if (keyEvent->modifiers() == QtUtilities::ctrlHardwareKeyModifier && keyEvent->key() == Qt::Key_Tab && event->type() != QEvent::KeyRelease) { #else - if (keyEvent->modifiers() == ctrlHardwareKeyModifier && keyEvent->key() == Qt::Key_Tab) { + if (keyEvent->modifiers() == QtUtilities::ctrlHardwareKeyModifier && keyEvent->key() == Qt::Key_Tab) { #endif emit requestNextTab(); diff --git a/Swift/QtUI/QtTextEdit.cpp b/Swift/QtUI/QtTextEdit.cpp index 2c4677e..cac8bb4 100644 --- a/Swift/QtUI/QtTextEdit.cpp +++ b/Swift/QtUI/QtTextEdit.cpp @@ -1,12 +1,20 @@ /* - * Copyright (c) 2010 Kevin Smith + * Copyright (c) 2010-2013 Kevin Smith * Licensed under the GNU General Public License v3. * See Documentation/Licenses/GPLv3.txt for more information. */ +#include <Swift/QtUI/QtTextEdit.h> + #include <boost/tuple/tuple.hpp> #include <boost/algorithm/string.hpp> #include <boost/bind.hpp> +#include <QApplication> +#include <QFontMetrics> +#include <QKeyEvent> +#include <QDebug> +#include <QMenu> + #include <Swiften/Base/foreach.h> @@ -14,14 +22,9 @@ #include <SwifTools/SpellChecker.h> -#include <Swift/QtUI/QtTextEdit.h> -#include <Swift/QtUI/QtSwiftUtil.h> -#include <Swift/QtUI/QtSpellCheckerWindow.h> #include <Swift/Controllers/SettingConstants.h> -#include <QApplication> -#include <QFontMetrics> -#include <QKeyEvent> -#include <QDebug> -#include <QMenu> +#include <Swift/QtUI/QtSpellCheckerWindow.h> +#include <Swift/QtUI/QtSwiftUtil.h> +#include <Swift/QtUI/QtUtilities.h> namespace Swift { @@ -64,4 +67,9 @@ void QtTextEdit::keyPressEvent(QKeyEvent* event) { QTextEdit::keyPressEvent(event); } + else if ((key == Qt::Key_K && modifiers == QtUtilities::ctrlHardwareKeyModifier)) { + QTextCursor cursor = textCursor(); + cursor.setPosition(toPlainText().size(), QTextCursor::KeepAnchor); + cursor.removeSelectedText(); + } else { QTextEdit::keyPressEvent(event); diff --git a/Swift/QtUI/QtUtilities.cpp b/Swift/QtUI/QtUtilities.cpp index e9aa4a4..5ae1b13 100644 --- a/Swift/QtUI/QtUtilities.cpp +++ b/Swift/QtUI/QtUtilities.cpp @@ -19,4 +19,5 @@ namespace QtUtilities { + void setX11Resource(QWidget* widget, const QString& c) { #if defined (Q_OS_UNIX) && !defined(Q_OS_MAC) diff --git a/Swift/QtUI/QtUtilities.h b/Swift/QtUI/QtUtilities.h index 40c16bc..6f82dfd 100644 --- a/Swift/QtUI/QtUtilities.h +++ b/Swift/QtUI/QtUtilities.h @@ -10,6 +10,13 @@ class QWidget; class QString; +#include <QKeyEvent> + namespace QtUtilities { void setX11Resource(QWidget* widget, const QString& c); QString htmlEscape(const QString& s); + #ifdef SWIFTEN_PLATFORM_MACOSX + const Qt::KeyboardModifier ctrlHardwareKeyModifier = Qt::MetaModifier; + #else + const Qt::KeyboardModifier ctrlHardwareKeyModifier = Qt::ControlModifier; + #endif } |