2004-02-24 Federico Mena Quintero <federico@ximian.com>
* gtk/tmpl/gtkexpander.sgml: Added a section about usage when you
want to manage the expanded widgets yourself.
Tue Feb 24 14:45:03 2004 Owen Taylor <otaylor@redhat.com>
* === Released 2.3.3 ===
* configure.in: Version 2.3.3, interface age 0.
* NEWS: Finish updates for 2.3.3.
Thu Feb 19 00:09:35 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkradiomenuitem.h:
* gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_from_widget):
(gtk_radio_menu_item_new_with_label_from_widget):
(gtk_radio_menu_item_new_with_mnemonic_from_widget): New
convenience functions analogous to similar API on GtkRadioButton.
(#51700, Vitaly Tishkov, patch by Soeren Sandmann)
2004-02-16 Federico Mena Quintero <federico@ximian.com>
* gtk/migrating-checklist.sgml: Umm, I'm on crack. Use
gtk_accelerator_get_default_mod_mask().
* gdk/tmpl/windows.sgml: Removed the incorrect description from
GDK_MODIFIER_MASK.
2004-02-16 Federico Mena Quintero <federico@ximian.com>
* gdk/tmpl/windows.sgml: Added an example of how to use
GDK_MODIFIER_MASK to test for modifier keys correctly.
* gtk/migrating-checklist.sgml: Likewise.
Fri Feb 13 00:54:59 2004 Matthias Clasen <maclas@gmx.de>
Fix for #104811, Padraig O'Briain:
* gtk/gtkscale.h:
* gtk/gtkscale.c (_gtk_scale_clear_layout):
* gtk/gtkscale.c (gtk_scale_get_layout_offsets):
* gtk/gtkscale.c (gtk_scale_get_layout): New functions to determine the
text and its position from a GtkScale, to make it more accessible.
* gtk/gtkhscale.c (gtk_hscale_get_layout_offsets):
* gtk/gtkvscale.c (gtk_vscale_get_layout_offsets): Implementations of the
new GtkScale vfunc.
Thu Feb 12 23:55:08 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktooltips.h:
* gtk/gtktooltips.c (gtk_tooltips_get_info_from_tip_window): New
function to improve the accessibility of tooltips. (#114851,
Padraig O'Briain)
Thu Feb 12 23:16:04 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_popup):
* gtk/gtkcombobox.c (gtk_combo_box_popdown): Make these public and
add docs.
Fri Feb 6 23:40:24 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (create_file_list): clean up the
packing of the file selector.
Sat Feb 7 00:06:44 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkaccelmap.[hc]: Add change notification for GtkAccelMap,
by on-demand instantiating a singleton object with a "changed"
signal.
* gtk/gtkmarshalers.list (VOID:STRING,UINT,FLAGS): Add marshaller
for GtkAccelMap::changed.
Fri Jan 30 00:13:46 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombo.c (gtk_combo_set_popdown_strings): Allow NULL
for strings to clear the list. (#105386, Marco Pesenti Gritti)
Wed Jan 28 22:51:41 2004 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtktreeviewcolumn.sgml: Remove unfinished sentence, until
jrb finds time to write a real description.
2004-01-23 Federico Mena Quintero <federico@ximian.com>
* gtk/migrating-checklist.sgml: Note that a widget must be
focusable for the menu keybindings to work.
2004-01-22 Federico Mena Quintero <federico@ximian.com>
* gtk/migrating-checklist.sgml: Mention when it is useful to use
GdkEventExpose.region rather than GdkEventExpose.area.
2004-01-22 Federico Mena Quintero <federico@ximian.com>
* gtk/migrating-checklist.sgml: Point to GtkEntry as an example of
a widget that uses a custom function to position its popup menu.
2004-01-22 Federico Mena Quintero <federico@ximian.com>
* gtk/migrating-checklist.sgml: New chapter with a "Migration
Checklist" of things people need to do to be good citizens in the
GTK+ world. This is mainly a way to tell people about interesting
APIs that they should use instead of hand-hacked approaches.
* gtk/gtk-docs.sgml: Added migrating-checklist.sgml.
* gtk/Makefile.am (content_files): Likewise.
Thu Jan 15 23:54:46 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-docs.sgml: Move the old chapters about 1.2 and 2.0
changes to Federicos new 'migrating' part.
Mon Jan 12 23:40:34 2004 Matthias Clasen <maclas@gmx.de>
* tests/testmerge.c: Adjust to the new connect_proxy signals.
* gtk/gtkuimanager.c
* gtk/gtkactiongroup.c
* gtk/gtkaction.c: Move the connect_proxy and disconnect_proxy signals
from GtkAction to GtkActionGroup and proxy it on GtkUIManager. This
removes the confusion between the disconnect_/connect_proxy signals
and the (unrelated) virtual functions of the same name and aligns
the setup with the pre_/post_activate signals.
2004-01-12 Jody Goldberg <jody@gnome.org>
* gtk/gtkaction.c (connect_proxy) : only connect activate for menus
with no submenus otherwise it looks like we activate every time a
submenu opens.
2004-01-10 Jody Goldberg <jody@gnome.org>
* gtk/gtkuimanager.c (d) : Add a debug macro to quiet the spew.
s/merge_signals/ui_manager_signals/ for readability.
(gtk_ui_manager_class_init) : add pre_activate and post_activate
signals.
(cb_proxy_pre_activate) : new.
(cb_proxy_post_activate) : new.
(gtk_ui_manager_insert_action_group) : connect the proxies for
GtkActionGroup::pre/post_activate
(gtk_ui_manager_remove_action_group) : disconnect them.
* gtk/gtkactiongroup.c (gtk_action_group_class_init) : add
'sensitive', and 'visible' properties. Also add pre_activate and
post_activate signals to help deal with activations at a higher
level (eg GtkUIManager)
(gtk_action_group_init) : init sensitive and visible
(gtk_action_group_set_property) : add sensitive and visible
(gtk_action_group_get_property) : add sensitive and visible
(gtk_action_group_get_sensitive) : new.
(gtk_action_group_get_visible) : new.
(cb_set_action_sensitivity) : new with minor optimization that only
signals sensitivity changes if the action could possibly change.
(cb_set_action_visiblility) : ditto.
(gtk_action_group_set_sensitive) : new. walk the actions directly
rather than using notify::sensitive because that is simpler, easier
to read, and more efficient.
(gtk_action_group_set_visible) : ditto.
(gtk_action_group_add_action) : Each action can only be in 1 group,
set GtkAction::action_group.
(gtk_action_group_remove_action) : clear it.
(gtk_action_group_add_toggle_actions_full) : warning suppression.
(gtk_action_group_add_radio_actions_full) : warning suppression.
(_gtk_action_group_emit_pre_activate) : new protected routine for use
by GtkAction.
(_gtk_action_group_emit_post_activate) : ditto.
* gtk/gtkaction.c (gtk_action_class_init) : add 'action_group' property.
(gtk_action_init) : initialize it.
(gtk_action_get_property) : get.
(gtk_action_set_property) : set it via
(gtk_action_set_action_group) : new function.
(gtk_action_sync_sensitivity) : new routine to sync proxy sensitivity
with the logical sensitivity (action & group) rather than the simple
action::sensitivity.
(gtk_action_sync_visible) : use gtk_action_is_visible to handle
logical visibility (action & group) rather than the simple
action::visible. Use widget show/hide directly.
(connect_proxy) : handle the custom sensitivity handler.
Make the TOOL_BUTTON signals more general and support TOOL_ITEM
directly, with special cases for TOOL_BUTTON. Still not especially
good it might be useful to handle label/use_underline by parmspec
lookup. Those are likely to be implemented by custom types, and are
assumed to exist in GtkToolItem.
(disconnect_proxy) : disconnect the new sensitivity handler.
(_gtk_action_emit_activate) : add pre/post signals.
(gtk_action_activate) : use logical sensitivity.
(gtk_action_is_sensitive) : logical sensitivity.
(gtk_action_get_sensitive) : actual sensitivity.
(closure_accel_activate) : use logical sensitivity.
Fri Jan 9 00:34:57 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.h:
* gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): New function to
obtain a list of toplevel widgets constructed by the ui manager.
* gtk/gtkuimanager.h (GtkUIManagerItemType): Change to flags, so that
the values can be combined for gtk_ui_manager_get_toplevels().
* tests/testmerge.c: Add a "Dump toplevels" button to test
gtk_ui_manager_get_toplevels().
Sun Dec 21 01:54:40 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkmenushell.h:
* gtk/gtkmenushell.c (gtk_menu_shell_cancel): New function
to emit the "cancel" signal on a menu shell.
* gtk/gtkmenu.c (gtk_menu_key_press):
* gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu):
* gtk/gtkmenubar.c (_gtk_menu_bar_cycle_focus): Use the
new function instead of directly emitting the
signal. (#81803, Owen Taylor)
Thu Dec 11 00:35:12 2003 Matthias Clasen <maclas@gmx.de>
Changes to allow "no input" windows (#64613):
* gdk/gdkwindow.h (struct _GdkWindowObject): Add a new boolean
field accept_focus.
* gdk/gdkwindow.h (gdk_window_set_accept_focus): New function to
set it.
* gtk/gtkwindow.[hc]: Add a boolean property "accept_focus"
and gtk_window_get_focus() and gtk_window_set_focus().
* gdk/win32/gdkwindow-win32.c (gdk_window_new):
* gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
* gdk/x11/gdkwindow-x11.c (gdk_window_set_new):
Initialize the accept_focus field to TRUE.
* gdk/win32/gdkwindow-win32.c (gdk_window_set_accept_focus):
* gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_accept_focus):
* gdk/x11/gdkwindow-x11.c (gdk_window_set_accept_focus):
Implementations for the various backends. The Win32 and linux-fb
implementations set the accept_focus field, but don't use it yet
to actually implement noinput windows. The X implementation updates
the WM_HINTS to select the globally active input model (see the
ICCCM) if accept_focus is FALSE.
* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Ignore the
WM_TAKE_FOCUS message if accept_focus is FALSE.
2003-12-09 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (shortcuts_append_home): Use "Home"
rather than "Username's Home" (#125964).
(shortcuts_selection_changed_cb): New callback, check the
sensitivity of the Remove Bookmark button at the right time.
(shortcuts_row_activated_cb): It is not necessary to check the
sensitivity here.
2003-12-08 Federico Mena Quintero <federico@ximian.com>
* gtk/migrating-GtkAction.sgml: New chapter about how to migrate
from gnome-ui/bonobo-ui/etc. to GtkAction.
* gtk/gtk-docs.sgml: Integrated the above.
* gtk/Makefile.am (content_files): Added migrating-GtkAction.sgml.
Mon Dec 8 10:54:44 2003 Owen Taylor <otaylor@redhat.com>
* === Released 2.3.1 ===
* NEWS: Updates for 2.3.1
* configure.in: Version 2.3.1, interface age 0, binary age 301.
* gtk/gtkmenuitem.c (gtk_menu_item_can_activate_accel):
Rename from gtk_menu_item_real_can_activate_accel() to
match GTK+ convention, improve comment.
* gtk/gtkwidget.c: Document gtk_widget_can_activate_accel(),
can ::can-activate-accel signal.
* gtk/gtkwidget.c (closure_accel_activate): Fix spelling
in comment.
* gtk/gtkmenu.c (gtk_menu_real_can_activate_accel): Clean
up comment.
* gtk/gtkcellview{,menuitem}.[ch]: Move GET_PRIVATE() macros
into the .c file.
Mon Dec 8 12:09:21 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkicontheme.c (find_builtin_icon): Fix a
missing 'else'. (#128816, Jorn Baayen)
2003-12-08 Federico Mena Quintero <federico@ximian.com>
* gtk/migrating-GtkAction.sgml: New chapter about how to migrate
from gnome-ui/bonobo-ui/etc. to GtkAction.
* gtk/gtk-docs.sgml: Integrated the above.
* gtk/Makefile.am (content_files): Added migrating-GtkAction.sgml.
Fri Nov 21 00:09:36 2003 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkfontsel.sgml:
* gtk/tmpl/gtkfontseldlg.sgml: Remove leftover documentation of
the filter functionality that got removed long ago.
2003-11-18 Federico Mena Quintero <federico@ximian.com>
* gtk/tmpl/gtkfilechooser.sgml: Added sections section about
generating previews and including extra widgets.
* gtk/gtk-docs.sgml: Added a part about migrating old code to new
widgets.
* gtk/migrating-GtkFileChooser.sgml: New file.
* gtk/Makefile.am (content_files): Added
migrating-GtkFileChooser.sgml.
Sun Nov 16 00:35:29 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkfilechooser.[hc]:
* gtk/gtkentrycompletion.h: Fix parameter name mismatches which
confuse gtk-doc.
Sun Nov 16 00:41:48 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Remove gtk_tool_item_[sg]et_pack_end.
Sun Nov 16 00:32:18 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Move GtkFileChooser out of the
private section, in order to get the autogenerated docs
on hierarchy, signals, properties, etc.
Wed Nov 12 21:40:10 2003 Matthias Clasen <maclas@gmx.de>
Changes to improve menu positioning on Xinerama (#108328):
* gtk/gtkmenu.c (struct _GtkMenuPrivate): Add a menu_num field
to store the monitor on which the menu is to be positioned.
* gtk/gtkmenu.[hc] (gtk_menu_position): Store the monitor number
in the GtkMenuPrivate struct and fetch the monitor geometry after
calling the position_func, in case it has been changed.
* gtk/gtkmenu.c (gtk_menu_set_monitor): New function
to be used in GtkMenuPositionFunc implementations for setting
the monitor_num field in GtkMenuPrivate.
* gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Call
gtk_menu_set_monitor.
Tue Oct 28 10:34:24 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.[ch] (gtk_window_is_active,
gtk_has_toplevel_focus): Add getters corresponding to
the is_active and has_toplevel_focus properties.
(#122531)