name.replace(replaceIndex, 1, number);
if (oldUrl.fileName() != name) {
- KUrl newUrl(oldUrl.upUrl());
- newUrl.addPath(name);
+ KUrl newUrl = oldUrl;
+ newUrl.setFileName(name);
m_mainWindow->rename(oldUrl, newUrl);
}
++it;
}
else {
const KUrl& oldUrl = urls.first();
- KUrl newUrl = oldUrl.upUrl();
- newUrl.addPath(newName);
+ KUrl newUrl = oldUrl;
+ newUrl.setFileName(newName);
m_mainWindow->rename(oldUrl, newUrl);
}
}
return itemView()->verticalScrollBar()->value();
}
-void DolphinView::refreshSettings()
-{
- startDirLister(m_urlNavigator->url());
-}
-
void DolphinView::emitRequestItemInfo(const KUrl& url)
{
emit requestItemInfo(url);
m_dirLister->stop();
bool openDir = true;
- bool keepOldDirs = isColumnViewActive() && !reload;
+ bool keepOldDirs = isColumnViewActive();
if (keepOldDirs) {
- if (m_dirLister->directories().contains(url)) {
+ if (reload) {
+ keepOldDirs = false;
+
+ const KUrl& dirListerUrl = m_dirLister->url();
+ if (dirListerUrl.isValid()) {
+ const KUrl::List dirs = m_dirLister->directories();
+ KUrl url;
+ foreach (url, dirs) {
+ m_dirLister->updateDirectory(url);
+ }
+ openDir = false;
+ }
+ }
+ else if (m_dirLister->directories().contains(url)) {
// The dir lister contains the directory already, so
// KDirLister::openUrl() may not been invoked twice.
m_dirLister->updateDirectory(url);