allow to leave the widget with Ctrl+Tab. Handle GDK_KP_Tab and

2009-03-02  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimptagentry.c (gimp_tag_entry_key_press): allow to
	leave the widget with Ctrl+Tab. Handle GDK_KP_Tab and
	GDK_ISO_Left_Tab.


svn path=/trunk/; revision=28095
This commit is contained in:
Michael Natterer 2009-03-02 22:16:40 +00:00 committed by Michael Natterer
parent c06c90b545
commit 7dd3ce30f2
2 changed files with 22 additions and 3 deletions

View file

@ -1,3 +1,9 @@
2009-03-02 Michael Natterer <mitch@gimp.org>
* app/widgets/gimptagentry.c (gimp_tag_entry_key_press): allow to
leave the widget with Ctrl+Tab. Handle GDK_KP_Tab and
GDK_ISO_Left_Tab.
2009-03-02 Michael Natterer <mitch@gimp.org> 2009-03-02 Michael Natterer <mitch@gimp.org>
* app/core/gimptagged.[ch]: add gimp_tagged_set_tags() which * app/core/gimptagged.[ch]: add gimp_tagged_set_tags() which

View file

@ -1288,9 +1288,22 @@ gimp_tag_entry_key_press (GtkWidget *widget,
switch (event->keyval) switch (event->keyval)
{ {
case GDK_Tab: case GDK_Tab:
entry->tab_completion_index++; case GDK_KP_Tab:
entry->suppress_tag_query++; case GDK_ISO_Left_Tab:
g_idle_add ((GSourceFunc) gimp_tag_entry_auto_complete, entry); /* allow to leave the widget with Ctrl+Tab */
if (! (event->state & GDK_CONTROL_MASK))
{
entry->tab_completion_index++;
entry->suppress_tag_query++;
g_idle_add ((GSourceFunc) gimp_tag_entry_auto_complete, entry);
}
else
{
gimp_tag_entry_commit_tags (entry);
g_signal_emit_by_name (widget, "move-focus",
(event->state & GDK_SHIFT_MASK) ?
GTK_DIR_TAB_BACKWARD : GTK_DIR_TAB_FORWARD);
}
return TRUE; return TRUE;
case GDK_Return: case GDK_Return: