summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'kde-apps/messagelib/files/messagelib-18.12.3-qtwebengine-5.12.3.patch')
-rw-r--r--kde-apps/messagelib/files/messagelib-18.12.3-qtwebengine-5.12.3.patch172
1 files changed, 0 insertions, 172 deletions
diff --git a/kde-apps/messagelib/files/messagelib-18.12.3-qtwebengine-5.12.3.patch b/kde-apps/messagelib/files/messagelib-18.12.3-qtwebengine-5.12.3.patch
deleted file mode 100644
index 3fdc1527951a..000000000000
--- a/kde-apps/messagelib/files/messagelib-18.12.3-qtwebengine-5.12.3.patch
+++ /dev/null
@@ -1,172 +0,0 @@
-From 9f0ce086c6a4e487cee1f01acb15290ebff19ac3 Mon Sep 17 00:00:00 2001
-From: Jonathan Marten <jjm@keelhaul.me.uk>
-Date: Tue, 12 Mar 2019 08:47:43 +0000
-Subject: Move management of QWebEngineProfile to WebEnginePage
-
-To avoid a crash on KMail quit or viewer window close, caused by the
-MailWebEnginePage being deleted while its QWebEngineProfile is still
-active. Simplified management of the profile by handling its creation
-and deletion within WebEnginePage.
-
-Deprecate the 2-argument WebEnginePage constructor which allows an
-already allocated profile to be used. This constructor is used by
-Akregator which specifies the global profile; it will be changed to
-use a private profile instead.
-
-Differential Revision: https://phabricator.kde.org/D19559
----
- .../src/viewer/webengine/mailwebenginepage.cpp | 10 -------
- .../src/viewer/webengine/mailwebenginepage.h | 3 +-
- .../src/viewer/webengine/mailwebengineview.cpp | 3 +-
- webengineviewer/src/webenginepage.cpp | 22 ++++++++++----
- webengineviewer/src/webenginepage.h | 35 ++++++++++++++++++++--
- 5 files changed, 52 insertions(+), 21 deletions(-)
-
-diff --git a/messageviewer/src/viewer/webengine/mailwebenginepage.cpp b/messageviewer/src/viewer/webengine/mailwebenginepage.cpp
-index cd91494..f3790b9 100644
---- a/messageviewer/src/viewer/webengine/mailwebenginepage.cpp
-+++ b/messageviewer/src/viewer/webengine/mailwebenginepage.cpp
-@@ -29,16 +29,6 @@ MailWebEnginePage::MailWebEnginePage(QObject *parent)
- initialize();
- }
-
--MailWebEnginePage::MailWebEnginePage(QWebEngineProfile *profile, QObject *parent)
-- : WebEngineViewer::WebEnginePage(profile, parent)
--{
-- initialize();
--}
--
--MailWebEnginePage::~MailWebEnginePage()
--{
--}
--
- void MailWebEnginePage::initialize()
- {
- settings()->setAttribute(QWebEngineSettings::JavascriptEnabled, false);
-diff --git a/messageviewer/src/viewer/webengine/mailwebenginepage.h b/messageviewer/src/viewer/webengine/mailwebenginepage.h
-index 7f8e6eb..d581efd 100644
---- a/messageviewer/src/viewer/webengine/mailwebenginepage.h
-+++ b/messageviewer/src/viewer/webengine/mailwebenginepage.h
-@@ -28,8 +28,7 @@ class MESSAGEVIEWER_EXPORT MailWebEnginePage : public WebEngineViewer::WebEngine
- Q_OBJECT
- public:
- explicit MailWebEnginePage(QObject *parent = nullptr);
-- explicit MailWebEnginePage(QWebEngineProfile *profile, QObject *parent = nullptr);
-- ~MailWebEnginePage();
-+ virtual ~MailWebEnginePage() = default;
-
- void setPrintElementBackground(bool printElementBackground);
-
-diff --git a/messageviewer/src/viewer/webengine/mailwebengineview.cpp b/messageviewer/src/viewer/webengine/mailwebengineview.cpp
-index 0685a8d..09224cf 100644
---- a/messageviewer/src/viewer/webengine/mailwebengineview.cpp
-+++ b/messageviewer/src/viewer/webengine/mailwebengineview.cpp
-@@ -34,7 +34,6 @@
- #include <QContextMenuEvent>
- #include <WebEngineViewer/WebHitTest>
-
--#include <QWebEngineProfile>
- #include <QPrinter>
-
- #include <WebEngineViewer/WebHitTestResult>
-@@ -81,7 +80,7 @@ MailWebEngineView::MailWebEngineView(KActionCollection *ac, QWidget *parent)
- : WebEngineViewer::WebEngineView(parent)
- , d(new MessageViewer::MailWebEngineViewPrivate)
- {
-- d->mPageEngine = new MailWebEnginePage(new QWebEngineProfile(this), this);
-+ d->mPageEngine = new MailWebEnginePage(this);
- setPage(d->mPageEngine);
- d->mWebViewAccessKey = new WebEngineViewer::WebEngineAccessKey(this, this);
- d->mWebViewAccessKey->setActionCollection(ac);
-diff --git a/webengineviewer/src/webenginepage.cpp b/webengineviewer/src/webenginepage.cpp
-index 447ac26..2fcb6c2 100644
---- a/webengineviewer/src/webenginepage.cpp
-+++ b/webengineviewer/src/webenginepage.cpp
-@@ -33,8 +33,24 @@
- using namespace WebEngineViewer;
-
- WebEnginePage::WebEnginePage(QObject *parent)
-- : QWebEnginePage(parent)
-+ : QWebEnginePage(new QWebEngineProfile, parent)
- {
-+ // Create a private (off the record) QWebEngineProfile here to isolate the
-+ // browsing settings, and adopt it as a child so that it will be deleted
-+ // when we are destroyed. The profile must remain active for as long as
-+ // any QWebEnginePage's belonging to it exist, see the API documentation
-+ // of QWebEnginePage::QWebEnginePage(QWebEngineProfile *, QObject *).
-+ // Deleting it as our child on destruction is safe.
-+ //
-+ // Do not try to save a line of code by setting the parent on construction:
-+ //
-+ // WebEnginePage::WebEnginePage(QObject *parent)
-+ // : QWebEnginePage(new QWebEngineProfile(this), parent)
-+ //
-+ // because the QWebEngineProfile constructor will call out to the QWebEnginePage
-+ // and crash because the QWebEnginePage is not fully constructed yet.
-+ profile()->setParent(this);
-+
- init();
- }
-
-@@ -44,10 +60,6 @@ WebEnginePage::WebEnginePage(QWebEngineProfile *profile, QObject *parent)
- init();
- }
-
--WebEnginePage::~WebEnginePage()
--{
--}
--
- void WebEnginePage::init()
- {
- connect(profile(), &QWebEngineProfile::downloadRequested, this, &WebEnginePage::saveHtml);
-diff --git a/webengineviewer/src/webenginepage.h b/webengineviewer/src/webenginepage.h
-index be38368..95c7c76 100644
---- a/webengineviewer/src/webenginepage.h
-+++ b/webengineviewer/src/webenginepage.h
-@@ -31,10 +31,41 @@ class WEBENGINEVIEWER_EXPORT WebEnginePage : public QWebEnginePage
- {
- Q_OBJECT
- public:
-+ /**
-+ * Constructor.
-+ *
-+ * A private QWebEngineProfile, only applying to this QWebEnginePage,
-+ * will be created to implement browser settings. It can be accessed via
-+ * @c profile(), but it should not be shared or reused unless care is
-+ * taken that the profile is not deleted until all of the QWebEnginePage's
-+ * belonging to it are deleted first.
-+ *
-+ * @param parent The parent object
-+ **/
- explicit WebEnginePage(QObject *parent = nullptr);
-- explicit WebEnginePage(QWebEngineProfile *profile, QObject *parent = nullptr);
-
-- ~WebEnginePage() override;
-+ /**
-+ * Constructor.
-+ *
-+ * The specified QWebEngineProfile will be used. See the description of
-+ * @c WebEnginePage(QObject *) and the API documentation of QWebEnginePage
-+ * for caution regarding the lifetime of the profile.
-+ *
-+ * @param profile The profile to be used
-+ * @param parent The parent object
-+ * @deprecated Use the single argument constructor, which creates and uses
-+ * a private profile.
-+ **/
-+#ifndef WEBENGINEVIEWER_NO_DEPRECATED
-+ explicit WEBENGINEVIEWER_DEPRECATED WebEnginePage(QWebEngineProfile *profile, QObject *parent = nullptr);
-+#endif
-+
-+ /**
-+ * Destructor. If there is a private QWebEngineProfile then it will also
-+ * be destroyed.
-+ **/
-+ virtual ~WebEnginePage() override = default;
-+
- WebEngineViewer::WebHitTest *hitTestContent(const QPoint &pos);
-
- void saveHtml(QWebEngineDownloadItem *download);
---
-cgit v1.1
-