g_strfreev(string);
}
+ /* set the shift mask for uppercase keys like 'G' */
+ guint32 ukval = gdk_keyval_to_unicode(keybind->keyval);
+ if (g_unichar_isgraph(ukval) && gdk_keyval_is_upper(keybind->keyval)) {
+ keybind->modmask = GDK_SHIFT_MASK;
+ }
+
/* post process the keybinding */
/* special handling for shift tab */
if (keybind->keyval == GDK_Tab && keybind->modmask == GDK_SHIFT_MASK) {
static gboolean keybind_keypress_callback(WebKitWebView* webview, GdkEventKey* event)
{
guint keyval = event->keyval;
- guint state = CLEAN_STATE(event);
+ guint state = CLEAN_STATE_WITH_SHIFT(event);
/* check for escape or modkeys or counts */
if (IS_ESCAPE_KEY(keyval, state)) {