diff --git a/src/app/qgisapp.cpp b/src/app/qgisapp.cpp index 9254635d85b..ecbd8cf924e 100644 --- a/src/app/qgisapp.cpp +++ b/src/app/qgisapp.cpp @@ -9231,6 +9231,7 @@ void QgisApp::duplicateLayers( const QList &lyrList ) freezeCanvases(); QgsMapLayer *dupLayer = nullptr; + QgsMapLayer *newSelection = nullptr; QString layerDupName, unSppType; QList msgBars; @@ -9327,10 +9328,17 @@ void QgisApp::duplicateLayers( const QList &lyrList ) messageBar()->pushMessage( errMsg, tr( "Cannot copy style to duplicated layer." ), Qgis::Critical, messageTimeout() ); + + if ( !newSelection ) + newSelection = dupLayer; } dupLayer = nullptr; + // auto select first new duplicate layer + if ( newSelection ) + setActiveLayer( newSelection ); + freezeCanvases( false ); // display errors in message bar after duplication of layers