Owen Taylor [Fri, 30 Nov 2001 21:14:07 +0000 (21:14 +0000)]
Patch from Hidetoshi Tajima to fix bad match error when target drawable is
Fri Nov 30 16:12:21 2001 Owen Taylor <otaylor@redhat.com>
* gdk/gdkpango.c: Patch from Hidetoshi Tajima to fix
bad match error when target drawable is not the
same depth as the root window. (#65841)
* HACKING: Update.
Owen Taylor [Fri, 30 Nov 2001 21:01:01 +0000 (21:01 +0000)]
Fix alignment problem in deserialization, (#65785, reported by Hidetoshi
Fri Nov 30 15:55:34 2001 Owen Taylor <otaylor@redhat.com>
* gdk-pixdata.c (gdk_pixdata_deserialize): Fix
alignment problem in deserialization, (#65785,
reported by Hidetoshi Tajima)
add checks for empty menu items to behave like insensitive items (#59456)
Thu Nov 29 21:35:56 2001 Kristian Rietveld <kristian@planet.nl>
* gtk/gtkmenu.c (gtk_menu_motion_notify): add checks for
empty menu items to behave like insensitive items (#59456)
* gtk/gtkmenuitem.c (gtk_real_menu_item_activate_item): select
next item if the first item in the menu is a tear off item
(#59456-2, suggestion by Matthias Clasen)
* gtk/gtkmenushell.c (gtk_menu_shell_button_press),
(gtk_menu_shell_button_release), (gtk_menu_shell_entry_notify),
(gtk_menu_shell_leave_notify), (gtk_real_menu_shell_move_current),
(gtk_real_menu_shell_activate_current): add check, so empty
menu items behave like insensitive items (#59456)
* gtk/gtkmenuitem.[ch]: add _gtk_menu_item_is_selectable to make
the checks more readable ...
* gtk/gtkmenushell.c (gtk_menu_shell_button_press),
(gtk_menu_shell_button_release): causes the menu to dropdown if the
caption is clicked again (#64977)
Havoc Pennington [Thu, 29 Nov 2001 20:09:41 +0000 (20:09 +0000)]
assertion here that we were at the end iterator was not correct; change
2001-11-29 Havoc Pennington <hp@redhat.com>
* gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
assertion here that we were at the end iterator was not correct;
change code to move us to the end iterator. bug #65731
Owen Taylor [Thu, 29 Nov 2001 01:15:52 +0000 (01:15 +0000)]
Remove improper use of g_locale_to_utf8() to convert from latin-1, and do
Wed Nov 28 20:05:44 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkaccellabel.c (gtk_accel_label_refetch): Remove
improper use of g_locale_to_utf8() to convert from
latin-1, and do it the easy way by building the string
correctly in the first place.
Owen Taylor [Thu, 29 Nov 2001 00:43:24 +0000 (00:43 +0000)]
Convert atoms to and from atoms for properties of type XA_ATOM. (#65555,
Wed Nov 28 19:34:15 2001 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkproperty-x11.c (gdk_property_change, gdk_property_get):
Convert atoms to and from atoms for properties of type XA_ATOM.
(#65555, patch from Hidetoshi Tajima)
Fix Ximian bug #12125; merged from gdk-pixbuf stable.
2001-11-21 Federico Mena Quintero <federico@ximian.com>
Fix Ximian bug #12125; merged from gdk-pixbuf stable.
* gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Use
a simple state machine instead of a scary if/else chain.
(DecodeHeader): Set the reading state.
(DecodeColormap): Set the reading state.
(decode_bitmasks): New function, decodes the bitmasks for
BI_BITFIELDS coding.
(OneLine32): Handle BI_BITFIELDS coding.
(OneLine16): Likewise.
Owen Taylor [Wed, 28 Nov 2001 23:54:30 +0000 (23:54 +0000)]
Rename 'id' parameter to avoid problems with Objective C.
Wed Nov 28 18:37:04 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtksocket.[ch] (gtk_socket_add_id): Rename 'id' parameter
to avoid problems with Objective C.
Havoc Pennington [Wed, 28 Nov 2001 20:42:15 +0000 (20:42 +0000)]
put the warning explaining the validation error in front of the
2001-11-28 Havoc Pennington <hp@redhat.com>
* gtk/gtktextview.c (gtk_text_view_paint): put the warning
explaining the validation error in front of the G_BREAKPOINT
* gtk/gtkrange.c (gtk_range_adjustment_value_changed): call
process updates with include_children = FALSE instead of TRUE, so
we redraw the range only, not the whole darn window. Making
GtkRange a NO_WINDOW widget had weirdly caused the text widget
Trace/breakpoint trap bug to become much easier to trigger.
Owen Taylor [Wed, 28 Nov 2001 01:20:14 +0000 (01:20 +0000)]
Notify on the ::active property _here_, not in
Tue Nov 27 20:17:55 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcheckmenuitem.c (gtk_check_menu_item_activate):
Notify on the ::active property _here_, not in
gtk_check_menu_item_set_active.
Owen Taylor [Mon, 26 Nov 2001 02:20:06 +0000 (02:20 +0000)]
Add long, but horribly sketchy comment about what is going on in this
Sun Nov 25 21:19:02 2001 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkgeometry-x11.c: Add long, but horribly sketchy
comment about what is going on in this file.
* gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix
x/y problem.
Owen Taylor [Mon, 26 Nov 2001 00:19:31 +0000 (00:19 +0000)]
Calculate size based on the _child_ of the menu item, not the menuitem.
Sun Nov 25 18:59:19 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkoptionmenu.c (gtk_option_menu_calc_size):
Calculate size based on the _child_ of the menu item,
not the menuitem. (#65005, Damon Chaplin)
* gtk/gtklistitem.c (gtk_list_item_new_with_label): Add
some extra vertical padding to the label widget ... restores
GTK+-1.2 spacing. (#65085, Damon Chaplin.)
Owen Taylor [Sat, 24 Nov 2001 00:24:18 +0000 (00:24 +0000)]
Handle events in windows other than widget->event_window properly.
Fri Nov 23 19:22:50 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtknotebook.c: Handle events in windows other
than widget->event_window properly. (#65079, reported
by Damon Chaplin)
* gdk/gdkevents.c (gdk_event_get_coords): Fix x/y bug.
Owen Taylor [Sat, 24 Nov 2001 00:05:17 +0000 (00:05 +0000)]
Align the image at the top, #65020, request from Seth Nickell)
Fri Nov 23 18:57:46 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmessagedialog.c (gtk_message_dialog_init): Align
the image at the top, #65020, request from Seth Nickell)
Owen Taylor [Fri, 23 Nov 2001 23:55:19 +0000 (23:55 +0000)]
Remove some strange arithmetic that was resulting in rows being drawn too
Fri Nov 23 18:49:53 2001 Owen Taylor <otaylor@redhat.com>
* gtk/{gtkclist,gtkctree.c} (draw_row): Remove some strange
arithmetic that was resulting in rows being drawn too low.
(#65001, reported by Damon Chaplin)
Owen Taylor [Fri, 23 Nov 2001 23:42:30 +0000 (23:42 +0000)]
Offset invalidated range correctly. Fix scrolling of title window.
Fri Nov 23 18:36:42 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkrange.c (gtk_range_button_press): Offset
invalidated range correctly.
* gtk/gtkclist.c (hadjustment_value_changed): Fix scrolling
of title window. (#65001, reported by Damon Chaplin)
* gtk/gtkcombo.c (gtk_combo_button_event_after): Replace
horrible hack with use of ::event_after.
Owen Taylor [Fri, 23 Nov 2001 21:46:44 +0000 (21:46 +0000)]
Version 1.3.11 Require GLib-1.3.11, Pango-0.22, ATK-0.7. Restore to
Thu Nov 22 15:01:03 2001 Owen Taylor <otaylor@redhat.com>
* Version 1.3.11
* configure.in (ATK_REQUIRED_VERSION): Require
GLib-1.3.11, Pango-0.22, ATK-0.7.
* tests/prop-editor.c (property_widget): Restore
to working as well as it did before.
* gtk/gtklistitem.h: Mark deprecated since it is
an integral part of GtkList.
* demos/gtk-demo/demo-common.h: New header file,
for a common functions not important to the meat
of the demos.
* demos/gtk-demo/main.c (demo_ifind_file): Add a utility
function to search for a file used by the demo.
* demos/*.c: Use demo_find_file.
Owen Taylor [Fri, 23 Nov 2001 20:44:13 +0000 (20:44 +0000)]
Add windows.sgml Revert last diff to get things to build.
Fri Nov 23 15:12:07 2001 Owen Taylor <otaylor@redhat.com>
* gtk/Makefile.am (content_files): Add windows.sgml
* gdk/tmpl/cursors.sgml: Revert last diff to get things to
build.
Owen Taylor [Wed, 21 Nov 2001 17:04:35 +0000 (17:04 +0000)]
Ref-sink the tooltips object. Ref-sink the tooltips object. Fix some
Wed Nov 21 11:41:29 2001 Owen Taylor <otaylor@redhat.com>
* tests/testgtk.c (create_tooltips): Ref-sink the tooltips object.
* gtk/gtktoolbar.c (gtk_toolbar_init): Ref-sink the tooltips object.
* gtk/gtkfilesel.c (open_new_dir): Fix some constness warnings.
* gtk/gtkaccelgroup.c: Rename gtk_accel_groups_from_acceleratable()
back to gtk_accel_groups_from_object(), change @acceleratable
parameter to gtk_accel_groups_activate() accordingly.
* gtk/gtkaccelmap.c (gtk_accel_map_lookup_entry): Remove
left-over comment about quark return.
* gtk/gtkaccelmap.h: Fix spelling of gtk_accel_map_foreach_unfiltered().
* gtk/gtk-boxed.defs (GtkIconSource): added as a boxed type.
(Patch from Matt Wilson)
* gtk/gtkobject.c (gtk_object_finalize): Warn if a floating
object is finalized.
Tim Janik [Tue, 20 Nov 2001 23:43:03 +0000 (23:43 +0000)]
applied patch from owen to get rid of accel map notifiers. changed things
Tue Nov 20 21:25:08 2001 Tim Janik <timj@gtk.org>
* applied patch from owen to get rid of accel map notifiers.
changed things to fix reentrancy and API as discussed on gtk-devel.
* gtk/gtkaccelgroup.[hc]:
(gtk_accel_group_finalize): unregister this accel group from all
accel map paths.
(accel_closure_invalidate): handle invalidation of closures by
disconnecting their accelerators.
(quick_accel_add): move closure connection and changed notification
into this function to reduce code duplication. don't emit change
notification on closurers without accelerators.
(quick_accel_remove): rewrite, do the exact opposite of quick_accel_add
for a GtkAccelGroupEntry.
(gtk_accel_group_connect): get rid of the accel_path_quark argument.
(gtk_accel_group_connect_by_path): new function to add accelerators
with an accel path.
(gtk_accel_group_disconnect_closure): new function, disconnect a
closure from of an accel group.
(gtk_accel_group_disconnect): loop over all closure for a accel_ley,
accel_mods pair and remove them.
(_gtk_accel_group_reconnect): new function that basically does
gtk_accel_group_disconnect_closure() and
gtk_accel_group_connect_by_path() once an accel path changed.
(gtk_accel_groups_disconnect_closure): remove this, there's
gtk_accel_group_disconnect_closure().
* gtk/gtkaccelmap.[hc]: keep list of accel groups per entry now,
nuke notifiers.
(_gtk_accel_path_is_valid): make this non-static for
gtkwidget.c and gtkaccelgroup.c assertions.
(gtk_accel_map_add_notifer): removed this function.
(gtk_accel_map_remove_notifer): same.
(_gtk_accel_map_add_group):
(_gtk_accel_map_remove_group): (un-)register accel groups, with
accel paths for correct propagation.
(gtk_accel_map_add_entry): return void.
(gtk_accel_map_lookup): return gboolean instead of GQuark.
* gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): always
set accel_path on widgets.
* gtk/gtkwidget.[hc]:
(accel_path_changed): got rid of this, changes are handled by
accel maps internally now.
(_gtk_widget_set_accel_path): get things to work without notifiers.
(gtk_widget_list_accel_closures): list accel closures of a widget.
* gtk/gtkwindow.[hc]: rename ::accels_changed, to ::keys_changed.
replace gboolean free_last in the function parameters with gint depth.
Tue Nov 20 23:01:01 2001 Kristian Rietveld <kristian@planet.nl>
* gtk/gtktreemodel.c (gtk_tree_row_reference_unref_path):
replace gboolean free_last in the function parameters with
gint depth. Changes to reflect new situation.
* gtk/gtktreemodel.c (gtk_tree_row_reference_unref_path_helper):
replace gboolean free_last, with gint depth, add gint current_depth.
Changes to reflect new situation.
* gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): changes
to reflect new situation
Tim Janik [Tue, 20 Nov 2001 13:55:08 +0000 (13:55 +0000)]
fix allocation to be relative to paned->allocation, now that this is a
Tue Nov 20 14:49:59 2001 Tim Janik <timj@gtk.org>
* gtk/gtkvpaned.c (gtk_vpaned_size_allocate): fix
allocation to be relative to paned->allocation, now
that this is a NO_WINDOW widget.
* gtk/gtkhpaned.c (gtk_hpaned_size_allocate): same here.
* gtk/gtkaccellabel.c (gtk_accel_label_class_init): ::closure
needs to be a boxed property.
Owen Taylor [Mon, 19 Nov 2001 22:39:03 +0000 (22:39 +0000)]
Use the widget's state when drawing the indicator, as in GtkCheckButton.
Mon Nov 19 17:34:40 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator):
Use the widget's state when drawing the indicator, as
in GtkCheckButton. This gives us color changes for
un-prelighted checkbuttons. (#63308, Matt Wilson)
Michael Natterer [Mon, 19 Nov 2001 22:04:24 +0000 (22:04 +0000)]
show notebook->event_window with gdk_window_show_unraised(), so it doesn't
2001-11-19 Michael Natterer <mitch@gimp.org>
* gtk/gtknotebook.c: show notebook->event_window with
gdk_window_show_unraised(), so it doesn't catch the events which
should go to the tab widgets first.
Mon Nov 19 15:30:51 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add a
"resizable" property, to get rid of the
GTK_TREE_VIEW_COLUMN_RESIZABLE sizing flag.
(gtk_tree_view_column_set_resizable): New function to set resizable.
(gtk_tree_view_column_set_resizable): getter.
* tests/testtreecolumns.c (add_clicked): modify for above change.
* Makefile.am (install-data-hook): remove old .pc files before
installing the new one. We used to symlink this, and it will
break old installs.
Owen Taylor [Mon, 19 Nov 2001 19:20:21 +0000 (19:20 +0000)]
Change default for justify to GTK_JUSTIFY_LEFT. Assuming that multiline
Mon Nov 19 14:08:18 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtklabel.c (gtk_label_init): Change default for
justify to GTK_JUSTIFY_LEFT. Assuming that multiline
labels are most often wrapped labels, this gives better
compatibility with GTK+-1.2, where justification was
ignored for wrapped labesl and is a more sensible
default in any case. (#64489)
* gtk/gtklabel.c (gtk_label_class_init): Fix default
for wrap property to FALSE.
Owen Taylor [Mon, 19 Nov 2001 17:32:54 +0000 (17:32 +0000)]
label_xalign and label_yalign need to be float properties to correspond to
Mon Nov 19 12:28:02 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkframe.c (gtk_frame_class_init): label_xalign
and label_yalign need to be float properties to
correspond to GTK+-1.2, to gtk_frame_set_label_align,
and to the types of the xalign and yalign properties of GtkMisc.
(#63484, Vitaly Tishkov)
Mon Nov 19 12:24:30 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtksocket.h (struct _GtkSocketClass): Fix return
of plug_added vfunc. (#64408, Jeff Franks)
Owen Taylor [Sun, 18 Nov 2001 23:33:21 +0000 (23:33 +0000)]
Make a NO_WINDOW widget, as it should have been since the beginning, but
Sun Nov 18 18:18:11 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfixed.c: Make a NO_WINDOW widget, as it should
have been since the beginning, but as special hack,
allow clearing the NO_WINDOW flag to get a window widget.
* config.h.win32.in : remove definition of HAVE_DIRENT_H
* gtk/gtkfilesel.c : due to GDir (new in glib) DIR isn't
required anymore, replace it.
* gtk/queryimmodules.c : DIR -> GDir replacement, also
getcwd() -> g_get_current_dir()
* gdk/win32/gdkgeometry-win32.c : adapt to refactored gdkgeometry-x11.c
Even 'noisy laugh' scolling appears to work, though I still can't
claim to have fully understood what it is supposed to do ...
Owen Taylor [Sun, 18 Nov 2001 02:15:52 +0000 (02:15 +0000)]
Include glib-object.h instead of gobject/gsignal.h
Sat Nov 17 21:07:46 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkenums.h: Include glib-object.h instead of
gobject/gsignal.h
* gdk/{gdkinternals.h,gdkwindow.c,gdkwindow.[ch],
x11,{fb,win32,x11/gdkwindow-*.c}: Add a dummy GdkScreen
argument to the window_at_pointer() field of
GdkPointerHooks. (Patch from Erwann Chenede)
* gdk/gdkdrawable.h (struct _GdkDrawableClass ): Up
to 6 pointers.
Owen Taylor [Sun, 18 Nov 2001 00:34:23 +0000 (00:34 +0000)]
Reprioritize key bindings in order of visibility - mnemonics, then
Sat Nov 17 19:26:20 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_key_press_event): Reprioritize
key bindings in order of visibility - mnemonics, then
accelerators, then send key to the focus widget, then
bindings on the GtkWindow.
* gtk/gtklayout.h docs/Changes-2.0.txt tests/testgtk.c:
Removed the xoffset, yoffset fields of GtkLayout which were
identically zero for compat with 1.2, but were no longer
compatible with all uses of these fields in 1.2.
Owen Taylor [Sun, 18 Nov 2001 00:10:57 +0000 (00:10 +0000)]
We no longer need to create the signals here ... they come from the
Sat Nov 17 19:08:13 2001 Owen Taylor <otaylor@redhat.com>
* tests/testtreeview.c (gtk_tree_model_types_get_type):
We no longer need to create the signals here ... they
come from the interface.
* gtk/maketypes.awk: Use GType, not GtkType in output.
* gtk/gtktypeutils.h: Mark virtually all of this
file deprecated.
* gtk/gtkcontainer.h: Deprecate gtk_container_foreach_full;
the only use of this function is the GtkArg using
GtkCallbackMarshal, since destroy notification is
silly here.
Owen Taylor [Sat, 17 Nov 2001 23:28:51 +0000 (23:28 +0000)]
Make gtkmarshal.list/gtkmarshal.h only for compatibility with GTK+-1.2;
Sat Nov 17 18:26:45 2001 Owen Taylor <otaylor@redhat.com>
* gtk/Makefile.am gtk/gtkmarshal.list gtk/gtkmarshalers.list
gtk/*.c gtk/gtksignal.h: Make gtkmarshal.list/gtkmarshal.h
only for compatibility with GTK+-1.2; and deprecate it;
put all marshalers we actually use into gtkmarshalers.list
and use the _gtk_marshal_ prefix for these marshalers.
Murray Cumming [Sat, 17 Nov 2001 03:57:21 +0000 (03:57 +0000)]
gtk/gtktexttagtable.c (gtk_text_tag_table_class_init):
The first parameters of the signals are now registered as GTK_TYPE_TEXT_TAG instead of G_TYPE_OBJECT.
Owen Taylor [Sat, 17 Nov 2001 01:18:49 +0000 (01:18 +0000)]
Move notification of "has_default" to here, so it is safe to call
Fri Nov 16 19:44:35 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_set_default): Move
notification of "has_default" to here, so it
is safe to call gtk_window_set_default() instead
of gtk_widget_grab_default().
* gtk/gtkwindow.c (gtk_window_set_focus): Make it call
gtk_widget_grab_focus(), which then calls
_gtk_widget_internal_set_focus(). This makes
gtk_window_set_focus() a safe way of both setting
and unsetting the focus widget.
* gtk/gtkwidget.c (gtk_widget_propagate_state): Use
gtk_widget_get_toplevel(), instead of gtk_widget_ancestor
to find the toplevel.
* gtk/gtkwindow.h: Move gtk_window_set_focus/default
from the "internal functions" section.
jacob berkman [Fri, 16 Nov 2001 22:56:21 +0000 (22:56 +0000)]
add some no-indicator radio buttons
2001-11-16 jacob berkman <jacob@ximian.com>
* tests/testgtk.c (create_radio_buttons): add some no-indicator
radio buttons
* gtk/gtkradiobutton.c (gtk_radio_button_init): since we are
initially active, also initially be depressed
(gtk_radio_button_clicked): also update our depressed state