diff options
| author | megabigbug <megabigbug@arrakis.(none)> | 2010-07-21 17:13:17 +0200 | 
|---|---|---|
| committer | megabigbug <megabigbug@arrakis.(none)> | 2010-07-21 17:13:17 +0200 | 
| commit | 29222348be2aea93de9d9fc937996d0b7474308d (patch) | |
| tree | ce2f602c81bee4f4b737ee71468368ca6114de3e /src/bookmarks | |
| parent | remove useless bookmarkPath attribute of UrlSearchItem (diff) | |
| download | rekonq-29222348be2aea93de9d9fc937996d0b7474308d.tar.xz | |
reintroduce bookmark suggestions
Diffstat (limited to 'src/bookmarks')
| -rw-r--r-- | src/bookmarks/bookmarksmanager.cpp | 27 | ||||
| -rw-r--r-- | src/bookmarks/bookmarksmanager.h | 4 | 
2 files changed, 15 insertions, 16 deletions
diff --git a/src/bookmarks/bookmarksmanager.cpp b/src/bookmarks/bookmarksmanager.cpp index b5c90616..d0062ae1 100644 --- a/src/bookmarks/bookmarksmanager.cpp +++ b/src/bookmarks/bookmarksmanager.cpp @@ -418,45 +418,44 @@ KBookmarkGroup BookmarkProvider::rootGroup()  } -QString BookmarkProvider::titleForBookmarkUrl(QString url) +QList<KBookmark> BookmarkProvider::find(QString text)  { -    QString title = ""; +    QList<KBookmark> list;      KBookmarkGroup bookGroup = Application::bookmarkProvider()->rootGroup();      if (bookGroup.isNull())      { -        return title; +        return list;      } -    KBookmark bookmark = bookGroup.first(); -    while (!bookmark.isNull() && title.isEmpty()) +    KBookmark bookmark = bookGroup.first();  +    while (!bookmark.isNull())      { -        title = titleForBookmarkUrl(bookmark, url); +        list = find(list, bookmark, text);          bookmark = bookGroup.next(bookmark);      } -    return title; +    return list;  } -QString BookmarkProvider::titleForBookmarkUrl(const KBookmark &bookmark, QString url) +QList<KBookmark> BookmarkProvider::find(QList<KBookmark> list, const KBookmark &bookmark, QString text)  { -    QString title = "";      if (bookmark.isGroup())      {          KBookmarkGroup group = bookmark.toGroup();          KBookmark bm = group.first(); -        while (!bm.isNull() && title.isEmpty()) +        while (!bm.isNull())          { -            title = titleForBookmarkUrl(bm, url); // it is .bookfolder +            list = find(list, bm, text); // it is .bookfolder              bm = group.next(bm);          }      } -    else if (!bookmark.isSeparator() && bookmark.url() == url) +    else if (bookmark.url().url().contains(text) || bookmark.fullText().contains(text))      { -        title = bookmark.fullText(); +        list << bookmark;      } -    return title; +    return list;  } diff --git a/src/bookmarks/bookmarksmanager.h b/src/bookmarks/bookmarksmanager.h index d2465e77..64945eab 100644 --- a/src/bookmarks/bookmarksmanager.h +++ b/src/bookmarks/bookmarksmanager.h @@ -228,7 +228,7 @@ public:      inline BookmarkOwner *bookmarkOwner() { return m_owner; } -    QString titleForBookmarkUrl(QString url); +    QList<KBookmark> find(QString text);      void registerBookmarkPanel(BookmarksPanel *panel);      void removeBookmarkPanel(BookmarksPanel *panel); @@ -266,7 +266,7 @@ private slots:  private:      void fillBookmarkBar(KToolBar *toolBar); -    QString titleForBookmarkUrl(const KBookmark &bookmark, QString url); +    QList<KBookmark> find(QList<KBookmark> list, const KBookmark &bookmark, QString text);      KBookmarkManager *m_manager;      BookmarkOwner *m_owner;  | 
