[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: playground/libs/webkitkde/kdewebkit
From: Dawit Alemayehu <adawit () kde ! org>
Date: 2009-08-07 1:23:48
Message-ID: 1249608228.554737.31454.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 1008172 by adawit:
Changed the default user agent string to be exactly what QtWebKit sets
except for appending "Konqueror/<version>" to the end of it.
M +28 -12 kwebpage.cpp
--- trunk/playground/libs/webkitkde/kdewebkit/kwebpage.cpp #1008171:1008172
@@ -53,6 +53,7 @@
#include <QtDBus/QDBusInterface>
#include <QtDBus/QDBusConnection>
#include <QtDBus/QDBusReply>
+#include <QtCore/QPointer>
/* Null network reply */
@@ -163,7 +164,7 @@
KWebPagePrivate() {}
QString getFileNameForDownload(const QNetworkRequest &request, QNetworkReply \
*reply) const;
- NetworkAccessManager* accessManager;
+ QPointer<NetworkAccessManager> accessManager;
};
QString KWebPage::KWebPagePrivate::getFileNameForDownload(const QNetworkRequest \
&request, QNetworkReply *reply) const @@ -284,14 +285,20 @@
bool KWebPage::javaScriptConfirm(QWebFrame *frame, const QString &msg)
{
- return (KMessageBox::warningYesNo(frame->page()->view(), msg, \
i18n("JavaScript"), KStandardGuiItem::ok(), KStandardGuiItem::cancel()) + return \
(KMessageBox::warningYesNo(frame->page()->view(), msg, i18n("JavaScript"), + \
KStandardGuiItem::ok(), KStandardGuiItem::cancel()) == KMessageBox::Yes);
}
bool KWebPage::javaScriptPrompt(QWebFrame *frame, const QString &msg, const QString \
&defaultValue, QString *result) {
bool ok = false;
- *result = KInputDialog::getText(i18n("JavaScript"), msg, defaultValue, &ok, \
frame->page()->view()); +
+ QString text = KInputDialog::getText(i18n("JavaScript"), msg, defaultValue, &ok, \
frame->page()->view()); +
+ if (result)
+ *result = text;
+
return ok;
}
@@ -305,15 +312,24 @@
if (indexOfKhtml == -1) // not a KHTML user agent, so no need to "update" it
return userAgent;
- userAgent = userAgent.left(indexOfKhtml);
-
QString webKitUserAgent = QWebPage::userAgentForUrl(url);
- webKitUserAgent = webKitUserAgent.mid(webKitUserAgent.indexOf("AppleWebKit/"));
- webKitUserAgent = webKitUserAgent.left(webKitUserAgent.indexOf(')') + 1);
- userAgent += webKitUserAgent;
- userAgent.remove(QLatin1String("; X11"));
- userAgent.replace(QLatin1String("compatible;"), QLatin1String("X11;"));
+ if (userAgent == KProtocolManager::defaultUserAgent())
+ {
+ const int index = webKitUserAgent.lastIndexOf(QChar(')')) + 1;
+ QString konqVer = userAgent.split(QChar(';')).at(1);
+ userAgent = webKitUserAgent;
+ userAgent.replace(index, (webKitUserAgent.length() - index),
+ konqVer);
+ }
+ else
+ {
+ userAgent = userAgent.left(indexOfKhtml);
+ webKitUserAgent = \
webKitUserAgent.mid(webKitUserAgent.indexOf("AppleWebKit/")); + webKitUserAgent \
= webKitUserAgent.left(webKitUserAgent.indexOf(')') + 1); + userAgent += \
webKitUserAgent; + userAgent.remove("compatible; ");
+ }
return userAgent;
}
@@ -351,8 +367,8 @@
d->accessManager->metaData()["main_frame_request"] = (parentFrame ? \
"FALSE" : "TRUE"); }
} else {
- // Here we handle request for opening a new window based on the
- // user's setting...
+ // if frame is NULL, it means that a new window is requested so we enforce
+ // the user's preferred choice here from the settings...
switch (WebKitSettings::self()->windowOpenPolicy(request.url().host())) {
case WebKitSettings::KJSWindowOpenAsk:
// TODO: Implement this without resotring to showing a KMessgaeBox. \
Perhaps
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic