2009-01-23 Matthias Clasen * === Released 2.15.1 === 2009-01-23 Matthias Clasen * gtk/gtkactivatable.c: Make the section docs produce some valid xml. 2009-01-23 Matthias Clasen * gtk/gtkactivatable.c: Fix the section docs so gtk-doc finds them. 2009-01-23 Matthias Clasen * gtk/gtkrecentchooser.c: * gtk/gtkuimanager.c: Fix issues found by pltcheck 2009-01-23 Matthias Clasen * NEWS: Updates 2009-01-23 Matthias Clasen Bug 560228 – Add "action-controller" property to GtkWidgetClass Rework the way actions and proxies interact, to make the interaction less ad hoc, more extensible, and better suited for support in GUI builders like glade. To be used as a proxy, a widget must now implement the GtkActivatable interface, and GtkActivatable implementations are responsible for syncing their appearance with the action and for activating the action. All the widgets that are commonly used as proxies implement GtkActivatable now. Patch by Tristan van Berkom. * gtk/gtkactivatable.[hc]: The GtkActivatable interface. * gtk/gtkbutton.c: * gtk/gtktogglebutton.c: * gtk/gtktoolitem.c: * gtk/gtktoolbutton.c: * gtk/gtktoggletoolbutton.c: * gtk/gtkmenuitem.c: * gtk/gtkcheckmenuitem.c: * gtk/gtkimagemenuitem.c: * gtk/gtkradiomenuitem.c: * gtk/gtkrecentchooserprivate.h: * gtk/gtkrecentchooser.c: * gtk/gtkrecentchooserdefault.c: * gtk/gtkrecentchoosermenu.c: Implement GtkActivatable. * gtk/gtkaction.[hc]: Move appearance synchronization to GtkActivatable implementations. * gtk/gtkradioaction.c: * gtk/gtkrecentaction.c: * gtk/gtktoggleaction.c: * gtk/gtkactiongroup.c: Adapt. * gtk/gtk.h: Include gtkactivatable.h * gtk/gtk.symbols: Add new functions 2009-01-23 Matthias Clasen Bug 567124 – proposal to delay doing something related to immodule until widgets realized Delay setting up immodules until the widget is realized. Patch by Akira Tagoh * gtk/gtktextview.c: Don't set up im stuff if the widget is not realized. * gtk/gtkimmodule.c: Assert that we have a window. 2009-01-23 Matthias Clasen Skip Desktop if it equals the home folder Patch by Christian Dywan * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Skip Desktop if it equals the home folder. 2009-01-23 Matthias Clasen Bug 536965 – GtkPlug: crash on theme change Keep GtkPlug in sync with the global list of toplevels. Patch by Federico Mena Quintero * gtk/gtkwindow.h: * gtk/gtkwindow.c (_gtk_window_set_is_toplevel): New internal function used when a GtkPlug parents/unparents itself by an in-process GtkSocket. This keeps the plug's GTK_TOPLEVEL flag in sync with the global toplevel_list. * gtk/gtkplug.c (gtk_plug_set_is_child): Call _gtk_window_set_is_toplevel() to keep the toplevel list updated, instead of just setting/unsetting the GTK_TOPLEVEL flag. 2009-01-23 Matthias Clasen Bug 568744 – Spellfixes in GtkTreeView's documentation * gtk/gtktreeview.c: Fix typos in the docs. 2009-01-23 Matthias Clasen Bug 567761 – Spellfixes in GTK+ documentation * gdk/x11/gdkselection-x11.c: * gtk/gtktestutils.c: Fix typos in the docs. 2009-01-23 Matthias Clasen Bug 567021 – gtkimage accessors docs * gtk/gtkimage.c: Improve docs by mentioning allowed NULL values. Patch by Christian Persch 2009-01-23 Matthias Clasen Bug 566535 – gtk_widget_get_snapshot does not work if double buffered is disabled * gtk/gtkwidget.c (gtk_widget_get_snapshot): Use a different approach to snapshotting that is in line with what is done in the client-side windows branch, and that works for widgets regardless if they are double-buffered or not. Patch by Alex Larsson. * gdk/gdkwindow.c (_gdk_window_calculate_full_clip_region): Clip to the parent. 2009-01-22 Federico Mena Quintero * gtk/gtkfilechooserentry.c (autocomplete): Relax the assertion; just do nothing if the folder is not loaded or if the cursor position is not at the end of the text. A very slow-to-load folder can get us into the latter state if the user starts typing first. 2008-01-22 Matthias Clasen * gtk/gtkaction.c: Revert the last change, since it breaks epiphany. 2009-01-22 Federico Mena Quintero Fix the computation of "complete but unique" in GtkFileChooserEntry. Fix the case where "/" was not appended to a unique directory name during explicit Tab completion. * gtk/gtkfilechooserentry.c (maybe_append_separator_to_file): Return whether anything was appended as well as the new string itself. (find_common_prefix): Oops, only turn on is_complete_not_unique_ret if we had a unique match! (append_common_prefix): If we appended a directory separator, we *did* expand the common prefix, so we are not in the "nothing inserted" case. 2009-01-22 Federico Mena Quintero Return an error code when refreshing the entry from the user's input. We use this in the completion code to know when completion can't happen due to (for example) having a non-local URI in a file chooser that is local_only=TRUE. Also, we start maintaining an invariant that chooser_entry->current_folder_file != NULL implies that: * what the user entered is valid * we are loading that folder (chooser_entry->load_folder_cancellable != NULL) * or we are done loading that folder, or we have a handle to it at least (chooser_entry->current_folder != NULL) The invariant also says that all of the above are NULL (and chooser_entry->current_folder_file == NULL) implies that the user typed something invalid. This makes _gtk_file_chooser_entry_get_current_folder() not able to return an invalid folder. * gtk/gtkfilechooserentry.c (RefreshStatus): New enum. (refresh_current_folder_and_file_part): Return a RefreshStatus. We filter out incomplete hostnames here (typing "sftp://incompl[tab]" will error out), as well as completely unparsable input. (start_explicit_completion): Process the result from refresh...(). Here we present the actual feedback about only being able to display local folders for local_only=TRUE. (commit_completion_and_refresh): Don't do anything with the result of refresh...(), since this function doesn't get called during completion-related interaction. (start_autocompletion): Process the result from refresh...(). We only do completion in the REFRESH_OK case. For the error cases, we don't do anything, as this is autocompletion and must not result in non-asked-for errors popping up. (discard_loading_and_current_folder_file): Factor out function to cancel the cancellable and discard the current_folder_file, i.e. to reset the invariant to the "nothing valid is loaded" case. (gtk_file_chooser_entry_dispose): Use discard_loading_and_current_folder_file(). (reload_current_folder): Likewise. (refresh_current_folder_and_file_part): Likewise, and ensure that the error cases result in the invariant being held. (start_loading_current_folder): Check if the folder to be loaded is non-native for the local_only=TRUE case; if so, return an error as we are configured to load only local folders. (reload_current_folder): Pass on errors from start_loading_current_folder(). Tighten the preconditions, as we are sure that we can only receive non-NULL folder-files to load. (refresh_current_folder_and_file_part): Pass on errors from reload_current_folder(). At the very end, assert the invariant described above. 2009-01-22 Matthew Barnes Bug 568334 – Constructor properties for GtkAction * gtk/gtkaction.c (gtk_action_class_init): Make all properties G_PARAM_CONSTRUCT except "action-group". 2009-01-22 Michael Natterer * gtk/gtkicontheme.c (gtk_icon_theme_has_icon): g_return_if_fail() on icon_name != NULL so we get a warning instead of a crash here. 2009-01-21 Matthias Clasen * NEWS: Updates 2009-01-21 Matthias Clasen * gtk/gtkentry.c: Don't show windows that may not exist 2009-01-21 Matthias Clasen * gtk/gtklabel.c: Implement select-by-words for selectable labels. 2009-01-21 Tor Lillqvist * gdk/win32/gdkcursor-win32.c: Rename static local functions and variables to not have any unnecessary _ or _gdk_win32 prefix. * gdk/win32/gdkcursor-win32.c (hcursor_from_type): Implement creating a GDK_BLANK_CURSOR. 2009-01-21 Matthias Clasen * gtk/gtkentry.c: Change the Caps Lock warning to the more neutral "Caps Lock is on". Requested by Wouter Bolsterlee 2009-01-21 Matthias Clasen Bug 568552 – gtk_combo + gtk entry in invisible mode takes 100% cpu * gtk/gtkentry.c: Fix an expose loop caused by raising windows out of an expose handler. Also, don't show the 'Caps Lock' warning for activated input methods, since that makes it permanently shown for some locales. It should not be that necessary, now that we do show preedit text even in password entries. Pointed out by Frederic Crozat. (start_loading_current_folder): Check if the folder to be loaded is non-native for the local_only=TRUE case; if so, return an error as we are configured to load only local folders. (reload_current_folder): Pass on errors from start_loading_current_folder(). Tighten the preconditions, as we are sure that we can only receive non-NULL folder-files to load. (refresh_current_folder_and_file_part): Pass on errors from reload_current_folder(). At the very end, assert the invariant described above. (start_explicit_completion): Add comments for translators, to explain the purpose of the various feedback messages used during completion. 2009-01-21 Federico Mena Quintero * gtk/gtkfilechooserdefault.c (save_widgets_create): Set local_only on the location entry when we create it... (set_local_only): ... and set it here only if the location entry exists. 2009-01-21 Marek Kasik Bug 561801 - "scheduled printing" doesn't function as expected * gtk/gtkprintunixdialog: Add tooltip. * modules/printbackends/cups/gtkprintbackendcups.c: Add conversion from local time to utc time for scheduled printing. 2009-01-20 Federico Mena Quintero http://bugzilla.gnome.org/show_bug.cgi?id=545980 - GtkFileChooserEntry should handle URIs * gtk/gtkfilesystem.c (_gtk_file_system_parse): Detect URI schemes and parse the full URI. (has_uri_scheme): New function, stolen from the old gtkfilesystemgnomevfs.c. Patch by Carlos Garnacho : * gtk/gtkfilechooserentry.c (discard_current_folder): New function, factored out for when we need to get rid of the current_folder. (gtk_file_chooser_entry_dispose): Use discard_current_folder(). (finished_loading_cb): Fix prototype. (load_directory_get_folder_callback): Discard the completion store, as well as clearing the completion feedback, if we find an error while loading the folder. Also, use discard_current_folder(). (reload_current_folder): Use discard_current_folder(). Patch by Carlos Garnacho - add a local_only property to GtkFileChooserEntry: * gtk/gtkfilechooserentry.c (struct _GtkFileChooserEntry): Add a local_only field. (_gtk_file_chooser_entry_init): Default to local_only being true. (start_explicit_completion): Don't allow completion of non-native files if local_only is turned on. (start_loading_current_folder): Don't start loading non-native folders if local_only is turned on. (_gtk_file_chooser_entry_set_local_only): New function. (_gtk_file_chooser_entry_get_local_only): New function. * gtk/gtkfilechooserentry.h (_gtk_file_chooser_entry_set_local_only, _gtk_file_chooser_entry_get_local_only): New prototypes. * gtk/gtkfilechooserdefault.c (set_local_only): Set the local_only property on the entry. Fix completion so it doesn't pop up for every character in a URI hostname: * gtk/gtkfilechooser.h (GtkFileChooserError): Add a GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME. * gtk/gtkfilesystem.c (_gtk_file_system_parse): Return an "incomplete hostname" error if the user has not typed a full hostname yet in an URI. * gtk/gtkfilechooserentry.c (append_common_prefix): If we get an incomplete hostname, just don't pop up an error, since that is a transient state and the user doesn't need to be notified about it. (refresh_current_folder_and_file_part): Don't revert to showing the base folder if we have an incomplete hostname. (reload_current_folder): Handle the passed folder being NULL, even if we must force a reload. Also, reload the folder if we didn't have a cancellable for it (i.e. we hadn't started to load it before). 2009-01-20 Matthias Clasen * gtk/gtk.symbols: * gtk/gtkaction.[hc]: Add setters and getters for GtkAction properties, in preparation for bug 560228. 2009-01-21 Christian Dywan Bug 567413 – GtkComboBoxEntry doesn't emit "changed" signal on entry editing * gtk/gtkcombobox.c (gtk_combo_box_set_active): Return only if index is set. Patch by Carl-Anton Ingmarsson. 2009-01-20 Torsten Schoenfeld * gtk/gtkstyle.c: Add a "Since: 2.16" tag to gtk_style_get. 2009-01-20 Matthias Clasen Bug 565656 – Add marks to scales * gtk/gtkrange.[hc]: Add internal api to define 'stop values' that have a little resistance when dragging the slider over it. * gtk/gtk.symbols: * gtk/gtkscale.[hc] (gtk_scale_add_mark): New function to add a 'mark' to a scale, which will draws a tick, plus optionally some text, and makes the value a stop value. (gtk_scale_clear_values): Removes all marks. * tests/testscale.c: Test for marks on scales * tests/Makefile.am: Integrate it 2009-01-19 Matthias Clasen * gtk/gtkentry.c: * gtk/gtkfilechooserentry.c: * gtk/gtktextview.c: Replace several implementation of blank cursor setting by GDK_BLANK_CURSOR. 2009-01-19 Matthias Clasen * gdk/gdkcursor.c: * gdk/gdkwindow.c: Update docs on how to create blank cursors. 2009-01-19 Matthias Clasen Cache cursors to avoid libXcursor theme lookup overhead. Patch by David Alan Gilbert. * gdk/gdkcursor.h: Add a GDK_BLANK_CURSOR cursor type. * gdk/x11/gdkcursor-x11.c: Cache font cursors and named cursors. * gdk/x11/gdkprivate-x11.h: * gdk/x11/gdkcdisplay-x11.c: Remove cached cursors when a display if finalized. 2009-01-18 Matthias Clasen Bug 568263 – gtk can't recognize the wrong X Selection TARGETS' type "TARGETS" by java applications * gtk/gtkselection.c (gtk_selection_data_get_targets): Accept a type of TARGETS instead of ATOM, too. Based on a patch by Peng Wu. 2009-01-18 Matthias Clasen Bug 568233 – Wrong statement about GtkEntry's "activate" signal * gtk/gtkentry.c: * gtk/gtklabel.c: * gtk/gtktextview.c: Correct some copy-and-paste mistakes in keybinding signal docs. Pointed out by Pascal Terjan. 2009-01-18 Matthias Clasen * gtk/gtk.symbols: * gtk/gtkentry.[hc]: Add properties and getters for icon tooltips. 2009-01-18 Matthias Clasen Bug 563280 – stock items & translation context * gtk/gtkstock.c: Solve the msgctxt problem a bit more elegantly, and add some hints about this to the docs of gtk_stock_set_translate_func. Proposed by Christian Persch 2009-01-18 Matthias Clasen Bug 568196 – Please change context of Forward stock label * gtk/gtkstock.c: Reinstate separate translation contexts for navigation and media labels (these were lost in the transition to msgctxt. Pointed out by Gabor Kelemen. 2009-01-18 Matthias Clasen Bug 567887 – gtk_entry_get_storage_type() should be gtk_entry_get_icon_storage_type() * gtk/gtk.symbols: * gtk/gtkentry.[hc]: Use the last chance to get the api right, and rename things for consistency, requested by Murray Cumming. In detail, gtk_entry_get_stock -> gtk_entry_get_icon_stock gtk_entry_get_pixbuf -> gtk_entry_get_icon_pixbuf gtk_entry_get_gicon -> gtk_entry_get_icon_gicon gtk_entry_get_storage_type -> gtk_entry_get_icon_storage_type ::prelight -> ::icon-prelight ::pixbuf-primary -> ::primary-icon-pixbuf ::stock-primary -> ::primary-icon-stock ::icon-name-primary -> ::primary-icon-name ::gicon-primary-> ::primary-icon-gicon ::storage-type-primary -> ::primary-icon-storage-type ::activatable->primary -> ::primary-icon-activatable ::sensitive-primary -> ::primary-icon-sensitive (and similar for secondary properties) 2009-01-18 Matthias Clasen Bug 567655 – gtk_status_icon_set_tooltip_text and gtk_status_icon_set_tooltip_markup should use gchar* * gtk/gtkstatusicon.h: Use "const gchar*" in new tooltip api. Pointed out by Torsten Schoenfeld. 2009-01-18 Matthias Clasen * demos/gtk-demo/search_entry.c: End the search if the window is closed. * demos/gtk-demo/search_entry.c: * demos/gtk-demo/entry_completion.c: Group the entry examples under "Entry". 2009-01-18 Christian Dywan Remove a redundant include from gtktoolbar.c * gtk/gtktoolbar.c: Remove second inclusion of gtktoolbar.h. Patch by Enrico Tröger. 2009-01-16 Cody Russell Bug 567944 – [Win32] Sorted treeview columns can be unreadable * modules/engines/ms-windows/msw_style.c: Draw selected treeview cells according to treeview focus, but ignore whether it is in a sorted column or not. Otherwise the intersection of a selected row and a sorted column looks very strange if the treeview does not have focus. 2009-01-16 Daniel Elstner * modules/input/gtkimcontextmultipress.[ch]: Remove the namespace prefix from functions defined locally only. Clean up the code and change indentation to match the GTK+ coding style. (_GtkImContextMultipress::key_sequences): Replace array of pointers by GHashTable. Adapt the implementation accordingly. (passthrough_enabled_for_window): Remove. The passthrough hack is no longer necessary thanks to the recently introduced "im-module" property of GtkEntry and GtkTextView. (load_config): Rework to implement an improved configuration file format. Just fetch all keys of the group instead of expecting the keys to be named a certain way. This also allows interpreting the config key itself as the GDK key name to bind the character sequence to, thereby making it independent of the sequence itself. * modules/input/im-multipress.conf: New example configuration using the new syntax. The example sequences are now bound to the numeric keypad and imitate the behavior of a standard mobile phone. 2009-01-15 Murray Cumming * gtk/gtkimcontext.c: documentation description: Mention the various properties and the environment variable, with links to their documentation. * gtk/gtksettings.c: * gtk/gtktextview.c: Make the im-module property documentation more expansive. 2009-01-15 Diego Escalante Urrelo Bug 562701 – GtkEntryCompletion popup sizes its rows wrong when they span for more than one line. Don't assume actions and results have equal height, this causes negative size requisitions when results are more than one line tall. * gtk/gtkentrycompletion.c: change the formula used to calculate the size of the completion popup. 2009-01-14 Federico Mena Quintero Remember the file chooser's geometry across invocations. * gtk/gtkfilechoosersettings.h (struct _GtkFileChooserSettings): New fields geometry_x, geometry_y, geometry_width, geometry_height. (_gtk_file_chooser_settings_get_geometry): New prototype. (_gtk_file_chooser_settings_set_geometry): New prototype. * gtk/gtkfilechoosersettings.c (GEOMETRY_X_KEY, GEOMETRY_Y_KEY, GEOMETRY_WIDTH_KEY, GEOMETRY_HEIGTH_KEY): New key names. (ensure_settings_read): Read the geometry keys. (_gtk_file_chooser_settings_save): Save the geometry keys. (_gtk_file_chooser_settings_init): Initialize the geometry keys to "don't have this value". (_gtk_file_chooser_settings_get_geometry): New public function. (_gtk_file_chooser_settings_set_geometry): New public function. * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_map): Don't change the default size in ::map() so we don't flicker... (gtk_file_chooser_default_realize): ... so do it in ::realize() instead, when the window is not yet visible. This avoids a dialog-that-resizes when you first pop up the file chooser. (emit_default_size_changed): Just emit the signal; don't check for the widget's state so we can be emitted during the initial ::realize() when we are not mapped yet. (update_preview_widget_visibility): Only emit default_size_changed if the widget is not mapped, to avoid resizing the dialog while it is visible. * gtk/gtkfilechooserdialog.c (file_chooser_widget_default_size_changed): Simply resize the dialog to the default size without any fancy clamping. Also, leave in place ifdef-ed out code to restore the file chooser's position in addition to its size. The code to restore the position doesn't quite work yet, but we'll leave it in as a reference. * gtk/gtkfilechooserdefault.c (save_dialog_geometry): New function. (settings_save): Save the dialog's geometry. (gtk_file_chooser_default_get_default_size): Load the geometry from the settings. If it was already saved, return that instead of computing an ad-hoc size. 2009-01-13 Matthias Clasen Bug 450716 – New API to change global IM Requested by Daniel Elstner. * gtk/gtk.symbols: * gtk/gtkimmulticontext.[hc] (gtk_im_multicontext_set_context_id): New function to set the context id on a GtkIMMulticontext. * gtk/gtkentry.c: * gtk/gtktextview.c: Add a ::im-module property that can be set to override the global setting for the im module to be used. 2009-01-13 Christian Dywan Bug 566532 – GtkScaleButton implementation of GtkOrientable * gtk/gtk.symbols: * gtk/gtkscalebutton.c (gtk_scale_button_class_init), (gtk_scale_button_set_property): * gtk/gtkscalebutton.h: Deprecate gtk_scale_button_get_orientation in favour of implementing GtkOrientable. Patch by Bruce Cowan. 2009-01-13 Tor Lillqvist Bug 164002 - query scripts don't work uninstalled on windows * gtk/gtkmain.c (_gtk_get_libdir): If the gtk DLL is in a ".libs" folder, assume we are running uninstalled, and use the configure-time GTK_LIBDIR. 2009-01-12 Matthias Clasen * NEWS: Refer to tray icon spec, instead of a random email. 2009-01-12 Matthias Clasen * gtk/gtkwindow.c (gtk_window_set_icon_name): Don't cause lots of X traffic when the icon name doesn't actually change. Some apps like to reset their window icon frequently, without actually changing the icon name... 2009-01-12 Paolo Borelli Bug 492794 – Pasting external text at end of view yields wrong scrolling to mark * gtk/gtktextbuffer.[ch]: * gtk/gtktextview.c: Add a "paste-done" signal and use it to propelry scroll the view at the end of the pasted text in the case of an async paste. Patch by Ignacio Casal Quintero based on a patch by Yevgen Muntyan. 2009-01-12 Tor Lillqvist * gdk/gdk.c (gdk_arg_debug_cb) (gdk_arg_no_debug_cb): A GOptionArgFunc should return gboolean and take also a GError pointer parameter, so make these two functions do that. Return FALSE (and set the GError) if the parsing of the debug string failed completely. Note that g_parse_debug_string() doesn't really have any way to return parsing status, and accepts partially incorrect strings, though. 2009-01-12 Claudio Saavedra Bug 567468 – no check for trailing != NULL in gtk_text_layout_get_iter_at_position() * gtk/gtktextlayout.c: (gtk_text_layout_get_iter_at_position): Check for trailing to be non-NULL. * gtk/gtktextview.c: (gtk_text_view_get_iter_at_position): document that trailing may be NULL. 2009-01-11 Tor Lillqvist Bug 523554 - Copy from GIMP to Word broken * gdk/win32/gdkselection-win32.c (_gdk_win32_selection_convert_to_dib): The DIB stored in the Windows Clipboard was for some unknown reason truncated by one byte. Don't do that. 2009-01-11 Matthias Clasen Bug 567024 – gtktoolbutton doesn't create right proxy menu item image with GIcon * gtk/gtktoolbutton.c: Properly create a menu proxy from a GIcon. Patch by Christian Persch * tests/testtoolbar.c: Add an example with a GIcon 2009-01-09 Christian Dywan Fail in gdk_window_new if _gdk_window_new failed * gdk/gdkwindow.c (gdk_window_new): Add g_return_val_if_fail in case _gdk_window_new is NULL. Approved by Tim Janik 2009-01-08 Matthias Clasen Bug 566733 – Add GIcon to GtkAction, GtkToolButton * gtk/gtkaction.c: Add a ::gicon property to GtkAction and set the icon from it if specified. The stock icon is preferred if a stock id is given. Based on a patch by A. Walton 2009-01-04 Matthias Clasen * gtk/stock-icons/{16,24}/gtk-caps-lock-warning.png: New icons * gtk/gtkstock.h: Add GTK_STOCK_CAPS_LOCK_WARNING. * gtk/gtkiconfactory.c (get_default_icons): Register the stock icon. * gtk/gtkentry.c (show_capslock_feedback): Use the new stock icon. 2009-01-05 Tor Lillqvist Bug 566628 - gdk_display_close always asserts on win32 * gdk/win32/gdkdisplay-win32.c (_gdk_windowing_set_default_display): Allow also a NULL parameter in the g_assert(). Still don't actually do anything in this function, though. 2009-01-04 Matthias Clasen Bug 566568 – gtk_tree_model_get_value docs typo * gtk/gtktreemodel.c (gtk_tree_model_get_value): Fix a typo in the docs, pointed out by Christian Persch. 2009-01-04 Matthias Clasen Bug 566391 – gtk_about_dialog_set_url_hook should activate pre-existing website links * gtk/gtkaboutdialog.c: Make setting website, website-label and url hook work independent of their order. Reported by Steven Sheehy. 2009-01-03 Matthias Clasen * gdk/x11/gdkscreen-x11.h: * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window): Recheck _NET_SUPPORTING_WM_CHECK every now and then to avoid getting stuck on the id of a former wmcheck window that got reused by another client (see RH bug 471927) 2009-01-03 Matthias Clasen * gtk/gtktreesortable.c: Improve the docs * gtk/gtktreemodelsort.c: Don't assert when using the "unsorted" sort column id. 2009-01-02 Matthias Clasen Bug 565998 – configure script doesn't check for cairo-xlib.pc * configure.in: Check for cairo-xlib when looking for gdk dependencies. Requested by Alberto Ruiz 2009-01-02 Matthias Clasen Bug 566334 – compile failure for gtk+ on Mac OS X * gtk/gtkstatusicon.c: Fix the build on OS X. Reported by Bart Cortooms. 2009-01-02 Matthias Clasen Bug 566083 – Icon pixmap hardcoded during DnD * gtk/gtkwidget.c: * gtk/gtkentry.c: Add docs about using ::drag-begin for setting a custom drag icon. Reported by Xan Lopez