Commit 25db7413 authored by Ulrich Sibiller's avatar Ulrich Sibiller

Keystroke.c: Simplify read_binding_from_xmlnode

parent 13a7c4a7
...@@ -167,6 +167,7 @@ static Bool modifier_matches(unsigned int mask, int compare_alt_meta, unsigned i ...@@ -167,6 +167,7 @@ static Bool modifier_matches(unsigned int mask, int compare_alt_meta, unsigned i
static Bool read_binding_from_xmlnode(xmlNode *node, struct nxagentSpecialKeystrokeMap *ret) static Bool read_binding_from_xmlnode(xmlNode *node, struct nxagentSpecialKeystrokeMap *ret)
{ {
/* init the struct to have proper values in case not all attributes are found */
struct nxagentSpecialKeystrokeMap newkm = { struct nxagentSpecialKeystrokeMap newkm = {
.stroke = KEYSTROKE_END_MARKER, .stroke = KEYSTROKE_END_MARKER,
.modifierMask = 0, .modifierMask = 0,
...@@ -204,12 +205,11 @@ static Bool read_binding_from_xmlnode(xmlNode *node, struct nxagentSpecialKeystr ...@@ -204,12 +205,11 @@ static Bool read_binding_from_xmlnode(xmlNode *node, struct nxagentSpecialKeystr
} }
else if (strcmp((char *)attr->name, "key") == 0) else if (strcmp((char *)attr->name, "key") == 0)
{ {
if (strcmp((char *)attr->children->content, "0") != 0 && strcmp((char *)attr->children->content, "false") != 0)
newkm.keysym = XStringToKeysym((char *)attr->children->content); newkm.keysym = XStringToKeysym((char *)attr->children->content);
continue; continue;
} }
else
{
/* ignore attributes with value="0" or "false", everything else is interpreted as true */ /* ignore attributes with value="0" or "false", everything else is interpreted as true */
if (strcmp((char *)attr->children->content, "0") == 0 || strcmp((char *)attr->children->content, "false") == 0) if (strcmp((char *)attr->children->content, "0") == 0 || strcmp((char *)attr->children->content, "false") == 0)
continue; continue;
...@@ -223,6 +223,7 @@ static Bool read_binding_from_xmlnode(xmlNode *node, struct nxagentSpecialKeystr ...@@ -223,6 +223,7 @@ static Bool read_binding_from_xmlnode(xmlNode *node, struct nxagentSpecialKeystr
else if (strcmp((char *)attr->name, "Lock") == 0) { newkm.modifierMask |= LockMask; } else if (strcmp((char *)attr->name, "Lock") == 0) { newkm.modifierMask |= LockMask; }
else if (strcmp((char *)attr->name, "AltMeta") == 0) { newkm.modifierAltMeta = True; } else if (strcmp((char *)attr->name, "AltMeta") == 0) { newkm.modifierAltMeta = True; }
} }
}
if (newkm.stroke != KEYSTROKE_END_MARKER && newkm.keysym != NoSymbol) if (newkm.stroke != KEYSTROKE_END_MARKER && newkm.keysym != NoSymbol)
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment