Hello community, here is the log from the commit of package marble for openSUSE:Factory checked in at 2017-07-11 08:35:02 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/marble (Old) and /work/SRC/openSUSE:Factory/.marble.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "marble" Tue Jul 11 08:35:02 2017 rev:91 rq:508768 version:17.04.2 Changes: -------- --- /work/SRC/openSUSE:Factory/marble/marble.changes 2017-06-12 15:24:54.148087667 +0200 +++ /work/SRC/openSUSE:Factory/.marble.new/marble.changes 2017-07-11 08:35:03.297498291 +0200 @@ -1,0 +2,18 @@ +Thu Jul 6 09:23:33 UTC 2017 - [email protected] + +- Drop Fix-utm-enum-value.patch +- Add Add-fallback-InputHandler.patch from upstream instead to fix + the crash (boo#1044747, kde#381872) + +------------------------------------------------------------------- +Tue Jul 4 11:37:39 UTC 2017 - [email protected] + +- Add Fix-utm-enum-value.patch and reverse-apply it, this upstream + commit causes a crash when adding bookmarks if switched to UTM + view angles because the necessary handler functions for the + dialog are not implemented yet (boo#1044747, kde#381872) +- Add Fix-plain-map-and-political-map-showing-no-content.patch to + fix the plain map and the political map being not displayed at + all (kde#379297) + +------------------------------------------------------------------- New: ---- Add-fallback-InputHandler.patch Fix-plain-map-and-political-map-showing-no-content.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ marble.spec ++++++ --- /var/tmp/diff_new_pack.9AFHnO/_old 2017-07-11 08:35:04.933267510 +0200 +++ /var/tmp/diff_new_pack.9AFHnO/_new 2017-07-11 08:35:04.933267510 +0200 @@ -31,6 +31,10 @@ Group: Amusements/Teaching/Other Url: http://edu.kde.org Source0: marble-%{version}.tar.xz +# PATCH-FIX-UPSTREAM Add-fallback-InputHandler.patch boo#1044747, kde#381872 -- fix crash when opening the "Edit Bookmark" dialog if you set the View Angle to UTM +Patch1: Add-fallback-InputHandler.patch +# PATCH-FIX-UPSTREAM Fix-plain-map-and-political-map-showing-no-content.patch kde#379297 -- fix display of the plain map and the political map +Patch2: Fix-plain-map-and-political-map-showing-no-content.patch BuildRequires: extra-cmake-modules BuildRequires: fdupes BuildRequires: gpsd-devel @@ -156,6 +160,8 @@ %prep %setup -q -n marble-%{version} +%patch1 -p1 +%patch2 -p1 %build export SUSE_ASNEEDED=0 ++++++ Add-fallback-InputHandler.patch ++++++ >From c2daba4216d83b90599d4fbb405e1a6ba633c9a8 Mon Sep 17 00:00:00 2001 From: Mohammed Nafees <[email protected]> Date: Thu, 6 Jul 2017 14:13:44 +0530 Subject: Add fallback InputHandler to prevent crash when adding bookmark with UTM view angle BUG: 381872 --- src/lib/marble/LatLonEdit.cpp | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/src/lib/marble/LatLonEdit.cpp b/src/lib/marble/LatLonEdit.cpp index 0d64c59..c000cb6 100644 --- a/src/lib/marble/LatLonEdit.cpp +++ b/src/lib/marble/LatLonEdit.cpp @@ -562,21 +562,23 @@ void LatLonEdit::setNotation(GeoDataCoordinates::Notation notation) d->m_inputHandler = new DMInputHandler(d); break; case GeoDataCoordinates::UTM: - /** @todo implement */ + /** @todo see below */ break; case GeoDataCoordinates::Astro: - /** @todo implement */ + /** @todo see below */ break; } - if (d->m_inputHandler) { - d->m_notation = notation; - d->m_inputHandler->setupUi(); - d->m_inputHandler->setupMinMax(d->m_dimension); - d->m_inputHandler->setValue(d->m_value); - } else { - Q_ASSERT(false && "Support for this notation has not been implemented yet"); + if (!d->m_inputHandler) { + /** @todo Temporary fallback to DecimalInputHandler + * Implement proper handlers for UTM and Astro */ + d->m_inputHandler = new DecimalInputHandler(d); } + + d->m_notation = notation; + d->m_inputHandler->setupUi(); + d->m_inputHandler->setupMinMax(d->m_dimension); + d->m_inputHandler->setValue(d->m_value); } void LatLonEdit::checkFloatValueOverflow() -- cgit v0.11.2 ++++++ Fix-plain-map-and-political-map-showing-no-content.patch ++++++ >From ce6cbb18b1483245ec2e43c84166f68cea60a26b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dennis=20Nienh=C3=BCser?= <[email protected]> Date: Mon, 26 Jun 2017 21:57:53 +0200 Subject: Fix both plain map and political map showing no content at all Both have neither a texture nor a vector tile layer, and hence no tile zoom level was set anymore in geometry layer after f847505. Now a default tile zoom level is calculated in such scenarios. BUG: 379297 --- src/lib/marble/MarbleMap.cpp | 17 ++++++++++------- src/lib/marble/layers/VectorTileLayer.cpp | 9 ++++++--- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/src/lib/marble/MarbleMap.cpp b/src/lib/marble/MarbleMap.cpp index d41c0f1..d62642a 100644 --- a/src/lib/marble/MarbleMap.cpp +++ b/src/lib/marble/MarbleMap.cpp @@ -22,6 +22,7 @@ // Qt #include <QTime> #include <QRegion> +#include <QtMath> // Marble #include "layers/FloatItemsLayer.h" @@ -209,9 +210,6 @@ MarbleMapPrivate::MarbleMapPrivate( MarbleMap *parent, MarbleModel *model ) : QObject::connect( &m_geometryLayer, SIGNAL(repaintNeeded()), parent, SIGNAL(repaintNeeded())); - QObject::connect(&m_vectorTileLayer, SIGNAL(tileLevelChanged(int)), &m_geometryLayer, SLOT(setTileLevel(int))); - QObject::connect(&m_vectorTileLayer, SIGNAL(tileLevelChanged(int)), &m_placemarkLayer, SLOT(setTileLevel(int))); - QObject::connect(&m_textureLayer, SIGNAL(tileLevelChanged(int)), &m_placemarkLayer, SLOT(setTileLevel(int))); /* * Slot handleHighlight finds all placemarks @@ -239,9 +236,11 @@ MarbleMapPrivate::MarbleMapPrivate( MarbleMap *parent, MarbleModel *model ) : parent, SLOT(updateTileLevel()) ); QObject::connect( &m_vectorTileLayer, SIGNAL(tileLevelChanged(int)), parent, SLOT(updateTileLevel()) ); + QObject::connect( parent, SIGNAL(radiusChanged(int)), + parent, SLOT(updateTileLevel()) ); + QObject::connect( &m_textureLayer, SIGNAL(repaintNeeded()), parent, SIGNAL(repaintNeeded()) ); - QObject::connect( parent, SIGNAL(visibleLatLonAltBoxChanged(GeoDataLatLonAltBox)), parent, SIGNAL(repaintNeeded()) ); @@ -466,7 +465,8 @@ int MarbleMap::preferredRadiusFloor( int radius ) int MarbleMap::tileZoomLevel() const { - return qMax(d->m_textureLayer.tileZoomLevel(), d->m_vectorTileLayer.tileZoomLevel()); + auto const tileZoomLevel = qMax(d->m_textureLayer.tileZoomLevel(), d->m_vectorTileLayer.tileZoomLevel()); + return tileZoomLevel >= 0 ? tileZoomLevel : qMin<int>(qMax<int>(qLn(d->m_viewport.radius()*4/256)/qLn(2.0), 1), d->m_styleBuilder.maximumZoomLevel()); } @@ -828,7 +828,10 @@ void MarbleMapPrivate::setDocument( const QString& key ) void MarbleMapPrivate::updateTileLevel() { - emit q->tileLevelChanged(q->tileZoomLevel()); + auto const tileZoomLevel = q->tileZoomLevel(); + m_geometryLayer.setTileLevel(tileZoomLevel); + m_placemarkLayer.setTileLevel(tileZoomLevel); + emit q->tileLevelChanged(tileZoomLevel); } // Used to be paintEvent() diff --git a/src/lib/marble/layers/VectorTileLayer.cpp b/src/lib/marble/layers/VectorTileLayer.cpp index 864dddf..505d7a6 100644 --- a/src/lib/marble/layers/VectorTileLayer.cpp +++ b/src/lib/marble/layers/VectorTileLayer.cpp @@ -133,7 +133,7 @@ RenderState VectorTileLayer::renderState() const int VectorTileLayer::tileZoomLevel() const { - int level = 0; + int level = -1; for (const auto *mapper: d->m_activeTileModels) { level = qMax(level, mapper->tileZoomLevel()); } @@ -163,7 +163,7 @@ bool VectorTileLayer::render(GeoPainter *painter, ViewportParams *viewport, mapper->setViewport(viewport->viewLatLonAltBox()); level = qMax(level, mapper->tileZoomLevel()); } - if (oldLevel != level) { + if (oldLevel != level && level >= 0) { emit tileLevelChanged(level); } @@ -202,7 +202,10 @@ void VectorTileLayer::setMapTheme(const QVector<const GeoSceneVectorTileDataset } d->updateLayerSettings(); - emit tileLevelChanged(tileZoomLevel()); + auto const level = tileZoomLevel(); + if (level >= 0) { + emit tileLevelChanged(level); + } } } -- cgit v0.11.2
