2002-06-10 Tor Lillqvist <tml@iki.fi>
[ merge from stable ]
* gdk/win32/gdkmain-win32.c (gdk_screen_get_width_mm,
gdk_screen_get_height_mm): Use the "logical dpi" to calculate
(pseudo) physical sizes. Similar to the use of "logical dpi" in
Pango as suggested by Joaquin Cuenca Abela.
Two fixes by Florent Duguet:
* gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Correct
semantics for setting cursor to NULL (should use cursor of parent
window).
* gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get): Plug memory
leak.
Fri Jun 7 23:11:42 2002 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_real_expand_row): Fix sizing
bug.
* docs/reference/gtk/tmpl/gtkbutton.sgml: Remove ^M's.
Not sure why all the docs updated.
* gtk/gtktreeviewcolumn.c
(gtk_tree_view_column_clear_attributes_by_info): New function,
split off from gtk_tree_view_column_clear_attributes.
(gtk_tree_view_column_clear_attributes):
(gtk_tree_view_column_finalize): Call the new function, avoid
recalculating the info from the renderer. (#84413)
* gtk/gtktextview.c (text_view_child_new_anchored): Initialize
vc->type in order to avoid a later UMR. (#84415)
2002-06-07 Mark McLoughlin <mark@skynet.ie>
* gtk/gtkwindow.c: (gtk_window_compute_configure_request): use
the RootWindow of this screen for gdk_window_get_pointer.
Thu May 23 15:44:30 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextview.c (changed_handler): Don't redraw
when the area is completely above the visible area.
Fri May 17 17:27:21 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c gtk/gtkwidget.c: Add a "is_focus"
property indicating whether a widget is the focus
widget within the toplevel.
* gtk/gtkwindow.[ch]: Add "is_active" "has_toplevel_focus"
properties to indicate (separately) the idea of
being the part of the toplevel with the input focus
and being the active widget. (Needed for full XEMBED
compliance.)
* gtk/gtkplug.c gtk/gtksocket.c: Update to work
in terms of is_active/has_toplevel_focus, and thus
handle the active/focused XEMBED distinction
correctly.
* gtk/gtkplug.c (gtk_plug_realize): Remove
FOCUS_CHANGE_MASK, since we don't need it.
Fri May 17 18:07:34 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtksocket.c (gtk_socket_add_window): Send
XEMBED_EMBEDDED_NOTIFY.
* gtk/gtksocket.c: Assume windows without _XEMBED_INFO
property want to be mapped, for better
current-Qt compatibility.
Thu Jun 6 17:27:01 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtkrbtree.c (_gtk_rbtree_reorder): don't leak the GArray
(figured out by Matthias Clasen, fixes#82026).
Wed Jun 5 18:34:47 2002 Owen Taylor <otaylor@redhat.com>
Changes multihead reorganizing code for win32 support,
mostly from a patch by Hans Breuer.
* gdk/gdkcolor.c gdk/x11/gdkcolor-x11.c gdk/gdkcursor.c
gdk/x11/gdkcursor-x11.c gdk/gdkevents.c gdk/x11/gdkevents-x11.c
gdk/gdkfont.c gdk/x11/gdkfont-x11.c gdk/gdkkeys.c
gdk/x11/gdkkeys-x11.c gdk/gdkimage.c gdk/x11/gdkimage-x11.c
gdk/gdkscreen.c gdk/x11/gdkmain-x11.c
gdk/gdkdisplay.c gdk/gdkevents-x11.c gdk/gdkpango.c
gdk/x11/gdkpango-x11.c gdk/gdkselection.c
gdk/x11/gdkselection-x11.c gdk/gdkwindow.c
gdk/x11/gdkwindow-x11.c gdk/gdkvisual.c gdk/x11/gdkvisual-x11.c:
Move port-independent singlehead wrapper functions into
port-independent part of GDK. (#80009)
* gdk/win32/gdkcolor-win32.c gdk/win32/gdkcursor-win32.c
gdk/win32/gdkevents-win32.c gdk/win32/gdkfont-win32.c
gdk/win32/gdkimage-win32.c gdk/win32/gdkkeys-win32.c
gdk/win32/gdkmain-win32.c gdk/win32/gdkproperty-win32.c
gdk/win32/gdkselection-win32.c gdk/win32/gkwindow-win32.c:
Turn singlehead functions into "multihead" functions that ignore
their GdkDisplay or GdkScreen arguments.
* gdk/win32/gdkdrawable-win32.c gdk/win32/gdkevents-win32.c
gdk/win32/gdkinput-win32.c gdk/win32/gdkprivate-win32.h:
Misc multihead-compatibility changes.
* gtk/gtk.def gdk/gdk.def: Update for multihead functions.
* gdk/gdkcolormap.h gdk/gdkvisual.h gdk/x11/gdkcolormap-x11.c
gdk/x11/gdkvisual-x11.c: Remove the screen fields
from the public parts of the colormap/visual structures, add accessors
instead.
* gdk/gdkpixbuf-render.c gdk/gdkpixmap.c gdk/gdkrgb.c
gdk/x11/gdkcolormap-x11.c gdk/x11/gdkimage-x11.c
gdk/x11/gdkimage-x11.c gdk/x11/gdkprivate-x11.h gtk/gtkgc.c
gtk/gtkstyle.c gtk/gtkwidget.c: Use accessors to get the screen
for colormaps, visuals; move the fields into the private
structures for the x11 backend.
* gdk/gdkdisplay.[ch] gdk/x11/gdkdisplay-x11.[ch]
gdk/gdkscreen.[ch] gdk/x11/gdkscreen-x11.c:
Remove virtualization of screen and display functions.
(#79990, patch from Erwann Chenede)
* gdk/win32/gdkdisplay-x11.c gdk/win32/gdkscreen-win32.c
gdk/win32/{Makefile.am, makefile.msc, makefile.mingw}:
New files containing stub implementations of Display,
Screen functions.
* gdk/x11/gdkscreen-x11.[ch] gdk/x11/gdkdisplay-x11.[ch]
gdk/x11/gdkx.h: Clean up function exports and what
headers they are in. (#79954)
* gdk/x11/gdkx.h: Fix macro that was referring to a non-existant
screen->screen_num. (In the patch for #79972, Erwann Chenede)
* gdk/gdkscreen.c gdk/gdkwindow.c gdk/x11/gdkinternals.h
gdk/x11/gdkscreen-x11.c: Fix gdk_screen_get_window_at_pointer()
to use window hooks. (#79972, patch partly from Erwann Chenede)
* gdk/x11/gdkdisplay-x11.c gdk/x11/gdkevents-x11.c: Fix
some warnings.
Tue Jun 4 17:39:34 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: If we have xft .pc file, use that
when checking for Xft/Xrender. (Still need to separate
out HAVE_XFT, HAVE_RENDER)
* configure.in: Make sure Xft cflags come before X cflags.
Tue Jun 4 19:24:41 2002 Kristian Rietveld <kris@gtk.org>
Discussed in #76249.
* gtk/gtkliststore.[ch]: made gtk_list_store_remove return a gboolean,
added gtk_list_store_iter_is_valid.
* gtk/gtktreestore.[ch]: made gtk_tree_store_remove return a gboolean,
added gtk_tree_store_iter_is_valid.
* gtk/gtktreemodelsort.[ch]: added VALID_ITER macro as in liststore
and treestore sources, added gtk_tree_model_sort_iter_is_valid.
2002-06-04 Daniel Elstner <daniel.elstner@gmx.net>
[ merge from stable ]
* gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render): Really fix#83796: Revert jrb's last patch, and move the second if-clause into the fist one's else-branch. This is also what the other cell renderers do.
2002-05-30 Michael Meeks <michael@ximian.com>
* gtk/gtkmenu.c (gtk_menu_popup): destroy the transfer
window if the grab fails so we don't get events on this
window after the menu is finalized with a duff GtkWidget
pointer: #82366
Mon May 28 13:28:10 Shivram U <shivaram.upadhyayula@wipro.com>
* gtk/gtktextbuffer.c (selection_data_get_buffer): Check if the owner
got is of type GDK_WINDOW_FOREIGN. If so the owner is not in-process,
and so return NULL.
2002-05-27 Daniel Elstner <daniel.elstner@gmx.net>
[ merge from stable ]
Fixes for #83190
* gtk/gtktreedatalist.h (_GtkTreeDataList::data): Add missing fields to anonymous union: glong, gulong, gint64 and guint64. This is an internal header file, so it should not affect ABI or API compatibility.
* gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value): Implement missing support for glong, gulong, gint64 and guint64 fundamental types. Use data.v_uint instead of data.v_int for G_TYPE_FLAGS, as GValue does.
(_gtk_tree_data_list_value_to_node): ditto
(_gtk_tree_data_list_node_copy): Add case labels for missing fundamental types, and reorder them to match the other functions.
(gtk_tree_data_list_compare_func): Implement comparison for glong, gulong, gint64 and guint64. Use g_value_get_enum() for G_TYPE_ENUM and g_value_get_flags() for G_TYPE_FLAGS, rather than accessing them as gint/guint. The G_VALUE_HOLDS() check probably won't like this.
2002-05-24 Dave Camp <dave@ximian.com>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted):
Built an iter directly instead of using
gtk_tree_model_sort_elt_get_path(), since that returns a path for
the child model.
2002-05-24 Dave Camp <dave@ximian.com>
* gtk/gtktreemodelsort.c: Use indices[i] >= level->array->len
rather than level->array->len > indices[i] in the bounds check.
2002-05-23 Tor Lillqvist <tml@iki.fi>
* gtk-zip.sh.in: Use correct path to the loaders and immodules
directories (GTK_BINARY_VERSION, not GTK_VERSION).
Wed May 22 16:12:38 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: Require autoconf-2.52 explicitely,
since otherwise Debian will process it with 2.13 (ugh!).
Wed May 22 12:29:20 2002 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): remove
GTK_RESIZE_QUEUE setting.
Mon May 20 15:02:21 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdisplay-x11.c: Patch from HideToshi Tajima
to handle Xlib internal connections. (#76681)
Mon May 20 12:59:14 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtktooltips.c: Set the private LEAVE_PENDING
flag to fix problem where with menu items with
submenus, tooltips were getting stuck. (Effectively
disables tooltips for menu items with submenus.)
(Bug #75961, Soeren Sandmann)
* tests/testgtk.c: Set a tooltip on a menu item
with a submenu.
Mon May 20 11:47:59 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkplug.c: Undo an accidental revert of
fixes of May 16. (Caught by Padraig O'Briain)
* gtk/gtkctree.c (cell_size_request): Fix bug where
size request for text cells was being overwritten.
(#82264, Graham Swallow.)
Fri May 17 14:40:24 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkimmulticontext.c (gtk_im_multicontext_set_slave):
Protect against reentrancy problems by emitting
::preedit_changed at the end, fixing input context
leak. (Yao Zhang)
* modules/input/gtkimcontextxim.c (status_window_free):
Patch from Federico Mena Quintero to fix problem where
references to IMContextXIM were kept around after
module was unloaded.
* gtk/gtkdnd.c (gtk_drag_dest_set): NULL initialize
proxy window.
Fri May 17 13:56:23 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkplug.c (gtk_plug_filter_func): Fix a missing
unref in the local/passive case. (#82067, Michael
Meeks)
* gtk/gtkplug.c (_gtk_plug_remove_from_socket): Fix
reference leak on the plug window.
* tests/testsocket.c (add_child): Fix memory leak.
* gtk/gtkdnd.c (gtk_drag_dest_site_destroy): Unref
the proxy window.
Thu May 16 19:49:24 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_configure_event): Only
optimize out the full configure handling if we got
a gratuitous configure event(configure_request_count == 0)
and the size didn't change.
* gtk/gtkwindow.c (gtk_window_move_resize): Use
g_message(), not g_print() for debug spew.b
* gtk/gtkwindow.c (gtk_window_real_set_focus): Ref
the old and new focus widgets for the scope of
the function.
* gtk/gtksocket.c gtkplug.c: Remove various #if 0'd
bits of old code.
Thu May 16 23:59:56 2002 Kristian Rietveld <kris@gtk.org>
Merged from gtk-2-0.
* gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed): set the prev
of the next node correctly, so we don't corrupt the list and cause
bad things. (fixes#71374)
Thu May 16 14:51:14 2002 Owen Taylor <otaylor@redhat.com>
Fixes for #78258
* gtk/gtkrbtree.c demos/gtk-demo/editable-cells.c:
Fix some 64-bit warning problems. (Patch from Matthias
Clasen.)
* gtk/gtkrbtree.c (_gtk_rbtree_debug_spew_helper): Surround
a bunch of debug code with G_ENABLE_DEBUG.
* configure.in demos/gtk-demo/main.c: Replace
#ifndef G_OS_WIN32 with proper #ifdef HAVE_FLOCKFILE.
Thu May 16 12:56:38 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkrange.c (gtk_range_calc_layout): Fix a missed
check for division by zero. (#77820, Gareth Pearce)
Thu May 16 12:50:13 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkevents-x11.c (gdk_xsettings_notify_cb):
gdk_event_put() copies the event and setting name,
so we don't have to strdup() it here. (Fix from
Michael Meeks, #81953)
* gtk/gtkmenu.c (gtk_menu_paint): If the menu is scrolled down or
up, and some of the widget area is empty, don't fill it in with
GTK_SHADOW_IN rectangles that make it looks strange. Fixes
#72695.
Wed May 15 18:15:45 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkdnd.c (_gtk_drag_source_handle_event): Don't
call gdk_pointer_grab() to change the cursor if we've
already ungrabbed on button release / escape.
(#80420, Dave Camp)
Wed May 15 17:12:50 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtktooltips.c: Special case menu items to
pop down on motion. (#75961)
* tests/testgtk.c (create_item_factory): Add tooltips
to the File menu.
* gtk/gtkentry.c (update_im_cursor_location): Fix
cursor locations passed to the IM context.
(#80027, Yao Zhang)
Wed May 15 11:13:19 2002 Owen Taylor <otaylor@redhat.com>
* configure.in gtk/stock-icons/Makefile.am: If not
building libpng, don't rebuild gtkstockpixbufs.h
(#81819, Bill Janssen)
Tue May 14 19:53:15 2002 Owen Taylor <otaylor@redhat.com>
* demos/gtk-demo/geninclude.pl.in configure.in:
Subsitute in @PERL@ instead of hardcoded
/usr/bin/perl. (#78355, Gareth Pearce. Fix based
on patch from Matthias Clasen)
* gdk/Makefile.am: Patch from Daniel Elstner to use glib-mkenums
instead of makeenums.pl.
* gdk/{x11,linux-fb,win32}/Makefile.am: Hack to
get gdkenumtypes.h built first.
Tue May 14 18:41:58 2002 Owen Taylor <otaylor@redhat.com>
* gtk/stock-icons/Makefile.am (gtkstockpixbufs.h):
Remove the result file on error. (#79929, David
Highley)
* gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu):
If the menu is currently active, cancel it before
setting the new menu. (#79162, Jonathan Blandford.)
Tue May 14 18:13:10 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Fix
prepending at the start of the list. (#56349,
Thomas Leonard.)
* gtk/gtksignal.h (gtk_signal_disconnect_by_func): Add
explicit casts to GSignalMatchType for C++ compatibility.
(#77601)
Tue May 14 17:30:57 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkctree.c gtk/gtkclist.c: Fix format of
selection data to be 8 rather than GTK_TYPE_POINTER.
(#79751, James Henstridge)
* gtk/gtkmenu.c (gtk_menu_key_press): Call
gtk_accelerator_valid() with cleaned up
accel_key/accel_mods, not the raw values from
the event. (#80513, Havoc Pennington.)
* gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Remove
some dead code that set the tearoff window not
resizable and removed decorations. (#80235)
Tue May 14 16:44:09 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtklabel.c (gtk_label_ensure_layout): Set
the width of the layout to the actual wrap width
(our requisition) not the width we set when calculating
the width. This results in the lines being justified
within the correct area. (#79157, Anders Carlsson)
* gtk/gtkaccelgroup.c gtk/gtkmarshelers.list: Corrected
registered parameter types of "accel_activate" and
"accel_changed" signals. (Patch from Murray Cumming, #78798)
* gtk/gtkrc.c (gtk_rc_make_default_dir): Switch
binary-version and type to correspond to the
current ordering in _gtk_get_module_path.
(#78746, Sergey Kuzminov)
* gtk/gtkrc.c (gtk_rc_get_module_dir): Add docs
pointing to the GTK_PATH documentation.
* gtk/Makefile.am (uninstall-local): Delete
key themes as well. (#81286, Kristian Rietveld.)
Tue May 14 15:40:49 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkwindow-{linux-fb,win32,x11.c} (gdk_window_set_back_pixmap): Add a sanity g_return_if_fail() check for the depths
for the window and pixmap. (#79191, Shivaram Upadhyayula)
Tue May 14 15:09:33 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkkeys-x11.c: Try adding a #ifndef/#define
for XkbKeySymEntry to make up for OSF broken
XKB extension. (#77819, Gareth Pearce)
* gtk/gtklayout.c: Clamp the upper values in response
to ::size-allocate if necessary. (#81290, Christophe Saout)
* gtk/gtkcombo.c (gtk_combo_entry_focus_out): Handle
combo being destroyed before idle fires.
(#81396, Timo Sirainen)
Tue May 14 11:21:19 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkevents-x11.c (gdk_event_translate):
Discard configure events from SubstructureNotify.
(#81760, Rich Burridge)
* gtk/gtkfontsel.c (cmp_families): Use g_utf8_strcoll(), not
strcmp().
* gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): Clamp
width of child allocation to >= 1. (Fixes warnings from
#77639, Martin Schulze)
* gtk/gtkcontainer.c (gtk_container_class_install_child_property):
(gtk_container_class_find_child_property):
(gtk_container_class_list_child_properties):
* gtk/gtkwidget.c (gtk_widget_class_find_style_property):
(gtk_widget_class_list_style_properties): Change parameter names
to match the header file and the documentation.
2002-05-10 Daniel Elstner <daniel.elstner@gmx.net>
[ merge from stable ]
* gtk/gtktreemodel.c: #define INITIALIZE_TREE_ITER(), which zeroes out all GtkTreeIter fields. (#81380)
(gtk_tree_model_get_iter): Use it.
(gtk_tree_model_iter_children): ditto
(gtk_tree_model_iter_nth_child): ditto
(gtk_tree_model_iter_parent): ditto
2002-05-08 Michael Natterer <mitch@gimp.org>
* configure.in: fixed yesterdays fix for cross compiling: simply
check the variable "cross_compiling" which gets set by autoconf.
Wed May 8 16:14:49 2002 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktreeview.c
(gtk_tree_view_init): set_redraw_on_allocate (FALSE);
(gtk_tree_view_size_allocate): invalidate last column if width
changed.
(gtk_tree_view_bin_expose): skip over cells that aren't in
event->region
Tue May 7 18:36:03 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/xsettings-client.c (xsettings_client_process_event):
Check for selection_atom, not property name atom.
2002-05-07 Michael Natterer <mitch@gimp.org>
* configure.in: added a new conditional CROSS_COMPILING which
indicates ($build != $host). If it is set, look for
gdk-pixbuf-csource in PATH. Error out if it was not found.
* gtk/stock-icons/Makefile.am: use the gdk-pixbuf-csource found at
configure time if CROSS_COMPILING is set, use the one which was
just built otherwise.
2002-05-07 Anders Carlsson <andersca@gnu.org>
* gdk/x11/xsettings-client.c (xsettings_client_process_event):
Only process manager events with the correct atom.
* gdk/x11/gdkwindow-x11.c (gdk_window_new):
(gdk_window_set_events): Always select for property notify for
maintaining window state.
* gdk/x11/gdkevents-x11.c (gdk_event_translate): Only propagate
property notifys if they were selected by gdk_window_set_events.
Mon May 6 23:48:14 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_map_expanded_rows_helper): call
func on current node before the child nodes.
Mon May 6 23:17:42 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_motion_draw_column_motion_arrow):
unset user_data before destroying the window. (fixes#80065).
Mon May 6 12:17:14 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: Fix versioning to avoid changing the
soname!
[ merge from stable ]
* Makefile.am (EXTRA_DIST): Add ChangeLog.pre-2-0 (#78641)
* m4macros/gtk-2.0.m4: save CFLAGS/LIBS properly when
compiling "what went wrong" test case. (#79329)
* m4macros/gtk-2.0.m4: Remove reference to editing
pkg-config script. (From Jim Gettys)
* configure.in: Bump version to 2.1.0, binary, interface age 0.
* gtk/gtkcontainer.c (gtk_container_class_list_child_properties):
(gtk_container_class_find_child_property): Document.
* gtk/gtkwidget.c:
* gtk/gtkwidget.h: New functions gtk_widget_class_list_child_properties
and gtk_widget_class_find_child_property. (#80652)
Sun May 5 16:42:32 2002 Kristian Rietveld <kris@gtk.org>
The "big treeview focus patch". Fixes several issues and adds some
goodies. Related bugs: #73676, #73734, #78660.
* gtk/gtktreeview.h: add gtk_tree_view_set_cursor_on_cell
* gtk/gtktreeview.c (gtk_tree_view_button_press): focus on a cell
if applicable,
(gtk_tree_view_bin_expose): set_cell_data before iterating columns,
add support for row-spanning focus rectangles,
(gtk_tree_view_has_special_cell): new function,
(gtk_tree_view_move_cursor_left_right): add support for multiple
focusable cells in one column,
(gtk_tree_view_set_cursor): call _set_cursor_on_cell now,
(gtk_tree_view_set_cursor_on_cell): copy of _set_cursor, extended
with focus_cell parameter,
(gtk_tree_view_search_iter): removed unused column variable,
(gtk_tree_view_start_editing): add neighbor size code to allow
for multiple editable cells in one column.
* gtk/gtktreeviewcolumn.c (_GtkTreeViewColumnCellInfo): add
in_editing_mode field,
(gtk_tree_view_column_get_edited_cell): new function, removed
_get_editable_cell,
(_gtk_tree_view_column_get_cell_at_pos): new function,
(gtk_tree_view_column_pack_end): s/g_new/g_new0/ ...,
(gtk_tree_view_column_cell_process_action): loads of changes to get
it right and to allow for multiple special cells, etc,
(gtk_tree_view_column_cell_first): new function,
(gtk_tree_view_column_cell_last): ditto,
(gtk_tree_view_column_cell_next): ditto,
(gtk_tree_view_column_cell_prev): ditto,
(gtk_tree_view_column_cell_focus): add left and right parameters,
allow for multiple special cells,
(gtk_tree_view_column_cell_is_visible): add assertion,
(gtk_tree_view_column_focus_cell): new function,
(gtk_tree_view_column_stop_editing): unset in_editing_mode flag,
(_gtk_tree_view_column_get_neighbor_sizes): iterate through cells
correctly
* gtk/gtktreeviewcolumn.h: add gtk_tree_view_column_focus_cell
* gtk/gtktreeprivate.h: s/_get_editable_cell/_get_edited_cell/, add
_gtk_tree_view_column_get_cell_at_pos, add new parameters to
_gtk_tree_view_column_cell_focus.
* tests/testtreeedit.c: add some cells in order to test new code.
Sun May 5 02:22:59 2002 Soeren Sandmann <sandmann@daimi.au.dk>
* tests/test-images/*: image files for testing pixbuf loaders
* tests/pixbuf-*.c: the old test-loaders.c split into four
different programs
* tests/Makefile.am: add new pixbuf tests
Sun May 5 02:27:01 2002 Soeren Sandmann <sandmann@daimi.au.dk>
* Makefile.am (noinst_PROGRAMS): remove test-loaders (moved to
gtk+/tests/)
* test-loaders.c, test-images.h: remove
2002-05-03 Erwann Chenede - <erwann.chenede@sun.com>
* gdk/x11/gdkvisual-x11.c:
* gdk/x11/gdkwindow-x11.c:
* gdk/x11/gdkdisplay-x11.[hc] (gdk_open_display) :
Rationalized the screen initialization process,
changed the GdkDisplayX11 screen list to an array.
* gdk/x11/gdkscreen-x11.[hc] (_gdk_x11_screen_new) :
Moved the xinerama init functions to gdkdisplay-x11.c to
this file, create a single function to fully initialize
a GdkScreen. #79981
2002-05-01 Erwann Chenede - <erwann.chenede@sun.com>
* gdk/gdkpixmap.[hc] (gdk_pixmap_get_screen):
* x11/gdkpixmap-x11.c:
removed that function as gdk_drawable_get_screen
does the job. #79964
2002-05-01 Anders Carlsson <andersca@gnu.org>
* gdk/x11/gdkevents-x11.c
(gdk_x11_screen_supports_net_wm_hint): Use the same
key when setting and getting NetWmSupportedAtoms.
Tue Apr 30 18:42:25 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_set_screen): Make it
work, even if the window is already realized or
mapped.
* tests/testgtk.c: Erwann's multihead changes, slightly
dumbed down. (Removed logic for pulling windows onto
the current screen, people can click twice on the demo
to destroy and create again.)
* tests/prop-editor.c: Set the screen on the property
editor if the edited object is a widget.
Tue Apr 30 18:42:25 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_set_screen): Make it
work, even if the window is already realized or
mapped.
* tests/testgtk.c: Erwann's multihead changes, slightly
dumbed down. (Removed logic for pulling windows onto
the current screen, people can click twice on the demo
to destroy and create again.)
* tests/prop-editor.c: Set the screen on the property
editor if the edited object is a widget.
2002-04-30 Havoc Pennington <hp@redhat.com>
* gtk/gtktextlayout.c (gtk_text_layout_real_free_line_data): use
gtk_text_layout_invalidate_cache instead of cut-and-paste
(gtk_text_layout_real_invalidate): always invalidate cache, even
if the line has no stored line data. #78573
* gtk/gtktextview.c (gtk_text_view_get_iter_location): add call to
gtk_text_view_ensure_layout, #77388
(gtk_text_view_get_iter_at_location): ditto
(gtk_text_view_get_line_yrange): ditto
(gtk_text_view_get_line_at_y): ditto
Tue Apr 30 15:59:53 2002 Owen Taylor <otaylor@redhat.com>
* tests/testmultiscreen.c: Multi-screen test case
form multihead branch with a few cleanups. (Get rid
of use of g_object_connect())
* tests/testmultidisplay.c: Multi-display test case
from multihead branch with a few improvements.
(Allow the other display name to be passed on
the command line, use a GtkDialog to get more attractive
spacing.)
Tue Apr 30 14:23:43 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdisplay-x11.c (gdk_open_display): fix
problem with finalizing non-initialized fully display
when failing to open display.
* tests/testxinerama.c: Xinerama test case from
multihead branch, with some cleanups. (Start even
if there is only one monitor, for one.)
2002-04-30 Havoc Pennington <hp@redhat.com>
* gtk/gtktextbtree.c (gtk_text_btree_remove_tag_info): assign
something to "prev" so that removing tag info succeeds.
Part of #77301
* gtk/gtktextbtree.c (_gtk_text_btree_unref): reorder so that it
unrefs the tag table first, so that the btree is in a consistent
state when we're removing tags from it.
* gtk/gtktexttagtable.c (_gtk_text_tag_table_remove_buffer): strip
all tags in the tag table out of the buffer. #77301
Tue Apr 30 11:37:09 2002 Owen Taylor <otaylor@redhat.com>
* modules/input/gtkimcontextxim.c: Make multihead-safe;
use a different IM context per display.
* configure.in acconfig.h: Add Xinerama checks from
multihead branch, changing HAS_XINERAMA => HAVE_XINERAMA.
* gdk/x11/gdkdisplay-x11.c: HAS_XINERAMA => HAVE_XINERAMA.
2002-04-29 Alex Larsson <alexl@redhat.com>
* gdk/gdkpango.c (gdk_draw_layout_line_with_colors):
Use tmp also if foreground is set.
Sun Apr 28 22:43:55 2002 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_sort_func): Fix
so that you can set a new sort func.
2002-04-27 Anders Carlsson <andersca@gnu.org>
* gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new_for_display):
Use GDK_DISPLAY_XDISPLAY instead of GDK_SCREEN_XDISPLAY since
we pass in a GdkDisplay * in the macro.
2002-04-26 Anders Carlsson <andersca@gnu.org>
* gdk/gdkdisplay.c: (gdk_set_default_display):
Call _gdk_windowing_set_default_display.
* gdk/gdkinternals.h:
* gdk/x11/gdkmain-x11.c: (_gdk_windowing_set_default_display):
New function that sets gdk_display to the default display.
Fixes#79965
Fri Apr 26 21:58:16 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): if the
deleted node was "below" this path, then do not unref all nodes
between the deleted parent and the node this rowref is pointing too
(see added comment in gtk_tree_row_ref_deleted_callback),
(fixes#77977)
2002-04-26 Sven Neumann <sven@gimp.org>
* tests/testtreecolumns.c
* tests/testtreeview.c: quit the main loop when the window is
destroyed. Removed compiler warnings about wrong format in printf().
Fri Apr 26 21:46:42 2002 Kristian Rietveld <kris@gtk.org>
This commit fixes binary compatibility, which I broke with my
recent cell renderer commits :/.
* gtk/gtkcellrenderer.h: move cell_background out of _GtkCellRenderer
* gtk/gtkcellrenderer.c: create GtkCellRendererInfo, with the
cell_background field and use this as object data. This way we keep
the field private and dont break ABI.
* gtk/gtkcellrendererpixbuf.h: remove stock_id, stock_size and
stock_detail from _GtkCellRendererPixbuf
* gtk/gtkcellrendererpixbuf.c: create a GtkCellRendererPixbufInfo
with above mentioned fields. And update everything.
Thu Apr 25 16:51:40 2002 Owen Taylor <otaylor@redhat.com>
Start of integration of Erwann Chenede's multihead work
from the gtk-multihead branch.
* gdk/gdkdisplay.[ch] gdk/gdkscreen.[ch]
gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkscreen-x11.[ch]
New classes representing a set of screens with attached
input devices and a single contiguous area, respectively.
* gdk/gdk.[ch] gdk/gdkinternals.h gdk/x11/gdkmain-x11.c:
gdk/x11/gdkprivate-x11.h: Make the initialization interface
simple _gdk_windowing_init() and do the rest in
gdk_open_display() calls.
* gdk/gdk.[ch]: Add gdk_parse_args() which can be used
to do the display-independent part of initialization
instead of gdk_init_[check].
* gdk/gdkcursor.h gdk/gdkfont.h gdk/gdkkeys.h gdk/gdkpixmap.h
gdk/gdkproperty.h gdk/gdkselection.h gdk/gdkwindow.h:
Add multihead variants (_for_display(), for_screen()) of functions
getting information specific to a particular screen screen or
display.
* gdk/gdkscreen.[ch]: Add gdk_screen__* variants of functions
like gdk_rgb_get_colormap() that used to get/list global
objects.
* gdk/x11/gdkx.h: Add functions for converting GdkScreen
and GdkDisplay into the X equivalents.
* gdk/x11/gdkwindow-x11.c: Removed gdk_window_xid_at_coords()
not in the headers and unused.
* configure.in gdk/x11/{gxid.c,gxid_lib.[ch],gdkinput-gxi.c}:
Remove gxid support ... has not been tested for a long time...
"xfree" support is more portable to non XFree86.
* gdk/**.h: Add a GDK_MULTIHEAD_SAFE define that can be
used to turn off functions that are inherently non-multihead
safe.
* gdk/**.c: add GDK_NOTE(multihead, ...) calls when functions
are used in non-multihead-safe ways.
* gdk/*.c gdk/x11/*.c: Changes to make the internals of GDK
multihead safe.
Thu Apr 25 23:49:01 2002 Kristian Rietveld <kris@gtk.org>
Fixes#74206.
* gtk/gtktreeprivate.h: add _gtk_tree_view_column_count_special_cells
* gtk/gtktreeview.c (_gtk_tree_view_column_has_editable_cell),
(_gtk_tree_view_column_get_editable_cell): remove a space which made
the code look ugly
(_gtk_tree_view_column_count_special_cells): new function,
(gtk_tree_view_column_cell_process_action): if there's only one
activatable cell, the whole column will activate that renderer.
Thu Apr 25 23:36:55 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_search_iter): make the search
dialog not scroll horizontally (prolly fixes#74806).
Thu Apr 25 20:24:37 2002 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): use the child's
requisition.height, not allocation.height, as width of submenu
indicator. (#75948)
Thu Apr 25 00:26:34 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_reset_default_sort_func):
resort if we're already in 'unsorted' state, and update the docs
Wed Apr 24 17:34:16 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_stop_editing): temporarily set
->priv->edited_column to NULL. Pleas read the comment in this
function for an explanation (fixes#79632).
Tue Apr 23 18:35:34 2002 Kristian Rietveld <kris@gtk.org>
This commit adds a cell_background property for cell renderers. With
this property you can make your TreeView look incredibly ugly.
* gtk/gtkcellrenderer.c: add cell_background, cell_background_gdk and
cell_background_set properties,
(set_cell_bg_color): new function,
(gtk_cell_renderer_get_property), (gtk_cell_renderer_set_property):
support for new properties,
(gtk_cell_renderer_render): render a background when set.
* gtk/gtkcellrenderer.h: add cell_background_set and cell_background
fields.
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
when rendering, pass in just the background_area of the cell and not
the background_area of the entire column.
Mon Apr 22 19:24:29 2002 Kristian Rietveld <kris@gtk.org>
This commit adds stock icon functionality to GtkCellRendererPixbuf
which is totally cool.
* gtk/gtkcellrendererpixbuf.h: add some fields
* gtk/gtkcellrendererpixbuf.c: add finalize method, add some
properties, add some stock icon rendering code.
* demos/gtk-demo/stock_browser.c: modified to use the stock
icon stuff in the cellrendererpixbuf instead of its own stock icon
rendering code.
2002-04-21 Alexander Larsson <alla@lysator.liu.se>
* gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
Save x and y in window_private.
* gtk/gtkplug.c (_gtk_plug_add_to_socket):
Move plug window outside the visible area to avoid flashing until
the first size_allocate.
Sat Apr 20 12:07:14 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_modify_color_component): Accept
NULL for color to mean "unmodify"
* gtk/gtkwidget.c (gtk_widget_modify_font): Accept NULL for
font_desc to mean "unmodify".
Sat Apr 20 16:49:26 2002 Kristian Rietveld <kris@gtk.org>
* gdk/x11/gdkpixmap-x11.c (gdk_pixmap_new): replace GDK_IS_WINDOW
with GDK_IS_DRAWABLE in the assert, only check GDK_WINDOW_DESTROYED
if window is a GdkWindow,
(gdk_bitmap_create_from_data): ditto,
(gdk_pixmap_create_from_data): ditto
Fri Apr 19 23:38:16 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeprivate.h: add _gtk_tree_view_column_autosize
* gtk/gtktreeview.c: privately export _gtk_tree_view_column_autosize,
and add a small note about that function,
(gtk_tree_view_button_press): check for double click and
"not having an autosize" column before autosizing the column,
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_min_width):
call _gtk_tree_view_column_autosize to update autosized column width
(gtk_tree_view_column_set_max_width): ditto
* TODO, TODO.xml, README.nanox, docs/Changes-1.2.txt,
docs/Changes-2.0.txt, docs/gtk-config.txt, docs/debugging.txt,
gdk/TODO: Remove some files whose content is either obsolete or
has been moved elsewhere.
* Makefile.am, gtk+.spec.in, docs/Makefile.am: Remove references
to these files.
Fri Apr 19 21:06:39 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_size_allocate): subtract
TREE_VIEW_HEADER_HEIGHT from allocation->height to get the real
size for the tree (fixes#72729),
(gtk_tree_view_real_start_editing): correct cell_area->y for
scrolling due to gtk_tree_view_real_set_cursor (fixes#75687)
Fri Apr 19 16:30:09 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeprivate.h, gtk/gtktreeview.c: rename
last_single_clicked{,_2} to last_button_press{,_2}, as the latter
is a more sane name.
* gtk/gtktreeview.c (gtk_tree_view_button_press): use ->priv->anchor
instead of ->priv->cursor, check for the anchor at another place, as
you can go in edit mode without having an anchor.
2002-04-18 Tor Lillqvist <tml@iki.fi>
* gdk-pixbuf/Makefile.am (uninstall-libtool-import-lib)
* gdk/Makefile.am (uninstall-libtool-import-lib): Fix typo,
thanks to David Sterba for noticing.
* gtk/gtkmain.h
* gtk/gtkmain.c (gtk_init_abi_check, gtk_init_check_abi_check): In
GTK+ 2.0 the GtkWindow struct actually is the same size in gcc on
Win32 whether compiled with -fnative-struct or not. Unfortunately
this wan't noticed until now. So, from now on, check some other
struct, too, for which the use of -fnative-struct still
matters. GtkBox is one such.
Thu Apr 18 00:23:31 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c
(gtk_tree_model_sort_convert_path_to_child_path): so this function
was completely broken. Fix it and improve readability.
Tue Apr 16 17:28:21 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): check
->priv->cursor and ->priv->anchor rowrefs before removing
node->children from the rbtree. Also check the
->priv->last_single_clicked and ->priv->last_single_clicked_2 rowrefs
(I think I really need to rename those two someday).
Mon Apr 15 15:41:56 2002 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkcontainer.c (gtk_container_focus): include internal
children when doing focus.
(gtk_container_get_all_children): new static function to include
internal children when making a list of them.
Sun Apr 14 16:56:59 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeprivate.h: add _gtk_tree_view_column_get_editable_cell and
_gtk_tree_view_column_get_neighbor_sizes
* gtk/gtktreeviewcolumn.c (struct _GtkTreeViewColumnCellInfo): add
real_width field,
(_gtk_tree_view_column_get_editable_cell): implement,
(gtk_tree_view_column_cell_process_action): fill info->real_width
(_gtk_tree_view_column_get_neighbor_sizes): implement
* gtk/gtktreeview.c (gtk_tree_view_button_press): make the "editable
widget" show up with the same size as the actual cell, so it doesnt
cover the complete column if there are any other cells in that column.
2002-04-13 Havoc Pennington <hp@pobox.com>
* gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): create
the target pixbuf AFTER filling in width/height, so that
passing in -1 for width/height will work.
Sat Apr 13 22:49:45 2002 Kristian Rietveld <kris@gtk.org>
Fixes#75510
* gtk/gtktreeselection.c (gtk_tree_selection_get_selected): make this
function work correctly and more sane
* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): remove
node->children from rbtree before emitting GtkTreeSelection::changed
Sat Apr 13 17:15:12 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_init): dont set
the mode to GTK_CELL_RENDERER_MODE_EDITABLE by default,
(gtk_cell_renderer_text_class_init): for some reason our default for
editable was TRUE, of course this is FALSE.
(gtk_cell_renderer_text_set_property): update mode when editable
has been changed.
2002-04-12 Havoc Pennington <hp@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_real_remove): relocate the
remove_weak_pointer to just before we free the page, to be sure
it doesn't get re-added. #75282
Fri Apr 12 18:32:46 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_real_set_cursor): add
clamp_node argument
(toplevel): update usages of gtk_tree_view_real_set_cursor,
(gtk_tree_view_focus_to_cursor): don't let
gtk_tree_view_real_set_cursor clamp the node, so you won't get
unexpected scrolling
Sat Apr 6 06:57:00 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmenushell.[ch] gtk/gtkmenuitem.c: Export
private _gtk_menu_shell_activate() to encapsulate
cut-and-paste code.
* gtk/gtkmenubar.c: Select the first item on the menu bar
for F10 rather than acting as if the user pressed <Alt>F
to select the file manager.
Tue Apr 9 19:01:28 2002 Owen Taylor <otaylor@redhat.com>
Fix problems with HandleBox and focusing - #78232
* gtk/gtkwidget.c (gtk_widget_translate_coordinates): Handle
GtkHandleBox / GnomeDock style window heirarchy / widget
heirarchy disconnects. :-(.
* gtk/gtkcontainer.c: Handle failures from
gtk_widget_translate_coordinates (Focusing is not right, but at
least it doesn't go into infinite loops.)
Tue Apr 9 18:34:58 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcontainer.c (_gtk_container_queue_resize): Always
set the ALLOC_NEEDED and REQUEST_NEEDED flags up the hierarchy,
even if we aren't currently in a resize container... we need
this to properly handle size changes to widgets that are
being moved from one heirarchy to another. (#78226)
Mon Apr 8 20:28:54 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeselection.c (gtk_tree_selection_select_path),
(gtk_tree_selection_unselect_path),
(gtk_tree_selection_path_is_selected): check the return value of
_gtk_tree_view_find_node and return if it's TRUE. This makes those
functions work somewhat saner on non-expanded trees.
Fri Apr 5 18:28:56 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeselection.c (gtk_tree_selection_set_mode): free
anchor row reference after unselecting the selection (fixes#76272)
Fri Apr 5 18:27:48 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_real_expand_row): only return
when we don't have to open all children (fixes#75736)
Fri Apr 5 18:24:24 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear): unref
cellrenderer after clearing the attributes of the renderer (fixes
#75592)
Thu Apr 4 22:28:08 2002 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkmenuitem.c (gtk_menu_item_paint): Fix problem with menu
titles being clipped (#75948)
2002-04-04 Tor Lillqvist <tml@iki.fi>
* gdk/gdkrgb.c: Fix some bugs, and introduce a minor feature.
(gdk_rgb_convert_4_pack): New function, for 16-color (4 bits per
pixel) static visuals (fixes#858).
(gdk_rgb_convert_gray4_pack, gdk_rgb_convert_gray4_d_pack): Fix
same bugs in both functions: Odd start coordinate (partial byte)
was not handled correctly. Also a partial final byte was not
handled correctly.
(gdk_rgb_do_colormaps): Use G_N_ELEMENTS.
(gdk_rgb_create_info): For pseudocolor visuals, use the 2x2x2
colorcube only for depths 3 and 4. For static color, use it for
depths 3..7 like before. (Depth 5..7 pseudocolor probably never
occurs on X11. It doesn't normally occur on Win32 either, but
there is experimental code in gdkvisual-win32.c to let the user
restrict the size of palette used.)
(gdk_rgb_init): Set gdk_rgb_verbose if the GDK_DEBUG_GDKRGB flag
is set.
(gdk_rgb_select_conv): Use gdk_rgb_convert_8 also for depths 5, 6
and 7 (see above). Use gdk_rgb_convert_4_pack for 4 bits per pixel
static color.
Mon Apr 1 22:20:24 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_move_cursor_page_up_down): add
check for y > tree_view->priv->height (fixes#76974)
Mon Apr 1 22:19:39 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_sort_level): get
the stamp changes right this time
Mon Apr 1 22:13:24 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodel.c (gtk_tree_row_reference_free): only
disconnect the ref callbacks when model == proxy (Thanks go to
Manuel Clos Crespo for the remote debugging)
Sat Mar 30 15:19:24 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c: revert the latest stamp increment changes,
as it broke stuff for trees
Fri Mar 29 18:09:18 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkaccelgroup.c (gtk_accel_group_query): Call
gdk_keyval_to_lower() on the key passed in, since we
lowercase all other key vals passed in, so querying
keyvals will otherwise fail if the caller used
an uppercase accelerators (#76899, Vitaly Tishkov)
Fri Mar 29 17:41:21 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmain.c (load_modules): Fix screwup in handling
of module path that was resulting in freed memory being
accessed when both GTK_MODULES and a theme were set.
(#76902, Johan Dahlin)
2002-03-29 Hans Breuer <hans@breuer.org>
* gtk/gtkmain.h : fix typo in gtk_init_check macro, which
caused crashes if argc != 0
* gtk/stock-icons/makefile.msc : added new icons
Fri Mar 29 20:17:35 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
remove call to gtk_tree_model_sort_increment_stamp
(gtk_tree_model_sort_sort_level): always increment the stamp
Thu Mar 28 18:38:30 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtk[hv]paned.c (gtk_[hv]paned_size_allocate):
Don't show the window unless the widget is mapped.
(#76742, Dennis Bjrklund, Soeren Sandmann)
2002-03-29 Hans Breuer <hans@breuer.org>
Fixed dashed line issues (#74441) to an IMO reasonable extend.
That is: use PS_USERSTYLE on WinNT (the next GDI limit appears
to be with lines width > 50); Render horizontal and vertical
dashed lines on Win9x 'by hand'. Dotted selection rectangles
and Dia look nice ...
* gdk/win32/gdkprivate-win32.h : add pen_dashes pointer and
num_pen_dashes to _GdkGCWin32
* gdk/win32/gdkgc-win32.c : initialize pen_dashes and remove
the guesses from dashes to windoze line styles.
(predraw_set_forground) : always ExtCreatePen (PS_SOLID) on
Win9x, which does not support PS_USERSTYLE.
* gdk/win32/gdkdrawable-win32.c : new functions render_line_
<horizontal|vertical>. Use them if not running on NT in
gdk_win32_draw_<rectangle|segments|lines> ()
* gdk/win32/gdkkeys-win32.c (gdk_keyval_name) : return NULL
for keyval == 0 to avoid to have zeros in all menu entries
without accelerator.
Thu Mar 28 21:11:04 2002 Tim Janik <timj@gtk.org>
* gtk/gtkfilesel.c (open_new_dir): when encountering non-UTF-8 file
names, alert the user with g_message() instead of g_warning() and
put out the actual conversion error.
Wed Mar 27 11:10:39 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_real_remove): Set
page->last_focus_child to NULL as well as removing the
weak reference, to deal with reentrancy in set_focus_child().
(#76634)
2002-03-27 Murray Cumming <murrayc@usa.net>
* gtk/gtktreeview.cc: Corrected registered return type of
move-cursor signal. Had to add a marshaller to
gtk/gtkmarshalers.list.
Tue Mar 26 14:46:50 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmenu.c (gtk_menu_popup): Shuffle the ordering around
some more (position before realizing) fixing problems with
arrows popping up at the wrong time (#73386), hopefully not
introducing other problems. (Reported by Ettore Perrazoli, others)
2002-03-26 Dave Camp <dave@ximian.com>
* gtk/gtktreeview.c (gtk_tree_view_button_press): Free the path
after calling gtk_tree_view_row_activated() rather than before.
2002-03-25 Sven Neumann <sven@gimp.org>
* gtk/gtkrc.c (gtk_rc_parse_font_name): free the style's
font_description before accessing a new one.
(gtk_rc_parse_stock): always unref the created icon_set. #76289
Sun Mar 24 10:32:38 2002 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreemodel.c (gtk_tree_path_copy): Make path arg const, #75653
* gtk/gtkfontsel.c (gtk_font_selection_show_available_styles): fix
a warning
* gtk/gtktreeview.c (gtk_tree_view_button_press): remove the grab
when we emit row_activated so that listeners of this signal can
grab the mouse, #75629
2002-03-23 Havoc Pennington <hp@pobox.com>
* gtk/gtktextlayout.c (gtk_text_layout_real_invalidate):
invalidate the line containing start, even if the [start,end)
range is empty (just invalidate [start,end], essentially).
Partially fixes#72374
2002-03-23 Havoc Pennington <hp@pobox.com>
* gtk/gtktextview.c (gtk_text_view_do_popup): end any selection in
progress, patch from db@zigo.dhs.org, #74620
2002-03-23 Havoc Pennington <hp@pobox.com>
* gtk/gtktextview.c (gtk_text_view_move_cursor_internal): extend
selection for pageup/pagedown and ctrl+pageup/pagedown if
shift is held. more of #53934
2002-03-23 Havoc Pennington <hp@pobox.com>
* gtk/gtktextview.c (gtk_text_view_destroy_layout): disconnect
layout handlers earlier in the function, to avoid possible
reentrancy screwups
(gtk_text_view_invalidate): Don't install idle handlers if
layout == NULL, otherwise we get problems during finalization
since clearing the buffer invalidates and puts the idle handlers
back after we destroy the layout. #74660
(gtk_text_view_ensure_layout): Install the validation handlers
right after creating the layout.
* gtk/gtktexttagtable.c (foreach_unref): call
_gtk_text_buffer_notify_will_remove_tag(), #75126
2002-03-22 Havoc Pennington <hp@pobox.com>
* gdk/x11/gdkfont-x11.c (gdk_fontset_load): add more explanatory
text to the error message about missing charsets, and use
g_printerr() not g_warning() since this is typically not a
programming error (we do not export any API to ask whether
a font set will have missing charsets so apps realistically can't
do anything other than try the gdk_fontset_load())
* gtk/gtktextview.c (gtk_text_view_key_press_event): return FALSE
if the text view isn't editable and the user presses Return,
so default buttons and such can be activated, #74937
* gtk/gtktextbuffer.c (paste_from_buffer): don't insert
if the insertion point is not editable and the paste
is interactive, #74125
* gtk/gtkwindow.c (gtk_window_move_resize): enhance the #if 0
debug spew
* gtk/gtktextbuffer.c (cut_or_copy): only remove the previous
cut/copied data right before replacing it, when we know we are
going to replace it. Fixes#74049
Fri Mar 22 11:29:11 2002 Owen Taylor <otaylor@redhat.com>
Partial fix for problem where keypad keys acted
as shift-arrows in an entry rather than arrows (#74327)
* gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Sort lookup
results by number of modifiers in the entry. Fixes
problem where if a key matched both modified and unmodified
key bindings ... e.g., the distinguishing key binding
was consumed, then it was random which was used.
* gtk/gtkbindings.c (gtk_binding_entries_sort_patterns):
Catch the case where there are multiple entries from the
same bindingset (with different modifiers), and use only
the first entry, which, with the change in _gtk_key_hash_lookup()
Fri Mar 22 10:56:19 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkaccelmap.c (gtk_accel_map_save_fd): Fix memory
leak. (#74400, Morten Welinder.)
* gtk/gtkaccelmap.c: Properly handle short returns from
write() calls. (Handling EINTR isn't enough... that only
handles the case where you were interrupted before you
wrote a single byte.)
* gdk/linux-fb/gdkmouse-fb.c gdk/linux-fb/gdkkeyboard-fb.c:
Robustify against short returns from write() calls.
2002-03-22 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Don't clear
all of the pen_style, just the PS_STYLE_MASK. Seems to fix#74441,
but that is just the special case of one-pixel wide one-pixel
on-off dotted lines. To fully implement generic X11 style dashed
lines a major rewrite would be needed.
Thu Mar 21 10:04:05 2002 Owen Taylor <otaylor@redhat.com>
* gdk/gdkwindow.c (gdk_window_real_get_depth): Remove
some left over debugging code with a G_BREAKPOINT()
in it.
Wed Mar 20 19:33:31 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcalendar.c (gtk_calendar_main_button): When
changing months when the user clicks on a prev-month
or next-month day, focus and select the new day.
Ignore double clicks on prev-month, next-month days.
(Based on suggestions from Andras Salamon, #74173)
* gtk/gtkcalendar.c: Implement the focused/unfocused
selected color change.
2002-03-20 Alex Larsson <alexl@redhat.com>
Patches from Carlo E. Prelz <fluido@fluido.as>
Now gtkfb at least compiles and mostly works. The keyboard
stuff needs more loving.
* gdk/linux-fb/gdkkeyboard-fb.c (xlate_get_for_keyval,
xlate_get_for_keycode, raw_get_for_keyval, raw_get_for_keycode):
At least set the out parameters for these calls.
* gdk/linux-fb/gdkmain-fb.c:
(gdk_pointer_grab_info_libgtk_only, gdk_keyboard_grab_info_libgtk_only):
Implement new functions.
Wed Mar 20 19:00:03 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkentry.c (gtk_entry_set_text): Short-circuit
the text to the exact same thing, so we don't
unexpectedly change the selection or cursor position.
(#74290, John Ellis.)
Wed Mar 20 17:11:51 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkrc.c: Patch from Richard Hestilow to fix
gtk-font-name changes for widgets that get the actual
default style. (#73709)
Wed Mar 20 22:59:23 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtkrbtree.[ch]: add _gtk_rbtree_set_fixed_height()
* gtk/gtktreeprivate.h: add fixed_height_check field
* gtk/gtktreeview.c (gtk_tree_view_init): initialize
scroll_sync_timer and fixed_height_check
(do_validate_rows): add fixed_height_check. If all validated rows
in the first cycle have the same height, then we set that height for
the entire tree. This is some sort of 'fake' optimization, but helps
a lot for the common case. We keep validating the entire tree in
the background though.
(gtk_tree_view_set_model): reset fixed_height_check
Wed Mar 20 16:36:08 2002 Owen Taylor <otaylor@redhat.com>
* gtk/*.c: Patch from Erwann Chenede, #73900 fixing
a lot of warnings with Forte CC, mostly implicit
casts between void * and function pointers.
* gdk/gdkevents.c (gdk_event_get_state): GdkEventVisibility's
state field is not a GdkModifierType. (Also #73900)
Wed Mar 20 12:35:22 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_grab_default): Remove
leftover notification of has-default. (#75508, Jacob
Berkman.)
Wed Mar 20 12:27:07 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkaccelgroup.c (gtk_accelerator_valid): Allow
arrow keys as accelerators, as long as some modifier
is pressed. (#75495)
* gtk/gtkaccelgroup.c (gtk_accelerator_valid): Fix
incorrect example in the docs.
Wed Mar 20 12:06:30 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_set_child_visible):
Fix segfault when widget->parent is NULL.
(#75615, Alexey A. Malyshev)
Wed Mar 20 11:32:07 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkentry.c: Improve test to prevent infinite
loop. (#74952, Thomas Leonard)
* gtk/gtkmenushell.c (gtk_real_menu_shell_cycle_focus):
Fix warning when toplevel menu shell isn't a menu
bar. (Thomas Leonard, #75602)
Wed Mar 20 10:55:56 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix assignment
of time in scroll events. (Sven Neumann, #75574)
2002-03-20 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkdnd-win32.c (gdk_drag_find_window): Use
gdk_window_get_toplevel(), as it is the top-level windows that are
registered for DND.
* gdk/win32/gdkwin32.h: Don't include gdkinternals.h.
2002-03-18 jacob berkman <jacob@ximian.com>
* gtk/gtkaspectframe.c (gtk_aspect_frame_class_init): set the
correct min/max values for the ratio property (fixes#75331)
Mon Mar 18 11:55:03 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave):
Patch from Yao Zhang fixing reference count leak.
* gtk/gtkentry.c (gtk_entry_key_release): if (entry->editable),
not if (!entry->editable).
Sun Mar 17 01:11:16 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_size_request): use
do_validate_rows instead of validate_rows_handler (fix by
Mike Pieper, #74126)
Sat Mar 16 23:54:56 2002 Kristian Rietveld <kris@gtk.org>
* gdk/x11/gdkwindow-x11.c (gdk_window_set_static_bit_gravity): just
return when we have an input_only window (fix by Owen Taylor)
* gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add
scroll_sync_timer
* gtk/gtktreeview.c (install_scroll_sync_handler): new function,
(scroll_sync_handler): ditto,
(gtk_tree_view_unrealize): take scroll_sync_timer into account
(gtk_tree_view_row_deleted): install scroll_sync_timer instead of
calling top_row_to_dy/dy_to_top_row directly
-- this greatly speeds up clearing the model (#73199)
* gtk/gtktreemodelsort.c
(gtk_tree_model_sort_convert_path_to_child_path): fix up this function,
for some reason I really screwed it up (fixes#74663)
2002-03-16 Sven Neumann <sven@gimp.org>
* configure.in (GDK_PIXBUF_DEP_CFLAGS) (GDK_PIXBUF_XLIB_DEP_CFLAGS)
(GDK_DEP_CFLAGS) (GTK_DEP_CFLAGS): include CFLAGS from gthread-2.0
so that the libs work correctly in a threaded environment.
Fri Mar 15 12:51:42 2002 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeviewcolumn.c
(gtk_tree_view_column_new_with_attributes): add example to docs,
as people are seeming to have trouble with this function.
Remake docs as well.
Fri Mar 15 15:37:01 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdrawable-x11.c (convert_to_format):
Fix byte shift arithmetic for big-endian. (Tracked
down with help from Tuomas Kuosmanen)
* gdk/x11/gdkkeys-x11.c (update_keymaps): Fudge keymap to have lower
upper case variants if there is only a single keysym per keycode and
the key symbol has upper and lower case variants (#74512)
Thu Mar 14 17:09:52 2002 Owen Taylor <otaylor@redhat.com>
* gdk/gdkwindow.c (gdk_window_process_all_updates): Fix rather
improbable reentrancy problem if a window is destroyed
while updates are being processed on another window. (Noticed
by Michael Meeks, #74708)
Thu Mar 14 11:17:18 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkkeyhash.c (_gtk_key_hash_remove_entry): When
removing keys from the key hash, reinsert the right list
back into the hash. (Dave Camp, #74571)
Wed Mar 13 17:17:40 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkobject.h: Remove left-over GTK_OBJECT_CONNECTED
macro that was defined in terms of the now-gone GTK_CONNECTED
flag. (Seth Burgess, #74028)
Wed Mar 13 17:11:10 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkaccelgroup.c (accel_group_weak_ref_detach): Unset
the acceleratable_groups qdata because qdata isn't removed
on ->dispose but rather on ->finalize. (#74569, found
by Matt Wilson.)
Tue Mar 12 10:50:09 2002 Owen Taylor <otaylor@redhat.com>
* modules/input/gtkimcontextxim.c (gtk_im_context_xim_filter_keypress):
Fix incorrect return value, filter out returns of 0x7f for
the delete key. (#74179, Kang Jeong-He)
Mon Mar 11 01:25:14 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_button_press): compare path with
cursor path and not with the selected iter in the 'decide to edit'
check
Fri Mar 8 20:41:51 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreestore.c (gtk_tree_store_drag_data_received): handle
gtk-tree-model-drop-append like the ListStore, includes some
tweaks to work right with trees
Fri Mar 8 14:22:43 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilesel.c (gtk_file_selection_init): Some packing
tweaks.
* configure.in: Include GLIB_LIBS when checking
for bind_textdomain_codeset, to catch the case where
it is in -lintl.