mirror of
https://github.com/githubuser0xFFFF/Qt-Advanced-Docking-System.git
synced 2024-12-25 07:31:33 +08:00
Fix using escape button when dragging non-opaque preview to cancel drag operation (#114)
* Added missing overrides. * Escape button to cancel dragging was not working in Windows either. Using the event filter added for Linux works.
This commit is contained in:
parent
8a16230213
commit
a4ef161f4f
@ -207,12 +207,9 @@ CFloatingDragPreview::CFloatingDragPreview(QWidget* Content, QWidget* parent) :
|
|||||||
connect(qApp, SIGNAL(applicationStateChanged(Qt::ApplicationState)),
|
connect(qApp, SIGNAL(applicationStateChanged(Qt::ApplicationState)),
|
||||||
SLOT(onApplicationStateChanged(Qt::ApplicationState)));
|
SLOT(onApplicationStateChanged(Qt::ApplicationState)));
|
||||||
|
|
||||||
#ifdef Q_OS_LINUX
|
// We need to install an event filter for the given Content
|
||||||
// In Windows this widget directly receives the escape key press events
|
// widget to receive the escape key press
|
||||||
// in Linux we need to install an event filter for the given Content
|
Content->installEventFilter(this);
|
||||||
// widget to receive the escape key press
|
|
||||||
Content->installEventFilter(this);
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -355,18 +352,6 @@ void CFloatingDragPreview::paintEvent(QPaintEvent* event)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//============================================================================
|
|
||||||
void CFloatingDragPreview::keyPressEvent(QKeyEvent *event)
|
|
||||||
{
|
|
||||||
Super::keyPressEvent(event);
|
|
||||||
if (event->key() == Qt::Key_Escape)
|
|
||||||
{
|
|
||||||
d->cancelDragging();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
//============================================================================
|
//============================================================================
|
||||||
void CFloatingDragPreview::onApplicationStateChanged(Qt::ApplicationState state)
|
void CFloatingDragPreview::onApplicationStateChanged(Qt::ApplicationState state)
|
||||||
{
|
{
|
||||||
|
@ -49,11 +49,6 @@ protected:
|
|||||||
*/
|
*/
|
||||||
virtual void paintEvent(QPaintEvent *e) override;
|
virtual void paintEvent(QPaintEvent *e) override;
|
||||||
|
|
||||||
/**
|
|
||||||
* Cancel non opaque undocking with escape key
|
|
||||||
*/
|
|
||||||
virtual void keyPressEvent(QKeyEvent *event) override;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The content is a DockArea or a DockWidget
|
* The content is a DockArea or a DockWidget
|
||||||
*/
|
*/
|
||||||
|
Loading…
Reference in New Issue
Block a user