diff --git a/src/layer-manager.cpp b/src/layer-manager.cpp
index 32a8b46ff0ee0717dbe236247f2dfb5884ca08b3..3e49edac5723299ab5699850b14ab31fe6c478c1 100644 (file)
--- a/src/layer-manager.cpp
+++ b/src/layer-manager.cpp
#include "desktop.h"
#include "desktop-handles.h"
#include "layer-manager.h"
-#include "prefs-utils.h"
+#include "preferences.h"
#include "ui/view/view.h"
#include "selection.h"
#include "sp-object.h"
if ( _desktop->currentRoot() ) {
_desktop->setCurrentLayer( obj );
- if ( prefs_get_int_attribute_limited("options.selection", "layerdeselect", 1, 0, 1) ) {
+ Inkscape::Preferences *prefs = Inkscape::Preferences::get();
+ if (prefs->getBool("/options/selection/layerdeselect", true)) {
sp_desktop_selection( _desktop )->clear();
}
}
layersToAdd.insert(SP_GROUP(layer));
}
for ( std::set<SPGroup*>::iterator it = additional.begin(); it != additional.end(); ++it ) {
- layersToAdd.insert(*it);
+ if ( !includes(*it) ) {
+ layersToAdd.insert(*it);
+ }
}
}
}