Merge branch '4.9'

This commit is contained in:
Dawit Alemayehu 2012-10-03 15:09:58 -04:00
commit bc66254304
5 changed files with 19 additions and 5 deletions

View file

@ -2061,7 +2061,13 @@ void DolphinMainWindow::createSecondaryView(int tabIndex)
const int newWidth = (viewTab.primaryView->width() - splitter->handleWidth()) / 2;
const DolphinView* view = viewTab.primaryView->view();
viewTab.secondaryView = createViewContainer(view->url(), 0);
// The final parent of the new view container will be set by adding it
// to the splitter. However, we must make sure that the DolphinMainWindow
// is a parent of the view container already when it is constructed
// because this enables the container's KFileItemModel to assign its
// dir lister to the right main window. The dir lister can then cache
// authentication data.
viewTab.secondaryView = createViewContainer(view->url(), this);
splitter->addWidget(viewTab.secondaryView);
splitter->setSizes(QList<int>() << newWidth << newWidth);

View file

@ -31,6 +31,7 @@
#include <QApplication>
#include <QMimeData>
#include <QTimer>
#include <QWidget>
// #define KFILEITEMMODEL_DEBUG
@ -59,7 +60,11 @@ KFileItemModel::KFileItemModel(QObject* parent) :
m_dirLister = new KFileItemModelDirLister(this);
m_dirLister->setAutoUpdate(true);
m_dirLister->setDelayedMimeTypes(true);
m_dirLister->setMainWindow(qApp->activeWindow());
const QWidget* parentWidget = qobject_cast<QWidget*>(parent);
if (parentWidget) {
m_dirLister->setMainWindow(parentWidget->window());
}
connect(m_dirLister, SIGNAL(started(KUrl)), this, SIGNAL(directoryLoadingStarted()));
connect(m_dirLister, SIGNAL(canceled()), this, SLOT(slotCanceled()));

View file

@ -420,6 +420,8 @@ bool KItemListController::keyPressEvent(QKeyEvent* event)
default:
m_keyboardManager->addKeys(event->text());
// Make sure unconsumed events get propagated up the chain. #302329
event->ignore();
return false;
}

View file

@ -869,8 +869,6 @@ bool KItemListView::event(QEvent* event)
event->accept();
return true;
}
// Make sure events unconsumed events get propagated up the chain. #302329
event->ignore();
return QGraphicsWidget::event(event);
}

View file

@ -122,7 +122,6 @@ DolphinView::DolphinView(const KUrl& url, QWidget* parent) :
m_model = new KFileItemModel(this);
m_view = new DolphinItemListView();
m_view->setEnabledSelectionToggles(GeneralSettings::showSelectionToggle());
m_view->setEnlargeSmallPreviews(GeneralSettings::enlargeSmallPreviews());
m_view->setVisibleRoles(QList<QByteArray>() << "text");
applyModeToView();
@ -130,6 +129,10 @@ DolphinView::DolphinView(const KUrl& url, QWidget* parent) :
const int delay = GeneralSettings::autoExpandFolders() ? 750 : -1;
controller->setAutoActivationDelay(delay);
// The EnlargeSmallPreviews setting can only be changed after the model
// has been set in the view by KItemListController.
m_view->setEnlargeSmallPreviews(GeneralSettings::enlargeSmallPreviews());
m_container = new KItemListContainer(controller, this);
m_container->installEventFilter(this);
setFocusProxy(m_container);