diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/qt-5/5.15/qtbase.patch.d/macos-sdk-10.12/0004-Revert-QCocoaDrag-avoid-using-the-deprecated-API-if-.patch')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/qt-5/5.15/qtbase.patch.d/macos-sdk-10.12/0004-Revert-QCocoaDrag-avoid-using-the-deprecated-API-if-.patch | 194 |
1 files changed, 0 insertions, 194 deletions
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/5.15/qtbase.patch.d/macos-sdk-10.12/0004-Revert-QCocoaDrag-avoid-using-the-deprecated-API-if-.patch b/nixpkgs/pkgs/development/libraries/qt-5/5.15/qtbase.patch.d/macos-sdk-10.12/0004-Revert-QCocoaDrag-avoid-using-the-deprecated-API-if-.patch deleted file mode 100644 index ee9b80ca6ed4..000000000000 --- a/nixpkgs/pkgs/development/libraries/qt-5/5.15/qtbase.patch.d/macos-sdk-10.12/0004-Revert-QCocoaDrag-avoid-using-the-deprecated-API-if-.patch +++ /dev/null @@ -1,194 +0,0 @@ -From d5c155a9f3ff38e28ac073f6df43175724ebc290 Mon Sep 17 00:00:00 2001 -From: Dmitry Kalinkin <dmitry.kalinkin@gmail.com> -Date: Mon, 7 Dec 2020 12:32:34 -0500 -Subject: [PATCH 4/6] Revert "QCocoaDrag - avoid using the deprecated API if - possible" - -This reverts commit 8481a9fc974a1f1dd44a9f82decb18fe2290689f. ---- - src/plugins/platforms/cocoa/qcocoadrag.h | 6 -- - src/plugins/platforms/cocoa/qcocoadrag.mm | 90 ------------------- - .../platforms/cocoa/qnsview_dragging.mm | 9 +- - 3 files changed, 1 insertion(+), 104 deletions(-) - -diff --git a/src/plugins/platforms/cocoa/qcocoadrag.h b/src/plugins/platforms/cocoa/qcocoadrag.h -index 975741c270..5a5b985c6e 100644 ---- a/src/plugins/platforms/cocoa/qcocoadrag.h -+++ b/src/plugins/platforms/cocoa/qcocoadrag.h -@@ -48,8 +48,6 @@ - #include <QtGui/private/qdnd_p.h> - #include <QtGui/private/qinternalmimedata_p.h> - --#include <QtCore/qeventloop.h> -- - QT_BEGIN_NAMESPACE - - class QCocoaDrag : public QPlatformDrag -@@ -71,15 +69,11 @@ public: - void setLastMouseEvent(NSEvent *event, NSView *view); - - void setAcceptedAction(Qt::DropAction act); -- void exitDragLoop(); - private: - QDrag *m_drag; - NSEvent *m_lastEvent; - NSView *m_lastView; - Qt::DropAction m_executed_drop_action; -- QEventLoop internalDragLoop; -- -- bool maybeDragMultipleItems(); - - QPixmap dragPixmap(QDrag *drag, QPoint &hotSpot) const; - }; -diff --git a/src/plugins/platforms/cocoa/qcocoadrag.mm b/src/plugins/platforms/cocoa/qcocoadrag.mm -index ab6863a432..b4a16ab912 100644 ---- a/src/plugins/platforms/cocoa/qcocoadrag.mm -+++ b/src/plugins/platforms/cocoa/qcocoadrag.mm -@@ -44,9 +44,6 @@ - #include <QtWidgets/qwidget.h> - #endif - #include <QtGui/private/qcoregraphics_p.h> --#include <QtCore/qsysinfo.h> -- --#include <vector> - - QT_BEGIN_NAMESPACE - -@@ -131,9 +128,6 @@ Qt::DropAction QCocoaDrag::drag(QDrag *o) - m_drag = o; - m_executed_drop_action = Qt::IgnoreAction; - -- if (maybeDragMultipleItems()) -- return m_executed_drop_action; -- - QPoint hotSpot = m_drag->hotSpot(); - QPixmap pm = dragPixmap(m_drag, hotSpot); - NSImage *dragImage = [NSImage imageFromQImage:pm.toImage()]; -@@ -164,95 +158,11 @@ Qt::DropAction QCocoaDrag::drag(QDrag *o) - return m_executed_drop_action; - } - --bool QCocoaDrag::maybeDragMultipleItems() --{ -- Q_ASSERT(m_drag && m_drag->mimeData()); -- Q_ASSERT(m_executed_drop_action == Qt::IgnoreAction); -- -- if (QOperatingSystemVersion::current() < QOperatingSystemVersion::MacOSMojave) { -- // -dragImage: stopped working in 10.14 first. -- return false; -- } -- -- const QMacAutoReleasePool pool; -- -- NSWindow *theWindow = [m_lastEvent window]; -- Q_ASSERT(theWindow); -- -- if (![theWindow.contentView respondsToSelector:@selector(draggingSession:sourceOperationMaskForDraggingContext:)]) -- return false; -- -- auto *sourceView = static_cast<NSView<NSDraggingSource>*>(theWindow.contentView); -- -- const auto &qtUrls = m_drag->mimeData()->urls(); -- NSPasteboard *dragBoard = [NSPasteboard pasteboardWithName:NSPasteboardNameDrag]; -- -- if (int(dragBoard.pasteboardItems.count) == 1 && qtUrls.size() <= 1) { -- // Good old -dragImage: works perfectly for this ... -- return false; -- } -- -- std::vector<NSPasteboardItem *> nonUrls; -- for (NSPasteboardItem *item in dragBoard.pasteboardItems) { -- bool isUrl = false; -- for (NSPasteboardType type in item.types) { -- using NSStringRef = NSString *; -- if ([type isEqualToString:NSStringRef(kUTTypeFileURL)]) { -- isUrl = true; -- break; -- } -- } -- -- if (!isUrl) -- nonUrls.push_back(item); -- } -- -- QPoint hotSpot = m_drag->hotSpot(); -- const auto pixmap = dragPixmap(m_drag, hotSpot); -- NSImage *dragImage = [NSImage imageFromQImage:pixmap.toImage()]; -- Q_ASSERT(dragImage); -- -- NSMutableArray<NSDraggingItem *> *dragItems = [[[NSMutableArray alloc] init] autorelease]; -- const NSPoint itemLocation = m_drag->hotSpot().toCGPoint(); -- // 0. We start from URLs, which can be actually in a list (thus technically -- // only ONE item in the pasteboard. The fact it's only one does not help, we are -- // still getting an exception because of the number of items/images mismatch ... -- for (const auto &qtUrl : qtUrls) { -- NSURL *nsUrl = qtUrl.toNSURL(); -- auto *newItem = [[[NSDraggingItem alloc] initWithPasteboardWriter:nsUrl] autorelease]; -- const NSRect itemFrame = NSMakeRect(itemLocation.x, itemLocation.y, -- dragImage.size.width, -- dragImage.size.height); -- [newItem setDraggingFrame:itemFrame contents:dragImage]; -- [dragItems addObject:newItem]; -- } -- // 1. Repeat for non-url items, if any: -- for (auto *pbItem : nonUrls) { -- auto *newItem = [[[NSDraggingItem alloc] initWithPasteboardWriter:pbItem] autorelease]; -- const NSRect itemFrame = NSMakeRect(itemLocation.x, itemLocation.y, -- dragImage.size.width, -- dragImage.size.height); -- [newItem setDraggingFrame:itemFrame contents:dragImage]; -- [dragItems addObject:newItem]; -- } -- -- [sourceView beginDraggingSessionWithItems:dragItems event:m_lastEvent source:sourceView]; -- internalDragLoop.exec(); -- return true; --} -- - void QCocoaDrag::setAcceptedAction(Qt::DropAction act) - { - m_executed_drop_action = act; - } - --void QCocoaDrag::exitDragLoop() --{ -- if (internalDragLoop.isRunning()) -- internalDragLoop.exit(); --} -- -- - QPixmap QCocoaDrag::dragPixmap(QDrag *drag, QPoint &hotSpot) const - { - const QMimeData* data = drag->mimeData(); -diff --git a/src/plugins/platforms/cocoa/qnsview_dragging.mm b/src/plugins/platforms/cocoa/qnsview_dragging.mm -index 978d73f7d9..463e3c5579 100644 ---- a/src/plugins/platforms/cocoa/qnsview_dragging.mm -+++ b/src/plugins/platforms/cocoa/qnsview_dragging.mm -@@ -232,10 +232,6 @@ static QPoint mapWindowCoordinates(QWindow *source, QWindow *target, QPoint poin - if (!target) - return; - -- auto *nativeDrag = QCocoaIntegration::instance()->drag(); -- Q_ASSERT(nativeDrag); -- nativeDrag->exitDragLoop(); -- - QPoint windowPoint = QPointF::fromCGPoint([self convertPoint:sender.draggingLocation fromView:nil]).toPoint(); - - qCDebug(lcQpaMouse) << QEvent::DragLeave << self << "at" << windowPoint; -@@ -294,12 +294,7 @@ static QPoint mapWindowCoordinates(QWindow *source, QWindow *target, QPoint poin - if (!target) - return; - -- QCocoaDrag* nativeDrag = QCocoaIntegration::instance()->drag(); -- Q_ASSERT(nativeDrag); -- nativeDrag->exitDragLoop(); -- // for internal drag'n'drop, don't override the action the drop event accepted -- if (!nativeDrag->currentDrag()) -- nativeDrag->setAcceptedAction(qt_mac_mapNSDragOperation(operation)); -+ QCocoaIntegration::instance()->drag(); - - // Qt starts drag-and-drop on a mouse button press event. Cococa in - // this case won't send the matching release event, so we have to --- -2.21.0 - |