diff options
Diffstat (limited to 'src/webengine')
-rw-r--r-- | src/webengine/api/qquickwebengineview.cpp | 22 | ||||
-rw-r--r-- | src/webengine/api/qquickwebengineview_p_p.h | 10 |
2 files changed, 32 insertions, 0 deletions
diff --git a/src/webengine/api/qquickwebengineview.cpp b/src/webengine/api/qquickwebengineview.cpp index 2f5d868ea..e91f2ee75 100644 --- a/src/webengine/api/qquickwebengineview.cpp +++ b/src/webengine/api/qquickwebengineview.cpp @@ -70,6 +70,7 @@ QQuickWebEngineViewPrivate::QQuickWebEngineViewPrivate() , loadProgress(0) , inspectable(false) , m_isLoading(false) + , m_isFullScreen(false) , devicePixelRatio(QGuiApplication::primaryScreen()->devicePixelRatio()) , m_dpiScale(1.0) { @@ -324,6 +325,16 @@ void QQuickWebEngineViewPrivate::close() Q_UNREACHABLE(); } +void QQuickWebEngineViewPrivate::requestFullScreen(bool fullScreen) +{ + Q_EMIT e->fullScreenRequested(fullScreen); +} + +bool QQuickWebEngineViewPrivate::isFullScreen() const +{ + return e->isFullScreen(); +} + void QQuickWebEngineViewPrivate::javaScriptConsoleMessage(int level, const QString& message, int lineNumber, const QString& sourceID) { Q_Q(QQuickWebEngineView); @@ -438,6 +449,17 @@ void QQuickWebEngineView::setInspectable(bool enable) d->adapter->enableInspector(enable); } +void QQuickWebEngineViewExperimental::setIsFullScreen(bool fullscreen) +{ + d_ptr->m_isFullScreen = fullscreen; + emit isFullScreenChanged(); +} + +bool QQuickWebEngineViewExperimental::isFullScreen() const +{ + return d_ptr->m_isFullScreen; +} + void QQuickWebEngineViewExperimental::setExtraContextMenuEntriesComponent(QQmlComponent *contextMenuExtras) { if (d_ptr->contextMenuExtraItems == contextMenuExtras) diff --git a/src/webengine/api/qquickwebengineview_p_p.h b/src/webengine/api/qquickwebengineview_p_p.h index 3de597469..d35758d70 100644 --- a/src/webengine/api/qquickwebengineview_p_p.h +++ b/src/webengine/api/qquickwebengineview_p_p.h @@ -93,8 +93,13 @@ class Q_WEBENGINE_PRIVATE_EXPORT QQuickWebEngineViewExperimental : public QObjec Q_OBJECT Q_PROPERTY(QQuickWebEngineViewport *viewport READ viewport) Q_PROPERTY(QQmlComponent *extraContextMenuEntriesComponent READ extraContextMenuEntriesComponent WRITE setExtraContextMenuEntriesComponent NOTIFY extraContextMenuEntriesComponentChanged) + Q_PROPERTY(bool isFullScreen READ isFullScreen WRITE setIsFullScreen NOTIFY isFullScreenChanged) public: + void setIsFullScreen(bool fullscreen); + bool isFullScreen() const; + +public Q_SLOTS: QQuickWebEngineViewport *viewport() const; Q_INVOKABLE void adoptHandle(QQuickWebEngineViewHandle *viewHandle); void setExtraContextMenuEntriesComponent(QQmlComponent *); @@ -102,6 +107,8 @@ public: Q_SIGNALS: void createWindow(const QJSValue &newViewHandle, const QString &newViewDisposition); + void fullScreenRequested(bool fullScreen); + void isFullScreenChanged(); void extraContextMenuEntriesComponentChanged(); private: @@ -135,6 +142,8 @@ public: virtual void focusContainer() Q_DECL_OVERRIDE; virtual void adoptNewWindow(WebContentsAdapter *newWebContents, WindowOpenDisposition disposition, const QRect &) Q_DECL_OVERRIDE; virtual void close() Q_DECL_OVERRIDE; + virtual void requestFullScreen(bool) Q_DECL_OVERRIDE; + virtual bool isFullScreen() const Q_DECL_OVERRIDE; virtual bool contextMenuRequested(const WebEngineContextMenuData &) Q_DECL_OVERRIDE; virtual void javascriptDialog(QSharedPointer<JavaScriptDialogController>) Q_DECL_OVERRIDE; virtual void runFileChooser(FileChooserMode, const QString &defaultFileName, const QStringList &acceptedMimeTypes) Q_DECL_OVERRIDE; @@ -154,6 +163,7 @@ public: int loadProgress; bool inspectable; bool m_isLoading; + bool m_isFullScreen; qreal devicePixelRatio; private: |