2005-05-11 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcolorbutton.c: Use a GtkAlignment rather than a GtkDrawingArea
to draw the swatch in to avoid having an extraneous window.
* gtk/gtkcolorsel.c (color_sample_draw_sample): Actually se tthe
color when !has_opacity.
2005-05-10 Owen Taylor <otaylor@redhat.com>
* gdk/gdkcairo.[ch] gdk/gdkcolor.[ch] gdk/Makefile.am: Add source
files for Cairo convenience functionality.
* gdk/gdkcairo.h (gdk_cairo_rectangle, gdk_cairo_region): Add a
convenience functions to add GdkRectangle, GdkRegion to a cairo path.
* gdk/gdkwindow.c gdk/gdkgc.c gtk/gtkcolorsel.c gtk/gtkiconview.c
gtk/gtkstyle.c: Use gdk_cairo_rectangle/region().
* gdk/gdkcairo.[ch] gdk/gdkdrawable.h gdk/gdkdraw.c: Rename
gdk_drawable_create_cairo_context() to gdk_cairo_create().
* gdk/gdkcairo.c gdk/gdkpixbuf.h gdk/gdkpixbuf-render.c:
Rename gdk_pixbuf_set_as_cairo_source() to
gdk_cairo_set_source_pixbuf().
* gdk/gdkdraw.c gdk/gdkpango.c gtk/gtkcolorsel.c gtk/gtkhruler.c
gtk/gtkhsv.c gtk/gtkiconview.c gtk/gtkstyle.c gtk/gtkvruler.c:
Adjust for renames.
* gdk/gdk.symbols: Update.
* gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): Fix
coordinate system problem that was causing the wrong portions
to be invalidated.
* gtk/gtkcellrenderer.c (gtk_cell_renderer_render)
gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render)
gtk/gtkcellrendererprogress.c (gtk_cell_renderer_progress_render)
gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render)
gtk/gtkcellview.c (gtk_cell_view_expose)
gtk/gtkdnd.c (gtk_drag_highlight_expose)
gtk/gtkentry.c (gtk_entry_draw_text)
gtk/gtktextview.c (text_window_invalidate_rect): Some cairoization.
* gtk/gtkcalendar.[ch]: Beat into something roughly resembling
GTK+ style ... use instance-private data and standard names for
private structure, etc. Move function docs inline.
* gtk/gtkcalendar.[ch]: Switch to drawing everything in
expose. Switch drawing to Cairo.
* gtk/gtkcalendar.c (gtk_calendar_freeze): Deprecate
gtk_calendar_freeze/thaw
2005-04-28 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c: Add a draw-border style property to allow
themes to draw outside the widget's allocation.
* gdk/gdkwindow.c gtk/gtkstyle.c: Remove some save/restore pairs
that were working around the clip-leakage bug in Cairo.
* gtk/gtkstyle.c: Use cairo_fill_preserve() rathe than
save/fill/restore.
* gdk/gdkgc.c gdk/gdkinternals.h: Add _gdk_gc_update_context()
That updates a Cairo context to match a GC.
* gdk/gdkdraw.c: Use _gdk_gc_update_context() to add support
for tiles/stipples/clipping to gdk_draw_glyphs(),
gdk_draw_trapezoids().
* gdk/gdkpango.c: Use _gdk_gc_update_context() instead of internal
implementation of stipples. Use one cairo_t across the entire
drawing operation. Replace cairo_matrix_create() with
stack-allocated matrices.
* gdk/gdkgc.c gdk/gdkinternals.h gdk/x11/gdkgc-x11.c
gdk/win32/gdkgc-win32.c: Save various aspects of the
GC state (fill, tile, stipple, foreground, background, clip region)
in instance-private-data for future use. Add getters.
Get rid of _gdk_windowing_gc_get_foreground() function implemented
by the backends.
* gdk/gdkgc.c gdk/gdkinternals.h gdk/x11/gdkgc-x11.c
gdk/win32/gdkgc-win32.c gdk/linux-fb/gdkgc-fb.c: Add
_gdk_gc_init() to do initial setup of the GC from values;
fixes some problems from drawable redirection.
* gdk/gdkgc.c gdk/gdkinternals.h gdk/x11/gdkgc-x11.c
gdk/win32/gdkgc-win32.c gdk/linux-fb/gdkgc-fb.c: Move
gdk_gc_copy() and gdk_gc_set_clip_{region,rectangle}() into
the generic code, add _gdk_windowing_gc_copy(),
_gdk_windowing_gc_set_clip_region() to do backend specific
stuff.
* gdk/x11/{gdkprivate-x11.h,gdkgc-x11.c.c,gdkdrawable-x11.c}
gdk/win32/{gdkprivate-win32.h,gdkgc-x11.c.c,gdkdrawable-x11.c}
gdk/linux-fb/{gdkprivate-fb.h,gdkgc-fb.c.c,gdkdrawable-fb.c}:
Don't duplicate state that now is stored by the generic code.
* gdk/gdk.symbols Update
2005-04-09 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkimage.c (gtk_image_calc_size, gtk_image_expose):
Don't display too many broken images. (#169870, Roman
Kagan, patch by Ivan Wong)
* gtk/gtkwidget.c (gtk_widget_unparent): Remove debugging
output. (#300013, Tommi Komulainen)
* io-bmp.c (gdk_pixbuf__bmp_image_save_to_callback):
Don't overflow the stack. (Jakub Jelinek, Arjan van de Ven)
2005-04-04 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkwidget.c (gtk_widget_set_redraw_on_allocate): Improve
the wording of the doc comment. (#172422, Vincent Untz)
2005-03-21 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkprivate.h: Define macros GTK_PARAM_READABLE,
GTK_PARAM_WRITABLE, GTK_PARAM_READWRITE which are like
their G_ counterparts, but also mark the name, nick
and blurb as static.
* gtk/*.c: Mark param spec strings as static, using
the new macros.
2005-03-20 Matthias Clasen <mclasen@redhat.com>
Make PLT-reduction work with gcc4, and don't include
everything in gdkalias.h:
* gtk/grk.symbols: Group symbols by header and source file.
* gtk/makegtkalias.pl: Protect definitions by the same
preprocessor symbols used to guard the headers. Move
the alias declarations to a separate file which is
produced when calling makegtkalias.pl -def
* gdk/Makefile.am (gtkaliasdef.c): Add a rule to generate
this file.
* gtk/*.c: Include gtkalias.h after the other headers,
include gtkaliasdef.c at the bottom.
* gtk/*.h: Small cleanups.
2005-03-03 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkwidget.c (gtk_widget_reparent_subwindows):
Avoid warnings if gtk_widget_reparent() is called at
unusual times. (#168966, Christian Persch)
2005-02-24 Matthias Clasen <mclasen@redhat.com>
Fix#167259, reported by Christian Persch:
* gtk/gtkwidget.c (gtk_widget_unparent): Unmap the reparented
widget, even if we avoid the unrealizing.
(gtk_widget_reparent_subwindows): Make reparenting work for
!NO_WINDOW widgets which have other windows which are siblings
of widget->window (as e.g. GtkSpinButton).
2004-12-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkwidget.c (gtk_widget_class_init): Add some docs for
GtkWidget::delete-event and GtkWidget::destroy-event. (#161142,
Paolo Borelli)
2004-11-21 Sven Neumann <sven@gimp.org>
* gtk/gtkwidget.c (gtk_widget_create_pango_context): removed call
to gdk_pango_context_set_colormap() which isn't needed any longer.
Tue Oct 12 17:11:02 2004 <timj@birnet.org>
* gtk/gtkwidget.c (gtk_widget_set_usize_internal): don't queue the
widget for resize or emit change notification if the usize didn't
change. this works around a buggy signal connection in #155139.
Tue Oct 5 21:00:54 2004 Tim Janik <timj@gtk.org>
* gtk/gtkwidget.c (gtk_widget_size_allocate): reverted my last change
and applied owen's leaner conditional flag update which should be good
enough to preserve resizing flag invariants.
Tue Oct 5 17:06:26 2004 Tim Janik <timj@gtk.org>
* gtk/gtkwidget.c (gtk_widget_size_allocate): if REQUEST_NEEDED is still
set on ::size-allocate, another size-request has been queued since
::size-request and needs to be requeued.
2004-08-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkwidget.c (gtk_widget_render_icon): Doc update.
* gtk/gtkiconfactory.c (render_icon_name_pixbuf): When the size is -1,
use the available size closest to 48. (#150147)
* gtk/gtkicontheme.c (gtk_icon_theme_get_icon_sizes): Actually return
a pointer to the beginning of the sizes array, not the end.
Mon Aug 9 12:48:04 2004 Matthias Clasen <maclas@gmx.de>
Add hidden aliases for exported symbols which are
used internally in order to get rid of many PLT
entries. (#145519, Arjan van de Ven)
* gtk/Makefile.am: Add rules to generate gtk.def and
from gtk.symbols, and make make check check the abi
with abicheck.sh.
(gtk_private_h_sources): Add gtkinternals.h
(gtk_built_private_headers): Add gtkalias.h
(gtk_extra_sources): Add gtk.symbols
(EXTRA_DIST): Add makegtkalias.pl and abicheck.sh
* gtk/gtk.symbols: New file. Definition of the GTK+ ABI.
The file can be processed by cpp to filter out certain
subsets of symbols.
* gtk/abicheck.sh: New file. Script to check the actually
symbols exported from libgtk-x11.2.0.so against the symbols
found in gtk.symbols.
* gtk/makegtkalias.pl: New file. Perl script to generate the
header containing the alias definitions for internally used
exported symbols from a list of symbols.
* gtk/gtkinternals.h: New file. An uninstalled header listing
symbols which must be exported for some reason and do not appear
in any other header.
* gtk/*.c: Include gtkalias.h
Mon May 10 15:03:50 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkwidget.c (_gtk_widget_grab_notify): New internal function
that emits the grab notify signal.
* gtk/gtkmain.c (gtk_grab_notify_foreach): Use it here.
2004-04-14 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcolorsel.c: Add a11y relations between the color
wheel and the spin buttons. (#132745, Padraig, O'Briain)
* gtk/gtkiconfactory.c (gtk_icon_set_render_icon): Document
the meaning of size == -1.
* gtk/gtkwidget.c (gtk_widget_render_icon): Explicitly accept
a size of -1. (#137436, Brian Cameron)
2004-03-05 Federico Mena Quintero <federico@ximian.com>
Fixes#136082 and #135265, patch by Morten Welinder.
* configure.in: Use AC_SYS_LARGEFILE.
* */*.c: #include <config.h>
Mon Mar 1 23:52:15 2004 Tim Janik <timj@gtk.org>
* gtk/gtkbindings.[hc]: expose gtk_bindings_activate_event(), changed
callers.
* gtk/gtkwindow.[hc]: added gtk_window_propagate_key_event() to expose
the key event propagation mechanism used for focus widgets.
(gtk_window_key_release_event): use the same key event propagation logic
as gtk_window_key_press_event().
Thu Feb 26 22:56:40 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwidget.c: Replace gtk_widget_get_mnemonic_widgets()
by list_mnemonic_widgets() in doc comments as well.
Thu Feb 26 16:36:38 2004 Owen Taylor <otaylor@redhat.com>
Fixes from Torsten Schoenfeld.
* gtk/gtkwidget.c (gtk_widget_add_mnemonic_label):
Fix name in doc comment.
* gtk/gtkwidget.h: gtk_widget_list_mnemonic_labels(),
not get_mnemonic_labels.
Wed Feb 25 12:21:32 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.[ch] gtk/gtklabel.c: Patch from
Padraig O'Briain to add gtk_widget_add/remove_mnemonic_label,
gtk_widget_get_mnemonic_labels(). (#103456)
Thu Feb 12 21:58:20 2004 Owen Taylor <otaylor@redhat.com>
Various reentrancy fixes for widgets being destroyed
out of focus-out-event. (#128821, Grant Gayed)
* gtk/gtkwindow.c (_gtk_window_unset_focus_and_default):
Ref window and widget over callbacks.
* gtk/gtkwidget.c (gtk_widget_hide)
gtk/gtkwidget.c (gtk_widget_set_child_visible):
Ref the widget before calling _gtk_window_unset_focus_and_default(),
since that can call user callbacks.
* gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows):
Do nothing if the widget isn't realized.
Fri Jan 16 23:59:01 2004 Matthias Clasen <maclas@gmx.de>
The first part of the fix for #114351 (see also
gdk-pixbuf/ChangeLog and po/ChangeLog):
* gtk/gtkintl.h:
* gdk-pixbuf/gdk-pixbuf-i18n.h:
* gdk/gdkintl.h: Define P_() for property blurbs and nicks.
* gdk/gdkdisplaymanager.c:
* gdk-pixbuf/gdk-pixbuf.c:
* modules/input/gtkimcontextxim.c:
* gtk/*.c: Mark property blurbs and nicks with P_().
* po/Makefile.in.in: Add --keyword=P_ to the xgettext
invocation, since property blurbs and nicks are
now marked with P_().
Mon Dec 8 10:54:44 2003 Owen Taylor <otaylor@redhat.com>
* === Released 2.3.1 ===
* NEWS: Updates for 2.3.1
* configure.in: Version 2.3.1, interface age 0, binary age 301.
* gtk/gtkmenuitem.c (gtk_menu_item_can_activate_accel):
Rename from gtk_menu_item_real_can_activate_accel() to
match GTK+ convention, improve comment.
* gtk/gtkwidget.c: Document gtk_widget_can_activate_accel(),
can ::can-activate-accel signal.
* gtk/gtkwidget.c (closure_accel_activate): Fix spelling
in comment.
* gtk/gtkmenu.c (gtk_menu_real_can_activate_accel): Clean
up comment.
* gtk/gtkcellview{,menuitem}.[ch]: Move GET_PRIVATE() macros
into the .c file.
Mon Dec 8 12:09:21 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkicontheme.c (find_builtin_icon): Fix a
missing 'else'. (#128816, Jorn Baayen)
Thu Nov 27 16:19:03 2003 Tim Janik <timj@gtk.org>
* gtk/gtkmenu.c: allow accel activation depending on sensitivity
and the attach widget.
* gtk/gtkmenuitem.c: allow accel activation depending on visibility,
sensitivity and the parent menu.
* gtk/gtkwidget.[hc]: introduced ::can-activate-accel signal which
checks whether accelerators may activate a widget. the default handler
demands the widget be sensitive and visible+viewable.
* gtk/gtkaccelgroup.[hc]: export gtk_accel_group_activate().
2003-09-21 Matthias Clasen <maclas@gmx.de>
Changes to make cross-process merging feasible:
* gtk/gtkuimanager.[hc]: Add a readonly "ui" property which holds the
merged UI definition. Remove the "changed" signal, since its role
is now filled by "notify::ui". Instead add a "actions-changed" signal
which gets emitted when the set of actions changes.
* gtk/gtktoggleactionprivate.h:
* gtk/gtktoggleaction.[hc] (gtk_toggle_action_[sg]et_draw_as_radio):
Add a "draw_as_radio" property to toggle actions so that they can be
used as proxies for radio actions much like the "draw_as_radio"
property on check menu items enables them to operate as proxies for
radio actions.
Prevent the "show_all" trap for action-based menus (see
http://mail.gnome.org/archives/gtk-devel-list/2003-September/
msg00260.html):
* gtk/gtkmenu.c (gtk_menu_{hide,show}_all): Remove g_return_if_fail()
calls from static functions.
* gtk/gtkuimanager.c (update_node):
* gtk/gtkaction.c (connect_proxy): Set "no_show_all" on constructed
widgets whose visibility is externally controlled.
* gtk/gtkwidget.[hc] (gtk_widget_[gs]et_no_show_all): Add a boolean
"no_show_all" property with setter and getter. When TRUE, it keeps
gtk_widget_{hide,show}_all() from modifying the visibility of the
widget and its children.
Thu Aug 7 16:49:29 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_set_style_internal):
Fix a bug where on theme change, resize/redraw wasn't
properly getting queued on toplevel windows. (#116346,
Rajkumar Siva)
* gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows):
Fix bug where wrong coordinates were used for toplevel
window.
Sat Jul 19 00:18:40 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkwindow.c (gtk_window_set_default_icon): Fix C99
declaration
* gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): new function
(gtk_widget_real_focus_{in|out}_event): queue shallow draws
instead of full draws.
Wed Jul 2 18:00:56 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkicontheme.[ch]: Implement a loader for
named themed icon based on from gnome-desktop library
by Alex Larsson.
* gtk/gtkiconthemeparser.[ch]: .ini file parsing code
from gnome-desktop.
* gtk/gtkiconfactory.[ch]: Add
gtk_icon_source_set/get_icon_name() to allow stock icons
to be based off of named theme icons.
* gtk/gtkiconfactory.c: Rework sources so that the source
is *either* a pixbuf, or a filename, or an icon name,
instead of the pixbuf/filename mix it was before. Put a
workaround for get_pixbuf() so that it can return the
filename pixbuf, e.g, for render_icon().
* gtk/gtkiconfactory.c: Make the default setup use
themed icons, and add builtin icons to the default
icon theme for all the standard pixbufs, so we
don't rely on actually having an icon theme on disk.
* gtk/gtkrc.c: Add support for @"icon-name" to specify
a themed icon for a stock icon source.
* tests/Makefile.am test/testicontheme.c: Add a test
program from gnome-desktop.
* gdk/x11/gdkevents-x11.c gtk/gtksettings.c: Add
Net/IconThemeName / gtk-icon-theme-name setting.
* gtk/gtkiconfactory.c (ensure_cache_up_to_date): Actually
update the icon cache serial so we don't continually
* gtk/gtkwidget.c: Fix a couple of references in doc comments
to ::direction_set that should have been to ::direction-changed