reviewed by: Jens Granseuer <jensgr@gmx.net>

2007-08-05  Bastien Nocera  <hadess@hadess.net>

	reviewed by: Jens Granseuer <jensgr@gmx.net>

	* gnome-keybinding-properties.c: (keyval_is_forbidden),
	(accel_edited_callback): Make the arrows and tabs unbindable
	without a modifier (Closes: #463433)


svn path=/trunk/; revision=7962
This commit is contained in:
Bastien Nocera 2007-08-04 23:11:42 +00:00 committed by Bastien Nocera
parent 6c27578959
commit 314fc15bdd
2 changed files with 42 additions and 2 deletions

View file

@ -1,3 +1,11 @@
2007-08-05 Bastien Nocera <hadess@hadess.net>
reviewed by: Jens Granseuer <jensgr@gmx.net>
* gnome-keybinding-properties.c: (keyval_is_forbidden),
(accel_edited_callback): Make the arrows and tabs unbindable
without a modifier (Closes: #463433)
2007-06-14 Jens Granseuer <jensgr@gmx.net>
* gnome-keybinding-properties.c: (setup_dialog): fix GConf

View file

@ -809,6 +809,39 @@ cb_check_for_uniqueness (GtkTreeModel *model,
return TRUE;
}
static const guint forbidden_keyvals[] = {
/* Navigation keys */
GDK_Home,
GDK_Left,
GDK_Up,
GDK_Right,
GDK_Down,
GDK_Page_Up,
GDK_Page_Down,
GDK_End,
GDK_Tab,
/* Return */
GDK_KP_Enter,
GDK_Return,
GDK_space,
GDK_Mode_switch
};
static gboolean
keyval_is_forbidden (guint keyval)
{
guint i;
for (i = 0; i < G_N_ELEMENTS(forbidden_keyvals); i++) {
if (keyval == forbidden_keyvals[i])
return TRUE;
}
return FALSE;
}
static void
accel_edited_callback (GtkCellRendererText *cell,
const char *path_string,
@ -868,8 +901,7 @@ accel_edited_callback (GtkCellRendererText *cell,
|| (tmp_key.keyval >= GDK_Thai_kokai && tmp_key.keyval <= GDK_Thai_lekkao)
|| (tmp_key.keyval >= GDK_Hangul && tmp_key.keyval <= GDK_Hangul_Special)
|| (tmp_key.keyval >= GDK_Hangul_Kiyeog && tmp_key.keyval <= GDK_Hangul_J_YeorinHieuh)
|| tmp_key.keyval == GDK_space || tmp_key.keyval == GDK_Return
|| tmp_key.keyval == GDK_Mode_switch) {
|| keyval_is_forbidden (tmp_key.keyval)) {
GtkWidget *dialog;
char *name;