diff options
Diffstat (limited to 'src/platformsupport/dnd')
-rw-r--r-- | src/platformsupport/dnd/qshapedpixmapdndwindow.cpp | 4 | ||||
-rw-r--r-- | src/platformsupport/dnd/qshapedpixmapdndwindow_p.h | 4 | ||||
-rw-r--r-- | src/platformsupport/dnd/qsimpledrag.cpp | 2 | ||||
-rw-r--r-- | src/platformsupport/dnd/qsimpledrag_p.h | 4 |
4 files changed, 5 insertions, 9 deletions
diff --git a/src/platformsupport/dnd/qshapedpixmapdndwindow.cpp b/src/platformsupport/dnd/qshapedpixmapdndwindow.cpp index 67c3cb4701..b3e64b01d0 100644 --- a/src/platformsupport/dnd/qshapedpixmapdndwindow.cpp +++ b/src/platformsupport/dnd/qshapedpixmapdndwindow.cpp @@ -91,7 +91,9 @@ void QShapedPixmapWindow::setHotspot(const QPoint &hotspot) void QShapedPixmapWindow::updateGeometry() { QRect rect(QCursor::pos() - m_hotSpot, m_pixmap.size()); - if (m_backingStore->size() != m_pixmap.size()) + if (m_pixmap.isNull()) + m_backingStore->resize(QSize(1,1)); + else if (m_backingStore->size() != m_pixmap.size()) m_backingStore->resize(m_pixmap.size()); setGeometry(rect); } diff --git a/src/platformsupport/dnd/qshapedpixmapdndwindow_p.h b/src/platformsupport/dnd/qshapedpixmapdndwindow_p.h index ed0819cf29..20674b6b19 100644 --- a/src/platformsupport/dnd/qshapedpixmapdndwindow_p.h +++ b/src/platformsupport/dnd/qshapedpixmapdndwindow_p.h @@ -48,8 +48,6 @@ QT_BEGIN_NAMESPACE -QT_BEGIN_HEADER - class QShapedPixmapWindow : public QWindow { Q_OBJECT @@ -72,8 +70,6 @@ private: QPoint m_hotSpot; }; -QT_END_HEADER - QT_END_NAMESPACE #endif // QSHAPEDPIXMAPDNDWINDOW_H diff --git a/src/platformsupport/dnd/qsimpledrag.cpp b/src/platformsupport/dnd/qsimpledrag.cpp index 3b73380cab..fe0146afc3 100644 --- a/src/platformsupport/dnd/qsimpledrag.cpp +++ b/src/platformsupport/dnd/qsimpledrag.cpp @@ -207,6 +207,8 @@ void QBasicDrag::resetDndState(bool /* deleteSource */) void QBasicDrag::startDrag() { + // ### TODO Check if its really necessary to have m_drag_icon_window + // when QDrag is used without a pixmap - QDrag::setPixmap() if (!m_drag_icon_window) m_drag_icon_window = new QShapedPixmapWindow(); diff --git a/src/platformsupport/dnd/qsimpledrag_p.h b/src/platformsupport/dnd/qsimpledrag_p.h index 5cf3394919..bb9d215083 100644 --- a/src/platformsupport/dnd/qsimpledrag_p.h +++ b/src/platformsupport/dnd/qsimpledrag_p.h @@ -48,8 +48,6 @@ QT_BEGIN_NAMESPACE -QT_BEGIN_HEADER - #ifndef QT_NO_DRAGANDDROP class QMouseEvent; @@ -120,8 +118,6 @@ private: #endif // QT_NO_DRAGANDDROP -QT_END_HEADER - QT_END_NAMESPACE #endif |