summaryrefslogtreecommitdiff
path: root/kde-apps/kdenlive/files
diff options
context:
space:
mode:
Diffstat (limited to 'kde-apps/kdenlive/files')
-rw-r--r--kde-apps/kdenlive/files/kdenlive-19.08.3-qt-5.14-1.patch203
-rw-r--r--kde-apps/kdenlive/files/kdenlive-19.08.3-qt-5.14-2.patch32
-rw-r--r--kde-apps/kdenlive/files/kdenlive-19.12.3-qt-5.14-crash-on-close-1.patch69
-rw-r--r--kde-apps/kdenlive/files/kdenlive-19.12.3-qt-5.14-crash-on-close-2.patch62
4 files changed, 131 insertions, 235 deletions
diff --git a/kde-apps/kdenlive/files/kdenlive-19.08.3-qt-5.14-1.patch b/kde-apps/kdenlive/files/kdenlive-19.08.3-qt-5.14-1.patch
deleted file mode 100644
index 76822413f107..000000000000
--- a/kde-apps/kdenlive/files/kdenlive-19.08.3-qt-5.14-1.patch
+++ /dev/null
@@ -1,203 +0,0 @@
-From 3c287e282f84231f1e71482464e9593d7de27912 Mon Sep 17 00:00:00 2001
-From: Laurent Montel <montel@kde.org>
-Date: Fri, 27 Sep 2019 08:59:21 +0200
-Subject: Port some deprecated methods
-
----
- renderer/renderjob.cpp | 3 ++-
- src/assets/keyframes/view/keyframeview.cpp | 4 ++--
- src/bin/bin.cpp | 2 +-
- src/dvdwizard/dvdwizardvob.cpp | 2 +-
- src/lib/audio/audioCorrelation.cpp | 3 ++-
- src/lib/audio/fftCorrelation.cpp | 4 ++--
- src/lib/qtimerWithTime.cpp | 2 +-
- src/lib/qtimerWithTime.h | 6 +++---
- src/project/projectmanager.h | 3 ++-
- src/titler/unicodedialog.cpp | 2 +-
- 10 files changed, 17 insertions(+), 14 deletions(-)
-
-diff --git a/renderer/renderjob.cpp b/renderer/renderjob.cpp
-index 2214b37..c164bf0 100644
---- a/renderer/renderjob.cpp
-+++ b/renderer/renderjob.cpp
-@@ -23,6 +23,7 @@
- #include <QStringList>
- #include <QThread>
- #include <QtDBus>
-+#include <QElapsedTimer>
- #include <utility>
- // Can't believe I need to do this to sleep.
- class SleepThread : QThread
-@@ -165,7 +166,7 @@ void RenderJob::start()
- qWarning() << "No org.kde.JobViewServer registered, trying to start kuiserver";
- if (QProcess::startDetached(QStringLiteral("kuiserver"))) {
- // Give it a couple of seconds to start
-- QTime t;
-+ QElapsedTimer t;
- t.start();
- while (!interface->isServiceRegistered(QStringLiteral("org.kde.JobViewServer")) && t.elapsed() < 3000) {
- SleepThread::msleep(100); // Sleep 100 ms
-diff --git a/src/assets/keyframes/view/keyframeview.cpp b/src/assets/keyframes/view/keyframeview.cpp
-index 7e63141..867408f 100644
---- a/src/assets/keyframes/view/keyframeview.cpp
-+++ b/src/assets/keyframes/view/keyframeview.cpp
-@@ -267,14 +267,14 @@ void KeyframeView::mouseDoubleClickEvent(QMouseEvent *event)
- void KeyframeView::wheelEvent(QWheelEvent *event)
- {
- if (event->modifiers() & Qt::AltModifier) {
-- if (event->delta() > 0) {
-+ if (event->angleDelta().y() > 0) {
- slotGoToPrev();
- } else {
- slotGoToNext();
- }
- return;
- }
-- int change = event->delta() > 0 ? -1 : 1;
-+ int change = event->angleDelta().y() > 0 ? -1 : 1;
- int pos = qBound(0, m_position + change, m_duration - 1);
- emit seekToPos(pos);
- }
-diff --git a/src/bin/bin.cpp b/src/bin/bin.cpp
-index 13c9b2a..c1127d0 100644
---- a/src/bin/bin.cpp
-+++ b/src/bin/bin.cpp
-@@ -222,7 +222,7 @@ public:
- // Draw usage counter
- int usage = index.data(AbstractProjectItem::UsageCount).toInt();
- if (usage > 0) {
-- subText.append(QString().sprintf(" [%d]", usage));
-+ subText.append(QString::asprintf(" [%d]", usage));
- }
- painter->drawText(r2, Qt::AlignLeft | Qt::AlignTop, subText, &bounding);
-
-diff --git a/src/dvdwizard/dvdwizardvob.cpp b/src/dvdwizard/dvdwizardvob.cpp
-index 337d046..f5c89d6 100644
---- a/src/dvdwizard/dvdwizardvob.cpp
-+++ b/src/dvdwizard/dvdwizardvob.cpp
-@@ -86,7 +86,7 @@ DvdWizardVob::DvdWizardVob(QWidget *parent)
- m_view.button_down->setIcon(QIcon::fromTheme(QStringLiteral("go-down")));
- m_vobList = new DvdTreeWidget(this);
- auto *lay1 = new QVBoxLayout;
-- lay1->setMargin(0);
-+ lay1->setContentsMargins(0, 0, 0, 0);
- lay1->addWidget(m_vobList);
- m_view.list_frame->setLayout(lay1);
- m_vobList->setColumnCount(3);
-diff --git a/src/lib/audio/audioCorrelation.cpp b/src/lib/audio/audioCorrelation.cpp
-index 706b48a..66552fa 100644
---- a/src/lib/audio/audioCorrelation.cpp
-+++ b/src/lib/audio/audioCorrelation.cpp
-@@ -14,6 +14,7 @@ the Free Software Foundation, either version 3 of the License, or
- #include "kdenlive_debug.h"
- #include "klocalizedstring.h"
- #include <QTime>
-+#include <QElapsedTimer>
- #include <cmath>
- #include <iostream>
-
-@@ -128,7 +129,7 @@ void AudioCorrelation::correlate(const qint64 *envMain, size_t sizeMain, const q
-
- */
-
-- QTime t;
-+ QElapsedTimer t;
- t.start();
- for (int shift = -(int)sizeSub; shift <= (int)sizeMain; ++shift) {
-
-diff --git a/src/lib/audio/fftCorrelation.cpp b/src/lib/audio/fftCorrelation.cpp
-index c8119e9..6ed61c5 100644
---- a/src/lib/audio/fftCorrelation.cpp
-+++ b/src/lib/audio/fftCorrelation.cpp
-@@ -9,7 +9,7 @@ the Free Software Foundation, either version 3 of the License, or
- */
-
- #include "fftCorrelation.h"
--
-+#include <QElapsedTimer>
- extern "C" {
- #include "../external/kiss_fft/tools/kiss_fftr.h"
- }
-@@ -35,7 +35,7 @@ void FFTCorrelation::correlate(const qint64 *left, const size_t leftSize, const
-
- void FFTCorrelation::correlate(const qint64 *left, const size_t leftSize, const qint64 *right, const size_t rightSize, float *out_correlated)
- {
-- QTime t;
-+ QElapsedTimer t;
- t.start();
-
- auto *leftF = new float[leftSize];
-diff --git a/src/lib/qtimerWithTime.cpp b/src/lib/qtimerWithTime.cpp
-index 1d8b46f..9c1b362 100644
---- a/src/lib/qtimerWithTime.cpp
-+++ b/src/lib/qtimerWithTime.cpp
-@@ -25,7 +25,7 @@ void QTimerWithTime::start(int msec)
- m_time.start();
- }
-
--int QTimerWithTime::elapsed() const
-+qint64 QTimerWithTime::elapsed() const
- {
- return m_time.elapsed();
- }
-diff --git a/src/lib/qtimerWithTime.h b/src/lib/qtimerWithTime.h
-index ab3e1c7..93f0d53 100644
---- a/src/lib/qtimerWithTime.h
-+++ b/src/lib/qtimerWithTime.h
-@@ -20,7 +20,7 @@
- #ifndef QTIMERWITHTIME_H
- #define QTIMERWITHTIME_H
-
--#include <QTime>
-+#include <QElapsedTimer>
- #include <QTimer>
-
- class QTimerWithTime : public QTimer
-@@ -28,9 +28,9 @@ class QTimerWithTime : public QTimer
- Q_OBJECT
- public:
- virtual void start(int msec);
-- int elapsed() const;
-+ qint64 elapsed() const;
-
- private:
-- QTime m_time;
-+ QElapsedTimer m_time;
- };
- #endif
-diff --git a/src/project/projectmanager.h b/src/project/projectmanager.h
-index a8a5fbd..d91314c 100644
---- a/src/project/projectmanager.h
-+++ b/src/project/projectmanager.h
-@@ -18,6 +18,7 @@ the Free Software Foundation, either version 3 of the License, or
- #include <QTime>
- #include <QTimer>
- #include <QUrl>
-+#include <QElapsedTimer>
-
- #include "timeline2/model/timelineitemmodel.hpp"
-
-@@ -182,7 +183,7 @@ private:
-
- KdenliveDoc *m_project{nullptr};
- std::shared_ptr<TimelineItemModel> m_mainTimelineModel;
-- QTime m_lastSave;
-+ QElapsedTimer m_lastSave;
- QTimer m_autoSaveTimer;
- QUrl m_startUrl;
- QString m_loadClipsOnOpen;
-diff --git a/src/titler/unicodedialog.cpp b/src/titler/unicodedialog.cpp
-index d6b7382..f449aa2 100644
---- a/src/titler/unicodedialog.cpp
-+++ b/src/titler/unicodedialog.cpp
-@@ -409,7 +409,7 @@ void UnicodeWidget::slotPrevUnicode()
- void UnicodeWidget::wheelEvent(QWheelEvent *event)
- {
- if (frame->underMouse()) {
-- if (event->delta() > 0) {
-+ if (event->angleDelta().y() > 0) {
- slotNextUnicode();
- } else {
- slotPrevUnicode();
---
-cgit v1.1
diff --git a/kde-apps/kdenlive/files/kdenlive-19.08.3-qt-5.14-2.patch b/kde-apps/kdenlive/files/kdenlive-19.08.3-qt-5.14-2.patch
deleted file mode 100644
index 13d2fd39d4bc..000000000000
--- a/kde-apps/kdenlive/files/kdenlive-19.08.3-qt-5.14-2.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From caf88fd638f67b505aa28521b6abda430f03e7c8 Mon Sep 17 00:00:00 2001
-From: Heiko Becker <heirecka@exherbo.org>
-Date: Thu, 31 Oct 2019 20:33:54 +0100
-Subject: [PATCH] Fix build with Qt 5.14
-
-std::hash<QString> is already specialized in Qt 5.14 [1], so we need
-to avoid redifining it with this version.
-
-[1] 4469e36d7203a55a4e158a50f0e9effc3f2fa3c2 in qtbase.git
----
- src/definitions.h | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/src/definitions.h b/src/definitions.h
-index a55ec8df7..d2f67815b 100644
---- a/src/definitions.h
-+++ b/src/definitions.h
-@@ -252,10 +252,12 @@ QDebug operator<<(QDebug qd, const ItemInfo &info);
-
- // we provide hash function for qstring and QPersistentModelIndex
- namespace std {
-+#if (QT_VERSION < QT_VERSION_CHECK(5, 14, 0))
- template <> struct hash<QString>
- {
- std::size_t operator()(const QString &k) const { return qHash(k); }
- };
-+#endif
- template <> struct hash<QPersistentModelIndex>
- {
- std::size_t operator()(const QPersistentModelIndex &k) const { return qHash(k); }
---
-2.17.1
diff --git a/kde-apps/kdenlive/files/kdenlive-19.12.3-qt-5.14-crash-on-close-1.patch b/kde-apps/kdenlive/files/kdenlive-19.12.3-qt-5.14-crash-on-close-1.patch
new file mode 100644
index 000000000000..421452dc6488
--- /dev/null
+++ b/kde-apps/kdenlive/files/kdenlive-19.12.3-qt-5.14-crash-on-close-1.patch
@@ -0,0 +1,69 @@
+From 78f8880a3d9c1e37548b5146d9f61f05ab7032ea Mon Sep 17 00:00:00 2001
+From: Jean-Baptiste Mardelle <jb@kdenlive.org>
+Date: Fri, 31 Jan 2020 13:26:25 +0100
+Subject: Fix crash on exit
+
+---
+ src/effects/effectlist/view/effectlistwidget.cpp | 1 -
+ src/timeline2/view/timelinetabs.cpp | 6 ++++++
+ src/timeline2/view/timelinetabs.hpp | 2 +-
+ src/transitions/transitionlist/view/transitionlistwidget.cpp | 1 -
+ 4 files changed, 7 insertions(+), 3 deletions(-)
+
+diff --git a/src/effects/effectlist/view/effectlistwidget.cpp b/src/effects/effectlist/view/effectlistwidget.cpp
+index c734e15..66b9a94 100644
+--- a/src/effects/effectlist/view/effectlistwidget.cpp
++++ b/src/effects/effectlist/view/effectlistwidget.cpp
+@@ -60,7 +60,6 @@ void EffectListWidget::updateFavorite(const QModelIndex &index)
+
+ EffectListWidget::~EffectListWidget()
+ {
+- delete m_proxy;
+ qDebug() << " - - -Deleting effect list widget";
+ }
+
+diff --git a/src/timeline2/view/timelinetabs.cpp b/src/timeline2/view/timelinetabs.cpp
+index 74bb10b..9a72729 100644
+--- a/src/timeline2/view/timelinetabs.cpp
++++ b/src/timeline2/view/timelinetabs.cpp
+@@ -57,6 +57,12 @@ TimelineTabs::TimelineTabs(QWidget *parent)
+ connect(pCore->monitorManager()->projectMonitor(), &Monitor::addEffect, m_mainTimeline->controller(), &TimelineController::addEffectToCurrentClip);
+ }
+
++TimelineTabs::~TimelineTabs()
++{
++ // clear source
++ m_mainTimeline->setSource(QUrl());
++}
++
+ TimelineWidget *TimelineTabs::getMainTimeline() const
+ {
+ return m_mainTimeline;
+diff --git a/src/timeline2/view/timelinetabs.hpp b/src/timeline2/view/timelinetabs.hpp
+index aba3e23..977af13 100644
+--- a/src/timeline2/view/timelinetabs.hpp
++++ b/src/timeline2/view/timelinetabs.hpp
+@@ -49,7 +49,7 @@ class TimelineTabs : public QTabWidget
+ public:
+ /* Construct the tabs as well as the widget for the main timeline */
+ TimelineTabs(QWidget *parent);
+-
++ virtual ~TimelineTabs();
+ /* @brief Returns a pointer to the main timeline */
+ TimelineWidget *getMainTimeline() const;
+
+diff --git a/src/transitions/transitionlist/view/transitionlistwidget.cpp b/src/transitions/transitionlist/view/transitionlistwidget.cpp
+index 309de55..afd122f 100644
+--- a/src/transitions/transitionlist/view/transitionlistwidget.cpp
++++ b/src/transitions/transitionlist/view/transitionlistwidget.cpp
+@@ -53,7 +53,6 @@ TransitionListWidget::TransitionListWidget(QWidget *parent)
+
+ TransitionListWidget::~TransitionListWidget()
+ {
+- delete m_proxy;
+ qDebug() << " - - -Deleting transition list widget";
+ }
+
+--
+cgit v1.1
+
diff --git a/kde-apps/kdenlive/files/kdenlive-19.12.3-qt-5.14-crash-on-close-2.patch b/kde-apps/kdenlive/files/kdenlive-19.12.3-qt-5.14-crash-on-close-2.patch
new file mode 100644
index 000000000000..3af886f68ddb
--- /dev/null
+++ b/kde-apps/kdenlive/files/kdenlive-19.12.3-qt-5.14-crash-on-close-2.patch
@@ -0,0 +1,62 @@
+From 936307aceca3619f2b1d1e2f12d21ee4e8608cd6 Mon Sep 17 00:00:00 2001
+From: Jean-Baptiste Mardelle <jb@kdenlive.org>
+Date: Thu, 5 Mar 2020 08:13:14 +0100
+Subject: [PATCH] Fix crash on close. Fixes #571
+
+---
+ src/core.cpp | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/src/core.cpp b/src/core.cpp
+index 7c590a3f2..a48e1602f 100644
+--- a/src/core.cpp
++++ b/src/core.cpp
+@@ -120,11 +120,11 @@ void Core::build(bool isAppImage, const QString &MltPath)
+
+ void Core::initGUI(const QUrl &Url, const QString &clipsToLoad)
+ {
+- m_guiConstructed = true;
+ m_profile = KdenliveSettings::default_profile();
+ m_currentProfile = m_profile;
+ profileChanged();
+ m_mainWindow = new MainWindow();
++ m_guiConstructed = true;
+ connect(this, &Core::showConfigDialog, m_mainWindow, &MainWindow::slotPreferences);
+
+ // load default profile and ask user to select one if not found.
+@@ -658,13 +658,13 @@ std::shared_ptr<ProjectItemModel> Core::projectItemModel()
+
+ void Core::invalidateRange(QSize range)
+ {
+- if (!m_mainWindow || m_mainWindow->getCurrentTimeline()->loading) return;
++ if (!m_guiConstructed || m_mainWindow->getCurrentTimeline()->loading) return;
+ m_mainWindow->getCurrentTimeline()->controller()->invalidateZone(range.width(), range.height());
+ }
+
+ void Core::invalidateItem(ObjectId itemId)
+ {
+- if (!m_mainWindow || !m_mainWindow->getCurrentTimeline() || m_mainWindow->getCurrentTimeline()->loading) return;
++ if (!m_guiConstructed || !m_mainWindow->getCurrentTimeline() || m_mainWindow->getCurrentTimeline()->loading) return;
+ switch (itemId.first) {
+ case ObjectType::TimelineClip:
+ case ObjectType::TimelineComposition:
+@@ -692,14 +692,14 @@ double Core::getClipSpeed(int id) const
+
+ void Core::updateItemKeyframes(ObjectId id)
+ {
+- if (id.first == ObjectType::TimelineClip && m_mainWindow) {
++ if (id.first == ObjectType::TimelineClip && m_guiConstructed) {
+ m_mainWindow->getCurrentTimeline()->controller()->updateClip(id.second, {TimelineModel::KeyframesRole});
+ }
+ }
+
+ void Core::updateItemModel(ObjectId id, const QString &service)
+ {
+- if (m_mainWindow && id.first == ObjectType::TimelineClip && !m_mainWindow->getCurrentTimeline()->loading && service.startsWith(QLatin1String("fade"))) {
++ if (m_guiConstructed && id.first == ObjectType::TimelineClip && !m_mainWindow->getCurrentTimeline()->loading && service.startsWith(QLatin1String("fade"))) {
+ bool startFade = service == QLatin1String("fadein") || service == QLatin1String("fade_from_black");
+ m_mainWindow->getCurrentTimeline()->controller()->updateClip(id.second, {startFade ? TimelineModel::FadeInRole : TimelineModel::FadeOutRole});
+ }
+--
+2.25.1
+