From 1ee841364215042f1f284e692ae191ebf7a64156 Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Tue, 1 May 2018 15:54:49 +0200 Subject: Split off addressbar into lib/ --- src/addressbar/addressbar.cpp | 87 ------------------------------------------- 1 file changed, 87 deletions(-) delete mode 100644 src/addressbar/addressbar.cpp (limited to 'src/addressbar/addressbar.cpp') diff --git a/src/addressbar/addressbar.cpp b/src/addressbar/addressbar.cpp deleted file mode 100644 index b86230c..0000000 --- a/src/addressbar/addressbar.cpp +++ /dev/null @@ -1,87 +0,0 @@ -/* - * This file is part of smolbote. It's copyrighted by the contributors recorded - * in the version control history of the file, available from its original - * location: https://neueland.iserlohn-fortress.net/smolbote.hg - * - * SPDX-License-Identifier: GPL-3.0 - */ - -#include "addressbar.h" -#include "urllineedit.h" -#include "webengine/webview.h" -#include -#include -#include - -AddressBar::AddressBar(const QHash &config, QWidget *parent) - : QWidget(parent) -{ - setLayout(new QVBoxLayout()); - layout()->setContentsMargins(0, 0, 0, 0); - layout()->setSpacing(0); - - urlBar = new UrlLineEdit(this); - layout()->addWidget(urlBar); - - auto *focusShortcut = new QShortcut(QKeySequence(config.value("addressbar.shortcuts.focus")), parent); - connect(focusShortcut, &QShortcut::activated, urlBar, [=]() { - urlBar->setFocus(); - urlBar->selectAll(); - }); - - urlBar->pageMenu_action->setShortcut(QKeySequence(config.value("addressbar.shortcuts.pageMenu"))); - urlBar->pageMenu_action->setToolTip(tr("Page Actions (%1)").arg(urlBar->pageMenu_action->shortcut().toString())); - - urlBar->toolsMenu_action->setShortcut(QKeySequence(config.value("addressbar.shortcuts.toolsMenu"))); - urlBar->toolsMenu_action->setToolTip(tr("Tools (%1)").arg(urlBar->toolsMenu_action->shortcut().toString())); - - connect(urlBar, &UrlLineEdit::textEdited, [=](const QString &text) { - std::function callback = std::bind(&UrlLineEdit::updateCompleter, urlBar, std::placeholders::_1); - emit complete(text, callback); - }); - - progressBar = new QProgressBar(this); - progressBar->setMaximumHeight(5); - progressBar->setTextVisible(false); - layout()->addWidget(progressBar); -} - -AddressBar::~AddressBar() -{ - disconnect(urlChangedConnection); - disconnect(loadUrlConnection); - disconnect(progressBarConnection); -} - -void AddressBar::connectWebView(WebView *view) -{ - disconnect(urlChangedConnection); - disconnect(loadUrlConnection); - disconnect(progressBarConnection); - - if(view == nullptr) { - urlBar->clear(); - urlBar->pageMenu_action->setMenu(nullptr); - urlBar->toolsMenu_action->setMenu(nullptr); - - progressBar->setValue(100); - return; - } - - urlBar->setUrl(view->url()); - urlBar->pageMenu_action->setMenu(view->pageMenu()); - urlBar->toolsMenu_action->setMenu(view->toolsMenu()); - urlChangedConnection = connect(view, &WebView::urlChanged, urlBar, &UrlLineEdit::setUrl); - loadUrlConnection = connect(urlBar, &UrlLineEdit::returnPressed, [=]() { - if(urlBar->text().startsWith('#')) { - ; - view->search(urlBar->text().mid(1)); - } else { - view->load(QUrl::fromUserInput(urlBar->text())); - } - view->setFocus(); - }); - - progressBar->setValue(view->loadProgress()); - progressBarConnection = connect(view, &QWebEngineView::loadProgress, progressBar, &QProgressBar::setValue); -} -- cgit v1.2.1