From 15975c1d5191933311d81a494d87806f4e73ce57 Mon Sep 17 00:00:00 2001 From: Nyall Dawson Date: Wed, 16 Sep 2020 14:41:13 +1000 Subject: [PATCH] Don't prompt for CRS for annotation layers Fixes #38739 --- src/core/annotations/qgsannotationlayer.cpp | 1 + src/core/qgsmaplayer.cpp | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/core/annotations/qgsannotationlayer.cpp b/src/core/annotations/qgsannotationlayer.cpp index 3b7ed39d512e..e70951cc619b 100644 --- a/src/core/annotations/qgsannotationlayer.cpp +++ b/src/core/annotations/qgsannotationlayer.cpp @@ -26,6 +26,7 @@ QgsAnnotationLayer::QgsAnnotationLayer( const QString &name, const LayerOptions : QgsMapLayer( QgsMapLayerType::AnnotationLayer, name ) , mTransformContext( options.transformContext ) { + mShouldValidateCrs = false; mValid = true; } diff --git a/src/core/qgsmaplayer.cpp b/src/core/qgsmaplayer.cpp index 600d96aa4716..0ec245a2420c 100644 --- a/src/core/qgsmaplayer.cpp +++ b/src/core/qgsmaplayer.cpp @@ -257,7 +257,7 @@ bool QgsMapLayer::readLayerXml( const QDomElement &layerElement, QgsReadWriteCon QDomNode srsNode = layerElement.namedItem( QStringLiteral( "srs" ) ); mCRS.readXml( srsNode ); mCRS.setValidationHint( tr( "Specify CRS for layer %1" ).arg( mne.text() ) ); - if ( isSpatial() ) + if ( isSpatial() && type() != QgsMapLayerType::AnnotationLayer ) mCRS.validate(); savedCRS = mCRS; @@ -770,7 +770,7 @@ void QgsMapLayer::setCrs( const QgsCoordinateReferenceSystem &srs, bool emitSign { mCRS = srs; - if ( mShouldValidateCrs && isSpatial() && !mCRS.isValid() ) + if ( mShouldValidateCrs && isSpatial() && !mCRS.isValid() && type() != QgsMapLayerType::AnnotationLayer ) { mCRS.setValidationHint( tr( "Specify CRS for layer %1" ).arg( name() ) ); mCRS.validate();