aboutsummaryrefslogtreecommitdiffstats
path: root/desktop-widgets/usermanual.h
diff options
context:
space:
mode:
authorGravatar Robert C. Helling <helling@atdotde.de>2016-08-09 00:12:12 +0200
committerGravatar Robert C. Helling <helling@atdotde.de>2016-12-30 19:43:00 +0100
commit529a4d499b8dad35de6cd43e3004017ccfd288aa (patch)
treefb0f163c32c029134a849ac49183849870b3c0ae /desktop-widgets/usermanual.h
parent10b8bda6626fe1de602e38da34de419972031755 (diff)
downloadsubsurface-529a4d499b8dad35de6cd43e3004017ccfd288aa.tar.gz
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 <helling@atdotde.de>
Diffstat (limited to 'desktop-widgets/usermanual.h')
-rw-r--r--desktop-widgets/usermanual.h36
1 files changed, 34 insertions, 2 deletions
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 <QWebEngineView>
+#include <QWebEnginePage>
+#else
#include <QWebView>
-
+#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