File indexing completed on 2024-06-23 05:18:26

0001 /*
0002   SPDX-FileCopyrightText: 2010 Volker Krause <vkrause@kde.org>
0003 
0004   Based on kmail/kmlineeditspell.h/cpp
0005   SPDX-FileCopyrightText: 1997 Markus Wuebben <markus.wuebben@kde.org>
0006 
0007   SPDX-License-Identifier: GPL-2.0-or-later
0008 */
0009 
0010 #include "composerlineedit.h"
0011 #include <KCompletionBox>
0012 #include <QKeyEvent>
0013 
0014 #include "settings/messagecomposersettings.h"
0015 
0016 using namespace MessageComposer;
0017 
0018 ComposerLineEdit::ComposerLineEdit(bool useCompletion, QWidget *parent)
0019     : PimCommon::AddresseeLineEdit(parent, useCompletion)
0020 {
0021     allowSemicolonAsSeparator(MessageComposerSettings::allowSemicolonAsAddressSeparator());
0022     setShowRecentAddresses(MessageComposerSettings::self()->showRecentAddressesInComposer());
0023     setRecentAddressConfig(MessageComposerSettings::self()->config());
0024     loadContacts();
0025     setEnableBalooSearch(MessageComposerSettings::showBalooSearchInComposer());
0026 }
0027 
0028 ComposerLineEdit::~ComposerLineEdit() = default;
0029 
0030 //-----------------------------------------------------------------------------
0031 void ComposerLineEdit::keyPressEvent(QKeyEvent *e)
0032 {
0033     if ((e->key() == Qt::Key_Enter || e->key() == Qt::Key_Return) && !completionBox()->isVisible()) {
0034         Q_EMIT focusDown();
0035         AddresseeLineEdit::keyPressEvent(e);
0036         return;
0037     } else if (e->key() == Qt::Key_Up) {
0038         Q_EMIT focusUp();
0039         return;
0040     } else if (e->key() == Qt::Key_Down) {
0041         Q_EMIT focusDown();
0042         return;
0043     }
0044     AddresseeLineEdit::keyPressEvent(e);
0045 }
0046 
0047 #include "moc_composerlineedit.cpp"