diff --git a/0001-Compile-more-files-with-enabled-exceptions-required-.patch b/0001-Compile-more-files-with-enabled-exceptions-required-.patch deleted file mode 100644 index b1c96f9..0000000 --- a/0001-Compile-more-files-with-enabled-exceptions-required-.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 1910e0409fd0b73a931f45389865c1e0a55a49e5 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Stefan=20Br=C3=BCns?= -Date: Sat, 29 Dec 2018 23:39:30 +0100 -Subject: [PATCH 1/2] Compile more files with enabled exceptions, required for - exiv2 0.27 - ---- - lib/CMakeLists.txt | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt -index d60ae47f..229eac2a 100644 ---- a/lib/CMakeLists.txt -+++ b/lib/CMakeLists.txt -@@ -224,6 +224,11 @@ kde_source_files_enable_exceptions( - exiv2imageloader.cpp - imagemetainfomodel.cpp - timeutils.cpp -+ cms/cmsprofile.cpp -+ document/abstractdocumentimpl.cpp -+ document/document.cpp -+ document/loadingdocumentimpl.cpp -+ jpegcontent.cpp - ) - - ki18n_wrap_ui(gwenviewlib_SRCS --- -2.20.1 - diff --git a/0002-Use-forward-declaration-for-Exiv2-Image-port-to-std-.patch b/0002-Use-forward-declaration-for-Exiv2-Image-port-to-std-.patch deleted file mode 100644 index 5a82564..0000000 --- a/0002-Use-forward-declaration-for-Exiv2-Image-port-to-std-.patch +++ /dev/null @@ -1,455 +0,0 @@ -From 248b358495a3e5488fed4443d0dc135fbf604302 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Stefan=20Br=C3=BCns?= -Date: Sun, 30 Dec 2018 02:46:28 +0100 -Subject: [PATCH 2/2] Use forward declaration for Exiv2::Image, port to - std::unique_ptr - -Instead of the Exiv2::Image::AutoPtr typedef just use a forward declaration -for Exiv2::Image, and use std::unique_ptr instead of std::auto_ptr. - -The forward declaration avoids pulling in Exiv2 declarations everywhere, -e.g. via document.h. - -Although it would be possible to use std::auto_ptr, unique_ptr is -preferable for two reasons: -- ownership transfer is explicit (std::move, release()/reset()) -- Exiv2 0.28 will use std::unique_ptr as well, i.e. the code is forward -compatible. ---- - lib/cms/cmsprofile.cpp | 3 +++ - lib/cms/cmsprofile.h | 8 +++++--- - lib/document/abstractdocumentimpl.cpp | 5 +++-- - lib/document/abstractdocumentimpl.h | 7 ++++++- - lib/document/document.cpp | 7 +++++-- - lib/document/document.h | 11 ++++++++--- - lib/document/document_p.h | 10 +++++++++- - lib/document/loadingdocumentimpl.cpp | 7 +++++-- - lib/exiv2imageloader.cpp | 13 ++++++------- - lib/exiv2imageloader.h | 11 ++++++++--- - lib/jpegcontent.cpp | 10 +++++----- - lib/timeutils.cpp | 8 +++++--- - tests/auto/cmsprofiletest.cpp | 4 ++-- - tests/auto/imagemetainfomodeltest.cpp | 5 ++++- - 14 files changed, 74 insertions(+), 35 deletions(-) - -diff --git a/lib/cms/cmsprofile.cpp b/lib/cms/cmsprofile.cpp -index 188b90a4..7d2b753e 100644 ---- a/lib/cms/cmsprofile.cpp -+++ b/lib/cms/cmsprofile.cpp -@@ -42,6 +42,9 @@ extern "C" { - // lcms - #include - -+// Exiv2 -+#include -+ - // X11 - #ifdef HAVE_X11 - #include -diff --git a/lib/cms/cmsprofile.h b/lib/cms/cmsprofile.h -index a2a38a87..41abe97c 100644 ---- a/lib/cms/cmsprofile.h -+++ b/lib/cms/cmsprofile.h -@@ -29,12 +29,14 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Cambridge, MA 02110-1301, USA - #include - #include - --// Exiv2 --#include -- - class QByteArray; - class QString; - -+namespace Exiv2 -+{ -+class Image; -+} -+ - typedef void* cmsHPROFILE; - - namespace Gwenview -diff --git a/lib/document/abstractdocumentimpl.cpp b/lib/document/abstractdocumentimpl.cpp -index d841ae5f..d3d0002c 100644 ---- a/lib/document/abstractdocumentimpl.cpp -+++ b/lib/document/abstractdocumentimpl.cpp -@@ -21,6 +21,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - // Self - #include "abstractdocumentimpl.h" - -+#include - // Qt - - // KDE -@@ -77,9 +78,9 @@ void AbstractDocumentImpl::setDocumentKind(MimeTypeUtils::Kind kind) - d->mDocument->setKind(kind); - } - --void AbstractDocumentImpl::setDocumentExiv2Image(Exiv2::Image::AutoPtr image) -+void AbstractDocumentImpl::setDocumentExiv2Image(std::unique_ptr image) - { -- d->mDocument->setExiv2Image(image); -+ d->mDocument->setExiv2Image(std::move(image)); - } - - void AbstractDocumentImpl::setDocumentDownSampledImage(const QImage& image, int invertedZoom) -diff --git a/lib/document/abstractdocumentimpl.h b/lib/document/abstractdocumentimpl.h -index 1f427e60..86e6bfd2 100644 ---- a/lib/document/abstractdocumentimpl.h -+++ b/lib/document/abstractdocumentimpl.h -@@ -34,6 +34,11 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - class QImage; - class QRect; - -+namespace Exiv2 -+{ -+ class Image; -+} -+ - namespace Gwenview - { - -@@ -108,7 +113,7 @@ protected: - void setDocumentImageSize(const QSize& size); - void setDocumentKind(MimeTypeUtils::Kind); - void setDocumentFormat(const QByteArray& format); -- void setDocumentExiv2Image(Exiv2::Image::AutoPtr); -+ void setDocumentExiv2Image(std::unique_ptr); - void setDocumentDownSampledImage(const QImage&, int invertedZoom); - void setDocumentCmsProfile(Cms::Profile::Ptr profile); - void setDocumentErrorString(const QString&); -diff --git a/lib/document/document.cpp b/lib/document/document.cpp -index 18756700..afa9ed03 100644 ---- a/lib/document/document.cpp -+++ b/lib/document/document.cpp -@@ -31,6 +31,9 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - #include - #include - -+// Exiv2 -+#include -+ - // Local - #include "documentjob.h" - #include "emptydocumentimpl.h" -@@ -388,9 +391,9 @@ AbstractDocumentEditor* Document::editor() - return d->mImpl->editor(); - } - --void Document::setExiv2Image(Exiv2::Image::AutoPtr image) -+void Document::setExiv2Image(std::unique_ptr image) - { -- d->mExiv2Image = image; -+ d->mExiv2Image = std::move(image); - d->mImageMetaInfoModel.setExiv2Image(d->mExiv2Image.get()); - emit metaInfoUpdated(); - } -diff --git a/lib/document/document.h b/lib/document/document.h -index c0bb454b..4b40a6e1 100644 ---- a/lib/document/document.h -+++ b/lib/document/document.h -@@ -22,8 +22,8 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - #include - --#include --#include -+// STL -+#include - - // Qt - #include -@@ -43,6 +43,11 @@ class QUndoStack; - class KJob; - class QUrl; - -+namespace Exiv2 -+{ -+ class Image; -+} -+ - namespace Gwenview - { - -@@ -235,7 +240,7 @@ private: - void setKind(MimeTypeUtils::Kind); - void setFormat(const QByteArray&); - void setSize(const QSize&); -- void setExiv2Image(Exiv2::Image::AutoPtr); -+ void setExiv2Image(std::unique_ptr); - void setDownSampledImage(const QImage&, int invertedZoom); - void switchToImpl(AbstractDocumentImpl* impl); - void setErrorString(const QString&); -diff --git a/lib/document/document_p.h b/lib/document/document_p.h -index 78e0ac6e..4de25f15 100644 ---- a/lib/document/document_p.h -+++ b/lib/document/document_p.h -@@ -21,6 +21,9 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Cambridge, MA 02110-1301, USA - #ifndef DOCUMENT_P_H - #define DOCUMENT_P_H - -+// STL -+#include -+ - // Local - #include - #include -@@ -34,6 +37,11 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Cambridge, MA 02110-1301, USA - #include - #include - -+namespace Exiv2 -+{ -+ class Image; -+} -+ - namespace Gwenview - { - -@@ -54,7 +62,7 @@ struct DocumentPrivate - QSize mSize; - QImage mImage; - QMap mDownSampledImageMap; -- Exiv2::Image::AutoPtr mExiv2Image; -+ std::unique_ptr mExiv2Image; - MimeTypeUtils::Kind mKind; - QByteArray mFormat; - ImageMetaInfoModel mImageMetaInfoModel; -diff --git a/lib/document/loadingdocumentimpl.cpp b/lib/document/loadingdocumentimpl.cpp -index 07675783..766a1831 100644 ---- a/lib/document/loadingdocumentimpl.cpp -+++ b/lib/document/loadingdocumentimpl.cpp -@@ -24,6 +24,9 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - // STL - #include - -+// Exiv2 -+#include -+ - // Qt - #include - #include -@@ -100,7 +103,7 @@ struct LoadingDocumentImplPrivate - QByteArray mData; - QByteArray mFormat; - QSize mImageSize; -- Exiv2::Image::AutoPtr mExiv2Image; -+ std::unique_ptr mExiv2Image; - std::unique_ptr mJpegContent; - QImage mImage; - Cms::Profile::Ptr mCmsProfile; -@@ -486,7 +489,7 @@ void LoadingDocumentImpl::slotMetaInfoLoaded() - - setDocumentFormat(d->mFormat); - setDocumentImageSize(d->mImageSize); -- setDocumentExiv2Image(d->mExiv2Image); -+ setDocumentExiv2Image(std::move(d->mExiv2Image)); - setDocumentCmsProfile(d->mCmsProfile); - - d->mMetaInfoLoaded = true; -diff --git a/lib/exiv2imageloader.cpp b/lib/exiv2imageloader.cpp -index f2830f81..f13dff7a 100644 ---- a/lib/exiv2imageloader.cpp -+++ b/lib/exiv2imageloader.cpp -@@ -29,8 +29,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - // KDE - - // Exiv2 --#include --#include -+#include - - // Local - -@@ -39,7 +38,7 @@ namespace Gwenview - - struct Exiv2ImageLoaderPrivate - { -- Exiv2::Image::AutoPtr mImage; -+ std::unique_ptr mImage; - QString mErrorMessage; - }; - -@@ -57,7 +56,7 @@ bool Exiv2ImageLoader::load(const QString& filePath) - { - QByteArray filePathByteArray = QFile::encodeName(filePath); - try { -- d->mImage = Exiv2::ImageFactory::open(filePathByteArray.constData()); -+ d->mImage.reset(Exiv2::ImageFactory::open(filePathByteArray.constData()).release()); - d->mImage->readMetadata(); - } catch (const Exiv2::Error& error) { - d->mErrorMessage = QString::fromUtf8(error.what()); -@@ -69,7 +68,7 @@ bool Exiv2ImageLoader::load(const QString& filePath) - bool Exiv2ImageLoader::load(const QByteArray& data) - { - try { -- d->mImage = Exiv2::ImageFactory::open((unsigned char*)data.constData(), data.size()); -+ d->mImage.reset(Exiv2::ImageFactory::open((unsigned char*)data.constData(), data.size()).release()); - d->mImage->readMetadata(); - } catch (const Exiv2::Error& error) { - d->mErrorMessage = QString::fromUtf8(error.what()); -@@ -83,9 +82,9 @@ QString Exiv2ImageLoader::errorMessage() const - return d->mErrorMessage; - } - --Exiv2::Image::AutoPtr Exiv2ImageLoader::popImage() -+std::unique_ptr Exiv2ImageLoader::popImage() - { -- return d->mImage; -+ return std::move(d->mImage); - } - - } // namespace -diff --git a/lib/exiv2imageloader.h b/lib/exiv2imageloader.h -index 57ef24d2..12a45b68 100644 ---- a/lib/exiv2imageloader.h -+++ b/lib/exiv2imageloader.h -@@ -23,13 +23,18 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - #include - -+// STL -+#include -+ - // Qt - - // KDE - - // Exiv2 --#include --#include -+namespace Exiv2 -+{ -+ class Image; -+} - - // Local - -@@ -54,7 +59,7 @@ public: - bool load(const QString&); - bool load(const QByteArray&); - QString errorMessage() const; -- Exiv2::Image::AutoPtr popImage(); -+ std::unique_ptr popImage(); - - private: - Exiv2ImageLoaderPrivate* const d; -diff --git a/lib/jpegcontent.cpp b/lib/jpegcontent.cpp -index bb810dd4..a8cf909f 100644 ---- a/lib/jpegcontent.cpp -+++ b/lib/jpegcontent.cpp -@@ -42,8 +42,7 @@ extern "C" { - #include - - // Exiv2 --#include --#include -+#include - - // Local - #include "jpegerrormanager.h" -@@ -216,12 +215,12 @@ bool JpegContent::load(const QString& path) - - bool JpegContent::loadFromData(const QByteArray& data) - { -- Exiv2::Image::AutoPtr image; -+ std::unique_ptr image; - Exiv2ImageLoader loader; - if (!loader.load(data)) { - qCritical() << "Could not load image with Exiv2, reported error:" << loader.errorMessage(); - } -- image = loader.popImage(); -+ image.reset(loader.popImage().release()); - - return loadFromData(data, image.get()); - } -@@ -603,7 +602,8 @@ bool JpegContent::save(QIODevice* device) - d->mPendingTransformation = false; - } - -- Exiv2::Image::AutoPtr image = Exiv2::ImageFactory::open((unsigned char*)d->mRawData.data(), d->mRawData.size()); -+ std::unique_ptr image; -+ image.reset(Exiv2::ImageFactory::open((unsigned char*)d->mRawData.data(), d->mRawData.size()).release()); - - // Store Exif info - image->setExifData(d->mExifData); -diff --git a/lib/timeutils.cpp b/lib/timeutils.cpp -index 9e8836a9..3c519098 100644 ---- a/lib/timeutils.cpp -+++ b/lib/timeutils.cpp -@@ -21,6 +21,9 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Cambridge, MA 02110-1301, USA - // Self - #include "timeutils.h" - -+// STL -+#include -+ - // Qt - #include - #include -@@ -30,8 +33,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Cambridge, MA 02110-1301, USA - #include - - // Exiv2 --#include --#include -+#include - - // Local - #include -@@ -92,7 +94,7 @@ struct CacheItem - if (!loader.load(path)) { - return false; - } -- Exiv2::Image::AutoPtr img = loader.popImage(); -+ std::unique_ptr img(loader.popImage().release()); - try { - Exiv2::ExifData exifData = img->exifData(); - if (exifData.empty()) { -diff --git a/tests/auto/cmsprofiletest.cpp b/tests/auto/cmsprofiletest.cpp -index 4efc441b..f4c7f9e5 100644 ---- a/tests/auto/cmsprofiletest.cpp -+++ b/tests/auto/cmsprofiletest.cpp -@@ -69,7 +69,7 @@ void CmsProfileTest::testLoadFromImageData_data() - void CmsProfileTest::testLoadFromExiv2Image() - { - QFETCH(QString, fileName); -- Exiv2::Image::AutoPtr image; -+ std::unique_ptr image; - { - QByteArray data; - QString path = pathForTestFile(fileName); -@@ -80,7 +80,7 @@ void CmsProfileTest::testLoadFromExiv2Image() - - Exiv2ImageLoader loader; - QVERIFY(loader.load(data)); -- image = loader.popImage(); -+ image.reset(loader.popImage().release()); - } - Cms::Profile::Ptr ptr = Cms::Profile::loadFromExiv2Image(image.get()); - QVERIFY(!ptr.isNull()); -diff --git a/tests/auto/imagemetainfomodeltest.cpp b/tests/auto/imagemetainfomodeltest.cpp -index e3ec8d30..2e569dba 100644 ---- a/tests/auto/imagemetainfomodeltest.cpp -+++ b/tests/auto/imagemetainfomodeltest.cpp -@@ -17,6 +17,9 @@ along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - */ -+ -+#include -+ - // Qt - - // KDE -@@ -46,7 +49,7 @@ void ImageMetaInfoModelTest::testCatchExiv2Errors() - data = file.readAll(); - } - -- Exiv2::Image::AutoPtr image; -+ std::unique_ptr image; - { - Exiv2ImageLoader loader; - QVERIFY(loader.load(data)); --- -2.20.1 - diff --git a/gwenview-18.12.3.tar.xz b/gwenview-18.12.3.tar.xz deleted file mode 100644 index adafa5e..0000000 --- a/gwenview-18.12.3.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0b4ff869fc09140e258e894f5169fc6c96f1126891b8ed1a391d4624d6ab0c35 -size 5714316 diff --git a/gwenview-19.04.0.tar.xz b/gwenview-19.04.0.tar.xz new file mode 100644 index 0000000..8406325 --- /dev/null +++ b/gwenview-19.04.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7d422bddf031fa9d5a23459c65ea6dbb5919e964cc194178a864ee98912b46d +size 5717548 diff --git a/gwenview5.changes b/gwenview5.changes index 3963534..a10c9f2 100644 --- a/gwenview5.changes +++ b/gwenview5.changes @@ -1,3 +1,62 @@ +------------------------------------------------------------------- +Sat Apr 20 06:51:53 UTC 2019 - lbeltrame@kde.org + +- Update to 19.04.0 + * New feature release + * For more details please see: + * https://www.kde.org/announcements/announce-applications-19.04.0.php +- Changes since 19.03.90: + * Add HiDPI support for thumbnails +- Dropped patches, now upstream: + * 0001-Add-HiDPI-support-for-thumbnails.patch + +------------------------------------------------------------------- +Tue Apr 09 20:54:38 UTC 2019 - lbeltrame@kde.org + +- Update to 19.03.90 + * New feature release + * For more details please see: + * https://kde.org/announcements/announce-applications-19.04-rc.php +- Changes since 19.03.80: + * HiDPI Support for Gwenview (kde#373178) + * Fix -Wreturn-type warning for jpeg version check +- Add upstream patch for HiDPI support in thumbnails (kde#373178): + * 0001-Add-HiDPI-support-for-thumbnails.patch + +------------------------------------------------------------------- +Wed Mar 27 06:40:56 UTC 2019 - lbeltrame@kde.org + +- Update to 19.03.80 + * New feature release + * For more details please see: + * https://kde.org/announcements/announce-applications-19.04-beta.php +- Changes since 18.12.3: + * Fix compilation in some systems + * Touch support for Gwenview + * Deprecated-- + * Remove deprecated method + * [MainWindow] Navigate through mouse forward/back buttons + * Compile tests files with enabled exceptions, required for exiv2 0.27 + * Allow Gwenview to be able to open .kra (Krita) files + * Set the same image mime types in all desktop files + * Add mime types for raw image formats to desktop file + * Create shortcut to focus navigator bar + * Use semantically correct restoration icon + * Use user-trash icon for Trash action (kde#391078) + * Port to new connect api + * Use Ctrl+i to trigger a name filter, which matches Dolphin (kde#386531) + * Ignore files + * Const'ify, add const'ref found by clazy + * Bump max thumbnail size to 512px + * Compile more files with enabled exceptions, required for exiv2 0.27 + * Use forward declaration for Exiv2::Image, port to std::unique_ptr + * Use FlowLayout for Crop toolbar + * Fix mem leak found by asan + * [ThumbnailView] Fix mouse buttons handling +- Dropped patches, now upstream: + * 0001-Compile-more-files-with-enabled-exceptions-required-.patch + * 0002-Use-forward-declaration-for-Exiv2-Image-port-to-std-.patch + ------------------------------------------------------------------- Sat Mar 09 08:03:12 UTC 2019 - lbeltrame@kde.org diff --git a/gwenview5.spec b/gwenview5.spec index e4a3858..843c5a9 100644 --- a/gwenview5.spec +++ b/gwenview5.spec @@ -21,17 +21,13 @@ %{!?_kapp_version: %define _kapp_version %(echo %{version}| awk -F. '{print $1"."$2}')} %bcond_without lang Name: gwenview5 -Version: 18.12.3 +Version: 19.04.0 Release: 0 Summary: Image Viewer by KDE License: GPL-2.0-or-later Group: Productivity/Graphics/Viewers URL: http://www.kde.org Source: gwenview-%{version}.tar.xz -# PATCH-FIX-UPSTREAM - D17873 -Patch0: 0001-Compile-more-files-with-enabled-exceptions-required-.patch -# PATCH-FIX-UPSTREAM - D17872 -Patch1: 0002-Use-forward-declaration-for-Exiv2-Image-port-to-std-.patch BuildRequires: baloo5-devel BuildRequires: cfitsio-devel BuildRequires: extra-cmake-modules >= %{kf5_version} @@ -85,8 +81,6 @@ hierarchies. %prep %setup -q -n gwenview-%{version} -%patch0 -p1 -%patch1 -p1 %build %if 0%{?suse_version} < 1330