back won't be possible for the user, as a redirection will occur again).
CCBUG: 212293
svn path=/trunk/KDE/kdebase/apps/; revision=
1147597
void DolphinMainWindow::goBack()
{
clearStatusBar();
- m_activeViewContainer->urlNavigator()->goBack();
+
+ KUrlNavigator* urlNavigator = m_activeViewContainer->urlNavigator();
+ urlNavigator->goBack();
+
+ if (urlNavigator->locationState().isEmpty()) {
+ // An empty location state indicates a redirection URL,
+ // which must be skipped too
+ urlNavigator->goBack();
+ }
}
void DolphinMainWindow::goForward()
Q_UNUSED(oldUrl);
const bool block = m_urlNavigator->signalsBlocked();
m_urlNavigator->blockSignals(true);
+
+ // Assure that the location state is reset for redirection URLs. This
+ // allows to skip redirection URLs when going back or forward in the
+ // URL history.
+ m_urlNavigator->saveLocationState(QByteArray());
m_urlNavigator->setLocationUrl(newUrl);
+
m_urlNavigator->blockSignals(block);
}