From 06fdf013b318c3d8f5efb3d2f87dedcdb507b8bc Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Thu, 24 Aug 2017 15:38:33 +0200 Subject: Cleaned up code --- src/lib/navigation/addressbar.cpp | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 src/lib/navigation/addressbar.cpp (limited to 'src/lib/navigation/addressbar.cpp') diff --git a/src/lib/navigation/addressbar.cpp b/src/lib/navigation/addressbar.cpp new file mode 100644 index 0000000..dd9991d --- /dev/null +++ b/src/lib/navigation/addressbar.cpp @@ -0,0 +1,30 @@ +#include "addressbar.h" +#include + +AddressBar::AddressBar(QWidget *parent) : QWidget(parent) +{ + QHBoxLayout *_layout = new QHBoxLayout(this); + _layout->setMargin(0); + _layout->setSpacing(0); + setLayout(_layout); + + m_urlLineEdit = new UrlLineEdit(this); + setFocusProxy(m_urlLineEdit); + _layout->addWidget(m_urlLineEdit); + + connect(m_urlLineEdit, &UrlLineEdit::returnPressed, [&](){ + if(m_urlLineEdit->text().startsWith('#')) { + QString term = m_urlLineEdit->text().mid(1); + term.replace(' ', '+'); + emit searchTermEntered(term); + } else { + emit addressEntered(QUrl::fromUserInput(m_urlLineEdit->text())); + } + }); +} + +void AddressBar::setWebView(const WebView *view) +{ + connect(view, &WebView::urlChanged, m_urlLineEdit, &UrlLineEdit::setUrl); + m_urlLineEdit->setUrl(view->url()); +} -- cgit v1.2.1