mirror of
https://invent.kde.org/system/dolphin
synced 2024-09-19 16:31:21 +00:00
Activate the DolphinView if the KItemListContainer gets focus
This is needed in the case that the view is split to make the DolphinMainWindow aware of the view which is currently active.
This commit is contained in:
parent
d7c4fdedd0
commit
1abb47fba7
|
@ -164,6 +164,7 @@ DolphinView::DolphinView(const KUrl& url, QWidget* parent) :
|
|||
|
||||
m_container = new DolphinItemListContainer(m_dirLister, this);
|
||||
m_container->setVisibleRoles(QList<QByteArray>() << "name");
|
||||
m_container->installEventFilter(this);
|
||||
|
||||
KItemListController* controller = m_container->controller();
|
||||
controller->setSelectionBehavior(KItemListController::MultiSelection);
|
||||
|
@ -695,10 +696,20 @@ void DolphinView::setCategorizedSorting(bool categorized)
|
|||
emit categorizedSortingChanged(categorized);
|
||||
}
|
||||
|
||||
void DolphinView::mouseReleaseEvent(QMouseEvent* event)
|
||||
bool DolphinView::eventFilter(QObject* watched, QEvent* event)
|
||||
{
|
||||
QWidget::mouseReleaseEvent(event);
|
||||
setActive(true);
|
||||
switch (event->type()) {
|
||||
case QEvent::FocusIn:
|
||||
if (watched == m_container) {
|
||||
setActive(true);
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return QWidget::eventFilter(watched, event);
|
||||
}
|
||||
|
||||
void DolphinView::activate()
|
||||
|
|
|
@ -409,6 +409,9 @@ public slots:
|
|||
*/
|
||||
void setCategorizedSorting(bool categorized);
|
||||
|
||||
/** Activates the view if the item list container gets focus. */
|
||||
virtual bool eventFilter(QObject* watched, QEvent* event);
|
||||
|
||||
signals:
|
||||
/**
|
||||
* Is emitted if the view has been activated by e. g. a mouse click.
|
||||
|
@ -550,9 +553,6 @@ signals:
|
|||
*/
|
||||
void writeStateChanged(bool isFolderWritable);
|
||||
|
||||
protected:
|
||||
virtual void mouseReleaseEvent(QMouseEvent* event);
|
||||
|
||||
private slots:
|
||||
/**
|
||||
* Marks the view as active (DolphinView:isActive() will return true)
|
||||
|
|
Loading…
Reference in a new issue