mirror of
https://github.com/KDE/konsole.git
synced 2026-06-15 17:29:04 -04:00
Support dragging tab out of current window and into its own window
Thanks to makis marimpis<makhsm@gmail.com> for the patch! REVIEW: 104933 FEATURE: 56749 FIXED-IN: 4.9.0
This commit is contained in:
@@ -620,9 +620,6 @@ void TabbedViewContainer::startTabDrag(int tab)
|
||||
|
||||
// start drag, if drag-and-drop is successful the view at 'tab' will be
|
||||
// deleted
|
||||
//
|
||||
// if the tab was dragged onto another application
|
||||
// which blindly accepted the drop then ignore it
|
||||
if (drag->exec() == Qt::MoveAction && drag->target() != 0) {
|
||||
// Deleting the view may cause the view container to be deleted, which
|
||||
// will also delete the QDrag object.
|
||||
@@ -635,6 +632,15 @@ void TabbedViewContainer::startTabDrag(int tab)
|
||||
// FIXME: Resolve this properly
|
||||
drag->setParent(0);
|
||||
removeView(view);
|
||||
} else {
|
||||
// if the tab was dragged onto another application
|
||||
// which blindly accepted the drop, then detach the tab to achieve
|
||||
// the effect of "dragging tab into its own window"
|
||||
//
|
||||
// It feels unnatural to do the detach when this is only one tab
|
||||
// in the tabbar
|
||||
if (_tabBar->count() > 1)
|
||||
emit detachTab(this, view);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user