diff options
| author | Andrea Diamantini <adjam7@gmail.com> | 2011-04-28 00:10:08 +0200 | 
|---|---|---|
| committer | Andrea Diamantini <adjam7@gmail.com> | 2011-04-28 00:10:08 +0200 | 
| commit | 033fe621dac20e43047d6c394bb378b9a86ec5f5 (patch) | |
| tree | e58acb9866f4df50c626cf902391e817e86958f9 /src | |
| parent | - A new option to set/unset the current bookmark bar folder in the context menu (diff) | |
| download | rekonq-033fe621dac20e43047d6c394bb378b9a86ec5f5.tar.xz | |
Imported Opera feature to load favorite page with number 1..9 by pressing CTRL + 1..9
Courtesy patch by Thomas Murach. Thanks :)
Reviewed by Pierre, Felix... and me!
RB: 101043
PS:
Thomas, I see one corner problem with your patch:
Opera has clearly indicated favorites preview
number, while rekonq hasn't. Any idea to fill the gap?
Diffstat (limited to 'src')
| -rw-r--r-- | src/mainview.cpp | 10 | ||||
| -rw-r--r-- | src/mainview.h | 1 | ||||
| -rw-r--r-- | src/mainwindow.cpp | 15 | 
3 files changed, 26 insertions, 0 deletions
| diff --git a/src/mainview.cpp b/src/mainview.cpp index b34acc39..19e4aae7 100644 --- a/src/mainview.cpp +++ b/src/mainview.cpp @@ -679,6 +679,16 @@ void MainView::switchToTab()  } +void MainView::loadFavorite(const int index) +{ +    QStringList urls = ReKonfig::previewUrls(); +    if (index < 0 || index > urls.length()) +        return; +    KUrl url = KUrl(urls.at(index-1)); +    rApp->loadUrl(url); +} + +  QLabel *MainView::animatedLoading(int index, bool addMovie)  {      if (index == -1) diff --git a/src/mainview.h b/src/mainview.h index acc2d8c9..d01bb5b8 100644 --- a/src/mainview.h +++ b/src/mainview.h @@ -152,6 +152,7 @@ public Q_SLOTS:      void openLastClosedTab();      void openClosedTab();      void switchToTab(); +    void loadFavorite(const int index);      // WEB slot actions      void webReload(); diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index 5edea797..1ded9836 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -93,6 +93,8 @@  #include <QtWebKit/QWebHistory> +#include <QSignalMapper> +  MainWindow::MainWindow()          : KXmlGuiWindow() @@ -489,6 +491,19 @@ void MainWindow::setupActions()          connect(a, SIGNAL(triggered(bool)), m_view, SLOT(switchToTab()));      } +    // shortcuts for loading favorite pages +    QSignalMapper *signalMapper = new QSignalMapper(this); +    for (int i = 1; i <= 9; ++i) +    { +        a = new KAction(i18n("Switch to Favorite Page %1", i), this); +        a->setShortcut(KShortcut(QString("Ctrl+%1").arg(i))); +        a->setData(QVariant(i)); +        actionCollection()->addAction(QL1S(("switch_favorite_" + QString::number(i)).toAscii()), a); +        connect(a, SIGNAL(triggered(bool)), signalMapper, SLOT(map())); +        signalMapper->setMapping(a, i); +    } +    connect(signalMapper, SIGNAL(mapped(const int)), m_view, SLOT(loadFavorite(const int))); +      // ============================== Indexed Tab Actions ====================================      a = new KAction(KIcon("tab-close"), i18n("&Close Tab"), this);      a->setShortcuts(KStandardShortcut::close()); | 
