summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/findbar.cpp11
-rw-r--r--src/findbar.h2
-rw-r--r--src/mainwindow.cpp125
-rw-r--r--src/mainwindow.h3
4 files changed, 61 insertions, 80 deletions
diff --git a/src/findbar.cpp b/src/findbar.cpp
index 0e312e04..283453a8 100644
--- a/src/findbar.cpp
+++ b/src/findbar.cpp
@@ -113,13 +113,14 @@ void FindBar::clear()
}
-void FindBar::showFindBar()
+void FindBar::show()
{
// show findbar if not visible
- if (!isVisible())
- {
- show();
- }
+ if (isVisible())
+ return;
+
+ QWidget::show();
+
// set focus to findbar if user select showFindBar shortcut
m_lineEdit->setFocus();
m_lineEdit->selectAll();
diff --git a/src/findbar.h b/src/findbar.h
index a8a78970..739a573e 100644
--- a/src/findbar.h
+++ b/src/findbar.h
@@ -50,7 +50,7 @@ public:
public slots:
void clear();
- void showFindBar();
+ void show();
protected Q_SLOTS:
void keyPressEvent(QKeyEvent* event);
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
index 83f64926..db5a768c 100644
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -90,6 +90,7 @@ MainWindow::MainWindow()
: KXmlGuiWindow()
, m_view(new MainView(this))
, m_searchBar(new SearchBar(this))
+ , m_findBar(new FindBar(this))
, m_sidePanel(0)
{
// updating rekonq configuration
@@ -103,6 +104,7 @@ MainWindow::MainWindow()
QVBoxLayout *layout = new QVBoxLayout;
layout->setContentsMargins(0, 0, 0, 0);
layout->addWidget(m_view);
+ layout->addWidget(m_findBar);
centralWidget->setLayout(layout);
// central widget
@@ -157,11 +159,6 @@ void MainWindow::postLaunch()
connect(m_view, SIGNAL(loadProgress(int)), this, SLOT(slotLoadProgress(int)));
connect(m_view, SIGNAL(printRequested(QWebFrame *)), this, SLOT(printRequested(QWebFrame *)));
- // FIXME: these slots will be commented out until rekonq will have just ONE mainwindow
-// connect(m_view, SIGNAL(geometryChangeRequested(const QRect &)), this, SLOT(geometryChangeRequested(const QRect &)));
-// connect(m_view, SIGNAL(menuBarVisibilityChangeRequested(bool)), menuBar(), SLOT(setVisible(bool)));
-// connect(m_view, SIGNAL(statusBarVisibilityChangeRequested(bool)), statusBar(), SLOT(setVisible(bool)));
-
// status bar messages
connect(m_view, SIGNAL(showStatusBarMessage(const QString&)), statusBar(), SLOT(showMessage(const QString&)));
connect(m_view, SIGNAL(linkHovered(const QString&)), statusBar(), SLOT(showMessage(const QString&)));
@@ -171,7 +168,7 @@ void MainWindow::postLaunch()
connect(m_view, SIGNAL(currentChanged(int)), this, SLOT(slotUpdateActions()));
// Find Bar signal
-// connect(m_findBar, SIGNAL(searchString(const QString &)), this, SLOT(slotFind(const QString &)));
+ connect(m_findBar, SIGNAL(searchString(const QString &)), this, SLOT(slotFind(const QString &)));
// bookmarks loading
connect(Application::bookmarkProvider(), SIGNAL(openUrl(const KUrl&)), this, SLOT(loadUrl(const KUrl&)));
@@ -225,7 +222,7 @@ void MainWindow::setupActions()
KStandardAction::printPreview(this, SLOT(slotFilePrintPreview()), actionCollection());
KStandardAction::print(this, SLOT(slotFilePrint()), actionCollection());
KStandardAction::quit(this , SLOT(close()), actionCollection());
- KStandardAction::find(this, SLOT(slotViewFindBar()) , actionCollection());
+ KStandardAction::find(m_findBar, SLOT(show()) , actionCollection());
KStandardAction::findNext(this, SLOT(slotFindNext()) , actionCollection());
KStandardAction::findPrev(this, SLOT(slotFindPrevious()) , actionCollection());
@@ -618,6 +615,7 @@ void MainWindow::slotPrivateBrowsing(bool enable)
}
}
+
void MainWindow::slotFind(const QString & search)
{
if (!currentTab())
@@ -627,70 +625,47 @@ void MainWindow::slotFind(const QString & search)
}
-void MainWindow::slotViewFindBar()
+void MainWindow::slotFindNext()
{
-// // creating a centralWidget containing panel, m_view and the hidden findbar
-// QWidget *centralWidget = new QWidget;
-// centralWidget->setContentsMargins(0, 0, 0, 0);
-//
-// // setting layout
-// QVBoxLayout *layout = new QVBoxLayout;
-// layout->setContentsMargins(0, 0, 0, 0);
-// layout->addWidget(m_view);
-// centralWidget->setLayout(layout);
-//
-// // m_findBar->showFindBar();
-// // m_findBar->show();
- QWidget *w = centralWidget();
- QLayout *l = w->layout();
- QWidget *searchBarWidget = currentTab()->searchBar();
- searchBarWidget->show();
- l->addWidget(searchBarWidget);
- w->setLayout(l);
-}
+ if (!currentTab() && m_lastSearch.isEmpty())
+ return;
+ QWebPage::FindFlags options;
+ if (m_findBar->matchCase())
+ {
+ options = QWebPage::FindCaseSensitively | QWebPage::FindWrapsAroundDocument;
+ }
+ else
+ {
+ options = QWebPage::FindWrapsAroundDocument;
+ }
-void MainWindow::slotFindNext()
-{
-// if (!currentTab() && m_lastSearch.isEmpty())
-// return;
-//
-// QWebPage::FindFlags options;
-// if (m_findBar->matchCase())
-// {
-// options = QWebPage::FindCaseSensitively | QWebPage::FindWrapsAroundDocument;
-// }
-// else
-// {
-// options = QWebPage::FindWrapsAroundDocument;
-// }
-//
-// if (!currentTab()->findText(m_lastSearch, options))
-// {
-// slotUpdateStatusbar(QString(m_lastSearch) + i18n(" not found."));
-// }
+ if (!currentTab()->findText(m_lastSearch, options))
+ {
+ slotUpdateStatusbar(QString(m_lastSearch) + i18n(" not found."));
+ }
}
void MainWindow::slotFindPrevious()
{
-// if (!currentTab() && m_lastSearch.isEmpty())
-// return;
-//
-// QWebPage::FindFlags options;
-// if (m_findBar->matchCase())
-// {
-// options = QWebPage::FindCaseSensitively | QWebPage::FindBackward | QWebPage::FindWrapsAroundDocument;
-// }
-// else
-// {
-// options = QWebPage::FindBackward | QWebPage::FindWrapsAroundDocument;
-// }
-//
-// if (!currentTab()->findText(m_lastSearch, options))
-// {
-// slotUpdateStatusbar(QString(m_lastSearch) + i18n(" not found."));
-// }
+ if (!currentTab() && m_lastSearch.isEmpty())
+ return;
+
+ QWebPage::FindFlags options;
+ if (m_findBar->matchCase())
+ {
+ options = QWebPage::FindCaseSensitively | QWebPage::FindBackward | QWebPage::FindWrapsAroundDocument;
+ }
+ else
+ {
+ options = QWebPage::FindBackward | QWebPage::FindWrapsAroundDocument;
+ }
+
+ if (!currentTab()->findText(m_lastSearch, options))
+ {
+ slotUpdateStatusbar(QString(m_lastSearch) + i18n(" not found."));
+ }
}
@@ -801,10 +776,10 @@ void MainWindow::slotToggleInspector(bool enable)
if (enable)
{
int result = KMessageBox::questionYesNo(this,
- i18n("The web inspector will only work correctly for pages that were loaded after enabling.\n"
- "Do you want to reload all pages?"),
- i18n("Web Inspector")
- );
+ i18n("The web inspector will only work correctly for pages that were loaded after enabling.\n"
+ "Do you want to reload all pages?"),
+ i18n("Web Inspector")
+ );
if (result == KMessageBox::Yes)
{
@@ -931,12 +906,16 @@ bool MainWindow::queryClose()
int answer = KMessageBox::questionYesNoCancel(
this,
- i18np("Are you sure you want to close the window?\n" "You have 1 tab open","Are you sure you want to close the window?\n" "You have %1 tabs open" , m_view->count()),
- i18n("Are you sure you want to close the window?"),
- KStandardGuiItem::quit(),
- KGuiItem(i18n("C&lose Current Tab"), KIcon("tab-close")),
- KStandardGuiItem::cancel(),
- "confirmClosingMultipleTabs"
+ i18np( "Are you sure you want to close the window?\n"
+ "You have 1 tab open",
+ "Are you sure you want to close the window?\n"
+ "You have %1 tabs open",
+ m_view->count()),
+ i18n("Are you sure you want to close the window?"),
+ KStandardGuiItem::quit(),
+ KGuiItem(i18n("C&lose Current Tab"), KIcon("tab-close")),
+ KStandardGuiItem::cancel(),
+ "confirmClosingMultipleTabs"
);
switch (answer)
diff --git a/src/mainwindow.h b/src/mainwindow.h
index 87003005..7d0b2e5c 100644
--- a/src/mainwindow.h
+++ b/src/mainwindow.h
@@ -44,6 +44,7 @@ class KIcon;
class KMenu;
class HistoryMenu;
+class FindBar;
class SidePanel;
class WebView;
@@ -117,7 +118,6 @@ private slots:
void slotViewTextSmaller();
void slotViewPageSource();
void slotViewFullScreen(bool enable);
- void slotViewFindBar();
// Tools Menu slots
void slotToggleInspector(bool enable);
@@ -129,6 +129,7 @@ private slots:
private:
MainView *m_view;
SearchBar *m_searchBar;
+ FindBar *m_findBar;
SidePanel *m_sidePanel;
KMenu *m_historyBackMenu;