[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [libkdepim/Applications/16.08] src/addressline/addresslineedit: Workaround when we dnd email from vi
From:       Montel Laurent <montel () kde ! org>
Date:       2016-09-30 21:38:22
Message-ID: E1bq5Ve-0003Yu-3e () code ! kde ! org
[Download RAW message or body]

Git commit d2290646a9f095ef7aa67daed232e02dc87f20f0 by Montel Laurent.
Committed on 30/09/2016 at 21:38.
Pushed by mlaurent into branch 'Applications/16.08'.

Workaround when we dnd email from viewer

M  +14   -5    src/addressline/addresslineedit/addresseelineedit.cpp

http://commits.kde.org/libkdepim/d2290646a9f095ef7aa67daed232e02dc87f20f0

diff --git a/src/addressline/addresslineedit/addresseelineedit.cpp \
b/src/addressline/addresslineedit/addresseelineedit.cpp index 2a7fab8..9ce0947 100644
--- a/src/addressline/addresslineedit/addresseelineedit.cpp
+++ b/src/addressline/addresslineedit/addresseelineedit.cpp
@@ -312,7 +312,6 @@ void AddresseeLineEdit::mouseReleaseEvent(QMouseEvent *event)
 void AddresseeLineEdit::dropEvent(QDropEvent *event)
 {
     const QMimeData *md = event->mimeData();
-
     // Case one: The user dropped a text/directory (i.e. vcard), so decode its
     //           contents
     if (KContacts::VCardDrag::canDecode(md)) {
@@ -415,12 +414,22 @@ void AddresseeLineEdit::dropEvent(QDropEvent *event)
                 }
             } else {
                 // Let's see if this drop contains a comma separated list of emails
-                const QMimeData *mimeData = event->mimeData();
-                if (mimeData->hasText()) {
-                    const QString dropData = mimeData->text();
+                if (md->hasText()) {
+                    const QString dropData = md->text();
                     const QStringList addrs = \
KEmailAddress::splitAddressList(dropData);  if (!addrs.isEmpty()) {
-                        \
setText(KEmailAddress::normalizeAddressesAndDecodeIdn(dropData)); +                   \
if (addrs.count() == 1) { +                            QUrl url(dropData);
+                            if (url.scheme() == QLatin1String("mailto")) {
+                                KContacts::Addressee addressee;
+                                \
addressee.insertEmail(KEmailAddress::decodeMailtoUrl(url), true /* preferred */); +   \
insertEmails(addressee.emails()); +                            } else {
+                                \
setText(KEmailAddress::normalizeAddressesAndDecodeIdn(dropData)); +                   \
} +                        } else {
+                            \
setText(KEmailAddress::normalizeAddressesAndDecodeIdn(dropData)); +                   \
}  setModified(true);
                         return;
                     }


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic