* gtk/gtkcombobox.c (gtk_combo_box_set_model):
(gtk_combo_box_unset_model): Handle repeated unsetting
of models without warnings. (#367529, Robert Ancell)
Matthias Clasen [Wed, 27 Dec 2006 06:12:53 +0000 (06:12 +0000)]
Fix a few problems with nested menus in comboboxes (#386694, Yevgen
2006-12-17 Matthias Clasen <mclasen@redhat.com>
Fix a few problems with nested menus in comboboxes
(#386694, Yevgen Muntyan)
* gtk/gtkcombobox.c (gtk_combo_box_menu_fill_level): Always
connect the activate callback.
(gtk_combo_box_menu_item_activate): Do nothing if called on
an item with a submenu.
(gtk_combo_box_menu_row_deleted): Remove a submenu when it
is empty.
Lots of scrolling fixes. Made scrolling work properly in not fully
2006-12-26 Kristian Rietveld <kris@gtk.org>
Lots of scrolling fixes. Made scrolling work properly in not fully
validated tree views; fixed a bunch of corner cases.
* gtk/gtktreeview.c (validate_visible_area): if a row's dy is past
upper - page_size, we know it is located at the end so the test for
dy + height has been dropped.
In the same case if area_below < 0, we know this is the last node
in the tree view so area_above is page_size - height of this row.
(validate_visible_area): got rid of subtracting new_height -
old_height from area_{below,above}, it didn't make any sense at
all and the full height of the row should be subtracted instead.
(validate_visible_area): when scrolling to a given path, set the
top row directly together with the dy offset, then sync that top_row
to the dy.
(gtk_tree_view_set_top_row): new function to directly set a top_row.
(gtk_tree_view_dy_to_top_row): refactored to use
gtk_tree_view_set_top_row().
(gtk_tree_view_top_row_to_dy): make sure dy >= 0 when done.
(gtk_tree_view_adjustment_changed): only update our dy and
top_row if the adjustment's dy actually changed.
Christian Persch [Tue, 26 Dec 2006 14:49:34 +0000 (14:49 +0000)]
Return the correct value from gtk_notebook_insert_page if the page-added
2006-12-26 Christian Persch <chpe@cvs.gnome.org>
* gtk/gtknotebook.c: (gtk_notebook_real_insert_page):
Return the correct value from gtk_notebook_insert_page if the
page-added handler reorders the tabs. Bug #345094.
Carlos Garnacho [Tue, 26 Dec 2006 11:02:15 +0000 (11:02 +0000)]
Fix small regressions in GtkNotebook tab detaching. Bug #378852.
2006-12-26 Carlos Garnacho <carlosg@gnome.org>
Fix small regressions in GtkNotebook tab detaching. Bug #378852.
* gtk/gtknotebook.c (gtk_notebook_do_arrow): grab focus to allow tabs
scrolling when hovering with a detached tab.
(gtk_notebook_stop_reorder): Do not deparent the wrong tab if the
focus tab has changed during a tab DND operation.
(gtk_notebook_drag_end): ensure that the dropped tab gets focused.
(gtk_notebook_paint): do not take cur_page as a reference to paint the
box if it's detached.
(gtk_notebook_calculate_tabs_allocation): focus_tab may be different
to the detached tab if we hover the arrows during a tabs detaching
operation, do not allocate it unconditionally in 0,0.
Carlos Garnacho [Tue, 26 Dec 2006 10:31:36 +0000 (10:31 +0000)]
Expose improvements for GtkNotebook. Bug #383435
2006-12-26 Carlos Garnacho <carlosg@gnome.org>
Expose improvements for GtkNotebook. Bug #383435
* gtk/gtknotebook.c (gtk_notebook_expose): propagate the event to tab
labels.
(gtk_notebook_draw_focus): do not repaint the whole focused tab again.
(gtk_notebook_draw_tab): do not send handmade expose events to tab
labels.
Christian Persch [Mon, 25 Dec 2006 12:29:35 +0000 (12:29 +0000)]
Notify the "embedded" property also on normal construction and when
2006-12-25 Christian Persch <chpe@cvs.gnome.org>
* gtk/gtkplug.c: (gtk_plug_construct_for_display),
(gtk_plug_unrealize): Notify the "embedded" property also on
normal construction and when destroying the socket window.
Bug #388738.
Christian Persch [Mon, 25 Dec 2006 12:21:16 +0000 (12:21 +0000)]
Set the HIG spacings directly instead of using style-set handlers. Fix the
2006-12-25 Christian Persch <chpe@cvs.gnome.org>
* gtk/gtkaboutdialog.c: (gtk_about_dialog_class_init),
(gtk_about_dialog_init), (display_credits_dialog),
(display_license_dialog):
* gtk/gtkfilechooserdialog.c: (gtk_file_chooser_dialog_class_init),
(gtk_file_chooser_dialog_init),
(gtk_file_chooser_dialog_constructor),
(gtk_file_chooser_dialog_unmap):
* gtk/gtkrecentchooserdefault.c:
(_gtk_recent_chooser_default_init):
* gtk/gtkrecentchooserdialog.c:
(gtk_recent_chooser_dialog_class_init),
(gtk_recent_chooser_dialog_init),
(gtk_recent_chooser_dialog_constructor),
(gtk_recent_chooser_dialog_unmap): Set the HIG spacings directly
instead of using style-set handlers. Fix the filechooser's spacing
between content and action area to 12px. Bug #372447.
Christian Persch [Mon, 25 Dec 2006 12:12:10 +0000 (12:12 +0000)]
Don't assume statusbar->label is the statusbar's frame's child when
2006-12-25 Christian Persch <chpe@cvs.gnome.org>
* gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate):
Don't assume statusbar->label is the statusbar's frame's child when
shrinking the size allocation when the grip is shown. Bug #372452.
Matthias Clasen [Sun, 24 Dec 2006 05:34:38 +0000 (05:34 +0000)]
Draw the handle with the right orientation, depending on the position of
2006-12-24 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkhandlebox.c (draw_textured_frame): Draw the
handle with the right orientation, depending on the
position of the handlebox. (#159764, Benjamin Berg)
Matthias Clasen [Sun, 24 Dec 2006 05:18:25 +0000 (05:18 +0000)]
Emit changed and notify:text only once. The same fix was applied for
2006-12-24 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentry.c (gtk_entry_set_text): Emit changed
and notify:text only once. The same fix was applied
for replacing the selection via DND or copy-and-paste.
(#64998, Damon Chaplin, Sven Herzberg)
Matthias Clasen [Fri, 22 Dec 2006 17:46:32 +0000 (17:46 +0000)]
Add functions to allow threadsafe handling of idles and timeouts wrt. to
2006-12-22 Matthias Clasen <mclasen@redhat.com>
* gdk/gdk.symbols:
* gdk/gdk.h:
* gdk/gdk.c: Add functions to allow threadsafe handling
of idles and timeouts wrt. to the GDK lock. (#321886,
Chris Wilson)
Matthias Clasen [Fri, 22 Dec 2006 07:18:21 +0000 (07:18 +0000)]
Make it possible to track the embeddedness of statusicon (#387215, Martyn
2006-12-22 Matthias Clasen <mclasen@redhat.com>
Make it possible to track the embeddedness of
statusicon (#387215, Martyn Russell, patch by Christian
Persch)
* gtk/gtkstatusicon.c: Add orientation and embedded properties.
* gtk/gtkplug.c:
* gtk/gtkplug-x11.c: Add an embedded property.
* tests/teststatusicon.c: Test the new properties.
Matthias Clasen [Thu, 21 Dec 2006 20:40:24 +0000 (20:40 +0000)]
Remove redundant size checks, and document that width, height must be > 0.
2006-12-21 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
* gdk-pixbuf.c (gdk_pixbuf_new): Remove redundant size
checks, and document that width, height must be > 0.
(#343330, Felix Riemann)
Matthias Clasen [Wed, 20 Dec 2006 20:57:49 +0000 (20:57 +0000)]
Silently return if a drag is already in progress, rather than asserting.
2006-12-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextview.c (gtk_text_view_start_selection_drag):
Silently return if a drag is already in progress, rather
than asserting. (#335622, Li Yuan, testcase by Erwann Chenede)
Matthias Clasen [Wed, 20 Dec 2006 19:02:21 +0000 (19:02 +0000)]
Allow any GtkDialog that implements GtkFileChooser as dialog. (#335473,
2006-12-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new_with_dialog):
Allow any GtkDialog that implements GtkFileChooser as
dialog. (#335473, Tommi Komulainen)
Mikael Hallendal [Wed, 20 Dec 2006 13:24:05 +0000 (13:24 +0000)]
Added gtkstatusicon-quartz.c Implements the quartz backend for the status
2006-12-20 Mikael Hallendal <micke@imendio.com>
* gtk/Makefile.am: Added gtkstatusicon-quartz.c
* gtk/gtkstatusicon-quartz.c: Implements the quartz backend for the
status icon.
* gtk/gtkstatusicon.c: Hooked in the new quartz backend. Bug #387874.
Mikael Hallendal [Tue, 19 Dec 2006 15:53:44 +0000 (15:53 +0000)]
Splitted out the GdkPixbuf to NSImage routine so that it can be used from
2006-12-19 Mikael Hallendal <micke@imendio.com>
* gdk/quartz/gdkcursor-quartz.c: Splitted out the GdkPixbuf to NSImage
routine so that it can be used from libgtk as well (needed for
upcoming GtkStatusIcon support in the Quartz port).
* gdk/quartz/gdkevents-quartz.c: Don't assume that all NSWindows are
created from GDK, this is not true for the status icon.
* gdk/quartz/gdkprivate-quartz.h:
* gdk/quartz/gdkquartz.h: Added
gdk_quartz_pixbuf_to_ns_image_libgtk_only so that it is available to
the status icon code.
2006-12-15 Federico Mena Quintero <federico@novell.com>
Merged from gtk-2-10:
* gtk/gtkmenu.c (gtk_menu_set_title): Don't try to optimize for
the case where the new title is the same as the old title, to
preserve the behavior from GTK+ 2.8 (NULL and "" titles are not
equivalent). Handle the case where title == priv->title. This
was found by the LSB compatibility tests:
https://bugzilla.novell.com/show_bug.cgi?id=223882
Matthias Clasen [Mon, 11 Dec 2006 06:16:21 +0000 (06:16 +0000)]
Change the way in which color scheme information is merged to correctly
2006-12-11 Matthias Clasen <mclasen@redhat.com>
* gtksettings.c: Change the way in which color scheme information
is merged to correctly handle vanishing colors. (#374420,
Benjamin Berg, patch by Callum McKenzie)
Also allow to separate entries in color schemes by ';'
instead of newline.
cancel editing (ie. don't accept changes) when the entry loses focus.
2006-12-10 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_focus_out_event):
cancel editing (ie. don't accept changes) when the entry loses
focus. (Fixes #164494, reported by Chris Rouch).
Tor Lillqvist [Sun, 10 Dec 2006 09:08:50 +0000 (09:08 +0000)]
Put gdk-pixbuf-query-loaders.exe and gtk-query-immodules-2.0.exe in the
2006-12-10 Tor Lillqvist <tml@novell.com>
* gtk-zip.sh.in: Put gdk-pixbuf-query-loaders.exe and
gtk-query-immodules-2.0.exe in the runtime zipfile instead of
developer zipfile. Users might add pixbuf loaders or immodules
even if they are not interested in developing gtk+-using software.
Matthias Clasen [Sun, 10 Dec 2006 06:31:53 +0000 (06:31 +0000)]
Check for crt_extern.h and _NSGetEnviron. Fix compilation on Darwin where
2006-12-10 Matthias Clasen <mclasen@redhat.com>
* configure.in: Check for crt_extern.h and _NSGetEnviron.
* gdk/x11/gdkspawn-x11.c: Fix compilation on Darwin where
environ is not available. (#384168, Min Sik Kim)
Paolo Maggi [Thu, 7 Dec 2006 17:01:16 +0000 (17:01 +0000)]
Fixes bug #383407
2006-12-07 Paolo Maggi <paolo@gnome.org>
Fixes bug #383407
* gtk/gtkentry.c (gtk_entry_set_text): check for
completion->priv->changed_id > 0 before calling
g_signal_handler_[un]block.
(gtk_entry_completion_key_press): does not block/unblock the
"changed"
signal before calling gtk_entry_set_text.
draw progress bar through theme engine instead of using our own custom
2006-12-06 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcellrendererprogress.c (gtk_cell_renderer_progress_render):
draw progress bar through theme engine instead of using our own
custom cairo drawing code (#377244, patch from Carlos Garnacho).