summaryrefslogtreecommitdiff
path: root/src/urlbar/urlbar.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/urlbar/urlbar.cpp')
-rw-r--r--src/urlbar/urlbar.cpp42
1 files changed, 25 insertions, 17 deletions
diff --git a/src/urlbar/urlbar.cpp b/src/urlbar/urlbar.cpp
index c8aa43ff..61c44907 100644
--- a/src/urlbar/urlbar.cpp
+++ b/src/urlbar/urlbar.cpp
@@ -89,9 +89,6 @@ UrlBar::UrlBar(QWidget *parent)
// doesn't show the clear button
setClearButtonShown(false);
- // trap Key_Enter & Key_Return events, while emitting the returnPressed signal
- setTrapReturnKey(true);
-
// insert decoded URLs
setUrlDropsEnabled(true);
@@ -116,9 +113,6 @@ UrlBar::UrlBar(QWidget *parent)
// bookmark icon
connect(Application::bookmarkProvider()->bookmarkManager(), SIGNAL(changed(const QString &, const QString &)), this, SLOT(onBookmarksChanged()));
- // load typed urls
- connect(this, SIGNAL(returnPressed(const QString &)), this, SLOT(loadTyped(const QString &)));
-
_suggestionTimer->setSingleShot(true);
connect(_suggestionTimer, SIGNAL(timeout()), this, SLOT(suggest()));
@@ -138,7 +132,6 @@ void UrlBar::setQUrl(const QUrl& url)
{
if (url.scheme() == QL1S("about"))
{
- _icon->setIcon(KIcon("arrow-right"));
clear();
setFocus();
}
@@ -241,7 +234,8 @@ void UrlBar::keyPressEvent(QKeyEvent *event)
// this handles the Modifiers + Return key combinations
QString currentText = text().trimmed();
if ((event->key() == Qt::Key_Enter || event->key() == Qt::Key_Return)
- && !currentText.startsWith(QL1S("http://"), Qt::CaseInsensitive))
+ && !currentText.startsWith(QL1S("http://"), Qt::CaseInsensitive)
+ && event->modifiers() != Qt::NoModifier)
{
QString append;
if (event->modifiers() == Qt::ControlModifier)
@@ -257,19 +251,28 @@ void UrlBar::keyPressEvent(QKeyEvent *event)
append = QL1S(".net");
}
- QUrl url(QL1S("http://www.") + currentText);
- QString host = url.host();
- if (!host.endsWith(append, Qt::CaseInsensitive))
+ if (!append.isEmpty())
{
- host += append;
- url.setHost(host);
+ QUrl url(QL1S("http://www.") + currentText);
+ QString host = url.host();
+ if (!host.endsWith(append, Qt::CaseInsensitive))
+ {
+ host += append;
+ url.setHost(host);
+ }
+
+ // now, load it!
+ activated(url);
}
+ }
- // now, load it!
- activated(url);
+ else if ((event->key() == Qt::Key_Enter || event->key() == Qt::Key_Return)
+ && !currentText.isEmpty())
+ {
+ loadTyped(currentText);
}
- if (event->key() == Qt::Key_Escape)
+ else if (event->key() == Qt::Key_Escape)
{
clearFocus();
event->accept();
@@ -503,5 +506,10 @@ void UrlBar::suggest()
void UrlBar::refreshFavicon()
{
- _icon->setIcon(Application::iconManager()->iconForUrl(_tab->view()->url()));
+ KUrl u = _tab->url();
+ if(u.scheme() == QL1S("about")) {
+ _icon->setIcon(KIcon("arrow-right"));
+ return;
+ }
+ _icon->setIcon(Application::iconManager()->iconForUrl(u));
}