2006-04-30 Matthias Clasen <mclasen@localhost.localdomain>
* gtk/gtkstatusicon.c (gtk_status_icon_class_init): Fix the definition
of the ::size-changed signal, and improve its documentation.
(#340112, Christian Persch)
2006-04-29 Matthias Clasen <mclasen@redhat.com>
* gtk/gtk.symbols:
* gtk/gtkstatusicon.h:
* gtk/gtkstatusicon.c (gtk_status_icon_position_menu): Add a menu
position function for use with popups on status icons. (#334573,
Christian Persch)
2006-04-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_drag_begin): Don't force
the standard DND icon if the user has a custom DND source.
(#339522, Joe Wreschnig)
2006-04-28 Michael Natterer <mitch@imendio.com>
* gtk/gtktextbuffer.c (create_clipboard_contents_buffer): keep a
reference to the source buffer while the clipboard contents buffer
exists, because it is needed for serializing the contents buffer.
Makes copying from the contents buffer possible even after the
resp. text view is destroyed (for example when there is a
clipboard manager running on app exit) (bug #339195).
2006-04-27 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentry.c (popup_position_func): Improve positioning
of the menu when popped up by keynav. (#334987, Christian
Persch)
2006-04-26 Federico Mena Quintero <federico@novell.com>
* gtk/gtkdialog.c (gtk_dialog_close): Don't make this conditional
on having a GTK_RESPONSE_CANCEL button -> end the idiocy. Fixes
bug #101293.
2006-04-26 Kristian Rietveld <kris@imendio.com>
* gtk/gtktreeview.c (node_is_visible): new function,
(validate_visible_area): when a node is validated, only queue a
redraw for that node, not for the entire widget (a redraw for the
entire widget is only needed when the sizes change, and
_queue_resize() will take care of that),
(do_validate_rows): do not queue a redraw, redraws are only needed
for changes in the visible area and validate_visible_area() takes
care of that,
(gtk_tree_view_row_inserted): for fixed height mode, only queue
a resize and redraw if the node is visible, else no redraw is needed.
2006-04-26 Kristian Rietveld <kris@imendio.com>
If this new "row-ending-details" property is turned on, more
detailed "details" will be passed to the theme engine for drawing
the background, drop indicator and focus rectangle. Requirement is
that the theme engine supports these details. (#333760).
* gtk/gtktreeview.c (gtk_tree_view_class_init): add row-ending-details
style property,
(gtk_tree_view_bin_expose): pass more detailed detail to
gtk_paint_flat_box() if the property is turned on,
(gtk_tree_view_bin_expose): likewise for the drop indicator,
(gtk_tree_view_bin_expose): likewise for the focus rectangle.
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)
2006-04-24 Matthias Clasen <mclasen@redhat.com>
* gtk/gtk.symbols:
* gtk/gtkprintoperation.c (gtk_print_operation_run_async): Refactor the
gtk_print_operation_run() code and add an _async version.
* gtk/gtkprintoperation-private.h:
* gtk/gtkprintoperation-unix.c
(_gtk_print_operation_platform_backend_run_dialog_async)
(gtk_print_run_page_setup_dialog_async): Variants of the run functions
which don't call gtk_dialog_run(), but only show the dialog and return,
and handle the response in a signal handler.
* gtk/gtkprintoperation-win32.c (gtk_print_run_page_setup_dialog_async)
(_gtk_print_operation_platform_backend_run_dialog_async): Implement these
by calling the sync versions.
2006-04-24 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkprintoperation-unix.c (gtk_print_run_page_setup_dialog):
Return a copy of the original page setup if the dialog was canceled.
2006-04-23 Matthias Clasen <mclasen@redhat.com>
* gtk/Makefile.am: Add gtkprintutils.[hc]
* gtk/gtkprintutils.[hc]: New files, move the unit conversion
functions here.
* gtk/gtkpagesetupunixdialog.c:
* gtk/gtkprintsettings.c:
* gtk/gtkpagesetup.c:
* gtk/gtkpapersize.c: Replace all static copies of to_mm/from_mm
by the copies in gtkprintutils.c.
* gtk/gtkpagesetup.[hc]: Use g types, add documentation.
2006-04-22 Tor Lillqvist <tml@novell.com>
* gtk/Makefile.am (gtk_private_h_sources): Small workaround for
weird bug in some versions of Automake at least on Windows.
2006-04-19 Murray Cumming <murrayc@murrayc.com>
* gtk/gtkfilechooserbutton.c: _GtkFileChooserButtonPrivate:
Added has_title flag so we can remember whether a title has
been set.
(gtk_file_chooser_button_constructor): If no title has been
set then set it to the default title. This means that the
default title will be used if the dialog was instantiated with
g_object_new(), without using the gtk_file_chooser_button_new()
convenience function. This helps language bindings.
(gtk_file_chooser_button_set_property): Set has_title when
setting the title.
2006-04-18 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkiconcache.c: Apply a patch by Paolo Borelli to factor
out a strip_suffix() function and save some memory. (#338307)
2006-04-18 Carlos Garnacho <carlosg@gnome.org>
* gtk/gtknotebook.c (gtk_notebook_pages_allocate): removed wrong
condition check that caused tab labels not to be drawn under certain
circumstances. Bug #338734.
2006-04-17 Christian Persch <chpe@cvs.gnome.org>
* gtk/gtkdnd.c: (gtk_drag_dest_set), (gtk_drag_dest_set_proxy): Fix
UMR in gtk_drag_dest_motion. Bug #338725.
2006-04-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_page_allocate): Reorganize
to avoid a possible NULL dereference. (Coverity)
2006-04-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkuimanager.c (start_element_handler): Don't pass
a negative value as string length to get_child_node(). (Coverity)
2006-04-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_remove): Silently do nothing
if the widget is not a child. (Coverity)
2006-04-11 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextview.c (selection_motion_event_handler): Remove
some unused variables.
* gtk/gtktreeview.c ((gtk_tree_view_search_position_func): Apply
a patch from David Trowbridge to improve the positioning of the
search popup. (#338047)
2006-04-11 Emmanuele Bassi <ebassi@cvs.gnome.org>
* gtk/gtkrecentmanager.c (gtk_recent_manager_init)
(gtk_recent_manager_new): Remove the unneeded setting of the
storage file inside the constructor. (Murray Cumming)
(build_recent_items_list): Reset the dirty bit when done rebuilding
the list from the storage file.
2006-04-11 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkinputdialog.c (gtk_input_dialog_set_mapping_mode): Don't
dereference info before checking it for NULL. (Coverity)
2006-04-10 Michael Natterer <mitch@imendio.com>
* gtk/gtktextbufferrichtext.c (gtk_text_buffer_deserialize):
pasted rich text should not be affected by tags that are active at
the insertion point. Therefore, remove and remember all active
tags, and re-apply them left and right of the inserted text after
pasting. Fixes bug #337653.
2006-04-05 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextview.c (text_window_realize): Lower the window, to
prevent late-constructed text windows from covering child
widgets. (#336796, Yevgen Muntyan)
2006-04-05 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmain.c (gtk_grab_add, gtk_grab_remove, gtk_grab_notify)
(gtk_grab_notify_foreach): Rework the code which emits ::grab-notify
signals to ensure that we emit enough signals. Also optimize the
code to not do unnecessary tree walking.
* gtk/gtkwidget.c (gtk_widget_class_init): Document ::grab-notify.
2006-04-05 Paolo Borelli <pborelli@katamail.com>
* gtk/gtktextiter.c (gtk_text_iter_ends_line): handle the case of \r
and \n split across lines. Bug #337022.
* tests/testtextbuffer.c: add unit test.
2006-04-03 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkrecentchooser.c (gtk_recent_chooser_error_quark):
* gtk/gtkrecentmanager.c (gtk_recent_manager_error_quark):
* gtk/gtkfilechooser.c (gtk_file_chooser_error_quark):
* gtk/gtkfilesystem.c (gtk_file_system_error_quark):
* gtk/gtkicontheme.c (gtk_icon_theme_error_quark): No point
in making the error path fast by caching quarks.
2006-04-03 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Mention
that %NULL is allowed. (#336937, Christian Neumair)
2006-04-02 Emmanuele Bassi <ebassi@cvs.gnome.org>
* gtk/gtkrecentmanager.c (gtk_recent_manager_set_filename): Build
the items list after setting the storage file.
* gtk/gtkrecentmanager.c (display_closed): Use the right string
for unsetting the default manager object from the screen.
2006-04-01 Behdad Esfahbod <behdad@gnome.org>
* gtk/gtkfilesel.c (gtk_file_selection_get_filename): Use a GString
instead of static buffer to reduce .bss by 8kb. (#336784)
2006-03-31 Behdad Esfahbod <behdad@gnome.org>
* gtk/gtkrecentmanager.c: Convert filenames to UTF-8 before printing
them out in warning messages. (#336770, Morten Welinder)
2006-03-31 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkrecentmanager.c (gtk_recent_info_get_age): Don't
assert that the age is positive. (#336773, Morten Welinder)
2006-03-31 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkicontheme.c (load_icon_data): Don't leak the keyfile
parser in the error case.
* gtk/gtkicontheme.c (load_icon_data, free_unthemed_icon)
(icon_data_free, load_themes):
* gtk/gtkiconcache.c (_gtk_icon_cache_get_icon_data): Use the slice
allocator for GtkIconData and UnthemedIcon structs.
2006-03-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkdnd.c (gtk_drag_get_icon): Make sure to get an
icon window when constructing the fallback_icon. This
fixes a crash when dragging icons between screens in
nautilus. (#325751, Hylke van der Schaaf)
2006-03-29 Emmanuele Bassi <ebassi@cvs.gnome.org>
Import GtkRecent* from libegg.
* gtk/gtkrecentmanager.[ch]: Add GtkRecentManager, an object
for managing a list of recently used resources.
* gtk/gtkrecentchooser.[ch]:
* gtk/gtkrecentchooserdefault.[ch]:
* gtk/gtkrecentchooserdialog.[ch]:
* gtk/gtkrecentchoosermenu.[ch]:
* gtk/gtkrecentchooserprivate.h:
* gtk/gtkrecentchooserutils.[ch]:
* gtk/gtkrecentchooserwidget.[ch]: Add GtkRecentChooser, a
GTypeInterface for widgets implementing viewers for recently
used resources.
* gtk/gtkrecentfilter.[ch]: GtkRecentFilter, a filter object
for GtkRecentChooser implementations.
* gtk/gtk.h:
* gtk/gtk.symbols:
* gtk/Makefile.am: Build glue for GtkRecent*.
2006-03-29 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserdefault.c (queue_edited_idle): Handle
double queuing, rather than asserting that it does not
happen. (#330617)
2006-03-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextview.c (gtk_text_view_start_selection_drag):
(selection_motion_event_handler): Fix drag-selection after
double-click. (#323862, Benjamin Berg)
* gtk/gtktextview.c (get_iter_at_pointer): Factor this out
into a function and use it in move_mark_to_pointer_and_scroll,
drag_scan_timeout and selection_motion_event_handler.
(Paolo Borelli)
2006-03-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextview.c (gtk_text_view_do_popup)
(gtk_text_view_grab_notify): Move the call to
gtk_text_view_end_selection_drag() from gtk_text_view_do_popup
to gtk_text_view_grab_notify, so that it works not only
for the text views own popup, but also for other ways in which
we might become grab-shadowed during a selection drag.
(#74620, Li Yuan)
2006-03-28 Sven Herzberg <herzi@gnome-de.org>
reviewed by: Tim Janik
* gtk/gtkpixmap.c: (gtk_pixmap_set): only check for equal colormaps if
the new pixmap is not NULL; fixes a warning when gtk_pixmap_set is
called from gtk_pixmap_finalize (bug 336254)
2006-03-27 Anders Carlsson <andersca@imendio.com>
* gdk/quartz/gdkevents-quartz.c:
(select_thread_func):
(got_fd_activity):
(poll_func):
(gdk_event_translate):
Make the poll func work with real file descriptors.
We do this by creating a thread which calls poll and then
signals the main thread using a run loop source.
* gtk/gtkclipboard-quartz.c:
(-[GtkClipboardOwner pasteboard:provideDataForType:]):
Remove debugging output
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.
Fri Mar 24 14:53:20 2006 Tim Janik <timj@imendio.com>
* gtk/gtktreemodel.h:
* gtk/gtktextbtree.h: back out G_GNUC_WARN_UNUSED_RESULT on iterator
functions which turned out to cause too much trouble.
2006-03-23 Matthias Clasen <mclasen@redhat.com>
Support subclasses in RC files. (#142417, Todd Berman, patch
based on a patch by Benjamin Berg)
* gtk/gtkrc.h:
* gtk/gtkrc.c: Support <classname> elements in widget_class paths
in rc files which match any classes derived from named class.
(_gtk_rc_init): Use the new syntax in the default rc string.
* gtk/gtkbindings.c: Support the new syntax for bindings too.
* tests/testrc.c: Tests for widget_class path matching
2006-03-23 Carlos Garnacho <carlosg@gnome.org>
* gtk/gtkdnd.c (gtk_drag_dest_motion): make sure that gdk_drag_event()
is called when track_motion is TRUE to receive drag_motion and
drag_leave events properly.
2006-03-22 Matthias Clasen <mclasen@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_remove): Emit the ::page-removed
signal after removing the page. (#335238, Christian Persch)
2006-03-22 Matthias Clasen <mclasen@redhat.com>
Improved DND support for GtkNotebook (#332991, Carlos Garnacho)
* gtk/gtk.symbols:
* gtk/gtkdnd.h:
* gtk/gtkdnd.c: Add a track_motion flag on GtkDragDest
with getter and setter, for cases where the drag destination
is interested in drag motion events independent of targets.
* gtk/gtksettings.c (gtk_settings_class_init): Add a setting
for the timeout used when expanding during DND.
* gtk/gtknotebook.c: Use the track_motion flag to switch
notebook tabs when hovering over tabs during DND.
2006-03-22 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): Use fg_gc to
draw the inter-row drop highlight. Also draw the line all the
way across, and flip it in RTL mode. (#334906, Ian McDonald)
2006-03-22 Michael Natterer <mitch@imendio.com>
* gtk/gtkentry.c: renamed last-char-timeout to
password-hint-timeout and store all its data in a struct attached
as QData.
* gtk/gtkcellrendererspin.c: fix typo in #include.
2006-03-22 Carlos Garnacho <carlosg@gnome.org>
* gtk/gtknotebook.c: send a GtkWidget** instead of a GtkNotebookPage*
when doing tabs DnD, this allows DnD interaction with other widgets,
added some docs for this too.
* tests/testnotebookdnd.c: add some code to test it.
2006-03-22 Matthias Clasen <mclasen@redhat.com>
* gtk/gtk.symbols:
* gtk/gtkcellrendererspin.h:
* gtk/gtkcellrendererspin.c: Add a cell renderer which
uses a spinbutton to edit the value of a cell. (#156023,
Daniel Kasak, Lorenzo Gil Sanchez, Carlos Garnacho)
* gtk/gtk.h:
* gtk/Makefile.am: Glue it in.
2006-03-22 Michael Natterer <mitch@imendio.com>
* gtk/gtkentry.c: applied modified patch from maemo-gtk which
allows the most recently entered character in a hidden entry to be
shown for a configurable period of time. Fixes bug #334560.
2006-03-22 Michael Natterer <mitch@imendio.com>
* gtk/gtktextbuffer.h (enum GtkTextBufferTargetInfo): count down
from G_MAXUINT to avoid clashes with application-added DND
targets.
* gtk/gtktextview.c (gtk_text_view_init): set an empty
GtkTargetList on the drag_dest so it is not NULL when a derived
class' init() function is called.
(gtk_text_view_target_list_notify): copy the text buffer's paste
targets into the view's destinstion target list (preserving
application-added DND targets), instead of replacing the view's
target list. Fixes bug #334399.
2006-03-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_remove_tab_label): Don't leave
page->tab_label dangling.
(gtk_notebook_real_remove): Use GTK_IN_DESTRUCTION.
(gtk_notebook_destroy): Leave the removal of the children
to the container destroy method. (#319032, Yevgen Muntyan)
2006-03-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_remove): Use the existing
GTK_IN_DESTRUCTION flag, rather than roll our own.
2006-03-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmain.c (gtk_get_option_group): Make sure gettext
is initialized before using it. (#335129, Christian Persch)
2006-03-19 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkiconview.c (gtk_icon_view_set_cursor): Document that
@cell must be one of the renderers of the icon view, warn if
it is not, and ignore @start_editing if @cell is not set.
(#335001, Emmanuel Rodriguez)
2006-03-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkactiongroup.c (gtk_action_group_add_actions_full)
(gtk_action_group_add_toggle_actions_full)
(gtk_action_group_add_radio_actions_full): Check for a stock
icon, not a stock item, when deciding whether to use stock-id
or icon-name. (#334760, Jody Goldberg)
2006-03-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkimage.c (gtk_image_clear): Update the size of the image,
by swapping the implementations of gtk_image_clear and
gtk_image_reset. (#334657)
2006-03-15 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_list_button_released)
(gtk_combo_box_list_key_press): Popdown the list before changing
the active iter, otherwise people will be surprised by the
grabs that are still in place when their ::changed handler
runs.
2006-03-14 Matthias Clasen <mclasen@redhat.com>
* tests/testcellrenderertext.c: Add test cases for alignment.
* gtk/gtkcellrenderertext.c: Add an alignment property,
and fix some cases where ellipsize_set was being used to
mean "we're ellipsizing" even when ellipsize was set to NONE.
(#318761, Ross Burton)
2006-03-14 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkimcontextsimple.c: Make return and release work again
to commit a hex sequence. Additionally, make escape reset the
im context when in a hex sequence. (#334423, Behdad Esfahbod)
2006-03-13 Matthias Clasen <mclasen@redhat.com>
Make actions work with named icons. (#323484, Jorn Baayen)
* gtk/gtkactiongroup.c: If the stock-id field of a GtkActionEntry
does not contain a registered stock id, interpret it as an
icon name.
* gtk/gtkaction.c: Add an icon-name property to actions and
use it for icons if a stock-id is not specified.
2006-03-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkwindow.c (gtk_window_compute_configure_request): Don't
for the creation of geometry info here. (#114533)
2006-03-10 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkrange.c: Add a style property ::activate_slider that
allows themes to draw the slider active while dragged. (#311992,
Benjamin Berg)
* gtk/gtkcolorsel.c (gtk_color_selection_init): Fix two labels.
2006-03-10 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkaboutdialog.c (gtk_show_about_dialog): Make the behaviour
of the about dialog consistent with other dialogs in gtk. If the
dialog is constructed with gtk_about_dialog_new(), the creator
is reponsible for handling the response by hiding or closing the
dialog. gtk_show_about_dialog() handles it by hiding the dialog.
(#333360, Daniel Drake)
* README.in: Mention this change.
2006-03-10 Matthias Clasen <mclasen@redhat.com>
Apply a patch from Dennis Cranston to make dialogs more
consistent (#163850)
* gtk/gtkcolorsel.c (make_label_spinbutton): Left-align labels.
* gtk/gtkfontsel.c (gtk_font_selection_init):
* gtk/gtkfontsel.c (gtk_font_selection_dialog_init):
* gtk/gtkcolorsel.c (gtk_color_selection_init):
* gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init):
* gtk/gtkinputdialog.c (gtk_input_dialog_init): Update the layout
of the dialog to follow HIG recommendations. Also update labels.
* gtk/gtkmessagedialog.c (gtk_message_dialog_init): HIG-compatible
spacing.
(gtk_message_dialog_font_size_change): Merged into
gtk_message_dialog_style_set.
2006-03-10 Federico Mena Quintero <federico@novell.com>
Make Shift-P and Shift-N activate typeahead in GtkTreeView
(i.e. they are just normal capital letters). Fixes bug #334098.
* gtk/gtktreeview.c (gtk_tree_view_add_move_binding): Add an
"add_shifted_binding" argument which determines whether we'll add
the same binding with GDK_SHIFT_MASK.
(gtk_tree_view_class_init): Use add_shifted_binding=FALSE for GDK_p
and GDK_n; use TRUE for all the rest.
2006-03-10 Michael Natterer <mitch@gimp.org>
* gtk/gtkentry.[ch]: applied refactored patch from maemo-gtk that
replaces the INNER_BORDER define by an "inner-border" style
property of type GtkBorder. Additionally, add an "inner-border"
object property plus API which allows to override any theme
border, to allow pixel-perfect positioning of entries for inline
editing. Fixes bug #333922.
* gtk/gtk.symbols: add the new public functions.
2006-03-09 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_class_init): Replace the
popup-show and popup-hide signals with a readonle popup-shown
property. (#162531, Christian Persch)
2006-03-09 Ross Burton <ross@openedhand.com>
* gtk/gtkwidget.c:
* gtk/gtkrange.c:
* gtk/gtktogglebutton.c:
Turn off prelighting when gtk-touchscreen-mode is enabled (#135666)
Thu Mar 9 14:29:43 2006 Tim Janik <timj@gtk.org>
* gtk/gtkobject.c (gtk_object_init): move the floating flag from
the GInitiallyUnowned bit to GTK_FLOATING. fixes tests/floatingcheck.
kudos to mitch for debugging this.
2006-03-08 Carlos Garnacho <carlosg@gnome.org>
Rename ::tab-added and ::tab-removed signals to ::page-added and
::page-removed for not conflicting with other tab reordering
implementations. Fixes bug #333743.
Also rename ::tab-reordered to ::page-reordered, and emit it in
gtk_notebook_reorder_child () to make it behave consistently with the
other two signals.
* gtk/gtknotebook.c (gtk_notebook_class_init): rename signals.
(gtk_notebook_reorder_tab)
(gtk_notebook_button_release)
(gtk_notebook_remove)
(gtk_notebook_real_insert_page): emit respectively renamed signals
(gtk_notebook_reorder_child): also emit ::page-reordered here
* tests/testnotebookdnd.c: use renamed signals
2006-03-08 Michael Natterer <mitch@imendio.com>
* gtk/gtkentry.c (gtk_entry_adjust_scroll): make sure that the
text_area_width is always >= 0. Fixes bug #316712 (Dan Winship).
2006-03-07 Federico Mena Quintero <federico@novell.com>
Cancel drags when the grabs get broken. Fixes bug #333056:
* gtk/gtkdnd.c (gtk_drag_selection_received): The time argument is
a guint, not guint32.
(gtk_drag_source_event_cb): Return gboolean, not gint.
(gtk_drag_anim_timeout): Likewise.
(gtk_drag_motion_cb): Likewise.
(gtk_drag_key_cb): Likewise.
(gtk_drag_button_release_cb): Likewise.
(gtk_drag_abort_timeout): Likewise.
(gtk_drag_begin_internal): Connect to "grab-broken-event" on the
ipc_widget.
(gtk_drag_source_info_destroy): Disconnect from the
"grab-broken-event" callback.
(gtk_drag_end): Likewise.
(gtk_drag_grab_broken_event_cb): New callback. We cancel the drag
if the grab was broken and not regrabbed by the DnD code.
2006-03-07 Federico Mena Quintero <federico@novell.com>
* gtk/gtkfilechooserdefault.c (shortcuts_button_press_event_cb):
Hack to let the treeview's button-press-event handler run before
ours. This lets the selection be updated before we pop up a
context menu.
Tue Mar 7 17:16:34 2006 Tim Janik <timj@gtk.org>
* configure.in: depend on glib-2.10.1.
* gtk/gtkobject.c: fixed up messing with non-GtkObject floating flags.
this requires glib-2.10.1.
2006-03-07 Michael Natterer <mitch@imendio.com>
Add infrastructure for copy/paste and DND of rich text for
GtkTextBuffer. Fixes bug #324177.
* gtk/gtktextbufferrichtext.[ch]: new files implementing a
per-buffer registry of rich text formats.
* gtk/gtk.h: #include gtktextbufferrichtext.h
* gtk/gtktextbufferserialize.[ch]: new files implementing an
internal serialization format that can handle all of a text
buffer's tags and pixbufs. It's not useful for anything except
tranfer between instances of GtkTextBuffer (Anders Carlsson).
* gtk/Makefile.am: build the new files.
* gtk/gtkclipboard.[ch]: added convenience APIs for rich text,
just as they exist for plain text and pixbufs.
* gtk/gtkselection.[ch]: added rich text convenience APIs here
too. Return the target list from gtk_target_list_ref(). Register
GtkTargetList as boxed type. Added
gtk_target_table_new_from_list() and gtk_target_table_free(),
which make converting between GtkTargetList and arrays of
GtkTargetEntry considerably easier.
* gtk/gtktextutil.[ch]: added _gtk_text_util_create_rich_drag_icon()
which creates a fancy rich text icon (Matthias Clasen).
* gtk/gtktextbuffer.[ch]: use all the new stuff above and
implement copy and paste of rich text. Added APIs for getting the
target lists used for copy and paste. Added public enum
GtkTextBufferTargetInfo which contains the "info" IDs associated
with the entries of the target lists.
* gtk/gtktextview.c: use the new rich text APIs and
GtkTextBuffer's new target list API to enable DND of rich text
chunks.
* gtk/gtk.symbols: export all the new symbols added.
* tests/testtext.c: added rich text testing stuff.
2006-03-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextview.c (text_window_invalidate_cursors): Take
cursor width into account when calculating the area to
be invalidated. (#333377, #323401 Steve Frécinaux)
2006-03-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmain.c (post_parse_hook): Set error when returning
FALSE. (#333268, Paolo Maggi, Christian Persch)
2006-03-05 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkiconview.c (adjust_wrap_width): Apply some
arbitrary lower limit for the guessed wrap width. (#332466,
Donald Straney)
2006-03-05 Matthias Clasen <mclasen@redhat.com>
Fix handling of image-only buttons. (#332985, Kalle
Vahlmann, #333555)
* gtk/gtkbutton.c (gtk_button_construct_child): Don't
return early if there an image to show.
(show_image): Always return TRUE if there is no text.
2006-03-04 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkexpander.c (gtk_expander_paint_focus): Position
the focus rectangle correctly in RTL mode. (#333291,
Benjamin Berg)
2006-03-03 Michael Natterer <mitch@imendio.com>
Applied modified patch from maemo-gtk which makes separators more
themeable. Fixes bug #332022.
* gtk/gtkwidget.c: added style properties "wide-separators",
"separator-width" and "separator-height".
* gtk/gtkhseparator.c
* gtk/gtkvseparator.c
* gtk/gtkmenuitem.c
* gtk/gtktoolbar.c: honor the new settings and paint separators
using gtk_paint_box() if wide-separators is true.
2006-03-02 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkiconview.c (gtk_icon_view_layout)
(gtk_icon_view_row_inserted, gtk_icon_view_scroll_to_path):
Make scroll_to_path work for newly inserted items, by delaying
the scroll until layout is done. (#332923, Cory Dodt)
2006-03-02 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcolorbutton.c (render): Use GTK_WIDGET_IS_SENSITIVE,
not GTK_WIDGET_SENSITIVE. (#333133, Christian Persch)
2006-03-01 Kristian Rietveld <kris@imendio.com>
* gtk/gtktreeselection.c (row_is_selectable): rename to
_gtk_tree_selection_row_is_selectable and export internally,
(gtk_tree_selection_real_select_node): changed so it is always
possible to unselect insensitive nodes, changed the logic a bit to
be more clear.
* gtk/gtktreeprivate.h: add _gtk_tree_selection_row_is_selectable.
* gtk/gtktreeview.c (gtk_tree_view_row_changed): Unselect a row if
it became insensitive.
2006-02-27 Federico Mena Quintero <federico@novell.com>
* gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Check that
the fontsel has a screen assigned before doing anything. This
will at least warn the caller of what is wrong, since we only
populate the family_list until we get a screen. Also, put the
reference docs here. Fixes bug #332756.
(gtk_font_selection_dialog_get_font_name): Document this here.
(gtk_font_selection_get_font_name): Document this here; mention
that the font names get normalized, so the result of this function
may not be the same as what you set with
gtk_font_selection_set_font_name().
2006-02-27 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkdnd.c (gtk_drag_get_cursor): Comment out some unused
code, and fix the reference point of composited drag cursors.
(#320132, Christian Neumair)
2006-02-24 Federico Mena Quintero <federico@novell.com>
* gtk/gtkfilechooserdefault.c (shortcuts_list_create): Make the
column header visible, and make it be "_Places". Changed the
accessible object name to Places as well. Fixes bug #331306.
(file_pane_create): Do not create the path bar and "create folder"
button here...
(browse_widgets_create): ... but create them here instead. This
moves the path bar to be above both the hpaned, giving it the full
width of the dialog. Fixes bug #327733.
Fri Feb 17 14:20:29 2006 Tim Janik <timj@imendio.com>
* gtk/gtktreemodel.h:
* gtk/gtktextbtree.h: added G_GNUC_WARN_UNUSED_RESULT warnings for
iterator functions, to avoid invalid iterators go unnoticed,
suggested by Markku Vire <markku.vire@movial.fi>.
2006-02-23 Matthias Clasen <mclasen@redhat.com>
* gtk/gtknotebook.h: Add a reorder_tab keynav signal and an
insert_page vfunc to GtkNotebook.
* gtk/gtk.symbols:
* gtk/gtknotebook.c: Support notebook DND. New API includes
gtk_notebook_set_window_creation_hook,
gtk_notebook_[gs]et_group_id,
gtk_notebook_[gs]et_tab_reorderable,
gtk_notebook_[gs]et_tab_detachable (#73240, Carlos Garnacho)
2006-02-22 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkradiobutton.c (gtk_radio_button_clicked): Emit notify::active
here, when changing the value of this property. (#331651)
2006-02-22 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkaboutdialog.c: Change Close buttons to GTK_RESPONSE_CANCEL
so Escape works. (#331940, Daniel Drake)
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.
2006-02-21 Kristian Rietveld <kris@imendio.com>
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_rows_reordered):
Make sure we always update the virtual root, also when ->priv->root
is still NULL. (Markku Vire)
2006-02-19 Matthias Clasen <mclasen@redhat.com>
Support input shapes: (#331070)
* gdk/gdk.symbols:
* gdk/gdkdisplay.h:
* gdk/gdkwindow.h:
* gdk/x11/gdkdisplay-x11.c (gdk_display_supports_shapes)
(gdk_display_supports_input_shapes): Functions to determine
if a display supports shaped windows or input shapes.
* gdk/x11/gdkwindow-x11.c (gdk_window_input_shape_combine_region):
(gdk_window_input_shape_combine_mask):
(gdk_window_set_child_input_shapes):
(gdk_window_merge_child_input_shapes): Input shape versions
of the window shape API.
* gtk/gtk.symbols:
* gtk/gtkwidget.h:
* gtk/gtkwidget.c (gtk_widget_input_shape_combine_mask):
New function to set an input shape on a widget.
2006-02-17 Matthias Clasen <mclasen@redhat.com>
DND keynav support:
* gtk/gtkdnd.c (gtk_drag_update_idle): Protect against
info->last_event being NULL.
(gtk_drag_key_cb): Handle arrow keys to move the drag icon
and space or enter to drop.
2006-02-17 Kristian Rietveld <kris@imendio.com>
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_rows_reordered):
Only update the virtual root if the child path is an ancestor
of the virtual root. (Patch from Markku Vire).
2006-02-16 Federico Mena Quintero <federico@novell.com>
* gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_map): Call
::initial_focus() on the child before calling ::map() on our
parent class. This will prevent the shortcuts treeview from
highlighting its first row as a result of getting assigned focus
by gtk_dialog_map().
2006-02-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkicontheme.c (gtk_icon_theme_list_icons): Give working
examples in the docs. (#330944, John Spray)
2006-02-09 Ross Burton <ross@burtonini.com>
* gtk/gtkfontbutton.c:
Work out the font size in floating point, and display the font
size with %g instead of %d (#317590)
2006-02-08 Kristian Rietveld <kris@imendio.com>
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_ref_path),
(gtk_tree_model_filter_unref_path): free temporary paths after
usage (patch from maemo-gtk),
(gtk_tree_model_filter_clear_cache): fix little typo in the docs
(patch from maemo-gtk).
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): remove
stale FIXME.
2006-01-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
Make sure the tree view is realized, since we grab the
focus to it. (#329144, Wouter Bolsterlee)
2006-01-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_set_property):
Use the setter for active. (#329208, Guillaume Cottenceau)
2006-01-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkassistant.c (gtk_assistant_init): Move the
last button to the left where it does not affect
the positioning of forward/back.
2006-01-28 Behdad Esfahbod <behdad@gnome.org>
* configure.in: If major.minor of required and available glib versions
are the same, add -DG_DISABLE_DEPRECATED to GLIB_CFLAGS. (bug #328617)
* */Makefile.am: Remove hardcoded -DG_DISABLE_DEPRECATED.
2006-01-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtk.symbols:
* gtk/gtklinkbutton.h:
* gtk/gtklinkbutton.c: Allow to set a global hook function
thats called whenever a link button is clicked.
2006-01-28 Matthias Clasen <mclasen@redhat.com>
More work on GtkAssistant by Carlos Garnacho:
* demos/gtk-demo/Makefile.am:
* demos/gtk-demo/assistant.c: Add a GtkAssistant demo.
* gtk/gtkassistant.c: Handle focus, several small fixes to the
flow computations.
2006-01-27 Federico Mena Quintero <federico@ximian.com>
Fixes bug #328820:
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_class_init): Make GDK_KP_Divide pop up
the location dialog populated to "/".
(tree_view_keybinding_cb): Likewise.
(trap_activate_cb): Likewise.
2006-01-25 Behdad Esfahbod <behdad@gnome.org>
* gtk/gtkcalendar.c (calendar_paint_week_numbers, calendar_paint_day):
Use translated strings calendar:week:digits|%d and
calendar:day:digits|%d to let translators choose localized digits for
week and day numbers. (bug #317171, Hamed Malek)
2006-01-25 Behdad Esfahbod <behdad@gnome.org>
* gtk/gtklabel.c (get_layout_location): Use logical extents of the
layout instead of ink extents. According to Pango docs, that's what
should be used for placement. Moreover, simply use
pango_layout_get_pixel_size instead of getting the extents and
dividing ourselves.
2006-01-25 Matthias Clasen <mclasen@redhat.com>
* gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): Only
set the cursor size if it is != 0.
* gtk/gtksettings.c (gtk_settings_class_init): Change the default value
of gtk-cursor-theme-size to 0, meaning "use default".
2006-01-24 Kristian Rietveld <kris@gtk.org>
#322591, Jonathan Blandford.
* gtk/gtktreeview.[ch] (gtk_tree_view_get_search_entry),
(gtk_tree_view_set_search_entry),
(gtk_tree_view_get_search_position_func),
(gtk_tree_view_set_search_position_func): New functions,
and small adaptions to the tree view code to allow for setting
the entry and search position function.
* gtk/gtktreeprivate.h: Removed GtkTreeViewSearchDialogPositionFunc
typedef, which is now in gtktreeview.h as
GtkTreeViewSearchPositionFunc. Add/update fields.
* gtk/gtk.symbols: Add new functions.
* tests/testtreesort.c: Add a little test for _set_search_entry().
2006-01-23 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkwidget.c: Add link-color and visited-link-color style
properties. (#113649, Leena Gunda)
* gtk/gtkaboutdialog.c: Use the new style properties here instead
of the about dialogs own link-color property.
2006-01-23 Behdad Esfahbod <behdad@gnome.org>
* gtk/gtklabel.c (get_layout_location): Fix misalignment of RTL
text in ellipsized GtkLabel: use layout width if set, otherwise
fallback to ink extents width. (#322042)
2006-01-23 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkassistant.c (compute_last_button_state): Only show the
last button if we can jump to the end.
(gtk_assistant_init): Make the spacing and button order more
HIG compliant.
2006-01-23 Michael Natterer <mitch@imendio.com>
* gtk/gtkcolorbutton.c: move destruction of the private GdkGC
from finalize() to unrealize(). Fixes BadMatch on display change
(bug #85715).
2006-01-22 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): Revert previous
commit after more searching in the bugzilla archives (see #309221).
2006-01-22 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): Remove second call
to gtk_tree_view_column_cell_set_cell_data, since we also set the
cell data before iterating over the columns for exposure. (Fixes
#322471, Duncan Coutts).
* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_class_init,
tree_view_keybinding_cb, trap_activate_cb): On "unix", pop up the
"Open Location" window on "~" as well as "/". #153213
(location_entry_create): Fix this so autocompletion still works
correctly in that case.
(ok'ed by federico)
2006-01-19 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkassistant.[hc]: Use a priv pointer for
cheap access to the priv struct. (#327725, Christian
Persch)