diff --git a/CMakeLists.txt b/CMakeLists.txt
index f1ef87f..e3a8975 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -347,10 +347,8 @@ ENDIF (APPLEBUNDLE)
 ADD_DEFINITIONS("-DLIBDIR=\\\"${CMAKE_INSTALL_PREFIX}/${LIBDIR}\\\"")
 
 #C++11 Support
-IF(WANT_CPP11)
-	MESSAGE(STATUS "Enabling C++11 compiler features")
-	ADD_DEFINITIONS("-std=c++11")
-ENDIF(WANT_CPP11)
+MESSAGE(STATUS "Enabling C++11 compiler features")
+ADD_DEFINITIONS("-std=c++11")
 
 #PLUGINS
 IF(WIN32)
@@ -554,18 +552,12 @@ IF(Qt5Xml_FOUND)
 ELSE(Qt5Xml_FOUND)
 	MESSAGE(FATAL_ERROR "ERROR: No QT 5 XML found")
 ENDIF(Qt5Xml_FOUND)
-FIND_PACKAGE(Qt5WebKit REQUIRED)
-IF(Qt5WebKit_FOUND)
-	MESSAGE(STATUS "----- USE Qt5WebKit -----")
-ELSE(Qt5WebKit_FOUND)
-	MESSAGE(FATAL_ERROR "ERROR: No Qt5WebKit found")
-ENDIF(Qt5WebKit_FOUND)
-FIND_PACKAGE(Qt5WebKitWidgets REQUIRED)
-IF(Qt5WebKitWidgets_FOUND)
-	MESSAGE(STATUS "----- USE Qt5WebKitWidgets -----")
-ELSE(Qt5WebKitWidgets_FOUND)
-	MESSAGE(FATAL_ERROR "ERROR: No Qt5WebKitWidgets found")
-ENDIF(Qt5WebKitWidgets_FOUND)
+FIND_PACKAGE(Qt5WebEngineWidgets REQUIRED)
+IF(Qt5WebEngineWidgets_FOUND)
+  MESSAGE(STATUS "----- USE Qt5WebEngineWidgets -----")
+ELSE(Qt5WebEngineWidgets_FOUND)
+  MESSAGE(FATAL_ERROR "ERROR: No Qt5WebEngineWidgets found")
+ENDIF(Qt5WebEngineWidgets_FOUND)
 FIND_PACKAGE(Qt5Network REQUIRED)
 IF(Qt5Network_FOUND)
 	MESSAGE(STATUS "----- USE Qt5Network -----")
@@ -604,10 +596,8 @@ INCLUDE_DIRECTORIES(${Qt5Gui_INCLUDE_DIRS})
 ADD_DEFINITIONS(${Qt5Gui_DEFINITIONS})
 INCLUDE_DIRECTORIES(${Qt5Xml_INCLUDE_DIRS})
 ADD_DEFINITIONS(${Qt5Xml_DEFINITIONS})
-INCLUDE_DIRECTORIES(${Qt5WebKit_INCLUDE_DIRS})
-ADD_DEFINITIONS(${Qt5WebKit_DEFINITIONS})
-INCLUDE_DIRECTORIES(${Qt5WebKitWidgets_INCLUDE_DIRS})
-ADD_DEFINITIONS(${Qt5WebKitWidgets_DEFINITIONS})
+INCLUDE_DIRECTORIES(${Qt5WebEngineWidgets_INCLUDE_DIRS})
+ADD_DEFINITIONS(${Qt5WebEngineWidgets_DEFINITIONS})
 INCLUDE_DIRECTORIES(${Qt5Network_INCLUDE_DIRS})
 ADD_DEFINITIONS(${Qt5Network_DEFINITIONS})
 INCLUDE_DIRECTORIES(${Qt5OpenGL_INCLUDE_DIRS})
