… | |
… | |
768 | |
768 | |
769 | if (*arg == '\0' || (sym = parse_keysym (str, state)) == -1) |
769 | if (*arg == '\0' || (sym = parse_keysym (str, state)) == -1) |
770 | return -1; |
770 | return -1; |
771 | |
771 | |
772 | wchar_t *ws = rxvt_mbstowcs (arg); |
772 | wchar_t *ws = rxvt_mbstowcs (arg); |
|
|
773 | if (!HOOK_INVOKE ((this, HOOK_REGISTER_COMMAND, DT_INT, sym, DT_INT, state, DT_WCS_LEN, ws, wcslen (ws), DT_END))) |
773 | keyboard->register_action (sym, state, ws); |
774 | keyboard->register_action (sym, state, ws); |
774 | |
775 | |
775 | free (ws); |
776 | free (ws); |
776 | return 1; |
777 | return 1; |
777 | } |
778 | } |
778 | |
779 | |
… | |
… | |
873 | |
874 | |
874 | XrmDatabase database = XrmGetDatabase (dpy); |
875 | XrmDatabase database = XrmGetDatabase (dpy); |
875 | XrmName name_prefix[3]; |
876 | XrmName name_prefix[3]; |
876 | XrmClass class_prefix[3]; |
877 | XrmClass class_prefix[3]; |
877 | |
878 | |
878 | name_prefix[0] = XrmStringToName (rs[Rs_name]); |
|
|
879 | name_prefix[1] = XrmStringToName ("keysym"); |
879 | name_prefix[1] = XrmStringToName ("keysym"); |
880 | name_prefix[2] = NULLQUARK; |
880 | name_prefix[2] = NULLQUARK; |
881 | class_prefix[0] = XrmStringToName (RESCLASS); |
|
|
882 | class_prefix[1] = XrmStringToName ("Keysym"); |
881 | class_prefix[1] = XrmStringToName ("Keysym"); |
883 | class_prefix[2] = NULLQUARK; |
882 | class_prefix[2] = NULLQUARK; |
884 | /* XXX: Need to check sizeof (rxvt_t) == sizeof (XPointer) */ |
883 | |
885 | XrmEnumerateDatabase (database, name_prefix, class_prefix, |
|
|
886 | XrmEnumOneLevel, rxvt_keysym_enumerate_helper, (XPointer)closure); |
|
|
887 | # ifdef RESFALLBACK |
884 | # ifdef RESFALLBACK |
888 | name_prefix[0] = class_prefix[0] = XrmStringToName (RESFALLBACK); |
885 | name_prefix[0] = class_prefix[0] = XrmStringToName (RESFALLBACK); |
889 | /* XXX: Need to check sizeof (rxvt_t) == sizeof (XPointer) */ |
886 | /* XXX: Need to check sizeof (rxvt_t) == sizeof (XPointer) */ |
890 | XrmEnumerateDatabase (database, name_prefix, class_prefix, |
887 | XrmEnumerateDatabase (database, name_prefix, class_prefix, |
891 | XrmEnumOneLevel, rxvt_keysym_enumerate_helper, (XPointer)closure); |
888 | XrmEnumOneLevel, rxvt_keysym_enumerate_helper, (XPointer)closure); |
892 | # endif |
889 | # endif |
|
|
890 | |
|
|
891 | name_prefix[0] = class_prefix[0] = XrmStringToName (RESCLASS); |
|
|
892 | XrmEnumerateDatabase (database, name_prefix, class_prefix, |
|
|
893 | XrmEnumOneLevel, rxvt_keysym_enumerate_helper, (XPointer)closure); |
|
|
894 | |
|
|
895 | name_prefix[0] = class_prefix[0] = XrmStringToName (rs[Rs_name]); |
|
|
896 | XrmEnumerateDatabase (database, name_prefix, class_prefix, |
|
|
897 | XrmEnumOneLevel, rxvt_keysym_enumerate_helper, (XPointer)closure); |
893 | # endif |
898 | # endif |
894 | |
899 | |
895 | #endif /* NO_RESOURCES */ |
900 | #endif /* NO_RESOURCES */ |
896 | } |
901 | } |
897 | |
902 | |