summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>2002-04-11 14:28:11 +0000
committerOwen Taylor <otaylor@src.gnome.org>2002-04-11 14:28:11 +0000
commit03498ba24f32b68ae7d717724c5e27260559fcef (patch)
tree57d5853aa39486a9da9171b1182bd4112557969f
parent631b8da93e5f6d571e67f9508d14f019191f8f12 (diff)
downloadgdk-pixbuf-03498ba24f32b68ae7d717724c5e27260559fcef.tar.gz
Export private _gtk_menu_shell_activate() to encapsulate cut-and-paste
Sat Apr 6 06:57:00 2002 Owen Taylor <otaylor@redhat.com> * gtk/gtkmenushell.[ch] gtk/gtkmenuitem.c: Export private _gtk_menu_shell_activate() to encapsulate cut-and-paste code. * gtk/gtkmenubar.c: Select the first item on the menu bar for F10 rather than acting as if the user pressed <Alt>F to select the file manager.
-rw-r--r--ChangeLog10
-rw-r--r--ChangeLog.pre-2-1010
-rw-r--r--ChangeLog.pre-2-210
-rw-r--r--ChangeLog.pre-2-410
-rw-r--r--ChangeLog.pre-2-610
-rw-r--r--ChangeLog.pre-2-810
-rw-r--r--gtk/gtkmenubar.c12
-rw-r--r--gtk/gtkmenuitem.c7
-rw-r--r--gtk/gtkmenushell.c19
-rw-r--r--gtk/gtkmenushell.h1
10 files changed, 80 insertions, 19 deletions
diff --git a/ChangeLog b/ChangeLog
index bf30889e5..e26e6ed6b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+Sat Apr 6 06:57:00 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtkmenushell.[ch] gtk/gtkmenuitem.c: Export
+ private _gtk_menu_shell_activate() to encapsulate
+ cut-and-paste code.
+
+ * gtk/gtkmenubar.c: Select the first item on the menu bar
+ for F10 rather than acting as if the user pressed <Alt>F
+ to select the file manager.
+
Tue Apr 9 19:01:28 2002 Owen Taylor <otaylor@redhat.com>
Fix problems with HandleBox and focusing - #78232
diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10
index bf30889e5..e26e6ed6b 100644
--- a/ChangeLog.pre-2-10
+++ b/ChangeLog.pre-2-10
@@ -1,3 +1,13 @@
+Sat Apr 6 06:57:00 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtkmenushell.[ch] gtk/gtkmenuitem.c: Export
+ private _gtk_menu_shell_activate() to encapsulate
+ cut-and-paste code.
+
+ * gtk/gtkmenubar.c: Select the first item on the menu bar
+ for F10 rather than acting as if the user pressed <Alt>F
+ to select the file manager.
+
Tue Apr 9 19:01:28 2002 Owen Taylor <otaylor@redhat.com>
Fix problems with HandleBox and focusing - #78232
diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2
index bf30889e5..e26e6ed6b 100644
--- a/ChangeLog.pre-2-2
+++ b/ChangeLog.pre-2-2
@@ -1,3 +1,13 @@
+Sat Apr 6 06:57:00 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtkmenushell.[ch] gtk/gtkmenuitem.c: Export
+ private _gtk_menu_shell_activate() to encapsulate
+ cut-and-paste code.
+
+ * gtk/gtkmenubar.c: Select the first item on the menu bar
+ for F10 rather than acting as if the user pressed <Alt>F
+ to select the file manager.
+
Tue Apr 9 19:01:28 2002 Owen Taylor <otaylor@redhat.com>
Fix problems with HandleBox and focusing - #78232
diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4
index bf30889e5..e26e6ed6b 100644
--- a/ChangeLog.pre-2-4
+++ b/ChangeLog.pre-2-4
@@ -1,3 +1,13 @@
+Sat Apr 6 06:57:00 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtkmenushell.[ch] gtk/gtkmenuitem.c: Export
+ private _gtk_menu_shell_activate() to encapsulate
+ cut-and-paste code.
+
+ * gtk/gtkmenubar.c: Select the first item on the menu bar
+ for F10 rather than acting as if the user pressed <Alt>F
+ to select the file manager.
+
Tue Apr 9 19:01:28 2002 Owen Taylor <otaylor@redhat.com>
Fix problems with HandleBox and focusing - #78232
diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6
index bf30889e5..e26e6ed6b 100644
--- a/ChangeLog.pre-2-6
+++ b/ChangeLog.pre-2-6
@@ -1,3 +1,13 @@
+Sat Apr 6 06:57:00 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtkmenushell.[ch] gtk/gtkmenuitem.c: Export
+ private _gtk_menu_shell_activate() to encapsulate
+ cut-and-paste code.
+
+ * gtk/gtkmenubar.c: Select the first item on the menu bar
+ for F10 rather than acting as if the user pressed <Alt>F
+ to select the file manager.
+
Tue Apr 9 19:01:28 2002 Owen Taylor <otaylor@redhat.com>
Fix problems with HandleBox and focusing - #78232
diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8
index bf30889e5..e26e6ed6b 100644
--- a/ChangeLog.pre-2-8
+++ b/ChangeLog.pre-2-8
@@ -1,3 +1,13 @@
+Sat Apr 6 06:57:00 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtkmenushell.[ch] gtk/gtkmenuitem.c: Export
+ private _gtk_menu_shell_activate() to encapsulate
+ cut-and-paste code.
+
+ * gtk/gtkmenubar.c: Select the first item on the menu bar
+ for F10 rather than acting as if the user pressed <Alt>F
+ to select the file manager.
+
Tue Apr 9 19:01:28 2002 Owen Taylor <otaylor@redhat.com>
Fix problems with HandleBox and focusing - #78232
diff --git a/gtk/gtkmenubar.c b/gtk/gtkmenubar.c
index fc45328df..47975af2c 100644
--- a/gtk/gtkmenubar.c
+++ b/gtk/gtkmenubar.c
@@ -416,16 +416,14 @@ window_key_press_handler (GtkWidget *widget,
GTK_DIR_TAB_FORWARD, NULL);
if (menubars)
{
- GtkMenuShell *menushell = GTK_MENU_SHELL (menubars->data);
+ GtkMenuShell *menu_shell = GTK_MENU_SHELL (menubars->data);
- if (menushell->children)
- {
- gtk_signal_emit_by_name (GTK_OBJECT (menushell->children->data),
- "activate_item");
- retval = TRUE;
- }
+ _gtk_menu_shell_activate (menu_shell);
+ _gtk_menu_shell_select_first (menu_shell);
g_list_free (menubars);
+
+ retval = TRUE;
}
}
diff --git a/gtk/gtkmenuitem.c b/gtk/gtkmenuitem.c
index 5e30156e9..93bd035b0 100644
--- a/gtk/gtkmenuitem.c
+++ b/gtk/gtkmenuitem.c
@@ -779,12 +779,7 @@ gtk_real_menu_item_activate_item (GtkMenuItem *menu_item)
{
GtkMenuShell *menu_shell = GTK_MENU_SHELL (widget->parent);
- if (!menu_shell->active)
- {
- gtk_grab_add (GTK_WIDGET (menu_shell));
- menu_shell->have_grab = TRUE;
- menu_shell->active = TRUE;
- }
+ _gtk_menu_shell_activate (menu_shell);
gtk_menu_shell_select_item (GTK_MENU_SHELL (widget->parent), widget);
gtk_menu_item_popup_submenu (widget);
diff --git a/gtk/gtkmenushell.c b/gtk/gtkmenushell.c
index dac8ed4db..f90f56fbf 100644
--- a/gtk/gtkmenushell.c
+++ b/gtk/gtkmenushell.c
@@ -440,6 +440,17 @@ gtk_menu_shell_realize (GtkWidget *widget)
gtk_style_set_background (widget->style, widget->window, GTK_STATE_NORMAL);
}
+void
+_gtk_menu_shell_activate (GtkMenuShell *menu_shell)
+{
+ if (!menu_shell->active)
+ {
+ gtk_grab_add (GTK_WIDGET (menu_shell));
+ menu_shell->have_grab = TRUE;
+ menu_shell->active = TRUE;
+ }
+}
+
static gint
gtk_menu_shell_button_press (GtkWidget *widget,
GdkEventButton *event)
@@ -461,12 +472,8 @@ gtk_menu_shell_button_press (GtkWidget *widget,
}
else if (!menu_shell->active || !menu_shell->button)
{
- if (!menu_shell->active)
- {
- gtk_grab_add (GTK_WIDGET (widget));
- menu_shell->have_grab = TRUE;
- menu_shell->active = TRUE;
- }
+ _gtk_menu_shell_activate (menu_shell);
+
menu_shell->button = event->button;
menu_item = gtk_menu_shell_get_item (menu_shell, (GdkEvent *)event);
diff --git a/gtk/gtkmenushell.h b/gtk/gtkmenushell.h
index 9f90bdd49..9edb887b3 100644
--- a/gtk/gtkmenushell.h
+++ b/gtk/gtkmenushell.h
@@ -112,6 +112,7 @@ void gtk_menu_shell_activate_item (GtkMenuShell *menu_shell,
gboolean force_deactivate);
void _gtk_menu_shell_select_first (GtkMenuShell *menu_shell);
+void _gtk_menu_shell_activate (GtkMenuShell *menu_shell);
#ifdef __cplusplus
}