summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJocelyn Turcotte <jocelyn.turcotte@digia.com>2014-01-16 18:20:32 +0100
committerJocelyn Turcotte <jocelyn.turcotte@digia.com>2014-01-17 16:46:47 +0100
commitb3e1a8fb182ce0becebb24998b61ba4acc9dc318 (patch)
tree80cf8ae4de5a15670260a8b79d6e2982518e1e99
parentdb2c0781218b7dfa03f7bc39b1e2115dbf4a0fb0 (diff)
Cleanup QtWebEngineWidgets headers for the TP1 release
With this applications will get a compile error instead of a linking error for methods currently without an implementation in cpp files. Change-Id: I3fe5c1f127c57cd62a1eb401e8e3283e005a0344 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com> Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
-rw-r--r--examples/widgets/browser/browsermainwindow.cpp2
-rw-r--r--examples/widgets/browser/tabwidget.cpp18
-rw-r--r--examples/widgets/browser/urllineedit.cpp2
-rw-r--r--examples/widgets/browser/webview.cpp17
-rw-r--r--examples/widgets/browser/webview.h4
-rw-r--r--src/webenginewidgets/api/qwebenginehistoryinterface.h9
-rw-r--r--src/webenginewidgets/api/qwebengineinspector.h9
-rw-r--r--src/webenginewidgets/api/qwebenginepage.h415
-rw-r--r--src/webenginewidgets/api/qwebenginesecurityorigin.h19
-rw-r--r--src/webenginewidgets/api/qwebenginesettings.h137
-rw-r--r--src/webenginewidgets/api/qwebengineview.h50
-rw-r--r--tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp10
12 files changed, 49 insertions, 643 deletions
diff --git a/examples/widgets/browser/browsermainwindow.cpp b/examples/widgets/browser/browsermainwindow.cpp
index 9a2262314..b51df7a75 100644
--- a/examples/widgets/browser/browsermainwindow.cpp
+++ b/examples/widgets/browser/browsermainwindow.cpp
@@ -291,6 +291,7 @@ void BrowserMainWindow::setupMenu()
// Edit
QMenu *editMenu = menuBar()->addMenu(tr("&Edit"));
+#if defined(QWEBENGINEPAGE_WEBACTION_UNDO)
QAction *m_undo = editMenu->addAction(tr("&Undo"));
m_undo->setShortcuts(QKeySequence::Undo);
m_tabWidget->addWebAction(m_undo, QWebEnginePage::Undo);
@@ -308,6 +309,7 @@ void BrowserMainWindow::setupMenu()
m_paste->setShortcuts(QKeySequence::Paste);
m_tabWidget->addWebAction(m_paste, QWebEnginePage::Paste);
editMenu->addSeparator();
+#endif
#if defined(QWEBENGINEPAGE_FINDTEXT)
QAction *m_find = editMenu->addAction(tr("&Find"));
diff --git a/examples/widgets/browser/tabwidget.cpp b/examples/widgets/browser/tabwidget.cpp
index 3c71b2d53..af18b5a37 100644
--- a/examples/widgets/browser/tabwidget.cpp
+++ b/examples/widgets/browser/tabwidget.cpp
@@ -306,18 +306,26 @@ void TabWidget::currentChanged(int index)
WebView *oldWebView = this->webView(m_lineEdits->currentIndex());
if (oldWebView) {
+#if defined(QWEBENGINEVIEW_STATUSBARMESSAGE)
disconnect(oldWebView, SIGNAL(statusBarMessage(QString)),
this, SIGNAL(showStatusBarMessage(QString)));
+#endif
+#if defined(QWEBENGINEVIEW_LINKHOVERED)
disconnect(oldWebView->page(), SIGNAL(linkHovered(QString,QString,QString)),
this, SIGNAL(linkHovered(QString)));
+#endif
disconnect(oldWebView, SIGNAL(loadProgress(int)),
this, SIGNAL(loadProgress(int)));
}
+#if defined(QWEBENGINEVIEW_STATUSBARMESSAGE)
connect(webView, SIGNAL(statusBarMessage(QString)),
this, SIGNAL(showStatusBarMessage(QString)));
+#endif
+#if defined(QWEBENGINEVIEW_LINKHOVERED)
connect(webView->page(), SIGNAL(linkHovered(QString,QString,QString)),
this, SIGNAL(linkHovered(QString)));
+#endif
connect(webView, SIGNAL(loadProgress(int)),
this, SIGNAL(loadProgress(int)));
@@ -450,8 +458,10 @@ WebView *TabWidget::newTab(bool makeCurrent)
this, SLOT(webViewLoadStarted()));
connect(webView, SIGNAL(loadFinished(bool)),
this, SLOT(webViewIconChanged()));
+#if defined(QWEBENGINEVIEW_ICONCHANGED)
connect(webView, SIGNAL(iconChanged()),
this, SLOT(webViewIconChanged()));
+#endif
connect(webView, SIGNAL(titleChanged(QString)),
this, SLOT(webViewTitleChanged(QString)));
connect(webView, SIGNAL(urlChanged(QUrl)),
@@ -460,14 +470,22 @@ WebView *TabWidget::newTab(bool makeCurrent)
this, SLOT(windowCloseRequested()));
connect(webView->page(), SIGNAL(geometryChangeRequested(QRect)),
this, SIGNAL(geometryChangeRequested(QRect)));
+#if defined(QWEBENGINEPAGE_PRINTREQUESTED)
connect(webView->page(), SIGNAL(printRequested(QWebEngineFrame*)),
this, SIGNAL(printRequested(QWebEngineFrame*)));
+#endif
+#if defined(QWEBENGINEPAGE_MENUBARVISIBILITYCHANGEREQUESTED)
connect(webView->page(), SIGNAL(menuBarVisibilityChangeRequested(bool)),
this, SIGNAL(menuBarVisibilityChangeRequested(bool)));
+#endif
+#if defined(QWEBENGINEPAGE_STATUSBARVISIBILITYCHANGEREQUESTED)
connect(webView->page(), SIGNAL(statusBarVisibilityChangeRequested(bool)),
this, SIGNAL(statusBarVisibilityChangeRequested(bool)));
+#endif
+#if defined(QWEBENGINEPAGE_TOOLBARVISIBILITYCHANGEREQUESTED)
connect(webView->page(), SIGNAL(toolBarVisibilityChangeRequested(bool)),
this, SIGNAL(toolBarVisibilityChangeRequested(bool)));
+#endif
addTab(webView, tr("(Untitled)"));
if (makeCurrent)
setCurrentWidget(webView);
diff --git a/examples/widgets/browser/urllineedit.cpp b/examples/widgets/browser/urllineedit.cpp
index 47828d95f..306e56e9a 100644
--- a/examples/widgets/browser/urllineedit.cpp
+++ b/examples/widgets/browser/urllineedit.cpp
@@ -276,8 +276,10 @@ void UrlLineEdit::setWebView(WebView *webView)
this, SLOT(webViewUrlChanged(QUrl)));
connect(webView, SIGNAL(loadFinished(bool)),
this, SLOT(webViewIconChanged()));
+#if defined(QWEBENGINEVIEW_ICONCHANGED)
connect(webView, SIGNAL(iconChanged()),
this, SLOT(webViewIconChanged()));
+#endif
connect(webView, SIGNAL(loadProgress(int)),
this, SLOT(update()));
}
diff --git a/examples/widgets/browser/webview.cpp b/examples/widgets/browser/webview.cpp
index 7eb08d6a3..99ae2b09c 100644
--- a/examples/widgets/browser/webview.cpp
+++ b/examples/widgets/browser/webview.cpp
@@ -70,8 +70,10 @@ WebPage::WebPage(QObject *parent)
#if defined(QWEBENGINEPAGE_SETNETWORKACCESSMANAGER)
setNetworkAccessManager(BrowserApplication::networkAccessManager());
#endif
+#if defined(QWEBENGINEPAGE_UNSUPPORTEDCONTENT)
connect(this, SIGNAL(unsupportedContent(QNetworkReply*)),
this, SLOT(handleUnsupportedContent(QNetworkReply*)));
+#endif
}
BrowserMainWindow *WebPage::mainWindow()
@@ -85,9 +87,9 @@ BrowserMainWindow *WebPage::mainWindow()
return BrowserApplication::instance()->mainWindow();
}
+#if defined(QWEBENGINEPAGE_ACCEPTNAVIGATIONREQUEST)
bool WebPage::acceptNavigationRequest(QWebEngineFrame *frame, const QNetworkRequest &request, NavigationType type)
{
-#if defined(QWEBENGINEPAGE_ACCEPTNAVIGATIONREQUEST)
// ctrl open in new tab
// ctrl-shift open in new tab and select
// ctrl-alt open in new window
@@ -114,9 +116,8 @@ bool WebPage::acceptNavigationRequest(QWebEngineFrame *frame, const QNetworkRequ
}
m_loadingUrl = request.url();
emit loadingUrl(m_loadingUrl);
-#endif
- return QWebEnginePage::acceptNavigationRequest(frame, request, type);
}
+#endif
class PopupWindow : public QWidget {
Q_OBJECT
@@ -195,9 +196,9 @@ QObject *WebPage::createPlugin(const QString &classId, const QUrl &url, const QS
}
#endif // !defined(QT_NO_UITOOLS)
+#if defined(QWEBENGINEPAGE_UNSUPPORTEDCONTENT)
void WebPage::handleUnsupportedContent(QNetworkReply *reply)
{
-#if defined(QWEBENGINEPAGE_UNSUPPORTEDCONTENT)
QString errorString = reply->errorString();
if (m_loadingUrl != reply->url()) {
@@ -246,8 +247,8 @@ void WebPage::handleUnsupportedContent(QNetworkReply *reply)
if (m_loadingUrl == reply->url()) {
mainFrame()->setHtml(html, reply->url());
}
-#endif
}
+#endif
WebView::WebView(QWidget* parent)
@@ -256,16 +257,20 @@ WebView::WebView(QWidget* parent)
, m_page(new WebPage(this))
{
setPage(m_page);
+#if defined(QWEBENGINEPAGE_STATUSBARMESSAGE)
connect(page(), SIGNAL(statusBarMessage(QString)),
SLOT(setStatusBarText(QString)));
+#endif
connect(this, SIGNAL(loadProgress(int)),
this, SLOT(setProgress(int)));
connect(this, SIGNAL(loadFinished(bool)),
this, SLOT(loadFinished()));
connect(page(), SIGNAL(loadingUrl(QUrl)),
this, SIGNAL(urlChanged(QUrl)));
+#if defined(QWEBENGINEPAGE_DOWNLOADREQUESTED)
connect(page(), SIGNAL(downloadRequested(QNetworkRequest)),
this, SLOT(downloadRequested(QNetworkRequest)));
+#endif
#if defined(QWEBENGINEPAGE_UNSUPPORTEDCONTENT)
page()->setForwardUnsupportedContent(true);
#endif
@@ -310,8 +315,10 @@ void WebView::wheelEvent(QWheelEvent *event)
void WebView::openLinkInNewTab()
{
+#if defined(QWEBENGINEPAGE_WEBACTION_OPENLINKINNEWWINDOW)
m_page->m_openInNewTab = true;
pageAction(QWebEnginePage::OpenLinkInNewWindow)->trigger();
+#endif
}
void WebView::setProgress(int progress)
diff --git a/examples/widgets/browser/webview.h b/examples/widgets/browser/webview.h
index 0dce3e029..4ef4d7e6a 100644
--- a/examples/widgets/browser/webview.h
+++ b/examples/widgets/browser/webview.h
@@ -64,14 +64,18 @@ public:
BrowserMainWindow *mainWindow();
protected:
+#if defined(QWEBENGINEPAGE_ACCEPTNAVIGATIONREQUEST)
bool acceptNavigationRequest(QWebEngineFrame *frame, const QNetworkRequest &request, NavigationType type);
+#endif
QWebEnginePage *createWindow(QWebEnginePage::WebWindowType type);
#if !defined(QT_NO_UITOOLS)
QObject *createPlugin(const QString &classId, const QUrl &url, const QStringList &paramNames, const QStringList &paramValues);
#endif
private slots:
+#if defined(QWEBENGINEPAGE_UNSUPPORTEDCONTENT)
void handleUnsupportedContent(QNetworkReply *reply);
+#endif
private:
friend class WebView;
diff --git a/src/webenginewidgets/api/qwebenginehistoryinterface.h b/src/webenginewidgets/api/qwebenginehistoryinterface.h
index b8108c516..f799bdae7 100644
--- a/src/webenginewidgets/api/qwebenginehistoryinterface.h
+++ b/src/webenginewidgets/api/qwebenginehistoryinterface.h
@@ -30,15 +30,6 @@ QT_BEGIN_NAMESPACE
class QWEBENGINEWIDGETS_EXPORT QWebEngineHistoryInterface : public QObject {
Q_OBJECT
-public:
- QWebEngineHistoryInterface(QObject *parent = 0);
- ~QWebEngineHistoryInterface();
-
- static void setDefaultInterface(QWebEngineHistoryInterface *defaultInterface);
- static QWebEngineHistoryInterface *defaultInterface();
-
- virtual bool historyContains(const QString &url) const = 0;
- virtual void addHistoryEntry(const QString &url) = 0;
};
QT_END_NAMESPACE
diff --git a/src/webenginewidgets/api/qwebengineinspector.h b/src/webenginewidgets/api/qwebengineinspector.h
index 9427b4e5c..b3f87897c 100644
--- a/src/webenginewidgets/api/qwebengineinspector.h
+++ b/src/webenginewidgets/api/qwebengineinspector.h
@@ -25,17 +25,8 @@
QT_BEGIN_NAMESPACE
-class QWebEnginePage;
-class QWebEngineInspectorPrivate;
-
class QWEBENGINEWIDGETS_EXPORT QWebEngineInspector : public QWidget {
Q_OBJECT
-public:
- QWebEngineInspector(QWidget* parent = 0);
- ~QWebEngineInspector();
-
- void setPage(QWebEnginePage* page);
- QWebEnginePage* page() const;
};
QT_END_NAMESPACE
diff --git a/src/webenginewidgets/api/qwebenginepage.h b/src/webenginewidgets/api/qwebenginepage.h
index 4d6a72fc4..6e158f3bd 100644
--- a/src/webenginewidgets/api/qwebenginepage.h
+++ b/src/webenginewidgets/api/qwebenginepage.h
@@ -32,23 +32,14 @@
#include <QtWidgets/qwidget.h>
QT_BEGIN_NAMESPACE
-class QUndoStack;
class QMenu;
-class QPrinter;
-// FIXME: Just forward-declare the to-be-removed frame and element classes for now.
+// FIXME: Just forward-declare the to-be-removed frame classe for now.
// Referencing calls should be ported to be page-friendly or removed individually.
class QWebEngineFrame;
-class QWebEngineElement;
-class QWebEngineElementCollection;
class QWebEngineHistory;
-class QWebEngineHistoryItem;
class QWebEnginePagePrivate;
-class QWebEnginePluginFactory;
-class QWebEngineSecurityOrigin;
-class QtViewportAttributesPrivate;
-class QWebEngineHitTestResultPrivate;
namespace QtWebEnginePrivate {
@@ -67,497 +58,97 @@ private:
}
class QWEBENGINEWIDGETS_EXPORT QWebEngineHitTestResult {
-public:
- QWebEngineHitTestResult();
- QWebEngineHitTestResult(const QWebEngineHitTestResult &other);
- QWebEngineHitTestResult &operator=(const QWebEngineHitTestResult &other);
- ~QWebEngineHitTestResult();
-
- bool isNull() const;
-
- QPoint pos() const;
- QRect boundingRect() const;
- QWebEngineElement enclosingBlockElement() const;
- QString title() const;
-
- QString linkText() const;
- QUrl linkUrl() const;
- QUrl linkTitle() const;
- QWebEngineFrame *linkTargetFrame() const;
- QWebEngineElement linkElement() const;
-
- QString alternateText() const; // for img, area, input and applet
-
- QUrl imageUrl() const;
- QPixmap pixmap() const;
-
- bool isContentEditable() const;
- bool isContentSelected() const;
-
- QWebEngineElement element() const;
-
- QWebEngineFrame *frame() const;
};
class QWEBENGINEWIDGETS_EXPORT QWebEnginePage : public QObject {
Q_OBJECT
-// Hack to avoid undefined symbols with properties until we have them implemented.
-#ifndef Q_MOC_RUN
- Q_PROPERTY(bool modified READ isModified)
- Q_PROPERTY(QString selectedText READ selectedText)
- Q_PROPERTY(QString selectedHtml READ selectedHtml)
- Q_PROPERTY(bool hasSelection READ hasSelection)
- Q_PROPERTY(QSize viewportSize READ viewportSize WRITE setViewportSize)
- Q_PROPERTY(QSize preferredContentsSize READ preferredContentsSize WRITE setPreferredContentsSize)
- Q_PROPERTY(bool forwardUnsupportedContent READ forwardUnsupportedContent WRITE setForwardUnsupportedContent)
- Q_PROPERTY(LinkDelegationPolicy linkDelegationPolicy READ linkDelegationPolicy WRITE setLinkDelegationPolicy)
- Q_PROPERTY(QPalette palette READ palette WRITE setPalette)
- Q_PROPERTY(bool contentEditable READ isContentEditable WRITE setContentEditable)
- Q_ENUMS(LinkDelegationPolicy NavigationType WebAction)
// Ex-QWebFrame properties
- Q_PROPERTY(qreal textSizeMultiplier READ textSizeMultiplier WRITE setTextSizeMultiplier DESIGNABLE false)
- Q_PROPERTY(QUrl requestedUrl READ requestedUrl)
- Q_PROPERTY(QUrl baseUrl READ baseUrl)
- Q_PROPERTY(QIcon icon READ icon)
- Q_PROPERTY(QSize contentsSize READ contentsSize)
- Q_PROPERTY(QPoint scrollPosition READ scrollPosition WRITE setScrollPosition)
- Q_PROPERTY(bool focus READ hasFocus)
-#endif
Q_PROPERTY(qreal zoomFactor READ zoomFactor WRITE setZoomFactor)
Q_PROPERTY(QString title READ title)
Q_PROPERTY(QUrl url READ url WRITE setUrl)
public:
enum NavigationType {
- NavigationTypeLinkClicked,
- NavigationTypeFormSubmitted,
- NavigationTypeBackOrForward,
- NavigationTypeReload,
- NavigationTypeFormResubmitted,
- NavigationTypeOther
};
enum WebAction {
NoWebAction = - 1,
-
- OpenLink,
-
- OpenLinkInNewWindow,
- OpenFrameInNewWindow,
-
- DownloadLinkToDisk,
- CopyLinkToClipboard,
-
- OpenImageInNewWindow,
- DownloadImageToDisk,
- CopyImageToClipboard,
-
Back,
Forward,
Stop,
Reload,
-
- Cut,
- Copy,
- Paste,
-
- Undo,
- Redo,
- MoveToNextChar,
- MoveToPreviousChar,
- MoveToNextWord,
- MoveToPreviousWord,
- MoveToNextLine,
- MoveToPreviousLine,
- MoveToStartOfLine,
- MoveToEndOfLine,
- MoveToStartOfBlock,
- MoveToEndOfBlock,
- MoveToStartOfDocument,
- MoveToEndOfDocument,
- SelectNextChar,
- SelectPreviousChar,
- SelectNextWord,
- SelectPreviousWord,
- SelectNextLine,
- SelectPreviousLine,
- SelectStartOfLine,
- SelectEndOfLine,
- SelectStartOfBlock,
- SelectEndOfBlock,
- SelectStartOfDocument,
- SelectEndOfDocument,
- DeleteStartOfWord,
- DeleteEndOfWord,
-
- SetTextDirectionDefault,
- SetTextDirectionLeftToRight,
- SetTextDirectionRightToLeft,
-
- ToggleBold,
- ToggleItalic,
- ToggleUnderline,
-
- InspectElement,
-
- InsertParagraphSeparator,
- InsertLineSeparator,
-
- SelectAll,
ReloadAndBypassCache,
-
- PasteAndMatchStyle,
- RemoveFormat,
-
- ToggleStrikethrough,
- ToggleSubscript,
- ToggleSuperscript,
- InsertUnorderedList,
- InsertOrderedList,
- Indent,
- Outdent,
-
- AlignCenter,
- AlignJustified,
- AlignLeft,
- AlignRight,
-
- StopScheduledPageRefresh,
-
- CopyImageUrlToClipboard,
-
- OpenLinkInThisWindow,
-
WebActionCount
};
- enum FindFlag {
- FindBackward = 1,
- FindCaseSensitively = 2,
- FindWrapsAroundDocument = 4,
- HighlightAllOccurrences = 8
- };
- Q_DECLARE_FLAGS(FindFlags, FindFlag)
-
- enum LinkDelegationPolicy {
- DontDelegateLinks,
- DelegateExternalLinks,
- DelegateAllLinks
- };
-
enum WebWindowType {
WebBrowserWindow,
WebModalDialog
};
- enum PermissionPolicy {
- PermissionUnknown,
- PermissionGrantedByUser,
- PermissionDeniedByUser
- };
-
- enum Feature {
- Notifications,
- Geolocation
- };
-
// Ex-QWebFrame enum
- enum ValueOwnership {
- QtOwnership,
- ScriptOwnership,
- AutoOwnership
- };
enum FileSelectionMode {
FileSelectOpen,
FileSelectOpenMultiple,
};
- class QWEBENGINEWIDGETS_EXPORT ViewportAttributes {
- public:
- ViewportAttributes();
- ViewportAttributes(const QWebEnginePage::ViewportAttributes& other);
-
- ~ViewportAttributes();
-
- QWebEnginePage::ViewportAttributes& operator=(const QWebEnginePage::ViewportAttributes& other);
-
- inline qreal initialScaleFactor() const { return m_initialScaleFactor; }
- inline qreal minimumScaleFactor() const { return m_minimumScaleFactor; }
- inline qreal maximumScaleFactor() const { return m_maximumScaleFactor; }
- inline qreal devicePixelRatio() const { return m_devicePixelRatio; }
- inline bool isUserScalable() const { return m_isUserScalable; }
- inline bool isValid() const { return m_isValid; }
- inline QSizeF size() const { return m_size; }
-
- private:
- QSharedDataPointer<QtViewportAttributesPrivate> d;
- qreal m_initialScaleFactor;
- qreal m_minimumScaleFactor;
- qreal m_maximumScaleFactor;
- qreal m_devicePixelRatio;
- bool m_isUserScalable;
- bool m_isValid;
- QSizeF m_size;
-
- friend class QWebEnginePage;
- };
-
-
explicit QWebEnginePage(QObject *parent = 0);
~QWebEnginePage();
-
- QWebEngineFrame *mainFrame() const;
- QWebEngineFrame *currentFrame() const;
- QWebEngineFrame* frameAt(const QPoint& pos) const;
-
QWebEngineHistory *history() const;
- QWebEngineSettings *settings() const;
void setView(QWidget *view);
QWidget *view() const;
- bool isModified() const;
-#ifndef QT_NO_UNDOSTACK
- QUndoStack *undoStack() const;
-#endif
-
- void setNetworkAccessManager(QNetworkAccessManager *manager);
- QNetworkAccessManager *networkAccessManager() const;
-
- void setPluginFactory(QWebEnginePluginFactory *factory);
- QWebEnginePluginFactory *pluginFactory() const;
-
- quint64 totalBytes() const;
- quint64 bytesReceived() const;
-
- bool hasSelection() const;
- QString selectedText() const;
- QString selectedHtml() const;
-
#ifndef QT_NO_ACTION
QAction *action(WebAction action) const;
#endif
virtual void triggerAction(WebAction action, bool checked = false);
- QSize viewportSize() const;
- void setViewportSize(const QSize &size) const;
- ViewportAttributes viewportAttributesForSize(const QSize& availableSize) const;
-
- QSize preferredContentsSize() const;
- void setPreferredContentsSize(const QSize &size) const;
- void setActualVisibleContentRect(const QRect& rect) const;
-
- bool focusNextPrevChild(bool next);
-
- QVariant inputMethodQuery(Qt::InputMethodQuery property) const;
-
- bool findText(const QString &subString, FindFlags options = 0);
-
- void setForwardUnsupportedContent(bool forward);
- bool forwardUnsupportedContent() const;
-
- void setLinkDelegationPolicy(LinkDelegationPolicy policy);
- LinkDelegationPolicy linkDelegationPolicy() const;
-
- void setPalette(const QPalette &palette);
- QPalette palette() const;
-
- void setContentEditable(bool editable);
- bool isContentEditable() const;
-
-#ifndef QT_NO_CONTEXTMENU
- bool swallowContextMenuEvent(QContextMenuEvent *event);
-#endif
- void updatePositionDependentActions(const QPoint &pos);
-
QMenu *createStandardContextMenu();
- void setFeaturePermission(QWebEngineFrame* frame, Feature feature, PermissionPolicy policy);
-
- QStringList supportedContentTypes() const;
- bool supportsContentType(const QString& mimeType) const;
-
enum Extension {
- ErrorPageExtension
};
class ExtensionOption
{};
class ExtensionReturn
{};
- enum ErrorDomain { QtNetwork, Http, WebKit };
- class ErrorPageExtensionOption : public ExtensionOption {
- public:
- QUrl url;
- QWebEngineFrame* frame;
- ErrorDomain domain;
- int error;
- QString errorString;
- };
-
- class ErrorPageExtensionReturn : public ExtensionReturn {
- public:
- ErrorPageExtensionReturn() : contentType(QLatin1String("text/html")), encoding(QLatin1String("utf-8")) {};
- QString contentType;
- QString encoding;
- QUrl baseUrl;
- QByteArray content;
- };
-
-
- virtual bool extension(Extension extension, const ExtensionOption *option = 0, ExtensionReturn *output = 0) { Q_UNUSED(extension); Q_UNUSED(option); Q_UNUSED(output); Q_UNREACHABLE(); return false; }
- virtual bool supportsExtension(Extension extension) const { Q_UNUSED(extension); Q_UNREACHABLE(); return false; }
-
- virtual bool shouldInterruptJavaScript() { Q_UNREACHABLE(); return false; }
-
// Ex-QWebFrame methods
void load(const QUrl &url);
- void load(const QNetworkRequest &request, QNetworkAccessManager::Operation operation = QNetworkAccessManager::GetOperation, const QByteArray &body = QByteArray());
- void setHtml(const QString &html, const QUrl &baseUrl = QUrl());
- void setContent(const QByteArray &data, const QString &mimeType = QString(), const QUrl &baseUrl = QUrl());
-
- void addToJavaScriptWindowObject(const QString &name, QObject *object, ValueOwnership ownership = QtOwnership);
- QString toHtml() const;
- QString toPlainText() const;
QString title() const;
void setUrl(const QUrl &url);
QUrl url() const;
- QUrl requestedUrl() const;
- QUrl baseUrl() const;
- QIcon icon() const;
- QMultiMap<QString, QString> metaData() const;
-
- QString frameName() const;
-
- QWebEngineFrame *parentFrame() const;
- QList<QWebEngineFrame*> childFrames() const;
-
- Qt::ScrollBarPolicy scrollBarPolicy(Qt::Orientation orientation) const;
- void setScrollBarPolicy(Qt::Orientation orientation, Qt::ScrollBarPolicy policy);
-
- void setScrollBarValue(Qt::Orientation orientation, int value);
- int scrollBarValue(Qt::Orientation orientation) const;
- int scrollBarMinimum(Qt::Orientation orientation) const;
- int scrollBarMaximum(Qt::Orientation orientation) const;
- QRect scrollBarGeometry(Qt::Orientation orientation) const;
-
- void scroll(int, int);
- QPoint scrollPosition() const;
- void setScrollPosition(const QPoint &pos);
-
- void scrollToAnchor(const QString& anchor);
-
- enum RenderLayer {
- ContentsLayer = 0x10,
- ScrollBarLayer = 0x20,
- PanIconLayer = 0x40,
-
- AllLayers = 0xff
- };
- Q_DECLARE_FLAGS(RenderLayers, RenderLayer)
-
- void render(QPainter*, const QRegion& clip = QRegion());
- void render(QPainter*, RenderLayers layer, const QRegion& clip = QRegion());
-
- void setTextSizeMultiplier(qreal factor);
- qreal textSizeMultiplier() const;
qreal zoomFactor() const;
void setZoomFactor(qreal factor);
- bool hasFocus() const;
- void setFocus();
-
- QPoint pos() const;
- QRect geometry() const;
- QSize contentsSize() const;
-
- QWebEngineElement documentElement() const;
- QWebEngineElementCollection findAllElements(const QString &selectorQuery) const;
- QWebEngineElement findFirstElement(const QString &selectorQuery) const;
-
- QWebEngineHitTestResult hitTestContent(const QPoint &pos) const;
-
- QWebEngineSecurityOrigin securityOrigin() const;
-
void runJavaScript(const QString& scriptSource, const QString &xPath = QString());
template <typename F>
void runJavaScript(const QString& scriptSource, F func, const QString &xPath = QString());
-public Q_SLOTS:
- // Ex-QWebFrame slot
-#ifndef QT_NO_PRINTER
- void print(QPrinter *printer) const { Q_UNUSED(printer); Q_UNREACHABLE(); }
-#endif
-
-
Q_SIGNALS:
void loadStarted();
void loadProgress(int progress);
void loadFinished(bool ok);
- void linkHovered(const QString &link, const QString &title, const QString &textContent);
- void statusBarMessage(const QString& text);
- void selectionChanged();
- void frameCreated(QWebEngineFrame *frame);
void geometryChangeRequested(const QRect& geom);
- void repaintRequested(const QRect& dirtyRect);
- void scrollRequested(int dx, int dy, const QRect& scrollViewRect);
void windowCloseRequested();
- void printRequested(QWebEngineFrame *frame);
- void linkClicked(const QUrl &url);
-
- void toolBarVisibilityChangeRequested(bool visible);
- void statusBarVisibilityChangeRequested(bool visible);
- void menuBarVisibilityChangeRequested(bool visible);
-
- void unsupportedContent(QNetworkReply *reply);
- void downloadRequested(const QNetworkRequest &request);
-
- void microFocusChanged();
- void contentsChanged();
- void databaseQuotaExceeded(QWebEngineFrame* frame, QString databaseName);
- void applicationCacheQuotaExceeded(QWebEngineSecurityOrigin* origin, quint64 defaultOriginQuota, quint64 totalSpaceNeeded);
-
- void saveFrameStateRequested(QWebEngineFrame* frame, QWebEngineHistoryItem* item);
- void restoreFrameStateRequested(QWebEngineFrame* frame);
-
- void viewportChangeRequested();
-
- void featurePermissionRequested(QWebEngineFrame* frame, QWebEnginePage::Feature feature);
- void featurePermissionRequestCanceled(QWebEngineFrame* frame, QWebEnginePage::Feature feature);
// Ex-QWebFrame signals
- void javaScriptWindowObjectCleared();
-
- void provisionalLoad();
void titleChanged(const QString &title);
void urlChanged(const QUrl &url);
- void initialLayoutCompleted();
-
- void iconChanged();
-
- void contentsSizeChanged(const QSize &size);
-
- void pageChanged();
-
protected:
virtual QWebEnginePage *createWindow(WebWindowType type);
- virtual QObject *createPlugin(const QString &classid, const QUrl &url, const QStringList &paramNames, const QStringList &paramValues) { Q_UNUSED(classid); Q_UNUSED(url); Q_UNUSED(paramNames); Q_UNUSED(paramValues); Q_UNREACHABLE(); return 0; }
- virtual bool acceptNavigationRequest(QWebEngineFrame *frame, const QNetworkRequest &request, NavigationType type) { Q_UNUSED(frame); Q_UNUSED(request); Q_UNUSED(type); Q_UNREACHABLE(); return false; }
virtual QStringList chooseFiles(FileSelectionMode mode, const QStringList &oldFiles, const QStringList &acceptedMimeTypes);
virtual void javaScriptAlert(QWebEngineFrame *originatingFrame, const QString& msg);
virtual bool javaScriptConfirm(QWebEngineFrame *originatingFrame, const QString& msg);
virtual bool javaScriptPrompt(QWebEngineFrame *originatingFrame, const QString& msg, const QString& defaultValue, QString* result);
- virtual void javaScriptConsoleMessage(const QString& message, int lineNumber, const QString& sourceID) { Q_UNUSED(message); Q_UNUSED(lineNumber); Q_UNUSED(sourceID); Q_UNREACHABLE(); }
-
- virtual QString userAgentForUrl(const QUrl& url) const { Q_UNUSED(url); Q_UNREACHABLE(); return QString(); }
private:
Q_DECLARE_PRIVATE(QWebEnginePage);
@@ -570,10 +161,6 @@ private:
friend class QWebEngineViewPrivate;
};
-Q_DECLARE_OPERATORS_FOR_FLAGS(QWebEnginePage::FindFlags);
-Q_DECLARE_OPERATORS_FOR_FLAGS(QWebEnginePage::RenderLayers);
-
-
template <typename F>
inline void QWebEnginePage::runJavaScript(const QString &scriptSource, F func, const QString &xPath)
{
diff --git a/src/webenginewidgets/api/qwebenginesecurityorigin.h b/src/webenginewidgets/api/qwebenginesecurityorigin.h
index c943bec84..f372f52c9 100644
--- a/src/webenginewidgets/api/qwebenginesecurityorigin.h
+++ b/src/webenginewidgets/api/qwebenginesecurityorigin.h
@@ -24,27 +24,8 @@
#include <QtWebEngineWidgets/qtwebenginewidgetsglobal.h>
QT_BEGIN_NAMESPACE
-class QWebEngineDatabase;
-class QWebEngineSecurityOriginPrivate;
class QWEBENGINEWIDGETS_EXPORT QWebEngineSecurityOrigin {
-public:
- static QList<QWebEngineSecurityOrigin> allOrigins();
- static void addLocalScheme(const QString& scheme);
- static void removeLocalScheme(const QString& scheme);
- static QStringList localSchemes();
-
- ~QWebEngineSecurityOrigin();
-
- QString scheme() const;
- QString host() const;
- int port() const;
-
- qint64 databaseUsage() const;
- qint64 databaseQuota() const;
- void setDatabaseQuota(qint64 quota);
- void setApplicationCacheQuota(qint64 quota);
- QList<QWebEngineDatabase> databases() const;
};
QT_END_NAMESPACE
diff --git a/src/webenginewidgets/api/qwebenginesettings.h b/src/webenginewidgets/api/qwebenginesettings.h
index 177a975fd..13a7048c1 100644
--- a/src/webenginewidgets/api/qwebenginesettings.h
+++ b/src/webenginewidgets/api/qwebenginesettings.h
@@ -22,147 +22,10 @@
#define QWEBENGINESETTINGS_H
#include <QtWebEngineWidgets/qtwebenginewidgetsglobal.h>
-#include <QtCore/qstring.h>
QT_BEGIN_NAMESPACE
-class QIcon;
-class QPixmap;
-class QUrl;
-class QWebEngineSettingsPrivate;
-
class QWEBENGINEWIDGETS_EXPORT QWebEngineSettings {
-public:
- enum FontFamily {
- StandardFont,
- FixedFont,
- SerifFont,
- SansSerifFont,
- CursiveFont,
- FantasyFont
- };
- enum WebAttribute {
- AutoLoadImages,
- JavascriptEnabled,
- JavaEnabled,
- PluginsEnabled,
- PrivateBrowsingEnabled,
- JavascriptCanOpenWindows,
- JavascriptCanAccessClipboard,
- DeveloperExtrasEnabled,
- LinksIncludedInFocusChain,
- ZoomTextOnly,
- PrintElementBackgrounds,
- OfflineStorageDatabaseEnabled,
- OfflineWebApplicationCacheEnabled,
- LocalStorageEnabled,
-#if defined(QT_DEPRECATED) || defined(qdoc)
- LocalStorageDatabaseEnabled = LocalStorageEnabled,
-#endif
- LocalContentCanAccessRemoteUrls,
- DnsPrefetchEnabled,
- XSSAuditingEnabled,
- AcceleratedCompositingEnabled,
- SpatialNavigationEnabled,
- LocalContentCanAccessFileUrls,
- TiledBackingStoreEnabled,
- FrameFlatteningEnabled,
- SiteSpecificQuirksEnabled,
- JavascriptCanCloseWindows,
- WebGLEnabled,
- CSSRegionsEnabled,
- HyperlinkAuditingEnabled,
- CSSGridLayoutEnabled,
- ScrollAnimatorEnabled,
- CaretBrowsingEnabled,
- NotificationsEnabled
- };
- enum WebGraphic {
- MissingImageGraphic,
- MissingPluginGraphic,
- DefaultFrameIconGraphic,
- TextAreaSizeGripCornerGraphic,
- DeleteButtonGraphic,
- InputSpeechButtonGraphic,
- SearchCancelButtonGraphic,
- SearchCancelButtonPressedGraphic
- };
- enum FontSize {
- MinimumFontSize,
- MinimumLogicalFontSize,
- DefaultFontSize,
- DefaultFixedFontSize
- };
- enum ThirdPartyCookiePolicy {
- AlwaysAllowThirdPartyCookies,
- AlwaysBlockThirdPartyCookies,
- AllowThirdPartyWithExistingCookies
- };
-
- static QWebEngineSettings *globalSettings();
-
- void setFontFamily(FontFamily which, const QString &family);
- QString fontFamily(FontFamily which) const;
- void resetFontFamily(FontFamily which);
-
- void setFontSize(FontSize type, int size);
- int fontSize(FontSize type) const;
- void resetFontSize(FontSize type);
-
- void setAttribute(WebAttribute attr, bool on);
- bool testAttribute(WebAttribute attr) const;
- void resetAttribute(WebAttribute attr);
-
- void setUserStyleSheetUrl(const QUrl &location);
- QUrl userStyleSheetUrl() const;
-
- void setDefaultTextEncoding(const QString &encoding);
- QString defaultTextEncoding() const;
-
- static void setIconDatabasePath(const QString &location);
- static QString iconDatabasePath();
- static void clearIconDatabase();
- static QIcon iconForUrl(const QUrl &url);
-
- //static QWebEnginePluginDatabase *pluginDatabase();
-
- static void setWebGraphic(WebGraphic type, const QPixmap &graphic);
- static QPixmap webGraphic(WebGraphic type);
-
- static void setMaximumPagesInCache(int pages);
- static int maximumPagesInCache();
- static void setObjectCacheCapacities(int cacheMinDeadCapacity, int cacheMaxDead, int totalCapacity);
-
- static void setOfflineStoragePath(const QString& path);
- static QString offlineStoragePath();
- static void setOfflineStorageDefaultQuota(qint64 maximumSize);
- static qint64 offlineStorageDefaultQuota();
-
- static void setOfflineWebApplicationCachePath(const QString& path);
- static QString offlineWebApplicationCachePath();
- static void setOfflineWebApplicationCacheQuota(qint64 maximumSize);
- static qint64 offlineWebApplicationCacheQuota();
-
- void setLocalStoragePath(const QString& path);
- QString localStoragePath() const;
-
- static void clearMemoryCaches();
-
- static void enablePersistentStorage(const QString& path = QString());
-
- void setThirdPartyCookiePolicy(ThirdPartyCookiePolicy);
- QWebEngineSettings::ThirdPartyCookiePolicy thirdPartyCookiePolicy() const;
-
- void setCSSMediaType(const QString&);
- QString cssMediaType() const;
-
-private:
- Q_DISABLE_COPY(QWebEngineSettings)
-
- QWebEngineSettings();
- ~QWebEngineSettings();
-
- QWebEngineSettingsPrivate *d;
};
QT_END_NAMESPACE
diff --git a/src/webenginewidgets/api/qwebengineview.h b/src/webenginewidgets/api/qwebengineview.h
index 2c649d46f..a1621e714 100644
--- a/src/webenginewidgets/api/qwebengineview.h
+++ b/src/webenginewidgets/api/qwebengineview.h
@@ -31,33 +31,16 @@
QT_BEGIN_NAMESPACE
class QContextMenuEvent;
-class QIcon;
-class QNetworkRequest;
-class QPrinter;
class QUrl;
class QWebEnginePage;
class QWebEngineViewPrivate;
-class QWebEngineNetworkRequest;
class QWEBENGINEWIDGETS_EXPORT QWebEngineView : public QWidget {
Q_OBJECT
-// Hack to avoid undefined symbols with properties until we have them implemented.
-#ifndef Q_MOC_RUN
Q_PROPERTY(QString title READ title)
Q_PROPERTY(QUrl url READ url WRITE setUrl)
- Q_PROPERTY(QIcon icon READ icon)
- Q_PROPERTY(QString selectedText READ selectedText)
- Q_PROPERTY(QString selectedHtml READ selectedHtml)
- Q_PROPERTY(bool hasSelection READ hasSelection)
- Q_PROPERTY(bool modified READ isModified)
- //Q_PROPERTY(Qt::TextInteractionFlags textInteractionFlags READ textInteractionFlags WRITE setTextInteractionFlags)
- Q_PROPERTY(qreal textSizeMultiplier READ textSizeMultiplier WRITE setTextSizeMultiplier DESIGNABLE false)
Q_PROPERTY(qreal zoomFactor READ zoomFactor WRITE setZoomFactor)
- Q_PROPERTY(QPainter::RenderHints renderHints READ renderHints WRITE setRenderHints)
- Q_FLAGS(QPainter::RenderHints)
-#endif
-
public:
explicit QWebEngineView(QWidget* parent = 0);
virtual ~QWebEngineView();
@@ -66,66 +49,33 @@ public:
void setPage(QWebEnginePage* page);
void load(const QUrl& url);
- void load(const QNetworkRequest& request, QNetworkAccessManager::Operation operation = QNetworkAccessManager::GetOperation, const QByteArray &body = QByteArray());
- void setHtml(const QString& html, const QUrl& baseUrl = QUrl());
- void setContent(const QByteArray& data, const QString& mimeType = QString(), const QUrl& baseUrl = QUrl());
QWebEngineHistory* history() const;
- QWebEngineSettings* settings() const;
QString title() const;
void setUrl(const QUrl &url);
QUrl url() const;
- QIcon icon() const;
- bool hasSelection() const;
- QString selectedText() const;
- QString selectedHtml() const;
#ifndef QT_NO_ACTION
QAction* pageAction(QWebEnginePage::WebAction action) const;
#endif
void triggerPageAction(QWebEnginePage::WebAction action, bool checked = false);
- bool isModified() const;
-
- /*
- Qt::TextInteractionFlags textInteractionFlags() const;
- void setTextInteractionFlags(Qt::TextInteractionFlags flags);
- void setTextInteractionFlag(Qt::TextInteractionFlag flag);
- */
-
qreal zoomFactor() const;
void setZoomFactor(qreal factor);
- void setTextSizeMultiplier(qreal factor);
- qreal textSizeMultiplier() const;
-
- QPainter::RenderHints renderHints() const;
- void setRenderHints(QPainter::RenderHints hints);
- void setRenderHint(QPainter::RenderHint hint, bool enabled = true);
-
- bool findText(const QString& subString, QWebEnginePage::FindFlags options = 0);
-
- virtual QSize sizeHint() const { return QSize(800, 600); }
-
public Q_SLOTS:
void stop();
void back();
void forward();
void reload();
- void print(QPrinter*) const { }
-
Q_SIGNALS:
void loadStarted();
void loadProgress(int progress);
void loadFinished(bool);
void titleChanged(const QString& title);
- void statusBarMessage(const QString& text);
- void linkClicked(const QUrl&);
- void selectionChanged();
- void iconChanged();
void urlChanged(const QUrl&);
protected:
diff --git a/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp b/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp
index 6ca8e0d8e..1c5fc6d86 100644
--- a/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp
+++ b/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp
@@ -2726,6 +2726,7 @@ void tst_QWebEnginePage::defaultTextEncoding()
#endif
}
+#ifdef QWEBENGINESETTINGS_ERRORPAGEEXTENSION
class ErrorPage : public QWebEnginePage
{
public:
@@ -2748,9 +2749,13 @@ public:
return true;
}
};
+#endif
void tst_QWebEnginePage::errorPageExtension()
{
+#if !defined(QWEBENGINESETTINGS_ERRORPAGEEXTENSION)
+ QSKIP("QWEBENGINESETTINGS_ERRORPAGEEXTENSION");
+#else
ErrorPage page;
m_view->setPage(&page);
@@ -2783,6 +2788,7 @@ void tst_QWebEnginePage::errorPageExtension()
QTRY_COMPARE(page.history()->currentItem().url(), QUrl("data:text/html,foo"));
m_view->setPage(0);
+#endif
}
void tst_QWebEnginePage::errorPageExtensionInIFrames()
@@ -2828,6 +2834,9 @@ void tst_QWebEnginePage::errorPageExtensionInFrameset()
void tst_QWebEnginePage::errorPageExtensionLoadFinished()
{
+#if !defined(QWEBENGINESETTINGS_ERRORPAGEEXTENSION)
+ QSKIP("QWEBENGINESETTINGS_ERRORPAGEEXTENSION");
+#else
ErrorPage page;
m_view->setPage(&page);
@@ -2853,6 +2862,7 @@ void tst_QWebEnginePage::errorPageExtensionLoadFinished()
QVERIFY(nonExistantFrameLoadSucceded);
m_view->setPage(0);
+#endif
}
class FriendlyWebPage : public QWebEnginePage