┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/dolphindockwidget.cpp
diff options
context:
space:
mode:
authorFrank Reininghaus <[email protected]>2013-07-29 23:22:02 +0200
committerFrank Reininghaus <[email protected]>2013-07-29 23:22:02 +0200
commitb86388f9c653c226a054123ea26f5c4e71c5c20c (patch)
treecf67b42eb80fb9722396e2607fa9b7adf44a8599 /src/dolphindockwidget.cpp
parent8552eb5d757a6f75128bdde334c84903aed83cf5 (diff)
Do not allow that panels are dragged out of the main window
This feature might have been useful in some cases, but it's most likely not useful enough to justify that we accept the bugs that it causes. Even though some of these bugs are not Dolphin's fault at all, they cause serious problems for users in some cases. I'm pushing this commit to master only because I prefer to not push such behavior changes to 4.11 at this point of the release cycle. BUG: 288629 CCBUG: 322299 CCBUG: 322812 FIXED-IN: 4.12.0 REVIEW: 111692
Diffstat (limited to 'src/dolphindockwidget.cpp')
-rw-r--r--src/dolphindockwidget.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/dolphindockwidget.cpp b/src/dolphindockwidget.cpp
index 0d8aea7bd..6495c8da9 100644
--- a/src/dolphindockwidget.cpp
+++ b/src/dolphindockwidget.cpp
@@ -21,6 +21,14 @@
#include <QStyle>
+namespace {
+ // Disable the 'Floatable' feature, i.e., the possibility to drag the
+ // dock widget out of the main window. This works around problems like
+ // https://bugs.kde.org/show_bug.cgi?id=288629
+ // https://bugs.kde.org/show_bug.cgi?id=322299
+ const QDockWidget::DockWidgetFeatures DefaultDockWidgetFeatures = QDockWidget::DockWidgetMovable | QDockWidget::DockWidgetClosable;
+}
+
// Empty titlebar for the dock widgets when "Lock Layout" has been activated.
class DolphinDockTitleBar : public QWidget
{
@@ -45,6 +53,7 @@ DolphinDockWidget::DolphinDockWidget(const QString& title, QWidget* parent, Qt::
m_locked(false),
m_dockTitleBar(0)
{
+ setFeatures(DefaultDockWidgetFeatures);
}
DolphinDockWidget::DolphinDockWidget(QWidget* parent, Qt::WindowFlags flags) :
@@ -52,6 +61,7 @@ DolphinDockWidget::DolphinDockWidget(QWidget* parent, Qt::WindowFlags flags) :
m_locked(false),
m_dockTitleBar(0)
{
+ setFeatures(DefaultDockWidgetFeatures);
}
DolphinDockWidget::~DolphinDockWidget()
@@ -71,9 +81,7 @@ void DolphinDockWidget::setLocked(bool lock)
setFeatures(QDockWidget::NoDockWidgetFeatures);
} else {
setTitleBarWidget(0);
- setFeatures(QDockWidget::DockWidgetMovable |
- QDockWidget::DockWidgetFloatable |
- QDockWidget::DockWidgetClosable);
+ setFeatures(DefaultDockWidgetFeatures);
}
}
}