summaryrefslogtreecommitdiff
path: root/gtk
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>2002-03-20 17:04:32 +0000
committerOwen Taylor <otaylor@src.gnome.org>2002-03-20 17:04:32 +0000
commit288909d466b72f39906599e39fe92c1f8721cec7 (patch)
treeec0beded0c33b81036025be919c4029b870989ed /gtk
parent69ad8745d569ae10ee8ad77939989525a847d0dd (diff)
downloadgtk+-288909d466b72f39906599e39fe92c1f8721cec7.tar.gz
Improve test to prevent infinite loop. (#74952, Thomas Leonard)
Wed Mar 20 11:32:07 2002 Owen Taylor <otaylor@redhat.com> * gtk/gtkentry.c: Improve test to prevent infinite loop. (#74952, Thomas Leonard) * gtk/gtkmenushell.c (gtk_real_menu_shell_cycle_focus): Fix warning when toplevel menu shell isn't a menu bar. (Thomas Leonard, #75602)
Diffstat (limited to 'gtk')
-rw-r--r--gtk/gtkentry.c3
-rw-r--r--gtk/gtkmenushell.c7
2 files changed, 8 insertions, 2 deletions
diff --git a/gtk/gtkentry.c b/gtk/gtkentry.c
index 00d67cbdd9..c9d6d18fc2 100644
--- a/gtk/gtkentry.c
+++ b/gtk/gtkentry.c
@@ -2214,7 +2214,8 @@ gtk_entry_real_activate (GtkEntry *entry)
if (window &&
widget != window->default_widget &&
- !(!window->default_widget && widget == window->focus_widget))
+ !(widget == window->focus_widget &&
+ (!window->default_widget || !GTK_WIDGET_SENSITIVE (window->default_widget))))
gtk_window_activate_default (window);
}
}
diff --git a/gtk/gtkmenushell.c b/gtk/gtkmenushell.c
index 3c88397894..dac8ed4db1 100644
--- a/gtk/gtkmenushell.c
+++ b/gtk/gtkmenushell.c
@@ -1128,7 +1128,12 @@ gtk_real_menu_shell_cycle_focus (GtkMenuShell *menu_shell,
GtkDirectionType dir)
{
while (menu_shell && !GTK_IS_MENU_BAR (menu_shell))
- menu_shell = GTK_MENU_SHELL (menu_shell->parent_menu_shell);
+ {
+ if (menu_shell->parent_menu_shell)
+ menu_shell = GTK_MENU_SHELL (menu_shell->parent_menu_shell);
+ else
+ menu_shell = NULL;
+ }
if (menu_shell)
_gtk_menu_bar_cycle_focus (GTK_MENU_BAR (menu_shell), dir);