summaryrefslogtreecommitdiff
path: root/src/mainwindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mainwindow.cpp')
-rw-r--r--src/mainwindow.cpp34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
index 5f508506..f662d7aa 100644
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -72,6 +72,9 @@
#include <KStandardDirs>
#include <KToggleFullScreenAction>
+#include <KParts/Part>
+#include <KParts/BrowserExtension>
+
// Qt Includes
#include <QtCore/QTimer>
@@ -707,6 +710,25 @@ void MainWindow::printRequested(QWebFrame *frame)
if (!currentTab())
return;
+ if(currentTab()->page()->isOnRekonqPage())
+ {
+ // trigger print part action instead of ours..
+ KParts::ReadOnlyPart *p = currentTab()->part();
+ if(p)
+ {
+ KParts::BrowserExtension *ext = p->browserExtension();
+ if(ext)
+ {
+ KParts::BrowserExtension::ActionSlotMap *actionSlotMap = KParts::BrowserExtension::actionSlotMapPtr();
+
+ connect(this, SIGNAL(triggerPartPrint()), ext, actionSlotMap->value("print"));
+ emit triggerPartPrint();
+
+ return;
+ }
+ }
+ }
+
QWebFrame *printFrame = 0;
if (frame == 0)
{
@@ -753,6 +775,18 @@ void MainWindow::findNext()
if (!currentTab())
return;
+ if(currentTab()->page()->isOnRekonqPage())
+ {
+ // trigger part find action
+ KParts::ReadOnlyPart *p = currentTab()->part();
+ if(p)
+ {
+ connect(this, SIGNAL(triggerPartFind()), p, SLOT(slotFind()));
+ emit triggerPartFind();
+ return;
+ }
+ }
+
if (m_findBar->isHidden())
{
QPoint previous_position = currentTab()->view()->page()->currentFrame()->scrollPosition();