[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: playground/libs/webkitkde
From: Simon Hausmann <hausmann () kde ! org>
Date: 2007-05-21 12:00:41
Message-ID: 1179748841.302916.28346.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 666966 by hausmann:
Added support for loading progress notification.
M +29 -0 webkitpart.cpp
M +15 -0 webkitpart.h
--- trunk/playground/libs/webkitkde/webkitpart.cpp #666965:666966
@@ -32,6 +32,18 @@
{
webPage = new QWebPage(parentWidget);
setWidget(webPage);
+
+ connect(webPage, SIGNAL(loadStarted(QWebFrame *)),
+ this, SLOT(frameStarted(QWebFrame *)));
+ connect(webPage, SIGNAL(loadFinished(QWebFrame *)),
+ this, SLOT(frameFinished(QWebFrame *)));
+ connect(webPage, SIGNAL(titleChanged(const QString &)),
+ this, SIGNAL(setWindowCaption(const QString &)));
+
+ browserExtension = new WebKitBrowserExtension(this);
+
+ connect(webPage, SIGNAL(loadProgressChanged(int)),
+ browserExtension, SIGNAL(loadingProgress(int)));
}
bool WebKitPart::openUrl(const KUrl &url)
@@ -46,6 +58,18 @@
return false;
}
+void WebKitPart::frameStarted(QWebFrame *frame)
+{
+ if (frame == webPage->mainFrame())
+ emit started(0);
+}
+
+void WebKitPart::frameFinished(QWebFrame *frame)
+{
+ if (frame == webPage->mainFrame())
+ emit completed();
+}
+
KAboutData *WebKitPart::createAboutData()
{
return new KAboutData("webkitpart", I18N_NOOP("Webkit HTML Component"),
@@ -54,6 +78,11 @@
I18N_NOOP("Copyright (c) 2007 Trolltech ASA"));
}
+WebKitBrowserExtension::WebKitBrowserExtension(WebKitPart *parent)
+ : KParts::BrowserExtension(parent)
+{
+}
+
typedef KParts::GenericFactory<WebKitPart> Factory;
Q_EXPORT_PLUGIN(Factory);
--- trunk/playground/libs/webkitkde/webkitpart.h #666965:666966
@@ -23,9 +23,12 @@
#define WEBKITPART_H
#include <KDE/KParts/ReadOnlyPart>
+#include <KDE/KParts/BrowserExtension>
class QWebPage;
+class QWebFrame;
class KAboutData;
+class WebKitBrowserExtension;
class WebKitPart : public KParts::ReadOnlyPart
{
@@ -40,8 +43,20 @@
protected:
virtual bool openFile();
+private slots:
+ void frameStarted(QWebFrame *frame);
+ void frameFinished(QWebFrame *frame);
+
private:
QWebPage *webPage;
+ WebKitBrowserExtension *browserExtension;
};
+class WebKitBrowserExtension : public KParts::BrowserExtension
+{
+ Q_OBJECT
+public:
+ WebKitBrowserExtension(WebKitPart *parent);
+};
+
#endif // WEBKITPART_H
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic