diff --git a/scribus/scribus.cpp b/scribus/scribus.cpp
index b50b49a..7881447 100644
--- a/scribus/scribus.cpp
+++ b/scribus/scribus.cpp
@@ -5040,7 +5040,7 @@ void ScribusMainWindow::SelectAll(bool docWideSelect)
 		for (uint a = 0; a < docItemsCount; ++a)
 		{
 			currItem = doc->Items->at(a);
-			if ((currItem->LayerID == doc->activeLayer()) && (!doc->layerLocked(currItem->LayerID)))
+			if (((currItem->LayerID == doc->activeLayer()) || (doc->layerSelectable(currItem->LayerID))) && (!doc->layerLocked(currItem->LayerID)))
 			{
 				if (docWideSelect)
 					doc->m_Selection->addItem(currItem);
