/*
* ion/ioncore/conf-bindings.c
*
- * Copyright (c) Tuomo Valkonen 1999-2007.
+ * Copyright (c) Tuomo Valkonen 1999-2008.
*
- * Ion is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2.1 of the License, or
- * (at your option) any later version.
+ * See the included file LICENSE for details.
*/
#include <string.h>
binding.func=func;
if(bindmap_remove_binding(bindmap, &binding))
return TRUE;
- warn(TR("Unable to remove binding %s."), str);
+ /*warn(TR("Unable to remove binding %s."), str);*/
}
return FALSE;
ExtlTab subtab, uint action, uint mod, uint ksb)
{
WBinding binding, *bnd;
- uint kcb;
+ uint kcb=0;
if(action!=BINDING_KEYPRESS)
return FALSE;
kcb=XKeysymToKeycode(ioncore_g.dpy, ksb);
+
bnd=bindmap_lookup_binding(bindmap, action, mod, kcb);
if(bnd!=NULL && bnd->submap!=NULL && bnd->state==mod)
{"mclick", BINDING_BUTTONCLICK},
{"mdblclick", BINDING_BUTTONDBLCLICK},
{"mdrag", BINDING_BUTTONMOTION},
+ {"submap_enter", BINDING_SUBMAP_ENTER},
+ {"submap_wait", BINDING_SUBMAP_RELEASEMOD},
+ /*{"submap_leave", BINDING_SUBMAP_LEAVE},*/
{NULL, 0}
};
goto fail;
}
}
+
+ if(!BINDING_IS_PSEUDO(action)){
+ if(!extl_table_gets_s(tab, "kcb", &ksb_str))
+ goto fail;
- if(!extl_table_gets_s(tab, "kcb", &ksb_str))
- goto fail;
-
- if(!ioncore_parse_keybut(ksb_str, &mod, &ksb,
- (action!=BINDING_KEYPRESS && action!=-1),
- init_any)){
- goto fail;
+ if(!ioncore_parse_keybut(ksb_str, &mod, &ksb,
+ (action!=BINDING_KEYPRESS && action!=-1),
+ init_any)){
+ goto fail;
+ }
}
if(extl_table_gets_t(tab, "submap", &subtab)){