diff --git a/scribus/CMakeLists.txt b/scribus/CMakeLists.txt
index 6425e22..a4b6281 100644
--- a/scribus/CMakeLists.txt
+++ b/scribus/CMakeLists.txt
@@ -1193,8 +1193,7 @@ TARGET_LINK_LIBRARIES(${EXE_NAME}
 	${Qt5Widgets_LIBRARIES}
 	${Qt5Gui_LIBRARIES}
 	${Qt5Xml_LIBRARIES}
-	${Qt5WebKit_LIBRARIES}
-	${Qt5WebKitWidgets_LIBRARIES}
+  ${Qt5WebEngineWidgets_LIBRARIES}
 	${Qt5Network_LIBRARIES}
 	${Qt5OpenGL_LIBRARIES}
 	${Qt5PrintSupport_LIBRARIES}
@@ -1293,8 +1292,7 @@ SET(PLUGIN_LIBRARIES
 	${Qt5Widgets_LIBRARIES}
 	${Qt5Gui_LIBRARIES}
 	${Qt5Xml_LIBRARIES}
-	${Qt5WebKit_LIBRARIES}
-	${Qt5WebKitWidgets_LIBRARIES}
+  ${Qt5WebEngineWidgets_LIBRARIES}
 	${Qt5Network_LIBRARIES}
 	${Qt5OpenGL_LIBRARIES}
 	${LIBXML2_LIBRARIES}
diff --git a/scribus/ui/helpbrowser.cpp b/scribus/ui/helpbrowser.cpp
index ef7eceb..37b32c7 100644
--- a/scribus/ui/helpbrowser.cpp
+++ b/scribus/ui/helpbrowser.cpp
@@ -359,11 +359,14 @@ void HelpBrowser::languageChange()
 
 void HelpBrowser::print()
 {
-	QPrinter printer;
-	printer.setFullPage(true);
-	QPrintDialog dialog(&printer, this);
-	if (dialog.exec())
- 		textBrowser->print(&printer);
+  QPrintDialog dialog(&printer, this);
+  if (dialog.exec()) {
+    textBrowser->page()->toHtml([this](const QString& str) {
+        QTextDocument doc(this);
+        doc.setHtml(str);
+        doc.print(&printer);
+        });
+  }
 }
 
 void HelpBrowser::searchingButton_clicked()
diff --git a/scribus/ui/helpbrowser.h b/scribus/ui/helpbrowser.h
index 921023a..aa92097 100644
--- a/scribus/ui/helpbrowser.h
+++ b/scribus/ui/helpbrowser.h
@@ -43,6 +43,7 @@ for which a new license (GPL+exception) is in place.
 #include <QUrl>
 #include <QVariant>
 #include <QWidget>
+#include <QPrinter>
 
 class QEvent;
 
@@ -135,6 +136,8 @@ protected:
 	ScHelpTreeModel* menuModel;
 	QMap<QString, QString> quickHelpIndex;
 	QMap<QString, QPair<QString, QString> > bookmarkIndex;
+
+  QPrinter printer;
 	
 protected slots:
 	virtual void languageChange();
diff --git a/scribus/ui/sctextbrowser.cpp b/scribus/ui/sctextbrowser.cpp
index 21df643..02151fc 100644
--- a/scribus/ui/sctextbrowser.cpp
+++ b/scribus/ui/sctextbrowser.cpp
@@ -7,7 +7,6 @@ for which a new license (GPL+exception) is in place.
 
 #include "sctextbrowser.h"
 
-#include <QWebFrame>
 #include <QEvent>
 #include <QDebug>
 
@@ -19,13 +18,13 @@ for which a new license (GPL+exception) is in place.
 #include "urllauncher.h"
 
 ScTextBrowser::ScTextBrowser( QWidget * parent )
-	 : QWebView(parent)
+	 : QWebEngineView(parent)
 {
 	hideContextMenus=false;
 	// Questionable - e.g. I would like to browse only through help browser (a pref?)
-	page()->setLinkDelegationPolicy(QWebPage::DelegateExternalLinks);
+	//page()->setLinkDelegationPolicy(QWebEnginePage::DelegateExternalLinks);
 	connect(this, SIGNAL(urlChanged(QUrl)), this, SLOT(catchHome(QUrl)));
-	connect(this, SIGNAL(linkClicked(QUrl)), this, SLOT(externalLinkClick(QUrl)));
+	//connect(this, SIGNAL(linkClicked(QUrl)), this, SLOT(externalLinkClick(QUrl)));
 }
 
 void ScTextBrowser::clear()
@@ -43,7 +42,7 @@ void ScTextBrowser::setSimpleText(const QString& str)
 
 void ScTextBrowser::find(const QString& txt, const int& options)
 {
-	findText(txt, QWebPage::FindFlag(options));
+	findText(txt, QWebEnginePage::FindFlag(options));
 }
 
 void ScTextBrowser::swallowContextMenus(bool b)
@@ -51,19 +50,6 @@ void ScTextBrowser::swallowContextMenus(bool b)
 	hideContextMenus=b;
 }
 
-
-QString ScTextBrowser::toPlainText()
-{
-	if(page())
-	{
-		if(page()->mainFrame())
-		{
-			return page()->mainFrame()->toPlainText();
-		}
-	}
-	return QString();
-}
-
 void ScTextBrowser::home()
 {
 	setUrl(homeUrl);
@@ -78,23 +64,25 @@ void ScTextBrowser::catchHome(QUrl url)
 	}
 }
 
+/*
 void ScTextBrowser::externalLinkClick(QUrl url)
 {
 	UrlLauncher::instance()->launchUrlExt(url, parentWidget());
 }
+*/
 
 bool ScTextBrowser::event(QEvent * e)
 {
-//	bool ret(QWebView::event(e));
+//	bool ret(QWebEngineView::event(e));
 //	qDebug()<<"ScTextBrowser::event"<<e->type()<<ret;
 //	return ret;
-	return QWebView::event(e);
+	return QWebEngineView::event(e);
 }
 
 void ScTextBrowser::contextMenuEvent(QContextMenuEvent* e)
 {
-	if (hideContextMenus)
-		page()->swallowContextMenuEvent(e);
-	else
-		QWebView::contextMenuEvent(e);
+	//if (hideContextMenus)
+	//	page()->swallowContextMenuEvent(e);
+	//else
+		QWebEngineView::contextMenuEvent(e);
 }
diff --git a/scribus/ui/sctextbrowser.h b/scribus/ui/sctextbrowser.h
index 9e49a17..38e7442 100644
--- a/scribus/ui/sctextbrowser.h
+++ b/scribus/ui/sctextbrowser.h
@@ -9,9 +9,9 @@ for which a new license (GPL+exception) is in place.
 
 #include "scribusapi.h"
 #include <QUrl>
-#include <QWebView>
+#include <QWebEngineView>
 
-class SCRIBUS_API ScTextBrowser : public QWebView
+class SCRIBUS_API ScTextBrowser : public QWebEngineView
 {
 	Q_OBJECT
 
@@ -24,7 +24,6 @@ class SCRIBUS_API ScTextBrowser : public QWebView
 		void setSimpleText(const QString& str);
 		void find(const QString& txt, const int& options = 0);
 		void swallowContextMenus(bool b);
-		QString toPlainText();
 
 	protected:
 		bool event(QEvent *e);
@@ -36,7 +35,7 @@ class SCRIBUS_API ScTextBrowser : public QWebView
 
 	private slots:
 		void catchHome(QUrl url);
-		void externalLinkClick(QUrl url);
+    //void externalLinkClick(QUrl url);
 
 };
 
