]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtkmenushell.c
Merges from gtk-1-2
[~andy/gtk] / gtk / gtkmenushell.c
index 0fe6c6b125e43b95f2e3ca68f24790b5f93196d8..784a89fe80f9c449efc6e16f916d99e2705d4ee9 100644 (file)
@@ -494,7 +494,17 @@ gtk_menu_shell_button_release (GtkWidget      *widget,
            }
        }
       else
-       deactivate = FALSE;
+       {
+         /* We only ever want to prevent deactivation on the first
+           * press/release. Setting the time to zero is a bit of a
+          * hack, since we could be being triggered in the first
+          * few fractions of a second after a server time wraparound.
+          * the chances of that happening are ~1/10^6, without
+          * serious harm if we lose.
+          */
+         menu_shell->activate_time = 0;
+         deactivate = FALSE;
+       }
       
       /* If the button click was very fast, or we ended up on a submenu,
        * leave the menu up