2006-05-19 Matthias Clasen <mclasen@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_pages_allocate): Fix a
boundary case in scrolling where a tab was not shown. (#168105,
Hiroyuki Ikezoe, patch by Kouhei Sutou)
2006-05-19 Damon Chaplin <damon@gnome.org>
* gtk/gtkfontsel.c (gtk_font_selection_init): use
atk_relation_add_target() to add the targets, since it sets up weak
references to avoid crashes. (#305530)
2006-05-18 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkprintoperation.h:
* gtk/gtkprintoperation.c: Add a GtkPrintOperation:: paginate signal
that gets emitted to paginate a document in chunks.
2006-05-18 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcalendar.c (gtk_calendar_drag_motion): Don't produce
a stuck drag if shift is held. (#341734, Sebastien Bacher)
2006-05-18 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkimage.c (icon_theme_changed): Only unref the pixbuf
if the image has the appropriate storage type. (#342096, Tommi
Komulainen)
2006-05-18 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentry.c (gtk_entry_drag_data_received): Make drops
end up at the right spot. (#342072, Yevgen Muntyan)
2006-05-18 Michael Natterer <mitch@imendio.com>
* gtk/gtkrange.c: canonicalize the name of the "activate-slider"
style property and use GTK_PARAM_READABLE instead of
G_PARAM_READABLE. Moved one "activate_slider" variable to the
local scope its used in.
Tue May 16 12:36:25 2006 Søren Sandmann <sandmann@redhat.com>
* gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Move getting the
property out of the loop, and rename the variable 'max_expand'.
* gtk/gtktoolbar.c (gtk_toolbar_class_init): Fix the decription
for the max-child-expand property.
2006-05-16 Michael Natterer <mitch@imendio.com>
* gtk/gtktoolbar.c: added "max-child-expand" style property which
limits the space taken by expanding tool items. Fixes bug #340722.
2006-05-16 Kristian Rietveld <kris@imendio.com>
* gtk/gtkpathbar.c (gtk_path_bar_dispose): cancel all pending handles
in the button list. (Fixes#341035, reported by William Jon McCann).
2006-05-16 Kristian Rietveld <kris@imendio.com>
* gtk/gtkfilechooserdefault.c
(show_and_select_paths_finished_loading): put the newly selected
row(s) the in the middle of the view,
(update_current_folder_get_info_cb),
(gtk_file_chooser_default_update_current_folder): make sure reload
state is set to RELOAD_HAS_FOLDER while loading the new folder,
so _map() won't start loading the current working directory. (Fixes
#341028, reported by Michael Natterer).
2006-05-15 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_button_press): Fix
an RTL problem with toggles in expander columns.
(#341896, Roozbeh Pournader)
Mon May 15 15:12:05 2006 Søren Sandmann <sandmann@redhat.com>
* gtk/gtklayout.c (gtk_layout_realize),
* gtk/gtkiconview.c (gtk_icon_view_realize),
* gtk/gtktreeview.c (gtk_tree_view_realize): Set the background of
the clip windows to NULL, since they are generally invisible and
don't have EXPOSURE set, which means they temp-unvlicker code
doesn't apply to them.
* gdk/x11/gdkgeometry-x11.c (_gdk_window_move_resize_child): Unset
the background of the parent window during resizing. Invalidate
the uncoered area of the parent window. Bug 341332.
2006-05-15 Alexander Larsson <alexl@redhat.com>
* gtk/gtk.symbols:
* gtk/gtkprintbackend.[ch]: (_gtk_print_backend_create):
Never unload print backends.
Remove gtk_print_backend_unref_at_idle.
* modules/printbackends/cups/gtkprintbackendcups.c:
(cups_dispatch_watch_finalize):
Don't use the unref_at_idle hack since that caused
deadlocks. Instead we never unload print backends, which
is not really a big problem.
2006-05-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextbtree.c:
* gtk/gtktextview.c: Move some asserts to the right
place. (#341661, #341665, Pascal Terjan)
2006-05-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextview.c (gtk_text_view_allocate_children): Move
an assert to the right place. (#341661, Pascal Terjan)
2006-05-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtknotebook.c: Fix some corner cases in the size
allocation logic for tabs. (#341577, Carlos Garnacho Parro)
2006-05-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtknotebook.c: Handle tab_label being NULL better.
(#341455, William Jon McCann, patch by Carlos Garnacho Parro)
2006-05-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkruler.c: Reinstate the ruler metrics strings, since
they are used by glade, pointed out by Damon Chaplin.
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.
2006-05-12 Alexander Larsson <alexl@redhat.com>
* gtk/gtkprintoperation.c (gtk_print_operation_set_n_pages):
Update g_object_notify to new property name.
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.
2006-05-11 Emmanuele Bassi <ebassi@cvs.gnome.org>
* gtk/gtkrecentmanager.h: Remove the error parameter to the
gtk_recent_manager_add() and gtk_recent_manager_add_full()
functions; remove the unneeded error codes from the error
enumeration. (#336774).
* gtk/gtkrecentmanager.c: Make gtk_recent_manager_add() and
gtk_recent_manager_add_full() complain loudly about wrong or
missing meta-data, instead of using a GError. (#336774)
2006-05-11 Carlos Garcia Campos <carlosgc@gnome.org>
* gtk/gtkfilechooserembed.c: use I_() instead of _() when creating
response-requested signal. Fixes bug #341416
2006-05-10 Carlos Garnacho <carlosg@gnome.org>
* gtk/gtknotebook.c: check that tab_label is not NULL before checking
that it's notebook's child. Closes#341247.
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.
2006-05-09 Carlos Garnacho <carlosg@gnome.org>
* gtk/gtknotebook.c: create an independent GdkWindow to behave nicely
during reordering with tab_labels with their own window, also use
gtk_drag_set_icon_widget() for the DnD icon to avoid drawing garbage
from offscreen regions. Closes bug #335707.
(gtk_notebook_tab_space), (gtk_notebook_calculate_shown_tabs),
(gtk_notebook_calculate_tabs_allocation): new functions,
gtk_notebook_pages_allocate() functionality has been splitted into
these.
2006-05-08 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkstatusicon.c: Some cleanups.
* gtk/gtkstatusicon.c (gtk_status_icon_get_property): Silently return
NULL if the storage type of the image does not match. (#340516, Christian
Persch)
2006-05-08 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Elide (_x) in the middle
of the string, too. (#323956, Abel Cheung)
2006-05-08 Francisco Javier F. Serrador <serrador@cvs.gnome.org>
* gtk/gtkprintunixdialog.c (gtk_print_unix_dialog_class_init):
Corrected a duplicate word.
2006-05-05 Alexander Larsson <alexl@redhat.com>
* gtk/gtkprintoperation-unix.c:
Implement per-page paper sizes.
* gtk/gtkprintoperation.c:
Implement per-page paper sizes for pdf output.
Make gtk_print_operation_set_pdf_target() work again
* tests/Makefile.am:
* tests/testprint.c:
* tests/testprintfileoperation.[ch]:
Add more test code for printing support.
This tests per-page paper sizes & orientation and
deriving from GtkPrintOperation.
2006-05-04 Alexander Larsson <alexl@redhat.com>
* gtk/gtk.symbols:
Added new symbols
* gtk/gtkpagesetupunixdialog.c:
* gtk/gtkprintunixdialog.c:
Destroy backends when finalizing dialogs.
Fix printer leak in selected_printer_changed.
* gtk/gtkprintbackend.[ch]:
Convert from interface to baseclass.
Move printer hashtable here so that the baseclass can handle
the slightly complicated ownership model.
Add gtk_print_backend_destroy which runs the dispose method,
causing the ref-cycles between the backend and its printers
to be broken.
Add gtk_print_backend_unref_at_idle().
* gtk/gtkprinter.[ch]:
GtkPrinter objects now ref their backend so that its always
availible, since its needed for the printer object to work.
This causes a reference-cycle that is broken using
gtk_print_backend_destroy.
Add gtk_printer_compare.
* gtk/gtkprintoperation-private.h:
* gtk/gtkprintoperation-unix.c:
* gtk/gtkprintoperation.c:
Implement !show_dialog for unix.
Make sure the print data is fully spooled before returning
from a sync run_dialog.
* modules/printbackends/cups/gtkcupsutils.[ch]:
Add gtk_cups_request_ipp_add_strings
* modules/printbackends/cups/gtkprintbackendcups.c:
* modules/printbackends/cups/gtkprintercups.c:
* modules/printbackends/lpr/gtkprintbackendlpr.c:
* modules/printbackends/pdf/gtkprintbackendpdf.c:
Convert backends to derive instead of implementing interface.
Move common code into baseclass.
CUPS:
Remove the printer polling in dispose, not finalize.
In the cups watch, remove the backend at idle instead of
immediately, since the unref can cause the module to be unloaded.
Limit the number of printer attributes requested
Get printer uri in initial printer listing so that we can use
the printer object immediately.
* tests/Makefile.am:
* tests/testnouiprint.c:
Add testcase for !show_dialog.
2006-05-04 Murray Cumming <murrayc@murrayc.com>
* gtk/gtktreemodel.c: (gtk_tree_model_base_init): Changed the
language of the signals documentation slightly. Bug #340205.
2006-05-03 Federico Mena Quintero <federico@novell.com>
Merged the federico-filename-entry branch, to fix bug #136541.
Combined ChangeLogs:
2006-04-17 Federico Mena Quintero <federico@novell.com>
* gtk/gtkfilechooserdefault.c (pending_select_paths_process):
Oops, we *do* need to check that we are in OPEN mode before
selecting the first row in the file list. See
https://bugzilla.novell.com/show_bug.cgi?id=166906
(gtk_file_chooser_default_get_paths): If we are in the case for
the file list, and the list has no selected rows, jump to the case
for the filename entry. This is so that
1. The user types a filename in the SAVE filename entry
("foo.txt").
2. He then double-clicks on a folder ("bar") in the file
list.
will yield the expected "bar/foo.txt" selection.
2006-03-29 Federico Mena Quintero <federico@novell.com>
* gtk/gtkpathbar.c (gtk_path_bar_init): Reduce the inter-button
spacing to 0.
* gtk/gtkfilechooserdefault.c (browse_widgets_create): Make the
location label bold.
2006-03-29 Federico Mena Quintero <federico@novell.com>
* gtk/gtkfilechooserdefault.c (location_mode_set): Just change the
location_mode field if we are in SAVE/CREATE_FOLDER modes.
(gtk_file_chooser_default_get_paths): Get the path based on the
currently focused widget, or the last-focused widget. This is
what we should have been doing in the beginning, but it worked out
fine because we didn't have the possibility of a filename entry in
OPEN mode.
(gtk_file_chooser_default_should_respond): Handle the case where
the last focused widget is the location_entry.
2006-03-28 Federico Mena Quintero <federico@novell.com>
* gtk/gtkfilechoosersettings.[ch]: New files with a simple
framework for saving/loading settings from the file chooser in
$XDG_CONFIG_HOME/gtk-2.0/gtkfilechooser.
* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_unmap):
Save the current settings.
(settings_save): New helper function. We save the location_mode
and show_hidden flags.
(gtk_file_chooser_default_map): Load the settings.
(settings_load): New helper function.
* gtk/gtkfilechooserentry.c
(_gtk_file_chooser_entry_set_file_part): Oops, don't modify
in_change. Our handlers are what set the file_part, so they
*must* be run when we modify the text.
2006-03-27 Federico Mena Quintero <federico@novell.com>
* gtk/gtkfilechooserprivate.h (struct _GtkFileChooserDefault):
Removed the save_file_name_entry. We'll make this be the same as
the location_entry widget.
(struct _GtkFileChooserDefault): Leave only location_button,
location_entry_box, location_label, location_entry. We'll use a
single toggle button for the location entry, which will appear
below the path bar.
(struct _GtkFileChooserDefault): Added a
processing_pending_selections flag.
* gtk/gtkfilechooserdefault.c (save_widgets_create): Destroy the
old location_entry if necessary, and hide the location toggle
widgets.
(update_chooser_entry): In multiple selection mode, just clear the
location_entry.
(check_save_entry): Allow running in OPEN or SELECT_FOLDER modes
if we are in LOCATION_MODE_FILENAME_ENTRY.
(gtk_file_chooser_default_should_respond): Switch to a folder if
the location_entry contains a folder name in OPEN and SAVE mode,
not just SAVE mode. If the entry doesn't contain a folder name,
but is otherwise well-formed, and we are in OPEN mode, return that
we should respond with that filename.
(gtk_file_chooser_default_initial_focus): Focus the location_entry
if appropriate.
(browse_widgets_create): Create the location_entry_box and the
location_label here.
(update_appearance): Call location_mode_set() when switching back
to OPEN/SELECT_FOLDER mode. Hide the location_button when
switching to SAVE/CREATE_FOLDER mode.
(pending_select_paths_process): Turn the
processing_pending_selections flag on and off around changes to
the current selection. Don't special-case OPEN mode anymore,
since the new flag will take care of things in
update_chooser_entry().
(update_chooser_entry): Don't do anything if
processing_pending_selections is TRUE. This keeps the entry from
being polluted when changing folders.
(location_popup_handler): In OPEN/SELECT_FOLDER modes, toggle
between the path bar and the entry. In SAVE/CREATE_FOLDER modes, simply focus the
location_entry.
(update_from_entry): Removed.
(location_entry_create): Removed.
(open_location_cb): Removed.
(file_list_build_popup_menu): Don't add an "Open _Location" menu item.
(location_entry_set_initial_text): Don't do anything if
current_folder is NULL.
* gtk/gtkfilechooserentry.c
(_gtk_file_chooser_entry_set_file_part): Turn in_change on and off
around the call to gtk_entry_set_text(). This makes completion
not happen when the caller has explicitly set a name.
2006-03-24 Federico Mena Quintero <federico@novell.com>
* gtk/gtkfilechooserprivate.h (struct _GtkFileChooserDefault):
Added fields location_mode_box, location_pathbar_radio,
location_filename_radio, location_widget_box, location_label,
location_entry. The radio buttons will switch between the pathbar
and the location entry; the other boxes are for layout purposes.
(enum LocationMode): New enum.
(struct _GtkFileChooserDefault): Added a location_mode field.
* gtk/gtkfilechooserdefault.c (browse_widgets_create): Create the
location radio buttons to switch between the pathbar and the
location entry. Pack the browse_path_bar in the new
location_widget_box instead of a generic hbox.
(location_buttons_create): New function.
(gtk_file_chooser_default_init): Initialize impl->location_mode.
(location_switch_to_path_bar): New function.
(location_switch_to_filename_entry): New function.
* gtk/gtkfilechooserbutton.c (model_add_special): The display_name
should not be const.
2006-05-03 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkprintoperation-unix.c (unix_finish_send): Don't
use gtk_dialog_run for the error dialog, and improve the
dialog in other ways. (#340510, Christian Persch)
2006-05-03 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkpagesetupunixdialog.c: Beautify the custom
paper size dialog. (#339590, patch by Christian Persch)
2006-05-02 Kristian Rietveld <kris@imendio.com>
* gtk/gtktreeview.c (gtk_tree_view_row_inserted): set tmpnode to
the return value of the _gtk_rbtree_insert* functions, since that
is the node we really want to check for visibilty.
2006-05-02 Christian Persch <chpe@cvs.gnome.org>
* gtk/gtkpagesetupunixdialog.c:
* gtk/gtkprintcontext.c:
* gtk/gtkprinter.c:
* gtk/gtkprinteroptionwidget.c:
* gtk/gtkprintjob.c:
* gtk/gtkprintoperation-unix.c:
* gtk/gtkprintoperation.c:
* gtk/gtkprintunixdialog.c: Use a priv variable when accessing priv
multiple times in the same function. Bug #340288.
2006-05-02 Michael Natterer <mitch@imendio.com>
* gtk/gtklabel.c (gtk_label_set_line_wrap): added note about the
inablity to do height-for-width text layout and suggest to use
gtk_widget_set_size_request() for getting a label that wraps at
some specific position.
2006-04-30 Kristian Rietveld <kris@imendio.com>
Fix for #340200, spotted by Torsten Schoenfeld.
* gtk/gtktreeview.c (gtk_tree_view_get_cell_area): fix up logic
calculating the level indentation,
(gtk_tree_view_start_editing): remove code calculating the
level indentation, since _get_cell_area() takes care of this for us.
2006-04-30 Matthias Clasen <mclasen@localhost.localdomain>
Fix problems with setting symbolic colors from rc files.
(#338345, Benjamin Berg)
* gtk/gtkrc.c (gtk_rc_settings_changed, gtk_rc_font_name_changed)
(gtk_rc_color_hash_changed, gtk_rc_reparse_all_for_settings): Don't
freeze notification for settings changes while parsing; instead
manually avoid recursion, and update the color hashes.
2006-04-30 Matthias Clasen <mclasen@localhost.localdomain>
* gtk/gtkprinteroption.c:
* gtk/gtkprinteroptionwidget.c:
* gtk/gtkprintunixdialog.c: Improve the print dialog layout,
mark some more strings for translation. (#340139, Christian Persch)
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)