From 529a4d499b8dad35de6cd43e3004017ccfd288aa Mon Sep 17 00:00:00 2001 From: "Robert C. Helling" Date: Tue, 9 Aug 2016 00:12:12 +0200 Subject: Start transition from QWebKit to QWebEngine This removes all references to WebKit if cmake option USE_WEBKIT is enabled. For the user manual it changes it to WebEngine (seems to work for me). Similar for the Facebook connection (minus a reference to a cookie jar). This I could not test at the moment, as I wrote this on a train. Printing does not work, it is a null operation at the moment. Currently, large parts of of the printing code are commented out as there is no direct way to access page elements in WebEngine. It seems this needs to be done via Javascript (with a callback invoked). There is new functionality in WebEngine to render a view to a PDF file but this needs more work (and probably some thoughts towards page breaks). Signed-off-by: Robert C. Helling --- desktop-widgets/usermanual.h | 36 ++++++++++++++++++++++++++++++++++-- 1 file changed, 34 insertions(+), 2 deletions(-) (limited to 'desktop-widgets/usermanual.h') diff --git a/desktop-widgets/usermanual.h b/desktop-widgets/usermanual.h index 5101a3c3b..04ae15605 100644 --- a/desktop-widgets/usermanual.h +++ b/desktop-widgets/usermanual.h @@ -1,8 +1,12 @@ #ifndef USERMANUAL_H #define USERMANUAL_H +#ifdef USE_WEBENGINE +#include +#include +#else #include - +#endif #include "ui_searchbar.h" class SearchBar : public QWidget{ @@ -21,6 +25,27 @@ private: Ui::SearchBar ui; }; +#ifdef USE_WEBENGINE +class MyQWebEnginePage : public QWebEnginePage +{ + Q_OBJECT + +public: + MyQWebEnginePage(QObject* parent = 0); + bool acceptNavigationRequest(const QUrl & url, QWebEnginePage::NavigationType type, bool); +}; + +class MyQWebEngineView : public QWebEngineView +{ + Q_OBJECT + +public: + MyQWebEngineView(QWidget* parent = 0); + MyQWebEnginePage* page() const; +}; +#endif + + class UserManual : public QWidget { Q_OBJECT @@ -40,11 +65,18 @@ slots: void searchTextChanged(const QString& s); void searchNext(); void searchPrev(); +#ifndef USE_WEBENGINE void linkClickedSlot(const QUrl& url); +#endif private: - QWebView *userManual; SearchBar *searchBar; QString mLastText; +#ifdef USE_WEBENGINE + QWebEngineView *userManual; + void search(QString, QWebEnginePage::FindFlags); +#else + QWebView *userManual; void search(QString, QWebPage::FindFlags); +#endif }; #endif // USERMANUAL_H -- cgit v1.2.3-70-g09d2