mirror of
https://invent.kde.org/network/falkon.git
synced 2024-12-20 02:36:34 +01:00
[Regression] Fixed restoring session with pinned tabs.
Regression from adding tabs on top feature.
This commit is contained in:
parent
8c9f09b17a
commit
7b3b4f9b94
@ -1058,7 +1058,6 @@ bool MainApplication::restoreStateSlot(QupZilla* window, RestoreData recoveryDat
|
||||
// Instead create new one and restore pinned tabs there
|
||||
|
||||
QupZilla* newWin = makeNewWindow(Qz::BW_OtherRestoredWindow);
|
||||
newWin->tabWidget()->restorePinnedTabs();
|
||||
newWin->restoreWindowState(recoveryData.takeFirst());
|
||||
}
|
||||
else {
|
||||
|
@ -115,7 +115,7 @@ QupZilla::QupZilla(Qz::BrowserWindow type, QUrl startUrl)
|
||||
, m_isClosing(false)
|
||||
, m_isStarting(false)
|
||||
, m_startingUrl(startUrl)
|
||||
, m_startBehaviour(type)
|
||||
, m_windowType(type)
|
||||
, m_menuBookmarksAction(0)
|
||||
, m_actionPrivateBrowsing(0)
|
||||
, m_sideBarManager(new SideBarManager(this))
|
||||
@ -157,10 +157,6 @@ void QupZilla::postLaunch()
|
||||
|
||||
loadSettings();
|
||||
|
||||
if (m_startBehaviour == Qz::BW_FirstAppWindow) {
|
||||
m_tabWidget->restorePinnedTabs();
|
||||
}
|
||||
|
||||
Settings settings;
|
||||
int afterLaunch = settings.value("Web-URL-Settings/afterLaunch", 1).toInt();
|
||||
bool addTab = true;
|
||||
@ -184,7 +180,7 @@ void QupZilla::postLaunch()
|
||||
break;
|
||||
}
|
||||
|
||||
switch (m_startBehaviour) {
|
||||
switch (m_windowType) {
|
||||
case Qz::BW_FirstAppWindow:
|
||||
if (mApp->isStartingAfterCrash()) {
|
||||
addTab = true;
|
||||
@ -223,7 +219,7 @@ void QupZilla::postLaunch()
|
||||
}
|
||||
}
|
||||
|
||||
if (m_tabWidget->getTabBar()->normalTabsCount() <= 0 && m_startBehaviour != Qz::BW_OtherRestoredWindow) {
|
||||
if (m_tabWidget->getTabBar()->normalTabsCount() <= 0 && m_windowType != Qz::BW_OtherRestoredWindow) {
|
||||
//Something went really wrong .. add one tab
|
||||
QNetworkRequest request(m_homepage);
|
||||
request.setRawHeader("X-QupZilla-UserLoadAction", QByteArray("1"));
|
||||
@ -268,7 +264,7 @@ void QupZilla::setupUi()
|
||||
setGeometry(QRect(20, 20, 800, 550));
|
||||
}
|
||||
|
||||
if (m_startBehaviour == Qz::BW_NewWindow) {
|
||||
if (m_windowType == Qz::BW_NewWindow) {
|
||||
// Moving window +40 x,y to be visible that this is new window
|
||||
QPoint p = pos();
|
||||
p.setX(p.x() + 40);
|
||||
@ -811,6 +807,11 @@ LocationBar* QupZilla::locationBar() const
|
||||
return qobject_cast<LocationBar*>(m_tabWidget->locationBars()->currentWidget());
|
||||
}
|
||||
|
||||
Qz::BrowserWindow QupZilla::windowType() const
|
||||
{
|
||||
return m_windowType;
|
||||
}
|
||||
|
||||
QWidget* QupZilla::navigationContainer() const
|
||||
{
|
||||
if (!qzSettings->tabsOnTop) {
|
||||
@ -2257,7 +2258,7 @@ int QupZilla::getCurrentVirtualDesktop() const
|
||||
void QupZilla::moveToVirtualDesktop(int desktopId)
|
||||
{
|
||||
// Don't move when window is already visible or it is first app window
|
||||
if (desktopId < 0 || isVisible() || m_startBehaviour == Qz::BW_FirstAppWindow) {
|
||||
if (desktopId < 0 || isVisible() || m_windowType == Qz::BW_FirstAppWindow) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -91,6 +91,7 @@ public:
|
||||
TabbedWebView* weView(int index) const;
|
||||
LocationBar* locationBar() const;
|
||||
|
||||
Qz::BrowserWindow windowType() const;
|
||||
TabWidget* tabWidget() { return m_tabWidget; }
|
||||
BookmarksToolbar* bookmarksToolbar() { return m_bookmarksToolbar; }
|
||||
StatusBarMessage* statusBarMessage() { return m_statusBarMessage; }
|
||||
@ -256,7 +257,7 @@ private:
|
||||
bool m_isStarting;
|
||||
QUrl m_startingUrl;
|
||||
QUrl m_homepage;
|
||||
Qz::BrowserWindow m_startBehaviour;
|
||||
Qz::BrowserWindow m_windowType;
|
||||
|
||||
QVBoxLayout* m_mainLayout;
|
||||
QSplitter* m_mainSplitter;
|
||||
|
@ -854,7 +854,6 @@ void TabWidget::restorePinnedTabs()
|
||||
}
|
||||
|
||||
m_tabBar->updatePinnedTabCloseButton(addedIndex);
|
||||
// m_tabBar->moveTab(addedIndex, i);
|
||||
}
|
||||
|
||||
m_isRestoringState = false;
|
||||
@ -892,6 +891,12 @@ bool TabWidget::restoreState(const QList<WebTab::SavedTab> &tabs, int currentTab
|
||||
{
|
||||
m_isRestoringState = true;
|
||||
|
||||
Qz::BrowserWindow type = p_QupZilla->windowType();
|
||||
|
||||
if (type == Qz::BW_FirstAppWindow || type == Qz::BW_MacFirstWindow) {
|
||||
restorePinnedTabs();
|
||||
}
|
||||
|
||||
for (int i = 0; i < tabs.size(); ++i) {
|
||||
WebTab::SavedTab tab = tabs.at(i);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user