diff options
| -rw-r--r-- | TODO | 25 | ||||
| -rw-r--r-- | src/CMakeLists.txt | 1 | ||||
| -rw-r--r-- | src/application.cpp | 2 | ||||
| -rw-r--r-- | src/historymenu.cpp | 2 | ||||
| -rw-r--r-- | src/mainwindow.cpp | 37 | ||||
| -rw-r--r-- | src/mainwindow.h | 28 | ||||
| -rw-r--r-- | src/rekonq.kcfg | 9 | ||||
| -rw-r--r-- | src/searchbar.cpp | 131 | ||||
| -rw-r--r-- | src/searchbar.h | 68 | ||||
| -rw-r--r-- | src/settings.cpp | 28 | ||||
| -rw-r--r-- | src/settings_general.ui | 41 | 
11 files changed, 71 insertions, 301 deletions
@@ -1,8 +1,8 @@ -- QWebFrame management -- Fix crash on example sites.. +(4.6) - QWebFrame management ++ Fix crash on example sites..  - improve DOCUMENTATION -- Type "FormSubmitted" ("WordPress Bug") -- cookies ++ Type "FormSubmitted" ("WordPress Bug") ++ cookies  - unit tests  LONG TERM GOALS @@ -14,11 +14,14 @@ LONG TERM GOALS  TO 0.2 release -- unique url/search/history bar -- WebkitKDE (ask about status) -- cookie system refactor -- bookmarks panel -- MimeType Manager -- BETTER KDE INTEGRATION (What else to be done??) -- error pages ++- unique url/search/history bar ++ WebkitKDE (ask about status) ++ cookie system refactor +x- bookmarks panel +x- MimeType Manager ++- BETTER KDE INTEGRATION (What else to be done??) ++- error pages +- CLEAN CLEAN CLEAN code +- remove searchbar +- 
\ No newline at end of file diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 809e54af..f3f7544a 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -22,7 +22,6 @@ SET( rekonq_SRCS      modelmenu.cpp       urlbar.cpp      findbar.cpp -    searchbar.cpp      settings.cpp      webview.cpp       main.cpp diff --git a/src/application.cpp b/src/application.cpp index bc77f60a..afd6a2cc 100644 --- a/src/application.cpp +++ b/src/application.cpp @@ -190,7 +190,7 @@ KIcon Application::icon(const KUrl &url)      KIcon icon = KIcon(QWebSettings::iconForUrl(url));      if (icon.isNull())      { -        icon = KIcon("kde"); +        icon = KIcon("text-html");      }      return icon;  } diff --git a/src/historymenu.cpp b/src/historymenu.cpp index b5edae3f..4f11d82c 100644 --- a/src/historymenu.cpp +++ b/src/historymenu.cpp @@ -86,7 +86,7 @@ void HistoryMenu::postPopulated()  void HistoryMenu::clearHistory()  { -    int res = KMessageBox::warningYesNo(this, i18n("Are you sure you want to delete history?"), i18n("History") ); +    int res = KMessageBox::warningYesNo(this, i18n("Are you sure you want to clear the history?"), i18n("Clear History") );      if (res == KMessageBox::Yes)      { diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index 44ca861c..82f95cfa 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -92,7 +92,6 @@  MainWindow::MainWindow()          : KXmlGuiWindow()          , m_view(new MainView(this)) -        , m_searchBar(new SearchBar(this))          , m_findBar(new FindBar(this))          , m_sidePanel(0)  { @@ -119,8 +118,8 @@ MainWindow::MainWindow()      // then, setup our actions      setupActions(); -    // setting up toolbars: this has to be done BEFORE setupGUI!! -    setupToolBars(); +    // setting up toolbars && location bar: this has to be done BEFORE setupGUI!! +    setupBars();      // Bookmark Menu      KActionMenu *bmMenu = Application::bookmarkProvider()->bookmarkActionMenu(); @@ -165,10 +164,6 @@ void MainWindow::postLaunch()      connect(m_view, SIGNAL(loadProgress(int)), this, SLOT(slotLoadProgress(int)));      connect(m_view, SIGNAL(printRequested(QWebFrame *)), this, SLOT(printRequested(QWebFrame *))); -    // "status bar" messages (new notifyMessage system) -    connect(m_view, SIGNAL(showStatusBarMessage(const QString&, Rekonq::Notify)), this, SLOT(notifyMessage(const QString&, Rekonq::Notify))); -    connect(m_view, SIGNAL(linkHovered(const QString&)), this, SLOT(notifyMessage(const QString&))); -      // update toolbar actions signals      connect(m_view, SIGNAL(tabsChanged()), this, SLOT(slotUpdateActions()));      connect(m_view, SIGNAL(currentChanged(int)), this, SLOT(slotUpdateActions())); @@ -195,7 +190,7 @@ QSize MainWindow::sizeHint() const  } -void MainWindow::setupToolBars() +void MainWindow::setupBars()  {      KAction *a; @@ -205,13 +200,6 @@ void MainWindow::setupToolBars()      a->setDefaultWidget(m_view->urlBarStack());      actionCollection()->addAction(QLatin1String("url_bar"), a); -    // search bar -    a = new KAction(i18n("Search Bar"), this); -    a->setShortcut(KShortcut(Qt::CTRL + Qt::Key_K)); -    a->setDefaultWidget(m_searchBar); -    connect(m_searchBar, SIGNAL(search(const KUrl&)), this, SLOT(loadUrl(const KUrl&))); -    actionCollection()->addAction(QLatin1String("search_bar"), a); -      // bookmarks bar      KAction *bookmarkBarAction = Application::bookmarkProvider()->bookmarkToolBarAction();      a = actionCollection()->addAction(QLatin1String("bookmarks_bar"), bookmarkBarAction); @@ -360,7 +348,7 @@ void MainWindow::setupHistoryMenu()      // setting history menu position      menuBar()->insertMenu(actionCollection()->action("bookmarks"), historyMenu); -    // setting initial actions +    //  setting initial actions      QList<QAction*> historyActions;      historyActions.append(actionCollection()->action("history_back"));      historyActions.append(actionCollection()->action("history_forward")); @@ -375,6 +363,23 @@ void MainWindow::slotUpdateConfiguration()      mainView()->showTabBar();      mainView()->setMakeBackTab( ReKonfig::openTabsBack() ); +    // "status bar" messages (new notifyMessage system) +    if(ReKonfig::showUrlsPopup()) +    { +        connect(m_view, SIGNAL(showStatusBarMessage(const QString&, Rekonq::Notify)),  +                    this, SLOT(notifyMessage(const QString&, Rekonq::Notify))); +        connect(m_view, SIGNAL(linkHovered(const QString&)),  +                    this, SLOT(notifyMessage(const QString&))); +    } +    else +    { +        disconnect(m_view, SIGNAL(showStatusBarMessage(const QString&, Rekonq::Notify)),  +                    this, SLOT(notifyMessage(const QString&, Rekonq::Notify))); +        disconnect(m_view, SIGNAL(linkHovered(const QString&)),  +                    this, SLOT(notifyMessage(const QString&))); +    } +     +          // =========== Fonts ==============      QWebSettings *defaultSettings = QWebSettings::globalSettings(); diff --git a/src/mainwindow.h b/src/mainwindow.h index b276a544..c8ce7673 100644 --- a/src/mainwindow.h +++ b/src/mainwindow.h @@ -25,7 +25,6 @@  #define MAINWINDOW_H  // Local Includes -#include "searchbar.h"  #include "bookmarks.h"  #include "mainview.h"  #include "webview.h" @@ -39,8 +38,6 @@ class QWebFrame;  class KUrl;  class KAction; -class KActionMenu; -class KMenu;  class KPassivePopup;  class HistoryMenu; @@ -49,23 +46,6 @@ class SidePanel;  class WebView; -// namespace Rekonq -// { -//     /** -//      * @short notifying message status -//      * Different message status -//      */ -//  -//     enum Notify -//     { -//         Success,    ///< url successfully (down)loaded -//         Error,      ///< url failed to (down)load -//         Download,   ///< downloading url -//         Info        ///< information, (default) -//     }; -// } - -  /**   * This class serves as the main window for rekonq.   * It handles the menus, toolbars, and status bars. @@ -87,7 +67,7 @@ public:  private:      void setupActions();      void setupHistoryMenu(); -    void setupToolBars(); +    void setupBars();      void setupSidePanel();      SidePanel *sidePanel(); @@ -152,16 +132,10 @@ private slots:  private:      MainView *m_view; -    SearchBar *m_searchBar;      FindBar *m_findBar;      SidePanel *m_sidePanel; -    KMenu *m_windowMenu; -    KActionMenu *m_historyActionMenu; -      KAction *m_stopReloadAction; -    KAction *m_stopAction; -    KAction *m_reloadAction;      KAction *m_historyBackAction;      KAction *m_historyForwardAction; diff --git a/src/rekonq.kcfg b/src/rekonq.kcfg index 499258d2..d6e3a8ae 100644 --- a/src/rekonq.kcfg +++ b/src/rekonq.kcfg @@ -14,12 +14,6 @@      <entry name="homePage" type="String">          <default>http://www.kde.org/</default>      </entry> -    <entry name="downloadDir" type="Path"> -        <default>$HOME</default> -    </entry> -    <entry name="downloadToDefaultDir" type="Bool"> -        <default>false</default> -    </entry>      <entry name="alwaysShowTabBar" type="Bool">          <default>true</default>      </entry> @@ -29,6 +23,9 @@      <entry name="openTabsBack" type="Bool">          <default>false</default>      </entry> +    <entry name="showUrlsPopup" type="Bool"> +        <default>false</default> +    </entry>    </group>  <!-- Fonts Settings --> diff --git a/src/searchbar.cpp b/src/searchbar.cpp deleted file mode 100644 index e8ffb178..00000000 --- a/src/searchbar.cpp +++ /dev/null @@ -1,131 +0,0 @@ -/* ============================================================ -* -* This file is a part of the rekonq project -* -* Copyright (C) 2008-2009 by Andrea Diamantini <adjam7 at gmail dot com> -* -* -* This program is free software; you can redistribute it -* and/or modify it under the terms of the GNU General -* Public License as published by the Free Software Foundation; -* either version 3, or (at your option) any later version. -* -* This program is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU General Public License for more details. -* -* ============================================================ */ - - -// Self Includes -#include "searchbar.h" -#include "searchbar.moc" - -// Local Includes -#include "application.h" -#include "mainwindow.h" - -// KDE Includes -#include <KUrl> -#include <KCompletionBox> - -// Qt Includes -#include <QtCore/QString> -#include <QtGui/QSizePolicy> -#include <QtNetwork/QNetworkAccessManager> -#include <QtNetwork/QNetworkRequest> -#include <QtNetwork/QNetworkReply> -#include <QtXml/QXmlStreamReader> - - -SearchBar::SearchBar(QWidget *parent) -    : LineEdit(parent) -    , m_networkAccessManager(new QNetworkAccessManager(this)) -    , m_timer(new QTimer(this)) -{ -    setFocusPolicy(Qt::WheelFocus); -    setMouseTracking(true); -    setAcceptDrops(true); - -    setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed); - -    setClearButtonShown(true); - -    // better solution than using QPalette(s).. -    setClickMessage(i18n("Search...")); - -    // setting QNetworkAccessManager.. -    connect(m_networkAccessManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(handleNetworkData(QNetworkReply*))); - -    // setting QTimer.. -    m_timer->setSingleShot(true); -    m_timer->setInterval(200); -    connect(m_timer, SIGNAL(timeout()), SLOT(autoSuggest())); -    connect(this, SIGNAL(textEdited(QString)), m_timer, SLOT(start())); - -    // connect searchNow slot.. -    connect(this, SIGNAL(returnPressed()) , this , SLOT(searchNow())); -} - - -SearchBar::~SearchBar() -{ -} - - -void SearchBar::searchNow() -{ -    m_timer->stop(); -    QString searchText = text(); -    completionBox()->hide(); - -    KUrl url(QLatin1String("http://www.google.com/search")); -    url.addQueryItem(QLatin1String("q"), searchText); -    url.addQueryItem(QLatin1String("ie"), QLatin1String("UTF-8")); -    url.addQueryItem(QLatin1String("oe"), QLatin1String("UTF-8")); -    url.addQueryItem(QLatin1String("client"), QLatin1String("rekonq")); -    emit search(url); -} - - -void SearchBar::focusInEvent(QFocusEvent *event) -{ -    selectAll(); -    LineEdit::focusInEvent(event); -} - - -void SearchBar::autoSuggest() -{ -    QString str = text(); -    QString url = QString("http://google.com/complete/search?output=toolbar&q=%1").arg(str); -    m_networkAccessManager->get(QNetworkRequest(QString(url))); -} - - -void SearchBar::handleNetworkData(QNetworkReply *networkReply) -{ -    QUrl url = networkReply->url(); -    if (!networkReply->error()) -    { -        QStringList choices; - -        QString response(networkReply->readAll()); -        QXmlStreamReader xml(response); -        while (!xml.atEnd()) -        { -            xml.readNext(); -            if (xml.tokenType() == QXmlStreamReader::StartElement) -                if (xml.name() == "suggestion") -                { -                    QStringRef str = xml.attributes().value("data"); -                    choices << str.toString(); -                } -        } - -        setCompletedItems(choices, true); -    } - -    networkReply->deleteLater(); -} diff --git a/src/searchbar.h b/src/searchbar.h deleted file mode 100644 index 621c2081..00000000 --- a/src/searchbar.h +++ /dev/null @@ -1,68 +0,0 @@ -/* ============================================================ -* -* This file is a part of the rekonq project -* -* Copyright (C) 2008-2009 by Andrea Diamantini <adjam7 at gmail dot com> -* -* -* This program is free software; you can redistribute it -* and/or modify it under the terms of the GNU General -* Public License as published by the Free Software Foundation; -* either version 3, or (at your option) any later version. -* -* This program is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU General Public License for more details. -* -* ============================================================ */ - - - -#ifndef SEARCHBAR_H -#define SEARCHBAR_H - -// Local Includes -#include "lineedit.h" - -// Forward Declarations -class KUrl; -class QFocusEvent; -class QTimer; -class QNetworkAccessManager; -class QNetworkReply; - -/** - * This class defines an internet search bar. - * - */ -class SearchBar : public LineEdit -{ -    Q_OBJECT - -public: -    SearchBar(QWidget *parent = 0); -    ~SearchBar(); - -public slots: -    void autoSuggest(); -    void handleNetworkData(QNetworkReply *networkReply); - -    /** -    *  Use this slot to perform one search in one search engine -    * -    */ -    void searchNow(); - -protected: -    void focusInEvent(QFocusEvent *); - -signals: -    void search(const KUrl &); - -private: -    QNetworkAccessManager *m_networkAccessManager; -    QTimer *m_timer; -}; - -#endif diff --git a/src/settings.cpp b/src/settings.cpp index 297b81d9..dda00a0e 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -145,16 +145,16 @@ void SettingsDialog::setWebSettingsToolTips()  {      d->webkitUi.kcfg_autoLoadImages->setToolTip(i18n("Specifies whether images are automatically loaded in web pages"));      d->webkitUi.kcfg_javascriptEnabled->setToolTip(i18n("Enables the execution of JavaScript programs.")); -    d->webkitUi.kcfg_javaEnabled->setToolTip(i18n("Enables Java applets.")); -    d->webkitUi.kcfg_pluginsEnabled->setToolTip(i18n("Enables plugins in web pages.")); -    d->webkitUi.kcfg_javascriptCanOpenWindows->setToolTip(i18n("Allows JavaScript programs to open new windows.")); -    d->webkitUi.kcfg_javascriptCanAccessClipboard->setToolTip(i18n("Allows JavaScript programs to read from and to write to the clipboard.")); -    d->webkitUi.kcfg_linksIncludedInFocusChain->setToolTip(i18n("Includes hyperlinks in the keyboard focus chain.")); -    d->webkitUi.kcfg_zoomTextOnly->setToolTip(i18n("Applies the zoom factor on a frame to only the text or all content.")); -    d->webkitUi.kcfg_printElementBackgrounds->setToolTip(i18n("Draws also background color and images when the page is printed.")); -    d->webkitUi.kcfg_offlineStorageDatabaseEnabled->setToolTip(i18n("Support for the HTML 5 offline storage feature.")); -    d->webkitUi.kcfg_offlineWebApplicationCacheEnabled->setToolTip(i18n("Support for the HTML 5 web application cache feature.")); -    d->webkitUi.kcfg_localStorageDatabaseEnabled->setToolTip(i18n("Support for the HTML 5 local storage feature.")); +    d->webkitUi.kcfg_javaEnabled->setToolTip(i18n("Enables support for Java applets.")); +    d->webkitUi.kcfg_pluginsEnabled->setToolTip(i18n("Enables support for plugins in web pages.")); +    d->webkitUi.kcfg_javascriptCanOpenWindows->setToolTip(i18n("If enabled, JavaScript programs are allowed to open new windows.")); +    d->webkitUi.kcfg_javascriptCanAccessClipboard->setToolTip(i18n("If enabled, JavaScript programs are allowed to read from and to write to the clipboard.")); +    d->webkitUi.kcfg_linksIncludedInFocusChain->setToolTip(i18n("If enabled, hyperlinks are included in the keyboard focus chain.")); +    d->webkitUi.kcfg_zoomTextOnly->setToolTip(i18n("If enabled, the zoom factor on a frame is only applied to the text.")); +    d->webkitUi.kcfg_printElementBackgrounds->setToolTip(i18n("If enabled, background colors and images are also drawn when the page is printed.")); +    d->webkitUi.kcfg_offlineStorageDatabaseEnabled->setToolTip(i18n("Enables support for the HTML 5 offline storage feature.")); +    d->webkitUi.kcfg_offlineWebApplicationCacheEnabled->setToolTip(i18n("Enables support for the HTML 5 web application cache feature.")); +    d->webkitUi.kcfg_localStorageDatabaseEnabled->setToolTip(i18n("Enables support for the HTML 5 local storage feature."));  } @@ -162,9 +162,9 @@ void SettingsDialog::setWebSettingsToolTips()  void SettingsDialog::readConfig()  {      // ======= General -    d->generalUi.downloadDirUrlRequester->setMode(KFile::Directory | KFile::ExistingOnly | KFile::LocalOnly); -    d->generalUi.downloadDirUrlRequester->setUrl(ReKonfig::downloadDir()); -    connect(d->generalUi.downloadDirUrlRequester, SIGNAL(textChanged(QString)), this, SLOT(saveSettings())); +//     d->generalUi.downloadDirUrlRequester->setMode(KFile::Directory | KFile::ExistingOnly | KFile::LocalOnly); +//     d->generalUi.downloadDirUrlRequester->setUrl(ReKonfig::downloadDir()); +//     connect(d->generalUi.downloadDirUrlRequester, SIGNAL(textChanged(QString)), this, SLOT(saveSettings()));      // ======= Fonts      d->fontsUi.kcfg_fixedFont->setOnlyFixed(true); @@ -180,7 +180,7 @@ void SettingsDialog::readConfig()  void SettingsDialog::saveSettings()  {      // General -    ReKonfig::setDownloadDir(d->generalUi.downloadDirUrlRequester->url().prettyUrl()); +//     ReKonfig::setDownloadDir(d->generalUi.downloadDirUrlRequester->url().prettyUrl());      // Save      ReKonfig::self()->writeConfig(); diff --git a/src/settings_general.ui b/src/settings_general.ui index 95723e78..d6ce4e49 100644 --- a/src/settings_general.ui +++ b/src/settings_general.ui @@ -64,26 +64,6 @@          </item>         </layout>        </item> -      <item row="2" column="1"> -       <widget class="KUrlRequester" name="downloadDirUrlRequester"/> -      </item> -      <item row="2" column="0"> -       <widget class="QLabel" name="label_7"> -        <property name="text"> -         <string>Save downloads to:</string> -        </property> -        <property name="alignment"> -         <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> -        </property> -       </widget> -      </item> -      <item row="3" column="1"> -       <widget class="QCheckBox" name="kcfg_downloadToDefaultDir"> -        <property name="text"> -         <string>Ask where to save downloads</string> -        </property> -       </widget> -      </item>       </layout>      </widget>     </item> @@ -111,6 +91,22 @@      </widget>     </item>     <item> +    <widget class="QGroupBox" name="groupBox_2"> +     <property name="title"> +      <string>General Settings</string> +     </property> +     <layout class="QVBoxLayout" name="verticalLayout_2"> +      <item> +       <widget class="QCheckBox" name="kcfg_showUrlsPopup"> +        <property name="text"> +         <string>show urls in popup hovering links</string> +        </property> +       </widget> +      </item> +     </layout> +    </widget> +   </item> +   <item>      <spacer name="verticalSpacer">       <property name="orientation">        <enum>Qt::Vertical</enum> @@ -131,11 +127,6 @@     <extends>QLineEdit</extends>     <header>klineedit.h</header>    </customwidget> -  <customwidget> -   <class>KUrlRequester</class> -   <extends>QFrame</extends> -   <header>kurlrequester.h</header> -  </customwidget>   </customwidgets>   <resources/>   <connections/>  | 
