summaryrefslogtreecommitdiff
path: root/gtk/gtkmenu.c
Commit message (Collapse)AuthorAgeFilesLines
* Add new infrastructure for notifications of failed keyboard navigation andMichael Natterer2006-11-161-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2006-11-16 Michael Natterer <mitch@imendio.com> Add new infrastructure for notifications of failed keyboard navigation and navigation with restricted set of keys. The patch handles configurable beeping, navigating the GUI with cursor keys only (as in phone environments), and configurable wrap-around. Fixes bugs #322640, #70986, #318827, #334726, #334742 and #309291. * gtk/gtksettings.c: added properties gtk-keynav-cursor-only, gtk-keynav-wrap-around and gtk-error-bell. * gtk/gtkwidget.[ch]: added new signal "keynav-failed" and public API to emit it. Added New function gtk_widget_error_bell() which looks at the gtk-error-bell setting and calls gdk_window_beep() accordingly. * gtk/gtk.symbols: add the new widget symbols. * gtk/gtkcellrendereraccel.c * gtk/gtkimcontextsimple.c * gtk/gtkmenu.c * gtk/gtknotebook.c: use gtk_widget_error_bell() or look at the gtk-error-bell setting instead of calling gdk_display_beep() unconditionally. * gtk/gtkcombobox.c * gtk/gtkentry.c * gtk/gtkiconview.c * gtk/gtklabel.c * gtk/gtkmenushell.c * gtk/gtkspinbutton.c * gtk/gtktextview.c * gtk/gtktreeview.c: call gtk_widget_error_bell() on failed keynav. * gtk/gtkentry.c * gtk/gtklabel.c * gtk/gtkrange.c * gtk/gtktextview.c: consult gtk_widget_keynav_failed() on failed cursor navigation and leave the widget if it returns FALSE. * gtk/gtkmenushell.c * gtk/gtknotebook.c: only wrap around if gtk-keynav-wrap-around is TRUE. * gtk/gtkradiobutton.c: ask gtk_widget_keynav_failed() to decide whether to to wrap-around, and don't select active items on cursor navigation if gtk-keynav-cursor-only is TRUE. Should look at gtk-keynav-wrap-around too, will look into that.
* Apply a cleanup patch by Kjartan Maraas (#341812)Matthias Clasen2006-10-081-1/+0
| | | | | | 2006-10-08 Matthias Clasen <mclasen@redhat.com> * Apply a cleanup patch by Kjartan Maraas (#341812)
* Just remove the scroll timeout here, don't access settings. (#348095,Matthias Clasen2006-07-201-5/+6
| | | | | | | 2006-07-20 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenu.c (gtk_menu_destroy): Just remove the scroll timeout here, don't access settings. (#348095, Chris Wilson)
* Treat "" like NULL when parsing the menu-bar-accel setting. Here too.Matthias Clasen2006-07-031-1/+1
| | | | | | | | | 2006-07-02 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenubar.c (window_key_press_handler): Treat "" like NULL when parsing the menu-bar-accel setting. * gtk/gtkmenu.c (gtk_menu_key_press): Here too. (#346420, Yevgen Muntyan)
* More of the sameMatthias Clasen2006-05-141-1/+1
|
* Better handling of the window group on unsetting transient-for, since theAlexander Larsson2006-05-121-46/+14
| | | | | | | | | | | | | | | | | 2006-05-12 Alexander Larsson <alexl@redhat.com> * gtk/gtkwindow.c: Better handling of the window group on unsetting transient-for, since the transient parent might have changed group. * gtk/gtkmenu.c: Combine the handling of transient for the attach-widget and the window group handling by setting transient-to on popup/popdown only. See bug #340401 * gtk/gtkprintunixdialog.c: Remove part of old fix no longer needed.
* Fix build errors.Alexander Larsson2006-05-121-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2006-05-12 Alexander Larsson <alexl@redhat.com> * gtk/gtkrecentmanager.c: Fix build errors. * gtk/gtk.symbols: * demos/gtk-demo/printing.c: * gtk/gtkprintoperation-win32.c: * gtk/gtkprintoperation.[ch]: * gtk/gtkprintsettings.[ch]: * modules/printbackends/cups/gtkprintbackendcups.c: * modules/printbackends/lpr/gtkprintbackendlpr.c: * modules/printbackends/pdf/gtkprintbackendpdf.c: * tests/print-editor.c: * tests/testnouiprint.c: * tests/testprint.c: * tests/testprintfileoperation.c: Rename functions from nr_of_pages to n_pages, and num_copies to n_copies to match other gtk+ names. * gtk/gtkmenu.c: (gtk_menu_popdown): Only re-set window group on popdown if we set it on popup (i.e. if there is a parent menu shell). Fixed part of bug #340401 * gtk/gtkwindow.c: Add (contruct) property "transient-for" to GtkWindow. This is needed for the fix to bug #340401. * gtk/gtkprintunixdialog.c: Use the transient-for property on construction and populate the dialog with widgets after that. This fixes bug #340401. More n_pages renames.
* applied unified patch for configurable scroll arrow sizes from bug #333632Tim Janik2006-05-101-41/+77
| | | | | | | | | | | | | | | | | | | Wed May 10 15:57:53 2006 Tim Janik <timj@imendio.com> * applied unified patch for configurable scroll arrow sizes from bug #333632 and bug #325282. * gtk/gtkwidget.c (gtk_widget_class_init): added ::scroll-arrow-hlength and ::scroll-arrow-vlength style properties. fixed upper limit for ::separator-width and ::separator-height to be MAXINT. * gtk/gtkmenu.c: use GtkWidget::scroll-arrow-vlength to determine the scroll arrow size, instead of using a hard coded constant. * gtk/gtknotebook.c: use GtkWidget::scroll-arrow-vlength and GtkWidget::scroll-arrow-hlength to determine scroll arrow sizes. added GtkNotebook::arrow-spacing style property to configure the spacing between scroll arrows.
* Boilerplate reductionMatthias Clasen2006-05-021-49/+17
|
* Create 'composited' label.Søren Sandmann2006-04-251-1/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tue Apr 25 10:25:28 2006 Søren Sandmann <sandmann@redhat.com> * tests/testgtk.c (create_alpha_window): Create 'composited' label. * tests/testgtk.c (on_composited_changed): New function, change the label to say whether the screen is composited or not. * gtk/gtkwindow.c (gtk_window_on_composited_changed): When composited status change, invalidate the window and propagate the signal;. * gtk/gtkwindow.c (gtk_window_map): Set the appropriate type hint if reset_type_hint is TRUE. * gtk/gtkwindow.c (gtk_window_set_type_hint): If hint is one of the old hints, store a shadow copy in the public window->type_hint bitfield, otherwise set this field to normal. Set the private field to the type hint. * gtk/gtkwindow.c (gtk_window_init): Initialize priv->type_hint. * gtk/gtkwindow.c (struct _GtkWindowPrivate): New field "reset_type_hint" indicating whether the type hint needs to be reset. New field type_hint containing a GdkWindowTypeHint. * gtk/gtkwidget.c (propagate_composited_changed): New function to propagate changes in composited status. (gtk_widget_class_init): Add composited_changed signal. * gtk/gtkwidget.h (struct _GtkWidgetClass): New signal composited-changed. * gtk/gtkwidget.c (gtk_widget_is_composited): New function. * gtk/gtktooltips.c (gtk_tooltips_draw_tips): Set transient for. * gtk/gtktooltips.c (gtk_tooltips_force_window): Set the type hint * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Compute whether the item belongs to a menubar. Set the type_hint appropriately depending on the outcome. * gtk/gtkmenu.c (gtk_menu_position): Set the default type hint here. * gtk/gtkmenu.c (gtk_menu_attach_to_widget): connect to hierarchy changed on the attach widget. * gtk/gtkmenu.c (attach_widget_hierarchy_changed): New function to set the transient_for property for menus. * gtk/gtkdnd.c (set_icon_stock_pixbuf): Set the appropriate type hint. * gtk/gtkcombo.c (gtk_combo_popup_list): Make the popup window transient for the toplevel. * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Set transient-for, for the popup window. * gdk/x11/gdkwindow-x11.c (gdk_window_get_type_hint): Support for new window types. * gdk/x11/gdkwindow-x11.c (gdk_window_set_type_hint): Add support for new window types. * gdk/x11/gdkscreen-x11.c (_gdk_x11_screen_process_owner_change): New function called whenever the compositing manager comes and goes. * gdk/x11/gdkscreen-x11.c (gdk_screen_is_composited): New function. * gdk/x11/gdkscreen-x11.c (_gdk_x11_screen_request_cm_notification, make_cm_atom, check_is_composited): New functions * gdk/x11/gdkevents-x11.c (gdk_event_translate): Call _gdk_x11_screen_process_owner_change when an XFixesSelectionNotifyEvent is received. * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Call _gdk_x11_screen_request_cm_notification() on all screens. * gdk/quartz/gdkscreen-quartz.c (gdk_screen_is_composited): Dummy implementation. * gdk/gdkscreen.c (gdk_screen_class_init): New signal, 'composited-changed'. * gdk/gdkwindow.h: Add new EWMH window types. * gdk/win32/gdkscreen-win32.c (gdk_screen_is_composited)
* Match parameter names with the headers.Matthias Clasen2006-04-241-1/+2
| | | | | | | | | | | | | | | | | | | 2006-04-24 Matthias Clasen <mclasen@redhat.com> * gtk/gtkclipboard.h: * gtk/gtkprinter.c: * gtk/gtkprintsettings.h: * gtk/gtkprintsettings.c: Match parameter names with the headers. * gtk/gtkprintoperation-unix.c (gtk_print_run_page_setup_dialog): Add docs. * gtk/gtktextbufferrichtext.c (gtk_text_buffer_deserialize): * gtk/gtkstatusicon.c (gtk_status_icon_get_storage_type): * gtk/gtktreeview.c (gtk_tree_view_set_search_position_func): * gtk/gtktreeview.c (gtk_tree_view_get_headers_clickable): * gtk/gtkcellrendererspin.c (gtk_cell_renderer_spin_new): * gtk/gtkmenu.c (gtk_menu_get_for_attach_widget): Fix the docs.
* bail out if there is no need for scrolling (more obvious than addingMichael Natterer2006-03-271-0/+4
| | | | | | | | 2006-03-27 Michael Natterer <mitch@imendio.com> * gtk/gtkmenu.c (gtk_menu_scroll_by): bail out if there is no need for scrolling (more obvious than adding additional conditions to the scroll offset calculation). Fixes bug #335912.
* added boolean property gtk-touchscreen-mode, which essentially meansMichael Natterer2006-02-221-145/+527
| | | | | | | | | | | | | | | | | | 2006-02-22 Michael Natterer <mitch@imendio.com> * gtk/gtksettings.c: added boolean property gtk-touchscreen-mode, which essentially means "there are no motion notify events", so widgets can't use the pointer hovering them for anything. * gtk/gtkmenu.c: if gtk-touchscreen-mode is TRUE, scroll menus when clicking the scroll arrows, since hovering goes undetected. Fixes bug #323028. Added boolean style property "double-arrows" which always makes both scroll arrows visible when the menu is too long. For pushed-in popup menus, both arrows are always shown (regardless of double-arrows), in order to fix user confusion about the blank area. Fixes bug #129463.
* Make this function public API. (#307099, Todd Berman)Matthias Clasen2006-01-101-3/+3
| | | | | | | | | | | | | | | 2006-01-09 Matthias Clasen <mclasen@redhat.com> * gtk/gtk.symbols: * gtk/gtkwindow.h: * gtk/gtkwindow.c (gtk_window_get_group): Make this function public API. (#307099, Todd Berman) * gtk/gtkmenu.c: * gtk/gtkmain.c: * gtk/gtkentrycompletion.c: * gtk/gtkcombo.c: * gtk/gtkcombobox.c: Update all callers.
* Accept NULL as a detach func. (#323386, Jorn Baayen)Matthias Clasen2005-12-061-2/+2
| | | | | | | 2005-12-06 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenu.c (gtk_menu_attach_to_widget): Accept NULL as a detach func. (#323386, Jorn Baayen)
* applied modified patch from maemo-gtk which adds a "horizontal-padding"Michael Natterer2005-12-021-12/+33
| | | | | | | 2005-12-02 Michael Natterer <mitch@imendio.com> * gtk/gtkmenu.c: applied modified patch from maemo-gtk which adds a "horizontal-padding" style property. Fixes bug #323036.
* removed redundant assignment of widget_class->motion_notify_event.Michael Natterer2005-12-011-1/+0
| | | | | | | 2005-12-01 Michael Natterer <mitch@imendio.com> * gtk/gtkmenu.c (gtk_menu_class_init): removed redundant assignment of widget_class->motion_notify_event.
* deprecated floating/sink API and implemented it in terms of the GObjectTim Janik2005-11-231-7/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Wed Nov 23 18:55:47 2005 Tim Janik <timj@imendio.com> * gtk/gtkobject.[hc]: deprecated floating/sink API and implemented it in terms of the GObject floating/sink API. * gtk/gtkaboutdialog.c: * gtk/gtkaction.c: * gtk/gtkcellview.c: * gtk/gtkclist.c: * gtk/gtkcolorsel.c: * gtk/gtkcombobox.c: * gtk/gtkfilechooserdefault.c: * gtk/gtkiconview.c: * gtk/gtkinvisible.c: * gtk/gtkitemfactory.c: * gtk/gtklayout.c: * gtk/gtkmenu.c: * gtk/gtkmenutoolbutton.c: * gtk/gtknotebook.c: * gtk/gtkprogress.c: * gtk/gtkrange.c: * gtk/gtkspinbutton.c: * gtk/gtkstatusicon.c: * gtk/gtktext.c: * gtk/gtktextview.c: * gtk/gtktoolbar.c: * gtk/gtktoolbutton.c: * gtk/gtktoolitem.c: * gtk/gtktreeitem.c: * gtk/gtktreeview.c: * gtk/gtktreeviewcolumn.c: * gtk/gtkuimanager.c: * gtk/gtkviewport.c: * gtk/gtkwidget.c: * gtk/gtkwindow.c: ported to use GObject's g_object_ref_sink(). * gtk/gtkcolorsel.c: * gtk/gtkfilechooserdefault.c: * gtk/gtkaboutdialog.c: fixed compiler warnings.
* Convert GtkMenu to g_type_class_add_private.Matthias Clasen2005-11-211-38/+38
| | | | | | 2005-11-21 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenu.c: Convert GtkMenu to g_type_class_add_private.
* Fix some compiler warnings. (#321141, Kjartan Maraas)Matthias Clasen2005-11-101-6/+6
| | | | | | | 2005-11-10 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenu.c: Fix some compiler warnings. (#321141, Kjartan Maraas)
* Various cleanups. (#315360, Kjartan Maraas)Matthias Clasen2005-09-131-8/+0
| | | | | | 2005-09-13 Matthias Clasen <mclasen@redhat.com> * gtk/*.c: Various cleanups. (#315360, Kjartan Maraas)
* Intern some more strings.Matthias Clasen2005-09-011-15/+15
| | | | | | | | | 2005-09-01 Matthias Clasen <mclasen@redhat.com> * gdk/*.c: Intern some more strings. * gtk/gtkintl.h: * gtk/*.c: Define an I_() macro and use it instead of the bulky g_intern_static_string().
* Also intern static strings passed to g_object_set_data()Matthias Clasen2005-08-311-12/+12
|
* Intern type names in code generated by glib-mkenums, too.Matthias Clasen2005-08-311-1/+1
| | | | | | | | | | | | | 2005-08-31 Matthias Clasen <mclasen@redhat.com> * gdk/Makefile.am: * gtk/Makefile.am: Intern type names in code generated by glib-mkenums, too. * gtk/*.c: * gdk/x11/*.c: * gdk/*.c: Intern type names before registering the type to avoid unnecessary copies.
* Only cancel if the menu was active. (#314298, Christian Persch, analysisMatthias Clasen2005-08-291-1/+1
| | | | | | | 2005-08-29 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenu.c (gtk_menu_grab_notify): Only cancel if the menu was active. (#314298, Christian Persch, analysis by Mark McLoughlin)
* Take window groups into account. (#309473, Diego Gonzalez)Matthias Clasen2005-07-051-4/+11
| | | | | | | | | | 2005-07-05 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenu.c (gtk_menu_grab_notify): Take window groups into account. (#309473, Diego Gonzalez) * gtk/gtkwindow.[hc]: Add a non-exported function to get the grab widget of a window group.
* Cancel menus when they are grab-shadowed by something thats not a submenu.Matthias Clasen2005-06-271-0/+14
| | | | | | | | 2005-06-27 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenu.c (gtk_menu_grab_notify): Cancel menus when they are grab-shadowed by something thats not a submenu. (#145416, Euan MacGregor)
* Pay attention to the scroll offset when drawing the box. (#308834, Tom vonMatthias Clasen2005-06-271-2/+3
| | | | | | | | 2005-06-26 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenu.c (gtk_menu_paint): Pay attention to the scroll offset when drawing the box. (#308834, Tom von Schwerdtner)
* Allow setting background images on menus. (#169532, Benjamin Otte)Matthias Clasen2005-04-071-0/+9
| | | | | | | 2005-04-07 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenu.c (gtk_menu_paint): Allow setting background images on menus. (#169532, Benjamin Otte)
* Translate x, y into widget coordinates instead of root coordinates. PatchSøren Sandmann2005-04-041-2/+3
| | | | | | | | Mon Apr 4 12:14:35 2005 Søren Sandmann <sandmann@redhat.com> * gtk/gtkmenu.c (gtk_menu_handle_scrolling): Translate x, y into widget coordinates instead of root coordinates. Patch from Jorn Baayen. (#172236)
* Allow to pop up menus without grabbing the keyboard. Useful for stuff likeMichael Natterer2005-03-311-7/+14
| | | | | | | | | | | | | | | | | | | 2005-03-31 Michael Natterer <mitch@gimp.org> Allow to pop up menus without grabbing the keyboard. Useful for stuff like virtual keyboards. Fixes bug #159890 * gtk/gtk.symbols * gtk/gtkmenushell.[ch]: added boolean property "take-focus" and public API gtk_menu_shell_set/get_take_focus(). * gtk/gtkmenu.c (gtk_menu_popup) (popup_grab_on_window): don't grab the keyboard if take_focus is FALSE. * gtk/gtkmenuitem.c (_gtk_menu_item_popup_submen): propagate the parent menu_shell's take_focus property to the submenu which is about to be popped up.
* Use canonical names for g_object_notify() as well.Matthias Clasen2005-03-261-8/+8
| | | | | | | | 2005-03-26 Matthias Clasen <mclasen@redhat.com> * gtk/*.c: * gdk/gdkdisplaymanager.c: Use canonical names for g_object_notify() as well.
* Define macros GTK_PARAM_READABLE, GTK_PARAM_WRITABLE, GTK_PARAM_READWRITEMatthias Clasen2005-03-221-12/+13
| | | | | | | | | | | | 2005-03-21 Matthias Clasen <mclasen@redhat.com> * gtk/gtkprivate.h: Define macros GTK_PARAM_READABLE, GTK_PARAM_WRITABLE, GTK_PARAM_READWRITE which are like their G_ counterparts, but also mark the name, nick and blurb as static. * gtk/*.c: Mark param spec strings as static, using the new macros.
* Make PLT-reduction work with gcc4, and don't include everything inMatthias Clasen2005-03-201-1/+3
| | | | | | | | | | | | | | | | | | 2005-03-20 Matthias Clasen <mclasen@redhat.com> Make PLT-reduction work with gcc4, and don't include everything in gdkalias.h: * gtk/grk.symbols: Group symbols by header and source file. * gtk/makegtkalias.pl: Protect definitions by the same preprocessor symbols used to guard the headers. Move the alias declarations to a separate file which is produced when calling makegtkalias.pl -def * gdk/Makefile.am (gtkaliasdef.c): Add a rule to generate this file. * gtk/*.c: Include gtkalias.h after the other headers, include gtkaliasdef.c at the bottom. * gtk/*.h: Small cleanups.
* More canonical property names.Matthias Clasen2005-03-091-4/+4
|
* gdk/gdkkeyuni.c gdk/gdkpixbuf-drawable.c gdk/gdkrgb.c gdk/x11/gdkdnd-x11.cMatthias Clasen2005-03-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-03-01 Matthias Clasen <mclasen@redhat.com> * gdk/gdkkeyuni.c * gdk/gdkpixbuf-drawable.c * gdk/gdkrgb.c * gdk/x11/gdkdnd-x11.c * gdk/x11/gdkevents-x11.c * gdk/x11/gdkproperty-x11.c * gdk/x11/gdkvisual-x11.c * gdk-pixbuf/gdk-pixbuf.c * gtk/gtkaction.c * gtk/gtkbindings.c * gtk/gtkcolorbutton.c * gtk/gtkcombo.c * gtk/gtkcontainer.c * gtk/gtkfilechooserdefault.c * gtk/gtkfilesel.c * gtk/gtkgamma.c * gtk/gtkiconview.c * gtk/gtkinputdialog.c * gtk/gtkitemfactory.c * gtk/gtkmenu.c * gtk/gtktextview.c * gtk/gtktooltips.c * gtk/gtktreedatalist.c * gtk/gtkuimanager.c * gtk/tree_minus.xpm * gtk/tree_plus.xpm * gtk/xdgmime/xdgmime.c * gtk/xdgmime/xdgmime.h: Move constant data to .rodata.
* Support vertical menubars (#166632):Matthias Clasen2005-02-111-9/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-02-11 Matthias Clasen <mclasen@redhat.com> Support vertical menubars (#166632): * gtk/gtkenums.h (GtkPackDirection): New enumeration for pack directions, with values for left-to-right, right-to-left, top-to-bottom and bottom-to-top. * gtk/gtk.symbols: * gtk/gtkmenubar.h: * gtk/gtkmenubar.c: Add two properties, pack-direction and child-pack-direction, which specify how children and grandchildren of a menubar are packed, with getters and setters. * gtk/gtkmenubar.c (gtk_menu_bar_set_property): (gtk_menu_bar_get_property): Implement set_property and get_property. * gtk/gtkmenubar.c (gtk_menu_bar_size_request): (gtk_menu_bar_size_allocate): Take pack direction into account. * gtk/gtkmenubar.c (gtk_menu_bar_move_current): Implement move_current here move all the menubar-specific direction tweaking from the generic menushell implementation here. * gtk/gtkmenu.c (gtk_menu_move_current): Move menu-specific direction tweaking from the generic menushell implementation here. * gtk/gtkmenuitem.c (gtk_menu_item_size_request): (gtk_menu_bar_size_allocate): Take pack direction into account. * gtk/gtkimagemenuitem.c (gtk_image_menu_item_size_request) (gtk_image_menu_item_size_allocate): (gtk_image_menu_item_toggle_size_request): Take child pack direction into account and pack the image vertically if necessary. * gtk/gtkmenushell.c (gtk_menu_shell_real_select_item): Set the submenu direction to left-right for menuitems in vertical menubars. (gtk_real_menu_shell_move_current): Simplify by moving direction tweaking to menu- and menubar-specific implementations. Take pack direction into account when doing fallbacks. * tests/testmenubars.c: Test menubars in various packing direction combinations. * tests/Makefile.am (noinst_PROGRAMS): Add testmenubars.
* Don't do one roundtrip per motion event. (#166173, pointed out by ChrisMatthias Clasen2005-02-031-11/+21
| | | | | | | | 2005-02-03 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenu.c (gtk_menu_handle_scrolling): Don't do one roundtrip per motion event. (#166173, pointed out by Chris Lee, patch by Søren Sandmann)
* Bug #147497, make menu items activate immediately when you release theSøren Sandmann2004-12-221-0/+76
| | | | | | | | | | | | | Wed Dec 22 11:35:41 2004 Søren Sandmann <sandmann@redhat.com> Bug #147497, make menu items activate immediately when you release the button. * gtk/gtkmenu.c (gtk_menu_enter_notify, menu_motion_notify): Make items activate immediately. * gtk/gtkmenu.c (definitely_within_item): New function * gtk/gtkmenu.c (check_threshold): New function
* Implement scroll wheel scrolling for menus. (#88532)Matthias Clasen2004-12-131-2/+2
| | | | | | | 2004-12-13 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenu.c (gtk_menu_scroll): Implement scroll wheel scrolling for menus. (#88532)
* Implement scroll wheel scrolling for menus. (#88532)Matthias Clasen2004-12-131-10/+42
| | | | | | | 2004-12-13 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenu.c (gtk_menu_scroll): Implement scroll wheel scrolling for menus. (#88532)
* Remove some warnings.Matthias Clasen2004-11-071-2/+2
| | | | | | 2004-11-07 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenu.c (menu_change_screen): Remove some warnings.
* Don't unnecessarily call gtk_menu_position(), since that function hasMatthias Clasen2004-11-051-1/+7
| | | | | | | | | 2004-11-05 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenu.c (menu_change_screen): Don't unnecessarily call gtk_menu_position(), since that function has issues when called on a menu whose parent is unrealized. (#157354, Adam Hooper)
* Change from 50 to 20 to make the menus scroll faster.Søren Sandmann2004-09-191-1/+1
| | | | | | | Sun Sep 19 23:56:18 2004 Søren Sandmann <sandmann@redhat.com> * gtk/gtkmenu.c (MENU_SCROLL_TIMEOUT2): Change from 50 to 20 to make the menus scroll faster.
* Steal ATTACHED_MENUS list so its tail isn't freed when we re-set it,Matthias Clasen2004-08-251-1/+1
| | | | | | | | 2004-08-25 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenu.c (gtk_menu_attach_to_widget): Steal ATTACHED_MENUS list so its tail isn't freed when we re-set it, noticed by Hans Petter Jansson.
* Add hidden aliases for exported symbols which are used internally in orderMatthias Clasen2004-08-091-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mon Aug 9 12:48:04 2004 Matthias Clasen <maclas@gmx.de> Add hidden aliases for exported symbols which are used internally in order to get rid of many PLT entries. (#145519, Arjan van de Ven) * gtk/Makefile.am: Add rules to generate gtk.def and from gtk.symbols, and make make check check the abi with abicheck.sh. (gtk_private_h_sources): Add gtkinternals.h (gtk_built_private_headers): Add gtkalias.h (gtk_extra_sources): Add gtk.symbols (EXTRA_DIST): Add makegtkalias.pl and abicheck.sh * gtk/gtk.symbols: New file. Definition of the GTK+ ABI. The file can be processed by cpp to filter out certain subsets of symbols. * gtk/abicheck.sh: New file. Script to check the actually symbols exported from libgtk-x11.2.0.so against the symbols found in gtk.symbols. * gtk/makegtkalias.pl: New file. Perl script to generate the header containing the alias definitions for internally used exported symbols from a list of symbols. * gtk/gtkinternals.h: New file. An uninstalled header listing symbols which must be exported for some reason and do not appear in any other header. * gtk/*.c: Include gtkalias.h
* Don't reparent back to menu->toplevel if it is already gone because we'reMatthias Clasen2004-07-151-1/+2
| | | | | | | | 2004-07-15 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Don't reparent back to menu->toplevel if it is already gone because we're shutting down. (#147656, John Cupitt)
* Make sure private->monitor_num is a valid monitor number before using it.Matthias Clasen2004-07-061-0/+3
| | | | | | | | | | | | | 2004-07-06 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenu.c (gtk_menu_position): Make sure private->monitor_num is a valid monitor number before using it. (#139187, Michael Natterer) 2004-06-25 Matthias Clasen <mclasen@redhat.com> * gtk/gtkfontbutton.c (gtk_font_button_update_font_info): Avoid a crash if the font doesn't exist. (#144967, Yevgen Muntyan)
* Revert the "drag select" part of #141169. (#144011).Soeren Sandmann2004-06-091-32/+1
| | | | | | | Thu Jun 10 00:22:51 2004 Soeren Sandmann <sandmann@daimi.au.dk> * gtk/gtkmenu.c: Revert the "drag select" part of #141169. (#144011).
* Revert previous commit. It caused the problem of sticky right click menusSoeren Sandmann2004-06-031-21/+17
| | | | | | | Thu Jun 3 08:07:59 2004 Soeren Sandmann <sandmann@daimi.au.dk> * gtk/gtkmenu.c: Revert previous commit. It caused the problem of sticky right click menus to return.