diff options
author | Morten Johan Sørvig <morten.sorvig@digia.com> | 2013-01-02 20:11:41 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-01-28 09:07:00 +0100 |
commit | 0b68fc019bbeedb8b6b59bbbdf31f66596b6d5ac (patch) | |
tree | 7a0f389f8d233e5a5a9a45db900be957bb7904bc /src/plugins/platforms/cocoa | |
parent | add16725a34f7d249c9e93d9ecbfc0c7cc488d80 (diff) |
Cocoa: Correct mime handler prioritization.
According to the documentation recently added mime
type converters should take precedence over previously
added converters. Make it so.
Task-number: QTBUG-25951
Change-Id: Ic23ca7cbb93a98711d762b1ef0e0dd2aa1ceaeda
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Diffstat (limited to 'src/plugins/platforms/cocoa')
-rw-r--r-- | src/plugins/platforms/cocoa/qmacmime.mm | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/plugins/platforms/cocoa/qmacmime.mm b/src/plugins/platforms/cocoa/qmacmime.mm index 339559b6a6..89539de331 100644 --- a/src/plugins/platforms/cocoa/qmacmime.mm +++ b/src/plugins/platforms/cocoa/qmacmime.mm @@ -68,7 +68,10 @@ Q_GLOBAL_STATIC(QStringList, globalDraggedTypesList) void qt_mac_addToGlobalMimeList(QMacPasteboardMime *macMime) { - globalMimeList()->append(macMime); + // globalMimeList is in decreasing priority order. Recently added + // converters take prioity over previously added converters: prepend + // to the list. + globalMimeList()->prepend(macMime); } void qt_mac_removeFromGlobalMimeList(QMacPasteboardMime *macMime) @@ -810,6 +813,10 @@ QList<QByteArray> QMacPasteboardMimeVCard::convertFromMime(const QString &mime, void QMacPasteboardMime::initializeMimeTypes() { if (globalMimeList()->isEmpty()) { + // Create QMacPasteboardMimeAny first to put it at the end of globalMimeList + // with lowest priority. (the constructor prepends to the list) + new QMacPasteboardMimeAny; + //standard types that we wrap new QMacPasteboardMimeTiff; new QMacPasteboardMimeUnicodeText; @@ -819,8 +826,6 @@ void QMacPasteboardMime::initializeMimeTypes() new QMacPasteboardMimeUrl; new QMacPasteboardMimeTypeName; new QMacPasteboardMimeVCard; - //make sure our "non-standard" types are always last! --Sam - new QMacPasteboardMimeAny; } } |