aboutsummaryrefslogtreecommitdiff
path: root/src/mainwindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mainwindow.cpp')
-rw-r--r--src/mainwindow.cpp21
1 files changed, 11 insertions, 10 deletions
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
index 3dbcbdf..4433948 100644
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -44,7 +44,7 @@
MainWindow::MainWindow(std::shared_ptr<Configuration> config, QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow),
- tabBar(new WebViewTabBar(config, nullptr, this)),
+ tabBar(new MainWindowTabBar(config, this)),
menuBar(new MainWindowMenuBar(config, this)),
m_addressBar(new UrlLineEdit(this)),
m_progressBar(new LoadingBar(this))
@@ -88,7 +88,7 @@ MainWindow::MainWindow(std::shared_ptr<Configuration> config, QWidget *parent) :
QToolButton *homepageButton = new QToolButton(this);
homepageButton->setIcon(style()->standardIcon(QStyle::SP_DirHomeIcon));
connect(homepageButton, &QToolButton::clicked, this, [&]() {
- tabBar->currentView()->load(tabBar->profile()->homepage());
+ tabBar->currentView()->load(m_profile->homepage());
});
ui->navigationToolBar->addWidget(m_backButton);
@@ -181,14 +181,14 @@ void MainWindow::newTab(const QUrl &url)
m_tabBarAdded = true;
ui->mainToolBar->addWidget(tabBar);
}
- tabBar->addTab(url);
+ tabBar->addTab(createWebView(url, m_profile.get()));
}
void MainWindow::newWindow(const QUrl &url)
{
Browser *instance = static_cast<Browser*>(qApp->instance());
MainWindow *window = instance->createWindow();
- window->setProfile(tabBar->profile());
+ window->setProfile(m_profile);
window->newTab(url);
}
@@ -221,17 +221,18 @@ void MainWindow::showSettingsDialog()
dlg->exec();
}
-void MainWindow::setProfile(WebEngineProfile *profile)
+void MainWindow::setProfile(std::shared_ptr<WebEngineProfile> profile)
{
- Q_CHECK_PTR(profile);
- tabBar->setProfile(profile);
+ Q_ASSERT(profile);
+ m_profile = profile;
+ tabBar->setProfile(profile.get());
menuBar->setProfileName(profile->name());
}
WebEngineProfile *MainWindow::profile()
{
- Q_CHECK_PTR(tabBar->profile());
- return tabBar->profile();
+ Q_ASSERT(m_profile);
+ return m_profile.get();
}
void MainWindow::setBookmarksWidget(std::shared_ptr<BookmarksWidget> &widget)
@@ -307,7 +308,7 @@ void MainWindow::handleTitleUpdated(const QString &title)
{
QString t = QString::fromStdString(m_config->value<std::string>("browser.window.title").value());
t.replace("title", title);
- t.replace("profile", tabBar->profile()->name());
+ t.replace("profile", m_profile->name());
setWindowTitle(t);
//setWindowTitle(browser->settings()->value("window.title").toString().replace("title", title).replace("profile", tabBar->profile()->name()));
}