if (usePhoneUi) {
Q_ASSERT(qobject_cast<QDockWidget *>(m_placesPanel->parent()));
m_placesPanel->parentWidget()->hide();
- GeneralSettings::setShowZoomSlider(false);
+ auto settings = GeneralSettings::self();
+ settings->setShowZoomSlider(false); // Zooming can be done with pinch gestures instead and we are short on horizontal space.
+ settings->setRenameInline(false); // This works around inline renaming currently not working well with virtual keyboards.
+ settings->save(); // Otherwise the RenameInline setting is not picked up for the first time Dolphin is used.
}
}
updateGoActions();
// will signal used urls to activities manager, too
- m_recentFiles->addUrl(url);
+ m_recentFiles->addUrl(url, QString(), "inode/directory");
Q_EMIT urlChanged(url);
}
}
}
-void DolphinMainWindow::openNewTab(const QUrl &url)
+DolphinTabPage *DolphinMainWindow::openNewTab(const QUrl &url)
{
- m_tabWidget->openNewTab(url, QUrl());
+ return m_tabWidget->openNewTab(url, QUrl());
}
void DolphinMainWindow::openNewTabAndActivate(const QUrl &url)
const KUrlNavigator *urlNavigator = m_activeViewContainer->urlNavigatorInternalWithHistory();
int entries = 0;
QMenu *menu = m_forwardAction->popupMenu();
+ menu->clear();
for (int i = urlNavigator->historyIndex() - 1; i >= 0 && entries < MaxNumberOfNavigationentries; --i, ++entries) {
QAction *action = urlNavigatorHistoryAction(urlNavigator, i, menu);
menu->addAction(action);
void DolphinMainWindow::toggleSplitView()
{
+ QUrl newSplitViewUrl;
+ const KFileItemList list = m_activeViewContainer->view()->selectedItems();
+ if (list.count() == 1) {
+ const KFileItem &item = list.first();
+ newSplitViewUrl = DolphinView::openItemAsFolderUrl(item);
+ }
+
DolphinTabPage *tabPage = m_tabWidget->currentTabPage();
- tabPage->setSplitViewEnabled(!tabPage->splitViewEnabled(), WithAnimation);
+ tabPage->setSplitViewEnabled(!tabPage->splitViewEnabled(), WithAnimation, newSplitViewUrl);
m_tabWidget->updateTabName(m_tabWidget->indexOf(tabPage));
updateViewActions();
}
// If the text field currently has focus and everything is selected,
// pressing the keyboard shortcut returns the whole thing to breadcrumb mode
+ // and goes back to the view, just like how it was before this action was triggered the first time.
if (navigator->isUrlEditable() && lineEdit->hasFocus() && lineEdit->selectedText() == lineEdit->text()) {
navigator->setUrlEditable(false);
+ m_activeViewContainer->view()->setFocus();
} else {
navigator->setUrlEditable(true);
navigator->setFocus();
// We can end up here if the user clicked a device in the Places Panel
// which had been unmounted earlier, see https://bugs.kde.org/show_bug.cgi?id=161385.
reloadView();
+
+ m_activeViewContainer->view()->setFocus(); // We always want the focus on the view after activating a place.
} else {
view->disableUrlNavigatorSelectionRequests();
changeUrl(url);
QAction *addToPlacesAction = col->action(QStringLiteral("add_to_places"));
QAction *copyToOtherViewAction = col->action(QStringLiteral("copy_to_inactive_split_view"));
QAction *moveToOtherViewAction = col->action(QStringLiteral("move_to_inactive_split_view"));
- QAction *copyLocation = col->action(QString("copy_location"));
+ QAction *copyLocation = col->action(QStringLiteral("copy_location"));
if (list.isEmpty()) {
stateChanged(QStringLiteral("has_no_selection"));