gui: fix default styles if object type is in element name

Change-Id: I4bc46d1772fee2ec77d95732fa3f69c267c2c34e
diff --git a/gui/pages.cpp b/gui/pages.cpp
index 3abd287..0a1de96 100644
--- a/gui/pages.cpp
+++ b/gui/pages.cpp
@@ -137,20 +137,20 @@
 			style = style->next_sibling("style");
 		}
 	} else {
-		// Search for stylename in the parent node <object type="foo" stylename="foo2">
+		// Search for stylename in the parent node <object type="foo" style="foo2">
 		xml_attribute<>* attr = parent->first_attribute("style");
 		// If no style is found anywhere else and the node wasn't found in the object itself
 		// as a special case we will search for a style that uses the same style name as the
 		// object type, so <object type="button"> would search for a style named "button"
 		if (!attr)
 			attr = parent->first_attribute("type");
-		if (attr) {
-			xml_node<>* node = PageManager::FindStyle(attr->value());
-			if (node) {
-				xml_node<>* stylenode = FindNode(node, nodename, depth + 1);
-				if (stylenode)
-					return stylenode;
-			}
+		// if there's no attribute type, the object type must be the element name
+		std::string stylename = attr ? attr->value() : parent->name();
+		xml_node<>* node = PageManager::FindStyle(stylename);
+		if (node) {
+			xml_node<>* stylenode = FindNode(node, nodename, depth + 1);
+			if (stylenode)
+				return stylenode;
 		}
 	}
 	return NULL;