diff options
author | Andrea Diamantini <adjam7@gmail.com> | 2010-08-21 01:26:14 +0200 |
---|---|---|
committer | Andrea Diamantini <adjam7@gmail.com> | 2010-08-21 01:26:14 +0200 |
commit | 8a752526177e37b7b8fc91abbd2952bdfe77d155 (patch) | |
tree | b9b503ab044d0d2559668984f89224c6c1afe1bc /src/urlbar | |
parent | Merge branch 'opensearch2' (diff) | |
parent | BookmarkProvider's code reordered (diff) | |
download | rekonq-8a752526177e37b7b8fc91abbd2952bdfe77d155.tar.xz |
Merge commit 'refs/merge-requests/182' of git://gitorious.org/rekonq/mainline into m182
Diffstat (limited to 'src/urlbar')
-rw-r--r-- | src/urlbar/bookmarkwidget.cpp | 2 | ||||
-rw-r--r-- | src/urlbar/urlbar.cpp | 25 | ||||
-rw-r--r-- | src/urlbar/urlresolver.cpp | 65 |
3 files changed, 47 insertions, 45 deletions
diff --git a/src/urlbar/bookmarkwidget.cpp b/src/urlbar/bookmarkwidget.cpp index bcf85e1f..0e05e776 100644 --- a/src/urlbar/bookmarkwidget.cpp +++ b/src/urlbar/bookmarkwidget.cpp @@ -30,7 +30,7 @@ // Local includes #include "application.h" -#include "bookmarksmanager.h" +#include "bookmarkprovider.h" #include "bookmarkowner.h" // KDE Includes diff --git a/src/urlbar/urlbar.cpp b/src/urlbar/urlbar.cpp index e64959bd..c272d819 100644 --- a/src/urlbar/urlbar.cpp +++ b/src/urlbar/urlbar.cpp @@ -41,10 +41,11 @@ #include "webpage.h" #include "webview.h" #include "completionwidget.h" -#include "bookmarksmanager.h" +#include "bookmarkprovider.h" #include "bookmarkwidget.h" // KDE Includes +#include <KBookmarkManager> #include <KCompletionBox> #include <KStandardDirs> @@ -105,7 +106,7 @@ UrlBar::UrlBar(QWidget *parent) _tab = qobject_cast<WebTab *>(parent); connect(_tab, SIGNAL(loadProgressing()), this, SLOT(update())); - + connect(_tab->view(), SIGNAL(urlChanged(const QUrl &)), this, SLOT(setQUrl(const QUrl &))); connect(_tab->view(), SIGNAL(loadFinished(bool)), this, SLOT(loadFinished())); connect(_tab->view(), SIGNAL(loadStarted()), this, SLOT(clearRightIcons())); @@ -114,13 +115,13 @@ UrlBar::UrlBar(QWidget *parent) _icon->setIcon(KIcon("bookmarks").pixmap(32,32, QIcon::Disabled)); connect(Application::bookmarkProvider()->bookmarkManager(), SIGNAL(changed(const QString &, const QString &)), this, SLOT(onBookmarksChanged())); connect(_icon, SIGNAL(clicked(const QPoint &)), this, SLOT(showBookmarkInfo(const QPoint &))); - + // load typed urls connect(this, SIGNAL(returnPressed(const QString &)), this, SLOT(loadTyped(const QString &))); _suggestionTimer->setSingleShot(true); connect(_suggestionTimer, SIGNAL(timeout()), this, SLOT(suggest())); - + activateSuggestions(true); } @@ -163,10 +164,10 @@ void UrlBar::activated(const KUrl& url, Rekonq::OpenType type) void UrlBar::paintEvent(QPaintEvent *event) -{ +{ QColor backgroundColor; QColor foregroundColor; - + if (_privateMode) { backgroundColor = QColor(220, 220, 220); // light gray @@ -199,7 +200,7 @@ void UrlBar::paintEvent(QPaintEvent *event) int r = (highlight.red()+2*backgroundColor.red())/3; int g = (highlight.green()+2*backgroundColor.green())/3; int b = (highlight.blue()+2*backgroundColor.blue())/3; - + QColor loadingColor(r, g, b); if (abs(loadingColor.lightness() - backgroundColor.lightness()) < 20) //eg. Gaia color scheme @@ -320,7 +321,7 @@ void UrlBar::loadFinished() _icon->setIcon(KIcon("bookmarks")); _icon->setToolTip(i18n("Edit this bookmark")); } - + // show KGet downloads?? if (!KStandardDirs::findExe("kget").isNull() && ReKonfig::kgetList()) { @@ -343,7 +344,7 @@ void UrlBar::loadFinished() } // we need to update urlbar after the right icon settings - // removing this code (where setStyleSheet automatically calls update) needs adding again + // removing this code (where setStyleSheet automatically calls update) needs adding again // an update call kDebug() << "resetting stylesheet"; int rightIconWidth = 25 * (_rightIconsList.count()); @@ -355,7 +356,7 @@ void UrlBar::showBookmarkInfo(const QPoint &pos) { if( _tab->url().scheme() == QL1S("about") ) return; - + KBookmark bookmark = Application::bookmarkProvider()->bookmarkForUrl(_tab->url()); IconButton *bt = qobject_cast<IconButton *>(this->sender()); @@ -367,7 +368,7 @@ void UrlBar::showBookmarkInfo(const QPoint &pos) bookmark = Application::bookmarkProvider()->rootGroup().addBookmark(_tab->view()->title(), _tab->url()); Application::bookmarkProvider()->bookmarkManager()->emitChanged(); } - + BookmarkWidget *widget = new BookmarkWidget(bookmark, window()); widget->showAt(pos); } @@ -480,7 +481,7 @@ void UrlBar::detectTypedString(const QString &typed) QTimer::singleShot(0, this, SLOT(suggest())); return; } - + if(_suggestionTimer->isActive()) _suggestionTimer->stop(); _suggestionTimer->start(50); diff --git a/src/urlbar/urlresolver.cpp b/src/urlbar/urlresolver.cpp index 0505dad1..d60dc563 100644 --- a/src/urlbar/urlresolver.cpp +++ b/src/urlbar/urlresolver.cpp @@ -30,10 +30,11 @@ // Local Includes #include "application.h" #include "historymanager.h" -#include "bookmarksmanager.h" +#include "bookmarkprovider.h" #include "searchengine.h" // KDE Includes +#include <KBookmark> #include <KUriFilter> #include <KCompletion> #include <KService> @@ -47,7 +48,7 @@ #define MAX_ELEMENTS 10 #define MIN_SUGGESTIONS 3 -// NOTE +// NOTE // default kurifilter plugin list (at least in my box): // 1. "kshorturifilter" // 2. "kurisearchfilter" @@ -69,18 +70,18 @@ UrlResolver::UrlResolver(const QString &typedUrl) if ( _browseRegexp.isEmpty() ) { kDebug() << "browse regexp empty. Setting value.."; - + QString protocol = "^(http://|https://|file://|ftp://|man:|info:|apt:)"; - + QString localhost = "^localhost"; - + QString local = "^/"; - + QString ipv4 = "^0*([1-9]?\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.0*([1-9]?\\d|1\\d\\d|2[0-4]\\d|25[0-5])"\ "\\.0*([1-9]?\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.0*([1-9]?\\d|1\\d\\d|2[0-4]\\d|25[0-5])"; - + QString ipv6 = "^([0-9a-fA-F]{4}|0)(\\:([0-9a-fA-F]{4}|0)){7}"; - + QString address = "[\\d\\w-.]+\\.(a[cdefgilmnoqrstuwz]|b[abdefghijmnorstvwyz]|"\ "c[acdfghiklmnoruvxyz]|d[ejkmnoz]|e[ceghrst]|f[ijkmnor]|g[abdefghilmnpqrstuwy]|"\ "h[kmnrtu]|i[delmnoqrst]|j[emop]|k[eghimnprwyz]|l[abcikrstuvy]|"\ @@ -88,10 +89,10 @@ UrlResolver::UrlResolver(const QString &typedUrl) "s[abcdeghijklmnortuvyz]|t[cdfghjkmnoprtvwz]|u[augkmsyz]|v[aceginu]|w[fs]|"\ "y[etu]|z[amw]|aero|arpa|biz|com|coop|edu|info|int|gov|mil|museum|name|net|org|"\ "pro)"; - + _browseRegexp = QRegExp('(' + protocol + ")|(" + localhost + ")|(" + local + ")|(" + address + ")|(" + ipv6 + ")|(" + ipv4 +')'); } - + if ( _searchEnginesRegexp.isEmpty() ) { QString reg; @@ -99,9 +100,9 @@ UrlResolver::UrlResolver(const QString &typedUrl) Q_FOREACH(KService::Ptr s, SearchEngine::favorites()) { engineUrl = QRegExp::escape(s->property("Query").toString()).replace("\\\\\\{@\\}","[\\d\\w-.]+"); - if (reg.isEmpty()) + if (reg.isEmpty()) reg = '(' + engineUrl + ')'; - else + else reg = reg + "|(" + engineUrl + ')'; } _searchEnginesRegexp = QRegExp(reg); @@ -126,10 +127,10 @@ UrlSearchList UrlResolver::orderedSearchItems() list << hist; UrlSearchItem down(UrlSearchItem::Browse, QString("about:downloads"), QL1S("downloads") ); list << down; - + return list; } - + _computedListsCount = 0; //compute lists @@ -144,7 +145,7 @@ UrlSearchList UrlResolver::orderedSearchItems() while (_computedListsCount < 5 && time.msec() < 1000) { - Application::instance()->processEvents(QEventLoop::WaitForMoreEvents | QEventLoop::ExcludeUserInputEvents); + Application::instance()->processEvents(QEventLoop::WaitForMoreEvents | QEventLoop::ExcludeUserInputEvents); } return orderLists(); @@ -153,7 +154,7 @@ UrlSearchList UrlResolver::orderedSearchItems() UrlSearchList UrlResolver::orderLists() { - // NOTE + // NOTE // the logic here is : "we wanna suggest (at least) 10 elements" // so we have (more or less) 2 from first results (1 from QUrl Resolutions, 1 from // search engines). @@ -162,9 +163,9 @@ UrlSearchList UrlResolver::orderLists() QTime myTime; myTime.start(); - + UrlSearchList list; - + if(_browseRegexp.indexIn(_typedString) != -1) { list << _qurlFromUserInput; @@ -179,7 +180,7 @@ UrlSearchList UrlResolver::orderLists() //find the history items that match the typed string UrlSearchItem privileged = privilegedItem(&_history); int historyCount = _history.count(); - + //find the bookmarks items that match the typed string if (privileged.type == UrlSearchItem::Undefined) { @@ -190,14 +191,14 @@ UrlSearchList UrlResolver::orderLists() privileged.type |= UrlSearchItem::Bookmark; } int bookmarksCount = _bookmarks.count(); - + if (privileged.type != UrlSearchItem::Undefined) { list.prepend(privileged); } int availableEntries = MAX_ELEMENTS - list.count() - MIN_SUGGESTIONS; - + UrlSearchList common; int commonCount = 0; @@ -221,7 +222,7 @@ UrlSearchList UrlResolver::orderLists() } } } - + commonCount = common.count(); if(commonCount >= availableEntries) { @@ -265,10 +266,10 @@ UrlSearchList UrlResolver::orderLists() common << urlSearchItem; } } - + availableEntries -= common.count(); } - + historyCount = _history.count(); bookmarksCount = _bookmarks.count(); commonCount = common.count(); @@ -278,7 +279,7 @@ UrlSearchList UrlResolver::orderLists() { int historyEntries = ((int) (availableEntries / 2)) + availableEntries % 2; int bookmarksEntries = availableEntries - historyEntries; - + if (historyCount >= historyEntries && bookmarksCount >= bookmarksEntries) { _history = _history.mid(0, historyEntries); @@ -310,7 +311,7 @@ UrlSearchList UrlResolver::orderLists() list = list + _history + common + _bookmarks + _suggestions; qWarning() << "orderedSearchItems leave: " << " elapsed: " << myTime.elapsed(); - + return list; } @@ -382,9 +383,9 @@ void UrlResolver::computeSuggestions() { if (Application::opensearchManager()->isSuggestionAvailable()) { - connect(Application::opensearchManager(), - SIGNAL(suggestionReceived(const QStringList &)), - this, + connect(Application::opensearchManager(), + SIGNAL(suggestionReceived(const QStringList &)), + this, SLOT(suggestionsReceived(const QStringList &))); Application::opensearchManager()->requestSuggestion(_typedString); @@ -398,7 +399,7 @@ void UrlResolver::computeSuggestions() void UrlResolver::suggestionsReceived(const QStringList &suggestion) { - + foreach (QString s, suggestion) { UrlSearchItem gItem(UrlSearchItem::Suggestion, s, s); @@ -412,10 +413,10 @@ void UrlResolver::suggestionsReceived(const QStringList &suggestion) UrlSearchItem UrlResolver::privilegedItem(UrlSearchList* list) { UrlSearchItem item; - QString dot = QString(QL1C('.')); + QString dot = QString(QL1C('.')); QString test1 = QString(QL1C('/')) + _typedString + dot; QString test2 = dot + _typedString + dot; - + for(int i = 0; i<list->count(); i++) { item = list->at(i); |