diff --git a/ChangeLog b/ChangeLog index fbd5888e3d..baae1d9764 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Sun Jan 13 23:23:22 2002 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_compute_hints): Fix problem where + widget->requisition was being used instead of + gtk_widget_get_child_requisition (), causing geometry widgets + with usizes to misbehave. + 2002-01-14 Sven Neumann * gtk/gtkrc.c: g_getenv() returns a const string. @@ -16366,5 +16373,8616 @@ Thu Nov 9 11:23:22 2000 Jonathan Blandford 2000-11-02 Havoc Pennington +<<<<<<< ChangeLog + * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and + use stock buttons. Should be 100% source compatible, appropriate + filesel fields now point to dialog->vbox and dialog->action_area. + On the bizarre side, dialog->action_area and filesel->action_area + are not the same widget. + (gtk_file_selection_init): Put some padding around the selection + entry, so it isn't touching the GtkDialog separator. + + * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, + use stock buttons, etc. Should also be source compatible. + Set the dialog default title in _init not _new(). + + * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): + Use stock buttons; don't put a button box inside the existing + dialog button box. Don't bother with push/pop colormap anymore. + + * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more + specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT + for message dialog, and necessary for the font selection and color + selection with help and apply buttons. + + * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer + to the created button widget. Set GTK_CAN_DEFAULT on the button. + (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing + between buttons, put less padding around the action area. + (gtk_dialog_run): Exit on unmap rather than on destroy. + This will also exit the loop if the widget is hidden. + (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT + instead of GTK_RESPONSE_NONE; since we're already adding a bunch + of GTK_RESPONSE_* stuff, this seems cleaner, and lets you + special-case delete event. + + * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment + formatting + +Sun Nov 5 05:32:39 2000 Tim Janik + + * gtk/testgtk.c (uposition_stop_configure): provide a toggle + button to temporarily disable position recording in the + "saved position" test. + +Sat Nov 4 05:37:17 2000 Tim Janik + + * gtk/gtkthemes.c: added compat code that temporarily implements + GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is + going to be revamped by owen's upcoming GtkModule patches, but + untill then people want gtk to build, right? ;) + +2000-11-04 Havoc Pennington + + * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member + list + + * docs/Changes-2.0.txt: Add note about + gtk_container_get_toplevels() + + * gtk/gtktextview.h: formatting + + * gtk/gtktextview.c: don't start descriptions with "Returns", + confuses gtk-doc + +Sat Nov 4 10:12:27 2000 Owen Taylor + + * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS, + look for glib-2.0.m4 not glib.m4. (Ali Abdin) + +2000-11-03 Havoc Pennington + + * gtk/gtktexttagtable.c: Docs + (gtk_text_tag_table_size): return a signed int + + * gtk/gtktexttag.c: s/tkxt/text/g; write documentation + (gtk_text_tag_event): make the event_object a GObject + + * gtk/gtktextview.c: Write API docs for all functions. + + * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value + for gtk_text_view_get_window_type() called on one of the private + windows. + + * gtk/gtktextview.c: Instead of accessing text_view->buffer + directly, call get_buffer() which demand-creates a default + buffer. So gtk_text_view_new() can be used to create a view with a + default buffer in it, if you just want an empty text box users can + put data in. Useful for GUI builders also. + +2000-11-03 Pablo Saratxaga + + * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5; + the charset encodign portion MUST be in lowercase. + * gtk/gtkrc.az: added file for Azeri language + +2000-11-03 Havoc Pennington + + Get widgets working on the btree/buffer side. Display of them + still doesn't work. + + * gtk/gtktextview.c: start implementing child widget stuff + + * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function + + * gtk/gtktextlayout.c: handle embedded widgets + + * gtk/gtktextdisplay.c: handle embedded widgets + + * gtk/gtktextchild.c: Implement all the child anchor goo + + * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New + function + + * gtk/gtktextbtree.c: Add child anchor table to the btree struct + (insert_pixbuf_or_widget_segment): abstract out common portions of + creating a child anchor or a pixbuf segment. + (gtk_text_btree_create_child_anchor): new function + (gtk_text_btree_unregister_child_anchor): new function + + * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the + allocate_child signal on GtkTextLayout + + * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return + values + (gtk_text_iter_get_child_anchor): new function + + * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a + default handler for the changed signal, which calls + gtk_text_buffer_set_modified(), instead of just always emitting + changed then calling set_modified() manually. I guess this is + maybe more flexible. It seems logical. + +Fri Nov 3 08:58:38 2000 Tim Janik + + * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_' + now. + + * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now. + +Thu Nov 2 14:10:51 2000 Owen Taylor + + * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have + been marked static. + +2000-11-02 Havoc Pennington + + * gtk/testgtk.c (create_labels): had a test backward + + * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC + fields, so the dest GC ends up with the correct clip origin, + etc. Fixes a bug where colored labels didn't redraw + properly. + +2000-11-02 Alexander Larsson + + * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c, + gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c, + gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c: + Add last argument to t_type_register_static call. + + * gdk/linux-fb/gdkdrawable-fb2.c: + Add last argument to t_type_register_static call. + export the get_image drawable virtual function. + + * gdk/linux-fb/gdkimage-fb.c: + Add last argument to t_type_register_static call. + rename gtk_image_get to _gdk_fb_get_image and + export it for use by gdkdrawable-fb2. + + * gdk/linux-fb/gdkprivate-fb.h: + export _gdk_fb_get_image. + + * gdk/linux-fb/gdkselection-fb.c: + Add new api call stubs. + + * gtk/Makefile.am: + Missing ( in linux-fb part. + + * modules/linux-fb/Makefile.am: + Must link with gdk_pixbuf or get unresolved symbol. + +2000-11-01 Havoc Pennington + + * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use + GTK_TYPE_TEXT_ITER and BOXED marshallers + + * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto + + * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto + + * gtk/gtk-boxed.defs: add GtkTextIter + + * gtk/gtkmarshal.list: Add marshallers for text widget that + properly use OBJECT and BOXED + +2000-11-01 Havoc Pennington + + * gtk/testgtk.c (create_labels): Test set_markup_with_accel() + + * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval + before returning it. + +2000-11-01 Havoc Pennington + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): + Clip the rectangle to be rendered to the drawable, since + get_from_drawable() requires a region within the drawable + +2000-11-01 Havoc Pennington + + * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4 + from coordinates. + +Wed Oct 25 20:10:57 2000 Owen Taylor + + * gdk/gdkevents.c (gdk_event_copy): Only ref the window if + it isn't NULL. + +2000-11-01 Havoc Pennington + + * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList + on a label + (gtk_label_finalize): unref the attr list if any. + + * gtk/testgtk.c (create_get_image): close test on second click + (make_message_dialog): close dialog if it exists + + * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute + + * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not + gdk-pixbuf + + * gtk/gtklabel.c (gtk_label_set_markup): new function to set label + from Pango markup format + (gtk_label_set_markup_with_accel): ditto but with accelerator + parsing + + * gtk/gtkimage.c (gtk_image_expose): reformatting. + + * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to + reflect current state of GDK - use gdk_drawable_get_colormap, etc. + Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to + call gdk_window_get_origin(). + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): + implement GDK_PIXBUF_ALPHA_FULL + +Wed Nov 1 03:43:42 2000 Tim Janik + + * gtk/gtksignal.c (gtk_signal_compat_matched): make use of + g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and + g_signal_handlers_disconnect_matched to block/unblock and disconnect + multiple handlers respectively, instead of only treating the + first handler found (bug reported by owen). + +Mon Oct 30 19:23:50 2000 Jonathan Blandford + + * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function. + + * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function. + + * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c + gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c, + gtk/gtktreeviewcolumn.h: Fixed inline docs. + + * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree + widget. Needs writing someday. + + * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to + the docs. + +2000-10-30 Havoc Pennington + + * gtk/gtktextview.h, gtk/gtktextview.c: + Rename delete_at_cursor delete_from_cursor, and + move to move_cursor. + +2000-10-30 Havoc Pennington + + * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c, + gtktextbuffer.h, gtktextchild.c, gtktextchild.h, + gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h, + gtktextiter.c, gtktextiter.h, gtktextiterprivate.h, + gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h, + gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h, + gtktexttag.c, gtktexttag.h, gtktexttagprivate.h, + gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c, + gtktexttypes.h, gtktextview.c, gtktextview.h: + + Massive reindentation and reformatting. Arg alignment and comments + still need fixing in various places. + +2000-10-30 Havoc Pennington + + * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals + to be named insert_at_cursor and delete_at_cursor so C++ can + handle them. + +2000-10-28 Tor Lillqvist + + * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not + to get a double directory separator in case the home directory + ends with one. This would cause trouble especially on Windows, + where the path will be confused with the syntax for an an UNC + (network share) path \\server\share\path. + (gtk_rc_add_initial_default_files): Ditto. + +Sat Oct 28 02:33:09 2000 Robert Brady + + * gtk/gtkmarshal.list: add new marshallers for GtkTextView. + + * gtk/gtktextview.c: Use correct marshallers. + +Fri Oct 27 17:56:26 2000 Jonathan Blandford + + * gtk/gtkliststore.c: Not sure how this ever worked. Fixed it to + use new iter stuff, and added all the appropriate signals et al. + + * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this + code is internal to gtk only. + +2000-10-28 Tor Lillqvist + + * gtk/gtk.def + * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use + glib-genmarshal etc. + +Fri Oct 27 20:15:00 2000 Tim Janik + + * gtk/Makefile.am: added dependancies for testtextbuffer which broke + parallel builds. + +Fri Oct 27 18:51:44 2000 Tim Janik + + * gtk/gtksignal.[hc]: adapt to GSignal signature changes. + +2000-10-27 Robert Brady + + * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), + en_GB (British), ia (Interlingua). + +2000-10-26 Havoc Pennington + + * gtk/gtktextiter.c (my_strrstr): fix constness warning + + Fixed output of: + nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_ + + * gtk/gtktextsegment.c (char_segment_new): rename + (_char_segment_new_from_two_strings): rename + (_toggle_segment_new): rename + + * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static + (make_clipboard_widget): make it static + (text_get_func): static + (text_clear_func): static + + * gtk/gtkcolorsel.c (adjustment_changed): make this function + static + (hex_changed): make it static + (hsv_changed): make it static + (opacity_entry_changed): make it static + + * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk + (toggle_segment_check_func): rename with _gtk + + * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk + (_widget_segment_new): rename + (_widget_segment_add): rename + (_widget_segment_remove): rename + (_widget_segment_ref): rename + (_widget_segment_unref): rename + + * gtk/gtktextmark.c (_mark_segment_new): Rename + _gtk_mark_segment_new + +2000-10-26 Havoc Pennington + + * gtk/gtkmarshal.list: add new marshallers used by the text widget + * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller + types + + * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix + marshaller types + + * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h, + gtk/gtktextdisplay.c: We need to preserve Tk copyrights and + license on these files. + + * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this + work. + + * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to + runtime random number different for each tree, instead of + a constant I made up. + +Thu Oct 26 07:36:16 2000 Tim Janik + + * gtk/Makefile.am: buncha cleanups, kludged build sources + dependencies with a Makefile: oldest-source-stamp dependancy + for the moment. automake is really fighting us here, with + intentionally not allowing user-defined rules or dependancies + prior to it's -include $(DEP_FILES) statement. sucks rocks! + + * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h + to public headers. tehy have a comment stating that they are + "semi-public" aren't included by gtk.h and if enums popup there, + they can be /*< skip >*/-ed. + + * gtk/gtktextlayout.h: + * gtk/gtktextdisplay.h: indentation fixes, comment fixes, + added LGPL... + +Wed Oct 25 20:40:25 2000 Jonathan Blandford + + * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to + GtkTreeIter. Added iterators everywhere. + + * gtk/gtktreeviewcolumn.c: Changed to use the iterators. + + * gtk/gtktreeviewselection.c: Changed to use the iterators. + + * gtk/gtktreestore.c: Changed to use the iterators. + + * gtk/gtkliststore.c: Commented out the code. Will convert to + iterators tomorrow. + + * gtk/gtkmodelsimple.c: Commented out the code. Will convert to + iterators tomorrow. + + * gtk/treestoretest.c: Changed to use iterators. + + * demos/testgtk/main.c: Moved to use the new iterator system. + +Thu Oct 26 02:10:32 2000 Tim Janik + + * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid + localization misbehaviour. + + * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's + a useless type without copy/free. + + * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead + of GTK_TYPE_CTREE_NODE. + +Thu Oct 26 00:51:52 2000 Tim Janik + + * gtk/gtksignal.c: + (gtk_signal_emitv): use g_value_set_static_{string|boxed} where + applicable. + + * gtk/gtk-boxed.defs (GtkSelectionData): specify + gtk_selection_data_copy and gtk_selection_data_free + do GtkSelectionData work as params in signals. + +Wed Oct 25 20:47:41 2000 Tim Janik + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed + implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that, + couldn't they at least give it a non-standard name? + + * gtk/gtktextlayout.c: arg! yet another implementation of + gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy? + + * gtk/gtktextbuffer.c: gotcha! captured a vagabonding + gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back + home. now i know this _is_ a conspiracy. + + * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for + ::state-changed. + + * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): + (gtk_accel_group_create_add): marshaller signature fixups. + + * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups, + pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM. + + * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid + anymore. + +Tue Oct 24 23:59:21 2000 Tim Janik + + * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since + due to the signal system changes, it wouldn't build currently. to + be fixed soon. + + * docs/Changes-2.0.txt: GtkSignal/GSignal updates. + + * gtk/gtkwidget.c: ::direction_changed takes an enum as argument, + so it needs gtk_marshal_VOID__ENUM() instead of + gtk_marshal_NONE__UINT(). + + * gdk/gdk*.c: adapted type registration functions. + + * gtk/gtkbindings.c: + * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is + gone. + + * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType. + + * gtk/gtkobject.c: + (gtk_object_destroy): + (gtk_object_shutdown): fixed recursion guards. basically we have to + catch the case where any of GObject.shutdown() or gtk_object_destroy() + is called during ::destroy, and avoid recursion there. + + * gtk/gtktypeutils.c: + * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with + boxed_copy/boxed_free. this needs a more general solution based on a + publically installed code-generator utility. + + * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED, + glib's gobject has support for that now. + define GtkSignalMarshaller in terms of GSignalCMarshaller. + +Mon Oct 23 09:36:42 2000 Tim Janik + + * gtk/gtksignal.[hc]: + * gtk/gtkmarshal.[hc]: + * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't + compile gtkmarshal.c on its own anymore, just include it in gtksignal.c. + removed #include s all over the place, gtksignal.h takes + care of that. + + * *.c: marshaller name fixups. + + * gtk/gtkmarshal.list: added a comment briefing the format. + +Sun Oct 22 23:14:39 2000 Tim Janik + + * gtk/gtksignal.[hc]: nuked old implementation. we mostly have + compatibility macros here now. more specifically, most of + the API is preserved (yes, _most_, nonwithstanding the + following exceptions listed, the API is stil lHUGE ;) + things that got removed completely: + GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(), + gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(), + gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(), + gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(), + gtk_signal_remove_emission_hook(). + non-functional functions variants: + gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook(). + the GtkCallbackMarshal argument to gtk_signal_connect_full() is + not supported anymore. + (gtk_signal_compat_matched): new internal function to aid + implementation of the compatibility macros, it provides + functionality to block/unblock/disconnect handlers based + on func/data. + + * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType, + + * *.c: adaptions to new type registration API signatures. + +Fri Oct 20 15:26:33 2000 Tim Janik + + * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge. + +2000-10-25 Robert Brady + + * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change, + gdk_property_delete): If window == NULL, assume the root window. + (restoring the behaviour that was in 1.2). + + * gtk/testtext.c (save_buffer): Allow creation of new files when + saving. + + (fill_file_buffer): Don't die if a UTF-8 sequence is split across + calls to read(). + +2000-10-25 Tor Lillqvist + + * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11. + + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkimage-win32.c + * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the + X11 backend. + + * gdk/win32/gdkcc-win32.c + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkfont-win32.c + * gdk/win32/gdkinput-win32.c + * gdk/win32/gdkmain-win32.c + * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall. + +2000-10-24 Havoc Pennington + + * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make + it a static function + + * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should + redraw text when a tag is applied to it. + + * gtk/gtktexttag.c (gtk_text_tag_affects_size) + (gtk_text_tag_affects_nonsize_appearance): private functions to + see if a tag requires various kinds of redraw/layout to be queued + up. + + * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock + + * gtk/testtext.c (fill_example_buffer): Put the cursor + at the start of the buffer, so search works by default + + * gtk/gtktextiter.c (lines_match): init match_start always + + * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New + function, get iter at a line + a byte index + + * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function, + to set byte position within a line + (gtk_text_iter_check): remove leftover G_BREAKPOINT thing + +2000-10-23 Havoc Pennington + + * gtk/testtext.c: Re-enable the "find" dialog + + * gtk/testgtk.c: Add test for gdk_drawable_get_image + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where + the arguments to gdk_draw_drawable were in the wrong order + (gdk_window_paint_init_bg): This function was ignoring the + init_region, instead of clipping to it, so the entire backing + pixmap was cleared on every begin_paint() + (gdk_window_begin_paint_region): Hmm, the same list-walking bug + was in here again, the loop kept using the same GtkWindowPaint + over and over. + (gdk_window_begin_paint_region): Fix a bug where we had two + x_offset instead of x_offset and y_offset + + * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable + before we get the image. + (gdk_draw_drawable): get the composite before we draw the drawable. + (gdk_drawable_real_get_composite_drawable): default + get_composite_drawable implementation that returns the drawable + itself + + * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add + get_composite_drawable virtual function + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy + list-walking bug + + * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to + make this work if the source drawable is a GdkDrawableImplX11 + instead of a public drawable type. This is really broken; the + problem is that GdkDrawable needs a virtual method get_xid(), but + of course that doesn't work in practice. Enter RTTI. + + Also, improve mismatched depth message. + + * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for + GdkPixmap + + * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init): + install _gdk_x11_get_image as our implementation of get_image + + * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to + _gdk_x11_get_image and export for use in gdkdrawable-x11.c + + * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around + gdk_drawable_get_image + + * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image + + * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize + get_image + + * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird + trailing semicolon after for loop + +Mon Oct 23 12:07:57 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem + where font_desc for widget's context lagged widget's font_desc by + one step. + +2000-10-22 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c + * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings. + + * gtk/makefile.mingw.in + * gtk/gtk.def: Updates. + + * gtk/testgtk.c: sleep() is called _sleep in MS's C + library. + + * gtk/gtkimcontextsimple.c: Include for bsearch(). + + * gtk/makefile.msc: Remove + + * gtk/makefile.msc.in: New file, like makefile.mingw.in. + + * gtk/Makefile.am: Add it. + + * configure.in: Generate it. + + * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor) + * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return + something even if not implemented, to satisfy picky MSVC. + + Patches by Hans Breuer: + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call + SetBkMode() and SetTextAlign() before calling + pango_win32_render(). + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values): + Set hcliprgn to NULL after destroying it. + (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL. + + * gdk/win32/gdkgeometry-win32.c + (_gdk_windowing_window_queue_antiexpose): More effective + implementation. + + * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's + depth as default, not the visual's. + + * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard + against empty title. + + * gdk/win32/gdkprivate-win32.h: Define a helper macro, + IMAGE_PRIVATE_DATA. + + * gdk/win32/gdkimage-win32.c: Use it. + +2000-10-22 Robert Brady + + * configure.in: Check for bind_textdomain_codeset + + * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset + present, make use of it. + + Add a translatable string "default:LTR" which, if translated + to "default:RTL", will cause the default direction to be + Right-to-Left. + + * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget + direction if marked as flippable. + + * gtk/gtkhscale.c: Mark widget as flippable. + +2000-10-04 Havoc Pennington + + * gtk/testgtk.c (create_buttons): create some stock buttons + with the default accel group + (create_image): test some new GtkImage features + (make_message_dialog): test GtkMessageDialog + (create_modal_window): fix someone's bizzarro indentation + + * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement + GTK_WIN_POS_CENTER_ON_PARENT. + Add "destroy with parent" setting, which means the window goes + away with its transient parent. + (gtk_window_get_default_accel_group): get the default accel group + for the window. + (gtk_window_set_destroy_with_parent): set/unset destroy with + parent flag + (gtk_window_read_rcfiles): invalidate icon set caches + after reloading rcfiles + + * gtk/gtkenums.h (GtkWindowPosition): add + GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog + on its parent window when the dialog is mapped for the first time. + + * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add + a simple message dialog class + + * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event + handler to emit response signal, and maybe later it would + honor a hide_on_delete flag - though that isn't there yet. + Set border width on the vbox to 2, so we get some padding. + Use a button box for the action area. + (gtk_dialog_key_press): synthesize a delete event if Esc + is pressed and the GtkWidget key press handler didn't + handle the escape key. + (gtk_dialog_new_with_buttons): new function creates a dialog + with some default buttons in it. + (gtk_dialog_add_action_widget): add an activatable widget + as a button in the dialog - you can also add a non-activatable + widget by accessing the action area directly. + (gtk_dialog_add_button): add a simple button - stock ID or + label - to the action area + (gtk_dialog_response): emit response signal + (gtk_dialog_run): block waiting for the dialog, return + the response. Override normal delete_event behavior, so that + delete_event does nothing inside gtk_dialog_run(). +======= +>>>>>>> 1.2802 + +<<<<<<< ChangeLog + * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal + emitted when an action widget is clicked or the dialog gets + delete_event + + * gtk/gtk.h: add gtkmessagedialog.h + + * gtk/Makefile.am: add gtkmessagedialog.[hc] + +2000-10-18 Havoc Pennington + + * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug + where any number of empty lines would get skipped + + * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the + edge. + + * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the + warning about invalid iterators (explain more thoroughly) + (gtk_text_iter_in_region): rename gtk_text_iter_in_range + + * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less + big + + * demos/*.c: Add error handling + + * gtk/gtktextbuffer.c: don't modify const iterators + + * gtk/gdk-pixbuf-loader.c: Add full error handling here + + * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors + on file load + + * gtk/gtkiconfactory.c: Update to reflect addition of error + handling to gdk-pixbuf loaders + +Wed Oct 18 11:14:05 2000 Owen Taylor + + * configure.in demos/Makefile.am demos/testgtk/*: Start of work to + move to new modularized testgtk. + +2000-10-17 Jonathan Blandford + + * gtk/gtktreeview.c: Draw the arrows correctly. + + * gtk/gtktreemodel.c: Added user docs. + + * gtk/gtk.h: remove gtktreedatalist.h. + + * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct + parent when generating my type. + + * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE, + POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT. + +2000-10-16 Jonathan Blandford + + * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move + GtkTreeModel from object to interface. + +2000-10-16 Havoc Pennington + + * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing + compilation + +2000-10-16 Jonathan Blandford + + * gtk/gtktreeselection.c: Add API documentation to all public + functions. + + * gtk/gtktreeviewcolumn.c: Added API documentation to all public + functions. + +2000-10-15 Jonathan Blandford + + * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function + proposed by Guy Harris . Also, added API + docs to all public functions. + + * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h, + gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c, + gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c, + gtk/gtktreemodel.h, gtk/gtktreeselection.c, + gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node + issue. + +2000-10-14 Robert Brady + + * configure.in: Added "fa" (Persian) to ALL_LINGUAS. + +2000-10-12 Jonathan Blandford + + * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added + values other then G_TYPE_STRING. + * gtk/gtktreeselection.c: Minor commenting updates. + * gtk/gtktreeview.c: Format updates. + +2000-10-09 Tor Lillqvist + + * README.win32: Update. + + * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two + lines that had been deleted by mistake (?). + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle + also the case fg==white and bg==black (but still not randomly + coloured cursors). Thanks to Wolfgang Sourdeau. + + * gdk/win32/*.c: Silence gcc -Wall. + + * gtk/gtk.def: Add missing entry points. + + Fixes by Hans Breuer: + + * gdk/makefile.msc + * gdk/win32/makefile.msc: Update. + + * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined, + some MSVC thing, presumably), cause breakpoint on failures. Add + GDK_NOR case. Call g_log_set_always_fatal. + + * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle + should be pased by reference. + + * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly. + + * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert. + + * gdk/win32/gdkevents-win32.c + * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE. + + * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and + implementation object. + + * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables, + not just windows. + + * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize): + Use the wrapper object. + +2000-10-06 Havoc Pennington + + * Makefile.am (SRC_SUBDIRS): contrib subdir + + * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library, + so it can be used in Xlib version + + * demos/testpixbuf.c (update_timeout): error checking from 1.0 + tree + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync + change from 1.0 tree that returns first frame of animation + if the loaded file is an animation. + + * contrib: add new directory to hold stuff that comes with GTK+ + but isn't really part of GTK+ (for now, gdk-pixbuf-xlib) + + * configure.in: add contrib/* + +2000-10-05 Havoc Pennington + + * demos/testpixbuf-save.c: add pixbuf save test + + * demos/Makefile.am: add testpixbuf-save.c + +2000-10-05 Jonathan Blandford + + * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with + GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c + * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/ + * gtk/gtktreeselection.[ch]: Replaced + "node_selected"/"node_unselected" signal with "selection_changed" + signal. + +2000-10-04 Jonathan Blandford + + * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new + tree widget. + +2000-10-04 Jonathan Blandford + + * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle + drawing. + +Wed Oct 4 15:52:15 2000 Owen Taylor + + * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed): + Move list pointer forwards before removing item from + list. (Crash reported by Salmaso Raffaele) + + * gdk/gdkwindow.h: Remove spurious trailing , + + * gdk/Makefile.am (LDFLAGS): You can't do interlibrary + dependencies on uninstalled libraries, sorry folks. + +2000-10-04 Havoc Pennington + + * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h, + gtk/gtkiconfactory.c: Fix copyrights + + * demos/testpixbuf.c: add inline pixbuf test + +Mon Sep 25 15:05:17 2000 Owen Taylor + + * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify): + Add gdk_window_iconify. + + * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c + (gdk_window_set_geometry_hints): Add win_gravity + to geometry structure. + + * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): + Implement _NET_WM_PING. + + * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): + Set _NET_WM_PID on the client leader. + + * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name): + Handle UTF-8 better. + + * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle + UTF-8 better, set _NET_WM_NAME as well. Only set + icon name if it hasn't previously been explicitely + set. + +2000-10-03 Havoc Pennington + + * gtk/testtextbuffer.c: clean up trailing whitespace, + add extensive tests for tag toggle iteration. + + * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan + distance + + * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag): + optimize case where the tag root is on level 1 + (gtk_text_line_previous_could_contain_tag): attempt to implement + (gtk_text_line_next_could_contain_tag): Abstract out node_compare + functionality + + * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle): + Implement this, though not very efficiently. + + * gtk/gtktextiterprivate.h: reformat + + * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end + iterator + + * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix + this to properly revalidate the iterators. + + * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work + properly at the end of the line (and therefore on empty lines) + + * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee, + maybe we should return a value... + +2000-10-03 Tor Lillqvist + + * config.h.win32: Guard definition of alloca(). glib.h now handles + that. + + * gdk/gdk.def + * gtk/gtk.def: Add new entry points. + + Changes just to make GTK+ build without errors on Win32. No hope + of it working in its current state, though...: + + * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings. Add + some functions from the X11 backend, just to make GTK+ build. + + * gdk/makefile.mingw.in + * gtk/makefile.mingw.in: Use correct gdk_pixbuf version + number. Add new object files. + + * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use + GetMessageTime to get timestamp (where on X11 uses + gdk_x11_get_server_time()). + +2000-10-02 Havoc Pennington + + * gtk/gtktextview.c: text_window_* weren't static and should have + been. + Start work on child widgets; not yet complete, syncing to + office computer. + + * gtk/gtktextchild.h: change this to contain a public interface, + starting work on child interfaces. + * gtk/gtktextchildprivate.h: move private interfaces here + + * gtk/Makefile.am: update to reflect gtktextchildprivate.h + + * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h, + gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, + gtk/gtktextmark.c: copyright notices + + * gtk/gtktextmarkprivate.h: reformat, and put _ in front of + internal functions + + * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of + internal function + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): + Reformatting + +2000-09-30 Havoc Pennington + + * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle + NULL start/end pointers + + * gtk/gtktextbuffer.c: Write some docs + (gtk_text_buffer_get_selection_bounds): Allow start/end to be + NULL, so you can just check whether there's a selection. + + * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to + cleanup_line or segments_changed ourselves, it gets done + in unlink_segment + + * gtk/gtktextmark.h: + s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/ + + * gtk/gtktextsegment.h: Clean up some indentation and naming mess + + * gtk/gtktextmark.c: delete some more old Tk cruft + + * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to + mark before removing it, so we can emit MARK_DELETED with a valid + pointer. + (gtk_text_buffer_mark_set): hold ref across signal emission + + * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve + whining about attempts to delete special marks + + * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with + underscore, since it's internal. + + * gtk/gtktextbuffer.h: Remove find_string prototype, this is + now implemented in terms of iterators in gtktextiter.h + + * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): + New function, destructively sets contents of buffer. Also + a convenient way to clear the buffer by setting text to "" + + * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat + multiline string literal + + * gtk/testtext.c (text_changed_callback): Redraw line numbers if + text changes. + + * gtk/gtktextiter.c (forward_char): Return FALSE if new location + is not dereferenceable + (gtk_text_iter_forward_lines): fix return value + +2000-09-29 Havoc Pennington + + * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation + + * gtk/gtktextview.c: Implement drag thresholding; change functions + that set border window size to have nicer name + (gtk_text_view_mark_set_handler): Fix this to have the + right signature. + + * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes + + * gtk/testtext.c: Update with API changes, put line numbers on + both sides. + + * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap + with this + + * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with + pixbuf; delete a big block of #if 0 Tk code + + * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace + insert_pixmap with insert_pixbuf + +2000-09-29 Martin Baulig + + * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid + confusion with the GdkPixbuf of the GNOME 1.x platform. + +2000-09-29 Havoc Pennington + + * gtk/gtktextview.c: Implement the side windows. + + * gtk/testtext.c: Implement simple line numbering in the + left side window; seems to make scrolling sloooow. Oops. + Also, cursor blink is for some reason causing redraws + of the line numbers. Should investigate... + +2000-09-28 Havoc Pennington + + * gtk/gtktextview.c: Set up infrastructure to deal with lots of + scrolling child windows, and draw focus rectangle properly. + + (gtk_text_view_buffer_to_window_coords): + Coordinate transformation to deal with all these freaking windows + and offsets + (gtk_text_view_window_to_buffer_coords): transform the other way + + * gtk/testtext.c (create_buffer): Update to match Pango API change + + * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the + anonymous tags + (foreach_unref): don't emit remove signal from finalize, just + set tag's parent to NULL + +2000-09-26 Havoc Pennington + + * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove + Fix some warnings + +2000-09-26 Havoc Pennington + + * gtk/Makefile.am (gtk_private_h_sources): Move more text widget + headers into the private header list + + * Makefile.am (pkgconfig_DATA): install pkg-config files + + * configure.in: add pkg-config files + + * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files + + * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate + outstanding icon caches on theme change. + + * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three + important types: + + (GtkIconSource): Specification for creating a pixbuf + appropriate for a direction/state/size triplet from + a source pixbuf or filename + + (GtkIconSet): List of GtkIconSource objects that are used to + create the "same" icon (e.g. an OK button icon), and cache for + rendered icons + + (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look + up the icon set for a given stock ID. GTK maintains a stack of + GtkIconFactory to search, and applications or libraries can add + additional icon factories on top of the stack + + * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse + the set of GtkIconSource specified for a given stock ID into + a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the + RcStyle, under the specified stock ID. + + * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function + render_icon used to derive a GdkPixbuf from a GtkIconSource. + This allows people to theme how prelight, insensitive, etc. are + done. + + (gtk_style_lookup_icon_set): Look up a stock ID in the list of + icon factories for a style, and return the resulting + icon set if any. + + (gtk_style_render_icon): Render an icon using the render_icon + method in the GtkStyleClass. + + * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): + Use the style for a given widget to look up a stock ID, get the + icon set, and render an icon using the render_icon method + of the style + + * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type + (contains information about a stock item), the built-in stock item + IDs, and functions to add/lookup stock items. + + * gtk/stock-icons/*: Stock icons that come with GTK + + * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns + a button based on a GtkStockItem + (gtk_button_new_accel): Takes a uline string and accel group, and + installs the accelerator. + + * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic + image-display widget. + +2000-09-25 Havoc Pennington + + * gtk/gtktexttypes.c: Remove Latin1 conversion stuff + + * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): + Fix a bug when removing node data, we didn't properly + re-splice the linked list after removing the data. + + * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through + GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget + + * gtk/gtktextbuffer.c (selection_received): fix g_convert usage + + * gtk/gtktextlayout.c (set_para_values): Set tab array + for the layout from the GtkTextTag. + + * gtk/gtktexttypes.h: delete tab and search cruft, + remove g_convert() in favor of GLib version + + * gtk/gtktexttypes.c: remove tab implementation from here, + move to Pango + + * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement + tab stuff using new PangoTabArray from Pango + + * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove + unused border_width stuff + +Thu Sep 14 12:21:12 2000 Owen Taylor + + * gtk/gtktexttypes.[ch]: Remove g_convert (moved to + glib) and now useless utf_to_latin1() latin1_to_utf() + + * gtk/gtktextview.[ch]: Change ::move_insert and + ::delete_text action signals to ::move and ::delete; + create the signals with the right enumeration type, + not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d, + C-v bindings, change Home, End to move to beginning/end + of line, Add C-Home C-End to move to beginning/end + of buffer. Change ::cut_text to ::cut_clipboard, etc; + combine ::scroll_text into ::move; use new GtkSelectionData + functions to simplify DND text handling. + + * gtk/gtkenums.h gtk/gtktextview.h: Move movement, + deletion enumerations here, rename enumeration values to + be consistently plural. + + * gtk/gtktextbuffer.c: Use new clipboard interfaces + for cut/copy/paste and primary selection. + + * gtk/gtktextbuffer.[ch]: Remove excess time and + 'interactive' arguments from cut/copy/paste; + rename cut to cut_clipboard, etc; remove + gtk_text_buffer_get_clipboard_contents(). + + * gtk/gtktextlayout.[ch]: Add + gtk_text_layout_move_iter_to_line_end() to move the iter to + line ends. + + * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text): + Functions to set or get a UTF-8 string on the selection + data. + + * gtk/gtkclipboard.[ch]: New, simplified selection handling + interfaces. + + * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly + created widgets - one of these is useless if we don't. + + * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export + a public function clear all targets registered for the + widget. + + * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt: + Never call gtk_widget_realize() - that was just asking + for bizarre side-effects. + + * gtk/gtkselection.c (gtk_selection_owner_set): Call + gdk_selection_owner_set even if the widget is the + same so that we reliably update the timestamp on + the server. + + * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a + gdk_x11_get_server_time() function. + + * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h + gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h: + Add some tricky filtering on serial numbers for + selection clear events to fix up long-standard + race condition FIXME's in gtkselection.c. + + * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add + routines to convert from utf8 to compound text or + STRING and from a text property to UTF-8. + + * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add + a convenience function gdk_get_current_event_time(). + + * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy + and free selection_data->data properly + +Sat Sep 9 10:23:53 2000 Owen Taylor + + * gtk/gtkthemes.c: Remove some unecessary includes. + +2000-09-08 Jonathan Blandford + + * gtk/gtktextdisplay.c + * gtk/gtktextlayout.c + * gtk/gtktexttag.c + * gtk/gtktexttag.h + * gtk/testtext.c: Change the overstrike property to strikethrough, + to closer match pango. + +Fri Sep 8 14:28:00 2000 Owen Taylor + + * gtk/gtktextview.c: Fix up visibility so that focus, + cursor_visible and blink interact properly. Reenable cursor blink + which had been roughly disabled. Make blink and focus + properly per-view. + + * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible): + Add a flag for whether to display insertion cursor and + a function to set the flag. + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change + get_line_y() to get_line_yrange(), to be a bit more generally + useful. + +Thu Sep 07 20:54:33 2000 George Lebl + + * gtk/gtkmenu.c: in gtk_menu_set_submenu_navigation_region + do stop_navigating_submenu, to clear last timeout properly. + Also in gtk_menu_motion_notify move ignore_enter above + the conditional to make it always happen as suggested by Owen + +2000-09-07 Tor Lillqvist + + * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o + + * gdk/win32/gdkwin32.h: Add more definitions missing from the free + w32api headers. + + * gdk/win32/gdkprivate-win32.h: Add a couple of missing + declarations. + + * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings. + (gdk_win32_get_colormap): A line had been deleted by mistake. + + * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too. + (gdk_event_translate): Handle more virtual keycodes to be able to + generate GDK events for Control-comma, Control-period, etc. + + * gtk/gtk.def: Add some missing entry points. + +Thu Sep 7 11:47:02 2000 Owen Taylor + + * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c: + Doc comment fixing. (Mostly non-matching parameter names.) + + * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify + comments a little to avoid looking like a doc comment. + + * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to + GTK_INPUT_ERROR. (Should the mechanism for erros in spin button + conversions be changed to GError?) + + * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): + Move private #defines into .c file. + + * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize + order of argument addition, remove duplicates. + + * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass): + parent class is FrameClass, not BinClass. + + * gtk/gtk.h: Add gtkinvisible, which was missing. + (It's occasionalyl useful for client apps, if seldom.) + + * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER + #define. + +Wed Sep 6 09:53:15 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space + coordinates when creating window, instead of GDK-space + coordinates. (Avoid BadValue on too large windows.) + +2000-09-05 Sebastian Wilhelmi + + * configure.in (use_mmx_asm): Remove conftest* after use along the + lines of AC_TRY_COMPILE. + + * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead + of g_dirname, which is deprecated. + (gtk_rc_parse_any): Removed calls to + g_scanner_{freeze,thaw}_symbol_table, which are deprecated. + + * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy): + Removed calls to g_hash_table_{freeze,thaw}, as they are + deprecated now. + + * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename + instead of g_basename. + +2000-09-04 Elliot Lee + + * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid + ANSI warning. + +Sun Sep 03 00:47:08 2000 George Lebl + + * gtk/gtkwidget.h: Add some documenting comments about + GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT + just as owen said on irc. + + * gtk/gtkwindow.c (gtk_window_set_default): Don't blindly + set HAS_DEFAULT. Only set it if there isn't another window + holding it (a focus window which RECEIVES_DEFAULT) and only unset + it if the widget is not the focused window with RECEIVES_DEFAULT. + This fixes weird double default bugs in dialogs which has things + call gtk_window_set_default at times. + +Fri Sep 1 22:39:07 2000 Owen Taylor + + * gtk/gtkmenu.[ch] TODO.xml: Apply patch from + Nils Barth and David Santiago to improve submenu + navigation. The patch does this by creating a triangular + region from the point where the pointer leaves the + menu to the submenu. While the pointer is in + that region and a timeout has not expired, events + that would cause the active submenu to change are + ignored. + +Fri Sep 1 15:34:46 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where + moving a toplevel window immediately after sizing it would + result in it being sized back to the old size since + impl->width, impl->height aren't updated until we hear + back from the server. There is still a (longstanding) bug + here that gdk_window_get_size() will give the wrong size + until we do hear back. + +2000-08-31 Havoc Pennington + + * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, + gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, + gtk/gtktexttagprivate.h, gtk/gtktextview.c: + Rename GtkTextStyleValues to GtkTextAttributes + +2000-08-31 Havoc Pennington + + * gtk/gtktextbtree.c (GtkTextBTree): cache end line, + for rapid testing whether an iterator is the end iterator + (gtk_text_btree_new): init end line cache + (gtk_text_line_is_last): use fast cached line to + see if we're the last line. + (get_last_line): use cached line here too, should + speed up some random unrelated code. + +2000-08-30 Havoc Pennington + + * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer + signals. + + * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and + delete_text signals. This allows the signals to be used for + implementing undo. + + * gtk/gtktextbuffer.c: Change signal handler signatures; + provide "interactive" argument when emitting insert_text or + delete_text signal. + +2000-08-30 Havoc Pennington + + * gtk/gtktextbuffer.c: Docs + +Fri Aug 25 12:16:15 2000 Owen Taylor + + * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP + from switch statements, since Tor removed the enumeration + value. + + * gdk/x11/gdkimage-x11.c (gdk_image_get): + s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/. + +2000-08-29 Elliot Lee + * */*.h: Use G_GNUC_CONST. + +2000-08-27 Havoc Pennington + + * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs, + minor indentation fixes, inserted some FIXME about stuff I + realized was broken while documenting it. + (gtk_text_iter_get_pixmap): allow out params to be NULL, following + GTK convention + +Tue Aug 22 12:33:24 2000 Owen Taylor + + * gtk/testgtk.c (create_styles): Fix double free of + font desc. + +Mon Aug 21 22:39:18 2000 Owen Taylor + + * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}. + + * gtk/testgtk.c (create_styles): Add a test for modifying + the style through gtk_widget_modify_*. + + * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add + a function to get the current modifier style. + + * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy + of the passed in GtkRcStyle instead of ref'ing it. + + * gtk/gtkrc.[ch]: Add gtk_rc_style_copy(). + +2000-08-20 Tor Lillqvist + + * gdk/gdkimage.h + * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the + shared memory image+pixmap GdkImage type, or + gdk_image_bitmap_new(). They were used in the gdk_imlib port, but + I am dropping that. + + * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to + actually call gtk_init_abi_check(), passing also + sizeof(GtkWindow). Ditto for gtk_init_check(). + + * gtk/gtk.def + * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check): + New functions, used to check that the GTK+-using code has been + compiled using the correct compiler and switches. In particular, + with gcc one has to use the -fnative-struct switch as GTK+ is + compiled with that. + +Fri Aug 18 17:27:46 2000 Owen Taylor + + * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling + ->prev fields when merging lists. (Found simultaneously + by Pawel Salek and Jakub Jelinek) + +2000-08-12 Tor Lillqvist + + * gdk/gdk.def + * gtk/gtk.def: Add missing entries. + + * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use + OUT_TT_ONLY_PRECIS, try to get a TrueType font. + + * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New + function. Dummy implementation at this point. + + * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer + rules. Undefine GTK_COMPILATION when compiling the test programs. + + * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import. + +2000-08-11 Tor Lillqvist + + * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8() + to convert back and forth from UTF-8 and the "system" (or "current + locale") charset when necessary. Indentation/spacing cleanup. + +2000-08-10 Havoc Pennington + + * Makefile.am (snapshot): Change the format of the snapshot + version to match glib + + * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h + from EXTRA_DIST since it doesn't seem to exist + +2000-08-10 Tor Lillqvist + + * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage" + version of the directory name (not the UTF-8 one) when building + the path name to stat(). + +2000-08-03 Elliot Lee + + * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a + PANGO_ATTR_SHAPE set. + +Thu Aug 3 09:17:06 2000 Owen Taylor + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from + Peter Osterlund to simplify the code while keeping the + functionality the same. + +Wed Aug 2 14:57:38 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move + is_viewable() test further inside the function, since removing the + window from the redraw list without clearing ->update_area + was also very broken. + +2000-08-02 Tor Lillqvist + + * configure.in: Check for . + +2000-08-01 Martin Baulig + + * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning() + to display the message that this is a development version of GTK+. + +Mon Jul 31 18:37:36 2000 Owen Taylor + + * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation + was depending on widget->allocation instead of the width of text_area, + which was incorrect for subclasses like GtkSpinButton. + + * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos + with width == 1 tests that should be width == -1. + +Mon Jul 31 16:45:48 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, + (broken, Elliot, every single window blank on X) custom code with call + to gdk_window_is_viewable() which a) prevents code duplicate and + b) works. + +2000-07-31 Elliot Lee + + * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order + to get the GDK_PARENT_ROOT() macro to work. + * gtk/gtkmarshal.list: Add NONE:STRING,POINTER + * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces + of, windows that aren't shown. + * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of + pointer grab stuff. + +Mon Jul 31 13:53:16 BST 2000 Tony Gale + + * docs/gtkfaq.sgml docs/gtk-faq.sgml: + s/gtk_main_iteration/g_main_iteration/ + + Did this already in change: + Mon Nov 15 17:17:51 GMT 1999 Tony Gale + don't know how it got reverted. + +2000-07-31 Stanislav Brabec + + * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and + gdk_arg_no_debug_cb to fix compilation problem with --disable-debug. + + * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3, + not gdk_pixbuf. + +2000-07-30 Pablo Saratxaga + + * configure.in,po/{sp,sr}.po: Added Serbian files + +2000-07-30 Tor Lillqvist + + * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST. + + * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue): + Remove the g_pipe_readable_msg stuff. Not needed with new GLib + GIOChannel implementation. + + * gdk/win32/gdkinput.c + * gdk/win32/gdkpango-win32.c: Update license name here, too. + + * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix + definition to match prototype. + + * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS. + +2000-07-27 Elliot Lee + + * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type + function, to allow handling image formats that cannot be detected + by looking at content alone. + +Thu Jul 27 13:13:21 BST 2000 Tony Gale + + * docs/tutorial/*.gif *.jpg *.eps + Update these to the same look-n-feel. + Why does including images in DocBook suck so badly? + +Thu Jul 27 05:06:29 2000 Tim Janik + + * gtk/gtktable.c: applied patch from Phil Thompson + that enables space settings for + the last row/columns as well. + +Wed Jul 26 12:59:31 2000 Tim Janik + + * *.[hc]: applied patch from Andreas Persenius that + updates the license headers to the GNU Lesser General Public License, + as well as updating the copyright year to 2000. + +2000-07-26 Robert Brady + + * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h + and po/Makefile, was installing and looking for them under gtk20 + and gtk2 respectively. + +2000-07-25 Havoc Pennington + + * gtk/testtext.c: Comment out some stuff that depends on the rest + of my patches. + +2000-07-25 Havoc Pennington + + * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text + buffer + +2000-07-25 Havoc Pennington + + * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text + widget changes. + + * gtk/gtktextview.h: To be consistent with usage of "line" + throughout the API to mean "newline-terminated thingy", change + MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH + to MOVEMENT_LINE. + + (GtkTextView): Add flags for default editability, and whether to + show the cursor. Add functions to get/set that. Add + + (gtk_text_view_get_iter_location): new function + + * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to + gtktextlayout.h + (g_convert): Add g_convert temporarily, will go in glib in a bit + + * gtk/gtktexttagtable.h: include gtktexttag.h, and define + GtkTextTagTableForeach instead of brokenly using GHFunc. + Change gtk_text_tag_table_foreach() so it doesn't use GHFunc. + + * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here, + moved to public header. + + * gtk/gtktexttag.h: Rename the "elide" attribute of tags to + "invisible", since "elide" was a bad name. + (gtk_text_tag_get_priority): Added + + (GtkTextStyleValues): put this in public header, along with + functions to use it. + + * gtk/gtktextmarkprivate.h: Include more headers, since we no + longer include gtktextbtree.h. + + * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref, + gtk_text_mark_deleted + + * gtk/gtktextlayout.h: Don't include the "really private" headers, + only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData + to make this possible. Now we only need to install + gtktextlayout.h, not gtktextbtree.h and gtktext*private.h. + (However the Makefile.am isn't changed yet because of the + logistics of merging gtk-hp-patches piecemeal) + + * gtk/gtktextiterprivate.h: include btree header, so it compiles; + rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since + gtk_text_iter_get_line is now used in the public API for a + different purpose. + + * gtk/gtktextiter.h: Clean up function names to be more + consistent. Always call char offset "offset" and byte index + "index". A "line" is always a line number. + + (gtk_text_iter_is_last): new function, more efficient than + the existing way to check + (gtk_text_iter_is_first): new function, also more efficient + + (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these + + (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from + gtk_text_iter_forward_char, etc. + + (gtk_text_iter_forward_to_tag_toggle): Renamed from + forward_find_tag_toggle, since this isn't a linear search + + (GtkTextCharPredicate): rename from GtkTextViewCharPredicate + + (gtk_text_iter_forward_search, gtk_text_iter_backward_search): + New functions, search for a buffer substring. + + * gtk/gtktextbuffer.h: Add fields to store whether a paste is + interactive and default editable (since we need to store that info + until we receive the selection data). + + Remove all the _at_char and at_line etc. versions of functions; + only have iterator versions. + + Add _interactive() versions of functions, that consider the + editability of text. (FIXME add interactive flag to the + insert/delete signals per Darin's suggestion) + + (gtk_text_buffer_get_tag_table): new function, demand-creates the + tag table if necessary + + Remove declaration of gtk_text_buffer_get_iter_from_string + + (_gtk_text_buffer_get_btree): private/internal function, added. + + + * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData. + (gtk_text_line_is_last): new function + +2000-07-25 Havoc Pennington + + * gtk/gtkprogressbar.h: Implement new sane, 5-function API for + using GtkProgressBar. See Changes-2.0.txt for details. + + * gtk/gtkprogressbar.c: Add object arguments "fraction" and + "pulse_step" which are the equivalent of + gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction. + Implement new API. + + * gtk/gtkprogress.h (struct _GtkProgress): Add a field + (use_text_format) to mark whether text set on the progress bar is + a format string. Deprecate entire GtkProgress interface. + + * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE + (gtk_progress_build_string): make this a no-op if use_text_format + is FALSE + + * docs/Changes-2.0.txt: Describe progress bar changes. + +2000-07-25 Tor Lillqvist + + * Makefile.am: Include the build directory. + + * configure.in: Generate build/Makefile, build/win32/Makefile, + gdk/, gdk/win32/, and gtk/makefile.mingw. + + * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf. + Add GETTEXT_PACKAGE. + + * gdk/gdk.def + * gtk/gtk.def: Updates. + + * gdk/gdkfont.h + * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't + need them any longer. + + * gdk/gdkinput.h: Mark gdk_core_pointer for export/import. + + * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with + PANGOWIN32_LIBS and gdk_pixbuf. + + * gdk/win32: Compiles, but no doubt doesn't work at all. + + * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. + + * gdk/win32/gdkinput.c: New file, temporarily. + + * gdk/win32/gdkinput-win32.h: New file + + * gdk/win32/gdkinputprivate.h: Remove. + + * gdk/win32/gdkpango-win32.c: New file. + + * gtk/makefile.mingw.in: New file + + * gtk/makefile.cygwin: Removed + + * gtk/Makefile.am: Update accordingly. + + * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and + made externally visible. + + * gtk/gtkmain.c: Use it. + + * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h + is enough. + + * gtk/gtktypeutils.c: Mark glib_debug_objects for import. + +2000-07-24 Elliot Lee + * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the + individual backends already. + * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together + again. Yes, there really is a good reason for this, if you are using the gdkregion + internals, and if you're not, why do you care? + * gdk/gdkwindow.c: Fix inverted condition + * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely). + * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb + * gtk/gtkrange.c: Redraw trough when moving. + * gtk/gtktypeutils.c: Fix warning by adding const cast. + * modules/linux-fb/basic.c: Fix unknown glyph retrieval. + +2000-07-23 Tor Lillqvist + + * configure.in: Check for mkstemp and sigsetjmp. Output + gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw. + + More work on GDK for Win32. Still in an intermediate state. + + * gdk/makefile.cygwin + * gdk/win32/makefile.cygwin: Removed. + + * gdk/makefile.mingw.in + * gdk/win32/makefile.mingw.in: New files. + + * gdk/Makefile.am + * gdk/win32/Makefile.am: Generate and distribute them. + + * gdk/win32/gdkwindow-win32.h + * gdk/win32/gdkdrawable-win32.h + * gdk/win32/gdkpixmap-win32.h: New files. + + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkcursor-win32.c + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkgc-win32.c + * gdk/win32/gdkimage-win32.c + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Update data structures. Cosmetics: + Rename fields and variables called xcursor, xid, etc (these names + were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc. + +Sat Jul 22 17:41:26 2000 Owen Taylor + + * gtk/gtkentry.[ch]: Fix some problems with vertical + alignment. + + * gtk/gtkentry.c (gtk_entry_find_position): Fix + char/byte confusion. + +Sat Jul 22 11:16:05 2000 Owen Taylor + + * gtk/gtktextview.c (changed_handler): Fix bug where + redraw wasn't being done properly when height of + dirty region changed. + + * demos/Makefile.am: Remove various references to + -lgmodule + +Fri Jul 21 15:28:13 2000 Owen Taylor + + * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new + PangoAttrShape to reserve space for pixmaps, add + GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps + in the display functions. + + * gtk/testgtk.c (create_layout): Set some more exotic + scrolled window options + + * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type): + Add function to set the shadow type of a window, to allow + putting a shadow around widgets such as GtkLayout or GnomeCanvas + which don't draw their own frame. + +Fri Jul 21 16:34:42 BST 2000 Tony Gale + + * docs/tutorial/package-db-tutorial.sh: New file for + packaging DocBook format tutorial + +Fri Jul 21 14:23:51 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Minor updates + + * docs/tutorial/*.jpg *.eps: Screenshots for tutorial + +2000-07-19 Tor Lillqvist + + * gtk/gtksignal.c: Fix C++ comment. + + * gtk/gtkimmulticontext.c + * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__, + don't return value from void functions. + + * gtk/gtk.def: Add gtk_rc_style_unref. + +2000-07-19 Sebastian Wilhelmi + + * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h, + gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h, + gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h, + gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h, + gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h, + gtk/gtktypeutils.h: Include files outside of the extern "C" + block. Makes some C++ compiler happy. Reported by Denis Vakatov + . + +Wed Jul 19 14:07:57 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Yet more clean ups. + Completes first pass. Hurrah! + +Tue Jul 18 17:17:55 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: More clean ups. + +Mon Jul 17 18:52:38 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to + paint the background of the text area which was accidentally + removed at some point. + + * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: + + - Move most of the functionality from the theme vtable + into GtkRcStyleClass and GtkStyleClass. The moved + vtable functions were changed a bit in the move to + work better in their new home. + + - Get rid of the engine and engine_data fields from + GtkRcStyle and GtkStyle; instead the theme + engine derives theme-specific subclasses of GtkRcStyle + and GtkStyle + + - Add extra dlsym() found entry point to themes, + theme_create_rc_style(). + + * gtk/gtkstyle.c: Copy xthickness, ythickness fields + in gtk_style_real_copy. + + * gtk/themes.[ch]: add a function gtk_theme_engine_register_type() + to register a type associated with an engine. (The engine + won't be unloaded as there is an instance of the type.) + + +Mon Jul 17 18:19:06 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Clean ups. + +Mon Jul 17 13:59:29 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots + of cleaning up to do. + +2000-07-15 Tor Lillqvist + + * gdk/testgdk.c: New file, quick hack to test backends for + pixel-by-pixel correctness of the most simple graphic operations. + +Fri Jul 14 20:30:25 2000 Owen Taylor + + * Really release 1.3.1 + + * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new + include structure. + +Fri Jul 14 18:40:39 2000 Owen Taylor + + * Released 1.3.1 + +Fri Jul 14 16:21:26 2000 Owen Taylor + + * gtk/gtktextlayout.c: use FALSE for size_only most + of the time when calling gtk_text_layout_get_line_display() + to avoid causing double reshapes when a redraw follows + immediately after. + +Tue Jul 11 11:13:40 2000 Owen Taylor + + * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate + appropriate region and gdk_window_process_updates() so trough + updating doesn't lag behind the window being scrolled. + + * gdk/gdkgc.c: Make parent_class pointer static. + +Sun Jul 9 21:31:23 2000 Owen Taylor + + * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c: + include . + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix + cut-and-paste error in computing memory offset for 4 channels. + +Fri Jul 14 14:05:02 2000 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove + gtk_rc_append_default_pixmap_path(), since it wasn't + adding an interesting path and we don't have a meaningful + default for this value. + +Fri Jul 14 12:22:49 2000 Owen Taylor + + * configure.in Makefile.am gtk-config.m4 gtk.m4: Move + gtk-config to gtk-config-2.0 move gtk_.m4 to + gtk-2.0.m4 + + * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am + gdk/Makefile.am demos/Makefile.am: Change + library names to libgtk-1.3.la, etc, so that we + can distinguish gtk-1.2 and gtk-2.0 on the linkline. + + * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am + gdk/Makefile.am gdk/x11/Makfile.am + Move include files into /usr/include/gtk-2.0, + /usr/lib/gtk-2.0/include/ + + * autogen.sh acconfig.h configure.in gtk/gtkmain.c + gtk/gtkintl.h: Change package for gettext from + gtk+ to gtk20. Put hack in autogen.sh to modify + po/Makefile.in.in after gettextize to make this + possible. + + * gtk+.spec: Some updates, not tested. + + * gdk-pixbuf/Makefile.am: Move loaders into + $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders. + + * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations + $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir + to THEMENAME/gtk-2.0/. Move engine directory to + $(libdir)/gtk-2.0/$(GTK_VERSION)/engines. + +2000-07-12 Tor Lillqvist + + Win32 changes, still doesn't build though. + + * gdk/makefile.cygwin + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Updates. + + * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same + default values for fg and bg pixel as X11 does (0 and 1), not + black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default. + Use 0 for pen width by default (treated as 1 anyway later, but for + apps that might check the value in the GdkGC). + (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public + interface to gdk_gc_predraw and _postdraw. + + * gdk/win32/gdkwin32.h + * gdk/gdk.def: Add gdk_win32_hdc_{get,release}. + + * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove + extraneous semicolon. + + * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0. + + * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth, + not the Win32 bitspixel value. + + * gdk/win32/gdkcc-win32.c: + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Changes to make compilable, with new + GDK object structure. + +Tue Jul 11 20:59:35 2000 Tim Janik + + * docs/tutorial/gtk_tut_12.es.sgml (name): + * docs/tutorial/gtk_tut_it.sgml (name): + * docs/tutorial/gtk_tut_fr.sgml (name): + * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely + outdated email adress: s/timj@psynet.net/timj@gtk.org/. + +Tue Jul 11 13:10:57 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Cleanup indenting and various + small changes. + +Tue Jul 11 08:04:58 2000 Tim Janik + + * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen + a bug here, never been here and never fixed anything ;( + (don't segfault if tree->root_tree is NULL, which happens prior + to widget realization, but puke instead). + +Tue Jul 11 06:38:42 2000 Tim Janik + + * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and + add the necessary tokens. + + * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style. + (gtk_rc_style_to_style): copy thicknesses. + (gtk_rc_init_style): apply thicknesses. + (gtk_rc_parse_style): parse xthickness and ythickness. + + * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements. + + * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): + (gdk_window_new): + (_gdk_windowing_window_init): + * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): + (gdk_pixmap_create_from_data): + (gdk_bitmap_create_from_data): + (gdk_pixmap_new): + * gdk/x11/gdkimage-x11.c (gdk_image_get): + (gdk_image_new): + * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): + * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): + * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get): + (gdk_colormap_get_system): + (gdk_colormap_new): + * gdk/gdkwindow.c (gdk_window_init): + * gtk/gtkstyle.c (gtk_style_new): + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): + * gdk/gdkpixmap.c (gdk_pixmap_init): + * gtk/gtkrc.c (gtk_rc_style_new): + use g_object_new() instead of g_type_create_instance() which + is a private function for fundamental type implementations. + +Thu Jul 6 16:12:14 2000 Owen Taylor + + * configure.in: Add check for db2html + +Thu Jul 6 14:53:05 2000 Owen Taylor + + * gtk/gtktypeutils.c (gtk_type_init): Add a temporary + hack to set glib_debug_objects based on gtk_debug_flags. + +Thu Jul 6 14:12:13 2000 Owen Taylor + + * INSTALL.in: Update the Prerequisites section. + + * Makefile.am demos/Makefile.am docs/Makefile.am + docs/tutorial/Makefile.am gdk/x11/Makefile.am + gdk/linux-fb/Makefile.am: Dist fixes + +Thu Jul 6 12:26:03 2000 Owen Taylor + + * NEWS: 10,000 foot view of 1.3.1 changes. + +Thu Jul 6 11:54:03 2000 Owen Taylor + + * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c + gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c + gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h + gdk/x11/gdkmain-x11.c: + + Patch from George Lebl to add a GdkGrabStatus enumeration to use + as a return value of gdk_*_grab(). Previously, we just + returned the X11 values directly. + +Thu Jul 6 11:27:44 2000 Owen Taylor + + * gdk/x11/Makefile.am: Patch from George Lebl to + install all the headers in the right place. + +Tue Jul 4 13:13:01 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Add remaining sections. Completes + initial conversion to DocBook. + +2000-07-04 Tor Lillqvist + + * README.win32: Improve a bit. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also + WM_SYSCHAR, and other changes to get handling of Alt+nnn or + Alt+0nnn on the numpad (used to enter characters by numeric code + from current DOS or ANSI codepage) working correctly, as in other + Windows apps. + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use + same argument validity tests as in X11 version. + (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon. + + * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor + definitions in case missing from headers. + + * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also + destroy the window-specific cursor. + (RegisterGdkClass): Use the global gdk_ProgInstance instead of + calling GetModuleHandle(NULL). + (gdk_window_set_cursor): Reworked to always copy the passed cursor + with CopyCursor before setting it as the window-specific + cursor. It is OK for the caller to destroy the GdkCursor (and thus + also its Windows cursor) after calling this function. Destroy any + previous window-specific cursor. + +Mon Jul 3 17:54:49 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): + font charset is iso8859-1, not iso-8859-1. + +Mon Jul 3 17:08:14 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): + Use g_get_charset() instead of g_get_codeset(). + + * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: + Comment out some strdup'ing functions to keep timj + happy until we finish fighting this out. + +Mon Jul 3 14:24:16 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with + <= width or height. + + * gtk/gtktable.c (gtk_table_attach): Fix missed merge + from 1.2 for parent/child states. + + * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple + of typos. + + * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of + event structures, replace with a generic axes field. Replace + deviceid/sourec with GdkDevice *device. + + * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function + to extract particular axis use value from event. (Also + can be used for normal X/Y.) + + * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision; + allow for arbitrary number of axes, namespace everything + as gdk_device_*. Replace guint32 deviceid with GdkDevice * + everywhere. + + * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: + Get rid of the gdk_input_vtable setup if favor of simply + defining the functions in gdkinput-none/gxi/xfree.c in + a similar fashion to the way that the port structure is + done. + + * gtk/gtkdnd.c: Fix fields of synthesized button press event + for new event structures. + + * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match + new device interfaces. + +Sun Jul 2 18:19:50 2000 Owen Taylor + + * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to + set the initial text. + + * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c + gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c + gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c + gtk/gtkvscale.c: Adapt to new argument of create_pango_layout(). + + * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new + pango_layout_set_font_description to simplify. + +Sun Jul 2 17:43:41 2000 Owen Taylor + + * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new + pango_layout_set_font_description to simplify. + +Sun Jul 2 17:06:40 2000 Owen Taylor + + * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c + gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use + pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'. + + * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with + PANGO_PIXELS() macro. + +Sun Jul 2 15:24:41 2000 Owen Taylor + + * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function + that returns a PangoContext owned by the widget and updated to + match future changes in the widget. Also, make + gtk_widget_create_pango_layout() use this context. If we ever + add a ::changed signal to PangoContext, this will make things + much more convenient. + + * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed() + in the appropriate places instead of destroying the layouts and + creating new ones. + + * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context() + in a few strategic places. + +Sun Jul 2 14:37:58 2000 Owen Taylor + + * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call + gtk_widget_size_request() on reparented child, if one. Otherwise, + queue_resize() on the child never results in it getting size-requested + at all. + + * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items + in option menus, so that (with luck) people won't copy it into + their apps in the future. + + * gtk/gtkoptionmenu.c: Connect ::size_request on the menu + to gtk_option_menu_calc_size. This isn't perfect, but should fix + a lot of problems with changing the size of the menu's menu + items after adding it to the option menu. + + * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language(). + + * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when + the text direction for a widget changes. + + * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use + ::direction_changed to get rid of various hacks. + +Sun Jul 2 13:19:12 2000 Owen Taylor + + * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate + name. + +Sun Jul 2 13:06:26 2000 Owen Taylor + + * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign + flag to the structure. Do not call XFreePixmap on pixmaps created + by gdk_pixmap_foreign_new(). + +Sun Jul 2 12:45:50 2000 Owen Taylor + + * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel + value using GdkRGB functionality given GdkColormap and GdkColor. + (name not final, waiting for inspiration.) + + * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to + set the foreground/background of a GC using the GC's colormap + and GdkRGB. (name not final, waiting for inspiration.) + + * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from + gdk_rgb_get_cmap(), put #define in gdkcompat.h. + + * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for + gtk_widget_get_visual(), gtk_widget_get_default_visual, etc, + purely a function of the corresponding colormap. Make + gtk_widget_set_visual(), etc, noop macros in gtkcompat.h. + + * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite + gdk_pixbuf_*create_from_xpm_* in terms of + gdk_pixbuf_new_from_xpm_data(), move into platform independent + code. + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take + advantage of the new draw_rgb_32_image_dithalign. + + * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added. + + * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap + on each created GC. + + * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap. + + * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure + which we initialize from the drawable when the GC is created, + if the drawable has a colormap. + + * gdk/x11/gdkgc-x11.c: include string.h for memset. + + * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc. + + * gtk/gtklayout.[ch]: Remove unsed configure serial member. + +Sat Jul 1 16:28:32 2000 Owen Taylor + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): When + actually returning expose events, make sure to set + the count field properly. + + * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix + accidentally reintroced bug which always cleared + the graphics_exposures value. + +Wed Jun 28 18:03:09 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Change DocBook layout slightly + +Wed Jun 28 17:49:05 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7. + +Wed Jun 28 13:31:55 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Start of Section 6. + +Mon Jun 26 19:37:04 2000 Owen Taylor + + * configure.in: Put 1.3.1 in warning message, not 1.3.0. + + (Fixes problem with drawing childless frames. Pointed out + by and a first patch from Anders) + + * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always + compute a child_allocation, even if we don't have a child. + + * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation): + Always chain to the parent's impl, even if we don't have a child. + +Mon Jun 26 18:53:31 2000 Owen Taylor + + * gdk/gdkrgb.c: If possible, create only a single shm segment and + use multiple parts of it instead of creating a bunch of separate + segments, since the maximum number of segments per system is not + large. (This might be worth backporting to GTK+-1.2.x if we make a + new release ) + + * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo + structure in preparation for per-colormap GdkRGB. + + * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm + to False when we get EINVAL from shmget so that the caller of + gdk_image_new can retry with a smaller segment size. + +Mon Jun 26 13:01:16 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Add Sections 4 & 5. + +Fri Jun 23 17:54:23 2000 Tim Janik + + * configure.in: make the current version number 1.3.1 (binary age 0, + interface age 0). + + * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*, + gtkcompat.h is all we want. + + * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of + GLib primitive types. fixed g_type_register_fundamental() argument + ordering. + + * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code + compiles. + + * gdk-pixbuf-loader.[hc]: get rid of unistd.h include. + object code cleanup, comment trigraph fixes, etc... + +2000-06-23 Havoc Pennington + + * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark + instead of making up a bogus name for first_para_mark + + * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow + 0 as a context ID + +Thu Jun 22 17:43:51 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Change filename. Add Section 3. + +2000-06-21 Havoc Pennington + + * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where + we didn't check window->bg_pixmap != GDK_NO_BG. + + * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of + gdk-pixbuf + +Thu Jun 22 14:02:19 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgm: Move file to here. + TODO: Update Makfile.am + +Thu Jun 22 13:41:09 BST 2000 Tony Gale + + * docs/gtk-faq.sgm: Add Section 2 + +Thu Jun 22 08:43:45 BST 2000 Tony Gale + + * docs/gtk-faq.sgm: New file. Start of DocBook + version of the FAQ. + +Wed Jun 21 23:04:17 2000 Owen Taylor + + * configure.in (GDK_PIXBUF_MAJOR): Define version + numbers for GDK_PIXBUF_*, as they get substituted + into a header file. Need to consider versioning + for gdk-pixbuf more carefully later. + +2000-06-21 Raja R Harinath + + Work with srcdir != builddir. + * demos/testanimation.c: Don't include "gdk-pixbuf.h". Use + , not "gtk-pixbuf/gdk-pixbuf-loader.h". + * demos/testpixbuf.c: Likewise. + * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h". + * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h". Use + . + * demos/pixbuf-demo.c: Use not "gtk.h". Don't include + "gdk-pixbuf.h". + * demos/Makefile.am (INCLUDES): Remove unneeded directories. + +Wed Jun 21 19:45:02 2000 Owen Taylor + + * TODO.xml: Change 1.4 version numbers to 2.0. + +Wed Jun 21 19:29:08 2000 Owen Taylor + + * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation + fixups to GTK+ standard. + +Wed Jun 21 16:38:13 2000 Owen Taylor + + * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard, + gdk-pixbuf. + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): + fixups for GObject. + + * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of + gdk-pixbuf with GDK dependencies moved into GDK. + + * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily + move gdk-pixbuf-loader here until GObject has signals. + + * demos/: New directory of demos. Move demos from + gdk-pixbuf here. + + * demos/pixbuf-init.c: Small bit of code to check for + loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found, + set GDK_PIXBUF_MODULEDIR appropriately. + + * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat + define which no longer makes sense. + +2000-06-21 Havoc Pennington + + * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use + gtk_get_default_language + + * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): + new function to get the default language + + * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: + s/gtk_text_view_style_values/gtk_text_style_values/ + + * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h: + Add a "language" field to tags. + + (gtk_text_tag_set_arg): Fix bug in setting + "bg_full_height_set" tag. + +2000-06-21 Havoc Pennington + + * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate + in the interfaces + + * gtk/gtktexttypes.c: Remove UTF functions, use glib + stuff instead when possible. + + * gtk/gtktexttypes.h: Delete some unused constants + + * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c, + testtextbuffer.c: use glib instead of custom unicode routines + +Wed Jun 21 12:50:58 2000 Owen Taylor + + * docs/es/: Removed mistakenly added generated sgml + + * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex: + Remove outdated info files. + + * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial: + Moved tutorial files into subdir + + * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into + subdir. + + * docs/man/gtk_button.pod: Remove. (contents will be + integrated into gtk-reference button page.) + + * configure.in docs/Makefile.am docs/tutorial/Makefile.am + docs/faq/Makefile.am: Adjust for new organization + +2000-06-21 Christopher Blizzard + + * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs) + not $(MKINSTALLDIRS) + +Wed Jun 21 12:24:28 2000 Owen Taylor + + * gtk/testgtk.c (create_text): Finish the job Elliot started + of removing font setting test for text widget. (Since text widget + and GdkFont are not deprecated, and cause portability problems.) + +Wed Jun 21 11:41:43 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c + gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c: + Remove use of libunicode in favor of new GLib functions. + + * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32, + nano-x, framebuffer. The X11 include is just a hack until we get + the necessary functions in gdkcolor.h, so there is no reason to + add other includes of platforms. + + * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert + window bigger than the screen change. + + * gtk/testgtk.c: Revert some random changes from Elliot + that had no particular point and were causing testgtkrc + not to function correctly. + + * gdk/gdkregion-generic.h: Revert change from Elliot. Just + because GdkSegment and GdkRegionBox have the same fields, + it doesn't mean that 'typedef GdkSegment GdkRegionBox' + results in clearer code. + + * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events, + gdk_input_translate_coordinates): Fix missed GdkObjectification + +2000-06-18 Elliot Lee + + * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way. + * gtk/gtk{plug,socket}.h: Missed commits from previous. + +2000-06-20 Havoc Pennington + + * modules/linux-fb/Makefile.am: Make this compile + without framebuffer enabled + + * gdk/linux-fb/Makefile.am: Add conditional to not build + framebuffer unless specified in configure + + * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting + the size of the target instead of source if -1 was passed for + width/height + + * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix + width/height confusion. + +2000-06-19 Havoc Pennington + + * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be + GDK_DRAWABLE_XID. In the future, we probably want to make it + faster with G_DISABLE_CHECKS turned on. + +2000-06-14 Havoc Pennington + + * gdk/Makefile.am: add gdkpixmap.c + + * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/ + s/gdk_image_init/_gdk_windowing_image_init + + * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject + ref/unref + + * gdk/gdkcolor.h: make GdkColormap a GObject subclass + + * gdk/gdkcompat.h: remove GdkWindowType compat, since + GdkWindowType is now non-deprecated; + change gdk_window_get_type() compat to be + gdk_window_get_window_type(). + + * gdk/gdkdnd.h: make GdkDragContext a GObject. + + * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure + virtual GObject. Make all functions call into the vtable. + Move gdk_image_put() guts in here. Remove GdkDrawableType + and gdk_drawable_get_type(), these are now GdkWindow-specific. + draw_image, get_depth, get_size, set_colormap, get_colormap, + get_visual added to the vtable. + + * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual + GObject. Virtualize everything. + (gdk_gc_new_with_values): remove check for destroyed window, + because now GdkWindow::create_gc will check this. + (gdk_gc_set_values): New function to set GC values, this + was already implemented but wasn't in the header + + * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject. + + * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove + _gdk_window_draw_image(), remove _gdk_windowing_window_class, + remove _gdk_window_class; add _gdk_window_impl_get_type() and + _gdk_pixmap_impl_get_type(). Rename gdk_window_init to + _gdk_windowing_window_init, rename gdk_image_init to + _gdk_windowing_image_init. + + * gdk/gdkpango.c: Reflect GObject-ification of PangoContext. + (gdk_draw_layout): Remove check for destroyed window, + because all the drawable methods already check it. + + * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject. + Add gdkpixmap.c which contains implementation of GdkDrawable + virtual table (by chaining to a platform-specific implementation + object). + + * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, + GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace + GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate, + GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate, + GdkColormapPrivate. + + * gdk/gdktypes.h: #include + + * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject. + Move most functionality to platform-specific implementation + object. GdkWindow itself now handles the backing store, then + chains to the platform-specific implementation. + (gdk_window_get_window_type): return GdkWindowType of the window. + (gdk_window_peek_children): New routine, returns the children of + a GdkWindow + (gdk_window_get_children): Was in X11-specific code and did + XQueryTree. Changed to simply return a copy of window->children; + so it can go in cross-platform code. + + * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path + + * gdk/x11/gdkcolor-x11.c: implement X-specific parts of + GdkColormap; just changed to use the new private data instead + of casting to GdkColormapPrivate. + + * gdk/x11/gdkcursor-x11.c: added a couple typechecks to + gdk_cursor_new(). + + * gdk/x11/gdkdnd-x11.c: Change the way we access private fields + (private data member in the GObject). + (xdnd_manager_source_filter): Function had broken + error handling, fix it (use gdk_error_trap_push). + + * gdk/x11/gdkdrawable-x11.c: This file now implements + a base class for GdkWindowImplX11/GdkPixmapImplX11. This + base class is purely for the convenience of the X port, + and not part of the interface to cross-platform GDK. + + * gdk/x11/gdkevents-x11.c: Reflect various renamings. + + * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's + specific to X, and returned by the create_gc virtual method + of GdkDrawableImplX11. + (gdk_x11_gc_set_dashes): Change this to take an array of gint8 + rather than gchar, this was also changed in the GdkGC vtable. + (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the + mask is 0, return immediately, instead of checking every flag. + This is faster, and keeps us from segfaulting if values is NULL + and the mask contains some nonzero flags. + + * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of + GdkWindow. + + * gdk/x11/gdkglobals-x11.c: change type of grab window, since + GdkWindowPrivate is gone. + + * gdk/x11/gdkim-x11.c: rename things that got renamed. + + * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and + remove the image_put stuff that got transferred to GdkDrawable. + + * gdk/x11/gdkinput.c: renamings + + * gdk/x11/gdkmain-x11.c: #include + + * gdk/x11/gdkpixmap-x11.c: GObject conversion + + * gdk/x11/gdkprivate-x11.h: indentation fixes + + * gdk/x11/gdkproperty-x11.c: renamings + + * gdk/x11/gdkselection-x11.c: renamings + + * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now + implements the platform-specific "impl" object. + Moved gdk_window_get_children to gdk/gdkwindow.c + + * gdk/x11/gdkx.h: Remove all the private structs and private datas + that no longer exist. Add declaration of GdkGCX11 object here. + Fix all the macros to still work. + + * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow, + GdkDragContext from the boxed types since they are now GObjects. + + * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject, + moved xthickness/ythickness into the instance. GtkStyleClass + functions are now in the standard vtable for GtkStyle, so you have + to create a GObject subclass to write a theme engine. + (gtk_style_copy): fixed a leaked PangoFontDescription + (gtk_style_init): renamed gtk_style_realize, so gtk_style_init + can be the standard GObject function. + + * Throughout GTK: + s/style->klass->[xy]thickness/style->[xy]thickness + s/pango_layout_unref/g_object_unref/ + + * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject. + + * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of + accessing GDK internals. + + * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of + accessing GDK internals. + +2000-06-18 Elliot Lee + + * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen. + + * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar + problem by calculating event position relative to the trough + rather than the slider. + * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate. + + * gdk/gdkgc.h: Add GDK_NOR. + + * configure.in, Makefile.am: Add modules top level dir + * configure.in: Only use pangox library if building x11 target. + * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use. + +Fri Jun 16 22:24:22 2000 Christopher Blizzard + + * gtk/gtkcolorsel.c: Change private class member to be named + private_data throughout the file. + + * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to + private_data to avoid clashing with keyword. + +Fri Jun 16 22:24:22 2000 Christopher Blizzard + + * gdk/gdkdnd.h: Add comment to remove warning. + +Sun Jun 18 15:35:35 2000 Pablo Saratxaga + + * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by + Byelorussian language; changed the Makefile and file names + to reflect that. + +Mon Jun 12 16:58:40 2000 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw + rather than gdk_window_hide; this makes things work + correctly if the window is programmatically hidden while + iconified. + +Sun Jun 11 12:46:19 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix + cut and paste typo where wrong pixmap was being + unref'ed. (Pointed out by a friend of KUSANO Takayuki.) + +Sun Jun 11 10:22:36 2000 Owen Taylor + + * gtk/gtkselection.c (gtk_selection_bytes_per_item): + Add helper function to compute format / bytes + relationship. Use in a couple places to fix up + errors which assume 8 * format. + + * gtk/gtkselection.c (gtk_selection_request): Use 32 + rather than 8 * sizeof (GdkAtom), to work correctly + on Alpha. + +Thu Jun 8 21:54:51 2000 Christopher Blizzard + + * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not + libgtk.la + (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11 + versions + + * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error + checking macros return NULL since the function has a return value. + +Wed Jun 7 15:44:42 2000 Owen Taylor + + * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping + GTK+ from building at all. + + * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues. + +Mon Jun 5 19:32:53 CEST 2000 Paolo Molaro + + * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am, + gtk/Makefile.am: make it possible to configure gtk for different + targets on the same platform. The library name is now + libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb + flag. Only the x11 target compiles right now. + * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h, + gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir. + * gdk/nanox/gdk*generic*: delete generic region code. + * gdk/linux-fb/gdk*generic*: delete generic region code. + * README.nanox: update information. + +Tue Jun 6 10:53:59 2000 Owen Taylor + + * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to + prepend not append. (Pointed out by Brett Hall.) + +Tue Jun 6 01:59:57 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout. + +Mon Jun 5 16:00:09 2000 Owen Taylor + + * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll + need this later, and this makes sure that the atexit for + glib gets called after that for GDK, so atexits are + properly ordered for object leak checking. + + * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit(). + + * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call + pango_x_shutdown_display() + + * gtk/simple.c (main): Close window on destroy. + +Mon Jun 5 11:50:02 2000 Owen Taylor + + * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need + to treat initial creation different from setting with + regards to the graphics-exposures parameter, so add a parameter + indicating whether this is initial or not. + +Mon Jun 5 13:29:31 2000 Owen Taylor + + * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose() + to sort of work by adding an extra return_exposes arg + to gdk_event_translate() - it might be better to simply + deprecate the function altogether and force people to rewrite + without it. gdk_window_scroll() handles most of it, and where + gdk_window_scroll() doesn't work, simply redrawing more does. + + * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up + assertion. + + * gtk-config.in: Include PANGO_CFLAGS/LIBS. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a + bunch of pretty much useless /* Print debugging info */ comments + which had drifted away from the code they were commenting. + +2000-06-02 Havoc Pennington + + * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer + is in working order. + + * gtk/testtext.c: Change to reflect anonymous mark API + + * gtk/gtktextview.c: Convert from mark names to GtkTextMark*. + + * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size + field, which was unused. + + * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro, + saves some typing. + + * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark* + + * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable + flag on the insertion point and selection bound + + Throughout, use GtkTextMark instead of GtkTextLineSegment, and + make mark-manipulation functions take a GtkTextMark* instead of a + mark name. + + * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to + GtkTextMarkBody; will be used to detect attempts to delete + the permanent marks (insert and selection bound) + + * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer + +Fri Jun 2 12:56:01 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED + flag to on. + + * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): + Honor DOUBLE_BUFFRED_FLAG + + * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a + function to set the DOUBLE_BUFFERED flag. + + * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether + or not exposes done on the widget should be double-buffered. + + * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations + to be what would be expected. (Fixes problem with a + g_return_if_fail() validating a TextDirection enumeration) + +Thu Jun 1 23:05:13 2000 Owen Taylor + + * gtk/gtkwidget.c: Remove all references to + offscreen flag which was no longer used. + + * gtk/gtkprivate.h (enum): Remove unused flags and compress. + + * gtk/gtkframe.c (gtk_frame_set_label_widget): Check + for non-null label_widget->parent. + + * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute + which no longer was used. + + * gdk/gdkpango.c (gdk_pango_context_get_info): make static. + + * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks + for null arguments. + + * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add + check for destroyed windows. + +Thu Jun 1 13:48:45 2000 Owen Taylor + + * gtk/gtkimmulticontext.c: Add a finalize method and unref + the slave context there. + + * gtk/gtkinvisible.[ch]: Make reference counting behavior + identical to GtkWindow. + +Thu Jun 1 01:54:11 2000 Owen Taylor + + * Makefile.am gdk/gdkpango.c: Copy the layout render function from + pangox to here, so we can write them independent of rendering + system, using GDK primitives. + + * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c + gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable, + since we have a rendering-system independent implementation in + terms of draw_glyphs(). + + * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New + function to render a single line. + + * gdk/x11/gdkpango.c: Move the guts of this file mostly + into ../gdkpango.c, which simplifies things, since we + don't have to deal with raw X gc's. + +Fri May 19 04:28:16 2000 Owen Taylor + + * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to + get the logical attributes for a given GtkTextLine. + +Tue May 30 16:05:39 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track + g_locale_get_codeset() to g_get_codeset() change. + +Tue May 30 15:03:19 2000 Owen Taylor + + * gtk/testcalendar.c (calendar_font_selection_ok): Use font + descriptions. + + * gtk/gtkentry.c (gtk_entry_draw_text): Center text within + the entry. + + * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of + redoing (vastly simplifying) for Pango. Still needs quite + a bit of work. (Size selection is currently poor. List of + predefined sizes is not a good idea, since all of these + sizes won't necessarily be distinct.) + +Tue May 30 13:50:19 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle + CODESET results for LANG=C. + +Mon May 29 15:49:10 2000 Owen Taylor + + * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC + which takes a stringized pango font description; + ignore the older 'font' and 'fontset' declarations. + + * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font + field with a GdkFont derived via gdk_font_from_description(), + for compatibility. (Should we just remove it entirely? + Probably too much compatibility breakage, but people + should be migrating to the new Pango stuff as quickly + as possible.) + +Mon May 29 15:47:41 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/. + +Mon May 29 15:44:46 2000 Owen Taylor + + * gtk/gtkcalender.c: Roughly pango-ized. Really needs + redoing; there are some bugs in size allocation right + now, the semi-existant distinction between header / day + fonts was removed, but, with Pango, could actually + be made functional in a nice way. + + * gtk/testcalender: Move calender from examples into this + directory as a test program. (We really need to restrcture + testgtk into a whole directory full of tests for every + widget or functionality group, separated into multiple .c + files.) + +Mon May 29 15:19:56 2000 Owen Taylor + + * gtk/testgtk.c (file_exists): Fix stupid typo that + was keeping RC file from being loaded. + + * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized + RC file font code. + +Mon May 29 14:31:27 2000 Owen Taylor + + * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description): + Add function to load a GdkFont from a PangoFontDescription. + +2000-05-29 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event" + variable should be of type GdkEventPrivate. + +Fri May 26 17:16:40 2000 Owen Taylor + + * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able + to have any widget for the label, use a GtkLabel widget + to display the text. (Based partially on a patch from + Anders Carlson.) + + (Quite a bit of code reorganization - strip 90% of the + guts out of gtkaspectframe and add a single virtual + func to GtkFrameClass - compute_child_allocation.) + +Fri May 26 12:00:02 2000 Owen Taylor + + * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized. + (Removed clist->row_center_offset field because caching + it wasn't saving time or code, added private function + _gtk_clist_create_cell_layout()). + +Wed May 24 15:59:37 2000 Owen Taylor + + * gtk/gtkaccellabel.c: Pangoized. + + * gtk/[hv]ruler.c: Pangoized + +Mon May 22 19:23:59 2000 Owen Taylor + + * gtk/gtkfilesel.c (gtk_file_selection_init): + Use gtk_clist_set_column_auto_resize() to remove need + need for manual column width computations. + +Mon May 22 18:50:26 2000 Owen Taylor + + * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, + ensuring Pango correctness, and considerably simplifying the + code. + + * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE. + + * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect + getting of numbers of lines. + + * gtk/gtklabel.c (gtk_label_size_request): Set the requisition + to the actual requested width of the lable, not to the wrap + width we set. + + * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h. + + * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c + gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes. + + * gtk/gtktextview.c: Fix structure inheritance. + + * gtk/gtkprogressbar.c: Pangoize. + +Mon May 22 15:47:30 2000 Owen Taylor + + * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate + in a function. + + * gtk/gtktextlayout.c (find_display_line_above): Fixed + bug with computing line tops. + + * gtk/gtktextview.c (changed_handler): Fix < , <= confusion. + +Thu May 18 18:53:31 2000 Owen Taylor + + * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset + and y_offset coordinates to do what we need now. (The offset between + buffer and layout coordinates has been reintroduced, but is a + bit different than before.) + + * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead + handle the adjustments ourselves, and scroll as necessary using + the new gdk_window_scroll(). + + The advantage of this is that when we are incrementally revalidating, + we are essentially rearranging things around the visible portion + of the screen. With the old setup, the visible portion of the + screen was moved around in the layout, so scrolling and redrawing + to track that caused jumping of the display. Since we now + control the scrolling ourselves, we can suppress this and + only redraw when things actually change. + +Thu May 18 18:47:25 2000 Owen Taylor + + * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate + the region not just redisplay it after-all, since we store the + cursors in the LineDisplay. (Ugly interactions here between + GtkLayout and GtkTextBTree here.) + + * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison. + +Thu May 18 18:43:21 2000 Owen Taylor + + * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): + Added function to scroll contents of a window while keeping the + window constant. Works by XCopyArea or guffaw-scrolling depending + on the details of how the window is set up. (guffaw-scrolling + still needs to be filled in.) + +Wed May 17 22:36:53 2000 Owen Taylor + + * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget, + move the debugging that was tied to a global variable + to that. + + * gtk/gtkmarshal.list: Add NONE:INT,INT,INT + + * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate + validated flag, in line data instead of setting height/width to + -1. This allows us to perform operations with partially invalid + buffer (using the old size for invalid lines) and thus to do + incremental vaidation. Keep height/width aggregates up to date + when deleting text and rebalancing the tree. + + * gtk/gtktextbtree.[ch]: Add functions validate a line + (gtk_text_btree_validate_line), and to validate up + to a number of pixels (gtk_text_btree_validate). + + * gtk/gtktextlayout.[ch]: Add an ::invalidated signal + that indicates that something is changed and a revalidation + pass is needed. Change ::need_repaint to ::changed, and + make it take old and new yranges instead of a rectangle. + + * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move + the line_data_destroy() function from + gtk_text_btree_add_view() to a virtual function in + GtkTextLayout + + * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(), + since we are handling partial repaints in a different fashion + now. + + * gtk/gtktextbtree.[ch]: Only repaint the changed portion + of the selection instead of queueing a repaint on the + entire widget. + + * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move + get_selection_bounds() down to btree, make the function + in buffer a wrapper around the btree function. + + * gtk/gtktextlayout.[ch]: Add functions to check if the + layout is valid and to recompute either a range of pixels + aroudn a line or a certain total number of pixels. + + * gtk/gtktextlayout.[ch]: Cache a single line display; + now that we only redraw the needed portions, the hit rate + for this cache is quite high. + + * gtk/gtktextview.[ch]: Keep track of the first paragraph + on the screen so that when re-laying-out the buffer, we can + keep the same place. This requires connecting to ::value_changed + on the adjustments + + * gtk/gtktextview.[ch]: Add idle functions to revalidate + the buffer after we receive an ::invalidated signal. + +Wed May 17 22:10:47 2000 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper + to max of allocation and layout size, not just to the + layout size. + + * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): + Invalidate window so it gets redrawn properly. + + * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL + to mean the entire window. + + * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW + into public header. + +Mon May 15 14:51:31 2000 Owen Taylor + + * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function + to get the name of a mark. + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function + to find the paragraph from a y position. + +Thu May 11 12:57:20 2000 Owen Taylor + + * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid + nodes have width/height >= 0, not > 0. + +Tue May 9 21:29:06 2000 Owen Taylor + + * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display): + Add a size_only flag, so when we only need the size, we don't create + useless appearance attributes. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove + duplicate setting of font description. + + * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 + +Wed Apr 26 01:53:23 2000 Owen Taylor + + * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into + EXTRA_DIST. It does not work well when the file that + everything depends on is not in the tarball. + +Wed Apr 26 00:56:14 2000 Owen Taylor + + * gtk/testgtk.c: Some hacks and fixes so that it basically + works when not sitting in the GTK+ build tree. + +2000-05-03 Havoc Pennington + + * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag): + Properly determine the ordering of the tag root and the current + line within the tree. Previous algorithm only worked if the tag + root's immediate parent was the common root of both the current + line and the tag root. + +Wed Apr 26 00:43:00 2000 Owen Taylor + + * gtk/gtktextlayout.c (set_para_values): Fix some bugs in + alignment. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track + the widget text directional dynamically. + + * gtk/gtktextview.[ch]: Added functions to get and set default + wrap mode. + +Tue Apr 25 23:47:38 2000 Owen Taylor + + * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug + in cursor location computation. + +Tue Apr 25 23:22:59 2000 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/ + vadjusment values properly when layout gets smaller. + + * gtk/gtktextview.c (need_repaint_handler): Areas being + passed in are far completely inaccurate, and sometimes + too small, so, for now, just queue a redraw on the + whole visible region. + +2000-04-25 Havoc Pennington + + * gtk/gtktextbtree.c (summary_destroy): new function to + destroy tag summary nodes + (gtk_text_line_next_could_contain_tag): this function was + totally broken if the line passed in wasn't below the tag + root. Fix it. + (gtk_text_btree_first_could_contain_tag): In the tag == NULL + "wildcard" case, we have to do a linear scan. Blah. + (gtk_text_btree_last_could_contain_tag): In tag == NULL case, + we have to do the linear scan + (tag_removed_cb): When a tag is removed from the tag table, + remove the GtkTextTagInfo node from the btree. + (gtk_text_btree_spew): Implement the spew function, for + our debugging pleasure. + +Tue Apr 25 19:40:18 2000 Owen Taylor + + * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix + a problem with referring to the wrong buffer. + + * gtk/gtkentry.c: Fix focus-in/focus-out confusion. + + * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default + font description to gtk_style_new() - otherwise things + don't work without a .gtkrc file. + + * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the + tags table if we create it ourself, too. + + * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since + it was conflicting with XKB modifiers. + + * gtk/gtktextview.[ch]: Add simple support for + GtkIMContext. + +Mon Apr 24 19:34:18 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem + with deletion from last commit. + +Mon Apr 24 19:29:40 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language + in the context from the current locale. + + * gtk/gtkentry.c (gtk_entry_size_request): Use language from the + context, not hardcoded value. + + * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual, + not logical. + +Sun Apr 23 23:39:18 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as + attributes - that doesn't handle partial-glyph selection + properly. Instead use new pango_layout_line_get_x_ranges() + functionality to draw the selection. + + * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x() + now properly handles out-of-range coordinates. + + * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved. + + * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte() + public. + + * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext + for paragraphs opposite to the base direction of the widget. + + * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment. + + * gtk/gtktextlayout.c: Don't split segments on marks, since that + causes Arabic words to reshape as you cursor through. + + * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual + cursor position when moving vertically with the arrow keys and + scrolling with page-up/page-down. (Arrow keys save only the X, + scrolling saves both X and Y.) + + This means you can line-up / line-down or page-up / page-down + without losing your place, and also that moving vertically + with the cursor keys keeps the same X position, not the same + character count: + + * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical + arrow keys move by display lines, not paragraphs. + +Tue Apr 18 14:16:50 2000 Owen Taylor + + * gtk/gtklayout.c: Make sure that the bin window is at least + as big as the allocation. (Should we also make sure that the + bin window is big enough to completely cover widget->window?) + + * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add + function to get the onscreen rectangle. + + * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account + for offsets in window coordinates. + +Sun Apr 16 16:13:27 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset + confusion. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction + from the widget direction. + + * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): + Add a "direction" attribute. + + * gtk/gtktextview.c: global s/tkxt/text_view/. + + * gtk/testtext.c: Added long block of text in Arabic, to test out + the direction attributes. (Some problems with the shaping system + for arabic become obvious - like the fact the cursor splits words + into unjoined pieces.) + +Fri Apr 14 12:54:34 2000 Owen Taylor + + * gtk/gtktextdisplay.c (render_layout): Add overstrike handling. + + * gtk/gtktextlayout.c: Fix up alignment. + + * gtk/testtext.c: Add some tests for centering, wrapping. + +Fri Apr 14 09:26:22 2000 Owen Taylor + + * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c: + Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs(). + If we wrote GTK+-specific layout-render function this could just replace + the draw_layout() operation in the vtable. + + * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to + pango_layout_get_cursor_pos() and use that function. + + * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it + is a non-static symbol. + + * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y() + with gtk_text_btree_find_line_by_y() + + * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout + renderer that handles GtkTextAppearance attributes. + + * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: + + - Move the values in the style that don't affect geometry into a + GtkTextAppearance structure. + - Change underline to take a PangoUnderline and "font" a string + representation of a font description + - Add a "font_desc" attribute which takes a FontDescription structure. + + * gtk/gtktextlayout.[ch]: + + - Get rid of the display-line list per each line. Instead, we + generate, on demand, a GtkTextLineDisplay structure which] + contains a PangoLayout * and other necesary information + (offsets, cursor locations) for displaying a paragraph. + - Get rid of the code to wrap lines, create display chunks, + etc. Instead, we just go through a paragraph and convert + it into the necessary inputs to a PangoLayout. + - Implement a new attribute type, GtkTextAttrAppearance. This + holds a GtkTextAppearance, and is used to pass colors, + stipple, etc, through from the layout to the display without + having to use lots and lots of individual attributes. + - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos() + in terms of PangoLayout functions. + + * gtk/gtktextview.c: + + - Handle passing the necessary PangoContext to the layout + - Some fixups in painting to deal with the automatic backing store + and offsetting of GTK+-1.4 + - Add a style_set handler so that the default style reacts + properly to theme changes. + + * gtk/gtktext?*.[ch]: Random code-style fixes. + + * gtk/testtext.c: Substitute in languages that Pango handles now for Thai + +Mon Apr 10 10:33:45 2000 Owen Taylor + + * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget, + in original form preparatory to Pango-ization and gdkimcontext-ization. + +Thu Apr 6 19:25:39 2000 Owen Taylor + + * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs, + so that we can derive from gtkimcontext in language bindings properly. + +Thu Apr 6 16:02:52 2000 Owen Taylor + + * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval. + Add a compose table including (almost) all the compose combinations + from X. This is 6k of static, shared data as opposed to 50k or so of dynamic + data in the XIM implementation. + + * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval): + Moved functions to convert keyvalues from and to unicode here from + the win32 port and made them public. + +Wed Apr 5 16:37:29 2000 Owen Taylor + + * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1. + +Wed Apr 5 16:27:45 2000 Owen Taylor + + * gtk/gtkimcontext.[ch]: Base class for new input context system + + * gtk/gtkimmulticontext.[ch]: Proxy input context that allows + the real input context implementation to be loaded from modules + and switched on the fly. + + * gtk/gtkcontextsimple.[ch]: Simple implementation of an input + context that just does direct keysymbol => unicode translation. + + * gtk/gtkentry.[ch]: Start switching editing over to using + GtkInputContext. (No handling of preedit yet.) + +Wed Apr 5 15:48:41 2000 Owen Taylor + + * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too + many substitutions. (klass should not be subsituted.) + +Wed Apr 5 00:18:14 2000 Owen Taylor + + * configure.in: Add checks for Pango + + * configure.in docs/Makefile.am: Add test for sgml2html + and allow 'make dist' without building html, but print out + warnings in that case. (For making snapshots) + + * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am: + Add Pango libraries and C flags + + * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c: + Add function (gdk_draw_layout) to draw a pango layout. + + * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions + for getting Pango contexts for GDK. + + * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set() + + * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional + editing. + + * gtk/gtkentry.c: Hack in simple Hebrew input with direct + keysym => unicode translations. More languages can be added + here, but real input-method support is needed. + + * docs/Changes-1.4.txt: Added note about entry behavior. + + * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions + to set the reading direction for a widget and the global direction. + Add test which allows toggling the global direction. Two private + flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR) + + * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c + gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c + + * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango + + * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking, + underlining now handled by Pango. + + * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription + to RCStyle and Style. (Having both this and the old font name and GdkFont + is temporary.) + + * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added + convenience functions for creating contexts and layouts for widgets. + + * gtk/testgtk.c: Enhance label tests with multilingual labels. + +2000-05-29 Jonathan Blandford + + * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the + titles to be active, even if they aren't visible. + (gtk_clist_column_titles_passive): Ditto. + +2000-05-21 Nils Barth + + * gtkmenu.c: + * gtkmenu.h: + * gtktypeutils.h: Spelling/grammar fixes in comments. + +Tue May 23 12:25:07 CEST 2000 lupus + + * gdk/nanox/*.h: add missing header files. + +Fri May 19 11:52:59 2000 Tim Janik + + * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set + send_event to TRUE. + (gtk_drawing_area_size): queue a resize. + +Sun Mar 26 03:21:28 2000 Tim Janik + + * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing + the handlers, also invalidate them. bug nailed down by Karl Nelson + . + +Fri May 19 06:49:23 2000 Tim Janik + + * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle + "(nil)" foundries, patch from Grigorios Magklis. + + * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash + on non-available fonts, based on a patch by Grigorios Magklis + . + +2000-05-18 Elliot Lee + + * gdk/x11/gdkregion-generic.c: If a region does not have any + rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT + instead of GDK_OVERLAP_RECTANGLE_IN. + +2000-05-17 Jonathan Blandford + + * gtk/gtklayout.c (gtk_layout_map): Remove references to + OFFSCREEN, as it is no longer necessary. + +Wed May 17 10:52:12 2000 Owen Taylor + + * gtk/gtkcolorsel.c: Patch from David Santiago + to change things so that the + indicator of the active palette entry is done independently, + not via the focus, since it should always be visible. + +2000-05-17 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same + refcount leaks as in the X11 backend. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging + cosmetics. + + * gdk/win32/gdkwindow-win32.c: Similar changes as in X11 + backend. Add _gdk_windowing_window_destroy(). + + * gtk/gtkcolorsel.c: Include correct backend-specific header. + Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR + either, but these probably do exist on nanox?) + + * gtk/gtkhsv.c: Use G_PI (fresh from ) instead of M_PI + which isn't necessarily defined by . + + * gtk/gtkobject.c (gtk_object_init): Don't go up the class + ancestry past GtkObject. + + * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import + from DLL on Win32. + + * gtk/gtk.def: Update corresponding to recent changes. + + * gtk/makefile.{cygwin,msc}: Updates. + +Fri May 12 18:46:51 2000 Owen Taylor + + * docs/Changes-1.4.txt: A bit of editing. + + * gdk/gdkwindow.c (_gdk_window_clear_update_area) + * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function + to clear the update area for the window, and clear it + when hiding a window. + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore + if window destroyed. + + * gdk/gdkwindow.c (gdk_window_end_paint): Likewise. + + * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move + gdk_window_destroy() to the generic code, since there was a lot of + window-system-independent logic it in. Add a function: + + _gdk_window_destroy() + + to the internal API to destroy a window without unreferencing it. + Add a function: + + _gdk_windowing_window_destroy() + + That does the windowing-system-dependent part of destroying + the window. + +Fri May 12 11:07:41 2000 Owen Taylor + + * gtk/testgtk.c: Fix various memory leaks of pixmaps. + +Fri May 12 11:06:10 2000 Owen Taylor + + * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): + Make gtk_widget_shape_combine_mask() keep a reference count on + the pixmap since it keeps it around. + +Fri May 12 10:53:29 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount + leak. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount + leak with event filters. + +Thu May 11 14:29:44 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the + signal handlers with the right data arguments. (Fixes + some warnings when a widget was repeatedly set as a drag + destination.) + + * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the + window so we can avoid avoid setting the DND properties on the + toplevel window repeatedly. + +2000-05-13 Tor Lillqvist + + * gdk/win32/gdkwin32.h: Define more message types missing from + mingw headers. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY + call gdk_window_destroy_notify(). It was never called. This + probably meant that the GdkWindow was never freed. Thanks Owen for + noticing (!). + + * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark + window as destroyed before calling DestroyWindow(). DestroyWindow() + causes a call to the window procedure (gdk_WindowProc), which + calls gdk_event_translate(), which calls + gdk_window_destroy_notify(), which gets confused unless the window + is set as destroyed. + + * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename + this function to indicate it's win32 only. Put inside #ifdef + G_ENABLE_DEBUG. + + * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New + debugging function. (gdk_event_translate:) Add a default branch + that uses the above function to print debug messages with all + Windows messages symbolically. + + * gdk/win32/gdkprivate-win32.h: Declare it, and + gdk_win32_color_to_string, but only if G_ENABLE_DEBUG. + +Fri May 12 20:07:32 2000 Tim Janik + + * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a + public header file. + +Fri May 12 17:13:32 2000 Tim Janik + + * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition. + + * gtk/gtktext.c: made the adjustments no-construct args, simply + provide default adjustments. + (gtk_text_destroy): release adjustments. + + * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the + adjustment argument non-construct. + + * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here, + instead of in finalize. + (gtk_progress_get_text_from_value): + (gtk_progress_get_current_text): + (gtk_progress_set_value): + (gtk_progress_get_percentage_from_value): + (gtk_progress_get_current_percentage): + (gtk_progress_set_percentage): + (gtk_progress_configure): ensure an adjustment is present. + +Thu May 11 01:24:08 2000 Tim Janik + + * gtk/gtkcolorsel.[hc]: + * gtk/gtkcolorseldialog.[hc]: + * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain + their parent implementation, use bit fields for boolean values, don't + create unused widgets, usage of glib types, braces go on their own + lines, function argument alignment, #include directives etc. etc. etc.. + + * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h. + +Wed May 10 23:29:52 2000 Tim Janik + + * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips. + + * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state + of NULL. + + * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references + to freed data. + (gtk_combo_destroy): don't keep a pointer to a destroyed window. + + * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer + to NULL when the toplevel is getting destroyed. + (gtk_menu_set_tearoff_state): same here for the tearoff_window. + (gtk_menu_destroy): + (gtk_menu_init): store the information of whether we have to + readd the initial child ref_count during destruction in a new + GtkMenu field needs_destruction_ref_count. + + * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it + here, those reading: learn from my mistake! ;) + in order for set_?adjustment to support a default adjustemnt if + invoked with an adjustment pointer of NULL, the code read (pseudo): + if (v->adjustment) unref (v->adjustment); + if (!adjustment) adjustment = adjustment_new (); + if (v->adjustment != adjustment) v->adjustment = ref (adjustment); + now imagine the first unref to actually free the old adjustment and + adjustment_new() creating a new adjustment from the very same memory + portion. here, the latter comparision will unintendedly fail, and + all hell breaks loose. + (gtk_viewport_set_hadjustment): + (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL + after unreferencing it. + + * gtk/gtkcontainer.[hc]: removed toplevel registration + functions: gtk_container_register_toplevel(), + gtk_container_unregister_toplevel() and + gtk_container_get_toplevels() which had wrong semantics + anyways: it didn't reference and copy the list. + + * gtk/gtkwindow.c: we take over the container toplevel registration + bussiness now. windows are registered across multiple destructions, + untill they are finalized. the initial implicit reference count + users are holding on windows is removed with the first destruction + though. + (gtk_window_init): ref & sink and set has_user_ref_count, got + rid of gtk_container_register_toplevel() call. add window to + toplevel_list. + (gtk_window_destroy): unref the window if has_user_ref_count + is still set, got rid of call to + gtk_container_unregister_toplevel(). + (gtk_window_finalize): remove window from toplevel list. + (gtk_window_list_toplevels): new function to return a newly + created list with referenced toplevels. + (gtk_window_read_rcfiles): use gtk_window_list_toplevels(). + + * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange + adjustment a non-construct arg. + * gtk/gtkvscale.c (gtk_vscale_class_init): likewise. + * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise. + * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise. + + * gtk/gtkrange.c: added some realized checks. + (gtk_range_destroy): get rid of the h/v adjustments in the + destroy handler instead of finalize. remove timer. + (gtk_range_get_adjustment): demand create adjustment. + + * gtk/gtkviewport.c: made h/v adjustment non-construct args. + we simply create them on demand now and get rid of them in + the destroy handler. + (gtk_viewport_destroy): get rid of the h/v adjustments in the + destroy handler instead of finalize. + (gtk_viewport_get_hadjustment): + (gtk_viewport_get_vadjustment): + (gtk_viewport_size_allocate): demand create h/v adjustment + if required. + + * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the + gtk_widget_real_destroy () functionality. + (gtk_widget_real_destroy): reinitialize with a new style, instead + of setting widget->style to NULL. + +Fri May 5 13:02:09 2000 Tim Janik + + * gtk/gtkcalendar.c: + * gtk/gtkbutton.c: ported _get_type() implementation over to + GType, either to preserve memchunks allocation facilities, + or because Gtk+ 1.0 GtkTypeInfo was still being used. + + * gtk/gtkobject.[hc]: derive from GObject. ported various functions + over. prepare for ::destroy to be emitted multiple times. + removed reference tracer magic. chain into GObjectClass.shutdown() + to emit ::destroy signal. + + * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being + fundamental. + + * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init() + cludge. + + * gtk/gtksocket.c: + * gtk/gtkplug.c: + * gtk/gtklayout.c: + * gtk/gtklabel.c: + * gtk/gtkargcollector.c: + * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT + not being a fundamental anymore, and to work with the new + type system (nuked fundamental type varargs clutter). + + * gtk/*.c: install finalize handlers in the GObjectClass + part of the class structure. + changed direct GTK_OBJECT()->klass accesses to + GTK_*_GET_CLASS(). + changed direct object_class->type accesses to GTK_CLASS_TYPE(). + + * gtktypeutils.[hc]: use the reserved fundamental ids provided by + GType. made most of the GTK_*() type macros and Gtk* typedefs + simple wrappers around macros and types provided by GType. + most notably, a significant portion of the old API vanished: + GTK_TYPE_MAKE(), + GTK_TYPE_SEQNO(), + GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST, + GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST, + GTK_TYPE_ARGS, + GTK_TYPE_CALLBACK, + GTK_TYPE_C_CALLBACK, + GTK_TYPE_FOREIGN, + GtkTypeQuery, + gtk_type_query(), + gtk_type_set_varargs_type(), + gtk_type_get_varargs_type(), + gtk_type_check_object_cast(), + gtk_type_check_class_cast(), + gtk_type_describe_tree(), + gtk_type_describe_heritage(), + gtk_type_free(), + gtk_type_children_types(), + gtk_type_set_chunk_alloc(), + gtk_type_register_enum(), + gtk_type_register_flags(), + gtk_type_parent_class(). + replacements, where available are described in ../docs/Changes-1.4.txt. + implemented compatibility functions for the remaining API. + + * configure.in: depend on glib 1.3.1, use gobject module. + +Thu May 11 12:39:50 2000 Owen Taylor + + * TODO.xml: Various updates to current status. + +Wed May 10 20:25:04 2000 Owen Taylor + + * gtk.m4: Print out version when test succeeds. + +Wed May 10 16:38:17 2000 Owen Taylor + + * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch] + gtk/gtkhsv.[ch]: Color selection dialog rewrite. + + (Original triangle color selector from Simon Budig + , Cleaned up and rewritten for GTK+ by + from Jonathan, Havoc, and Federico. Merge into GTK+ done by David + Santiago ) + + * gtk/gtkcolorseldialog.[ch]: Split color selection dialog + out into a separate widget. + + * gtk/testgtk.c: Add some checkbuttons for toggling palette + and opacity controls. + +Wed May 10 16:08:09 2000 Owen Taylor + + * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that + snuck in prematurely. + +2000-05-07 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I + had deleted a ! operator by mistake, which caused + GDK_SELECTION_CLEAR events never to be generated, which caused + only the first copy to the clipboard from an gtkeditable to + actually cause a copy to the Windows clipboard. + +2000-05-06 Tor Lillqvist + + * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc + compilation, too. Current mingw gcc distributions include the + necessary headers. Also the necessary IIDs are now in mingw + headers/libraries, and own definitions unnecessary. + + More hacking on OLE2 DND, still doesn't work though, and thus + ifdeffed out. + + * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from + here, too. + +Sat, 6 May 2000 13:31:34 +0200 Paolo Molaro + + * gdk/nanox/*: nano-X port work in progress. + * gdk/simple.c: simple test for Gdk. + * README.nanox: notes about the port: read this first! + * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile + with nano-X. + +Fri May 5 11:18:47 2000 Owen Taylor + + * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move + gdk_window_clear() into common code, implement in terms of + gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was + not redirected to the backing rectangle. + +Wed Apr 26 01:53:23 2000 Owen Taylor + + * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into + EXTRA_DIST. It does not work well when the file that + everything depends on is not in the tarball. + +Tue Apr 25 22:20:41 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error + with recursion where process_updates() is called from + an expose handler. (GtkTextView is highly broken in + doing this, but it should work, so it is a nice test + case.) + +Sun Apr 23 23:39:18 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully + handle the case where updates are queued during processing of + updates. + +Tue Apr 18 14:16:50 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume + window is on gdk_display - use that instead of segfaulting. + +Thu May 4 02:04:46 2000 Tim Janik + + * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are + broken and require an empty arg, give it to them. + +Fri Apr 28 19:34:32 2000 Tim Janik + + * gtk/gtklabel.h: indentation fixes. + +2000-05-02 Tor Lillqvist + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to + draw too narrow or too low arcs, they seem to fail, at least with + some display drivers. + + * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR. + + Large changes to the Win32 backend, partially made necessary by + the changes to the backend-independent internal + structures. Attempts to implement similar backing store stuff as + on X11. The current (CVS) version of the Win32 backend is *not* as + stable as it was before the no-flicker branch was merged. A + zipfile with that version is available from + http://www.gimp.org/win32/. That should be use by "production" + code until this CVS version is usable. (But note, the Win32 + backend has never been claimed to be "production quality".) + + * README.win32: Add the above comment about versions. + + * gdk/gdkwindow.c: Don't use backing store for now on Win32. + + * gdk/gdk.def: Update. + + * gdk/gdkfont.h: Declare temporary Win32-only functions. Will + presumably be replaced by some more better mechanism as 1.4 gets + closer to release shape. + + * gdk/makefile.{cygwin,msc}: Update. + + * gdk/win32/*.c: Correct inclusions of the backend-specific and + internal headers. Change code according to changes in these. Use + gdk_drawable_*, not gdk_window_* where necessary. + + * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not + our old DND. + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try + to interpret single characters as UTF-8. Thanks to Hans Breuer. + Use correct function name in warning messages. + + * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the + GSourceFuncs gdk_event_prepare and gdk_event_check. + (gdk_event_get_graphics_expose): Do implement, use + PeekMessage. Thanks to Hans Breuer. + (event_mask_string): Debugging function to print an GdkEventMask. + (gdk_pointer_grab): Use it. + + * gdk/win32/gdkfont-win32.c: The Unicode subrange that the + (old) book I used claimed was Hangul actually is CJK Unified + Ideographs Extension A. Also, Hangul Syllables were missing. + Improve logging. + + * gdk/win32/gdkgc-win32.c: Largish changes. + + * gdk/win32/gdkim-win32.c (gdk_set_locale): Use + g_win32_getlocale() from GLib, and not setlocale() to get current + locale name. + + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to + gdkwin32.h, similarily as in the X11 backend. + + * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix, + assignment was used instead of equals in if test. Thanks to Hans + Breuer. + + * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of + the X11 version. + + * gdk/win32/makefile.{cygwin,msc} + * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the + path to the Win32 headers that works also with the mingw compiler. + + * gtk/gtkstyle.c: Include . + +2000-04-26 Havoc Pennington + + * gtk/gtklabel.c (gtk_label_get_text): Add this function, + replacing the broken gtk_label_get () + +2000-04-15 Havoc Pennington + + * gdk/gdkdnd.h: clean up enum format, remove extra comma, + this keeps scanner scripts from getting confused. + + * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the + data, rather than void + +2000-04-15 Tor Lillqvist + + * gtk/gtkclist.c (gtk_clist_motion) + * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event + with is_hint FALSE, get x and y from the event. They used to be + used uninitialised. The Win32 backend never sends motion events + marked as hints. This for instance fixes the annoying file and + font selector behaviour in the Win32 version. + +2000-04-14 Tor Lillqvist + + * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and + gtk_private_n_signals variables, they are used by some software, + sigh. + + * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the + installation directory from the Registry, where the installer + should have put it. + +Fri Apr 7 17:19:27 2000 Owen Taylor + + * gdk/x11/Makefile.am: Fix problem with installation directory for + gdkx.h + + * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago + so that when selecting menus with the + mouse, the first item will not be selected, but when selecting + with an accelerator, or navigating left-right on a menubar with + the menus popped up, the first item will be selected. + +2000-04-05 Dan Damian + + * configure.in: Added "ro" to ALL_LINGUAS. + +Wed Apr 5 00:08:36 2000 Owen Taylor + + * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy + indentation. + + * Makefile.am (EXTRA_DIST): Fix typo. + + * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk + to catch gdkconfig.h + + * gtk/gtkitemfactory.c: Added FIXME. + +2000-03-30 Jonathan Blandford + + * gtk/gtkpaned.c (gtk_paned_get_position): oops. + s/return_if_fail/return_val_if_fail/g and add a return value. + +Mon Mar 27 20:56:14 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up + merge slipup. + + * gdk/gdkinput.h: Fix missing line from merge. + +Mon Mar 27 20:39:49 2000 Owen Taylor + + * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h + instead of gdkprivate.h. + +Sun Mar 12 15:19:24 2000 Owen Taylor + + * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix + parent class to correctly be GtkDialogClass. + +Thu Feb 24 23:58:21 2000 Owen Taylor + + * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of + toplevel windows and their immediate children by their parents, + since the size of toplevel windows is out of our immediate + control and we don't get any real benefit from trying to track + this size for clipping. + + * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag + for input_only windows. + + * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag + to fix some hacks and make sure that we don't try to set the + background of input only windows. + +Thu Feb 24 18:11:46 2000 Owen Taylor + + * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for + the _really_ internal stuff, and leave gdkprivate.h for the fake private + stuff that we've traditionally exposed. + + * gdk/**.c: Use gdkinternals.h where appropriate. + + * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h + not include gdkprivate-x11.h, move all stuff of conceivable public + interest into gdkx.h; keep all really private stuff in + uninstalled header gdkprivate-x11.h. + + * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to + image->image_put on windows through a new function _gdk_window_draw_image() + to allow us to do backing store for images. (Sort of ugly) + + * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics + contexts locally so that we can offset them properly when drawing + onto backing pixmaps. + + * gdk/gdkinput.h: Reindented + + * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background + pixmap or color for the window, so we can properly initialize + our double-buffer pixmaps, and also so that we temporarily set + a background of None while scrolling. + + * gdk/gdkregion.h: Revise region boolean operators to have an + interface that is actually convenient - switch from creating new + regions on every op, to "methods" that modify existing regions + (A = A OP B). 3 argument forms which allow dest == src, would also + be possible, but the current interfaces seem to map nicely + onto what needs to be done. (There is quite a lot of region + code in GDK now.) + + * gdk/gdkregion.h: Add constructor from rectangle and a copy + operator. + + * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c, + gdkpoly-generic.h: Copy region code from Xlib, switch it over + to 32 bit coordinates, modify it to be mostly GTK+ style + and to have interfaces that match gdkregion.h. + + * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for + double-buffered drawing. gdk_window_begin_paint_{rect,region}() + create a backing pixmap and redirect all drawing to + that backing pixmap until a matching gdk_window_end_paint(). + + * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c: + Create a special drawable class for GtkWindow's that + redirects the drawing to the backing pixmap as necessary + and then calls the real operations in _gdk_windowing_window_class. + + * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c: + Store invalid region for each window. Generate expose events for invalid + region in an idle. This replaces both the expose compression + and the redrawing queuing in GTK+. It is both more efficient and + simpler than either one individually and far more so then the + combination. + + * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h: + Emulate 32 bit coordinates for windows with 16 bit coordinates + by offsetting drawing, guffaw scrolling techniques and + mapping/unmapping child windows as necessary. + + * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes, + where, when invalid regions are processed, the region is stored, + and if expose events come in that are detectably duplicate + the processed exposes (by comparison of event serial numbers), + the stored region is subtracted out of those exposes. + + * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of + regions newly exposed when scrolling or resizing windows. + This, combined with forcing processesing of queued invalidated + regions, gives nice flicker-free scrolling. + + * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of + invalidated regions after every scroll. + + * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate + emulation in GDK. Its, for all practical purposes just a + GtkViewport/GtkFixed hybrid now. + + * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11 + (16-bit) structures as necessary instead of just casting. + + * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code + in terms of the structures from gdkregion-generic.c, using appropriate + offsets from GDK to X11 coordinates. Cache clip mask and + origin and ts origin locally and only flush to the server + when drawing, to avoid constantly setting and resetting these + values when offsetting GC's for scrolling and backing pixmaps. + + * gdk/x11/gdkinput-x11.c: Fix leak of axes structures. + + * gtk/gtkcontainer.c: Call process_all_updates at end + of resizing to reduce flicker. (Avoids having redraw + lag arbitrarily behind resize under some circumstances) + + * gtk/gtkentry.c: Remove old backing store code, and simply take + advantage of the new backing store capabilities of GDK. + + * gtk/gtkmain.c: Simple implementation of widget backing + store - simply push a paint while handling each expose. + (Should really be configurable widget for widget.) + + * gtk/gtkwidget.c: Remove all the old complicated redraw + code, and simply invalidate the GDK windows from + gdk_window_queue_clear(), etc. (Sigh, so much carefully + debugged complexity ... gone to the winds.) + + Remove all the code for suppressing expose events while + resizes are pending; this isn't needed since the invalid + areas won't be processed until after the resizes are + processed, since they are in a lower priority idle. + +Thu Feb 24 15:37:41 2000 Owen Taylor + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width + and height of dest rectangle for non-intersecting rectangles. + +Sun Feb 20 16:47:31 2000 Owen Taylor + + * gtk/gtkwidget.h: Make GtkAllocation just a typedef + for GdkRectangle. + +Sun Feb 20 11:27:00 2000 Owen Taylor + + * gdk/gdk{events,image,private,types,window}.h + gdk/x11/gdkinputprivate.h: Change all coordinates + from int16 to int. Also, Change width and height from + unsigned to signed to avoid all the stupid C + signedness bugs. + +Sat Feb 19 12:01:53 2000 Owen Taylor + + * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): + Use gdk_drawable_get_depth instead of gdk_drawable_get_visual. + Add some more detailed checking. + + * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth): + New function to retrieve the depth of a drawable. + + * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth + field, reorder fields to save memory. + +Mon Dec 13 14:06:03 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion + of the background image instead of scaling the background down to + a line. + + * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious + which temporarily set slider to wrong size. + + * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to + queue_clear(). + +Wed Nov 17 18:36:05 1999 Owen Taylor + +2000-03-23 Jonathan Blandford + + * gtk/gtkpaned.c (gtk_paned_get_position): add getter. + +2000-03-17 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c: Remove the #ifndef + USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage. + + * gdk/win32/gdkfont-win32.c + * gdk/win32/gdkproperty-win32.c + * gdk/win32/gdkselection-win32.c + * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are + now declared such. + +Wed Mar 15 02:59:38 PST 2000 Manish Singh + + * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic + +Mon Mar 13 18:37:55 2000 Owen Taylor + + * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty() + is called without trapping X errors. + +Fri Feb 25 10:48:53 2000 Owen Taylor + + * gtk/gtkrc.*: Fix problem where stray '"' characters found their + way into the fontset lists. + +Tue Feb 22 08:52:52 2000 Tim Janik + + * gtk/gtkthemes.h: add extern "C" scope. + +Mon Feb 21 20:16:42 2000 Lars Hamann + + * gtk/gtkclist.c: applied patch from Guy Harris + to make appends to the list constant. (gtk-guy-990901-0.patch) + +Mon Feb 14 22:50:10 2000 Tim Janik + + * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal() + for the typename hash table. + +Mon Feb 14 15:01:23 2000 Owen Taylor + + * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks + to make sure we never divide by zero. + (Problem pointed out by Michal Jaegermann ) + +Mon Feb 14 12:29:38 2000 Owen Taylor + + * gtk/gtkfontsel.c: Apply patch from + SHIRASAKI Yasuhiro to make font selector work a little + better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.) + + Also, some cleanups in atom handling. + +Sun Feb 13 08:02:21 2000 Tim Janik + + * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer, + not GtkWidget. + +Fri Feb 11 02:19:32 2000 Tim Janik + + * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): + * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): + * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some + more guint wrap-around bugs before going to bed. + +Thu Feb 10 16:16:35 2000 Tim Janik + + * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against + guint wrap arounds in allocation.width. + + * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking + process untill we fit the allocation given. + +Tue Feb 8 09:38:29 2000 Tim Janik + + * gtk/gtkwidget.c: + (gtk_widget_unrealize): guard widget access with ref/unref + around signal emission. + (gtk_widget_hide): same here, but also check its destroyed + state before queueing a resize. + +Tue Feb 8 03:05:55 2000 Tim Janik + + * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead + of gtk_default_insensitive_bg as insensitive base color. + + * gtk/gtktext.c (gtk_text_style_set): set the background color according + to the widget's state. + (gtk_text_realize): same here. + (gtk_text_state_changed): same here. + (draw_bg_rect): compare background color against base[] from + GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL. + +Mon Feb 7 04:01:55 2000 Tim Janik + + * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when + grabs are active, unless a delete event is send to the toplevel + of the currently grab holding widget. + +Sun Feb 6 10:13:15 2000 Owen Taylor + + * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove + debugging g_print's. + +Fri Feb 4 15:54:54 2000 Owen Taylor + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't + ever make the scrolled-window requisition ever depend on the + visibility state of the scrollbars for the AUTOMATIC policy. + This breaks the GTK+ requisition model, and causes loops. + +Fri Feb 4 15:09:12 2000 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for + the default font to avoid problems with XFree86-4.0 where the + default charset is iso10646-1, not iso8859-1. + +Thu Feb 3 14:58:48 PST 2000 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release) + + * gtk/Makefile.am: minor cosmetic consistency tweak + +Thu Feb 3 14:46:01 2000 Owen Taylor + + * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set + the activate_time to 0, so that we handle a quick + press/release press/release properly and don't suppress + the second release. (Red Hat bug #7545) + +Wed Feb 2 22:25:17 2000 Tim Janik + + * gtk/gtkctree.c (row_delete): + (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy + bugs with destruction notifier, *always* update internal + structures *before* calling user code. + +Sun Jan 30 20:10:52 2000 Lars Hamann + + A few more fixes for bug #5487, #2051, #2677. + * gtk/gtkclist.c : + (gtk_clist_button_press): Reset clist->anchor to -1 if event->type is + not GDK_BUTTON_PRESS. + (resync_selection): resync only if selection_mode is + GTK_SELECTION_EXTENDED + * gtk/gtkctree.c (resync_selection): same here + +Sun Jan 30 12:29:20 2000 Owen Taylor + + * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for + gdk_drag_get_selection() and gtk_menu_detach(). + + [ From Jeroen Ruigrok/Asmodai ] + +Sat Jan 29 10:11:56 2000 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_size_request): + page->tab_label can be NULL. + +2000-01-25 Havoc Pennington + + * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative + arg is boolean + + * gdk/gdkselection.c (gdk_selection_owner_set): return boolean + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean + + * gdk/gdkproperty.c (gdk_property_get): return boolean + + * gdk/gdkinput.c (gdk_input_set_mode): return boolean + + * gdk/gdkim.c (gdk_im_ready): return boolean + + * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg + + * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild + glib clash, should fix glib) + + * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg + (gdk_get_show_events): return gboolean, and canonicalize + to TRUE/FALSE + + * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the + colormap is private + (gdk_colors_alloc): gboolean whether to be contiguous + (gdk_color_equal): return gboolean since we are a predicate + and not a qsort() (this looks semi-wrong due to glib breakage, + IMO glib should be fixed) + + * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg + (gdk_get_use_xshm): return gboolean + (gdk_pointer_is_grabbed): return gboolean + + * gdk/gdk.h: Change prototypes to match all the above changes, + and re-run egtk-format-protos as required. + +Fri Jan 28 12:28:17 2000 Owen Taylor + + * gtk/gtkctree.c (resync_selection): + * gtk/gtkclist.c (resync_selection): + + Return immediately if clist->drag_pos < 0. This is a workaround + for the corrupt state that the clist gets into when a + GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press(). + + Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel. + + * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized + variable from recent commit. + +Thu Jan 27 15:22:09 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit. + +Thu Jan 27 18:00:55 2000 Tim Janik + + * gtk/Makefile.am: prefix all autogenerated source that get build in + $(srcdir) with $(srcdir)/, so make doesn't assume they got generted + in builddir. since we subsequently cd into srcdir for autogeneration, + the paths have to be stripped from the target file names, thusly we + use $(@F) as target names now. + put a comment about configure.in's --disable-rebuilds option, + which can be used for non-writable source directories, for development + setups though, srcdir has to be *writable*. + +hu Jan 27 00:15:03 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions): + Finish the job of allowing event to be NULL. + (Fixes bug #4283, reported by Chris Blizzard) + + * gtk/gtkentry.c (entry_adjust_scroll): When calculating + things so that the cursor appears on screen, properly + take into account INNER_BORDER. + (Fixes bug #4754, reported by Antonio Campos) + +Wed Jan 26 23:12:28 2000 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_map): Don't + show the tab_label unless it itself is visible. + + gtk/gtknotebook.c (gtk_notebook_size_request): + Do a better job of making sure that the visibility + of the tab label corresponds to whether it should + be mapped or not. + +Wed Jan 26 21:17:03 2000 Owen Taylor + + * gtk/gtkoptionmenu.c (gtk_option_menu_position): + Use the requisition, not the allocation, since the + allocation has not necessarily been computed yet. + (Pointed out by Eugene Osintsev) + +Wed Jan 26 19:44:25 2000 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_new): Dont' set + style/base[GTK_STATE_INSENSITIVE] both to + gtk_default_insensitive_bg! + (Bug #2187, reported by Jonathan Blandford) + + * gtk/gtkaccelgroup.c (gtk_accelerator_valid): + Add Alt_L, Alt_R to list of invalid accelerators. + (Bug #3736, reported by Vlad Harchev) + +Wed Jan 26 19:01:56 2000 Owen Taylor + + * gtk/gtkfilesel.c (open_ref_dir): Fix several + bugs which occured after an attempt to open + invalid home directory left cmpl_state->reference_dir == NULL. + + - completion on files in home directory didn't work + - completion on an empty string caused segfault + + (Bug #3678, reported by Steve Ratcliffe) + + * gtk/gtkscale.c (gtk_scale_get_value_width): Fix + cut and paste error that was causing scales to + be incorrectly positioned. + (Bug #2956, + patch from Steve Ratcliffe ) + +2000-01-27 Shirasaki Yasuhiro + + * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs + when checking for dcgettext, if we've found we needed + it for dgettext. ++ +Wed Jan 26 18:06:07 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore + queue_clear on NO_WINDOW widgets during a reparent, + since at that point the window and widget heirarchies + are out of sync. This stops crashing in some cases + (the scrolled window reparent test, for instance), and + _probably_ won't cause drawing errors. + + * gtk/testgtk.c: Make the reparenting-a-scrolled-window + test do what it was supposed to do and be robust against + window closings, etc. (Bug #2443) + +Wed Jan 26 16:56:54 2000 Owen Taylor + + * gtk/gtkentry.c: Fix return values on mouse events. + (Bug #2686, Sky ) + + * gtk/genmarshal.pl: Fix up handling of FOREIGN. + (pointed out by George Lebl) + + * gdk/gdkcolor.c (gdk_color_copy): Made const-safe. + (From Ettore Perazzoli ) + +Mon Jan 24 10:44:48 2000 Owen Taylor + + * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle + clicks between rows or outside calender area correctly. + (Patch from Damon Chaplin) + + * gtk/gtkclist.c (gtk_clist_set_row_data_full): + * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): + Call destroy function when overwriting existing data. + (Pointed out by Damon Chaplin) + +Tue Jan 25 09:55:41 2000 Owen Taylor + + * gdk/gdk.c: Remove useless #include of , + which was causing problems on various systems with Xmu. + This hasn't been needed for a very long time. + (Fixes #1185 3167) + +Sun Jan 23 22:27:36 2000 Owen Taylor + + * gdk/gdki18n.h: Include when defining + gdk_isw* in terms of is* as a fallback. + (Bug #4106 - Dan Winship ) + +Sun Jan 23 22:12:36 2000 Owen Taylor + + * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't + realize the widget when it is size allocated! + (old, old bug) + + * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed): + Removed unused call to gdk_window_get_size() that + showed up when the above was fixed. + +Sat Jan 22 15:44:30 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_reparent): Correctly + fix up widget->window when the widget is a + NO_WINDOW container widget. + +Sat Jan 22 12:40:48 2000 Owen Taylor + + * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite + to account for the fact that feof() does _not_ + return TRUE on errors, and thus avoid infinite loops + when trying to use gdk_pixmap_create_from_xpm() + on unreadable values. + +Fri Jan 21 18:32:43 2000 Owen Taylor + + * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/. + +Fri Jan 21 16:24:08 2000 Owen Taylor + + * gdk/gdkgc.c (gdk_gc_set_dashes): Change from + gdk_gc_set_dashes to take gint8 instead of gchar to + make it clearer that it is _not_ a NULL terminated string. + + * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c + gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch] + gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string + arguments. + +Thu Dec 30 04:51:05 1999 Tim Janik + + * gtk/gtkvscale.c (gtk_vscale_pos_background): + * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the + background size relative to our allocation, guard against small + allocations, we may have not yet been size allocated. + +Thu Dec 2 10:59:14 1999 Owen Taylor + + * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3, + not just version == 3. We implement all 3 + most of 4 - + (we don't support matching text/plain;charset=iso-8859-1 + to a dest that expects text/plain). We'll still advertise + 3 to be safe, but any client implementing version >= 3 + must interoperate with 3. + +Tue Mar 14 11:53:31 2000 Owen Taylor + + * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground, + background and gc members, add a warning in gtk_tooltips_set_color() + indicating that this function is deprecated. + +Thu Mar 9 22:10:56 GMT 2000 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update: + - Minor cleanups (Emmanuel, me) + - New questions: + I need to add a new signal to a GTK+ widget. Any idea? (timj) + How can I retrieve the text from a GtkMenuItem? (timj) + How do I validate/limit/filter the input to a GtkEntry? (me) + Memory does not seem to be released when I free the list + nodes I've allocated (timj) + +2000-03-07 Tor Lillqvist + + * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes: + (gdk_win32_gdi_failed) New function for reporting errors from GDI, + for which it is no use to call GetLastError onWin9x. + (gdk_other_api_failed) New function, for general error + reporting without calling GetLastError. + (gdk_win32_api_failed) OTOH, this function always calls + GetLastError. (gdk_win32_last_error_string) Remove this function, + GLib has the equivalent now. + + * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to + call them with function name, file name and line number in the + arguments. + + * gdk/win32/*.c: Use the new macros for reporting errors from GDI + functions. + + * gtk/gtk.def: Add some missing entry points. + + * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and + gtk_paned_set_gutter_size, which don't exist any longer, as void. + + Fixes by Hans Breuer: + + * gdk/makefile.msc: Update for debugging. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake + implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or + PS_DASHDOTDOT or PS_DASH styles depending on the number of entries + in the dash_list. + + * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in + the x11 backend. + + * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro. + + * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h. + +2000-03-04 Tor Lillqvist + + * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store + just pixel value of background colour. + + * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function + containing code snippet previously duplicated in a couple of + places. + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use + gdk_colormap_color. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate + GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate + events for autorepeated Shift, Control and Alt keys. Use + gdk_colormap_color. + + * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the + pointer is inside the window the cursor of which we are setting, + call SetCursor immediately. + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: If we don't have the build number stamp + file, use zero. + + * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and + gtk_paned_set_gutter_size as empty. + + * gtk/gtk.def: Remove gtk_paned_set_gutter_size. + +Tue Feb 29 13:10:00 GMT 2000 Tony Gale + + * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h + gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c + docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml + docs/gtk_tut.sgml docs/gtk.texi TODO: + + Spelling/grammar fixes from Martin Buchholz + +Sat Feb 26 11:46:25 GMT 2000 Tony Gale + + * gtk/gtkcalendar.c: Implement num_marked_dates, + and don't emit mutiple day_selected signals on + month_prev. + +2000-02-25 Jonathan Blandford + + * docs/make-todo (lineno): let title and logo be configurable so + that GNOME can use this script too. + + * TODO.xml: added logourl and a title + +Fri Feb 25 11:12:00 2000 Owen Taylor + + * TODO.xml: Added some UI items, and an explanatory + comment at the top of the file. + +Thu Feb 24 09:07:28 2000 Tim Janik + + * TODO.xml: some updates, added abunch of new entries. + a note for those fiddeling with this file, when done + with it, invoke: + $ ./docs/make-todo TODO.xml >/dev/null + and correct output errors before comitting changes. + +Wed Feb 23 22:59:50 2000 Owen Taylor + + * TODO.xml: Added XML-structured TODO file. + * docs/make-todo: python script to turn TODO.xml into + pretty XML output. + +2000-02-23 Jonathan Blandford + + * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to + the function to let it draw the seven dots, instead of the old, + much maligned, method. + (draw_dot): New function to draw a dot. + + * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation + to draw the handle inside the border width as opposed to outside. + Use paint function instead of gdk_draw_point. + + * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation + to draw the handle inside the border width as opposed to outside. + Use paint function instead of gdk_draw_point. + + * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu): + Change indenting to be more GTK like. + +Wed Feb 23 10:54:14 GMT 2000 Tony Gale + + * docs/gtk_tut.sgml: New section on GtkCalendar + * examples/calendar: Update example code + +Tue Feb 22 13:54:12 GMT 2000 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +2000-02-19 Anders Carlsson + + * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE + to prevent the scroll event to be propagated upwards. + +Fri Feb 18 14:37:29 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove + OwnerGrabButtonMask from button entries for + GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE. + + * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL + to the event mask (which will result in button/press release + being added to the event mask on Unix) so scrolling works + for layouts in scroll windows. + + * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK. + + Patch from Anders Carlsson to add + a scroll event. + + * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel + scrolling to the "Test Scrolling" part of testgtk. + + * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal. + + * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched + it against GDK_SCROLL. + + * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new + way of mouse wheel scrolling. + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise. + + * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise. + + * gtk/gtkmain.c: Removed previous mouse wheel hack. + + * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in + gdk_event_mask_table. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added + GdkEventScroll handler. + + * gdk/gdkevents.h: Added GdkEventScroll structure. + +Thu Feb 17 17:10:12 2000 Owen Taylor + + * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford + and Anders Carlsson to change the Paned widgets so that they + can be dragged from anywhere along the length. Also change + the way that this is drawn to make this apparent. + + * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch + from George Lebl to check that option_menu->menu is present + before getting history. + +2000-02-14 Tor Lillqvist + + * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments + before the assertion for non-NULL segment list. + + * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values): + Seems that pattern brushes *must* be 8x8 pixels! At least on my + machine, but it might be display driver dependent. Sigh, so make + sure the stipple is that size. Does Windows suck or what? + + * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few + places. + +2000-02-13 Havoc Pennington + + * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init + refcount to 1 + (gdk_cursor_new): init refcount to 1 + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1 + +2000-02-13 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter + so that we don't have to do unnecessary settings to the HDC. + + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of + gdk_gc_predraw. + + * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where + the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct + GDI paths, call WidenPath to get the outline of the stroken path, + and then fill the outline (with the brush that was built from the + stipple). + + * gdk/win32/gdkgc-win32.c: Factor out common code from + _gdk_win32_gc_new and gdk_win32_gc_set_values into + gdk_win32_gc_values_to_win32values. Use correct colour for + SetBkColor() (Until now the code actually used a random colour in + the call to SetBkColor()... but that didn't show up as not many + GDI APIs use the background colour. Pattern (opaque stippled) + brushes do.) + + * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string, + gdk_win32_api_failed): New functions for error logging. + + * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro + WIN32_API_FAILED to call them, passing function or file name and + line number. + + * gdk/win32/*.c: Use the WIN32_API_FAILED macro. + + * gdk/win32/gdkprivate-win32.h: Store just the pixel values from + GdkColor for foreground and background in GdkGCWin32Data. + + * gdk/makefile.cygwin: Link in the resource object separately. + + * gdk/win32/rc/gdk.rc + * gtk/gtk.rc (New file) + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Update build number in DLLs automatically, + as in GLib. + +Sun Feb 13 08:54:45 2000 Tim Janik + + * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/. + * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): + * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): + * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the + parameters given and cursor->ref_count. coding style fixups. + + * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer, + not GtkWidget. + + * gtk/*.h: applied patch from Mathieu Lacage to + fix up widget macros and add _GET_CLASS() variant. + + * gtk/*.c: some GtkType fixups. + +2000-02-09 Tor Lillqvist + + * gdk/win32/gdkproperty-win32.c + * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW + were reversed. + +2000-02-04 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use + g_filename_to_utf8 to convert the font names Windows gives us from + whatever is the default codepage to UTF-8. + (gdk_font_load_internal) Use g_filename_from_utf8 for conversion + in the other direction. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste + error in debugging output. + +2000-02-02 Tor Lillqvist + + * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width + and height parameters to gdk_window_clear_area(). Not minus one. + +Wed Feb 2 11:58:05 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity + checks if the widget passed to gtk_drag_get_data() was not the + dest widget. + +2000-02-01 Tor Lillqvist + + * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and + g_filename_from_utf8 functions (which were added a moment ago to + GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed + size buffers. + + gtk_file_selection_get_filename returns the filename in the C + runtime encoding. It calls g_filename_from_utf8, but copies the + returned string to a static buffer, which is returned. I think + this is better than returning the result from g_filename_from_utf8 + directly, which would mean all apps that use it would have to free + the return value. Or should this function care about this issue at + all? Maybe a new function with clearly defined semantics. + + * gtk/gtkfilesel.h: Add comment about + gtk_file_selection_get_filename returning the filename in the C + runtime's encoding. + + * README.win32 + * gdk/gdk.def + * gdk/makefile.{cygwin,msc} + * gtk/gtk.def: Updates. + + * gdk/gdkcursor-win32.c: Initialise refcount. + +2000-01-31 Yuan-Chung Cheng + + * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS. + +2000-01-30 Havoc Pennington + + * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of + destroy + + * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned + + * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then + implemented in platform-specific code + + * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c + + * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an + underscore in front + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy): + put an underscore in front + + * gdk/gdkcursor.c: new file, implements + gdk_cursor_ref/gdk_cursor_unref + + * gdk/gdkcursor.h: Refcount GdkCursor + + * gdk/gdkcompat.h (gdk_cursor_destroy): compat + +2000-01-29 Tor Lillqvist + + * gdk/gdkwindow.h + * gdk/gdkpixmap.h: Remove prototypes for renamed functions. + +Tue Jan 25 11:43:21 2000 Owen Taylor + + * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix + structures to properly inherit from GtkWidget not GtkBin. + +Sun Jan 23 20:28:24 2000 Owen Taylor + + * gtk+.spec.in: Added lib/gtk+/include/* to %files + (bug #5178 - Peter Wainright) + + * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h + so that it will be installed. + (bug #4889 - "david d `zoo' zuhn" ) + +Fri Jan 21 16:29:28 2000 Owen Taylor + + * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument + for the GtkStyleClass vtable const. + + * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc + take a const string argument like GtkTranslateFunc. This will + require changes in use code. + +2000-01-19 Tor Lillqvist + + * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct + semantics (to mimic the X11 backend, which just calls XClearArea) + is to check for zero width (and height), and in that case use the + window's width minus x (height minus y). This fixes for instance + some redraw problems with gtkclist, which were easily noticeable + in the gtk file selection widget. + + (gdk_window_new): Don't set WS_EX_TOPMOST for dialog + windows. + +2000-01-13 Tor Lillqvist + + * configure.in + * gdk/Makefile.am + * gdk/x11/Makefile.am + * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright + (bug #5177). + * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown + out later. + +2000-01-09 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore + WM_MOVE for iconified or invisible windows. This fixes various + problems when minimising windows. Thanks to Bernd Herd. + +2000-01-05 Tor Lillqvist + + * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the + backend's draw_lines method, not draw_points. + +2000-01-02 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from + before Owen's reorganisation: Don't have queued_events and + queued_tail statics in this file, but use gdk_queued_events and + gdk_queued_tail. This makes exposure event compression work again. + + (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't + seem to be needed? + +1999-12-30 Tor Lillqvist + + * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include + gdkkeysyms.h to get the GDK_* keysym constants that are needed by + gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case() + doesn't do anything. + + * gdk/gdk.def: Add gdk_xid_table_insert. + + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkevents-win32.c + * gdk/win32/gdkinput-win32.c + + * gdk/win32/gdkwindow-win32.c: Remove the superfluous + extension_events field in the GdkWindowWin32Data struct. Use only + the extension_events field in GdkWindowPrivate. Previously one was + set, and the other one tested, which broke tablet + functionality. Thanks to Keishi Suenaga for pointing this out. + +1999-12-18 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents): + When handling a single character (text length == 1), don't handle + it as if it was UTF-8. + +1999-12-11 Tor Lillqvist + + * Makefile.am: Distribute README.win32. + + * gdk/Makefile.am + * gdk/win32/Makefile.am: Distribute Win32 files. + + * gdk/makefile.msc: New file. + + * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement + after label). + + * gdk/gdkprivate.h: Must mark also gdk_error_warnings and + gdk_error_code as GDKVAR, as they are referred outside GDK. + + * gdk/win32/makefile.msc: Update. + + * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More + tweaks. Check only if at least one of those Unicode subrange bits + we care for is set. If no code page bits are set, guess (wildly) + based on the charset. + + * gdk/win32/gdkinput-win32.c: Remove debugging leftover. + + * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is + non-NULL. + + * gtk/gtkdnd.c + * gtk/gtklayout.c + * gtk/gtkplug.c + * gtk/gtkselection.c + * gtk/gtksocket.c + * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as + appropriate. There must be a cleaner way to handle this? + + * gtk/gtkrc.c: Must include windows.h on Win32. + + * gtk/testgtk.c: No need to include gdkx.h. + + * gtk/makefile.cygwin: Correct invokation of genmarshal.pl. + +1999-12-07 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now, + the rbearing is set to the same as the width, but this should be + fixed. + +1999-12-06 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New + function. If Windows doesn't tell us what Unicode subranges a font + covers, guesstimate based on the codepages it covers. This will + hopefully help those Windows versions or fonts that don't give us + any useful Unicode subrange information with GetTextCharsetInfo. + Call this function in gdk_font_load_internal. + + * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc + minor changes. + +Fri Dec 3 14:09:50 1999 Owen Taylor + + * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history): + New function, long needed. + +Wed Dec 1 22:35:43 1999 Owen Taylor + + * gdk/gdkproperty.h x11/gdkproperty.c: Change + only_if_exists argument of gdk_atom_intern to + bool. + +1999-11-25 Tor Lillqvist + + * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): + Fix two copy&paste errors. + + * gdk/makefile.cygwin: Also rebuild DLL when the static archive in + win32 has changed. + + * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the + GdkWin32SingleFont struct. + + * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode + subranges of loaded fonts. Clear font signature first, in case + GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have + ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte. + + * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw): + Unoffset clip region. + +1999-11-23 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): set + event->any.window before calling filter functions. + +Fri Nov 19 10:34:41 1999 Owen Taylor + + * gtk/gtkgamma.h: Adapt cast macros to standard. + +[ Merges from 1.2 ] + +Tue Nov 16 10:15:54 1999 Owen Taylor + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_path): + If translation does not include a '/', use entire + translation instead of crashing. + +Sun Oct 31 22:21:11 1999 Tim Janik + + * docs/gtk_tut.sgml: + s/gtk_accel_group_attach/gtk_window_add_accel_group/. + +Sat Oct 30 09:09:09 1999 Owen Taylor + + * gtk/gtkselection.c (gtk_target_list_remove): Use + g_list_remove_link, not g_list_remove. + + [ From Geert Bevin ] + +Sun Oct 24 07:41:40 1999 Tim Janik + + * gtk/gtkclist.c (real_undo_selection): commented out g_print() + statement upon unselection (how the heck did that slip in?). + +Sat Oct 23 03:03:08 1999 Tim Janik + + * gtk/gtktext.c (gtk_text_freeze): + (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling + in frozen state (and aparently crashes). patch provided by Anders + Melchiorsen . + +Sat Oct 23 02:53:20 1999 Tim Janik + + * fix insensitive default/focus widget activation, + reported by Matt Goodall . + + * gtk/gtkwindow.c (gtk_window_key_press_event): + (gtk_window_activate_default): + (gtk_window_activate_focus): + return handled=FALSE for actiavtion of insensitive default + widgets. return handled=TRUE for activation of insensitive + focus widgets. don't activate in either case. + +Tue Oct 19 09:55:08 1999 Owen Taylor + + * gtk-config.in (lib_gtk): Switch order of @x_cflags@ + and $glib_cflags to match library order and in the + theory that an old version of GLib is more likely to + be in the include directory for X then vice-versa. + (Bug #2776) + +Tue Oct 19 09:46:49 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE + to determine the locale for fontsets, not LC_MESSAGES; + the user may want English messages with a handling + for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR + will still be broken) (Bug #2891) + +Tue Oct 19 20:36:42 1999 Changwoo Ryu + + * gtk/gtkrc.ko: Fixed the wrong number of "*"'s. + +Tue Oct 19 12:15:13 1999 Changwoo Ryu + + * gtk/gtkrc.ko: Changed the Korean default fontset. + +Fri Oct 8 02:32:47 1999 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug + where when scrolling to the left or top double exposes + were done, causing major slowdowns. + +Thu Oct 7 18:31:55 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset + names to lowercase and alphanumeric, before looking + them up. + + * gtk/Makefile.am: Install codeset variant gtkrc files + with normalized names. + +Thu Oct 7 22:52:42 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even + popup menus when the menu is already visible, but its parent + is still hidden, (happens after tornoff window got hidden). + +Thu Oct 7 11:09:55 1999 Owen Taylor + + * gtk/Makefile.am (install-data-local): Fix + a typo where gtkrc.vi_VN.tcvn5712 wasn't getting + deleted, causing error messages on install. + +Thu Oct 7 11:03:06 1999 Owen Taylor + + * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw + the handle as well, since we now sometimes ignore + exposes on the handle while resizing. + +Wed Oct 6 18:02:31 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid + extra g_free introduced in one of the last one or two + commits. + +Wed Oct 6 16:38:36 1999 Owen Taylor + + * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files + consistent, put each style that a gtkrc.* file creates + in a unique namespace, remove old files before installing. + +Wed Oct 6 14:31:16 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when + gtk_rc_init is called multiple times. (Yes, people who + do that have bugs in their code.) + +Tue Oct 5 11:36:57 PDT 1999 Manish Singh + + * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf. + Remove it since it's generated by the Makefile anyway + +Tue Oct 5 02:43:41 1999 Owen Taylor + + * gdk/gdkinputcommon.h (gdk_input_device_new): Free + device->info.axes for core pointer. + +Thu Sep 30 13:55:25 1999 Owen Taylor + + * gtk/testgtk.c (destroy_idle_test): Rename idle to + idle_id, to deal with obsolete, broken C libraries. + +Mon Sep 27 02:50:15 1999 Owen Taylor + + * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in + allocation->x/y twice! + + * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough() + consistent with gtk_vscale_pos_trough(). + +Sun Sep 26 19:44:34 1999 Owen Taylor + + * gtk/gtkcontainer.c (gtk_container_queue_resize): We may + be queueing a resize on a toplevel container between + the time we show it and when we map it. So, we need + to test GTK_WIDGET_VISIBLE() for toplevels, and only + use GTK_WIDGET_DRAWABLE() for child windows. + +Thu Sep 23 16:41:03 1999 Owen Taylor + + * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS + (fixes bug #2144) + +Fri Sep 24 00:51:45 1999 Tim Janik + + * gtk/gtkcontainer.c (gtk_container_queue_resize): check for + container DRAWABLE (instead of VISIBLE), so we don't queue + resizes on non-toplevel containers. + +Sun Sep 19 18:13:31 1999 Owen Taylor + + * gtk/gtkselection.[ch]: Make the data argument + const guchar *. + +Sat Sep 18 21:27:40 1999 Owen Taylor + + * gtk/gtkwindow.c: Try to behave sensibly if + the focus widget is the window itself. (Should + we allow this at all?) + +Fri Sep 17 09:57:15 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_set_sensitive): + * gtk/gtknotebook.c (gtk_notebook_set_scrollable): + * gtk/gtknotebook.c (gtk_notebook_set_show_border): + * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args + in prototypes and implementations consistent (Tomas Ogren). + + * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag + before the widget is unparented (reported by damon). + + * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char, + since we provide unsigned data anyways. + +Thu Sep 16 21:32:01 1999 Owen Taylor + + * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay + the call to gtk_tooltips_layout_text() until later. + + * gtk/gtktooltips.c (gtk_tooltips_draw_tips): + Call gtk_widget_ensure_style() before using the style. + +Wed Sep 15 02:52:19 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_event): Added workaround + for old widgets that don't propagate draws to all + children. (Namely gnome-dock for gnome-libs <= 1.0.16) + +Tue Sep 14 19:22:19 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent + for a redraw but just the widget that requested the resize. + +Tue Sep 14 18:29:47 1999 Tim Janik + + * gtk/gtkcontainer.c: added new widget level method + gtk_container_set_reallocate_redraws() and a GtkContainer flag + reallocate_redraws : 1 to reflect the setting, exported this through + the argument system as a boolean ::reallocate_redraws. + + * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws + on the widget because the allocation changes, do so as well for + widget->parent if the parent has reallocate_redraws set to TRUE. + with that containers requesting reallocation redraws get automatically + redrawn if their children changed allocation (this unfortunately + affects also other children that didn't change allocation, but we + cannot work around that before 1.3). + +Tue Sep 14 18:23:01 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width + _and_ height are >0 (not _or_). + + * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize() + instead of gtk_container_queue_resize(), which is a core gtk internal + function (must have been on crack when i queued that). + + * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so + we can check more reliably if we want to discard expose events. + * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING + flag. + + * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes, + we simply trust these events. for deciding whether to discard exposes, + check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING. + +Mon Sep 13 15:01:21 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore + queues of areas that are completely off screen. + + * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken + logic for handleboxes. + + * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity + check on width/height. + +Mon Sep 13 02:22:47 1999 Tim Janik + + * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements", + we are fine with using $@ the way we do (if we actually encounter + brokeness with $@ in VPATH builds because of additional path prefixes, + we need to use $(@F) actually). + +Mon Sep 13 01:34:53 1999 Tim Janik + + * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce + short lived bugs, that would allow language bindings to do surgeries + to our guts. + +Fri Sep 10 15:22:50 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo + where comparison was being done against an uninitialized + value causing intermittant results depending on + compiler flags. Also make it clearer that we aren't + ever initializing the child as 0x0 (though this will + be caught in gtk_widget_size_allocate()) + +Fri Sep 10 10:06:56 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_set_transient_for): Move + gtk_window_unset_transient_for() call after we do checks + involving the old transient parent. + [ From Lance Capser ] + +1999-09-07 Raja R Harinath + + * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create + an empty file. + +Mon Sep 6 00:11:56 1999 Lars Hamann + + * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has + no children. (Reported by: Chris Rogers ) + +1999-09-03 Raja R Harinath + + * gtk/Makefile.am (gen_sources): Improve VPATH builds. + `$@' is valid only in the build dir, not after we've done + `cd $srcdir'. Also use `test -f' instead of less portable + `test -e'. + +Fri Sep 3 15:59:56 1999 Owen Taylor + + * gtk/gtktext.c (correct_cache_insert): Rewrite + for simplicity, and hopefully correctness. + (Fixes bug #1322, which was a segfault when + on some insertions with the properties around + the insertion set up just wrong.) + + * gtk/gtktext.c (gtk_text_adjustment): When we receive + a "changed" signal, clamp the new value to the adjustment + bounds to avoid segfaulting if someone tries to change + the adjustment to a bogus value. (Bug #1795) + +Thu Sep 2 16:33:59 1999 Owen Taylor + + * gtk/gtkmain.c: Ignore unexpected destroy notifies + for children, for toplevel windows handle them + like delete_event. + + * gtk/gtkplug.c: Add an unrealize handler so that + we unref plug->socket_window when we are done + with it. + +Fri Sep 3 14:52:54 1999 Owen Taylor + + * gtk/gtktext.c (clear_area): Fix stupid signedness + problem that was causing background to sometimes + be misaligned. + +Fri Sep 3 12:26:33 1999 Owen Taylor + + [ Fixes pointed out by Ettore Perazzoli ] + + * gtk/gtkmenu.c (gtk_menu_position): Make + sure we never position menus with negative x, y, + since gtk_widget_set_uposition() can't handle that. + + * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): + Modify the positioning code a bit so that we always + put the top-left corner onscreen. (This is for + UI reasons, gtk_menu_position() now takes care of + gtk_widet_set_uposition() brokeness.) + +Fri Sep 3 03:06:30 1999 Tim Janik + + * gtk/Makefile.am: fixed up things for -jx, x > 1. + +Sun Sep 5 08:48:51 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the + RC style that is passed in. The lack of the ref + before was a bug. If people worked around this + bug, this will introduce a slight memory leak + in their code. The code should typically look like: + + rc_style = gtk_rc_style_new (); + [...] + gtk_widget_modify_style (widget, rc_style); + gtk_rc_style_unref (rc_style); + + * gtk/gtkwidget.c (gtk_widget_modify_style): Reset + the style if it was already set. + + * gtk/gtkwidget.c (gtk_widget_set_name): Only set the + style if it was set before. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * gtk/testgtk.c (main): Add a check to see if we + are being run from the correct directory and + to quit nicely if we are not. + + * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function + static. + +Thu Sep 2 23:00:03 1999 Tim Janik + + * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS. + + * gtk/gtkwindow.c: + queue resizes unconditionally (gtk_widget_queue_resize will figure + what to do if the window is not realized). + (gtk_window_move_resize): only recenter the window + for GTK_WIN_POS_CENTER_ALWAYS. + (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in + the same way as GTK_WIN_POS_CENTER. + +Thu Sep 2 22:39:27 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_reposition): check for the last position + with (!(info->last_flags & GDK_HINT_POS)) instead of + (!info->last_flags & GDK_HINT_POS). + + * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and + new_height unconditionally, because we use these values even if + !default_size_changed && !hints_changed. + comented the (default_size_changed || hints_changed) case with + respect to resize rejects from the window manager. + + * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values + in the zvt condition hack, since this includes the window hints, set + the hints after the handling_resize case. + + * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a + window is initially shown with to the geometry. + +Thu Sep 2 07:38:56 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): + s/size_changed/default_size_changed/g so i know what's + really going on (frying brain on smaller flame now). + +Thu Sep 2 05:47:47 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if + we have size_changed upon handling_resize. this is a gross + workaround for the broken zvt widget and should be removed in + 1.3 again (search for FIXME). + Owen provided an accurate comment for this: + + /* We could be here for two reasons + * 1) We coincidentally got a resize while handling + * another resize. + * 2) Our computation of size_changed was completely + * screwed up, probably because one of our children + * is broken. It's probably a zvt widget. + * + * For 1), we could just go ahead and ask for the + * new size right now, but doing that for 2) + * might well be fighting the user (and can even + * trigger a loop). Since we really don't want to + * do that, we requeue a resize in hopes that + * by the time it gets handled, the child has seen + * the light and is willing to go along with the + * new size. (this happens for the zvt widget, since + * the size_allocate() above will have stored the + * requisition corresponding to the new size in the + * zvt widget) + * + * This doesn't buy us anything for 1), but it shouldn't + * hurt us too badly, since it is what would have + * happened if we had gotten the configure event before + * the new size had been set. + */ + +Wed Sep 1 20:46:11 1999 Owen Taylor + + * gtk/gtkrc.c: deal properly with the fact that RC + style lists may include rc styles more than once. + + * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed + unused static function. + + * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a + stack of directories of RC files currently being + parsed and implicitely add them to pixmap path. + + This fixes a bug where the directory would get + appended then overwritten by pixmap_path declarations. + + (bug #1462, from Peter Wainright ) + + * gtk/gtkthemes.c (gtk_theme_engine_unref): Call + theme's exit function. (Patch from Peter Wainwright, + bug #1454) + + * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy): + Add a destroy() handler to take care of removing + group for menu item. (Fixes bug #1197) + + * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko + in warning message. + +Wed Sep 1 21:27:42 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server + roundtrip to figure window's width and height, since we know that + anyways from widget->allocation. + +Wed Sep 1 12:37:44 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_move_resize): Compute + the hints after we request the new size. + +Wed Sep 1 10:38:37 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_compute_hints): Removed + GTK_WIDGET_REALIZED() assertion - we can compute the + hints before we are realized. + + * gtk/gtkwindow.c (gtk_window_move_resize): Reorder + hint changing so that we have a value of hints_changed + when we decide whether to constrain the window size. + + * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix. + + * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups, + change back to G_MAXINT. + +Wed Sep 1 06:54:59 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize + new GtkWindowGeometryInfo, so fields like GdkGeometry geometry + contain uncluttered values. + (gtk_window_compute_hints): simply assert that window is realized + and that geometry_info is valid, since we rely on this anyways. + (gtk_window_constrain_size): major cleanups to the code. + if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height + for the base size, instead of the minimums. use 32767 as max width + and height (like in gtkwindow.c) instead of G_MAXINT. + +Wed Sep 1 04:41:25 1999 Tim Janik + + * cleaned up the GtkContainer.need_resize flag handling mess, we + only need to force resize requests when we were prematurely + realized, or our widget tree was modified when we were temporarily + hidden. handling these cases directly upon showing the window (i.e. + while the GdkWindow is still unmapped) avoids the need to wait for + a configure event response and therefore makes the GUI more snappier + and avoids blank windows during the roundtrip. + + * gtk/gtkwidget.c: + (gtk_widget_hide): + (gtk_widget_show): don't queue resizes on toplevels, they know how + to deal with matters. + + * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize + flag directly for not visible resize containers and spare us unecessary + signal emissions. + + * gtk/gtkwindow.c: + (gtk_window_realize): if we need to enforce premature size allocation, + queue a container resize so we are correctly resized later on. + (gtk_window_init): + (gtk_window_size_request): + don't freak around with the ->need_resize flag, + gtk_container_queue_resize() will care about that. + (gtk_window_show): + handle initial resizing issues here, we can handle matters better in + this place, especially since we know that our GdkWindow is still + unmapped. + (gtk_window_move_resize): + don't care about ->need_resize at all. + handle size changes properly that occoured while we waited for a + configure event. + +Tue Aug 31 15:58:46 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_set_uposition): + * gtk/gtkwindow.[hc] (gtk_window_reposition): + Move the hint setting code from gtk_widget_set_uposition + to here; set the hints so that we respect any previously + set geometry hints. + + * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't + change the window hints here or move the window here, + let that happen in gtk_window_move_resize(). + +Tue Aug 31 06:58:52 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due + to already queued resizes (and therefore redraws) on a widget, check + its anchestry as well. + + * gtk/gtkcontainer.c: + (gtk_container_queue_resize): clear resize widgets for resize + containers before aborting prematurely. this is especially important + for toplevels which may need imemdiate processing or their resize + handler to be queued. + (gtk_container_dequeue_resize_handler): added new internal function for + gtkwindow.c. + + * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a + configure event, take possible changes in window position into account + as well. + if we request a new window size, queue up a resize handler that will + last until the configure event response arrives. + combined the ->need_resize case (initial show) with the general size + (hints) changed case and added even more comments. + if !auto_shrink, only revert to the old allocation if the new size + is smaller than the current allocation. + +Tue Aug 31 11:55:20 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy, + gtk_window_set_geometry_hints + gtk_window_set_default_size): + When hints are set, queue a resize so that the hints will + be eventually reset on the toplevel. + + * gtk/gtkwindow.c (gtk_window_show): Use + gtk_window_compute_default_size(). Clear the need_resize flag + on the initail map so that we don't unnecessarily trigger the + resize code. + + * gtk/gtkwindow.c (gtk_window_move_resize): Split apart + into separate functions. Compare the hints we are setting + with what we set last time so that we can accurately + tell when we need to reset the hints. + + * gtk/gtkwindow.c (gtk_window_compute_default_size): New + function to figure out the size from requisition + and default_size. + + * gtk/gtkwindow.c (gtk_window_constrain_size): Function + from fvwm to constrain a size to the geometry hints. + + * gtk/gtkwindow.c (gtk_window_compare_hints): New function + to compare two sets of geometry hints. + + * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed + from gtk_window_set_hints(), just compute the hints, + don't set them. + + * gtk/gtkwindow.c (gtk_window_compute_reposition): Move + code from gtk_window_move_resize() to separate function, + rationalize a bit. + +Tue Aug 31 13:05:03 1999 Owen Taylor + + * gtkrc.h: Move the ref_count member out of the GtkRcStyle + structure into a new private structure. + + * gtkrc.c: Split GtkRcStyle into public/private. + In the private part, add a list of pointers to the + RcStyle lists this RcStyle participates in. + + * gtkrc.c: When a RcStyle is free, remove all + lists referencing it from the + realized_style_ht hash, and free those lists. + + * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call + gtk_rc_init(), since that adds the default styles + to the list of parsed RC files again. + + * gtk/gtkrc.c: Use gtk_rc_style_find() consistently. + +Thu Aug 26 14:14:42 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity + checks that ensure that a widget's allocation is at least 1 in width + and height. (GNOME note: this doesn't affect old panel code anymore, + because GtkSocket will request width and height of at least 1 since + Fri Jul 23). + + * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been + allocated yet (happens if the user realizes the window prematurely), + size request and allocate it. + (gtk_window_size_allocate): guard against guint underflows. + +Wed Aug 25 19:01:36 1999 Lars Hamann + + * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs + in gtk_built_sources, so gtk.defs gets built prior to all other + sources. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * gtk/Makefile.am: + invoke indent on gtkmarshal.*. + rewrote source generation rules, use COPYING as oldest source tag for + a piggyback rule to generate all sources from (don't touch it ;). + major cleanups, strip spaces on build rules for GNU Make. + + * gtk/genmarshal.pl: don't operate on hardcoded filenames but take + source and target files from commandline arguments. don't invoke indent. + +Sat Aug 21 14:07:36 1999 Lars Hamann + + * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize + notebook after switch to avoid drawing problems. + (Bug#856 Reported by: Theodore Roth ) + + (gtk_notebook_pages_allocate): don't map not visible tab_labels, + show them instead. + (Bug#1805 Reported by: Dave Cole ) + +Sat Aug 21 14:07:36 1999 Lars Hamann + + * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize + notebook after switch to avoid drawing problems. + (Bug#856 Reported by: Theodore Roth ) + + (gtk_notebook_pages_allocate): don't map not visible tab_labels, + show them instead. + (Bug#1805 Reported by: Dave Cole ) + +Wed Aug 18 09:20:10 1999 Tim Janik + + * gtk/gtkwindow.c: + we use window->need_resize from configure_event now, to indicate that + the gtkwindow should keep its allocation (e.g. because the user resized + the window through window manager handles). resize_count is now reliably + used to figure whether we got the allocation we requested from the + window manager. + configure events get queued as resizes now, the real stuff (size + computation and allocation) now only goes on in gtk_window_move_resize(). + GtkWindow's requisition now contains its *real* requisition (like all + other widgets), *not* taking usize into account. + geometry_info->last_{width|height} is now updated from set_hints() only + so it always contains the last hints we set for the window manager. + made some event handlers return TRUE instead of FALSE. + the overall code should be much more straight forward now, and the + significant code portions are accompanied by comments now. + (gtk_window_set_hints): + removed requisition argument and made it + fetch the requisition through gtk_widget_get_child_requisition. + we also don't move the gdkwindow here anymore, gtk_window_move_resize() + does that now. + (gtk_window_show): + ensure that the widget is realized before calling + gtk_container_check_resize() (and thus gtk_window_move_resize()), also + ensure that we got properly size requested and allocated before + realization. + (gtk_window_configure_event): + ignore plain window moves, or reallocate the widget tree through the + resize queue otherwise. + (gtk_window_move_resize): + mostly rewrote this function to figure window manager hints more + reliably, coalesce window moves and resizes to reduce configure events + and do actuall size allocations. + +Tue Aug 17 07:43:04 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets + that have a resize pending, because a redraw is already queued for them. + + * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal + hack to clear resize_widgets. + + * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets + for resize containers prior to size allocation. (this is also a bit + ugly, but avoids side effects for stopped emissions and is thus more + reliable). + (gtk_widget_unparent): removed disconnect call for clear_resize_widgets. + + * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this + function from gtk_tooltips_expose, as we connect to ::expose_event + *and* ::draw now. + +1999-08-18 Federico Mena Quintero + + * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity + checks. + (gtk_target_list_unref): Likewise. + + * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise. + +Tue Aug 17 15:47:07 1999 Owen Taylor + + * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar): + guard against division by zero. (Fixes bug #1339) + +Tue Aug 17 10:56:49 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_move_{forward,backward}_word): + Prevent the trivial leak of information of allowing + word motion when the entry is not visible. + +Tue Aug 17 10:28:52 1999 Owen Taylor + + * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate + modality to error dialog as well as confirmation dialogs. + (Bug #1803, reported by Rosanna Wing Sze Yuen) + +Wed Aug 11 01:04:57 1999 Owen Taylor + + * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor + tree->view_lines. + (gtk-guy-990611-3.patch: Guy Harris ) + + * gtk/Makefile.am (install-data-local): Solaris apparently + has various troubles with ln -f; use rm first instead. + (gtk-guy-990611-2.patch: Guy Harris ) + +1999-07-30 Raja R Harinath + + * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir, + use `cp' followed by `rm' (the `rm' was already there). + +July 30, 1999 Elliot Lee + + * configure.in: Fix autoconf warnings about cross compilation by + trying to provide sane defaults for AC_TRY_RUN. + * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir), + put them into $(srcdir) when generated. Also add a dependency of + gtksignal.h on gtkmarshal.h for -j builds. + * gtk/gtk(dnd,style,gamma).c: Minor warning fixes. + +Wed Jul 28 09:29:19 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main_iteration_do): Added missing + GDK_THREADS_{LEAVE,ENTER} pair. + (From Paul Fisher ) + +Fri Jul 23 01:00:15 1999 Tim Janik + + * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested + width and height are always >0 (owen). + +Fri Jul 23 00:00:47 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent + change that assured that a widget's allocated with and height are + always >1, since this breaks *buggy* panel code. unfortunately this + back-breaks the gimp's color selector. + + * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our + allocation is always >0 in width and height, before sending the + configure event; this is a *gross* hack to get the gimp back to work. + + * marked both cases with TODO-1.3 + +Wed Jul 21 15:47:39 1999 Owen Taylor + + * gtk/gtktext.c: Don't display wrap indicators when + text is not editable and word wrap is on. + +Wed Jul 21 08:21:40 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case + option menus here as they are not derived from menu shell, assure that + the option menu has a menu we can add items to. + +Tue Jul 20 23:29:48 1999 Tim Janik + + * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation-> + width/height to (gint) before calculations and check against < 0 to + avoid guint wraparounds. + +Sun Jul 18 00:35:49 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated + width and height is never zero. sanity check both dimensions against + 32767 and issue a warning if the allocation is greater than that. + +Wed Jul 7 15:03:30 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_events_pending): Unlock around call + to g_main_pending() as well. + +Wed Jul 7 14:59:01 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main_iteration): Unlock around + call to g_main_iteration() - since that will regrab + GTK+ lock to process events. + +Thu Jul 1 15:01:55 1999 Owen Taylor + + * gtk/gtkwindow.c + - Regularize with the rest of GTK+ by making widget->requisition + not reflect the set_usize() + - Always recompute geometry hints, then check if they + changed before sending them to the X server. The + previous checks for changes would fail in a number + of circumstances. + +Thu Jul 1 11:55:59 1999 Owen Taylor + + * gtk/gtkstyle.c: Include for strcmp(). + +Wed Jun 30 19:26:36 1999 Owen Taylor + + * gtk/gtkdnd.c: + - Code cleanups + - Instantaneously update on modifier key presses + - Allow cancellation of the drag with Escape. + +Tue Jun 29 17:04:09 1999 Owen Taylor + + * gtk/testgtk.c (create_handle_box): Set the policy + to auto_shrink - otherwise the appearance is rather + strange when flipping between horizontal and vertical. + +Mon Jun 28 09:29:52 1999 Tim Janik + + * gtk/gtkwindow.c: add ::default_width and ::default_height arguments. + (gtk_window_set_default_size): don't change a value if it's < 0. + queue a resize. + +Sun Jun 27 11:00:33 1999 Tim Janik + + * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts. + +Mon Jun 28 12:08:25 1999 Owen Taylor + + * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't + add an extra "/" when concating "/" + filename. + (From Matt Grossman ) + +Mon Jun 28 10:57:12 1999 Owen Taylor + + * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask + for fg_gc if we set it for drawing pixmap. + +Tue Jun 15 12:45:12 1999 Owen Taylor + + Fixes from Peter Wainwright + + * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is + already set, call old engine's destroy function and + unref the old engine. + +Thu Jun 10 17:59:38 1999 Tim Janik + + * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize. + +Wed Jun 9 15:13:16 1999 Tim Janik + + * gtk/gtkaccelgroup.h: mark certain functions as internal. + +Wed Jun 9 13:48:28 1999 Tim Janik + + * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the + expand behaviour changed. + + * gtk/gtklabel.c (gtk_label_set_pattern): + (gtk_label_set_justify): + (gtk_label_set_line_wrap): + don't bother invoking queue_clear, the reallocation does + that for us, always free_words so the upcoming resize will + relayout the label's contents. + +Wed Jun 9 12:50:48 1999 Tim Janik + + * applied argument implementation patches from Elena Devdariani + . + + * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size, + ::space_style, ::relief + * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size + * gtk/gtkpreview.c: ::expand + * gtk/gtkpaned.c: ::handle_size, ::gutter_size + * gtk/gtknotebook.c: ::homogeneous + * gtk/gtklabel.c: ::wrap + * gtk/gtklist.c: ::selection_mode + * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge + * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y + * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity + * gtk/gtkclist.c: ::sort_type + * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle + * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child + +Tue Jun 1 23:38:38 1999 Owen Taylor + + * gtk/gtkstyle.c: Removed ill-thought-out part of last + comment. + +Tue Jun 1 23:30:09 1999 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_attach): Get the reference + counting right when we have to attach a new style + for a different visual. (Chi-Deok Hwang ) + + * gtk/gtkstyle.c: Documented the refcounting + peculularities of gtk_style_attach. + +1999-06-01 Tim Janik + + * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid + window types. + + * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead + of GTK_TOPLEVEL for creating the window. + +1999-06-01 Tim Janik + + * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is + the last argument (reported by Per Winkvist). + +Tue May 25 13:13:12 1999 Owen Taylor + + Fixes for invisible XOR lines (Frank Loemker + ) + + * gtk/gtkclist.c (gtk_clist_realize): Always use + a non-zero pixel for GDK_XOR. + + * gtk/gtkvpaned.c gtk/gtkhpaned.c: + Use GDK_INVERT instead of GDK_XOR. + +Wed May 12 21:56:40 1999 Lars Hamann + + * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed + signals if h/voffsets differ from adjustment values. + Reportet by Jerome Bolliet + +Mon May 10 04:20:41 1999 Tim Janik + + * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate + ::selection-done emissions up to the topmost menu shell. + +Fri May 7 10:15:14 1999 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset + the user data on the window before destroying it. + + * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an + unrealize handler to take care of destroying + notebook->panel properly. + (Bug #1198 - Morten Welinder ) + + * gtk/gtktext.c (expand_scratch_buffer): Fix reversal + of g_new and g_realloc to stop memory leak. (Actually, + we could just use g_realloc(), but I'm not 100% sure + that is portable). + (Bug #1196 - Morten Welinder ) + +Wed Apr 21 00:42:08 1999 Owen Taylor + + * gtk/gtkplug.h: Removed stray GtkPlugButton declaration. + + * gdk/gdkfont.c (gdk_text_measure): Fix the return value + for fontsets. + + * gtk/gtkbutton.c (gtkbutton_expose): Fix warning + with bin/button confusion. + +Thu May 6 04:53:26 1999 Tim Janik + + * gtk/testgtk.c: in the ItemFactory test, link radio items together, + and show how preselection of radio items is done. + +Sun May 2 13:31:14 1999 Tim Janik + + * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): + * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert): + * gtk/gtktoolbar.c (gtk_toolbar_insert_element): + * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1): + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): + * gtk/gtktable.c (gtk_table_attach): + * gtk/gtklist.c (gtk_list_insert_items): + * gtk/gtkmenushell.c (gtk_menu_shell_insert): + * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): + * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): + * gtk/gtkbin.c (gtk_bin_add): + * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): + * gtk/gtkfixed.c (gtk_fixed_put): + * gtk/gtklayout.c (gtk_layout_put): + general fixups to container_add logic. always realize child if + child->parent is realized, only map the child and queue a resize + if child and child->parent are both visible. + +Fri Apr 30 09:02:28 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall + instead of gtk_container_foreach to walk and unrealize children, so + composite children get also unrealized. + (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to. + (gtk_widget_map): assert that the widget is visible (basic constrain). + (gtk_widget_real_map): assert that the widget is realized (basic + constrain). + +Fri Apr 29 00:53:20 1999 Tim Janik + + * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak. + +Tue May 4 09:32:08 1999 Owen Taylor + + * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc + file for iso-8859-2 locales. + + * configure.in (ALL_LINGUAS): ALL_LINGUAS update. + +Tue Apr 27 16:38:32 1999 Owen Taylor + + * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES. + (Pointed out by andy@rz.uni-karlsruhe.de and others). + Remove some suspicious and useless lines. + +Tue May 4 08:44:08 1999 Owen Taylor + + * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use + width,height = 0, 0 to mean - here to edge of window, + instead of -1, -1, since the former is all we support. + +Tue May 4 08:34:43 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main): Correctly free list nodes + when removing from quit_functions list. + +Tue Apr 27 14:17:16 1999 Tim Janik + + * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable. + +Tue Apr 27 18:23:35 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): + When redrawing characters on non-visible entry, use appropriate + '*' character. (Bug #1130 - Jean-Marc Jacquet ) + +Tue Apr 27 01:31:40 1999 Lars Hamann + + * gtk/gtkclist.c (drag_dest_cell): compute destination cell + from drag coordinates. + (gtk_clist_drag_data_received) (gtk_clist_drag_motion): + use drag_dest_cell. + + * gtk/gtktree (drag_dest_cell) + (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise. + (Bug #1129) + +Wed Apr 21 21:26:11 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize + translate_* fields. + (gtk_item_factory_finalize): invoke translate_notify independant from + translate_data. + (gtk_item_factory_set_translate_func): likewise. + (gtk_item_factory_destroy): only remove ifactory pointer from those + widgets that belong to us (stupid me). + +Mon Apr 19 12:05:31 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of + rc_style list when lookup succeeeds. + +Thu Apr 15 01:11:24 1999 Lars Hamann + + * gtk/gtkctree.c (resync_selection): + * gtk/gtkclist.c (resync_selection): fixed undo_selection bug. + * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection + bug. + +Fri Apr 9 19:22:19 1999 Owen Taylor + + * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c: + Add some missing GDK_THREADS_ENTER()/LEAVE around + timeouts. (Patches from Sebastian Wilhelmi ) + +Thu Apr 8 20:10:33 1999 Tim Janik + + * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate() + rather than emit_by_name. + + * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference + on the widget across multiple signal emissions. + (gtk_editable_delete_text): same here. + (gtk_editable_class_init): set widget_class->activate_signal after + editable_signals[ACTIVATE] has been created. + +Wed Apr 7 22:59:47 1999 Owen Taylor + + * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp + position here prematurely -- we might not have the + right ->min_position and ->max_position yet. + +Tue Apr 6 16:38:51 1999 Owen Taylor + + * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request): + Add error traps so if the other end of the connection + dies, we survive. + + * gtk/gtkselection.c (gtk_selection_notify): Clean + up properly when selection property retrieval fails. + + * gtk/gtkselection.c (gtk_selection_request): Correctly + reject SelectionRequest notifies where the handler + returns no data. + +Tue Apr 6 12:24:21 1999 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight + when we've previously highlighted. + + * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't + emit two "drag_leave" signals for Motif drops. + + * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send + back the correct status messages when dropping from + Motif onto a proxy window that is rejecting the + drop. + +Sat Mar 27 23:32:13 1999 Tim Janik + + * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free + the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal() + to compare two argument values. added gtk_arg_to_valueloc() to set a + variable from an arg through its location (pointer). + + * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of + gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected + as gfloat*, uchars are collected as guchar*, ints are collected as + gint*, etc... + +Mon Mar 29 17:45:47 1999 Owen Taylor + + * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c: + Include instead of . + + * gtk/gtkstyle.c: Fix double include of gtkthemes.h + (actually, a lot more duplicate includes occur if + you trace through the sequence of #include's) + gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu + +Mon Mar 29 17:02:58 1999 Owen Taylor + + Patches from Akira Higuchi + gtk-a-higuti-990322-[0-3] + + * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS + that was causing -DX_LOCALE not to work. + + * gtk/gtkrc.c (gtk_rc_init): + X_LOCALE will never have LC_MESSAGES defined + +Thu Mar 25 12:38:31 1999 Tim Janik + + * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from + g_get_home_dir() (gtk-pmc-990123-0.patch.gz). + + * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/ + left/right as well (gtk-michael-980726-0.patch.gz). + + * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/ + for pointer values, use gchar instead of char. fixed uline allocation + leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem + chunks instead of G_ALLOC_ONLY. + (gtk_label_size_request): always alter requisition as passed and leave + widget->requisition alone. + (gtk_label_set_text): allow NULL strings. + (gtk_label_new): likewise. + +Wed Mar 24 09:24:03 1999 Tim Janik + + * gtk/gtkdrawingarea.[hc]: type/macro fixups. + +Mon Mar 22 05:51:34 1999 Tim Janik + + * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible + *and* mapped (i.e. drawable). + (gtk_bin_expose): only send exposes to drawable children. + + * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable. + (gtk_box_expose): only send exposes to drawable children. + + * gtk/gtkhscale.c (gtk_hscale_draw): + * gtk/gtkvscale.c (gtk_vscale_draw): + hm, this is an ugly one. we first compute the size of our trough area + here (window relative) and then check intersection with the draw_area + which is parent relative because we're a NO_WINDOW widget, so we need + to offset the trough area by allocation.x and allocation.y before the + check. (this must not be done for the background area though, since + that's already computed parent relative). + +Mon Mar 22 00:41:39 1999 Lars Hamann + + * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary, + unrealize title buttons. + +Fri Mar 19 00:00:22 1999 Lars Hamann + + * gtk/gtkclist.c (gtk_clist_column_title_passive) + (gtk_clist_column_title_active): + only connect/disconnect to GtkWidgetClass::event to block mouse events. + + * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): + zero initialize event, removed superfluous gdk_window_get_pointer call + + * gtk/gtklist.c (gtk_list_vertical_timeout) + (gtk_list_horizontal_timeout): removed superfluous + gdk_window_get_pointer call + +Wed Mar 17 09:00:00 1999 Tim Janik + + * plugging problems reported by "Bruce Mitchener, Jr." + due to a purify session. + + * gtk/gtkstyle.c: + (gtk_style_ref): + (gtk_style_unref): assert ref_count to be > 0. + + * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize + the requisition. + (gtk_clist_set_shift): likewise. + + * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the + adjustments. + + * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the + event before sending it and set send_event to TRUE (which needs to + be done for *all* synthesized events). + (gtk_list_vertical_timeout): likewise. + + * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory + leaks. + + * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event + to TRUE when synthesizing events. + +[ *** end of merges from 1.2 *** ] + +1999-11-21 Tor Lillqvist + + * gdk/gdkconfig.h: Remove, as this is a file generated by configure + (or copied from gdkconfig.h.win32 on Win32, sigh). + + * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL. + + * gdk/gdk.c (gdk_keyval_convert_case): Fix typo. + + * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line. + + * gdk/gdkconfig.h.win32: New file. + + * gdk/win32/makefile.cygwin: Build just a static archive here. + + * gdk/makefile.cygwin: New file. Get the win32-specific stuff + for the DLL from the static archive built above. + + * gdk/gdk.def: Moved here from the win32 subdirectory. + + * gdk/win32/*: Adapt for the changed private struct organisation. + + * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now. + +Sun Nov 21 16:44:35 1999 Stefan Jeske + + * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support + for wheel mice (buttons 4 and 5). + +1999-11-18 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor + drawables use just the pixel field in the foreground and + background GdkColor of the GdkGC. + + gdk_gc_set_{fore,back}ground() are called in the GIMP with + GdkColors containing uninitialized (red,green,blue) fields, and + just the pixel field filled in, and furthermore in the + visual-dependent format as returned by gdk_rgb_xpixel_from_rgb(). + It thus turns out that we really don't need to have the full + GdkColor for fg and bg in GdkGCWin32Data after all. Will change + it later to have just the pixel values. + +Mon Nov 15 17:17:51 GMT 1999 Tony Gale + + * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/ + +Sat Nov 13 22:30:29 GMT 1999 Tony Gale + + * docs/gtkfaq.sgml: threads example from Erik Mouw. + New question on GtkLabel background colors. + + * docs/gtk_tut.sgml: + - Correct the example code callback + function definitions. + - Update the gtkdial example code, from Frans van Schaik. + - Update setselection.c to current API. + + * examples/Makefile examples/*/*.c: Update to code + listed in tutorial. + +1999-11-10 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode + subrange table (from the "Developing International Software for + WIndows 95 and Windows NT" book) was missing the Hangul syllable + block... Get the loaded font's charset correctly. + + (Note that this, and the other *-win32.c files, still really are + the old ones, the win32 subdirectory is not ready for compilation + yet after the reorg.) + +Wed Nov 10 17:26:49 GMT 1999 Tony Gale + + * gtk/gtkclist.c: Fix off-by-one bug in parameter + check. + +Wed Nov 10 12:12:03 1999 Owen Taylor + + * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState() + on results of XQueryDeviceState(). + +Mon Nov 8 16:40:43 1999 Owen Taylor + + * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since + we need to accesss only ->children. We need an accessor + for the children. + + * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G + DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer() + to get rid of gdkx.h include. + + * gtk/gtkctree.c: Get rid of #include + and random references to 'None'. + + * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c + Get rid of unused #include + + * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include + gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from + gdkconfig.h. + +1999-11-08 Tor Lillqvist + + * gdk/win32/gdkdraw.c + * gdk/win32/gdkfont.c + * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes + following yesterday's changes. (Unrelated to Owen's reorg.) + +Mon Nov 8 16:18:25 1999 Owen Taylor + + * gdk/x11/gdkinput-gxi.c: Add missing include, + fix GdkWindowPrivate => GdkDrawablePrivate. + + * gdk/x11/gdkinputprivate.h: include . + + * gdk/x11/Makefile.am (xinput_sources): Add missing + backslash to fix building with --with-xinput=none + +Mon Nov 8 14:47:04 1999 Owen Taylor + + Move all X specific code into the x11/ directory. + Aside from shuffling things around, did the following: + + * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add + gdk_arg_context_* - a simple argument parsing system + in the style of popt. + + * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch] + gdk/x11/gdkprivate-x11.h: + Remove X specific stuff from GdkDrawable and GdkWindowPrivate - + add ->klass and ->klass_data fields. The klass_data + field points to an auxilliary structure that is + windowing system dependent. + + * gdk/gdkfont.c: Make most of the measurement functions + simply wrappers around gdk_text_extents(). + + * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a + _gdk_font_strlen() function that hides the weird + behavior in gtk+-1.[02] where a string is interpreted + differently for 8-bit and 16-bit fonts. + + * gdk/gdkevents.c: Add a new function gdk_event_button_generate() + to store common code for synthesizing double/triple + press events. + + * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h. + Make all the function that modify an existing GC + simply wrappers around gdk_gc_set_values(). + + * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation + for throwing out later. + + * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate, + GdkImagePrivate and GdkColormapPrivate to have a + windowing system dependent part (GdkFontPrivateX etc.) + that "derives" from the system-independent part. + + * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c: + Got rid of the included-source-files for XInput in + favor of automake conditionals. (Which didn't exist + when XInput support was originally added.) + + * gdk/gdkrgb.c: Remove the visual id from the debugging + statements since that is X11 specific; print out + type/depth info instead. + + +Wed Nov 3 18:14:49 1999 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when + loading duplicates of hashed fonts. + + * gdk/gdk.c (gdk_keysym_convert_case): rename + gdk_XConvertCase to gdk_keysym_convert_case, allow + results to be NULL in the GTK+ style. + + * gdk/gdkcompat.h: Started compatibility header + for renames. + +1999-11-07 Tor Lillqvist + + * gdk/win32/gdkprivate.h: New font private structures, related to + fontsets. + + * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and + gdk_font_list_free(). On X11, will just be wrappers to + XListFonts() and XFreeFontNames(). On Win32, the code previously + in gtkfontsel.c is now here. + + New function gdk_font_xlfd_create(). On X11 will get the FONT + property of the font (for GDK_FONT_FONTs), or call + XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32 + builds a XLFD style name from the font information in the LOGFONT + struct(s). + + New function gdk_font_xlfd_free(), which correspondingly frees the + string returned by gdk_font_xlfd_create(). + + Implement fontsets on Win32. Add a function that iterates over a + wide char string and calls a callback function for each substring + of wide chars from the same Unicode subrange (and thus probably + available in the same real font). + + Improve the XLFD emulation a bit. + + * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix. + + * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k + Beta3, WM_IME_CHAR messages don't seem to contain the composed + multi-byte char as with the Active IMM on Win9x. Oh well, handle + WM_IME_COMPOSITION with GCS_RESULTSTR instead, use + ImmGetCompositionStringW() to get the composed Unicode chars. + + * gdk/win32/gdkgc.c + * gdk/win32/gdkdraw.c: Changes needed because of the font private + struct changes. + + * gdk/win32/gdk.def: Add the new functions. + +1999-11-04 Tor Lillqvist + + * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to + get the Platform SDK to get . + + * gdk/win32/gdkevents.c: More event handling fixes and + simplification. Never generate motion events with is_hint true. We + used to do that on bogus grounds earlier. Windows sends + WM_MOUSEMOVE messages on button events even if the mouse hasn't + moved, ignore these. + + * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets. + + * gdk/win32/gdkglobals.c + * gdk/win32/gdkprivate.h: Define a typedef for the pointer to + the TrackMouseEvent function, and use it. + + * gdk/win32/gdkwindow.c: Terminate widechar string with a zero + char before calling WideCharToMultiByte in order to get a string + for the window title. + + * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out. + + * gdk/win32/gdk.def: Remove obsolete functions. + + * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add + /nodefaultlib and /defaultlib switches. + + * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/. + +1999-10-31 Tor Lillqvist + + * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including + EuroSign). + + * gdk/gdktypes.h: Add note about wchar_t not necessarily being the + same type as GdkWChar, especially on Win32. + + * gdk/win32/*.c: Change gdk_root_parent to be a pointer. + + * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode + before passing to Windows GDI for drawing etc. Convert to the + system default codepage before passing to Windows as window + titles. + + * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to + support changing input locale on the fly. + + * gdk/win32/gdkevent.c: Support input language (keyboard locale) + on-the-fly changes. Convert incoming characters from the current + codepage to Unicode (and then to a UTF-8 multi-byte string) based + on the current input language. Use keysym<->Unicode mapping tables + and functions borrowed from xterm sources. + + Support IMEs (Input Method Editors) for CJK languages. On non-CJK + editions of Win9x, use the ActiveX-based Active IMM (Input Method + Manager) if available. IMEs and the Active IMM are available under + the disguise of Chinese, Korean and Japanese support for IE and + Outlook Express from "Windows Update" for Win98. On Win2k, the CJK + support is present in all editions (as long as you install it). + + Call DispatchMessage from gdk_events_queue() (and thus + gdk_WindowProc()), instead of duplicating the code in + gdk_WindowProc(). + + Reworked the grab handling and propagation code, factored out + duplicated code snippets into separate functions. Other cleanups, + too. + + * gdk/win32/surrogate-dimm.h: Provide just the bits we need from + the header describing the Active IMM. + + * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far + just do the same as for "single" fonts. + + * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from + gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle + the new keysyms from gdkkeysyms.h. + + * gtk/gtkfontsel.c (Win32): Load the font for the preview as a + fontset, so that gtkentry uses wide characters. + + * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call + GTk+'s system directory "gtk+", not "gtk". + +Sat Oct 30 13:17:18 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ update + +1999-10-21 Tor Lillqvist + + * gdk/win32/gdkprivate.h: Add more font private data. + + * gdk/win32/gdkfont.c + * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset + fonts and strings. Now works much better. You still have to + have a correct font selected, though. No fontset emulation yet. + +1999-10-19 Tor Lillqvist + + * gtk/maketypes.awk: Use G_OS_WIN32. + + * gtk/gtk.def: Add some missing entry points. Also some non-public + ones, but PyGTK porter claims to need them. + + * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the + built-in type generation. + +1999-10-14 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for + GDK_FONT_FONT fonts (which is all we have for now, we don't + emulate fontsets). The X11 version uses plain XDrawString in that + case, too. The string passed to gdk_draw_text_wc seems to be in + fact (at least, when used by gtkentry and gtktext) either in a + single-byte charset, or a DBCS. Not Unicode. + + This fixes the problem in gtkfontsel, where even if you had + selected a font with a non-Latin1 charset (windows-greek, for + instance), the preview still used Latin-1 glyphs. + + * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't + use GetTextExtentPoint32W, use GetTextExtentPoint32A. + (gdk_font_load): Recognize the demibold etc weights, even if we + don't have the corresponding constants in the headers. + (gdk_font_hash_insert): Use same hash mechanism as in the X11 + version. Should save font resources a bit, when we don't have + multiple HFONTs for the same font. + + * gdk/win32/gdkprivate.h: Add the names field as in the X11 + version. + +1999-10-11 ERDI Gergo + + * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default + X values + +1999-10-09 ERDI Gergo + + * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text + layout support (as mentioned on + http://www.jcinteractive.com/gnome-ui/software/widgets/) + +Wed Oct 6 12:46:17 PDT 1999 Manish Singh + + * gtk/fnmatch.c + * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/ + +1999-10-05 Jesus Bravo Alvarez + + * configure.in (ALL_LINGUAS): Added Galician (gl) + +1999-10-05 Tor Lillqvist + + * gdk/win32/*.[ch]: Corresponding changes as in X11 backend. + + * gdk/win32/gdkcompat.c: New file, actually provide an + implementation for the deprecated functions. (Just temporarily.) + + * gtk/gtkfilesel.c: Fix an #ifdef syntax botch. + + * gtk/makefile.{cygwin,msc}: Update gdk_headers. + + * gdk/win32/gdk.def gtk/gtk.def: Updates. + +1999-10-05 Kjartan Maraas + + * configure.in: Added "uk" to ALL_LINGUAS. + +Mon Oct 4 11:57:11 PDT 1999 Manish Singh + + * configure.in: correct checking for BeOS check + + * gdk/gdktypes.h + * gtk/fnmatch.c + * gtk/gtkfilesel.c + * gtk/gtkitemfactory.c + * gtk/gtkmain.[ch] + * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines + +Mon Oct 4 16:16:53 1999 Pablo Saratxaga + + * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset + encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic + languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used + by Bulgarian). + +Sun Oct 3 18:13:44 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_reset_shapes_recurse): + Fix a reference to window_private->destroyed. + + * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct + (ugly) setting of an internal GdkWindow member to use + a _slightly_ cleaner macro. + + * gdk/gdkprivate.h: Split GdkWindowPrivate into + GdkDrawablePrivate and GdkWindowPrivate. + Add extra macros for accessing GDK_DRAWABLE_ components. + + * *.[ch]: Massive adjustments for the above, use the + new macros in a lot of places. + +Sun Oct 3 15:16:24 1999 Owen Taylor + + * gdk/gdktypes.h: Make GdkDrawable the base type, + not GdkWindow. + +Sun Oct 3 15:08:44 1999 Owen Taylor + + * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function. + +Sun Oct 3 14:26:15 1999 Owen Taylor + + * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory. + +Sun Oct 3 14:16:23 1999 Owen Taylor + + * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with + gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp) + + * configure.in gdk/Makefile.am x11/: create x-specific subdirectory. + + * docs/gtk-config.1: Now autogenerated. + * docs/Changes-1.4.txt: started + +1999-10-03 Tor Lillqvist + + * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage + to #ifdef also here. + + * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those + Owen did to the X11 backend. + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use + ScrollWindowEx when blitting inside a window, it can't be correct + in the general case. + + * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling + WM_GETMINMAXINFO is easier. + + * gdk/win32/gdkimage.c (gdk_image_new): Create new image with + depth equal to the bitspixel value, not the visual's depth. + + * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth + to 24 even if the bitspixel value is 32. + + * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no + need to check for depth==32 when bpp==32, depth will always be 24. + +Fri Oct 1 18:03:36 1999 Owen Taylor + + * docs/Changes-1.4.txt: Started + + * gtk/Makefile.am (gdk_headers): Include all the new headers. + + * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces. + + * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private + into C file. + + * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput + header to gdkinputprivate.h. + + * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been + unused since before 1.2. + +1999-09-30 Tor Lillqvist + + * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32, + expand possible hex escapes in the font family (put there by + logfont_to_xlfd if the font name isn't a legal XLFD font family, + mainly if it contains slashes). (gtk_font_selection_create_xlfd): + On Win32, add hex escapes here, too. + +Wed Sep 29 19:55:35 1999 Owen Taylor + + * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11 + to #ifdef GDK_WINDOWING_X11. + +[ Merges from gtk-1-2 ] + +Wed Sep 8 07:13:29 1999 Tim Janik + + * configure.in: fixed "GNU Make" check to pass with new make version + 3.77.95. + +Fri Sep 3 16:04:41 1999 Tim Janik + + * gtk-config.in (--version): don't echo @GTK_VERSION@, but + @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the + AM_PATH_GTK() macros don't get confused by the -pre1. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * configure.in (REBUILD): Change check for perl5 + to check explicitely for v >= 5.002. (5.001 + does not work with our scripts.) + +Wed Aug 25 15:45:46 1999 Tim Janik + + * configure.in: evaluate $PERL for the perl version check. added + --disable-rebuilds to give the user an option to completely disable + any source autogeneration rules. + +Mon Aug 23 23:16:14 1999 Tim Janik + + * configure.in: evaluate $ac_make when checking for GNU Make. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * docs/Makefile.am: added generation.txt. + + * Makefile.am: require automake 1.4, build README from README.in and + INSTALL from INSTALL.in in dist-hook. + + * README.in: + * INSTALL.in: new files to autogenerate README and INSTALL from. + + * configure.in: figure whether we have GNU Make + + * docs/generation.txt: minor additions/corrections. + +Wed Aug 11 13:38:26 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +July 30, 1999 Elliot Lee + + * configure.in: Fix autoconf warnings about cross compilation by + trying to provide sane defaults for AC_TRY_RUN. + +Fri Jul 16 22:20:21 PDT 1999 Manish Singh + + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.3 + +Thu Jul 8 11:30:18 1999 Owen Taylor + + * INSTALL: Indicate that the --with-glib= configure + time flag is unsupported. + +Mon Jul 5 20:36:03 1999 Owen Taylor + + * docs/generation.txt: Added a file that gives + documenation about the autogeneration process for + various autogenerated files. + +Tue Jun 29 15:59:25 1999 Owen Taylor + + * configure.in (LIBS): Look for libgmodule in the + right location. + +Thu Jun 17 13:57:31 1999 Owen Taylor + + * docs/gtk_tut.sgml: Removed references to + code examples in my directory on gtk.org as + they should all be in the tutorial now. + + * docs/gtk_tut.sgml: Added sources for dial-test + and scribble-xinput programs that were previously + missing. + +Fri Jun 4 00:08:59 1999 Owen Taylor + + * TODO: Added entry about menu keyboard navigation, removed + some finished items. + +Mon May 31 00:11:24 1999 Owen Taylor + + * acinclude.m4: Standardize on func_dgettext + not func_gettext, so that the checks for dgettext + actually are paid attention to. + +Wed May 5 10:47:54 1999 Owen Taylor + + * configure.in (LIBS): Add $INTLLIBS into $LIBS + directly, rather than repeating the checks for + gettext. + + * INSTALL: Added information about gettext and + NLS support. + + * acinclude.m4 (LIBM): Check for dgettext, not + just gettext. This should hopefully fix things wrt + systems with old versions of GNU gettext installed. + +Tue Jun 29 15:59:25 1999 Owen Taylor + + * configure.in (LIBS): Look for libgmodule in the + right location. + +Thu Apr 1 16:58:10 PST 1999 Manish Singh + + * autogen.sh: add --enable-maintainer-mode + + * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS" + +Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson + + * docs/gtk-config.1.in: + docs/Makefile.am: + configure.in: gtk-config is now generated. + + * docs/gtk-config.1: Removed, now generated. + +Thu Sep 23 17:59:59 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't + handle CreateNotify itself, still put out a debuging message for + --gdk-debug=events. made the ReparentNotify debugging message more + verbose. + wrap xcoords translation for ConfigureEvents into an error trap, + a destroy event may already be pending, and in that case, the + actuall coordinate values are not at all critical. + +Sat Sep 18 22:24:15 1999 Owen Taylor + + * gdk/gdkcc.c: Stop leaking the color_hash all over + the place. Simplify and improve the logic. + +Fri Sep 17 09:57:15 1999 Tim Janik + + * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean) + for prototypes and function implementations consistent (reported + by Tomas Ogren). + +Tue Sep 14 18:23:01 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): tell if expose events have + send_event set in debugging output. + (gdk_compress_exposures): default initialize the event so we don't + operate on bogus values (namely send_event). + +Thu Sep 2 16:33:59 1999 Owen Taylor + + * gdk/gdkwindow.c: When we receive an unexpected + destroy notify on one of our windows, don't just + warn about it, also mark our windows as destroyed. + +Sun Sep 5 08:10:53 1999 Owen Taylor + + * gdk/gdkfont.c (gdk_font_hash_insert): Add + name => font and name => fontset hashes. The + name => fontset hash is a _big_ win since we + weren't previously caching fontsets at all and loading + fontsets is expensive. The name => font hash + is less of a win, but it does save us from doing + repeated XQueryFont calls on the same font. + + * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names + list so we can remove font/fontset from hash. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_atom_intern): Remove useless + and slightly confusing test. [ XInternAtom (,,TRUE) + will never return None ]. + +Sat Sep 4 08:39:26 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints) + gdk/gdkwindow.c (gdk_window_set_hints): + + Don't omit setting the properties if flags == 0 - + there may be an existing set of properties there + already. (Very old bug. Would it be better to + delete the property instead?) + + * gdk/gdkselection.c (gdk_selection_property_get): Fix + spelling error in comment. + +Wed Sep 1 14:05:30 1999 Owen Taylor + + * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push() + to avoid stomping over gdk_error_warnings. + + * gdk/gdkimage.c (gdk_image_new): compute image->bpp + as (bits_per_pixel + 7) / 8. This gives the same + result as before for multiples of 8, but actually + a "reasonable" value for 1bit or 4bit displays. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * gdk/Makefile.am: minor cleanups, strip spaces on build rules for + GNU Make. + +Tue Aug 17 07:43:04 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): give a debugging note when + discarding configure events. + +1999-08-18 Federico Mena Quintero + + * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the + refcount is greater than zero. + + * gdk/gdkwindow.c (gdk_window_unref): Likewise. + + * gdk/gdkfont.c (gdk_font_unref): Likewise. + + * gdk/gdkgc.c (gdk_gc_unref): Likewise. + + * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise. + +Wed Aug 11 01:04:57 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_property_get): Fix assumption + that format 32 => sizeof(item) == 4. It really is + sizeof(long). + +Tue Jun 29 23:02:42 1999 Owen Taylor + + * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't + core dump at all on X IO errors, only core dump + if --enable-debug for X errors. + +Thu Jun 24 17:06:23 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for + unknown window:" message. disabled ConfigureNotify discarding code, + because it led to events being processed out of order. + +Thu Jun 24 12:22:02 1999 Tim Janik + + * gdk/gdkglobals.c: preinitialize gdk_error_code to 0. + + * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since + we export this function, supress error warnings and don't reset the + error code in the first half of this function. + + * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error + code (instead of just -1) so gdk_error_trap_pop() reveals something + actually informative about the error that happened. + + * gdk/*.c: + don't rely on gdk_error_code being -1 if an error occoured, but just + gdk_error_code != 0. + +Thu Jun 24 11:50:07 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list + pointer *before* invoking the filter function, so we at least don't + crash if a filter is removed that is currently executed. window filters + *really* need to be made truely reentrant at some point. + +Mon Jun 14 11:10:15 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): print the atom name in the + PropertyNotify debug messages. + +Wed May 5 22:51:06 1999 Owen Taylor + + Patch from Sung-Hyun Nam + + * gdk/gdkim.c: Fix cut-and-paste errors for + x/y and PreeditAttributes/StatusAttributes. + +Wed May 5 22:24:21 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change + G_MAXINT to 2^16 to alleviate overflow problems in + various window managers. + +Wed Apr 21 00:42:08 1999 Owen Taylor + + * gdk/gdkfont.c (gdk_text_measure): Fix the return value + for fontsets. + +Wed May 5 12:42:01 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints): + Initialize size_hints.x and size_hints.y because kwm + brokenly pays attention to them. + (Bug #1181 - Lars Heete ) + +Wed May 5 11:38:56 1999 Owen Taylor + + * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the + return value of gdk_list_visuals(). + (Bug #1193 - Morten Welinder ) + +Tue May 4 11:12:56 PDT 1999 Manish Singh + + * gdk/gdkim.c (gdk_im_real_open): cast the return value of + XSetIMValues to (void *) when comparing to NULL, to workaround + the problem of some compilers barfing since older X headers don't + have the prototype for it. + +Mon Apr 19 10:11:12 1999 Owen Taylor + + * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak + for pseudocolor where colormap->colors was double + allocated. + + * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the + color value in the hash table with the pixel filled + in so when we do later hash table lookups, the color + value is correct. + +Sun May 2 15:29:45 PDT 1999 Manish Singh + + * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before + making the call + +Tue Apr 27 11:17:35 1999 Owen Taylor + + * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak + pointed out by Morten Welinder . + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Fri Apr 16 20:41:43 PDT 1999 Manish Singh + + * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines + + * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use + g_strdup_printf instead of calcing the length separately + +Tue Apr 13 02:49:33 1999 Owen Taylor + + * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG + that we don't do in many other places. (Fixing duplicate + #include of config.h) + + * gdk/gdkevents.c: include gdkinput.h _after_ config.h. + Otherwise, #ifndef XINPUT_NONE check in the latter + doesn't work. (Bug #546) + +Sun Apr 11 14:38:03 1999 Tim Janik + + * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color + "None" case insensitive. + +Tue Apr 6 16:38:51 1999 Owen Taylor + + * gdk/gdkselection.c: + Add error traps so if the other end of the connection + dies, we survive. + +Tue Apr 6 12:24:21 1999 Owen Taylor + + * gdk/gdkdnd.c (gdk_drag_motion): Separate out the + dest_xid field into two fields - one for the window + to send in messages, one to indicate the last looked + up window for caching purposes. This is needed, so + that Leave messages get the correct window. + +Mon Apr 5 13:21:30 1999 Owen Taylor + + * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare): + Fix warning created by people mucking around + with the gsource API. + + * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full): + Change mapping between GIOCondition and GdkInputCondition + to match the way the Linux kernel does it. This should + fix problems where closed pipes were no longer signalling + GDK_INPUT_READ on systems with a native poll(). + +Mon Apr 5 17:11:57 1999 Owen Taylor + + * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check + explicitly for the string "None" - it is in the XPM + spec and some servers treat unknown colors in odd ways + (like asking the user!) + +Thu Apr 1 16:58:10 PST 1999 Manish Singh + + * gdk/gdkevents.c: made "->" into a "." of previous change so + it compiles + +Thu Apr 1 18:41:25 1999 Owen Taylor + + * gdk/gdkevents.c (gdk_compress_exposures): Set the + window field of the event structure before calling + user filters. + +1999-03-31 Federico Mena Quintero + + * gdk/gdk.c (gdk_init_check): Use False as the last argument to + XInternAtom() here. This is a particularly Old And Nasty(tm) bug. + +Mon Mar 29 17:31:52 1999 Owen Taylor + + * gdk/gdkim.c (gdk_mbstowcs): Free the value of the + intermediate text property - prevents major memory + leak when gdk_use_mb. + gtk-d3august-990311-0: Bj|rn Augustsson + +Mon Mar 29 17:02:58 1999 Owen Taylor + + Patches from Akira Higuchi + gtk-a-higuti-990322-[0-3] + + * gdk/gdkfont.c (gdk_text_extents_wc): Make work when + sizeof(wchar_t) != sizeof (GdkWChar) + + * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS + that was causing -DX_LOCALE not to work. + + * gtk/gtkrc.c (gtk_rc_init): + X_LOCALE will never have LC_MESSAGES defined + + * gdk/gdk.c (gdk_init_check): + Remove --xim-preedit and --xim-status from argv properly. + + * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so + that the client window is present on the X server + before we pass it to the input method. + +Tue Mar 9 10:46:49 1999 Owen Taylor + + * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where + if --display is specified on the command line, than + the drag window will not be created on that display. + +Tue Mar 9 10:38:24 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where + lookups with only_if_exists == TRUE were inserting + bogus values into the atom cache. + +Wed Mar 17 09:00:00 1999 Tim Janik + + * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t), + then reset it to NULL. + + * gdk/gdkcolor.c: + (gdk_colors_free): + (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the + key for g_hash_table_remove() in both functions, this prevents us + from accessing possibly uninitialized portions of a GdkColor structure + where we are only interested in its pixel value. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + +1999-09-21 Tor Lillqvist + + * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting, + just to be sure. + + * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of + unused variables, leftovers from the X11 version. + + * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd. + + * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only + downcase fields on X11. + +Mon Sep 20 13:17:39 1999 Pablo Saratxaga + + * configure.in,po/pt_BR.po: added Portuguese Brazilian file from + Alex Sandro Queiroz e Silva + +1999-09-17 Tor Lillqvist + + * gdk/win32/gdk.def: Add gdk_threads_mutex. + + * gtk/makefile.msc: Correct path to libintl. + + Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in + use of gint vs. int, and gint vs. gboolean in headers and + definitions. Use GtkType for the *_get_type functions. Note that + these changes preserve binary compatibility. + + * gdk/gdk.c + * gdk/win32/gdk.c + * gdk/gdk.h: Fix inconsistencies: gint vs int. + + * gtk/gtkmain.c + * gtk/gtkclist.c + * gtk/gtkmenufactory.c + * gtk/gtknotebook.c + * gtk/gtkwidget.c: Fix inconsistencies, also gint + vs. gboolean. + + * gtk/gtkcolorsel.[ch] + * gtk/gtkcombo.[ch] + * gtk/gtkdrawingarea.[ch] + * gtk/gtkgamma.[ch] + * gtk/gtkhandlebox.[ch] + * gtk/gtkhpaned.[ch] + * gtk/gtkhruler.[ch] + * gtk/gtkplug.[ch] + * gtk/gtkpreview.[ch] + * gtk/gtkruler.[ch] + * gtk/gtksocket.[ch] + * gtk/gtkstatusbar.[ch] + * gtk/gtktoolbar.[ch] + * gtk/gtkvbbox.[ch] + * gtk/gtkvpaned.[ch] + * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type + functions. + + * gtk/gtkgamma.h: Fix bug, missing () in call of + gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. + +1999-09-14 Tor Lillqvist + + * gdk/gdkcolor.c (gdk_colormap_new) + * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak: + colormap->colors was allocated twice. + + * gdk/win32/gdk.c: Remove some unused stuff. + + * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the + colormap. + + * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type) + * gtk/gtklabel.h (gtk_label_get_type) + * gtk/gtktipsquery.c (gtk_tips_query_get_type) + * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType + in a couple of places, not guint. + +Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga + + * configure.in,po/et.po: added Estonian language file + +Wed Sep 1 14:36:12 CEST 1999 Pablo Saratxaga + + * configure.in,po/da.po: added Danish file + +Sun Aug 29 13:38:59 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: Minor FAQ Update + +Sat Aug 28 14:34:37 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ update + +1999-08-27 Tor Lillqvist + + Win32: Philippe Colantoni suggests a + way to get window contents continually refreshed while resizing. I + didn't like the effects myself, so it's not on by default. + + * gdk/win32/gdkprivate.h: New flag variable + gdk_event_func_from_window_proc, FALSE by default. + + * gdk/win32/gdk.c (gdk_init_check): Set above flag if the + environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we + are passed --gdk-event-func-from-window-proc. + + * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set, + and we have am event_func, call it instead of enqueing the event. + +1999-08-23 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon + Kelley: Set expose_count in GdkEventExposes correctly. + + * gdk/win32/gdkwindow.c: Remove dead code (#ifdef + MULTIPLE_WINDOW_CLASSES). + + * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer + for bug in NT, apparently NT *does* draw the end pixel, too, in + LineTo with a one-pixel pen, so we don't have to do it ourselves. + +1999-08-21 Tor Lillqvist + + Improvements by Hans Breuer: + + * gdk/win32/gdkwindow.c (RegisterGdkClass): New function + + * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the + CS_?REDRAW flags as they cause lots of (late) redraws when "show + window contents while dragging" is turned on. Allocate at least + one unique class for every GdkWindowType. If support for single + window-specific icons is ever needed (eg. Dialog specific), every + such window should get its own class. + +1999-08-19 Tor Lillqvist + + * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste + error that caused crashes. + +1999-08-17 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one + window, use ScrollWindowEx, and call UpdateWindow. This prevents + bugs when for instance part of the window was outside the + display. Thanks to Philippe Colantoni for finding and fixing this. + +1999-08-16 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial + endpoint calculations which were totally wrong. (A little RTFMing + helps a lot ;-) + + * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc + from a separate directory, not from gettext, because of licensing + issues (we want to use the LGPL version). + + * README.win32: Mention the intl from glibc vs from gettext issue. + +1999-08-13 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs + in the key event handling: Now AltGr chars work again. Also, + now Alt-digits are passed up as well as Control-digits. + Pass keypad plus and minus as normal plus and minus. + +Wed Aug 11 13:38:26 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +1999-07-25 Tor Lillqvist + + * README.win32 + * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without + the Wintab SDK. + + * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work + OK, but getting closer. Guard against bogus tilt data from Wacom + ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to + enable easier building without Wintab. + + * gdk/win32/gdkinput.h + * gdk/win32/gdkevents.c + * gdk/win32/gdkwindow.c: Minor changes related related to above. + + * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11 + code. As we have just one visual on Win32, no sense to have it in a + table, and no need for the hash table. + + * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look + better on white background. + +1999-07-21 Tor Lillqvist + + * README.win32: Update gcc build instructions. Mention gettext is + GPL. + + * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct + supported cursor size with GetSystemMetrics. + + * gdk/win32/gdkfont.c + * gtk/gtkfontsel.c: Guard against some font weight and charset + symbols being undefined (in mingw32 headers). + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin + * gtk/gtkthemes.c: No longer need to have differently named + gcc-built DLLs when using gcc-2.95 and -fnative-struct. + +hu Jul 15 13:33:15 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: Long awaited FAQ update. + +1999-07-15 Tor Lillqvist + + * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement + it. Obscure bit manipulation needed. + + * gdk/win32/gdkevents.c: Logging. + + * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming + style (file name include compiler name) for theme engines. + +1999-07-13 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage. + + * gdk/win32/gdkevents.c: Fix long-standing bug in key + events. The key.string wasn't zero-terminated, still we strdup'ed + it in gdk_event_copy(). Synthesize crossing events for button + events before possible propagation. + + * gdk/win32/gdkwindow.c: Log gdk_window_set_title. + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Use new DLL naming style for the + GCC-compiled ones. + + * gdk/win32/makefile.msc + * gtk/makefile.msc: Cosmetics mostly. + + * gtk/gtk.def: Add missing entry points. + + * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32. + +1999-07-09 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width + or height is zero. Don't print a warning if Pie or Arc fails, they + always fail (?) for very narrow ellipses. + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for + the part or the destination window corresponding to source area + outside of the source drawable's boundary. + + * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do + anything if less than two points. + + * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always + return NULL. Gtk cut-and-paste inside a single program works + better this way. (It always gets the clipboard contents from + Windows, not from its own copy, which is cleared anyway. I can't + say I fully understand what happens... Emulating the X selection + and property stuff is a bit of a mess.) + + * gdk/win32/gdkevents.c + * gdk/win32/gdkproperty.c: A bit more verbose logging. + + * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions + that never got deleted). Revamp gdk_region_shrink. + + * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions + after use. + + * gtk/gtk.def: Add some missing entry points. + + * gtk/gtkrc.c: Strip trailing directory separator from pixmap path + component. + +1999-07-04 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Handle + Control-digits specially. + +1999-07-03 Tor Lillqvist + + * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext. + +1999-06-28 Tor Lillqvist + + * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for + bitmaps, should be multiple of 4. (Thanks to Hans Breuer for + finding this.) + +1999-06-01 Jose H Mercado + + * gtk+.spec.in: Corrected some typos in files section. + +1999-06-15 Tor Lillqvist + + * README.win32: Mention using GNU gettext. + * config.h.win32: Enable NLS stuff. + * gtk/makefile.msc: Use GNU gettext. + * gdk/win32/gdkdnd.c: Minor header reorg. + * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly + cosmetics. + * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public. + * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call. + +Wed Jun 2 11:44:25 PDT 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.status + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged) + +1999-05-30 Tor Lillqvist + + * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to + SafeAdjustWindowRectEx. Don't override all calls to + AdjustWindowRectEx by it, but use it only in two places: When + creating a new top-level window and when moving a top-level + window. + + Use screen coordinate rectangle, not client rectangle, in + gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only + when we try to place a window so that the decoration (mainly, + title bar) isn't visible. + + These changes fix the bug that showed up for instance as the + GIMP's saved top-level windows moving right and down (by an amount + equal to the window decoration) for each session. This bug showed + up also in testgtk's "Saved Position". + + gdk_window_resize also redone a bit. + +1999-05-25 Tor Lillqvist + + * gtk/testgtkrc: Add (commented out) Windows-style theme + include line. + + * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points. + +1999-05-18 Tor Lillqvist + + * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and + gdkx.h to a gdk subdirectory, so that applications can include + these with without trouble. + + * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified. + (gdk_image_destroy): Plug resource leak, some GdkImages didn't + have their bitmap destroyed. + + * gdk/win32/gdk.def: Add gdk_root_parent. + +Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson + + * configure.in + gtk-config.in + ltconfig + ltmain.sh + gtk/Makefile.am: changes to compile nicely (with xlib) + on BeOS + +Sat May 1 15:04:42 PDT 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.3 + +Fri Apr 30 13:38:16 1999 Lars Hamann + + * gtk/gtkclist.c: + * gtk/gtkctree.c: merges from gtk-1-2 + +1999-04-25 Tor Lillqvist + + Support added for building using a GNU toolchain on Win32, + gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1. + + * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files. + * config.h.win32: Changes for gcc. + * gdk/gdkrectangle.c: Include gdk.h as . + * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp. + * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h. + * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better. + Protect shl stuff unavaiilable with mingw32 headers. + * gdk/win32/gdkevents.c: Fix typo. + * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc. + * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?) + * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler. + * gdk/win32/gdkprivate.h: Make up for some stuff missing from + the mingw32 headers. + * gdk/win32/makefile.msc: Use latest Wintab kit and glib. + * gtk/gtkfilesel.c: Include early, to get stat->_stat + definition on Win32. Test for NATIVE_WIN32, not _MSC_VER. + * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32. + Test for NATIVE_WIN32, not _MSC_VER. + * gtk/gtkmain.c: No use warning about developer version on Win32, + there aren't any non-developer versions anyhow. + * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER. + * gtk/makefile.msc: Use pthread from another directory. Minor other + changes. + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Mon Mar 8 12:52:53 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning + when gtk_widget_grab_default() is called for a widget that + is not within a GtkWindow. + +Sat Apr 10 13:52:54 BST 1999 Tony Gale + + * docs/gtk_tut.sgml, examples/clist.c: use a + scrolled window in the clist example. Minor + tutorial fixes. + +Fri Apr 2 09:19:20 BST 1999 Tony Gale + + * docs/gtk_tut.sgml: Style check from David King + + +1999-03-30 Pavel Machek + + * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code + compile with unknown value of GDK_WINDOWING + +1999-03-28 Raja R Harinath + + * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists + after the rule is fired. + (install-exec-local): Install gdkconfig.h only if the contents are + different from the currently installed gdkconfig.h. + +1999-03-26 Raja R Harinath + + * gdk/Makefile.am (configexecincludedir): Rename from + configincludedir so that gdkconfig.h will be installed + as part of `make install-exec'. + +Fri Mar 19 16:50:33 PST 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.2f + + * autogen.sh: libtool is not required to autogen gtk+ + + * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly + needed) + +1999-03-18 Tor Lillqvist + + * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for + declaring gdk variables exported/imported from the DLL. New image + type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and + drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and + GDK_DRAG_PROTO_OLE2. + + * gdk/gdk.h: Merge in Win32 version: Two new functions, + gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far + declared only for the Win32 version, but could be in the X11 + version as well. (Needed for a Xlib-less gdk_imlib.) + gdk_color_hash should have only one parameter. Declare + gdk_threads_mutex with GDKVAR. + + * gdk/gdkcolor.c (gdk_color_hash): A hash function should have + just one parameter. + + * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes + per pixel, not bits. + + * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv): + Fetch bpp (which means bits-per-pixel here) from another place on + Win32. Accept also depth==32 (which we might get on Win32) with + bpp==32. + + * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel, + gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc, + gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c: + Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be + in the backend-dependent directory, not in the common gdk + directory. + + * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk + headers. + +Wed Mar 17 05:06:49 1999 Tim Janik + + * gtk/gtkmain.c (gtk_init_check): tell people that they don't really + want to use the Gtk+ devel version (which is true, and yes - even i am + currently working with the 1.2.x branch). so everyone reading this, you + probably want to issue + cvs checkout -r glib-1-2 glib + and + cvs checkout -r gtk-1-2 gtk+ + as your next two comands. + +Wed Mar 17 02:49:32 1999 Tim Janik + + * configure.in: build gtkcompat.h from gtkcompat.h.in instead of + gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0. + + * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this + file. strongly deprecated the GTK_HAVE_* macros, we provide + GTK_CHECK_VERSION() for people that need to check for certain + Gtk+ versions. + + * gtk/gtkcompat.h: removed this from CVS. + * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad + idea right from the start, it just didn't seem like that back then. + +Wed Mar 17 01:46:28 1999 Tim Janik + + * merges from gtk-1-2: + +Tue Mar 16 17:43:33 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the + item factory class has been created. + (gtk_item_factory_parse_rc): likewise. + + * gtk/gtkmenu.c: + keep proper references for old_active_menu_item. + (gtk_menu_reparent): unset the usize of the new parent, + so the menu can sanely be size requested and we don't get nasty screen + artefacts upon next reparentation. + (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an + enter notify. only synthesize enter notifies if the pointer really is + inside the event window. + (gtk_menu_popdown): use gtk_menu_shell_deselect(). + (gtk_menu_popup): move the background setting stuff into + gtk_menu_tearoff_bg_copy() so it can be called from other places as well. + + * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use + gtk_menu_shell_select_item() to select the new item. + (gtk_menu_shell_deselect): export this function, so gtkmenu.c can + do the right thing for deselection as well. + +Sat Mar 15 20:10:33 1999 Tim Janik + + * gtk/gtkwidget.[hc]: + (gtk_widget_accelerators_locked): return whether a widget's accelerators + are locked. + + * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or + existing accelerators if the widget's accelerators are locked. + +Sat Mar 14 19:44:05 1999 Tim Janik + + * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items. + + * gtk/gtkmenu.c: truely forward key press and key release events to + the menu widget from the toplevel or tearoff window. we can't simply + connect to that, we need to stop further processing of the events as + well. + +Sat Mar 13 13:14:17 1999 Tim Janik + + * gtk/gtkmenu.c: + (gtk_menu_key_press): pass event->keyval, event->state to + gtk_accelerator_valid, instead of event->keyval twice. + refuse to install single letter accelerators for menus that use + single letter shortcuts. + + * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use + gtk_menu_ensure_uline_accel_group(). + + * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group() + which will always return an uline accel group, made + gtk_menu_get_uline_accel_group() return NULL if the group isn't + yet created. + +Mon Mar 15 01:03:27 1999 Lars Hamann + + * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag. + + * gtk/gtkclist.c (gtk_clist_column_title_passive): + Leave button sensitive, trap button_press, button_release, + motion_notify, enter_notify and leave_notify events instead. + (gtk_clist_column_title_active): disconnect event handler. + (gtk_clist_drag_data_get): fixed memory leak. Reported by + Guillaume Laurent + +Wed Mar 10 23:49:55 1999 Lars Hamann + + * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few + width/height mixups. + + * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal + if needed. + +Wed Mar 10 00:11:32 1999 Tim Janik + + * gtk/testgtk.c (create_item_factory): unref the item factory after + window's destruction. + + * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference + count on the menu shell around the menu item's activation, since the + signal emission may cause menu shell destruction. + + * gtk/gtkitemfactory.c: + the previous code leaked one accel group per menu. we use + gtk_menu_get_uline_accel_group() now to fix that, and with that + also create the underline accelerator group of the menus only if + required (i.e. an underline accelerator has been specified). + (gtk_item_factory_construct): + (gtk_item_factory_create_item): removed code that would create an + extra accel group for the menu (and leak references). + (gtk_item_factory_create_item): adapted the underline accelerator + installation code to properly feature gtk_menu_get_uline_accel_group(). + + * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive + menu->accel_group, this may return NULL if the accelerator group + hasn't been set yet. + added gtk_menu_get_uline_accel_group() to retrive the underline + accelerator group of the menu, this will be created on demand + and proper care is taken about its reference count. + + * gtk/gtkitemfactory.h: + * gtk/gtkitemfactory.c: + dumped the approach of keeping a widgets by action list on the + factory since the factory<->widget destroy negotiation didn't work + and would be hard to get going at all. instead we keep a list of + GtkItemFactoryItem items on the factory (GtkItemFactoryItems are + persistant throughout a program's life time). + also, i removed the static const gchar *key_* variables, and made + them inline strings (they weren't actually used anyways). + (gtk_item_factory_add_item): update ifactory->items. + (gtk_item_factory_destroy): destroy ifactory->items (and remove + the item factory pointer from the remaining ifactory widgets). + (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem + list to find the widget. + (gtk_item_factory_get_item): new function that works around + gtk_item_factory_get_widget() limitations, this function will only + return menu items, even for entries. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + + * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix + provided by Olaf Dietsche . + +Sun Mar 7 06:13:29 1999 Tim Janik + + * gtk/gtkcontainer.c: + (gtk_container_add_with_args): + (gtk_container_addv): + (gtk_container_add): before adding a child to a conatiner, make sure + it is (default) constructed, this is neccessary because under certain + circumstances the child will get relized and mapped immediatedly, in + which case it has to be constructed already. + +Mon Mar 1 17:58:21 1999 Tim Janik + + * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal + values > 1 as TRUE also. + +1999-03-16 Tor Lillqvist + + * README.win32: New file. + + * configure.in: Check for lstat. + + * config.h.win32: Add non-definition of HAVE_LSTAT, just for + completeness. + + * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat. + + * gtk/gtk.def: Removed CRs. + + * gtk/makefile.msc: Correct include path to Win32 GDK version (in + ..\gdk\win32). + + * gdk/win32/makefile.msc: Correct upwards relative paths. + +Mon Mar 15 03:38:34 1999 George Lebl + + * gtk/gtkdnd.c: (gtk_drag_highlight) swap the + gtk_drag_highlight_expose and gtk_drag_highlight_paint since + it was connecting a void function to expose_event and the int + returning function to the draw signal + +1999-03-14 Jeff Garzik + + * configure.in: + Use correct path to libgmodule.la when ref'ing uninstalled copy + of glib. (Already in stable branch, Bug #417) + +1999-03-15 Tor Lillqvist + + Win32 merge and general portability stuff: + + * acconfig.h,configure.in: Check for . + + * gdk/win32: New directory (actually, been there for a while). + + * gtk/fnmatch.c: Include for G_DIR_SEPARATOR, WIN32 and + NATIVE_WIN32, and use these. Always case fold on Win32. No + backslashed escapes on native Win32. + + * gtk/{gtk.def,makefile.msc}: New files. + + * gtk/Makefile.am: Add above new files. + + * gtk/{gtkaccelgroup,gtkbindings}.c: Include + instead of . + + * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include + config.h. Protect inclusion of , , and + appropriately. + + * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much). + Use ABS() (from ) instead of abs(). + + * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion + of gtk (and thus glib) headers, so that WIN32 will be + defined. With MS C, include for mkdir prototype. + + * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add + some casts, needed by MS C. + + * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't + implemented). + + * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include + only on X11 platform, otherwise . Use + G_SEARCHPATH_SEPARATOR_S and g_module_build_path. + + * gtk/gtkmain.h: Mark variables for export/import on Win32. + + * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case + the event is not a hint, or its window is not the slider. Needed + on Win32, at least. + + * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use + unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and + G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use + a subdirectory of the Windows directory as gtk system + configuration directory. + + * gtk/gtkselection.c: No chunks on Win32. + + * gtk/gtksocket.c: Not implemented on Win32. + + * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path. + + * gtk/makeenums.h: Include gdkprivate.h after gdk.h. + + * gtk/maketypes.awk: Declare variables with a macro that expands to + necessary export/import magic in the case of Win32. + + * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers. + +1999-03-13 Raja R Harinath + + * configure.in (gdk_wc): Move widechar tests from `glib' to here, + since those were meant only for gdki18n.h. + * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_* + for widechar tests. + * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h. + +1999-03-13 Tor Lillqvist + + * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate + gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h. + + * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is + installed) to CFLAGS. + + * gdk/Makefile.am: Add rules for gdkconfig.h. + + * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing + APIs. + + * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via + gdkx.h anyway when compiling for X11. + (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In + general): Merge in Win32 version. + + * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32 + version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde + expansion (if we don't have HAVE_PWD_H), allow for drive + letters. UNC paths (\\server\share\...) are not handled yet. Also, + included code from Craig Setera's port to Win32 (the one that uses + X11, and the cygwin dll), even if it probably will be abandoned. + + * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if + the user entered one herself. This way one can complete *.h and + don't get matches on any .help files, for instance. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + + * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix + provided by Olaf Dietsche . + +1999-03-09 Federico Mena Quintero + + * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced + the number of calls to gdk_draw_point() (and thus to X) by + clipping the points by hand. + + * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of + the clip parameter. + (gtk_handle_box_paint): Only paint the handle if the expose area + intersects it. + +Sun Mar 7 18:46:37 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) + + * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.) + +Sun Mar 7 11:43:34 1999 ape@spacetec.no (Asbjorn Pettersen) + + * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes. + Added function gen_8_3_dll_name(gchar *name, gchar *fullname). + +Fri Mar 5 09:12:24 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in + textmode (O_TEXT) for OS/2 version. + +Sun Feb 28 16:46:02 1999 Stefan Jeske + + * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to + GtkSpinButton, "input" and "output", to make the output more flexible. + The user has to provide a mapping between adjustment->value and the + output string (and vice versa, if the spin button is editable). + See testgtk for examples. + +Sat Feb 27 01:18:47 1999 Tim Janik + + * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started + new one. + + * configure.in: set gtk+ version to 1.3.0. +======= * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, +>>>>>>> 1.2802 diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0 index fbd5888e3d..baae1d9764 100644 --- a/ChangeLog.pre-2-0 +++ b/ChangeLog.pre-2-0 @@ -1,3 +1,10 @@ +Sun Jan 13 23:23:22 2002 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_compute_hints): Fix problem where + widget->requisition was being used instead of + gtk_widget_get_child_requisition (), causing geometry widgets + with usizes to misbehave. + 2002-01-14 Sven Neumann * gtk/gtkrc.c: g_getenv() returns a const string. @@ -16366,5 +16373,8616 @@ Thu Nov 9 11:23:22 2000 Jonathan Blandford 2000-11-02 Havoc Pennington +<<<<<<< ChangeLog + * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and + use stock buttons. Should be 100% source compatible, appropriate + filesel fields now point to dialog->vbox and dialog->action_area. + On the bizarre side, dialog->action_area and filesel->action_area + are not the same widget. + (gtk_file_selection_init): Put some padding around the selection + entry, so it isn't touching the GtkDialog separator. + + * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, + use stock buttons, etc. Should also be source compatible. + Set the dialog default title in _init not _new(). + + * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): + Use stock buttons; don't put a button box inside the existing + dialog button box. Don't bother with push/pop colormap anymore. + + * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more + specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT + for message dialog, and necessary for the font selection and color + selection with help and apply buttons. + + * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer + to the created button widget. Set GTK_CAN_DEFAULT on the button. + (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing + between buttons, put less padding around the action area. + (gtk_dialog_run): Exit on unmap rather than on destroy. + This will also exit the loop if the widget is hidden. + (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT + instead of GTK_RESPONSE_NONE; since we're already adding a bunch + of GTK_RESPONSE_* stuff, this seems cleaner, and lets you + special-case delete event. + + * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment + formatting + +Sun Nov 5 05:32:39 2000 Tim Janik + + * gtk/testgtk.c (uposition_stop_configure): provide a toggle + button to temporarily disable position recording in the + "saved position" test. + +Sat Nov 4 05:37:17 2000 Tim Janik + + * gtk/gtkthemes.c: added compat code that temporarily implements + GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is + going to be revamped by owen's upcoming GtkModule patches, but + untill then people want gtk to build, right? ;) + +2000-11-04 Havoc Pennington + + * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member + list + + * docs/Changes-2.0.txt: Add note about + gtk_container_get_toplevels() + + * gtk/gtktextview.h: formatting + + * gtk/gtktextview.c: don't start descriptions with "Returns", + confuses gtk-doc + +Sat Nov 4 10:12:27 2000 Owen Taylor + + * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS, + look for glib-2.0.m4 not glib.m4. (Ali Abdin) + +2000-11-03 Havoc Pennington + + * gtk/gtktexttagtable.c: Docs + (gtk_text_tag_table_size): return a signed int + + * gtk/gtktexttag.c: s/tkxt/text/g; write documentation + (gtk_text_tag_event): make the event_object a GObject + + * gtk/gtktextview.c: Write API docs for all functions. + + * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value + for gtk_text_view_get_window_type() called on one of the private + windows. + + * gtk/gtktextview.c: Instead of accessing text_view->buffer + directly, call get_buffer() which demand-creates a default + buffer. So gtk_text_view_new() can be used to create a view with a + default buffer in it, if you just want an empty text box users can + put data in. Useful for GUI builders also. + +2000-11-03 Pablo Saratxaga + + * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5; + the charset encodign portion MUST be in lowercase. + * gtk/gtkrc.az: added file for Azeri language + +2000-11-03 Havoc Pennington + + Get widgets working on the btree/buffer side. Display of them + still doesn't work. + + * gtk/gtktextview.c: start implementing child widget stuff + + * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function + + * gtk/gtktextlayout.c: handle embedded widgets + + * gtk/gtktextdisplay.c: handle embedded widgets + + * gtk/gtktextchild.c: Implement all the child anchor goo + + * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New + function + + * gtk/gtktextbtree.c: Add child anchor table to the btree struct + (insert_pixbuf_or_widget_segment): abstract out common portions of + creating a child anchor or a pixbuf segment. + (gtk_text_btree_create_child_anchor): new function + (gtk_text_btree_unregister_child_anchor): new function + + * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the + allocate_child signal on GtkTextLayout + + * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return + values + (gtk_text_iter_get_child_anchor): new function + + * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a + default handler for the changed signal, which calls + gtk_text_buffer_set_modified(), instead of just always emitting + changed then calling set_modified() manually. I guess this is + maybe more flexible. It seems logical. + +Fri Nov 3 08:58:38 2000 Tim Janik + + * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_' + now. + + * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now. + +Thu Nov 2 14:10:51 2000 Owen Taylor + + * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have + been marked static. + +2000-11-02 Havoc Pennington + + * gtk/testgtk.c (create_labels): had a test backward + + * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC + fields, so the dest GC ends up with the correct clip origin, + etc. Fixes a bug where colored labels didn't redraw + properly. + +2000-11-02 Alexander Larsson + + * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c, + gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c, + gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c: + Add last argument to t_type_register_static call. + + * gdk/linux-fb/gdkdrawable-fb2.c: + Add last argument to t_type_register_static call. + export the get_image drawable virtual function. + + * gdk/linux-fb/gdkimage-fb.c: + Add last argument to t_type_register_static call. + rename gtk_image_get to _gdk_fb_get_image and + export it for use by gdkdrawable-fb2. + + * gdk/linux-fb/gdkprivate-fb.h: + export _gdk_fb_get_image. + + * gdk/linux-fb/gdkselection-fb.c: + Add new api call stubs. + + * gtk/Makefile.am: + Missing ( in linux-fb part. + + * modules/linux-fb/Makefile.am: + Must link with gdk_pixbuf or get unresolved symbol. + +2000-11-01 Havoc Pennington + + * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use + GTK_TYPE_TEXT_ITER and BOXED marshallers + + * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto + + * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto + + * gtk/gtk-boxed.defs: add GtkTextIter + + * gtk/gtkmarshal.list: Add marshallers for text widget that + properly use OBJECT and BOXED + +2000-11-01 Havoc Pennington + + * gtk/testgtk.c (create_labels): Test set_markup_with_accel() + + * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval + before returning it. + +2000-11-01 Havoc Pennington + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): + Clip the rectangle to be rendered to the drawable, since + get_from_drawable() requires a region within the drawable + +2000-11-01 Havoc Pennington + + * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4 + from coordinates. + +Wed Oct 25 20:10:57 2000 Owen Taylor + + * gdk/gdkevents.c (gdk_event_copy): Only ref the window if + it isn't NULL. + +2000-11-01 Havoc Pennington + + * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList + on a label + (gtk_label_finalize): unref the attr list if any. + + * gtk/testgtk.c (create_get_image): close test on second click + (make_message_dialog): close dialog if it exists + + * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute + + * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not + gdk-pixbuf + + * gtk/gtklabel.c (gtk_label_set_markup): new function to set label + from Pango markup format + (gtk_label_set_markup_with_accel): ditto but with accelerator + parsing + + * gtk/gtkimage.c (gtk_image_expose): reformatting. + + * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to + reflect current state of GDK - use gdk_drawable_get_colormap, etc. + Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to + call gdk_window_get_origin(). + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): + implement GDK_PIXBUF_ALPHA_FULL + +Wed Nov 1 03:43:42 2000 Tim Janik + + * gtk/gtksignal.c (gtk_signal_compat_matched): make use of + g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and + g_signal_handlers_disconnect_matched to block/unblock and disconnect + multiple handlers respectively, instead of only treating the + first handler found (bug reported by owen). + +Mon Oct 30 19:23:50 2000 Jonathan Blandford + + * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function. + + * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function. + + * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c + gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c, + gtk/gtktreeviewcolumn.h: Fixed inline docs. + + * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree + widget. Needs writing someday. + + * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to + the docs. + +2000-10-30 Havoc Pennington + + * gtk/gtktextview.h, gtk/gtktextview.c: + Rename delete_at_cursor delete_from_cursor, and + move to move_cursor. + +2000-10-30 Havoc Pennington + + * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c, + gtktextbuffer.h, gtktextchild.c, gtktextchild.h, + gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h, + gtktextiter.c, gtktextiter.h, gtktextiterprivate.h, + gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h, + gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h, + gtktexttag.c, gtktexttag.h, gtktexttagprivate.h, + gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c, + gtktexttypes.h, gtktextview.c, gtktextview.h: + + Massive reindentation and reformatting. Arg alignment and comments + still need fixing in various places. + +2000-10-30 Havoc Pennington + + * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals + to be named insert_at_cursor and delete_at_cursor so C++ can + handle them. + +2000-10-28 Tor Lillqvist + + * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not + to get a double directory separator in case the home directory + ends with one. This would cause trouble especially on Windows, + where the path will be confused with the syntax for an an UNC + (network share) path \\server\share\path. + (gtk_rc_add_initial_default_files): Ditto. + +Sat Oct 28 02:33:09 2000 Robert Brady + + * gtk/gtkmarshal.list: add new marshallers for GtkTextView. + + * gtk/gtktextview.c: Use correct marshallers. + +Fri Oct 27 17:56:26 2000 Jonathan Blandford + + * gtk/gtkliststore.c: Not sure how this ever worked. Fixed it to + use new iter stuff, and added all the appropriate signals et al. + + * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this + code is internal to gtk only. + +2000-10-28 Tor Lillqvist + + * gtk/gtk.def + * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use + glib-genmarshal etc. + +Fri Oct 27 20:15:00 2000 Tim Janik + + * gtk/Makefile.am: added dependancies for testtextbuffer which broke + parallel builds. + +Fri Oct 27 18:51:44 2000 Tim Janik + + * gtk/gtksignal.[hc]: adapt to GSignal signature changes. + +2000-10-27 Robert Brady + + * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), + en_GB (British), ia (Interlingua). + +2000-10-26 Havoc Pennington + + * gtk/gtktextiter.c (my_strrstr): fix constness warning + + Fixed output of: + nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_ + + * gtk/gtktextsegment.c (char_segment_new): rename + (_char_segment_new_from_two_strings): rename + (_toggle_segment_new): rename + + * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static + (make_clipboard_widget): make it static + (text_get_func): static + (text_clear_func): static + + * gtk/gtkcolorsel.c (adjustment_changed): make this function + static + (hex_changed): make it static + (hsv_changed): make it static + (opacity_entry_changed): make it static + + * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk + (toggle_segment_check_func): rename with _gtk + + * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk + (_widget_segment_new): rename + (_widget_segment_add): rename + (_widget_segment_remove): rename + (_widget_segment_ref): rename + (_widget_segment_unref): rename + + * gtk/gtktextmark.c (_mark_segment_new): Rename + _gtk_mark_segment_new + +2000-10-26 Havoc Pennington + + * gtk/gtkmarshal.list: add new marshallers used by the text widget + * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller + types + + * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix + marshaller types + + * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h, + gtk/gtktextdisplay.c: We need to preserve Tk copyrights and + license on these files. + + * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this + work. + + * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to + runtime random number different for each tree, instead of + a constant I made up. + +Thu Oct 26 07:36:16 2000 Tim Janik + + * gtk/Makefile.am: buncha cleanups, kludged build sources + dependencies with a Makefile: oldest-source-stamp dependancy + for the moment. automake is really fighting us here, with + intentionally not allowing user-defined rules or dependancies + prior to it's -include $(DEP_FILES) statement. sucks rocks! + + * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h + to public headers. tehy have a comment stating that they are + "semi-public" aren't included by gtk.h and if enums popup there, + they can be /*< skip >*/-ed. + + * gtk/gtktextlayout.h: + * gtk/gtktextdisplay.h: indentation fixes, comment fixes, + added LGPL... + +Wed Oct 25 20:40:25 2000 Jonathan Blandford + + * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to + GtkTreeIter. Added iterators everywhere. + + * gtk/gtktreeviewcolumn.c: Changed to use the iterators. + + * gtk/gtktreeviewselection.c: Changed to use the iterators. + + * gtk/gtktreestore.c: Changed to use the iterators. + + * gtk/gtkliststore.c: Commented out the code. Will convert to + iterators tomorrow. + + * gtk/gtkmodelsimple.c: Commented out the code. Will convert to + iterators tomorrow. + + * gtk/treestoretest.c: Changed to use iterators. + + * demos/testgtk/main.c: Moved to use the new iterator system. + +Thu Oct 26 02:10:32 2000 Tim Janik + + * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid + localization misbehaviour. + + * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's + a useless type without copy/free. + + * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead + of GTK_TYPE_CTREE_NODE. + +Thu Oct 26 00:51:52 2000 Tim Janik + + * gtk/gtksignal.c: + (gtk_signal_emitv): use g_value_set_static_{string|boxed} where + applicable. + + * gtk/gtk-boxed.defs (GtkSelectionData): specify + gtk_selection_data_copy and gtk_selection_data_free + do GtkSelectionData work as params in signals. + +Wed Oct 25 20:47:41 2000 Tim Janik + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed + implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that, + couldn't they at least give it a non-standard name? + + * gtk/gtktextlayout.c: arg! yet another implementation of + gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy? + + * gtk/gtktextbuffer.c: gotcha! captured a vagabonding + gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back + home. now i know this _is_ a conspiracy. + + * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for + ::state-changed. + + * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): + (gtk_accel_group_create_add): marshaller signature fixups. + + * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups, + pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM. + + * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid + anymore. + +Tue Oct 24 23:59:21 2000 Tim Janik + + * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since + due to the signal system changes, it wouldn't build currently. to + be fixed soon. + + * docs/Changes-2.0.txt: GtkSignal/GSignal updates. + + * gtk/gtkwidget.c: ::direction_changed takes an enum as argument, + so it needs gtk_marshal_VOID__ENUM() instead of + gtk_marshal_NONE__UINT(). + + * gdk/gdk*.c: adapted type registration functions. + + * gtk/gtkbindings.c: + * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is + gone. + + * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType. + + * gtk/gtkobject.c: + (gtk_object_destroy): + (gtk_object_shutdown): fixed recursion guards. basically we have to + catch the case where any of GObject.shutdown() or gtk_object_destroy() + is called during ::destroy, and avoid recursion there. + + * gtk/gtktypeutils.c: + * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with + boxed_copy/boxed_free. this needs a more general solution based on a + publically installed code-generator utility. + + * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED, + glib's gobject has support for that now. + define GtkSignalMarshaller in terms of GSignalCMarshaller. + +Mon Oct 23 09:36:42 2000 Tim Janik + + * gtk/gtksignal.[hc]: + * gtk/gtkmarshal.[hc]: + * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't + compile gtkmarshal.c on its own anymore, just include it in gtksignal.c. + removed #include s all over the place, gtksignal.h takes + care of that. + + * *.c: marshaller name fixups. + + * gtk/gtkmarshal.list: added a comment briefing the format. + +Sun Oct 22 23:14:39 2000 Tim Janik + + * gtk/gtksignal.[hc]: nuked old implementation. we mostly have + compatibility macros here now. more specifically, most of + the API is preserved (yes, _most_, nonwithstanding the + following exceptions listed, the API is stil lHUGE ;) + things that got removed completely: + GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(), + gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(), + gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(), + gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(), + gtk_signal_remove_emission_hook(). + non-functional functions variants: + gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook(). + the GtkCallbackMarshal argument to gtk_signal_connect_full() is + not supported anymore. + (gtk_signal_compat_matched): new internal function to aid + implementation of the compatibility macros, it provides + functionality to block/unblock/disconnect handlers based + on func/data. + + * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType, + + * *.c: adaptions to new type registration API signatures. + +Fri Oct 20 15:26:33 2000 Tim Janik + + * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge. + +2000-10-25 Robert Brady + + * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change, + gdk_property_delete): If window == NULL, assume the root window. + (restoring the behaviour that was in 1.2). + + * gtk/testtext.c (save_buffer): Allow creation of new files when + saving. + + (fill_file_buffer): Don't die if a UTF-8 sequence is split across + calls to read(). + +2000-10-25 Tor Lillqvist + + * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11. + + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkimage-win32.c + * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the + X11 backend. + + * gdk/win32/gdkcc-win32.c + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkfont-win32.c + * gdk/win32/gdkinput-win32.c + * gdk/win32/gdkmain-win32.c + * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall. + +2000-10-24 Havoc Pennington + + * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make + it a static function + + * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should + redraw text when a tag is applied to it. + + * gtk/gtktexttag.c (gtk_text_tag_affects_size) + (gtk_text_tag_affects_nonsize_appearance): private functions to + see if a tag requires various kinds of redraw/layout to be queued + up. + + * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock + + * gtk/testtext.c (fill_example_buffer): Put the cursor + at the start of the buffer, so search works by default + + * gtk/gtktextiter.c (lines_match): init match_start always + + * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New + function, get iter at a line + a byte index + + * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function, + to set byte position within a line + (gtk_text_iter_check): remove leftover G_BREAKPOINT thing + +2000-10-23 Havoc Pennington + + * gtk/testtext.c: Re-enable the "find" dialog + + * gtk/testgtk.c: Add test for gdk_drawable_get_image + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where + the arguments to gdk_draw_drawable were in the wrong order + (gdk_window_paint_init_bg): This function was ignoring the + init_region, instead of clipping to it, so the entire backing + pixmap was cleared on every begin_paint() + (gdk_window_begin_paint_region): Hmm, the same list-walking bug + was in here again, the loop kept using the same GtkWindowPaint + over and over. + (gdk_window_begin_paint_region): Fix a bug where we had two + x_offset instead of x_offset and y_offset + + * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable + before we get the image. + (gdk_draw_drawable): get the composite before we draw the drawable. + (gdk_drawable_real_get_composite_drawable): default + get_composite_drawable implementation that returns the drawable + itself + + * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add + get_composite_drawable virtual function + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy + list-walking bug + + * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to + make this work if the source drawable is a GdkDrawableImplX11 + instead of a public drawable type. This is really broken; the + problem is that GdkDrawable needs a virtual method get_xid(), but + of course that doesn't work in practice. Enter RTTI. + + Also, improve mismatched depth message. + + * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for + GdkPixmap + + * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init): + install _gdk_x11_get_image as our implementation of get_image + + * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to + _gdk_x11_get_image and export for use in gdkdrawable-x11.c + + * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around + gdk_drawable_get_image + + * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image + + * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize + get_image + + * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird + trailing semicolon after for loop + +Mon Oct 23 12:07:57 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem + where font_desc for widget's context lagged widget's font_desc by + one step. + +2000-10-22 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c + * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings. + + * gtk/makefile.mingw.in + * gtk/gtk.def: Updates. + + * gtk/testgtk.c: sleep() is called _sleep in MS's C + library. + + * gtk/gtkimcontextsimple.c: Include for bsearch(). + + * gtk/makefile.msc: Remove + + * gtk/makefile.msc.in: New file, like makefile.mingw.in. + + * gtk/Makefile.am: Add it. + + * configure.in: Generate it. + + * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor) + * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return + something even if not implemented, to satisfy picky MSVC. + + Patches by Hans Breuer: + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call + SetBkMode() and SetTextAlign() before calling + pango_win32_render(). + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values): + Set hcliprgn to NULL after destroying it. + (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL. + + * gdk/win32/gdkgeometry-win32.c + (_gdk_windowing_window_queue_antiexpose): More effective + implementation. + + * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's + depth as default, not the visual's. + + * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard + against empty title. + + * gdk/win32/gdkprivate-win32.h: Define a helper macro, + IMAGE_PRIVATE_DATA. + + * gdk/win32/gdkimage-win32.c: Use it. + +2000-10-22 Robert Brady + + * configure.in: Check for bind_textdomain_codeset + + * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset + present, make use of it. + + Add a translatable string "default:LTR" which, if translated + to "default:RTL", will cause the default direction to be + Right-to-Left. + + * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget + direction if marked as flippable. + + * gtk/gtkhscale.c: Mark widget as flippable. + +2000-10-04 Havoc Pennington + + * gtk/testgtk.c (create_buttons): create some stock buttons + with the default accel group + (create_image): test some new GtkImage features + (make_message_dialog): test GtkMessageDialog + (create_modal_window): fix someone's bizzarro indentation + + * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement + GTK_WIN_POS_CENTER_ON_PARENT. + Add "destroy with parent" setting, which means the window goes + away with its transient parent. + (gtk_window_get_default_accel_group): get the default accel group + for the window. + (gtk_window_set_destroy_with_parent): set/unset destroy with + parent flag + (gtk_window_read_rcfiles): invalidate icon set caches + after reloading rcfiles + + * gtk/gtkenums.h (GtkWindowPosition): add + GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog + on its parent window when the dialog is mapped for the first time. + + * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add + a simple message dialog class + + * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event + handler to emit response signal, and maybe later it would + honor a hide_on_delete flag - though that isn't there yet. + Set border width on the vbox to 2, so we get some padding. + Use a button box for the action area. + (gtk_dialog_key_press): synthesize a delete event if Esc + is pressed and the GtkWidget key press handler didn't + handle the escape key. + (gtk_dialog_new_with_buttons): new function creates a dialog + with some default buttons in it. + (gtk_dialog_add_action_widget): add an activatable widget + as a button in the dialog - you can also add a non-activatable + widget by accessing the action area directly. + (gtk_dialog_add_button): add a simple button - stock ID or + label - to the action area + (gtk_dialog_response): emit response signal + (gtk_dialog_run): block waiting for the dialog, return + the response. Override normal delete_event behavior, so that + delete_event does nothing inside gtk_dialog_run(). +======= +>>>>>>> 1.2802 + +<<<<<<< ChangeLog + * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal + emitted when an action widget is clicked or the dialog gets + delete_event + + * gtk/gtk.h: add gtkmessagedialog.h + + * gtk/Makefile.am: add gtkmessagedialog.[hc] + +2000-10-18 Havoc Pennington + + * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug + where any number of empty lines would get skipped + + * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the + edge. + + * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the + warning about invalid iterators (explain more thoroughly) + (gtk_text_iter_in_region): rename gtk_text_iter_in_range + + * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less + big + + * demos/*.c: Add error handling + + * gtk/gtktextbuffer.c: don't modify const iterators + + * gtk/gdk-pixbuf-loader.c: Add full error handling here + + * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors + on file load + + * gtk/gtkiconfactory.c: Update to reflect addition of error + handling to gdk-pixbuf loaders + +Wed Oct 18 11:14:05 2000 Owen Taylor + + * configure.in demos/Makefile.am demos/testgtk/*: Start of work to + move to new modularized testgtk. + +2000-10-17 Jonathan Blandford + + * gtk/gtktreeview.c: Draw the arrows correctly. + + * gtk/gtktreemodel.c: Added user docs. + + * gtk/gtk.h: remove gtktreedatalist.h. + + * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct + parent when generating my type. + + * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE, + POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT. + +2000-10-16 Jonathan Blandford + + * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move + GtkTreeModel from object to interface. + +2000-10-16 Havoc Pennington + + * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing + compilation + +2000-10-16 Jonathan Blandford + + * gtk/gtktreeselection.c: Add API documentation to all public + functions. + + * gtk/gtktreeviewcolumn.c: Added API documentation to all public + functions. + +2000-10-15 Jonathan Blandford + + * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function + proposed by Guy Harris . Also, added API + docs to all public functions. + + * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h, + gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c, + gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c, + gtk/gtktreemodel.h, gtk/gtktreeselection.c, + gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node + issue. + +2000-10-14 Robert Brady + + * configure.in: Added "fa" (Persian) to ALL_LINGUAS. + +2000-10-12 Jonathan Blandford + + * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added + values other then G_TYPE_STRING. + * gtk/gtktreeselection.c: Minor commenting updates. + * gtk/gtktreeview.c: Format updates. + +2000-10-09 Tor Lillqvist + + * README.win32: Update. + + * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two + lines that had been deleted by mistake (?). + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle + also the case fg==white and bg==black (but still not randomly + coloured cursors). Thanks to Wolfgang Sourdeau. + + * gdk/win32/*.c: Silence gcc -Wall. + + * gtk/gtk.def: Add missing entry points. + + Fixes by Hans Breuer: + + * gdk/makefile.msc + * gdk/win32/makefile.msc: Update. + + * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined, + some MSVC thing, presumably), cause breakpoint on failures. Add + GDK_NOR case. Call g_log_set_always_fatal. + + * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle + should be pased by reference. + + * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly. + + * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert. + + * gdk/win32/gdkevents-win32.c + * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE. + + * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and + implementation object. + + * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables, + not just windows. + + * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize): + Use the wrapper object. + +2000-10-06 Havoc Pennington + + * Makefile.am (SRC_SUBDIRS): contrib subdir + + * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library, + so it can be used in Xlib version + + * demos/testpixbuf.c (update_timeout): error checking from 1.0 + tree + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync + change from 1.0 tree that returns first frame of animation + if the loaded file is an animation. + + * contrib: add new directory to hold stuff that comes with GTK+ + but isn't really part of GTK+ (for now, gdk-pixbuf-xlib) + + * configure.in: add contrib/* + +2000-10-05 Havoc Pennington + + * demos/testpixbuf-save.c: add pixbuf save test + + * demos/Makefile.am: add testpixbuf-save.c + +2000-10-05 Jonathan Blandford + + * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with + GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c + * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/ + * gtk/gtktreeselection.[ch]: Replaced + "node_selected"/"node_unselected" signal with "selection_changed" + signal. + +2000-10-04 Jonathan Blandford + + * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new + tree widget. + +2000-10-04 Jonathan Blandford + + * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle + drawing. + +Wed Oct 4 15:52:15 2000 Owen Taylor + + * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed): + Move list pointer forwards before removing item from + list. (Crash reported by Salmaso Raffaele) + + * gdk/gdkwindow.h: Remove spurious trailing , + + * gdk/Makefile.am (LDFLAGS): You can't do interlibrary + dependencies on uninstalled libraries, sorry folks. + +2000-10-04 Havoc Pennington + + * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h, + gtk/gtkiconfactory.c: Fix copyrights + + * demos/testpixbuf.c: add inline pixbuf test + +Mon Sep 25 15:05:17 2000 Owen Taylor + + * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify): + Add gdk_window_iconify. + + * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c + (gdk_window_set_geometry_hints): Add win_gravity + to geometry structure. + + * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): + Implement _NET_WM_PING. + + * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): + Set _NET_WM_PID on the client leader. + + * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name): + Handle UTF-8 better. + + * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle + UTF-8 better, set _NET_WM_NAME as well. Only set + icon name if it hasn't previously been explicitely + set. + +2000-10-03 Havoc Pennington + + * gtk/testtextbuffer.c: clean up trailing whitespace, + add extensive tests for tag toggle iteration. + + * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan + distance + + * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag): + optimize case where the tag root is on level 1 + (gtk_text_line_previous_could_contain_tag): attempt to implement + (gtk_text_line_next_could_contain_tag): Abstract out node_compare + functionality + + * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle): + Implement this, though not very efficiently. + + * gtk/gtktextiterprivate.h: reformat + + * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end + iterator + + * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix + this to properly revalidate the iterators. + + * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work + properly at the end of the line (and therefore on empty lines) + + * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee, + maybe we should return a value... + +2000-10-03 Tor Lillqvist + + * config.h.win32: Guard definition of alloca(). glib.h now handles + that. + + * gdk/gdk.def + * gtk/gtk.def: Add new entry points. + + Changes just to make GTK+ build without errors on Win32. No hope + of it working in its current state, though...: + + * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings. Add + some functions from the X11 backend, just to make GTK+ build. + + * gdk/makefile.mingw.in + * gtk/makefile.mingw.in: Use correct gdk_pixbuf version + number. Add new object files. + + * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use + GetMessageTime to get timestamp (where on X11 uses + gdk_x11_get_server_time()). + +2000-10-02 Havoc Pennington + + * gtk/gtktextview.c: text_window_* weren't static and should have + been. + Start work on child widgets; not yet complete, syncing to + office computer. + + * gtk/gtktextchild.h: change this to contain a public interface, + starting work on child interfaces. + * gtk/gtktextchildprivate.h: move private interfaces here + + * gtk/Makefile.am: update to reflect gtktextchildprivate.h + + * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h, + gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, + gtk/gtktextmark.c: copyright notices + + * gtk/gtktextmarkprivate.h: reformat, and put _ in front of + internal functions + + * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of + internal function + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): + Reformatting + +2000-09-30 Havoc Pennington + + * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle + NULL start/end pointers + + * gtk/gtktextbuffer.c: Write some docs + (gtk_text_buffer_get_selection_bounds): Allow start/end to be + NULL, so you can just check whether there's a selection. + + * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to + cleanup_line or segments_changed ourselves, it gets done + in unlink_segment + + * gtk/gtktextmark.h: + s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/ + + * gtk/gtktextsegment.h: Clean up some indentation and naming mess + + * gtk/gtktextmark.c: delete some more old Tk cruft + + * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to + mark before removing it, so we can emit MARK_DELETED with a valid + pointer. + (gtk_text_buffer_mark_set): hold ref across signal emission + + * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve + whining about attempts to delete special marks + + * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with + underscore, since it's internal. + + * gtk/gtktextbuffer.h: Remove find_string prototype, this is + now implemented in terms of iterators in gtktextiter.h + + * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): + New function, destructively sets contents of buffer. Also + a convenient way to clear the buffer by setting text to "" + + * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat + multiline string literal + + * gtk/testtext.c (text_changed_callback): Redraw line numbers if + text changes. + + * gtk/gtktextiter.c (forward_char): Return FALSE if new location + is not dereferenceable + (gtk_text_iter_forward_lines): fix return value + +2000-09-29 Havoc Pennington + + * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation + + * gtk/gtktextview.c: Implement drag thresholding; change functions + that set border window size to have nicer name + (gtk_text_view_mark_set_handler): Fix this to have the + right signature. + + * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes + + * gtk/testtext.c: Update with API changes, put line numbers on + both sides. + + * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap + with this + + * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with + pixbuf; delete a big block of #if 0 Tk code + + * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace + insert_pixmap with insert_pixbuf + +2000-09-29 Martin Baulig + + * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid + confusion with the GdkPixbuf of the GNOME 1.x platform. + +2000-09-29 Havoc Pennington + + * gtk/gtktextview.c: Implement the side windows. + + * gtk/testtext.c: Implement simple line numbering in the + left side window; seems to make scrolling sloooow. Oops. + Also, cursor blink is for some reason causing redraws + of the line numbers. Should investigate... + +2000-09-28 Havoc Pennington + + * gtk/gtktextview.c: Set up infrastructure to deal with lots of + scrolling child windows, and draw focus rectangle properly. + + (gtk_text_view_buffer_to_window_coords): + Coordinate transformation to deal with all these freaking windows + and offsets + (gtk_text_view_window_to_buffer_coords): transform the other way + + * gtk/testtext.c (create_buffer): Update to match Pango API change + + * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the + anonymous tags + (foreach_unref): don't emit remove signal from finalize, just + set tag's parent to NULL + +2000-09-26 Havoc Pennington + + * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove + Fix some warnings + +2000-09-26 Havoc Pennington + + * gtk/Makefile.am (gtk_private_h_sources): Move more text widget + headers into the private header list + + * Makefile.am (pkgconfig_DATA): install pkg-config files + + * configure.in: add pkg-config files + + * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files + + * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate + outstanding icon caches on theme change. + + * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three + important types: + + (GtkIconSource): Specification for creating a pixbuf + appropriate for a direction/state/size triplet from + a source pixbuf or filename + + (GtkIconSet): List of GtkIconSource objects that are used to + create the "same" icon (e.g. an OK button icon), and cache for + rendered icons + + (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look + up the icon set for a given stock ID. GTK maintains a stack of + GtkIconFactory to search, and applications or libraries can add + additional icon factories on top of the stack + + * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse + the set of GtkIconSource specified for a given stock ID into + a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the + RcStyle, under the specified stock ID. + + * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function + render_icon used to derive a GdkPixbuf from a GtkIconSource. + This allows people to theme how prelight, insensitive, etc. are + done. + + (gtk_style_lookup_icon_set): Look up a stock ID in the list of + icon factories for a style, and return the resulting + icon set if any. + + (gtk_style_render_icon): Render an icon using the render_icon + method in the GtkStyleClass. + + * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): + Use the style for a given widget to look up a stock ID, get the + icon set, and render an icon using the render_icon method + of the style + + * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type + (contains information about a stock item), the built-in stock item + IDs, and functions to add/lookup stock items. + + * gtk/stock-icons/*: Stock icons that come with GTK + + * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns + a button based on a GtkStockItem + (gtk_button_new_accel): Takes a uline string and accel group, and + installs the accelerator. + + * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic + image-display widget. + +2000-09-25 Havoc Pennington + + * gtk/gtktexttypes.c: Remove Latin1 conversion stuff + + * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): + Fix a bug when removing node data, we didn't properly + re-splice the linked list after removing the data. + + * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through + GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget + + * gtk/gtktextbuffer.c (selection_received): fix g_convert usage + + * gtk/gtktextlayout.c (set_para_values): Set tab array + for the layout from the GtkTextTag. + + * gtk/gtktexttypes.h: delete tab and search cruft, + remove g_convert() in favor of GLib version + + * gtk/gtktexttypes.c: remove tab implementation from here, + move to Pango + + * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement + tab stuff using new PangoTabArray from Pango + + * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove + unused border_width stuff + +Thu Sep 14 12:21:12 2000 Owen Taylor + + * gtk/gtktexttypes.[ch]: Remove g_convert (moved to + glib) and now useless utf_to_latin1() latin1_to_utf() + + * gtk/gtktextview.[ch]: Change ::move_insert and + ::delete_text action signals to ::move and ::delete; + create the signals with the right enumeration type, + not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d, + C-v bindings, change Home, End to move to beginning/end + of line, Add C-Home C-End to move to beginning/end + of buffer. Change ::cut_text to ::cut_clipboard, etc; + combine ::scroll_text into ::move; use new GtkSelectionData + functions to simplify DND text handling. + + * gtk/gtkenums.h gtk/gtktextview.h: Move movement, + deletion enumerations here, rename enumeration values to + be consistently plural. + + * gtk/gtktextbuffer.c: Use new clipboard interfaces + for cut/copy/paste and primary selection. + + * gtk/gtktextbuffer.[ch]: Remove excess time and + 'interactive' arguments from cut/copy/paste; + rename cut to cut_clipboard, etc; remove + gtk_text_buffer_get_clipboard_contents(). + + * gtk/gtktextlayout.[ch]: Add + gtk_text_layout_move_iter_to_line_end() to move the iter to + line ends. + + * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text): + Functions to set or get a UTF-8 string on the selection + data. + + * gtk/gtkclipboard.[ch]: New, simplified selection handling + interfaces. + + * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly + created widgets - one of these is useless if we don't. + + * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export + a public function clear all targets registered for the + widget. + + * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt: + Never call gtk_widget_realize() - that was just asking + for bizarre side-effects. + + * gtk/gtkselection.c (gtk_selection_owner_set): Call + gdk_selection_owner_set even if the widget is the + same so that we reliably update the timestamp on + the server. + + * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a + gdk_x11_get_server_time() function. + + * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h + gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h: + Add some tricky filtering on serial numbers for + selection clear events to fix up long-standard + race condition FIXME's in gtkselection.c. + + * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add + routines to convert from utf8 to compound text or + STRING and from a text property to UTF-8. + + * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add + a convenience function gdk_get_current_event_time(). + + * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy + and free selection_data->data properly + +Sat Sep 9 10:23:53 2000 Owen Taylor + + * gtk/gtkthemes.c: Remove some unecessary includes. + +2000-09-08 Jonathan Blandford + + * gtk/gtktextdisplay.c + * gtk/gtktextlayout.c + * gtk/gtktexttag.c + * gtk/gtktexttag.h + * gtk/testtext.c: Change the overstrike property to strikethrough, + to closer match pango. + +Fri Sep 8 14:28:00 2000 Owen Taylor + + * gtk/gtktextview.c: Fix up visibility so that focus, + cursor_visible and blink interact properly. Reenable cursor blink + which had been roughly disabled. Make blink and focus + properly per-view. + + * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible): + Add a flag for whether to display insertion cursor and + a function to set the flag. + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change + get_line_y() to get_line_yrange(), to be a bit more generally + useful. + +Thu Sep 07 20:54:33 2000 George Lebl + + * gtk/gtkmenu.c: in gtk_menu_set_submenu_navigation_region + do stop_navigating_submenu, to clear last timeout properly. + Also in gtk_menu_motion_notify move ignore_enter above + the conditional to make it always happen as suggested by Owen + +2000-09-07 Tor Lillqvist + + * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o + + * gdk/win32/gdkwin32.h: Add more definitions missing from the free + w32api headers. + + * gdk/win32/gdkprivate-win32.h: Add a couple of missing + declarations. + + * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings. + (gdk_win32_get_colormap): A line had been deleted by mistake. + + * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too. + (gdk_event_translate): Handle more virtual keycodes to be able to + generate GDK events for Control-comma, Control-period, etc. + + * gtk/gtk.def: Add some missing entry points. + +Thu Sep 7 11:47:02 2000 Owen Taylor + + * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c: + Doc comment fixing. (Mostly non-matching parameter names.) + + * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify + comments a little to avoid looking like a doc comment. + + * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to + GTK_INPUT_ERROR. (Should the mechanism for erros in spin button + conversions be changed to GError?) + + * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): + Move private #defines into .c file. + + * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize + order of argument addition, remove duplicates. + + * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass): + parent class is FrameClass, not BinClass. + + * gtk/gtk.h: Add gtkinvisible, which was missing. + (It's occasionalyl useful for client apps, if seldom.) + + * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER + #define. + +Wed Sep 6 09:53:15 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space + coordinates when creating window, instead of GDK-space + coordinates. (Avoid BadValue on too large windows.) + +2000-09-05 Sebastian Wilhelmi + + * configure.in (use_mmx_asm): Remove conftest* after use along the + lines of AC_TRY_COMPILE. + + * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead + of g_dirname, which is deprecated. + (gtk_rc_parse_any): Removed calls to + g_scanner_{freeze,thaw}_symbol_table, which are deprecated. + + * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy): + Removed calls to g_hash_table_{freeze,thaw}, as they are + deprecated now. + + * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename + instead of g_basename. + +2000-09-04 Elliot Lee + + * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid + ANSI warning. + +Sun Sep 03 00:47:08 2000 George Lebl + + * gtk/gtkwidget.h: Add some documenting comments about + GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT + just as owen said on irc. + + * gtk/gtkwindow.c (gtk_window_set_default): Don't blindly + set HAS_DEFAULT. Only set it if there isn't another window + holding it (a focus window which RECEIVES_DEFAULT) and only unset + it if the widget is not the focused window with RECEIVES_DEFAULT. + This fixes weird double default bugs in dialogs which has things + call gtk_window_set_default at times. + +Fri Sep 1 22:39:07 2000 Owen Taylor + + * gtk/gtkmenu.[ch] TODO.xml: Apply patch from + Nils Barth and David Santiago to improve submenu + navigation. The patch does this by creating a triangular + region from the point where the pointer leaves the + menu to the submenu. While the pointer is in + that region and a timeout has not expired, events + that would cause the active submenu to change are + ignored. + +Fri Sep 1 15:34:46 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where + moving a toplevel window immediately after sizing it would + result in it being sized back to the old size since + impl->width, impl->height aren't updated until we hear + back from the server. There is still a (longstanding) bug + here that gdk_window_get_size() will give the wrong size + until we do hear back. + +2000-08-31 Havoc Pennington + + * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, + gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, + gtk/gtktexttagprivate.h, gtk/gtktextview.c: + Rename GtkTextStyleValues to GtkTextAttributes + +2000-08-31 Havoc Pennington + + * gtk/gtktextbtree.c (GtkTextBTree): cache end line, + for rapid testing whether an iterator is the end iterator + (gtk_text_btree_new): init end line cache + (gtk_text_line_is_last): use fast cached line to + see if we're the last line. + (get_last_line): use cached line here too, should + speed up some random unrelated code. + +2000-08-30 Havoc Pennington + + * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer + signals. + + * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and + delete_text signals. This allows the signals to be used for + implementing undo. + + * gtk/gtktextbuffer.c: Change signal handler signatures; + provide "interactive" argument when emitting insert_text or + delete_text signal. + +2000-08-30 Havoc Pennington + + * gtk/gtktextbuffer.c: Docs + +Fri Aug 25 12:16:15 2000 Owen Taylor + + * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP + from switch statements, since Tor removed the enumeration + value. + + * gdk/x11/gdkimage-x11.c (gdk_image_get): + s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/. + +2000-08-29 Elliot Lee + * */*.h: Use G_GNUC_CONST. + +2000-08-27 Havoc Pennington + + * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs, + minor indentation fixes, inserted some FIXME about stuff I + realized was broken while documenting it. + (gtk_text_iter_get_pixmap): allow out params to be NULL, following + GTK convention + +Tue Aug 22 12:33:24 2000 Owen Taylor + + * gtk/testgtk.c (create_styles): Fix double free of + font desc. + +Mon Aug 21 22:39:18 2000 Owen Taylor + + * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}. + + * gtk/testgtk.c (create_styles): Add a test for modifying + the style through gtk_widget_modify_*. + + * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add + a function to get the current modifier style. + + * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy + of the passed in GtkRcStyle instead of ref'ing it. + + * gtk/gtkrc.[ch]: Add gtk_rc_style_copy(). + +2000-08-20 Tor Lillqvist + + * gdk/gdkimage.h + * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the + shared memory image+pixmap GdkImage type, or + gdk_image_bitmap_new(). They were used in the gdk_imlib port, but + I am dropping that. + + * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to + actually call gtk_init_abi_check(), passing also + sizeof(GtkWindow). Ditto for gtk_init_check(). + + * gtk/gtk.def + * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check): + New functions, used to check that the GTK+-using code has been + compiled using the correct compiler and switches. In particular, + with gcc one has to use the -fnative-struct switch as GTK+ is + compiled with that. + +Fri Aug 18 17:27:46 2000 Owen Taylor + + * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling + ->prev fields when merging lists. (Found simultaneously + by Pawel Salek and Jakub Jelinek) + +2000-08-12 Tor Lillqvist + + * gdk/gdk.def + * gtk/gtk.def: Add missing entries. + + * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use + OUT_TT_ONLY_PRECIS, try to get a TrueType font. + + * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New + function. Dummy implementation at this point. + + * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer + rules. Undefine GTK_COMPILATION when compiling the test programs. + + * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import. + +2000-08-11 Tor Lillqvist + + * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8() + to convert back and forth from UTF-8 and the "system" (or "current + locale") charset when necessary. Indentation/spacing cleanup. + +2000-08-10 Havoc Pennington + + * Makefile.am (snapshot): Change the format of the snapshot + version to match glib + + * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h + from EXTRA_DIST since it doesn't seem to exist + +2000-08-10 Tor Lillqvist + + * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage" + version of the directory name (not the UTF-8 one) when building + the path name to stat(). + +2000-08-03 Elliot Lee + + * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a + PANGO_ATTR_SHAPE set. + +Thu Aug 3 09:17:06 2000 Owen Taylor + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from + Peter Osterlund to simplify the code while keeping the + functionality the same. + +Wed Aug 2 14:57:38 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move + is_viewable() test further inside the function, since removing the + window from the redraw list without clearing ->update_area + was also very broken. + +2000-08-02 Tor Lillqvist + + * configure.in: Check for . + +2000-08-01 Martin Baulig + + * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning() + to display the message that this is a development version of GTK+. + +Mon Jul 31 18:37:36 2000 Owen Taylor + + * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation + was depending on widget->allocation instead of the width of text_area, + which was incorrect for subclasses like GtkSpinButton. + + * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos + with width == 1 tests that should be width == -1. + +Mon Jul 31 16:45:48 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, + (broken, Elliot, every single window blank on X) custom code with call + to gdk_window_is_viewable() which a) prevents code duplicate and + b) works. + +2000-07-31 Elliot Lee + + * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order + to get the GDK_PARENT_ROOT() macro to work. + * gtk/gtkmarshal.list: Add NONE:STRING,POINTER + * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces + of, windows that aren't shown. + * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of + pointer grab stuff. + +Mon Jul 31 13:53:16 BST 2000 Tony Gale + + * docs/gtkfaq.sgml docs/gtk-faq.sgml: + s/gtk_main_iteration/g_main_iteration/ + + Did this already in change: + Mon Nov 15 17:17:51 GMT 1999 Tony Gale + don't know how it got reverted. + +2000-07-31 Stanislav Brabec + + * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and + gdk_arg_no_debug_cb to fix compilation problem with --disable-debug. + + * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3, + not gdk_pixbuf. + +2000-07-30 Pablo Saratxaga + + * configure.in,po/{sp,sr}.po: Added Serbian files + +2000-07-30 Tor Lillqvist + + * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST. + + * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue): + Remove the g_pipe_readable_msg stuff. Not needed with new GLib + GIOChannel implementation. + + * gdk/win32/gdkinput.c + * gdk/win32/gdkpango-win32.c: Update license name here, too. + + * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix + definition to match prototype. + + * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS. + +2000-07-27 Elliot Lee + + * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type + function, to allow handling image formats that cannot be detected + by looking at content alone. + +Thu Jul 27 13:13:21 BST 2000 Tony Gale + + * docs/tutorial/*.gif *.jpg *.eps + Update these to the same look-n-feel. + Why does including images in DocBook suck so badly? + +Thu Jul 27 05:06:29 2000 Tim Janik + + * gtk/gtktable.c: applied patch from Phil Thompson + that enables space settings for + the last row/columns as well. + +Wed Jul 26 12:59:31 2000 Tim Janik + + * *.[hc]: applied patch from Andreas Persenius that + updates the license headers to the GNU Lesser General Public License, + as well as updating the copyright year to 2000. + +2000-07-26 Robert Brady + + * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h + and po/Makefile, was installing and looking for them under gtk20 + and gtk2 respectively. + +2000-07-25 Havoc Pennington + + * gtk/testtext.c: Comment out some stuff that depends on the rest + of my patches. + +2000-07-25 Havoc Pennington + + * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text + buffer + +2000-07-25 Havoc Pennington + + * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text + widget changes. + + * gtk/gtktextview.h: To be consistent with usage of "line" + throughout the API to mean "newline-terminated thingy", change + MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH + to MOVEMENT_LINE. + + (GtkTextView): Add flags for default editability, and whether to + show the cursor. Add functions to get/set that. Add + + (gtk_text_view_get_iter_location): new function + + * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to + gtktextlayout.h + (g_convert): Add g_convert temporarily, will go in glib in a bit + + * gtk/gtktexttagtable.h: include gtktexttag.h, and define + GtkTextTagTableForeach instead of brokenly using GHFunc. + Change gtk_text_tag_table_foreach() so it doesn't use GHFunc. + + * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here, + moved to public header. + + * gtk/gtktexttag.h: Rename the "elide" attribute of tags to + "invisible", since "elide" was a bad name. + (gtk_text_tag_get_priority): Added + + (GtkTextStyleValues): put this in public header, along with + functions to use it. + + * gtk/gtktextmarkprivate.h: Include more headers, since we no + longer include gtktextbtree.h. + + * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref, + gtk_text_mark_deleted + + * gtk/gtktextlayout.h: Don't include the "really private" headers, + only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData + to make this possible. Now we only need to install + gtktextlayout.h, not gtktextbtree.h and gtktext*private.h. + (However the Makefile.am isn't changed yet because of the + logistics of merging gtk-hp-patches piecemeal) + + * gtk/gtktextiterprivate.h: include btree header, so it compiles; + rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since + gtk_text_iter_get_line is now used in the public API for a + different purpose. + + * gtk/gtktextiter.h: Clean up function names to be more + consistent. Always call char offset "offset" and byte index + "index". A "line" is always a line number. + + (gtk_text_iter_is_last): new function, more efficient than + the existing way to check + (gtk_text_iter_is_first): new function, also more efficient + + (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these + + (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from + gtk_text_iter_forward_char, etc. + + (gtk_text_iter_forward_to_tag_toggle): Renamed from + forward_find_tag_toggle, since this isn't a linear search + + (GtkTextCharPredicate): rename from GtkTextViewCharPredicate + + (gtk_text_iter_forward_search, gtk_text_iter_backward_search): + New functions, search for a buffer substring. + + * gtk/gtktextbuffer.h: Add fields to store whether a paste is + interactive and default editable (since we need to store that info + until we receive the selection data). + + Remove all the _at_char and at_line etc. versions of functions; + only have iterator versions. + + Add _interactive() versions of functions, that consider the + editability of text. (FIXME add interactive flag to the + insert/delete signals per Darin's suggestion) + + (gtk_text_buffer_get_tag_table): new function, demand-creates the + tag table if necessary + + Remove declaration of gtk_text_buffer_get_iter_from_string + + (_gtk_text_buffer_get_btree): private/internal function, added. + + + * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData. + (gtk_text_line_is_last): new function + +2000-07-25 Havoc Pennington + + * gtk/gtkprogressbar.h: Implement new sane, 5-function API for + using GtkProgressBar. See Changes-2.0.txt for details. + + * gtk/gtkprogressbar.c: Add object arguments "fraction" and + "pulse_step" which are the equivalent of + gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction. + Implement new API. + + * gtk/gtkprogress.h (struct _GtkProgress): Add a field + (use_text_format) to mark whether text set on the progress bar is + a format string. Deprecate entire GtkProgress interface. + + * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE + (gtk_progress_build_string): make this a no-op if use_text_format + is FALSE + + * docs/Changes-2.0.txt: Describe progress bar changes. + +2000-07-25 Tor Lillqvist + + * Makefile.am: Include the build directory. + + * configure.in: Generate build/Makefile, build/win32/Makefile, + gdk/, gdk/win32/, and gtk/makefile.mingw. + + * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf. + Add GETTEXT_PACKAGE. + + * gdk/gdk.def + * gtk/gtk.def: Updates. + + * gdk/gdkfont.h + * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't + need them any longer. + + * gdk/gdkinput.h: Mark gdk_core_pointer for export/import. + + * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with + PANGOWIN32_LIBS and gdk_pixbuf. + + * gdk/win32: Compiles, but no doubt doesn't work at all. + + * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. + + * gdk/win32/gdkinput.c: New file, temporarily. + + * gdk/win32/gdkinput-win32.h: New file + + * gdk/win32/gdkinputprivate.h: Remove. + + * gdk/win32/gdkpango-win32.c: New file. + + * gtk/makefile.mingw.in: New file + + * gtk/makefile.cygwin: Removed + + * gtk/Makefile.am: Update accordingly. + + * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and + made externally visible. + + * gtk/gtkmain.c: Use it. + + * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h + is enough. + + * gtk/gtktypeutils.c: Mark glib_debug_objects for import. + +2000-07-24 Elliot Lee + * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the + individual backends already. + * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together + again. Yes, there really is a good reason for this, if you are using the gdkregion + internals, and if you're not, why do you care? + * gdk/gdkwindow.c: Fix inverted condition + * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely). + * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb + * gtk/gtkrange.c: Redraw trough when moving. + * gtk/gtktypeutils.c: Fix warning by adding const cast. + * modules/linux-fb/basic.c: Fix unknown glyph retrieval. + +2000-07-23 Tor Lillqvist + + * configure.in: Check for mkstemp and sigsetjmp. Output + gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw. + + More work on GDK for Win32. Still in an intermediate state. + + * gdk/makefile.cygwin + * gdk/win32/makefile.cygwin: Removed. + + * gdk/makefile.mingw.in + * gdk/win32/makefile.mingw.in: New files. + + * gdk/Makefile.am + * gdk/win32/Makefile.am: Generate and distribute them. + + * gdk/win32/gdkwindow-win32.h + * gdk/win32/gdkdrawable-win32.h + * gdk/win32/gdkpixmap-win32.h: New files. + + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkcursor-win32.c + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkgc-win32.c + * gdk/win32/gdkimage-win32.c + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Update data structures. Cosmetics: + Rename fields and variables called xcursor, xid, etc (these names + were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc. + +Sat Jul 22 17:41:26 2000 Owen Taylor + + * gtk/gtkentry.[ch]: Fix some problems with vertical + alignment. + + * gtk/gtkentry.c (gtk_entry_find_position): Fix + char/byte confusion. + +Sat Jul 22 11:16:05 2000 Owen Taylor + + * gtk/gtktextview.c (changed_handler): Fix bug where + redraw wasn't being done properly when height of + dirty region changed. + + * demos/Makefile.am: Remove various references to + -lgmodule + +Fri Jul 21 15:28:13 2000 Owen Taylor + + * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new + PangoAttrShape to reserve space for pixmaps, add + GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps + in the display functions. + + * gtk/testgtk.c (create_layout): Set some more exotic + scrolled window options + + * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type): + Add function to set the shadow type of a window, to allow + putting a shadow around widgets such as GtkLayout or GnomeCanvas + which don't draw their own frame. + +Fri Jul 21 16:34:42 BST 2000 Tony Gale + + * docs/tutorial/package-db-tutorial.sh: New file for + packaging DocBook format tutorial + +Fri Jul 21 14:23:51 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Minor updates + + * docs/tutorial/*.jpg *.eps: Screenshots for tutorial + +2000-07-19 Tor Lillqvist + + * gtk/gtksignal.c: Fix C++ comment. + + * gtk/gtkimmulticontext.c + * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__, + don't return value from void functions. + + * gtk/gtk.def: Add gtk_rc_style_unref. + +2000-07-19 Sebastian Wilhelmi + + * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h, + gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h, + gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h, + gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h, + gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h, + gtk/gtktypeutils.h: Include files outside of the extern "C" + block. Makes some C++ compiler happy. Reported by Denis Vakatov + . + +Wed Jul 19 14:07:57 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Yet more clean ups. + Completes first pass. Hurrah! + +Tue Jul 18 17:17:55 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: More clean ups. + +Mon Jul 17 18:52:38 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to + paint the background of the text area which was accidentally + removed at some point. + + * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: + + - Move most of the functionality from the theme vtable + into GtkRcStyleClass and GtkStyleClass. The moved + vtable functions were changed a bit in the move to + work better in their new home. + + - Get rid of the engine and engine_data fields from + GtkRcStyle and GtkStyle; instead the theme + engine derives theme-specific subclasses of GtkRcStyle + and GtkStyle + + - Add extra dlsym() found entry point to themes, + theme_create_rc_style(). + + * gtk/gtkstyle.c: Copy xthickness, ythickness fields + in gtk_style_real_copy. + + * gtk/themes.[ch]: add a function gtk_theme_engine_register_type() + to register a type associated with an engine. (The engine + won't be unloaded as there is an instance of the type.) + + +Mon Jul 17 18:19:06 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Clean ups. + +Mon Jul 17 13:59:29 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots + of cleaning up to do. + +2000-07-15 Tor Lillqvist + + * gdk/testgdk.c: New file, quick hack to test backends for + pixel-by-pixel correctness of the most simple graphic operations. + +Fri Jul 14 20:30:25 2000 Owen Taylor + + * Really release 1.3.1 + + * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new + include structure. + +Fri Jul 14 18:40:39 2000 Owen Taylor + + * Released 1.3.1 + +Fri Jul 14 16:21:26 2000 Owen Taylor + + * gtk/gtktextlayout.c: use FALSE for size_only most + of the time when calling gtk_text_layout_get_line_display() + to avoid causing double reshapes when a redraw follows + immediately after. + +Tue Jul 11 11:13:40 2000 Owen Taylor + + * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate + appropriate region and gdk_window_process_updates() so trough + updating doesn't lag behind the window being scrolled. + + * gdk/gdkgc.c: Make parent_class pointer static. + +Sun Jul 9 21:31:23 2000 Owen Taylor + + * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c: + include . + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix + cut-and-paste error in computing memory offset for 4 channels. + +Fri Jul 14 14:05:02 2000 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove + gtk_rc_append_default_pixmap_path(), since it wasn't + adding an interesting path and we don't have a meaningful + default for this value. + +Fri Jul 14 12:22:49 2000 Owen Taylor + + * configure.in Makefile.am gtk-config.m4 gtk.m4: Move + gtk-config to gtk-config-2.0 move gtk_.m4 to + gtk-2.0.m4 + + * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am + gdk/Makefile.am demos/Makefile.am: Change + library names to libgtk-1.3.la, etc, so that we + can distinguish gtk-1.2 and gtk-2.0 on the linkline. + + * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am + gdk/Makefile.am gdk/x11/Makfile.am + Move include files into /usr/include/gtk-2.0, + /usr/lib/gtk-2.0/include/ + + * autogen.sh acconfig.h configure.in gtk/gtkmain.c + gtk/gtkintl.h: Change package for gettext from + gtk+ to gtk20. Put hack in autogen.sh to modify + po/Makefile.in.in after gettextize to make this + possible. + + * gtk+.spec: Some updates, not tested. + + * gdk-pixbuf/Makefile.am: Move loaders into + $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders. + + * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations + $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir + to THEMENAME/gtk-2.0/. Move engine directory to + $(libdir)/gtk-2.0/$(GTK_VERSION)/engines. + +2000-07-12 Tor Lillqvist + + Win32 changes, still doesn't build though. + + * gdk/makefile.cygwin + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Updates. + + * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same + default values for fg and bg pixel as X11 does (0 and 1), not + black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default. + Use 0 for pen width by default (treated as 1 anyway later, but for + apps that might check the value in the GdkGC). + (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public + interface to gdk_gc_predraw and _postdraw. + + * gdk/win32/gdkwin32.h + * gdk/gdk.def: Add gdk_win32_hdc_{get,release}. + + * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove + extraneous semicolon. + + * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0. + + * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth, + not the Win32 bitspixel value. + + * gdk/win32/gdkcc-win32.c: + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Changes to make compilable, with new + GDK object structure. + +Tue Jul 11 20:59:35 2000 Tim Janik + + * docs/tutorial/gtk_tut_12.es.sgml (name): + * docs/tutorial/gtk_tut_it.sgml (name): + * docs/tutorial/gtk_tut_fr.sgml (name): + * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely + outdated email adress: s/timj@psynet.net/timj@gtk.org/. + +Tue Jul 11 13:10:57 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Cleanup indenting and various + small changes. + +Tue Jul 11 08:04:58 2000 Tim Janik + + * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen + a bug here, never been here and never fixed anything ;( + (don't segfault if tree->root_tree is NULL, which happens prior + to widget realization, but puke instead). + +Tue Jul 11 06:38:42 2000 Tim Janik + + * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and + add the necessary tokens. + + * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style. + (gtk_rc_style_to_style): copy thicknesses. + (gtk_rc_init_style): apply thicknesses. + (gtk_rc_parse_style): parse xthickness and ythickness. + + * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements. + + * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): + (gdk_window_new): + (_gdk_windowing_window_init): + * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): + (gdk_pixmap_create_from_data): + (gdk_bitmap_create_from_data): + (gdk_pixmap_new): + * gdk/x11/gdkimage-x11.c (gdk_image_get): + (gdk_image_new): + * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): + * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): + * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get): + (gdk_colormap_get_system): + (gdk_colormap_new): + * gdk/gdkwindow.c (gdk_window_init): + * gtk/gtkstyle.c (gtk_style_new): + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): + * gdk/gdkpixmap.c (gdk_pixmap_init): + * gtk/gtkrc.c (gtk_rc_style_new): + use g_object_new() instead of g_type_create_instance() which + is a private function for fundamental type implementations. + +Thu Jul 6 16:12:14 2000 Owen Taylor + + * configure.in: Add check for db2html + +Thu Jul 6 14:53:05 2000 Owen Taylor + + * gtk/gtktypeutils.c (gtk_type_init): Add a temporary + hack to set glib_debug_objects based on gtk_debug_flags. + +Thu Jul 6 14:12:13 2000 Owen Taylor + + * INSTALL.in: Update the Prerequisites section. + + * Makefile.am demos/Makefile.am docs/Makefile.am + docs/tutorial/Makefile.am gdk/x11/Makefile.am + gdk/linux-fb/Makefile.am: Dist fixes + +Thu Jul 6 12:26:03 2000 Owen Taylor + + * NEWS: 10,000 foot view of 1.3.1 changes. + +Thu Jul 6 11:54:03 2000 Owen Taylor + + * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c + gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c + gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h + gdk/x11/gdkmain-x11.c: + + Patch from George Lebl to add a GdkGrabStatus enumeration to use + as a return value of gdk_*_grab(). Previously, we just + returned the X11 values directly. + +Thu Jul 6 11:27:44 2000 Owen Taylor + + * gdk/x11/Makefile.am: Patch from George Lebl to + install all the headers in the right place. + +Tue Jul 4 13:13:01 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Add remaining sections. Completes + initial conversion to DocBook. + +2000-07-04 Tor Lillqvist + + * README.win32: Improve a bit. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also + WM_SYSCHAR, and other changes to get handling of Alt+nnn or + Alt+0nnn on the numpad (used to enter characters by numeric code + from current DOS or ANSI codepage) working correctly, as in other + Windows apps. + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use + same argument validity tests as in X11 version. + (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon. + + * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor + definitions in case missing from headers. + + * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also + destroy the window-specific cursor. + (RegisterGdkClass): Use the global gdk_ProgInstance instead of + calling GetModuleHandle(NULL). + (gdk_window_set_cursor): Reworked to always copy the passed cursor + with CopyCursor before setting it as the window-specific + cursor. It is OK for the caller to destroy the GdkCursor (and thus + also its Windows cursor) after calling this function. Destroy any + previous window-specific cursor. + +Mon Jul 3 17:54:49 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): + font charset is iso8859-1, not iso-8859-1. + +Mon Jul 3 17:08:14 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): + Use g_get_charset() instead of g_get_codeset(). + + * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: + Comment out some strdup'ing functions to keep timj + happy until we finish fighting this out. + +Mon Jul 3 14:24:16 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with + <= width or height. + + * gtk/gtktable.c (gtk_table_attach): Fix missed merge + from 1.2 for parent/child states. + + * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple + of typos. + + * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of + event structures, replace with a generic axes field. Replace + deviceid/sourec with GdkDevice *device. + + * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function + to extract particular axis use value from event. (Also + can be used for normal X/Y.) + + * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision; + allow for arbitrary number of axes, namespace everything + as gdk_device_*. Replace guint32 deviceid with GdkDevice * + everywhere. + + * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: + Get rid of the gdk_input_vtable setup if favor of simply + defining the functions in gdkinput-none/gxi/xfree.c in + a similar fashion to the way that the port structure is + done. + + * gtk/gtkdnd.c: Fix fields of synthesized button press event + for new event structures. + + * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match + new device interfaces. + +Sun Jul 2 18:19:50 2000 Owen Taylor + + * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to + set the initial text. + + * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c + gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c + gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c + gtk/gtkvscale.c: Adapt to new argument of create_pango_layout(). + + * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new + pango_layout_set_font_description to simplify. + +Sun Jul 2 17:43:41 2000 Owen Taylor + + * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new + pango_layout_set_font_description to simplify. + +Sun Jul 2 17:06:40 2000 Owen Taylor + + * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c + gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use + pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'. + + * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with + PANGO_PIXELS() macro. + +Sun Jul 2 15:24:41 2000 Owen Taylor + + * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function + that returns a PangoContext owned by the widget and updated to + match future changes in the widget. Also, make + gtk_widget_create_pango_layout() use this context. If we ever + add a ::changed signal to PangoContext, this will make things + much more convenient. + + * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed() + in the appropriate places instead of destroying the layouts and + creating new ones. + + * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context() + in a few strategic places. + +Sun Jul 2 14:37:58 2000 Owen Taylor + + * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call + gtk_widget_size_request() on reparented child, if one. Otherwise, + queue_resize() on the child never results in it getting size-requested + at all. + + * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items + in option menus, so that (with luck) people won't copy it into + their apps in the future. + + * gtk/gtkoptionmenu.c: Connect ::size_request on the menu + to gtk_option_menu_calc_size. This isn't perfect, but should fix + a lot of problems with changing the size of the menu's menu + items after adding it to the option menu. + + * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language(). + + * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when + the text direction for a widget changes. + + * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use + ::direction_changed to get rid of various hacks. + +Sun Jul 2 13:19:12 2000 Owen Taylor + + * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate + name. + +Sun Jul 2 13:06:26 2000 Owen Taylor + + * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign + flag to the structure. Do not call XFreePixmap on pixmaps created + by gdk_pixmap_foreign_new(). + +Sun Jul 2 12:45:50 2000 Owen Taylor + + * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel + value using GdkRGB functionality given GdkColormap and GdkColor. + (name not final, waiting for inspiration.) + + * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to + set the foreground/background of a GC using the GC's colormap + and GdkRGB. (name not final, waiting for inspiration.) + + * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from + gdk_rgb_get_cmap(), put #define in gdkcompat.h. + + * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for + gtk_widget_get_visual(), gtk_widget_get_default_visual, etc, + purely a function of the corresponding colormap. Make + gtk_widget_set_visual(), etc, noop macros in gtkcompat.h. + + * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite + gdk_pixbuf_*create_from_xpm_* in terms of + gdk_pixbuf_new_from_xpm_data(), move into platform independent + code. + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take + advantage of the new draw_rgb_32_image_dithalign. + + * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added. + + * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap + on each created GC. + + * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap. + + * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure + which we initialize from the drawable when the GC is created, + if the drawable has a colormap. + + * gdk/x11/gdkgc-x11.c: include string.h for memset. + + * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc. + + * gtk/gtklayout.[ch]: Remove unsed configure serial member. + +Sat Jul 1 16:28:32 2000 Owen Taylor + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): When + actually returning expose events, make sure to set + the count field properly. + + * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix + accidentally reintroced bug which always cleared + the graphics_exposures value. + +Wed Jun 28 18:03:09 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Change DocBook layout slightly + +Wed Jun 28 17:49:05 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7. + +Wed Jun 28 13:31:55 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Start of Section 6. + +Mon Jun 26 19:37:04 2000 Owen Taylor + + * configure.in: Put 1.3.1 in warning message, not 1.3.0. + + (Fixes problem with drawing childless frames. Pointed out + by and a first patch from Anders) + + * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always + compute a child_allocation, even if we don't have a child. + + * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation): + Always chain to the parent's impl, even if we don't have a child. + +Mon Jun 26 18:53:31 2000 Owen Taylor + + * gdk/gdkrgb.c: If possible, create only a single shm segment and + use multiple parts of it instead of creating a bunch of separate + segments, since the maximum number of segments per system is not + large. (This might be worth backporting to GTK+-1.2.x if we make a + new release ) + + * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo + structure in preparation for per-colormap GdkRGB. + + * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm + to False when we get EINVAL from shmget so that the caller of + gdk_image_new can retry with a smaller segment size. + +Mon Jun 26 13:01:16 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Add Sections 4 & 5. + +Fri Jun 23 17:54:23 2000 Tim Janik + + * configure.in: make the current version number 1.3.1 (binary age 0, + interface age 0). + + * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*, + gtkcompat.h is all we want. + + * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of + GLib primitive types. fixed g_type_register_fundamental() argument + ordering. + + * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code + compiles. + + * gdk-pixbuf-loader.[hc]: get rid of unistd.h include. + object code cleanup, comment trigraph fixes, etc... + +2000-06-23 Havoc Pennington + + * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark + instead of making up a bogus name for first_para_mark + + * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow + 0 as a context ID + +Thu Jun 22 17:43:51 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Change filename. Add Section 3. + +2000-06-21 Havoc Pennington + + * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where + we didn't check window->bg_pixmap != GDK_NO_BG. + + * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of + gdk-pixbuf + +Thu Jun 22 14:02:19 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgm: Move file to here. + TODO: Update Makfile.am + +Thu Jun 22 13:41:09 BST 2000 Tony Gale + + * docs/gtk-faq.sgm: Add Section 2 + +Thu Jun 22 08:43:45 BST 2000 Tony Gale + + * docs/gtk-faq.sgm: New file. Start of DocBook + version of the FAQ. + +Wed Jun 21 23:04:17 2000 Owen Taylor + + * configure.in (GDK_PIXBUF_MAJOR): Define version + numbers for GDK_PIXBUF_*, as they get substituted + into a header file. Need to consider versioning + for gdk-pixbuf more carefully later. + +2000-06-21 Raja R Harinath + + Work with srcdir != builddir. + * demos/testanimation.c: Don't include "gdk-pixbuf.h". Use + , not "gtk-pixbuf/gdk-pixbuf-loader.h". + * demos/testpixbuf.c: Likewise. + * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h". + * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h". Use + . + * demos/pixbuf-demo.c: Use not "gtk.h". Don't include + "gdk-pixbuf.h". + * demos/Makefile.am (INCLUDES): Remove unneeded directories. + +Wed Jun 21 19:45:02 2000 Owen Taylor + + * TODO.xml: Change 1.4 version numbers to 2.0. + +Wed Jun 21 19:29:08 2000 Owen Taylor + + * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation + fixups to GTK+ standard. + +Wed Jun 21 16:38:13 2000 Owen Taylor + + * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard, + gdk-pixbuf. + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): + fixups for GObject. + + * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of + gdk-pixbuf with GDK dependencies moved into GDK. + + * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily + move gdk-pixbuf-loader here until GObject has signals. + + * demos/: New directory of demos. Move demos from + gdk-pixbuf here. + + * demos/pixbuf-init.c: Small bit of code to check for + loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found, + set GDK_PIXBUF_MODULEDIR appropriately. + + * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat + define which no longer makes sense. + +2000-06-21 Havoc Pennington + + * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use + gtk_get_default_language + + * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): + new function to get the default language + + * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: + s/gtk_text_view_style_values/gtk_text_style_values/ + + * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h: + Add a "language" field to tags. + + (gtk_text_tag_set_arg): Fix bug in setting + "bg_full_height_set" tag. + +2000-06-21 Havoc Pennington + + * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate + in the interfaces + + * gtk/gtktexttypes.c: Remove UTF functions, use glib + stuff instead when possible. + + * gtk/gtktexttypes.h: Delete some unused constants + + * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c, + testtextbuffer.c: use glib instead of custom unicode routines + +Wed Jun 21 12:50:58 2000 Owen Taylor + + * docs/es/: Removed mistakenly added generated sgml + + * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex: + Remove outdated info files. + + * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial: + Moved tutorial files into subdir + + * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into + subdir. + + * docs/man/gtk_button.pod: Remove. (contents will be + integrated into gtk-reference button page.) + + * configure.in docs/Makefile.am docs/tutorial/Makefile.am + docs/faq/Makefile.am: Adjust for new organization + +2000-06-21 Christopher Blizzard + + * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs) + not $(MKINSTALLDIRS) + +Wed Jun 21 12:24:28 2000 Owen Taylor + + * gtk/testgtk.c (create_text): Finish the job Elliot started + of removing font setting test for text widget. (Since text widget + and GdkFont are not deprecated, and cause portability problems.) + +Wed Jun 21 11:41:43 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c + gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c: + Remove use of libunicode in favor of new GLib functions. + + * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32, + nano-x, framebuffer. The X11 include is just a hack until we get + the necessary functions in gdkcolor.h, so there is no reason to + add other includes of platforms. + + * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert + window bigger than the screen change. + + * gtk/testgtk.c: Revert some random changes from Elliot + that had no particular point and were causing testgtkrc + not to function correctly. + + * gdk/gdkregion-generic.h: Revert change from Elliot. Just + because GdkSegment and GdkRegionBox have the same fields, + it doesn't mean that 'typedef GdkSegment GdkRegionBox' + results in clearer code. + + * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events, + gdk_input_translate_coordinates): Fix missed GdkObjectification + +2000-06-18 Elliot Lee + + * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way. + * gtk/gtk{plug,socket}.h: Missed commits from previous. + +2000-06-20 Havoc Pennington + + * modules/linux-fb/Makefile.am: Make this compile + without framebuffer enabled + + * gdk/linux-fb/Makefile.am: Add conditional to not build + framebuffer unless specified in configure + + * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting + the size of the target instead of source if -1 was passed for + width/height + + * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix + width/height confusion. + +2000-06-19 Havoc Pennington + + * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be + GDK_DRAWABLE_XID. In the future, we probably want to make it + faster with G_DISABLE_CHECKS turned on. + +2000-06-14 Havoc Pennington + + * gdk/Makefile.am: add gdkpixmap.c + + * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/ + s/gdk_image_init/_gdk_windowing_image_init + + * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject + ref/unref + + * gdk/gdkcolor.h: make GdkColormap a GObject subclass + + * gdk/gdkcompat.h: remove GdkWindowType compat, since + GdkWindowType is now non-deprecated; + change gdk_window_get_type() compat to be + gdk_window_get_window_type(). + + * gdk/gdkdnd.h: make GdkDragContext a GObject. + + * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure + virtual GObject. Make all functions call into the vtable. + Move gdk_image_put() guts in here. Remove GdkDrawableType + and gdk_drawable_get_type(), these are now GdkWindow-specific. + draw_image, get_depth, get_size, set_colormap, get_colormap, + get_visual added to the vtable. + + * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual + GObject. Virtualize everything. + (gdk_gc_new_with_values): remove check for destroyed window, + because now GdkWindow::create_gc will check this. + (gdk_gc_set_values): New function to set GC values, this + was already implemented but wasn't in the header + + * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject. + + * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove + _gdk_window_draw_image(), remove _gdk_windowing_window_class, + remove _gdk_window_class; add _gdk_window_impl_get_type() and + _gdk_pixmap_impl_get_type(). Rename gdk_window_init to + _gdk_windowing_window_init, rename gdk_image_init to + _gdk_windowing_image_init. + + * gdk/gdkpango.c: Reflect GObject-ification of PangoContext. + (gdk_draw_layout): Remove check for destroyed window, + because all the drawable methods already check it. + + * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject. + Add gdkpixmap.c which contains implementation of GdkDrawable + virtual table (by chaining to a platform-specific implementation + object). + + * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, + GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace + GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate, + GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate, + GdkColormapPrivate. + + * gdk/gdktypes.h: #include + + * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject. + Move most functionality to platform-specific implementation + object. GdkWindow itself now handles the backing store, then + chains to the platform-specific implementation. + (gdk_window_get_window_type): return GdkWindowType of the window. + (gdk_window_peek_children): New routine, returns the children of + a GdkWindow + (gdk_window_get_children): Was in X11-specific code and did + XQueryTree. Changed to simply return a copy of window->children; + so it can go in cross-platform code. + + * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path + + * gdk/x11/gdkcolor-x11.c: implement X-specific parts of + GdkColormap; just changed to use the new private data instead + of casting to GdkColormapPrivate. + + * gdk/x11/gdkcursor-x11.c: added a couple typechecks to + gdk_cursor_new(). + + * gdk/x11/gdkdnd-x11.c: Change the way we access private fields + (private data member in the GObject). + (xdnd_manager_source_filter): Function had broken + error handling, fix it (use gdk_error_trap_push). + + * gdk/x11/gdkdrawable-x11.c: This file now implements + a base class for GdkWindowImplX11/GdkPixmapImplX11. This + base class is purely for the convenience of the X port, + and not part of the interface to cross-platform GDK. + + * gdk/x11/gdkevents-x11.c: Reflect various renamings. + + * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's + specific to X, and returned by the create_gc virtual method + of GdkDrawableImplX11. + (gdk_x11_gc_set_dashes): Change this to take an array of gint8 + rather than gchar, this was also changed in the GdkGC vtable. + (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the + mask is 0, return immediately, instead of checking every flag. + This is faster, and keeps us from segfaulting if values is NULL + and the mask contains some nonzero flags. + + * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of + GdkWindow. + + * gdk/x11/gdkglobals-x11.c: change type of grab window, since + GdkWindowPrivate is gone. + + * gdk/x11/gdkim-x11.c: rename things that got renamed. + + * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and + remove the image_put stuff that got transferred to GdkDrawable. + + * gdk/x11/gdkinput.c: renamings + + * gdk/x11/gdkmain-x11.c: #include + + * gdk/x11/gdkpixmap-x11.c: GObject conversion + + * gdk/x11/gdkprivate-x11.h: indentation fixes + + * gdk/x11/gdkproperty-x11.c: renamings + + * gdk/x11/gdkselection-x11.c: renamings + + * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now + implements the platform-specific "impl" object. + Moved gdk_window_get_children to gdk/gdkwindow.c + + * gdk/x11/gdkx.h: Remove all the private structs and private datas + that no longer exist. Add declaration of GdkGCX11 object here. + Fix all the macros to still work. + + * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow, + GdkDragContext from the boxed types since they are now GObjects. + + * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject, + moved xthickness/ythickness into the instance. GtkStyleClass + functions are now in the standard vtable for GtkStyle, so you have + to create a GObject subclass to write a theme engine. + (gtk_style_copy): fixed a leaked PangoFontDescription + (gtk_style_init): renamed gtk_style_realize, so gtk_style_init + can be the standard GObject function. + + * Throughout GTK: + s/style->klass->[xy]thickness/style->[xy]thickness + s/pango_layout_unref/g_object_unref/ + + * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject. + + * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of + accessing GDK internals. + + * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of + accessing GDK internals. + +2000-06-18 Elliot Lee + + * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen. + + * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar + problem by calculating event position relative to the trough + rather than the slider. + * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate. + + * gdk/gdkgc.h: Add GDK_NOR. + + * configure.in, Makefile.am: Add modules top level dir + * configure.in: Only use pangox library if building x11 target. + * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use. + +Fri Jun 16 22:24:22 2000 Christopher Blizzard + + * gtk/gtkcolorsel.c: Change private class member to be named + private_data throughout the file. + + * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to + private_data to avoid clashing with keyword. + +Fri Jun 16 22:24:22 2000 Christopher Blizzard + + * gdk/gdkdnd.h: Add comment to remove warning. + +Sun Jun 18 15:35:35 2000 Pablo Saratxaga + + * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by + Byelorussian language; changed the Makefile and file names + to reflect that. + +Mon Jun 12 16:58:40 2000 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw + rather than gdk_window_hide; this makes things work + correctly if the window is programmatically hidden while + iconified. + +Sun Jun 11 12:46:19 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix + cut and paste typo where wrong pixmap was being + unref'ed. (Pointed out by a friend of KUSANO Takayuki.) + +Sun Jun 11 10:22:36 2000 Owen Taylor + + * gtk/gtkselection.c (gtk_selection_bytes_per_item): + Add helper function to compute format / bytes + relationship. Use in a couple places to fix up + errors which assume 8 * format. + + * gtk/gtkselection.c (gtk_selection_request): Use 32 + rather than 8 * sizeof (GdkAtom), to work correctly + on Alpha. + +Thu Jun 8 21:54:51 2000 Christopher Blizzard + + * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not + libgtk.la + (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11 + versions + + * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error + checking macros return NULL since the function has a return value. + +Wed Jun 7 15:44:42 2000 Owen Taylor + + * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping + GTK+ from building at all. + + * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues. + +Mon Jun 5 19:32:53 CEST 2000 Paolo Molaro + + * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am, + gtk/Makefile.am: make it possible to configure gtk for different + targets on the same platform. The library name is now + libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb + flag. Only the x11 target compiles right now. + * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h, + gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir. + * gdk/nanox/gdk*generic*: delete generic region code. + * gdk/linux-fb/gdk*generic*: delete generic region code. + * README.nanox: update information. + +Tue Jun 6 10:53:59 2000 Owen Taylor + + * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to + prepend not append. (Pointed out by Brett Hall.) + +Tue Jun 6 01:59:57 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout. + +Mon Jun 5 16:00:09 2000 Owen Taylor + + * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll + need this later, and this makes sure that the atexit for + glib gets called after that for GDK, so atexits are + properly ordered for object leak checking. + + * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit(). + + * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call + pango_x_shutdown_display() + + * gtk/simple.c (main): Close window on destroy. + +Mon Jun 5 11:50:02 2000 Owen Taylor + + * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need + to treat initial creation different from setting with + regards to the graphics-exposures parameter, so add a parameter + indicating whether this is initial or not. + +Mon Jun 5 13:29:31 2000 Owen Taylor + + * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose() + to sort of work by adding an extra return_exposes arg + to gdk_event_translate() - it might be better to simply + deprecate the function altogether and force people to rewrite + without it. gdk_window_scroll() handles most of it, and where + gdk_window_scroll() doesn't work, simply redrawing more does. + + * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up + assertion. + + * gtk-config.in: Include PANGO_CFLAGS/LIBS. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a + bunch of pretty much useless /* Print debugging info */ comments + which had drifted away from the code they were commenting. + +2000-06-02 Havoc Pennington + + * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer + is in working order. + + * gtk/testtext.c: Change to reflect anonymous mark API + + * gtk/gtktextview.c: Convert from mark names to GtkTextMark*. + + * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size + field, which was unused. + + * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro, + saves some typing. + + * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark* + + * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable + flag on the insertion point and selection bound + + Throughout, use GtkTextMark instead of GtkTextLineSegment, and + make mark-manipulation functions take a GtkTextMark* instead of a + mark name. + + * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to + GtkTextMarkBody; will be used to detect attempts to delete + the permanent marks (insert and selection bound) + + * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer + +Fri Jun 2 12:56:01 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED + flag to on. + + * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): + Honor DOUBLE_BUFFRED_FLAG + + * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a + function to set the DOUBLE_BUFFERED flag. + + * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether + or not exposes done on the widget should be double-buffered. + + * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations + to be what would be expected. (Fixes problem with a + g_return_if_fail() validating a TextDirection enumeration) + +Thu Jun 1 23:05:13 2000 Owen Taylor + + * gtk/gtkwidget.c: Remove all references to + offscreen flag which was no longer used. + + * gtk/gtkprivate.h (enum): Remove unused flags and compress. + + * gtk/gtkframe.c (gtk_frame_set_label_widget): Check + for non-null label_widget->parent. + + * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute + which no longer was used. + + * gdk/gdkpango.c (gdk_pango_context_get_info): make static. + + * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks + for null arguments. + + * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add + check for destroyed windows. + +Thu Jun 1 13:48:45 2000 Owen Taylor + + * gtk/gtkimmulticontext.c: Add a finalize method and unref + the slave context there. + + * gtk/gtkinvisible.[ch]: Make reference counting behavior + identical to GtkWindow. + +Thu Jun 1 01:54:11 2000 Owen Taylor + + * Makefile.am gdk/gdkpango.c: Copy the layout render function from + pangox to here, so we can write them independent of rendering + system, using GDK primitives. + + * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c + gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable, + since we have a rendering-system independent implementation in + terms of draw_glyphs(). + + * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New + function to render a single line. + + * gdk/x11/gdkpango.c: Move the guts of this file mostly + into ../gdkpango.c, which simplifies things, since we + don't have to deal with raw X gc's. + +Fri May 19 04:28:16 2000 Owen Taylor + + * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to + get the logical attributes for a given GtkTextLine. + +Tue May 30 16:05:39 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track + g_locale_get_codeset() to g_get_codeset() change. + +Tue May 30 15:03:19 2000 Owen Taylor + + * gtk/testcalendar.c (calendar_font_selection_ok): Use font + descriptions. + + * gtk/gtkentry.c (gtk_entry_draw_text): Center text within + the entry. + + * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of + redoing (vastly simplifying) for Pango. Still needs quite + a bit of work. (Size selection is currently poor. List of + predefined sizes is not a good idea, since all of these + sizes won't necessarily be distinct.) + +Tue May 30 13:50:19 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle + CODESET results for LANG=C. + +Mon May 29 15:49:10 2000 Owen Taylor + + * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC + which takes a stringized pango font description; + ignore the older 'font' and 'fontset' declarations. + + * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font + field with a GdkFont derived via gdk_font_from_description(), + for compatibility. (Should we just remove it entirely? + Probably too much compatibility breakage, but people + should be migrating to the new Pango stuff as quickly + as possible.) + +Mon May 29 15:47:41 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/. + +Mon May 29 15:44:46 2000 Owen Taylor + + * gtk/gtkcalender.c: Roughly pango-ized. Really needs + redoing; there are some bugs in size allocation right + now, the semi-existant distinction between header / day + fonts was removed, but, with Pango, could actually + be made functional in a nice way. + + * gtk/testcalender: Move calender from examples into this + directory as a test program. (We really need to restrcture + testgtk into a whole directory full of tests for every + widget or functionality group, separated into multiple .c + files.) + +Mon May 29 15:19:56 2000 Owen Taylor + + * gtk/testgtk.c (file_exists): Fix stupid typo that + was keeping RC file from being loaded. + + * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized + RC file font code. + +Mon May 29 14:31:27 2000 Owen Taylor + + * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description): + Add function to load a GdkFont from a PangoFontDescription. + +2000-05-29 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event" + variable should be of type GdkEventPrivate. + +Fri May 26 17:16:40 2000 Owen Taylor + + * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able + to have any widget for the label, use a GtkLabel widget + to display the text. (Based partially on a patch from + Anders Carlson.) + + (Quite a bit of code reorganization - strip 90% of the + guts out of gtkaspectframe and add a single virtual + func to GtkFrameClass - compute_child_allocation.) + +Fri May 26 12:00:02 2000 Owen Taylor + + * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized. + (Removed clist->row_center_offset field because caching + it wasn't saving time or code, added private function + _gtk_clist_create_cell_layout()). + +Wed May 24 15:59:37 2000 Owen Taylor + + * gtk/gtkaccellabel.c: Pangoized. + + * gtk/[hv]ruler.c: Pangoized + +Mon May 22 19:23:59 2000 Owen Taylor + + * gtk/gtkfilesel.c (gtk_file_selection_init): + Use gtk_clist_set_column_auto_resize() to remove need + need for manual column width computations. + +Mon May 22 18:50:26 2000 Owen Taylor + + * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, + ensuring Pango correctness, and considerably simplifying the + code. + + * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE. + + * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect + getting of numbers of lines. + + * gtk/gtklabel.c (gtk_label_size_request): Set the requisition + to the actual requested width of the lable, not to the wrap + width we set. + + * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h. + + * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c + gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes. + + * gtk/gtktextview.c: Fix structure inheritance. + + * gtk/gtkprogressbar.c: Pangoize. + +Mon May 22 15:47:30 2000 Owen Taylor + + * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate + in a function. + + * gtk/gtktextlayout.c (find_display_line_above): Fixed + bug with computing line tops. + + * gtk/gtktextview.c (changed_handler): Fix < , <= confusion. + +Thu May 18 18:53:31 2000 Owen Taylor + + * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset + and y_offset coordinates to do what we need now. (The offset between + buffer and layout coordinates has been reintroduced, but is a + bit different than before.) + + * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead + handle the adjustments ourselves, and scroll as necessary using + the new gdk_window_scroll(). + + The advantage of this is that when we are incrementally revalidating, + we are essentially rearranging things around the visible portion + of the screen. With the old setup, the visible portion of the + screen was moved around in the layout, so scrolling and redrawing + to track that caused jumping of the display. Since we now + control the scrolling ourselves, we can suppress this and + only redraw when things actually change. + +Thu May 18 18:47:25 2000 Owen Taylor + + * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate + the region not just redisplay it after-all, since we store the + cursors in the LineDisplay. (Ugly interactions here between + GtkLayout and GtkTextBTree here.) + + * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison. + +Thu May 18 18:43:21 2000 Owen Taylor + + * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): + Added function to scroll contents of a window while keeping the + window constant. Works by XCopyArea or guffaw-scrolling depending + on the details of how the window is set up. (guffaw-scrolling + still needs to be filled in.) + +Wed May 17 22:36:53 2000 Owen Taylor + + * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget, + move the debugging that was tied to a global variable + to that. + + * gtk/gtkmarshal.list: Add NONE:INT,INT,INT + + * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate + validated flag, in line data instead of setting height/width to + -1. This allows us to perform operations with partially invalid + buffer (using the old size for invalid lines) and thus to do + incremental vaidation. Keep height/width aggregates up to date + when deleting text and rebalancing the tree. + + * gtk/gtktextbtree.[ch]: Add functions validate a line + (gtk_text_btree_validate_line), and to validate up + to a number of pixels (gtk_text_btree_validate). + + * gtk/gtktextlayout.[ch]: Add an ::invalidated signal + that indicates that something is changed and a revalidation + pass is needed. Change ::need_repaint to ::changed, and + make it take old and new yranges instead of a rectangle. + + * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move + the line_data_destroy() function from + gtk_text_btree_add_view() to a virtual function in + GtkTextLayout + + * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(), + since we are handling partial repaints in a different fashion + now. + + * gtk/gtktextbtree.[ch]: Only repaint the changed portion + of the selection instead of queueing a repaint on the + entire widget. + + * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move + get_selection_bounds() down to btree, make the function + in buffer a wrapper around the btree function. + + * gtk/gtktextlayout.[ch]: Add functions to check if the + layout is valid and to recompute either a range of pixels + aroudn a line or a certain total number of pixels. + + * gtk/gtktextlayout.[ch]: Cache a single line display; + now that we only redraw the needed portions, the hit rate + for this cache is quite high. + + * gtk/gtktextview.[ch]: Keep track of the first paragraph + on the screen so that when re-laying-out the buffer, we can + keep the same place. This requires connecting to ::value_changed + on the adjustments + + * gtk/gtktextview.[ch]: Add idle functions to revalidate + the buffer after we receive an ::invalidated signal. + +Wed May 17 22:10:47 2000 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper + to max of allocation and layout size, not just to the + layout size. + + * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): + Invalidate window so it gets redrawn properly. + + * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL + to mean the entire window. + + * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW + into public header. + +Mon May 15 14:51:31 2000 Owen Taylor + + * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function + to get the name of a mark. + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function + to find the paragraph from a y position. + +Thu May 11 12:57:20 2000 Owen Taylor + + * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid + nodes have width/height >= 0, not > 0. + +Tue May 9 21:29:06 2000 Owen Taylor + + * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display): + Add a size_only flag, so when we only need the size, we don't create + useless appearance attributes. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove + duplicate setting of font description. + + * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 + +Wed Apr 26 01:53:23 2000 Owen Taylor + + * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into + EXTRA_DIST. It does not work well when the file that + everything depends on is not in the tarball. + +Wed Apr 26 00:56:14 2000 Owen Taylor + + * gtk/testgtk.c: Some hacks and fixes so that it basically + works when not sitting in the GTK+ build tree. + +2000-05-03 Havoc Pennington + + * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag): + Properly determine the ordering of the tag root and the current + line within the tree. Previous algorithm only worked if the tag + root's immediate parent was the common root of both the current + line and the tag root. + +Wed Apr 26 00:43:00 2000 Owen Taylor + + * gtk/gtktextlayout.c (set_para_values): Fix some bugs in + alignment. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track + the widget text directional dynamically. + + * gtk/gtktextview.[ch]: Added functions to get and set default + wrap mode. + +Tue Apr 25 23:47:38 2000 Owen Taylor + + * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug + in cursor location computation. + +Tue Apr 25 23:22:59 2000 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/ + vadjusment values properly when layout gets smaller. + + * gtk/gtktextview.c (need_repaint_handler): Areas being + passed in are far completely inaccurate, and sometimes + too small, so, for now, just queue a redraw on the + whole visible region. + +2000-04-25 Havoc Pennington + + * gtk/gtktextbtree.c (summary_destroy): new function to + destroy tag summary nodes + (gtk_text_line_next_could_contain_tag): this function was + totally broken if the line passed in wasn't below the tag + root. Fix it. + (gtk_text_btree_first_could_contain_tag): In the tag == NULL + "wildcard" case, we have to do a linear scan. Blah. + (gtk_text_btree_last_could_contain_tag): In tag == NULL case, + we have to do the linear scan + (tag_removed_cb): When a tag is removed from the tag table, + remove the GtkTextTagInfo node from the btree. + (gtk_text_btree_spew): Implement the spew function, for + our debugging pleasure. + +Tue Apr 25 19:40:18 2000 Owen Taylor + + * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix + a problem with referring to the wrong buffer. + + * gtk/gtkentry.c: Fix focus-in/focus-out confusion. + + * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default + font description to gtk_style_new() - otherwise things + don't work without a .gtkrc file. + + * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the + tags table if we create it ourself, too. + + * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since + it was conflicting with XKB modifiers. + + * gtk/gtktextview.[ch]: Add simple support for + GtkIMContext. + +Mon Apr 24 19:34:18 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem + with deletion from last commit. + +Mon Apr 24 19:29:40 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language + in the context from the current locale. + + * gtk/gtkentry.c (gtk_entry_size_request): Use language from the + context, not hardcoded value. + + * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual, + not logical. + +Sun Apr 23 23:39:18 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as + attributes - that doesn't handle partial-glyph selection + properly. Instead use new pango_layout_line_get_x_ranges() + functionality to draw the selection. + + * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x() + now properly handles out-of-range coordinates. + + * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved. + + * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte() + public. + + * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext + for paragraphs opposite to the base direction of the widget. + + * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment. + + * gtk/gtktextlayout.c: Don't split segments on marks, since that + causes Arabic words to reshape as you cursor through. + + * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual + cursor position when moving vertically with the arrow keys and + scrolling with page-up/page-down. (Arrow keys save only the X, + scrolling saves both X and Y.) + + This means you can line-up / line-down or page-up / page-down + without losing your place, and also that moving vertically + with the cursor keys keeps the same X position, not the same + character count: + + * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical + arrow keys move by display lines, not paragraphs. + +Tue Apr 18 14:16:50 2000 Owen Taylor + + * gtk/gtklayout.c: Make sure that the bin window is at least + as big as the allocation. (Should we also make sure that the + bin window is big enough to completely cover widget->window?) + + * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add + function to get the onscreen rectangle. + + * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account + for offsets in window coordinates. + +Sun Apr 16 16:13:27 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset + confusion. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction + from the widget direction. + + * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): + Add a "direction" attribute. + + * gtk/gtktextview.c: global s/tkxt/text_view/. + + * gtk/testtext.c: Added long block of text in Arabic, to test out + the direction attributes. (Some problems with the shaping system + for arabic become obvious - like the fact the cursor splits words + into unjoined pieces.) + +Fri Apr 14 12:54:34 2000 Owen Taylor + + * gtk/gtktextdisplay.c (render_layout): Add overstrike handling. + + * gtk/gtktextlayout.c: Fix up alignment. + + * gtk/testtext.c: Add some tests for centering, wrapping. + +Fri Apr 14 09:26:22 2000 Owen Taylor + + * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c: + Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs(). + If we wrote GTK+-specific layout-render function this could just replace + the draw_layout() operation in the vtable. + + * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to + pango_layout_get_cursor_pos() and use that function. + + * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it + is a non-static symbol. + + * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y() + with gtk_text_btree_find_line_by_y() + + * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout + renderer that handles GtkTextAppearance attributes. + + * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: + + - Move the values in the style that don't affect geometry into a + GtkTextAppearance structure. + - Change underline to take a PangoUnderline and "font" a string + representation of a font description + - Add a "font_desc" attribute which takes a FontDescription structure. + + * gtk/gtktextlayout.[ch]: + + - Get rid of the display-line list per each line. Instead, we + generate, on demand, a GtkTextLineDisplay structure which] + contains a PangoLayout * and other necesary information + (offsets, cursor locations) for displaying a paragraph. + - Get rid of the code to wrap lines, create display chunks, + etc. Instead, we just go through a paragraph and convert + it into the necessary inputs to a PangoLayout. + - Implement a new attribute type, GtkTextAttrAppearance. This + holds a GtkTextAppearance, and is used to pass colors, + stipple, etc, through from the layout to the display without + having to use lots and lots of individual attributes. + - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos() + in terms of PangoLayout functions. + + * gtk/gtktextview.c: + + - Handle passing the necessary PangoContext to the layout + - Some fixups in painting to deal with the automatic backing store + and offsetting of GTK+-1.4 + - Add a style_set handler so that the default style reacts + properly to theme changes. + + * gtk/gtktext?*.[ch]: Random code-style fixes. + + * gtk/testtext.c: Substitute in languages that Pango handles now for Thai + +Mon Apr 10 10:33:45 2000 Owen Taylor + + * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget, + in original form preparatory to Pango-ization and gdkimcontext-ization. + +Thu Apr 6 19:25:39 2000 Owen Taylor + + * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs, + so that we can derive from gtkimcontext in language bindings properly. + +Thu Apr 6 16:02:52 2000 Owen Taylor + + * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval. + Add a compose table including (almost) all the compose combinations + from X. This is 6k of static, shared data as opposed to 50k or so of dynamic + data in the XIM implementation. + + * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval): + Moved functions to convert keyvalues from and to unicode here from + the win32 port and made them public. + +Wed Apr 5 16:37:29 2000 Owen Taylor + + * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1. + +Wed Apr 5 16:27:45 2000 Owen Taylor + + * gtk/gtkimcontext.[ch]: Base class for new input context system + + * gtk/gtkimmulticontext.[ch]: Proxy input context that allows + the real input context implementation to be loaded from modules + and switched on the fly. + + * gtk/gtkcontextsimple.[ch]: Simple implementation of an input + context that just does direct keysymbol => unicode translation. + + * gtk/gtkentry.[ch]: Start switching editing over to using + GtkInputContext. (No handling of preedit yet.) + +Wed Apr 5 15:48:41 2000 Owen Taylor + + * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too + many substitutions. (klass should not be subsituted.) + +Wed Apr 5 00:18:14 2000 Owen Taylor + + * configure.in: Add checks for Pango + + * configure.in docs/Makefile.am: Add test for sgml2html + and allow 'make dist' without building html, but print out + warnings in that case. (For making snapshots) + + * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am: + Add Pango libraries and C flags + + * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c: + Add function (gdk_draw_layout) to draw a pango layout. + + * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions + for getting Pango contexts for GDK. + + * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set() + + * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional + editing. + + * gtk/gtkentry.c: Hack in simple Hebrew input with direct + keysym => unicode translations. More languages can be added + here, but real input-method support is needed. + + * docs/Changes-1.4.txt: Added note about entry behavior. + + * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions + to set the reading direction for a widget and the global direction. + Add test which allows toggling the global direction. Two private + flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR) + + * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c + gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c + + * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango + + * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking, + underlining now handled by Pango. + + * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription + to RCStyle and Style. (Having both this and the old font name and GdkFont + is temporary.) + + * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added + convenience functions for creating contexts and layouts for widgets. + + * gtk/testgtk.c: Enhance label tests with multilingual labels. + +2000-05-29 Jonathan Blandford + + * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the + titles to be active, even if they aren't visible. + (gtk_clist_column_titles_passive): Ditto. + +2000-05-21 Nils Barth + + * gtkmenu.c: + * gtkmenu.h: + * gtktypeutils.h: Spelling/grammar fixes in comments. + +Tue May 23 12:25:07 CEST 2000 lupus + + * gdk/nanox/*.h: add missing header files. + +Fri May 19 11:52:59 2000 Tim Janik + + * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set + send_event to TRUE. + (gtk_drawing_area_size): queue a resize. + +Sun Mar 26 03:21:28 2000 Tim Janik + + * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing + the handlers, also invalidate them. bug nailed down by Karl Nelson + . + +Fri May 19 06:49:23 2000 Tim Janik + + * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle + "(nil)" foundries, patch from Grigorios Magklis. + + * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash + on non-available fonts, based on a patch by Grigorios Magklis + . + +2000-05-18 Elliot Lee + + * gdk/x11/gdkregion-generic.c: If a region does not have any + rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT + instead of GDK_OVERLAP_RECTANGLE_IN. + +2000-05-17 Jonathan Blandford + + * gtk/gtklayout.c (gtk_layout_map): Remove references to + OFFSCREEN, as it is no longer necessary. + +Wed May 17 10:52:12 2000 Owen Taylor + + * gtk/gtkcolorsel.c: Patch from David Santiago + to change things so that the + indicator of the active palette entry is done independently, + not via the focus, since it should always be visible. + +2000-05-17 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same + refcount leaks as in the X11 backend. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging + cosmetics. + + * gdk/win32/gdkwindow-win32.c: Similar changes as in X11 + backend. Add _gdk_windowing_window_destroy(). + + * gtk/gtkcolorsel.c: Include correct backend-specific header. + Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR + either, but these probably do exist on nanox?) + + * gtk/gtkhsv.c: Use G_PI (fresh from ) instead of M_PI + which isn't necessarily defined by . + + * gtk/gtkobject.c (gtk_object_init): Don't go up the class + ancestry past GtkObject. + + * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import + from DLL on Win32. + + * gtk/gtk.def: Update corresponding to recent changes. + + * gtk/makefile.{cygwin,msc}: Updates. + +Fri May 12 18:46:51 2000 Owen Taylor + + * docs/Changes-1.4.txt: A bit of editing. + + * gdk/gdkwindow.c (_gdk_window_clear_update_area) + * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function + to clear the update area for the window, and clear it + when hiding a window. + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore + if window destroyed. + + * gdk/gdkwindow.c (gdk_window_end_paint): Likewise. + + * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move + gdk_window_destroy() to the generic code, since there was a lot of + window-system-independent logic it in. Add a function: + + _gdk_window_destroy() + + to the internal API to destroy a window without unreferencing it. + Add a function: + + _gdk_windowing_window_destroy() + + That does the windowing-system-dependent part of destroying + the window. + +Fri May 12 11:07:41 2000 Owen Taylor + + * gtk/testgtk.c: Fix various memory leaks of pixmaps. + +Fri May 12 11:06:10 2000 Owen Taylor + + * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): + Make gtk_widget_shape_combine_mask() keep a reference count on + the pixmap since it keeps it around. + +Fri May 12 10:53:29 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount + leak. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount + leak with event filters. + +Thu May 11 14:29:44 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the + signal handlers with the right data arguments. (Fixes + some warnings when a widget was repeatedly set as a drag + destination.) + + * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the + window so we can avoid avoid setting the DND properties on the + toplevel window repeatedly. + +2000-05-13 Tor Lillqvist + + * gdk/win32/gdkwin32.h: Define more message types missing from + mingw headers. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY + call gdk_window_destroy_notify(). It was never called. This + probably meant that the GdkWindow was never freed. Thanks Owen for + noticing (!). + + * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark + window as destroyed before calling DestroyWindow(). DestroyWindow() + causes a call to the window procedure (gdk_WindowProc), which + calls gdk_event_translate(), which calls + gdk_window_destroy_notify(), which gets confused unless the window + is set as destroyed. + + * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename + this function to indicate it's win32 only. Put inside #ifdef + G_ENABLE_DEBUG. + + * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New + debugging function. (gdk_event_translate:) Add a default branch + that uses the above function to print debug messages with all + Windows messages symbolically. + + * gdk/win32/gdkprivate-win32.h: Declare it, and + gdk_win32_color_to_string, but only if G_ENABLE_DEBUG. + +Fri May 12 20:07:32 2000 Tim Janik + + * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a + public header file. + +Fri May 12 17:13:32 2000 Tim Janik + + * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition. + + * gtk/gtktext.c: made the adjustments no-construct args, simply + provide default adjustments. + (gtk_text_destroy): release adjustments. + + * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the + adjustment argument non-construct. + + * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here, + instead of in finalize. + (gtk_progress_get_text_from_value): + (gtk_progress_get_current_text): + (gtk_progress_set_value): + (gtk_progress_get_percentage_from_value): + (gtk_progress_get_current_percentage): + (gtk_progress_set_percentage): + (gtk_progress_configure): ensure an adjustment is present. + +Thu May 11 01:24:08 2000 Tim Janik + + * gtk/gtkcolorsel.[hc]: + * gtk/gtkcolorseldialog.[hc]: + * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain + their parent implementation, use bit fields for boolean values, don't + create unused widgets, usage of glib types, braces go on their own + lines, function argument alignment, #include directives etc. etc. etc.. + + * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h. + +Wed May 10 23:29:52 2000 Tim Janik + + * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips. + + * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state + of NULL. + + * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references + to freed data. + (gtk_combo_destroy): don't keep a pointer to a destroyed window. + + * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer + to NULL when the toplevel is getting destroyed. + (gtk_menu_set_tearoff_state): same here for the tearoff_window. + (gtk_menu_destroy): + (gtk_menu_init): store the information of whether we have to + readd the initial child ref_count during destruction in a new + GtkMenu field needs_destruction_ref_count. + + * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it + here, those reading: learn from my mistake! ;) + in order for set_?adjustment to support a default adjustemnt if + invoked with an adjustment pointer of NULL, the code read (pseudo): + if (v->adjustment) unref (v->adjustment); + if (!adjustment) adjustment = adjustment_new (); + if (v->adjustment != adjustment) v->adjustment = ref (adjustment); + now imagine the first unref to actually free the old adjustment and + adjustment_new() creating a new adjustment from the very same memory + portion. here, the latter comparision will unintendedly fail, and + all hell breaks loose. + (gtk_viewport_set_hadjustment): + (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL + after unreferencing it. + + * gtk/gtkcontainer.[hc]: removed toplevel registration + functions: gtk_container_register_toplevel(), + gtk_container_unregister_toplevel() and + gtk_container_get_toplevels() which had wrong semantics + anyways: it didn't reference and copy the list. + + * gtk/gtkwindow.c: we take over the container toplevel registration + bussiness now. windows are registered across multiple destructions, + untill they are finalized. the initial implicit reference count + users are holding on windows is removed with the first destruction + though. + (gtk_window_init): ref & sink and set has_user_ref_count, got + rid of gtk_container_register_toplevel() call. add window to + toplevel_list. + (gtk_window_destroy): unref the window if has_user_ref_count + is still set, got rid of call to + gtk_container_unregister_toplevel(). + (gtk_window_finalize): remove window from toplevel list. + (gtk_window_list_toplevels): new function to return a newly + created list with referenced toplevels. + (gtk_window_read_rcfiles): use gtk_window_list_toplevels(). + + * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange + adjustment a non-construct arg. + * gtk/gtkvscale.c (gtk_vscale_class_init): likewise. + * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise. + * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise. + + * gtk/gtkrange.c: added some realized checks. + (gtk_range_destroy): get rid of the h/v adjustments in the + destroy handler instead of finalize. remove timer. + (gtk_range_get_adjustment): demand create adjustment. + + * gtk/gtkviewport.c: made h/v adjustment non-construct args. + we simply create them on demand now and get rid of them in + the destroy handler. + (gtk_viewport_destroy): get rid of the h/v adjustments in the + destroy handler instead of finalize. + (gtk_viewport_get_hadjustment): + (gtk_viewport_get_vadjustment): + (gtk_viewport_size_allocate): demand create h/v adjustment + if required. + + * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the + gtk_widget_real_destroy () functionality. + (gtk_widget_real_destroy): reinitialize with a new style, instead + of setting widget->style to NULL. + +Fri May 5 13:02:09 2000 Tim Janik + + * gtk/gtkcalendar.c: + * gtk/gtkbutton.c: ported _get_type() implementation over to + GType, either to preserve memchunks allocation facilities, + or because Gtk+ 1.0 GtkTypeInfo was still being used. + + * gtk/gtkobject.[hc]: derive from GObject. ported various functions + over. prepare for ::destroy to be emitted multiple times. + removed reference tracer magic. chain into GObjectClass.shutdown() + to emit ::destroy signal. + + * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being + fundamental. + + * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init() + cludge. + + * gtk/gtksocket.c: + * gtk/gtkplug.c: + * gtk/gtklayout.c: + * gtk/gtklabel.c: + * gtk/gtkargcollector.c: + * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT + not being a fundamental anymore, and to work with the new + type system (nuked fundamental type varargs clutter). + + * gtk/*.c: install finalize handlers in the GObjectClass + part of the class structure. + changed direct GTK_OBJECT()->klass accesses to + GTK_*_GET_CLASS(). + changed direct object_class->type accesses to GTK_CLASS_TYPE(). + + * gtktypeutils.[hc]: use the reserved fundamental ids provided by + GType. made most of the GTK_*() type macros and Gtk* typedefs + simple wrappers around macros and types provided by GType. + most notably, a significant portion of the old API vanished: + GTK_TYPE_MAKE(), + GTK_TYPE_SEQNO(), + GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST, + GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST, + GTK_TYPE_ARGS, + GTK_TYPE_CALLBACK, + GTK_TYPE_C_CALLBACK, + GTK_TYPE_FOREIGN, + GtkTypeQuery, + gtk_type_query(), + gtk_type_set_varargs_type(), + gtk_type_get_varargs_type(), + gtk_type_check_object_cast(), + gtk_type_check_class_cast(), + gtk_type_describe_tree(), + gtk_type_describe_heritage(), + gtk_type_free(), + gtk_type_children_types(), + gtk_type_set_chunk_alloc(), + gtk_type_register_enum(), + gtk_type_register_flags(), + gtk_type_parent_class(). + replacements, where available are described in ../docs/Changes-1.4.txt. + implemented compatibility functions for the remaining API. + + * configure.in: depend on glib 1.3.1, use gobject module. + +Thu May 11 12:39:50 2000 Owen Taylor + + * TODO.xml: Various updates to current status. + +Wed May 10 20:25:04 2000 Owen Taylor + + * gtk.m4: Print out version when test succeeds. + +Wed May 10 16:38:17 2000 Owen Taylor + + * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch] + gtk/gtkhsv.[ch]: Color selection dialog rewrite. + + (Original triangle color selector from Simon Budig + , Cleaned up and rewritten for GTK+ by + from Jonathan, Havoc, and Federico. Merge into GTK+ done by David + Santiago ) + + * gtk/gtkcolorseldialog.[ch]: Split color selection dialog + out into a separate widget. + + * gtk/testgtk.c: Add some checkbuttons for toggling palette + and opacity controls. + +Wed May 10 16:08:09 2000 Owen Taylor + + * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that + snuck in prematurely. + +2000-05-07 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I + had deleted a ! operator by mistake, which caused + GDK_SELECTION_CLEAR events never to be generated, which caused + only the first copy to the clipboard from an gtkeditable to + actually cause a copy to the Windows clipboard. + +2000-05-06 Tor Lillqvist + + * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc + compilation, too. Current mingw gcc distributions include the + necessary headers. Also the necessary IIDs are now in mingw + headers/libraries, and own definitions unnecessary. + + More hacking on OLE2 DND, still doesn't work though, and thus + ifdeffed out. + + * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from + here, too. + +Sat, 6 May 2000 13:31:34 +0200 Paolo Molaro + + * gdk/nanox/*: nano-X port work in progress. + * gdk/simple.c: simple test for Gdk. + * README.nanox: notes about the port: read this first! + * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile + with nano-X. + +Fri May 5 11:18:47 2000 Owen Taylor + + * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move + gdk_window_clear() into common code, implement in terms of + gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was + not redirected to the backing rectangle. + +Wed Apr 26 01:53:23 2000 Owen Taylor + + * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into + EXTRA_DIST. It does not work well when the file that + everything depends on is not in the tarball. + +Tue Apr 25 22:20:41 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error + with recursion where process_updates() is called from + an expose handler. (GtkTextView is highly broken in + doing this, but it should work, so it is a nice test + case.) + +Sun Apr 23 23:39:18 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully + handle the case where updates are queued during processing of + updates. + +Tue Apr 18 14:16:50 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume + window is on gdk_display - use that instead of segfaulting. + +Thu May 4 02:04:46 2000 Tim Janik + + * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are + broken and require an empty arg, give it to them. + +Fri Apr 28 19:34:32 2000 Tim Janik + + * gtk/gtklabel.h: indentation fixes. + +2000-05-02 Tor Lillqvist + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to + draw too narrow or too low arcs, they seem to fail, at least with + some display drivers. + + * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR. + + Large changes to the Win32 backend, partially made necessary by + the changes to the backend-independent internal + structures. Attempts to implement similar backing store stuff as + on X11. The current (CVS) version of the Win32 backend is *not* as + stable as it was before the no-flicker branch was merged. A + zipfile with that version is available from + http://www.gimp.org/win32/. That should be use by "production" + code until this CVS version is usable. (But note, the Win32 + backend has never been claimed to be "production quality".) + + * README.win32: Add the above comment about versions. + + * gdk/gdkwindow.c: Don't use backing store for now on Win32. + + * gdk/gdk.def: Update. + + * gdk/gdkfont.h: Declare temporary Win32-only functions. Will + presumably be replaced by some more better mechanism as 1.4 gets + closer to release shape. + + * gdk/makefile.{cygwin,msc}: Update. + + * gdk/win32/*.c: Correct inclusions of the backend-specific and + internal headers. Change code according to changes in these. Use + gdk_drawable_*, not gdk_window_* where necessary. + + * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not + our old DND. + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try + to interpret single characters as UTF-8. Thanks to Hans Breuer. + Use correct function name in warning messages. + + * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the + GSourceFuncs gdk_event_prepare and gdk_event_check. + (gdk_event_get_graphics_expose): Do implement, use + PeekMessage. Thanks to Hans Breuer. + (event_mask_string): Debugging function to print an GdkEventMask. + (gdk_pointer_grab): Use it. + + * gdk/win32/gdkfont-win32.c: The Unicode subrange that the + (old) book I used claimed was Hangul actually is CJK Unified + Ideographs Extension A. Also, Hangul Syllables were missing. + Improve logging. + + * gdk/win32/gdkgc-win32.c: Largish changes. + + * gdk/win32/gdkim-win32.c (gdk_set_locale): Use + g_win32_getlocale() from GLib, and not setlocale() to get current + locale name. + + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to + gdkwin32.h, similarily as in the X11 backend. + + * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix, + assignment was used instead of equals in if test. Thanks to Hans + Breuer. + + * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of + the X11 version. + + * gdk/win32/makefile.{cygwin,msc} + * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the + path to the Win32 headers that works also with the mingw compiler. + + * gtk/gtkstyle.c: Include . + +2000-04-26 Havoc Pennington + + * gtk/gtklabel.c (gtk_label_get_text): Add this function, + replacing the broken gtk_label_get () + +2000-04-15 Havoc Pennington + + * gdk/gdkdnd.h: clean up enum format, remove extra comma, + this keeps scanner scripts from getting confused. + + * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the + data, rather than void + +2000-04-15 Tor Lillqvist + + * gtk/gtkclist.c (gtk_clist_motion) + * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event + with is_hint FALSE, get x and y from the event. They used to be + used uninitialised. The Win32 backend never sends motion events + marked as hints. This for instance fixes the annoying file and + font selector behaviour in the Win32 version. + +2000-04-14 Tor Lillqvist + + * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and + gtk_private_n_signals variables, they are used by some software, + sigh. + + * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the + installation directory from the Registry, where the installer + should have put it. + +Fri Apr 7 17:19:27 2000 Owen Taylor + + * gdk/x11/Makefile.am: Fix problem with installation directory for + gdkx.h + + * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago + so that when selecting menus with the + mouse, the first item will not be selected, but when selecting + with an accelerator, or navigating left-right on a menubar with + the menus popped up, the first item will be selected. + +2000-04-05 Dan Damian + + * configure.in: Added "ro" to ALL_LINGUAS. + +Wed Apr 5 00:08:36 2000 Owen Taylor + + * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy + indentation. + + * Makefile.am (EXTRA_DIST): Fix typo. + + * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk + to catch gdkconfig.h + + * gtk/gtkitemfactory.c: Added FIXME. + +2000-03-30 Jonathan Blandford + + * gtk/gtkpaned.c (gtk_paned_get_position): oops. + s/return_if_fail/return_val_if_fail/g and add a return value. + +Mon Mar 27 20:56:14 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up + merge slipup. + + * gdk/gdkinput.h: Fix missing line from merge. + +Mon Mar 27 20:39:49 2000 Owen Taylor + + * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h + instead of gdkprivate.h. + +Sun Mar 12 15:19:24 2000 Owen Taylor + + * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix + parent class to correctly be GtkDialogClass. + +Thu Feb 24 23:58:21 2000 Owen Taylor + + * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of + toplevel windows and their immediate children by their parents, + since the size of toplevel windows is out of our immediate + control and we don't get any real benefit from trying to track + this size for clipping. + + * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag + for input_only windows. + + * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag + to fix some hacks and make sure that we don't try to set the + background of input only windows. + +Thu Feb 24 18:11:46 2000 Owen Taylor + + * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for + the _really_ internal stuff, and leave gdkprivate.h for the fake private + stuff that we've traditionally exposed. + + * gdk/**.c: Use gdkinternals.h where appropriate. + + * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h + not include gdkprivate-x11.h, move all stuff of conceivable public + interest into gdkx.h; keep all really private stuff in + uninstalled header gdkprivate-x11.h. + + * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to + image->image_put on windows through a new function _gdk_window_draw_image() + to allow us to do backing store for images. (Sort of ugly) + + * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics + contexts locally so that we can offset them properly when drawing + onto backing pixmaps. + + * gdk/gdkinput.h: Reindented + + * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background + pixmap or color for the window, so we can properly initialize + our double-buffer pixmaps, and also so that we temporarily set + a background of None while scrolling. + + * gdk/gdkregion.h: Revise region boolean operators to have an + interface that is actually convenient - switch from creating new + regions on every op, to "methods" that modify existing regions + (A = A OP B). 3 argument forms which allow dest == src, would also + be possible, but the current interfaces seem to map nicely + onto what needs to be done. (There is quite a lot of region + code in GDK now.) + + * gdk/gdkregion.h: Add constructor from rectangle and a copy + operator. + + * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c, + gdkpoly-generic.h: Copy region code from Xlib, switch it over + to 32 bit coordinates, modify it to be mostly GTK+ style + and to have interfaces that match gdkregion.h. + + * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for + double-buffered drawing. gdk_window_begin_paint_{rect,region}() + create a backing pixmap and redirect all drawing to + that backing pixmap until a matching gdk_window_end_paint(). + + * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c: + Create a special drawable class for GtkWindow's that + redirects the drawing to the backing pixmap as necessary + and then calls the real operations in _gdk_windowing_window_class. + + * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c: + Store invalid region for each window. Generate expose events for invalid + region in an idle. This replaces both the expose compression + and the redrawing queuing in GTK+. It is both more efficient and + simpler than either one individually and far more so then the + combination. + + * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h: + Emulate 32 bit coordinates for windows with 16 bit coordinates + by offsetting drawing, guffaw scrolling techniques and + mapping/unmapping child windows as necessary. + + * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes, + where, when invalid regions are processed, the region is stored, + and if expose events come in that are detectably duplicate + the processed exposes (by comparison of event serial numbers), + the stored region is subtracted out of those exposes. + + * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of + regions newly exposed when scrolling or resizing windows. + This, combined with forcing processesing of queued invalidated + regions, gives nice flicker-free scrolling. + + * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of + invalidated regions after every scroll. + + * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate + emulation in GDK. Its, for all practical purposes just a + GtkViewport/GtkFixed hybrid now. + + * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11 + (16-bit) structures as necessary instead of just casting. + + * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code + in terms of the structures from gdkregion-generic.c, using appropriate + offsets from GDK to X11 coordinates. Cache clip mask and + origin and ts origin locally and only flush to the server + when drawing, to avoid constantly setting and resetting these + values when offsetting GC's for scrolling and backing pixmaps. + + * gdk/x11/gdkinput-x11.c: Fix leak of axes structures. + + * gtk/gtkcontainer.c: Call process_all_updates at end + of resizing to reduce flicker. (Avoids having redraw + lag arbitrarily behind resize under some circumstances) + + * gtk/gtkentry.c: Remove old backing store code, and simply take + advantage of the new backing store capabilities of GDK. + + * gtk/gtkmain.c: Simple implementation of widget backing + store - simply push a paint while handling each expose. + (Should really be configurable widget for widget.) + + * gtk/gtkwidget.c: Remove all the old complicated redraw + code, and simply invalidate the GDK windows from + gdk_window_queue_clear(), etc. (Sigh, so much carefully + debugged complexity ... gone to the winds.) + + Remove all the code for suppressing expose events while + resizes are pending; this isn't needed since the invalid + areas won't be processed until after the resizes are + processed, since they are in a lower priority idle. + +Thu Feb 24 15:37:41 2000 Owen Taylor + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width + and height of dest rectangle for non-intersecting rectangles. + +Sun Feb 20 16:47:31 2000 Owen Taylor + + * gtk/gtkwidget.h: Make GtkAllocation just a typedef + for GdkRectangle. + +Sun Feb 20 11:27:00 2000 Owen Taylor + + * gdk/gdk{events,image,private,types,window}.h + gdk/x11/gdkinputprivate.h: Change all coordinates + from int16 to int. Also, Change width and height from + unsigned to signed to avoid all the stupid C + signedness bugs. + +Sat Feb 19 12:01:53 2000 Owen Taylor + + * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): + Use gdk_drawable_get_depth instead of gdk_drawable_get_visual. + Add some more detailed checking. + + * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth): + New function to retrieve the depth of a drawable. + + * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth + field, reorder fields to save memory. + +Mon Dec 13 14:06:03 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion + of the background image instead of scaling the background down to + a line. + + * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious + which temporarily set slider to wrong size. + + * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to + queue_clear(). + +Wed Nov 17 18:36:05 1999 Owen Taylor + +2000-03-23 Jonathan Blandford + + * gtk/gtkpaned.c (gtk_paned_get_position): add getter. + +2000-03-17 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c: Remove the #ifndef + USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage. + + * gdk/win32/gdkfont-win32.c + * gdk/win32/gdkproperty-win32.c + * gdk/win32/gdkselection-win32.c + * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are + now declared such. + +Wed Mar 15 02:59:38 PST 2000 Manish Singh + + * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic + +Mon Mar 13 18:37:55 2000 Owen Taylor + + * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty() + is called without trapping X errors. + +Fri Feb 25 10:48:53 2000 Owen Taylor + + * gtk/gtkrc.*: Fix problem where stray '"' characters found their + way into the fontset lists. + +Tue Feb 22 08:52:52 2000 Tim Janik + + * gtk/gtkthemes.h: add extern "C" scope. + +Mon Feb 21 20:16:42 2000 Lars Hamann + + * gtk/gtkclist.c: applied patch from Guy Harris + to make appends to the list constant. (gtk-guy-990901-0.patch) + +Mon Feb 14 22:50:10 2000 Tim Janik + + * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal() + for the typename hash table. + +Mon Feb 14 15:01:23 2000 Owen Taylor + + * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks + to make sure we never divide by zero. + (Problem pointed out by Michal Jaegermann ) + +Mon Feb 14 12:29:38 2000 Owen Taylor + + * gtk/gtkfontsel.c: Apply patch from + SHIRASAKI Yasuhiro to make font selector work a little + better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.) + + Also, some cleanups in atom handling. + +Sun Feb 13 08:02:21 2000 Tim Janik + + * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer, + not GtkWidget. + +Fri Feb 11 02:19:32 2000 Tim Janik + + * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): + * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): + * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some + more guint wrap-around bugs before going to bed. + +Thu Feb 10 16:16:35 2000 Tim Janik + + * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against + guint wrap arounds in allocation.width. + + * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking + process untill we fit the allocation given. + +Tue Feb 8 09:38:29 2000 Tim Janik + + * gtk/gtkwidget.c: + (gtk_widget_unrealize): guard widget access with ref/unref + around signal emission. + (gtk_widget_hide): same here, but also check its destroyed + state before queueing a resize. + +Tue Feb 8 03:05:55 2000 Tim Janik + + * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead + of gtk_default_insensitive_bg as insensitive base color. + + * gtk/gtktext.c (gtk_text_style_set): set the background color according + to the widget's state. + (gtk_text_realize): same here. + (gtk_text_state_changed): same here. + (draw_bg_rect): compare background color against base[] from + GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL. + +Mon Feb 7 04:01:55 2000 Tim Janik + + * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when + grabs are active, unless a delete event is send to the toplevel + of the currently grab holding widget. + +Sun Feb 6 10:13:15 2000 Owen Taylor + + * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove + debugging g_print's. + +Fri Feb 4 15:54:54 2000 Owen Taylor + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't + ever make the scrolled-window requisition ever depend on the + visibility state of the scrollbars for the AUTOMATIC policy. + This breaks the GTK+ requisition model, and causes loops. + +Fri Feb 4 15:09:12 2000 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for + the default font to avoid problems with XFree86-4.0 where the + default charset is iso10646-1, not iso8859-1. + +Thu Feb 3 14:58:48 PST 2000 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release) + + * gtk/Makefile.am: minor cosmetic consistency tweak + +Thu Feb 3 14:46:01 2000 Owen Taylor + + * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set + the activate_time to 0, so that we handle a quick + press/release press/release properly and don't suppress + the second release. (Red Hat bug #7545) + +Wed Feb 2 22:25:17 2000 Tim Janik + + * gtk/gtkctree.c (row_delete): + (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy + bugs with destruction notifier, *always* update internal + structures *before* calling user code. + +Sun Jan 30 20:10:52 2000 Lars Hamann + + A few more fixes for bug #5487, #2051, #2677. + * gtk/gtkclist.c : + (gtk_clist_button_press): Reset clist->anchor to -1 if event->type is + not GDK_BUTTON_PRESS. + (resync_selection): resync only if selection_mode is + GTK_SELECTION_EXTENDED + * gtk/gtkctree.c (resync_selection): same here + +Sun Jan 30 12:29:20 2000 Owen Taylor + + * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for + gdk_drag_get_selection() and gtk_menu_detach(). + + [ From Jeroen Ruigrok/Asmodai ] + +Sat Jan 29 10:11:56 2000 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_size_request): + page->tab_label can be NULL. + +2000-01-25 Havoc Pennington + + * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative + arg is boolean + + * gdk/gdkselection.c (gdk_selection_owner_set): return boolean + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean + + * gdk/gdkproperty.c (gdk_property_get): return boolean + + * gdk/gdkinput.c (gdk_input_set_mode): return boolean + + * gdk/gdkim.c (gdk_im_ready): return boolean + + * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg + + * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild + glib clash, should fix glib) + + * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg + (gdk_get_show_events): return gboolean, and canonicalize + to TRUE/FALSE + + * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the + colormap is private + (gdk_colors_alloc): gboolean whether to be contiguous + (gdk_color_equal): return gboolean since we are a predicate + and not a qsort() (this looks semi-wrong due to glib breakage, + IMO glib should be fixed) + + * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg + (gdk_get_use_xshm): return gboolean + (gdk_pointer_is_grabbed): return gboolean + + * gdk/gdk.h: Change prototypes to match all the above changes, + and re-run egtk-format-protos as required. + +Fri Jan 28 12:28:17 2000 Owen Taylor + + * gtk/gtkctree.c (resync_selection): + * gtk/gtkclist.c (resync_selection): + + Return immediately if clist->drag_pos < 0. This is a workaround + for the corrupt state that the clist gets into when a + GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press(). + + Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel. + + * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized + variable from recent commit. + +Thu Jan 27 15:22:09 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit. + +Thu Jan 27 18:00:55 2000 Tim Janik + + * gtk/Makefile.am: prefix all autogenerated source that get build in + $(srcdir) with $(srcdir)/, so make doesn't assume they got generted + in builddir. since we subsequently cd into srcdir for autogeneration, + the paths have to be stripped from the target file names, thusly we + use $(@F) as target names now. + put a comment about configure.in's --disable-rebuilds option, + which can be used for non-writable source directories, for development + setups though, srcdir has to be *writable*. + +hu Jan 27 00:15:03 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions): + Finish the job of allowing event to be NULL. + (Fixes bug #4283, reported by Chris Blizzard) + + * gtk/gtkentry.c (entry_adjust_scroll): When calculating + things so that the cursor appears on screen, properly + take into account INNER_BORDER. + (Fixes bug #4754, reported by Antonio Campos) + +Wed Jan 26 23:12:28 2000 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_map): Don't + show the tab_label unless it itself is visible. + + gtk/gtknotebook.c (gtk_notebook_size_request): + Do a better job of making sure that the visibility + of the tab label corresponds to whether it should + be mapped or not. + +Wed Jan 26 21:17:03 2000 Owen Taylor + + * gtk/gtkoptionmenu.c (gtk_option_menu_position): + Use the requisition, not the allocation, since the + allocation has not necessarily been computed yet. + (Pointed out by Eugene Osintsev) + +Wed Jan 26 19:44:25 2000 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_new): Dont' set + style/base[GTK_STATE_INSENSITIVE] both to + gtk_default_insensitive_bg! + (Bug #2187, reported by Jonathan Blandford) + + * gtk/gtkaccelgroup.c (gtk_accelerator_valid): + Add Alt_L, Alt_R to list of invalid accelerators. + (Bug #3736, reported by Vlad Harchev) + +Wed Jan 26 19:01:56 2000 Owen Taylor + + * gtk/gtkfilesel.c (open_ref_dir): Fix several + bugs which occured after an attempt to open + invalid home directory left cmpl_state->reference_dir == NULL. + + - completion on files in home directory didn't work + - completion on an empty string caused segfault + + (Bug #3678, reported by Steve Ratcliffe) + + * gtk/gtkscale.c (gtk_scale_get_value_width): Fix + cut and paste error that was causing scales to + be incorrectly positioned. + (Bug #2956, + patch from Steve Ratcliffe ) + +2000-01-27 Shirasaki Yasuhiro + + * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs + when checking for dcgettext, if we've found we needed + it for dgettext. ++ +Wed Jan 26 18:06:07 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore + queue_clear on NO_WINDOW widgets during a reparent, + since at that point the window and widget heirarchies + are out of sync. This stops crashing in some cases + (the scrolled window reparent test, for instance), and + _probably_ won't cause drawing errors. + + * gtk/testgtk.c: Make the reparenting-a-scrolled-window + test do what it was supposed to do and be robust against + window closings, etc. (Bug #2443) + +Wed Jan 26 16:56:54 2000 Owen Taylor + + * gtk/gtkentry.c: Fix return values on mouse events. + (Bug #2686, Sky ) + + * gtk/genmarshal.pl: Fix up handling of FOREIGN. + (pointed out by George Lebl) + + * gdk/gdkcolor.c (gdk_color_copy): Made const-safe. + (From Ettore Perazzoli ) + +Mon Jan 24 10:44:48 2000 Owen Taylor + + * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle + clicks between rows or outside calender area correctly. + (Patch from Damon Chaplin) + + * gtk/gtkclist.c (gtk_clist_set_row_data_full): + * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): + Call destroy function when overwriting existing data. + (Pointed out by Damon Chaplin) + +Tue Jan 25 09:55:41 2000 Owen Taylor + + * gdk/gdk.c: Remove useless #include of , + which was causing problems on various systems with Xmu. + This hasn't been needed for a very long time. + (Fixes #1185 3167) + +Sun Jan 23 22:27:36 2000 Owen Taylor + + * gdk/gdki18n.h: Include when defining + gdk_isw* in terms of is* as a fallback. + (Bug #4106 - Dan Winship ) + +Sun Jan 23 22:12:36 2000 Owen Taylor + + * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't + realize the widget when it is size allocated! + (old, old bug) + + * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed): + Removed unused call to gdk_window_get_size() that + showed up when the above was fixed. + +Sat Jan 22 15:44:30 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_reparent): Correctly + fix up widget->window when the widget is a + NO_WINDOW container widget. + +Sat Jan 22 12:40:48 2000 Owen Taylor + + * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite + to account for the fact that feof() does _not_ + return TRUE on errors, and thus avoid infinite loops + when trying to use gdk_pixmap_create_from_xpm() + on unreadable values. + +Fri Jan 21 18:32:43 2000 Owen Taylor + + * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/. + +Fri Jan 21 16:24:08 2000 Owen Taylor + + * gdk/gdkgc.c (gdk_gc_set_dashes): Change from + gdk_gc_set_dashes to take gint8 instead of gchar to + make it clearer that it is _not_ a NULL terminated string. + + * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c + gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch] + gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string + arguments. + +Thu Dec 30 04:51:05 1999 Tim Janik + + * gtk/gtkvscale.c (gtk_vscale_pos_background): + * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the + background size relative to our allocation, guard against small + allocations, we may have not yet been size allocated. + +Thu Dec 2 10:59:14 1999 Owen Taylor + + * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3, + not just version == 3. We implement all 3 + most of 4 - + (we don't support matching text/plain;charset=iso-8859-1 + to a dest that expects text/plain). We'll still advertise + 3 to be safe, but any client implementing version >= 3 + must interoperate with 3. + +Tue Mar 14 11:53:31 2000 Owen Taylor + + * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground, + background and gc members, add a warning in gtk_tooltips_set_color() + indicating that this function is deprecated. + +Thu Mar 9 22:10:56 GMT 2000 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update: + - Minor cleanups (Emmanuel, me) + - New questions: + I need to add a new signal to a GTK+ widget. Any idea? (timj) + How can I retrieve the text from a GtkMenuItem? (timj) + How do I validate/limit/filter the input to a GtkEntry? (me) + Memory does not seem to be released when I free the list + nodes I've allocated (timj) + +2000-03-07 Tor Lillqvist + + * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes: + (gdk_win32_gdi_failed) New function for reporting errors from GDI, + for which it is no use to call GetLastError onWin9x. + (gdk_other_api_failed) New function, for general error + reporting without calling GetLastError. + (gdk_win32_api_failed) OTOH, this function always calls + GetLastError. (gdk_win32_last_error_string) Remove this function, + GLib has the equivalent now. + + * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to + call them with function name, file name and line number in the + arguments. + + * gdk/win32/*.c: Use the new macros for reporting errors from GDI + functions. + + * gtk/gtk.def: Add some missing entry points. + + * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and + gtk_paned_set_gutter_size, which don't exist any longer, as void. + + Fixes by Hans Breuer: + + * gdk/makefile.msc: Update for debugging. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake + implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or + PS_DASHDOTDOT or PS_DASH styles depending on the number of entries + in the dash_list. + + * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in + the x11 backend. + + * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro. + + * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h. + +2000-03-04 Tor Lillqvist + + * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store + just pixel value of background colour. + + * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function + containing code snippet previously duplicated in a couple of + places. + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use + gdk_colormap_color. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate + GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate + events for autorepeated Shift, Control and Alt keys. Use + gdk_colormap_color. + + * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the + pointer is inside the window the cursor of which we are setting, + call SetCursor immediately. + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: If we don't have the build number stamp + file, use zero. + + * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and + gtk_paned_set_gutter_size as empty. + + * gtk/gtk.def: Remove gtk_paned_set_gutter_size. + +Tue Feb 29 13:10:00 GMT 2000 Tony Gale + + * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h + gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c + docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml + docs/gtk_tut.sgml docs/gtk.texi TODO: + + Spelling/grammar fixes from Martin Buchholz + +Sat Feb 26 11:46:25 GMT 2000 Tony Gale + + * gtk/gtkcalendar.c: Implement num_marked_dates, + and don't emit mutiple day_selected signals on + month_prev. + +2000-02-25 Jonathan Blandford + + * docs/make-todo (lineno): let title and logo be configurable so + that GNOME can use this script too. + + * TODO.xml: added logourl and a title + +Fri Feb 25 11:12:00 2000 Owen Taylor + + * TODO.xml: Added some UI items, and an explanatory + comment at the top of the file. + +Thu Feb 24 09:07:28 2000 Tim Janik + + * TODO.xml: some updates, added abunch of new entries. + a note for those fiddeling with this file, when done + with it, invoke: + $ ./docs/make-todo TODO.xml >/dev/null + and correct output errors before comitting changes. + +Wed Feb 23 22:59:50 2000 Owen Taylor + + * TODO.xml: Added XML-structured TODO file. + * docs/make-todo: python script to turn TODO.xml into + pretty XML output. + +2000-02-23 Jonathan Blandford + + * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to + the function to let it draw the seven dots, instead of the old, + much maligned, method. + (draw_dot): New function to draw a dot. + + * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation + to draw the handle inside the border width as opposed to outside. + Use paint function instead of gdk_draw_point. + + * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation + to draw the handle inside the border width as opposed to outside. + Use paint function instead of gdk_draw_point. + + * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu): + Change indenting to be more GTK like. + +Wed Feb 23 10:54:14 GMT 2000 Tony Gale + + * docs/gtk_tut.sgml: New section on GtkCalendar + * examples/calendar: Update example code + +Tue Feb 22 13:54:12 GMT 2000 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +2000-02-19 Anders Carlsson + + * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE + to prevent the scroll event to be propagated upwards. + +Fri Feb 18 14:37:29 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove + OwnerGrabButtonMask from button entries for + GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE. + + * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL + to the event mask (which will result in button/press release + being added to the event mask on Unix) so scrolling works + for layouts in scroll windows. + + * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK. + + Patch from Anders Carlsson to add + a scroll event. + + * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel + scrolling to the "Test Scrolling" part of testgtk. + + * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal. + + * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched + it against GDK_SCROLL. + + * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new + way of mouse wheel scrolling. + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise. + + * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise. + + * gtk/gtkmain.c: Removed previous mouse wheel hack. + + * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in + gdk_event_mask_table. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added + GdkEventScroll handler. + + * gdk/gdkevents.h: Added GdkEventScroll structure. + +Thu Feb 17 17:10:12 2000 Owen Taylor + + * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford + and Anders Carlsson to change the Paned widgets so that they + can be dragged from anywhere along the length. Also change + the way that this is drawn to make this apparent. + + * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch + from George Lebl to check that option_menu->menu is present + before getting history. + +2000-02-14 Tor Lillqvist + + * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments + before the assertion for non-NULL segment list. + + * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values): + Seems that pattern brushes *must* be 8x8 pixels! At least on my + machine, but it might be display driver dependent. Sigh, so make + sure the stipple is that size. Does Windows suck or what? + + * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few + places. + +2000-02-13 Havoc Pennington + + * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init + refcount to 1 + (gdk_cursor_new): init refcount to 1 + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1 + +2000-02-13 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter + so that we don't have to do unnecessary settings to the HDC. + + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of + gdk_gc_predraw. + + * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where + the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct + GDI paths, call WidenPath to get the outline of the stroken path, + and then fill the outline (with the brush that was built from the + stipple). + + * gdk/win32/gdkgc-win32.c: Factor out common code from + _gdk_win32_gc_new and gdk_win32_gc_set_values into + gdk_win32_gc_values_to_win32values. Use correct colour for + SetBkColor() (Until now the code actually used a random colour in + the call to SetBkColor()... but that didn't show up as not many + GDI APIs use the background colour. Pattern (opaque stippled) + brushes do.) + + * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string, + gdk_win32_api_failed): New functions for error logging. + + * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro + WIN32_API_FAILED to call them, passing function or file name and + line number. + + * gdk/win32/*.c: Use the WIN32_API_FAILED macro. + + * gdk/win32/gdkprivate-win32.h: Store just the pixel values from + GdkColor for foreground and background in GdkGCWin32Data. + + * gdk/makefile.cygwin: Link in the resource object separately. + + * gdk/win32/rc/gdk.rc + * gtk/gtk.rc (New file) + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Update build number in DLLs automatically, + as in GLib. + +Sun Feb 13 08:54:45 2000 Tim Janik + + * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/. + * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): + * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): + * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the + parameters given and cursor->ref_count. coding style fixups. + + * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer, + not GtkWidget. + + * gtk/*.h: applied patch from Mathieu Lacage to + fix up widget macros and add _GET_CLASS() variant. + + * gtk/*.c: some GtkType fixups. + +2000-02-09 Tor Lillqvist + + * gdk/win32/gdkproperty-win32.c + * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW + were reversed. + +2000-02-04 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use + g_filename_to_utf8 to convert the font names Windows gives us from + whatever is the default codepage to UTF-8. + (gdk_font_load_internal) Use g_filename_from_utf8 for conversion + in the other direction. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste + error in debugging output. + +2000-02-02 Tor Lillqvist + + * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width + and height parameters to gdk_window_clear_area(). Not minus one. + +Wed Feb 2 11:58:05 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity + checks if the widget passed to gtk_drag_get_data() was not the + dest widget. + +2000-02-01 Tor Lillqvist + + * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and + g_filename_from_utf8 functions (which were added a moment ago to + GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed + size buffers. + + gtk_file_selection_get_filename returns the filename in the C + runtime encoding. It calls g_filename_from_utf8, but copies the + returned string to a static buffer, which is returned. I think + this is better than returning the result from g_filename_from_utf8 + directly, which would mean all apps that use it would have to free + the return value. Or should this function care about this issue at + all? Maybe a new function with clearly defined semantics. + + * gtk/gtkfilesel.h: Add comment about + gtk_file_selection_get_filename returning the filename in the C + runtime's encoding. + + * README.win32 + * gdk/gdk.def + * gdk/makefile.{cygwin,msc} + * gtk/gtk.def: Updates. + + * gdk/gdkcursor-win32.c: Initialise refcount. + +2000-01-31 Yuan-Chung Cheng + + * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS. + +2000-01-30 Havoc Pennington + + * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of + destroy + + * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned + + * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then + implemented in platform-specific code + + * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c + + * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an + underscore in front + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy): + put an underscore in front + + * gdk/gdkcursor.c: new file, implements + gdk_cursor_ref/gdk_cursor_unref + + * gdk/gdkcursor.h: Refcount GdkCursor + + * gdk/gdkcompat.h (gdk_cursor_destroy): compat + +2000-01-29 Tor Lillqvist + + * gdk/gdkwindow.h + * gdk/gdkpixmap.h: Remove prototypes for renamed functions. + +Tue Jan 25 11:43:21 2000 Owen Taylor + + * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix + structures to properly inherit from GtkWidget not GtkBin. + +Sun Jan 23 20:28:24 2000 Owen Taylor + + * gtk+.spec.in: Added lib/gtk+/include/* to %files + (bug #5178 - Peter Wainright) + + * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h + so that it will be installed. + (bug #4889 - "david d `zoo' zuhn" ) + +Fri Jan 21 16:29:28 2000 Owen Taylor + + * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument + for the GtkStyleClass vtable const. + + * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc + take a const string argument like GtkTranslateFunc. This will + require changes in use code. + +2000-01-19 Tor Lillqvist + + * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct + semantics (to mimic the X11 backend, which just calls XClearArea) + is to check for zero width (and height), and in that case use the + window's width minus x (height minus y). This fixes for instance + some redraw problems with gtkclist, which were easily noticeable + in the gtk file selection widget. + + (gdk_window_new): Don't set WS_EX_TOPMOST for dialog + windows. + +2000-01-13 Tor Lillqvist + + * configure.in + * gdk/Makefile.am + * gdk/x11/Makefile.am + * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright + (bug #5177). + * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown + out later. + +2000-01-09 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore + WM_MOVE for iconified or invisible windows. This fixes various + problems when minimising windows. Thanks to Bernd Herd. + +2000-01-05 Tor Lillqvist + + * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the + backend's draw_lines method, not draw_points. + +2000-01-02 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from + before Owen's reorganisation: Don't have queued_events and + queued_tail statics in this file, but use gdk_queued_events and + gdk_queued_tail. This makes exposure event compression work again. + + (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't + seem to be needed? + +1999-12-30 Tor Lillqvist + + * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include + gdkkeysyms.h to get the GDK_* keysym constants that are needed by + gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case() + doesn't do anything. + + * gdk/gdk.def: Add gdk_xid_table_insert. + + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkevents-win32.c + * gdk/win32/gdkinput-win32.c + + * gdk/win32/gdkwindow-win32.c: Remove the superfluous + extension_events field in the GdkWindowWin32Data struct. Use only + the extension_events field in GdkWindowPrivate. Previously one was + set, and the other one tested, which broke tablet + functionality. Thanks to Keishi Suenaga for pointing this out. + +1999-12-18 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents): + When handling a single character (text length == 1), don't handle + it as if it was UTF-8. + +1999-12-11 Tor Lillqvist + + * Makefile.am: Distribute README.win32. + + * gdk/Makefile.am + * gdk/win32/Makefile.am: Distribute Win32 files. + + * gdk/makefile.msc: New file. + + * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement + after label). + + * gdk/gdkprivate.h: Must mark also gdk_error_warnings and + gdk_error_code as GDKVAR, as they are referred outside GDK. + + * gdk/win32/makefile.msc: Update. + + * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More + tweaks. Check only if at least one of those Unicode subrange bits + we care for is set. If no code page bits are set, guess (wildly) + based on the charset. + + * gdk/win32/gdkinput-win32.c: Remove debugging leftover. + + * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is + non-NULL. + + * gtk/gtkdnd.c + * gtk/gtklayout.c + * gtk/gtkplug.c + * gtk/gtkselection.c + * gtk/gtksocket.c + * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as + appropriate. There must be a cleaner way to handle this? + + * gtk/gtkrc.c: Must include windows.h on Win32. + + * gtk/testgtk.c: No need to include gdkx.h. + + * gtk/makefile.cygwin: Correct invokation of genmarshal.pl. + +1999-12-07 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now, + the rbearing is set to the same as the width, but this should be + fixed. + +1999-12-06 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New + function. If Windows doesn't tell us what Unicode subranges a font + covers, guesstimate based on the codepages it covers. This will + hopefully help those Windows versions or fonts that don't give us + any useful Unicode subrange information with GetTextCharsetInfo. + Call this function in gdk_font_load_internal. + + * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc + minor changes. + +Fri Dec 3 14:09:50 1999 Owen Taylor + + * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history): + New function, long needed. + +Wed Dec 1 22:35:43 1999 Owen Taylor + + * gdk/gdkproperty.h x11/gdkproperty.c: Change + only_if_exists argument of gdk_atom_intern to + bool. + +1999-11-25 Tor Lillqvist + + * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): + Fix two copy&paste errors. + + * gdk/makefile.cygwin: Also rebuild DLL when the static archive in + win32 has changed. + + * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the + GdkWin32SingleFont struct. + + * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode + subranges of loaded fonts. Clear font signature first, in case + GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have + ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte. + + * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw): + Unoffset clip region. + +1999-11-23 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): set + event->any.window before calling filter functions. + +Fri Nov 19 10:34:41 1999 Owen Taylor + + * gtk/gtkgamma.h: Adapt cast macros to standard. + +[ Merges from 1.2 ] + +Tue Nov 16 10:15:54 1999 Owen Taylor + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_path): + If translation does not include a '/', use entire + translation instead of crashing. + +Sun Oct 31 22:21:11 1999 Tim Janik + + * docs/gtk_tut.sgml: + s/gtk_accel_group_attach/gtk_window_add_accel_group/. + +Sat Oct 30 09:09:09 1999 Owen Taylor + + * gtk/gtkselection.c (gtk_target_list_remove): Use + g_list_remove_link, not g_list_remove. + + [ From Geert Bevin ] + +Sun Oct 24 07:41:40 1999 Tim Janik + + * gtk/gtkclist.c (real_undo_selection): commented out g_print() + statement upon unselection (how the heck did that slip in?). + +Sat Oct 23 03:03:08 1999 Tim Janik + + * gtk/gtktext.c (gtk_text_freeze): + (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling + in frozen state (and aparently crashes). patch provided by Anders + Melchiorsen . + +Sat Oct 23 02:53:20 1999 Tim Janik + + * fix insensitive default/focus widget activation, + reported by Matt Goodall . + + * gtk/gtkwindow.c (gtk_window_key_press_event): + (gtk_window_activate_default): + (gtk_window_activate_focus): + return handled=FALSE for actiavtion of insensitive default + widgets. return handled=TRUE for activation of insensitive + focus widgets. don't activate in either case. + +Tue Oct 19 09:55:08 1999 Owen Taylor + + * gtk-config.in (lib_gtk): Switch order of @x_cflags@ + and $glib_cflags to match library order and in the + theory that an old version of GLib is more likely to + be in the include directory for X then vice-versa. + (Bug #2776) + +Tue Oct 19 09:46:49 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE + to determine the locale for fontsets, not LC_MESSAGES; + the user may want English messages with a handling + for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR + will still be broken) (Bug #2891) + +Tue Oct 19 20:36:42 1999 Changwoo Ryu + + * gtk/gtkrc.ko: Fixed the wrong number of "*"'s. + +Tue Oct 19 12:15:13 1999 Changwoo Ryu + + * gtk/gtkrc.ko: Changed the Korean default fontset. + +Fri Oct 8 02:32:47 1999 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug + where when scrolling to the left or top double exposes + were done, causing major slowdowns. + +Thu Oct 7 18:31:55 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset + names to lowercase and alphanumeric, before looking + them up. + + * gtk/Makefile.am: Install codeset variant gtkrc files + with normalized names. + +Thu Oct 7 22:52:42 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even + popup menus when the menu is already visible, but its parent + is still hidden, (happens after tornoff window got hidden). + +Thu Oct 7 11:09:55 1999 Owen Taylor + + * gtk/Makefile.am (install-data-local): Fix + a typo where gtkrc.vi_VN.tcvn5712 wasn't getting + deleted, causing error messages on install. + +Thu Oct 7 11:03:06 1999 Owen Taylor + + * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw + the handle as well, since we now sometimes ignore + exposes on the handle while resizing. + +Wed Oct 6 18:02:31 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid + extra g_free introduced in one of the last one or two + commits. + +Wed Oct 6 16:38:36 1999 Owen Taylor + + * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files + consistent, put each style that a gtkrc.* file creates + in a unique namespace, remove old files before installing. + +Wed Oct 6 14:31:16 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when + gtk_rc_init is called multiple times. (Yes, people who + do that have bugs in their code.) + +Tue Oct 5 11:36:57 PDT 1999 Manish Singh + + * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf. + Remove it since it's generated by the Makefile anyway + +Tue Oct 5 02:43:41 1999 Owen Taylor + + * gdk/gdkinputcommon.h (gdk_input_device_new): Free + device->info.axes for core pointer. + +Thu Sep 30 13:55:25 1999 Owen Taylor + + * gtk/testgtk.c (destroy_idle_test): Rename idle to + idle_id, to deal with obsolete, broken C libraries. + +Mon Sep 27 02:50:15 1999 Owen Taylor + + * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in + allocation->x/y twice! + + * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough() + consistent with gtk_vscale_pos_trough(). + +Sun Sep 26 19:44:34 1999 Owen Taylor + + * gtk/gtkcontainer.c (gtk_container_queue_resize): We may + be queueing a resize on a toplevel container between + the time we show it and when we map it. So, we need + to test GTK_WIDGET_VISIBLE() for toplevels, and only + use GTK_WIDGET_DRAWABLE() for child windows. + +Thu Sep 23 16:41:03 1999 Owen Taylor + + * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS + (fixes bug #2144) + +Fri Sep 24 00:51:45 1999 Tim Janik + + * gtk/gtkcontainer.c (gtk_container_queue_resize): check for + container DRAWABLE (instead of VISIBLE), so we don't queue + resizes on non-toplevel containers. + +Sun Sep 19 18:13:31 1999 Owen Taylor + + * gtk/gtkselection.[ch]: Make the data argument + const guchar *. + +Sat Sep 18 21:27:40 1999 Owen Taylor + + * gtk/gtkwindow.c: Try to behave sensibly if + the focus widget is the window itself. (Should + we allow this at all?) + +Fri Sep 17 09:57:15 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_set_sensitive): + * gtk/gtknotebook.c (gtk_notebook_set_scrollable): + * gtk/gtknotebook.c (gtk_notebook_set_show_border): + * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args + in prototypes and implementations consistent (Tomas Ogren). + + * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag + before the widget is unparented (reported by damon). + + * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char, + since we provide unsigned data anyways. + +Thu Sep 16 21:32:01 1999 Owen Taylor + + * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay + the call to gtk_tooltips_layout_text() until later. + + * gtk/gtktooltips.c (gtk_tooltips_draw_tips): + Call gtk_widget_ensure_style() before using the style. + +Wed Sep 15 02:52:19 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_event): Added workaround + for old widgets that don't propagate draws to all + children. (Namely gnome-dock for gnome-libs <= 1.0.16) + +Tue Sep 14 19:22:19 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent + for a redraw but just the widget that requested the resize. + +Tue Sep 14 18:29:47 1999 Tim Janik + + * gtk/gtkcontainer.c: added new widget level method + gtk_container_set_reallocate_redraws() and a GtkContainer flag + reallocate_redraws : 1 to reflect the setting, exported this through + the argument system as a boolean ::reallocate_redraws. + + * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws + on the widget because the allocation changes, do so as well for + widget->parent if the parent has reallocate_redraws set to TRUE. + with that containers requesting reallocation redraws get automatically + redrawn if their children changed allocation (this unfortunately + affects also other children that didn't change allocation, but we + cannot work around that before 1.3). + +Tue Sep 14 18:23:01 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width + _and_ height are >0 (not _or_). + + * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize() + instead of gtk_container_queue_resize(), which is a core gtk internal + function (must have been on crack when i queued that). + + * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so + we can check more reliably if we want to discard expose events. + * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING + flag. + + * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes, + we simply trust these events. for deciding whether to discard exposes, + check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING. + +Mon Sep 13 15:01:21 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore + queues of areas that are completely off screen. + + * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken + logic for handleboxes. + + * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity + check on width/height. + +Mon Sep 13 02:22:47 1999 Tim Janik + + * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements", + we are fine with using $@ the way we do (if we actually encounter + brokeness with $@ in VPATH builds because of additional path prefixes, + we need to use $(@F) actually). + +Mon Sep 13 01:34:53 1999 Tim Janik + + * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce + short lived bugs, that would allow language bindings to do surgeries + to our guts. + +Fri Sep 10 15:22:50 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo + where comparison was being done against an uninitialized + value causing intermittant results depending on + compiler flags. Also make it clearer that we aren't + ever initializing the child as 0x0 (though this will + be caught in gtk_widget_size_allocate()) + +Fri Sep 10 10:06:56 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_set_transient_for): Move + gtk_window_unset_transient_for() call after we do checks + involving the old transient parent. + [ From Lance Capser ] + +1999-09-07 Raja R Harinath + + * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create + an empty file. + +Mon Sep 6 00:11:56 1999 Lars Hamann + + * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has + no children. (Reported by: Chris Rogers ) + +1999-09-03 Raja R Harinath + + * gtk/Makefile.am (gen_sources): Improve VPATH builds. + `$@' is valid only in the build dir, not after we've done + `cd $srcdir'. Also use `test -f' instead of less portable + `test -e'. + +Fri Sep 3 15:59:56 1999 Owen Taylor + + * gtk/gtktext.c (correct_cache_insert): Rewrite + for simplicity, and hopefully correctness. + (Fixes bug #1322, which was a segfault when + on some insertions with the properties around + the insertion set up just wrong.) + + * gtk/gtktext.c (gtk_text_adjustment): When we receive + a "changed" signal, clamp the new value to the adjustment + bounds to avoid segfaulting if someone tries to change + the adjustment to a bogus value. (Bug #1795) + +Thu Sep 2 16:33:59 1999 Owen Taylor + + * gtk/gtkmain.c: Ignore unexpected destroy notifies + for children, for toplevel windows handle them + like delete_event. + + * gtk/gtkplug.c: Add an unrealize handler so that + we unref plug->socket_window when we are done + with it. + +Fri Sep 3 14:52:54 1999 Owen Taylor + + * gtk/gtktext.c (clear_area): Fix stupid signedness + problem that was causing background to sometimes + be misaligned. + +Fri Sep 3 12:26:33 1999 Owen Taylor + + [ Fixes pointed out by Ettore Perazzoli ] + + * gtk/gtkmenu.c (gtk_menu_position): Make + sure we never position menus with negative x, y, + since gtk_widget_set_uposition() can't handle that. + + * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): + Modify the positioning code a bit so that we always + put the top-left corner onscreen. (This is for + UI reasons, gtk_menu_position() now takes care of + gtk_widet_set_uposition() brokeness.) + +Fri Sep 3 03:06:30 1999 Tim Janik + + * gtk/Makefile.am: fixed up things for -jx, x > 1. + +Sun Sep 5 08:48:51 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the + RC style that is passed in. The lack of the ref + before was a bug. If people worked around this + bug, this will introduce a slight memory leak + in their code. The code should typically look like: + + rc_style = gtk_rc_style_new (); + [...] + gtk_widget_modify_style (widget, rc_style); + gtk_rc_style_unref (rc_style); + + * gtk/gtkwidget.c (gtk_widget_modify_style): Reset + the style if it was already set. + + * gtk/gtkwidget.c (gtk_widget_set_name): Only set the + style if it was set before. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * gtk/testgtk.c (main): Add a check to see if we + are being run from the correct directory and + to quit nicely if we are not. + + * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function + static. + +Thu Sep 2 23:00:03 1999 Tim Janik + + * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS. + + * gtk/gtkwindow.c: + queue resizes unconditionally (gtk_widget_queue_resize will figure + what to do if the window is not realized). + (gtk_window_move_resize): only recenter the window + for GTK_WIN_POS_CENTER_ALWAYS. + (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in + the same way as GTK_WIN_POS_CENTER. + +Thu Sep 2 22:39:27 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_reposition): check for the last position + with (!(info->last_flags & GDK_HINT_POS)) instead of + (!info->last_flags & GDK_HINT_POS). + + * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and + new_height unconditionally, because we use these values even if + !default_size_changed && !hints_changed. + comented the (default_size_changed || hints_changed) case with + respect to resize rejects from the window manager. + + * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values + in the zvt condition hack, since this includes the window hints, set + the hints after the handling_resize case. + + * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a + window is initially shown with to the geometry. + +Thu Sep 2 07:38:56 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): + s/size_changed/default_size_changed/g so i know what's + really going on (frying brain on smaller flame now). + +Thu Sep 2 05:47:47 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if + we have size_changed upon handling_resize. this is a gross + workaround for the broken zvt widget and should be removed in + 1.3 again (search for FIXME). + Owen provided an accurate comment for this: + + /* We could be here for two reasons + * 1) We coincidentally got a resize while handling + * another resize. + * 2) Our computation of size_changed was completely + * screwed up, probably because one of our children + * is broken. It's probably a zvt widget. + * + * For 1), we could just go ahead and ask for the + * new size right now, but doing that for 2) + * might well be fighting the user (and can even + * trigger a loop). Since we really don't want to + * do that, we requeue a resize in hopes that + * by the time it gets handled, the child has seen + * the light and is willing to go along with the + * new size. (this happens for the zvt widget, since + * the size_allocate() above will have stored the + * requisition corresponding to the new size in the + * zvt widget) + * + * This doesn't buy us anything for 1), but it shouldn't + * hurt us too badly, since it is what would have + * happened if we had gotten the configure event before + * the new size had been set. + */ + +Wed Sep 1 20:46:11 1999 Owen Taylor + + * gtk/gtkrc.c: deal properly with the fact that RC + style lists may include rc styles more than once. + + * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed + unused static function. + + * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a + stack of directories of RC files currently being + parsed and implicitely add them to pixmap path. + + This fixes a bug where the directory would get + appended then overwritten by pixmap_path declarations. + + (bug #1462, from Peter Wainright ) + + * gtk/gtkthemes.c (gtk_theme_engine_unref): Call + theme's exit function. (Patch from Peter Wainwright, + bug #1454) + + * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy): + Add a destroy() handler to take care of removing + group for menu item. (Fixes bug #1197) + + * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko + in warning message. + +Wed Sep 1 21:27:42 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server + roundtrip to figure window's width and height, since we know that + anyways from widget->allocation. + +Wed Sep 1 12:37:44 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_move_resize): Compute + the hints after we request the new size. + +Wed Sep 1 10:38:37 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_compute_hints): Removed + GTK_WIDGET_REALIZED() assertion - we can compute the + hints before we are realized. + + * gtk/gtkwindow.c (gtk_window_move_resize): Reorder + hint changing so that we have a value of hints_changed + when we decide whether to constrain the window size. + + * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix. + + * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups, + change back to G_MAXINT. + +Wed Sep 1 06:54:59 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize + new GtkWindowGeometryInfo, so fields like GdkGeometry geometry + contain uncluttered values. + (gtk_window_compute_hints): simply assert that window is realized + and that geometry_info is valid, since we rely on this anyways. + (gtk_window_constrain_size): major cleanups to the code. + if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height + for the base size, instead of the minimums. use 32767 as max width + and height (like in gtkwindow.c) instead of G_MAXINT. + +Wed Sep 1 04:41:25 1999 Tim Janik + + * cleaned up the GtkContainer.need_resize flag handling mess, we + only need to force resize requests when we were prematurely + realized, or our widget tree was modified when we were temporarily + hidden. handling these cases directly upon showing the window (i.e. + while the GdkWindow is still unmapped) avoids the need to wait for + a configure event response and therefore makes the GUI more snappier + and avoids blank windows during the roundtrip. + + * gtk/gtkwidget.c: + (gtk_widget_hide): + (gtk_widget_show): don't queue resizes on toplevels, they know how + to deal with matters. + + * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize + flag directly for not visible resize containers and spare us unecessary + signal emissions. + + * gtk/gtkwindow.c: + (gtk_window_realize): if we need to enforce premature size allocation, + queue a container resize so we are correctly resized later on. + (gtk_window_init): + (gtk_window_size_request): + don't freak around with the ->need_resize flag, + gtk_container_queue_resize() will care about that. + (gtk_window_show): + handle initial resizing issues here, we can handle matters better in + this place, especially since we know that our GdkWindow is still + unmapped. + (gtk_window_move_resize): + don't care about ->need_resize at all. + handle size changes properly that occoured while we waited for a + configure event. + +Tue Aug 31 15:58:46 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_set_uposition): + * gtk/gtkwindow.[hc] (gtk_window_reposition): + Move the hint setting code from gtk_widget_set_uposition + to here; set the hints so that we respect any previously + set geometry hints. + + * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't + change the window hints here or move the window here, + let that happen in gtk_window_move_resize(). + +Tue Aug 31 06:58:52 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due + to already queued resizes (and therefore redraws) on a widget, check + its anchestry as well. + + * gtk/gtkcontainer.c: + (gtk_container_queue_resize): clear resize widgets for resize + containers before aborting prematurely. this is especially important + for toplevels which may need imemdiate processing or their resize + handler to be queued. + (gtk_container_dequeue_resize_handler): added new internal function for + gtkwindow.c. + + * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a + configure event, take possible changes in window position into account + as well. + if we request a new window size, queue up a resize handler that will + last until the configure event response arrives. + combined the ->need_resize case (initial show) with the general size + (hints) changed case and added even more comments. + if !auto_shrink, only revert to the old allocation if the new size + is smaller than the current allocation. + +Tue Aug 31 11:55:20 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy, + gtk_window_set_geometry_hints + gtk_window_set_default_size): + When hints are set, queue a resize so that the hints will + be eventually reset on the toplevel. + + * gtk/gtkwindow.c (gtk_window_show): Use + gtk_window_compute_default_size(). Clear the need_resize flag + on the initail map so that we don't unnecessarily trigger the + resize code. + + * gtk/gtkwindow.c (gtk_window_move_resize): Split apart + into separate functions. Compare the hints we are setting + with what we set last time so that we can accurately + tell when we need to reset the hints. + + * gtk/gtkwindow.c (gtk_window_compute_default_size): New + function to figure out the size from requisition + and default_size. + + * gtk/gtkwindow.c (gtk_window_constrain_size): Function + from fvwm to constrain a size to the geometry hints. + + * gtk/gtkwindow.c (gtk_window_compare_hints): New function + to compare two sets of geometry hints. + + * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed + from gtk_window_set_hints(), just compute the hints, + don't set them. + + * gtk/gtkwindow.c (gtk_window_compute_reposition): Move + code from gtk_window_move_resize() to separate function, + rationalize a bit. + +Tue Aug 31 13:05:03 1999 Owen Taylor + + * gtkrc.h: Move the ref_count member out of the GtkRcStyle + structure into a new private structure. + + * gtkrc.c: Split GtkRcStyle into public/private. + In the private part, add a list of pointers to the + RcStyle lists this RcStyle participates in. + + * gtkrc.c: When a RcStyle is free, remove all + lists referencing it from the + realized_style_ht hash, and free those lists. + + * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call + gtk_rc_init(), since that adds the default styles + to the list of parsed RC files again. + + * gtk/gtkrc.c: Use gtk_rc_style_find() consistently. + +Thu Aug 26 14:14:42 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity + checks that ensure that a widget's allocation is at least 1 in width + and height. (GNOME note: this doesn't affect old panel code anymore, + because GtkSocket will request width and height of at least 1 since + Fri Jul 23). + + * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been + allocated yet (happens if the user realizes the window prematurely), + size request and allocate it. + (gtk_window_size_allocate): guard against guint underflows. + +Wed Aug 25 19:01:36 1999 Lars Hamann + + * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs + in gtk_built_sources, so gtk.defs gets built prior to all other + sources. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * gtk/Makefile.am: + invoke indent on gtkmarshal.*. + rewrote source generation rules, use COPYING as oldest source tag for + a piggyback rule to generate all sources from (don't touch it ;). + major cleanups, strip spaces on build rules for GNU Make. + + * gtk/genmarshal.pl: don't operate on hardcoded filenames but take + source and target files from commandline arguments. don't invoke indent. + +Sat Aug 21 14:07:36 1999 Lars Hamann + + * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize + notebook after switch to avoid drawing problems. + (Bug#856 Reported by: Theodore Roth ) + + (gtk_notebook_pages_allocate): don't map not visible tab_labels, + show them instead. + (Bug#1805 Reported by: Dave Cole ) + +Sat Aug 21 14:07:36 1999 Lars Hamann + + * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize + notebook after switch to avoid drawing problems. + (Bug#856 Reported by: Theodore Roth ) + + (gtk_notebook_pages_allocate): don't map not visible tab_labels, + show them instead. + (Bug#1805 Reported by: Dave Cole ) + +Wed Aug 18 09:20:10 1999 Tim Janik + + * gtk/gtkwindow.c: + we use window->need_resize from configure_event now, to indicate that + the gtkwindow should keep its allocation (e.g. because the user resized + the window through window manager handles). resize_count is now reliably + used to figure whether we got the allocation we requested from the + window manager. + configure events get queued as resizes now, the real stuff (size + computation and allocation) now only goes on in gtk_window_move_resize(). + GtkWindow's requisition now contains its *real* requisition (like all + other widgets), *not* taking usize into account. + geometry_info->last_{width|height} is now updated from set_hints() only + so it always contains the last hints we set for the window manager. + made some event handlers return TRUE instead of FALSE. + the overall code should be much more straight forward now, and the + significant code portions are accompanied by comments now. + (gtk_window_set_hints): + removed requisition argument and made it + fetch the requisition through gtk_widget_get_child_requisition. + we also don't move the gdkwindow here anymore, gtk_window_move_resize() + does that now. + (gtk_window_show): + ensure that the widget is realized before calling + gtk_container_check_resize() (and thus gtk_window_move_resize()), also + ensure that we got properly size requested and allocated before + realization. + (gtk_window_configure_event): + ignore plain window moves, or reallocate the widget tree through the + resize queue otherwise. + (gtk_window_move_resize): + mostly rewrote this function to figure window manager hints more + reliably, coalesce window moves and resizes to reduce configure events + and do actuall size allocations. + +Tue Aug 17 07:43:04 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets + that have a resize pending, because a redraw is already queued for them. + + * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal + hack to clear resize_widgets. + + * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets + for resize containers prior to size allocation. (this is also a bit + ugly, but avoids side effects for stopped emissions and is thus more + reliable). + (gtk_widget_unparent): removed disconnect call for clear_resize_widgets. + + * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this + function from gtk_tooltips_expose, as we connect to ::expose_event + *and* ::draw now. + +1999-08-18 Federico Mena Quintero + + * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity + checks. + (gtk_target_list_unref): Likewise. + + * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise. + +Tue Aug 17 15:47:07 1999 Owen Taylor + + * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar): + guard against division by zero. (Fixes bug #1339) + +Tue Aug 17 10:56:49 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_move_{forward,backward}_word): + Prevent the trivial leak of information of allowing + word motion when the entry is not visible. + +Tue Aug 17 10:28:52 1999 Owen Taylor + + * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate + modality to error dialog as well as confirmation dialogs. + (Bug #1803, reported by Rosanna Wing Sze Yuen) + +Wed Aug 11 01:04:57 1999 Owen Taylor + + * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor + tree->view_lines. + (gtk-guy-990611-3.patch: Guy Harris ) + + * gtk/Makefile.am (install-data-local): Solaris apparently + has various troubles with ln -f; use rm first instead. + (gtk-guy-990611-2.patch: Guy Harris ) + +1999-07-30 Raja R Harinath + + * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir, + use `cp' followed by `rm' (the `rm' was already there). + +July 30, 1999 Elliot Lee + + * configure.in: Fix autoconf warnings about cross compilation by + trying to provide sane defaults for AC_TRY_RUN. + * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir), + put them into $(srcdir) when generated. Also add a dependency of + gtksignal.h on gtkmarshal.h for -j builds. + * gtk/gtk(dnd,style,gamma).c: Minor warning fixes. + +Wed Jul 28 09:29:19 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main_iteration_do): Added missing + GDK_THREADS_{LEAVE,ENTER} pair. + (From Paul Fisher ) + +Fri Jul 23 01:00:15 1999 Tim Janik + + * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested + width and height are always >0 (owen). + +Fri Jul 23 00:00:47 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent + change that assured that a widget's allocated with and height are + always >1, since this breaks *buggy* panel code. unfortunately this + back-breaks the gimp's color selector. + + * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our + allocation is always >0 in width and height, before sending the + configure event; this is a *gross* hack to get the gimp back to work. + + * marked both cases with TODO-1.3 + +Wed Jul 21 15:47:39 1999 Owen Taylor + + * gtk/gtktext.c: Don't display wrap indicators when + text is not editable and word wrap is on. + +Wed Jul 21 08:21:40 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case + option menus here as they are not derived from menu shell, assure that + the option menu has a menu we can add items to. + +Tue Jul 20 23:29:48 1999 Tim Janik + + * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation-> + width/height to (gint) before calculations and check against < 0 to + avoid guint wraparounds. + +Sun Jul 18 00:35:49 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated + width and height is never zero. sanity check both dimensions against + 32767 and issue a warning if the allocation is greater than that. + +Wed Jul 7 15:03:30 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_events_pending): Unlock around call + to g_main_pending() as well. + +Wed Jul 7 14:59:01 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main_iteration): Unlock around + call to g_main_iteration() - since that will regrab + GTK+ lock to process events. + +Thu Jul 1 15:01:55 1999 Owen Taylor + + * gtk/gtkwindow.c + - Regularize with the rest of GTK+ by making widget->requisition + not reflect the set_usize() + - Always recompute geometry hints, then check if they + changed before sending them to the X server. The + previous checks for changes would fail in a number + of circumstances. + +Thu Jul 1 11:55:59 1999 Owen Taylor + + * gtk/gtkstyle.c: Include for strcmp(). + +Wed Jun 30 19:26:36 1999 Owen Taylor + + * gtk/gtkdnd.c: + - Code cleanups + - Instantaneously update on modifier key presses + - Allow cancellation of the drag with Escape. + +Tue Jun 29 17:04:09 1999 Owen Taylor + + * gtk/testgtk.c (create_handle_box): Set the policy + to auto_shrink - otherwise the appearance is rather + strange when flipping between horizontal and vertical. + +Mon Jun 28 09:29:52 1999 Tim Janik + + * gtk/gtkwindow.c: add ::default_width and ::default_height arguments. + (gtk_window_set_default_size): don't change a value if it's < 0. + queue a resize. + +Sun Jun 27 11:00:33 1999 Tim Janik + + * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts. + +Mon Jun 28 12:08:25 1999 Owen Taylor + + * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't + add an extra "/" when concating "/" + filename. + (From Matt Grossman ) + +Mon Jun 28 10:57:12 1999 Owen Taylor + + * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask + for fg_gc if we set it for drawing pixmap. + +Tue Jun 15 12:45:12 1999 Owen Taylor + + Fixes from Peter Wainwright + + * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is + already set, call old engine's destroy function and + unref the old engine. + +Thu Jun 10 17:59:38 1999 Tim Janik + + * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize. + +Wed Jun 9 15:13:16 1999 Tim Janik + + * gtk/gtkaccelgroup.h: mark certain functions as internal. + +Wed Jun 9 13:48:28 1999 Tim Janik + + * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the + expand behaviour changed. + + * gtk/gtklabel.c (gtk_label_set_pattern): + (gtk_label_set_justify): + (gtk_label_set_line_wrap): + don't bother invoking queue_clear, the reallocation does + that for us, always free_words so the upcoming resize will + relayout the label's contents. + +Wed Jun 9 12:50:48 1999 Tim Janik + + * applied argument implementation patches from Elena Devdariani + . + + * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size, + ::space_style, ::relief + * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size + * gtk/gtkpreview.c: ::expand + * gtk/gtkpaned.c: ::handle_size, ::gutter_size + * gtk/gtknotebook.c: ::homogeneous + * gtk/gtklabel.c: ::wrap + * gtk/gtklist.c: ::selection_mode + * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge + * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y + * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity + * gtk/gtkclist.c: ::sort_type + * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle + * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child + +Tue Jun 1 23:38:38 1999 Owen Taylor + + * gtk/gtkstyle.c: Removed ill-thought-out part of last + comment. + +Tue Jun 1 23:30:09 1999 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_attach): Get the reference + counting right when we have to attach a new style + for a different visual. (Chi-Deok Hwang ) + + * gtk/gtkstyle.c: Documented the refcounting + peculularities of gtk_style_attach. + +1999-06-01 Tim Janik + + * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid + window types. + + * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead + of GTK_TOPLEVEL for creating the window. + +1999-06-01 Tim Janik + + * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is + the last argument (reported by Per Winkvist). + +Tue May 25 13:13:12 1999 Owen Taylor + + Fixes for invisible XOR lines (Frank Loemker + ) + + * gtk/gtkclist.c (gtk_clist_realize): Always use + a non-zero pixel for GDK_XOR. + + * gtk/gtkvpaned.c gtk/gtkhpaned.c: + Use GDK_INVERT instead of GDK_XOR. + +Wed May 12 21:56:40 1999 Lars Hamann + + * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed + signals if h/voffsets differ from adjustment values. + Reportet by Jerome Bolliet + +Mon May 10 04:20:41 1999 Tim Janik + + * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate + ::selection-done emissions up to the topmost menu shell. + +Fri May 7 10:15:14 1999 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset + the user data on the window before destroying it. + + * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an + unrealize handler to take care of destroying + notebook->panel properly. + (Bug #1198 - Morten Welinder ) + + * gtk/gtktext.c (expand_scratch_buffer): Fix reversal + of g_new and g_realloc to stop memory leak. (Actually, + we could just use g_realloc(), but I'm not 100% sure + that is portable). + (Bug #1196 - Morten Welinder ) + +Wed Apr 21 00:42:08 1999 Owen Taylor + + * gtk/gtkplug.h: Removed stray GtkPlugButton declaration. + + * gdk/gdkfont.c (gdk_text_measure): Fix the return value + for fontsets. + + * gtk/gtkbutton.c (gtkbutton_expose): Fix warning + with bin/button confusion. + +Thu May 6 04:53:26 1999 Tim Janik + + * gtk/testgtk.c: in the ItemFactory test, link radio items together, + and show how preselection of radio items is done. + +Sun May 2 13:31:14 1999 Tim Janik + + * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): + * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert): + * gtk/gtktoolbar.c (gtk_toolbar_insert_element): + * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1): + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): + * gtk/gtktable.c (gtk_table_attach): + * gtk/gtklist.c (gtk_list_insert_items): + * gtk/gtkmenushell.c (gtk_menu_shell_insert): + * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): + * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): + * gtk/gtkbin.c (gtk_bin_add): + * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): + * gtk/gtkfixed.c (gtk_fixed_put): + * gtk/gtklayout.c (gtk_layout_put): + general fixups to container_add logic. always realize child if + child->parent is realized, only map the child and queue a resize + if child and child->parent are both visible. + +Fri Apr 30 09:02:28 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall + instead of gtk_container_foreach to walk and unrealize children, so + composite children get also unrealized. + (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to. + (gtk_widget_map): assert that the widget is visible (basic constrain). + (gtk_widget_real_map): assert that the widget is realized (basic + constrain). + +Fri Apr 29 00:53:20 1999 Tim Janik + + * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak. + +Tue May 4 09:32:08 1999 Owen Taylor + + * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc + file for iso-8859-2 locales. + + * configure.in (ALL_LINGUAS): ALL_LINGUAS update. + +Tue Apr 27 16:38:32 1999 Owen Taylor + + * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES. + (Pointed out by andy@rz.uni-karlsruhe.de and others). + Remove some suspicious and useless lines. + +Tue May 4 08:44:08 1999 Owen Taylor + + * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use + width,height = 0, 0 to mean - here to edge of window, + instead of -1, -1, since the former is all we support. + +Tue May 4 08:34:43 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main): Correctly free list nodes + when removing from quit_functions list. + +Tue Apr 27 14:17:16 1999 Tim Janik + + * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable. + +Tue Apr 27 18:23:35 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): + When redrawing characters on non-visible entry, use appropriate + '*' character. (Bug #1130 - Jean-Marc Jacquet ) + +Tue Apr 27 01:31:40 1999 Lars Hamann + + * gtk/gtkclist.c (drag_dest_cell): compute destination cell + from drag coordinates. + (gtk_clist_drag_data_received) (gtk_clist_drag_motion): + use drag_dest_cell. + + * gtk/gtktree (drag_dest_cell) + (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise. + (Bug #1129) + +Wed Apr 21 21:26:11 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize + translate_* fields. + (gtk_item_factory_finalize): invoke translate_notify independant from + translate_data. + (gtk_item_factory_set_translate_func): likewise. + (gtk_item_factory_destroy): only remove ifactory pointer from those + widgets that belong to us (stupid me). + +Mon Apr 19 12:05:31 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of + rc_style list when lookup succeeeds. + +Thu Apr 15 01:11:24 1999 Lars Hamann + + * gtk/gtkctree.c (resync_selection): + * gtk/gtkclist.c (resync_selection): fixed undo_selection bug. + * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection + bug. + +Fri Apr 9 19:22:19 1999 Owen Taylor + + * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c: + Add some missing GDK_THREADS_ENTER()/LEAVE around + timeouts. (Patches from Sebastian Wilhelmi ) + +Thu Apr 8 20:10:33 1999 Tim Janik + + * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate() + rather than emit_by_name. + + * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference + on the widget across multiple signal emissions. + (gtk_editable_delete_text): same here. + (gtk_editable_class_init): set widget_class->activate_signal after + editable_signals[ACTIVATE] has been created. + +Wed Apr 7 22:59:47 1999 Owen Taylor + + * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp + position here prematurely -- we might not have the + right ->min_position and ->max_position yet. + +Tue Apr 6 16:38:51 1999 Owen Taylor + + * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request): + Add error traps so if the other end of the connection + dies, we survive. + + * gtk/gtkselection.c (gtk_selection_notify): Clean + up properly when selection property retrieval fails. + + * gtk/gtkselection.c (gtk_selection_request): Correctly + reject SelectionRequest notifies where the handler + returns no data. + +Tue Apr 6 12:24:21 1999 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight + when we've previously highlighted. + + * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't + emit two "drag_leave" signals for Motif drops. + + * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send + back the correct status messages when dropping from + Motif onto a proxy window that is rejecting the + drop. + +Sat Mar 27 23:32:13 1999 Tim Janik + + * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free + the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal() + to compare two argument values. added gtk_arg_to_valueloc() to set a + variable from an arg through its location (pointer). + + * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of + gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected + as gfloat*, uchars are collected as guchar*, ints are collected as + gint*, etc... + +Mon Mar 29 17:45:47 1999 Owen Taylor + + * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c: + Include instead of . + + * gtk/gtkstyle.c: Fix double include of gtkthemes.h + (actually, a lot more duplicate includes occur if + you trace through the sequence of #include's) + gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu + +Mon Mar 29 17:02:58 1999 Owen Taylor + + Patches from Akira Higuchi + gtk-a-higuti-990322-[0-3] + + * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS + that was causing -DX_LOCALE not to work. + + * gtk/gtkrc.c (gtk_rc_init): + X_LOCALE will never have LC_MESSAGES defined + +Thu Mar 25 12:38:31 1999 Tim Janik + + * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from + g_get_home_dir() (gtk-pmc-990123-0.patch.gz). + + * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/ + left/right as well (gtk-michael-980726-0.patch.gz). + + * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/ + for pointer values, use gchar instead of char. fixed uline allocation + leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem + chunks instead of G_ALLOC_ONLY. + (gtk_label_size_request): always alter requisition as passed and leave + widget->requisition alone. + (gtk_label_set_text): allow NULL strings. + (gtk_label_new): likewise. + +Wed Mar 24 09:24:03 1999 Tim Janik + + * gtk/gtkdrawingarea.[hc]: type/macro fixups. + +Mon Mar 22 05:51:34 1999 Tim Janik + + * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible + *and* mapped (i.e. drawable). + (gtk_bin_expose): only send exposes to drawable children. + + * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable. + (gtk_box_expose): only send exposes to drawable children. + + * gtk/gtkhscale.c (gtk_hscale_draw): + * gtk/gtkvscale.c (gtk_vscale_draw): + hm, this is an ugly one. we first compute the size of our trough area + here (window relative) and then check intersection with the draw_area + which is parent relative because we're a NO_WINDOW widget, so we need + to offset the trough area by allocation.x and allocation.y before the + check. (this must not be done for the background area though, since + that's already computed parent relative). + +Mon Mar 22 00:41:39 1999 Lars Hamann + + * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary, + unrealize title buttons. + +Fri Mar 19 00:00:22 1999 Lars Hamann + + * gtk/gtkclist.c (gtk_clist_column_title_passive) + (gtk_clist_column_title_active): + only connect/disconnect to GtkWidgetClass::event to block mouse events. + + * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): + zero initialize event, removed superfluous gdk_window_get_pointer call + + * gtk/gtklist.c (gtk_list_vertical_timeout) + (gtk_list_horizontal_timeout): removed superfluous + gdk_window_get_pointer call + +Wed Mar 17 09:00:00 1999 Tim Janik + + * plugging problems reported by "Bruce Mitchener, Jr." + due to a purify session. + + * gtk/gtkstyle.c: + (gtk_style_ref): + (gtk_style_unref): assert ref_count to be > 0. + + * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize + the requisition. + (gtk_clist_set_shift): likewise. + + * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the + adjustments. + + * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the + event before sending it and set send_event to TRUE (which needs to + be done for *all* synthesized events). + (gtk_list_vertical_timeout): likewise. + + * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory + leaks. + + * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event + to TRUE when synthesizing events. + +[ *** end of merges from 1.2 *** ] + +1999-11-21 Tor Lillqvist + + * gdk/gdkconfig.h: Remove, as this is a file generated by configure + (or copied from gdkconfig.h.win32 on Win32, sigh). + + * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL. + + * gdk/gdk.c (gdk_keyval_convert_case): Fix typo. + + * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line. + + * gdk/gdkconfig.h.win32: New file. + + * gdk/win32/makefile.cygwin: Build just a static archive here. + + * gdk/makefile.cygwin: New file. Get the win32-specific stuff + for the DLL from the static archive built above. + + * gdk/gdk.def: Moved here from the win32 subdirectory. + + * gdk/win32/*: Adapt for the changed private struct organisation. + + * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now. + +Sun Nov 21 16:44:35 1999 Stefan Jeske + + * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support + for wheel mice (buttons 4 and 5). + +1999-11-18 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor + drawables use just the pixel field in the foreground and + background GdkColor of the GdkGC. + + gdk_gc_set_{fore,back}ground() are called in the GIMP with + GdkColors containing uninitialized (red,green,blue) fields, and + just the pixel field filled in, and furthermore in the + visual-dependent format as returned by gdk_rgb_xpixel_from_rgb(). + It thus turns out that we really don't need to have the full + GdkColor for fg and bg in GdkGCWin32Data after all. Will change + it later to have just the pixel values. + +Mon Nov 15 17:17:51 GMT 1999 Tony Gale + + * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/ + +Sat Nov 13 22:30:29 GMT 1999 Tony Gale + + * docs/gtkfaq.sgml: threads example from Erik Mouw. + New question on GtkLabel background colors. + + * docs/gtk_tut.sgml: + - Correct the example code callback + function definitions. + - Update the gtkdial example code, from Frans van Schaik. + - Update setselection.c to current API. + + * examples/Makefile examples/*/*.c: Update to code + listed in tutorial. + +1999-11-10 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode + subrange table (from the "Developing International Software for + WIndows 95 and Windows NT" book) was missing the Hangul syllable + block... Get the loaded font's charset correctly. + + (Note that this, and the other *-win32.c files, still really are + the old ones, the win32 subdirectory is not ready for compilation + yet after the reorg.) + +Wed Nov 10 17:26:49 GMT 1999 Tony Gale + + * gtk/gtkclist.c: Fix off-by-one bug in parameter + check. + +Wed Nov 10 12:12:03 1999 Owen Taylor + + * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState() + on results of XQueryDeviceState(). + +Mon Nov 8 16:40:43 1999 Owen Taylor + + * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since + we need to accesss only ->children. We need an accessor + for the children. + + * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G + DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer() + to get rid of gdkx.h include. + + * gtk/gtkctree.c: Get rid of #include + and random references to 'None'. + + * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c + Get rid of unused #include + + * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include + gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from + gdkconfig.h. + +1999-11-08 Tor Lillqvist + + * gdk/win32/gdkdraw.c + * gdk/win32/gdkfont.c + * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes + following yesterday's changes. (Unrelated to Owen's reorg.) + +Mon Nov 8 16:18:25 1999 Owen Taylor + + * gdk/x11/gdkinput-gxi.c: Add missing include, + fix GdkWindowPrivate => GdkDrawablePrivate. + + * gdk/x11/gdkinputprivate.h: include . + + * gdk/x11/Makefile.am (xinput_sources): Add missing + backslash to fix building with --with-xinput=none + +Mon Nov 8 14:47:04 1999 Owen Taylor + + Move all X specific code into the x11/ directory. + Aside from shuffling things around, did the following: + + * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add + gdk_arg_context_* - a simple argument parsing system + in the style of popt. + + * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch] + gdk/x11/gdkprivate-x11.h: + Remove X specific stuff from GdkDrawable and GdkWindowPrivate - + add ->klass and ->klass_data fields. The klass_data + field points to an auxilliary structure that is + windowing system dependent. + + * gdk/gdkfont.c: Make most of the measurement functions + simply wrappers around gdk_text_extents(). + + * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a + _gdk_font_strlen() function that hides the weird + behavior in gtk+-1.[02] where a string is interpreted + differently for 8-bit and 16-bit fonts. + + * gdk/gdkevents.c: Add a new function gdk_event_button_generate() + to store common code for synthesizing double/triple + press events. + + * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h. + Make all the function that modify an existing GC + simply wrappers around gdk_gc_set_values(). + + * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation + for throwing out later. + + * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate, + GdkImagePrivate and GdkColormapPrivate to have a + windowing system dependent part (GdkFontPrivateX etc.) + that "derives" from the system-independent part. + + * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c: + Got rid of the included-source-files for XInput in + favor of automake conditionals. (Which didn't exist + when XInput support was originally added.) + + * gdk/gdkrgb.c: Remove the visual id from the debugging + statements since that is X11 specific; print out + type/depth info instead. + + +Wed Nov 3 18:14:49 1999 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when + loading duplicates of hashed fonts. + + * gdk/gdk.c (gdk_keysym_convert_case): rename + gdk_XConvertCase to gdk_keysym_convert_case, allow + results to be NULL in the GTK+ style. + + * gdk/gdkcompat.h: Started compatibility header + for renames. + +1999-11-07 Tor Lillqvist + + * gdk/win32/gdkprivate.h: New font private structures, related to + fontsets. + + * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and + gdk_font_list_free(). On X11, will just be wrappers to + XListFonts() and XFreeFontNames(). On Win32, the code previously + in gtkfontsel.c is now here. + + New function gdk_font_xlfd_create(). On X11 will get the FONT + property of the font (for GDK_FONT_FONTs), or call + XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32 + builds a XLFD style name from the font information in the LOGFONT + struct(s). + + New function gdk_font_xlfd_free(), which correspondingly frees the + string returned by gdk_font_xlfd_create(). + + Implement fontsets on Win32. Add a function that iterates over a + wide char string and calls a callback function for each substring + of wide chars from the same Unicode subrange (and thus probably + available in the same real font). + + Improve the XLFD emulation a bit. + + * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix. + + * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k + Beta3, WM_IME_CHAR messages don't seem to contain the composed + multi-byte char as with the Active IMM on Win9x. Oh well, handle + WM_IME_COMPOSITION with GCS_RESULTSTR instead, use + ImmGetCompositionStringW() to get the composed Unicode chars. + + * gdk/win32/gdkgc.c + * gdk/win32/gdkdraw.c: Changes needed because of the font private + struct changes. + + * gdk/win32/gdk.def: Add the new functions. + +1999-11-04 Tor Lillqvist + + * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to + get the Platform SDK to get . + + * gdk/win32/gdkevents.c: More event handling fixes and + simplification. Never generate motion events with is_hint true. We + used to do that on bogus grounds earlier. Windows sends + WM_MOUSEMOVE messages on button events even if the mouse hasn't + moved, ignore these. + + * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets. + + * gdk/win32/gdkglobals.c + * gdk/win32/gdkprivate.h: Define a typedef for the pointer to + the TrackMouseEvent function, and use it. + + * gdk/win32/gdkwindow.c: Terminate widechar string with a zero + char before calling WideCharToMultiByte in order to get a string + for the window title. + + * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out. + + * gdk/win32/gdk.def: Remove obsolete functions. + + * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add + /nodefaultlib and /defaultlib switches. + + * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/. + +1999-10-31 Tor Lillqvist + + * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including + EuroSign). + + * gdk/gdktypes.h: Add note about wchar_t not necessarily being the + same type as GdkWChar, especially on Win32. + + * gdk/win32/*.c: Change gdk_root_parent to be a pointer. + + * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode + before passing to Windows GDI for drawing etc. Convert to the + system default codepage before passing to Windows as window + titles. + + * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to + support changing input locale on the fly. + + * gdk/win32/gdkevent.c: Support input language (keyboard locale) + on-the-fly changes. Convert incoming characters from the current + codepage to Unicode (and then to a UTF-8 multi-byte string) based + on the current input language. Use keysym<->Unicode mapping tables + and functions borrowed from xterm sources. + + Support IMEs (Input Method Editors) for CJK languages. On non-CJK + editions of Win9x, use the ActiveX-based Active IMM (Input Method + Manager) if available. IMEs and the Active IMM are available under + the disguise of Chinese, Korean and Japanese support for IE and + Outlook Express from "Windows Update" for Win98. On Win2k, the CJK + support is present in all editions (as long as you install it). + + Call DispatchMessage from gdk_events_queue() (and thus + gdk_WindowProc()), instead of duplicating the code in + gdk_WindowProc(). + + Reworked the grab handling and propagation code, factored out + duplicated code snippets into separate functions. Other cleanups, + too. + + * gdk/win32/surrogate-dimm.h: Provide just the bits we need from + the header describing the Active IMM. + + * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far + just do the same as for "single" fonts. + + * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from + gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle + the new keysyms from gdkkeysyms.h. + + * gtk/gtkfontsel.c (Win32): Load the font for the preview as a + fontset, so that gtkentry uses wide characters. + + * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call + GTk+'s system directory "gtk+", not "gtk". + +Sat Oct 30 13:17:18 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ update + +1999-10-21 Tor Lillqvist + + * gdk/win32/gdkprivate.h: Add more font private data. + + * gdk/win32/gdkfont.c + * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset + fonts and strings. Now works much better. You still have to + have a correct font selected, though. No fontset emulation yet. + +1999-10-19 Tor Lillqvist + + * gtk/maketypes.awk: Use G_OS_WIN32. + + * gtk/gtk.def: Add some missing entry points. Also some non-public + ones, but PyGTK porter claims to need them. + + * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the + built-in type generation. + +1999-10-14 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for + GDK_FONT_FONT fonts (which is all we have for now, we don't + emulate fontsets). The X11 version uses plain XDrawString in that + case, too. The string passed to gdk_draw_text_wc seems to be in + fact (at least, when used by gtkentry and gtktext) either in a + single-byte charset, or a DBCS. Not Unicode. + + This fixes the problem in gtkfontsel, where even if you had + selected a font with a non-Latin1 charset (windows-greek, for + instance), the preview still used Latin-1 glyphs. + + * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't + use GetTextExtentPoint32W, use GetTextExtentPoint32A. + (gdk_font_load): Recognize the demibold etc weights, even if we + don't have the corresponding constants in the headers. + (gdk_font_hash_insert): Use same hash mechanism as in the X11 + version. Should save font resources a bit, when we don't have + multiple HFONTs for the same font. + + * gdk/win32/gdkprivate.h: Add the names field as in the X11 + version. + +1999-10-11 ERDI Gergo + + * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default + X values + +1999-10-09 ERDI Gergo + + * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text + layout support (as mentioned on + http://www.jcinteractive.com/gnome-ui/software/widgets/) + +Wed Oct 6 12:46:17 PDT 1999 Manish Singh + + * gtk/fnmatch.c + * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/ + +1999-10-05 Jesus Bravo Alvarez + + * configure.in (ALL_LINGUAS): Added Galician (gl) + +1999-10-05 Tor Lillqvist + + * gdk/win32/*.[ch]: Corresponding changes as in X11 backend. + + * gdk/win32/gdkcompat.c: New file, actually provide an + implementation for the deprecated functions. (Just temporarily.) + + * gtk/gtkfilesel.c: Fix an #ifdef syntax botch. + + * gtk/makefile.{cygwin,msc}: Update gdk_headers. + + * gdk/win32/gdk.def gtk/gtk.def: Updates. + +1999-10-05 Kjartan Maraas + + * configure.in: Added "uk" to ALL_LINGUAS. + +Mon Oct 4 11:57:11 PDT 1999 Manish Singh + + * configure.in: correct checking for BeOS check + + * gdk/gdktypes.h + * gtk/fnmatch.c + * gtk/gtkfilesel.c + * gtk/gtkitemfactory.c + * gtk/gtkmain.[ch] + * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines + +Mon Oct 4 16:16:53 1999 Pablo Saratxaga + + * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset + encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic + languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used + by Bulgarian). + +Sun Oct 3 18:13:44 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_reset_shapes_recurse): + Fix a reference to window_private->destroyed. + + * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct + (ugly) setting of an internal GdkWindow member to use + a _slightly_ cleaner macro. + + * gdk/gdkprivate.h: Split GdkWindowPrivate into + GdkDrawablePrivate and GdkWindowPrivate. + Add extra macros for accessing GDK_DRAWABLE_ components. + + * *.[ch]: Massive adjustments for the above, use the + new macros in a lot of places. + +Sun Oct 3 15:16:24 1999 Owen Taylor + + * gdk/gdktypes.h: Make GdkDrawable the base type, + not GdkWindow. + +Sun Oct 3 15:08:44 1999 Owen Taylor + + * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function. + +Sun Oct 3 14:26:15 1999 Owen Taylor + + * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory. + +Sun Oct 3 14:16:23 1999 Owen Taylor + + * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with + gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp) + + * configure.in gdk/Makefile.am x11/: create x-specific subdirectory. + + * docs/gtk-config.1: Now autogenerated. + * docs/Changes-1.4.txt: started + +1999-10-03 Tor Lillqvist + + * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage + to #ifdef also here. + + * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those + Owen did to the X11 backend. + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use + ScrollWindowEx when blitting inside a window, it can't be correct + in the general case. + + * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling + WM_GETMINMAXINFO is easier. + + * gdk/win32/gdkimage.c (gdk_image_new): Create new image with + depth equal to the bitspixel value, not the visual's depth. + + * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth + to 24 even if the bitspixel value is 32. + + * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no + need to check for depth==32 when bpp==32, depth will always be 24. + +Fri Oct 1 18:03:36 1999 Owen Taylor + + * docs/Changes-1.4.txt: Started + + * gtk/Makefile.am (gdk_headers): Include all the new headers. + + * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces. + + * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private + into C file. + + * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput + header to gdkinputprivate.h. + + * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been + unused since before 1.2. + +1999-09-30 Tor Lillqvist + + * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32, + expand possible hex escapes in the font family (put there by + logfont_to_xlfd if the font name isn't a legal XLFD font family, + mainly if it contains slashes). (gtk_font_selection_create_xlfd): + On Win32, add hex escapes here, too. + +Wed Sep 29 19:55:35 1999 Owen Taylor + + * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11 + to #ifdef GDK_WINDOWING_X11. + +[ Merges from gtk-1-2 ] + +Wed Sep 8 07:13:29 1999 Tim Janik + + * configure.in: fixed "GNU Make" check to pass with new make version + 3.77.95. + +Fri Sep 3 16:04:41 1999 Tim Janik + + * gtk-config.in (--version): don't echo @GTK_VERSION@, but + @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the + AM_PATH_GTK() macros don't get confused by the -pre1. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * configure.in (REBUILD): Change check for perl5 + to check explicitely for v >= 5.002. (5.001 + does not work with our scripts.) + +Wed Aug 25 15:45:46 1999 Tim Janik + + * configure.in: evaluate $PERL for the perl version check. added + --disable-rebuilds to give the user an option to completely disable + any source autogeneration rules. + +Mon Aug 23 23:16:14 1999 Tim Janik + + * configure.in: evaluate $ac_make when checking for GNU Make. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * docs/Makefile.am: added generation.txt. + + * Makefile.am: require automake 1.4, build README from README.in and + INSTALL from INSTALL.in in dist-hook. + + * README.in: + * INSTALL.in: new files to autogenerate README and INSTALL from. + + * configure.in: figure whether we have GNU Make + + * docs/generation.txt: minor additions/corrections. + +Wed Aug 11 13:38:26 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +July 30, 1999 Elliot Lee + + * configure.in: Fix autoconf warnings about cross compilation by + trying to provide sane defaults for AC_TRY_RUN. + +Fri Jul 16 22:20:21 PDT 1999 Manish Singh + + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.3 + +Thu Jul 8 11:30:18 1999 Owen Taylor + + * INSTALL: Indicate that the --with-glib= configure + time flag is unsupported. + +Mon Jul 5 20:36:03 1999 Owen Taylor + + * docs/generation.txt: Added a file that gives + documenation about the autogeneration process for + various autogenerated files. + +Tue Jun 29 15:59:25 1999 Owen Taylor + + * configure.in (LIBS): Look for libgmodule in the + right location. + +Thu Jun 17 13:57:31 1999 Owen Taylor + + * docs/gtk_tut.sgml: Removed references to + code examples in my directory on gtk.org as + they should all be in the tutorial now. + + * docs/gtk_tut.sgml: Added sources for dial-test + and scribble-xinput programs that were previously + missing. + +Fri Jun 4 00:08:59 1999 Owen Taylor + + * TODO: Added entry about menu keyboard navigation, removed + some finished items. + +Mon May 31 00:11:24 1999 Owen Taylor + + * acinclude.m4: Standardize on func_dgettext + not func_gettext, so that the checks for dgettext + actually are paid attention to. + +Wed May 5 10:47:54 1999 Owen Taylor + + * configure.in (LIBS): Add $INTLLIBS into $LIBS + directly, rather than repeating the checks for + gettext. + + * INSTALL: Added information about gettext and + NLS support. + + * acinclude.m4 (LIBM): Check for dgettext, not + just gettext. This should hopefully fix things wrt + systems with old versions of GNU gettext installed. + +Tue Jun 29 15:59:25 1999 Owen Taylor + + * configure.in (LIBS): Look for libgmodule in the + right location. + +Thu Apr 1 16:58:10 PST 1999 Manish Singh + + * autogen.sh: add --enable-maintainer-mode + + * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS" + +Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson + + * docs/gtk-config.1.in: + docs/Makefile.am: + configure.in: gtk-config is now generated. + + * docs/gtk-config.1: Removed, now generated. + +Thu Sep 23 17:59:59 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't + handle CreateNotify itself, still put out a debuging message for + --gdk-debug=events. made the ReparentNotify debugging message more + verbose. + wrap xcoords translation for ConfigureEvents into an error trap, + a destroy event may already be pending, and in that case, the + actuall coordinate values are not at all critical. + +Sat Sep 18 22:24:15 1999 Owen Taylor + + * gdk/gdkcc.c: Stop leaking the color_hash all over + the place. Simplify and improve the logic. + +Fri Sep 17 09:57:15 1999 Tim Janik + + * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean) + for prototypes and function implementations consistent (reported + by Tomas Ogren). + +Tue Sep 14 18:23:01 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): tell if expose events have + send_event set in debugging output. + (gdk_compress_exposures): default initialize the event so we don't + operate on bogus values (namely send_event). + +Thu Sep 2 16:33:59 1999 Owen Taylor + + * gdk/gdkwindow.c: When we receive an unexpected + destroy notify on one of our windows, don't just + warn about it, also mark our windows as destroyed. + +Sun Sep 5 08:10:53 1999 Owen Taylor + + * gdk/gdkfont.c (gdk_font_hash_insert): Add + name => font and name => fontset hashes. The + name => fontset hash is a _big_ win since we + weren't previously caching fontsets at all and loading + fontsets is expensive. The name => font hash + is less of a win, but it does save us from doing + repeated XQueryFont calls on the same font. + + * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names + list so we can remove font/fontset from hash. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_atom_intern): Remove useless + and slightly confusing test. [ XInternAtom (,,TRUE) + will never return None ]. + +Sat Sep 4 08:39:26 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints) + gdk/gdkwindow.c (gdk_window_set_hints): + + Don't omit setting the properties if flags == 0 - + there may be an existing set of properties there + already. (Very old bug. Would it be better to + delete the property instead?) + + * gdk/gdkselection.c (gdk_selection_property_get): Fix + spelling error in comment. + +Wed Sep 1 14:05:30 1999 Owen Taylor + + * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push() + to avoid stomping over gdk_error_warnings. + + * gdk/gdkimage.c (gdk_image_new): compute image->bpp + as (bits_per_pixel + 7) / 8. This gives the same + result as before for multiples of 8, but actually + a "reasonable" value for 1bit or 4bit displays. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * gdk/Makefile.am: minor cleanups, strip spaces on build rules for + GNU Make. + +Tue Aug 17 07:43:04 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): give a debugging note when + discarding configure events. + +1999-08-18 Federico Mena Quintero + + * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the + refcount is greater than zero. + + * gdk/gdkwindow.c (gdk_window_unref): Likewise. + + * gdk/gdkfont.c (gdk_font_unref): Likewise. + + * gdk/gdkgc.c (gdk_gc_unref): Likewise. + + * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise. + +Wed Aug 11 01:04:57 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_property_get): Fix assumption + that format 32 => sizeof(item) == 4. It really is + sizeof(long). + +Tue Jun 29 23:02:42 1999 Owen Taylor + + * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't + core dump at all on X IO errors, only core dump + if --enable-debug for X errors. + +Thu Jun 24 17:06:23 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for + unknown window:" message. disabled ConfigureNotify discarding code, + because it led to events being processed out of order. + +Thu Jun 24 12:22:02 1999 Tim Janik + + * gdk/gdkglobals.c: preinitialize gdk_error_code to 0. + + * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since + we export this function, supress error warnings and don't reset the + error code in the first half of this function. + + * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error + code (instead of just -1) so gdk_error_trap_pop() reveals something + actually informative about the error that happened. + + * gdk/*.c: + don't rely on gdk_error_code being -1 if an error occoured, but just + gdk_error_code != 0. + +Thu Jun 24 11:50:07 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list + pointer *before* invoking the filter function, so we at least don't + crash if a filter is removed that is currently executed. window filters + *really* need to be made truely reentrant at some point. + +Mon Jun 14 11:10:15 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): print the atom name in the + PropertyNotify debug messages. + +Wed May 5 22:51:06 1999 Owen Taylor + + Patch from Sung-Hyun Nam + + * gdk/gdkim.c: Fix cut-and-paste errors for + x/y and PreeditAttributes/StatusAttributes. + +Wed May 5 22:24:21 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change + G_MAXINT to 2^16 to alleviate overflow problems in + various window managers. + +Wed Apr 21 00:42:08 1999 Owen Taylor + + * gdk/gdkfont.c (gdk_text_measure): Fix the return value + for fontsets. + +Wed May 5 12:42:01 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints): + Initialize size_hints.x and size_hints.y because kwm + brokenly pays attention to them. + (Bug #1181 - Lars Heete ) + +Wed May 5 11:38:56 1999 Owen Taylor + + * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the + return value of gdk_list_visuals(). + (Bug #1193 - Morten Welinder ) + +Tue May 4 11:12:56 PDT 1999 Manish Singh + + * gdk/gdkim.c (gdk_im_real_open): cast the return value of + XSetIMValues to (void *) when comparing to NULL, to workaround + the problem of some compilers barfing since older X headers don't + have the prototype for it. + +Mon Apr 19 10:11:12 1999 Owen Taylor + + * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak + for pseudocolor where colormap->colors was double + allocated. + + * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the + color value in the hash table with the pixel filled + in so when we do later hash table lookups, the color + value is correct. + +Sun May 2 15:29:45 PDT 1999 Manish Singh + + * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before + making the call + +Tue Apr 27 11:17:35 1999 Owen Taylor + + * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak + pointed out by Morten Welinder . + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Fri Apr 16 20:41:43 PDT 1999 Manish Singh + + * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines + + * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use + g_strdup_printf instead of calcing the length separately + +Tue Apr 13 02:49:33 1999 Owen Taylor + + * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG + that we don't do in many other places. (Fixing duplicate + #include of config.h) + + * gdk/gdkevents.c: include gdkinput.h _after_ config.h. + Otherwise, #ifndef XINPUT_NONE check in the latter + doesn't work. (Bug #546) + +Sun Apr 11 14:38:03 1999 Tim Janik + + * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color + "None" case insensitive. + +Tue Apr 6 16:38:51 1999 Owen Taylor + + * gdk/gdkselection.c: + Add error traps so if the other end of the connection + dies, we survive. + +Tue Apr 6 12:24:21 1999 Owen Taylor + + * gdk/gdkdnd.c (gdk_drag_motion): Separate out the + dest_xid field into two fields - one for the window + to send in messages, one to indicate the last looked + up window for caching purposes. This is needed, so + that Leave messages get the correct window. + +Mon Apr 5 13:21:30 1999 Owen Taylor + + * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare): + Fix warning created by people mucking around + with the gsource API. + + * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full): + Change mapping between GIOCondition and GdkInputCondition + to match the way the Linux kernel does it. This should + fix problems where closed pipes were no longer signalling + GDK_INPUT_READ on systems with a native poll(). + +Mon Apr 5 17:11:57 1999 Owen Taylor + + * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check + explicitly for the string "None" - it is in the XPM + spec and some servers treat unknown colors in odd ways + (like asking the user!) + +Thu Apr 1 16:58:10 PST 1999 Manish Singh + + * gdk/gdkevents.c: made "->" into a "." of previous change so + it compiles + +Thu Apr 1 18:41:25 1999 Owen Taylor + + * gdk/gdkevents.c (gdk_compress_exposures): Set the + window field of the event structure before calling + user filters. + +1999-03-31 Federico Mena Quintero + + * gdk/gdk.c (gdk_init_check): Use False as the last argument to + XInternAtom() here. This is a particularly Old And Nasty(tm) bug. + +Mon Mar 29 17:31:52 1999 Owen Taylor + + * gdk/gdkim.c (gdk_mbstowcs): Free the value of the + intermediate text property - prevents major memory + leak when gdk_use_mb. + gtk-d3august-990311-0: Bj|rn Augustsson + +Mon Mar 29 17:02:58 1999 Owen Taylor + + Patches from Akira Higuchi + gtk-a-higuti-990322-[0-3] + + * gdk/gdkfont.c (gdk_text_extents_wc): Make work when + sizeof(wchar_t) != sizeof (GdkWChar) + + * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS + that was causing -DX_LOCALE not to work. + + * gtk/gtkrc.c (gtk_rc_init): + X_LOCALE will never have LC_MESSAGES defined + + * gdk/gdk.c (gdk_init_check): + Remove --xim-preedit and --xim-status from argv properly. + + * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so + that the client window is present on the X server + before we pass it to the input method. + +Tue Mar 9 10:46:49 1999 Owen Taylor + + * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where + if --display is specified on the command line, than + the drag window will not be created on that display. + +Tue Mar 9 10:38:24 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where + lookups with only_if_exists == TRUE were inserting + bogus values into the atom cache. + +Wed Mar 17 09:00:00 1999 Tim Janik + + * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t), + then reset it to NULL. + + * gdk/gdkcolor.c: + (gdk_colors_free): + (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the + key for g_hash_table_remove() in both functions, this prevents us + from accessing possibly uninitialized portions of a GdkColor structure + where we are only interested in its pixel value. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + +1999-09-21 Tor Lillqvist + + * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting, + just to be sure. + + * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of + unused variables, leftovers from the X11 version. + + * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd. + + * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only + downcase fields on X11. + +Mon Sep 20 13:17:39 1999 Pablo Saratxaga + + * configure.in,po/pt_BR.po: added Portuguese Brazilian file from + Alex Sandro Queiroz e Silva + +1999-09-17 Tor Lillqvist + + * gdk/win32/gdk.def: Add gdk_threads_mutex. + + * gtk/makefile.msc: Correct path to libintl. + + Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in + use of gint vs. int, and gint vs. gboolean in headers and + definitions. Use GtkType for the *_get_type functions. Note that + these changes preserve binary compatibility. + + * gdk/gdk.c + * gdk/win32/gdk.c + * gdk/gdk.h: Fix inconsistencies: gint vs int. + + * gtk/gtkmain.c + * gtk/gtkclist.c + * gtk/gtkmenufactory.c + * gtk/gtknotebook.c + * gtk/gtkwidget.c: Fix inconsistencies, also gint + vs. gboolean. + + * gtk/gtkcolorsel.[ch] + * gtk/gtkcombo.[ch] + * gtk/gtkdrawingarea.[ch] + * gtk/gtkgamma.[ch] + * gtk/gtkhandlebox.[ch] + * gtk/gtkhpaned.[ch] + * gtk/gtkhruler.[ch] + * gtk/gtkplug.[ch] + * gtk/gtkpreview.[ch] + * gtk/gtkruler.[ch] + * gtk/gtksocket.[ch] + * gtk/gtkstatusbar.[ch] + * gtk/gtktoolbar.[ch] + * gtk/gtkvbbox.[ch] + * gtk/gtkvpaned.[ch] + * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type + functions. + + * gtk/gtkgamma.h: Fix bug, missing () in call of + gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. + +1999-09-14 Tor Lillqvist + + * gdk/gdkcolor.c (gdk_colormap_new) + * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak: + colormap->colors was allocated twice. + + * gdk/win32/gdk.c: Remove some unused stuff. + + * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the + colormap. + + * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type) + * gtk/gtklabel.h (gtk_label_get_type) + * gtk/gtktipsquery.c (gtk_tips_query_get_type) + * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType + in a couple of places, not guint. + +Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga + + * configure.in,po/et.po: added Estonian language file + +Wed Sep 1 14:36:12 CEST 1999 Pablo Saratxaga + + * configure.in,po/da.po: added Danish file + +Sun Aug 29 13:38:59 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: Minor FAQ Update + +Sat Aug 28 14:34:37 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ update + +1999-08-27 Tor Lillqvist + + Win32: Philippe Colantoni suggests a + way to get window contents continually refreshed while resizing. I + didn't like the effects myself, so it's not on by default. + + * gdk/win32/gdkprivate.h: New flag variable + gdk_event_func_from_window_proc, FALSE by default. + + * gdk/win32/gdk.c (gdk_init_check): Set above flag if the + environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we + are passed --gdk-event-func-from-window-proc. + + * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set, + and we have am event_func, call it instead of enqueing the event. + +1999-08-23 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon + Kelley: Set expose_count in GdkEventExposes correctly. + + * gdk/win32/gdkwindow.c: Remove dead code (#ifdef + MULTIPLE_WINDOW_CLASSES). + + * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer + for bug in NT, apparently NT *does* draw the end pixel, too, in + LineTo with a one-pixel pen, so we don't have to do it ourselves. + +1999-08-21 Tor Lillqvist + + Improvements by Hans Breuer: + + * gdk/win32/gdkwindow.c (RegisterGdkClass): New function + + * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the + CS_?REDRAW flags as they cause lots of (late) redraws when "show + window contents while dragging" is turned on. Allocate at least + one unique class for every GdkWindowType. If support for single + window-specific icons is ever needed (eg. Dialog specific), every + such window should get its own class. + +1999-08-19 Tor Lillqvist + + * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste + error that caused crashes. + +1999-08-17 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one + window, use ScrollWindowEx, and call UpdateWindow. This prevents + bugs when for instance part of the window was outside the + display. Thanks to Philippe Colantoni for finding and fixing this. + +1999-08-16 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial + endpoint calculations which were totally wrong. (A little RTFMing + helps a lot ;-) + + * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc + from a separate directory, not from gettext, because of licensing + issues (we want to use the LGPL version). + + * README.win32: Mention the intl from glibc vs from gettext issue. + +1999-08-13 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs + in the key event handling: Now AltGr chars work again. Also, + now Alt-digits are passed up as well as Control-digits. + Pass keypad plus and minus as normal plus and minus. + +Wed Aug 11 13:38:26 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +1999-07-25 Tor Lillqvist + + * README.win32 + * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without + the Wintab SDK. + + * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work + OK, but getting closer. Guard against bogus tilt data from Wacom + ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to + enable easier building without Wintab. + + * gdk/win32/gdkinput.h + * gdk/win32/gdkevents.c + * gdk/win32/gdkwindow.c: Minor changes related related to above. + + * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11 + code. As we have just one visual on Win32, no sense to have it in a + table, and no need for the hash table. + + * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look + better on white background. + +1999-07-21 Tor Lillqvist + + * README.win32: Update gcc build instructions. Mention gettext is + GPL. + + * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct + supported cursor size with GetSystemMetrics. + + * gdk/win32/gdkfont.c + * gtk/gtkfontsel.c: Guard against some font weight and charset + symbols being undefined (in mingw32 headers). + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin + * gtk/gtkthemes.c: No longer need to have differently named + gcc-built DLLs when using gcc-2.95 and -fnative-struct. + +hu Jul 15 13:33:15 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: Long awaited FAQ update. + +1999-07-15 Tor Lillqvist + + * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement + it. Obscure bit manipulation needed. + + * gdk/win32/gdkevents.c: Logging. + + * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming + style (file name include compiler name) for theme engines. + +1999-07-13 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage. + + * gdk/win32/gdkevents.c: Fix long-standing bug in key + events. The key.string wasn't zero-terminated, still we strdup'ed + it in gdk_event_copy(). Synthesize crossing events for button + events before possible propagation. + + * gdk/win32/gdkwindow.c: Log gdk_window_set_title. + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Use new DLL naming style for the + GCC-compiled ones. + + * gdk/win32/makefile.msc + * gtk/makefile.msc: Cosmetics mostly. + + * gtk/gtk.def: Add missing entry points. + + * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32. + +1999-07-09 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width + or height is zero. Don't print a warning if Pie or Arc fails, they + always fail (?) for very narrow ellipses. + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for + the part or the destination window corresponding to source area + outside of the source drawable's boundary. + + * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do + anything if less than two points. + + * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always + return NULL. Gtk cut-and-paste inside a single program works + better this way. (It always gets the clipboard contents from + Windows, not from its own copy, which is cleared anyway. I can't + say I fully understand what happens... Emulating the X selection + and property stuff is a bit of a mess.) + + * gdk/win32/gdkevents.c + * gdk/win32/gdkproperty.c: A bit more verbose logging. + + * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions + that never got deleted). Revamp gdk_region_shrink. + + * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions + after use. + + * gtk/gtk.def: Add some missing entry points. + + * gtk/gtkrc.c: Strip trailing directory separator from pixmap path + component. + +1999-07-04 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Handle + Control-digits specially. + +1999-07-03 Tor Lillqvist + + * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext. + +1999-06-28 Tor Lillqvist + + * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for + bitmaps, should be multiple of 4. (Thanks to Hans Breuer for + finding this.) + +1999-06-01 Jose H Mercado + + * gtk+.spec.in: Corrected some typos in files section. + +1999-06-15 Tor Lillqvist + + * README.win32: Mention using GNU gettext. + * config.h.win32: Enable NLS stuff. + * gtk/makefile.msc: Use GNU gettext. + * gdk/win32/gdkdnd.c: Minor header reorg. + * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly + cosmetics. + * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public. + * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call. + +Wed Jun 2 11:44:25 PDT 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.status + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged) + +1999-05-30 Tor Lillqvist + + * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to + SafeAdjustWindowRectEx. Don't override all calls to + AdjustWindowRectEx by it, but use it only in two places: When + creating a new top-level window and when moving a top-level + window. + + Use screen coordinate rectangle, not client rectangle, in + gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only + when we try to place a window so that the decoration (mainly, + title bar) isn't visible. + + These changes fix the bug that showed up for instance as the + GIMP's saved top-level windows moving right and down (by an amount + equal to the window decoration) for each session. This bug showed + up also in testgtk's "Saved Position". + + gdk_window_resize also redone a bit. + +1999-05-25 Tor Lillqvist + + * gtk/testgtkrc: Add (commented out) Windows-style theme + include line. + + * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points. + +1999-05-18 Tor Lillqvist + + * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and + gdkx.h to a gdk subdirectory, so that applications can include + these with without trouble. + + * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified. + (gdk_image_destroy): Plug resource leak, some GdkImages didn't + have their bitmap destroyed. + + * gdk/win32/gdk.def: Add gdk_root_parent. + +Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson + + * configure.in + gtk-config.in + ltconfig + ltmain.sh + gtk/Makefile.am: changes to compile nicely (with xlib) + on BeOS + +Sat May 1 15:04:42 PDT 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.3 + +Fri Apr 30 13:38:16 1999 Lars Hamann + + * gtk/gtkclist.c: + * gtk/gtkctree.c: merges from gtk-1-2 + +1999-04-25 Tor Lillqvist + + Support added for building using a GNU toolchain on Win32, + gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1. + + * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files. + * config.h.win32: Changes for gcc. + * gdk/gdkrectangle.c: Include gdk.h as . + * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp. + * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h. + * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better. + Protect shl stuff unavaiilable with mingw32 headers. + * gdk/win32/gdkevents.c: Fix typo. + * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc. + * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?) + * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler. + * gdk/win32/gdkprivate.h: Make up for some stuff missing from + the mingw32 headers. + * gdk/win32/makefile.msc: Use latest Wintab kit and glib. + * gtk/gtkfilesel.c: Include early, to get stat->_stat + definition on Win32. Test for NATIVE_WIN32, not _MSC_VER. + * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32. + Test for NATIVE_WIN32, not _MSC_VER. + * gtk/gtkmain.c: No use warning about developer version on Win32, + there aren't any non-developer versions anyhow. + * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER. + * gtk/makefile.msc: Use pthread from another directory. Minor other + changes. + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Mon Mar 8 12:52:53 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning + when gtk_widget_grab_default() is called for a widget that + is not within a GtkWindow. + +Sat Apr 10 13:52:54 BST 1999 Tony Gale + + * docs/gtk_tut.sgml, examples/clist.c: use a + scrolled window in the clist example. Minor + tutorial fixes. + +Fri Apr 2 09:19:20 BST 1999 Tony Gale + + * docs/gtk_tut.sgml: Style check from David King + + +1999-03-30 Pavel Machek + + * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code + compile with unknown value of GDK_WINDOWING + +1999-03-28 Raja R Harinath + + * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists + after the rule is fired. + (install-exec-local): Install gdkconfig.h only if the contents are + different from the currently installed gdkconfig.h. + +1999-03-26 Raja R Harinath + + * gdk/Makefile.am (configexecincludedir): Rename from + configincludedir so that gdkconfig.h will be installed + as part of `make install-exec'. + +Fri Mar 19 16:50:33 PST 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.2f + + * autogen.sh: libtool is not required to autogen gtk+ + + * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly + needed) + +1999-03-18 Tor Lillqvist + + * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for + declaring gdk variables exported/imported from the DLL. New image + type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and + drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and + GDK_DRAG_PROTO_OLE2. + + * gdk/gdk.h: Merge in Win32 version: Two new functions, + gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far + declared only for the Win32 version, but could be in the X11 + version as well. (Needed for a Xlib-less gdk_imlib.) + gdk_color_hash should have only one parameter. Declare + gdk_threads_mutex with GDKVAR. + + * gdk/gdkcolor.c (gdk_color_hash): A hash function should have + just one parameter. + + * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes + per pixel, not bits. + + * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv): + Fetch bpp (which means bits-per-pixel here) from another place on + Win32. Accept also depth==32 (which we might get on Win32) with + bpp==32. + + * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel, + gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc, + gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c: + Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be + in the backend-dependent directory, not in the common gdk + directory. + + * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk + headers. + +Wed Mar 17 05:06:49 1999 Tim Janik + + * gtk/gtkmain.c (gtk_init_check): tell people that they don't really + want to use the Gtk+ devel version (which is true, and yes - even i am + currently working with the 1.2.x branch). so everyone reading this, you + probably want to issue + cvs checkout -r glib-1-2 glib + and + cvs checkout -r gtk-1-2 gtk+ + as your next two comands. + +Wed Mar 17 02:49:32 1999 Tim Janik + + * configure.in: build gtkcompat.h from gtkcompat.h.in instead of + gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0. + + * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this + file. strongly deprecated the GTK_HAVE_* macros, we provide + GTK_CHECK_VERSION() for people that need to check for certain + Gtk+ versions. + + * gtk/gtkcompat.h: removed this from CVS. + * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad + idea right from the start, it just didn't seem like that back then. + +Wed Mar 17 01:46:28 1999 Tim Janik + + * merges from gtk-1-2: + +Tue Mar 16 17:43:33 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the + item factory class has been created. + (gtk_item_factory_parse_rc): likewise. + + * gtk/gtkmenu.c: + keep proper references for old_active_menu_item. + (gtk_menu_reparent): unset the usize of the new parent, + so the menu can sanely be size requested and we don't get nasty screen + artefacts upon next reparentation. + (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an + enter notify. only synthesize enter notifies if the pointer really is + inside the event window. + (gtk_menu_popdown): use gtk_menu_shell_deselect(). + (gtk_menu_popup): move the background setting stuff into + gtk_menu_tearoff_bg_copy() so it can be called from other places as well. + + * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use + gtk_menu_shell_select_item() to select the new item. + (gtk_menu_shell_deselect): export this function, so gtkmenu.c can + do the right thing for deselection as well. + +Sat Mar 15 20:10:33 1999 Tim Janik + + * gtk/gtkwidget.[hc]: + (gtk_widget_accelerators_locked): return whether a widget's accelerators + are locked. + + * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or + existing accelerators if the widget's accelerators are locked. + +Sat Mar 14 19:44:05 1999 Tim Janik + + * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items. + + * gtk/gtkmenu.c: truely forward key press and key release events to + the menu widget from the toplevel or tearoff window. we can't simply + connect to that, we need to stop further processing of the events as + well. + +Sat Mar 13 13:14:17 1999 Tim Janik + + * gtk/gtkmenu.c: + (gtk_menu_key_press): pass event->keyval, event->state to + gtk_accelerator_valid, instead of event->keyval twice. + refuse to install single letter accelerators for menus that use + single letter shortcuts. + + * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use + gtk_menu_ensure_uline_accel_group(). + + * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group() + which will always return an uline accel group, made + gtk_menu_get_uline_accel_group() return NULL if the group isn't + yet created. + +Mon Mar 15 01:03:27 1999 Lars Hamann + + * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag. + + * gtk/gtkclist.c (gtk_clist_column_title_passive): + Leave button sensitive, trap button_press, button_release, + motion_notify, enter_notify and leave_notify events instead. + (gtk_clist_column_title_active): disconnect event handler. + (gtk_clist_drag_data_get): fixed memory leak. Reported by + Guillaume Laurent + +Wed Mar 10 23:49:55 1999 Lars Hamann + + * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few + width/height mixups. + + * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal + if needed. + +Wed Mar 10 00:11:32 1999 Tim Janik + + * gtk/testgtk.c (create_item_factory): unref the item factory after + window's destruction. + + * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference + count on the menu shell around the menu item's activation, since the + signal emission may cause menu shell destruction. + + * gtk/gtkitemfactory.c: + the previous code leaked one accel group per menu. we use + gtk_menu_get_uline_accel_group() now to fix that, and with that + also create the underline accelerator group of the menus only if + required (i.e. an underline accelerator has been specified). + (gtk_item_factory_construct): + (gtk_item_factory_create_item): removed code that would create an + extra accel group for the menu (and leak references). + (gtk_item_factory_create_item): adapted the underline accelerator + installation code to properly feature gtk_menu_get_uline_accel_group(). + + * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive + menu->accel_group, this may return NULL if the accelerator group + hasn't been set yet. + added gtk_menu_get_uline_accel_group() to retrive the underline + accelerator group of the menu, this will be created on demand + and proper care is taken about its reference count. + + * gtk/gtkitemfactory.h: + * gtk/gtkitemfactory.c: + dumped the approach of keeping a widgets by action list on the + factory since the factory<->widget destroy negotiation didn't work + and would be hard to get going at all. instead we keep a list of + GtkItemFactoryItem items on the factory (GtkItemFactoryItems are + persistant throughout a program's life time). + also, i removed the static const gchar *key_* variables, and made + them inline strings (they weren't actually used anyways). + (gtk_item_factory_add_item): update ifactory->items. + (gtk_item_factory_destroy): destroy ifactory->items (and remove + the item factory pointer from the remaining ifactory widgets). + (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem + list to find the widget. + (gtk_item_factory_get_item): new function that works around + gtk_item_factory_get_widget() limitations, this function will only + return menu items, even for entries. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + + * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix + provided by Olaf Dietsche . + +Sun Mar 7 06:13:29 1999 Tim Janik + + * gtk/gtkcontainer.c: + (gtk_container_add_with_args): + (gtk_container_addv): + (gtk_container_add): before adding a child to a conatiner, make sure + it is (default) constructed, this is neccessary because under certain + circumstances the child will get relized and mapped immediatedly, in + which case it has to be constructed already. + +Mon Mar 1 17:58:21 1999 Tim Janik + + * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal + values > 1 as TRUE also. + +1999-03-16 Tor Lillqvist + + * README.win32: New file. + + * configure.in: Check for lstat. + + * config.h.win32: Add non-definition of HAVE_LSTAT, just for + completeness. + + * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat. + + * gtk/gtk.def: Removed CRs. + + * gtk/makefile.msc: Correct include path to Win32 GDK version (in + ..\gdk\win32). + + * gdk/win32/makefile.msc: Correct upwards relative paths. + +Mon Mar 15 03:38:34 1999 George Lebl + + * gtk/gtkdnd.c: (gtk_drag_highlight) swap the + gtk_drag_highlight_expose and gtk_drag_highlight_paint since + it was connecting a void function to expose_event and the int + returning function to the draw signal + +1999-03-14 Jeff Garzik + + * configure.in: + Use correct path to libgmodule.la when ref'ing uninstalled copy + of glib. (Already in stable branch, Bug #417) + +1999-03-15 Tor Lillqvist + + Win32 merge and general portability stuff: + + * acconfig.h,configure.in: Check for . + + * gdk/win32: New directory (actually, been there for a while). + + * gtk/fnmatch.c: Include for G_DIR_SEPARATOR, WIN32 and + NATIVE_WIN32, and use these. Always case fold on Win32. No + backslashed escapes on native Win32. + + * gtk/{gtk.def,makefile.msc}: New files. + + * gtk/Makefile.am: Add above new files. + + * gtk/{gtkaccelgroup,gtkbindings}.c: Include + instead of . + + * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include + config.h. Protect inclusion of , , and + appropriately. + + * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much). + Use ABS() (from ) instead of abs(). + + * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion + of gtk (and thus glib) headers, so that WIN32 will be + defined. With MS C, include for mkdir prototype. + + * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add + some casts, needed by MS C. + + * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't + implemented). + + * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include + only on X11 platform, otherwise . Use + G_SEARCHPATH_SEPARATOR_S and g_module_build_path. + + * gtk/gtkmain.h: Mark variables for export/import on Win32. + + * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case + the event is not a hint, or its window is not the slider. Needed + on Win32, at least. + + * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use + unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and + G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use + a subdirectory of the Windows directory as gtk system + configuration directory. + + * gtk/gtkselection.c: No chunks on Win32. + + * gtk/gtksocket.c: Not implemented on Win32. + + * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path. + + * gtk/makeenums.h: Include gdkprivate.h after gdk.h. + + * gtk/maketypes.awk: Declare variables with a macro that expands to + necessary export/import magic in the case of Win32. + + * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers. + +1999-03-13 Raja R Harinath + + * configure.in (gdk_wc): Move widechar tests from `glib' to here, + since those were meant only for gdki18n.h. + * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_* + for widechar tests. + * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h. + +1999-03-13 Tor Lillqvist + + * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate + gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h. + + * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is + installed) to CFLAGS. + + * gdk/Makefile.am: Add rules for gdkconfig.h. + + * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing + APIs. + + * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via + gdkx.h anyway when compiling for X11. + (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In + general): Merge in Win32 version. + + * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32 + version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde + expansion (if we don't have HAVE_PWD_H), allow for drive + letters. UNC paths (\\server\share\...) are not handled yet. Also, + included code from Craig Setera's port to Win32 (the one that uses + X11, and the cygwin dll), even if it probably will be abandoned. + + * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if + the user entered one herself. This way one can complete *.h and + don't get matches on any .help files, for instance. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + + * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix + provided by Olaf Dietsche . + +1999-03-09 Federico Mena Quintero + + * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced + the number of calls to gdk_draw_point() (and thus to X) by + clipping the points by hand. + + * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of + the clip parameter. + (gtk_handle_box_paint): Only paint the handle if the expose area + intersects it. + +Sun Mar 7 18:46:37 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) + + * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.) + +Sun Mar 7 11:43:34 1999 ape@spacetec.no (Asbjorn Pettersen) + + * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes. + Added function gen_8_3_dll_name(gchar *name, gchar *fullname). + +Fri Mar 5 09:12:24 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in + textmode (O_TEXT) for OS/2 version. + +Sun Feb 28 16:46:02 1999 Stefan Jeske + + * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to + GtkSpinButton, "input" and "output", to make the output more flexible. + The user has to provide a mapping between adjustment->value and the + output string (and vice versa, if the spin button is editable). + See testgtk for examples. + +Sat Feb 27 01:18:47 1999 Tim Janik + + * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started + new one. + + * configure.in: set gtk+ version to 1.3.0. +======= * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, +>>>>>>> 1.2802 diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index fbd5888e3d..baae1d9764 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,10 @@ +Sun Jan 13 23:23:22 2002 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_compute_hints): Fix problem where + widget->requisition was being used instead of + gtk_widget_get_child_requisition (), causing geometry widgets + with usizes to misbehave. + 2002-01-14 Sven Neumann * gtk/gtkrc.c: g_getenv() returns a const string. @@ -16366,5 +16373,8616 @@ Thu Nov 9 11:23:22 2000 Jonathan Blandford 2000-11-02 Havoc Pennington +<<<<<<< ChangeLog + * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and + use stock buttons. Should be 100% source compatible, appropriate + filesel fields now point to dialog->vbox and dialog->action_area. + On the bizarre side, dialog->action_area and filesel->action_area + are not the same widget. + (gtk_file_selection_init): Put some padding around the selection + entry, so it isn't touching the GtkDialog separator. + + * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, + use stock buttons, etc. Should also be source compatible. + Set the dialog default title in _init not _new(). + + * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): + Use stock buttons; don't put a button box inside the existing + dialog button box. Don't bother with push/pop colormap anymore. + + * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more + specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT + for message dialog, and necessary for the font selection and color + selection with help and apply buttons. + + * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer + to the created button widget. Set GTK_CAN_DEFAULT on the button. + (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing + between buttons, put less padding around the action area. + (gtk_dialog_run): Exit on unmap rather than on destroy. + This will also exit the loop if the widget is hidden. + (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT + instead of GTK_RESPONSE_NONE; since we're already adding a bunch + of GTK_RESPONSE_* stuff, this seems cleaner, and lets you + special-case delete event. + + * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment + formatting + +Sun Nov 5 05:32:39 2000 Tim Janik + + * gtk/testgtk.c (uposition_stop_configure): provide a toggle + button to temporarily disable position recording in the + "saved position" test. + +Sat Nov 4 05:37:17 2000 Tim Janik + + * gtk/gtkthemes.c: added compat code that temporarily implements + GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is + going to be revamped by owen's upcoming GtkModule patches, but + untill then people want gtk to build, right? ;) + +2000-11-04 Havoc Pennington + + * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member + list + + * docs/Changes-2.0.txt: Add note about + gtk_container_get_toplevels() + + * gtk/gtktextview.h: formatting + + * gtk/gtktextview.c: don't start descriptions with "Returns", + confuses gtk-doc + +Sat Nov 4 10:12:27 2000 Owen Taylor + + * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS, + look for glib-2.0.m4 not glib.m4. (Ali Abdin) + +2000-11-03 Havoc Pennington + + * gtk/gtktexttagtable.c: Docs + (gtk_text_tag_table_size): return a signed int + + * gtk/gtktexttag.c: s/tkxt/text/g; write documentation + (gtk_text_tag_event): make the event_object a GObject + + * gtk/gtktextview.c: Write API docs for all functions. + + * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value + for gtk_text_view_get_window_type() called on one of the private + windows. + + * gtk/gtktextview.c: Instead of accessing text_view->buffer + directly, call get_buffer() which demand-creates a default + buffer. So gtk_text_view_new() can be used to create a view with a + default buffer in it, if you just want an empty text box users can + put data in. Useful for GUI builders also. + +2000-11-03 Pablo Saratxaga + + * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5; + the charset encodign portion MUST be in lowercase. + * gtk/gtkrc.az: added file for Azeri language + +2000-11-03 Havoc Pennington + + Get widgets working on the btree/buffer side. Display of them + still doesn't work. + + * gtk/gtktextview.c: start implementing child widget stuff + + * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function + + * gtk/gtktextlayout.c: handle embedded widgets + + * gtk/gtktextdisplay.c: handle embedded widgets + + * gtk/gtktextchild.c: Implement all the child anchor goo + + * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New + function + + * gtk/gtktextbtree.c: Add child anchor table to the btree struct + (insert_pixbuf_or_widget_segment): abstract out common portions of + creating a child anchor or a pixbuf segment. + (gtk_text_btree_create_child_anchor): new function + (gtk_text_btree_unregister_child_anchor): new function + + * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the + allocate_child signal on GtkTextLayout + + * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return + values + (gtk_text_iter_get_child_anchor): new function + + * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a + default handler for the changed signal, which calls + gtk_text_buffer_set_modified(), instead of just always emitting + changed then calling set_modified() manually. I guess this is + maybe more flexible. It seems logical. + +Fri Nov 3 08:58:38 2000 Tim Janik + + * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_' + now. + + * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now. + +Thu Nov 2 14:10:51 2000 Owen Taylor + + * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have + been marked static. + +2000-11-02 Havoc Pennington + + * gtk/testgtk.c (create_labels): had a test backward + + * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC + fields, so the dest GC ends up with the correct clip origin, + etc. Fixes a bug where colored labels didn't redraw + properly. + +2000-11-02 Alexander Larsson + + * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c, + gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c, + gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c: + Add last argument to t_type_register_static call. + + * gdk/linux-fb/gdkdrawable-fb2.c: + Add last argument to t_type_register_static call. + export the get_image drawable virtual function. + + * gdk/linux-fb/gdkimage-fb.c: + Add last argument to t_type_register_static call. + rename gtk_image_get to _gdk_fb_get_image and + export it for use by gdkdrawable-fb2. + + * gdk/linux-fb/gdkprivate-fb.h: + export _gdk_fb_get_image. + + * gdk/linux-fb/gdkselection-fb.c: + Add new api call stubs. + + * gtk/Makefile.am: + Missing ( in linux-fb part. + + * modules/linux-fb/Makefile.am: + Must link with gdk_pixbuf or get unresolved symbol. + +2000-11-01 Havoc Pennington + + * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use + GTK_TYPE_TEXT_ITER and BOXED marshallers + + * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto + + * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto + + * gtk/gtk-boxed.defs: add GtkTextIter + + * gtk/gtkmarshal.list: Add marshallers for text widget that + properly use OBJECT and BOXED + +2000-11-01 Havoc Pennington + + * gtk/testgtk.c (create_labels): Test set_markup_with_accel() + + * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval + before returning it. + +2000-11-01 Havoc Pennington + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): + Clip the rectangle to be rendered to the drawable, since + get_from_drawable() requires a region within the drawable + +2000-11-01 Havoc Pennington + + * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4 + from coordinates. + +Wed Oct 25 20:10:57 2000 Owen Taylor + + * gdk/gdkevents.c (gdk_event_copy): Only ref the window if + it isn't NULL. + +2000-11-01 Havoc Pennington + + * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList + on a label + (gtk_label_finalize): unref the attr list if any. + + * gtk/testgtk.c (create_get_image): close test on second click + (make_message_dialog): close dialog if it exists + + * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute + + * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not + gdk-pixbuf + + * gtk/gtklabel.c (gtk_label_set_markup): new function to set label + from Pango markup format + (gtk_label_set_markup_with_accel): ditto but with accelerator + parsing + + * gtk/gtkimage.c (gtk_image_expose): reformatting. + + * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to + reflect current state of GDK - use gdk_drawable_get_colormap, etc. + Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to + call gdk_window_get_origin(). + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): + implement GDK_PIXBUF_ALPHA_FULL + +Wed Nov 1 03:43:42 2000 Tim Janik + + * gtk/gtksignal.c (gtk_signal_compat_matched): make use of + g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and + g_signal_handlers_disconnect_matched to block/unblock and disconnect + multiple handlers respectively, instead of only treating the + first handler found (bug reported by owen). + +Mon Oct 30 19:23:50 2000 Jonathan Blandford + + * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function. + + * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function. + + * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c + gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c, + gtk/gtktreeviewcolumn.h: Fixed inline docs. + + * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree + widget. Needs writing someday. + + * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to + the docs. + +2000-10-30 Havoc Pennington + + * gtk/gtktextview.h, gtk/gtktextview.c: + Rename delete_at_cursor delete_from_cursor, and + move to move_cursor. + +2000-10-30 Havoc Pennington + + * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c, + gtktextbuffer.h, gtktextchild.c, gtktextchild.h, + gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h, + gtktextiter.c, gtktextiter.h, gtktextiterprivate.h, + gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h, + gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h, + gtktexttag.c, gtktexttag.h, gtktexttagprivate.h, + gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c, + gtktexttypes.h, gtktextview.c, gtktextview.h: + + Massive reindentation and reformatting. Arg alignment and comments + still need fixing in various places. + +2000-10-30 Havoc Pennington + + * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals + to be named insert_at_cursor and delete_at_cursor so C++ can + handle them. + +2000-10-28 Tor Lillqvist + + * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not + to get a double directory separator in case the home directory + ends with one. This would cause trouble especially on Windows, + where the path will be confused with the syntax for an an UNC + (network share) path \\server\share\path. + (gtk_rc_add_initial_default_files): Ditto. + +Sat Oct 28 02:33:09 2000 Robert Brady + + * gtk/gtkmarshal.list: add new marshallers for GtkTextView. + + * gtk/gtktextview.c: Use correct marshallers. + +Fri Oct 27 17:56:26 2000 Jonathan Blandford + + * gtk/gtkliststore.c: Not sure how this ever worked. Fixed it to + use new iter stuff, and added all the appropriate signals et al. + + * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this + code is internal to gtk only. + +2000-10-28 Tor Lillqvist + + * gtk/gtk.def + * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use + glib-genmarshal etc. + +Fri Oct 27 20:15:00 2000 Tim Janik + + * gtk/Makefile.am: added dependancies for testtextbuffer which broke + parallel builds. + +Fri Oct 27 18:51:44 2000 Tim Janik + + * gtk/gtksignal.[hc]: adapt to GSignal signature changes. + +2000-10-27 Robert Brady + + * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), + en_GB (British), ia (Interlingua). + +2000-10-26 Havoc Pennington + + * gtk/gtktextiter.c (my_strrstr): fix constness warning + + Fixed output of: + nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_ + + * gtk/gtktextsegment.c (char_segment_new): rename + (_char_segment_new_from_two_strings): rename + (_toggle_segment_new): rename + + * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static + (make_clipboard_widget): make it static + (text_get_func): static + (text_clear_func): static + + * gtk/gtkcolorsel.c (adjustment_changed): make this function + static + (hex_changed): make it static + (hsv_changed): make it static + (opacity_entry_changed): make it static + + * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk + (toggle_segment_check_func): rename with _gtk + + * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk + (_widget_segment_new): rename + (_widget_segment_add): rename + (_widget_segment_remove): rename + (_widget_segment_ref): rename + (_widget_segment_unref): rename + + * gtk/gtktextmark.c (_mark_segment_new): Rename + _gtk_mark_segment_new + +2000-10-26 Havoc Pennington + + * gtk/gtkmarshal.list: add new marshallers used by the text widget + * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller + types + + * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix + marshaller types + + * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h, + gtk/gtktextdisplay.c: We need to preserve Tk copyrights and + license on these files. + + * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this + work. + + * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to + runtime random number different for each tree, instead of + a constant I made up. + +Thu Oct 26 07:36:16 2000 Tim Janik + + * gtk/Makefile.am: buncha cleanups, kludged build sources + dependencies with a Makefile: oldest-source-stamp dependancy + for the moment. automake is really fighting us here, with + intentionally not allowing user-defined rules or dependancies + prior to it's -include $(DEP_FILES) statement. sucks rocks! + + * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h + to public headers. tehy have a comment stating that they are + "semi-public" aren't included by gtk.h and if enums popup there, + they can be /*< skip >*/-ed. + + * gtk/gtktextlayout.h: + * gtk/gtktextdisplay.h: indentation fixes, comment fixes, + added LGPL... + +Wed Oct 25 20:40:25 2000 Jonathan Blandford + + * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to + GtkTreeIter. Added iterators everywhere. + + * gtk/gtktreeviewcolumn.c: Changed to use the iterators. + + * gtk/gtktreeviewselection.c: Changed to use the iterators. + + * gtk/gtktreestore.c: Changed to use the iterators. + + * gtk/gtkliststore.c: Commented out the code. Will convert to + iterators tomorrow. + + * gtk/gtkmodelsimple.c: Commented out the code. Will convert to + iterators tomorrow. + + * gtk/treestoretest.c: Changed to use iterators. + + * demos/testgtk/main.c: Moved to use the new iterator system. + +Thu Oct 26 02:10:32 2000 Tim Janik + + * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid + localization misbehaviour. + + * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's + a useless type without copy/free. + + * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead + of GTK_TYPE_CTREE_NODE. + +Thu Oct 26 00:51:52 2000 Tim Janik + + * gtk/gtksignal.c: + (gtk_signal_emitv): use g_value_set_static_{string|boxed} where + applicable. + + * gtk/gtk-boxed.defs (GtkSelectionData): specify + gtk_selection_data_copy and gtk_selection_data_free + do GtkSelectionData work as params in signals. + +Wed Oct 25 20:47:41 2000 Tim Janik + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed + implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that, + couldn't they at least give it a non-standard name? + + * gtk/gtktextlayout.c: arg! yet another implementation of + gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy? + + * gtk/gtktextbuffer.c: gotcha! captured a vagabonding + gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back + home. now i know this _is_ a conspiracy. + + * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for + ::state-changed. + + * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): + (gtk_accel_group_create_add): marshaller signature fixups. + + * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups, + pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM. + + * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid + anymore. + +Tue Oct 24 23:59:21 2000 Tim Janik + + * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since + due to the signal system changes, it wouldn't build currently. to + be fixed soon. + + * docs/Changes-2.0.txt: GtkSignal/GSignal updates. + + * gtk/gtkwidget.c: ::direction_changed takes an enum as argument, + so it needs gtk_marshal_VOID__ENUM() instead of + gtk_marshal_NONE__UINT(). + + * gdk/gdk*.c: adapted type registration functions. + + * gtk/gtkbindings.c: + * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is + gone. + + * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType. + + * gtk/gtkobject.c: + (gtk_object_destroy): + (gtk_object_shutdown): fixed recursion guards. basically we have to + catch the case where any of GObject.shutdown() or gtk_object_destroy() + is called during ::destroy, and avoid recursion there. + + * gtk/gtktypeutils.c: + * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with + boxed_copy/boxed_free. this needs a more general solution based on a + publically installed code-generator utility. + + * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED, + glib's gobject has support for that now. + define GtkSignalMarshaller in terms of GSignalCMarshaller. + +Mon Oct 23 09:36:42 2000 Tim Janik + + * gtk/gtksignal.[hc]: + * gtk/gtkmarshal.[hc]: + * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't + compile gtkmarshal.c on its own anymore, just include it in gtksignal.c. + removed #include s all over the place, gtksignal.h takes + care of that. + + * *.c: marshaller name fixups. + + * gtk/gtkmarshal.list: added a comment briefing the format. + +Sun Oct 22 23:14:39 2000 Tim Janik + + * gtk/gtksignal.[hc]: nuked old implementation. we mostly have + compatibility macros here now. more specifically, most of + the API is preserved (yes, _most_, nonwithstanding the + following exceptions listed, the API is stil lHUGE ;) + things that got removed completely: + GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(), + gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(), + gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(), + gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(), + gtk_signal_remove_emission_hook(). + non-functional functions variants: + gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook(). + the GtkCallbackMarshal argument to gtk_signal_connect_full() is + not supported anymore. + (gtk_signal_compat_matched): new internal function to aid + implementation of the compatibility macros, it provides + functionality to block/unblock/disconnect handlers based + on func/data. + + * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType, + + * *.c: adaptions to new type registration API signatures. + +Fri Oct 20 15:26:33 2000 Tim Janik + + * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge. + +2000-10-25 Robert Brady + + * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change, + gdk_property_delete): If window == NULL, assume the root window. + (restoring the behaviour that was in 1.2). + + * gtk/testtext.c (save_buffer): Allow creation of new files when + saving. + + (fill_file_buffer): Don't die if a UTF-8 sequence is split across + calls to read(). + +2000-10-25 Tor Lillqvist + + * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11. + + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkimage-win32.c + * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the + X11 backend. + + * gdk/win32/gdkcc-win32.c + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkfont-win32.c + * gdk/win32/gdkinput-win32.c + * gdk/win32/gdkmain-win32.c + * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall. + +2000-10-24 Havoc Pennington + + * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make + it a static function + + * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should + redraw text when a tag is applied to it. + + * gtk/gtktexttag.c (gtk_text_tag_affects_size) + (gtk_text_tag_affects_nonsize_appearance): private functions to + see if a tag requires various kinds of redraw/layout to be queued + up. + + * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock + + * gtk/testtext.c (fill_example_buffer): Put the cursor + at the start of the buffer, so search works by default + + * gtk/gtktextiter.c (lines_match): init match_start always + + * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New + function, get iter at a line + a byte index + + * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function, + to set byte position within a line + (gtk_text_iter_check): remove leftover G_BREAKPOINT thing + +2000-10-23 Havoc Pennington + + * gtk/testtext.c: Re-enable the "find" dialog + + * gtk/testgtk.c: Add test for gdk_drawable_get_image + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where + the arguments to gdk_draw_drawable were in the wrong order + (gdk_window_paint_init_bg): This function was ignoring the + init_region, instead of clipping to it, so the entire backing + pixmap was cleared on every begin_paint() + (gdk_window_begin_paint_region): Hmm, the same list-walking bug + was in here again, the loop kept using the same GtkWindowPaint + over and over. + (gdk_window_begin_paint_region): Fix a bug where we had two + x_offset instead of x_offset and y_offset + + * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable + before we get the image. + (gdk_draw_drawable): get the composite before we draw the drawable. + (gdk_drawable_real_get_composite_drawable): default + get_composite_drawable implementation that returns the drawable + itself + + * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add + get_composite_drawable virtual function + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy + list-walking bug + + * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to + make this work if the source drawable is a GdkDrawableImplX11 + instead of a public drawable type. This is really broken; the + problem is that GdkDrawable needs a virtual method get_xid(), but + of course that doesn't work in practice. Enter RTTI. + + Also, improve mismatched depth message. + + * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for + GdkPixmap + + * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init): + install _gdk_x11_get_image as our implementation of get_image + + * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to + _gdk_x11_get_image and export for use in gdkdrawable-x11.c + + * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around + gdk_drawable_get_image + + * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image + + * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize + get_image + + * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird + trailing semicolon after for loop + +Mon Oct 23 12:07:57 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem + where font_desc for widget's context lagged widget's font_desc by + one step. + +2000-10-22 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c + * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings. + + * gtk/makefile.mingw.in + * gtk/gtk.def: Updates. + + * gtk/testgtk.c: sleep() is called _sleep in MS's C + library. + + * gtk/gtkimcontextsimple.c: Include for bsearch(). + + * gtk/makefile.msc: Remove + + * gtk/makefile.msc.in: New file, like makefile.mingw.in. + + * gtk/Makefile.am: Add it. + + * configure.in: Generate it. + + * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor) + * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return + something even if not implemented, to satisfy picky MSVC. + + Patches by Hans Breuer: + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call + SetBkMode() and SetTextAlign() before calling + pango_win32_render(). + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values): + Set hcliprgn to NULL after destroying it. + (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL. + + * gdk/win32/gdkgeometry-win32.c + (_gdk_windowing_window_queue_antiexpose): More effective + implementation. + + * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's + depth as default, not the visual's. + + * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard + against empty title. + + * gdk/win32/gdkprivate-win32.h: Define a helper macro, + IMAGE_PRIVATE_DATA. + + * gdk/win32/gdkimage-win32.c: Use it. + +2000-10-22 Robert Brady + + * configure.in: Check for bind_textdomain_codeset + + * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset + present, make use of it. + + Add a translatable string "default:LTR" which, if translated + to "default:RTL", will cause the default direction to be + Right-to-Left. + + * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget + direction if marked as flippable. + + * gtk/gtkhscale.c: Mark widget as flippable. + +2000-10-04 Havoc Pennington + + * gtk/testgtk.c (create_buttons): create some stock buttons + with the default accel group + (create_image): test some new GtkImage features + (make_message_dialog): test GtkMessageDialog + (create_modal_window): fix someone's bizzarro indentation + + * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement + GTK_WIN_POS_CENTER_ON_PARENT. + Add "destroy with parent" setting, which means the window goes + away with its transient parent. + (gtk_window_get_default_accel_group): get the default accel group + for the window. + (gtk_window_set_destroy_with_parent): set/unset destroy with + parent flag + (gtk_window_read_rcfiles): invalidate icon set caches + after reloading rcfiles + + * gtk/gtkenums.h (GtkWindowPosition): add + GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog + on its parent window when the dialog is mapped for the first time. + + * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add + a simple message dialog class + + * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event + handler to emit response signal, and maybe later it would + honor a hide_on_delete flag - though that isn't there yet. + Set border width on the vbox to 2, so we get some padding. + Use a button box for the action area. + (gtk_dialog_key_press): synthesize a delete event if Esc + is pressed and the GtkWidget key press handler didn't + handle the escape key. + (gtk_dialog_new_with_buttons): new function creates a dialog + with some default buttons in it. + (gtk_dialog_add_action_widget): add an activatable widget + as a button in the dialog - you can also add a non-activatable + widget by accessing the action area directly. + (gtk_dialog_add_button): add a simple button - stock ID or + label - to the action area + (gtk_dialog_response): emit response signal + (gtk_dialog_run): block waiting for the dialog, return + the response. Override normal delete_event behavior, so that + delete_event does nothing inside gtk_dialog_run(). +======= +>>>>>>> 1.2802 + +<<<<<<< ChangeLog + * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal + emitted when an action widget is clicked or the dialog gets + delete_event + + * gtk/gtk.h: add gtkmessagedialog.h + + * gtk/Makefile.am: add gtkmessagedialog.[hc] + +2000-10-18 Havoc Pennington + + * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug + where any number of empty lines would get skipped + + * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the + edge. + + * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the + warning about invalid iterators (explain more thoroughly) + (gtk_text_iter_in_region): rename gtk_text_iter_in_range + + * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less + big + + * demos/*.c: Add error handling + + * gtk/gtktextbuffer.c: don't modify const iterators + + * gtk/gdk-pixbuf-loader.c: Add full error handling here + + * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors + on file load + + * gtk/gtkiconfactory.c: Update to reflect addition of error + handling to gdk-pixbuf loaders + +Wed Oct 18 11:14:05 2000 Owen Taylor + + * configure.in demos/Makefile.am demos/testgtk/*: Start of work to + move to new modularized testgtk. + +2000-10-17 Jonathan Blandford + + * gtk/gtktreeview.c: Draw the arrows correctly. + + * gtk/gtktreemodel.c: Added user docs. + + * gtk/gtk.h: remove gtktreedatalist.h. + + * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct + parent when generating my type. + + * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE, + POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT. + +2000-10-16 Jonathan Blandford + + * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move + GtkTreeModel from object to interface. + +2000-10-16 Havoc Pennington + + * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing + compilation + +2000-10-16 Jonathan Blandford + + * gtk/gtktreeselection.c: Add API documentation to all public + functions. + + * gtk/gtktreeviewcolumn.c: Added API documentation to all public + functions. + +2000-10-15 Jonathan Blandford + + * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function + proposed by Guy Harris . Also, added API + docs to all public functions. + + * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h, + gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c, + gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c, + gtk/gtktreemodel.h, gtk/gtktreeselection.c, + gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node + issue. + +2000-10-14 Robert Brady + + * configure.in: Added "fa" (Persian) to ALL_LINGUAS. + +2000-10-12 Jonathan Blandford + + * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added + values other then G_TYPE_STRING. + * gtk/gtktreeselection.c: Minor commenting updates. + * gtk/gtktreeview.c: Format updates. + +2000-10-09 Tor Lillqvist + + * README.win32: Update. + + * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two + lines that had been deleted by mistake (?). + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle + also the case fg==white and bg==black (but still not randomly + coloured cursors). Thanks to Wolfgang Sourdeau. + + * gdk/win32/*.c: Silence gcc -Wall. + + * gtk/gtk.def: Add missing entry points. + + Fixes by Hans Breuer: + + * gdk/makefile.msc + * gdk/win32/makefile.msc: Update. + + * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined, + some MSVC thing, presumably), cause breakpoint on failures. Add + GDK_NOR case. Call g_log_set_always_fatal. + + * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle + should be pased by reference. + + * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly. + + * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert. + + * gdk/win32/gdkevents-win32.c + * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE. + + * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and + implementation object. + + * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables, + not just windows. + + * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize): + Use the wrapper object. + +2000-10-06 Havoc Pennington + + * Makefile.am (SRC_SUBDIRS): contrib subdir + + * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library, + so it can be used in Xlib version + + * demos/testpixbuf.c (update_timeout): error checking from 1.0 + tree + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync + change from 1.0 tree that returns first frame of animation + if the loaded file is an animation. + + * contrib: add new directory to hold stuff that comes with GTK+ + but isn't really part of GTK+ (for now, gdk-pixbuf-xlib) + + * configure.in: add contrib/* + +2000-10-05 Havoc Pennington + + * demos/testpixbuf-save.c: add pixbuf save test + + * demos/Makefile.am: add testpixbuf-save.c + +2000-10-05 Jonathan Blandford + + * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with + GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c + * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/ + * gtk/gtktreeselection.[ch]: Replaced + "node_selected"/"node_unselected" signal with "selection_changed" + signal. + +2000-10-04 Jonathan Blandford + + * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new + tree widget. + +2000-10-04 Jonathan Blandford + + * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle + drawing. + +Wed Oct 4 15:52:15 2000 Owen Taylor + + * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed): + Move list pointer forwards before removing item from + list. (Crash reported by Salmaso Raffaele) + + * gdk/gdkwindow.h: Remove spurious trailing , + + * gdk/Makefile.am (LDFLAGS): You can't do interlibrary + dependencies on uninstalled libraries, sorry folks. + +2000-10-04 Havoc Pennington + + * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h, + gtk/gtkiconfactory.c: Fix copyrights + + * demos/testpixbuf.c: add inline pixbuf test + +Mon Sep 25 15:05:17 2000 Owen Taylor + + * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify): + Add gdk_window_iconify. + + * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c + (gdk_window_set_geometry_hints): Add win_gravity + to geometry structure. + + * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): + Implement _NET_WM_PING. + + * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): + Set _NET_WM_PID on the client leader. + + * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name): + Handle UTF-8 better. + + * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle + UTF-8 better, set _NET_WM_NAME as well. Only set + icon name if it hasn't previously been explicitely + set. + +2000-10-03 Havoc Pennington + + * gtk/testtextbuffer.c: clean up trailing whitespace, + add extensive tests for tag toggle iteration. + + * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan + distance + + * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag): + optimize case where the tag root is on level 1 + (gtk_text_line_previous_could_contain_tag): attempt to implement + (gtk_text_line_next_could_contain_tag): Abstract out node_compare + functionality + + * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle): + Implement this, though not very efficiently. + + * gtk/gtktextiterprivate.h: reformat + + * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end + iterator + + * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix + this to properly revalidate the iterators. + + * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work + properly at the end of the line (and therefore on empty lines) + + * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee, + maybe we should return a value... + +2000-10-03 Tor Lillqvist + + * config.h.win32: Guard definition of alloca(). glib.h now handles + that. + + * gdk/gdk.def + * gtk/gtk.def: Add new entry points. + + Changes just to make GTK+ build without errors on Win32. No hope + of it working in its current state, though...: + + * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings. Add + some functions from the X11 backend, just to make GTK+ build. + + * gdk/makefile.mingw.in + * gtk/makefile.mingw.in: Use correct gdk_pixbuf version + number. Add new object files. + + * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use + GetMessageTime to get timestamp (where on X11 uses + gdk_x11_get_server_time()). + +2000-10-02 Havoc Pennington + + * gtk/gtktextview.c: text_window_* weren't static and should have + been. + Start work on child widgets; not yet complete, syncing to + office computer. + + * gtk/gtktextchild.h: change this to contain a public interface, + starting work on child interfaces. + * gtk/gtktextchildprivate.h: move private interfaces here + + * gtk/Makefile.am: update to reflect gtktextchildprivate.h + + * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h, + gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, + gtk/gtktextmark.c: copyright notices + + * gtk/gtktextmarkprivate.h: reformat, and put _ in front of + internal functions + + * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of + internal function + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): + Reformatting + +2000-09-30 Havoc Pennington + + * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle + NULL start/end pointers + + * gtk/gtktextbuffer.c: Write some docs + (gtk_text_buffer_get_selection_bounds): Allow start/end to be + NULL, so you can just check whether there's a selection. + + * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to + cleanup_line or segments_changed ourselves, it gets done + in unlink_segment + + * gtk/gtktextmark.h: + s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/ + + * gtk/gtktextsegment.h: Clean up some indentation and naming mess + + * gtk/gtktextmark.c: delete some more old Tk cruft + + * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to + mark before removing it, so we can emit MARK_DELETED with a valid + pointer. + (gtk_text_buffer_mark_set): hold ref across signal emission + + * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve + whining about attempts to delete special marks + + * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with + underscore, since it's internal. + + * gtk/gtktextbuffer.h: Remove find_string prototype, this is + now implemented in terms of iterators in gtktextiter.h + + * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): + New function, destructively sets contents of buffer. Also + a convenient way to clear the buffer by setting text to "" + + * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat + multiline string literal + + * gtk/testtext.c (text_changed_callback): Redraw line numbers if + text changes. + + * gtk/gtktextiter.c (forward_char): Return FALSE if new location + is not dereferenceable + (gtk_text_iter_forward_lines): fix return value + +2000-09-29 Havoc Pennington + + * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation + + * gtk/gtktextview.c: Implement drag thresholding; change functions + that set border window size to have nicer name + (gtk_text_view_mark_set_handler): Fix this to have the + right signature. + + * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes + + * gtk/testtext.c: Update with API changes, put line numbers on + both sides. + + * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap + with this + + * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with + pixbuf; delete a big block of #if 0 Tk code + + * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace + insert_pixmap with insert_pixbuf + +2000-09-29 Martin Baulig + + * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid + confusion with the GdkPixbuf of the GNOME 1.x platform. + +2000-09-29 Havoc Pennington + + * gtk/gtktextview.c: Implement the side windows. + + * gtk/testtext.c: Implement simple line numbering in the + left side window; seems to make scrolling sloooow. Oops. + Also, cursor blink is for some reason causing redraws + of the line numbers. Should investigate... + +2000-09-28 Havoc Pennington + + * gtk/gtktextview.c: Set up infrastructure to deal with lots of + scrolling child windows, and draw focus rectangle properly. + + (gtk_text_view_buffer_to_window_coords): + Coordinate transformation to deal with all these freaking windows + and offsets + (gtk_text_view_window_to_buffer_coords): transform the other way + + * gtk/testtext.c (create_buffer): Update to match Pango API change + + * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the + anonymous tags + (foreach_unref): don't emit remove signal from finalize, just + set tag's parent to NULL + +2000-09-26 Havoc Pennington + + * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove + Fix some warnings + +2000-09-26 Havoc Pennington + + * gtk/Makefile.am (gtk_private_h_sources): Move more text widget + headers into the private header list + + * Makefile.am (pkgconfig_DATA): install pkg-config files + + * configure.in: add pkg-config files + + * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files + + * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate + outstanding icon caches on theme change. + + * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three + important types: + + (GtkIconSource): Specification for creating a pixbuf + appropriate for a direction/state/size triplet from + a source pixbuf or filename + + (GtkIconSet): List of GtkIconSource objects that are used to + create the "same" icon (e.g. an OK button icon), and cache for + rendered icons + + (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look + up the icon set for a given stock ID. GTK maintains a stack of + GtkIconFactory to search, and applications or libraries can add + additional icon factories on top of the stack + + * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse + the set of GtkIconSource specified for a given stock ID into + a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the + RcStyle, under the specified stock ID. + + * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function + render_icon used to derive a GdkPixbuf from a GtkIconSource. + This allows people to theme how prelight, insensitive, etc. are + done. + + (gtk_style_lookup_icon_set): Look up a stock ID in the list of + icon factories for a style, and return the resulting + icon set if any. + + (gtk_style_render_icon): Render an icon using the render_icon + method in the GtkStyleClass. + + * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): + Use the style for a given widget to look up a stock ID, get the + icon set, and render an icon using the render_icon method + of the style + + * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type + (contains information about a stock item), the built-in stock item + IDs, and functions to add/lookup stock items. + + * gtk/stock-icons/*: Stock icons that come with GTK + + * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns + a button based on a GtkStockItem + (gtk_button_new_accel): Takes a uline string and accel group, and + installs the accelerator. + + * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic + image-display widget. + +2000-09-25 Havoc Pennington + + * gtk/gtktexttypes.c: Remove Latin1 conversion stuff + + * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): + Fix a bug when removing node data, we didn't properly + re-splice the linked list after removing the data. + + * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through + GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget + + * gtk/gtktextbuffer.c (selection_received): fix g_convert usage + + * gtk/gtktextlayout.c (set_para_values): Set tab array + for the layout from the GtkTextTag. + + * gtk/gtktexttypes.h: delete tab and search cruft, + remove g_convert() in favor of GLib version + + * gtk/gtktexttypes.c: remove tab implementation from here, + move to Pango + + * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement + tab stuff using new PangoTabArray from Pango + + * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove + unused border_width stuff + +Thu Sep 14 12:21:12 2000 Owen Taylor + + * gtk/gtktexttypes.[ch]: Remove g_convert (moved to + glib) and now useless utf_to_latin1() latin1_to_utf() + + * gtk/gtktextview.[ch]: Change ::move_insert and + ::delete_text action signals to ::move and ::delete; + create the signals with the right enumeration type, + not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d, + C-v bindings, change Home, End to move to beginning/end + of line, Add C-Home C-End to move to beginning/end + of buffer. Change ::cut_text to ::cut_clipboard, etc; + combine ::scroll_text into ::move; use new GtkSelectionData + functions to simplify DND text handling. + + * gtk/gtkenums.h gtk/gtktextview.h: Move movement, + deletion enumerations here, rename enumeration values to + be consistently plural. + + * gtk/gtktextbuffer.c: Use new clipboard interfaces + for cut/copy/paste and primary selection. + + * gtk/gtktextbuffer.[ch]: Remove excess time and + 'interactive' arguments from cut/copy/paste; + rename cut to cut_clipboard, etc; remove + gtk_text_buffer_get_clipboard_contents(). + + * gtk/gtktextlayout.[ch]: Add + gtk_text_layout_move_iter_to_line_end() to move the iter to + line ends. + + * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text): + Functions to set or get a UTF-8 string on the selection + data. + + * gtk/gtkclipboard.[ch]: New, simplified selection handling + interfaces. + + * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly + created widgets - one of these is useless if we don't. + + * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export + a public function clear all targets registered for the + widget. + + * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt: + Never call gtk_widget_realize() - that was just asking + for bizarre side-effects. + + * gtk/gtkselection.c (gtk_selection_owner_set): Call + gdk_selection_owner_set even if the widget is the + same so that we reliably update the timestamp on + the server. + + * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a + gdk_x11_get_server_time() function. + + * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h + gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h: + Add some tricky filtering on serial numbers for + selection clear events to fix up long-standard + race condition FIXME's in gtkselection.c. + + * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add + routines to convert from utf8 to compound text or + STRING and from a text property to UTF-8. + + * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add + a convenience function gdk_get_current_event_time(). + + * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy + and free selection_data->data properly + +Sat Sep 9 10:23:53 2000 Owen Taylor + + * gtk/gtkthemes.c: Remove some unecessary includes. + +2000-09-08 Jonathan Blandford + + * gtk/gtktextdisplay.c + * gtk/gtktextlayout.c + * gtk/gtktexttag.c + * gtk/gtktexttag.h + * gtk/testtext.c: Change the overstrike property to strikethrough, + to closer match pango. + +Fri Sep 8 14:28:00 2000 Owen Taylor + + * gtk/gtktextview.c: Fix up visibility so that focus, + cursor_visible and blink interact properly. Reenable cursor blink + which had been roughly disabled. Make blink and focus + properly per-view. + + * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible): + Add a flag for whether to display insertion cursor and + a function to set the flag. + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change + get_line_y() to get_line_yrange(), to be a bit more generally + useful. + +Thu Sep 07 20:54:33 2000 George Lebl + + * gtk/gtkmenu.c: in gtk_menu_set_submenu_navigation_region + do stop_navigating_submenu, to clear last timeout properly. + Also in gtk_menu_motion_notify move ignore_enter above + the conditional to make it always happen as suggested by Owen + +2000-09-07 Tor Lillqvist + + * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o + + * gdk/win32/gdkwin32.h: Add more definitions missing from the free + w32api headers. + + * gdk/win32/gdkprivate-win32.h: Add a couple of missing + declarations. + + * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings. + (gdk_win32_get_colormap): A line had been deleted by mistake. + + * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too. + (gdk_event_translate): Handle more virtual keycodes to be able to + generate GDK events for Control-comma, Control-period, etc. + + * gtk/gtk.def: Add some missing entry points. + +Thu Sep 7 11:47:02 2000 Owen Taylor + + * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c: + Doc comment fixing. (Mostly non-matching parameter names.) + + * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify + comments a little to avoid looking like a doc comment. + + * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to + GTK_INPUT_ERROR. (Should the mechanism for erros in spin button + conversions be changed to GError?) + + * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): + Move private #defines into .c file. + + * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize + order of argument addition, remove duplicates. + + * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass): + parent class is FrameClass, not BinClass. + + * gtk/gtk.h: Add gtkinvisible, which was missing. + (It's occasionalyl useful for client apps, if seldom.) + + * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER + #define. + +Wed Sep 6 09:53:15 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space + coordinates when creating window, instead of GDK-space + coordinates. (Avoid BadValue on too large windows.) + +2000-09-05 Sebastian Wilhelmi + + * configure.in (use_mmx_asm): Remove conftest* after use along the + lines of AC_TRY_COMPILE. + + * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead + of g_dirname, which is deprecated. + (gtk_rc_parse_any): Removed calls to + g_scanner_{freeze,thaw}_symbol_table, which are deprecated. + + * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy): + Removed calls to g_hash_table_{freeze,thaw}, as they are + deprecated now. + + * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename + instead of g_basename. + +2000-09-04 Elliot Lee + + * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid + ANSI warning. + +Sun Sep 03 00:47:08 2000 George Lebl + + * gtk/gtkwidget.h: Add some documenting comments about + GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT + just as owen said on irc. + + * gtk/gtkwindow.c (gtk_window_set_default): Don't blindly + set HAS_DEFAULT. Only set it if there isn't another window + holding it (a focus window which RECEIVES_DEFAULT) and only unset + it if the widget is not the focused window with RECEIVES_DEFAULT. + This fixes weird double default bugs in dialogs which has things + call gtk_window_set_default at times. + +Fri Sep 1 22:39:07 2000 Owen Taylor + + * gtk/gtkmenu.[ch] TODO.xml: Apply patch from + Nils Barth and David Santiago to improve submenu + navigation. The patch does this by creating a triangular + region from the point where the pointer leaves the + menu to the submenu. While the pointer is in + that region and a timeout has not expired, events + that would cause the active submenu to change are + ignored. + +Fri Sep 1 15:34:46 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where + moving a toplevel window immediately after sizing it would + result in it being sized back to the old size since + impl->width, impl->height aren't updated until we hear + back from the server. There is still a (longstanding) bug + here that gdk_window_get_size() will give the wrong size + until we do hear back. + +2000-08-31 Havoc Pennington + + * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, + gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, + gtk/gtktexttagprivate.h, gtk/gtktextview.c: + Rename GtkTextStyleValues to GtkTextAttributes + +2000-08-31 Havoc Pennington + + * gtk/gtktextbtree.c (GtkTextBTree): cache end line, + for rapid testing whether an iterator is the end iterator + (gtk_text_btree_new): init end line cache + (gtk_text_line_is_last): use fast cached line to + see if we're the last line. + (get_last_line): use cached line here too, should + speed up some random unrelated code. + +2000-08-30 Havoc Pennington + + * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer + signals. + + * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and + delete_text signals. This allows the signals to be used for + implementing undo. + + * gtk/gtktextbuffer.c: Change signal handler signatures; + provide "interactive" argument when emitting insert_text or + delete_text signal. + +2000-08-30 Havoc Pennington + + * gtk/gtktextbuffer.c: Docs + +Fri Aug 25 12:16:15 2000 Owen Taylor + + * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP + from switch statements, since Tor removed the enumeration + value. + + * gdk/x11/gdkimage-x11.c (gdk_image_get): + s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/. + +2000-08-29 Elliot Lee + * */*.h: Use G_GNUC_CONST. + +2000-08-27 Havoc Pennington + + * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs, + minor indentation fixes, inserted some FIXME about stuff I + realized was broken while documenting it. + (gtk_text_iter_get_pixmap): allow out params to be NULL, following + GTK convention + +Tue Aug 22 12:33:24 2000 Owen Taylor + + * gtk/testgtk.c (create_styles): Fix double free of + font desc. + +Mon Aug 21 22:39:18 2000 Owen Taylor + + * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}. + + * gtk/testgtk.c (create_styles): Add a test for modifying + the style through gtk_widget_modify_*. + + * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add + a function to get the current modifier style. + + * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy + of the passed in GtkRcStyle instead of ref'ing it. + + * gtk/gtkrc.[ch]: Add gtk_rc_style_copy(). + +2000-08-20 Tor Lillqvist + + * gdk/gdkimage.h + * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the + shared memory image+pixmap GdkImage type, or + gdk_image_bitmap_new(). They were used in the gdk_imlib port, but + I am dropping that. + + * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to + actually call gtk_init_abi_check(), passing also + sizeof(GtkWindow). Ditto for gtk_init_check(). + + * gtk/gtk.def + * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check): + New functions, used to check that the GTK+-using code has been + compiled using the correct compiler and switches. In particular, + with gcc one has to use the -fnative-struct switch as GTK+ is + compiled with that. + +Fri Aug 18 17:27:46 2000 Owen Taylor + + * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling + ->prev fields when merging lists. (Found simultaneously + by Pawel Salek and Jakub Jelinek) + +2000-08-12 Tor Lillqvist + + * gdk/gdk.def + * gtk/gtk.def: Add missing entries. + + * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use + OUT_TT_ONLY_PRECIS, try to get a TrueType font. + + * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New + function. Dummy implementation at this point. + + * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer + rules. Undefine GTK_COMPILATION when compiling the test programs. + + * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import. + +2000-08-11 Tor Lillqvist + + * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8() + to convert back and forth from UTF-8 and the "system" (or "current + locale") charset when necessary. Indentation/spacing cleanup. + +2000-08-10 Havoc Pennington + + * Makefile.am (snapshot): Change the format of the snapshot + version to match glib + + * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h + from EXTRA_DIST since it doesn't seem to exist + +2000-08-10 Tor Lillqvist + + * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage" + version of the directory name (not the UTF-8 one) when building + the path name to stat(). + +2000-08-03 Elliot Lee + + * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a + PANGO_ATTR_SHAPE set. + +Thu Aug 3 09:17:06 2000 Owen Taylor + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from + Peter Osterlund to simplify the code while keeping the + functionality the same. + +Wed Aug 2 14:57:38 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move + is_viewable() test further inside the function, since removing the + window from the redraw list without clearing ->update_area + was also very broken. + +2000-08-02 Tor Lillqvist + + * configure.in: Check for . + +2000-08-01 Martin Baulig + + * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning() + to display the message that this is a development version of GTK+. + +Mon Jul 31 18:37:36 2000 Owen Taylor + + * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation + was depending on widget->allocation instead of the width of text_area, + which was incorrect for subclasses like GtkSpinButton. + + * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos + with width == 1 tests that should be width == -1. + +Mon Jul 31 16:45:48 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, + (broken, Elliot, every single window blank on X) custom code with call + to gdk_window_is_viewable() which a) prevents code duplicate and + b) works. + +2000-07-31 Elliot Lee + + * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order + to get the GDK_PARENT_ROOT() macro to work. + * gtk/gtkmarshal.list: Add NONE:STRING,POINTER + * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces + of, windows that aren't shown. + * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of + pointer grab stuff. + +Mon Jul 31 13:53:16 BST 2000 Tony Gale + + * docs/gtkfaq.sgml docs/gtk-faq.sgml: + s/gtk_main_iteration/g_main_iteration/ + + Did this already in change: + Mon Nov 15 17:17:51 GMT 1999 Tony Gale + don't know how it got reverted. + +2000-07-31 Stanislav Brabec + + * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and + gdk_arg_no_debug_cb to fix compilation problem with --disable-debug. + + * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3, + not gdk_pixbuf. + +2000-07-30 Pablo Saratxaga + + * configure.in,po/{sp,sr}.po: Added Serbian files + +2000-07-30 Tor Lillqvist + + * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST. + + * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue): + Remove the g_pipe_readable_msg stuff. Not needed with new GLib + GIOChannel implementation. + + * gdk/win32/gdkinput.c + * gdk/win32/gdkpango-win32.c: Update license name here, too. + + * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix + definition to match prototype. + + * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS. + +2000-07-27 Elliot Lee + + * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type + function, to allow handling image formats that cannot be detected + by looking at content alone. + +Thu Jul 27 13:13:21 BST 2000 Tony Gale + + * docs/tutorial/*.gif *.jpg *.eps + Update these to the same look-n-feel. + Why does including images in DocBook suck so badly? + +Thu Jul 27 05:06:29 2000 Tim Janik + + * gtk/gtktable.c: applied patch from Phil Thompson + that enables space settings for + the last row/columns as well. + +Wed Jul 26 12:59:31 2000 Tim Janik + + * *.[hc]: applied patch from Andreas Persenius that + updates the license headers to the GNU Lesser General Public License, + as well as updating the copyright year to 2000. + +2000-07-26 Robert Brady + + * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h + and po/Makefile, was installing and looking for them under gtk20 + and gtk2 respectively. + +2000-07-25 Havoc Pennington + + * gtk/testtext.c: Comment out some stuff that depends on the rest + of my patches. + +2000-07-25 Havoc Pennington + + * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text + buffer + +2000-07-25 Havoc Pennington + + * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text + widget changes. + + * gtk/gtktextview.h: To be consistent with usage of "line" + throughout the API to mean "newline-terminated thingy", change + MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH + to MOVEMENT_LINE. + + (GtkTextView): Add flags for default editability, and whether to + show the cursor. Add functions to get/set that. Add + + (gtk_text_view_get_iter_location): new function + + * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to + gtktextlayout.h + (g_convert): Add g_convert temporarily, will go in glib in a bit + + * gtk/gtktexttagtable.h: include gtktexttag.h, and define + GtkTextTagTableForeach instead of brokenly using GHFunc. + Change gtk_text_tag_table_foreach() so it doesn't use GHFunc. + + * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here, + moved to public header. + + * gtk/gtktexttag.h: Rename the "elide" attribute of tags to + "invisible", since "elide" was a bad name. + (gtk_text_tag_get_priority): Added + + (GtkTextStyleValues): put this in public header, along with + functions to use it. + + * gtk/gtktextmarkprivate.h: Include more headers, since we no + longer include gtktextbtree.h. + + * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref, + gtk_text_mark_deleted + + * gtk/gtktextlayout.h: Don't include the "really private" headers, + only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData + to make this possible. Now we only need to install + gtktextlayout.h, not gtktextbtree.h and gtktext*private.h. + (However the Makefile.am isn't changed yet because of the + logistics of merging gtk-hp-patches piecemeal) + + * gtk/gtktextiterprivate.h: include btree header, so it compiles; + rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since + gtk_text_iter_get_line is now used in the public API for a + different purpose. + + * gtk/gtktextiter.h: Clean up function names to be more + consistent. Always call char offset "offset" and byte index + "index". A "line" is always a line number. + + (gtk_text_iter_is_last): new function, more efficient than + the existing way to check + (gtk_text_iter_is_first): new function, also more efficient + + (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these + + (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from + gtk_text_iter_forward_char, etc. + + (gtk_text_iter_forward_to_tag_toggle): Renamed from + forward_find_tag_toggle, since this isn't a linear search + + (GtkTextCharPredicate): rename from GtkTextViewCharPredicate + + (gtk_text_iter_forward_search, gtk_text_iter_backward_search): + New functions, search for a buffer substring. + + * gtk/gtktextbuffer.h: Add fields to store whether a paste is + interactive and default editable (since we need to store that info + until we receive the selection data). + + Remove all the _at_char and at_line etc. versions of functions; + only have iterator versions. + + Add _interactive() versions of functions, that consider the + editability of text. (FIXME add interactive flag to the + insert/delete signals per Darin's suggestion) + + (gtk_text_buffer_get_tag_table): new function, demand-creates the + tag table if necessary + + Remove declaration of gtk_text_buffer_get_iter_from_string + + (_gtk_text_buffer_get_btree): private/internal function, added. + + + * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData. + (gtk_text_line_is_last): new function + +2000-07-25 Havoc Pennington + + * gtk/gtkprogressbar.h: Implement new sane, 5-function API for + using GtkProgressBar. See Changes-2.0.txt for details. + + * gtk/gtkprogressbar.c: Add object arguments "fraction" and + "pulse_step" which are the equivalent of + gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction. + Implement new API. + + * gtk/gtkprogress.h (struct _GtkProgress): Add a field + (use_text_format) to mark whether text set on the progress bar is + a format string. Deprecate entire GtkProgress interface. + + * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE + (gtk_progress_build_string): make this a no-op if use_text_format + is FALSE + + * docs/Changes-2.0.txt: Describe progress bar changes. + +2000-07-25 Tor Lillqvist + + * Makefile.am: Include the build directory. + + * configure.in: Generate build/Makefile, build/win32/Makefile, + gdk/, gdk/win32/, and gtk/makefile.mingw. + + * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf. + Add GETTEXT_PACKAGE. + + * gdk/gdk.def + * gtk/gtk.def: Updates. + + * gdk/gdkfont.h + * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't + need them any longer. + + * gdk/gdkinput.h: Mark gdk_core_pointer for export/import. + + * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with + PANGOWIN32_LIBS and gdk_pixbuf. + + * gdk/win32: Compiles, but no doubt doesn't work at all. + + * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. + + * gdk/win32/gdkinput.c: New file, temporarily. + + * gdk/win32/gdkinput-win32.h: New file + + * gdk/win32/gdkinputprivate.h: Remove. + + * gdk/win32/gdkpango-win32.c: New file. + + * gtk/makefile.mingw.in: New file + + * gtk/makefile.cygwin: Removed + + * gtk/Makefile.am: Update accordingly. + + * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and + made externally visible. + + * gtk/gtkmain.c: Use it. + + * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h + is enough. + + * gtk/gtktypeutils.c: Mark glib_debug_objects for import. + +2000-07-24 Elliot Lee + * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the + individual backends already. + * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together + again. Yes, there really is a good reason for this, if you are using the gdkregion + internals, and if you're not, why do you care? + * gdk/gdkwindow.c: Fix inverted condition + * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely). + * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb + * gtk/gtkrange.c: Redraw trough when moving. + * gtk/gtktypeutils.c: Fix warning by adding const cast. + * modules/linux-fb/basic.c: Fix unknown glyph retrieval. + +2000-07-23 Tor Lillqvist + + * configure.in: Check for mkstemp and sigsetjmp. Output + gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw. + + More work on GDK for Win32. Still in an intermediate state. + + * gdk/makefile.cygwin + * gdk/win32/makefile.cygwin: Removed. + + * gdk/makefile.mingw.in + * gdk/win32/makefile.mingw.in: New files. + + * gdk/Makefile.am + * gdk/win32/Makefile.am: Generate and distribute them. + + * gdk/win32/gdkwindow-win32.h + * gdk/win32/gdkdrawable-win32.h + * gdk/win32/gdkpixmap-win32.h: New files. + + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkcursor-win32.c + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkgc-win32.c + * gdk/win32/gdkimage-win32.c + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Update data structures. Cosmetics: + Rename fields and variables called xcursor, xid, etc (these names + were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc. + +Sat Jul 22 17:41:26 2000 Owen Taylor + + * gtk/gtkentry.[ch]: Fix some problems with vertical + alignment. + + * gtk/gtkentry.c (gtk_entry_find_position): Fix + char/byte confusion. + +Sat Jul 22 11:16:05 2000 Owen Taylor + + * gtk/gtktextview.c (changed_handler): Fix bug where + redraw wasn't being done properly when height of + dirty region changed. + + * demos/Makefile.am: Remove various references to + -lgmodule + +Fri Jul 21 15:28:13 2000 Owen Taylor + + * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new + PangoAttrShape to reserve space for pixmaps, add + GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps + in the display functions. + + * gtk/testgtk.c (create_layout): Set some more exotic + scrolled window options + + * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type): + Add function to set the shadow type of a window, to allow + putting a shadow around widgets such as GtkLayout or GnomeCanvas + which don't draw their own frame. + +Fri Jul 21 16:34:42 BST 2000 Tony Gale + + * docs/tutorial/package-db-tutorial.sh: New file for + packaging DocBook format tutorial + +Fri Jul 21 14:23:51 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Minor updates + + * docs/tutorial/*.jpg *.eps: Screenshots for tutorial + +2000-07-19 Tor Lillqvist + + * gtk/gtksignal.c: Fix C++ comment. + + * gtk/gtkimmulticontext.c + * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__, + don't return value from void functions. + + * gtk/gtk.def: Add gtk_rc_style_unref. + +2000-07-19 Sebastian Wilhelmi + + * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h, + gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h, + gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h, + gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h, + gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h, + gtk/gtktypeutils.h: Include files outside of the extern "C" + block. Makes some C++ compiler happy. Reported by Denis Vakatov + . + +Wed Jul 19 14:07:57 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Yet more clean ups. + Completes first pass. Hurrah! + +Tue Jul 18 17:17:55 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: More clean ups. + +Mon Jul 17 18:52:38 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to + paint the background of the text area which was accidentally + removed at some point. + + * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: + + - Move most of the functionality from the theme vtable + into GtkRcStyleClass and GtkStyleClass. The moved + vtable functions were changed a bit in the move to + work better in their new home. + + - Get rid of the engine and engine_data fields from + GtkRcStyle and GtkStyle; instead the theme + engine derives theme-specific subclasses of GtkRcStyle + and GtkStyle + + - Add extra dlsym() found entry point to themes, + theme_create_rc_style(). + + * gtk/gtkstyle.c: Copy xthickness, ythickness fields + in gtk_style_real_copy. + + * gtk/themes.[ch]: add a function gtk_theme_engine_register_type() + to register a type associated with an engine. (The engine + won't be unloaded as there is an instance of the type.) + + +Mon Jul 17 18:19:06 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Clean ups. + +Mon Jul 17 13:59:29 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots + of cleaning up to do. + +2000-07-15 Tor Lillqvist + + * gdk/testgdk.c: New file, quick hack to test backends for + pixel-by-pixel correctness of the most simple graphic operations. + +Fri Jul 14 20:30:25 2000 Owen Taylor + + * Really release 1.3.1 + + * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new + include structure. + +Fri Jul 14 18:40:39 2000 Owen Taylor + + * Released 1.3.1 + +Fri Jul 14 16:21:26 2000 Owen Taylor + + * gtk/gtktextlayout.c: use FALSE for size_only most + of the time when calling gtk_text_layout_get_line_display() + to avoid causing double reshapes when a redraw follows + immediately after. + +Tue Jul 11 11:13:40 2000 Owen Taylor + + * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate + appropriate region and gdk_window_process_updates() so trough + updating doesn't lag behind the window being scrolled. + + * gdk/gdkgc.c: Make parent_class pointer static. + +Sun Jul 9 21:31:23 2000 Owen Taylor + + * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c: + include . + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix + cut-and-paste error in computing memory offset for 4 channels. + +Fri Jul 14 14:05:02 2000 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove + gtk_rc_append_default_pixmap_path(), since it wasn't + adding an interesting path and we don't have a meaningful + default for this value. + +Fri Jul 14 12:22:49 2000 Owen Taylor + + * configure.in Makefile.am gtk-config.m4 gtk.m4: Move + gtk-config to gtk-config-2.0 move gtk_.m4 to + gtk-2.0.m4 + + * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am + gdk/Makefile.am demos/Makefile.am: Change + library names to libgtk-1.3.la, etc, so that we + can distinguish gtk-1.2 and gtk-2.0 on the linkline. + + * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am + gdk/Makefile.am gdk/x11/Makfile.am + Move include files into /usr/include/gtk-2.0, + /usr/lib/gtk-2.0/include/ + + * autogen.sh acconfig.h configure.in gtk/gtkmain.c + gtk/gtkintl.h: Change package for gettext from + gtk+ to gtk20. Put hack in autogen.sh to modify + po/Makefile.in.in after gettextize to make this + possible. + + * gtk+.spec: Some updates, not tested. + + * gdk-pixbuf/Makefile.am: Move loaders into + $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders. + + * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations + $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir + to THEMENAME/gtk-2.0/. Move engine directory to + $(libdir)/gtk-2.0/$(GTK_VERSION)/engines. + +2000-07-12 Tor Lillqvist + + Win32 changes, still doesn't build though. + + * gdk/makefile.cygwin + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Updates. + + * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same + default values for fg and bg pixel as X11 does (0 and 1), not + black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default. + Use 0 for pen width by default (treated as 1 anyway later, but for + apps that might check the value in the GdkGC). + (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public + interface to gdk_gc_predraw and _postdraw. + + * gdk/win32/gdkwin32.h + * gdk/gdk.def: Add gdk_win32_hdc_{get,release}. + + * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove + extraneous semicolon. + + * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0. + + * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth, + not the Win32 bitspixel value. + + * gdk/win32/gdkcc-win32.c: + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Changes to make compilable, with new + GDK object structure. + +Tue Jul 11 20:59:35 2000 Tim Janik + + * docs/tutorial/gtk_tut_12.es.sgml (name): + * docs/tutorial/gtk_tut_it.sgml (name): + * docs/tutorial/gtk_tut_fr.sgml (name): + * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely + outdated email adress: s/timj@psynet.net/timj@gtk.org/. + +Tue Jul 11 13:10:57 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Cleanup indenting and various + small changes. + +Tue Jul 11 08:04:58 2000 Tim Janik + + * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen + a bug here, never been here and never fixed anything ;( + (don't segfault if tree->root_tree is NULL, which happens prior + to widget realization, but puke instead). + +Tue Jul 11 06:38:42 2000 Tim Janik + + * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and + add the necessary tokens. + + * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style. + (gtk_rc_style_to_style): copy thicknesses. + (gtk_rc_init_style): apply thicknesses. + (gtk_rc_parse_style): parse xthickness and ythickness. + + * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements. + + * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): + (gdk_window_new): + (_gdk_windowing_window_init): + * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): + (gdk_pixmap_create_from_data): + (gdk_bitmap_create_from_data): + (gdk_pixmap_new): + * gdk/x11/gdkimage-x11.c (gdk_image_get): + (gdk_image_new): + * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): + * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): + * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get): + (gdk_colormap_get_system): + (gdk_colormap_new): + * gdk/gdkwindow.c (gdk_window_init): + * gtk/gtkstyle.c (gtk_style_new): + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): + * gdk/gdkpixmap.c (gdk_pixmap_init): + * gtk/gtkrc.c (gtk_rc_style_new): + use g_object_new() instead of g_type_create_instance() which + is a private function for fundamental type implementations. + +Thu Jul 6 16:12:14 2000 Owen Taylor + + * configure.in: Add check for db2html + +Thu Jul 6 14:53:05 2000 Owen Taylor + + * gtk/gtktypeutils.c (gtk_type_init): Add a temporary + hack to set glib_debug_objects based on gtk_debug_flags. + +Thu Jul 6 14:12:13 2000 Owen Taylor + + * INSTALL.in: Update the Prerequisites section. + + * Makefile.am demos/Makefile.am docs/Makefile.am + docs/tutorial/Makefile.am gdk/x11/Makefile.am + gdk/linux-fb/Makefile.am: Dist fixes + +Thu Jul 6 12:26:03 2000 Owen Taylor + + * NEWS: 10,000 foot view of 1.3.1 changes. + +Thu Jul 6 11:54:03 2000 Owen Taylor + + * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c + gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c + gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h + gdk/x11/gdkmain-x11.c: + + Patch from George Lebl to add a GdkGrabStatus enumeration to use + as a return value of gdk_*_grab(). Previously, we just + returned the X11 values directly. + +Thu Jul 6 11:27:44 2000 Owen Taylor + + * gdk/x11/Makefile.am: Patch from George Lebl to + install all the headers in the right place. + +Tue Jul 4 13:13:01 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Add remaining sections. Completes + initial conversion to DocBook. + +2000-07-04 Tor Lillqvist + + * README.win32: Improve a bit. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also + WM_SYSCHAR, and other changes to get handling of Alt+nnn or + Alt+0nnn on the numpad (used to enter characters by numeric code + from current DOS or ANSI codepage) working correctly, as in other + Windows apps. + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use + same argument validity tests as in X11 version. + (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon. + + * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor + definitions in case missing from headers. + + * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also + destroy the window-specific cursor. + (RegisterGdkClass): Use the global gdk_ProgInstance instead of + calling GetModuleHandle(NULL). + (gdk_window_set_cursor): Reworked to always copy the passed cursor + with CopyCursor before setting it as the window-specific + cursor. It is OK for the caller to destroy the GdkCursor (and thus + also its Windows cursor) after calling this function. Destroy any + previous window-specific cursor. + +Mon Jul 3 17:54:49 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): + font charset is iso8859-1, not iso-8859-1. + +Mon Jul 3 17:08:14 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): + Use g_get_charset() instead of g_get_codeset(). + + * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: + Comment out some strdup'ing functions to keep timj + happy until we finish fighting this out. + +Mon Jul 3 14:24:16 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with + <= width or height. + + * gtk/gtktable.c (gtk_table_attach): Fix missed merge + from 1.2 for parent/child states. + + * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple + of typos. + + * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of + event structures, replace with a generic axes field. Replace + deviceid/sourec with GdkDevice *device. + + * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function + to extract particular axis use value from event. (Also + can be used for normal X/Y.) + + * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision; + allow for arbitrary number of axes, namespace everything + as gdk_device_*. Replace guint32 deviceid with GdkDevice * + everywhere. + + * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: + Get rid of the gdk_input_vtable setup if favor of simply + defining the functions in gdkinput-none/gxi/xfree.c in + a similar fashion to the way that the port structure is + done. + + * gtk/gtkdnd.c: Fix fields of synthesized button press event + for new event structures. + + * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match + new device interfaces. + +Sun Jul 2 18:19:50 2000 Owen Taylor + + * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to + set the initial text. + + * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c + gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c + gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c + gtk/gtkvscale.c: Adapt to new argument of create_pango_layout(). + + * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new + pango_layout_set_font_description to simplify. + +Sun Jul 2 17:43:41 2000 Owen Taylor + + * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new + pango_layout_set_font_description to simplify. + +Sun Jul 2 17:06:40 2000 Owen Taylor + + * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c + gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use + pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'. + + * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with + PANGO_PIXELS() macro. + +Sun Jul 2 15:24:41 2000 Owen Taylor + + * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function + that returns a PangoContext owned by the widget and updated to + match future changes in the widget. Also, make + gtk_widget_create_pango_layout() use this context. If we ever + add a ::changed signal to PangoContext, this will make things + much more convenient. + + * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed() + in the appropriate places instead of destroying the layouts and + creating new ones. + + * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context() + in a few strategic places. + +Sun Jul 2 14:37:58 2000 Owen Taylor + + * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call + gtk_widget_size_request() on reparented child, if one. Otherwise, + queue_resize() on the child never results in it getting size-requested + at all. + + * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items + in option menus, so that (with luck) people won't copy it into + their apps in the future. + + * gtk/gtkoptionmenu.c: Connect ::size_request on the menu + to gtk_option_menu_calc_size. This isn't perfect, but should fix + a lot of problems with changing the size of the menu's menu + items after adding it to the option menu. + + * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language(). + + * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when + the text direction for a widget changes. + + * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use + ::direction_changed to get rid of various hacks. + +Sun Jul 2 13:19:12 2000 Owen Taylor + + * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate + name. + +Sun Jul 2 13:06:26 2000 Owen Taylor + + * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign + flag to the structure. Do not call XFreePixmap on pixmaps created + by gdk_pixmap_foreign_new(). + +Sun Jul 2 12:45:50 2000 Owen Taylor + + * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel + value using GdkRGB functionality given GdkColormap and GdkColor. + (name not final, waiting for inspiration.) + + * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to + set the foreground/background of a GC using the GC's colormap + and GdkRGB. (name not final, waiting for inspiration.) + + * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from + gdk_rgb_get_cmap(), put #define in gdkcompat.h. + + * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for + gtk_widget_get_visual(), gtk_widget_get_default_visual, etc, + purely a function of the corresponding colormap. Make + gtk_widget_set_visual(), etc, noop macros in gtkcompat.h. + + * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite + gdk_pixbuf_*create_from_xpm_* in terms of + gdk_pixbuf_new_from_xpm_data(), move into platform independent + code. + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take + advantage of the new draw_rgb_32_image_dithalign. + + * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added. + + * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap + on each created GC. + + * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap. + + * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure + which we initialize from the drawable when the GC is created, + if the drawable has a colormap. + + * gdk/x11/gdkgc-x11.c: include string.h for memset. + + * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc. + + * gtk/gtklayout.[ch]: Remove unsed configure serial member. + +Sat Jul 1 16:28:32 2000 Owen Taylor + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): When + actually returning expose events, make sure to set + the count field properly. + + * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix + accidentally reintroced bug which always cleared + the graphics_exposures value. + +Wed Jun 28 18:03:09 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Change DocBook layout slightly + +Wed Jun 28 17:49:05 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7. + +Wed Jun 28 13:31:55 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Start of Section 6. + +Mon Jun 26 19:37:04 2000 Owen Taylor + + * configure.in: Put 1.3.1 in warning message, not 1.3.0. + + (Fixes problem with drawing childless frames. Pointed out + by and a first patch from Anders) + + * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always + compute a child_allocation, even if we don't have a child. + + * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation): + Always chain to the parent's impl, even if we don't have a child. + +Mon Jun 26 18:53:31 2000 Owen Taylor + + * gdk/gdkrgb.c: If possible, create only a single shm segment and + use multiple parts of it instead of creating a bunch of separate + segments, since the maximum number of segments per system is not + large. (This might be worth backporting to GTK+-1.2.x if we make a + new release ) + + * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo + structure in preparation for per-colormap GdkRGB. + + * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm + to False when we get EINVAL from shmget so that the caller of + gdk_image_new can retry with a smaller segment size. + +Mon Jun 26 13:01:16 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Add Sections 4 & 5. + +Fri Jun 23 17:54:23 2000 Tim Janik + + * configure.in: make the current version number 1.3.1 (binary age 0, + interface age 0). + + * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*, + gtkcompat.h is all we want. + + * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of + GLib primitive types. fixed g_type_register_fundamental() argument + ordering. + + * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code + compiles. + + * gdk-pixbuf-loader.[hc]: get rid of unistd.h include. + object code cleanup, comment trigraph fixes, etc... + +2000-06-23 Havoc Pennington + + * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark + instead of making up a bogus name for first_para_mark + + * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow + 0 as a context ID + +Thu Jun 22 17:43:51 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Change filename. Add Section 3. + +2000-06-21 Havoc Pennington + + * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where + we didn't check window->bg_pixmap != GDK_NO_BG. + + * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of + gdk-pixbuf + +Thu Jun 22 14:02:19 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgm: Move file to here. + TODO: Update Makfile.am + +Thu Jun 22 13:41:09 BST 2000 Tony Gale + + * docs/gtk-faq.sgm: Add Section 2 + +Thu Jun 22 08:43:45 BST 2000 Tony Gale + + * docs/gtk-faq.sgm: New file. Start of DocBook + version of the FAQ. + +Wed Jun 21 23:04:17 2000 Owen Taylor + + * configure.in (GDK_PIXBUF_MAJOR): Define version + numbers for GDK_PIXBUF_*, as they get substituted + into a header file. Need to consider versioning + for gdk-pixbuf more carefully later. + +2000-06-21 Raja R Harinath + + Work with srcdir != builddir. + * demos/testanimation.c: Don't include "gdk-pixbuf.h". Use + , not "gtk-pixbuf/gdk-pixbuf-loader.h". + * demos/testpixbuf.c: Likewise. + * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h". + * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h". Use + . + * demos/pixbuf-demo.c: Use not "gtk.h". Don't include + "gdk-pixbuf.h". + * demos/Makefile.am (INCLUDES): Remove unneeded directories. + +Wed Jun 21 19:45:02 2000 Owen Taylor + + * TODO.xml: Change 1.4 version numbers to 2.0. + +Wed Jun 21 19:29:08 2000 Owen Taylor + + * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation + fixups to GTK+ standard. + +Wed Jun 21 16:38:13 2000 Owen Taylor + + * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard, + gdk-pixbuf. + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): + fixups for GObject. + + * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of + gdk-pixbuf with GDK dependencies moved into GDK. + + * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily + move gdk-pixbuf-loader here until GObject has signals. + + * demos/: New directory of demos. Move demos from + gdk-pixbuf here. + + * demos/pixbuf-init.c: Small bit of code to check for + loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found, + set GDK_PIXBUF_MODULEDIR appropriately. + + * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat + define which no longer makes sense. + +2000-06-21 Havoc Pennington + + * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use + gtk_get_default_language + + * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): + new function to get the default language + + * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: + s/gtk_text_view_style_values/gtk_text_style_values/ + + * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h: + Add a "language" field to tags. + + (gtk_text_tag_set_arg): Fix bug in setting + "bg_full_height_set" tag. + +2000-06-21 Havoc Pennington + + * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate + in the interfaces + + * gtk/gtktexttypes.c: Remove UTF functions, use glib + stuff instead when possible. + + * gtk/gtktexttypes.h: Delete some unused constants + + * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c, + testtextbuffer.c: use glib instead of custom unicode routines + +Wed Jun 21 12:50:58 2000 Owen Taylor + + * docs/es/: Removed mistakenly added generated sgml + + * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex: + Remove outdated info files. + + * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial: + Moved tutorial files into subdir + + * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into + subdir. + + * docs/man/gtk_button.pod: Remove. (contents will be + integrated into gtk-reference button page.) + + * configure.in docs/Makefile.am docs/tutorial/Makefile.am + docs/faq/Makefile.am: Adjust for new organization + +2000-06-21 Christopher Blizzard + + * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs) + not $(MKINSTALLDIRS) + +Wed Jun 21 12:24:28 2000 Owen Taylor + + * gtk/testgtk.c (create_text): Finish the job Elliot started + of removing font setting test for text widget. (Since text widget + and GdkFont are not deprecated, and cause portability problems.) + +Wed Jun 21 11:41:43 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c + gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c: + Remove use of libunicode in favor of new GLib functions. + + * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32, + nano-x, framebuffer. The X11 include is just a hack until we get + the necessary functions in gdkcolor.h, so there is no reason to + add other includes of platforms. + + * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert + window bigger than the screen change. + + * gtk/testgtk.c: Revert some random changes from Elliot + that had no particular point and were causing testgtkrc + not to function correctly. + + * gdk/gdkregion-generic.h: Revert change from Elliot. Just + because GdkSegment and GdkRegionBox have the same fields, + it doesn't mean that 'typedef GdkSegment GdkRegionBox' + results in clearer code. + + * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events, + gdk_input_translate_coordinates): Fix missed GdkObjectification + +2000-06-18 Elliot Lee + + * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way. + * gtk/gtk{plug,socket}.h: Missed commits from previous. + +2000-06-20 Havoc Pennington + + * modules/linux-fb/Makefile.am: Make this compile + without framebuffer enabled + + * gdk/linux-fb/Makefile.am: Add conditional to not build + framebuffer unless specified in configure + + * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting + the size of the target instead of source if -1 was passed for + width/height + + * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix + width/height confusion. + +2000-06-19 Havoc Pennington + + * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be + GDK_DRAWABLE_XID. In the future, we probably want to make it + faster with G_DISABLE_CHECKS turned on. + +2000-06-14 Havoc Pennington + + * gdk/Makefile.am: add gdkpixmap.c + + * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/ + s/gdk_image_init/_gdk_windowing_image_init + + * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject + ref/unref + + * gdk/gdkcolor.h: make GdkColormap a GObject subclass + + * gdk/gdkcompat.h: remove GdkWindowType compat, since + GdkWindowType is now non-deprecated; + change gdk_window_get_type() compat to be + gdk_window_get_window_type(). + + * gdk/gdkdnd.h: make GdkDragContext a GObject. + + * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure + virtual GObject. Make all functions call into the vtable. + Move gdk_image_put() guts in here. Remove GdkDrawableType + and gdk_drawable_get_type(), these are now GdkWindow-specific. + draw_image, get_depth, get_size, set_colormap, get_colormap, + get_visual added to the vtable. + + * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual + GObject. Virtualize everything. + (gdk_gc_new_with_values): remove check for destroyed window, + because now GdkWindow::create_gc will check this. + (gdk_gc_set_values): New function to set GC values, this + was already implemented but wasn't in the header + + * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject. + + * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove + _gdk_window_draw_image(), remove _gdk_windowing_window_class, + remove _gdk_window_class; add _gdk_window_impl_get_type() and + _gdk_pixmap_impl_get_type(). Rename gdk_window_init to + _gdk_windowing_window_init, rename gdk_image_init to + _gdk_windowing_image_init. + + * gdk/gdkpango.c: Reflect GObject-ification of PangoContext. + (gdk_draw_layout): Remove check for destroyed window, + because all the drawable methods already check it. + + * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject. + Add gdkpixmap.c which contains implementation of GdkDrawable + virtual table (by chaining to a platform-specific implementation + object). + + * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, + GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace + GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate, + GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate, + GdkColormapPrivate. + + * gdk/gdktypes.h: #include + + * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject. + Move most functionality to platform-specific implementation + object. GdkWindow itself now handles the backing store, then + chains to the platform-specific implementation. + (gdk_window_get_window_type): return GdkWindowType of the window. + (gdk_window_peek_children): New routine, returns the children of + a GdkWindow + (gdk_window_get_children): Was in X11-specific code and did + XQueryTree. Changed to simply return a copy of window->children; + so it can go in cross-platform code. + + * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path + + * gdk/x11/gdkcolor-x11.c: implement X-specific parts of + GdkColormap; just changed to use the new private data instead + of casting to GdkColormapPrivate. + + * gdk/x11/gdkcursor-x11.c: added a couple typechecks to + gdk_cursor_new(). + + * gdk/x11/gdkdnd-x11.c: Change the way we access private fields + (private data member in the GObject). + (xdnd_manager_source_filter): Function had broken + error handling, fix it (use gdk_error_trap_push). + + * gdk/x11/gdkdrawable-x11.c: This file now implements + a base class for GdkWindowImplX11/GdkPixmapImplX11. This + base class is purely for the convenience of the X port, + and not part of the interface to cross-platform GDK. + + * gdk/x11/gdkevents-x11.c: Reflect various renamings. + + * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's + specific to X, and returned by the create_gc virtual method + of GdkDrawableImplX11. + (gdk_x11_gc_set_dashes): Change this to take an array of gint8 + rather than gchar, this was also changed in the GdkGC vtable. + (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the + mask is 0, return immediately, instead of checking every flag. + This is faster, and keeps us from segfaulting if values is NULL + and the mask contains some nonzero flags. + + * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of + GdkWindow. + + * gdk/x11/gdkglobals-x11.c: change type of grab window, since + GdkWindowPrivate is gone. + + * gdk/x11/gdkim-x11.c: rename things that got renamed. + + * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and + remove the image_put stuff that got transferred to GdkDrawable. + + * gdk/x11/gdkinput.c: renamings + + * gdk/x11/gdkmain-x11.c: #include + + * gdk/x11/gdkpixmap-x11.c: GObject conversion + + * gdk/x11/gdkprivate-x11.h: indentation fixes + + * gdk/x11/gdkproperty-x11.c: renamings + + * gdk/x11/gdkselection-x11.c: renamings + + * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now + implements the platform-specific "impl" object. + Moved gdk_window_get_children to gdk/gdkwindow.c + + * gdk/x11/gdkx.h: Remove all the private structs and private datas + that no longer exist. Add declaration of GdkGCX11 object here. + Fix all the macros to still work. + + * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow, + GdkDragContext from the boxed types since they are now GObjects. + + * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject, + moved xthickness/ythickness into the instance. GtkStyleClass + functions are now in the standard vtable for GtkStyle, so you have + to create a GObject subclass to write a theme engine. + (gtk_style_copy): fixed a leaked PangoFontDescription + (gtk_style_init): renamed gtk_style_realize, so gtk_style_init + can be the standard GObject function. + + * Throughout GTK: + s/style->klass->[xy]thickness/style->[xy]thickness + s/pango_layout_unref/g_object_unref/ + + * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject. + + * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of + accessing GDK internals. + + * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of + accessing GDK internals. + +2000-06-18 Elliot Lee + + * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen. + + * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar + problem by calculating event position relative to the trough + rather than the slider. + * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate. + + * gdk/gdkgc.h: Add GDK_NOR. + + * configure.in, Makefile.am: Add modules top level dir + * configure.in: Only use pangox library if building x11 target. + * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use. + +Fri Jun 16 22:24:22 2000 Christopher Blizzard + + * gtk/gtkcolorsel.c: Change private class member to be named + private_data throughout the file. + + * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to + private_data to avoid clashing with keyword. + +Fri Jun 16 22:24:22 2000 Christopher Blizzard + + * gdk/gdkdnd.h: Add comment to remove warning. + +Sun Jun 18 15:35:35 2000 Pablo Saratxaga + + * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by + Byelorussian language; changed the Makefile and file names + to reflect that. + +Mon Jun 12 16:58:40 2000 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw + rather than gdk_window_hide; this makes things work + correctly if the window is programmatically hidden while + iconified. + +Sun Jun 11 12:46:19 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix + cut and paste typo where wrong pixmap was being + unref'ed. (Pointed out by a friend of KUSANO Takayuki.) + +Sun Jun 11 10:22:36 2000 Owen Taylor + + * gtk/gtkselection.c (gtk_selection_bytes_per_item): + Add helper function to compute format / bytes + relationship. Use in a couple places to fix up + errors which assume 8 * format. + + * gtk/gtkselection.c (gtk_selection_request): Use 32 + rather than 8 * sizeof (GdkAtom), to work correctly + on Alpha. + +Thu Jun 8 21:54:51 2000 Christopher Blizzard + + * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not + libgtk.la + (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11 + versions + + * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error + checking macros return NULL since the function has a return value. + +Wed Jun 7 15:44:42 2000 Owen Taylor + + * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping + GTK+ from building at all. + + * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues. + +Mon Jun 5 19:32:53 CEST 2000 Paolo Molaro + + * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am, + gtk/Makefile.am: make it possible to configure gtk for different + targets on the same platform. The library name is now + libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb + flag. Only the x11 target compiles right now. + * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h, + gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir. + * gdk/nanox/gdk*generic*: delete generic region code. + * gdk/linux-fb/gdk*generic*: delete generic region code. + * README.nanox: update information. + +Tue Jun 6 10:53:59 2000 Owen Taylor + + * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to + prepend not append. (Pointed out by Brett Hall.) + +Tue Jun 6 01:59:57 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout. + +Mon Jun 5 16:00:09 2000 Owen Taylor + + * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll + need this later, and this makes sure that the atexit for + glib gets called after that for GDK, so atexits are + properly ordered for object leak checking. + + * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit(). + + * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call + pango_x_shutdown_display() + + * gtk/simple.c (main): Close window on destroy. + +Mon Jun 5 11:50:02 2000 Owen Taylor + + * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need + to treat initial creation different from setting with + regards to the graphics-exposures parameter, so add a parameter + indicating whether this is initial or not. + +Mon Jun 5 13:29:31 2000 Owen Taylor + + * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose() + to sort of work by adding an extra return_exposes arg + to gdk_event_translate() - it might be better to simply + deprecate the function altogether and force people to rewrite + without it. gdk_window_scroll() handles most of it, and where + gdk_window_scroll() doesn't work, simply redrawing more does. + + * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up + assertion. + + * gtk-config.in: Include PANGO_CFLAGS/LIBS. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a + bunch of pretty much useless /* Print debugging info */ comments + which had drifted away from the code they were commenting. + +2000-06-02 Havoc Pennington + + * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer + is in working order. + + * gtk/testtext.c: Change to reflect anonymous mark API + + * gtk/gtktextview.c: Convert from mark names to GtkTextMark*. + + * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size + field, which was unused. + + * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro, + saves some typing. + + * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark* + + * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable + flag on the insertion point and selection bound + + Throughout, use GtkTextMark instead of GtkTextLineSegment, and + make mark-manipulation functions take a GtkTextMark* instead of a + mark name. + + * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to + GtkTextMarkBody; will be used to detect attempts to delete + the permanent marks (insert and selection bound) + + * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer + +Fri Jun 2 12:56:01 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED + flag to on. + + * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): + Honor DOUBLE_BUFFRED_FLAG + + * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a + function to set the DOUBLE_BUFFERED flag. + + * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether + or not exposes done on the widget should be double-buffered. + + * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations + to be what would be expected. (Fixes problem with a + g_return_if_fail() validating a TextDirection enumeration) + +Thu Jun 1 23:05:13 2000 Owen Taylor + + * gtk/gtkwidget.c: Remove all references to + offscreen flag which was no longer used. + + * gtk/gtkprivate.h (enum): Remove unused flags and compress. + + * gtk/gtkframe.c (gtk_frame_set_label_widget): Check + for non-null label_widget->parent. + + * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute + which no longer was used. + + * gdk/gdkpango.c (gdk_pango_context_get_info): make static. + + * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks + for null arguments. + + * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add + check for destroyed windows. + +Thu Jun 1 13:48:45 2000 Owen Taylor + + * gtk/gtkimmulticontext.c: Add a finalize method and unref + the slave context there. + + * gtk/gtkinvisible.[ch]: Make reference counting behavior + identical to GtkWindow. + +Thu Jun 1 01:54:11 2000 Owen Taylor + + * Makefile.am gdk/gdkpango.c: Copy the layout render function from + pangox to here, so we can write them independent of rendering + system, using GDK primitives. + + * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c + gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable, + since we have a rendering-system independent implementation in + terms of draw_glyphs(). + + * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New + function to render a single line. + + * gdk/x11/gdkpango.c: Move the guts of this file mostly + into ../gdkpango.c, which simplifies things, since we + don't have to deal with raw X gc's. + +Fri May 19 04:28:16 2000 Owen Taylor + + * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to + get the logical attributes for a given GtkTextLine. + +Tue May 30 16:05:39 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track + g_locale_get_codeset() to g_get_codeset() change. + +Tue May 30 15:03:19 2000 Owen Taylor + + * gtk/testcalendar.c (calendar_font_selection_ok): Use font + descriptions. + + * gtk/gtkentry.c (gtk_entry_draw_text): Center text within + the entry. + + * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of + redoing (vastly simplifying) for Pango. Still needs quite + a bit of work. (Size selection is currently poor. List of + predefined sizes is not a good idea, since all of these + sizes won't necessarily be distinct.) + +Tue May 30 13:50:19 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle + CODESET results for LANG=C. + +Mon May 29 15:49:10 2000 Owen Taylor + + * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC + which takes a stringized pango font description; + ignore the older 'font' and 'fontset' declarations. + + * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font + field with a GdkFont derived via gdk_font_from_description(), + for compatibility. (Should we just remove it entirely? + Probably too much compatibility breakage, but people + should be migrating to the new Pango stuff as quickly + as possible.) + +Mon May 29 15:47:41 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/. + +Mon May 29 15:44:46 2000 Owen Taylor + + * gtk/gtkcalender.c: Roughly pango-ized. Really needs + redoing; there are some bugs in size allocation right + now, the semi-existant distinction between header / day + fonts was removed, but, with Pango, could actually + be made functional in a nice way. + + * gtk/testcalender: Move calender from examples into this + directory as a test program. (We really need to restrcture + testgtk into a whole directory full of tests for every + widget or functionality group, separated into multiple .c + files.) + +Mon May 29 15:19:56 2000 Owen Taylor + + * gtk/testgtk.c (file_exists): Fix stupid typo that + was keeping RC file from being loaded. + + * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized + RC file font code. + +Mon May 29 14:31:27 2000 Owen Taylor + + * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description): + Add function to load a GdkFont from a PangoFontDescription. + +2000-05-29 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event" + variable should be of type GdkEventPrivate. + +Fri May 26 17:16:40 2000 Owen Taylor + + * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able + to have any widget for the label, use a GtkLabel widget + to display the text. (Based partially on a patch from + Anders Carlson.) + + (Quite a bit of code reorganization - strip 90% of the + guts out of gtkaspectframe and add a single virtual + func to GtkFrameClass - compute_child_allocation.) + +Fri May 26 12:00:02 2000 Owen Taylor + + * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized. + (Removed clist->row_center_offset field because caching + it wasn't saving time or code, added private function + _gtk_clist_create_cell_layout()). + +Wed May 24 15:59:37 2000 Owen Taylor + + * gtk/gtkaccellabel.c: Pangoized. + + * gtk/[hv]ruler.c: Pangoized + +Mon May 22 19:23:59 2000 Owen Taylor + + * gtk/gtkfilesel.c (gtk_file_selection_init): + Use gtk_clist_set_column_auto_resize() to remove need + need for manual column width computations. + +Mon May 22 18:50:26 2000 Owen Taylor + + * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, + ensuring Pango correctness, and considerably simplifying the + code. + + * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE. + + * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect + getting of numbers of lines. + + * gtk/gtklabel.c (gtk_label_size_request): Set the requisition + to the actual requested width of the lable, not to the wrap + width we set. + + * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h. + + * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c + gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes. + + * gtk/gtktextview.c: Fix structure inheritance. + + * gtk/gtkprogressbar.c: Pangoize. + +Mon May 22 15:47:30 2000 Owen Taylor + + * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate + in a function. + + * gtk/gtktextlayout.c (find_display_line_above): Fixed + bug with computing line tops. + + * gtk/gtktextview.c (changed_handler): Fix < , <= confusion. + +Thu May 18 18:53:31 2000 Owen Taylor + + * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset + and y_offset coordinates to do what we need now. (The offset between + buffer and layout coordinates has been reintroduced, but is a + bit different than before.) + + * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead + handle the adjustments ourselves, and scroll as necessary using + the new gdk_window_scroll(). + + The advantage of this is that when we are incrementally revalidating, + we are essentially rearranging things around the visible portion + of the screen. With the old setup, the visible portion of the + screen was moved around in the layout, so scrolling and redrawing + to track that caused jumping of the display. Since we now + control the scrolling ourselves, we can suppress this and + only redraw when things actually change. + +Thu May 18 18:47:25 2000 Owen Taylor + + * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate + the region not just redisplay it after-all, since we store the + cursors in the LineDisplay. (Ugly interactions here between + GtkLayout and GtkTextBTree here.) + + * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison. + +Thu May 18 18:43:21 2000 Owen Taylor + + * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): + Added function to scroll contents of a window while keeping the + window constant. Works by XCopyArea or guffaw-scrolling depending + on the details of how the window is set up. (guffaw-scrolling + still needs to be filled in.) + +Wed May 17 22:36:53 2000 Owen Taylor + + * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget, + move the debugging that was tied to a global variable + to that. + + * gtk/gtkmarshal.list: Add NONE:INT,INT,INT + + * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate + validated flag, in line data instead of setting height/width to + -1. This allows us to perform operations with partially invalid + buffer (using the old size for invalid lines) and thus to do + incremental vaidation. Keep height/width aggregates up to date + when deleting text and rebalancing the tree. + + * gtk/gtktextbtree.[ch]: Add functions validate a line + (gtk_text_btree_validate_line), and to validate up + to a number of pixels (gtk_text_btree_validate). + + * gtk/gtktextlayout.[ch]: Add an ::invalidated signal + that indicates that something is changed and a revalidation + pass is needed. Change ::need_repaint to ::changed, and + make it take old and new yranges instead of a rectangle. + + * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move + the line_data_destroy() function from + gtk_text_btree_add_view() to a virtual function in + GtkTextLayout + + * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(), + since we are handling partial repaints in a different fashion + now. + + * gtk/gtktextbtree.[ch]: Only repaint the changed portion + of the selection instead of queueing a repaint on the + entire widget. + + * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move + get_selection_bounds() down to btree, make the function + in buffer a wrapper around the btree function. + + * gtk/gtktextlayout.[ch]: Add functions to check if the + layout is valid and to recompute either a range of pixels + aroudn a line or a certain total number of pixels. + + * gtk/gtktextlayout.[ch]: Cache a single line display; + now that we only redraw the needed portions, the hit rate + for this cache is quite high. + + * gtk/gtktextview.[ch]: Keep track of the first paragraph + on the screen so that when re-laying-out the buffer, we can + keep the same place. This requires connecting to ::value_changed + on the adjustments + + * gtk/gtktextview.[ch]: Add idle functions to revalidate + the buffer after we receive an ::invalidated signal. + +Wed May 17 22:10:47 2000 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper + to max of allocation and layout size, not just to the + layout size. + + * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): + Invalidate window so it gets redrawn properly. + + * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL + to mean the entire window. + + * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW + into public header. + +Mon May 15 14:51:31 2000 Owen Taylor + + * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function + to get the name of a mark. + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function + to find the paragraph from a y position. + +Thu May 11 12:57:20 2000 Owen Taylor + + * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid + nodes have width/height >= 0, not > 0. + +Tue May 9 21:29:06 2000 Owen Taylor + + * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display): + Add a size_only flag, so when we only need the size, we don't create + useless appearance attributes. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove + duplicate setting of font description. + + * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 + +Wed Apr 26 01:53:23 2000 Owen Taylor + + * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into + EXTRA_DIST. It does not work well when the file that + everything depends on is not in the tarball. + +Wed Apr 26 00:56:14 2000 Owen Taylor + + * gtk/testgtk.c: Some hacks and fixes so that it basically + works when not sitting in the GTK+ build tree. + +2000-05-03 Havoc Pennington + + * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag): + Properly determine the ordering of the tag root and the current + line within the tree. Previous algorithm only worked if the tag + root's immediate parent was the common root of both the current + line and the tag root. + +Wed Apr 26 00:43:00 2000 Owen Taylor + + * gtk/gtktextlayout.c (set_para_values): Fix some bugs in + alignment. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track + the widget text directional dynamically. + + * gtk/gtktextview.[ch]: Added functions to get and set default + wrap mode. + +Tue Apr 25 23:47:38 2000 Owen Taylor + + * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug + in cursor location computation. + +Tue Apr 25 23:22:59 2000 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/ + vadjusment values properly when layout gets smaller. + + * gtk/gtktextview.c (need_repaint_handler): Areas being + passed in are far completely inaccurate, and sometimes + too small, so, for now, just queue a redraw on the + whole visible region. + +2000-04-25 Havoc Pennington + + * gtk/gtktextbtree.c (summary_destroy): new function to + destroy tag summary nodes + (gtk_text_line_next_could_contain_tag): this function was + totally broken if the line passed in wasn't below the tag + root. Fix it. + (gtk_text_btree_first_could_contain_tag): In the tag == NULL + "wildcard" case, we have to do a linear scan. Blah. + (gtk_text_btree_last_could_contain_tag): In tag == NULL case, + we have to do the linear scan + (tag_removed_cb): When a tag is removed from the tag table, + remove the GtkTextTagInfo node from the btree. + (gtk_text_btree_spew): Implement the spew function, for + our debugging pleasure. + +Tue Apr 25 19:40:18 2000 Owen Taylor + + * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix + a problem with referring to the wrong buffer. + + * gtk/gtkentry.c: Fix focus-in/focus-out confusion. + + * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default + font description to gtk_style_new() - otherwise things + don't work without a .gtkrc file. + + * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the + tags table if we create it ourself, too. + + * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since + it was conflicting with XKB modifiers. + + * gtk/gtktextview.[ch]: Add simple support for + GtkIMContext. + +Mon Apr 24 19:34:18 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem + with deletion from last commit. + +Mon Apr 24 19:29:40 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language + in the context from the current locale. + + * gtk/gtkentry.c (gtk_entry_size_request): Use language from the + context, not hardcoded value. + + * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual, + not logical. + +Sun Apr 23 23:39:18 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as + attributes - that doesn't handle partial-glyph selection + properly. Instead use new pango_layout_line_get_x_ranges() + functionality to draw the selection. + + * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x() + now properly handles out-of-range coordinates. + + * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved. + + * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte() + public. + + * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext + for paragraphs opposite to the base direction of the widget. + + * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment. + + * gtk/gtktextlayout.c: Don't split segments on marks, since that + causes Arabic words to reshape as you cursor through. + + * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual + cursor position when moving vertically with the arrow keys and + scrolling with page-up/page-down. (Arrow keys save only the X, + scrolling saves both X and Y.) + + This means you can line-up / line-down or page-up / page-down + without losing your place, and also that moving vertically + with the cursor keys keeps the same X position, not the same + character count: + + * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical + arrow keys move by display lines, not paragraphs. + +Tue Apr 18 14:16:50 2000 Owen Taylor + + * gtk/gtklayout.c: Make sure that the bin window is at least + as big as the allocation. (Should we also make sure that the + bin window is big enough to completely cover widget->window?) + + * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add + function to get the onscreen rectangle. + + * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account + for offsets in window coordinates. + +Sun Apr 16 16:13:27 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset + confusion. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction + from the widget direction. + + * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): + Add a "direction" attribute. + + * gtk/gtktextview.c: global s/tkxt/text_view/. + + * gtk/testtext.c: Added long block of text in Arabic, to test out + the direction attributes. (Some problems with the shaping system + for arabic become obvious - like the fact the cursor splits words + into unjoined pieces.) + +Fri Apr 14 12:54:34 2000 Owen Taylor + + * gtk/gtktextdisplay.c (render_layout): Add overstrike handling. + + * gtk/gtktextlayout.c: Fix up alignment. + + * gtk/testtext.c: Add some tests for centering, wrapping. + +Fri Apr 14 09:26:22 2000 Owen Taylor + + * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c: + Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs(). + If we wrote GTK+-specific layout-render function this could just replace + the draw_layout() operation in the vtable. + + * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to + pango_layout_get_cursor_pos() and use that function. + + * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it + is a non-static symbol. + + * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y() + with gtk_text_btree_find_line_by_y() + + * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout + renderer that handles GtkTextAppearance attributes. + + * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: + + - Move the values in the style that don't affect geometry into a + GtkTextAppearance structure. + - Change underline to take a PangoUnderline and "font" a string + representation of a font description + - Add a "font_desc" attribute which takes a FontDescription structure. + + * gtk/gtktextlayout.[ch]: + + - Get rid of the display-line list per each line. Instead, we + generate, on demand, a GtkTextLineDisplay structure which] + contains a PangoLayout * and other necesary information + (offsets, cursor locations) for displaying a paragraph. + - Get rid of the code to wrap lines, create display chunks, + etc. Instead, we just go through a paragraph and convert + it into the necessary inputs to a PangoLayout. + - Implement a new attribute type, GtkTextAttrAppearance. This + holds a GtkTextAppearance, and is used to pass colors, + stipple, etc, through from the layout to the display without + having to use lots and lots of individual attributes. + - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos() + in terms of PangoLayout functions. + + * gtk/gtktextview.c: + + - Handle passing the necessary PangoContext to the layout + - Some fixups in painting to deal with the automatic backing store + and offsetting of GTK+-1.4 + - Add a style_set handler so that the default style reacts + properly to theme changes. + + * gtk/gtktext?*.[ch]: Random code-style fixes. + + * gtk/testtext.c: Substitute in languages that Pango handles now for Thai + +Mon Apr 10 10:33:45 2000 Owen Taylor + + * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget, + in original form preparatory to Pango-ization and gdkimcontext-ization. + +Thu Apr 6 19:25:39 2000 Owen Taylor + + * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs, + so that we can derive from gtkimcontext in language bindings properly. + +Thu Apr 6 16:02:52 2000 Owen Taylor + + * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval. + Add a compose table including (almost) all the compose combinations + from X. This is 6k of static, shared data as opposed to 50k or so of dynamic + data in the XIM implementation. + + * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval): + Moved functions to convert keyvalues from and to unicode here from + the win32 port and made them public. + +Wed Apr 5 16:37:29 2000 Owen Taylor + + * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1. + +Wed Apr 5 16:27:45 2000 Owen Taylor + + * gtk/gtkimcontext.[ch]: Base class for new input context system + + * gtk/gtkimmulticontext.[ch]: Proxy input context that allows + the real input context implementation to be loaded from modules + and switched on the fly. + + * gtk/gtkcontextsimple.[ch]: Simple implementation of an input + context that just does direct keysymbol => unicode translation. + + * gtk/gtkentry.[ch]: Start switching editing over to using + GtkInputContext. (No handling of preedit yet.) + +Wed Apr 5 15:48:41 2000 Owen Taylor + + * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too + many substitutions. (klass should not be subsituted.) + +Wed Apr 5 00:18:14 2000 Owen Taylor + + * configure.in: Add checks for Pango + + * configure.in docs/Makefile.am: Add test for sgml2html + and allow 'make dist' without building html, but print out + warnings in that case. (For making snapshots) + + * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am: + Add Pango libraries and C flags + + * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c: + Add function (gdk_draw_layout) to draw a pango layout. + + * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions + for getting Pango contexts for GDK. + + * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set() + + * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional + editing. + + * gtk/gtkentry.c: Hack in simple Hebrew input with direct + keysym => unicode translations. More languages can be added + here, but real input-method support is needed. + + * docs/Changes-1.4.txt: Added note about entry behavior. + + * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions + to set the reading direction for a widget and the global direction. + Add test which allows toggling the global direction. Two private + flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR) + + * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c + gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c + + * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango + + * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking, + underlining now handled by Pango. + + * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription + to RCStyle and Style. (Having both this and the old font name and GdkFont + is temporary.) + + * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added + convenience functions for creating contexts and layouts for widgets. + + * gtk/testgtk.c: Enhance label tests with multilingual labels. + +2000-05-29 Jonathan Blandford + + * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the + titles to be active, even if they aren't visible. + (gtk_clist_column_titles_passive): Ditto. + +2000-05-21 Nils Barth + + * gtkmenu.c: + * gtkmenu.h: + * gtktypeutils.h: Spelling/grammar fixes in comments. + +Tue May 23 12:25:07 CEST 2000 lupus + + * gdk/nanox/*.h: add missing header files. + +Fri May 19 11:52:59 2000 Tim Janik + + * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set + send_event to TRUE. + (gtk_drawing_area_size): queue a resize. + +Sun Mar 26 03:21:28 2000 Tim Janik + + * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing + the handlers, also invalidate them. bug nailed down by Karl Nelson + . + +Fri May 19 06:49:23 2000 Tim Janik + + * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle + "(nil)" foundries, patch from Grigorios Magklis. + + * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash + on non-available fonts, based on a patch by Grigorios Magklis + . + +2000-05-18 Elliot Lee + + * gdk/x11/gdkregion-generic.c: If a region does not have any + rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT + instead of GDK_OVERLAP_RECTANGLE_IN. + +2000-05-17 Jonathan Blandford + + * gtk/gtklayout.c (gtk_layout_map): Remove references to + OFFSCREEN, as it is no longer necessary. + +Wed May 17 10:52:12 2000 Owen Taylor + + * gtk/gtkcolorsel.c: Patch from David Santiago + to change things so that the + indicator of the active palette entry is done independently, + not via the focus, since it should always be visible. + +2000-05-17 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same + refcount leaks as in the X11 backend. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging + cosmetics. + + * gdk/win32/gdkwindow-win32.c: Similar changes as in X11 + backend. Add _gdk_windowing_window_destroy(). + + * gtk/gtkcolorsel.c: Include correct backend-specific header. + Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR + either, but these probably do exist on nanox?) + + * gtk/gtkhsv.c: Use G_PI (fresh from ) instead of M_PI + which isn't necessarily defined by . + + * gtk/gtkobject.c (gtk_object_init): Don't go up the class + ancestry past GtkObject. + + * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import + from DLL on Win32. + + * gtk/gtk.def: Update corresponding to recent changes. + + * gtk/makefile.{cygwin,msc}: Updates. + +Fri May 12 18:46:51 2000 Owen Taylor + + * docs/Changes-1.4.txt: A bit of editing. + + * gdk/gdkwindow.c (_gdk_window_clear_update_area) + * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function + to clear the update area for the window, and clear it + when hiding a window. + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore + if window destroyed. + + * gdk/gdkwindow.c (gdk_window_end_paint): Likewise. + + * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move + gdk_window_destroy() to the generic code, since there was a lot of + window-system-independent logic it in. Add a function: + + _gdk_window_destroy() + + to the internal API to destroy a window without unreferencing it. + Add a function: + + _gdk_windowing_window_destroy() + + That does the windowing-system-dependent part of destroying + the window. + +Fri May 12 11:07:41 2000 Owen Taylor + + * gtk/testgtk.c: Fix various memory leaks of pixmaps. + +Fri May 12 11:06:10 2000 Owen Taylor + + * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): + Make gtk_widget_shape_combine_mask() keep a reference count on + the pixmap since it keeps it around. + +Fri May 12 10:53:29 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount + leak. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount + leak with event filters. + +Thu May 11 14:29:44 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the + signal handlers with the right data arguments. (Fixes + some warnings when a widget was repeatedly set as a drag + destination.) + + * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the + window so we can avoid avoid setting the DND properties on the + toplevel window repeatedly. + +2000-05-13 Tor Lillqvist + + * gdk/win32/gdkwin32.h: Define more message types missing from + mingw headers. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY + call gdk_window_destroy_notify(). It was never called. This + probably meant that the GdkWindow was never freed. Thanks Owen for + noticing (!). + + * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark + window as destroyed before calling DestroyWindow(). DestroyWindow() + causes a call to the window procedure (gdk_WindowProc), which + calls gdk_event_translate(), which calls + gdk_window_destroy_notify(), which gets confused unless the window + is set as destroyed. + + * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename + this function to indicate it's win32 only. Put inside #ifdef + G_ENABLE_DEBUG. + + * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New + debugging function. (gdk_event_translate:) Add a default branch + that uses the above function to print debug messages with all + Windows messages symbolically. + + * gdk/win32/gdkprivate-win32.h: Declare it, and + gdk_win32_color_to_string, but only if G_ENABLE_DEBUG. + +Fri May 12 20:07:32 2000 Tim Janik + + * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a + public header file. + +Fri May 12 17:13:32 2000 Tim Janik + + * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition. + + * gtk/gtktext.c: made the adjustments no-construct args, simply + provide default adjustments. + (gtk_text_destroy): release adjustments. + + * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the + adjustment argument non-construct. + + * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here, + instead of in finalize. + (gtk_progress_get_text_from_value): + (gtk_progress_get_current_text): + (gtk_progress_set_value): + (gtk_progress_get_percentage_from_value): + (gtk_progress_get_current_percentage): + (gtk_progress_set_percentage): + (gtk_progress_configure): ensure an adjustment is present. + +Thu May 11 01:24:08 2000 Tim Janik + + * gtk/gtkcolorsel.[hc]: + * gtk/gtkcolorseldialog.[hc]: + * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain + their parent implementation, use bit fields for boolean values, don't + create unused widgets, usage of glib types, braces go on their own + lines, function argument alignment, #include directives etc. etc. etc.. + + * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h. + +Wed May 10 23:29:52 2000 Tim Janik + + * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips. + + * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state + of NULL. + + * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references + to freed data. + (gtk_combo_destroy): don't keep a pointer to a destroyed window. + + * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer + to NULL when the toplevel is getting destroyed. + (gtk_menu_set_tearoff_state): same here for the tearoff_window. + (gtk_menu_destroy): + (gtk_menu_init): store the information of whether we have to + readd the initial child ref_count during destruction in a new + GtkMenu field needs_destruction_ref_count. + + * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it + here, those reading: learn from my mistake! ;) + in order for set_?adjustment to support a default adjustemnt if + invoked with an adjustment pointer of NULL, the code read (pseudo): + if (v->adjustment) unref (v->adjustment); + if (!adjustment) adjustment = adjustment_new (); + if (v->adjustment != adjustment) v->adjustment = ref (adjustment); + now imagine the first unref to actually free the old adjustment and + adjustment_new() creating a new adjustment from the very same memory + portion. here, the latter comparision will unintendedly fail, and + all hell breaks loose. + (gtk_viewport_set_hadjustment): + (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL + after unreferencing it. + + * gtk/gtkcontainer.[hc]: removed toplevel registration + functions: gtk_container_register_toplevel(), + gtk_container_unregister_toplevel() and + gtk_container_get_toplevels() which had wrong semantics + anyways: it didn't reference and copy the list. + + * gtk/gtkwindow.c: we take over the container toplevel registration + bussiness now. windows are registered across multiple destructions, + untill they are finalized. the initial implicit reference count + users are holding on windows is removed with the first destruction + though. + (gtk_window_init): ref & sink and set has_user_ref_count, got + rid of gtk_container_register_toplevel() call. add window to + toplevel_list. + (gtk_window_destroy): unref the window if has_user_ref_count + is still set, got rid of call to + gtk_container_unregister_toplevel(). + (gtk_window_finalize): remove window from toplevel list. + (gtk_window_list_toplevels): new function to return a newly + created list with referenced toplevels. + (gtk_window_read_rcfiles): use gtk_window_list_toplevels(). + + * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange + adjustment a non-construct arg. + * gtk/gtkvscale.c (gtk_vscale_class_init): likewise. + * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise. + * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise. + + * gtk/gtkrange.c: added some realized checks. + (gtk_range_destroy): get rid of the h/v adjustments in the + destroy handler instead of finalize. remove timer. + (gtk_range_get_adjustment): demand create adjustment. + + * gtk/gtkviewport.c: made h/v adjustment non-construct args. + we simply create them on demand now and get rid of them in + the destroy handler. + (gtk_viewport_destroy): get rid of the h/v adjustments in the + destroy handler instead of finalize. + (gtk_viewport_get_hadjustment): + (gtk_viewport_get_vadjustment): + (gtk_viewport_size_allocate): demand create h/v adjustment + if required. + + * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the + gtk_widget_real_destroy () functionality. + (gtk_widget_real_destroy): reinitialize with a new style, instead + of setting widget->style to NULL. + +Fri May 5 13:02:09 2000 Tim Janik + + * gtk/gtkcalendar.c: + * gtk/gtkbutton.c: ported _get_type() implementation over to + GType, either to preserve memchunks allocation facilities, + or because Gtk+ 1.0 GtkTypeInfo was still being used. + + * gtk/gtkobject.[hc]: derive from GObject. ported various functions + over. prepare for ::destroy to be emitted multiple times. + removed reference tracer magic. chain into GObjectClass.shutdown() + to emit ::destroy signal. + + * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being + fundamental. + + * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init() + cludge. + + * gtk/gtksocket.c: + * gtk/gtkplug.c: + * gtk/gtklayout.c: + * gtk/gtklabel.c: + * gtk/gtkargcollector.c: + * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT + not being a fundamental anymore, and to work with the new + type system (nuked fundamental type varargs clutter). + + * gtk/*.c: install finalize handlers in the GObjectClass + part of the class structure. + changed direct GTK_OBJECT()->klass accesses to + GTK_*_GET_CLASS(). + changed direct object_class->type accesses to GTK_CLASS_TYPE(). + + * gtktypeutils.[hc]: use the reserved fundamental ids provided by + GType. made most of the GTK_*() type macros and Gtk* typedefs + simple wrappers around macros and types provided by GType. + most notably, a significant portion of the old API vanished: + GTK_TYPE_MAKE(), + GTK_TYPE_SEQNO(), + GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST, + GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST, + GTK_TYPE_ARGS, + GTK_TYPE_CALLBACK, + GTK_TYPE_C_CALLBACK, + GTK_TYPE_FOREIGN, + GtkTypeQuery, + gtk_type_query(), + gtk_type_set_varargs_type(), + gtk_type_get_varargs_type(), + gtk_type_check_object_cast(), + gtk_type_check_class_cast(), + gtk_type_describe_tree(), + gtk_type_describe_heritage(), + gtk_type_free(), + gtk_type_children_types(), + gtk_type_set_chunk_alloc(), + gtk_type_register_enum(), + gtk_type_register_flags(), + gtk_type_parent_class(). + replacements, where available are described in ../docs/Changes-1.4.txt. + implemented compatibility functions for the remaining API. + + * configure.in: depend on glib 1.3.1, use gobject module. + +Thu May 11 12:39:50 2000 Owen Taylor + + * TODO.xml: Various updates to current status. + +Wed May 10 20:25:04 2000 Owen Taylor + + * gtk.m4: Print out version when test succeeds. + +Wed May 10 16:38:17 2000 Owen Taylor + + * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch] + gtk/gtkhsv.[ch]: Color selection dialog rewrite. + + (Original triangle color selector from Simon Budig + , Cleaned up and rewritten for GTK+ by + from Jonathan, Havoc, and Federico. Merge into GTK+ done by David + Santiago ) + + * gtk/gtkcolorseldialog.[ch]: Split color selection dialog + out into a separate widget. + + * gtk/testgtk.c: Add some checkbuttons for toggling palette + and opacity controls. + +Wed May 10 16:08:09 2000 Owen Taylor + + * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that + snuck in prematurely. + +2000-05-07 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I + had deleted a ! operator by mistake, which caused + GDK_SELECTION_CLEAR events never to be generated, which caused + only the first copy to the clipboard from an gtkeditable to + actually cause a copy to the Windows clipboard. + +2000-05-06 Tor Lillqvist + + * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc + compilation, too. Current mingw gcc distributions include the + necessary headers. Also the necessary IIDs are now in mingw + headers/libraries, and own definitions unnecessary. + + More hacking on OLE2 DND, still doesn't work though, and thus + ifdeffed out. + + * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from + here, too. + +Sat, 6 May 2000 13:31:34 +0200 Paolo Molaro + + * gdk/nanox/*: nano-X port work in progress. + * gdk/simple.c: simple test for Gdk. + * README.nanox: notes about the port: read this first! + * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile + with nano-X. + +Fri May 5 11:18:47 2000 Owen Taylor + + * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move + gdk_window_clear() into common code, implement in terms of + gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was + not redirected to the backing rectangle. + +Wed Apr 26 01:53:23 2000 Owen Taylor + + * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into + EXTRA_DIST. It does not work well when the file that + everything depends on is not in the tarball. + +Tue Apr 25 22:20:41 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error + with recursion where process_updates() is called from + an expose handler. (GtkTextView is highly broken in + doing this, but it should work, so it is a nice test + case.) + +Sun Apr 23 23:39:18 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully + handle the case where updates are queued during processing of + updates. + +Tue Apr 18 14:16:50 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume + window is on gdk_display - use that instead of segfaulting. + +Thu May 4 02:04:46 2000 Tim Janik + + * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are + broken and require an empty arg, give it to them. + +Fri Apr 28 19:34:32 2000 Tim Janik + + * gtk/gtklabel.h: indentation fixes. + +2000-05-02 Tor Lillqvist + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to + draw too narrow or too low arcs, they seem to fail, at least with + some display drivers. + + * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR. + + Large changes to the Win32 backend, partially made necessary by + the changes to the backend-independent internal + structures. Attempts to implement similar backing store stuff as + on X11. The current (CVS) version of the Win32 backend is *not* as + stable as it was before the no-flicker branch was merged. A + zipfile with that version is available from + http://www.gimp.org/win32/. That should be use by "production" + code until this CVS version is usable. (But note, the Win32 + backend has never been claimed to be "production quality".) + + * README.win32: Add the above comment about versions. + + * gdk/gdkwindow.c: Don't use backing store for now on Win32. + + * gdk/gdk.def: Update. + + * gdk/gdkfont.h: Declare temporary Win32-only functions. Will + presumably be replaced by some more better mechanism as 1.4 gets + closer to release shape. + + * gdk/makefile.{cygwin,msc}: Update. + + * gdk/win32/*.c: Correct inclusions of the backend-specific and + internal headers. Change code according to changes in these. Use + gdk_drawable_*, not gdk_window_* where necessary. + + * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not + our old DND. + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try + to interpret single characters as UTF-8. Thanks to Hans Breuer. + Use correct function name in warning messages. + + * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the + GSourceFuncs gdk_event_prepare and gdk_event_check. + (gdk_event_get_graphics_expose): Do implement, use + PeekMessage. Thanks to Hans Breuer. + (event_mask_string): Debugging function to print an GdkEventMask. + (gdk_pointer_grab): Use it. + + * gdk/win32/gdkfont-win32.c: The Unicode subrange that the + (old) book I used claimed was Hangul actually is CJK Unified + Ideographs Extension A. Also, Hangul Syllables were missing. + Improve logging. + + * gdk/win32/gdkgc-win32.c: Largish changes. + + * gdk/win32/gdkim-win32.c (gdk_set_locale): Use + g_win32_getlocale() from GLib, and not setlocale() to get current + locale name. + + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to + gdkwin32.h, similarily as in the X11 backend. + + * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix, + assignment was used instead of equals in if test. Thanks to Hans + Breuer. + + * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of + the X11 version. + + * gdk/win32/makefile.{cygwin,msc} + * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the + path to the Win32 headers that works also with the mingw compiler. + + * gtk/gtkstyle.c: Include . + +2000-04-26 Havoc Pennington + + * gtk/gtklabel.c (gtk_label_get_text): Add this function, + replacing the broken gtk_label_get () + +2000-04-15 Havoc Pennington + + * gdk/gdkdnd.h: clean up enum format, remove extra comma, + this keeps scanner scripts from getting confused. + + * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the + data, rather than void + +2000-04-15 Tor Lillqvist + + * gtk/gtkclist.c (gtk_clist_motion) + * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event + with is_hint FALSE, get x and y from the event. They used to be + used uninitialised. The Win32 backend never sends motion events + marked as hints. This for instance fixes the annoying file and + font selector behaviour in the Win32 version. + +2000-04-14 Tor Lillqvist + + * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and + gtk_private_n_signals variables, they are used by some software, + sigh. + + * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the + installation directory from the Registry, where the installer + should have put it. + +Fri Apr 7 17:19:27 2000 Owen Taylor + + * gdk/x11/Makefile.am: Fix problem with installation directory for + gdkx.h + + * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago + so that when selecting menus with the + mouse, the first item will not be selected, but when selecting + with an accelerator, or navigating left-right on a menubar with + the menus popped up, the first item will be selected. + +2000-04-05 Dan Damian + + * configure.in: Added "ro" to ALL_LINGUAS. + +Wed Apr 5 00:08:36 2000 Owen Taylor + + * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy + indentation. + + * Makefile.am (EXTRA_DIST): Fix typo. + + * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk + to catch gdkconfig.h + + * gtk/gtkitemfactory.c: Added FIXME. + +2000-03-30 Jonathan Blandford + + * gtk/gtkpaned.c (gtk_paned_get_position): oops. + s/return_if_fail/return_val_if_fail/g and add a return value. + +Mon Mar 27 20:56:14 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up + merge slipup. + + * gdk/gdkinput.h: Fix missing line from merge. + +Mon Mar 27 20:39:49 2000 Owen Taylor + + * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h + instead of gdkprivate.h. + +Sun Mar 12 15:19:24 2000 Owen Taylor + + * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix + parent class to correctly be GtkDialogClass. + +Thu Feb 24 23:58:21 2000 Owen Taylor + + * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of + toplevel windows and their immediate children by their parents, + since the size of toplevel windows is out of our immediate + control and we don't get any real benefit from trying to track + this size for clipping. + + * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag + for input_only windows. + + * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag + to fix some hacks and make sure that we don't try to set the + background of input only windows. + +Thu Feb 24 18:11:46 2000 Owen Taylor + + * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for + the _really_ internal stuff, and leave gdkprivate.h for the fake private + stuff that we've traditionally exposed. + + * gdk/**.c: Use gdkinternals.h where appropriate. + + * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h + not include gdkprivate-x11.h, move all stuff of conceivable public + interest into gdkx.h; keep all really private stuff in + uninstalled header gdkprivate-x11.h. + + * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to + image->image_put on windows through a new function _gdk_window_draw_image() + to allow us to do backing store for images. (Sort of ugly) + + * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics + contexts locally so that we can offset them properly when drawing + onto backing pixmaps. + + * gdk/gdkinput.h: Reindented + + * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background + pixmap or color for the window, so we can properly initialize + our double-buffer pixmaps, and also so that we temporarily set + a background of None while scrolling. + + * gdk/gdkregion.h: Revise region boolean operators to have an + interface that is actually convenient - switch from creating new + regions on every op, to "methods" that modify existing regions + (A = A OP B). 3 argument forms which allow dest == src, would also + be possible, but the current interfaces seem to map nicely + onto what needs to be done. (There is quite a lot of region + code in GDK now.) + + * gdk/gdkregion.h: Add constructor from rectangle and a copy + operator. + + * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c, + gdkpoly-generic.h: Copy region code from Xlib, switch it over + to 32 bit coordinates, modify it to be mostly GTK+ style + and to have interfaces that match gdkregion.h. + + * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for + double-buffered drawing. gdk_window_begin_paint_{rect,region}() + create a backing pixmap and redirect all drawing to + that backing pixmap until a matching gdk_window_end_paint(). + + * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c: + Create a special drawable class for GtkWindow's that + redirects the drawing to the backing pixmap as necessary + and then calls the real operations in _gdk_windowing_window_class. + + * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c: + Store invalid region for each window. Generate expose events for invalid + region in an idle. This replaces both the expose compression + and the redrawing queuing in GTK+. It is both more efficient and + simpler than either one individually and far more so then the + combination. + + * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h: + Emulate 32 bit coordinates for windows with 16 bit coordinates + by offsetting drawing, guffaw scrolling techniques and + mapping/unmapping child windows as necessary. + + * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes, + where, when invalid regions are processed, the region is stored, + and if expose events come in that are detectably duplicate + the processed exposes (by comparison of event serial numbers), + the stored region is subtracted out of those exposes. + + * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of + regions newly exposed when scrolling or resizing windows. + This, combined with forcing processesing of queued invalidated + regions, gives nice flicker-free scrolling. + + * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of + invalidated regions after every scroll. + + * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate + emulation in GDK. Its, for all practical purposes just a + GtkViewport/GtkFixed hybrid now. + + * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11 + (16-bit) structures as necessary instead of just casting. + + * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code + in terms of the structures from gdkregion-generic.c, using appropriate + offsets from GDK to X11 coordinates. Cache clip mask and + origin and ts origin locally and only flush to the server + when drawing, to avoid constantly setting and resetting these + values when offsetting GC's for scrolling and backing pixmaps. + + * gdk/x11/gdkinput-x11.c: Fix leak of axes structures. + + * gtk/gtkcontainer.c: Call process_all_updates at end + of resizing to reduce flicker. (Avoids having redraw + lag arbitrarily behind resize under some circumstances) + + * gtk/gtkentry.c: Remove old backing store code, and simply take + advantage of the new backing store capabilities of GDK. + + * gtk/gtkmain.c: Simple implementation of widget backing + store - simply push a paint while handling each expose. + (Should really be configurable widget for widget.) + + * gtk/gtkwidget.c: Remove all the old complicated redraw + code, and simply invalidate the GDK windows from + gdk_window_queue_clear(), etc. (Sigh, so much carefully + debugged complexity ... gone to the winds.) + + Remove all the code for suppressing expose events while + resizes are pending; this isn't needed since the invalid + areas won't be processed until after the resizes are + processed, since they are in a lower priority idle. + +Thu Feb 24 15:37:41 2000 Owen Taylor + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width + and height of dest rectangle for non-intersecting rectangles. + +Sun Feb 20 16:47:31 2000 Owen Taylor + + * gtk/gtkwidget.h: Make GtkAllocation just a typedef + for GdkRectangle. + +Sun Feb 20 11:27:00 2000 Owen Taylor + + * gdk/gdk{events,image,private,types,window}.h + gdk/x11/gdkinputprivate.h: Change all coordinates + from int16 to int. Also, Change width and height from + unsigned to signed to avoid all the stupid C + signedness bugs. + +Sat Feb 19 12:01:53 2000 Owen Taylor + + * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): + Use gdk_drawable_get_depth instead of gdk_drawable_get_visual. + Add some more detailed checking. + + * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth): + New function to retrieve the depth of a drawable. + + * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth + field, reorder fields to save memory. + +Mon Dec 13 14:06:03 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion + of the background image instead of scaling the background down to + a line. + + * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious + which temporarily set slider to wrong size. + + * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to + queue_clear(). + +Wed Nov 17 18:36:05 1999 Owen Taylor + +2000-03-23 Jonathan Blandford + + * gtk/gtkpaned.c (gtk_paned_get_position): add getter. + +2000-03-17 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c: Remove the #ifndef + USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage. + + * gdk/win32/gdkfont-win32.c + * gdk/win32/gdkproperty-win32.c + * gdk/win32/gdkselection-win32.c + * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are + now declared such. + +Wed Mar 15 02:59:38 PST 2000 Manish Singh + + * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic + +Mon Mar 13 18:37:55 2000 Owen Taylor + + * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty() + is called without trapping X errors. + +Fri Feb 25 10:48:53 2000 Owen Taylor + + * gtk/gtkrc.*: Fix problem where stray '"' characters found their + way into the fontset lists. + +Tue Feb 22 08:52:52 2000 Tim Janik + + * gtk/gtkthemes.h: add extern "C" scope. + +Mon Feb 21 20:16:42 2000 Lars Hamann + + * gtk/gtkclist.c: applied patch from Guy Harris + to make appends to the list constant. (gtk-guy-990901-0.patch) + +Mon Feb 14 22:50:10 2000 Tim Janik + + * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal() + for the typename hash table. + +Mon Feb 14 15:01:23 2000 Owen Taylor + + * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks + to make sure we never divide by zero. + (Problem pointed out by Michal Jaegermann ) + +Mon Feb 14 12:29:38 2000 Owen Taylor + + * gtk/gtkfontsel.c: Apply patch from + SHIRASAKI Yasuhiro to make font selector work a little + better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.) + + Also, some cleanups in atom handling. + +Sun Feb 13 08:02:21 2000 Tim Janik + + * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer, + not GtkWidget. + +Fri Feb 11 02:19:32 2000 Tim Janik + + * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): + * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): + * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some + more guint wrap-around bugs before going to bed. + +Thu Feb 10 16:16:35 2000 Tim Janik + + * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against + guint wrap arounds in allocation.width. + + * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking + process untill we fit the allocation given. + +Tue Feb 8 09:38:29 2000 Tim Janik + + * gtk/gtkwidget.c: + (gtk_widget_unrealize): guard widget access with ref/unref + around signal emission. + (gtk_widget_hide): same here, but also check its destroyed + state before queueing a resize. + +Tue Feb 8 03:05:55 2000 Tim Janik + + * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead + of gtk_default_insensitive_bg as insensitive base color. + + * gtk/gtktext.c (gtk_text_style_set): set the background color according + to the widget's state. + (gtk_text_realize): same here. + (gtk_text_state_changed): same here. + (draw_bg_rect): compare background color against base[] from + GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL. + +Mon Feb 7 04:01:55 2000 Tim Janik + + * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when + grabs are active, unless a delete event is send to the toplevel + of the currently grab holding widget. + +Sun Feb 6 10:13:15 2000 Owen Taylor + + * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove + debugging g_print's. + +Fri Feb 4 15:54:54 2000 Owen Taylor + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't + ever make the scrolled-window requisition ever depend on the + visibility state of the scrollbars for the AUTOMATIC policy. + This breaks the GTK+ requisition model, and causes loops. + +Fri Feb 4 15:09:12 2000 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for + the default font to avoid problems with XFree86-4.0 where the + default charset is iso10646-1, not iso8859-1. + +Thu Feb 3 14:58:48 PST 2000 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release) + + * gtk/Makefile.am: minor cosmetic consistency tweak + +Thu Feb 3 14:46:01 2000 Owen Taylor + + * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set + the activate_time to 0, so that we handle a quick + press/release press/release properly and don't suppress + the second release. (Red Hat bug #7545) + +Wed Feb 2 22:25:17 2000 Tim Janik + + * gtk/gtkctree.c (row_delete): + (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy + bugs with destruction notifier, *always* update internal + structures *before* calling user code. + +Sun Jan 30 20:10:52 2000 Lars Hamann + + A few more fixes for bug #5487, #2051, #2677. + * gtk/gtkclist.c : + (gtk_clist_button_press): Reset clist->anchor to -1 if event->type is + not GDK_BUTTON_PRESS. + (resync_selection): resync only if selection_mode is + GTK_SELECTION_EXTENDED + * gtk/gtkctree.c (resync_selection): same here + +Sun Jan 30 12:29:20 2000 Owen Taylor + + * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for + gdk_drag_get_selection() and gtk_menu_detach(). + + [ From Jeroen Ruigrok/Asmodai ] + +Sat Jan 29 10:11:56 2000 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_size_request): + page->tab_label can be NULL. + +2000-01-25 Havoc Pennington + + * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative + arg is boolean + + * gdk/gdkselection.c (gdk_selection_owner_set): return boolean + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean + + * gdk/gdkproperty.c (gdk_property_get): return boolean + + * gdk/gdkinput.c (gdk_input_set_mode): return boolean + + * gdk/gdkim.c (gdk_im_ready): return boolean + + * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg + + * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild + glib clash, should fix glib) + + * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg + (gdk_get_show_events): return gboolean, and canonicalize + to TRUE/FALSE + + * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the + colormap is private + (gdk_colors_alloc): gboolean whether to be contiguous + (gdk_color_equal): return gboolean since we are a predicate + and not a qsort() (this looks semi-wrong due to glib breakage, + IMO glib should be fixed) + + * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg + (gdk_get_use_xshm): return gboolean + (gdk_pointer_is_grabbed): return gboolean + + * gdk/gdk.h: Change prototypes to match all the above changes, + and re-run egtk-format-protos as required. + +Fri Jan 28 12:28:17 2000 Owen Taylor + + * gtk/gtkctree.c (resync_selection): + * gtk/gtkclist.c (resync_selection): + + Return immediately if clist->drag_pos < 0. This is a workaround + for the corrupt state that the clist gets into when a + GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press(). + + Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel. + + * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized + variable from recent commit. + +Thu Jan 27 15:22:09 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit. + +Thu Jan 27 18:00:55 2000 Tim Janik + + * gtk/Makefile.am: prefix all autogenerated source that get build in + $(srcdir) with $(srcdir)/, so make doesn't assume they got generted + in builddir. since we subsequently cd into srcdir for autogeneration, + the paths have to be stripped from the target file names, thusly we + use $(@F) as target names now. + put a comment about configure.in's --disable-rebuilds option, + which can be used for non-writable source directories, for development + setups though, srcdir has to be *writable*. + +hu Jan 27 00:15:03 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions): + Finish the job of allowing event to be NULL. + (Fixes bug #4283, reported by Chris Blizzard) + + * gtk/gtkentry.c (entry_adjust_scroll): When calculating + things so that the cursor appears on screen, properly + take into account INNER_BORDER. + (Fixes bug #4754, reported by Antonio Campos) + +Wed Jan 26 23:12:28 2000 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_map): Don't + show the tab_label unless it itself is visible. + + gtk/gtknotebook.c (gtk_notebook_size_request): + Do a better job of making sure that the visibility + of the tab label corresponds to whether it should + be mapped or not. + +Wed Jan 26 21:17:03 2000 Owen Taylor + + * gtk/gtkoptionmenu.c (gtk_option_menu_position): + Use the requisition, not the allocation, since the + allocation has not necessarily been computed yet. + (Pointed out by Eugene Osintsev) + +Wed Jan 26 19:44:25 2000 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_new): Dont' set + style/base[GTK_STATE_INSENSITIVE] both to + gtk_default_insensitive_bg! + (Bug #2187, reported by Jonathan Blandford) + + * gtk/gtkaccelgroup.c (gtk_accelerator_valid): + Add Alt_L, Alt_R to list of invalid accelerators. + (Bug #3736, reported by Vlad Harchev) + +Wed Jan 26 19:01:56 2000 Owen Taylor + + * gtk/gtkfilesel.c (open_ref_dir): Fix several + bugs which occured after an attempt to open + invalid home directory left cmpl_state->reference_dir == NULL. + + - completion on files in home directory didn't work + - completion on an empty string caused segfault + + (Bug #3678, reported by Steve Ratcliffe) + + * gtk/gtkscale.c (gtk_scale_get_value_width): Fix + cut and paste error that was causing scales to + be incorrectly positioned. + (Bug #2956, + patch from Steve Ratcliffe ) + +2000-01-27 Shirasaki Yasuhiro + + * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs + when checking for dcgettext, if we've found we needed + it for dgettext. ++ +Wed Jan 26 18:06:07 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore + queue_clear on NO_WINDOW widgets during a reparent, + since at that point the window and widget heirarchies + are out of sync. This stops crashing in some cases + (the scrolled window reparent test, for instance), and + _probably_ won't cause drawing errors. + + * gtk/testgtk.c: Make the reparenting-a-scrolled-window + test do what it was supposed to do and be robust against + window closings, etc. (Bug #2443) + +Wed Jan 26 16:56:54 2000 Owen Taylor + + * gtk/gtkentry.c: Fix return values on mouse events. + (Bug #2686, Sky ) + + * gtk/genmarshal.pl: Fix up handling of FOREIGN. + (pointed out by George Lebl) + + * gdk/gdkcolor.c (gdk_color_copy): Made const-safe. + (From Ettore Perazzoli ) + +Mon Jan 24 10:44:48 2000 Owen Taylor + + * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle + clicks between rows or outside calender area correctly. + (Patch from Damon Chaplin) + + * gtk/gtkclist.c (gtk_clist_set_row_data_full): + * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): + Call destroy function when overwriting existing data. + (Pointed out by Damon Chaplin) + +Tue Jan 25 09:55:41 2000 Owen Taylor + + * gdk/gdk.c: Remove useless #include of , + which was causing problems on various systems with Xmu. + This hasn't been needed for a very long time. + (Fixes #1185 3167) + +Sun Jan 23 22:27:36 2000 Owen Taylor + + * gdk/gdki18n.h: Include when defining + gdk_isw* in terms of is* as a fallback. + (Bug #4106 - Dan Winship ) + +Sun Jan 23 22:12:36 2000 Owen Taylor + + * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't + realize the widget when it is size allocated! + (old, old bug) + + * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed): + Removed unused call to gdk_window_get_size() that + showed up when the above was fixed. + +Sat Jan 22 15:44:30 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_reparent): Correctly + fix up widget->window when the widget is a + NO_WINDOW container widget. + +Sat Jan 22 12:40:48 2000 Owen Taylor + + * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite + to account for the fact that feof() does _not_ + return TRUE on errors, and thus avoid infinite loops + when trying to use gdk_pixmap_create_from_xpm() + on unreadable values. + +Fri Jan 21 18:32:43 2000 Owen Taylor + + * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/. + +Fri Jan 21 16:24:08 2000 Owen Taylor + + * gdk/gdkgc.c (gdk_gc_set_dashes): Change from + gdk_gc_set_dashes to take gint8 instead of gchar to + make it clearer that it is _not_ a NULL terminated string. + + * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c + gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch] + gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string + arguments. + +Thu Dec 30 04:51:05 1999 Tim Janik + + * gtk/gtkvscale.c (gtk_vscale_pos_background): + * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the + background size relative to our allocation, guard against small + allocations, we may have not yet been size allocated. + +Thu Dec 2 10:59:14 1999 Owen Taylor + + * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3, + not just version == 3. We implement all 3 + most of 4 - + (we don't support matching text/plain;charset=iso-8859-1 + to a dest that expects text/plain). We'll still advertise + 3 to be safe, but any client implementing version >= 3 + must interoperate with 3. + +Tue Mar 14 11:53:31 2000 Owen Taylor + + * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground, + background and gc members, add a warning in gtk_tooltips_set_color() + indicating that this function is deprecated. + +Thu Mar 9 22:10:56 GMT 2000 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update: + - Minor cleanups (Emmanuel, me) + - New questions: + I need to add a new signal to a GTK+ widget. Any idea? (timj) + How can I retrieve the text from a GtkMenuItem? (timj) + How do I validate/limit/filter the input to a GtkEntry? (me) + Memory does not seem to be released when I free the list + nodes I've allocated (timj) + +2000-03-07 Tor Lillqvist + + * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes: + (gdk_win32_gdi_failed) New function for reporting errors from GDI, + for which it is no use to call GetLastError onWin9x. + (gdk_other_api_failed) New function, for general error + reporting without calling GetLastError. + (gdk_win32_api_failed) OTOH, this function always calls + GetLastError. (gdk_win32_last_error_string) Remove this function, + GLib has the equivalent now. + + * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to + call them with function name, file name and line number in the + arguments. + + * gdk/win32/*.c: Use the new macros for reporting errors from GDI + functions. + + * gtk/gtk.def: Add some missing entry points. + + * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and + gtk_paned_set_gutter_size, which don't exist any longer, as void. + + Fixes by Hans Breuer: + + * gdk/makefile.msc: Update for debugging. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake + implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or + PS_DASHDOTDOT or PS_DASH styles depending on the number of entries + in the dash_list. + + * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in + the x11 backend. + + * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro. + + * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h. + +2000-03-04 Tor Lillqvist + + * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store + just pixel value of background colour. + + * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function + containing code snippet previously duplicated in a couple of + places. + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use + gdk_colormap_color. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate + GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate + events for autorepeated Shift, Control and Alt keys. Use + gdk_colormap_color. + + * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the + pointer is inside the window the cursor of which we are setting, + call SetCursor immediately. + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: If we don't have the build number stamp + file, use zero. + + * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and + gtk_paned_set_gutter_size as empty. + + * gtk/gtk.def: Remove gtk_paned_set_gutter_size. + +Tue Feb 29 13:10:00 GMT 2000 Tony Gale + + * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h + gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c + docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml + docs/gtk_tut.sgml docs/gtk.texi TODO: + + Spelling/grammar fixes from Martin Buchholz + +Sat Feb 26 11:46:25 GMT 2000 Tony Gale + + * gtk/gtkcalendar.c: Implement num_marked_dates, + and don't emit mutiple day_selected signals on + month_prev. + +2000-02-25 Jonathan Blandford + + * docs/make-todo (lineno): let title and logo be configurable so + that GNOME can use this script too. + + * TODO.xml: added logourl and a title + +Fri Feb 25 11:12:00 2000 Owen Taylor + + * TODO.xml: Added some UI items, and an explanatory + comment at the top of the file. + +Thu Feb 24 09:07:28 2000 Tim Janik + + * TODO.xml: some updates, added abunch of new entries. + a note for those fiddeling with this file, when done + with it, invoke: + $ ./docs/make-todo TODO.xml >/dev/null + and correct output errors before comitting changes. + +Wed Feb 23 22:59:50 2000 Owen Taylor + + * TODO.xml: Added XML-structured TODO file. + * docs/make-todo: python script to turn TODO.xml into + pretty XML output. + +2000-02-23 Jonathan Blandford + + * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to + the function to let it draw the seven dots, instead of the old, + much maligned, method. + (draw_dot): New function to draw a dot. + + * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation + to draw the handle inside the border width as opposed to outside. + Use paint function instead of gdk_draw_point. + + * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation + to draw the handle inside the border width as opposed to outside. + Use paint function instead of gdk_draw_point. + + * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu): + Change indenting to be more GTK like. + +Wed Feb 23 10:54:14 GMT 2000 Tony Gale + + * docs/gtk_tut.sgml: New section on GtkCalendar + * examples/calendar: Update example code + +Tue Feb 22 13:54:12 GMT 2000 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +2000-02-19 Anders Carlsson + + * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE + to prevent the scroll event to be propagated upwards. + +Fri Feb 18 14:37:29 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove + OwnerGrabButtonMask from button entries for + GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE. + + * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL + to the event mask (which will result in button/press release + being added to the event mask on Unix) so scrolling works + for layouts in scroll windows. + + * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK. + + Patch from Anders Carlsson to add + a scroll event. + + * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel + scrolling to the "Test Scrolling" part of testgtk. + + * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal. + + * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched + it against GDK_SCROLL. + + * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new + way of mouse wheel scrolling. + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise. + + * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise. + + * gtk/gtkmain.c: Removed previous mouse wheel hack. + + * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in + gdk_event_mask_table. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added + GdkEventScroll handler. + + * gdk/gdkevents.h: Added GdkEventScroll structure. + +Thu Feb 17 17:10:12 2000 Owen Taylor + + * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford + and Anders Carlsson to change the Paned widgets so that they + can be dragged from anywhere along the length. Also change + the way that this is drawn to make this apparent. + + * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch + from George Lebl to check that option_menu->menu is present + before getting history. + +2000-02-14 Tor Lillqvist + + * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments + before the assertion for non-NULL segment list. + + * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values): + Seems that pattern brushes *must* be 8x8 pixels! At least on my + machine, but it might be display driver dependent. Sigh, so make + sure the stipple is that size. Does Windows suck or what? + + * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few + places. + +2000-02-13 Havoc Pennington + + * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init + refcount to 1 + (gdk_cursor_new): init refcount to 1 + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1 + +2000-02-13 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter + so that we don't have to do unnecessary settings to the HDC. + + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of + gdk_gc_predraw. + + * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where + the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct + GDI paths, call WidenPath to get the outline of the stroken path, + and then fill the outline (with the brush that was built from the + stipple). + + * gdk/win32/gdkgc-win32.c: Factor out common code from + _gdk_win32_gc_new and gdk_win32_gc_set_values into + gdk_win32_gc_values_to_win32values. Use correct colour for + SetBkColor() (Until now the code actually used a random colour in + the call to SetBkColor()... but that didn't show up as not many + GDI APIs use the background colour. Pattern (opaque stippled) + brushes do.) + + * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string, + gdk_win32_api_failed): New functions for error logging. + + * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro + WIN32_API_FAILED to call them, passing function or file name and + line number. + + * gdk/win32/*.c: Use the WIN32_API_FAILED macro. + + * gdk/win32/gdkprivate-win32.h: Store just the pixel values from + GdkColor for foreground and background in GdkGCWin32Data. + + * gdk/makefile.cygwin: Link in the resource object separately. + + * gdk/win32/rc/gdk.rc + * gtk/gtk.rc (New file) + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Update build number in DLLs automatically, + as in GLib. + +Sun Feb 13 08:54:45 2000 Tim Janik + + * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/. + * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): + * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): + * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the + parameters given and cursor->ref_count. coding style fixups. + + * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer, + not GtkWidget. + + * gtk/*.h: applied patch from Mathieu Lacage to + fix up widget macros and add _GET_CLASS() variant. + + * gtk/*.c: some GtkType fixups. + +2000-02-09 Tor Lillqvist + + * gdk/win32/gdkproperty-win32.c + * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW + were reversed. + +2000-02-04 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use + g_filename_to_utf8 to convert the font names Windows gives us from + whatever is the default codepage to UTF-8. + (gdk_font_load_internal) Use g_filename_from_utf8 for conversion + in the other direction. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste + error in debugging output. + +2000-02-02 Tor Lillqvist + + * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width + and height parameters to gdk_window_clear_area(). Not minus one. + +Wed Feb 2 11:58:05 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity + checks if the widget passed to gtk_drag_get_data() was not the + dest widget. + +2000-02-01 Tor Lillqvist + + * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and + g_filename_from_utf8 functions (which were added a moment ago to + GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed + size buffers. + + gtk_file_selection_get_filename returns the filename in the C + runtime encoding. It calls g_filename_from_utf8, but copies the + returned string to a static buffer, which is returned. I think + this is better than returning the result from g_filename_from_utf8 + directly, which would mean all apps that use it would have to free + the return value. Or should this function care about this issue at + all? Maybe a new function with clearly defined semantics. + + * gtk/gtkfilesel.h: Add comment about + gtk_file_selection_get_filename returning the filename in the C + runtime's encoding. + + * README.win32 + * gdk/gdk.def + * gdk/makefile.{cygwin,msc} + * gtk/gtk.def: Updates. + + * gdk/gdkcursor-win32.c: Initialise refcount. + +2000-01-31 Yuan-Chung Cheng + + * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS. + +2000-01-30 Havoc Pennington + + * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of + destroy + + * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned + + * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then + implemented in platform-specific code + + * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c + + * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an + underscore in front + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy): + put an underscore in front + + * gdk/gdkcursor.c: new file, implements + gdk_cursor_ref/gdk_cursor_unref + + * gdk/gdkcursor.h: Refcount GdkCursor + + * gdk/gdkcompat.h (gdk_cursor_destroy): compat + +2000-01-29 Tor Lillqvist + + * gdk/gdkwindow.h + * gdk/gdkpixmap.h: Remove prototypes for renamed functions. + +Tue Jan 25 11:43:21 2000 Owen Taylor + + * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix + structures to properly inherit from GtkWidget not GtkBin. + +Sun Jan 23 20:28:24 2000 Owen Taylor + + * gtk+.spec.in: Added lib/gtk+/include/* to %files + (bug #5178 - Peter Wainright) + + * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h + so that it will be installed. + (bug #4889 - "david d `zoo' zuhn" ) + +Fri Jan 21 16:29:28 2000 Owen Taylor + + * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument + for the GtkStyleClass vtable const. + + * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc + take a const string argument like GtkTranslateFunc. This will + require changes in use code. + +2000-01-19 Tor Lillqvist + + * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct + semantics (to mimic the X11 backend, which just calls XClearArea) + is to check for zero width (and height), and in that case use the + window's width minus x (height minus y). This fixes for instance + some redraw problems with gtkclist, which were easily noticeable + in the gtk file selection widget. + + (gdk_window_new): Don't set WS_EX_TOPMOST for dialog + windows. + +2000-01-13 Tor Lillqvist + + * configure.in + * gdk/Makefile.am + * gdk/x11/Makefile.am + * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright + (bug #5177). + * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown + out later. + +2000-01-09 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore + WM_MOVE for iconified or invisible windows. This fixes various + problems when minimising windows. Thanks to Bernd Herd. + +2000-01-05 Tor Lillqvist + + * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the + backend's draw_lines method, not draw_points. + +2000-01-02 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from + before Owen's reorganisation: Don't have queued_events and + queued_tail statics in this file, but use gdk_queued_events and + gdk_queued_tail. This makes exposure event compression work again. + + (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't + seem to be needed? + +1999-12-30 Tor Lillqvist + + * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include + gdkkeysyms.h to get the GDK_* keysym constants that are needed by + gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case() + doesn't do anything. + + * gdk/gdk.def: Add gdk_xid_table_insert. + + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkevents-win32.c + * gdk/win32/gdkinput-win32.c + + * gdk/win32/gdkwindow-win32.c: Remove the superfluous + extension_events field in the GdkWindowWin32Data struct. Use only + the extension_events field in GdkWindowPrivate. Previously one was + set, and the other one tested, which broke tablet + functionality. Thanks to Keishi Suenaga for pointing this out. + +1999-12-18 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents): + When handling a single character (text length == 1), don't handle + it as if it was UTF-8. + +1999-12-11 Tor Lillqvist + + * Makefile.am: Distribute README.win32. + + * gdk/Makefile.am + * gdk/win32/Makefile.am: Distribute Win32 files. + + * gdk/makefile.msc: New file. + + * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement + after label). + + * gdk/gdkprivate.h: Must mark also gdk_error_warnings and + gdk_error_code as GDKVAR, as they are referred outside GDK. + + * gdk/win32/makefile.msc: Update. + + * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More + tweaks. Check only if at least one of those Unicode subrange bits + we care for is set. If no code page bits are set, guess (wildly) + based on the charset. + + * gdk/win32/gdkinput-win32.c: Remove debugging leftover. + + * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is + non-NULL. + + * gtk/gtkdnd.c + * gtk/gtklayout.c + * gtk/gtkplug.c + * gtk/gtkselection.c + * gtk/gtksocket.c + * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as + appropriate. There must be a cleaner way to handle this? + + * gtk/gtkrc.c: Must include windows.h on Win32. + + * gtk/testgtk.c: No need to include gdkx.h. + + * gtk/makefile.cygwin: Correct invokation of genmarshal.pl. + +1999-12-07 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now, + the rbearing is set to the same as the width, but this should be + fixed. + +1999-12-06 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New + function. If Windows doesn't tell us what Unicode subranges a font + covers, guesstimate based on the codepages it covers. This will + hopefully help those Windows versions or fonts that don't give us + any useful Unicode subrange information with GetTextCharsetInfo. + Call this function in gdk_font_load_internal. + + * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc + minor changes. + +Fri Dec 3 14:09:50 1999 Owen Taylor + + * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history): + New function, long needed. + +Wed Dec 1 22:35:43 1999 Owen Taylor + + * gdk/gdkproperty.h x11/gdkproperty.c: Change + only_if_exists argument of gdk_atom_intern to + bool. + +1999-11-25 Tor Lillqvist + + * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): + Fix two copy&paste errors. + + * gdk/makefile.cygwin: Also rebuild DLL when the static archive in + win32 has changed. + + * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the + GdkWin32SingleFont struct. + + * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode + subranges of loaded fonts. Clear font signature first, in case + GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have + ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte. + + * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw): + Unoffset clip region. + +1999-11-23 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): set + event->any.window before calling filter functions. + +Fri Nov 19 10:34:41 1999 Owen Taylor + + * gtk/gtkgamma.h: Adapt cast macros to standard. + +[ Merges from 1.2 ] + +Tue Nov 16 10:15:54 1999 Owen Taylor + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_path): + If translation does not include a '/', use entire + translation instead of crashing. + +Sun Oct 31 22:21:11 1999 Tim Janik + + * docs/gtk_tut.sgml: + s/gtk_accel_group_attach/gtk_window_add_accel_group/. + +Sat Oct 30 09:09:09 1999 Owen Taylor + + * gtk/gtkselection.c (gtk_target_list_remove): Use + g_list_remove_link, not g_list_remove. + + [ From Geert Bevin ] + +Sun Oct 24 07:41:40 1999 Tim Janik + + * gtk/gtkclist.c (real_undo_selection): commented out g_print() + statement upon unselection (how the heck did that slip in?). + +Sat Oct 23 03:03:08 1999 Tim Janik + + * gtk/gtktext.c (gtk_text_freeze): + (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling + in frozen state (and aparently crashes). patch provided by Anders + Melchiorsen . + +Sat Oct 23 02:53:20 1999 Tim Janik + + * fix insensitive default/focus widget activation, + reported by Matt Goodall . + + * gtk/gtkwindow.c (gtk_window_key_press_event): + (gtk_window_activate_default): + (gtk_window_activate_focus): + return handled=FALSE for actiavtion of insensitive default + widgets. return handled=TRUE for activation of insensitive + focus widgets. don't activate in either case. + +Tue Oct 19 09:55:08 1999 Owen Taylor + + * gtk-config.in (lib_gtk): Switch order of @x_cflags@ + and $glib_cflags to match library order and in the + theory that an old version of GLib is more likely to + be in the include directory for X then vice-versa. + (Bug #2776) + +Tue Oct 19 09:46:49 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE + to determine the locale for fontsets, not LC_MESSAGES; + the user may want English messages with a handling + for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR + will still be broken) (Bug #2891) + +Tue Oct 19 20:36:42 1999 Changwoo Ryu + + * gtk/gtkrc.ko: Fixed the wrong number of "*"'s. + +Tue Oct 19 12:15:13 1999 Changwoo Ryu + + * gtk/gtkrc.ko: Changed the Korean default fontset. + +Fri Oct 8 02:32:47 1999 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug + where when scrolling to the left or top double exposes + were done, causing major slowdowns. + +Thu Oct 7 18:31:55 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset + names to lowercase and alphanumeric, before looking + them up. + + * gtk/Makefile.am: Install codeset variant gtkrc files + with normalized names. + +Thu Oct 7 22:52:42 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even + popup menus when the menu is already visible, but its parent + is still hidden, (happens after tornoff window got hidden). + +Thu Oct 7 11:09:55 1999 Owen Taylor + + * gtk/Makefile.am (install-data-local): Fix + a typo where gtkrc.vi_VN.tcvn5712 wasn't getting + deleted, causing error messages on install. + +Thu Oct 7 11:03:06 1999 Owen Taylor + + * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw + the handle as well, since we now sometimes ignore + exposes on the handle while resizing. + +Wed Oct 6 18:02:31 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid + extra g_free introduced in one of the last one or two + commits. + +Wed Oct 6 16:38:36 1999 Owen Taylor + + * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files + consistent, put each style that a gtkrc.* file creates + in a unique namespace, remove old files before installing. + +Wed Oct 6 14:31:16 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when + gtk_rc_init is called multiple times. (Yes, people who + do that have bugs in their code.) + +Tue Oct 5 11:36:57 PDT 1999 Manish Singh + + * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf. + Remove it since it's generated by the Makefile anyway + +Tue Oct 5 02:43:41 1999 Owen Taylor + + * gdk/gdkinputcommon.h (gdk_input_device_new): Free + device->info.axes for core pointer. + +Thu Sep 30 13:55:25 1999 Owen Taylor + + * gtk/testgtk.c (destroy_idle_test): Rename idle to + idle_id, to deal with obsolete, broken C libraries. + +Mon Sep 27 02:50:15 1999 Owen Taylor + + * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in + allocation->x/y twice! + + * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough() + consistent with gtk_vscale_pos_trough(). + +Sun Sep 26 19:44:34 1999 Owen Taylor + + * gtk/gtkcontainer.c (gtk_container_queue_resize): We may + be queueing a resize on a toplevel container between + the time we show it and when we map it. So, we need + to test GTK_WIDGET_VISIBLE() for toplevels, and only + use GTK_WIDGET_DRAWABLE() for child windows. + +Thu Sep 23 16:41:03 1999 Owen Taylor + + * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS + (fixes bug #2144) + +Fri Sep 24 00:51:45 1999 Tim Janik + + * gtk/gtkcontainer.c (gtk_container_queue_resize): check for + container DRAWABLE (instead of VISIBLE), so we don't queue + resizes on non-toplevel containers. + +Sun Sep 19 18:13:31 1999 Owen Taylor + + * gtk/gtkselection.[ch]: Make the data argument + const guchar *. + +Sat Sep 18 21:27:40 1999 Owen Taylor + + * gtk/gtkwindow.c: Try to behave sensibly if + the focus widget is the window itself. (Should + we allow this at all?) + +Fri Sep 17 09:57:15 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_set_sensitive): + * gtk/gtknotebook.c (gtk_notebook_set_scrollable): + * gtk/gtknotebook.c (gtk_notebook_set_show_border): + * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args + in prototypes and implementations consistent (Tomas Ogren). + + * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag + before the widget is unparented (reported by damon). + + * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char, + since we provide unsigned data anyways. + +Thu Sep 16 21:32:01 1999 Owen Taylor + + * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay + the call to gtk_tooltips_layout_text() until later. + + * gtk/gtktooltips.c (gtk_tooltips_draw_tips): + Call gtk_widget_ensure_style() before using the style. + +Wed Sep 15 02:52:19 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_event): Added workaround + for old widgets that don't propagate draws to all + children. (Namely gnome-dock for gnome-libs <= 1.0.16) + +Tue Sep 14 19:22:19 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent + for a redraw but just the widget that requested the resize. + +Tue Sep 14 18:29:47 1999 Tim Janik + + * gtk/gtkcontainer.c: added new widget level method + gtk_container_set_reallocate_redraws() and a GtkContainer flag + reallocate_redraws : 1 to reflect the setting, exported this through + the argument system as a boolean ::reallocate_redraws. + + * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws + on the widget because the allocation changes, do so as well for + widget->parent if the parent has reallocate_redraws set to TRUE. + with that containers requesting reallocation redraws get automatically + redrawn if their children changed allocation (this unfortunately + affects also other children that didn't change allocation, but we + cannot work around that before 1.3). + +Tue Sep 14 18:23:01 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width + _and_ height are >0 (not _or_). + + * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize() + instead of gtk_container_queue_resize(), which is a core gtk internal + function (must have been on crack when i queued that). + + * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so + we can check more reliably if we want to discard expose events. + * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING + flag. + + * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes, + we simply trust these events. for deciding whether to discard exposes, + check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING. + +Mon Sep 13 15:01:21 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore + queues of areas that are completely off screen. + + * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken + logic for handleboxes. + + * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity + check on width/height. + +Mon Sep 13 02:22:47 1999 Tim Janik + + * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements", + we are fine with using $@ the way we do (if we actually encounter + brokeness with $@ in VPATH builds because of additional path prefixes, + we need to use $(@F) actually). + +Mon Sep 13 01:34:53 1999 Tim Janik + + * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce + short lived bugs, that would allow language bindings to do surgeries + to our guts. + +Fri Sep 10 15:22:50 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo + where comparison was being done against an uninitialized + value causing intermittant results depending on + compiler flags. Also make it clearer that we aren't + ever initializing the child as 0x0 (though this will + be caught in gtk_widget_size_allocate()) + +Fri Sep 10 10:06:56 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_set_transient_for): Move + gtk_window_unset_transient_for() call after we do checks + involving the old transient parent. + [ From Lance Capser ] + +1999-09-07 Raja R Harinath + + * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create + an empty file. + +Mon Sep 6 00:11:56 1999 Lars Hamann + + * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has + no children. (Reported by: Chris Rogers ) + +1999-09-03 Raja R Harinath + + * gtk/Makefile.am (gen_sources): Improve VPATH builds. + `$@' is valid only in the build dir, not after we've done + `cd $srcdir'. Also use `test -f' instead of less portable + `test -e'. + +Fri Sep 3 15:59:56 1999 Owen Taylor + + * gtk/gtktext.c (correct_cache_insert): Rewrite + for simplicity, and hopefully correctness. + (Fixes bug #1322, which was a segfault when + on some insertions with the properties around + the insertion set up just wrong.) + + * gtk/gtktext.c (gtk_text_adjustment): When we receive + a "changed" signal, clamp the new value to the adjustment + bounds to avoid segfaulting if someone tries to change + the adjustment to a bogus value. (Bug #1795) + +Thu Sep 2 16:33:59 1999 Owen Taylor + + * gtk/gtkmain.c: Ignore unexpected destroy notifies + for children, for toplevel windows handle them + like delete_event. + + * gtk/gtkplug.c: Add an unrealize handler so that + we unref plug->socket_window when we are done + with it. + +Fri Sep 3 14:52:54 1999 Owen Taylor + + * gtk/gtktext.c (clear_area): Fix stupid signedness + problem that was causing background to sometimes + be misaligned. + +Fri Sep 3 12:26:33 1999 Owen Taylor + + [ Fixes pointed out by Ettore Perazzoli ] + + * gtk/gtkmenu.c (gtk_menu_position): Make + sure we never position menus with negative x, y, + since gtk_widget_set_uposition() can't handle that. + + * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): + Modify the positioning code a bit so that we always + put the top-left corner onscreen. (This is for + UI reasons, gtk_menu_position() now takes care of + gtk_widet_set_uposition() brokeness.) + +Fri Sep 3 03:06:30 1999 Tim Janik + + * gtk/Makefile.am: fixed up things for -jx, x > 1. + +Sun Sep 5 08:48:51 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the + RC style that is passed in. The lack of the ref + before was a bug. If people worked around this + bug, this will introduce a slight memory leak + in their code. The code should typically look like: + + rc_style = gtk_rc_style_new (); + [...] + gtk_widget_modify_style (widget, rc_style); + gtk_rc_style_unref (rc_style); + + * gtk/gtkwidget.c (gtk_widget_modify_style): Reset + the style if it was already set. + + * gtk/gtkwidget.c (gtk_widget_set_name): Only set the + style if it was set before. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * gtk/testgtk.c (main): Add a check to see if we + are being run from the correct directory and + to quit nicely if we are not. + + * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function + static. + +Thu Sep 2 23:00:03 1999 Tim Janik + + * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS. + + * gtk/gtkwindow.c: + queue resizes unconditionally (gtk_widget_queue_resize will figure + what to do if the window is not realized). + (gtk_window_move_resize): only recenter the window + for GTK_WIN_POS_CENTER_ALWAYS. + (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in + the same way as GTK_WIN_POS_CENTER. + +Thu Sep 2 22:39:27 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_reposition): check for the last position + with (!(info->last_flags & GDK_HINT_POS)) instead of + (!info->last_flags & GDK_HINT_POS). + + * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and + new_height unconditionally, because we use these values even if + !default_size_changed && !hints_changed. + comented the (default_size_changed || hints_changed) case with + respect to resize rejects from the window manager. + + * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values + in the zvt condition hack, since this includes the window hints, set + the hints after the handling_resize case. + + * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a + window is initially shown with to the geometry. + +Thu Sep 2 07:38:56 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): + s/size_changed/default_size_changed/g so i know what's + really going on (frying brain on smaller flame now). + +Thu Sep 2 05:47:47 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if + we have size_changed upon handling_resize. this is a gross + workaround for the broken zvt widget and should be removed in + 1.3 again (search for FIXME). + Owen provided an accurate comment for this: + + /* We could be here for two reasons + * 1) We coincidentally got a resize while handling + * another resize. + * 2) Our computation of size_changed was completely + * screwed up, probably because one of our children + * is broken. It's probably a zvt widget. + * + * For 1), we could just go ahead and ask for the + * new size right now, but doing that for 2) + * might well be fighting the user (and can even + * trigger a loop). Since we really don't want to + * do that, we requeue a resize in hopes that + * by the time it gets handled, the child has seen + * the light and is willing to go along with the + * new size. (this happens for the zvt widget, since + * the size_allocate() above will have stored the + * requisition corresponding to the new size in the + * zvt widget) + * + * This doesn't buy us anything for 1), but it shouldn't + * hurt us too badly, since it is what would have + * happened if we had gotten the configure event before + * the new size had been set. + */ + +Wed Sep 1 20:46:11 1999 Owen Taylor + + * gtk/gtkrc.c: deal properly with the fact that RC + style lists may include rc styles more than once. + + * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed + unused static function. + + * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a + stack of directories of RC files currently being + parsed and implicitely add them to pixmap path. + + This fixes a bug where the directory would get + appended then overwritten by pixmap_path declarations. + + (bug #1462, from Peter Wainright ) + + * gtk/gtkthemes.c (gtk_theme_engine_unref): Call + theme's exit function. (Patch from Peter Wainwright, + bug #1454) + + * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy): + Add a destroy() handler to take care of removing + group for menu item. (Fixes bug #1197) + + * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko + in warning message. + +Wed Sep 1 21:27:42 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server + roundtrip to figure window's width and height, since we know that + anyways from widget->allocation. + +Wed Sep 1 12:37:44 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_move_resize): Compute + the hints after we request the new size. + +Wed Sep 1 10:38:37 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_compute_hints): Removed + GTK_WIDGET_REALIZED() assertion - we can compute the + hints before we are realized. + + * gtk/gtkwindow.c (gtk_window_move_resize): Reorder + hint changing so that we have a value of hints_changed + when we decide whether to constrain the window size. + + * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix. + + * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups, + change back to G_MAXINT. + +Wed Sep 1 06:54:59 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize + new GtkWindowGeometryInfo, so fields like GdkGeometry geometry + contain uncluttered values. + (gtk_window_compute_hints): simply assert that window is realized + and that geometry_info is valid, since we rely on this anyways. + (gtk_window_constrain_size): major cleanups to the code. + if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height + for the base size, instead of the minimums. use 32767 as max width + and height (like in gtkwindow.c) instead of G_MAXINT. + +Wed Sep 1 04:41:25 1999 Tim Janik + + * cleaned up the GtkContainer.need_resize flag handling mess, we + only need to force resize requests when we were prematurely + realized, or our widget tree was modified when we were temporarily + hidden. handling these cases directly upon showing the window (i.e. + while the GdkWindow is still unmapped) avoids the need to wait for + a configure event response and therefore makes the GUI more snappier + and avoids blank windows during the roundtrip. + + * gtk/gtkwidget.c: + (gtk_widget_hide): + (gtk_widget_show): don't queue resizes on toplevels, they know how + to deal with matters. + + * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize + flag directly for not visible resize containers and spare us unecessary + signal emissions. + + * gtk/gtkwindow.c: + (gtk_window_realize): if we need to enforce premature size allocation, + queue a container resize so we are correctly resized later on. + (gtk_window_init): + (gtk_window_size_request): + don't freak around with the ->need_resize flag, + gtk_container_queue_resize() will care about that. + (gtk_window_show): + handle initial resizing issues here, we can handle matters better in + this place, especially since we know that our GdkWindow is still + unmapped. + (gtk_window_move_resize): + don't care about ->need_resize at all. + handle size changes properly that occoured while we waited for a + configure event. + +Tue Aug 31 15:58:46 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_set_uposition): + * gtk/gtkwindow.[hc] (gtk_window_reposition): + Move the hint setting code from gtk_widget_set_uposition + to here; set the hints so that we respect any previously + set geometry hints. + + * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't + change the window hints here or move the window here, + let that happen in gtk_window_move_resize(). + +Tue Aug 31 06:58:52 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due + to already queued resizes (and therefore redraws) on a widget, check + its anchestry as well. + + * gtk/gtkcontainer.c: + (gtk_container_queue_resize): clear resize widgets for resize + containers before aborting prematurely. this is especially important + for toplevels which may need imemdiate processing or their resize + handler to be queued. + (gtk_container_dequeue_resize_handler): added new internal function for + gtkwindow.c. + + * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a + configure event, take possible changes in window position into account + as well. + if we request a new window size, queue up a resize handler that will + last until the configure event response arrives. + combined the ->need_resize case (initial show) with the general size + (hints) changed case and added even more comments. + if !auto_shrink, only revert to the old allocation if the new size + is smaller than the current allocation. + +Tue Aug 31 11:55:20 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy, + gtk_window_set_geometry_hints + gtk_window_set_default_size): + When hints are set, queue a resize so that the hints will + be eventually reset on the toplevel. + + * gtk/gtkwindow.c (gtk_window_show): Use + gtk_window_compute_default_size(). Clear the need_resize flag + on the initail map so that we don't unnecessarily trigger the + resize code. + + * gtk/gtkwindow.c (gtk_window_move_resize): Split apart + into separate functions. Compare the hints we are setting + with what we set last time so that we can accurately + tell when we need to reset the hints. + + * gtk/gtkwindow.c (gtk_window_compute_default_size): New + function to figure out the size from requisition + and default_size. + + * gtk/gtkwindow.c (gtk_window_constrain_size): Function + from fvwm to constrain a size to the geometry hints. + + * gtk/gtkwindow.c (gtk_window_compare_hints): New function + to compare two sets of geometry hints. + + * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed + from gtk_window_set_hints(), just compute the hints, + don't set them. + + * gtk/gtkwindow.c (gtk_window_compute_reposition): Move + code from gtk_window_move_resize() to separate function, + rationalize a bit. + +Tue Aug 31 13:05:03 1999 Owen Taylor + + * gtkrc.h: Move the ref_count member out of the GtkRcStyle + structure into a new private structure. + + * gtkrc.c: Split GtkRcStyle into public/private. + In the private part, add a list of pointers to the + RcStyle lists this RcStyle participates in. + + * gtkrc.c: When a RcStyle is free, remove all + lists referencing it from the + realized_style_ht hash, and free those lists. + + * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call + gtk_rc_init(), since that adds the default styles + to the list of parsed RC files again. + + * gtk/gtkrc.c: Use gtk_rc_style_find() consistently. + +Thu Aug 26 14:14:42 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity + checks that ensure that a widget's allocation is at least 1 in width + and height. (GNOME note: this doesn't affect old panel code anymore, + because GtkSocket will request width and height of at least 1 since + Fri Jul 23). + + * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been + allocated yet (happens if the user realizes the window prematurely), + size request and allocate it. + (gtk_window_size_allocate): guard against guint underflows. + +Wed Aug 25 19:01:36 1999 Lars Hamann + + * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs + in gtk_built_sources, so gtk.defs gets built prior to all other + sources. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * gtk/Makefile.am: + invoke indent on gtkmarshal.*. + rewrote source generation rules, use COPYING as oldest source tag for + a piggyback rule to generate all sources from (don't touch it ;). + major cleanups, strip spaces on build rules for GNU Make. + + * gtk/genmarshal.pl: don't operate on hardcoded filenames but take + source and target files from commandline arguments. don't invoke indent. + +Sat Aug 21 14:07:36 1999 Lars Hamann + + * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize + notebook after switch to avoid drawing problems. + (Bug#856 Reported by: Theodore Roth ) + + (gtk_notebook_pages_allocate): don't map not visible tab_labels, + show them instead. + (Bug#1805 Reported by: Dave Cole ) + +Sat Aug 21 14:07:36 1999 Lars Hamann + + * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize + notebook after switch to avoid drawing problems. + (Bug#856 Reported by: Theodore Roth ) + + (gtk_notebook_pages_allocate): don't map not visible tab_labels, + show them instead. + (Bug#1805 Reported by: Dave Cole ) + +Wed Aug 18 09:20:10 1999 Tim Janik + + * gtk/gtkwindow.c: + we use window->need_resize from configure_event now, to indicate that + the gtkwindow should keep its allocation (e.g. because the user resized + the window through window manager handles). resize_count is now reliably + used to figure whether we got the allocation we requested from the + window manager. + configure events get queued as resizes now, the real stuff (size + computation and allocation) now only goes on in gtk_window_move_resize(). + GtkWindow's requisition now contains its *real* requisition (like all + other widgets), *not* taking usize into account. + geometry_info->last_{width|height} is now updated from set_hints() only + so it always contains the last hints we set for the window manager. + made some event handlers return TRUE instead of FALSE. + the overall code should be much more straight forward now, and the + significant code portions are accompanied by comments now. + (gtk_window_set_hints): + removed requisition argument and made it + fetch the requisition through gtk_widget_get_child_requisition. + we also don't move the gdkwindow here anymore, gtk_window_move_resize() + does that now. + (gtk_window_show): + ensure that the widget is realized before calling + gtk_container_check_resize() (and thus gtk_window_move_resize()), also + ensure that we got properly size requested and allocated before + realization. + (gtk_window_configure_event): + ignore plain window moves, or reallocate the widget tree through the + resize queue otherwise. + (gtk_window_move_resize): + mostly rewrote this function to figure window manager hints more + reliably, coalesce window moves and resizes to reduce configure events + and do actuall size allocations. + +Tue Aug 17 07:43:04 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets + that have a resize pending, because a redraw is already queued for them. + + * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal + hack to clear resize_widgets. + + * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets + for resize containers prior to size allocation. (this is also a bit + ugly, but avoids side effects for stopped emissions and is thus more + reliable). + (gtk_widget_unparent): removed disconnect call for clear_resize_widgets. + + * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this + function from gtk_tooltips_expose, as we connect to ::expose_event + *and* ::draw now. + +1999-08-18 Federico Mena Quintero + + * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity + checks. + (gtk_target_list_unref): Likewise. + + * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise. + +Tue Aug 17 15:47:07 1999 Owen Taylor + + * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar): + guard against division by zero. (Fixes bug #1339) + +Tue Aug 17 10:56:49 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_move_{forward,backward}_word): + Prevent the trivial leak of information of allowing + word motion when the entry is not visible. + +Tue Aug 17 10:28:52 1999 Owen Taylor + + * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate + modality to error dialog as well as confirmation dialogs. + (Bug #1803, reported by Rosanna Wing Sze Yuen) + +Wed Aug 11 01:04:57 1999 Owen Taylor + + * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor + tree->view_lines. + (gtk-guy-990611-3.patch: Guy Harris ) + + * gtk/Makefile.am (install-data-local): Solaris apparently + has various troubles with ln -f; use rm first instead. + (gtk-guy-990611-2.patch: Guy Harris ) + +1999-07-30 Raja R Harinath + + * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir, + use `cp' followed by `rm' (the `rm' was already there). + +July 30, 1999 Elliot Lee + + * configure.in: Fix autoconf warnings about cross compilation by + trying to provide sane defaults for AC_TRY_RUN. + * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir), + put them into $(srcdir) when generated. Also add a dependency of + gtksignal.h on gtkmarshal.h for -j builds. + * gtk/gtk(dnd,style,gamma).c: Minor warning fixes. + +Wed Jul 28 09:29:19 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main_iteration_do): Added missing + GDK_THREADS_{LEAVE,ENTER} pair. + (From Paul Fisher ) + +Fri Jul 23 01:00:15 1999 Tim Janik + + * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested + width and height are always >0 (owen). + +Fri Jul 23 00:00:47 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent + change that assured that a widget's allocated with and height are + always >1, since this breaks *buggy* panel code. unfortunately this + back-breaks the gimp's color selector. + + * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our + allocation is always >0 in width and height, before sending the + configure event; this is a *gross* hack to get the gimp back to work. + + * marked both cases with TODO-1.3 + +Wed Jul 21 15:47:39 1999 Owen Taylor + + * gtk/gtktext.c: Don't display wrap indicators when + text is not editable and word wrap is on. + +Wed Jul 21 08:21:40 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case + option menus here as they are not derived from menu shell, assure that + the option menu has a menu we can add items to. + +Tue Jul 20 23:29:48 1999 Tim Janik + + * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation-> + width/height to (gint) before calculations and check against < 0 to + avoid guint wraparounds. + +Sun Jul 18 00:35:49 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated + width and height is never zero. sanity check both dimensions against + 32767 and issue a warning if the allocation is greater than that. + +Wed Jul 7 15:03:30 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_events_pending): Unlock around call + to g_main_pending() as well. + +Wed Jul 7 14:59:01 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main_iteration): Unlock around + call to g_main_iteration() - since that will regrab + GTK+ lock to process events. + +Thu Jul 1 15:01:55 1999 Owen Taylor + + * gtk/gtkwindow.c + - Regularize with the rest of GTK+ by making widget->requisition + not reflect the set_usize() + - Always recompute geometry hints, then check if they + changed before sending them to the X server. The + previous checks for changes would fail in a number + of circumstances. + +Thu Jul 1 11:55:59 1999 Owen Taylor + + * gtk/gtkstyle.c: Include for strcmp(). + +Wed Jun 30 19:26:36 1999 Owen Taylor + + * gtk/gtkdnd.c: + - Code cleanups + - Instantaneously update on modifier key presses + - Allow cancellation of the drag with Escape. + +Tue Jun 29 17:04:09 1999 Owen Taylor + + * gtk/testgtk.c (create_handle_box): Set the policy + to auto_shrink - otherwise the appearance is rather + strange when flipping between horizontal and vertical. + +Mon Jun 28 09:29:52 1999 Tim Janik + + * gtk/gtkwindow.c: add ::default_width and ::default_height arguments. + (gtk_window_set_default_size): don't change a value if it's < 0. + queue a resize. + +Sun Jun 27 11:00:33 1999 Tim Janik + + * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts. + +Mon Jun 28 12:08:25 1999 Owen Taylor + + * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't + add an extra "/" when concating "/" + filename. + (From Matt Grossman ) + +Mon Jun 28 10:57:12 1999 Owen Taylor + + * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask + for fg_gc if we set it for drawing pixmap. + +Tue Jun 15 12:45:12 1999 Owen Taylor + + Fixes from Peter Wainwright + + * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is + already set, call old engine's destroy function and + unref the old engine. + +Thu Jun 10 17:59:38 1999 Tim Janik + + * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize. + +Wed Jun 9 15:13:16 1999 Tim Janik + + * gtk/gtkaccelgroup.h: mark certain functions as internal. + +Wed Jun 9 13:48:28 1999 Tim Janik + + * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the + expand behaviour changed. + + * gtk/gtklabel.c (gtk_label_set_pattern): + (gtk_label_set_justify): + (gtk_label_set_line_wrap): + don't bother invoking queue_clear, the reallocation does + that for us, always free_words so the upcoming resize will + relayout the label's contents. + +Wed Jun 9 12:50:48 1999 Tim Janik + + * applied argument implementation patches from Elena Devdariani + . + + * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size, + ::space_style, ::relief + * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size + * gtk/gtkpreview.c: ::expand + * gtk/gtkpaned.c: ::handle_size, ::gutter_size + * gtk/gtknotebook.c: ::homogeneous + * gtk/gtklabel.c: ::wrap + * gtk/gtklist.c: ::selection_mode + * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge + * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y + * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity + * gtk/gtkclist.c: ::sort_type + * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle + * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child + +Tue Jun 1 23:38:38 1999 Owen Taylor + + * gtk/gtkstyle.c: Removed ill-thought-out part of last + comment. + +Tue Jun 1 23:30:09 1999 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_attach): Get the reference + counting right when we have to attach a new style + for a different visual. (Chi-Deok Hwang ) + + * gtk/gtkstyle.c: Documented the refcounting + peculularities of gtk_style_attach. + +1999-06-01 Tim Janik + + * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid + window types. + + * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead + of GTK_TOPLEVEL for creating the window. + +1999-06-01 Tim Janik + + * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is + the last argument (reported by Per Winkvist). + +Tue May 25 13:13:12 1999 Owen Taylor + + Fixes for invisible XOR lines (Frank Loemker + ) + + * gtk/gtkclist.c (gtk_clist_realize): Always use + a non-zero pixel for GDK_XOR. + + * gtk/gtkvpaned.c gtk/gtkhpaned.c: + Use GDK_INVERT instead of GDK_XOR. + +Wed May 12 21:56:40 1999 Lars Hamann + + * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed + signals if h/voffsets differ from adjustment values. + Reportet by Jerome Bolliet + +Mon May 10 04:20:41 1999 Tim Janik + + * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate + ::selection-done emissions up to the topmost menu shell. + +Fri May 7 10:15:14 1999 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset + the user data on the window before destroying it. + + * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an + unrealize handler to take care of destroying + notebook->panel properly. + (Bug #1198 - Morten Welinder ) + + * gtk/gtktext.c (expand_scratch_buffer): Fix reversal + of g_new and g_realloc to stop memory leak. (Actually, + we could just use g_realloc(), but I'm not 100% sure + that is portable). + (Bug #1196 - Morten Welinder ) + +Wed Apr 21 00:42:08 1999 Owen Taylor + + * gtk/gtkplug.h: Removed stray GtkPlugButton declaration. + + * gdk/gdkfont.c (gdk_text_measure): Fix the return value + for fontsets. + + * gtk/gtkbutton.c (gtkbutton_expose): Fix warning + with bin/button confusion. + +Thu May 6 04:53:26 1999 Tim Janik + + * gtk/testgtk.c: in the ItemFactory test, link radio items together, + and show how preselection of radio items is done. + +Sun May 2 13:31:14 1999 Tim Janik + + * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): + * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert): + * gtk/gtktoolbar.c (gtk_toolbar_insert_element): + * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1): + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): + * gtk/gtktable.c (gtk_table_attach): + * gtk/gtklist.c (gtk_list_insert_items): + * gtk/gtkmenushell.c (gtk_menu_shell_insert): + * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): + * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): + * gtk/gtkbin.c (gtk_bin_add): + * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): + * gtk/gtkfixed.c (gtk_fixed_put): + * gtk/gtklayout.c (gtk_layout_put): + general fixups to container_add logic. always realize child if + child->parent is realized, only map the child and queue a resize + if child and child->parent are both visible. + +Fri Apr 30 09:02:28 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall + instead of gtk_container_foreach to walk and unrealize children, so + composite children get also unrealized. + (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to. + (gtk_widget_map): assert that the widget is visible (basic constrain). + (gtk_widget_real_map): assert that the widget is realized (basic + constrain). + +Fri Apr 29 00:53:20 1999 Tim Janik + + * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak. + +Tue May 4 09:32:08 1999 Owen Taylor + + * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc + file for iso-8859-2 locales. + + * configure.in (ALL_LINGUAS): ALL_LINGUAS update. + +Tue Apr 27 16:38:32 1999 Owen Taylor + + * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES. + (Pointed out by andy@rz.uni-karlsruhe.de and others). + Remove some suspicious and useless lines. + +Tue May 4 08:44:08 1999 Owen Taylor + + * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use + width,height = 0, 0 to mean - here to edge of window, + instead of -1, -1, since the former is all we support. + +Tue May 4 08:34:43 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main): Correctly free list nodes + when removing from quit_functions list. + +Tue Apr 27 14:17:16 1999 Tim Janik + + * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable. + +Tue Apr 27 18:23:35 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): + When redrawing characters on non-visible entry, use appropriate + '*' character. (Bug #1130 - Jean-Marc Jacquet ) + +Tue Apr 27 01:31:40 1999 Lars Hamann + + * gtk/gtkclist.c (drag_dest_cell): compute destination cell + from drag coordinates. + (gtk_clist_drag_data_received) (gtk_clist_drag_motion): + use drag_dest_cell. + + * gtk/gtktree (drag_dest_cell) + (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise. + (Bug #1129) + +Wed Apr 21 21:26:11 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize + translate_* fields. + (gtk_item_factory_finalize): invoke translate_notify independant from + translate_data. + (gtk_item_factory_set_translate_func): likewise. + (gtk_item_factory_destroy): only remove ifactory pointer from those + widgets that belong to us (stupid me). + +Mon Apr 19 12:05:31 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of + rc_style list when lookup succeeeds. + +Thu Apr 15 01:11:24 1999 Lars Hamann + + * gtk/gtkctree.c (resync_selection): + * gtk/gtkclist.c (resync_selection): fixed undo_selection bug. + * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection + bug. + +Fri Apr 9 19:22:19 1999 Owen Taylor + + * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c: + Add some missing GDK_THREADS_ENTER()/LEAVE around + timeouts. (Patches from Sebastian Wilhelmi ) + +Thu Apr 8 20:10:33 1999 Tim Janik + + * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate() + rather than emit_by_name. + + * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference + on the widget across multiple signal emissions. + (gtk_editable_delete_text): same here. + (gtk_editable_class_init): set widget_class->activate_signal after + editable_signals[ACTIVATE] has been created. + +Wed Apr 7 22:59:47 1999 Owen Taylor + + * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp + position here prematurely -- we might not have the + right ->min_position and ->max_position yet. + +Tue Apr 6 16:38:51 1999 Owen Taylor + + * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request): + Add error traps so if the other end of the connection + dies, we survive. + + * gtk/gtkselection.c (gtk_selection_notify): Clean + up properly when selection property retrieval fails. + + * gtk/gtkselection.c (gtk_selection_request): Correctly + reject SelectionRequest notifies where the handler + returns no data. + +Tue Apr 6 12:24:21 1999 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight + when we've previously highlighted. + + * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't + emit two "drag_leave" signals for Motif drops. + + * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send + back the correct status messages when dropping from + Motif onto a proxy window that is rejecting the + drop. + +Sat Mar 27 23:32:13 1999 Tim Janik + + * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free + the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal() + to compare two argument values. added gtk_arg_to_valueloc() to set a + variable from an arg through its location (pointer). + + * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of + gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected + as gfloat*, uchars are collected as guchar*, ints are collected as + gint*, etc... + +Mon Mar 29 17:45:47 1999 Owen Taylor + + * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c: + Include instead of . + + * gtk/gtkstyle.c: Fix double include of gtkthemes.h + (actually, a lot more duplicate includes occur if + you trace through the sequence of #include's) + gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu + +Mon Mar 29 17:02:58 1999 Owen Taylor + + Patches from Akira Higuchi + gtk-a-higuti-990322-[0-3] + + * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS + that was causing -DX_LOCALE not to work. + + * gtk/gtkrc.c (gtk_rc_init): + X_LOCALE will never have LC_MESSAGES defined + +Thu Mar 25 12:38:31 1999 Tim Janik + + * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from + g_get_home_dir() (gtk-pmc-990123-0.patch.gz). + + * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/ + left/right as well (gtk-michael-980726-0.patch.gz). + + * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/ + for pointer values, use gchar instead of char. fixed uline allocation + leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem + chunks instead of G_ALLOC_ONLY. + (gtk_label_size_request): always alter requisition as passed and leave + widget->requisition alone. + (gtk_label_set_text): allow NULL strings. + (gtk_label_new): likewise. + +Wed Mar 24 09:24:03 1999 Tim Janik + + * gtk/gtkdrawingarea.[hc]: type/macro fixups. + +Mon Mar 22 05:51:34 1999 Tim Janik + + * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible + *and* mapped (i.e. drawable). + (gtk_bin_expose): only send exposes to drawable children. + + * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable. + (gtk_box_expose): only send exposes to drawable children. + + * gtk/gtkhscale.c (gtk_hscale_draw): + * gtk/gtkvscale.c (gtk_vscale_draw): + hm, this is an ugly one. we first compute the size of our trough area + here (window relative) and then check intersection with the draw_area + which is parent relative because we're a NO_WINDOW widget, so we need + to offset the trough area by allocation.x and allocation.y before the + check. (this must not be done for the background area though, since + that's already computed parent relative). + +Mon Mar 22 00:41:39 1999 Lars Hamann + + * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary, + unrealize title buttons. + +Fri Mar 19 00:00:22 1999 Lars Hamann + + * gtk/gtkclist.c (gtk_clist_column_title_passive) + (gtk_clist_column_title_active): + only connect/disconnect to GtkWidgetClass::event to block mouse events. + + * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): + zero initialize event, removed superfluous gdk_window_get_pointer call + + * gtk/gtklist.c (gtk_list_vertical_timeout) + (gtk_list_horizontal_timeout): removed superfluous + gdk_window_get_pointer call + +Wed Mar 17 09:00:00 1999 Tim Janik + + * plugging problems reported by "Bruce Mitchener, Jr." + due to a purify session. + + * gtk/gtkstyle.c: + (gtk_style_ref): + (gtk_style_unref): assert ref_count to be > 0. + + * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize + the requisition. + (gtk_clist_set_shift): likewise. + + * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the + adjustments. + + * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the + event before sending it and set send_event to TRUE (which needs to + be done for *all* synthesized events). + (gtk_list_vertical_timeout): likewise. + + * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory + leaks. + + * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event + to TRUE when synthesizing events. + +[ *** end of merges from 1.2 *** ] + +1999-11-21 Tor Lillqvist + + * gdk/gdkconfig.h: Remove, as this is a file generated by configure + (or copied from gdkconfig.h.win32 on Win32, sigh). + + * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL. + + * gdk/gdk.c (gdk_keyval_convert_case): Fix typo. + + * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line. + + * gdk/gdkconfig.h.win32: New file. + + * gdk/win32/makefile.cygwin: Build just a static archive here. + + * gdk/makefile.cygwin: New file. Get the win32-specific stuff + for the DLL from the static archive built above. + + * gdk/gdk.def: Moved here from the win32 subdirectory. + + * gdk/win32/*: Adapt for the changed private struct organisation. + + * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now. + +Sun Nov 21 16:44:35 1999 Stefan Jeske + + * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support + for wheel mice (buttons 4 and 5). + +1999-11-18 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor + drawables use just the pixel field in the foreground and + background GdkColor of the GdkGC. + + gdk_gc_set_{fore,back}ground() are called in the GIMP with + GdkColors containing uninitialized (red,green,blue) fields, and + just the pixel field filled in, and furthermore in the + visual-dependent format as returned by gdk_rgb_xpixel_from_rgb(). + It thus turns out that we really don't need to have the full + GdkColor for fg and bg in GdkGCWin32Data after all. Will change + it later to have just the pixel values. + +Mon Nov 15 17:17:51 GMT 1999 Tony Gale + + * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/ + +Sat Nov 13 22:30:29 GMT 1999 Tony Gale + + * docs/gtkfaq.sgml: threads example from Erik Mouw. + New question on GtkLabel background colors. + + * docs/gtk_tut.sgml: + - Correct the example code callback + function definitions. + - Update the gtkdial example code, from Frans van Schaik. + - Update setselection.c to current API. + + * examples/Makefile examples/*/*.c: Update to code + listed in tutorial. + +1999-11-10 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode + subrange table (from the "Developing International Software for + WIndows 95 and Windows NT" book) was missing the Hangul syllable + block... Get the loaded font's charset correctly. + + (Note that this, and the other *-win32.c files, still really are + the old ones, the win32 subdirectory is not ready for compilation + yet after the reorg.) + +Wed Nov 10 17:26:49 GMT 1999 Tony Gale + + * gtk/gtkclist.c: Fix off-by-one bug in parameter + check. + +Wed Nov 10 12:12:03 1999 Owen Taylor + + * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState() + on results of XQueryDeviceState(). + +Mon Nov 8 16:40:43 1999 Owen Taylor + + * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since + we need to accesss only ->children. We need an accessor + for the children. + + * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G + DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer() + to get rid of gdkx.h include. + + * gtk/gtkctree.c: Get rid of #include + and random references to 'None'. + + * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c + Get rid of unused #include + + * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include + gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from + gdkconfig.h. + +1999-11-08 Tor Lillqvist + + * gdk/win32/gdkdraw.c + * gdk/win32/gdkfont.c + * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes + following yesterday's changes. (Unrelated to Owen's reorg.) + +Mon Nov 8 16:18:25 1999 Owen Taylor + + * gdk/x11/gdkinput-gxi.c: Add missing include, + fix GdkWindowPrivate => GdkDrawablePrivate. + + * gdk/x11/gdkinputprivate.h: include . + + * gdk/x11/Makefile.am (xinput_sources): Add missing + backslash to fix building with --with-xinput=none + +Mon Nov 8 14:47:04 1999 Owen Taylor + + Move all X specific code into the x11/ directory. + Aside from shuffling things around, did the following: + + * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add + gdk_arg_context_* - a simple argument parsing system + in the style of popt. + + * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch] + gdk/x11/gdkprivate-x11.h: + Remove X specific stuff from GdkDrawable and GdkWindowPrivate - + add ->klass and ->klass_data fields. The klass_data + field points to an auxilliary structure that is + windowing system dependent. + + * gdk/gdkfont.c: Make most of the measurement functions + simply wrappers around gdk_text_extents(). + + * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a + _gdk_font_strlen() function that hides the weird + behavior in gtk+-1.[02] where a string is interpreted + differently for 8-bit and 16-bit fonts. + + * gdk/gdkevents.c: Add a new function gdk_event_button_generate() + to store common code for synthesizing double/triple + press events. + + * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h. + Make all the function that modify an existing GC + simply wrappers around gdk_gc_set_values(). + + * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation + for throwing out later. + + * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate, + GdkImagePrivate and GdkColormapPrivate to have a + windowing system dependent part (GdkFontPrivateX etc.) + that "derives" from the system-independent part. + + * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c: + Got rid of the included-source-files for XInput in + favor of automake conditionals. (Which didn't exist + when XInput support was originally added.) + + * gdk/gdkrgb.c: Remove the visual id from the debugging + statements since that is X11 specific; print out + type/depth info instead. + + +Wed Nov 3 18:14:49 1999 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when + loading duplicates of hashed fonts. + + * gdk/gdk.c (gdk_keysym_convert_case): rename + gdk_XConvertCase to gdk_keysym_convert_case, allow + results to be NULL in the GTK+ style. + + * gdk/gdkcompat.h: Started compatibility header + for renames. + +1999-11-07 Tor Lillqvist + + * gdk/win32/gdkprivate.h: New font private structures, related to + fontsets. + + * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and + gdk_font_list_free(). On X11, will just be wrappers to + XListFonts() and XFreeFontNames(). On Win32, the code previously + in gtkfontsel.c is now here. + + New function gdk_font_xlfd_create(). On X11 will get the FONT + property of the font (for GDK_FONT_FONTs), or call + XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32 + builds a XLFD style name from the font information in the LOGFONT + struct(s). + + New function gdk_font_xlfd_free(), which correspondingly frees the + string returned by gdk_font_xlfd_create(). + + Implement fontsets on Win32. Add a function that iterates over a + wide char string and calls a callback function for each substring + of wide chars from the same Unicode subrange (and thus probably + available in the same real font). + + Improve the XLFD emulation a bit. + + * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix. + + * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k + Beta3, WM_IME_CHAR messages don't seem to contain the composed + multi-byte char as with the Active IMM on Win9x. Oh well, handle + WM_IME_COMPOSITION with GCS_RESULTSTR instead, use + ImmGetCompositionStringW() to get the composed Unicode chars. + + * gdk/win32/gdkgc.c + * gdk/win32/gdkdraw.c: Changes needed because of the font private + struct changes. + + * gdk/win32/gdk.def: Add the new functions. + +1999-11-04 Tor Lillqvist + + * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to + get the Platform SDK to get . + + * gdk/win32/gdkevents.c: More event handling fixes and + simplification. Never generate motion events with is_hint true. We + used to do that on bogus grounds earlier. Windows sends + WM_MOUSEMOVE messages on button events even if the mouse hasn't + moved, ignore these. + + * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets. + + * gdk/win32/gdkglobals.c + * gdk/win32/gdkprivate.h: Define a typedef for the pointer to + the TrackMouseEvent function, and use it. + + * gdk/win32/gdkwindow.c: Terminate widechar string with a zero + char before calling WideCharToMultiByte in order to get a string + for the window title. + + * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out. + + * gdk/win32/gdk.def: Remove obsolete functions. + + * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add + /nodefaultlib and /defaultlib switches. + + * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/. + +1999-10-31 Tor Lillqvist + + * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including + EuroSign). + + * gdk/gdktypes.h: Add note about wchar_t not necessarily being the + same type as GdkWChar, especially on Win32. + + * gdk/win32/*.c: Change gdk_root_parent to be a pointer. + + * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode + before passing to Windows GDI for drawing etc. Convert to the + system default codepage before passing to Windows as window + titles. + + * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to + support changing input locale on the fly. + + * gdk/win32/gdkevent.c: Support input language (keyboard locale) + on-the-fly changes. Convert incoming characters from the current + codepage to Unicode (and then to a UTF-8 multi-byte string) based + on the current input language. Use keysym<->Unicode mapping tables + and functions borrowed from xterm sources. + + Support IMEs (Input Method Editors) for CJK languages. On non-CJK + editions of Win9x, use the ActiveX-based Active IMM (Input Method + Manager) if available. IMEs and the Active IMM are available under + the disguise of Chinese, Korean and Japanese support for IE and + Outlook Express from "Windows Update" for Win98. On Win2k, the CJK + support is present in all editions (as long as you install it). + + Call DispatchMessage from gdk_events_queue() (and thus + gdk_WindowProc()), instead of duplicating the code in + gdk_WindowProc(). + + Reworked the grab handling and propagation code, factored out + duplicated code snippets into separate functions. Other cleanups, + too. + + * gdk/win32/surrogate-dimm.h: Provide just the bits we need from + the header describing the Active IMM. + + * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far + just do the same as for "single" fonts. + + * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from + gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle + the new keysyms from gdkkeysyms.h. + + * gtk/gtkfontsel.c (Win32): Load the font for the preview as a + fontset, so that gtkentry uses wide characters. + + * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call + GTk+'s system directory "gtk+", not "gtk". + +Sat Oct 30 13:17:18 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ update + +1999-10-21 Tor Lillqvist + + * gdk/win32/gdkprivate.h: Add more font private data. + + * gdk/win32/gdkfont.c + * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset + fonts and strings. Now works much better. You still have to + have a correct font selected, though. No fontset emulation yet. + +1999-10-19 Tor Lillqvist + + * gtk/maketypes.awk: Use G_OS_WIN32. + + * gtk/gtk.def: Add some missing entry points. Also some non-public + ones, but PyGTK porter claims to need them. + + * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the + built-in type generation. + +1999-10-14 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for + GDK_FONT_FONT fonts (which is all we have for now, we don't + emulate fontsets). The X11 version uses plain XDrawString in that + case, too. The string passed to gdk_draw_text_wc seems to be in + fact (at least, when used by gtkentry and gtktext) either in a + single-byte charset, or a DBCS. Not Unicode. + + This fixes the problem in gtkfontsel, where even if you had + selected a font with a non-Latin1 charset (windows-greek, for + instance), the preview still used Latin-1 glyphs. + + * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't + use GetTextExtentPoint32W, use GetTextExtentPoint32A. + (gdk_font_load): Recognize the demibold etc weights, even if we + don't have the corresponding constants in the headers. + (gdk_font_hash_insert): Use same hash mechanism as in the X11 + version. Should save font resources a bit, when we don't have + multiple HFONTs for the same font. + + * gdk/win32/gdkprivate.h: Add the names field as in the X11 + version. + +1999-10-11 ERDI Gergo + + * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default + X values + +1999-10-09 ERDI Gergo + + * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text + layout support (as mentioned on + http://www.jcinteractive.com/gnome-ui/software/widgets/) + +Wed Oct 6 12:46:17 PDT 1999 Manish Singh + + * gtk/fnmatch.c + * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/ + +1999-10-05 Jesus Bravo Alvarez + + * configure.in (ALL_LINGUAS): Added Galician (gl) + +1999-10-05 Tor Lillqvist + + * gdk/win32/*.[ch]: Corresponding changes as in X11 backend. + + * gdk/win32/gdkcompat.c: New file, actually provide an + implementation for the deprecated functions. (Just temporarily.) + + * gtk/gtkfilesel.c: Fix an #ifdef syntax botch. + + * gtk/makefile.{cygwin,msc}: Update gdk_headers. + + * gdk/win32/gdk.def gtk/gtk.def: Updates. + +1999-10-05 Kjartan Maraas + + * configure.in: Added "uk" to ALL_LINGUAS. + +Mon Oct 4 11:57:11 PDT 1999 Manish Singh + + * configure.in: correct checking for BeOS check + + * gdk/gdktypes.h + * gtk/fnmatch.c + * gtk/gtkfilesel.c + * gtk/gtkitemfactory.c + * gtk/gtkmain.[ch] + * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines + +Mon Oct 4 16:16:53 1999 Pablo Saratxaga + + * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset + encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic + languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used + by Bulgarian). + +Sun Oct 3 18:13:44 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_reset_shapes_recurse): + Fix a reference to window_private->destroyed. + + * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct + (ugly) setting of an internal GdkWindow member to use + a _slightly_ cleaner macro. + + * gdk/gdkprivate.h: Split GdkWindowPrivate into + GdkDrawablePrivate and GdkWindowPrivate. + Add extra macros for accessing GDK_DRAWABLE_ components. + + * *.[ch]: Massive adjustments for the above, use the + new macros in a lot of places. + +Sun Oct 3 15:16:24 1999 Owen Taylor + + * gdk/gdktypes.h: Make GdkDrawable the base type, + not GdkWindow. + +Sun Oct 3 15:08:44 1999 Owen Taylor + + * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function. + +Sun Oct 3 14:26:15 1999 Owen Taylor + + * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory. + +Sun Oct 3 14:16:23 1999 Owen Taylor + + * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with + gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp) + + * configure.in gdk/Makefile.am x11/: create x-specific subdirectory. + + * docs/gtk-config.1: Now autogenerated. + * docs/Changes-1.4.txt: started + +1999-10-03 Tor Lillqvist + + * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage + to #ifdef also here. + + * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those + Owen did to the X11 backend. + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use + ScrollWindowEx when blitting inside a window, it can't be correct + in the general case. + + * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling + WM_GETMINMAXINFO is easier. + + * gdk/win32/gdkimage.c (gdk_image_new): Create new image with + depth equal to the bitspixel value, not the visual's depth. + + * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth + to 24 even if the bitspixel value is 32. + + * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no + need to check for depth==32 when bpp==32, depth will always be 24. + +Fri Oct 1 18:03:36 1999 Owen Taylor + + * docs/Changes-1.4.txt: Started + + * gtk/Makefile.am (gdk_headers): Include all the new headers. + + * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces. + + * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private + into C file. + + * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput + header to gdkinputprivate.h. + + * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been + unused since before 1.2. + +1999-09-30 Tor Lillqvist + + * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32, + expand possible hex escapes in the font family (put there by + logfont_to_xlfd if the font name isn't a legal XLFD font family, + mainly if it contains slashes). (gtk_font_selection_create_xlfd): + On Win32, add hex escapes here, too. + +Wed Sep 29 19:55:35 1999 Owen Taylor + + * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11 + to #ifdef GDK_WINDOWING_X11. + +[ Merges from gtk-1-2 ] + +Wed Sep 8 07:13:29 1999 Tim Janik + + * configure.in: fixed "GNU Make" check to pass with new make version + 3.77.95. + +Fri Sep 3 16:04:41 1999 Tim Janik + + * gtk-config.in (--version): don't echo @GTK_VERSION@, but + @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the + AM_PATH_GTK() macros don't get confused by the -pre1. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * configure.in (REBUILD): Change check for perl5 + to check explicitely for v >= 5.002. (5.001 + does not work with our scripts.) + +Wed Aug 25 15:45:46 1999 Tim Janik + + * configure.in: evaluate $PERL for the perl version check. added + --disable-rebuilds to give the user an option to completely disable + any source autogeneration rules. + +Mon Aug 23 23:16:14 1999 Tim Janik + + * configure.in: evaluate $ac_make when checking for GNU Make. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * docs/Makefile.am: added generation.txt. + + * Makefile.am: require automake 1.4, build README from README.in and + INSTALL from INSTALL.in in dist-hook. + + * README.in: + * INSTALL.in: new files to autogenerate README and INSTALL from. + + * configure.in: figure whether we have GNU Make + + * docs/generation.txt: minor additions/corrections. + +Wed Aug 11 13:38:26 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +July 30, 1999 Elliot Lee + + * configure.in: Fix autoconf warnings about cross compilation by + trying to provide sane defaults for AC_TRY_RUN. + +Fri Jul 16 22:20:21 PDT 1999 Manish Singh + + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.3 + +Thu Jul 8 11:30:18 1999 Owen Taylor + + * INSTALL: Indicate that the --with-glib= configure + time flag is unsupported. + +Mon Jul 5 20:36:03 1999 Owen Taylor + + * docs/generation.txt: Added a file that gives + documenation about the autogeneration process for + various autogenerated files. + +Tue Jun 29 15:59:25 1999 Owen Taylor + + * configure.in (LIBS): Look for libgmodule in the + right location. + +Thu Jun 17 13:57:31 1999 Owen Taylor + + * docs/gtk_tut.sgml: Removed references to + code examples in my directory on gtk.org as + they should all be in the tutorial now. + + * docs/gtk_tut.sgml: Added sources for dial-test + and scribble-xinput programs that were previously + missing. + +Fri Jun 4 00:08:59 1999 Owen Taylor + + * TODO: Added entry about menu keyboard navigation, removed + some finished items. + +Mon May 31 00:11:24 1999 Owen Taylor + + * acinclude.m4: Standardize on func_dgettext + not func_gettext, so that the checks for dgettext + actually are paid attention to. + +Wed May 5 10:47:54 1999 Owen Taylor + + * configure.in (LIBS): Add $INTLLIBS into $LIBS + directly, rather than repeating the checks for + gettext. + + * INSTALL: Added information about gettext and + NLS support. + + * acinclude.m4 (LIBM): Check for dgettext, not + just gettext. This should hopefully fix things wrt + systems with old versions of GNU gettext installed. + +Tue Jun 29 15:59:25 1999 Owen Taylor + + * configure.in (LIBS): Look for libgmodule in the + right location. + +Thu Apr 1 16:58:10 PST 1999 Manish Singh + + * autogen.sh: add --enable-maintainer-mode + + * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS" + +Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson + + * docs/gtk-config.1.in: + docs/Makefile.am: + configure.in: gtk-config is now generated. + + * docs/gtk-config.1: Removed, now generated. + +Thu Sep 23 17:59:59 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't + handle CreateNotify itself, still put out a debuging message for + --gdk-debug=events. made the ReparentNotify debugging message more + verbose. + wrap xcoords translation for ConfigureEvents into an error trap, + a destroy event may already be pending, and in that case, the + actuall coordinate values are not at all critical. + +Sat Sep 18 22:24:15 1999 Owen Taylor + + * gdk/gdkcc.c: Stop leaking the color_hash all over + the place. Simplify and improve the logic. + +Fri Sep 17 09:57:15 1999 Tim Janik + + * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean) + for prototypes and function implementations consistent (reported + by Tomas Ogren). + +Tue Sep 14 18:23:01 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): tell if expose events have + send_event set in debugging output. + (gdk_compress_exposures): default initialize the event so we don't + operate on bogus values (namely send_event). + +Thu Sep 2 16:33:59 1999 Owen Taylor + + * gdk/gdkwindow.c: When we receive an unexpected + destroy notify on one of our windows, don't just + warn about it, also mark our windows as destroyed. + +Sun Sep 5 08:10:53 1999 Owen Taylor + + * gdk/gdkfont.c (gdk_font_hash_insert): Add + name => font and name => fontset hashes. The + name => fontset hash is a _big_ win since we + weren't previously caching fontsets at all and loading + fontsets is expensive. The name => font hash + is less of a win, but it does save us from doing + repeated XQueryFont calls on the same font. + + * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names + list so we can remove font/fontset from hash. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_atom_intern): Remove useless + and slightly confusing test. [ XInternAtom (,,TRUE) + will never return None ]. + +Sat Sep 4 08:39:26 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints) + gdk/gdkwindow.c (gdk_window_set_hints): + + Don't omit setting the properties if flags == 0 - + there may be an existing set of properties there + already. (Very old bug. Would it be better to + delete the property instead?) + + * gdk/gdkselection.c (gdk_selection_property_get): Fix + spelling error in comment. + +Wed Sep 1 14:05:30 1999 Owen Taylor + + * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push() + to avoid stomping over gdk_error_warnings. + + * gdk/gdkimage.c (gdk_image_new): compute image->bpp + as (bits_per_pixel + 7) / 8. This gives the same + result as before for multiples of 8, but actually + a "reasonable" value for 1bit or 4bit displays. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * gdk/Makefile.am: minor cleanups, strip spaces on build rules for + GNU Make. + +Tue Aug 17 07:43:04 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): give a debugging note when + discarding configure events. + +1999-08-18 Federico Mena Quintero + + * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the + refcount is greater than zero. + + * gdk/gdkwindow.c (gdk_window_unref): Likewise. + + * gdk/gdkfont.c (gdk_font_unref): Likewise. + + * gdk/gdkgc.c (gdk_gc_unref): Likewise. + + * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise. + +Wed Aug 11 01:04:57 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_property_get): Fix assumption + that format 32 => sizeof(item) == 4. It really is + sizeof(long). + +Tue Jun 29 23:02:42 1999 Owen Taylor + + * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't + core dump at all on X IO errors, only core dump + if --enable-debug for X errors. + +Thu Jun 24 17:06:23 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for + unknown window:" message. disabled ConfigureNotify discarding code, + because it led to events being processed out of order. + +Thu Jun 24 12:22:02 1999 Tim Janik + + * gdk/gdkglobals.c: preinitialize gdk_error_code to 0. + + * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since + we export this function, supress error warnings and don't reset the + error code in the first half of this function. + + * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error + code (instead of just -1) so gdk_error_trap_pop() reveals something + actually informative about the error that happened. + + * gdk/*.c: + don't rely on gdk_error_code being -1 if an error occoured, but just + gdk_error_code != 0. + +Thu Jun 24 11:50:07 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list + pointer *before* invoking the filter function, so we at least don't + crash if a filter is removed that is currently executed. window filters + *really* need to be made truely reentrant at some point. + +Mon Jun 14 11:10:15 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): print the atom name in the + PropertyNotify debug messages. + +Wed May 5 22:51:06 1999 Owen Taylor + + Patch from Sung-Hyun Nam + + * gdk/gdkim.c: Fix cut-and-paste errors for + x/y and PreeditAttributes/StatusAttributes. + +Wed May 5 22:24:21 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change + G_MAXINT to 2^16 to alleviate overflow problems in + various window managers. + +Wed Apr 21 00:42:08 1999 Owen Taylor + + * gdk/gdkfont.c (gdk_text_measure): Fix the return value + for fontsets. + +Wed May 5 12:42:01 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints): + Initialize size_hints.x and size_hints.y because kwm + brokenly pays attention to them. + (Bug #1181 - Lars Heete ) + +Wed May 5 11:38:56 1999 Owen Taylor + + * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the + return value of gdk_list_visuals(). + (Bug #1193 - Morten Welinder ) + +Tue May 4 11:12:56 PDT 1999 Manish Singh + + * gdk/gdkim.c (gdk_im_real_open): cast the return value of + XSetIMValues to (void *) when comparing to NULL, to workaround + the problem of some compilers barfing since older X headers don't + have the prototype for it. + +Mon Apr 19 10:11:12 1999 Owen Taylor + + * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak + for pseudocolor where colormap->colors was double + allocated. + + * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the + color value in the hash table with the pixel filled + in so when we do later hash table lookups, the color + value is correct. + +Sun May 2 15:29:45 PDT 1999 Manish Singh + + * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before + making the call + +Tue Apr 27 11:17:35 1999 Owen Taylor + + * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak + pointed out by Morten Welinder . + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Fri Apr 16 20:41:43 PDT 1999 Manish Singh + + * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines + + * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use + g_strdup_printf instead of calcing the length separately + +Tue Apr 13 02:49:33 1999 Owen Taylor + + * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG + that we don't do in many other places. (Fixing duplicate + #include of config.h) + + * gdk/gdkevents.c: include gdkinput.h _after_ config.h. + Otherwise, #ifndef XINPUT_NONE check in the latter + doesn't work. (Bug #546) + +Sun Apr 11 14:38:03 1999 Tim Janik + + * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color + "None" case insensitive. + +Tue Apr 6 16:38:51 1999 Owen Taylor + + * gdk/gdkselection.c: + Add error traps so if the other end of the connection + dies, we survive. + +Tue Apr 6 12:24:21 1999 Owen Taylor + + * gdk/gdkdnd.c (gdk_drag_motion): Separate out the + dest_xid field into two fields - one for the window + to send in messages, one to indicate the last looked + up window for caching purposes. This is needed, so + that Leave messages get the correct window. + +Mon Apr 5 13:21:30 1999 Owen Taylor + + * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare): + Fix warning created by people mucking around + with the gsource API. + + * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full): + Change mapping between GIOCondition and GdkInputCondition + to match the way the Linux kernel does it. This should + fix problems where closed pipes were no longer signalling + GDK_INPUT_READ on systems with a native poll(). + +Mon Apr 5 17:11:57 1999 Owen Taylor + + * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check + explicitly for the string "None" - it is in the XPM + spec and some servers treat unknown colors in odd ways + (like asking the user!) + +Thu Apr 1 16:58:10 PST 1999 Manish Singh + + * gdk/gdkevents.c: made "->" into a "." of previous change so + it compiles + +Thu Apr 1 18:41:25 1999 Owen Taylor + + * gdk/gdkevents.c (gdk_compress_exposures): Set the + window field of the event structure before calling + user filters. + +1999-03-31 Federico Mena Quintero + + * gdk/gdk.c (gdk_init_check): Use False as the last argument to + XInternAtom() here. This is a particularly Old And Nasty(tm) bug. + +Mon Mar 29 17:31:52 1999 Owen Taylor + + * gdk/gdkim.c (gdk_mbstowcs): Free the value of the + intermediate text property - prevents major memory + leak when gdk_use_mb. + gtk-d3august-990311-0: Bj|rn Augustsson + +Mon Mar 29 17:02:58 1999 Owen Taylor + + Patches from Akira Higuchi + gtk-a-higuti-990322-[0-3] + + * gdk/gdkfont.c (gdk_text_extents_wc): Make work when + sizeof(wchar_t) != sizeof (GdkWChar) + + * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS + that was causing -DX_LOCALE not to work. + + * gtk/gtkrc.c (gtk_rc_init): + X_LOCALE will never have LC_MESSAGES defined + + * gdk/gdk.c (gdk_init_check): + Remove --xim-preedit and --xim-status from argv properly. + + * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so + that the client window is present on the X server + before we pass it to the input method. + +Tue Mar 9 10:46:49 1999 Owen Taylor + + * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where + if --display is specified on the command line, than + the drag window will not be created on that display. + +Tue Mar 9 10:38:24 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where + lookups with only_if_exists == TRUE were inserting + bogus values into the atom cache. + +Wed Mar 17 09:00:00 1999 Tim Janik + + * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t), + then reset it to NULL. + + * gdk/gdkcolor.c: + (gdk_colors_free): + (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the + key for g_hash_table_remove() in both functions, this prevents us + from accessing possibly uninitialized portions of a GdkColor structure + where we are only interested in its pixel value. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + +1999-09-21 Tor Lillqvist + + * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting, + just to be sure. + + * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of + unused variables, leftovers from the X11 version. + + * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd. + + * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only + downcase fields on X11. + +Mon Sep 20 13:17:39 1999 Pablo Saratxaga + + * configure.in,po/pt_BR.po: added Portuguese Brazilian file from + Alex Sandro Queiroz e Silva + +1999-09-17 Tor Lillqvist + + * gdk/win32/gdk.def: Add gdk_threads_mutex. + + * gtk/makefile.msc: Correct path to libintl. + + Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in + use of gint vs. int, and gint vs. gboolean in headers and + definitions. Use GtkType for the *_get_type functions. Note that + these changes preserve binary compatibility. + + * gdk/gdk.c + * gdk/win32/gdk.c + * gdk/gdk.h: Fix inconsistencies: gint vs int. + + * gtk/gtkmain.c + * gtk/gtkclist.c + * gtk/gtkmenufactory.c + * gtk/gtknotebook.c + * gtk/gtkwidget.c: Fix inconsistencies, also gint + vs. gboolean. + + * gtk/gtkcolorsel.[ch] + * gtk/gtkcombo.[ch] + * gtk/gtkdrawingarea.[ch] + * gtk/gtkgamma.[ch] + * gtk/gtkhandlebox.[ch] + * gtk/gtkhpaned.[ch] + * gtk/gtkhruler.[ch] + * gtk/gtkplug.[ch] + * gtk/gtkpreview.[ch] + * gtk/gtkruler.[ch] + * gtk/gtksocket.[ch] + * gtk/gtkstatusbar.[ch] + * gtk/gtktoolbar.[ch] + * gtk/gtkvbbox.[ch] + * gtk/gtkvpaned.[ch] + * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type + functions. + + * gtk/gtkgamma.h: Fix bug, missing () in call of + gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. + +1999-09-14 Tor Lillqvist + + * gdk/gdkcolor.c (gdk_colormap_new) + * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak: + colormap->colors was allocated twice. + + * gdk/win32/gdk.c: Remove some unused stuff. + + * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the + colormap. + + * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type) + * gtk/gtklabel.h (gtk_label_get_type) + * gtk/gtktipsquery.c (gtk_tips_query_get_type) + * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType + in a couple of places, not guint. + +Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga + + * configure.in,po/et.po: added Estonian language file + +Wed Sep 1 14:36:12 CEST 1999 Pablo Saratxaga + + * configure.in,po/da.po: added Danish file + +Sun Aug 29 13:38:59 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: Minor FAQ Update + +Sat Aug 28 14:34:37 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ update + +1999-08-27 Tor Lillqvist + + Win32: Philippe Colantoni suggests a + way to get window contents continually refreshed while resizing. I + didn't like the effects myself, so it's not on by default. + + * gdk/win32/gdkprivate.h: New flag variable + gdk_event_func_from_window_proc, FALSE by default. + + * gdk/win32/gdk.c (gdk_init_check): Set above flag if the + environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we + are passed --gdk-event-func-from-window-proc. + + * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set, + and we have am event_func, call it instead of enqueing the event. + +1999-08-23 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon + Kelley: Set expose_count in GdkEventExposes correctly. + + * gdk/win32/gdkwindow.c: Remove dead code (#ifdef + MULTIPLE_WINDOW_CLASSES). + + * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer + for bug in NT, apparently NT *does* draw the end pixel, too, in + LineTo with a one-pixel pen, so we don't have to do it ourselves. + +1999-08-21 Tor Lillqvist + + Improvements by Hans Breuer: + + * gdk/win32/gdkwindow.c (RegisterGdkClass): New function + + * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the + CS_?REDRAW flags as they cause lots of (late) redraws when "show + window contents while dragging" is turned on. Allocate at least + one unique class for every GdkWindowType. If support for single + window-specific icons is ever needed (eg. Dialog specific), every + such window should get its own class. + +1999-08-19 Tor Lillqvist + + * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste + error that caused crashes. + +1999-08-17 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one + window, use ScrollWindowEx, and call UpdateWindow. This prevents + bugs when for instance part of the window was outside the + display. Thanks to Philippe Colantoni for finding and fixing this. + +1999-08-16 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial + endpoint calculations which were totally wrong. (A little RTFMing + helps a lot ;-) + + * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc + from a separate directory, not from gettext, because of licensing + issues (we want to use the LGPL version). + + * README.win32: Mention the intl from glibc vs from gettext issue. + +1999-08-13 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs + in the key event handling: Now AltGr chars work again. Also, + now Alt-digits are passed up as well as Control-digits. + Pass keypad plus and minus as normal plus and minus. + +Wed Aug 11 13:38:26 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +1999-07-25 Tor Lillqvist + + * README.win32 + * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without + the Wintab SDK. + + * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work + OK, but getting closer. Guard against bogus tilt data from Wacom + ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to + enable easier building without Wintab. + + * gdk/win32/gdkinput.h + * gdk/win32/gdkevents.c + * gdk/win32/gdkwindow.c: Minor changes related related to above. + + * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11 + code. As we have just one visual on Win32, no sense to have it in a + table, and no need for the hash table. + + * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look + better on white background. + +1999-07-21 Tor Lillqvist + + * README.win32: Update gcc build instructions. Mention gettext is + GPL. + + * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct + supported cursor size with GetSystemMetrics. + + * gdk/win32/gdkfont.c + * gtk/gtkfontsel.c: Guard against some font weight and charset + symbols being undefined (in mingw32 headers). + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin + * gtk/gtkthemes.c: No longer need to have differently named + gcc-built DLLs when using gcc-2.95 and -fnative-struct. + +hu Jul 15 13:33:15 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: Long awaited FAQ update. + +1999-07-15 Tor Lillqvist + + * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement + it. Obscure bit manipulation needed. + + * gdk/win32/gdkevents.c: Logging. + + * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming + style (file name include compiler name) for theme engines. + +1999-07-13 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage. + + * gdk/win32/gdkevents.c: Fix long-standing bug in key + events. The key.string wasn't zero-terminated, still we strdup'ed + it in gdk_event_copy(). Synthesize crossing events for button + events before possible propagation. + + * gdk/win32/gdkwindow.c: Log gdk_window_set_title. + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Use new DLL naming style for the + GCC-compiled ones. + + * gdk/win32/makefile.msc + * gtk/makefile.msc: Cosmetics mostly. + + * gtk/gtk.def: Add missing entry points. + + * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32. + +1999-07-09 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width + or height is zero. Don't print a warning if Pie or Arc fails, they + always fail (?) for very narrow ellipses. + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for + the part or the destination window corresponding to source area + outside of the source drawable's boundary. + + * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do + anything if less than two points. + + * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always + return NULL. Gtk cut-and-paste inside a single program works + better this way. (It always gets the clipboard contents from + Windows, not from its own copy, which is cleared anyway. I can't + say I fully understand what happens... Emulating the X selection + and property stuff is a bit of a mess.) + + * gdk/win32/gdkevents.c + * gdk/win32/gdkproperty.c: A bit more verbose logging. + + * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions + that never got deleted). Revamp gdk_region_shrink. + + * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions + after use. + + * gtk/gtk.def: Add some missing entry points. + + * gtk/gtkrc.c: Strip trailing directory separator from pixmap path + component. + +1999-07-04 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Handle + Control-digits specially. + +1999-07-03 Tor Lillqvist + + * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext. + +1999-06-28 Tor Lillqvist + + * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for + bitmaps, should be multiple of 4. (Thanks to Hans Breuer for + finding this.) + +1999-06-01 Jose H Mercado + + * gtk+.spec.in: Corrected some typos in files section. + +1999-06-15 Tor Lillqvist + + * README.win32: Mention using GNU gettext. + * config.h.win32: Enable NLS stuff. + * gtk/makefile.msc: Use GNU gettext. + * gdk/win32/gdkdnd.c: Minor header reorg. + * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly + cosmetics. + * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public. + * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call. + +Wed Jun 2 11:44:25 PDT 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.status + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged) + +1999-05-30 Tor Lillqvist + + * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to + SafeAdjustWindowRectEx. Don't override all calls to + AdjustWindowRectEx by it, but use it only in two places: When + creating a new top-level window and when moving a top-level + window. + + Use screen coordinate rectangle, not client rectangle, in + gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only + when we try to place a window so that the decoration (mainly, + title bar) isn't visible. + + These changes fix the bug that showed up for instance as the + GIMP's saved top-level windows moving right and down (by an amount + equal to the window decoration) for each session. This bug showed + up also in testgtk's "Saved Position". + + gdk_window_resize also redone a bit. + +1999-05-25 Tor Lillqvist + + * gtk/testgtkrc: Add (commented out) Windows-style theme + include line. + + * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points. + +1999-05-18 Tor Lillqvist + + * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and + gdkx.h to a gdk subdirectory, so that applications can include + these with without trouble. + + * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified. + (gdk_image_destroy): Plug resource leak, some GdkImages didn't + have their bitmap destroyed. + + * gdk/win32/gdk.def: Add gdk_root_parent. + +Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson + + * configure.in + gtk-config.in + ltconfig + ltmain.sh + gtk/Makefile.am: changes to compile nicely (with xlib) + on BeOS + +Sat May 1 15:04:42 PDT 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.3 + +Fri Apr 30 13:38:16 1999 Lars Hamann + + * gtk/gtkclist.c: + * gtk/gtkctree.c: merges from gtk-1-2 + +1999-04-25 Tor Lillqvist + + Support added for building using a GNU toolchain on Win32, + gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1. + + * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files. + * config.h.win32: Changes for gcc. + * gdk/gdkrectangle.c: Include gdk.h as . + * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp. + * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h. + * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better. + Protect shl stuff unavaiilable with mingw32 headers. + * gdk/win32/gdkevents.c: Fix typo. + * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc. + * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?) + * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler. + * gdk/win32/gdkprivate.h: Make up for some stuff missing from + the mingw32 headers. + * gdk/win32/makefile.msc: Use latest Wintab kit and glib. + * gtk/gtkfilesel.c: Include early, to get stat->_stat + definition on Win32. Test for NATIVE_WIN32, not _MSC_VER. + * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32. + Test for NATIVE_WIN32, not _MSC_VER. + * gtk/gtkmain.c: No use warning about developer version on Win32, + there aren't any non-developer versions anyhow. + * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER. + * gtk/makefile.msc: Use pthread from another directory. Minor other + changes. + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Mon Mar 8 12:52:53 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning + when gtk_widget_grab_default() is called for a widget that + is not within a GtkWindow. + +Sat Apr 10 13:52:54 BST 1999 Tony Gale + + * docs/gtk_tut.sgml, examples/clist.c: use a + scrolled window in the clist example. Minor + tutorial fixes. + +Fri Apr 2 09:19:20 BST 1999 Tony Gale + + * docs/gtk_tut.sgml: Style check from David King + + +1999-03-30 Pavel Machek + + * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code + compile with unknown value of GDK_WINDOWING + +1999-03-28 Raja R Harinath + + * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists + after the rule is fired. + (install-exec-local): Install gdkconfig.h only if the contents are + different from the currently installed gdkconfig.h. + +1999-03-26 Raja R Harinath + + * gdk/Makefile.am (configexecincludedir): Rename from + configincludedir so that gdkconfig.h will be installed + as part of `make install-exec'. + +Fri Mar 19 16:50:33 PST 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.2f + + * autogen.sh: libtool is not required to autogen gtk+ + + * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly + needed) + +1999-03-18 Tor Lillqvist + + * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for + declaring gdk variables exported/imported from the DLL. New image + type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and + drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and + GDK_DRAG_PROTO_OLE2. + + * gdk/gdk.h: Merge in Win32 version: Two new functions, + gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far + declared only for the Win32 version, but could be in the X11 + version as well. (Needed for a Xlib-less gdk_imlib.) + gdk_color_hash should have only one parameter. Declare + gdk_threads_mutex with GDKVAR. + + * gdk/gdkcolor.c (gdk_color_hash): A hash function should have + just one parameter. + + * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes + per pixel, not bits. + + * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv): + Fetch bpp (which means bits-per-pixel here) from another place on + Win32. Accept also depth==32 (which we might get on Win32) with + bpp==32. + + * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel, + gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc, + gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c: + Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be + in the backend-dependent directory, not in the common gdk + directory. + + * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk + headers. + +Wed Mar 17 05:06:49 1999 Tim Janik + + * gtk/gtkmain.c (gtk_init_check): tell people that they don't really + want to use the Gtk+ devel version (which is true, and yes - even i am + currently working with the 1.2.x branch). so everyone reading this, you + probably want to issue + cvs checkout -r glib-1-2 glib + and + cvs checkout -r gtk-1-2 gtk+ + as your next two comands. + +Wed Mar 17 02:49:32 1999 Tim Janik + + * configure.in: build gtkcompat.h from gtkcompat.h.in instead of + gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0. + + * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this + file. strongly deprecated the GTK_HAVE_* macros, we provide + GTK_CHECK_VERSION() for people that need to check for certain + Gtk+ versions. + + * gtk/gtkcompat.h: removed this from CVS. + * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad + idea right from the start, it just didn't seem like that back then. + +Wed Mar 17 01:46:28 1999 Tim Janik + + * merges from gtk-1-2: + +Tue Mar 16 17:43:33 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the + item factory class has been created. + (gtk_item_factory_parse_rc): likewise. + + * gtk/gtkmenu.c: + keep proper references for old_active_menu_item. + (gtk_menu_reparent): unset the usize of the new parent, + so the menu can sanely be size requested and we don't get nasty screen + artefacts upon next reparentation. + (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an + enter notify. only synthesize enter notifies if the pointer really is + inside the event window. + (gtk_menu_popdown): use gtk_menu_shell_deselect(). + (gtk_menu_popup): move the background setting stuff into + gtk_menu_tearoff_bg_copy() so it can be called from other places as well. + + * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use + gtk_menu_shell_select_item() to select the new item. + (gtk_menu_shell_deselect): export this function, so gtkmenu.c can + do the right thing for deselection as well. + +Sat Mar 15 20:10:33 1999 Tim Janik + + * gtk/gtkwidget.[hc]: + (gtk_widget_accelerators_locked): return whether a widget's accelerators + are locked. + + * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or + existing accelerators if the widget's accelerators are locked. + +Sat Mar 14 19:44:05 1999 Tim Janik + + * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items. + + * gtk/gtkmenu.c: truely forward key press and key release events to + the menu widget from the toplevel or tearoff window. we can't simply + connect to that, we need to stop further processing of the events as + well. + +Sat Mar 13 13:14:17 1999 Tim Janik + + * gtk/gtkmenu.c: + (gtk_menu_key_press): pass event->keyval, event->state to + gtk_accelerator_valid, instead of event->keyval twice. + refuse to install single letter accelerators for menus that use + single letter shortcuts. + + * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use + gtk_menu_ensure_uline_accel_group(). + + * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group() + which will always return an uline accel group, made + gtk_menu_get_uline_accel_group() return NULL if the group isn't + yet created. + +Mon Mar 15 01:03:27 1999 Lars Hamann + + * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag. + + * gtk/gtkclist.c (gtk_clist_column_title_passive): + Leave button sensitive, trap button_press, button_release, + motion_notify, enter_notify and leave_notify events instead. + (gtk_clist_column_title_active): disconnect event handler. + (gtk_clist_drag_data_get): fixed memory leak. Reported by + Guillaume Laurent + +Wed Mar 10 23:49:55 1999 Lars Hamann + + * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few + width/height mixups. + + * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal + if needed. + +Wed Mar 10 00:11:32 1999 Tim Janik + + * gtk/testgtk.c (create_item_factory): unref the item factory after + window's destruction. + + * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference + count on the menu shell around the menu item's activation, since the + signal emission may cause menu shell destruction. + + * gtk/gtkitemfactory.c: + the previous code leaked one accel group per menu. we use + gtk_menu_get_uline_accel_group() now to fix that, and with that + also create the underline accelerator group of the menus only if + required (i.e. an underline accelerator has been specified). + (gtk_item_factory_construct): + (gtk_item_factory_create_item): removed code that would create an + extra accel group for the menu (and leak references). + (gtk_item_factory_create_item): adapted the underline accelerator + installation code to properly feature gtk_menu_get_uline_accel_group(). + + * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive + menu->accel_group, this may return NULL if the accelerator group + hasn't been set yet. + added gtk_menu_get_uline_accel_group() to retrive the underline + accelerator group of the menu, this will be created on demand + and proper care is taken about its reference count. + + * gtk/gtkitemfactory.h: + * gtk/gtkitemfactory.c: + dumped the approach of keeping a widgets by action list on the + factory since the factory<->widget destroy negotiation didn't work + and would be hard to get going at all. instead we keep a list of + GtkItemFactoryItem items on the factory (GtkItemFactoryItems are + persistant throughout a program's life time). + also, i removed the static const gchar *key_* variables, and made + them inline strings (they weren't actually used anyways). + (gtk_item_factory_add_item): update ifactory->items. + (gtk_item_factory_destroy): destroy ifactory->items (and remove + the item factory pointer from the remaining ifactory widgets). + (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem + list to find the widget. + (gtk_item_factory_get_item): new function that works around + gtk_item_factory_get_widget() limitations, this function will only + return menu items, even for entries. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + + * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix + provided by Olaf Dietsche . + +Sun Mar 7 06:13:29 1999 Tim Janik + + * gtk/gtkcontainer.c: + (gtk_container_add_with_args): + (gtk_container_addv): + (gtk_container_add): before adding a child to a conatiner, make sure + it is (default) constructed, this is neccessary because under certain + circumstances the child will get relized and mapped immediatedly, in + which case it has to be constructed already. + +Mon Mar 1 17:58:21 1999 Tim Janik + + * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal + values > 1 as TRUE also. + +1999-03-16 Tor Lillqvist + + * README.win32: New file. + + * configure.in: Check for lstat. + + * config.h.win32: Add non-definition of HAVE_LSTAT, just for + completeness. + + * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat. + + * gtk/gtk.def: Removed CRs. + + * gtk/makefile.msc: Correct include path to Win32 GDK version (in + ..\gdk\win32). + + * gdk/win32/makefile.msc: Correct upwards relative paths. + +Mon Mar 15 03:38:34 1999 George Lebl + + * gtk/gtkdnd.c: (gtk_drag_highlight) swap the + gtk_drag_highlight_expose and gtk_drag_highlight_paint since + it was connecting a void function to expose_event and the int + returning function to the draw signal + +1999-03-14 Jeff Garzik + + * configure.in: + Use correct path to libgmodule.la when ref'ing uninstalled copy + of glib. (Already in stable branch, Bug #417) + +1999-03-15 Tor Lillqvist + + Win32 merge and general portability stuff: + + * acconfig.h,configure.in: Check for . + + * gdk/win32: New directory (actually, been there for a while). + + * gtk/fnmatch.c: Include for G_DIR_SEPARATOR, WIN32 and + NATIVE_WIN32, and use these. Always case fold on Win32. No + backslashed escapes on native Win32. + + * gtk/{gtk.def,makefile.msc}: New files. + + * gtk/Makefile.am: Add above new files. + + * gtk/{gtkaccelgroup,gtkbindings}.c: Include + instead of . + + * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include + config.h. Protect inclusion of , , and + appropriately. + + * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much). + Use ABS() (from ) instead of abs(). + + * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion + of gtk (and thus glib) headers, so that WIN32 will be + defined. With MS C, include for mkdir prototype. + + * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add + some casts, needed by MS C. + + * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't + implemented). + + * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include + only on X11 platform, otherwise . Use + G_SEARCHPATH_SEPARATOR_S and g_module_build_path. + + * gtk/gtkmain.h: Mark variables for export/import on Win32. + + * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case + the event is not a hint, or its window is not the slider. Needed + on Win32, at least. + + * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use + unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and + G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use + a subdirectory of the Windows directory as gtk system + configuration directory. + + * gtk/gtkselection.c: No chunks on Win32. + + * gtk/gtksocket.c: Not implemented on Win32. + + * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path. + + * gtk/makeenums.h: Include gdkprivate.h after gdk.h. + + * gtk/maketypes.awk: Declare variables with a macro that expands to + necessary export/import magic in the case of Win32. + + * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers. + +1999-03-13 Raja R Harinath + + * configure.in (gdk_wc): Move widechar tests from `glib' to here, + since those were meant only for gdki18n.h. + * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_* + for widechar tests. + * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h. + +1999-03-13 Tor Lillqvist + + * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate + gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h. + + * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is + installed) to CFLAGS. + + * gdk/Makefile.am: Add rules for gdkconfig.h. + + * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing + APIs. + + * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via + gdkx.h anyway when compiling for X11. + (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In + general): Merge in Win32 version. + + * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32 + version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde + expansion (if we don't have HAVE_PWD_H), allow for drive + letters. UNC paths (\\server\share\...) are not handled yet. Also, + included code from Craig Setera's port to Win32 (the one that uses + X11, and the cygwin dll), even if it probably will be abandoned. + + * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if + the user entered one herself. This way one can complete *.h and + don't get matches on any .help files, for instance. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + + * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix + provided by Olaf Dietsche . + +1999-03-09 Federico Mena Quintero + + * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced + the number of calls to gdk_draw_point() (and thus to X) by + clipping the points by hand. + + * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of + the clip parameter. + (gtk_handle_box_paint): Only paint the handle if the expose area + intersects it. + +Sun Mar 7 18:46:37 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) + + * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.) + +Sun Mar 7 11:43:34 1999 ape@spacetec.no (Asbjorn Pettersen) + + * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes. + Added function gen_8_3_dll_name(gchar *name, gchar *fullname). + +Fri Mar 5 09:12:24 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in + textmode (O_TEXT) for OS/2 version. + +Sun Feb 28 16:46:02 1999 Stefan Jeske + + * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to + GtkSpinButton, "input" and "output", to make the output more flexible. + The user has to provide a mapping between adjustment->value and the + output string (and vice versa, if the spin button is editable). + See testgtk for examples. + +Sat Feb 27 01:18:47 1999 Tim Janik + + * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started + new one. + + * configure.in: set gtk+ version to 1.3.0. +======= * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, +>>>>>>> 1.2802 diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index fbd5888e3d..baae1d9764 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,10 @@ +Sun Jan 13 23:23:22 2002 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_compute_hints): Fix problem where + widget->requisition was being used instead of + gtk_widget_get_child_requisition (), causing geometry widgets + with usizes to misbehave. + 2002-01-14 Sven Neumann * gtk/gtkrc.c: g_getenv() returns a const string. @@ -16366,5 +16373,8616 @@ Thu Nov 9 11:23:22 2000 Jonathan Blandford 2000-11-02 Havoc Pennington +<<<<<<< ChangeLog + * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and + use stock buttons. Should be 100% source compatible, appropriate + filesel fields now point to dialog->vbox and dialog->action_area. + On the bizarre side, dialog->action_area and filesel->action_area + are not the same widget. + (gtk_file_selection_init): Put some padding around the selection + entry, so it isn't touching the GtkDialog separator. + + * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, + use stock buttons, etc. Should also be source compatible. + Set the dialog default title in _init not _new(). + + * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): + Use stock buttons; don't put a button box inside the existing + dialog button box. Don't bother with push/pop colormap anymore. + + * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more + specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT + for message dialog, and necessary for the font selection and color + selection with help and apply buttons. + + * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer + to the created button widget. Set GTK_CAN_DEFAULT on the button. + (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing + between buttons, put less padding around the action area. + (gtk_dialog_run): Exit on unmap rather than on destroy. + This will also exit the loop if the widget is hidden. + (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT + instead of GTK_RESPONSE_NONE; since we're already adding a bunch + of GTK_RESPONSE_* stuff, this seems cleaner, and lets you + special-case delete event. + + * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment + formatting + +Sun Nov 5 05:32:39 2000 Tim Janik + + * gtk/testgtk.c (uposition_stop_configure): provide a toggle + button to temporarily disable position recording in the + "saved position" test. + +Sat Nov 4 05:37:17 2000 Tim Janik + + * gtk/gtkthemes.c: added compat code that temporarily implements + GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is + going to be revamped by owen's upcoming GtkModule patches, but + untill then people want gtk to build, right? ;) + +2000-11-04 Havoc Pennington + + * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member + list + + * docs/Changes-2.0.txt: Add note about + gtk_container_get_toplevels() + + * gtk/gtktextview.h: formatting + + * gtk/gtktextview.c: don't start descriptions with "Returns", + confuses gtk-doc + +Sat Nov 4 10:12:27 2000 Owen Taylor + + * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS, + look for glib-2.0.m4 not glib.m4. (Ali Abdin) + +2000-11-03 Havoc Pennington + + * gtk/gtktexttagtable.c: Docs + (gtk_text_tag_table_size): return a signed int + + * gtk/gtktexttag.c: s/tkxt/text/g; write documentation + (gtk_text_tag_event): make the event_object a GObject + + * gtk/gtktextview.c: Write API docs for all functions. + + * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value + for gtk_text_view_get_window_type() called on one of the private + windows. + + * gtk/gtktextview.c: Instead of accessing text_view->buffer + directly, call get_buffer() which demand-creates a default + buffer. So gtk_text_view_new() can be used to create a view with a + default buffer in it, if you just want an empty text box users can + put data in. Useful for GUI builders also. + +2000-11-03 Pablo Saratxaga + + * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5; + the charset encodign portion MUST be in lowercase. + * gtk/gtkrc.az: added file for Azeri language + +2000-11-03 Havoc Pennington + + Get widgets working on the btree/buffer side. Display of them + still doesn't work. + + * gtk/gtktextview.c: start implementing child widget stuff + + * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function + + * gtk/gtktextlayout.c: handle embedded widgets + + * gtk/gtktextdisplay.c: handle embedded widgets + + * gtk/gtktextchild.c: Implement all the child anchor goo + + * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New + function + + * gtk/gtktextbtree.c: Add child anchor table to the btree struct + (insert_pixbuf_or_widget_segment): abstract out common portions of + creating a child anchor or a pixbuf segment. + (gtk_text_btree_create_child_anchor): new function + (gtk_text_btree_unregister_child_anchor): new function + + * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the + allocate_child signal on GtkTextLayout + + * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return + values + (gtk_text_iter_get_child_anchor): new function + + * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a + default handler for the changed signal, which calls + gtk_text_buffer_set_modified(), instead of just always emitting + changed then calling set_modified() manually. I guess this is + maybe more flexible. It seems logical. + +Fri Nov 3 08:58:38 2000 Tim Janik + + * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_' + now. + + * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now. + +Thu Nov 2 14:10:51 2000 Owen Taylor + + * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have + been marked static. + +2000-11-02 Havoc Pennington + + * gtk/testgtk.c (create_labels): had a test backward + + * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC + fields, so the dest GC ends up with the correct clip origin, + etc. Fixes a bug where colored labels didn't redraw + properly. + +2000-11-02 Alexander Larsson + + * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c, + gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c, + gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c: + Add last argument to t_type_register_static call. + + * gdk/linux-fb/gdkdrawable-fb2.c: + Add last argument to t_type_register_static call. + export the get_image drawable virtual function. + + * gdk/linux-fb/gdkimage-fb.c: + Add last argument to t_type_register_static call. + rename gtk_image_get to _gdk_fb_get_image and + export it for use by gdkdrawable-fb2. + + * gdk/linux-fb/gdkprivate-fb.h: + export _gdk_fb_get_image. + + * gdk/linux-fb/gdkselection-fb.c: + Add new api call stubs. + + * gtk/Makefile.am: + Missing ( in linux-fb part. + + * modules/linux-fb/Makefile.am: + Must link with gdk_pixbuf or get unresolved symbol. + +2000-11-01 Havoc Pennington + + * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use + GTK_TYPE_TEXT_ITER and BOXED marshallers + + * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto + + * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto + + * gtk/gtk-boxed.defs: add GtkTextIter + + * gtk/gtkmarshal.list: Add marshallers for text widget that + properly use OBJECT and BOXED + +2000-11-01 Havoc Pennington + + * gtk/testgtk.c (create_labels): Test set_markup_with_accel() + + * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval + before returning it. + +2000-11-01 Havoc Pennington + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): + Clip the rectangle to be rendered to the drawable, since + get_from_drawable() requires a region within the drawable + +2000-11-01 Havoc Pennington + + * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4 + from coordinates. + +Wed Oct 25 20:10:57 2000 Owen Taylor + + * gdk/gdkevents.c (gdk_event_copy): Only ref the window if + it isn't NULL. + +2000-11-01 Havoc Pennington + + * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList + on a label + (gtk_label_finalize): unref the attr list if any. + + * gtk/testgtk.c (create_get_image): close test on second click + (make_message_dialog): close dialog if it exists + + * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute + + * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not + gdk-pixbuf + + * gtk/gtklabel.c (gtk_label_set_markup): new function to set label + from Pango markup format + (gtk_label_set_markup_with_accel): ditto but with accelerator + parsing + + * gtk/gtkimage.c (gtk_image_expose): reformatting. + + * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to + reflect current state of GDK - use gdk_drawable_get_colormap, etc. + Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to + call gdk_window_get_origin(). + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): + implement GDK_PIXBUF_ALPHA_FULL + +Wed Nov 1 03:43:42 2000 Tim Janik + + * gtk/gtksignal.c (gtk_signal_compat_matched): make use of + g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and + g_signal_handlers_disconnect_matched to block/unblock and disconnect + multiple handlers respectively, instead of only treating the + first handler found (bug reported by owen). + +Mon Oct 30 19:23:50 2000 Jonathan Blandford + + * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function. + + * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function. + + * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c + gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c, + gtk/gtktreeviewcolumn.h: Fixed inline docs. + + * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree + widget. Needs writing someday. + + * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to + the docs. + +2000-10-30 Havoc Pennington + + * gtk/gtktextview.h, gtk/gtktextview.c: + Rename delete_at_cursor delete_from_cursor, and + move to move_cursor. + +2000-10-30 Havoc Pennington + + * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c, + gtktextbuffer.h, gtktextchild.c, gtktextchild.h, + gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h, + gtktextiter.c, gtktextiter.h, gtktextiterprivate.h, + gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h, + gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h, + gtktexttag.c, gtktexttag.h, gtktexttagprivate.h, + gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c, + gtktexttypes.h, gtktextview.c, gtktextview.h: + + Massive reindentation and reformatting. Arg alignment and comments + still need fixing in various places. + +2000-10-30 Havoc Pennington + + * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals + to be named insert_at_cursor and delete_at_cursor so C++ can + handle them. + +2000-10-28 Tor Lillqvist + + * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not + to get a double directory separator in case the home directory + ends with one. This would cause trouble especially on Windows, + where the path will be confused with the syntax for an an UNC + (network share) path \\server\share\path. + (gtk_rc_add_initial_default_files): Ditto. + +Sat Oct 28 02:33:09 2000 Robert Brady + + * gtk/gtkmarshal.list: add new marshallers for GtkTextView. + + * gtk/gtktextview.c: Use correct marshallers. + +Fri Oct 27 17:56:26 2000 Jonathan Blandford + + * gtk/gtkliststore.c: Not sure how this ever worked. Fixed it to + use new iter stuff, and added all the appropriate signals et al. + + * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this + code is internal to gtk only. + +2000-10-28 Tor Lillqvist + + * gtk/gtk.def + * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use + glib-genmarshal etc. + +Fri Oct 27 20:15:00 2000 Tim Janik + + * gtk/Makefile.am: added dependancies for testtextbuffer which broke + parallel builds. + +Fri Oct 27 18:51:44 2000 Tim Janik + + * gtk/gtksignal.[hc]: adapt to GSignal signature changes. + +2000-10-27 Robert Brady + + * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), + en_GB (British), ia (Interlingua). + +2000-10-26 Havoc Pennington + + * gtk/gtktextiter.c (my_strrstr): fix constness warning + + Fixed output of: + nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_ + + * gtk/gtktextsegment.c (char_segment_new): rename + (_char_segment_new_from_two_strings): rename + (_toggle_segment_new): rename + + * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static + (make_clipboard_widget): make it static + (text_get_func): static + (text_clear_func): static + + * gtk/gtkcolorsel.c (adjustment_changed): make this function + static + (hex_changed): make it static + (hsv_changed): make it static + (opacity_entry_changed): make it static + + * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk + (toggle_segment_check_func): rename with _gtk + + * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk + (_widget_segment_new): rename + (_widget_segment_add): rename + (_widget_segment_remove): rename + (_widget_segment_ref): rename + (_widget_segment_unref): rename + + * gtk/gtktextmark.c (_mark_segment_new): Rename + _gtk_mark_segment_new + +2000-10-26 Havoc Pennington + + * gtk/gtkmarshal.list: add new marshallers used by the text widget + * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller + types + + * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix + marshaller types + + * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h, + gtk/gtktextdisplay.c: We need to preserve Tk copyrights and + license on these files. + + * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this + work. + + * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to + runtime random number different for each tree, instead of + a constant I made up. + +Thu Oct 26 07:36:16 2000 Tim Janik + + * gtk/Makefile.am: buncha cleanups, kludged build sources + dependencies with a Makefile: oldest-source-stamp dependancy + for the moment. automake is really fighting us here, with + intentionally not allowing user-defined rules or dependancies + prior to it's -include $(DEP_FILES) statement. sucks rocks! + + * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h + to public headers. tehy have a comment stating that they are + "semi-public" aren't included by gtk.h and if enums popup there, + they can be /*< skip >*/-ed. + + * gtk/gtktextlayout.h: + * gtk/gtktextdisplay.h: indentation fixes, comment fixes, + added LGPL... + +Wed Oct 25 20:40:25 2000 Jonathan Blandford + + * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to + GtkTreeIter. Added iterators everywhere. + + * gtk/gtktreeviewcolumn.c: Changed to use the iterators. + + * gtk/gtktreeviewselection.c: Changed to use the iterators. + + * gtk/gtktreestore.c: Changed to use the iterators. + + * gtk/gtkliststore.c: Commented out the code. Will convert to + iterators tomorrow. + + * gtk/gtkmodelsimple.c: Commented out the code. Will convert to + iterators tomorrow. + + * gtk/treestoretest.c: Changed to use iterators. + + * demos/testgtk/main.c: Moved to use the new iterator system. + +Thu Oct 26 02:10:32 2000 Tim Janik + + * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid + localization misbehaviour. + + * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's + a useless type without copy/free. + + * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead + of GTK_TYPE_CTREE_NODE. + +Thu Oct 26 00:51:52 2000 Tim Janik + + * gtk/gtksignal.c: + (gtk_signal_emitv): use g_value_set_static_{string|boxed} where + applicable. + + * gtk/gtk-boxed.defs (GtkSelectionData): specify + gtk_selection_data_copy and gtk_selection_data_free + do GtkSelectionData work as params in signals. + +Wed Oct 25 20:47:41 2000 Tim Janik + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed + implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that, + couldn't they at least give it a non-standard name? + + * gtk/gtktextlayout.c: arg! yet another implementation of + gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy? + + * gtk/gtktextbuffer.c: gotcha! captured a vagabonding + gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back + home. now i know this _is_ a conspiracy. + + * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for + ::state-changed. + + * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): + (gtk_accel_group_create_add): marshaller signature fixups. + + * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups, + pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM. + + * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid + anymore. + +Tue Oct 24 23:59:21 2000 Tim Janik + + * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since + due to the signal system changes, it wouldn't build currently. to + be fixed soon. + + * docs/Changes-2.0.txt: GtkSignal/GSignal updates. + + * gtk/gtkwidget.c: ::direction_changed takes an enum as argument, + so it needs gtk_marshal_VOID__ENUM() instead of + gtk_marshal_NONE__UINT(). + + * gdk/gdk*.c: adapted type registration functions. + + * gtk/gtkbindings.c: + * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is + gone. + + * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType. + + * gtk/gtkobject.c: + (gtk_object_destroy): + (gtk_object_shutdown): fixed recursion guards. basically we have to + catch the case where any of GObject.shutdown() or gtk_object_destroy() + is called during ::destroy, and avoid recursion there. + + * gtk/gtktypeutils.c: + * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with + boxed_copy/boxed_free. this needs a more general solution based on a + publically installed code-generator utility. + + * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED, + glib's gobject has support for that now. + define GtkSignalMarshaller in terms of GSignalCMarshaller. + +Mon Oct 23 09:36:42 2000 Tim Janik + + * gtk/gtksignal.[hc]: + * gtk/gtkmarshal.[hc]: + * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't + compile gtkmarshal.c on its own anymore, just include it in gtksignal.c. + removed #include s all over the place, gtksignal.h takes + care of that. + + * *.c: marshaller name fixups. + + * gtk/gtkmarshal.list: added a comment briefing the format. + +Sun Oct 22 23:14:39 2000 Tim Janik + + * gtk/gtksignal.[hc]: nuked old implementation. we mostly have + compatibility macros here now. more specifically, most of + the API is preserved (yes, _most_, nonwithstanding the + following exceptions listed, the API is stil lHUGE ;) + things that got removed completely: + GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(), + gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(), + gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(), + gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(), + gtk_signal_remove_emission_hook(). + non-functional functions variants: + gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook(). + the GtkCallbackMarshal argument to gtk_signal_connect_full() is + not supported anymore. + (gtk_signal_compat_matched): new internal function to aid + implementation of the compatibility macros, it provides + functionality to block/unblock/disconnect handlers based + on func/data. + + * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType, + + * *.c: adaptions to new type registration API signatures. + +Fri Oct 20 15:26:33 2000 Tim Janik + + * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge. + +2000-10-25 Robert Brady + + * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change, + gdk_property_delete): If window == NULL, assume the root window. + (restoring the behaviour that was in 1.2). + + * gtk/testtext.c (save_buffer): Allow creation of new files when + saving. + + (fill_file_buffer): Don't die if a UTF-8 sequence is split across + calls to read(). + +2000-10-25 Tor Lillqvist + + * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11. + + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkimage-win32.c + * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the + X11 backend. + + * gdk/win32/gdkcc-win32.c + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkfont-win32.c + * gdk/win32/gdkinput-win32.c + * gdk/win32/gdkmain-win32.c + * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall. + +2000-10-24 Havoc Pennington + + * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make + it a static function + + * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should + redraw text when a tag is applied to it. + + * gtk/gtktexttag.c (gtk_text_tag_affects_size) + (gtk_text_tag_affects_nonsize_appearance): private functions to + see if a tag requires various kinds of redraw/layout to be queued + up. + + * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock + + * gtk/testtext.c (fill_example_buffer): Put the cursor + at the start of the buffer, so search works by default + + * gtk/gtktextiter.c (lines_match): init match_start always + + * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New + function, get iter at a line + a byte index + + * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function, + to set byte position within a line + (gtk_text_iter_check): remove leftover G_BREAKPOINT thing + +2000-10-23 Havoc Pennington + + * gtk/testtext.c: Re-enable the "find" dialog + + * gtk/testgtk.c: Add test for gdk_drawable_get_image + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where + the arguments to gdk_draw_drawable were in the wrong order + (gdk_window_paint_init_bg): This function was ignoring the + init_region, instead of clipping to it, so the entire backing + pixmap was cleared on every begin_paint() + (gdk_window_begin_paint_region): Hmm, the same list-walking bug + was in here again, the loop kept using the same GtkWindowPaint + over and over. + (gdk_window_begin_paint_region): Fix a bug where we had two + x_offset instead of x_offset and y_offset + + * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable + before we get the image. + (gdk_draw_drawable): get the composite before we draw the drawable. + (gdk_drawable_real_get_composite_drawable): default + get_composite_drawable implementation that returns the drawable + itself + + * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add + get_composite_drawable virtual function + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy + list-walking bug + + * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to + make this work if the source drawable is a GdkDrawableImplX11 + instead of a public drawable type. This is really broken; the + problem is that GdkDrawable needs a virtual method get_xid(), but + of course that doesn't work in practice. Enter RTTI. + + Also, improve mismatched depth message. + + * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for + GdkPixmap + + * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init): + install _gdk_x11_get_image as our implementation of get_image + + * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to + _gdk_x11_get_image and export for use in gdkdrawable-x11.c + + * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around + gdk_drawable_get_image + + * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image + + * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize + get_image + + * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird + trailing semicolon after for loop + +Mon Oct 23 12:07:57 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem + where font_desc for widget's context lagged widget's font_desc by + one step. + +2000-10-22 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c + * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings. + + * gtk/makefile.mingw.in + * gtk/gtk.def: Updates. + + * gtk/testgtk.c: sleep() is called _sleep in MS's C + library. + + * gtk/gtkimcontextsimple.c: Include for bsearch(). + + * gtk/makefile.msc: Remove + + * gtk/makefile.msc.in: New file, like makefile.mingw.in. + + * gtk/Makefile.am: Add it. + + * configure.in: Generate it. + + * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor) + * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return + something even if not implemented, to satisfy picky MSVC. + + Patches by Hans Breuer: + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call + SetBkMode() and SetTextAlign() before calling + pango_win32_render(). + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values): + Set hcliprgn to NULL after destroying it. + (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL. + + * gdk/win32/gdkgeometry-win32.c + (_gdk_windowing_window_queue_antiexpose): More effective + implementation. + + * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's + depth as default, not the visual's. + + * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard + against empty title. + + * gdk/win32/gdkprivate-win32.h: Define a helper macro, + IMAGE_PRIVATE_DATA. + + * gdk/win32/gdkimage-win32.c: Use it. + +2000-10-22 Robert Brady + + * configure.in: Check for bind_textdomain_codeset + + * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset + present, make use of it. + + Add a translatable string "default:LTR" which, if translated + to "default:RTL", will cause the default direction to be + Right-to-Left. + + * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget + direction if marked as flippable. + + * gtk/gtkhscale.c: Mark widget as flippable. + +2000-10-04 Havoc Pennington + + * gtk/testgtk.c (create_buttons): create some stock buttons + with the default accel group + (create_image): test some new GtkImage features + (make_message_dialog): test GtkMessageDialog + (create_modal_window): fix someone's bizzarro indentation + + * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement + GTK_WIN_POS_CENTER_ON_PARENT. + Add "destroy with parent" setting, which means the window goes + away with its transient parent. + (gtk_window_get_default_accel_group): get the default accel group + for the window. + (gtk_window_set_destroy_with_parent): set/unset destroy with + parent flag + (gtk_window_read_rcfiles): invalidate icon set caches + after reloading rcfiles + + * gtk/gtkenums.h (GtkWindowPosition): add + GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog + on its parent window when the dialog is mapped for the first time. + + * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add + a simple message dialog class + + * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event + handler to emit response signal, and maybe later it would + honor a hide_on_delete flag - though that isn't there yet. + Set border width on the vbox to 2, so we get some padding. + Use a button box for the action area. + (gtk_dialog_key_press): synthesize a delete event if Esc + is pressed and the GtkWidget key press handler didn't + handle the escape key. + (gtk_dialog_new_with_buttons): new function creates a dialog + with some default buttons in it. + (gtk_dialog_add_action_widget): add an activatable widget + as a button in the dialog - you can also add a non-activatable + widget by accessing the action area directly. + (gtk_dialog_add_button): add a simple button - stock ID or + label - to the action area + (gtk_dialog_response): emit response signal + (gtk_dialog_run): block waiting for the dialog, return + the response. Override normal delete_event behavior, so that + delete_event does nothing inside gtk_dialog_run(). +======= +>>>>>>> 1.2802 + +<<<<<<< ChangeLog + * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal + emitted when an action widget is clicked or the dialog gets + delete_event + + * gtk/gtk.h: add gtkmessagedialog.h + + * gtk/Makefile.am: add gtkmessagedialog.[hc] + +2000-10-18 Havoc Pennington + + * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug + where any number of empty lines would get skipped + + * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the + edge. + + * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the + warning about invalid iterators (explain more thoroughly) + (gtk_text_iter_in_region): rename gtk_text_iter_in_range + + * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less + big + + * demos/*.c: Add error handling + + * gtk/gtktextbuffer.c: don't modify const iterators + + * gtk/gdk-pixbuf-loader.c: Add full error handling here + + * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors + on file load + + * gtk/gtkiconfactory.c: Update to reflect addition of error + handling to gdk-pixbuf loaders + +Wed Oct 18 11:14:05 2000 Owen Taylor + + * configure.in demos/Makefile.am demos/testgtk/*: Start of work to + move to new modularized testgtk. + +2000-10-17 Jonathan Blandford + + * gtk/gtktreeview.c: Draw the arrows correctly. + + * gtk/gtktreemodel.c: Added user docs. + + * gtk/gtk.h: remove gtktreedatalist.h. + + * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct + parent when generating my type. + + * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE, + POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT. + +2000-10-16 Jonathan Blandford + + * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move + GtkTreeModel from object to interface. + +2000-10-16 Havoc Pennington + + * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing + compilation + +2000-10-16 Jonathan Blandford + + * gtk/gtktreeselection.c: Add API documentation to all public + functions. + + * gtk/gtktreeviewcolumn.c: Added API documentation to all public + functions. + +2000-10-15 Jonathan Blandford + + * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function + proposed by Guy Harris . Also, added API + docs to all public functions. + + * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h, + gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c, + gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c, + gtk/gtktreemodel.h, gtk/gtktreeselection.c, + gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node + issue. + +2000-10-14 Robert Brady + + * configure.in: Added "fa" (Persian) to ALL_LINGUAS. + +2000-10-12 Jonathan Blandford + + * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added + values other then G_TYPE_STRING. + * gtk/gtktreeselection.c: Minor commenting updates. + * gtk/gtktreeview.c: Format updates. + +2000-10-09 Tor Lillqvist + + * README.win32: Update. + + * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two + lines that had been deleted by mistake (?). + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle + also the case fg==white and bg==black (but still not randomly + coloured cursors). Thanks to Wolfgang Sourdeau. + + * gdk/win32/*.c: Silence gcc -Wall. + + * gtk/gtk.def: Add missing entry points. + + Fixes by Hans Breuer: + + * gdk/makefile.msc + * gdk/win32/makefile.msc: Update. + + * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined, + some MSVC thing, presumably), cause breakpoint on failures. Add + GDK_NOR case. Call g_log_set_always_fatal. + + * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle + should be pased by reference. + + * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly. + + * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert. + + * gdk/win32/gdkevents-win32.c + * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE. + + * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and + implementation object. + + * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables, + not just windows. + + * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize): + Use the wrapper object. + +2000-10-06 Havoc Pennington + + * Makefile.am (SRC_SUBDIRS): contrib subdir + + * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library, + so it can be used in Xlib version + + * demos/testpixbuf.c (update_timeout): error checking from 1.0 + tree + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync + change from 1.0 tree that returns first frame of animation + if the loaded file is an animation. + + * contrib: add new directory to hold stuff that comes with GTK+ + but isn't really part of GTK+ (for now, gdk-pixbuf-xlib) + + * configure.in: add contrib/* + +2000-10-05 Havoc Pennington + + * demos/testpixbuf-save.c: add pixbuf save test + + * demos/Makefile.am: add testpixbuf-save.c + +2000-10-05 Jonathan Blandford + + * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with + GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c + * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/ + * gtk/gtktreeselection.[ch]: Replaced + "node_selected"/"node_unselected" signal with "selection_changed" + signal. + +2000-10-04 Jonathan Blandford + + * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new + tree widget. + +2000-10-04 Jonathan Blandford + + * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle + drawing. + +Wed Oct 4 15:52:15 2000 Owen Taylor + + * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed): + Move list pointer forwards before removing item from + list. (Crash reported by Salmaso Raffaele) + + * gdk/gdkwindow.h: Remove spurious trailing , + + * gdk/Makefile.am (LDFLAGS): You can't do interlibrary + dependencies on uninstalled libraries, sorry folks. + +2000-10-04 Havoc Pennington + + * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h, + gtk/gtkiconfactory.c: Fix copyrights + + * demos/testpixbuf.c: add inline pixbuf test + +Mon Sep 25 15:05:17 2000 Owen Taylor + + * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify): + Add gdk_window_iconify. + + * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c + (gdk_window_set_geometry_hints): Add win_gravity + to geometry structure. + + * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): + Implement _NET_WM_PING. + + * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): + Set _NET_WM_PID on the client leader. + + * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name): + Handle UTF-8 better. + + * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle + UTF-8 better, set _NET_WM_NAME as well. Only set + icon name if it hasn't previously been explicitely + set. + +2000-10-03 Havoc Pennington + + * gtk/testtextbuffer.c: clean up trailing whitespace, + add extensive tests for tag toggle iteration. + + * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan + distance + + * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag): + optimize case where the tag root is on level 1 + (gtk_text_line_previous_could_contain_tag): attempt to implement + (gtk_text_line_next_could_contain_tag): Abstract out node_compare + functionality + + * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle): + Implement this, though not very efficiently. + + * gtk/gtktextiterprivate.h: reformat + + * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end + iterator + + * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix + this to properly revalidate the iterators. + + * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work + properly at the end of the line (and therefore on empty lines) + + * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee, + maybe we should return a value... + +2000-10-03 Tor Lillqvist + + * config.h.win32: Guard definition of alloca(). glib.h now handles + that. + + * gdk/gdk.def + * gtk/gtk.def: Add new entry points. + + Changes just to make GTK+ build without errors on Win32. No hope + of it working in its current state, though...: + + * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings. Add + some functions from the X11 backend, just to make GTK+ build. + + * gdk/makefile.mingw.in + * gtk/makefile.mingw.in: Use correct gdk_pixbuf version + number. Add new object files. + + * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use + GetMessageTime to get timestamp (where on X11 uses + gdk_x11_get_server_time()). + +2000-10-02 Havoc Pennington + + * gtk/gtktextview.c: text_window_* weren't static and should have + been. + Start work on child widgets; not yet complete, syncing to + office computer. + + * gtk/gtktextchild.h: change this to contain a public interface, + starting work on child interfaces. + * gtk/gtktextchildprivate.h: move private interfaces here + + * gtk/Makefile.am: update to reflect gtktextchildprivate.h + + * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h, + gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, + gtk/gtktextmark.c: copyright notices + + * gtk/gtktextmarkprivate.h: reformat, and put _ in front of + internal functions + + * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of + internal function + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): + Reformatting + +2000-09-30 Havoc Pennington + + * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle + NULL start/end pointers + + * gtk/gtktextbuffer.c: Write some docs + (gtk_text_buffer_get_selection_bounds): Allow start/end to be + NULL, so you can just check whether there's a selection. + + * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to + cleanup_line or segments_changed ourselves, it gets done + in unlink_segment + + * gtk/gtktextmark.h: + s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/ + + * gtk/gtktextsegment.h: Clean up some indentation and naming mess + + * gtk/gtktextmark.c: delete some more old Tk cruft + + * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to + mark before removing it, so we can emit MARK_DELETED with a valid + pointer. + (gtk_text_buffer_mark_set): hold ref across signal emission + + * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve + whining about attempts to delete special marks + + * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with + underscore, since it's internal. + + * gtk/gtktextbuffer.h: Remove find_string prototype, this is + now implemented in terms of iterators in gtktextiter.h + + * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): + New function, destructively sets contents of buffer. Also + a convenient way to clear the buffer by setting text to "" + + * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat + multiline string literal + + * gtk/testtext.c (text_changed_callback): Redraw line numbers if + text changes. + + * gtk/gtktextiter.c (forward_char): Return FALSE if new location + is not dereferenceable + (gtk_text_iter_forward_lines): fix return value + +2000-09-29 Havoc Pennington + + * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation + + * gtk/gtktextview.c: Implement drag thresholding; change functions + that set border window size to have nicer name + (gtk_text_view_mark_set_handler): Fix this to have the + right signature. + + * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes + + * gtk/testtext.c: Update with API changes, put line numbers on + both sides. + + * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap + with this + + * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with + pixbuf; delete a big block of #if 0 Tk code + + * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace + insert_pixmap with insert_pixbuf + +2000-09-29 Martin Baulig + + * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid + confusion with the GdkPixbuf of the GNOME 1.x platform. + +2000-09-29 Havoc Pennington + + * gtk/gtktextview.c: Implement the side windows. + + * gtk/testtext.c: Implement simple line numbering in the + left side window; seems to make scrolling sloooow. Oops. + Also, cursor blink is for some reason causing redraws + of the line numbers. Should investigate... + +2000-09-28 Havoc Pennington + + * gtk/gtktextview.c: Set up infrastructure to deal with lots of + scrolling child windows, and draw focus rectangle properly. + + (gtk_text_view_buffer_to_window_coords): + Coordinate transformation to deal with all these freaking windows + and offsets + (gtk_text_view_window_to_buffer_coords): transform the other way + + * gtk/testtext.c (create_buffer): Update to match Pango API change + + * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the + anonymous tags + (foreach_unref): don't emit remove signal from finalize, just + set tag's parent to NULL + +2000-09-26 Havoc Pennington + + * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove + Fix some warnings + +2000-09-26 Havoc Pennington + + * gtk/Makefile.am (gtk_private_h_sources): Move more text widget + headers into the private header list + + * Makefile.am (pkgconfig_DATA): install pkg-config files + + * configure.in: add pkg-config files + + * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files + + * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate + outstanding icon caches on theme change. + + * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three + important types: + + (GtkIconSource): Specification for creating a pixbuf + appropriate for a direction/state/size triplet from + a source pixbuf or filename + + (GtkIconSet): List of GtkIconSource objects that are used to + create the "same" icon (e.g. an OK button icon), and cache for + rendered icons + + (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look + up the icon set for a given stock ID. GTK maintains a stack of + GtkIconFactory to search, and applications or libraries can add + additional icon factories on top of the stack + + * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse + the set of GtkIconSource specified for a given stock ID into + a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the + RcStyle, under the specified stock ID. + + * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function + render_icon used to derive a GdkPixbuf from a GtkIconSource. + This allows people to theme how prelight, insensitive, etc. are + done. + + (gtk_style_lookup_icon_set): Look up a stock ID in the list of + icon factories for a style, and return the resulting + icon set if any. + + (gtk_style_render_icon): Render an icon using the render_icon + method in the GtkStyleClass. + + * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): + Use the style for a given widget to look up a stock ID, get the + icon set, and render an icon using the render_icon method + of the style + + * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type + (contains information about a stock item), the built-in stock item + IDs, and functions to add/lookup stock items. + + * gtk/stock-icons/*: Stock icons that come with GTK + + * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns + a button based on a GtkStockItem + (gtk_button_new_accel): Takes a uline string and accel group, and + installs the accelerator. + + * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic + image-display widget. + +2000-09-25 Havoc Pennington + + * gtk/gtktexttypes.c: Remove Latin1 conversion stuff + + * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): + Fix a bug when removing node data, we didn't properly + re-splice the linked list after removing the data. + + * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through + GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget + + * gtk/gtktextbuffer.c (selection_received): fix g_convert usage + + * gtk/gtktextlayout.c (set_para_values): Set tab array + for the layout from the GtkTextTag. + + * gtk/gtktexttypes.h: delete tab and search cruft, + remove g_convert() in favor of GLib version + + * gtk/gtktexttypes.c: remove tab implementation from here, + move to Pango + + * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement + tab stuff using new PangoTabArray from Pango + + * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove + unused border_width stuff + +Thu Sep 14 12:21:12 2000 Owen Taylor + + * gtk/gtktexttypes.[ch]: Remove g_convert (moved to + glib) and now useless utf_to_latin1() latin1_to_utf() + + * gtk/gtktextview.[ch]: Change ::move_insert and + ::delete_text action signals to ::move and ::delete; + create the signals with the right enumeration type, + not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d, + C-v bindings, change Home, End to move to beginning/end + of line, Add C-Home C-End to move to beginning/end + of buffer. Change ::cut_text to ::cut_clipboard, etc; + combine ::scroll_text into ::move; use new GtkSelectionData + functions to simplify DND text handling. + + * gtk/gtkenums.h gtk/gtktextview.h: Move movement, + deletion enumerations here, rename enumeration values to + be consistently plural. + + * gtk/gtktextbuffer.c: Use new clipboard interfaces + for cut/copy/paste and primary selection. + + * gtk/gtktextbuffer.[ch]: Remove excess time and + 'interactive' arguments from cut/copy/paste; + rename cut to cut_clipboard, etc; remove + gtk_text_buffer_get_clipboard_contents(). + + * gtk/gtktextlayout.[ch]: Add + gtk_text_layout_move_iter_to_line_end() to move the iter to + line ends. + + * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text): + Functions to set or get a UTF-8 string on the selection + data. + + * gtk/gtkclipboard.[ch]: New, simplified selection handling + interfaces. + + * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly + created widgets - one of these is useless if we don't. + + * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export + a public function clear all targets registered for the + widget. + + * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt: + Never call gtk_widget_realize() - that was just asking + for bizarre side-effects. + + * gtk/gtkselection.c (gtk_selection_owner_set): Call + gdk_selection_owner_set even if the widget is the + same so that we reliably update the timestamp on + the server. + + * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a + gdk_x11_get_server_time() function. + + * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h + gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h: + Add some tricky filtering on serial numbers for + selection clear events to fix up long-standard + race condition FIXME's in gtkselection.c. + + * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add + routines to convert from utf8 to compound text or + STRING and from a text property to UTF-8. + + * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add + a convenience function gdk_get_current_event_time(). + + * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy + and free selection_data->data properly + +Sat Sep 9 10:23:53 2000 Owen Taylor + + * gtk/gtkthemes.c: Remove some unecessary includes. + +2000-09-08 Jonathan Blandford + + * gtk/gtktextdisplay.c + * gtk/gtktextlayout.c + * gtk/gtktexttag.c + * gtk/gtktexttag.h + * gtk/testtext.c: Change the overstrike property to strikethrough, + to closer match pango. + +Fri Sep 8 14:28:00 2000 Owen Taylor + + * gtk/gtktextview.c: Fix up visibility so that focus, + cursor_visible and blink interact properly. Reenable cursor blink + which had been roughly disabled. Make blink and focus + properly per-view. + + * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible): + Add a flag for whether to display insertion cursor and + a function to set the flag. + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change + get_line_y() to get_line_yrange(), to be a bit more generally + useful. + +Thu Sep 07 20:54:33 2000 George Lebl + + * gtk/gtkmenu.c: in gtk_menu_set_submenu_navigation_region + do stop_navigating_submenu, to clear last timeout properly. + Also in gtk_menu_motion_notify move ignore_enter above + the conditional to make it always happen as suggested by Owen + +2000-09-07 Tor Lillqvist + + * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o + + * gdk/win32/gdkwin32.h: Add more definitions missing from the free + w32api headers. + + * gdk/win32/gdkprivate-win32.h: Add a couple of missing + declarations. + + * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings. + (gdk_win32_get_colormap): A line had been deleted by mistake. + + * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too. + (gdk_event_translate): Handle more virtual keycodes to be able to + generate GDK events for Control-comma, Control-period, etc. + + * gtk/gtk.def: Add some missing entry points. + +Thu Sep 7 11:47:02 2000 Owen Taylor + + * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c: + Doc comment fixing. (Mostly non-matching parameter names.) + + * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify + comments a little to avoid looking like a doc comment. + + * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to + GTK_INPUT_ERROR. (Should the mechanism for erros in spin button + conversions be changed to GError?) + + * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): + Move private #defines into .c file. + + * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize + order of argument addition, remove duplicates. + + * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass): + parent class is FrameClass, not BinClass. + + * gtk/gtk.h: Add gtkinvisible, which was missing. + (It's occasionalyl useful for client apps, if seldom.) + + * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER + #define. + +Wed Sep 6 09:53:15 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space + coordinates when creating window, instead of GDK-space + coordinates. (Avoid BadValue on too large windows.) + +2000-09-05 Sebastian Wilhelmi + + * configure.in (use_mmx_asm): Remove conftest* after use along the + lines of AC_TRY_COMPILE. + + * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead + of g_dirname, which is deprecated. + (gtk_rc_parse_any): Removed calls to + g_scanner_{freeze,thaw}_symbol_table, which are deprecated. + + * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy): + Removed calls to g_hash_table_{freeze,thaw}, as they are + deprecated now. + + * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename + instead of g_basename. + +2000-09-04 Elliot Lee + + * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid + ANSI warning. + +Sun Sep 03 00:47:08 2000 George Lebl + + * gtk/gtkwidget.h: Add some documenting comments about + GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT + just as owen said on irc. + + * gtk/gtkwindow.c (gtk_window_set_default): Don't blindly + set HAS_DEFAULT. Only set it if there isn't another window + holding it (a focus window which RECEIVES_DEFAULT) and only unset + it if the widget is not the focused window with RECEIVES_DEFAULT. + This fixes weird double default bugs in dialogs which has things + call gtk_window_set_default at times. + +Fri Sep 1 22:39:07 2000 Owen Taylor + + * gtk/gtkmenu.[ch] TODO.xml: Apply patch from + Nils Barth and David Santiago to improve submenu + navigation. The patch does this by creating a triangular + region from the point where the pointer leaves the + menu to the submenu. While the pointer is in + that region and a timeout has not expired, events + that would cause the active submenu to change are + ignored. + +Fri Sep 1 15:34:46 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where + moving a toplevel window immediately after sizing it would + result in it being sized back to the old size since + impl->width, impl->height aren't updated until we hear + back from the server. There is still a (longstanding) bug + here that gdk_window_get_size() will give the wrong size + until we do hear back. + +2000-08-31 Havoc Pennington + + * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, + gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, + gtk/gtktexttagprivate.h, gtk/gtktextview.c: + Rename GtkTextStyleValues to GtkTextAttributes + +2000-08-31 Havoc Pennington + + * gtk/gtktextbtree.c (GtkTextBTree): cache end line, + for rapid testing whether an iterator is the end iterator + (gtk_text_btree_new): init end line cache + (gtk_text_line_is_last): use fast cached line to + see if we're the last line. + (get_last_line): use cached line here too, should + speed up some random unrelated code. + +2000-08-30 Havoc Pennington + + * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer + signals. + + * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and + delete_text signals. This allows the signals to be used for + implementing undo. + + * gtk/gtktextbuffer.c: Change signal handler signatures; + provide "interactive" argument when emitting insert_text or + delete_text signal. + +2000-08-30 Havoc Pennington + + * gtk/gtktextbuffer.c: Docs + +Fri Aug 25 12:16:15 2000 Owen Taylor + + * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP + from switch statements, since Tor removed the enumeration + value. + + * gdk/x11/gdkimage-x11.c (gdk_image_get): + s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/. + +2000-08-29 Elliot Lee + * */*.h: Use G_GNUC_CONST. + +2000-08-27 Havoc Pennington + + * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs, + minor indentation fixes, inserted some FIXME about stuff I + realized was broken while documenting it. + (gtk_text_iter_get_pixmap): allow out params to be NULL, following + GTK convention + +Tue Aug 22 12:33:24 2000 Owen Taylor + + * gtk/testgtk.c (create_styles): Fix double free of + font desc. + +Mon Aug 21 22:39:18 2000 Owen Taylor + + * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}. + + * gtk/testgtk.c (create_styles): Add a test for modifying + the style through gtk_widget_modify_*. + + * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add + a function to get the current modifier style. + + * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy + of the passed in GtkRcStyle instead of ref'ing it. + + * gtk/gtkrc.[ch]: Add gtk_rc_style_copy(). + +2000-08-20 Tor Lillqvist + + * gdk/gdkimage.h + * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the + shared memory image+pixmap GdkImage type, or + gdk_image_bitmap_new(). They were used in the gdk_imlib port, but + I am dropping that. + + * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to + actually call gtk_init_abi_check(), passing also + sizeof(GtkWindow). Ditto for gtk_init_check(). + + * gtk/gtk.def + * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check): + New functions, used to check that the GTK+-using code has been + compiled using the correct compiler and switches. In particular, + with gcc one has to use the -fnative-struct switch as GTK+ is + compiled with that. + +Fri Aug 18 17:27:46 2000 Owen Taylor + + * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling + ->prev fields when merging lists. (Found simultaneously + by Pawel Salek and Jakub Jelinek) + +2000-08-12 Tor Lillqvist + + * gdk/gdk.def + * gtk/gtk.def: Add missing entries. + + * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use + OUT_TT_ONLY_PRECIS, try to get a TrueType font. + + * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New + function. Dummy implementation at this point. + + * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer + rules. Undefine GTK_COMPILATION when compiling the test programs. + + * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import. + +2000-08-11 Tor Lillqvist + + * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8() + to convert back and forth from UTF-8 and the "system" (or "current + locale") charset when necessary. Indentation/spacing cleanup. + +2000-08-10 Havoc Pennington + + * Makefile.am (snapshot): Change the format of the snapshot + version to match glib + + * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h + from EXTRA_DIST since it doesn't seem to exist + +2000-08-10 Tor Lillqvist + + * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage" + version of the directory name (not the UTF-8 one) when building + the path name to stat(). + +2000-08-03 Elliot Lee + + * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a + PANGO_ATTR_SHAPE set. + +Thu Aug 3 09:17:06 2000 Owen Taylor + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from + Peter Osterlund to simplify the code while keeping the + functionality the same. + +Wed Aug 2 14:57:38 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move + is_viewable() test further inside the function, since removing the + window from the redraw list without clearing ->update_area + was also very broken. + +2000-08-02 Tor Lillqvist + + * configure.in: Check for . + +2000-08-01 Martin Baulig + + * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning() + to display the message that this is a development version of GTK+. + +Mon Jul 31 18:37:36 2000 Owen Taylor + + * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation + was depending on widget->allocation instead of the width of text_area, + which was incorrect for subclasses like GtkSpinButton. + + * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos + with width == 1 tests that should be width == -1. + +Mon Jul 31 16:45:48 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, + (broken, Elliot, every single window blank on X) custom code with call + to gdk_window_is_viewable() which a) prevents code duplicate and + b) works. + +2000-07-31 Elliot Lee + + * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order + to get the GDK_PARENT_ROOT() macro to work. + * gtk/gtkmarshal.list: Add NONE:STRING,POINTER + * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces + of, windows that aren't shown. + * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of + pointer grab stuff. + +Mon Jul 31 13:53:16 BST 2000 Tony Gale + + * docs/gtkfaq.sgml docs/gtk-faq.sgml: + s/gtk_main_iteration/g_main_iteration/ + + Did this already in change: + Mon Nov 15 17:17:51 GMT 1999 Tony Gale + don't know how it got reverted. + +2000-07-31 Stanislav Brabec + + * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and + gdk_arg_no_debug_cb to fix compilation problem with --disable-debug. + + * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3, + not gdk_pixbuf. + +2000-07-30 Pablo Saratxaga + + * configure.in,po/{sp,sr}.po: Added Serbian files + +2000-07-30 Tor Lillqvist + + * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST. + + * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue): + Remove the g_pipe_readable_msg stuff. Not needed with new GLib + GIOChannel implementation. + + * gdk/win32/gdkinput.c + * gdk/win32/gdkpango-win32.c: Update license name here, too. + + * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix + definition to match prototype. + + * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS. + +2000-07-27 Elliot Lee + + * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type + function, to allow handling image formats that cannot be detected + by looking at content alone. + +Thu Jul 27 13:13:21 BST 2000 Tony Gale + + * docs/tutorial/*.gif *.jpg *.eps + Update these to the same look-n-feel. + Why does including images in DocBook suck so badly? + +Thu Jul 27 05:06:29 2000 Tim Janik + + * gtk/gtktable.c: applied patch from Phil Thompson + that enables space settings for + the last row/columns as well. + +Wed Jul 26 12:59:31 2000 Tim Janik + + * *.[hc]: applied patch from Andreas Persenius that + updates the license headers to the GNU Lesser General Public License, + as well as updating the copyright year to 2000. + +2000-07-26 Robert Brady + + * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h + and po/Makefile, was installing and looking for them under gtk20 + and gtk2 respectively. + +2000-07-25 Havoc Pennington + + * gtk/testtext.c: Comment out some stuff that depends on the rest + of my patches. + +2000-07-25 Havoc Pennington + + * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text + buffer + +2000-07-25 Havoc Pennington + + * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text + widget changes. + + * gtk/gtktextview.h: To be consistent with usage of "line" + throughout the API to mean "newline-terminated thingy", change + MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH + to MOVEMENT_LINE. + + (GtkTextView): Add flags for default editability, and whether to + show the cursor. Add functions to get/set that. Add + + (gtk_text_view_get_iter_location): new function + + * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to + gtktextlayout.h + (g_convert): Add g_convert temporarily, will go in glib in a bit + + * gtk/gtktexttagtable.h: include gtktexttag.h, and define + GtkTextTagTableForeach instead of brokenly using GHFunc. + Change gtk_text_tag_table_foreach() so it doesn't use GHFunc. + + * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here, + moved to public header. + + * gtk/gtktexttag.h: Rename the "elide" attribute of tags to + "invisible", since "elide" was a bad name. + (gtk_text_tag_get_priority): Added + + (GtkTextStyleValues): put this in public header, along with + functions to use it. + + * gtk/gtktextmarkprivate.h: Include more headers, since we no + longer include gtktextbtree.h. + + * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref, + gtk_text_mark_deleted + + * gtk/gtktextlayout.h: Don't include the "really private" headers, + only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData + to make this possible. Now we only need to install + gtktextlayout.h, not gtktextbtree.h and gtktext*private.h. + (However the Makefile.am isn't changed yet because of the + logistics of merging gtk-hp-patches piecemeal) + + * gtk/gtktextiterprivate.h: include btree header, so it compiles; + rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since + gtk_text_iter_get_line is now used in the public API for a + different purpose. + + * gtk/gtktextiter.h: Clean up function names to be more + consistent. Always call char offset "offset" and byte index + "index". A "line" is always a line number. + + (gtk_text_iter_is_last): new function, more efficient than + the existing way to check + (gtk_text_iter_is_first): new function, also more efficient + + (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these + + (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from + gtk_text_iter_forward_char, etc. + + (gtk_text_iter_forward_to_tag_toggle): Renamed from + forward_find_tag_toggle, since this isn't a linear search + + (GtkTextCharPredicate): rename from GtkTextViewCharPredicate + + (gtk_text_iter_forward_search, gtk_text_iter_backward_search): + New functions, search for a buffer substring. + + * gtk/gtktextbuffer.h: Add fields to store whether a paste is + interactive and default editable (since we need to store that info + until we receive the selection data). + + Remove all the _at_char and at_line etc. versions of functions; + only have iterator versions. + + Add _interactive() versions of functions, that consider the + editability of text. (FIXME add interactive flag to the + insert/delete signals per Darin's suggestion) + + (gtk_text_buffer_get_tag_table): new function, demand-creates the + tag table if necessary + + Remove declaration of gtk_text_buffer_get_iter_from_string + + (_gtk_text_buffer_get_btree): private/internal function, added. + + + * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData. + (gtk_text_line_is_last): new function + +2000-07-25 Havoc Pennington + + * gtk/gtkprogressbar.h: Implement new sane, 5-function API for + using GtkProgressBar. See Changes-2.0.txt for details. + + * gtk/gtkprogressbar.c: Add object arguments "fraction" and + "pulse_step" which are the equivalent of + gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction. + Implement new API. + + * gtk/gtkprogress.h (struct _GtkProgress): Add a field + (use_text_format) to mark whether text set on the progress bar is + a format string. Deprecate entire GtkProgress interface. + + * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE + (gtk_progress_build_string): make this a no-op if use_text_format + is FALSE + + * docs/Changes-2.0.txt: Describe progress bar changes. + +2000-07-25 Tor Lillqvist + + * Makefile.am: Include the build directory. + + * configure.in: Generate build/Makefile, build/win32/Makefile, + gdk/, gdk/win32/, and gtk/makefile.mingw. + + * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf. + Add GETTEXT_PACKAGE. + + * gdk/gdk.def + * gtk/gtk.def: Updates. + + * gdk/gdkfont.h + * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't + need them any longer. + + * gdk/gdkinput.h: Mark gdk_core_pointer for export/import. + + * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with + PANGOWIN32_LIBS and gdk_pixbuf. + + * gdk/win32: Compiles, but no doubt doesn't work at all. + + * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. + + * gdk/win32/gdkinput.c: New file, temporarily. + + * gdk/win32/gdkinput-win32.h: New file + + * gdk/win32/gdkinputprivate.h: Remove. + + * gdk/win32/gdkpango-win32.c: New file. + + * gtk/makefile.mingw.in: New file + + * gtk/makefile.cygwin: Removed + + * gtk/Makefile.am: Update accordingly. + + * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and + made externally visible. + + * gtk/gtkmain.c: Use it. + + * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h + is enough. + + * gtk/gtktypeutils.c: Mark glib_debug_objects for import. + +2000-07-24 Elliot Lee + * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the + individual backends already. + * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together + again. Yes, there really is a good reason for this, if you are using the gdkregion + internals, and if you're not, why do you care? + * gdk/gdkwindow.c: Fix inverted condition + * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely). + * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb + * gtk/gtkrange.c: Redraw trough when moving. + * gtk/gtktypeutils.c: Fix warning by adding const cast. + * modules/linux-fb/basic.c: Fix unknown glyph retrieval. + +2000-07-23 Tor Lillqvist + + * configure.in: Check for mkstemp and sigsetjmp. Output + gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw. + + More work on GDK for Win32. Still in an intermediate state. + + * gdk/makefile.cygwin + * gdk/win32/makefile.cygwin: Removed. + + * gdk/makefile.mingw.in + * gdk/win32/makefile.mingw.in: New files. + + * gdk/Makefile.am + * gdk/win32/Makefile.am: Generate and distribute them. + + * gdk/win32/gdkwindow-win32.h + * gdk/win32/gdkdrawable-win32.h + * gdk/win32/gdkpixmap-win32.h: New files. + + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkcursor-win32.c + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkgc-win32.c + * gdk/win32/gdkimage-win32.c + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Update data structures. Cosmetics: + Rename fields and variables called xcursor, xid, etc (these names + were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc. + +Sat Jul 22 17:41:26 2000 Owen Taylor + + * gtk/gtkentry.[ch]: Fix some problems with vertical + alignment. + + * gtk/gtkentry.c (gtk_entry_find_position): Fix + char/byte confusion. + +Sat Jul 22 11:16:05 2000 Owen Taylor + + * gtk/gtktextview.c (changed_handler): Fix bug where + redraw wasn't being done properly when height of + dirty region changed. + + * demos/Makefile.am: Remove various references to + -lgmodule + +Fri Jul 21 15:28:13 2000 Owen Taylor + + * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new + PangoAttrShape to reserve space for pixmaps, add + GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps + in the display functions. + + * gtk/testgtk.c (create_layout): Set some more exotic + scrolled window options + + * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type): + Add function to set the shadow type of a window, to allow + putting a shadow around widgets such as GtkLayout or GnomeCanvas + which don't draw their own frame. + +Fri Jul 21 16:34:42 BST 2000 Tony Gale + + * docs/tutorial/package-db-tutorial.sh: New file for + packaging DocBook format tutorial + +Fri Jul 21 14:23:51 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Minor updates + + * docs/tutorial/*.jpg *.eps: Screenshots for tutorial + +2000-07-19 Tor Lillqvist + + * gtk/gtksignal.c: Fix C++ comment. + + * gtk/gtkimmulticontext.c + * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__, + don't return value from void functions. + + * gtk/gtk.def: Add gtk_rc_style_unref. + +2000-07-19 Sebastian Wilhelmi + + * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h, + gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h, + gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h, + gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h, + gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h, + gtk/gtktypeutils.h: Include files outside of the extern "C" + block. Makes some C++ compiler happy. Reported by Denis Vakatov + . + +Wed Jul 19 14:07:57 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Yet more clean ups. + Completes first pass. Hurrah! + +Tue Jul 18 17:17:55 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: More clean ups. + +Mon Jul 17 18:52:38 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to + paint the background of the text area which was accidentally + removed at some point. + + * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: + + - Move most of the functionality from the theme vtable + into GtkRcStyleClass and GtkStyleClass. The moved + vtable functions were changed a bit in the move to + work better in their new home. + + - Get rid of the engine and engine_data fields from + GtkRcStyle and GtkStyle; instead the theme + engine derives theme-specific subclasses of GtkRcStyle + and GtkStyle + + - Add extra dlsym() found entry point to themes, + theme_create_rc_style(). + + * gtk/gtkstyle.c: Copy xthickness, ythickness fields + in gtk_style_real_copy. + + * gtk/themes.[ch]: add a function gtk_theme_engine_register_type() + to register a type associated with an engine. (The engine + won't be unloaded as there is an instance of the type.) + + +Mon Jul 17 18:19:06 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Clean ups. + +Mon Jul 17 13:59:29 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots + of cleaning up to do. + +2000-07-15 Tor Lillqvist + + * gdk/testgdk.c: New file, quick hack to test backends for + pixel-by-pixel correctness of the most simple graphic operations. + +Fri Jul 14 20:30:25 2000 Owen Taylor + + * Really release 1.3.1 + + * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new + include structure. + +Fri Jul 14 18:40:39 2000 Owen Taylor + + * Released 1.3.1 + +Fri Jul 14 16:21:26 2000 Owen Taylor + + * gtk/gtktextlayout.c: use FALSE for size_only most + of the time when calling gtk_text_layout_get_line_display() + to avoid causing double reshapes when a redraw follows + immediately after. + +Tue Jul 11 11:13:40 2000 Owen Taylor + + * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate + appropriate region and gdk_window_process_updates() so trough + updating doesn't lag behind the window being scrolled. + + * gdk/gdkgc.c: Make parent_class pointer static. + +Sun Jul 9 21:31:23 2000 Owen Taylor + + * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c: + include . + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix + cut-and-paste error in computing memory offset for 4 channels. + +Fri Jul 14 14:05:02 2000 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove + gtk_rc_append_default_pixmap_path(), since it wasn't + adding an interesting path and we don't have a meaningful + default for this value. + +Fri Jul 14 12:22:49 2000 Owen Taylor + + * configure.in Makefile.am gtk-config.m4 gtk.m4: Move + gtk-config to gtk-config-2.0 move gtk_.m4 to + gtk-2.0.m4 + + * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am + gdk/Makefile.am demos/Makefile.am: Change + library names to libgtk-1.3.la, etc, so that we + can distinguish gtk-1.2 and gtk-2.0 on the linkline. + + * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am + gdk/Makefile.am gdk/x11/Makfile.am + Move include files into /usr/include/gtk-2.0, + /usr/lib/gtk-2.0/include/ + + * autogen.sh acconfig.h configure.in gtk/gtkmain.c + gtk/gtkintl.h: Change package for gettext from + gtk+ to gtk20. Put hack in autogen.sh to modify + po/Makefile.in.in after gettextize to make this + possible. + + * gtk+.spec: Some updates, not tested. + + * gdk-pixbuf/Makefile.am: Move loaders into + $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders. + + * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations + $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir + to THEMENAME/gtk-2.0/. Move engine directory to + $(libdir)/gtk-2.0/$(GTK_VERSION)/engines. + +2000-07-12 Tor Lillqvist + + Win32 changes, still doesn't build though. + + * gdk/makefile.cygwin + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Updates. + + * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same + default values for fg and bg pixel as X11 does (0 and 1), not + black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default. + Use 0 for pen width by default (treated as 1 anyway later, but for + apps that might check the value in the GdkGC). + (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public + interface to gdk_gc_predraw and _postdraw. + + * gdk/win32/gdkwin32.h + * gdk/gdk.def: Add gdk_win32_hdc_{get,release}. + + * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove + extraneous semicolon. + + * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0. + + * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth, + not the Win32 bitspixel value. + + * gdk/win32/gdkcc-win32.c: + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Changes to make compilable, with new + GDK object structure. + +Tue Jul 11 20:59:35 2000 Tim Janik + + * docs/tutorial/gtk_tut_12.es.sgml (name): + * docs/tutorial/gtk_tut_it.sgml (name): + * docs/tutorial/gtk_tut_fr.sgml (name): + * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely + outdated email adress: s/timj@psynet.net/timj@gtk.org/. + +Tue Jul 11 13:10:57 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Cleanup indenting and various + small changes. + +Tue Jul 11 08:04:58 2000 Tim Janik + + * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen + a bug here, never been here and never fixed anything ;( + (don't segfault if tree->root_tree is NULL, which happens prior + to widget realization, but puke instead). + +Tue Jul 11 06:38:42 2000 Tim Janik + + * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and + add the necessary tokens. + + * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style. + (gtk_rc_style_to_style): copy thicknesses. + (gtk_rc_init_style): apply thicknesses. + (gtk_rc_parse_style): parse xthickness and ythickness. + + * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements. + + * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): + (gdk_window_new): + (_gdk_windowing_window_init): + * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): + (gdk_pixmap_create_from_data): + (gdk_bitmap_create_from_data): + (gdk_pixmap_new): + * gdk/x11/gdkimage-x11.c (gdk_image_get): + (gdk_image_new): + * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): + * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): + * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get): + (gdk_colormap_get_system): + (gdk_colormap_new): + * gdk/gdkwindow.c (gdk_window_init): + * gtk/gtkstyle.c (gtk_style_new): + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): + * gdk/gdkpixmap.c (gdk_pixmap_init): + * gtk/gtkrc.c (gtk_rc_style_new): + use g_object_new() instead of g_type_create_instance() which + is a private function for fundamental type implementations. + +Thu Jul 6 16:12:14 2000 Owen Taylor + + * configure.in: Add check for db2html + +Thu Jul 6 14:53:05 2000 Owen Taylor + + * gtk/gtktypeutils.c (gtk_type_init): Add a temporary + hack to set glib_debug_objects based on gtk_debug_flags. + +Thu Jul 6 14:12:13 2000 Owen Taylor + + * INSTALL.in: Update the Prerequisites section. + + * Makefile.am demos/Makefile.am docs/Makefile.am + docs/tutorial/Makefile.am gdk/x11/Makefile.am + gdk/linux-fb/Makefile.am: Dist fixes + +Thu Jul 6 12:26:03 2000 Owen Taylor + + * NEWS: 10,000 foot view of 1.3.1 changes. + +Thu Jul 6 11:54:03 2000 Owen Taylor + + * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c + gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c + gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h + gdk/x11/gdkmain-x11.c: + + Patch from George Lebl to add a GdkGrabStatus enumeration to use + as a return value of gdk_*_grab(). Previously, we just + returned the X11 values directly. + +Thu Jul 6 11:27:44 2000 Owen Taylor + + * gdk/x11/Makefile.am: Patch from George Lebl to + install all the headers in the right place. + +Tue Jul 4 13:13:01 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Add remaining sections. Completes + initial conversion to DocBook. + +2000-07-04 Tor Lillqvist + + * README.win32: Improve a bit. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also + WM_SYSCHAR, and other changes to get handling of Alt+nnn or + Alt+0nnn on the numpad (used to enter characters by numeric code + from current DOS or ANSI codepage) working correctly, as in other + Windows apps. + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use + same argument validity tests as in X11 version. + (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon. + + * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor + definitions in case missing from headers. + + * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also + destroy the window-specific cursor. + (RegisterGdkClass): Use the global gdk_ProgInstance instead of + calling GetModuleHandle(NULL). + (gdk_window_set_cursor): Reworked to always copy the passed cursor + with CopyCursor before setting it as the window-specific + cursor. It is OK for the caller to destroy the GdkCursor (and thus + also its Windows cursor) after calling this function. Destroy any + previous window-specific cursor. + +Mon Jul 3 17:54:49 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): + font charset is iso8859-1, not iso-8859-1. + +Mon Jul 3 17:08:14 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): + Use g_get_charset() instead of g_get_codeset(). + + * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: + Comment out some strdup'ing functions to keep timj + happy until we finish fighting this out. + +Mon Jul 3 14:24:16 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with + <= width or height. + + * gtk/gtktable.c (gtk_table_attach): Fix missed merge + from 1.2 for parent/child states. + + * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple + of typos. + + * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of + event structures, replace with a generic axes field. Replace + deviceid/sourec with GdkDevice *device. + + * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function + to extract particular axis use value from event. (Also + can be used for normal X/Y.) + + * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision; + allow for arbitrary number of axes, namespace everything + as gdk_device_*. Replace guint32 deviceid with GdkDevice * + everywhere. + + * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: + Get rid of the gdk_input_vtable setup if favor of simply + defining the functions in gdkinput-none/gxi/xfree.c in + a similar fashion to the way that the port structure is + done. + + * gtk/gtkdnd.c: Fix fields of synthesized button press event + for new event structures. + + * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match + new device interfaces. + +Sun Jul 2 18:19:50 2000 Owen Taylor + + * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to + set the initial text. + + * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c + gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c + gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c + gtk/gtkvscale.c: Adapt to new argument of create_pango_layout(). + + * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new + pango_layout_set_font_description to simplify. + +Sun Jul 2 17:43:41 2000 Owen Taylor + + * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new + pango_layout_set_font_description to simplify. + +Sun Jul 2 17:06:40 2000 Owen Taylor + + * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c + gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use + pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'. + + * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with + PANGO_PIXELS() macro. + +Sun Jul 2 15:24:41 2000 Owen Taylor + + * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function + that returns a PangoContext owned by the widget and updated to + match future changes in the widget. Also, make + gtk_widget_create_pango_layout() use this context. If we ever + add a ::changed signal to PangoContext, this will make things + much more convenient. + + * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed() + in the appropriate places instead of destroying the layouts and + creating new ones. + + * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context() + in a few strategic places. + +Sun Jul 2 14:37:58 2000 Owen Taylor + + * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call + gtk_widget_size_request() on reparented child, if one. Otherwise, + queue_resize() on the child never results in it getting size-requested + at all. + + * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items + in option menus, so that (with luck) people won't copy it into + their apps in the future. + + * gtk/gtkoptionmenu.c: Connect ::size_request on the menu + to gtk_option_menu_calc_size. This isn't perfect, but should fix + a lot of problems with changing the size of the menu's menu + items after adding it to the option menu. + + * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language(). + + * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when + the text direction for a widget changes. + + * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use + ::direction_changed to get rid of various hacks. + +Sun Jul 2 13:19:12 2000 Owen Taylor + + * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate + name. + +Sun Jul 2 13:06:26 2000 Owen Taylor + + * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign + flag to the structure. Do not call XFreePixmap on pixmaps created + by gdk_pixmap_foreign_new(). + +Sun Jul 2 12:45:50 2000 Owen Taylor + + * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel + value using GdkRGB functionality given GdkColormap and GdkColor. + (name not final, waiting for inspiration.) + + * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to + set the foreground/background of a GC using the GC's colormap + and GdkRGB. (name not final, waiting for inspiration.) + + * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from + gdk_rgb_get_cmap(), put #define in gdkcompat.h. + + * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for + gtk_widget_get_visual(), gtk_widget_get_default_visual, etc, + purely a function of the corresponding colormap. Make + gtk_widget_set_visual(), etc, noop macros in gtkcompat.h. + + * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite + gdk_pixbuf_*create_from_xpm_* in terms of + gdk_pixbuf_new_from_xpm_data(), move into platform independent + code. + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take + advantage of the new draw_rgb_32_image_dithalign. + + * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added. + + * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap + on each created GC. + + * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap. + + * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure + which we initialize from the drawable when the GC is created, + if the drawable has a colormap. + + * gdk/x11/gdkgc-x11.c: include string.h for memset. + + * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc. + + * gtk/gtklayout.[ch]: Remove unsed configure serial member. + +Sat Jul 1 16:28:32 2000 Owen Taylor + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): When + actually returning expose events, make sure to set + the count field properly. + + * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix + accidentally reintroced bug which always cleared + the graphics_exposures value. + +Wed Jun 28 18:03:09 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Change DocBook layout slightly + +Wed Jun 28 17:49:05 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7. + +Wed Jun 28 13:31:55 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Start of Section 6. + +Mon Jun 26 19:37:04 2000 Owen Taylor + + * configure.in: Put 1.3.1 in warning message, not 1.3.0. + + (Fixes problem with drawing childless frames. Pointed out + by and a first patch from Anders) + + * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always + compute a child_allocation, even if we don't have a child. + + * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation): + Always chain to the parent's impl, even if we don't have a child. + +Mon Jun 26 18:53:31 2000 Owen Taylor + + * gdk/gdkrgb.c: If possible, create only a single shm segment and + use multiple parts of it instead of creating a bunch of separate + segments, since the maximum number of segments per system is not + large. (This might be worth backporting to GTK+-1.2.x if we make a + new release ) + + * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo + structure in preparation for per-colormap GdkRGB. + + * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm + to False when we get EINVAL from shmget so that the caller of + gdk_image_new can retry with a smaller segment size. + +Mon Jun 26 13:01:16 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Add Sections 4 & 5. + +Fri Jun 23 17:54:23 2000 Tim Janik + + * configure.in: make the current version number 1.3.1 (binary age 0, + interface age 0). + + * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*, + gtkcompat.h is all we want. + + * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of + GLib primitive types. fixed g_type_register_fundamental() argument + ordering. + + * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code + compiles. + + * gdk-pixbuf-loader.[hc]: get rid of unistd.h include. + object code cleanup, comment trigraph fixes, etc... + +2000-06-23 Havoc Pennington + + * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark + instead of making up a bogus name for first_para_mark + + * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow + 0 as a context ID + +Thu Jun 22 17:43:51 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Change filename. Add Section 3. + +2000-06-21 Havoc Pennington + + * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where + we didn't check window->bg_pixmap != GDK_NO_BG. + + * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of + gdk-pixbuf + +Thu Jun 22 14:02:19 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgm: Move file to here. + TODO: Update Makfile.am + +Thu Jun 22 13:41:09 BST 2000 Tony Gale + + * docs/gtk-faq.sgm: Add Section 2 + +Thu Jun 22 08:43:45 BST 2000 Tony Gale + + * docs/gtk-faq.sgm: New file. Start of DocBook + version of the FAQ. + +Wed Jun 21 23:04:17 2000 Owen Taylor + + * configure.in (GDK_PIXBUF_MAJOR): Define version + numbers for GDK_PIXBUF_*, as they get substituted + into a header file. Need to consider versioning + for gdk-pixbuf more carefully later. + +2000-06-21 Raja R Harinath + + Work with srcdir != builddir. + * demos/testanimation.c: Don't include "gdk-pixbuf.h". Use + , not "gtk-pixbuf/gdk-pixbuf-loader.h". + * demos/testpixbuf.c: Likewise. + * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h". + * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h". Use + . + * demos/pixbuf-demo.c: Use not "gtk.h". Don't include + "gdk-pixbuf.h". + * demos/Makefile.am (INCLUDES): Remove unneeded directories. + +Wed Jun 21 19:45:02 2000 Owen Taylor + + * TODO.xml: Change 1.4 version numbers to 2.0. + +Wed Jun 21 19:29:08 2000 Owen Taylor + + * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation + fixups to GTK+ standard. + +Wed Jun 21 16:38:13 2000 Owen Taylor + + * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard, + gdk-pixbuf. + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): + fixups for GObject. + + * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of + gdk-pixbuf with GDK dependencies moved into GDK. + + * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily + move gdk-pixbuf-loader here until GObject has signals. + + * demos/: New directory of demos. Move demos from + gdk-pixbuf here. + + * demos/pixbuf-init.c: Small bit of code to check for + loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found, + set GDK_PIXBUF_MODULEDIR appropriately. + + * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat + define which no longer makes sense. + +2000-06-21 Havoc Pennington + + * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use + gtk_get_default_language + + * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): + new function to get the default language + + * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: + s/gtk_text_view_style_values/gtk_text_style_values/ + + * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h: + Add a "language" field to tags. + + (gtk_text_tag_set_arg): Fix bug in setting + "bg_full_height_set" tag. + +2000-06-21 Havoc Pennington + + * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate + in the interfaces + + * gtk/gtktexttypes.c: Remove UTF functions, use glib + stuff instead when possible. + + * gtk/gtktexttypes.h: Delete some unused constants + + * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c, + testtextbuffer.c: use glib instead of custom unicode routines + +Wed Jun 21 12:50:58 2000 Owen Taylor + + * docs/es/: Removed mistakenly added generated sgml + + * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex: + Remove outdated info files. + + * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial: + Moved tutorial files into subdir + + * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into + subdir. + + * docs/man/gtk_button.pod: Remove. (contents will be + integrated into gtk-reference button page.) + + * configure.in docs/Makefile.am docs/tutorial/Makefile.am + docs/faq/Makefile.am: Adjust for new organization + +2000-06-21 Christopher Blizzard + + * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs) + not $(MKINSTALLDIRS) + +Wed Jun 21 12:24:28 2000 Owen Taylor + + * gtk/testgtk.c (create_text): Finish the job Elliot started + of removing font setting test for text widget. (Since text widget + and GdkFont are not deprecated, and cause portability problems.) + +Wed Jun 21 11:41:43 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c + gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c: + Remove use of libunicode in favor of new GLib functions. + + * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32, + nano-x, framebuffer. The X11 include is just a hack until we get + the necessary functions in gdkcolor.h, so there is no reason to + add other includes of platforms. + + * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert + window bigger than the screen change. + + * gtk/testgtk.c: Revert some random changes from Elliot + that had no particular point and were causing testgtkrc + not to function correctly. + + * gdk/gdkregion-generic.h: Revert change from Elliot. Just + because GdkSegment and GdkRegionBox have the same fields, + it doesn't mean that 'typedef GdkSegment GdkRegionBox' + results in clearer code. + + * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events, + gdk_input_translate_coordinates): Fix missed GdkObjectification + +2000-06-18 Elliot Lee + + * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way. + * gtk/gtk{plug,socket}.h: Missed commits from previous. + +2000-06-20 Havoc Pennington + + * modules/linux-fb/Makefile.am: Make this compile + without framebuffer enabled + + * gdk/linux-fb/Makefile.am: Add conditional to not build + framebuffer unless specified in configure + + * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting + the size of the target instead of source if -1 was passed for + width/height + + * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix + width/height confusion. + +2000-06-19 Havoc Pennington + + * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be + GDK_DRAWABLE_XID. In the future, we probably want to make it + faster with G_DISABLE_CHECKS turned on. + +2000-06-14 Havoc Pennington + + * gdk/Makefile.am: add gdkpixmap.c + + * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/ + s/gdk_image_init/_gdk_windowing_image_init + + * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject + ref/unref + + * gdk/gdkcolor.h: make GdkColormap a GObject subclass + + * gdk/gdkcompat.h: remove GdkWindowType compat, since + GdkWindowType is now non-deprecated; + change gdk_window_get_type() compat to be + gdk_window_get_window_type(). + + * gdk/gdkdnd.h: make GdkDragContext a GObject. + + * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure + virtual GObject. Make all functions call into the vtable. + Move gdk_image_put() guts in here. Remove GdkDrawableType + and gdk_drawable_get_type(), these are now GdkWindow-specific. + draw_image, get_depth, get_size, set_colormap, get_colormap, + get_visual added to the vtable. + + * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual + GObject. Virtualize everything. + (gdk_gc_new_with_values): remove check for destroyed window, + because now GdkWindow::create_gc will check this. + (gdk_gc_set_values): New function to set GC values, this + was already implemented but wasn't in the header + + * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject. + + * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove + _gdk_window_draw_image(), remove _gdk_windowing_window_class, + remove _gdk_window_class; add _gdk_window_impl_get_type() and + _gdk_pixmap_impl_get_type(). Rename gdk_window_init to + _gdk_windowing_window_init, rename gdk_image_init to + _gdk_windowing_image_init. + + * gdk/gdkpango.c: Reflect GObject-ification of PangoContext. + (gdk_draw_layout): Remove check for destroyed window, + because all the drawable methods already check it. + + * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject. + Add gdkpixmap.c which contains implementation of GdkDrawable + virtual table (by chaining to a platform-specific implementation + object). + + * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, + GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace + GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate, + GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate, + GdkColormapPrivate. + + * gdk/gdktypes.h: #include + + * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject. + Move most functionality to platform-specific implementation + object. GdkWindow itself now handles the backing store, then + chains to the platform-specific implementation. + (gdk_window_get_window_type): return GdkWindowType of the window. + (gdk_window_peek_children): New routine, returns the children of + a GdkWindow + (gdk_window_get_children): Was in X11-specific code and did + XQueryTree. Changed to simply return a copy of window->children; + so it can go in cross-platform code. + + * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path + + * gdk/x11/gdkcolor-x11.c: implement X-specific parts of + GdkColormap; just changed to use the new private data instead + of casting to GdkColormapPrivate. + + * gdk/x11/gdkcursor-x11.c: added a couple typechecks to + gdk_cursor_new(). + + * gdk/x11/gdkdnd-x11.c: Change the way we access private fields + (private data member in the GObject). + (xdnd_manager_source_filter): Function had broken + error handling, fix it (use gdk_error_trap_push). + + * gdk/x11/gdkdrawable-x11.c: This file now implements + a base class for GdkWindowImplX11/GdkPixmapImplX11. This + base class is purely for the convenience of the X port, + and not part of the interface to cross-platform GDK. + + * gdk/x11/gdkevents-x11.c: Reflect various renamings. + + * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's + specific to X, and returned by the create_gc virtual method + of GdkDrawableImplX11. + (gdk_x11_gc_set_dashes): Change this to take an array of gint8 + rather than gchar, this was also changed in the GdkGC vtable. + (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the + mask is 0, return immediately, instead of checking every flag. + This is faster, and keeps us from segfaulting if values is NULL + and the mask contains some nonzero flags. + + * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of + GdkWindow. + + * gdk/x11/gdkglobals-x11.c: change type of grab window, since + GdkWindowPrivate is gone. + + * gdk/x11/gdkim-x11.c: rename things that got renamed. + + * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and + remove the image_put stuff that got transferred to GdkDrawable. + + * gdk/x11/gdkinput.c: renamings + + * gdk/x11/gdkmain-x11.c: #include + + * gdk/x11/gdkpixmap-x11.c: GObject conversion + + * gdk/x11/gdkprivate-x11.h: indentation fixes + + * gdk/x11/gdkproperty-x11.c: renamings + + * gdk/x11/gdkselection-x11.c: renamings + + * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now + implements the platform-specific "impl" object. + Moved gdk_window_get_children to gdk/gdkwindow.c + + * gdk/x11/gdkx.h: Remove all the private structs and private datas + that no longer exist. Add declaration of GdkGCX11 object here. + Fix all the macros to still work. + + * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow, + GdkDragContext from the boxed types since they are now GObjects. + + * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject, + moved xthickness/ythickness into the instance. GtkStyleClass + functions are now in the standard vtable for GtkStyle, so you have + to create a GObject subclass to write a theme engine. + (gtk_style_copy): fixed a leaked PangoFontDescription + (gtk_style_init): renamed gtk_style_realize, so gtk_style_init + can be the standard GObject function. + + * Throughout GTK: + s/style->klass->[xy]thickness/style->[xy]thickness + s/pango_layout_unref/g_object_unref/ + + * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject. + + * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of + accessing GDK internals. + + * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of + accessing GDK internals. + +2000-06-18 Elliot Lee + + * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen. + + * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar + problem by calculating event position relative to the trough + rather than the slider. + * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate. + + * gdk/gdkgc.h: Add GDK_NOR. + + * configure.in, Makefile.am: Add modules top level dir + * configure.in: Only use pangox library if building x11 target. + * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use. + +Fri Jun 16 22:24:22 2000 Christopher Blizzard + + * gtk/gtkcolorsel.c: Change private class member to be named + private_data throughout the file. + + * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to + private_data to avoid clashing with keyword. + +Fri Jun 16 22:24:22 2000 Christopher Blizzard + + * gdk/gdkdnd.h: Add comment to remove warning. + +Sun Jun 18 15:35:35 2000 Pablo Saratxaga + + * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by + Byelorussian language; changed the Makefile and file names + to reflect that. + +Mon Jun 12 16:58:40 2000 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw + rather than gdk_window_hide; this makes things work + correctly if the window is programmatically hidden while + iconified. + +Sun Jun 11 12:46:19 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix + cut and paste typo where wrong pixmap was being + unref'ed. (Pointed out by a friend of KUSANO Takayuki.) + +Sun Jun 11 10:22:36 2000 Owen Taylor + + * gtk/gtkselection.c (gtk_selection_bytes_per_item): + Add helper function to compute format / bytes + relationship. Use in a couple places to fix up + errors which assume 8 * format. + + * gtk/gtkselection.c (gtk_selection_request): Use 32 + rather than 8 * sizeof (GdkAtom), to work correctly + on Alpha. + +Thu Jun 8 21:54:51 2000 Christopher Blizzard + + * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not + libgtk.la + (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11 + versions + + * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error + checking macros return NULL since the function has a return value. + +Wed Jun 7 15:44:42 2000 Owen Taylor + + * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping + GTK+ from building at all. + + * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues. + +Mon Jun 5 19:32:53 CEST 2000 Paolo Molaro + + * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am, + gtk/Makefile.am: make it possible to configure gtk for different + targets on the same platform. The library name is now + libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb + flag. Only the x11 target compiles right now. + * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h, + gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir. + * gdk/nanox/gdk*generic*: delete generic region code. + * gdk/linux-fb/gdk*generic*: delete generic region code. + * README.nanox: update information. + +Tue Jun 6 10:53:59 2000 Owen Taylor + + * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to + prepend not append. (Pointed out by Brett Hall.) + +Tue Jun 6 01:59:57 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout. + +Mon Jun 5 16:00:09 2000 Owen Taylor + + * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll + need this later, and this makes sure that the atexit for + glib gets called after that for GDK, so atexits are + properly ordered for object leak checking. + + * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit(). + + * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call + pango_x_shutdown_display() + + * gtk/simple.c (main): Close window on destroy. + +Mon Jun 5 11:50:02 2000 Owen Taylor + + * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need + to treat initial creation different from setting with + regards to the graphics-exposures parameter, so add a parameter + indicating whether this is initial or not. + +Mon Jun 5 13:29:31 2000 Owen Taylor + + * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose() + to sort of work by adding an extra return_exposes arg + to gdk_event_translate() - it might be better to simply + deprecate the function altogether and force people to rewrite + without it. gdk_window_scroll() handles most of it, and where + gdk_window_scroll() doesn't work, simply redrawing more does. + + * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up + assertion. + + * gtk-config.in: Include PANGO_CFLAGS/LIBS. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a + bunch of pretty much useless /* Print debugging info */ comments + which had drifted away from the code they were commenting. + +2000-06-02 Havoc Pennington + + * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer + is in working order. + + * gtk/testtext.c: Change to reflect anonymous mark API + + * gtk/gtktextview.c: Convert from mark names to GtkTextMark*. + + * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size + field, which was unused. + + * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro, + saves some typing. + + * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark* + + * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable + flag on the insertion point and selection bound + + Throughout, use GtkTextMark instead of GtkTextLineSegment, and + make mark-manipulation functions take a GtkTextMark* instead of a + mark name. + + * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to + GtkTextMarkBody; will be used to detect attempts to delete + the permanent marks (insert and selection bound) + + * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer + +Fri Jun 2 12:56:01 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED + flag to on. + + * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): + Honor DOUBLE_BUFFRED_FLAG + + * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a + function to set the DOUBLE_BUFFERED flag. + + * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether + or not exposes done on the widget should be double-buffered. + + * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations + to be what would be expected. (Fixes problem with a + g_return_if_fail() validating a TextDirection enumeration) + +Thu Jun 1 23:05:13 2000 Owen Taylor + + * gtk/gtkwidget.c: Remove all references to + offscreen flag which was no longer used. + + * gtk/gtkprivate.h (enum): Remove unused flags and compress. + + * gtk/gtkframe.c (gtk_frame_set_label_widget): Check + for non-null label_widget->parent. + + * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute + which no longer was used. + + * gdk/gdkpango.c (gdk_pango_context_get_info): make static. + + * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks + for null arguments. + + * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add + check for destroyed windows. + +Thu Jun 1 13:48:45 2000 Owen Taylor + + * gtk/gtkimmulticontext.c: Add a finalize method and unref + the slave context there. + + * gtk/gtkinvisible.[ch]: Make reference counting behavior + identical to GtkWindow. + +Thu Jun 1 01:54:11 2000 Owen Taylor + + * Makefile.am gdk/gdkpango.c: Copy the layout render function from + pangox to here, so we can write them independent of rendering + system, using GDK primitives. + + * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c + gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable, + since we have a rendering-system independent implementation in + terms of draw_glyphs(). + + * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New + function to render a single line. + + * gdk/x11/gdkpango.c: Move the guts of this file mostly + into ../gdkpango.c, which simplifies things, since we + don't have to deal with raw X gc's. + +Fri May 19 04:28:16 2000 Owen Taylor + + * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to + get the logical attributes for a given GtkTextLine. + +Tue May 30 16:05:39 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track + g_locale_get_codeset() to g_get_codeset() change. + +Tue May 30 15:03:19 2000 Owen Taylor + + * gtk/testcalendar.c (calendar_font_selection_ok): Use font + descriptions. + + * gtk/gtkentry.c (gtk_entry_draw_text): Center text within + the entry. + + * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of + redoing (vastly simplifying) for Pango. Still needs quite + a bit of work. (Size selection is currently poor. List of + predefined sizes is not a good idea, since all of these + sizes won't necessarily be distinct.) + +Tue May 30 13:50:19 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle + CODESET results for LANG=C. + +Mon May 29 15:49:10 2000 Owen Taylor + + * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC + which takes a stringized pango font description; + ignore the older 'font' and 'fontset' declarations. + + * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font + field with a GdkFont derived via gdk_font_from_description(), + for compatibility. (Should we just remove it entirely? + Probably too much compatibility breakage, but people + should be migrating to the new Pango stuff as quickly + as possible.) + +Mon May 29 15:47:41 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/. + +Mon May 29 15:44:46 2000 Owen Taylor + + * gtk/gtkcalender.c: Roughly pango-ized. Really needs + redoing; there are some bugs in size allocation right + now, the semi-existant distinction between header / day + fonts was removed, but, with Pango, could actually + be made functional in a nice way. + + * gtk/testcalender: Move calender from examples into this + directory as a test program. (We really need to restrcture + testgtk into a whole directory full of tests for every + widget or functionality group, separated into multiple .c + files.) + +Mon May 29 15:19:56 2000 Owen Taylor + + * gtk/testgtk.c (file_exists): Fix stupid typo that + was keeping RC file from being loaded. + + * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized + RC file font code. + +Mon May 29 14:31:27 2000 Owen Taylor + + * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description): + Add function to load a GdkFont from a PangoFontDescription. + +2000-05-29 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event" + variable should be of type GdkEventPrivate. + +Fri May 26 17:16:40 2000 Owen Taylor + + * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able + to have any widget for the label, use a GtkLabel widget + to display the text. (Based partially on a patch from + Anders Carlson.) + + (Quite a bit of code reorganization - strip 90% of the + guts out of gtkaspectframe and add a single virtual + func to GtkFrameClass - compute_child_allocation.) + +Fri May 26 12:00:02 2000 Owen Taylor + + * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized. + (Removed clist->row_center_offset field because caching + it wasn't saving time or code, added private function + _gtk_clist_create_cell_layout()). + +Wed May 24 15:59:37 2000 Owen Taylor + + * gtk/gtkaccellabel.c: Pangoized. + + * gtk/[hv]ruler.c: Pangoized + +Mon May 22 19:23:59 2000 Owen Taylor + + * gtk/gtkfilesel.c (gtk_file_selection_init): + Use gtk_clist_set_column_auto_resize() to remove need + need for manual column width computations. + +Mon May 22 18:50:26 2000 Owen Taylor + + * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, + ensuring Pango correctness, and considerably simplifying the + code. + + * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE. + + * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect + getting of numbers of lines. + + * gtk/gtklabel.c (gtk_label_size_request): Set the requisition + to the actual requested width of the lable, not to the wrap + width we set. + + * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h. + + * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c + gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes. + + * gtk/gtktextview.c: Fix structure inheritance. + + * gtk/gtkprogressbar.c: Pangoize. + +Mon May 22 15:47:30 2000 Owen Taylor + + * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate + in a function. + + * gtk/gtktextlayout.c (find_display_line_above): Fixed + bug with computing line tops. + + * gtk/gtktextview.c (changed_handler): Fix < , <= confusion. + +Thu May 18 18:53:31 2000 Owen Taylor + + * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset + and y_offset coordinates to do what we need now. (The offset between + buffer and layout coordinates has been reintroduced, but is a + bit different than before.) + + * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead + handle the adjustments ourselves, and scroll as necessary using + the new gdk_window_scroll(). + + The advantage of this is that when we are incrementally revalidating, + we are essentially rearranging things around the visible portion + of the screen. With the old setup, the visible portion of the + screen was moved around in the layout, so scrolling and redrawing + to track that caused jumping of the display. Since we now + control the scrolling ourselves, we can suppress this and + only redraw when things actually change. + +Thu May 18 18:47:25 2000 Owen Taylor + + * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate + the region not just redisplay it after-all, since we store the + cursors in the LineDisplay. (Ugly interactions here between + GtkLayout and GtkTextBTree here.) + + * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison. + +Thu May 18 18:43:21 2000 Owen Taylor + + * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): + Added function to scroll contents of a window while keeping the + window constant. Works by XCopyArea or guffaw-scrolling depending + on the details of how the window is set up. (guffaw-scrolling + still needs to be filled in.) + +Wed May 17 22:36:53 2000 Owen Taylor + + * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget, + move the debugging that was tied to a global variable + to that. + + * gtk/gtkmarshal.list: Add NONE:INT,INT,INT + + * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate + validated flag, in line data instead of setting height/width to + -1. This allows us to perform operations with partially invalid + buffer (using the old size for invalid lines) and thus to do + incremental vaidation. Keep height/width aggregates up to date + when deleting text and rebalancing the tree. + + * gtk/gtktextbtree.[ch]: Add functions validate a line + (gtk_text_btree_validate_line), and to validate up + to a number of pixels (gtk_text_btree_validate). + + * gtk/gtktextlayout.[ch]: Add an ::invalidated signal + that indicates that something is changed and a revalidation + pass is needed. Change ::need_repaint to ::changed, and + make it take old and new yranges instead of a rectangle. + + * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move + the line_data_destroy() function from + gtk_text_btree_add_view() to a virtual function in + GtkTextLayout + + * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(), + since we are handling partial repaints in a different fashion + now. + + * gtk/gtktextbtree.[ch]: Only repaint the changed portion + of the selection instead of queueing a repaint on the + entire widget. + + * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move + get_selection_bounds() down to btree, make the function + in buffer a wrapper around the btree function. + + * gtk/gtktextlayout.[ch]: Add functions to check if the + layout is valid and to recompute either a range of pixels + aroudn a line or a certain total number of pixels. + + * gtk/gtktextlayout.[ch]: Cache a single line display; + now that we only redraw the needed portions, the hit rate + for this cache is quite high. + + * gtk/gtktextview.[ch]: Keep track of the first paragraph + on the screen so that when re-laying-out the buffer, we can + keep the same place. This requires connecting to ::value_changed + on the adjustments + + * gtk/gtktextview.[ch]: Add idle functions to revalidate + the buffer after we receive an ::invalidated signal. + +Wed May 17 22:10:47 2000 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper + to max of allocation and layout size, not just to the + layout size. + + * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): + Invalidate window so it gets redrawn properly. + + * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL + to mean the entire window. + + * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW + into public header. + +Mon May 15 14:51:31 2000 Owen Taylor + + * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function + to get the name of a mark. + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function + to find the paragraph from a y position. + +Thu May 11 12:57:20 2000 Owen Taylor + + * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid + nodes have width/height >= 0, not > 0. + +Tue May 9 21:29:06 2000 Owen Taylor + + * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display): + Add a size_only flag, so when we only need the size, we don't create + useless appearance attributes. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove + duplicate setting of font description. + + * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 + +Wed Apr 26 01:53:23 2000 Owen Taylor + + * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into + EXTRA_DIST. It does not work well when the file that + everything depends on is not in the tarball. + +Wed Apr 26 00:56:14 2000 Owen Taylor + + * gtk/testgtk.c: Some hacks and fixes so that it basically + works when not sitting in the GTK+ build tree. + +2000-05-03 Havoc Pennington + + * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag): + Properly determine the ordering of the tag root and the current + line within the tree. Previous algorithm only worked if the tag + root's immediate parent was the common root of both the current + line and the tag root. + +Wed Apr 26 00:43:00 2000 Owen Taylor + + * gtk/gtktextlayout.c (set_para_values): Fix some bugs in + alignment. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track + the widget text directional dynamically. + + * gtk/gtktextview.[ch]: Added functions to get and set default + wrap mode. + +Tue Apr 25 23:47:38 2000 Owen Taylor + + * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug + in cursor location computation. + +Tue Apr 25 23:22:59 2000 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/ + vadjusment values properly when layout gets smaller. + + * gtk/gtktextview.c (need_repaint_handler): Areas being + passed in are far completely inaccurate, and sometimes + too small, so, for now, just queue a redraw on the + whole visible region. + +2000-04-25 Havoc Pennington + + * gtk/gtktextbtree.c (summary_destroy): new function to + destroy tag summary nodes + (gtk_text_line_next_could_contain_tag): this function was + totally broken if the line passed in wasn't below the tag + root. Fix it. + (gtk_text_btree_first_could_contain_tag): In the tag == NULL + "wildcard" case, we have to do a linear scan. Blah. + (gtk_text_btree_last_could_contain_tag): In tag == NULL case, + we have to do the linear scan + (tag_removed_cb): When a tag is removed from the tag table, + remove the GtkTextTagInfo node from the btree. + (gtk_text_btree_spew): Implement the spew function, for + our debugging pleasure. + +Tue Apr 25 19:40:18 2000 Owen Taylor + + * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix + a problem with referring to the wrong buffer. + + * gtk/gtkentry.c: Fix focus-in/focus-out confusion. + + * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default + font description to gtk_style_new() - otherwise things + don't work without a .gtkrc file. + + * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the + tags table if we create it ourself, too. + + * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since + it was conflicting with XKB modifiers. + + * gtk/gtktextview.[ch]: Add simple support for + GtkIMContext. + +Mon Apr 24 19:34:18 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem + with deletion from last commit. + +Mon Apr 24 19:29:40 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language + in the context from the current locale. + + * gtk/gtkentry.c (gtk_entry_size_request): Use language from the + context, not hardcoded value. + + * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual, + not logical. + +Sun Apr 23 23:39:18 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as + attributes - that doesn't handle partial-glyph selection + properly. Instead use new pango_layout_line_get_x_ranges() + functionality to draw the selection. + + * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x() + now properly handles out-of-range coordinates. + + * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved. + + * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte() + public. + + * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext + for paragraphs opposite to the base direction of the widget. + + * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment. + + * gtk/gtktextlayout.c: Don't split segments on marks, since that + causes Arabic words to reshape as you cursor through. + + * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual + cursor position when moving vertically with the arrow keys and + scrolling with page-up/page-down. (Arrow keys save only the X, + scrolling saves both X and Y.) + + This means you can line-up / line-down or page-up / page-down + without losing your place, and also that moving vertically + with the cursor keys keeps the same X position, not the same + character count: + + * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical + arrow keys move by display lines, not paragraphs. + +Tue Apr 18 14:16:50 2000 Owen Taylor + + * gtk/gtklayout.c: Make sure that the bin window is at least + as big as the allocation. (Should we also make sure that the + bin window is big enough to completely cover widget->window?) + + * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add + function to get the onscreen rectangle. + + * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account + for offsets in window coordinates. + +Sun Apr 16 16:13:27 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset + confusion. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction + from the widget direction. + + * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): + Add a "direction" attribute. + + * gtk/gtktextview.c: global s/tkxt/text_view/. + + * gtk/testtext.c: Added long block of text in Arabic, to test out + the direction attributes. (Some problems with the shaping system + for arabic become obvious - like the fact the cursor splits words + into unjoined pieces.) + +Fri Apr 14 12:54:34 2000 Owen Taylor + + * gtk/gtktextdisplay.c (render_layout): Add overstrike handling. + + * gtk/gtktextlayout.c: Fix up alignment. + + * gtk/testtext.c: Add some tests for centering, wrapping. + +Fri Apr 14 09:26:22 2000 Owen Taylor + + * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c: + Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs(). + If we wrote GTK+-specific layout-render function this could just replace + the draw_layout() operation in the vtable. + + * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to + pango_layout_get_cursor_pos() and use that function. + + * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it + is a non-static symbol. + + * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y() + with gtk_text_btree_find_line_by_y() + + * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout + renderer that handles GtkTextAppearance attributes. + + * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: + + - Move the values in the style that don't affect geometry into a + GtkTextAppearance structure. + - Change underline to take a PangoUnderline and "font" a string + representation of a font description + - Add a "font_desc" attribute which takes a FontDescription structure. + + * gtk/gtktextlayout.[ch]: + + - Get rid of the display-line list per each line. Instead, we + generate, on demand, a GtkTextLineDisplay structure which] + contains a PangoLayout * and other necesary information + (offsets, cursor locations) for displaying a paragraph. + - Get rid of the code to wrap lines, create display chunks, + etc. Instead, we just go through a paragraph and convert + it into the necessary inputs to a PangoLayout. + - Implement a new attribute type, GtkTextAttrAppearance. This + holds a GtkTextAppearance, and is used to pass colors, + stipple, etc, through from the layout to the display without + having to use lots and lots of individual attributes. + - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos() + in terms of PangoLayout functions. + + * gtk/gtktextview.c: + + - Handle passing the necessary PangoContext to the layout + - Some fixups in painting to deal with the automatic backing store + and offsetting of GTK+-1.4 + - Add a style_set handler so that the default style reacts + properly to theme changes. + + * gtk/gtktext?*.[ch]: Random code-style fixes. + + * gtk/testtext.c: Substitute in languages that Pango handles now for Thai + +Mon Apr 10 10:33:45 2000 Owen Taylor + + * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget, + in original form preparatory to Pango-ization and gdkimcontext-ization. + +Thu Apr 6 19:25:39 2000 Owen Taylor + + * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs, + so that we can derive from gtkimcontext in language bindings properly. + +Thu Apr 6 16:02:52 2000 Owen Taylor + + * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval. + Add a compose table including (almost) all the compose combinations + from X. This is 6k of static, shared data as opposed to 50k or so of dynamic + data in the XIM implementation. + + * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval): + Moved functions to convert keyvalues from and to unicode here from + the win32 port and made them public. + +Wed Apr 5 16:37:29 2000 Owen Taylor + + * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1. + +Wed Apr 5 16:27:45 2000 Owen Taylor + + * gtk/gtkimcontext.[ch]: Base class for new input context system + + * gtk/gtkimmulticontext.[ch]: Proxy input context that allows + the real input context implementation to be loaded from modules + and switched on the fly. + + * gtk/gtkcontextsimple.[ch]: Simple implementation of an input + context that just does direct keysymbol => unicode translation. + + * gtk/gtkentry.[ch]: Start switching editing over to using + GtkInputContext. (No handling of preedit yet.) + +Wed Apr 5 15:48:41 2000 Owen Taylor + + * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too + many substitutions. (klass should not be subsituted.) + +Wed Apr 5 00:18:14 2000 Owen Taylor + + * configure.in: Add checks for Pango + + * configure.in docs/Makefile.am: Add test for sgml2html + and allow 'make dist' without building html, but print out + warnings in that case. (For making snapshots) + + * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am: + Add Pango libraries and C flags + + * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c: + Add function (gdk_draw_layout) to draw a pango layout. + + * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions + for getting Pango contexts for GDK. + + * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set() + + * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional + editing. + + * gtk/gtkentry.c: Hack in simple Hebrew input with direct + keysym => unicode translations. More languages can be added + here, but real input-method support is needed. + + * docs/Changes-1.4.txt: Added note about entry behavior. + + * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions + to set the reading direction for a widget and the global direction. + Add test which allows toggling the global direction. Two private + flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR) + + * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c + gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c + + * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango + + * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking, + underlining now handled by Pango. + + * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription + to RCStyle and Style. (Having both this and the old font name and GdkFont + is temporary.) + + * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added + convenience functions for creating contexts and layouts for widgets. + + * gtk/testgtk.c: Enhance label tests with multilingual labels. + +2000-05-29 Jonathan Blandford + + * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the + titles to be active, even if they aren't visible. + (gtk_clist_column_titles_passive): Ditto. + +2000-05-21 Nils Barth + + * gtkmenu.c: + * gtkmenu.h: + * gtktypeutils.h: Spelling/grammar fixes in comments. + +Tue May 23 12:25:07 CEST 2000 lupus + + * gdk/nanox/*.h: add missing header files. + +Fri May 19 11:52:59 2000 Tim Janik + + * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set + send_event to TRUE. + (gtk_drawing_area_size): queue a resize. + +Sun Mar 26 03:21:28 2000 Tim Janik + + * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing + the handlers, also invalidate them. bug nailed down by Karl Nelson + . + +Fri May 19 06:49:23 2000 Tim Janik + + * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle + "(nil)" foundries, patch from Grigorios Magklis. + + * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash + on non-available fonts, based on a patch by Grigorios Magklis + . + +2000-05-18 Elliot Lee + + * gdk/x11/gdkregion-generic.c: If a region does not have any + rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT + instead of GDK_OVERLAP_RECTANGLE_IN. + +2000-05-17 Jonathan Blandford + + * gtk/gtklayout.c (gtk_layout_map): Remove references to + OFFSCREEN, as it is no longer necessary. + +Wed May 17 10:52:12 2000 Owen Taylor + + * gtk/gtkcolorsel.c: Patch from David Santiago + to change things so that the + indicator of the active palette entry is done independently, + not via the focus, since it should always be visible. + +2000-05-17 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same + refcount leaks as in the X11 backend. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging + cosmetics. + + * gdk/win32/gdkwindow-win32.c: Similar changes as in X11 + backend. Add _gdk_windowing_window_destroy(). + + * gtk/gtkcolorsel.c: Include correct backend-specific header. + Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR + either, but these probably do exist on nanox?) + + * gtk/gtkhsv.c: Use G_PI (fresh from ) instead of M_PI + which isn't necessarily defined by . + + * gtk/gtkobject.c (gtk_object_init): Don't go up the class + ancestry past GtkObject. + + * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import + from DLL on Win32. + + * gtk/gtk.def: Update corresponding to recent changes. + + * gtk/makefile.{cygwin,msc}: Updates. + +Fri May 12 18:46:51 2000 Owen Taylor + + * docs/Changes-1.4.txt: A bit of editing. + + * gdk/gdkwindow.c (_gdk_window_clear_update_area) + * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function + to clear the update area for the window, and clear it + when hiding a window. + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore + if window destroyed. + + * gdk/gdkwindow.c (gdk_window_end_paint): Likewise. + + * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move + gdk_window_destroy() to the generic code, since there was a lot of + window-system-independent logic it in. Add a function: + + _gdk_window_destroy() + + to the internal API to destroy a window without unreferencing it. + Add a function: + + _gdk_windowing_window_destroy() + + That does the windowing-system-dependent part of destroying + the window. + +Fri May 12 11:07:41 2000 Owen Taylor + + * gtk/testgtk.c: Fix various memory leaks of pixmaps. + +Fri May 12 11:06:10 2000 Owen Taylor + + * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): + Make gtk_widget_shape_combine_mask() keep a reference count on + the pixmap since it keeps it around. + +Fri May 12 10:53:29 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount + leak. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount + leak with event filters. + +Thu May 11 14:29:44 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the + signal handlers with the right data arguments. (Fixes + some warnings when a widget was repeatedly set as a drag + destination.) + + * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the + window so we can avoid avoid setting the DND properties on the + toplevel window repeatedly. + +2000-05-13 Tor Lillqvist + + * gdk/win32/gdkwin32.h: Define more message types missing from + mingw headers. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY + call gdk_window_destroy_notify(). It was never called. This + probably meant that the GdkWindow was never freed. Thanks Owen for + noticing (!). + + * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark + window as destroyed before calling DestroyWindow(). DestroyWindow() + causes a call to the window procedure (gdk_WindowProc), which + calls gdk_event_translate(), which calls + gdk_window_destroy_notify(), which gets confused unless the window + is set as destroyed. + + * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename + this function to indicate it's win32 only. Put inside #ifdef + G_ENABLE_DEBUG. + + * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New + debugging function. (gdk_event_translate:) Add a default branch + that uses the above function to print debug messages with all + Windows messages symbolically. + + * gdk/win32/gdkprivate-win32.h: Declare it, and + gdk_win32_color_to_string, but only if G_ENABLE_DEBUG. + +Fri May 12 20:07:32 2000 Tim Janik + + * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a + public header file. + +Fri May 12 17:13:32 2000 Tim Janik + + * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition. + + * gtk/gtktext.c: made the adjustments no-construct args, simply + provide default adjustments. + (gtk_text_destroy): release adjustments. + + * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the + adjustment argument non-construct. + + * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here, + instead of in finalize. + (gtk_progress_get_text_from_value): + (gtk_progress_get_current_text): + (gtk_progress_set_value): + (gtk_progress_get_percentage_from_value): + (gtk_progress_get_current_percentage): + (gtk_progress_set_percentage): + (gtk_progress_configure): ensure an adjustment is present. + +Thu May 11 01:24:08 2000 Tim Janik + + * gtk/gtkcolorsel.[hc]: + * gtk/gtkcolorseldialog.[hc]: + * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain + their parent implementation, use bit fields for boolean values, don't + create unused widgets, usage of glib types, braces go on their own + lines, function argument alignment, #include directives etc. etc. etc.. + + * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h. + +Wed May 10 23:29:52 2000 Tim Janik + + * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips. + + * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state + of NULL. + + * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references + to freed data. + (gtk_combo_destroy): don't keep a pointer to a destroyed window. + + * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer + to NULL when the toplevel is getting destroyed. + (gtk_menu_set_tearoff_state): same here for the tearoff_window. + (gtk_menu_destroy): + (gtk_menu_init): store the information of whether we have to + readd the initial child ref_count during destruction in a new + GtkMenu field needs_destruction_ref_count. + + * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it + here, those reading: learn from my mistake! ;) + in order for set_?adjustment to support a default adjustemnt if + invoked with an adjustment pointer of NULL, the code read (pseudo): + if (v->adjustment) unref (v->adjustment); + if (!adjustment) adjustment = adjustment_new (); + if (v->adjustment != adjustment) v->adjustment = ref (adjustment); + now imagine the first unref to actually free the old adjustment and + adjustment_new() creating a new adjustment from the very same memory + portion. here, the latter comparision will unintendedly fail, and + all hell breaks loose. + (gtk_viewport_set_hadjustment): + (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL + after unreferencing it. + + * gtk/gtkcontainer.[hc]: removed toplevel registration + functions: gtk_container_register_toplevel(), + gtk_container_unregister_toplevel() and + gtk_container_get_toplevels() which had wrong semantics + anyways: it didn't reference and copy the list. + + * gtk/gtkwindow.c: we take over the container toplevel registration + bussiness now. windows are registered across multiple destructions, + untill they are finalized. the initial implicit reference count + users are holding on windows is removed with the first destruction + though. + (gtk_window_init): ref & sink and set has_user_ref_count, got + rid of gtk_container_register_toplevel() call. add window to + toplevel_list. + (gtk_window_destroy): unref the window if has_user_ref_count + is still set, got rid of call to + gtk_container_unregister_toplevel(). + (gtk_window_finalize): remove window from toplevel list. + (gtk_window_list_toplevels): new function to return a newly + created list with referenced toplevels. + (gtk_window_read_rcfiles): use gtk_window_list_toplevels(). + + * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange + adjustment a non-construct arg. + * gtk/gtkvscale.c (gtk_vscale_class_init): likewise. + * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise. + * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise. + + * gtk/gtkrange.c: added some realized checks. + (gtk_range_destroy): get rid of the h/v adjustments in the + destroy handler instead of finalize. remove timer. + (gtk_range_get_adjustment): demand create adjustment. + + * gtk/gtkviewport.c: made h/v adjustment non-construct args. + we simply create them on demand now and get rid of them in + the destroy handler. + (gtk_viewport_destroy): get rid of the h/v adjustments in the + destroy handler instead of finalize. + (gtk_viewport_get_hadjustment): + (gtk_viewport_get_vadjustment): + (gtk_viewport_size_allocate): demand create h/v adjustment + if required. + + * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the + gtk_widget_real_destroy () functionality. + (gtk_widget_real_destroy): reinitialize with a new style, instead + of setting widget->style to NULL. + +Fri May 5 13:02:09 2000 Tim Janik + + * gtk/gtkcalendar.c: + * gtk/gtkbutton.c: ported _get_type() implementation over to + GType, either to preserve memchunks allocation facilities, + or because Gtk+ 1.0 GtkTypeInfo was still being used. + + * gtk/gtkobject.[hc]: derive from GObject. ported various functions + over. prepare for ::destroy to be emitted multiple times. + removed reference tracer magic. chain into GObjectClass.shutdown() + to emit ::destroy signal. + + * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being + fundamental. + + * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init() + cludge. + + * gtk/gtksocket.c: + * gtk/gtkplug.c: + * gtk/gtklayout.c: + * gtk/gtklabel.c: + * gtk/gtkargcollector.c: + * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT + not being a fundamental anymore, and to work with the new + type system (nuked fundamental type varargs clutter). + + * gtk/*.c: install finalize handlers in the GObjectClass + part of the class structure. + changed direct GTK_OBJECT()->klass accesses to + GTK_*_GET_CLASS(). + changed direct object_class->type accesses to GTK_CLASS_TYPE(). + + * gtktypeutils.[hc]: use the reserved fundamental ids provided by + GType. made most of the GTK_*() type macros and Gtk* typedefs + simple wrappers around macros and types provided by GType. + most notably, a significant portion of the old API vanished: + GTK_TYPE_MAKE(), + GTK_TYPE_SEQNO(), + GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST, + GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST, + GTK_TYPE_ARGS, + GTK_TYPE_CALLBACK, + GTK_TYPE_C_CALLBACK, + GTK_TYPE_FOREIGN, + GtkTypeQuery, + gtk_type_query(), + gtk_type_set_varargs_type(), + gtk_type_get_varargs_type(), + gtk_type_check_object_cast(), + gtk_type_check_class_cast(), + gtk_type_describe_tree(), + gtk_type_describe_heritage(), + gtk_type_free(), + gtk_type_children_types(), + gtk_type_set_chunk_alloc(), + gtk_type_register_enum(), + gtk_type_register_flags(), + gtk_type_parent_class(). + replacements, where available are described in ../docs/Changes-1.4.txt. + implemented compatibility functions for the remaining API. + + * configure.in: depend on glib 1.3.1, use gobject module. + +Thu May 11 12:39:50 2000 Owen Taylor + + * TODO.xml: Various updates to current status. + +Wed May 10 20:25:04 2000 Owen Taylor + + * gtk.m4: Print out version when test succeeds. + +Wed May 10 16:38:17 2000 Owen Taylor + + * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch] + gtk/gtkhsv.[ch]: Color selection dialog rewrite. + + (Original triangle color selector from Simon Budig + , Cleaned up and rewritten for GTK+ by + from Jonathan, Havoc, and Federico. Merge into GTK+ done by David + Santiago ) + + * gtk/gtkcolorseldialog.[ch]: Split color selection dialog + out into a separate widget. + + * gtk/testgtk.c: Add some checkbuttons for toggling palette + and opacity controls. + +Wed May 10 16:08:09 2000 Owen Taylor + + * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that + snuck in prematurely. + +2000-05-07 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I + had deleted a ! operator by mistake, which caused + GDK_SELECTION_CLEAR events never to be generated, which caused + only the first copy to the clipboard from an gtkeditable to + actually cause a copy to the Windows clipboard. + +2000-05-06 Tor Lillqvist + + * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc + compilation, too. Current mingw gcc distributions include the + necessary headers. Also the necessary IIDs are now in mingw + headers/libraries, and own definitions unnecessary. + + More hacking on OLE2 DND, still doesn't work though, and thus + ifdeffed out. + + * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from + here, too. + +Sat, 6 May 2000 13:31:34 +0200 Paolo Molaro + + * gdk/nanox/*: nano-X port work in progress. + * gdk/simple.c: simple test for Gdk. + * README.nanox: notes about the port: read this first! + * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile + with nano-X. + +Fri May 5 11:18:47 2000 Owen Taylor + + * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move + gdk_window_clear() into common code, implement in terms of + gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was + not redirected to the backing rectangle. + +Wed Apr 26 01:53:23 2000 Owen Taylor + + * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into + EXTRA_DIST. It does not work well when the file that + everything depends on is not in the tarball. + +Tue Apr 25 22:20:41 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error + with recursion where process_updates() is called from + an expose handler. (GtkTextView is highly broken in + doing this, but it should work, so it is a nice test + case.) + +Sun Apr 23 23:39:18 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully + handle the case where updates are queued during processing of + updates. + +Tue Apr 18 14:16:50 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume + window is on gdk_display - use that instead of segfaulting. + +Thu May 4 02:04:46 2000 Tim Janik + + * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are + broken and require an empty arg, give it to them. + +Fri Apr 28 19:34:32 2000 Tim Janik + + * gtk/gtklabel.h: indentation fixes. + +2000-05-02 Tor Lillqvist + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to + draw too narrow or too low arcs, they seem to fail, at least with + some display drivers. + + * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR. + + Large changes to the Win32 backend, partially made necessary by + the changes to the backend-independent internal + structures. Attempts to implement similar backing store stuff as + on X11. The current (CVS) version of the Win32 backend is *not* as + stable as it was before the no-flicker branch was merged. A + zipfile with that version is available from + http://www.gimp.org/win32/. That should be use by "production" + code until this CVS version is usable. (But note, the Win32 + backend has never been claimed to be "production quality".) + + * README.win32: Add the above comment about versions. + + * gdk/gdkwindow.c: Don't use backing store for now on Win32. + + * gdk/gdk.def: Update. + + * gdk/gdkfont.h: Declare temporary Win32-only functions. Will + presumably be replaced by some more better mechanism as 1.4 gets + closer to release shape. + + * gdk/makefile.{cygwin,msc}: Update. + + * gdk/win32/*.c: Correct inclusions of the backend-specific and + internal headers. Change code according to changes in these. Use + gdk_drawable_*, not gdk_window_* where necessary. + + * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not + our old DND. + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try + to interpret single characters as UTF-8. Thanks to Hans Breuer. + Use correct function name in warning messages. + + * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the + GSourceFuncs gdk_event_prepare and gdk_event_check. + (gdk_event_get_graphics_expose): Do implement, use + PeekMessage. Thanks to Hans Breuer. + (event_mask_string): Debugging function to print an GdkEventMask. + (gdk_pointer_grab): Use it. + + * gdk/win32/gdkfont-win32.c: The Unicode subrange that the + (old) book I used claimed was Hangul actually is CJK Unified + Ideographs Extension A. Also, Hangul Syllables were missing. + Improve logging. + + * gdk/win32/gdkgc-win32.c: Largish changes. + + * gdk/win32/gdkim-win32.c (gdk_set_locale): Use + g_win32_getlocale() from GLib, and not setlocale() to get current + locale name. + + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to + gdkwin32.h, similarily as in the X11 backend. + + * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix, + assignment was used instead of equals in if test. Thanks to Hans + Breuer. + + * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of + the X11 version. + + * gdk/win32/makefile.{cygwin,msc} + * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the + path to the Win32 headers that works also with the mingw compiler. + + * gtk/gtkstyle.c: Include . + +2000-04-26 Havoc Pennington + + * gtk/gtklabel.c (gtk_label_get_text): Add this function, + replacing the broken gtk_label_get () + +2000-04-15 Havoc Pennington + + * gdk/gdkdnd.h: clean up enum format, remove extra comma, + this keeps scanner scripts from getting confused. + + * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the + data, rather than void + +2000-04-15 Tor Lillqvist + + * gtk/gtkclist.c (gtk_clist_motion) + * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event + with is_hint FALSE, get x and y from the event. They used to be + used uninitialised. The Win32 backend never sends motion events + marked as hints. This for instance fixes the annoying file and + font selector behaviour in the Win32 version. + +2000-04-14 Tor Lillqvist + + * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and + gtk_private_n_signals variables, they are used by some software, + sigh. + + * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the + installation directory from the Registry, where the installer + should have put it. + +Fri Apr 7 17:19:27 2000 Owen Taylor + + * gdk/x11/Makefile.am: Fix problem with installation directory for + gdkx.h + + * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago + so that when selecting menus with the + mouse, the first item will not be selected, but when selecting + with an accelerator, or navigating left-right on a menubar with + the menus popped up, the first item will be selected. + +2000-04-05 Dan Damian + + * configure.in: Added "ro" to ALL_LINGUAS. + +Wed Apr 5 00:08:36 2000 Owen Taylor + + * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy + indentation. + + * Makefile.am (EXTRA_DIST): Fix typo. + + * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk + to catch gdkconfig.h + + * gtk/gtkitemfactory.c: Added FIXME. + +2000-03-30 Jonathan Blandford + + * gtk/gtkpaned.c (gtk_paned_get_position): oops. + s/return_if_fail/return_val_if_fail/g and add a return value. + +Mon Mar 27 20:56:14 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up + merge slipup. + + * gdk/gdkinput.h: Fix missing line from merge. + +Mon Mar 27 20:39:49 2000 Owen Taylor + + * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h + instead of gdkprivate.h. + +Sun Mar 12 15:19:24 2000 Owen Taylor + + * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix + parent class to correctly be GtkDialogClass. + +Thu Feb 24 23:58:21 2000 Owen Taylor + + * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of + toplevel windows and their immediate children by their parents, + since the size of toplevel windows is out of our immediate + control and we don't get any real benefit from trying to track + this size for clipping. + + * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag + for input_only windows. + + * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag + to fix some hacks and make sure that we don't try to set the + background of input only windows. + +Thu Feb 24 18:11:46 2000 Owen Taylor + + * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for + the _really_ internal stuff, and leave gdkprivate.h for the fake private + stuff that we've traditionally exposed. + + * gdk/**.c: Use gdkinternals.h where appropriate. + + * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h + not include gdkprivate-x11.h, move all stuff of conceivable public + interest into gdkx.h; keep all really private stuff in + uninstalled header gdkprivate-x11.h. + + * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to + image->image_put on windows through a new function _gdk_window_draw_image() + to allow us to do backing store for images. (Sort of ugly) + + * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics + contexts locally so that we can offset them properly when drawing + onto backing pixmaps. + + * gdk/gdkinput.h: Reindented + + * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background + pixmap or color for the window, so we can properly initialize + our double-buffer pixmaps, and also so that we temporarily set + a background of None while scrolling. + + * gdk/gdkregion.h: Revise region boolean operators to have an + interface that is actually convenient - switch from creating new + regions on every op, to "methods" that modify existing regions + (A = A OP B). 3 argument forms which allow dest == src, would also + be possible, but the current interfaces seem to map nicely + onto what needs to be done. (There is quite a lot of region + code in GDK now.) + + * gdk/gdkregion.h: Add constructor from rectangle and a copy + operator. + + * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c, + gdkpoly-generic.h: Copy region code from Xlib, switch it over + to 32 bit coordinates, modify it to be mostly GTK+ style + and to have interfaces that match gdkregion.h. + + * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for + double-buffered drawing. gdk_window_begin_paint_{rect,region}() + create a backing pixmap and redirect all drawing to + that backing pixmap until a matching gdk_window_end_paint(). + + * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c: + Create a special drawable class for GtkWindow's that + redirects the drawing to the backing pixmap as necessary + and then calls the real operations in _gdk_windowing_window_class. + + * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c: + Store invalid region for each window. Generate expose events for invalid + region in an idle. This replaces both the expose compression + and the redrawing queuing in GTK+. It is both more efficient and + simpler than either one individually and far more so then the + combination. + + * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h: + Emulate 32 bit coordinates for windows with 16 bit coordinates + by offsetting drawing, guffaw scrolling techniques and + mapping/unmapping child windows as necessary. + + * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes, + where, when invalid regions are processed, the region is stored, + and if expose events come in that are detectably duplicate + the processed exposes (by comparison of event serial numbers), + the stored region is subtracted out of those exposes. + + * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of + regions newly exposed when scrolling or resizing windows. + This, combined with forcing processesing of queued invalidated + regions, gives nice flicker-free scrolling. + + * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of + invalidated regions after every scroll. + + * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate + emulation in GDK. Its, for all practical purposes just a + GtkViewport/GtkFixed hybrid now. + + * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11 + (16-bit) structures as necessary instead of just casting. + + * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code + in terms of the structures from gdkregion-generic.c, using appropriate + offsets from GDK to X11 coordinates. Cache clip mask and + origin and ts origin locally and only flush to the server + when drawing, to avoid constantly setting and resetting these + values when offsetting GC's for scrolling and backing pixmaps. + + * gdk/x11/gdkinput-x11.c: Fix leak of axes structures. + + * gtk/gtkcontainer.c: Call process_all_updates at end + of resizing to reduce flicker. (Avoids having redraw + lag arbitrarily behind resize under some circumstances) + + * gtk/gtkentry.c: Remove old backing store code, and simply take + advantage of the new backing store capabilities of GDK. + + * gtk/gtkmain.c: Simple implementation of widget backing + store - simply push a paint while handling each expose. + (Should really be configurable widget for widget.) + + * gtk/gtkwidget.c: Remove all the old complicated redraw + code, and simply invalidate the GDK windows from + gdk_window_queue_clear(), etc. (Sigh, so much carefully + debugged complexity ... gone to the winds.) + + Remove all the code for suppressing expose events while + resizes are pending; this isn't needed since the invalid + areas won't be processed until after the resizes are + processed, since they are in a lower priority idle. + +Thu Feb 24 15:37:41 2000 Owen Taylor + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width + and height of dest rectangle for non-intersecting rectangles. + +Sun Feb 20 16:47:31 2000 Owen Taylor + + * gtk/gtkwidget.h: Make GtkAllocation just a typedef + for GdkRectangle. + +Sun Feb 20 11:27:00 2000 Owen Taylor + + * gdk/gdk{events,image,private,types,window}.h + gdk/x11/gdkinputprivate.h: Change all coordinates + from int16 to int. Also, Change width and height from + unsigned to signed to avoid all the stupid C + signedness bugs. + +Sat Feb 19 12:01:53 2000 Owen Taylor + + * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): + Use gdk_drawable_get_depth instead of gdk_drawable_get_visual. + Add some more detailed checking. + + * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth): + New function to retrieve the depth of a drawable. + + * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth + field, reorder fields to save memory. + +Mon Dec 13 14:06:03 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion + of the background image instead of scaling the background down to + a line. + + * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious + which temporarily set slider to wrong size. + + * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to + queue_clear(). + +Wed Nov 17 18:36:05 1999 Owen Taylor + +2000-03-23 Jonathan Blandford + + * gtk/gtkpaned.c (gtk_paned_get_position): add getter. + +2000-03-17 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c: Remove the #ifndef + USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage. + + * gdk/win32/gdkfont-win32.c + * gdk/win32/gdkproperty-win32.c + * gdk/win32/gdkselection-win32.c + * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are + now declared such. + +Wed Mar 15 02:59:38 PST 2000 Manish Singh + + * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic + +Mon Mar 13 18:37:55 2000 Owen Taylor + + * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty() + is called without trapping X errors. + +Fri Feb 25 10:48:53 2000 Owen Taylor + + * gtk/gtkrc.*: Fix problem where stray '"' characters found their + way into the fontset lists. + +Tue Feb 22 08:52:52 2000 Tim Janik + + * gtk/gtkthemes.h: add extern "C" scope. + +Mon Feb 21 20:16:42 2000 Lars Hamann + + * gtk/gtkclist.c: applied patch from Guy Harris + to make appends to the list constant. (gtk-guy-990901-0.patch) + +Mon Feb 14 22:50:10 2000 Tim Janik + + * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal() + for the typename hash table. + +Mon Feb 14 15:01:23 2000 Owen Taylor + + * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks + to make sure we never divide by zero. + (Problem pointed out by Michal Jaegermann ) + +Mon Feb 14 12:29:38 2000 Owen Taylor + + * gtk/gtkfontsel.c: Apply patch from + SHIRASAKI Yasuhiro to make font selector work a little + better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.) + + Also, some cleanups in atom handling. + +Sun Feb 13 08:02:21 2000 Tim Janik + + * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer, + not GtkWidget. + +Fri Feb 11 02:19:32 2000 Tim Janik + + * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): + * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): + * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some + more guint wrap-around bugs before going to bed. + +Thu Feb 10 16:16:35 2000 Tim Janik + + * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against + guint wrap arounds in allocation.width. + + * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking + process untill we fit the allocation given. + +Tue Feb 8 09:38:29 2000 Tim Janik + + * gtk/gtkwidget.c: + (gtk_widget_unrealize): guard widget access with ref/unref + around signal emission. + (gtk_widget_hide): same here, but also check its destroyed + state before queueing a resize. + +Tue Feb 8 03:05:55 2000 Tim Janik + + * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead + of gtk_default_insensitive_bg as insensitive base color. + + * gtk/gtktext.c (gtk_text_style_set): set the background color according + to the widget's state. + (gtk_text_realize): same here. + (gtk_text_state_changed): same here. + (draw_bg_rect): compare background color against base[] from + GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL. + +Mon Feb 7 04:01:55 2000 Tim Janik + + * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when + grabs are active, unless a delete event is send to the toplevel + of the currently grab holding widget. + +Sun Feb 6 10:13:15 2000 Owen Taylor + + * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove + debugging g_print's. + +Fri Feb 4 15:54:54 2000 Owen Taylor + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't + ever make the scrolled-window requisition ever depend on the + visibility state of the scrollbars for the AUTOMATIC policy. + This breaks the GTK+ requisition model, and causes loops. + +Fri Feb 4 15:09:12 2000 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for + the default font to avoid problems with XFree86-4.0 where the + default charset is iso10646-1, not iso8859-1. + +Thu Feb 3 14:58:48 PST 2000 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release) + + * gtk/Makefile.am: minor cosmetic consistency tweak + +Thu Feb 3 14:46:01 2000 Owen Taylor + + * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set + the activate_time to 0, so that we handle a quick + press/release press/release properly and don't suppress + the second release. (Red Hat bug #7545) + +Wed Feb 2 22:25:17 2000 Tim Janik + + * gtk/gtkctree.c (row_delete): + (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy + bugs with destruction notifier, *always* update internal + structures *before* calling user code. + +Sun Jan 30 20:10:52 2000 Lars Hamann + + A few more fixes for bug #5487, #2051, #2677. + * gtk/gtkclist.c : + (gtk_clist_button_press): Reset clist->anchor to -1 if event->type is + not GDK_BUTTON_PRESS. + (resync_selection): resync only if selection_mode is + GTK_SELECTION_EXTENDED + * gtk/gtkctree.c (resync_selection): same here + +Sun Jan 30 12:29:20 2000 Owen Taylor + + * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for + gdk_drag_get_selection() and gtk_menu_detach(). + + [ From Jeroen Ruigrok/Asmodai ] + +Sat Jan 29 10:11:56 2000 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_size_request): + page->tab_label can be NULL. + +2000-01-25 Havoc Pennington + + * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative + arg is boolean + + * gdk/gdkselection.c (gdk_selection_owner_set): return boolean + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean + + * gdk/gdkproperty.c (gdk_property_get): return boolean + + * gdk/gdkinput.c (gdk_input_set_mode): return boolean + + * gdk/gdkim.c (gdk_im_ready): return boolean + + * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg + + * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild + glib clash, should fix glib) + + * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg + (gdk_get_show_events): return gboolean, and canonicalize + to TRUE/FALSE + + * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the + colormap is private + (gdk_colors_alloc): gboolean whether to be contiguous + (gdk_color_equal): return gboolean since we are a predicate + and not a qsort() (this looks semi-wrong due to glib breakage, + IMO glib should be fixed) + + * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg + (gdk_get_use_xshm): return gboolean + (gdk_pointer_is_grabbed): return gboolean + + * gdk/gdk.h: Change prototypes to match all the above changes, + and re-run egtk-format-protos as required. + +Fri Jan 28 12:28:17 2000 Owen Taylor + + * gtk/gtkctree.c (resync_selection): + * gtk/gtkclist.c (resync_selection): + + Return immediately if clist->drag_pos < 0. This is a workaround + for the corrupt state that the clist gets into when a + GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press(). + + Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel. + + * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized + variable from recent commit. + +Thu Jan 27 15:22:09 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit. + +Thu Jan 27 18:00:55 2000 Tim Janik + + * gtk/Makefile.am: prefix all autogenerated source that get build in + $(srcdir) with $(srcdir)/, so make doesn't assume they got generted + in builddir. since we subsequently cd into srcdir for autogeneration, + the paths have to be stripped from the target file names, thusly we + use $(@F) as target names now. + put a comment about configure.in's --disable-rebuilds option, + which can be used for non-writable source directories, for development + setups though, srcdir has to be *writable*. + +hu Jan 27 00:15:03 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions): + Finish the job of allowing event to be NULL. + (Fixes bug #4283, reported by Chris Blizzard) + + * gtk/gtkentry.c (entry_adjust_scroll): When calculating + things so that the cursor appears on screen, properly + take into account INNER_BORDER. + (Fixes bug #4754, reported by Antonio Campos) + +Wed Jan 26 23:12:28 2000 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_map): Don't + show the tab_label unless it itself is visible. + + gtk/gtknotebook.c (gtk_notebook_size_request): + Do a better job of making sure that the visibility + of the tab label corresponds to whether it should + be mapped or not. + +Wed Jan 26 21:17:03 2000 Owen Taylor + + * gtk/gtkoptionmenu.c (gtk_option_menu_position): + Use the requisition, not the allocation, since the + allocation has not necessarily been computed yet. + (Pointed out by Eugene Osintsev) + +Wed Jan 26 19:44:25 2000 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_new): Dont' set + style/base[GTK_STATE_INSENSITIVE] both to + gtk_default_insensitive_bg! + (Bug #2187, reported by Jonathan Blandford) + + * gtk/gtkaccelgroup.c (gtk_accelerator_valid): + Add Alt_L, Alt_R to list of invalid accelerators. + (Bug #3736, reported by Vlad Harchev) + +Wed Jan 26 19:01:56 2000 Owen Taylor + + * gtk/gtkfilesel.c (open_ref_dir): Fix several + bugs which occured after an attempt to open + invalid home directory left cmpl_state->reference_dir == NULL. + + - completion on files in home directory didn't work + - completion on an empty string caused segfault + + (Bug #3678, reported by Steve Ratcliffe) + + * gtk/gtkscale.c (gtk_scale_get_value_width): Fix + cut and paste error that was causing scales to + be incorrectly positioned. + (Bug #2956, + patch from Steve Ratcliffe ) + +2000-01-27 Shirasaki Yasuhiro + + * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs + when checking for dcgettext, if we've found we needed + it for dgettext. ++ +Wed Jan 26 18:06:07 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore + queue_clear on NO_WINDOW widgets during a reparent, + since at that point the window and widget heirarchies + are out of sync. This stops crashing in some cases + (the scrolled window reparent test, for instance), and + _probably_ won't cause drawing errors. + + * gtk/testgtk.c: Make the reparenting-a-scrolled-window + test do what it was supposed to do and be robust against + window closings, etc. (Bug #2443) + +Wed Jan 26 16:56:54 2000 Owen Taylor + + * gtk/gtkentry.c: Fix return values on mouse events. + (Bug #2686, Sky ) + + * gtk/genmarshal.pl: Fix up handling of FOREIGN. + (pointed out by George Lebl) + + * gdk/gdkcolor.c (gdk_color_copy): Made const-safe. + (From Ettore Perazzoli ) + +Mon Jan 24 10:44:48 2000 Owen Taylor + + * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle + clicks between rows or outside calender area correctly. + (Patch from Damon Chaplin) + + * gtk/gtkclist.c (gtk_clist_set_row_data_full): + * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): + Call destroy function when overwriting existing data. + (Pointed out by Damon Chaplin) + +Tue Jan 25 09:55:41 2000 Owen Taylor + + * gdk/gdk.c: Remove useless #include of , + which was causing problems on various systems with Xmu. + This hasn't been needed for a very long time. + (Fixes #1185 3167) + +Sun Jan 23 22:27:36 2000 Owen Taylor + + * gdk/gdki18n.h: Include when defining + gdk_isw* in terms of is* as a fallback. + (Bug #4106 - Dan Winship ) + +Sun Jan 23 22:12:36 2000 Owen Taylor + + * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't + realize the widget when it is size allocated! + (old, old bug) + + * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed): + Removed unused call to gdk_window_get_size() that + showed up when the above was fixed. + +Sat Jan 22 15:44:30 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_reparent): Correctly + fix up widget->window when the widget is a + NO_WINDOW container widget. + +Sat Jan 22 12:40:48 2000 Owen Taylor + + * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite + to account for the fact that feof() does _not_ + return TRUE on errors, and thus avoid infinite loops + when trying to use gdk_pixmap_create_from_xpm() + on unreadable values. + +Fri Jan 21 18:32:43 2000 Owen Taylor + + * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/. + +Fri Jan 21 16:24:08 2000 Owen Taylor + + * gdk/gdkgc.c (gdk_gc_set_dashes): Change from + gdk_gc_set_dashes to take gint8 instead of gchar to + make it clearer that it is _not_ a NULL terminated string. + + * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c + gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch] + gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string + arguments. + +Thu Dec 30 04:51:05 1999 Tim Janik + + * gtk/gtkvscale.c (gtk_vscale_pos_background): + * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the + background size relative to our allocation, guard against small + allocations, we may have not yet been size allocated. + +Thu Dec 2 10:59:14 1999 Owen Taylor + + * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3, + not just version == 3. We implement all 3 + most of 4 - + (we don't support matching text/plain;charset=iso-8859-1 + to a dest that expects text/plain). We'll still advertise + 3 to be safe, but any client implementing version >= 3 + must interoperate with 3. + +Tue Mar 14 11:53:31 2000 Owen Taylor + + * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground, + background and gc members, add a warning in gtk_tooltips_set_color() + indicating that this function is deprecated. + +Thu Mar 9 22:10:56 GMT 2000 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update: + - Minor cleanups (Emmanuel, me) + - New questions: + I need to add a new signal to a GTK+ widget. Any idea? (timj) + How can I retrieve the text from a GtkMenuItem? (timj) + How do I validate/limit/filter the input to a GtkEntry? (me) + Memory does not seem to be released when I free the list + nodes I've allocated (timj) + +2000-03-07 Tor Lillqvist + + * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes: + (gdk_win32_gdi_failed) New function for reporting errors from GDI, + for which it is no use to call GetLastError onWin9x. + (gdk_other_api_failed) New function, for general error + reporting without calling GetLastError. + (gdk_win32_api_failed) OTOH, this function always calls + GetLastError. (gdk_win32_last_error_string) Remove this function, + GLib has the equivalent now. + + * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to + call them with function name, file name and line number in the + arguments. + + * gdk/win32/*.c: Use the new macros for reporting errors from GDI + functions. + + * gtk/gtk.def: Add some missing entry points. + + * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and + gtk_paned_set_gutter_size, which don't exist any longer, as void. + + Fixes by Hans Breuer: + + * gdk/makefile.msc: Update for debugging. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake + implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or + PS_DASHDOTDOT or PS_DASH styles depending on the number of entries + in the dash_list. + + * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in + the x11 backend. + + * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro. + + * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h. + +2000-03-04 Tor Lillqvist + + * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store + just pixel value of background colour. + + * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function + containing code snippet previously duplicated in a couple of + places. + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use + gdk_colormap_color. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate + GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate + events for autorepeated Shift, Control and Alt keys. Use + gdk_colormap_color. + + * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the + pointer is inside the window the cursor of which we are setting, + call SetCursor immediately. + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: If we don't have the build number stamp + file, use zero. + + * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and + gtk_paned_set_gutter_size as empty. + + * gtk/gtk.def: Remove gtk_paned_set_gutter_size. + +Tue Feb 29 13:10:00 GMT 2000 Tony Gale + + * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h + gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c + docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml + docs/gtk_tut.sgml docs/gtk.texi TODO: + + Spelling/grammar fixes from Martin Buchholz + +Sat Feb 26 11:46:25 GMT 2000 Tony Gale + + * gtk/gtkcalendar.c: Implement num_marked_dates, + and don't emit mutiple day_selected signals on + month_prev. + +2000-02-25 Jonathan Blandford + + * docs/make-todo (lineno): let title and logo be configurable so + that GNOME can use this script too. + + * TODO.xml: added logourl and a title + +Fri Feb 25 11:12:00 2000 Owen Taylor + + * TODO.xml: Added some UI items, and an explanatory + comment at the top of the file. + +Thu Feb 24 09:07:28 2000 Tim Janik + + * TODO.xml: some updates, added abunch of new entries. + a note for those fiddeling with this file, when done + with it, invoke: + $ ./docs/make-todo TODO.xml >/dev/null + and correct output errors before comitting changes. + +Wed Feb 23 22:59:50 2000 Owen Taylor + + * TODO.xml: Added XML-structured TODO file. + * docs/make-todo: python script to turn TODO.xml into + pretty XML output. + +2000-02-23 Jonathan Blandford + + * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to + the function to let it draw the seven dots, instead of the old, + much maligned, method. + (draw_dot): New function to draw a dot. + + * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation + to draw the handle inside the border width as opposed to outside. + Use paint function instead of gdk_draw_point. + + * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation + to draw the handle inside the border width as opposed to outside. + Use paint function instead of gdk_draw_point. + + * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu): + Change indenting to be more GTK like. + +Wed Feb 23 10:54:14 GMT 2000 Tony Gale + + * docs/gtk_tut.sgml: New section on GtkCalendar + * examples/calendar: Update example code + +Tue Feb 22 13:54:12 GMT 2000 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +2000-02-19 Anders Carlsson + + * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE + to prevent the scroll event to be propagated upwards. + +Fri Feb 18 14:37:29 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove + OwnerGrabButtonMask from button entries for + GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE. + + * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL + to the event mask (which will result in button/press release + being added to the event mask on Unix) so scrolling works + for layouts in scroll windows. + + * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK. + + Patch from Anders Carlsson to add + a scroll event. + + * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel + scrolling to the "Test Scrolling" part of testgtk. + + * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal. + + * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched + it against GDK_SCROLL. + + * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new + way of mouse wheel scrolling. + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise. + + * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise. + + * gtk/gtkmain.c: Removed previous mouse wheel hack. + + * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in + gdk_event_mask_table. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added + GdkEventScroll handler. + + * gdk/gdkevents.h: Added GdkEventScroll structure. + +Thu Feb 17 17:10:12 2000 Owen Taylor + + * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford + and Anders Carlsson to change the Paned widgets so that they + can be dragged from anywhere along the length. Also change + the way that this is drawn to make this apparent. + + * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch + from George Lebl to check that option_menu->menu is present + before getting history. + +2000-02-14 Tor Lillqvist + + * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments + before the assertion for non-NULL segment list. + + * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values): + Seems that pattern brushes *must* be 8x8 pixels! At least on my + machine, but it might be display driver dependent. Sigh, so make + sure the stipple is that size. Does Windows suck or what? + + * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few + places. + +2000-02-13 Havoc Pennington + + * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init + refcount to 1 + (gdk_cursor_new): init refcount to 1 + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1 + +2000-02-13 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter + so that we don't have to do unnecessary settings to the HDC. + + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of + gdk_gc_predraw. + + * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where + the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct + GDI paths, call WidenPath to get the outline of the stroken path, + and then fill the outline (with the brush that was built from the + stipple). + + * gdk/win32/gdkgc-win32.c: Factor out common code from + _gdk_win32_gc_new and gdk_win32_gc_set_values into + gdk_win32_gc_values_to_win32values. Use correct colour for + SetBkColor() (Until now the code actually used a random colour in + the call to SetBkColor()... but that didn't show up as not many + GDI APIs use the background colour. Pattern (opaque stippled) + brushes do.) + + * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string, + gdk_win32_api_failed): New functions for error logging. + + * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro + WIN32_API_FAILED to call them, passing function or file name and + line number. + + * gdk/win32/*.c: Use the WIN32_API_FAILED macro. + + * gdk/win32/gdkprivate-win32.h: Store just the pixel values from + GdkColor for foreground and background in GdkGCWin32Data. + + * gdk/makefile.cygwin: Link in the resource object separately. + + * gdk/win32/rc/gdk.rc + * gtk/gtk.rc (New file) + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Update build number in DLLs automatically, + as in GLib. + +Sun Feb 13 08:54:45 2000 Tim Janik + + * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/. + * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): + * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): + * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the + parameters given and cursor->ref_count. coding style fixups. + + * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer, + not GtkWidget. + + * gtk/*.h: applied patch from Mathieu Lacage to + fix up widget macros and add _GET_CLASS() variant. + + * gtk/*.c: some GtkType fixups. + +2000-02-09 Tor Lillqvist + + * gdk/win32/gdkproperty-win32.c + * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW + were reversed. + +2000-02-04 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use + g_filename_to_utf8 to convert the font names Windows gives us from + whatever is the default codepage to UTF-8. + (gdk_font_load_internal) Use g_filename_from_utf8 for conversion + in the other direction. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste + error in debugging output. + +2000-02-02 Tor Lillqvist + + * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width + and height parameters to gdk_window_clear_area(). Not minus one. + +Wed Feb 2 11:58:05 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity + checks if the widget passed to gtk_drag_get_data() was not the + dest widget. + +2000-02-01 Tor Lillqvist + + * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and + g_filename_from_utf8 functions (which were added a moment ago to + GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed + size buffers. + + gtk_file_selection_get_filename returns the filename in the C + runtime encoding. It calls g_filename_from_utf8, but copies the + returned string to a static buffer, which is returned. I think + this is better than returning the result from g_filename_from_utf8 + directly, which would mean all apps that use it would have to free + the return value. Or should this function care about this issue at + all? Maybe a new function with clearly defined semantics. + + * gtk/gtkfilesel.h: Add comment about + gtk_file_selection_get_filename returning the filename in the C + runtime's encoding. + + * README.win32 + * gdk/gdk.def + * gdk/makefile.{cygwin,msc} + * gtk/gtk.def: Updates. + + * gdk/gdkcursor-win32.c: Initialise refcount. + +2000-01-31 Yuan-Chung Cheng + + * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS. + +2000-01-30 Havoc Pennington + + * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of + destroy + + * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned + + * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then + implemented in platform-specific code + + * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c + + * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an + underscore in front + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy): + put an underscore in front + + * gdk/gdkcursor.c: new file, implements + gdk_cursor_ref/gdk_cursor_unref + + * gdk/gdkcursor.h: Refcount GdkCursor + + * gdk/gdkcompat.h (gdk_cursor_destroy): compat + +2000-01-29 Tor Lillqvist + + * gdk/gdkwindow.h + * gdk/gdkpixmap.h: Remove prototypes for renamed functions. + +Tue Jan 25 11:43:21 2000 Owen Taylor + + * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix + structures to properly inherit from GtkWidget not GtkBin. + +Sun Jan 23 20:28:24 2000 Owen Taylor + + * gtk+.spec.in: Added lib/gtk+/include/* to %files + (bug #5178 - Peter Wainright) + + * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h + so that it will be installed. + (bug #4889 - "david d `zoo' zuhn" ) + +Fri Jan 21 16:29:28 2000 Owen Taylor + + * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument + for the GtkStyleClass vtable const. + + * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc + take a const string argument like GtkTranslateFunc. This will + require changes in use code. + +2000-01-19 Tor Lillqvist + + * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct + semantics (to mimic the X11 backend, which just calls XClearArea) + is to check for zero width (and height), and in that case use the + window's width minus x (height minus y). This fixes for instance + some redraw problems with gtkclist, which were easily noticeable + in the gtk file selection widget. + + (gdk_window_new): Don't set WS_EX_TOPMOST for dialog + windows. + +2000-01-13 Tor Lillqvist + + * configure.in + * gdk/Makefile.am + * gdk/x11/Makefile.am + * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright + (bug #5177). + * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown + out later. + +2000-01-09 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore + WM_MOVE for iconified or invisible windows. This fixes various + problems when minimising windows. Thanks to Bernd Herd. + +2000-01-05 Tor Lillqvist + + * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the + backend's draw_lines method, not draw_points. + +2000-01-02 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from + before Owen's reorganisation: Don't have queued_events and + queued_tail statics in this file, but use gdk_queued_events and + gdk_queued_tail. This makes exposure event compression work again. + + (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't + seem to be needed? + +1999-12-30 Tor Lillqvist + + * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include + gdkkeysyms.h to get the GDK_* keysym constants that are needed by + gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case() + doesn't do anything. + + * gdk/gdk.def: Add gdk_xid_table_insert. + + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkevents-win32.c + * gdk/win32/gdkinput-win32.c + + * gdk/win32/gdkwindow-win32.c: Remove the superfluous + extension_events field in the GdkWindowWin32Data struct. Use only + the extension_events field in GdkWindowPrivate. Previously one was + set, and the other one tested, which broke tablet + functionality. Thanks to Keishi Suenaga for pointing this out. + +1999-12-18 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents): + When handling a single character (text length == 1), don't handle + it as if it was UTF-8. + +1999-12-11 Tor Lillqvist + + * Makefile.am: Distribute README.win32. + + * gdk/Makefile.am + * gdk/win32/Makefile.am: Distribute Win32 files. + + * gdk/makefile.msc: New file. + + * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement + after label). + + * gdk/gdkprivate.h: Must mark also gdk_error_warnings and + gdk_error_code as GDKVAR, as they are referred outside GDK. + + * gdk/win32/makefile.msc: Update. + + * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More + tweaks. Check only if at least one of those Unicode subrange bits + we care for is set. If no code page bits are set, guess (wildly) + based on the charset. + + * gdk/win32/gdkinput-win32.c: Remove debugging leftover. + + * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is + non-NULL. + + * gtk/gtkdnd.c + * gtk/gtklayout.c + * gtk/gtkplug.c + * gtk/gtkselection.c + * gtk/gtksocket.c + * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as + appropriate. There must be a cleaner way to handle this? + + * gtk/gtkrc.c: Must include windows.h on Win32. + + * gtk/testgtk.c: No need to include gdkx.h. + + * gtk/makefile.cygwin: Correct invokation of genmarshal.pl. + +1999-12-07 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now, + the rbearing is set to the same as the width, but this should be + fixed. + +1999-12-06 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New + function. If Windows doesn't tell us what Unicode subranges a font + covers, guesstimate based on the codepages it covers. This will + hopefully help those Windows versions or fonts that don't give us + any useful Unicode subrange information with GetTextCharsetInfo. + Call this function in gdk_font_load_internal. + + * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc + minor changes. + +Fri Dec 3 14:09:50 1999 Owen Taylor + + * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history): + New function, long needed. + +Wed Dec 1 22:35:43 1999 Owen Taylor + + * gdk/gdkproperty.h x11/gdkproperty.c: Change + only_if_exists argument of gdk_atom_intern to + bool. + +1999-11-25 Tor Lillqvist + + * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): + Fix two copy&paste errors. + + * gdk/makefile.cygwin: Also rebuild DLL when the static archive in + win32 has changed. + + * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the + GdkWin32SingleFont struct. + + * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode + subranges of loaded fonts. Clear font signature first, in case + GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have + ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte. + + * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw): + Unoffset clip region. + +1999-11-23 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): set + event->any.window before calling filter functions. + +Fri Nov 19 10:34:41 1999 Owen Taylor + + * gtk/gtkgamma.h: Adapt cast macros to standard. + +[ Merges from 1.2 ] + +Tue Nov 16 10:15:54 1999 Owen Taylor + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_path): + If translation does not include a '/', use entire + translation instead of crashing. + +Sun Oct 31 22:21:11 1999 Tim Janik + + * docs/gtk_tut.sgml: + s/gtk_accel_group_attach/gtk_window_add_accel_group/. + +Sat Oct 30 09:09:09 1999 Owen Taylor + + * gtk/gtkselection.c (gtk_target_list_remove): Use + g_list_remove_link, not g_list_remove. + + [ From Geert Bevin ] + +Sun Oct 24 07:41:40 1999 Tim Janik + + * gtk/gtkclist.c (real_undo_selection): commented out g_print() + statement upon unselection (how the heck did that slip in?). + +Sat Oct 23 03:03:08 1999 Tim Janik + + * gtk/gtktext.c (gtk_text_freeze): + (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling + in frozen state (and aparently crashes). patch provided by Anders + Melchiorsen . + +Sat Oct 23 02:53:20 1999 Tim Janik + + * fix insensitive default/focus widget activation, + reported by Matt Goodall . + + * gtk/gtkwindow.c (gtk_window_key_press_event): + (gtk_window_activate_default): + (gtk_window_activate_focus): + return handled=FALSE for actiavtion of insensitive default + widgets. return handled=TRUE for activation of insensitive + focus widgets. don't activate in either case. + +Tue Oct 19 09:55:08 1999 Owen Taylor + + * gtk-config.in (lib_gtk): Switch order of @x_cflags@ + and $glib_cflags to match library order and in the + theory that an old version of GLib is more likely to + be in the include directory for X then vice-versa. + (Bug #2776) + +Tue Oct 19 09:46:49 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE + to determine the locale for fontsets, not LC_MESSAGES; + the user may want English messages with a handling + for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR + will still be broken) (Bug #2891) + +Tue Oct 19 20:36:42 1999 Changwoo Ryu + + * gtk/gtkrc.ko: Fixed the wrong number of "*"'s. + +Tue Oct 19 12:15:13 1999 Changwoo Ryu + + * gtk/gtkrc.ko: Changed the Korean default fontset. + +Fri Oct 8 02:32:47 1999 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug + where when scrolling to the left or top double exposes + were done, causing major slowdowns. + +Thu Oct 7 18:31:55 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset + names to lowercase and alphanumeric, before looking + them up. + + * gtk/Makefile.am: Install codeset variant gtkrc files + with normalized names. + +Thu Oct 7 22:52:42 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even + popup menus when the menu is already visible, but its parent + is still hidden, (happens after tornoff window got hidden). + +Thu Oct 7 11:09:55 1999 Owen Taylor + + * gtk/Makefile.am (install-data-local): Fix + a typo where gtkrc.vi_VN.tcvn5712 wasn't getting + deleted, causing error messages on install. + +Thu Oct 7 11:03:06 1999 Owen Taylor + + * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw + the handle as well, since we now sometimes ignore + exposes on the handle while resizing. + +Wed Oct 6 18:02:31 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid + extra g_free introduced in one of the last one or two + commits. + +Wed Oct 6 16:38:36 1999 Owen Taylor + + * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files + consistent, put each style that a gtkrc.* file creates + in a unique namespace, remove old files before installing. + +Wed Oct 6 14:31:16 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when + gtk_rc_init is called multiple times. (Yes, people who + do that have bugs in their code.) + +Tue Oct 5 11:36:57 PDT 1999 Manish Singh + + * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf. + Remove it since it's generated by the Makefile anyway + +Tue Oct 5 02:43:41 1999 Owen Taylor + + * gdk/gdkinputcommon.h (gdk_input_device_new): Free + device->info.axes for core pointer. + +Thu Sep 30 13:55:25 1999 Owen Taylor + + * gtk/testgtk.c (destroy_idle_test): Rename idle to + idle_id, to deal with obsolete, broken C libraries. + +Mon Sep 27 02:50:15 1999 Owen Taylor + + * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in + allocation->x/y twice! + + * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough() + consistent with gtk_vscale_pos_trough(). + +Sun Sep 26 19:44:34 1999 Owen Taylor + + * gtk/gtkcontainer.c (gtk_container_queue_resize): We may + be queueing a resize on a toplevel container between + the time we show it and when we map it. So, we need + to test GTK_WIDGET_VISIBLE() for toplevels, and only + use GTK_WIDGET_DRAWABLE() for child windows. + +Thu Sep 23 16:41:03 1999 Owen Taylor + + * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS + (fixes bug #2144) + +Fri Sep 24 00:51:45 1999 Tim Janik + + * gtk/gtkcontainer.c (gtk_container_queue_resize): check for + container DRAWABLE (instead of VISIBLE), so we don't queue + resizes on non-toplevel containers. + +Sun Sep 19 18:13:31 1999 Owen Taylor + + * gtk/gtkselection.[ch]: Make the data argument + const guchar *. + +Sat Sep 18 21:27:40 1999 Owen Taylor + + * gtk/gtkwindow.c: Try to behave sensibly if + the focus widget is the window itself. (Should + we allow this at all?) + +Fri Sep 17 09:57:15 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_set_sensitive): + * gtk/gtknotebook.c (gtk_notebook_set_scrollable): + * gtk/gtknotebook.c (gtk_notebook_set_show_border): + * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args + in prototypes and implementations consistent (Tomas Ogren). + + * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag + before the widget is unparented (reported by damon). + + * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char, + since we provide unsigned data anyways. + +Thu Sep 16 21:32:01 1999 Owen Taylor + + * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay + the call to gtk_tooltips_layout_text() until later. + + * gtk/gtktooltips.c (gtk_tooltips_draw_tips): + Call gtk_widget_ensure_style() before using the style. + +Wed Sep 15 02:52:19 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_event): Added workaround + for old widgets that don't propagate draws to all + children. (Namely gnome-dock for gnome-libs <= 1.0.16) + +Tue Sep 14 19:22:19 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent + for a redraw but just the widget that requested the resize. + +Tue Sep 14 18:29:47 1999 Tim Janik + + * gtk/gtkcontainer.c: added new widget level method + gtk_container_set_reallocate_redraws() and a GtkContainer flag + reallocate_redraws : 1 to reflect the setting, exported this through + the argument system as a boolean ::reallocate_redraws. + + * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws + on the widget because the allocation changes, do so as well for + widget->parent if the parent has reallocate_redraws set to TRUE. + with that containers requesting reallocation redraws get automatically + redrawn if their children changed allocation (this unfortunately + affects also other children that didn't change allocation, but we + cannot work around that before 1.3). + +Tue Sep 14 18:23:01 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width + _and_ height are >0 (not _or_). + + * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize() + instead of gtk_container_queue_resize(), which is a core gtk internal + function (must have been on crack when i queued that). + + * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so + we can check more reliably if we want to discard expose events. + * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING + flag. + + * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes, + we simply trust these events. for deciding whether to discard exposes, + check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING. + +Mon Sep 13 15:01:21 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore + queues of areas that are completely off screen. + + * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken + logic for handleboxes. + + * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity + check on width/height. + +Mon Sep 13 02:22:47 1999 Tim Janik + + * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements", + we are fine with using $@ the way we do (if we actually encounter + brokeness with $@ in VPATH builds because of additional path prefixes, + we need to use $(@F) actually). + +Mon Sep 13 01:34:53 1999 Tim Janik + + * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce + short lived bugs, that would allow language bindings to do surgeries + to our guts. + +Fri Sep 10 15:22:50 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo + where comparison was being done against an uninitialized + value causing intermittant results depending on + compiler flags. Also make it clearer that we aren't + ever initializing the child as 0x0 (though this will + be caught in gtk_widget_size_allocate()) + +Fri Sep 10 10:06:56 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_set_transient_for): Move + gtk_window_unset_transient_for() call after we do checks + involving the old transient parent. + [ From Lance Capser ] + +1999-09-07 Raja R Harinath + + * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create + an empty file. + +Mon Sep 6 00:11:56 1999 Lars Hamann + + * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has + no children. (Reported by: Chris Rogers ) + +1999-09-03 Raja R Harinath + + * gtk/Makefile.am (gen_sources): Improve VPATH builds. + `$@' is valid only in the build dir, not after we've done + `cd $srcdir'. Also use `test -f' instead of less portable + `test -e'. + +Fri Sep 3 15:59:56 1999 Owen Taylor + + * gtk/gtktext.c (correct_cache_insert): Rewrite + for simplicity, and hopefully correctness. + (Fixes bug #1322, which was a segfault when + on some insertions with the properties around + the insertion set up just wrong.) + + * gtk/gtktext.c (gtk_text_adjustment): When we receive + a "changed" signal, clamp the new value to the adjustment + bounds to avoid segfaulting if someone tries to change + the adjustment to a bogus value. (Bug #1795) + +Thu Sep 2 16:33:59 1999 Owen Taylor + + * gtk/gtkmain.c: Ignore unexpected destroy notifies + for children, for toplevel windows handle them + like delete_event. + + * gtk/gtkplug.c: Add an unrealize handler so that + we unref plug->socket_window when we are done + with it. + +Fri Sep 3 14:52:54 1999 Owen Taylor + + * gtk/gtktext.c (clear_area): Fix stupid signedness + problem that was causing background to sometimes + be misaligned. + +Fri Sep 3 12:26:33 1999 Owen Taylor + + [ Fixes pointed out by Ettore Perazzoli ] + + * gtk/gtkmenu.c (gtk_menu_position): Make + sure we never position menus with negative x, y, + since gtk_widget_set_uposition() can't handle that. + + * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): + Modify the positioning code a bit so that we always + put the top-left corner onscreen. (This is for + UI reasons, gtk_menu_position() now takes care of + gtk_widet_set_uposition() brokeness.) + +Fri Sep 3 03:06:30 1999 Tim Janik + + * gtk/Makefile.am: fixed up things for -jx, x > 1. + +Sun Sep 5 08:48:51 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the + RC style that is passed in. The lack of the ref + before was a bug. If people worked around this + bug, this will introduce a slight memory leak + in their code. The code should typically look like: + + rc_style = gtk_rc_style_new (); + [...] + gtk_widget_modify_style (widget, rc_style); + gtk_rc_style_unref (rc_style); + + * gtk/gtkwidget.c (gtk_widget_modify_style): Reset + the style if it was already set. + + * gtk/gtkwidget.c (gtk_widget_set_name): Only set the + style if it was set before. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * gtk/testgtk.c (main): Add a check to see if we + are being run from the correct directory and + to quit nicely if we are not. + + * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function + static. + +Thu Sep 2 23:00:03 1999 Tim Janik + + * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS. + + * gtk/gtkwindow.c: + queue resizes unconditionally (gtk_widget_queue_resize will figure + what to do if the window is not realized). + (gtk_window_move_resize): only recenter the window + for GTK_WIN_POS_CENTER_ALWAYS. + (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in + the same way as GTK_WIN_POS_CENTER. + +Thu Sep 2 22:39:27 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_reposition): check for the last position + with (!(info->last_flags & GDK_HINT_POS)) instead of + (!info->last_flags & GDK_HINT_POS). + + * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and + new_height unconditionally, because we use these values even if + !default_size_changed && !hints_changed. + comented the (default_size_changed || hints_changed) case with + respect to resize rejects from the window manager. + + * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values + in the zvt condition hack, since this includes the window hints, set + the hints after the handling_resize case. + + * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a + window is initially shown with to the geometry. + +Thu Sep 2 07:38:56 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): + s/size_changed/default_size_changed/g so i know what's + really going on (frying brain on smaller flame now). + +Thu Sep 2 05:47:47 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if + we have size_changed upon handling_resize. this is a gross + workaround for the broken zvt widget and should be removed in + 1.3 again (search for FIXME). + Owen provided an accurate comment for this: + + /* We could be here for two reasons + * 1) We coincidentally got a resize while handling + * another resize. + * 2) Our computation of size_changed was completely + * screwed up, probably because one of our children + * is broken. It's probably a zvt widget. + * + * For 1), we could just go ahead and ask for the + * new size right now, but doing that for 2) + * might well be fighting the user (and can even + * trigger a loop). Since we really don't want to + * do that, we requeue a resize in hopes that + * by the time it gets handled, the child has seen + * the light and is willing to go along with the + * new size. (this happens for the zvt widget, since + * the size_allocate() above will have stored the + * requisition corresponding to the new size in the + * zvt widget) + * + * This doesn't buy us anything for 1), but it shouldn't + * hurt us too badly, since it is what would have + * happened if we had gotten the configure event before + * the new size had been set. + */ + +Wed Sep 1 20:46:11 1999 Owen Taylor + + * gtk/gtkrc.c: deal properly with the fact that RC + style lists may include rc styles more than once. + + * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed + unused static function. + + * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a + stack of directories of RC files currently being + parsed and implicitely add them to pixmap path. + + This fixes a bug where the directory would get + appended then overwritten by pixmap_path declarations. + + (bug #1462, from Peter Wainright ) + + * gtk/gtkthemes.c (gtk_theme_engine_unref): Call + theme's exit function. (Patch from Peter Wainwright, + bug #1454) + + * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy): + Add a destroy() handler to take care of removing + group for menu item. (Fixes bug #1197) + + * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko + in warning message. + +Wed Sep 1 21:27:42 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server + roundtrip to figure window's width and height, since we know that + anyways from widget->allocation. + +Wed Sep 1 12:37:44 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_move_resize): Compute + the hints after we request the new size. + +Wed Sep 1 10:38:37 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_compute_hints): Removed + GTK_WIDGET_REALIZED() assertion - we can compute the + hints before we are realized. + + * gtk/gtkwindow.c (gtk_window_move_resize): Reorder + hint changing so that we have a value of hints_changed + when we decide whether to constrain the window size. + + * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix. + + * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups, + change back to G_MAXINT. + +Wed Sep 1 06:54:59 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize + new GtkWindowGeometryInfo, so fields like GdkGeometry geometry + contain uncluttered values. + (gtk_window_compute_hints): simply assert that window is realized + and that geometry_info is valid, since we rely on this anyways. + (gtk_window_constrain_size): major cleanups to the code. + if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height + for the base size, instead of the minimums. use 32767 as max width + and height (like in gtkwindow.c) instead of G_MAXINT. + +Wed Sep 1 04:41:25 1999 Tim Janik + + * cleaned up the GtkContainer.need_resize flag handling mess, we + only need to force resize requests when we were prematurely + realized, or our widget tree was modified when we were temporarily + hidden. handling these cases directly upon showing the window (i.e. + while the GdkWindow is still unmapped) avoids the need to wait for + a configure event response and therefore makes the GUI more snappier + and avoids blank windows during the roundtrip. + + * gtk/gtkwidget.c: + (gtk_widget_hide): + (gtk_widget_show): don't queue resizes on toplevels, they know how + to deal with matters. + + * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize + flag directly for not visible resize containers and spare us unecessary + signal emissions. + + * gtk/gtkwindow.c: + (gtk_window_realize): if we need to enforce premature size allocation, + queue a container resize so we are correctly resized later on. + (gtk_window_init): + (gtk_window_size_request): + don't freak around with the ->need_resize flag, + gtk_container_queue_resize() will care about that. + (gtk_window_show): + handle initial resizing issues here, we can handle matters better in + this place, especially since we know that our GdkWindow is still + unmapped. + (gtk_window_move_resize): + don't care about ->need_resize at all. + handle size changes properly that occoured while we waited for a + configure event. + +Tue Aug 31 15:58:46 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_set_uposition): + * gtk/gtkwindow.[hc] (gtk_window_reposition): + Move the hint setting code from gtk_widget_set_uposition + to here; set the hints so that we respect any previously + set geometry hints. + + * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't + change the window hints here or move the window here, + let that happen in gtk_window_move_resize(). + +Tue Aug 31 06:58:52 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due + to already queued resizes (and therefore redraws) on a widget, check + its anchestry as well. + + * gtk/gtkcontainer.c: + (gtk_container_queue_resize): clear resize widgets for resize + containers before aborting prematurely. this is especially important + for toplevels which may need imemdiate processing or their resize + handler to be queued. + (gtk_container_dequeue_resize_handler): added new internal function for + gtkwindow.c. + + * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a + configure event, take possible changes in window position into account + as well. + if we request a new window size, queue up a resize handler that will + last until the configure event response arrives. + combined the ->need_resize case (initial show) with the general size + (hints) changed case and added even more comments. + if !auto_shrink, only revert to the old allocation if the new size + is smaller than the current allocation. + +Tue Aug 31 11:55:20 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy, + gtk_window_set_geometry_hints + gtk_window_set_default_size): + When hints are set, queue a resize so that the hints will + be eventually reset on the toplevel. + + * gtk/gtkwindow.c (gtk_window_show): Use + gtk_window_compute_default_size(). Clear the need_resize flag + on the initail map so that we don't unnecessarily trigger the + resize code. + + * gtk/gtkwindow.c (gtk_window_move_resize): Split apart + into separate functions. Compare the hints we are setting + with what we set last time so that we can accurately + tell when we need to reset the hints. + + * gtk/gtkwindow.c (gtk_window_compute_default_size): New + function to figure out the size from requisition + and default_size. + + * gtk/gtkwindow.c (gtk_window_constrain_size): Function + from fvwm to constrain a size to the geometry hints. + + * gtk/gtkwindow.c (gtk_window_compare_hints): New function + to compare two sets of geometry hints. + + * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed + from gtk_window_set_hints(), just compute the hints, + don't set them. + + * gtk/gtkwindow.c (gtk_window_compute_reposition): Move + code from gtk_window_move_resize() to separate function, + rationalize a bit. + +Tue Aug 31 13:05:03 1999 Owen Taylor + + * gtkrc.h: Move the ref_count member out of the GtkRcStyle + structure into a new private structure. + + * gtkrc.c: Split GtkRcStyle into public/private. + In the private part, add a list of pointers to the + RcStyle lists this RcStyle participates in. + + * gtkrc.c: When a RcStyle is free, remove all + lists referencing it from the + realized_style_ht hash, and free those lists. + + * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call + gtk_rc_init(), since that adds the default styles + to the list of parsed RC files again. + + * gtk/gtkrc.c: Use gtk_rc_style_find() consistently. + +Thu Aug 26 14:14:42 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity + checks that ensure that a widget's allocation is at least 1 in width + and height. (GNOME note: this doesn't affect old panel code anymore, + because GtkSocket will request width and height of at least 1 since + Fri Jul 23). + + * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been + allocated yet (happens if the user realizes the window prematurely), + size request and allocate it. + (gtk_window_size_allocate): guard against guint underflows. + +Wed Aug 25 19:01:36 1999 Lars Hamann + + * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs + in gtk_built_sources, so gtk.defs gets built prior to all other + sources. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * gtk/Makefile.am: + invoke indent on gtkmarshal.*. + rewrote source generation rules, use COPYING as oldest source tag for + a piggyback rule to generate all sources from (don't touch it ;). + major cleanups, strip spaces on build rules for GNU Make. + + * gtk/genmarshal.pl: don't operate on hardcoded filenames but take + source and target files from commandline arguments. don't invoke indent. + +Sat Aug 21 14:07:36 1999 Lars Hamann + + * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize + notebook after switch to avoid drawing problems. + (Bug#856 Reported by: Theodore Roth ) + + (gtk_notebook_pages_allocate): don't map not visible tab_labels, + show them instead. + (Bug#1805 Reported by: Dave Cole ) + +Sat Aug 21 14:07:36 1999 Lars Hamann + + * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize + notebook after switch to avoid drawing problems. + (Bug#856 Reported by: Theodore Roth ) + + (gtk_notebook_pages_allocate): don't map not visible tab_labels, + show them instead. + (Bug#1805 Reported by: Dave Cole ) + +Wed Aug 18 09:20:10 1999 Tim Janik + + * gtk/gtkwindow.c: + we use window->need_resize from configure_event now, to indicate that + the gtkwindow should keep its allocation (e.g. because the user resized + the window through window manager handles). resize_count is now reliably + used to figure whether we got the allocation we requested from the + window manager. + configure events get queued as resizes now, the real stuff (size + computation and allocation) now only goes on in gtk_window_move_resize(). + GtkWindow's requisition now contains its *real* requisition (like all + other widgets), *not* taking usize into account. + geometry_info->last_{width|height} is now updated from set_hints() only + so it always contains the last hints we set for the window manager. + made some event handlers return TRUE instead of FALSE. + the overall code should be much more straight forward now, and the + significant code portions are accompanied by comments now. + (gtk_window_set_hints): + removed requisition argument and made it + fetch the requisition through gtk_widget_get_child_requisition. + we also don't move the gdkwindow here anymore, gtk_window_move_resize() + does that now. + (gtk_window_show): + ensure that the widget is realized before calling + gtk_container_check_resize() (and thus gtk_window_move_resize()), also + ensure that we got properly size requested and allocated before + realization. + (gtk_window_configure_event): + ignore plain window moves, or reallocate the widget tree through the + resize queue otherwise. + (gtk_window_move_resize): + mostly rewrote this function to figure window manager hints more + reliably, coalesce window moves and resizes to reduce configure events + and do actuall size allocations. + +Tue Aug 17 07:43:04 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets + that have a resize pending, because a redraw is already queued for them. + + * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal + hack to clear resize_widgets. + + * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets + for resize containers prior to size allocation. (this is also a bit + ugly, but avoids side effects for stopped emissions and is thus more + reliable). + (gtk_widget_unparent): removed disconnect call for clear_resize_widgets. + + * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this + function from gtk_tooltips_expose, as we connect to ::expose_event + *and* ::draw now. + +1999-08-18 Federico Mena Quintero + + * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity + checks. + (gtk_target_list_unref): Likewise. + + * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise. + +Tue Aug 17 15:47:07 1999 Owen Taylor + + * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar): + guard against division by zero. (Fixes bug #1339) + +Tue Aug 17 10:56:49 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_move_{forward,backward}_word): + Prevent the trivial leak of information of allowing + word motion when the entry is not visible. + +Tue Aug 17 10:28:52 1999 Owen Taylor + + * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate + modality to error dialog as well as confirmation dialogs. + (Bug #1803, reported by Rosanna Wing Sze Yuen) + +Wed Aug 11 01:04:57 1999 Owen Taylor + + * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor + tree->view_lines. + (gtk-guy-990611-3.patch: Guy Harris ) + + * gtk/Makefile.am (install-data-local): Solaris apparently + has various troubles with ln -f; use rm first instead. + (gtk-guy-990611-2.patch: Guy Harris ) + +1999-07-30 Raja R Harinath + + * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir, + use `cp' followed by `rm' (the `rm' was already there). + +July 30, 1999 Elliot Lee + + * configure.in: Fix autoconf warnings about cross compilation by + trying to provide sane defaults for AC_TRY_RUN. + * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir), + put them into $(srcdir) when generated. Also add a dependency of + gtksignal.h on gtkmarshal.h for -j builds. + * gtk/gtk(dnd,style,gamma).c: Minor warning fixes. + +Wed Jul 28 09:29:19 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main_iteration_do): Added missing + GDK_THREADS_{LEAVE,ENTER} pair. + (From Paul Fisher ) + +Fri Jul 23 01:00:15 1999 Tim Janik + + * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested + width and height are always >0 (owen). + +Fri Jul 23 00:00:47 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent + change that assured that a widget's allocated with and height are + always >1, since this breaks *buggy* panel code. unfortunately this + back-breaks the gimp's color selector. + + * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our + allocation is always >0 in width and height, before sending the + configure event; this is a *gross* hack to get the gimp back to work. + + * marked both cases with TODO-1.3 + +Wed Jul 21 15:47:39 1999 Owen Taylor + + * gtk/gtktext.c: Don't display wrap indicators when + text is not editable and word wrap is on. + +Wed Jul 21 08:21:40 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case + option menus here as they are not derived from menu shell, assure that + the option menu has a menu we can add items to. + +Tue Jul 20 23:29:48 1999 Tim Janik + + * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation-> + width/height to (gint) before calculations and check against < 0 to + avoid guint wraparounds. + +Sun Jul 18 00:35:49 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated + width and height is never zero. sanity check both dimensions against + 32767 and issue a warning if the allocation is greater than that. + +Wed Jul 7 15:03:30 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_events_pending): Unlock around call + to g_main_pending() as well. + +Wed Jul 7 14:59:01 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main_iteration): Unlock around + call to g_main_iteration() - since that will regrab + GTK+ lock to process events. + +Thu Jul 1 15:01:55 1999 Owen Taylor + + * gtk/gtkwindow.c + - Regularize with the rest of GTK+ by making widget->requisition + not reflect the set_usize() + - Always recompute geometry hints, then check if they + changed before sending them to the X server. The + previous checks for changes would fail in a number + of circumstances. + +Thu Jul 1 11:55:59 1999 Owen Taylor + + * gtk/gtkstyle.c: Include for strcmp(). + +Wed Jun 30 19:26:36 1999 Owen Taylor + + * gtk/gtkdnd.c: + - Code cleanups + - Instantaneously update on modifier key presses + - Allow cancellation of the drag with Escape. + +Tue Jun 29 17:04:09 1999 Owen Taylor + + * gtk/testgtk.c (create_handle_box): Set the policy + to auto_shrink - otherwise the appearance is rather + strange when flipping between horizontal and vertical. + +Mon Jun 28 09:29:52 1999 Tim Janik + + * gtk/gtkwindow.c: add ::default_width and ::default_height arguments. + (gtk_window_set_default_size): don't change a value if it's < 0. + queue a resize. + +Sun Jun 27 11:00:33 1999 Tim Janik + + * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts. + +Mon Jun 28 12:08:25 1999 Owen Taylor + + * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't + add an extra "/" when concating "/" + filename. + (From Matt Grossman ) + +Mon Jun 28 10:57:12 1999 Owen Taylor + + * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask + for fg_gc if we set it for drawing pixmap. + +Tue Jun 15 12:45:12 1999 Owen Taylor + + Fixes from Peter Wainwright + + * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is + already set, call old engine's destroy function and + unref the old engine. + +Thu Jun 10 17:59:38 1999 Tim Janik + + * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize. + +Wed Jun 9 15:13:16 1999 Tim Janik + + * gtk/gtkaccelgroup.h: mark certain functions as internal. + +Wed Jun 9 13:48:28 1999 Tim Janik + + * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the + expand behaviour changed. + + * gtk/gtklabel.c (gtk_label_set_pattern): + (gtk_label_set_justify): + (gtk_label_set_line_wrap): + don't bother invoking queue_clear, the reallocation does + that for us, always free_words so the upcoming resize will + relayout the label's contents. + +Wed Jun 9 12:50:48 1999 Tim Janik + + * applied argument implementation patches from Elena Devdariani + . + + * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size, + ::space_style, ::relief + * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size + * gtk/gtkpreview.c: ::expand + * gtk/gtkpaned.c: ::handle_size, ::gutter_size + * gtk/gtknotebook.c: ::homogeneous + * gtk/gtklabel.c: ::wrap + * gtk/gtklist.c: ::selection_mode + * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge + * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y + * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity + * gtk/gtkclist.c: ::sort_type + * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle + * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child + +Tue Jun 1 23:38:38 1999 Owen Taylor + + * gtk/gtkstyle.c: Removed ill-thought-out part of last + comment. + +Tue Jun 1 23:30:09 1999 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_attach): Get the reference + counting right when we have to attach a new style + for a different visual. (Chi-Deok Hwang ) + + * gtk/gtkstyle.c: Documented the refcounting + peculularities of gtk_style_attach. + +1999-06-01 Tim Janik + + * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid + window types. + + * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead + of GTK_TOPLEVEL for creating the window. + +1999-06-01 Tim Janik + + * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is + the last argument (reported by Per Winkvist). + +Tue May 25 13:13:12 1999 Owen Taylor + + Fixes for invisible XOR lines (Frank Loemker + ) + + * gtk/gtkclist.c (gtk_clist_realize): Always use + a non-zero pixel for GDK_XOR. + + * gtk/gtkvpaned.c gtk/gtkhpaned.c: + Use GDK_INVERT instead of GDK_XOR. + +Wed May 12 21:56:40 1999 Lars Hamann + + * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed + signals if h/voffsets differ from adjustment values. + Reportet by Jerome Bolliet + +Mon May 10 04:20:41 1999 Tim Janik + + * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate + ::selection-done emissions up to the topmost menu shell. + +Fri May 7 10:15:14 1999 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset + the user data on the window before destroying it. + + * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an + unrealize handler to take care of destroying + notebook->panel properly. + (Bug #1198 - Morten Welinder ) + + * gtk/gtktext.c (expand_scratch_buffer): Fix reversal + of g_new and g_realloc to stop memory leak. (Actually, + we could just use g_realloc(), but I'm not 100% sure + that is portable). + (Bug #1196 - Morten Welinder ) + +Wed Apr 21 00:42:08 1999 Owen Taylor + + * gtk/gtkplug.h: Removed stray GtkPlugButton declaration. + + * gdk/gdkfont.c (gdk_text_measure): Fix the return value + for fontsets. + + * gtk/gtkbutton.c (gtkbutton_expose): Fix warning + with bin/button confusion. + +Thu May 6 04:53:26 1999 Tim Janik + + * gtk/testgtk.c: in the ItemFactory test, link radio items together, + and show how preselection of radio items is done. + +Sun May 2 13:31:14 1999 Tim Janik + + * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): + * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert): + * gtk/gtktoolbar.c (gtk_toolbar_insert_element): + * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1): + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): + * gtk/gtktable.c (gtk_table_attach): + * gtk/gtklist.c (gtk_list_insert_items): + * gtk/gtkmenushell.c (gtk_menu_shell_insert): + * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): + * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): + * gtk/gtkbin.c (gtk_bin_add): + * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): + * gtk/gtkfixed.c (gtk_fixed_put): + * gtk/gtklayout.c (gtk_layout_put): + general fixups to container_add logic. always realize child if + child->parent is realized, only map the child and queue a resize + if child and child->parent are both visible. + +Fri Apr 30 09:02:28 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall + instead of gtk_container_foreach to walk and unrealize children, so + composite children get also unrealized. + (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to. + (gtk_widget_map): assert that the widget is visible (basic constrain). + (gtk_widget_real_map): assert that the widget is realized (basic + constrain). + +Fri Apr 29 00:53:20 1999 Tim Janik + + * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak. + +Tue May 4 09:32:08 1999 Owen Taylor + + * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc + file for iso-8859-2 locales. + + * configure.in (ALL_LINGUAS): ALL_LINGUAS update. + +Tue Apr 27 16:38:32 1999 Owen Taylor + + * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES. + (Pointed out by andy@rz.uni-karlsruhe.de and others). + Remove some suspicious and useless lines. + +Tue May 4 08:44:08 1999 Owen Taylor + + * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use + width,height = 0, 0 to mean - here to edge of window, + instead of -1, -1, since the former is all we support. + +Tue May 4 08:34:43 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main): Correctly free list nodes + when removing from quit_functions list. + +Tue Apr 27 14:17:16 1999 Tim Janik + + * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable. + +Tue Apr 27 18:23:35 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): + When redrawing characters on non-visible entry, use appropriate + '*' character. (Bug #1130 - Jean-Marc Jacquet ) + +Tue Apr 27 01:31:40 1999 Lars Hamann + + * gtk/gtkclist.c (drag_dest_cell): compute destination cell + from drag coordinates. + (gtk_clist_drag_data_received) (gtk_clist_drag_motion): + use drag_dest_cell. + + * gtk/gtktree (drag_dest_cell) + (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise. + (Bug #1129) + +Wed Apr 21 21:26:11 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize + translate_* fields. + (gtk_item_factory_finalize): invoke translate_notify independant from + translate_data. + (gtk_item_factory_set_translate_func): likewise. + (gtk_item_factory_destroy): only remove ifactory pointer from those + widgets that belong to us (stupid me). + +Mon Apr 19 12:05:31 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of + rc_style list when lookup succeeeds. + +Thu Apr 15 01:11:24 1999 Lars Hamann + + * gtk/gtkctree.c (resync_selection): + * gtk/gtkclist.c (resync_selection): fixed undo_selection bug. + * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection + bug. + +Fri Apr 9 19:22:19 1999 Owen Taylor + + * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c: + Add some missing GDK_THREADS_ENTER()/LEAVE around + timeouts. (Patches from Sebastian Wilhelmi ) + +Thu Apr 8 20:10:33 1999 Tim Janik + + * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate() + rather than emit_by_name. + + * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference + on the widget across multiple signal emissions. + (gtk_editable_delete_text): same here. + (gtk_editable_class_init): set widget_class->activate_signal after + editable_signals[ACTIVATE] has been created. + +Wed Apr 7 22:59:47 1999 Owen Taylor + + * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp + position here prematurely -- we might not have the + right ->min_position and ->max_position yet. + +Tue Apr 6 16:38:51 1999 Owen Taylor + + * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request): + Add error traps so if the other end of the connection + dies, we survive. + + * gtk/gtkselection.c (gtk_selection_notify): Clean + up properly when selection property retrieval fails. + + * gtk/gtkselection.c (gtk_selection_request): Correctly + reject SelectionRequest notifies where the handler + returns no data. + +Tue Apr 6 12:24:21 1999 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight + when we've previously highlighted. + + * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't + emit two "drag_leave" signals for Motif drops. + + * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send + back the correct status messages when dropping from + Motif onto a proxy window that is rejecting the + drop. + +Sat Mar 27 23:32:13 1999 Tim Janik + + * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free + the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal() + to compare two argument values. added gtk_arg_to_valueloc() to set a + variable from an arg through its location (pointer). + + * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of + gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected + as gfloat*, uchars are collected as guchar*, ints are collected as + gint*, etc... + +Mon Mar 29 17:45:47 1999 Owen Taylor + + * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c: + Include instead of . + + * gtk/gtkstyle.c: Fix double include of gtkthemes.h + (actually, a lot more duplicate includes occur if + you trace through the sequence of #include's) + gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu + +Mon Mar 29 17:02:58 1999 Owen Taylor + + Patches from Akira Higuchi + gtk-a-higuti-990322-[0-3] + + * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS + that was causing -DX_LOCALE not to work. + + * gtk/gtkrc.c (gtk_rc_init): + X_LOCALE will never have LC_MESSAGES defined + +Thu Mar 25 12:38:31 1999 Tim Janik + + * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from + g_get_home_dir() (gtk-pmc-990123-0.patch.gz). + + * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/ + left/right as well (gtk-michael-980726-0.patch.gz). + + * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/ + for pointer values, use gchar instead of char. fixed uline allocation + leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem + chunks instead of G_ALLOC_ONLY. + (gtk_label_size_request): always alter requisition as passed and leave + widget->requisition alone. + (gtk_label_set_text): allow NULL strings. + (gtk_label_new): likewise. + +Wed Mar 24 09:24:03 1999 Tim Janik + + * gtk/gtkdrawingarea.[hc]: type/macro fixups. + +Mon Mar 22 05:51:34 1999 Tim Janik + + * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible + *and* mapped (i.e. drawable). + (gtk_bin_expose): only send exposes to drawable children. + + * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable. + (gtk_box_expose): only send exposes to drawable children. + + * gtk/gtkhscale.c (gtk_hscale_draw): + * gtk/gtkvscale.c (gtk_vscale_draw): + hm, this is an ugly one. we first compute the size of our trough area + here (window relative) and then check intersection with the draw_area + which is parent relative because we're a NO_WINDOW widget, so we need + to offset the trough area by allocation.x and allocation.y before the + check. (this must not be done for the background area though, since + that's already computed parent relative). + +Mon Mar 22 00:41:39 1999 Lars Hamann + + * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary, + unrealize title buttons. + +Fri Mar 19 00:00:22 1999 Lars Hamann + + * gtk/gtkclist.c (gtk_clist_column_title_passive) + (gtk_clist_column_title_active): + only connect/disconnect to GtkWidgetClass::event to block mouse events. + + * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): + zero initialize event, removed superfluous gdk_window_get_pointer call + + * gtk/gtklist.c (gtk_list_vertical_timeout) + (gtk_list_horizontal_timeout): removed superfluous + gdk_window_get_pointer call + +Wed Mar 17 09:00:00 1999 Tim Janik + + * plugging problems reported by "Bruce Mitchener, Jr." + due to a purify session. + + * gtk/gtkstyle.c: + (gtk_style_ref): + (gtk_style_unref): assert ref_count to be > 0. + + * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize + the requisition. + (gtk_clist_set_shift): likewise. + + * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the + adjustments. + + * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the + event before sending it and set send_event to TRUE (which needs to + be done for *all* synthesized events). + (gtk_list_vertical_timeout): likewise. + + * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory + leaks. + + * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event + to TRUE when synthesizing events. + +[ *** end of merges from 1.2 *** ] + +1999-11-21 Tor Lillqvist + + * gdk/gdkconfig.h: Remove, as this is a file generated by configure + (or copied from gdkconfig.h.win32 on Win32, sigh). + + * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL. + + * gdk/gdk.c (gdk_keyval_convert_case): Fix typo. + + * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line. + + * gdk/gdkconfig.h.win32: New file. + + * gdk/win32/makefile.cygwin: Build just a static archive here. + + * gdk/makefile.cygwin: New file. Get the win32-specific stuff + for the DLL from the static archive built above. + + * gdk/gdk.def: Moved here from the win32 subdirectory. + + * gdk/win32/*: Adapt for the changed private struct organisation. + + * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now. + +Sun Nov 21 16:44:35 1999 Stefan Jeske + + * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support + for wheel mice (buttons 4 and 5). + +1999-11-18 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor + drawables use just the pixel field in the foreground and + background GdkColor of the GdkGC. + + gdk_gc_set_{fore,back}ground() are called in the GIMP with + GdkColors containing uninitialized (red,green,blue) fields, and + just the pixel field filled in, and furthermore in the + visual-dependent format as returned by gdk_rgb_xpixel_from_rgb(). + It thus turns out that we really don't need to have the full + GdkColor for fg and bg in GdkGCWin32Data after all. Will change + it later to have just the pixel values. + +Mon Nov 15 17:17:51 GMT 1999 Tony Gale + + * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/ + +Sat Nov 13 22:30:29 GMT 1999 Tony Gale + + * docs/gtkfaq.sgml: threads example from Erik Mouw. + New question on GtkLabel background colors. + + * docs/gtk_tut.sgml: + - Correct the example code callback + function definitions. + - Update the gtkdial example code, from Frans van Schaik. + - Update setselection.c to current API. + + * examples/Makefile examples/*/*.c: Update to code + listed in tutorial. + +1999-11-10 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode + subrange table (from the "Developing International Software for + WIndows 95 and Windows NT" book) was missing the Hangul syllable + block... Get the loaded font's charset correctly. + + (Note that this, and the other *-win32.c files, still really are + the old ones, the win32 subdirectory is not ready for compilation + yet after the reorg.) + +Wed Nov 10 17:26:49 GMT 1999 Tony Gale + + * gtk/gtkclist.c: Fix off-by-one bug in parameter + check. + +Wed Nov 10 12:12:03 1999 Owen Taylor + + * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState() + on results of XQueryDeviceState(). + +Mon Nov 8 16:40:43 1999 Owen Taylor + + * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since + we need to accesss only ->children. We need an accessor + for the children. + + * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G + DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer() + to get rid of gdkx.h include. + + * gtk/gtkctree.c: Get rid of #include + and random references to 'None'. + + * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c + Get rid of unused #include + + * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include + gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from + gdkconfig.h. + +1999-11-08 Tor Lillqvist + + * gdk/win32/gdkdraw.c + * gdk/win32/gdkfont.c + * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes + following yesterday's changes. (Unrelated to Owen's reorg.) + +Mon Nov 8 16:18:25 1999 Owen Taylor + + * gdk/x11/gdkinput-gxi.c: Add missing include, + fix GdkWindowPrivate => GdkDrawablePrivate. + + * gdk/x11/gdkinputprivate.h: include . + + * gdk/x11/Makefile.am (xinput_sources): Add missing + backslash to fix building with --with-xinput=none + +Mon Nov 8 14:47:04 1999 Owen Taylor + + Move all X specific code into the x11/ directory. + Aside from shuffling things around, did the following: + + * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add + gdk_arg_context_* - a simple argument parsing system + in the style of popt. + + * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch] + gdk/x11/gdkprivate-x11.h: + Remove X specific stuff from GdkDrawable and GdkWindowPrivate - + add ->klass and ->klass_data fields. The klass_data + field points to an auxilliary structure that is + windowing system dependent. + + * gdk/gdkfont.c: Make most of the measurement functions + simply wrappers around gdk_text_extents(). + + * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a + _gdk_font_strlen() function that hides the weird + behavior in gtk+-1.[02] where a string is interpreted + differently for 8-bit and 16-bit fonts. + + * gdk/gdkevents.c: Add a new function gdk_event_button_generate() + to store common code for synthesizing double/triple + press events. + + * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h. + Make all the function that modify an existing GC + simply wrappers around gdk_gc_set_values(). + + * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation + for throwing out later. + + * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate, + GdkImagePrivate and GdkColormapPrivate to have a + windowing system dependent part (GdkFontPrivateX etc.) + that "derives" from the system-independent part. + + * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c: + Got rid of the included-source-files for XInput in + favor of automake conditionals. (Which didn't exist + when XInput support was originally added.) + + * gdk/gdkrgb.c: Remove the visual id from the debugging + statements since that is X11 specific; print out + type/depth info instead. + + +Wed Nov 3 18:14:49 1999 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when + loading duplicates of hashed fonts. + + * gdk/gdk.c (gdk_keysym_convert_case): rename + gdk_XConvertCase to gdk_keysym_convert_case, allow + results to be NULL in the GTK+ style. + + * gdk/gdkcompat.h: Started compatibility header + for renames. + +1999-11-07 Tor Lillqvist + + * gdk/win32/gdkprivate.h: New font private structures, related to + fontsets. + + * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and + gdk_font_list_free(). On X11, will just be wrappers to + XListFonts() and XFreeFontNames(). On Win32, the code previously + in gtkfontsel.c is now here. + + New function gdk_font_xlfd_create(). On X11 will get the FONT + property of the font (for GDK_FONT_FONTs), or call + XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32 + builds a XLFD style name from the font information in the LOGFONT + struct(s). + + New function gdk_font_xlfd_free(), which correspondingly frees the + string returned by gdk_font_xlfd_create(). + + Implement fontsets on Win32. Add a function that iterates over a + wide char string and calls a callback function for each substring + of wide chars from the same Unicode subrange (and thus probably + available in the same real font). + + Improve the XLFD emulation a bit. + + * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix. + + * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k + Beta3, WM_IME_CHAR messages don't seem to contain the composed + multi-byte char as with the Active IMM on Win9x. Oh well, handle + WM_IME_COMPOSITION with GCS_RESULTSTR instead, use + ImmGetCompositionStringW() to get the composed Unicode chars. + + * gdk/win32/gdkgc.c + * gdk/win32/gdkdraw.c: Changes needed because of the font private + struct changes. + + * gdk/win32/gdk.def: Add the new functions. + +1999-11-04 Tor Lillqvist + + * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to + get the Platform SDK to get . + + * gdk/win32/gdkevents.c: More event handling fixes and + simplification. Never generate motion events with is_hint true. We + used to do that on bogus grounds earlier. Windows sends + WM_MOUSEMOVE messages on button events even if the mouse hasn't + moved, ignore these. + + * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets. + + * gdk/win32/gdkglobals.c + * gdk/win32/gdkprivate.h: Define a typedef for the pointer to + the TrackMouseEvent function, and use it. + + * gdk/win32/gdkwindow.c: Terminate widechar string with a zero + char before calling WideCharToMultiByte in order to get a string + for the window title. + + * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out. + + * gdk/win32/gdk.def: Remove obsolete functions. + + * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add + /nodefaultlib and /defaultlib switches. + + * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/. + +1999-10-31 Tor Lillqvist + + * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including + EuroSign). + + * gdk/gdktypes.h: Add note about wchar_t not necessarily being the + same type as GdkWChar, especially on Win32. + + * gdk/win32/*.c: Change gdk_root_parent to be a pointer. + + * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode + before passing to Windows GDI for drawing etc. Convert to the + system default codepage before passing to Windows as window + titles. + + * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to + support changing input locale on the fly. + + * gdk/win32/gdkevent.c: Support input language (keyboard locale) + on-the-fly changes. Convert incoming characters from the current + codepage to Unicode (and then to a UTF-8 multi-byte string) based + on the current input language. Use keysym<->Unicode mapping tables + and functions borrowed from xterm sources. + + Support IMEs (Input Method Editors) for CJK languages. On non-CJK + editions of Win9x, use the ActiveX-based Active IMM (Input Method + Manager) if available. IMEs and the Active IMM are available under + the disguise of Chinese, Korean and Japanese support for IE and + Outlook Express from "Windows Update" for Win98. On Win2k, the CJK + support is present in all editions (as long as you install it). + + Call DispatchMessage from gdk_events_queue() (and thus + gdk_WindowProc()), instead of duplicating the code in + gdk_WindowProc(). + + Reworked the grab handling and propagation code, factored out + duplicated code snippets into separate functions. Other cleanups, + too. + + * gdk/win32/surrogate-dimm.h: Provide just the bits we need from + the header describing the Active IMM. + + * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far + just do the same as for "single" fonts. + + * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from + gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle + the new keysyms from gdkkeysyms.h. + + * gtk/gtkfontsel.c (Win32): Load the font for the preview as a + fontset, so that gtkentry uses wide characters. + + * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call + GTk+'s system directory "gtk+", not "gtk". + +Sat Oct 30 13:17:18 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ update + +1999-10-21 Tor Lillqvist + + * gdk/win32/gdkprivate.h: Add more font private data. + + * gdk/win32/gdkfont.c + * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset + fonts and strings. Now works much better. You still have to + have a correct font selected, though. No fontset emulation yet. + +1999-10-19 Tor Lillqvist + + * gtk/maketypes.awk: Use G_OS_WIN32. + + * gtk/gtk.def: Add some missing entry points. Also some non-public + ones, but PyGTK porter claims to need them. + + * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the + built-in type generation. + +1999-10-14 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for + GDK_FONT_FONT fonts (which is all we have for now, we don't + emulate fontsets). The X11 version uses plain XDrawString in that + case, too. The string passed to gdk_draw_text_wc seems to be in + fact (at least, when used by gtkentry and gtktext) either in a + single-byte charset, or a DBCS. Not Unicode. + + This fixes the problem in gtkfontsel, where even if you had + selected a font with a non-Latin1 charset (windows-greek, for + instance), the preview still used Latin-1 glyphs. + + * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't + use GetTextExtentPoint32W, use GetTextExtentPoint32A. + (gdk_font_load): Recognize the demibold etc weights, even if we + don't have the corresponding constants in the headers. + (gdk_font_hash_insert): Use same hash mechanism as in the X11 + version. Should save font resources a bit, when we don't have + multiple HFONTs for the same font. + + * gdk/win32/gdkprivate.h: Add the names field as in the X11 + version. + +1999-10-11 ERDI Gergo + + * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default + X values + +1999-10-09 ERDI Gergo + + * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text + layout support (as mentioned on + http://www.jcinteractive.com/gnome-ui/software/widgets/) + +Wed Oct 6 12:46:17 PDT 1999 Manish Singh + + * gtk/fnmatch.c + * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/ + +1999-10-05 Jesus Bravo Alvarez + + * configure.in (ALL_LINGUAS): Added Galician (gl) + +1999-10-05 Tor Lillqvist + + * gdk/win32/*.[ch]: Corresponding changes as in X11 backend. + + * gdk/win32/gdkcompat.c: New file, actually provide an + implementation for the deprecated functions. (Just temporarily.) + + * gtk/gtkfilesel.c: Fix an #ifdef syntax botch. + + * gtk/makefile.{cygwin,msc}: Update gdk_headers. + + * gdk/win32/gdk.def gtk/gtk.def: Updates. + +1999-10-05 Kjartan Maraas + + * configure.in: Added "uk" to ALL_LINGUAS. + +Mon Oct 4 11:57:11 PDT 1999 Manish Singh + + * configure.in: correct checking for BeOS check + + * gdk/gdktypes.h + * gtk/fnmatch.c + * gtk/gtkfilesel.c + * gtk/gtkitemfactory.c + * gtk/gtkmain.[ch] + * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines + +Mon Oct 4 16:16:53 1999 Pablo Saratxaga + + * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset + encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic + languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used + by Bulgarian). + +Sun Oct 3 18:13:44 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_reset_shapes_recurse): + Fix a reference to window_private->destroyed. + + * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct + (ugly) setting of an internal GdkWindow member to use + a _slightly_ cleaner macro. + + * gdk/gdkprivate.h: Split GdkWindowPrivate into + GdkDrawablePrivate and GdkWindowPrivate. + Add extra macros for accessing GDK_DRAWABLE_ components. + + * *.[ch]: Massive adjustments for the above, use the + new macros in a lot of places. + +Sun Oct 3 15:16:24 1999 Owen Taylor + + * gdk/gdktypes.h: Make GdkDrawable the base type, + not GdkWindow. + +Sun Oct 3 15:08:44 1999 Owen Taylor + + * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function. + +Sun Oct 3 14:26:15 1999 Owen Taylor + + * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory. + +Sun Oct 3 14:16:23 1999 Owen Taylor + + * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with + gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp) + + * configure.in gdk/Makefile.am x11/: create x-specific subdirectory. + + * docs/gtk-config.1: Now autogenerated. + * docs/Changes-1.4.txt: started + +1999-10-03 Tor Lillqvist + + * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage + to #ifdef also here. + + * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those + Owen did to the X11 backend. + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use + ScrollWindowEx when blitting inside a window, it can't be correct + in the general case. + + * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling + WM_GETMINMAXINFO is easier. + + * gdk/win32/gdkimage.c (gdk_image_new): Create new image with + depth equal to the bitspixel value, not the visual's depth. + + * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth + to 24 even if the bitspixel value is 32. + + * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no + need to check for depth==32 when bpp==32, depth will always be 24. + +Fri Oct 1 18:03:36 1999 Owen Taylor + + * docs/Changes-1.4.txt: Started + + * gtk/Makefile.am (gdk_headers): Include all the new headers. + + * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces. + + * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private + into C file. + + * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput + header to gdkinputprivate.h. + + * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been + unused since before 1.2. + +1999-09-30 Tor Lillqvist + + * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32, + expand possible hex escapes in the font family (put there by + logfont_to_xlfd if the font name isn't a legal XLFD font family, + mainly if it contains slashes). (gtk_font_selection_create_xlfd): + On Win32, add hex escapes here, too. + +Wed Sep 29 19:55:35 1999 Owen Taylor + + * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11 + to #ifdef GDK_WINDOWING_X11. + +[ Merges from gtk-1-2 ] + +Wed Sep 8 07:13:29 1999 Tim Janik + + * configure.in: fixed "GNU Make" check to pass with new make version + 3.77.95. + +Fri Sep 3 16:04:41 1999 Tim Janik + + * gtk-config.in (--version): don't echo @GTK_VERSION@, but + @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the + AM_PATH_GTK() macros don't get confused by the -pre1. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * configure.in (REBUILD): Change check for perl5 + to check explicitely for v >= 5.002. (5.001 + does not work with our scripts.) + +Wed Aug 25 15:45:46 1999 Tim Janik + + * configure.in: evaluate $PERL for the perl version check. added + --disable-rebuilds to give the user an option to completely disable + any source autogeneration rules. + +Mon Aug 23 23:16:14 1999 Tim Janik + + * configure.in: evaluate $ac_make when checking for GNU Make. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * docs/Makefile.am: added generation.txt. + + * Makefile.am: require automake 1.4, build README from README.in and + INSTALL from INSTALL.in in dist-hook. + + * README.in: + * INSTALL.in: new files to autogenerate README and INSTALL from. + + * configure.in: figure whether we have GNU Make + + * docs/generation.txt: minor additions/corrections. + +Wed Aug 11 13:38:26 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +July 30, 1999 Elliot Lee + + * configure.in: Fix autoconf warnings about cross compilation by + trying to provide sane defaults for AC_TRY_RUN. + +Fri Jul 16 22:20:21 PDT 1999 Manish Singh + + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.3 + +Thu Jul 8 11:30:18 1999 Owen Taylor + + * INSTALL: Indicate that the --with-glib= configure + time flag is unsupported. + +Mon Jul 5 20:36:03 1999 Owen Taylor + + * docs/generation.txt: Added a file that gives + documenation about the autogeneration process for + various autogenerated files. + +Tue Jun 29 15:59:25 1999 Owen Taylor + + * configure.in (LIBS): Look for libgmodule in the + right location. + +Thu Jun 17 13:57:31 1999 Owen Taylor + + * docs/gtk_tut.sgml: Removed references to + code examples in my directory on gtk.org as + they should all be in the tutorial now. + + * docs/gtk_tut.sgml: Added sources for dial-test + and scribble-xinput programs that were previously + missing. + +Fri Jun 4 00:08:59 1999 Owen Taylor + + * TODO: Added entry about menu keyboard navigation, removed + some finished items. + +Mon May 31 00:11:24 1999 Owen Taylor + + * acinclude.m4: Standardize on func_dgettext + not func_gettext, so that the checks for dgettext + actually are paid attention to. + +Wed May 5 10:47:54 1999 Owen Taylor + + * configure.in (LIBS): Add $INTLLIBS into $LIBS + directly, rather than repeating the checks for + gettext. + + * INSTALL: Added information about gettext and + NLS support. + + * acinclude.m4 (LIBM): Check for dgettext, not + just gettext. This should hopefully fix things wrt + systems with old versions of GNU gettext installed. + +Tue Jun 29 15:59:25 1999 Owen Taylor + + * configure.in (LIBS): Look for libgmodule in the + right location. + +Thu Apr 1 16:58:10 PST 1999 Manish Singh + + * autogen.sh: add --enable-maintainer-mode + + * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS" + +Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson + + * docs/gtk-config.1.in: + docs/Makefile.am: + configure.in: gtk-config is now generated. + + * docs/gtk-config.1: Removed, now generated. + +Thu Sep 23 17:59:59 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't + handle CreateNotify itself, still put out a debuging message for + --gdk-debug=events. made the ReparentNotify debugging message more + verbose. + wrap xcoords translation for ConfigureEvents into an error trap, + a destroy event may already be pending, and in that case, the + actuall coordinate values are not at all critical. + +Sat Sep 18 22:24:15 1999 Owen Taylor + + * gdk/gdkcc.c: Stop leaking the color_hash all over + the place. Simplify and improve the logic. + +Fri Sep 17 09:57:15 1999 Tim Janik + + * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean) + for prototypes and function implementations consistent (reported + by Tomas Ogren). + +Tue Sep 14 18:23:01 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): tell if expose events have + send_event set in debugging output. + (gdk_compress_exposures): default initialize the event so we don't + operate on bogus values (namely send_event). + +Thu Sep 2 16:33:59 1999 Owen Taylor + + * gdk/gdkwindow.c: When we receive an unexpected + destroy notify on one of our windows, don't just + warn about it, also mark our windows as destroyed. + +Sun Sep 5 08:10:53 1999 Owen Taylor + + * gdk/gdkfont.c (gdk_font_hash_insert): Add + name => font and name => fontset hashes. The + name => fontset hash is a _big_ win since we + weren't previously caching fontsets at all and loading + fontsets is expensive. The name => font hash + is less of a win, but it does save us from doing + repeated XQueryFont calls on the same font. + + * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names + list so we can remove font/fontset from hash. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_atom_intern): Remove useless + and slightly confusing test. [ XInternAtom (,,TRUE) + will never return None ]. + +Sat Sep 4 08:39:26 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints) + gdk/gdkwindow.c (gdk_window_set_hints): + + Don't omit setting the properties if flags == 0 - + there may be an existing set of properties there + already. (Very old bug. Would it be better to + delete the property instead?) + + * gdk/gdkselection.c (gdk_selection_property_get): Fix + spelling error in comment. + +Wed Sep 1 14:05:30 1999 Owen Taylor + + * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push() + to avoid stomping over gdk_error_warnings. + + * gdk/gdkimage.c (gdk_image_new): compute image->bpp + as (bits_per_pixel + 7) / 8. This gives the same + result as before for multiples of 8, but actually + a "reasonable" value for 1bit or 4bit displays. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * gdk/Makefile.am: minor cleanups, strip spaces on build rules for + GNU Make. + +Tue Aug 17 07:43:04 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): give a debugging note when + discarding configure events. + +1999-08-18 Federico Mena Quintero + + * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the + refcount is greater than zero. + + * gdk/gdkwindow.c (gdk_window_unref): Likewise. + + * gdk/gdkfont.c (gdk_font_unref): Likewise. + + * gdk/gdkgc.c (gdk_gc_unref): Likewise. + + * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise. + +Wed Aug 11 01:04:57 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_property_get): Fix assumption + that format 32 => sizeof(item) == 4. It really is + sizeof(long). + +Tue Jun 29 23:02:42 1999 Owen Taylor + + * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't + core dump at all on X IO errors, only core dump + if --enable-debug for X errors. + +Thu Jun 24 17:06:23 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for + unknown window:" message. disabled ConfigureNotify discarding code, + because it led to events being processed out of order. + +Thu Jun 24 12:22:02 1999 Tim Janik + + * gdk/gdkglobals.c: preinitialize gdk_error_code to 0. + + * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since + we export this function, supress error warnings and don't reset the + error code in the first half of this function. + + * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error + code (instead of just -1) so gdk_error_trap_pop() reveals something + actually informative about the error that happened. + + * gdk/*.c: + don't rely on gdk_error_code being -1 if an error occoured, but just + gdk_error_code != 0. + +Thu Jun 24 11:50:07 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list + pointer *before* invoking the filter function, so we at least don't + crash if a filter is removed that is currently executed. window filters + *really* need to be made truely reentrant at some point. + +Mon Jun 14 11:10:15 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): print the atom name in the + PropertyNotify debug messages. + +Wed May 5 22:51:06 1999 Owen Taylor + + Patch from Sung-Hyun Nam + + * gdk/gdkim.c: Fix cut-and-paste errors for + x/y and PreeditAttributes/StatusAttributes. + +Wed May 5 22:24:21 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change + G_MAXINT to 2^16 to alleviate overflow problems in + various window managers. + +Wed Apr 21 00:42:08 1999 Owen Taylor + + * gdk/gdkfont.c (gdk_text_measure): Fix the return value + for fontsets. + +Wed May 5 12:42:01 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints): + Initialize size_hints.x and size_hints.y because kwm + brokenly pays attention to them. + (Bug #1181 - Lars Heete ) + +Wed May 5 11:38:56 1999 Owen Taylor + + * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the + return value of gdk_list_visuals(). + (Bug #1193 - Morten Welinder ) + +Tue May 4 11:12:56 PDT 1999 Manish Singh + + * gdk/gdkim.c (gdk_im_real_open): cast the return value of + XSetIMValues to (void *) when comparing to NULL, to workaround + the problem of some compilers barfing since older X headers don't + have the prototype for it. + +Mon Apr 19 10:11:12 1999 Owen Taylor + + * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak + for pseudocolor where colormap->colors was double + allocated. + + * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the + color value in the hash table with the pixel filled + in so when we do later hash table lookups, the color + value is correct. + +Sun May 2 15:29:45 PDT 1999 Manish Singh + + * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before + making the call + +Tue Apr 27 11:17:35 1999 Owen Taylor + + * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak + pointed out by Morten Welinder . + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Fri Apr 16 20:41:43 PDT 1999 Manish Singh + + * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines + + * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use + g_strdup_printf instead of calcing the length separately + +Tue Apr 13 02:49:33 1999 Owen Taylor + + * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG + that we don't do in many other places. (Fixing duplicate + #include of config.h) + + * gdk/gdkevents.c: include gdkinput.h _after_ config.h. + Otherwise, #ifndef XINPUT_NONE check in the latter + doesn't work. (Bug #546) + +Sun Apr 11 14:38:03 1999 Tim Janik + + * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color + "None" case insensitive. + +Tue Apr 6 16:38:51 1999 Owen Taylor + + * gdk/gdkselection.c: + Add error traps so if the other end of the connection + dies, we survive. + +Tue Apr 6 12:24:21 1999 Owen Taylor + + * gdk/gdkdnd.c (gdk_drag_motion): Separate out the + dest_xid field into two fields - one for the window + to send in messages, one to indicate the last looked + up window for caching purposes. This is needed, so + that Leave messages get the correct window. + +Mon Apr 5 13:21:30 1999 Owen Taylor + + * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare): + Fix warning created by people mucking around + with the gsource API. + + * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full): + Change mapping between GIOCondition and GdkInputCondition + to match the way the Linux kernel does it. This should + fix problems where closed pipes were no longer signalling + GDK_INPUT_READ on systems with a native poll(). + +Mon Apr 5 17:11:57 1999 Owen Taylor + + * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check + explicitly for the string "None" - it is in the XPM + spec and some servers treat unknown colors in odd ways + (like asking the user!) + +Thu Apr 1 16:58:10 PST 1999 Manish Singh + + * gdk/gdkevents.c: made "->" into a "." of previous change so + it compiles + +Thu Apr 1 18:41:25 1999 Owen Taylor + + * gdk/gdkevents.c (gdk_compress_exposures): Set the + window field of the event structure before calling + user filters. + +1999-03-31 Federico Mena Quintero + + * gdk/gdk.c (gdk_init_check): Use False as the last argument to + XInternAtom() here. This is a particularly Old And Nasty(tm) bug. + +Mon Mar 29 17:31:52 1999 Owen Taylor + + * gdk/gdkim.c (gdk_mbstowcs): Free the value of the + intermediate text property - prevents major memory + leak when gdk_use_mb. + gtk-d3august-990311-0: Bj|rn Augustsson + +Mon Mar 29 17:02:58 1999 Owen Taylor + + Patches from Akira Higuchi + gtk-a-higuti-990322-[0-3] + + * gdk/gdkfont.c (gdk_text_extents_wc): Make work when + sizeof(wchar_t) != sizeof (GdkWChar) + + * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS + that was causing -DX_LOCALE not to work. + + * gtk/gtkrc.c (gtk_rc_init): + X_LOCALE will never have LC_MESSAGES defined + + * gdk/gdk.c (gdk_init_check): + Remove --xim-preedit and --xim-status from argv properly. + + * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so + that the client window is present on the X server + before we pass it to the input method. + +Tue Mar 9 10:46:49 1999 Owen Taylor + + * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where + if --display is specified on the command line, than + the drag window will not be created on that display. + +Tue Mar 9 10:38:24 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where + lookups with only_if_exists == TRUE were inserting + bogus values into the atom cache. + +Wed Mar 17 09:00:00 1999 Tim Janik + + * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t), + then reset it to NULL. + + * gdk/gdkcolor.c: + (gdk_colors_free): + (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the + key for g_hash_table_remove() in both functions, this prevents us + from accessing possibly uninitialized portions of a GdkColor structure + where we are only interested in its pixel value. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + +1999-09-21 Tor Lillqvist + + * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting, + just to be sure. + + * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of + unused variables, leftovers from the X11 version. + + * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd. + + * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only + downcase fields on X11. + +Mon Sep 20 13:17:39 1999 Pablo Saratxaga + + * configure.in,po/pt_BR.po: added Portuguese Brazilian file from + Alex Sandro Queiroz e Silva + +1999-09-17 Tor Lillqvist + + * gdk/win32/gdk.def: Add gdk_threads_mutex. + + * gtk/makefile.msc: Correct path to libintl. + + Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in + use of gint vs. int, and gint vs. gboolean in headers and + definitions. Use GtkType for the *_get_type functions. Note that + these changes preserve binary compatibility. + + * gdk/gdk.c + * gdk/win32/gdk.c + * gdk/gdk.h: Fix inconsistencies: gint vs int. + + * gtk/gtkmain.c + * gtk/gtkclist.c + * gtk/gtkmenufactory.c + * gtk/gtknotebook.c + * gtk/gtkwidget.c: Fix inconsistencies, also gint + vs. gboolean. + + * gtk/gtkcolorsel.[ch] + * gtk/gtkcombo.[ch] + * gtk/gtkdrawingarea.[ch] + * gtk/gtkgamma.[ch] + * gtk/gtkhandlebox.[ch] + * gtk/gtkhpaned.[ch] + * gtk/gtkhruler.[ch] + * gtk/gtkplug.[ch] + * gtk/gtkpreview.[ch] + * gtk/gtkruler.[ch] + * gtk/gtksocket.[ch] + * gtk/gtkstatusbar.[ch] + * gtk/gtktoolbar.[ch] + * gtk/gtkvbbox.[ch] + * gtk/gtkvpaned.[ch] + * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type + functions. + + * gtk/gtkgamma.h: Fix bug, missing () in call of + gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. + +1999-09-14 Tor Lillqvist + + * gdk/gdkcolor.c (gdk_colormap_new) + * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak: + colormap->colors was allocated twice. + + * gdk/win32/gdk.c: Remove some unused stuff. + + * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the + colormap. + + * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type) + * gtk/gtklabel.h (gtk_label_get_type) + * gtk/gtktipsquery.c (gtk_tips_query_get_type) + * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType + in a couple of places, not guint. + +Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga + + * configure.in,po/et.po: added Estonian language file + +Wed Sep 1 14:36:12 CEST 1999 Pablo Saratxaga + + * configure.in,po/da.po: added Danish file + +Sun Aug 29 13:38:59 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: Minor FAQ Update + +Sat Aug 28 14:34:37 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ update + +1999-08-27 Tor Lillqvist + + Win32: Philippe Colantoni suggests a + way to get window contents continually refreshed while resizing. I + didn't like the effects myself, so it's not on by default. + + * gdk/win32/gdkprivate.h: New flag variable + gdk_event_func_from_window_proc, FALSE by default. + + * gdk/win32/gdk.c (gdk_init_check): Set above flag if the + environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we + are passed --gdk-event-func-from-window-proc. + + * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set, + and we have am event_func, call it instead of enqueing the event. + +1999-08-23 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon + Kelley: Set expose_count in GdkEventExposes correctly. + + * gdk/win32/gdkwindow.c: Remove dead code (#ifdef + MULTIPLE_WINDOW_CLASSES). + + * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer + for bug in NT, apparently NT *does* draw the end pixel, too, in + LineTo with a one-pixel pen, so we don't have to do it ourselves. + +1999-08-21 Tor Lillqvist + + Improvements by Hans Breuer: + + * gdk/win32/gdkwindow.c (RegisterGdkClass): New function + + * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the + CS_?REDRAW flags as they cause lots of (late) redraws when "show + window contents while dragging" is turned on. Allocate at least + one unique class for every GdkWindowType. If support for single + window-specific icons is ever needed (eg. Dialog specific), every + such window should get its own class. + +1999-08-19 Tor Lillqvist + + * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste + error that caused crashes. + +1999-08-17 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one + window, use ScrollWindowEx, and call UpdateWindow. This prevents + bugs when for instance part of the window was outside the + display. Thanks to Philippe Colantoni for finding and fixing this. + +1999-08-16 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial + endpoint calculations which were totally wrong. (A little RTFMing + helps a lot ;-) + + * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc + from a separate directory, not from gettext, because of licensing + issues (we want to use the LGPL version). + + * README.win32: Mention the intl from glibc vs from gettext issue. + +1999-08-13 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs + in the key event handling: Now AltGr chars work again. Also, + now Alt-digits are passed up as well as Control-digits. + Pass keypad plus and minus as normal plus and minus. + +Wed Aug 11 13:38:26 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +1999-07-25 Tor Lillqvist + + * README.win32 + * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without + the Wintab SDK. + + * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work + OK, but getting closer. Guard against bogus tilt data from Wacom + ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to + enable easier building without Wintab. + + * gdk/win32/gdkinput.h + * gdk/win32/gdkevents.c + * gdk/win32/gdkwindow.c: Minor changes related related to above. + + * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11 + code. As we have just one visual on Win32, no sense to have it in a + table, and no need for the hash table. + + * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look + better on white background. + +1999-07-21 Tor Lillqvist + + * README.win32: Update gcc build instructions. Mention gettext is + GPL. + + * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct + supported cursor size with GetSystemMetrics. + + * gdk/win32/gdkfont.c + * gtk/gtkfontsel.c: Guard against some font weight and charset + symbols being undefined (in mingw32 headers). + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin + * gtk/gtkthemes.c: No longer need to have differently named + gcc-built DLLs when using gcc-2.95 and -fnative-struct. + +hu Jul 15 13:33:15 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: Long awaited FAQ update. + +1999-07-15 Tor Lillqvist + + * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement + it. Obscure bit manipulation needed. + + * gdk/win32/gdkevents.c: Logging. + + * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming + style (file name include compiler name) for theme engines. + +1999-07-13 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage. + + * gdk/win32/gdkevents.c: Fix long-standing bug in key + events. The key.string wasn't zero-terminated, still we strdup'ed + it in gdk_event_copy(). Synthesize crossing events for button + events before possible propagation. + + * gdk/win32/gdkwindow.c: Log gdk_window_set_title. + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Use new DLL naming style for the + GCC-compiled ones. + + * gdk/win32/makefile.msc + * gtk/makefile.msc: Cosmetics mostly. + + * gtk/gtk.def: Add missing entry points. + + * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32. + +1999-07-09 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width + or height is zero. Don't print a warning if Pie or Arc fails, they + always fail (?) for very narrow ellipses. + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for + the part or the destination window corresponding to source area + outside of the source drawable's boundary. + + * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do + anything if less than two points. + + * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always + return NULL. Gtk cut-and-paste inside a single program works + better this way. (It always gets the clipboard contents from + Windows, not from its own copy, which is cleared anyway. I can't + say I fully understand what happens... Emulating the X selection + and property stuff is a bit of a mess.) + + * gdk/win32/gdkevents.c + * gdk/win32/gdkproperty.c: A bit more verbose logging. + + * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions + that never got deleted). Revamp gdk_region_shrink. + + * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions + after use. + + * gtk/gtk.def: Add some missing entry points. + + * gtk/gtkrc.c: Strip trailing directory separator from pixmap path + component. + +1999-07-04 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Handle + Control-digits specially. + +1999-07-03 Tor Lillqvist + + * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext. + +1999-06-28 Tor Lillqvist + + * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for + bitmaps, should be multiple of 4. (Thanks to Hans Breuer for + finding this.) + +1999-06-01 Jose H Mercado + + * gtk+.spec.in: Corrected some typos in files section. + +1999-06-15 Tor Lillqvist + + * README.win32: Mention using GNU gettext. + * config.h.win32: Enable NLS stuff. + * gtk/makefile.msc: Use GNU gettext. + * gdk/win32/gdkdnd.c: Minor header reorg. + * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly + cosmetics. + * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public. + * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call. + +Wed Jun 2 11:44:25 PDT 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.status + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged) + +1999-05-30 Tor Lillqvist + + * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to + SafeAdjustWindowRectEx. Don't override all calls to + AdjustWindowRectEx by it, but use it only in two places: When + creating a new top-level window and when moving a top-level + window. + + Use screen coordinate rectangle, not client rectangle, in + gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only + when we try to place a window so that the decoration (mainly, + title bar) isn't visible. + + These changes fix the bug that showed up for instance as the + GIMP's saved top-level windows moving right and down (by an amount + equal to the window decoration) for each session. This bug showed + up also in testgtk's "Saved Position". + + gdk_window_resize also redone a bit. + +1999-05-25 Tor Lillqvist + + * gtk/testgtkrc: Add (commented out) Windows-style theme + include line. + + * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points. + +1999-05-18 Tor Lillqvist + + * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and + gdkx.h to a gdk subdirectory, so that applications can include + these with without trouble. + + * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified. + (gdk_image_destroy): Plug resource leak, some GdkImages didn't + have their bitmap destroyed. + + * gdk/win32/gdk.def: Add gdk_root_parent. + +Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson + + * configure.in + gtk-config.in + ltconfig + ltmain.sh + gtk/Makefile.am: changes to compile nicely (with xlib) + on BeOS + +Sat May 1 15:04:42 PDT 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.3 + +Fri Apr 30 13:38:16 1999 Lars Hamann + + * gtk/gtkclist.c: + * gtk/gtkctree.c: merges from gtk-1-2 + +1999-04-25 Tor Lillqvist + + Support added for building using a GNU toolchain on Win32, + gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1. + + * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files. + * config.h.win32: Changes for gcc. + * gdk/gdkrectangle.c: Include gdk.h as . + * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp. + * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h. + * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better. + Protect shl stuff unavaiilable with mingw32 headers. + * gdk/win32/gdkevents.c: Fix typo. + * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc. + * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?) + * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler. + * gdk/win32/gdkprivate.h: Make up for some stuff missing from + the mingw32 headers. + * gdk/win32/makefile.msc: Use latest Wintab kit and glib. + * gtk/gtkfilesel.c: Include early, to get stat->_stat + definition on Win32. Test for NATIVE_WIN32, not _MSC_VER. + * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32. + Test for NATIVE_WIN32, not _MSC_VER. + * gtk/gtkmain.c: No use warning about developer version on Win32, + there aren't any non-developer versions anyhow. + * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER. + * gtk/makefile.msc: Use pthread from another directory. Minor other + changes. + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Mon Mar 8 12:52:53 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning + when gtk_widget_grab_default() is called for a widget that + is not within a GtkWindow. + +Sat Apr 10 13:52:54 BST 1999 Tony Gale + + * docs/gtk_tut.sgml, examples/clist.c: use a + scrolled window in the clist example. Minor + tutorial fixes. + +Fri Apr 2 09:19:20 BST 1999 Tony Gale + + * docs/gtk_tut.sgml: Style check from David King + + +1999-03-30 Pavel Machek + + * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code + compile with unknown value of GDK_WINDOWING + +1999-03-28 Raja R Harinath + + * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists + after the rule is fired. + (install-exec-local): Install gdkconfig.h only if the contents are + different from the currently installed gdkconfig.h. + +1999-03-26 Raja R Harinath + + * gdk/Makefile.am (configexecincludedir): Rename from + configincludedir so that gdkconfig.h will be installed + as part of `make install-exec'. + +Fri Mar 19 16:50:33 PST 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.2f + + * autogen.sh: libtool is not required to autogen gtk+ + + * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly + needed) + +1999-03-18 Tor Lillqvist + + * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for + declaring gdk variables exported/imported from the DLL. New image + type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and + drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and + GDK_DRAG_PROTO_OLE2. + + * gdk/gdk.h: Merge in Win32 version: Two new functions, + gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far + declared only for the Win32 version, but could be in the X11 + version as well. (Needed for a Xlib-less gdk_imlib.) + gdk_color_hash should have only one parameter. Declare + gdk_threads_mutex with GDKVAR. + + * gdk/gdkcolor.c (gdk_color_hash): A hash function should have + just one parameter. + + * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes + per pixel, not bits. + + * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv): + Fetch bpp (which means bits-per-pixel here) from another place on + Win32. Accept also depth==32 (which we might get on Win32) with + bpp==32. + + * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel, + gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc, + gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c: + Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be + in the backend-dependent directory, not in the common gdk + directory. + + * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk + headers. + +Wed Mar 17 05:06:49 1999 Tim Janik + + * gtk/gtkmain.c (gtk_init_check): tell people that they don't really + want to use the Gtk+ devel version (which is true, and yes - even i am + currently working with the 1.2.x branch). so everyone reading this, you + probably want to issue + cvs checkout -r glib-1-2 glib + and + cvs checkout -r gtk-1-2 gtk+ + as your next two comands. + +Wed Mar 17 02:49:32 1999 Tim Janik + + * configure.in: build gtkcompat.h from gtkcompat.h.in instead of + gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0. + + * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this + file. strongly deprecated the GTK_HAVE_* macros, we provide + GTK_CHECK_VERSION() for people that need to check for certain + Gtk+ versions. + + * gtk/gtkcompat.h: removed this from CVS. + * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad + idea right from the start, it just didn't seem like that back then. + +Wed Mar 17 01:46:28 1999 Tim Janik + + * merges from gtk-1-2: + +Tue Mar 16 17:43:33 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the + item factory class has been created. + (gtk_item_factory_parse_rc): likewise. + + * gtk/gtkmenu.c: + keep proper references for old_active_menu_item. + (gtk_menu_reparent): unset the usize of the new parent, + so the menu can sanely be size requested and we don't get nasty screen + artefacts upon next reparentation. + (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an + enter notify. only synthesize enter notifies if the pointer really is + inside the event window. + (gtk_menu_popdown): use gtk_menu_shell_deselect(). + (gtk_menu_popup): move the background setting stuff into + gtk_menu_tearoff_bg_copy() so it can be called from other places as well. + + * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use + gtk_menu_shell_select_item() to select the new item. + (gtk_menu_shell_deselect): export this function, so gtkmenu.c can + do the right thing for deselection as well. + +Sat Mar 15 20:10:33 1999 Tim Janik + + * gtk/gtkwidget.[hc]: + (gtk_widget_accelerators_locked): return whether a widget's accelerators + are locked. + + * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or + existing accelerators if the widget's accelerators are locked. + +Sat Mar 14 19:44:05 1999 Tim Janik + + * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items. + + * gtk/gtkmenu.c: truely forward key press and key release events to + the menu widget from the toplevel or tearoff window. we can't simply + connect to that, we need to stop further processing of the events as + well. + +Sat Mar 13 13:14:17 1999 Tim Janik + + * gtk/gtkmenu.c: + (gtk_menu_key_press): pass event->keyval, event->state to + gtk_accelerator_valid, instead of event->keyval twice. + refuse to install single letter accelerators for menus that use + single letter shortcuts. + + * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use + gtk_menu_ensure_uline_accel_group(). + + * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group() + which will always return an uline accel group, made + gtk_menu_get_uline_accel_group() return NULL if the group isn't + yet created. + +Mon Mar 15 01:03:27 1999 Lars Hamann + + * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag. + + * gtk/gtkclist.c (gtk_clist_column_title_passive): + Leave button sensitive, trap button_press, button_release, + motion_notify, enter_notify and leave_notify events instead. + (gtk_clist_column_title_active): disconnect event handler. + (gtk_clist_drag_data_get): fixed memory leak. Reported by + Guillaume Laurent + +Wed Mar 10 23:49:55 1999 Lars Hamann + + * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few + width/height mixups. + + * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal + if needed. + +Wed Mar 10 00:11:32 1999 Tim Janik + + * gtk/testgtk.c (create_item_factory): unref the item factory after + window's destruction. + + * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference + count on the menu shell around the menu item's activation, since the + signal emission may cause menu shell destruction. + + * gtk/gtkitemfactory.c: + the previous code leaked one accel group per menu. we use + gtk_menu_get_uline_accel_group() now to fix that, and with that + also create the underline accelerator group of the menus only if + required (i.e. an underline accelerator has been specified). + (gtk_item_factory_construct): + (gtk_item_factory_create_item): removed code that would create an + extra accel group for the menu (and leak references). + (gtk_item_factory_create_item): adapted the underline accelerator + installation code to properly feature gtk_menu_get_uline_accel_group(). + + * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive + menu->accel_group, this may return NULL if the accelerator group + hasn't been set yet. + added gtk_menu_get_uline_accel_group() to retrive the underline + accelerator group of the menu, this will be created on demand + and proper care is taken about its reference count. + + * gtk/gtkitemfactory.h: + * gtk/gtkitemfactory.c: + dumped the approach of keeping a widgets by action list on the + factory since the factory<->widget destroy negotiation didn't work + and would be hard to get going at all. instead we keep a list of + GtkItemFactoryItem items on the factory (GtkItemFactoryItems are + persistant throughout a program's life time). + also, i removed the static const gchar *key_* variables, and made + them inline strings (they weren't actually used anyways). + (gtk_item_factory_add_item): update ifactory->items. + (gtk_item_factory_destroy): destroy ifactory->items (and remove + the item factory pointer from the remaining ifactory widgets). + (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem + list to find the widget. + (gtk_item_factory_get_item): new function that works around + gtk_item_factory_get_widget() limitations, this function will only + return menu items, even for entries. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + + * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix + provided by Olaf Dietsche . + +Sun Mar 7 06:13:29 1999 Tim Janik + + * gtk/gtkcontainer.c: + (gtk_container_add_with_args): + (gtk_container_addv): + (gtk_container_add): before adding a child to a conatiner, make sure + it is (default) constructed, this is neccessary because under certain + circumstances the child will get relized and mapped immediatedly, in + which case it has to be constructed already. + +Mon Mar 1 17:58:21 1999 Tim Janik + + * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal + values > 1 as TRUE also. + +1999-03-16 Tor Lillqvist + + * README.win32: New file. + + * configure.in: Check for lstat. + + * config.h.win32: Add non-definition of HAVE_LSTAT, just for + completeness. + + * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat. + + * gtk/gtk.def: Removed CRs. + + * gtk/makefile.msc: Correct include path to Win32 GDK version (in + ..\gdk\win32). + + * gdk/win32/makefile.msc: Correct upwards relative paths. + +Mon Mar 15 03:38:34 1999 George Lebl + + * gtk/gtkdnd.c: (gtk_drag_highlight) swap the + gtk_drag_highlight_expose and gtk_drag_highlight_paint since + it was connecting a void function to expose_event and the int + returning function to the draw signal + +1999-03-14 Jeff Garzik + + * configure.in: + Use correct path to libgmodule.la when ref'ing uninstalled copy + of glib. (Already in stable branch, Bug #417) + +1999-03-15 Tor Lillqvist + + Win32 merge and general portability stuff: + + * acconfig.h,configure.in: Check for . + + * gdk/win32: New directory (actually, been there for a while). + + * gtk/fnmatch.c: Include for G_DIR_SEPARATOR, WIN32 and + NATIVE_WIN32, and use these. Always case fold on Win32. No + backslashed escapes on native Win32. + + * gtk/{gtk.def,makefile.msc}: New files. + + * gtk/Makefile.am: Add above new files. + + * gtk/{gtkaccelgroup,gtkbindings}.c: Include + instead of . + + * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include + config.h. Protect inclusion of , , and + appropriately. + + * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much). + Use ABS() (from ) instead of abs(). + + * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion + of gtk (and thus glib) headers, so that WIN32 will be + defined. With MS C, include for mkdir prototype. + + * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add + some casts, needed by MS C. + + * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't + implemented). + + * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include + only on X11 platform, otherwise . Use + G_SEARCHPATH_SEPARATOR_S and g_module_build_path. + + * gtk/gtkmain.h: Mark variables for export/import on Win32. + + * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case + the event is not a hint, or its window is not the slider. Needed + on Win32, at least. + + * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use + unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and + G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use + a subdirectory of the Windows directory as gtk system + configuration directory. + + * gtk/gtkselection.c: No chunks on Win32. + + * gtk/gtksocket.c: Not implemented on Win32. + + * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path. + + * gtk/makeenums.h: Include gdkprivate.h after gdk.h. + + * gtk/maketypes.awk: Declare variables with a macro that expands to + necessary export/import magic in the case of Win32. + + * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers. + +1999-03-13 Raja R Harinath + + * configure.in (gdk_wc): Move widechar tests from `glib' to here, + since those were meant only for gdki18n.h. + * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_* + for widechar tests. + * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h. + +1999-03-13 Tor Lillqvist + + * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate + gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h. + + * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is + installed) to CFLAGS. + + * gdk/Makefile.am: Add rules for gdkconfig.h. + + * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing + APIs. + + * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via + gdkx.h anyway when compiling for X11. + (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In + general): Merge in Win32 version. + + * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32 + version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde + expansion (if we don't have HAVE_PWD_H), allow for drive + letters. UNC paths (\\server\share\...) are not handled yet. Also, + included code from Craig Setera's port to Win32 (the one that uses + X11, and the cygwin dll), even if it probably will be abandoned. + + * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if + the user entered one herself. This way one can complete *.h and + don't get matches on any .help files, for instance. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + + * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix + provided by Olaf Dietsche . + +1999-03-09 Federico Mena Quintero + + * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced + the number of calls to gdk_draw_point() (and thus to X) by + clipping the points by hand. + + * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of + the clip parameter. + (gtk_handle_box_paint): Only paint the handle if the expose area + intersects it. + +Sun Mar 7 18:46:37 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) + + * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.) + +Sun Mar 7 11:43:34 1999 ape@spacetec.no (Asbjorn Pettersen) + + * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes. + Added function gen_8_3_dll_name(gchar *name, gchar *fullname). + +Fri Mar 5 09:12:24 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in + textmode (O_TEXT) for OS/2 version. + +Sun Feb 28 16:46:02 1999 Stefan Jeske + + * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to + GtkSpinButton, "input" and "output", to make the output more flexible. + The user has to provide a mapping between adjustment->value and the + output string (and vice versa, if the spin button is editable). + See testgtk for examples. + +Sat Feb 27 01:18:47 1999 Tim Janik + + * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started + new one. + + * configure.in: set gtk+ version to 1.3.0. +======= * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, +>>>>>>> 1.2802 diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index fbd5888e3d..baae1d9764 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,10 @@ +Sun Jan 13 23:23:22 2002 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_compute_hints): Fix problem where + widget->requisition was being used instead of + gtk_widget_get_child_requisition (), causing geometry widgets + with usizes to misbehave. + 2002-01-14 Sven Neumann * gtk/gtkrc.c: g_getenv() returns a const string. @@ -16366,5 +16373,8616 @@ Thu Nov 9 11:23:22 2000 Jonathan Blandford 2000-11-02 Havoc Pennington +<<<<<<< ChangeLog + * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and + use stock buttons. Should be 100% source compatible, appropriate + filesel fields now point to dialog->vbox and dialog->action_area. + On the bizarre side, dialog->action_area and filesel->action_area + are not the same widget. + (gtk_file_selection_init): Put some padding around the selection + entry, so it isn't touching the GtkDialog separator. + + * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, + use stock buttons, etc. Should also be source compatible. + Set the dialog default title in _init not _new(). + + * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): + Use stock buttons; don't put a button box inside the existing + dialog button box. Don't bother with push/pop colormap anymore. + + * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more + specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT + for message dialog, and necessary for the font selection and color + selection with help and apply buttons. + + * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer + to the created button widget. Set GTK_CAN_DEFAULT on the button. + (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing + between buttons, put less padding around the action area. + (gtk_dialog_run): Exit on unmap rather than on destroy. + This will also exit the loop if the widget is hidden. + (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT + instead of GTK_RESPONSE_NONE; since we're already adding a bunch + of GTK_RESPONSE_* stuff, this seems cleaner, and lets you + special-case delete event. + + * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment + formatting + +Sun Nov 5 05:32:39 2000 Tim Janik + + * gtk/testgtk.c (uposition_stop_configure): provide a toggle + button to temporarily disable position recording in the + "saved position" test. + +Sat Nov 4 05:37:17 2000 Tim Janik + + * gtk/gtkthemes.c: added compat code that temporarily implements + GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is + going to be revamped by owen's upcoming GtkModule patches, but + untill then people want gtk to build, right? ;) + +2000-11-04 Havoc Pennington + + * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member + list + + * docs/Changes-2.0.txt: Add note about + gtk_container_get_toplevels() + + * gtk/gtktextview.h: formatting + + * gtk/gtktextview.c: don't start descriptions with "Returns", + confuses gtk-doc + +Sat Nov 4 10:12:27 2000 Owen Taylor + + * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS, + look for glib-2.0.m4 not glib.m4. (Ali Abdin) + +2000-11-03 Havoc Pennington + + * gtk/gtktexttagtable.c: Docs + (gtk_text_tag_table_size): return a signed int + + * gtk/gtktexttag.c: s/tkxt/text/g; write documentation + (gtk_text_tag_event): make the event_object a GObject + + * gtk/gtktextview.c: Write API docs for all functions. + + * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value + for gtk_text_view_get_window_type() called on one of the private + windows. + + * gtk/gtktextview.c: Instead of accessing text_view->buffer + directly, call get_buffer() which demand-creates a default + buffer. So gtk_text_view_new() can be used to create a view with a + default buffer in it, if you just want an empty text box users can + put data in. Useful for GUI builders also. + +2000-11-03 Pablo Saratxaga + + * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5; + the charset encodign portion MUST be in lowercase. + * gtk/gtkrc.az: added file for Azeri language + +2000-11-03 Havoc Pennington + + Get widgets working on the btree/buffer side. Display of them + still doesn't work. + + * gtk/gtktextview.c: start implementing child widget stuff + + * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function + + * gtk/gtktextlayout.c: handle embedded widgets + + * gtk/gtktextdisplay.c: handle embedded widgets + + * gtk/gtktextchild.c: Implement all the child anchor goo + + * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New + function + + * gtk/gtktextbtree.c: Add child anchor table to the btree struct + (insert_pixbuf_or_widget_segment): abstract out common portions of + creating a child anchor or a pixbuf segment. + (gtk_text_btree_create_child_anchor): new function + (gtk_text_btree_unregister_child_anchor): new function + + * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the + allocate_child signal on GtkTextLayout + + * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return + values + (gtk_text_iter_get_child_anchor): new function + + * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a + default handler for the changed signal, which calls + gtk_text_buffer_set_modified(), instead of just always emitting + changed then calling set_modified() manually. I guess this is + maybe more flexible. It seems logical. + +Fri Nov 3 08:58:38 2000 Tim Janik + + * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_' + now. + + * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now. + +Thu Nov 2 14:10:51 2000 Owen Taylor + + * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have + been marked static. + +2000-11-02 Havoc Pennington + + * gtk/testgtk.c (create_labels): had a test backward + + * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC + fields, so the dest GC ends up with the correct clip origin, + etc. Fixes a bug where colored labels didn't redraw + properly. + +2000-11-02 Alexander Larsson + + * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c, + gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c, + gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c: + Add last argument to t_type_register_static call. + + * gdk/linux-fb/gdkdrawable-fb2.c: + Add last argument to t_type_register_static call. + export the get_image drawable virtual function. + + * gdk/linux-fb/gdkimage-fb.c: + Add last argument to t_type_register_static call. + rename gtk_image_get to _gdk_fb_get_image and + export it for use by gdkdrawable-fb2. + + * gdk/linux-fb/gdkprivate-fb.h: + export _gdk_fb_get_image. + + * gdk/linux-fb/gdkselection-fb.c: + Add new api call stubs. + + * gtk/Makefile.am: + Missing ( in linux-fb part. + + * modules/linux-fb/Makefile.am: + Must link with gdk_pixbuf or get unresolved symbol. + +2000-11-01 Havoc Pennington + + * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use + GTK_TYPE_TEXT_ITER and BOXED marshallers + + * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto + + * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto + + * gtk/gtk-boxed.defs: add GtkTextIter + + * gtk/gtkmarshal.list: Add marshallers for text widget that + properly use OBJECT and BOXED + +2000-11-01 Havoc Pennington + + * gtk/testgtk.c (create_labels): Test set_markup_with_accel() + + * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval + before returning it. + +2000-11-01 Havoc Pennington + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): + Clip the rectangle to be rendered to the drawable, since + get_from_drawable() requires a region within the drawable + +2000-11-01 Havoc Pennington + + * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4 + from coordinates. + +Wed Oct 25 20:10:57 2000 Owen Taylor + + * gdk/gdkevents.c (gdk_event_copy): Only ref the window if + it isn't NULL. + +2000-11-01 Havoc Pennington + + * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList + on a label + (gtk_label_finalize): unref the attr list if any. + + * gtk/testgtk.c (create_get_image): close test on second click + (make_message_dialog): close dialog if it exists + + * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute + + * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not + gdk-pixbuf + + * gtk/gtklabel.c (gtk_label_set_markup): new function to set label + from Pango markup format + (gtk_label_set_markup_with_accel): ditto but with accelerator + parsing + + * gtk/gtkimage.c (gtk_image_expose): reformatting. + + * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to + reflect current state of GDK - use gdk_drawable_get_colormap, etc. + Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to + call gdk_window_get_origin(). + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): + implement GDK_PIXBUF_ALPHA_FULL + +Wed Nov 1 03:43:42 2000 Tim Janik + + * gtk/gtksignal.c (gtk_signal_compat_matched): make use of + g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and + g_signal_handlers_disconnect_matched to block/unblock and disconnect + multiple handlers respectively, instead of only treating the + first handler found (bug reported by owen). + +Mon Oct 30 19:23:50 2000 Jonathan Blandford + + * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function. + + * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function. + + * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c + gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c, + gtk/gtktreeviewcolumn.h: Fixed inline docs. + + * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree + widget. Needs writing someday. + + * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to + the docs. + +2000-10-30 Havoc Pennington + + * gtk/gtktextview.h, gtk/gtktextview.c: + Rename delete_at_cursor delete_from_cursor, and + move to move_cursor. + +2000-10-30 Havoc Pennington + + * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c, + gtktextbuffer.h, gtktextchild.c, gtktextchild.h, + gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h, + gtktextiter.c, gtktextiter.h, gtktextiterprivate.h, + gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h, + gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h, + gtktexttag.c, gtktexttag.h, gtktexttagprivate.h, + gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c, + gtktexttypes.h, gtktextview.c, gtktextview.h: + + Massive reindentation and reformatting. Arg alignment and comments + still need fixing in various places. + +2000-10-30 Havoc Pennington + + * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals + to be named insert_at_cursor and delete_at_cursor so C++ can + handle them. + +2000-10-28 Tor Lillqvist + + * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not + to get a double directory separator in case the home directory + ends with one. This would cause trouble especially on Windows, + where the path will be confused with the syntax for an an UNC + (network share) path \\server\share\path. + (gtk_rc_add_initial_default_files): Ditto. + +Sat Oct 28 02:33:09 2000 Robert Brady + + * gtk/gtkmarshal.list: add new marshallers for GtkTextView. + + * gtk/gtktextview.c: Use correct marshallers. + +Fri Oct 27 17:56:26 2000 Jonathan Blandford + + * gtk/gtkliststore.c: Not sure how this ever worked. Fixed it to + use new iter stuff, and added all the appropriate signals et al. + + * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this + code is internal to gtk only. + +2000-10-28 Tor Lillqvist + + * gtk/gtk.def + * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use + glib-genmarshal etc. + +Fri Oct 27 20:15:00 2000 Tim Janik + + * gtk/Makefile.am: added dependancies for testtextbuffer which broke + parallel builds. + +Fri Oct 27 18:51:44 2000 Tim Janik + + * gtk/gtksignal.[hc]: adapt to GSignal signature changes. + +2000-10-27 Robert Brady + + * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), + en_GB (British), ia (Interlingua). + +2000-10-26 Havoc Pennington + + * gtk/gtktextiter.c (my_strrstr): fix constness warning + + Fixed output of: + nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_ + + * gtk/gtktextsegment.c (char_segment_new): rename + (_char_segment_new_from_two_strings): rename + (_toggle_segment_new): rename + + * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static + (make_clipboard_widget): make it static + (text_get_func): static + (text_clear_func): static + + * gtk/gtkcolorsel.c (adjustment_changed): make this function + static + (hex_changed): make it static + (hsv_changed): make it static + (opacity_entry_changed): make it static + + * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk + (toggle_segment_check_func): rename with _gtk + + * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk + (_widget_segment_new): rename + (_widget_segment_add): rename + (_widget_segment_remove): rename + (_widget_segment_ref): rename + (_widget_segment_unref): rename + + * gtk/gtktextmark.c (_mark_segment_new): Rename + _gtk_mark_segment_new + +2000-10-26 Havoc Pennington + + * gtk/gtkmarshal.list: add new marshallers used by the text widget + * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller + types + + * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix + marshaller types + + * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h, + gtk/gtktextdisplay.c: We need to preserve Tk copyrights and + license on these files. + + * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this + work. + + * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to + runtime random number different for each tree, instead of + a constant I made up. + +Thu Oct 26 07:36:16 2000 Tim Janik + + * gtk/Makefile.am: buncha cleanups, kludged build sources + dependencies with a Makefile: oldest-source-stamp dependancy + for the moment. automake is really fighting us here, with + intentionally not allowing user-defined rules or dependancies + prior to it's -include $(DEP_FILES) statement. sucks rocks! + + * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h + to public headers. tehy have a comment stating that they are + "semi-public" aren't included by gtk.h and if enums popup there, + they can be /*< skip >*/-ed. + + * gtk/gtktextlayout.h: + * gtk/gtktextdisplay.h: indentation fixes, comment fixes, + added LGPL... + +Wed Oct 25 20:40:25 2000 Jonathan Blandford + + * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to + GtkTreeIter. Added iterators everywhere. + + * gtk/gtktreeviewcolumn.c: Changed to use the iterators. + + * gtk/gtktreeviewselection.c: Changed to use the iterators. + + * gtk/gtktreestore.c: Changed to use the iterators. + + * gtk/gtkliststore.c: Commented out the code. Will convert to + iterators tomorrow. + + * gtk/gtkmodelsimple.c: Commented out the code. Will convert to + iterators tomorrow. + + * gtk/treestoretest.c: Changed to use iterators. + + * demos/testgtk/main.c: Moved to use the new iterator system. + +Thu Oct 26 02:10:32 2000 Tim Janik + + * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid + localization misbehaviour. + + * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's + a useless type without copy/free. + + * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead + of GTK_TYPE_CTREE_NODE. + +Thu Oct 26 00:51:52 2000 Tim Janik + + * gtk/gtksignal.c: + (gtk_signal_emitv): use g_value_set_static_{string|boxed} where + applicable. + + * gtk/gtk-boxed.defs (GtkSelectionData): specify + gtk_selection_data_copy and gtk_selection_data_free + do GtkSelectionData work as params in signals. + +Wed Oct 25 20:47:41 2000 Tim Janik + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed + implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that, + couldn't they at least give it a non-standard name? + + * gtk/gtktextlayout.c: arg! yet another implementation of + gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy? + + * gtk/gtktextbuffer.c: gotcha! captured a vagabonding + gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back + home. now i know this _is_ a conspiracy. + + * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for + ::state-changed. + + * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): + (gtk_accel_group_create_add): marshaller signature fixups. + + * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups, + pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM. + + * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid + anymore. + +Tue Oct 24 23:59:21 2000 Tim Janik + + * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since + due to the signal system changes, it wouldn't build currently. to + be fixed soon. + + * docs/Changes-2.0.txt: GtkSignal/GSignal updates. + + * gtk/gtkwidget.c: ::direction_changed takes an enum as argument, + so it needs gtk_marshal_VOID__ENUM() instead of + gtk_marshal_NONE__UINT(). + + * gdk/gdk*.c: adapted type registration functions. + + * gtk/gtkbindings.c: + * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is + gone. + + * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType. + + * gtk/gtkobject.c: + (gtk_object_destroy): + (gtk_object_shutdown): fixed recursion guards. basically we have to + catch the case where any of GObject.shutdown() or gtk_object_destroy() + is called during ::destroy, and avoid recursion there. + + * gtk/gtktypeutils.c: + * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with + boxed_copy/boxed_free. this needs a more general solution based on a + publically installed code-generator utility. + + * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED, + glib's gobject has support for that now. + define GtkSignalMarshaller in terms of GSignalCMarshaller. + +Mon Oct 23 09:36:42 2000 Tim Janik + + * gtk/gtksignal.[hc]: + * gtk/gtkmarshal.[hc]: + * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't + compile gtkmarshal.c on its own anymore, just include it in gtksignal.c. + removed #include s all over the place, gtksignal.h takes + care of that. + + * *.c: marshaller name fixups. + + * gtk/gtkmarshal.list: added a comment briefing the format. + +Sun Oct 22 23:14:39 2000 Tim Janik + + * gtk/gtksignal.[hc]: nuked old implementation. we mostly have + compatibility macros here now. more specifically, most of + the API is preserved (yes, _most_, nonwithstanding the + following exceptions listed, the API is stil lHUGE ;) + things that got removed completely: + GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(), + gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(), + gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(), + gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(), + gtk_signal_remove_emission_hook(). + non-functional functions variants: + gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook(). + the GtkCallbackMarshal argument to gtk_signal_connect_full() is + not supported anymore. + (gtk_signal_compat_matched): new internal function to aid + implementation of the compatibility macros, it provides + functionality to block/unblock/disconnect handlers based + on func/data. + + * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType, + + * *.c: adaptions to new type registration API signatures. + +Fri Oct 20 15:26:33 2000 Tim Janik + + * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge. + +2000-10-25 Robert Brady + + * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change, + gdk_property_delete): If window == NULL, assume the root window. + (restoring the behaviour that was in 1.2). + + * gtk/testtext.c (save_buffer): Allow creation of new files when + saving. + + (fill_file_buffer): Don't die if a UTF-8 sequence is split across + calls to read(). + +2000-10-25 Tor Lillqvist + + * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11. + + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkimage-win32.c + * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the + X11 backend. + + * gdk/win32/gdkcc-win32.c + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkfont-win32.c + * gdk/win32/gdkinput-win32.c + * gdk/win32/gdkmain-win32.c + * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall. + +2000-10-24 Havoc Pennington + + * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make + it a static function + + * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should + redraw text when a tag is applied to it. + + * gtk/gtktexttag.c (gtk_text_tag_affects_size) + (gtk_text_tag_affects_nonsize_appearance): private functions to + see if a tag requires various kinds of redraw/layout to be queued + up. + + * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock + + * gtk/testtext.c (fill_example_buffer): Put the cursor + at the start of the buffer, so search works by default + + * gtk/gtktextiter.c (lines_match): init match_start always + + * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New + function, get iter at a line + a byte index + + * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function, + to set byte position within a line + (gtk_text_iter_check): remove leftover G_BREAKPOINT thing + +2000-10-23 Havoc Pennington + + * gtk/testtext.c: Re-enable the "find" dialog + + * gtk/testgtk.c: Add test for gdk_drawable_get_image + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where + the arguments to gdk_draw_drawable were in the wrong order + (gdk_window_paint_init_bg): This function was ignoring the + init_region, instead of clipping to it, so the entire backing + pixmap was cleared on every begin_paint() + (gdk_window_begin_paint_region): Hmm, the same list-walking bug + was in here again, the loop kept using the same GtkWindowPaint + over and over. + (gdk_window_begin_paint_region): Fix a bug where we had two + x_offset instead of x_offset and y_offset + + * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable + before we get the image. + (gdk_draw_drawable): get the composite before we draw the drawable. + (gdk_drawable_real_get_composite_drawable): default + get_composite_drawable implementation that returns the drawable + itself + + * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add + get_composite_drawable virtual function + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy + list-walking bug + + * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to + make this work if the source drawable is a GdkDrawableImplX11 + instead of a public drawable type. This is really broken; the + problem is that GdkDrawable needs a virtual method get_xid(), but + of course that doesn't work in practice. Enter RTTI. + + Also, improve mismatched depth message. + + * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for + GdkPixmap + + * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init): + install _gdk_x11_get_image as our implementation of get_image + + * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to + _gdk_x11_get_image and export for use in gdkdrawable-x11.c + + * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around + gdk_drawable_get_image + + * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image + + * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize + get_image + + * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird + trailing semicolon after for loop + +Mon Oct 23 12:07:57 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem + where font_desc for widget's context lagged widget's font_desc by + one step. + +2000-10-22 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c + * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings. + + * gtk/makefile.mingw.in + * gtk/gtk.def: Updates. + + * gtk/testgtk.c: sleep() is called _sleep in MS's C + library. + + * gtk/gtkimcontextsimple.c: Include for bsearch(). + + * gtk/makefile.msc: Remove + + * gtk/makefile.msc.in: New file, like makefile.mingw.in. + + * gtk/Makefile.am: Add it. + + * configure.in: Generate it. + + * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor) + * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return + something even if not implemented, to satisfy picky MSVC. + + Patches by Hans Breuer: + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call + SetBkMode() and SetTextAlign() before calling + pango_win32_render(). + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values): + Set hcliprgn to NULL after destroying it. + (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL. + + * gdk/win32/gdkgeometry-win32.c + (_gdk_windowing_window_queue_antiexpose): More effective + implementation. + + * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's + depth as default, not the visual's. + + * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard + against empty title. + + * gdk/win32/gdkprivate-win32.h: Define a helper macro, + IMAGE_PRIVATE_DATA. + + * gdk/win32/gdkimage-win32.c: Use it. + +2000-10-22 Robert Brady + + * configure.in: Check for bind_textdomain_codeset + + * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset + present, make use of it. + + Add a translatable string "default:LTR" which, if translated + to "default:RTL", will cause the default direction to be + Right-to-Left. + + * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget + direction if marked as flippable. + + * gtk/gtkhscale.c: Mark widget as flippable. + +2000-10-04 Havoc Pennington + + * gtk/testgtk.c (create_buttons): create some stock buttons + with the default accel group + (create_image): test some new GtkImage features + (make_message_dialog): test GtkMessageDialog + (create_modal_window): fix someone's bizzarro indentation + + * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement + GTK_WIN_POS_CENTER_ON_PARENT. + Add "destroy with parent" setting, which means the window goes + away with its transient parent. + (gtk_window_get_default_accel_group): get the default accel group + for the window. + (gtk_window_set_destroy_with_parent): set/unset destroy with + parent flag + (gtk_window_read_rcfiles): invalidate icon set caches + after reloading rcfiles + + * gtk/gtkenums.h (GtkWindowPosition): add + GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog + on its parent window when the dialog is mapped for the first time. + + * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add + a simple message dialog class + + * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event + handler to emit response signal, and maybe later it would + honor a hide_on_delete flag - though that isn't there yet. + Set border width on the vbox to 2, so we get some padding. + Use a button box for the action area. + (gtk_dialog_key_press): synthesize a delete event if Esc + is pressed and the GtkWidget key press handler didn't + handle the escape key. + (gtk_dialog_new_with_buttons): new function creates a dialog + with some default buttons in it. + (gtk_dialog_add_action_widget): add an activatable widget + as a button in the dialog - you can also add a non-activatable + widget by accessing the action area directly. + (gtk_dialog_add_button): add a simple button - stock ID or + label - to the action area + (gtk_dialog_response): emit response signal + (gtk_dialog_run): block waiting for the dialog, return + the response. Override normal delete_event behavior, so that + delete_event does nothing inside gtk_dialog_run(). +======= +>>>>>>> 1.2802 + +<<<<<<< ChangeLog + * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal + emitted when an action widget is clicked or the dialog gets + delete_event + + * gtk/gtk.h: add gtkmessagedialog.h + + * gtk/Makefile.am: add gtkmessagedialog.[hc] + +2000-10-18 Havoc Pennington + + * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug + where any number of empty lines would get skipped + + * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the + edge. + + * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the + warning about invalid iterators (explain more thoroughly) + (gtk_text_iter_in_region): rename gtk_text_iter_in_range + + * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less + big + + * demos/*.c: Add error handling + + * gtk/gtktextbuffer.c: don't modify const iterators + + * gtk/gdk-pixbuf-loader.c: Add full error handling here + + * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors + on file load + + * gtk/gtkiconfactory.c: Update to reflect addition of error + handling to gdk-pixbuf loaders + +Wed Oct 18 11:14:05 2000 Owen Taylor + + * configure.in demos/Makefile.am demos/testgtk/*: Start of work to + move to new modularized testgtk. + +2000-10-17 Jonathan Blandford + + * gtk/gtktreeview.c: Draw the arrows correctly. + + * gtk/gtktreemodel.c: Added user docs. + + * gtk/gtk.h: remove gtktreedatalist.h. + + * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct + parent when generating my type. + + * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE, + POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT. + +2000-10-16 Jonathan Blandford + + * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move + GtkTreeModel from object to interface. + +2000-10-16 Havoc Pennington + + * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing + compilation + +2000-10-16 Jonathan Blandford + + * gtk/gtktreeselection.c: Add API documentation to all public + functions. + + * gtk/gtktreeviewcolumn.c: Added API documentation to all public + functions. + +2000-10-15 Jonathan Blandford + + * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function + proposed by Guy Harris . Also, added API + docs to all public functions. + + * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h, + gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c, + gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c, + gtk/gtktreemodel.h, gtk/gtktreeselection.c, + gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node + issue. + +2000-10-14 Robert Brady + + * configure.in: Added "fa" (Persian) to ALL_LINGUAS. + +2000-10-12 Jonathan Blandford + + * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added + values other then G_TYPE_STRING. + * gtk/gtktreeselection.c: Minor commenting updates. + * gtk/gtktreeview.c: Format updates. + +2000-10-09 Tor Lillqvist + + * README.win32: Update. + + * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two + lines that had been deleted by mistake (?). + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle + also the case fg==white and bg==black (but still not randomly + coloured cursors). Thanks to Wolfgang Sourdeau. + + * gdk/win32/*.c: Silence gcc -Wall. + + * gtk/gtk.def: Add missing entry points. + + Fixes by Hans Breuer: + + * gdk/makefile.msc + * gdk/win32/makefile.msc: Update. + + * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined, + some MSVC thing, presumably), cause breakpoint on failures. Add + GDK_NOR case. Call g_log_set_always_fatal. + + * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle + should be pased by reference. + + * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly. + + * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert. + + * gdk/win32/gdkevents-win32.c + * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE. + + * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and + implementation object. + + * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables, + not just windows. + + * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize): + Use the wrapper object. + +2000-10-06 Havoc Pennington + + * Makefile.am (SRC_SUBDIRS): contrib subdir + + * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library, + so it can be used in Xlib version + + * demos/testpixbuf.c (update_timeout): error checking from 1.0 + tree + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync + change from 1.0 tree that returns first frame of animation + if the loaded file is an animation. + + * contrib: add new directory to hold stuff that comes with GTK+ + but isn't really part of GTK+ (for now, gdk-pixbuf-xlib) + + * configure.in: add contrib/* + +2000-10-05 Havoc Pennington + + * demos/testpixbuf-save.c: add pixbuf save test + + * demos/Makefile.am: add testpixbuf-save.c + +2000-10-05 Jonathan Blandford + + * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with + GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c + * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/ + * gtk/gtktreeselection.[ch]: Replaced + "node_selected"/"node_unselected" signal with "selection_changed" + signal. + +2000-10-04 Jonathan Blandford + + * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new + tree widget. + +2000-10-04 Jonathan Blandford + + * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle + drawing. + +Wed Oct 4 15:52:15 2000 Owen Taylor + + * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed): + Move list pointer forwards before removing item from + list. (Crash reported by Salmaso Raffaele) + + * gdk/gdkwindow.h: Remove spurious trailing , + + * gdk/Makefile.am (LDFLAGS): You can't do interlibrary + dependencies on uninstalled libraries, sorry folks. + +2000-10-04 Havoc Pennington + + * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h, + gtk/gtkiconfactory.c: Fix copyrights + + * demos/testpixbuf.c: add inline pixbuf test + +Mon Sep 25 15:05:17 2000 Owen Taylor + + * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify): + Add gdk_window_iconify. + + * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c + (gdk_window_set_geometry_hints): Add win_gravity + to geometry structure. + + * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): + Implement _NET_WM_PING. + + * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): + Set _NET_WM_PID on the client leader. + + * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name): + Handle UTF-8 better. + + * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle + UTF-8 better, set _NET_WM_NAME as well. Only set + icon name if it hasn't previously been explicitely + set. + +2000-10-03 Havoc Pennington + + * gtk/testtextbuffer.c: clean up trailing whitespace, + add extensive tests for tag toggle iteration. + + * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan + distance + + * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag): + optimize case where the tag root is on level 1 + (gtk_text_line_previous_could_contain_tag): attempt to implement + (gtk_text_line_next_could_contain_tag): Abstract out node_compare + functionality + + * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle): + Implement this, though not very efficiently. + + * gtk/gtktextiterprivate.h: reformat + + * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end + iterator + + * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix + this to properly revalidate the iterators. + + * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work + properly at the end of the line (and therefore on empty lines) + + * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee, + maybe we should return a value... + +2000-10-03 Tor Lillqvist + + * config.h.win32: Guard definition of alloca(). glib.h now handles + that. + + * gdk/gdk.def + * gtk/gtk.def: Add new entry points. + + Changes just to make GTK+ build without errors on Win32. No hope + of it working in its current state, though...: + + * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings. Add + some functions from the X11 backend, just to make GTK+ build. + + * gdk/makefile.mingw.in + * gtk/makefile.mingw.in: Use correct gdk_pixbuf version + number. Add new object files. + + * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use + GetMessageTime to get timestamp (where on X11 uses + gdk_x11_get_server_time()). + +2000-10-02 Havoc Pennington + + * gtk/gtktextview.c: text_window_* weren't static and should have + been. + Start work on child widgets; not yet complete, syncing to + office computer. + + * gtk/gtktextchild.h: change this to contain a public interface, + starting work on child interfaces. + * gtk/gtktextchildprivate.h: move private interfaces here + + * gtk/Makefile.am: update to reflect gtktextchildprivate.h + + * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h, + gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, + gtk/gtktextmark.c: copyright notices + + * gtk/gtktextmarkprivate.h: reformat, and put _ in front of + internal functions + + * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of + internal function + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): + Reformatting + +2000-09-30 Havoc Pennington + + * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle + NULL start/end pointers + + * gtk/gtktextbuffer.c: Write some docs + (gtk_text_buffer_get_selection_bounds): Allow start/end to be + NULL, so you can just check whether there's a selection. + + * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to + cleanup_line or segments_changed ourselves, it gets done + in unlink_segment + + * gtk/gtktextmark.h: + s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/ + + * gtk/gtktextsegment.h: Clean up some indentation and naming mess + + * gtk/gtktextmark.c: delete some more old Tk cruft + + * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to + mark before removing it, so we can emit MARK_DELETED with a valid + pointer. + (gtk_text_buffer_mark_set): hold ref across signal emission + + * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve + whining about attempts to delete special marks + + * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with + underscore, since it's internal. + + * gtk/gtktextbuffer.h: Remove find_string prototype, this is + now implemented in terms of iterators in gtktextiter.h + + * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): + New function, destructively sets contents of buffer. Also + a convenient way to clear the buffer by setting text to "" + + * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat + multiline string literal + + * gtk/testtext.c (text_changed_callback): Redraw line numbers if + text changes. + + * gtk/gtktextiter.c (forward_char): Return FALSE if new location + is not dereferenceable + (gtk_text_iter_forward_lines): fix return value + +2000-09-29 Havoc Pennington + + * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation + + * gtk/gtktextview.c: Implement drag thresholding; change functions + that set border window size to have nicer name + (gtk_text_view_mark_set_handler): Fix this to have the + right signature. + + * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes + + * gtk/testtext.c: Update with API changes, put line numbers on + both sides. + + * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap + with this + + * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with + pixbuf; delete a big block of #if 0 Tk code + + * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace + insert_pixmap with insert_pixbuf + +2000-09-29 Martin Baulig + + * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid + confusion with the GdkPixbuf of the GNOME 1.x platform. + +2000-09-29 Havoc Pennington + + * gtk/gtktextview.c: Implement the side windows. + + * gtk/testtext.c: Implement simple line numbering in the + left side window; seems to make scrolling sloooow. Oops. + Also, cursor blink is for some reason causing redraws + of the line numbers. Should investigate... + +2000-09-28 Havoc Pennington + + * gtk/gtktextview.c: Set up infrastructure to deal with lots of + scrolling child windows, and draw focus rectangle properly. + + (gtk_text_view_buffer_to_window_coords): + Coordinate transformation to deal with all these freaking windows + and offsets + (gtk_text_view_window_to_buffer_coords): transform the other way + + * gtk/testtext.c (create_buffer): Update to match Pango API change + + * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the + anonymous tags + (foreach_unref): don't emit remove signal from finalize, just + set tag's parent to NULL + +2000-09-26 Havoc Pennington + + * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove + Fix some warnings + +2000-09-26 Havoc Pennington + + * gtk/Makefile.am (gtk_private_h_sources): Move more text widget + headers into the private header list + + * Makefile.am (pkgconfig_DATA): install pkg-config files + + * configure.in: add pkg-config files + + * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files + + * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate + outstanding icon caches on theme change. + + * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three + important types: + + (GtkIconSource): Specification for creating a pixbuf + appropriate for a direction/state/size triplet from + a source pixbuf or filename + + (GtkIconSet): List of GtkIconSource objects that are used to + create the "same" icon (e.g. an OK button icon), and cache for + rendered icons + + (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look + up the icon set for a given stock ID. GTK maintains a stack of + GtkIconFactory to search, and applications or libraries can add + additional icon factories on top of the stack + + * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse + the set of GtkIconSource specified for a given stock ID into + a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the + RcStyle, under the specified stock ID. + + * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function + render_icon used to derive a GdkPixbuf from a GtkIconSource. + This allows people to theme how prelight, insensitive, etc. are + done. + + (gtk_style_lookup_icon_set): Look up a stock ID in the list of + icon factories for a style, and return the resulting + icon set if any. + + (gtk_style_render_icon): Render an icon using the render_icon + method in the GtkStyleClass. + + * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): + Use the style for a given widget to look up a stock ID, get the + icon set, and render an icon using the render_icon method + of the style + + * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type + (contains information about a stock item), the built-in stock item + IDs, and functions to add/lookup stock items. + + * gtk/stock-icons/*: Stock icons that come with GTK + + * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns + a button based on a GtkStockItem + (gtk_button_new_accel): Takes a uline string and accel group, and + installs the accelerator. + + * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic + image-display widget. + +2000-09-25 Havoc Pennington + + * gtk/gtktexttypes.c: Remove Latin1 conversion stuff + + * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): + Fix a bug when removing node data, we didn't properly + re-splice the linked list after removing the data. + + * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through + GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget + + * gtk/gtktextbuffer.c (selection_received): fix g_convert usage + + * gtk/gtktextlayout.c (set_para_values): Set tab array + for the layout from the GtkTextTag. + + * gtk/gtktexttypes.h: delete tab and search cruft, + remove g_convert() in favor of GLib version + + * gtk/gtktexttypes.c: remove tab implementation from here, + move to Pango + + * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement + tab stuff using new PangoTabArray from Pango + + * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove + unused border_width stuff + +Thu Sep 14 12:21:12 2000 Owen Taylor + + * gtk/gtktexttypes.[ch]: Remove g_convert (moved to + glib) and now useless utf_to_latin1() latin1_to_utf() + + * gtk/gtktextview.[ch]: Change ::move_insert and + ::delete_text action signals to ::move and ::delete; + create the signals with the right enumeration type, + not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d, + C-v bindings, change Home, End to move to beginning/end + of line, Add C-Home C-End to move to beginning/end + of buffer. Change ::cut_text to ::cut_clipboard, etc; + combine ::scroll_text into ::move; use new GtkSelectionData + functions to simplify DND text handling. + + * gtk/gtkenums.h gtk/gtktextview.h: Move movement, + deletion enumerations here, rename enumeration values to + be consistently plural. + + * gtk/gtktextbuffer.c: Use new clipboard interfaces + for cut/copy/paste and primary selection. + + * gtk/gtktextbuffer.[ch]: Remove excess time and + 'interactive' arguments from cut/copy/paste; + rename cut to cut_clipboard, etc; remove + gtk_text_buffer_get_clipboard_contents(). + + * gtk/gtktextlayout.[ch]: Add + gtk_text_layout_move_iter_to_line_end() to move the iter to + line ends. + + * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text): + Functions to set or get a UTF-8 string on the selection + data. + + * gtk/gtkclipboard.[ch]: New, simplified selection handling + interfaces. + + * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly + created widgets - one of these is useless if we don't. + + * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export + a public function clear all targets registered for the + widget. + + * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt: + Never call gtk_widget_realize() - that was just asking + for bizarre side-effects. + + * gtk/gtkselection.c (gtk_selection_owner_set): Call + gdk_selection_owner_set even if the widget is the + same so that we reliably update the timestamp on + the server. + + * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a + gdk_x11_get_server_time() function. + + * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h + gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h: + Add some tricky filtering on serial numbers for + selection clear events to fix up long-standard + race condition FIXME's in gtkselection.c. + + * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add + routines to convert from utf8 to compound text or + STRING and from a text property to UTF-8. + + * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add + a convenience function gdk_get_current_event_time(). + + * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy + and free selection_data->data properly + +Sat Sep 9 10:23:53 2000 Owen Taylor + + * gtk/gtkthemes.c: Remove some unecessary includes. + +2000-09-08 Jonathan Blandford + + * gtk/gtktextdisplay.c + * gtk/gtktextlayout.c + * gtk/gtktexttag.c + * gtk/gtktexttag.h + * gtk/testtext.c: Change the overstrike property to strikethrough, + to closer match pango. + +Fri Sep 8 14:28:00 2000 Owen Taylor + + * gtk/gtktextview.c: Fix up visibility so that focus, + cursor_visible and blink interact properly. Reenable cursor blink + which had been roughly disabled. Make blink and focus + properly per-view. + + * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible): + Add a flag for whether to display insertion cursor and + a function to set the flag. + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change + get_line_y() to get_line_yrange(), to be a bit more generally + useful. + +Thu Sep 07 20:54:33 2000 George Lebl + + * gtk/gtkmenu.c: in gtk_menu_set_submenu_navigation_region + do stop_navigating_submenu, to clear last timeout properly. + Also in gtk_menu_motion_notify move ignore_enter above + the conditional to make it always happen as suggested by Owen + +2000-09-07 Tor Lillqvist + + * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o + + * gdk/win32/gdkwin32.h: Add more definitions missing from the free + w32api headers. + + * gdk/win32/gdkprivate-win32.h: Add a couple of missing + declarations. + + * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings. + (gdk_win32_get_colormap): A line had been deleted by mistake. + + * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too. + (gdk_event_translate): Handle more virtual keycodes to be able to + generate GDK events for Control-comma, Control-period, etc. + + * gtk/gtk.def: Add some missing entry points. + +Thu Sep 7 11:47:02 2000 Owen Taylor + + * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c: + Doc comment fixing. (Mostly non-matching parameter names.) + + * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify + comments a little to avoid looking like a doc comment. + + * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to + GTK_INPUT_ERROR. (Should the mechanism for erros in spin button + conversions be changed to GError?) + + * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): + Move private #defines into .c file. + + * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize + order of argument addition, remove duplicates. + + * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass): + parent class is FrameClass, not BinClass. + + * gtk/gtk.h: Add gtkinvisible, which was missing. + (It's occasionalyl useful for client apps, if seldom.) + + * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER + #define. + +Wed Sep 6 09:53:15 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space + coordinates when creating window, instead of GDK-space + coordinates. (Avoid BadValue on too large windows.) + +2000-09-05 Sebastian Wilhelmi + + * configure.in (use_mmx_asm): Remove conftest* after use along the + lines of AC_TRY_COMPILE. + + * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead + of g_dirname, which is deprecated. + (gtk_rc_parse_any): Removed calls to + g_scanner_{freeze,thaw}_symbol_table, which are deprecated. + + * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy): + Removed calls to g_hash_table_{freeze,thaw}, as they are + deprecated now. + + * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename + instead of g_basename. + +2000-09-04 Elliot Lee + + * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid + ANSI warning. + +Sun Sep 03 00:47:08 2000 George Lebl + + * gtk/gtkwidget.h: Add some documenting comments about + GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT + just as owen said on irc. + + * gtk/gtkwindow.c (gtk_window_set_default): Don't blindly + set HAS_DEFAULT. Only set it if there isn't another window + holding it (a focus window which RECEIVES_DEFAULT) and only unset + it if the widget is not the focused window with RECEIVES_DEFAULT. + This fixes weird double default bugs in dialogs which has things + call gtk_window_set_default at times. + +Fri Sep 1 22:39:07 2000 Owen Taylor + + * gtk/gtkmenu.[ch] TODO.xml: Apply patch from + Nils Barth and David Santiago to improve submenu + navigation. The patch does this by creating a triangular + region from the point where the pointer leaves the + menu to the submenu. While the pointer is in + that region and a timeout has not expired, events + that would cause the active submenu to change are + ignored. + +Fri Sep 1 15:34:46 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where + moving a toplevel window immediately after sizing it would + result in it being sized back to the old size since + impl->width, impl->height aren't updated until we hear + back from the server. There is still a (longstanding) bug + here that gdk_window_get_size() will give the wrong size + until we do hear back. + +2000-08-31 Havoc Pennington + + * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, + gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, + gtk/gtktexttagprivate.h, gtk/gtktextview.c: + Rename GtkTextStyleValues to GtkTextAttributes + +2000-08-31 Havoc Pennington + + * gtk/gtktextbtree.c (GtkTextBTree): cache end line, + for rapid testing whether an iterator is the end iterator + (gtk_text_btree_new): init end line cache + (gtk_text_line_is_last): use fast cached line to + see if we're the last line. + (get_last_line): use cached line here too, should + speed up some random unrelated code. + +2000-08-30 Havoc Pennington + + * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer + signals. + + * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and + delete_text signals. This allows the signals to be used for + implementing undo. + + * gtk/gtktextbuffer.c: Change signal handler signatures; + provide "interactive" argument when emitting insert_text or + delete_text signal. + +2000-08-30 Havoc Pennington + + * gtk/gtktextbuffer.c: Docs + +Fri Aug 25 12:16:15 2000 Owen Taylor + + * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP + from switch statements, since Tor removed the enumeration + value. + + * gdk/x11/gdkimage-x11.c (gdk_image_get): + s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/. + +2000-08-29 Elliot Lee + * */*.h: Use G_GNUC_CONST. + +2000-08-27 Havoc Pennington + + * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs, + minor indentation fixes, inserted some FIXME about stuff I + realized was broken while documenting it. + (gtk_text_iter_get_pixmap): allow out params to be NULL, following + GTK convention + +Tue Aug 22 12:33:24 2000 Owen Taylor + + * gtk/testgtk.c (create_styles): Fix double free of + font desc. + +Mon Aug 21 22:39:18 2000 Owen Taylor + + * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}. + + * gtk/testgtk.c (create_styles): Add a test for modifying + the style through gtk_widget_modify_*. + + * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add + a function to get the current modifier style. + + * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy + of the passed in GtkRcStyle instead of ref'ing it. + + * gtk/gtkrc.[ch]: Add gtk_rc_style_copy(). + +2000-08-20 Tor Lillqvist + + * gdk/gdkimage.h + * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the + shared memory image+pixmap GdkImage type, or + gdk_image_bitmap_new(). They were used in the gdk_imlib port, but + I am dropping that. + + * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to + actually call gtk_init_abi_check(), passing also + sizeof(GtkWindow). Ditto for gtk_init_check(). + + * gtk/gtk.def + * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check): + New functions, used to check that the GTK+-using code has been + compiled using the correct compiler and switches. In particular, + with gcc one has to use the -fnative-struct switch as GTK+ is + compiled with that. + +Fri Aug 18 17:27:46 2000 Owen Taylor + + * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling + ->prev fields when merging lists. (Found simultaneously + by Pawel Salek and Jakub Jelinek) + +2000-08-12 Tor Lillqvist + + * gdk/gdk.def + * gtk/gtk.def: Add missing entries. + + * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use + OUT_TT_ONLY_PRECIS, try to get a TrueType font. + + * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New + function. Dummy implementation at this point. + + * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer + rules. Undefine GTK_COMPILATION when compiling the test programs. + + * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import. + +2000-08-11 Tor Lillqvist + + * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8() + to convert back and forth from UTF-8 and the "system" (or "current + locale") charset when necessary. Indentation/spacing cleanup. + +2000-08-10 Havoc Pennington + + * Makefile.am (snapshot): Change the format of the snapshot + version to match glib + + * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h + from EXTRA_DIST since it doesn't seem to exist + +2000-08-10 Tor Lillqvist + + * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage" + version of the directory name (not the UTF-8 one) when building + the path name to stat(). + +2000-08-03 Elliot Lee + + * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a + PANGO_ATTR_SHAPE set. + +Thu Aug 3 09:17:06 2000 Owen Taylor + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from + Peter Osterlund to simplify the code while keeping the + functionality the same. + +Wed Aug 2 14:57:38 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move + is_viewable() test further inside the function, since removing the + window from the redraw list without clearing ->update_area + was also very broken. + +2000-08-02 Tor Lillqvist + + * configure.in: Check for . + +2000-08-01 Martin Baulig + + * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning() + to display the message that this is a development version of GTK+. + +Mon Jul 31 18:37:36 2000 Owen Taylor + + * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation + was depending on widget->allocation instead of the width of text_area, + which was incorrect for subclasses like GtkSpinButton. + + * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos + with width == 1 tests that should be width == -1. + +Mon Jul 31 16:45:48 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, + (broken, Elliot, every single window blank on X) custom code with call + to gdk_window_is_viewable() which a) prevents code duplicate and + b) works. + +2000-07-31 Elliot Lee + + * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order + to get the GDK_PARENT_ROOT() macro to work. + * gtk/gtkmarshal.list: Add NONE:STRING,POINTER + * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces + of, windows that aren't shown. + * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of + pointer grab stuff. + +Mon Jul 31 13:53:16 BST 2000 Tony Gale + + * docs/gtkfaq.sgml docs/gtk-faq.sgml: + s/gtk_main_iteration/g_main_iteration/ + + Did this already in change: + Mon Nov 15 17:17:51 GMT 1999 Tony Gale + don't know how it got reverted. + +2000-07-31 Stanislav Brabec + + * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and + gdk_arg_no_debug_cb to fix compilation problem with --disable-debug. + + * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3, + not gdk_pixbuf. + +2000-07-30 Pablo Saratxaga + + * configure.in,po/{sp,sr}.po: Added Serbian files + +2000-07-30 Tor Lillqvist + + * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST. + + * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue): + Remove the g_pipe_readable_msg stuff. Not needed with new GLib + GIOChannel implementation. + + * gdk/win32/gdkinput.c + * gdk/win32/gdkpango-win32.c: Update license name here, too. + + * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix + definition to match prototype. + + * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS. + +2000-07-27 Elliot Lee + + * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type + function, to allow handling image formats that cannot be detected + by looking at content alone. + +Thu Jul 27 13:13:21 BST 2000 Tony Gale + + * docs/tutorial/*.gif *.jpg *.eps + Update these to the same look-n-feel. + Why does including images in DocBook suck so badly? + +Thu Jul 27 05:06:29 2000 Tim Janik + + * gtk/gtktable.c: applied patch from Phil Thompson + that enables space settings for + the last row/columns as well. + +Wed Jul 26 12:59:31 2000 Tim Janik + + * *.[hc]: applied patch from Andreas Persenius that + updates the license headers to the GNU Lesser General Public License, + as well as updating the copyright year to 2000. + +2000-07-26 Robert Brady + + * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h + and po/Makefile, was installing and looking for them under gtk20 + and gtk2 respectively. + +2000-07-25 Havoc Pennington + + * gtk/testtext.c: Comment out some stuff that depends on the rest + of my patches. + +2000-07-25 Havoc Pennington + + * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text + buffer + +2000-07-25 Havoc Pennington + + * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text + widget changes. + + * gtk/gtktextview.h: To be consistent with usage of "line" + throughout the API to mean "newline-terminated thingy", change + MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH + to MOVEMENT_LINE. + + (GtkTextView): Add flags for default editability, and whether to + show the cursor. Add functions to get/set that. Add + + (gtk_text_view_get_iter_location): new function + + * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to + gtktextlayout.h + (g_convert): Add g_convert temporarily, will go in glib in a bit + + * gtk/gtktexttagtable.h: include gtktexttag.h, and define + GtkTextTagTableForeach instead of brokenly using GHFunc. + Change gtk_text_tag_table_foreach() so it doesn't use GHFunc. + + * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here, + moved to public header. + + * gtk/gtktexttag.h: Rename the "elide" attribute of tags to + "invisible", since "elide" was a bad name. + (gtk_text_tag_get_priority): Added + + (GtkTextStyleValues): put this in public header, along with + functions to use it. + + * gtk/gtktextmarkprivate.h: Include more headers, since we no + longer include gtktextbtree.h. + + * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref, + gtk_text_mark_deleted + + * gtk/gtktextlayout.h: Don't include the "really private" headers, + only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData + to make this possible. Now we only need to install + gtktextlayout.h, not gtktextbtree.h and gtktext*private.h. + (However the Makefile.am isn't changed yet because of the + logistics of merging gtk-hp-patches piecemeal) + + * gtk/gtktextiterprivate.h: include btree header, so it compiles; + rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since + gtk_text_iter_get_line is now used in the public API for a + different purpose. + + * gtk/gtktextiter.h: Clean up function names to be more + consistent. Always call char offset "offset" and byte index + "index". A "line" is always a line number. + + (gtk_text_iter_is_last): new function, more efficient than + the existing way to check + (gtk_text_iter_is_first): new function, also more efficient + + (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these + + (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from + gtk_text_iter_forward_char, etc. + + (gtk_text_iter_forward_to_tag_toggle): Renamed from + forward_find_tag_toggle, since this isn't a linear search + + (GtkTextCharPredicate): rename from GtkTextViewCharPredicate + + (gtk_text_iter_forward_search, gtk_text_iter_backward_search): + New functions, search for a buffer substring. + + * gtk/gtktextbuffer.h: Add fields to store whether a paste is + interactive and default editable (since we need to store that info + until we receive the selection data). + + Remove all the _at_char and at_line etc. versions of functions; + only have iterator versions. + + Add _interactive() versions of functions, that consider the + editability of text. (FIXME add interactive flag to the + insert/delete signals per Darin's suggestion) + + (gtk_text_buffer_get_tag_table): new function, demand-creates the + tag table if necessary + + Remove declaration of gtk_text_buffer_get_iter_from_string + + (_gtk_text_buffer_get_btree): private/internal function, added. + + + * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData. + (gtk_text_line_is_last): new function + +2000-07-25 Havoc Pennington + + * gtk/gtkprogressbar.h: Implement new sane, 5-function API for + using GtkProgressBar. See Changes-2.0.txt for details. + + * gtk/gtkprogressbar.c: Add object arguments "fraction" and + "pulse_step" which are the equivalent of + gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction. + Implement new API. + + * gtk/gtkprogress.h (struct _GtkProgress): Add a field + (use_text_format) to mark whether text set on the progress bar is + a format string. Deprecate entire GtkProgress interface. + + * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE + (gtk_progress_build_string): make this a no-op if use_text_format + is FALSE + + * docs/Changes-2.0.txt: Describe progress bar changes. + +2000-07-25 Tor Lillqvist + + * Makefile.am: Include the build directory. + + * configure.in: Generate build/Makefile, build/win32/Makefile, + gdk/, gdk/win32/, and gtk/makefile.mingw. + + * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf. + Add GETTEXT_PACKAGE. + + * gdk/gdk.def + * gtk/gtk.def: Updates. + + * gdk/gdkfont.h + * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't + need them any longer. + + * gdk/gdkinput.h: Mark gdk_core_pointer for export/import. + + * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with + PANGOWIN32_LIBS and gdk_pixbuf. + + * gdk/win32: Compiles, but no doubt doesn't work at all. + + * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. + + * gdk/win32/gdkinput.c: New file, temporarily. + + * gdk/win32/gdkinput-win32.h: New file + + * gdk/win32/gdkinputprivate.h: Remove. + + * gdk/win32/gdkpango-win32.c: New file. + + * gtk/makefile.mingw.in: New file + + * gtk/makefile.cygwin: Removed + + * gtk/Makefile.am: Update accordingly. + + * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and + made externally visible. + + * gtk/gtkmain.c: Use it. + + * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h + is enough. + + * gtk/gtktypeutils.c: Mark glib_debug_objects for import. + +2000-07-24 Elliot Lee + * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the + individual backends already. + * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together + again. Yes, there really is a good reason for this, if you are using the gdkregion + internals, and if you're not, why do you care? + * gdk/gdkwindow.c: Fix inverted condition + * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely). + * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb + * gtk/gtkrange.c: Redraw trough when moving. + * gtk/gtktypeutils.c: Fix warning by adding const cast. + * modules/linux-fb/basic.c: Fix unknown glyph retrieval. + +2000-07-23 Tor Lillqvist + + * configure.in: Check for mkstemp and sigsetjmp. Output + gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw. + + More work on GDK for Win32. Still in an intermediate state. + + * gdk/makefile.cygwin + * gdk/win32/makefile.cygwin: Removed. + + * gdk/makefile.mingw.in + * gdk/win32/makefile.mingw.in: New files. + + * gdk/Makefile.am + * gdk/win32/Makefile.am: Generate and distribute them. + + * gdk/win32/gdkwindow-win32.h + * gdk/win32/gdkdrawable-win32.h + * gdk/win32/gdkpixmap-win32.h: New files. + + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkcursor-win32.c + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkgc-win32.c + * gdk/win32/gdkimage-win32.c + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Update data structures. Cosmetics: + Rename fields and variables called xcursor, xid, etc (these names + were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc. + +Sat Jul 22 17:41:26 2000 Owen Taylor + + * gtk/gtkentry.[ch]: Fix some problems with vertical + alignment. + + * gtk/gtkentry.c (gtk_entry_find_position): Fix + char/byte confusion. + +Sat Jul 22 11:16:05 2000 Owen Taylor + + * gtk/gtktextview.c (changed_handler): Fix bug where + redraw wasn't being done properly when height of + dirty region changed. + + * demos/Makefile.am: Remove various references to + -lgmodule + +Fri Jul 21 15:28:13 2000 Owen Taylor + + * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new + PangoAttrShape to reserve space for pixmaps, add + GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps + in the display functions. + + * gtk/testgtk.c (create_layout): Set some more exotic + scrolled window options + + * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type): + Add function to set the shadow type of a window, to allow + putting a shadow around widgets such as GtkLayout or GnomeCanvas + which don't draw their own frame. + +Fri Jul 21 16:34:42 BST 2000 Tony Gale + + * docs/tutorial/package-db-tutorial.sh: New file for + packaging DocBook format tutorial + +Fri Jul 21 14:23:51 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Minor updates + + * docs/tutorial/*.jpg *.eps: Screenshots for tutorial + +2000-07-19 Tor Lillqvist + + * gtk/gtksignal.c: Fix C++ comment. + + * gtk/gtkimmulticontext.c + * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__, + don't return value from void functions. + + * gtk/gtk.def: Add gtk_rc_style_unref. + +2000-07-19 Sebastian Wilhelmi + + * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h, + gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h, + gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h, + gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h, + gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h, + gtk/gtktypeutils.h: Include files outside of the extern "C" + block. Makes some C++ compiler happy. Reported by Denis Vakatov + . + +Wed Jul 19 14:07:57 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Yet more clean ups. + Completes first pass. Hurrah! + +Tue Jul 18 17:17:55 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: More clean ups. + +Mon Jul 17 18:52:38 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to + paint the background of the text area which was accidentally + removed at some point. + + * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: + + - Move most of the functionality from the theme vtable + into GtkRcStyleClass and GtkStyleClass. The moved + vtable functions were changed a bit in the move to + work better in their new home. + + - Get rid of the engine and engine_data fields from + GtkRcStyle and GtkStyle; instead the theme + engine derives theme-specific subclasses of GtkRcStyle + and GtkStyle + + - Add extra dlsym() found entry point to themes, + theme_create_rc_style(). + + * gtk/gtkstyle.c: Copy xthickness, ythickness fields + in gtk_style_real_copy. + + * gtk/themes.[ch]: add a function gtk_theme_engine_register_type() + to register a type associated with an engine. (The engine + won't be unloaded as there is an instance of the type.) + + +Mon Jul 17 18:19:06 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Clean ups. + +Mon Jul 17 13:59:29 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots + of cleaning up to do. + +2000-07-15 Tor Lillqvist + + * gdk/testgdk.c: New file, quick hack to test backends for + pixel-by-pixel correctness of the most simple graphic operations. + +Fri Jul 14 20:30:25 2000 Owen Taylor + + * Really release 1.3.1 + + * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new + include structure. + +Fri Jul 14 18:40:39 2000 Owen Taylor + + * Released 1.3.1 + +Fri Jul 14 16:21:26 2000 Owen Taylor + + * gtk/gtktextlayout.c: use FALSE for size_only most + of the time when calling gtk_text_layout_get_line_display() + to avoid causing double reshapes when a redraw follows + immediately after. + +Tue Jul 11 11:13:40 2000 Owen Taylor + + * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate + appropriate region and gdk_window_process_updates() so trough + updating doesn't lag behind the window being scrolled. + + * gdk/gdkgc.c: Make parent_class pointer static. + +Sun Jul 9 21:31:23 2000 Owen Taylor + + * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c: + include . + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix + cut-and-paste error in computing memory offset for 4 channels. + +Fri Jul 14 14:05:02 2000 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove + gtk_rc_append_default_pixmap_path(), since it wasn't + adding an interesting path and we don't have a meaningful + default for this value. + +Fri Jul 14 12:22:49 2000 Owen Taylor + + * configure.in Makefile.am gtk-config.m4 gtk.m4: Move + gtk-config to gtk-config-2.0 move gtk_.m4 to + gtk-2.0.m4 + + * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am + gdk/Makefile.am demos/Makefile.am: Change + library names to libgtk-1.3.la, etc, so that we + can distinguish gtk-1.2 and gtk-2.0 on the linkline. + + * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am + gdk/Makefile.am gdk/x11/Makfile.am + Move include files into /usr/include/gtk-2.0, + /usr/lib/gtk-2.0/include/ + + * autogen.sh acconfig.h configure.in gtk/gtkmain.c + gtk/gtkintl.h: Change package for gettext from + gtk+ to gtk20. Put hack in autogen.sh to modify + po/Makefile.in.in after gettextize to make this + possible. + + * gtk+.spec: Some updates, not tested. + + * gdk-pixbuf/Makefile.am: Move loaders into + $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders. + + * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations + $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir + to THEMENAME/gtk-2.0/. Move engine directory to + $(libdir)/gtk-2.0/$(GTK_VERSION)/engines. + +2000-07-12 Tor Lillqvist + + Win32 changes, still doesn't build though. + + * gdk/makefile.cygwin + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Updates. + + * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same + default values for fg and bg pixel as X11 does (0 and 1), not + black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default. + Use 0 for pen width by default (treated as 1 anyway later, but for + apps that might check the value in the GdkGC). + (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public + interface to gdk_gc_predraw and _postdraw. + + * gdk/win32/gdkwin32.h + * gdk/gdk.def: Add gdk_win32_hdc_{get,release}. + + * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove + extraneous semicolon. + + * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0. + + * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth, + not the Win32 bitspixel value. + + * gdk/win32/gdkcc-win32.c: + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Changes to make compilable, with new + GDK object structure. + +Tue Jul 11 20:59:35 2000 Tim Janik + + * docs/tutorial/gtk_tut_12.es.sgml (name): + * docs/tutorial/gtk_tut_it.sgml (name): + * docs/tutorial/gtk_tut_fr.sgml (name): + * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely + outdated email adress: s/timj@psynet.net/timj@gtk.org/. + +Tue Jul 11 13:10:57 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Cleanup indenting and various + small changes. + +Tue Jul 11 08:04:58 2000 Tim Janik + + * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen + a bug here, never been here and never fixed anything ;( + (don't segfault if tree->root_tree is NULL, which happens prior + to widget realization, but puke instead). + +Tue Jul 11 06:38:42 2000 Tim Janik + + * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and + add the necessary tokens. + + * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style. + (gtk_rc_style_to_style): copy thicknesses. + (gtk_rc_init_style): apply thicknesses. + (gtk_rc_parse_style): parse xthickness and ythickness. + + * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements. + + * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): + (gdk_window_new): + (_gdk_windowing_window_init): + * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): + (gdk_pixmap_create_from_data): + (gdk_bitmap_create_from_data): + (gdk_pixmap_new): + * gdk/x11/gdkimage-x11.c (gdk_image_get): + (gdk_image_new): + * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): + * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): + * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get): + (gdk_colormap_get_system): + (gdk_colormap_new): + * gdk/gdkwindow.c (gdk_window_init): + * gtk/gtkstyle.c (gtk_style_new): + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): + * gdk/gdkpixmap.c (gdk_pixmap_init): + * gtk/gtkrc.c (gtk_rc_style_new): + use g_object_new() instead of g_type_create_instance() which + is a private function for fundamental type implementations. + +Thu Jul 6 16:12:14 2000 Owen Taylor + + * configure.in: Add check for db2html + +Thu Jul 6 14:53:05 2000 Owen Taylor + + * gtk/gtktypeutils.c (gtk_type_init): Add a temporary + hack to set glib_debug_objects based on gtk_debug_flags. + +Thu Jul 6 14:12:13 2000 Owen Taylor + + * INSTALL.in: Update the Prerequisites section. + + * Makefile.am demos/Makefile.am docs/Makefile.am + docs/tutorial/Makefile.am gdk/x11/Makefile.am + gdk/linux-fb/Makefile.am: Dist fixes + +Thu Jul 6 12:26:03 2000 Owen Taylor + + * NEWS: 10,000 foot view of 1.3.1 changes. + +Thu Jul 6 11:54:03 2000 Owen Taylor + + * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c + gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c + gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h + gdk/x11/gdkmain-x11.c: + + Patch from George Lebl to add a GdkGrabStatus enumeration to use + as a return value of gdk_*_grab(). Previously, we just + returned the X11 values directly. + +Thu Jul 6 11:27:44 2000 Owen Taylor + + * gdk/x11/Makefile.am: Patch from George Lebl to + install all the headers in the right place. + +Tue Jul 4 13:13:01 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Add remaining sections. Completes + initial conversion to DocBook. + +2000-07-04 Tor Lillqvist + + * README.win32: Improve a bit. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also + WM_SYSCHAR, and other changes to get handling of Alt+nnn or + Alt+0nnn on the numpad (used to enter characters by numeric code + from current DOS or ANSI codepage) working correctly, as in other + Windows apps. + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use + same argument validity tests as in X11 version. + (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon. + + * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor + definitions in case missing from headers. + + * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also + destroy the window-specific cursor. + (RegisterGdkClass): Use the global gdk_ProgInstance instead of + calling GetModuleHandle(NULL). + (gdk_window_set_cursor): Reworked to always copy the passed cursor + with CopyCursor before setting it as the window-specific + cursor. It is OK for the caller to destroy the GdkCursor (and thus + also its Windows cursor) after calling this function. Destroy any + previous window-specific cursor. + +Mon Jul 3 17:54:49 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): + font charset is iso8859-1, not iso-8859-1. + +Mon Jul 3 17:08:14 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): + Use g_get_charset() instead of g_get_codeset(). + + * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: + Comment out some strdup'ing functions to keep timj + happy until we finish fighting this out. + +Mon Jul 3 14:24:16 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with + <= width or height. + + * gtk/gtktable.c (gtk_table_attach): Fix missed merge + from 1.2 for parent/child states. + + * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple + of typos. + + * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of + event structures, replace with a generic axes field. Replace + deviceid/sourec with GdkDevice *device. + + * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function + to extract particular axis use value from event. (Also + can be used for normal X/Y.) + + * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision; + allow for arbitrary number of axes, namespace everything + as gdk_device_*. Replace guint32 deviceid with GdkDevice * + everywhere. + + * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: + Get rid of the gdk_input_vtable setup if favor of simply + defining the functions in gdkinput-none/gxi/xfree.c in + a similar fashion to the way that the port structure is + done. + + * gtk/gtkdnd.c: Fix fields of synthesized button press event + for new event structures. + + * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match + new device interfaces. + +Sun Jul 2 18:19:50 2000 Owen Taylor + + * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to + set the initial text. + + * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c + gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c + gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c + gtk/gtkvscale.c: Adapt to new argument of create_pango_layout(). + + * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new + pango_layout_set_font_description to simplify. + +Sun Jul 2 17:43:41 2000 Owen Taylor + + * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new + pango_layout_set_font_description to simplify. + +Sun Jul 2 17:06:40 2000 Owen Taylor + + * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c + gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use + pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'. + + * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with + PANGO_PIXELS() macro. + +Sun Jul 2 15:24:41 2000 Owen Taylor + + * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function + that returns a PangoContext owned by the widget and updated to + match future changes in the widget. Also, make + gtk_widget_create_pango_layout() use this context. If we ever + add a ::changed signal to PangoContext, this will make things + much more convenient. + + * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed() + in the appropriate places instead of destroying the layouts and + creating new ones. + + * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context() + in a few strategic places. + +Sun Jul 2 14:37:58 2000 Owen Taylor + + * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call + gtk_widget_size_request() on reparented child, if one. Otherwise, + queue_resize() on the child never results in it getting size-requested + at all. + + * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items + in option menus, so that (with luck) people won't copy it into + their apps in the future. + + * gtk/gtkoptionmenu.c: Connect ::size_request on the menu + to gtk_option_menu_calc_size. This isn't perfect, but should fix + a lot of problems with changing the size of the menu's menu + items after adding it to the option menu. + + * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language(). + + * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when + the text direction for a widget changes. + + * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use + ::direction_changed to get rid of various hacks. + +Sun Jul 2 13:19:12 2000 Owen Taylor + + * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate + name. + +Sun Jul 2 13:06:26 2000 Owen Taylor + + * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign + flag to the structure. Do not call XFreePixmap on pixmaps created + by gdk_pixmap_foreign_new(). + +Sun Jul 2 12:45:50 2000 Owen Taylor + + * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel + value using GdkRGB functionality given GdkColormap and GdkColor. + (name not final, waiting for inspiration.) + + * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to + set the foreground/background of a GC using the GC's colormap + and GdkRGB. (name not final, waiting for inspiration.) + + * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from + gdk_rgb_get_cmap(), put #define in gdkcompat.h. + + * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for + gtk_widget_get_visual(), gtk_widget_get_default_visual, etc, + purely a function of the corresponding colormap. Make + gtk_widget_set_visual(), etc, noop macros in gtkcompat.h. + + * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite + gdk_pixbuf_*create_from_xpm_* in terms of + gdk_pixbuf_new_from_xpm_data(), move into platform independent + code. + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take + advantage of the new draw_rgb_32_image_dithalign. + + * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added. + + * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap + on each created GC. + + * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap. + + * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure + which we initialize from the drawable when the GC is created, + if the drawable has a colormap. + + * gdk/x11/gdkgc-x11.c: include string.h for memset. + + * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc. + + * gtk/gtklayout.[ch]: Remove unsed configure serial member. + +Sat Jul 1 16:28:32 2000 Owen Taylor + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): When + actually returning expose events, make sure to set + the count field properly. + + * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix + accidentally reintroced bug which always cleared + the graphics_exposures value. + +Wed Jun 28 18:03:09 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Change DocBook layout slightly + +Wed Jun 28 17:49:05 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7. + +Wed Jun 28 13:31:55 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Start of Section 6. + +Mon Jun 26 19:37:04 2000 Owen Taylor + + * configure.in: Put 1.3.1 in warning message, not 1.3.0. + + (Fixes problem with drawing childless frames. Pointed out + by and a first patch from Anders) + + * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always + compute a child_allocation, even if we don't have a child. + + * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation): + Always chain to the parent's impl, even if we don't have a child. + +Mon Jun 26 18:53:31 2000 Owen Taylor + + * gdk/gdkrgb.c: If possible, create only a single shm segment and + use multiple parts of it instead of creating a bunch of separate + segments, since the maximum number of segments per system is not + large. (This might be worth backporting to GTK+-1.2.x if we make a + new release ) + + * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo + structure in preparation for per-colormap GdkRGB. + + * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm + to False when we get EINVAL from shmget so that the caller of + gdk_image_new can retry with a smaller segment size. + +Mon Jun 26 13:01:16 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Add Sections 4 & 5. + +Fri Jun 23 17:54:23 2000 Tim Janik + + * configure.in: make the current version number 1.3.1 (binary age 0, + interface age 0). + + * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*, + gtkcompat.h is all we want. + + * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of + GLib primitive types. fixed g_type_register_fundamental() argument + ordering. + + * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code + compiles. + + * gdk-pixbuf-loader.[hc]: get rid of unistd.h include. + object code cleanup, comment trigraph fixes, etc... + +2000-06-23 Havoc Pennington + + * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark + instead of making up a bogus name for first_para_mark + + * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow + 0 as a context ID + +Thu Jun 22 17:43:51 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Change filename. Add Section 3. + +2000-06-21 Havoc Pennington + + * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where + we didn't check window->bg_pixmap != GDK_NO_BG. + + * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of + gdk-pixbuf + +Thu Jun 22 14:02:19 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgm: Move file to here. + TODO: Update Makfile.am + +Thu Jun 22 13:41:09 BST 2000 Tony Gale + + * docs/gtk-faq.sgm: Add Section 2 + +Thu Jun 22 08:43:45 BST 2000 Tony Gale + + * docs/gtk-faq.sgm: New file. Start of DocBook + version of the FAQ. + +Wed Jun 21 23:04:17 2000 Owen Taylor + + * configure.in (GDK_PIXBUF_MAJOR): Define version + numbers for GDK_PIXBUF_*, as they get substituted + into a header file. Need to consider versioning + for gdk-pixbuf more carefully later. + +2000-06-21 Raja R Harinath + + Work with srcdir != builddir. + * demos/testanimation.c: Don't include "gdk-pixbuf.h". Use + , not "gtk-pixbuf/gdk-pixbuf-loader.h". + * demos/testpixbuf.c: Likewise. + * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h". + * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h". Use + . + * demos/pixbuf-demo.c: Use not "gtk.h". Don't include + "gdk-pixbuf.h". + * demos/Makefile.am (INCLUDES): Remove unneeded directories. + +Wed Jun 21 19:45:02 2000 Owen Taylor + + * TODO.xml: Change 1.4 version numbers to 2.0. + +Wed Jun 21 19:29:08 2000 Owen Taylor + + * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation + fixups to GTK+ standard. + +Wed Jun 21 16:38:13 2000 Owen Taylor + + * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard, + gdk-pixbuf. + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): + fixups for GObject. + + * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of + gdk-pixbuf with GDK dependencies moved into GDK. + + * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily + move gdk-pixbuf-loader here until GObject has signals. + + * demos/: New directory of demos. Move demos from + gdk-pixbuf here. + + * demos/pixbuf-init.c: Small bit of code to check for + loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found, + set GDK_PIXBUF_MODULEDIR appropriately. + + * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat + define which no longer makes sense. + +2000-06-21 Havoc Pennington + + * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use + gtk_get_default_language + + * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): + new function to get the default language + + * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: + s/gtk_text_view_style_values/gtk_text_style_values/ + + * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h: + Add a "language" field to tags. + + (gtk_text_tag_set_arg): Fix bug in setting + "bg_full_height_set" tag. + +2000-06-21 Havoc Pennington + + * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate + in the interfaces + + * gtk/gtktexttypes.c: Remove UTF functions, use glib + stuff instead when possible. + + * gtk/gtktexttypes.h: Delete some unused constants + + * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c, + testtextbuffer.c: use glib instead of custom unicode routines + +Wed Jun 21 12:50:58 2000 Owen Taylor + + * docs/es/: Removed mistakenly added generated sgml + + * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex: + Remove outdated info files. + + * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial: + Moved tutorial files into subdir + + * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into + subdir. + + * docs/man/gtk_button.pod: Remove. (contents will be + integrated into gtk-reference button page.) + + * configure.in docs/Makefile.am docs/tutorial/Makefile.am + docs/faq/Makefile.am: Adjust for new organization + +2000-06-21 Christopher Blizzard + + * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs) + not $(MKINSTALLDIRS) + +Wed Jun 21 12:24:28 2000 Owen Taylor + + * gtk/testgtk.c (create_text): Finish the job Elliot started + of removing font setting test for text widget. (Since text widget + and GdkFont are not deprecated, and cause portability problems.) + +Wed Jun 21 11:41:43 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c + gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c: + Remove use of libunicode in favor of new GLib functions. + + * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32, + nano-x, framebuffer. The X11 include is just a hack until we get + the necessary functions in gdkcolor.h, so there is no reason to + add other includes of platforms. + + * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert + window bigger than the screen change. + + * gtk/testgtk.c: Revert some random changes from Elliot + that had no particular point and were causing testgtkrc + not to function correctly. + + * gdk/gdkregion-generic.h: Revert change from Elliot. Just + because GdkSegment and GdkRegionBox have the same fields, + it doesn't mean that 'typedef GdkSegment GdkRegionBox' + results in clearer code. + + * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events, + gdk_input_translate_coordinates): Fix missed GdkObjectification + +2000-06-18 Elliot Lee + + * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way. + * gtk/gtk{plug,socket}.h: Missed commits from previous. + +2000-06-20 Havoc Pennington + + * modules/linux-fb/Makefile.am: Make this compile + without framebuffer enabled + + * gdk/linux-fb/Makefile.am: Add conditional to not build + framebuffer unless specified in configure + + * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting + the size of the target instead of source if -1 was passed for + width/height + + * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix + width/height confusion. + +2000-06-19 Havoc Pennington + + * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be + GDK_DRAWABLE_XID. In the future, we probably want to make it + faster with G_DISABLE_CHECKS turned on. + +2000-06-14 Havoc Pennington + + * gdk/Makefile.am: add gdkpixmap.c + + * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/ + s/gdk_image_init/_gdk_windowing_image_init + + * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject + ref/unref + + * gdk/gdkcolor.h: make GdkColormap a GObject subclass + + * gdk/gdkcompat.h: remove GdkWindowType compat, since + GdkWindowType is now non-deprecated; + change gdk_window_get_type() compat to be + gdk_window_get_window_type(). + + * gdk/gdkdnd.h: make GdkDragContext a GObject. + + * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure + virtual GObject. Make all functions call into the vtable. + Move gdk_image_put() guts in here. Remove GdkDrawableType + and gdk_drawable_get_type(), these are now GdkWindow-specific. + draw_image, get_depth, get_size, set_colormap, get_colormap, + get_visual added to the vtable. + + * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual + GObject. Virtualize everything. + (gdk_gc_new_with_values): remove check for destroyed window, + because now GdkWindow::create_gc will check this. + (gdk_gc_set_values): New function to set GC values, this + was already implemented but wasn't in the header + + * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject. + + * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove + _gdk_window_draw_image(), remove _gdk_windowing_window_class, + remove _gdk_window_class; add _gdk_window_impl_get_type() and + _gdk_pixmap_impl_get_type(). Rename gdk_window_init to + _gdk_windowing_window_init, rename gdk_image_init to + _gdk_windowing_image_init. + + * gdk/gdkpango.c: Reflect GObject-ification of PangoContext. + (gdk_draw_layout): Remove check for destroyed window, + because all the drawable methods already check it. + + * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject. + Add gdkpixmap.c which contains implementation of GdkDrawable + virtual table (by chaining to a platform-specific implementation + object). + + * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, + GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace + GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate, + GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate, + GdkColormapPrivate. + + * gdk/gdktypes.h: #include + + * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject. + Move most functionality to platform-specific implementation + object. GdkWindow itself now handles the backing store, then + chains to the platform-specific implementation. + (gdk_window_get_window_type): return GdkWindowType of the window. + (gdk_window_peek_children): New routine, returns the children of + a GdkWindow + (gdk_window_get_children): Was in X11-specific code and did + XQueryTree. Changed to simply return a copy of window->children; + so it can go in cross-platform code. + + * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path + + * gdk/x11/gdkcolor-x11.c: implement X-specific parts of + GdkColormap; just changed to use the new private data instead + of casting to GdkColormapPrivate. + + * gdk/x11/gdkcursor-x11.c: added a couple typechecks to + gdk_cursor_new(). + + * gdk/x11/gdkdnd-x11.c: Change the way we access private fields + (private data member in the GObject). + (xdnd_manager_source_filter): Function had broken + error handling, fix it (use gdk_error_trap_push). + + * gdk/x11/gdkdrawable-x11.c: This file now implements + a base class for GdkWindowImplX11/GdkPixmapImplX11. This + base class is purely for the convenience of the X port, + and not part of the interface to cross-platform GDK. + + * gdk/x11/gdkevents-x11.c: Reflect various renamings. + + * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's + specific to X, and returned by the create_gc virtual method + of GdkDrawableImplX11. + (gdk_x11_gc_set_dashes): Change this to take an array of gint8 + rather than gchar, this was also changed in the GdkGC vtable. + (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the + mask is 0, return immediately, instead of checking every flag. + This is faster, and keeps us from segfaulting if values is NULL + and the mask contains some nonzero flags. + + * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of + GdkWindow. + + * gdk/x11/gdkglobals-x11.c: change type of grab window, since + GdkWindowPrivate is gone. + + * gdk/x11/gdkim-x11.c: rename things that got renamed. + + * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and + remove the image_put stuff that got transferred to GdkDrawable. + + * gdk/x11/gdkinput.c: renamings + + * gdk/x11/gdkmain-x11.c: #include + + * gdk/x11/gdkpixmap-x11.c: GObject conversion + + * gdk/x11/gdkprivate-x11.h: indentation fixes + + * gdk/x11/gdkproperty-x11.c: renamings + + * gdk/x11/gdkselection-x11.c: renamings + + * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now + implements the platform-specific "impl" object. + Moved gdk_window_get_children to gdk/gdkwindow.c + + * gdk/x11/gdkx.h: Remove all the private structs and private datas + that no longer exist. Add declaration of GdkGCX11 object here. + Fix all the macros to still work. + + * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow, + GdkDragContext from the boxed types since they are now GObjects. + + * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject, + moved xthickness/ythickness into the instance. GtkStyleClass + functions are now in the standard vtable for GtkStyle, so you have + to create a GObject subclass to write a theme engine. + (gtk_style_copy): fixed a leaked PangoFontDescription + (gtk_style_init): renamed gtk_style_realize, so gtk_style_init + can be the standard GObject function. + + * Throughout GTK: + s/style->klass->[xy]thickness/style->[xy]thickness + s/pango_layout_unref/g_object_unref/ + + * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject. + + * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of + accessing GDK internals. + + * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of + accessing GDK internals. + +2000-06-18 Elliot Lee + + * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen. + + * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar + problem by calculating event position relative to the trough + rather than the slider. + * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate. + + * gdk/gdkgc.h: Add GDK_NOR. + + * configure.in, Makefile.am: Add modules top level dir + * configure.in: Only use pangox library if building x11 target. + * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use. + +Fri Jun 16 22:24:22 2000 Christopher Blizzard + + * gtk/gtkcolorsel.c: Change private class member to be named + private_data throughout the file. + + * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to + private_data to avoid clashing with keyword. + +Fri Jun 16 22:24:22 2000 Christopher Blizzard + + * gdk/gdkdnd.h: Add comment to remove warning. + +Sun Jun 18 15:35:35 2000 Pablo Saratxaga + + * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by + Byelorussian language; changed the Makefile and file names + to reflect that. + +Mon Jun 12 16:58:40 2000 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw + rather than gdk_window_hide; this makes things work + correctly if the window is programmatically hidden while + iconified. + +Sun Jun 11 12:46:19 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix + cut and paste typo where wrong pixmap was being + unref'ed. (Pointed out by a friend of KUSANO Takayuki.) + +Sun Jun 11 10:22:36 2000 Owen Taylor + + * gtk/gtkselection.c (gtk_selection_bytes_per_item): + Add helper function to compute format / bytes + relationship. Use in a couple places to fix up + errors which assume 8 * format. + + * gtk/gtkselection.c (gtk_selection_request): Use 32 + rather than 8 * sizeof (GdkAtom), to work correctly + on Alpha. + +Thu Jun 8 21:54:51 2000 Christopher Blizzard + + * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not + libgtk.la + (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11 + versions + + * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error + checking macros return NULL since the function has a return value. + +Wed Jun 7 15:44:42 2000 Owen Taylor + + * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping + GTK+ from building at all. + + * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues. + +Mon Jun 5 19:32:53 CEST 2000 Paolo Molaro + + * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am, + gtk/Makefile.am: make it possible to configure gtk for different + targets on the same platform. The library name is now + libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb + flag. Only the x11 target compiles right now. + * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h, + gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir. + * gdk/nanox/gdk*generic*: delete generic region code. + * gdk/linux-fb/gdk*generic*: delete generic region code. + * README.nanox: update information. + +Tue Jun 6 10:53:59 2000 Owen Taylor + + * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to + prepend not append. (Pointed out by Brett Hall.) + +Tue Jun 6 01:59:57 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout. + +Mon Jun 5 16:00:09 2000 Owen Taylor + + * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll + need this later, and this makes sure that the atexit for + glib gets called after that for GDK, so atexits are + properly ordered for object leak checking. + + * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit(). + + * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call + pango_x_shutdown_display() + + * gtk/simple.c (main): Close window on destroy. + +Mon Jun 5 11:50:02 2000 Owen Taylor + + * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need + to treat initial creation different from setting with + regards to the graphics-exposures parameter, so add a parameter + indicating whether this is initial or not. + +Mon Jun 5 13:29:31 2000 Owen Taylor + + * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose() + to sort of work by adding an extra return_exposes arg + to gdk_event_translate() - it might be better to simply + deprecate the function altogether and force people to rewrite + without it. gdk_window_scroll() handles most of it, and where + gdk_window_scroll() doesn't work, simply redrawing more does. + + * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up + assertion. + + * gtk-config.in: Include PANGO_CFLAGS/LIBS. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a + bunch of pretty much useless /* Print debugging info */ comments + which had drifted away from the code they were commenting. + +2000-06-02 Havoc Pennington + + * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer + is in working order. + + * gtk/testtext.c: Change to reflect anonymous mark API + + * gtk/gtktextview.c: Convert from mark names to GtkTextMark*. + + * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size + field, which was unused. + + * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro, + saves some typing. + + * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark* + + * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable + flag on the insertion point and selection bound + + Throughout, use GtkTextMark instead of GtkTextLineSegment, and + make mark-manipulation functions take a GtkTextMark* instead of a + mark name. + + * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to + GtkTextMarkBody; will be used to detect attempts to delete + the permanent marks (insert and selection bound) + + * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer + +Fri Jun 2 12:56:01 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED + flag to on. + + * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): + Honor DOUBLE_BUFFRED_FLAG + + * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a + function to set the DOUBLE_BUFFERED flag. + + * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether + or not exposes done on the widget should be double-buffered. + + * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations + to be what would be expected. (Fixes problem with a + g_return_if_fail() validating a TextDirection enumeration) + +Thu Jun 1 23:05:13 2000 Owen Taylor + + * gtk/gtkwidget.c: Remove all references to + offscreen flag which was no longer used. + + * gtk/gtkprivate.h (enum): Remove unused flags and compress. + + * gtk/gtkframe.c (gtk_frame_set_label_widget): Check + for non-null label_widget->parent. + + * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute + which no longer was used. + + * gdk/gdkpango.c (gdk_pango_context_get_info): make static. + + * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks + for null arguments. + + * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add + check for destroyed windows. + +Thu Jun 1 13:48:45 2000 Owen Taylor + + * gtk/gtkimmulticontext.c: Add a finalize method and unref + the slave context there. + + * gtk/gtkinvisible.[ch]: Make reference counting behavior + identical to GtkWindow. + +Thu Jun 1 01:54:11 2000 Owen Taylor + + * Makefile.am gdk/gdkpango.c: Copy the layout render function from + pangox to here, so we can write them independent of rendering + system, using GDK primitives. + + * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c + gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable, + since we have a rendering-system independent implementation in + terms of draw_glyphs(). + + * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New + function to render a single line. + + * gdk/x11/gdkpango.c: Move the guts of this file mostly + into ../gdkpango.c, which simplifies things, since we + don't have to deal with raw X gc's. + +Fri May 19 04:28:16 2000 Owen Taylor + + * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to + get the logical attributes for a given GtkTextLine. + +Tue May 30 16:05:39 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track + g_locale_get_codeset() to g_get_codeset() change. + +Tue May 30 15:03:19 2000 Owen Taylor + + * gtk/testcalendar.c (calendar_font_selection_ok): Use font + descriptions. + + * gtk/gtkentry.c (gtk_entry_draw_text): Center text within + the entry. + + * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of + redoing (vastly simplifying) for Pango. Still needs quite + a bit of work. (Size selection is currently poor. List of + predefined sizes is not a good idea, since all of these + sizes won't necessarily be distinct.) + +Tue May 30 13:50:19 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle + CODESET results for LANG=C. + +Mon May 29 15:49:10 2000 Owen Taylor + + * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC + which takes a stringized pango font description; + ignore the older 'font' and 'fontset' declarations. + + * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font + field with a GdkFont derived via gdk_font_from_description(), + for compatibility. (Should we just remove it entirely? + Probably too much compatibility breakage, but people + should be migrating to the new Pango stuff as quickly + as possible.) + +Mon May 29 15:47:41 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/. + +Mon May 29 15:44:46 2000 Owen Taylor + + * gtk/gtkcalender.c: Roughly pango-ized. Really needs + redoing; there are some bugs in size allocation right + now, the semi-existant distinction between header / day + fonts was removed, but, with Pango, could actually + be made functional in a nice way. + + * gtk/testcalender: Move calender from examples into this + directory as a test program. (We really need to restrcture + testgtk into a whole directory full of tests for every + widget or functionality group, separated into multiple .c + files.) + +Mon May 29 15:19:56 2000 Owen Taylor + + * gtk/testgtk.c (file_exists): Fix stupid typo that + was keeping RC file from being loaded. + + * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized + RC file font code. + +Mon May 29 14:31:27 2000 Owen Taylor + + * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description): + Add function to load a GdkFont from a PangoFontDescription. + +2000-05-29 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event" + variable should be of type GdkEventPrivate. + +Fri May 26 17:16:40 2000 Owen Taylor + + * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able + to have any widget for the label, use a GtkLabel widget + to display the text. (Based partially on a patch from + Anders Carlson.) + + (Quite a bit of code reorganization - strip 90% of the + guts out of gtkaspectframe and add a single virtual + func to GtkFrameClass - compute_child_allocation.) + +Fri May 26 12:00:02 2000 Owen Taylor + + * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized. + (Removed clist->row_center_offset field because caching + it wasn't saving time or code, added private function + _gtk_clist_create_cell_layout()). + +Wed May 24 15:59:37 2000 Owen Taylor + + * gtk/gtkaccellabel.c: Pangoized. + + * gtk/[hv]ruler.c: Pangoized + +Mon May 22 19:23:59 2000 Owen Taylor + + * gtk/gtkfilesel.c (gtk_file_selection_init): + Use gtk_clist_set_column_auto_resize() to remove need + need for manual column width computations. + +Mon May 22 18:50:26 2000 Owen Taylor + + * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, + ensuring Pango correctness, and considerably simplifying the + code. + + * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE. + + * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect + getting of numbers of lines. + + * gtk/gtklabel.c (gtk_label_size_request): Set the requisition + to the actual requested width of the lable, not to the wrap + width we set. + + * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h. + + * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c + gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes. + + * gtk/gtktextview.c: Fix structure inheritance. + + * gtk/gtkprogressbar.c: Pangoize. + +Mon May 22 15:47:30 2000 Owen Taylor + + * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate + in a function. + + * gtk/gtktextlayout.c (find_display_line_above): Fixed + bug with computing line tops. + + * gtk/gtktextview.c (changed_handler): Fix < , <= confusion. + +Thu May 18 18:53:31 2000 Owen Taylor + + * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset + and y_offset coordinates to do what we need now. (The offset between + buffer and layout coordinates has been reintroduced, but is a + bit different than before.) + + * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead + handle the adjustments ourselves, and scroll as necessary using + the new gdk_window_scroll(). + + The advantage of this is that when we are incrementally revalidating, + we are essentially rearranging things around the visible portion + of the screen. With the old setup, the visible portion of the + screen was moved around in the layout, so scrolling and redrawing + to track that caused jumping of the display. Since we now + control the scrolling ourselves, we can suppress this and + only redraw when things actually change. + +Thu May 18 18:47:25 2000 Owen Taylor + + * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate + the region not just redisplay it after-all, since we store the + cursors in the LineDisplay. (Ugly interactions here between + GtkLayout and GtkTextBTree here.) + + * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison. + +Thu May 18 18:43:21 2000 Owen Taylor + + * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): + Added function to scroll contents of a window while keeping the + window constant. Works by XCopyArea or guffaw-scrolling depending + on the details of how the window is set up. (guffaw-scrolling + still needs to be filled in.) + +Wed May 17 22:36:53 2000 Owen Taylor + + * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget, + move the debugging that was tied to a global variable + to that. + + * gtk/gtkmarshal.list: Add NONE:INT,INT,INT + + * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate + validated flag, in line data instead of setting height/width to + -1. This allows us to perform operations with partially invalid + buffer (using the old size for invalid lines) and thus to do + incremental vaidation. Keep height/width aggregates up to date + when deleting text and rebalancing the tree. + + * gtk/gtktextbtree.[ch]: Add functions validate a line + (gtk_text_btree_validate_line), and to validate up + to a number of pixels (gtk_text_btree_validate). + + * gtk/gtktextlayout.[ch]: Add an ::invalidated signal + that indicates that something is changed and a revalidation + pass is needed. Change ::need_repaint to ::changed, and + make it take old and new yranges instead of a rectangle. + + * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move + the line_data_destroy() function from + gtk_text_btree_add_view() to a virtual function in + GtkTextLayout + + * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(), + since we are handling partial repaints in a different fashion + now. + + * gtk/gtktextbtree.[ch]: Only repaint the changed portion + of the selection instead of queueing a repaint on the + entire widget. + + * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move + get_selection_bounds() down to btree, make the function + in buffer a wrapper around the btree function. + + * gtk/gtktextlayout.[ch]: Add functions to check if the + layout is valid and to recompute either a range of pixels + aroudn a line or a certain total number of pixels. + + * gtk/gtktextlayout.[ch]: Cache a single line display; + now that we only redraw the needed portions, the hit rate + for this cache is quite high. + + * gtk/gtktextview.[ch]: Keep track of the first paragraph + on the screen so that when re-laying-out the buffer, we can + keep the same place. This requires connecting to ::value_changed + on the adjustments + + * gtk/gtktextview.[ch]: Add idle functions to revalidate + the buffer after we receive an ::invalidated signal. + +Wed May 17 22:10:47 2000 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper + to max of allocation and layout size, not just to the + layout size. + + * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): + Invalidate window so it gets redrawn properly. + + * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL + to mean the entire window. + + * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW + into public header. + +Mon May 15 14:51:31 2000 Owen Taylor + + * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function + to get the name of a mark. + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function + to find the paragraph from a y position. + +Thu May 11 12:57:20 2000 Owen Taylor + + * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid + nodes have width/height >= 0, not > 0. + +Tue May 9 21:29:06 2000 Owen Taylor + + * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display): + Add a size_only flag, so when we only need the size, we don't create + useless appearance attributes. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove + duplicate setting of font description. + + * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 + +Wed Apr 26 01:53:23 2000 Owen Taylor + + * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into + EXTRA_DIST. It does not work well when the file that + everything depends on is not in the tarball. + +Wed Apr 26 00:56:14 2000 Owen Taylor + + * gtk/testgtk.c: Some hacks and fixes so that it basically + works when not sitting in the GTK+ build tree. + +2000-05-03 Havoc Pennington + + * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag): + Properly determine the ordering of the tag root and the current + line within the tree. Previous algorithm only worked if the tag + root's immediate parent was the common root of both the current + line and the tag root. + +Wed Apr 26 00:43:00 2000 Owen Taylor + + * gtk/gtktextlayout.c (set_para_values): Fix some bugs in + alignment. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track + the widget text directional dynamically. + + * gtk/gtktextview.[ch]: Added functions to get and set default + wrap mode. + +Tue Apr 25 23:47:38 2000 Owen Taylor + + * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug + in cursor location computation. + +Tue Apr 25 23:22:59 2000 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/ + vadjusment values properly when layout gets smaller. + + * gtk/gtktextview.c (need_repaint_handler): Areas being + passed in are far completely inaccurate, and sometimes + too small, so, for now, just queue a redraw on the + whole visible region. + +2000-04-25 Havoc Pennington + + * gtk/gtktextbtree.c (summary_destroy): new function to + destroy tag summary nodes + (gtk_text_line_next_could_contain_tag): this function was + totally broken if the line passed in wasn't below the tag + root. Fix it. + (gtk_text_btree_first_could_contain_tag): In the tag == NULL + "wildcard" case, we have to do a linear scan. Blah. + (gtk_text_btree_last_could_contain_tag): In tag == NULL case, + we have to do the linear scan + (tag_removed_cb): When a tag is removed from the tag table, + remove the GtkTextTagInfo node from the btree. + (gtk_text_btree_spew): Implement the spew function, for + our debugging pleasure. + +Tue Apr 25 19:40:18 2000 Owen Taylor + + * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix + a problem with referring to the wrong buffer. + + * gtk/gtkentry.c: Fix focus-in/focus-out confusion. + + * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default + font description to gtk_style_new() - otherwise things + don't work without a .gtkrc file. + + * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the + tags table if we create it ourself, too. + + * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since + it was conflicting with XKB modifiers. + + * gtk/gtktextview.[ch]: Add simple support for + GtkIMContext. + +Mon Apr 24 19:34:18 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem + with deletion from last commit. + +Mon Apr 24 19:29:40 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language + in the context from the current locale. + + * gtk/gtkentry.c (gtk_entry_size_request): Use language from the + context, not hardcoded value. + + * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual, + not logical. + +Sun Apr 23 23:39:18 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as + attributes - that doesn't handle partial-glyph selection + properly. Instead use new pango_layout_line_get_x_ranges() + functionality to draw the selection. + + * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x() + now properly handles out-of-range coordinates. + + * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved. + + * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte() + public. + + * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext + for paragraphs opposite to the base direction of the widget. + + * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment. + + * gtk/gtktextlayout.c: Don't split segments on marks, since that + causes Arabic words to reshape as you cursor through. + + * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual + cursor position when moving vertically with the arrow keys and + scrolling with page-up/page-down. (Arrow keys save only the X, + scrolling saves both X and Y.) + + This means you can line-up / line-down or page-up / page-down + without losing your place, and also that moving vertically + with the cursor keys keeps the same X position, not the same + character count: + + * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical + arrow keys move by display lines, not paragraphs. + +Tue Apr 18 14:16:50 2000 Owen Taylor + + * gtk/gtklayout.c: Make sure that the bin window is at least + as big as the allocation. (Should we also make sure that the + bin window is big enough to completely cover widget->window?) + + * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add + function to get the onscreen rectangle. + + * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account + for offsets in window coordinates. + +Sun Apr 16 16:13:27 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset + confusion. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction + from the widget direction. + + * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): + Add a "direction" attribute. + + * gtk/gtktextview.c: global s/tkxt/text_view/. + + * gtk/testtext.c: Added long block of text in Arabic, to test out + the direction attributes. (Some problems with the shaping system + for arabic become obvious - like the fact the cursor splits words + into unjoined pieces.) + +Fri Apr 14 12:54:34 2000 Owen Taylor + + * gtk/gtktextdisplay.c (render_layout): Add overstrike handling. + + * gtk/gtktextlayout.c: Fix up alignment. + + * gtk/testtext.c: Add some tests for centering, wrapping. + +Fri Apr 14 09:26:22 2000 Owen Taylor + + * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c: + Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs(). + If we wrote GTK+-specific layout-render function this could just replace + the draw_layout() operation in the vtable. + + * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to + pango_layout_get_cursor_pos() and use that function. + + * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it + is a non-static symbol. + + * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y() + with gtk_text_btree_find_line_by_y() + + * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout + renderer that handles GtkTextAppearance attributes. + + * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: + + - Move the values in the style that don't affect geometry into a + GtkTextAppearance structure. + - Change underline to take a PangoUnderline and "font" a string + representation of a font description + - Add a "font_desc" attribute which takes a FontDescription structure. + + * gtk/gtktextlayout.[ch]: + + - Get rid of the display-line list per each line. Instead, we + generate, on demand, a GtkTextLineDisplay structure which] + contains a PangoLayout * and other necesary information + (offsets, cursor locations) for displaying a paragraph. + - Get rid of the code to wrap lines, create display chunks, + etc. Instead, we just go through a paragraph and convert + it into the necessary inputs to a PangoLayout. + - Implement a new attribute type, GtkTextAttrAppearance. This + holds a GtkTextAppearance, and is used to pass colors, + stipple, etc, through from the layout to the display without + having to use lots and lots of individual attributes. + - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos() + in terms of PangoLayout functions. + + * gtk/gtktextview.c: + + - Handle passing the necessary PangoContext to the layout + - Some fixups in painting to deal with the automatic backing store + and offsetting of GTK+-1.4 + - Add a style_set handler so that the default style reacts + properly to theme changes. + + * gtk/gtktext?*.[ch]: Random code-style fixes. + + * gtk/testtext.c: Substitute in languages that Pango handles now for Thai + +Mon Apr 10 10:33:45 2000 Owen Taylor + + * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget, + in original form preparatory to Pango-ization and gdkimcontext-ization. + +Thu Apr 6 19:25:39 2000 Owen Taylor + + * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs, + so that we can derive from gtkimcontext in language bindings properly. + +Thu Apr 6 16:02:52 2000 Owen Taylor + + * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval. + Add a compose table including (almost) all the compose combinations + from X. This is 6k of static, shared data as opposed to 50k or so of dynamic + data in the XIM implementation. + + * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval): + Moved functions to convert keyvalues from and to unicode here from + the win32 port and made them public. + +Wed Apr 5 16:37:29 2000 Owen Taylor + + * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1. + +Wed Apr 5 16:27:45 2000 Owen Taylor + + * gtk/gtkimcontext.[ch]: Base class for new input context system + + * gtk/gtkimmulticontext.[ch]: Proxy input context that allows + the real input context implementation to be loaded from modules + and switched on the fly. + + * gtk/gtkcontextsimple.[ch]: Simple implementation of an input + context that just does direct keysymbol => unicode translation. + + * gtk/gtkentry.[ch]: Start switching editing over to using + GtkInputContext. (No handling of preedit yet.) + +Wed Apr 5 15:48:41 2000 Owen Taylor + + * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too + many substitutions. (klass should not be subsituted.) + +Wed Apr 5 00:18:14 2000 Owen Taylor + + * configure.in: Add checks for Pango + + * configure.in docs/Makefile.am: Add test for sgml2html + and allow 'make dist' without building html, but print out + warnings in that case. (For making snapshots) + + * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am: + Add Pango libraries and C flags + + * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c: + Add function (gdk_draw_layout) to draw a pango layout. + + * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions + for getting Pango contexts for GDK. + + * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set() + + * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional + editing. + + * gtk/gtkentry.c: Hack in simple Hebrew input with direct + keysym => unicode translations. More languages can be added + here, but real input-method support is needed. + + * docs/Changes-1.4.txt: Added note about entry behavior. + + * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions + to set the reading direction for a widget and the global direction. + Add test which allows toggling the global direction. Two private + flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR) + + * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c + gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c + + * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango + + * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking, + underlining now handled by Pango. + + * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription + to RCStyle and Style. (Having both this and the old font name and GdkFont + is temporary.) + + * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added + convenience functions for creating contexts and layouts for widgets. + + * gtk/testgtk.c: Enhance label tests with multilingual labels. + +2000-05-29 Jonathan Blandford + + * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the + titles to be active, even if they aren't visible. + (gtk_clist_column_titles_passive): Ditto. + +2000-05-21 Nils Barth + + * gtkmenu.c: + * gtkmenu.h: + * gtktypeutils.h: Spelling/grammar fixes in comments. + +Tue May 23 12:25:07 CEST 2000 lupus + + * gdk/nanox/*.h: add missing header files. + +Fri May 19 11:52:59 2000 Tim Janik + + * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set + send_event to TRUE. + (gtk_drawing_area_size): queue a resize. + +Sun Mar 26 03:21:28 2000 Tim Janik + + * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing + the handlers, also invalidate them. bug nailed down by Karl Nelson + . + +Fri May 19 06:49:23 2000 Tim Janik + + * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle + "(nil)" foundries, patch from Grigorios Magklis. + + * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash + on non-available fonts, based on a patch by Grigorios Magklis + . + +2000-05-18 Elliot Lee + + * gdk/x11/gdkregion-generic.c: If a region does not have any + rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT + instead of GDK_OVERLAP_RECTANGLE_IN. + +2000-05-17 Jonathan Blandford + + * gtk/gtklayout.c (gtk_layout_map): Remove references to + OFFSCREEN, as it is no longer necessary. + +Wed May 17 10:52:12 2000 Owen Taylor + + * gtk/gtkcolorsel.c: Patch from David Santiago + to change things so that the + indicator of the active palette entry is done independently, + not via the focus, since it should always be visible. + +2000-05-17 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same + refcount leaks as in the X11 backend. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging + cosmetics. + + * gdk/win32/gdkwindow-win32.c: Similar changes as in X11 + backend. Add _gdk_windowing_window_destroy(). + + * gtk/gtkcolorsel.c: Include correct backend-specific header. + Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR + either, but these probably do exist on nanox?) + + * gtk/gtkhsv.c: Use G_PI (fresh from ) instead of M_PI + which isn't necessarily defined by . + + * gtk/gtkobject.c (gtk_object_init): Don't go up the class + ancestry past GtkObject. + + * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import + from DLL on Win32. + + * gtk/gtk.def: Update corresponding to recent changes. + + * gtk/makefile.{cygwin,msc}: Updates. + +Fri May 12 18:46:51 2000 Owen Taylor + + * docs/Changes-1.4.txt: A bit of editing. + + * gdk/gdkwindow.c (_gdk_window_clear_update_area) + * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function + to clear the update area for the window, and clear it + when hiding a window. + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore + if window destroyed. + + * gdk/gdkwindow.c (gdk_window_end_paint): Likewise. + + * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move + gdk_window_destroy() to the generic code, since there was a lot of + window-system-independent logic it in. Add a function: + + _gdk_window_destroy() + + to the internal API to destroy a window without unreferencing it. + Add a function: + + _gdk_windowing_window_destroy() + + That does the windowing-system-dependent part of destroying + the window. + +Fri May 12 11:07:41 2000 Owen Taylor + + * gtk/testgtk.c: Fix various memory leaks of pixmaps. + +Fri May 12 11:06:10 2000 Owen Taylor + + * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): + Make gtk_widget_shape_combine_mask() keep a reference count on + the pixmap since it keeps it around. + +Fri May 12 10:53:29 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount + leak. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount + leak with event filters. + +Thu May 11 14:29:44 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the + signal handlers with the right data arguments. (Fixes + some warnings when a widget was repeatedly set as a drag + destination.) + + * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the + window so we can avoid avoid setting the DND properties on the + toplevel window repeatedly. + +2000-05-13 Tor Lillqvist + + * gdk/win32/gdkwin32.h: Define more message types missing from + mingw headers. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY + call gdk_window_destroy_notify(). It was never called. This + probably meant that the GdkWindow was never freed. Thanks Owen for + noticing (!). + + * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark + window as destroyed before calling DestroyWindow(). DestroyWindow() + causes a call to the window procedure (gdk_WindowProc), which + calls gdk_event_translate(), which calls + gdk_window_destroy_notify(), which gets confused unless the window + is set as destroyed. + + * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename + this function to indicate it's win32 only. Put inside #ifdef + G_ENABLE_DEBUG. + + * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New + debugging function. (gdk_event_translate:) Add a default branch + that uses the above function to print debug messages with all + Windows messages symbolically. + + * gdk/win32/gdkprivate-win32.h: Declare it, and + gdk_win32_color_to_string, but only if G_ENABLE_DEBUG. + +Fri May 12 20:07:32 2000 Tim Janik + + * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a + public header file. + +Fri May 12 17:13:32 2000 Tim Janik + + * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition. + + * gtk/gtktext.c: made the adjustments no-construct args, simply + provide default adjustments. + (gtk_text_destroy): release adjustments. + + * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the + adjustment argument non-construct. + + * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here, + instead of in finalize. + (gtk_progress_get_text_from_value): + (gtk_progress_get_current_text): + (gtk_progress_set_value): + (gtk_progress_get_percentage_from_value): + (gtk_progress_get_current_percentage): + (gtk_progress_set_percentage): + (gtk_progress_configure): ensure an adjustment is present. + +Thu May 11 01:24:08 2000 Tim Janik + + * gtk/gtkcolorsel.[hc]: + * gtk/gtkcolorseldialog.[hc]: + * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain + their parent implementation, use bit fields for boolean values, don't + create unused widgets, usage of glib types, braces go on their own + lines, function argument alignment, #include directives etc. etc. etc.. + + * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h. + +Wed May 10 23:29:52 2000 Tim Janik + + * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips. + + * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state + of NULL. + + * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references + to freed data. + (gtk_combo_destroy): don't keep a pointer to a destroyed window. + + * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer + to NULL when the toplevel is getting destroyed. + (gtk_menu_set_tearoff_state): same here for the tearoff_window. + (gtk_menu_destroy): + (gtk_menu_init): store the information of whether we have to + readd the initial child ref_count during destruction in a new + GtkMenu field needs_destruction_ref_count. + + * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it + here, those reading: learn from my mistake! ;) + in order for set_?adjustment to support a default adjustemnt if + invoked with an adjustment pointer of NULL, the code read (pseudo): + if (v->adjustment) unref (v->adjustment); + if (!adjustment) adjustment = adjustment_new (); + if (v->adjustment != adjustment) v->adjustment = ref (adjustment); + now imagine the first unref to actually free the old adjustment and + adjustment_new() creating a new adjustment from the very same memory + portion. here, the latter comparision will unintendedly fail, and + all hell breaks loose. + (gtk_viewport_set_hadjustment): + (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL + after unreferencing it. + + * gtk/gtkcontainer.[hc]: removed toplevel registration + functions: gtk_container_register_toplevel(), + gtk_container_unregister_toplevel() and + gtk_container_get_toplevels() which had wrong semantics + anyways: it didn't reference and copy the list. + + * gtk/gtkwindow.c: we take over the container toplevel registration + bussiness now. windows are registered across multiple destructions, + untill they are finalized. the initial implicit reference count + users are holding on windows is removed with the first destruction + though. + (gtk_window_init): ref & sink and set has_user_ref_count, got + rid of gtk_container_register_toplevel() call. add window to + toplevel_list. + (gtk_window_destroy): unref the window if has_user_ref_count + is still set, got rid of call to + gtk_container_unregister_toplevel(). + (gtk_window_finalize): remove window from toplevel list. + (gtk_window_list_toplevels): new function to return a newly + created list with referenced toplevels. + (gtk_window_read_rcfiles): use gtk_window_list_toplevels(). + + * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange + adjustment a non-construct arg. + * gtk/gtkvscale.c (gtk_vscale_class_init): likewise. + * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise. + * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise. + + * gtk/gtkrange.c: added some realized checks. + (gtk_range_destroy): get rid of the h/v adjustments in the + destroy handler instead of finalize. remove timer. + (gtk_range_get_adjustment): demand create adjustment. + + * gtk/gtkviewport.c: made h/v adjustment non-construct args. + we simply create them on demand now and get rid of them in + the destroy handler. + (gtk_viewport_destroy): get rid of the h/v adjustments in the + destroy handler instead of finalize. + (gtk_viewport_get_hadjustment): + (gtk_viewport_get_vadjustment): + (gtk_viewport_size_allocate): demand create h/v adjustment + if required. + + * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the + gtk_widget_real_destroy () functionality. + (gtk_widget_real_destroy): reinitialize with a new style, instead + of setting widget->style to NULL. + +Fri May 5 13:02:09 2000 Tim Janik + + * gtk/gtkcalendar.c: + * gtk/gtkbutton.c: ported _get_type() implementation over to + GType, either to preserve memchunks allocation facilities, + or because Gtk+ 1.0 GtkTypeInfo was still being used. + + * gtk/gtkobject.[hc]: derive from GObject. ported various functions + over. prepare for ::destroy to be emitted multiple times. + removed reference tracer magic. chain into GObjectClass.shutdown() + to emit ::destroy signal. + + * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being + fundamental. + + * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init() + cludge. + + * gtk/gtksocket.c: + * gtk/gtkplug.c: + * gtk/gtklayout.c: + * gtk/gtklabel.c: + * gtk/gtkargcollector.c: + * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT + not being a fundamental anymore, and to work with the new + type system (nuked fundamental type varargs clutter). + + * gtk/*.c: install finalize handlers in the GObjectClass + part of the class structure. + changed direct GTK_OBJECT()->klass accesses to + GTK_*_GET_CLASS(). + changed direct object_class->type accesses to GTK_CLASS_TYPE(). + + * gtktypeutils.[hc]: use the reserved fundamental ids provided by + GType. made most of the GTK_*() type macros and Gtk* typedefs + simple wrappers around macros and types provided by GType. + most notably, a significant portion of the old API vanished: + GTK_TYPE_MAKE(), + GTK_TYPE_SEQNO(), + GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST, + GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST, + GTK_TYPE_ARGS, + GTK_TYPE_CALLBACK, + GTK_TYPE_C_CALLBACK, + GTK_TYPE_FOREIGN, + GtkTypeQuery, + gtk_type_query(), + gtk_type_set_varargs_type(), + gtk_type_get_varargs_type(), + gtk_type_check_object_cast(), + gtk_type_check_class_cast(), + gtk_type_describe_tree(), + gtk_type_describe_heritage(), + gtk_type_free(), + gtk_type_children_types(), + gtk_type_set_chunk_alloc(), + gtk_type_register_enum(), + gtk_type_register_flags(), + gtk_type_parent_class(). + replacements, where available are described in ../docs/Changes-1.4.txt. + implemented compatibility functions for the remaining API. + + * configure.in: depend on glib 1.3.1, use gobject module. + +Thu May 11 12:39:50 2000 Owen Taylor + + * TODO.xml: Various updates to current status. + +Wed May 10 20:25:04 2000 Owen Taylor + + * gtk.m4: Print out version when test succeeds. + +Wed May 10 16:38:17 2000 Owen Taylor + + * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch] + gtk/gtkhsv.[ch]: Color selection dialog rewrite. + + (Original triangle color selector from Simon Budig + , Cleaned up and rewritten for GTK+ by + from Jonathan, Havoc, and Federico. Merge into GTK+ done by David + Santiago ) + + * gtk/gtkcolorseldialog.[ch]: Split color selection dialog + out into a separate widget. + + * gtk/testgtk.c: Add some checkbuttons for toggling palette + and opacity controls. + +Wed May 10 16:08:09 2000 Owen Taylor + + * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that + snuck in prematurely. + +2000-05-07 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I + had deleted a ! operator by mistake, which caused + GDK_SELECTION_CLEAR events never to be generated, which caused + only the first copy to the clipboard from an gtkeditable to + actually cause a copy to the Windows clipboard. + +2000-05-06 Tor Lillqvist + + * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc + compilation, too. Current mingw gcc distributions include the + necessary headers. Also the necessary IIDs are now in mingw + headers/libraries, and own definitions unnecessary. + + More hacking on OLE2 DND, still doesn't work though, and thus + ifdeffed out. + + * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from + here, too. + +Sat, 6 May 2000 13:31:34 +0200 Paolo Molaro + + * gdk/nanox/*: nano-X port work in progress. + * gdk/simple.c: simple test for Gdk. + * README.nanox: notes about the port: read this first! + * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile + with nano-X. + +Fri May 5 11:18:47 2000 Owen Taylor + + * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move + gdk_window_clear() into common code, implement in terms of + gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was + not redirected to the backing rectangle. + +Wed Apr 26 01:53:23 2000 Owen Taylor + + * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into + EXTRA_DIST. It does not work well when the file that + everything depends on is not in the tarball. + +Tue Apr 25 22:20:41 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error + with recursion where process_updates() is called from + an expose handler. (GtkTextView is highly broken in + doing this, but it should work, so it is a nice test + case.) + +Sun Apr 23 23:39:18 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully + handle the case where updates are queued during processing of + updates. + +Tue Apr 18 14:16:50 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume + window is on gdk_display - use that instead of segfaulting. + +Thu May 4 02:04:46 2000 Tim Janik + + * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are + broken and require an empty arg, give it to them. + +Fri Apr 28 19:34:32 2000 Tim Janik + + * gtk/gtklabel.h: indentation fixes. + +2000-05-02 Tor Lillqvist + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to + draw too narrow or too low arcs, they seem to fail, at least with + some display drivers. + + * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR. + + Large changes to the Win32 backend, partially made necessary by + the changes to the backend-independent internal + structures. Attempts to implement similar backing store stuff as + on X11. The current (CVS) version of the Win32 backend is *not* as + stable as it was before the no-flicker branch was merged. A + zipfile with that version is available from + http://www.gimp.org/win32/. That should be use by "production" + code until this CVS version is usable. (But note, the Win32 + backend has never been claimed to be "production quality".) + + * README.win32: Add the above comment about versions. + + * gdk/gdkwindow.c: Don't use backing store for now on Win32. + + * gdk/gdk.def: Update. + + * gdk/gdkfont.h: Declare temporary Win32-only functions. Will + presumably be replaced by some more better mechanism as 1.4 gets + closer to release shape. + + * gdk/makefile.{cygwin,msc}: Update. + + * gdk/win32/*.c: Correct inclusions of the backend-specific and + internal headers. Change code according to changes in these. Use + gdk_drawable_*, not gdk_window_* where necessary. + + * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not + our old DND. + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try + to interpret single characters as UTF-8. Thanks to Hans Breuer. + Use correct function name in warning messages. + + * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the + GSourceFuncs gdk_event_prepare and gdk_event_check. + (gdk_event_get_graphics_expose): Do implement, use + PeekMessage. Thanks to Hans Breuer. + (event_mask_string): Debugging function to print an GdkEventMask. + (gdk_pointer_grab): Use it. + + * gdk/win32/gdkfont-win32.c: The Unicode subrange that the + (old) book I used claimed was Hangul actually is CJK Unified + Ideographs Extension A. Also, Hangul Syllables were missing. + Improve logging. + + * gdk/win32/gdkgc-win32.c: Largish changes. + + * gdk/win32/gdkim-win32.c (gdk_set_locale): Use + g_win32_getlocale() from GLib, and not setlocale() to get current + locale name. + + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to + gdkwin32.h, similarily as in the X11 backend. + + * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix, + assignment was used instead of equals in if test. Thanks to Hans + Breuer. + + * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of + the X11 version. + + * gdk/win32/makefile.{cygwin,msc} + * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the + path to the Win32 headers that works also with the mingw compiler. + + * gtk/gtkstyle.c: Include . + +2000-04-26 Havoc Pennington + + * gtk/gtklabel.c (gtk_label_get_text): Add this function, + replacing the broken gtk_label_get () + +2000-04-15 Havoc Pennington + + * gdk/gdkdnd.h: clean up enum format, remove extra comma, + this keeps scanner scripts from getting confused. + + * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the + data, rather than void + +2000-04-15 Tor Lillqvist + + * gtk/gtkclist.c (gtk_clist_motion) + * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event + with is_hint FALSE, get x and y from the event. They used to be + used uninitialised. The Win32 backend never sends motion events + marked as hints. This for instance fixes the annoying file and + font selector behaviour in the Win32 version. + +2000-04-14 Tor Lillqvist + + * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and + gtk_private_n_signals variables, they are used by some software, + sigh. + + * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the + installation directory from the Registry, where the installer + should have put it. + +Fri Apr 7 17:19:27 2000 Owen Taylor + + * gdk/x11/Makefile.am: Fix problem with installation directory for + gdkx.h + + * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago + so that when selecting menus with the + mouse, the first item will not be selected, but when selecting + with an accelerator, or navigating left-right on a menubar with + the menus popped up, the first item will be selected. + +2000-04-05 Dan Damian + + * configure.in: Added "ro" to ALL_LINGUAS. + +Wed Apr 5 00:08:36 2000 Owen Taylor + + * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy + indentation. + + * Makefile.am (EXTRA_DIST): Fix typo. + + * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk + to catch gdkconfig.h + + * gtk/gtkitemfactory.c: Added FIXME. + +2000-03-30 Jonathan Blandford + + * gtk/gtkpaned.c (gtk_paned_get_position): oops. + s/return_if_fail/return_val_if_fail/g and add a return value. + +Mon Mar 27 20:56:14 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up + merge slipup. + + * gdk/gdkinput.h: Fix missing line from merge. + +Mon Mar 27 20:39:49 2000 Owen Taylor + + * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h + instead of gdkprivate.h. + +Sun Mar 12 15:19:24 2000 Owen Taylor + + * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix + parent class to correctly be GtkDialogClass. + +Thu Feb 24 23:58:21 2000 Owen Taylor + + * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of + toplevel windows and their immediate children by their parents, + since the size of toplevel windows is out of our immediate + control and we don't get any real benefit from trying to track + this size for clipping. + + * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag + for input_only windows. + + * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag + to fix some hacks and make sure that we don't try to set the + background of input only windows. + +Thu Feb 24 18:11:46 2000 Owen Taylor + + * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for + the _really_ internal stuff, and leave gdkprivate.h for the fake private + stuff that we've traditionally exposed. + + * gdk/**.c: Use gdkinternals.h where appropriate. + + * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h + not include gdkprivate-x11.h, move all stuff of conceivable public + interest into gdkx.h; keep all really private stuff in + uninstalled header gdkprivate-x11.h. + + * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to + image->image_put on windows through a new function _gdk_window_draw_image() + to allow us to do backing store for images. (Sort of ugly) + + * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics + contexts locally so that we can offset them properly when drawing + onto backing pixmaps. + + * gdk/gdkinput.h: Reindented + + * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background + pixmap or color for the window, so we can properly initialize + our double-buffer pixmaps, and also so that we temporarily set + a background of None while scrolling. + + * gdk/gdkregion.h: Revise region boolean operators to have an + interface that is actually convenient - switch from creating new + regions on every op, to "methods" that modify existing regions + (A = A OP B). 3 argument forms which allow dest == src, would also + be possible, but the current interfaces seem to map nicely + onto what needs to be done. (There is quite a lot of region + code in GDK now.) + + * gdk/gdkregion.h: Add constructor from rectangle and a copy + operator. + + * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c, + gdkpoly-generic.h: Copy region code from Xlib, switch it over + to 32 bit coordinates, modify it to be mostly GTK+ style + and to have interfaces that match gdkregion.h. + + * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for + double-buffered drawing. gdk_window_begin_paint_{rect,region}() + create a backing pixmap and redirect all drawing to + that backing pixmap until a matching gdk_window_end_paint(). + + * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c: + Create a special drawable class for GtkWindow's that + redirects the drawing to the backing pixmap as necessary + and then calls the real operations in _gdk_windowing_window_class. + + * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c: + Store invalid region for each window. Generate expose events for invalid + region in an idle. This replaces both the expose compression + and the redrawing queuing in GTK+. It is both more efficient and + simpler than either one individually and far more so then the + combination. + + * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h: + Emulate 32 bit coordinates for windows with 16 bit coordinates + by offsetting drawing, guffaw scrolling techniques and + mapping/unmapping child windows as necessary. + + * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes, + where, when invalid regions are processed, the region is stored, + and if expose events come in that are detectably duplicate + the processed exposes (by comparison of event serial numbers), + the stored region is subtracted out of those exposes. + + * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of + regions newly exposed when scrolling or resizing windows. + This, combined with forcing processesing of queued invalidated + regions, gives nice flicker-free scrolling. + + * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of + invalidated regions after every scroll. + + * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate + emulation in GDK. Its, for all practical purposes just a + GtkViewport/GtkFixed hybrid now. + + * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11 + (16-bit) structures as necessary instead of just casting. + + * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code + in terms of the structures from gdkregion-generic.c, using appropriate + offsets from GDK to X11 coordinates. Cache clip mask and + origin and ts origin locally and only flush to the server + when drawing, to avoid constantly setting and resetting these + values when offsetting GC's for scrolling and backing pixmaps. + + * gdk/x11/gdkinput-x11.c: Fix leak of axes structures. + + * gtk/gtkcontainer.c: Call process_all_updates at end + of resizing to reduce flicker. (Avoids having redraw + lag arbitrarily behind resize under some circumstances) + + * gtk/gtkentry.c: Remove old backing store code, and simply take + advantage of the new backing store capabilities of GDK. + + * gtk/gtkmain.c: Simple implementation of widget backing + store - simply push a paint while handling each expose. + (Should really be configurable widget for widget.) + + * gtk/gtkwidget.c: Remove all the old complicated redraw + code, and simply invalidate the GDK windows from + gdk_window_queue_clear(), etc. (Sigh, so much carefully + debugged complexity ... gone to the winds.) + + Remove all the code for suppressing expose events while + resizes are pending; this isn't needed since the invalid + areas won't be processed until after the resizes are + processed, since they are in a lower priority idle. + +Thu Feb 24 15:37:41 2000 Owen Taylor + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width + and height of dest rectangle for non-intersecting rectangles. + +Sun Feb 20 16:47:31 2000 Owen Taylor + + * gtk/gtkwidget.h: Make GtkAllocation just a typedef + for GdkRectangle. + +Sun Feb 20 11:27:00 2000 Owen Taylor + + * gdk/gdk{events,image,private,types,window}.h + gdk/x11/gdkinputprivate.h: Change all coordinates + from int16 to int. Also, Change width and height from + unsigned to signed to avoid all the stupid C + signedness bugs. + +Sat Feb 19 12:01:53 2000 Owen Taylor + + * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): + Use gdk_drawable_get_depth instead of gdk_drawable_get_visual. + Add some more detailed checking. + + * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth): + New function to retrieve the depth of a drawable. + + * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth + field, reorder fields to save memory. + +Mon Dec 13 14:06:03 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion + of the background image instead of scaling the background down to + a line. + + * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious + which temporarily set slider to wrong size. + + * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to + queue_clear(). + +Wed Nov 17 18:36:05 1999 Owen Taylor + +2000-03-23 Jonathan Blandford + + * gtk/gtkpaned.c (gtk_paned_get_position): add getter. + +2000-03-17 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c: Remove the #ifndef + USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage. + + * gdk/win32/gdkfont-win32.c + * gdk/win32/gdkproperty-win32.c + * gdk/win32/gdkselection-win32.c + * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are + now declared such. + +Wed Mar 15 02:59:38 PST 2000 Manish Singh + + * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic + +Mon Mar 13 18:37:55 2000 Owen Taylor + + * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty() + is called without trapping X errors. + +Fri Feb 25 10:48:53 2000 Owen Taylor + + * gtk/gtkrc.*: Fix problem where stray '"' characters found their + way into the fontset lists. + +Tue Feb 22 08:52:52 2000 Tim Janik + + * gtk/gtkthemes.h: add extern "C" scope. + +Mon Feb 21 20:16:42 2000 Lars Hamann + + * gtk/gtkclist.c: applied patch from Guy Harris + to make appends to the list constant. (gtk-guy-990901-0.patch) + +Mon Feb 14 22:50:10 2000 Tim Janik + + * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal() + for the typename hash table. + +Mon Feb 14 15:01:23 2000 Owen Taylor + + * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks + to make sure we never divide by zero. + (Problem pointed out by Michal Jaegermann ) + +Mon Feb 14 12:29:38 2000 Owen Taylor + + * gtk/gtkfontsel.c: Apply patch from + SHIRASAKI Yasuhiro to make font selector work a little + better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.) + + Also, some cleanups in atom handling. + +Sun Feb 13 08:02:21 2000 Tim Janik + + * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer, + not GtkWidget. + +Fri Feb 11 02:19:32 2000 Tim Janik + + * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): + * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): + * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some + more guint wrap-around bugs before going to bed. + +Thu Feb 10 16:16:35 2000 Tim Janik + + * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against + guint wrap arounds in allocation.width. + + * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking + process untill we fit the allocation given. + +Tue Feb 8 09:38:29 2000 Tim Janik + + * gtk/gtkwidget.c: + (gtk_widget_unrealize): guard widget access with ref/unref + around signal emission. + (gtk_widget_hide): same here, but also check its destroyed + state before queueing a resize. + +Tue Feb 8 03:05:55 2000 Tim Janik + + * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead + of gtk_default_insensitive_bg as insensitive base color. + + * gtk/gtktext.c (gtk_text_style_set): set the background color according + to the widget's state. + (gtk_text_realize): same here. + (gtk_text_state_changed): same here. + (draw_bg_rect): compare background color against base[] from + GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL. + +Mon Feb 7 04:01:55 2000 Tim Janik + + * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when + grabs are active, unless a delete event is send to the toplevel + of the currently grab holding widget. + +Sun Feb 6 10:13:15 2000 Owen Taylor + + * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove + debugging g_print's. + +Fri Feb 4 15:54:54 2000 Owen Taylor + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't + ever make the scrolled-window requisition ever depend on the + visibility state of the scrollbars for the AUTOMATIC policy. + This breaks the GTK+ requisition model, and causes loops. + +Fri Feb 4 15:09:12 2000 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for + the default font to avoid problems with XFree86-4.0 where the + default charset is iso10646-1, not iso8859-1. + +Thu Feb 3 14:58:48 PST 2000 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release) + + * gtk/Makefile.am: minor cosmetic consistency tweak + +Thu Feb 3 14:46:01 2000 Owen Taylor + + * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set + the activate_time to 0, so that we handle a quick + press/release press/release properly and don't suppress + the second release. (Red Hat bug #7545) + +Wed Feb 2 22:25:17 2000 Tim Janik + + * gtk/gtkctree.c (row_delete): + (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy + bugs with destruction notifier, *always* update internal + structures *before* calling user code. + +Sun Jan 30 20:10:52 2000 Lars Hamann + + A few more fixes for bug #5487, #2051, #2677. + * gtk/gtkclist.c : + (gtk_clist_button_press): Reset clist->anchor to -1 if event->type is + not GDK_BUTTON_PRESS. + (resync_selection): resync only if selection_mode is + GTK_SELECTION_EXTENDED + * gtk/gtkctree.c (resync_selection): same here + +Sun Jan 30 12:29:20 2000 Owen Taylor + + * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for + gdk_drag_get_selection() and gtk_menu_detach(). + + [ From Jeroen Ruigrok/Asmodai ] + +Sat Jan 29 10:11:56 2000 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_size_request): + page->tab_label can be NULL. + +2000-01-25 Havoc Pennington + + * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative + arg is boolean + + * gdk/gdkselection.c (gdk_selection_owner_set): return boolean + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean + + * gdk/gdkproperty.c (gdk_property_get): return boolean + + * gdk/gdkinput.c (gdk_input_set_mode): return boolean + + * gdk/gdkim.c (gdk_im_ready): return boolean + + * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg + + * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild + glib clash, should fix glib) + + * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg + (gdk_get_show_events): return gboolean, and canonicalize + to TRUE/FALSE + + * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the + colormap is private + (gdk_colors_alloc): gboolean whether to be contiguous + (gdk_color_equal): return gboolean since we are a predicate + and not a qsort() (this looks semi-wrong due to glib breakage, + IMO glib should be fixed) + + * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg + (gdk_get_use_xshm): return gboolean + (gdk_pointer_is_grabbed): return gboolean + + * gdk/gdk.h: Change prototypes to match all the above changes, + and re-run egtk-format-protos as required. + +Fri Jan 28 12:28:17 2000 Owen Taylor + + * gtk/gtkctree.c (resync_selection): + * gtk/gtkclist.c (resync_selection): + + Return immediately if clist->drag_pos < 0. This is a workaround + for the corrupt state that the clist gets into when a + GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press(). + + Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel. + + * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized + variable from recent commit. + +Thu Jan 27 15:22:09 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit. + +Thu Jan 27 18:00:55 2000 Tim Janik + + * gtk/Makefile.am: prefix all autogenerated source that get build in + $(srcdir) with $(srcdir)/, so make doesn't assume they got generted + in builddir. since we subsequently cd into srcdir for autogeneration, + the paths have to be stripped from the target file names, thusly we + use $(@F) as target names now. + put a comment about configure.in's --disable-rebuilds option, + which can be used for non-writable source directories, for development + setups though, srcdir has to be *writable*. + +hu Jan 27 00:15:03 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions): + Finish the job of allowing event to be NULL. + (Fixes bug #4283, reported by Chris Blizzard) + + * gtk/gtkentry.c (entry_adjust_scroll): When calculating + things so that the cursor appears on screen, properly + take into account INNER_BORDER. + (Fixes bug #4754, reported by Antonio Campos) + +Wed Jan 26 23:12:28 2000 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_map): Don't + show the tab_label unless it itself is visible. + + gtk/gtknotebook.c (gtk_notebook_size_request): + Do a better job of making sure that the visibility + of the tab label corresponds to whether it should + be mapped or not. + +Wed Jan 26 21:17:03 2000 Owen Taylor + + * gtk/gtkoptionmenu.c (gtk_option_menu_position): + Use the requisition, not the allocation, since the + allocation has not necessarily been computed yet. + (Pointed out by Eugene Osintsev) + +Wed Jan 26 19:44:25 2000 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_new): Dont' set + style/base[GTK_STATE_INSENSITIVE] both to + gtk_default_insensitive_bg! + (Bug #2187, reported by Jonathan Blandford) + + * gtk/gtkaccelgroup.c (gtk_accelerator_valid): + Add Alt_L, Alt_R to list of invalid accelerators. + (Bug #3736, reported by Vlad Harchev) + +Wed Jan 26 19:01:56 2000 Owen Taylor + + * gtk/gtkfilesel.c (open_ref_dir): Fix several + bugs which occured after an attempt to open + invalid home directory left cmpl_state->reference_dir == NULL. + + - completion on files in home directory didn't work + - completion on an empty string caused segfault + + (Bug #3678, reported by Steve Ratcliffe) + + * gtk/gtkscale.c (gtk_scale_get_value_width): Fix + cut and paste error that was causing scales to + be incorrectly positioned. + (Bug #2956, + patch from Steve Ratcliffe ) + +2000-01-27 Shirasaki Yasuhiro + + * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs + when checking for dcgettext, if we've found we needed + it for dgettext. ++ +Wed Jan 26 18:06:07 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore + queue_clear on NO_WINDOW widgets during a reparent, + since at that point the window and widget heirarchies + are out of sync. This stops crashing in some cases + (the scrolled window reparent test, for instance), and + _probably_ won't cause drawing errors. + + * gtk/testgtk.c: Make the reparenting-a-scrolled-window + test do what it was supposed to do and be robust against + window closings, etc. (Bug #2443) + +Wed Jan 26 16:56:54 2000 Owen Taylor + + * gtk/gtkentry.c: Fix return values on mouse events. + (Bug #2686, Sky ) + + * gtk/genmarshal.pl: Fix up handling of FOREIGN. + (pointed out by George Lebl) + + * gdk/gdkcolor.c (gdk_color_copy): Made const-safe. + (From Ettore Perazzoli ) + +Mon Jan 24 10:44:48 2000 Owen Taylor + + * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle + clicks between rows or outside calender area correctly. + (Patch from Damon Chaplin) + + * gtk/gtkclist.c (gtk_clist_set_row_data_full): + * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): + Call destroy function when overwriting existing data. + (Pointed out by Damon Chaplin) + +Tue Jan 25 09:55:41 2000 Owen Taylor + + * gdk/gdk.c: Remove useless #include of , + which was causing problems on various systems with Xmu. + This hasn't been needed for a very long time. + (Fixes #1185 3167) + +Sun Jan 23 22:27:36 2000 Owen Taylor + + * gdk/gdki18n.h: Include when defining + gdk_isw* in terms of is* as a fallback. + (Bug #4106 - Dan Winship ) + +Sun Jan 23 22:12:36 2000 Owen Taylor + + * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't + realize the widget when it is size allocated! + (old, old bug) + + * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed): + Removed unused call to gdk_window_get_size() that + showed up when the above was fixed. + +Sat Jan 22 15:44:30 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_reparent): Correctly + fix up widget->window when the widget is a + NO_WINDOW container widget. + +Sat Jan 22 12:40:48 2000 Owen Taylor + + * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite + to account for the fact that feof() does _not_ + return TRUE on errors, and thus avoid infinite loops + when trying to use gdk_pixmap_create_from_xpm() + on unreadable values. + +Fri Jan 21 18:32:43 2000 Owen Taylor + + * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/. + +Fri Jan 21 16:24:08 2000 Owen Taylor + + * gdk/gdkgc.c (gdk_gc_set_dashes): Change from + gdk_gc_set_dashes to take gint8 instead of gchar to + make it clearer that it is _not_ a NULL terminated string. + + * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c + gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch] + gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string + arguments. + +Thu Dec 30 04:51:05 1999 Tim Janik + + * gtk/gtkvscale.c (gtk_vscale_pos_background): + * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the + background size relative to our allocation, guard against small + allocations, we may have not yet been size allocated. + +Thu Dec 2 10:59:14 1999 Owen Taylor + + * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3, + not just version == 3. We implement all 3 + most of 4 - + (we don't support matching text/plain;charset=iso-8859-1 + to a dest that expects text/plain). We'll still advertise + 3 to be safe, but any client implementing version >= 3 + must interoperate with 3. + +Tue Mar 14 11:53:31 2000 Owen Taylor + + * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground, + background and gc members, add a warning in gtk_tooltips_set_color() + indicating that this function is deprecated. + +Thu Mar 9 22:10:56 GMT 2000 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update: + - Minor cleanups (Emmanuel, me) + - New questions: + I need to add a new signal to a GTK+ widget. Any idea? (timj) + How can I retrieve the text from a GtkMenuItem? (timj) + How do I validate/limit/filter the input to a GtkEntry? (me) + Memory does not seem to be released when I free the list + nodes I've allocated (timj) + +2000-03-07 Tor Lillqvist + + * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes: + (gdk_win32_gdi_failed) New function for reporting errors from GDI, + for which it is no use to call GetLastError onWin9x. + (gdk_other_api_failed) New function, for general error + reporting without calling GetLastError. + (gdk_win32_api_failed) OTOH, this function always calls + GetLastError. (gdk_win32_last_error_string) Remove this function, + GLib has the equivalent now. + + * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to + call them with function name, file name and line number in the + arguments. + + * gdk/win32/*.c: Use the new macros for reporting errors from GDI + functions. + + * gtk/gtk.def: Add some missing entry points. + + * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and + gtk_paned_set_gutter_size, which don't exist any longer, as void. + + Fixes by Hans Breuer: + + * gdk/makefile.msc: Update for debugging. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake + implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or + PS_DASHDOTDOT or PS_DASH styles depending on the number of entries + in the dash_list. + + * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in + the x11 backend. + + * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro. + + * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h. + +2000-03-04 Tor Lillqvist + + * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store + just pixel value of background colour. + + * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function + containing code snippet previously duplicated in a couple of + places. + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use + gdk_colormap_color. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate + GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate + events for autorepeated Shift, Control and Alt keys. Use + gdk_colormap_color. + + * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the + pointer is inside the window the cursor of which we are setting, + call SetCursor immediately. + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: If we don't have the build number stamp + file, use zero. + + * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and + gtk_paned_set_gutter_size as empty. + + * gtk/gtk.def: Remove gtk_paned_set_gutter_size. + +Tue Feb 29 13:10:00 GMT 2000 Tony Gale + + * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h + gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c + docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml + docs/gtk_tut.sgml docs/gtk.texi TODO: + + Spelling/grammar fixes from Martin Buchholz + +Sat Feb 26 11:46:25 GMT 2000 Tony Gale + + * gtk/gtkcalendar.c: Implement num_marked_dates, + and don't emit mutiple day_selected signals on + month_prev. + +2000-02-25 Jonathan Blandford + + * docs/make-todo (lineno): let title and logo be configurable so + that GNOME can use this script too. + + * TODO.xml: added logourl and a title + +Fri Feb 25 11:12:00 2000 Owen Taylor + + * TODO.xml: Added some UI items, and an explanatory + comment at the top of the file. + +Thu Feb 24 09:07:28 2000 Tim Janik + + * TODO.xml: some updates, added abunch of new entries. + a note for those fiddeling with this file, when done + with it, invoke: + $ ./docs/make-todo TODO.xml >/dev/null + and correct output errors before comitting changes. + +Wed Feb 23 22:59:50 2000 Owen Taylor + + * TODO.xml: Added XML-structured TODO file. + * docs/make-todo: python script to turn TODO.xml into + pretty XML output. + +2000-02-23 Jonathan Blandford + + * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to + the function to let it draw the seven dots, instead of the old, + much maligned, method. + (draw_dot): New function to draw a dot. + + * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation + to draw the handle inside the border width as opposed to outside. + Use paint function instead of gdk_draw_point. + + * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation + to draw the handle inside the border width as opposed to outside. + Use paint function instead of gdk_draw_point. + + * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu): + Change indenting to be more GTK like. + +Wed Feb 23 10:54:14 GMT 2000 Tony Gale + + * docs/gtk_tut.sgml: New section on GtkCalendar + * examples/calendar: Update example code + +Tue Feb 22 13:54:12 GMT 2000 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +2000-02-19 Anders Carlsson + + * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE + to prevent the scroll event to be propagated upwards. + +Fri Feb 18 14:37:29 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove + OwnerGrabButtonMask from button entries for + GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE. + + * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL + to the event mask (which will result in button/press release + being added to the event mask on Unix) so scrolling works + for layouts in scroll windows. + + * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK. + + Patch from Anders Carlsson to add + a scroll event. + + * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel + scrolling to the "Test Scrolling" part of testgtk. + + * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal. + + * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched + it against GDK_SCROLL. + + * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new + way of mouse wheel scrolling. + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise. + + * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise. + + * gtk/gtkmain.c: Removed previous mouse wheel hack. + + * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in + gdk_event_mask_table. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added + GdkEventScroll handler. + + * gdk/gdkevents.h: Added GdkEventScroll structure. + +Thu Feb 17 17:10:12 2000 Owen Taylor + + * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford + and Anders Carlsson to change the Paned widgets so that they + can be dragged from anywhere along the length. Also change + the way that this is drawn to make this apparent. + + * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch + from George Lebl to check that option_menu->menu is present + before getting history. + +2000-02-14 Tor Lillqvist + + * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments + before the assertion for non-NULL segment list. + + * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values): + Seems that pattern brushes *must* be 8x8 pixels! At least on my + machine, but it might be display driver dependent. Sigh, so make + sure the stipple is that size. Does Windows suck or what? + + * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few + places. + +2000-02-13 Havoc Pennington + + * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init + refcount to 1 + (gdk_cursor_new): init refcount to 1 + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1 + +2000-02-13 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter + so that we don't have to do unnecessary settings to the HDC. + + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of + gdk_gc_predraw. + + * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where + the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct + GDI paths, call WidenPath to get the outline of the stroken path, + and then fill the outline (with the brush that was built from the + stipple). + + * gdk/win32/gdkgc-win32.c: Factor out common code from + _gdk_win32_gc_new and gdk_win32_gc_set_values into + gdk_win32_gc_values_to_win32values. Use correct colour for + SetBkColor() (Until now the code actually used a random colour in + the call to SetBkColor()... but that didn't show up as not many + GDI APIs use the background colour. Pattern (opaque stippled) + brushes do.) + + * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string, + gdk_win32_api_failed): New functions for error logging. + + * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro + WIN32_API_FAILED to call them, passing function or file name and + line number. + + * gdk/win32/*.c: Use the WIN32_API_FAILED macro. + + * gdk/win32/gdkprivate-win32.h: Store just the pixel values from + GdkColor for foreground and background in GdkGCWin32Data. + + * gdk/makefile.cygwin: Link in the resource object separately. + + * gdk/win32/rc/gdk.rc + * gtk/gtk.rc (New file) + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Update build number in DLLs automatically, + as in GLib. + +Sun Feb 13 08:54:45 2000 Tim Janik + + * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/. + * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): + * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): + * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the + parameters given and cursor->ref_count. coding style fixups. + + * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer, + not GtkWidget. + + * gtk/*.h: applied patch from Mathieu Lacage to + fix up widget macros and add _GET_CLASS() variant. + + * gtk/*.c: some GtkType fixups. + +2000-02-09 Tor Lillqvist + + * gdk/win32/gdkproperty-win32.c + * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW + were reversed. + +2000-02-04 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use + g_filename_to_utf8 to convert the font names Windows gives us from + whatever is the default codepage to UTF-8. + (gdk_font_load_internal) Use g_filename_from_utf8 for conversion + in the other direction. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste + error in debugging output. + +2000-02-02 Tor Lillqvist + + * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width + and height parameters to gdk_window_clear_area(). Not minus one. + +Wed Feb 2 11:58:05 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity + checks if the widget passed to gtk_drag_get_data() was not the + dest widget. + +2000-02-01 Tor Lillqvist + + * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and + g_filename_from_utf8 functions (which were added a moment ago to + GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed + size buffers. + + gtk_file_selection_get_filename returns the filename in the C + runtime encoding. It calls g_filename_from_utf8, but copies the + returned string to a static buffer, which is returned. I think + this is better than returning the result from g_filename_from_utf8 + directly, which would mean all apps that use it would have to free + the return value. Or should this function care about this issue at + all? Maybe a new function with clearly defined semantics. + + * gtk/gtkfilesel.h: Add comment about + gtk_file_selection_get_filename returning the filename in the C + runtime's encoding. + + * README.win32 + * gdk/gdk.def + * gdk/makefile.{cygwin,msc} + * gtk/gtk.def: Updates. + + * gdk/gdkcursor-win32.c: Initialise refcount. + +2000-01-31 Yuan-Chung Cheng + + * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS. + +2000-01-30 Havoc Pennington + + * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of + destroy + + * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned + + * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then + implemented in platform-specific code + + * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c + + * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an + underscore in front + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy): + put an underscore in front + + * gdk/gdkcursor.c: new file, implements + gdk_cursor_ref/gdk_cursor_unref + + * gdk/gdkcursor.h: Refcount GdkCursor + + * gdk/gdkcompat.h (gdk_cursor_destroy): compat + +2000-01-29 Tor Lillqvist + + * gdk/gdkwindow.h + * gdk/gdkpixmap.h: Remove prototypes for renamed functions. + +Tue Jan 25 11:43:21 2000 Owen Taylor + + * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix + structures to properly inherit from GtkWidget not GtkBin. + +Sun Jan 23 20:28:24 2000 Owen Taylor + + * gtk+.spec.in: Added lib/gtk+/include/* to %files + (bug #5178 - Peter Wainright) + + * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h + so that it will be installed. + (bug #4889 - "david d `zoo' zuhn" ) + +Fri Jan 21 16:29:28 2000 Owen Taylor + + * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument + for the GtkStyleClass vtable const. + + * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc + take a const string argument like GtkTranslateFunc. This will + require changes in use code. + +2000-01-19 Tor Lillqvist + + * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct + semantics (to mimic the X11 backend, which just calls XClearArea) + is to check for zero width (and height), and in that case use the + window's width minus x (height minus y). This fixes for instance + some redraw problems with gtkclist, which were easily noticeable + in the gtk file selection widget. + + (gdk_window_new): Don't set WS_EX_TOPMOST for dialog + windows. + +2000-01-13 Tor Lillqvist + + * configure.in + * gdk/Makefile.am + * gdk/x11/Makefile.am + * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright + (bug #5177). + * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown + out later. + +2000-01-09 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore + WM_MOVE for iconified or invisible windows. This fixes various + problems when minimising windows. Thanks to Bernd Herd. + +2000-01-05 Tor Lillqvist + + * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the + backend's draw_lines method, not draw_points. + +2000-01-02 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from + before Owen's reorganisation: Don't have queued_events and + queued_tail statics in this file, but use gdk_queued_events and + gdk_queued_tail. This makes exposure event compression work again. + + (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't + seem to be needed? + +1999-12-30 Tor Lillqvist + + * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include + gdkkeysyms.h to get the GDK_* keysym constants that are needed by + gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case() + doesn't do anything. + + * gdk/gdk.def: Add gdk_xid_table_insert. + + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkevents-win32.c + * gdk/win32/gdkinput-win32.c + + * gdk/win32/gdkwindow-win32.c: Remove the superfluous + extension_events field in the GdkWindowWin32Data struct. Use only + the extension_events field in GdkWindowPrivate. Previously one was + set, and the other one tested, which broke tablet + functionality. Thanks to Keishi Suenaga for pointing this out. + +1999-12-18 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents): + When handling a single character (text length == 1), don't handle + it as if it was UTF-8. + +1999-12-11 Tor Lillqvist + + * Makefile.am: Distribute README.win32. + + * gdk/Makefile.am + * gdk/win32/Makefile.am: Distribute Win32 files. + + * gdk/makefile.msc: New file. + + * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement + after label). + + * gdk/gdkprivate.h: Must mark also gdk_error_warnings and + gdk_error_code as GDKVAR, as they are referred outside GDK. + + * gdk/win32/makefile.msc: Update. + + * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More + tweaks. Check only if at least one of those Unicode subrange bits + we care for is set. If no code page bits are set, guess (wildly) + based on the charset. + + * gdk/win32/gdkinput-win32.c: Remove debugging leftover. + + * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is + non-NULL. + + * gtk/gtkdnd.c + * gtk/gtklayout.c + * gtk/gtkplug.c + * gtk/gtkselection.c + * gtk/gtksocket.c + * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as + appropriate. There must be a cleaner way to handle this? + + * gtk/gtkrc.c: Must include windows.h on Win32. + + * gtk/testgtk.c: No need to include gdkx.h. + + * gtk/makefile.cygwin: Correct invokation of genmarshal.pl. + +1999-12-07 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now, + the rbearing is set to the same as the width, but this should be + fixed. + +1999-12-06 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New + function. If Windows doesn't tell us what Unicode subranges a font + covers, guesstimate based on the codepages it covers. This will + hopefully help those Windows versions or fonts that don't give us + any useful Unicode subrange information with GetTextCharsetInfo. + Call this function in gdk_font_load_internal. + + * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc + minor changes. + +Fri Dec 3 14:09:50 1999 Owen Taylor + + * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history): + New function, long needed. + +Wed Dec 1 22:35:43 1999 Owen Taylor + + * gdk/gdkproperty.h x11/gdkproperty.c: Change + only_if_exists argument of gdk_atom_intern to + bool. + +1999-11-25 Tor Lillqvist + + * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): + Fix two copy&paste errors. + + * gdk/makefile.cygwin: Also rebuild DLL when the static archive in + win32 has changed. + + * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the + GdkWin32SingleFont struct. + + * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode + subranges of loaded fonts. Clear font signature first, in case + GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have + ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte. + + * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw): + Unoffset clip region. + +1999-11-23 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): set + event->any.window before calling filter functions. + +Fri Nov 19 10:34:41 1999 Owen Taylor + + * gtk/gtkgamma.h: Adapt cast macros to standard. + +[ Merges from 1.2 ] + +Tue Nov 16 10:15:54 1999 Owen Taylor + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_path): + If translation does not include a '/', use entire + translation instead of crashing. + +Sun Oct 31 22:21:11 1999 Tim Janik + + * docs/gtk_tut.sgml: + s/gtk_accel_group_attach/gtk_window_add_accel_group/. + +Sat Oct 30 09:09:09 1999 Owen Taylor + + * gtk/gtkselection.c (gtk_target_list_remove): Use + g_list_remove_link, not g_list_remove. + + [ From Geert Bevin ] + +Sun Oct 24 07:41:40 1999 Tim Janik + + * gtk/gtkclist.c (real_undo_selection): commented out g_print() + statement upon unselection (how the heck did that slip in?). + +Sat Oct 23 03:03:08 1999 Tim Janik + + * gtk/gtktext.c (gtk_text_freeze): + (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling + in frozen state (and aparently crashes). patch provided by Anders + Melchiorsen . + +Sat Oct 23 02:53:20 1999 Tim Janik + + * fix insensitive default/focus widget activation, + reported by Matt Goodall . + + * gtk/gtkwindow.c (gtk_window_key_press_event): + (gtk_window_activate_default): + (gtk_window_activate_focus): + return handled=FALSE for actiavtion of insensitive default + widgets. return handled=TRUE for activation of insensitive + focus widgets. don't activate in either case. + +Tue Oct 19 09:55:08 1999 Owen Taylor + + * gtk-config.in (lib_gtk): Switch order of @x_cflags@ + and $glib_cflags to match library order and in the + theory that an old version of GLib is more likely to + be in the include directory for X then vice-versa. + (Bug #2776) + +Tue Oct 19 09:46:49 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE + to determine the locale for fontsets, not LC_MESSAGES; + the user may want English messages with a handling + for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR + will still be broken) (Bug #2891) + +Tue Oct 19 20:36:42 1999 Changwoo Ryu + + * gtk/gtkrc.ko: Fixed the wrong number of "*"'s. + +Tue Oct 19 12:15:13 1999 Changwoo Ryu + + * gtk/gtkrc.ko: Changed the Korean default fontset. + +Fri Oct 8 02:32:47 1999 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug + where when scrolling to the left or top double exposes + were done, causing major slowdowns. + +Thu Oct 7 18:31:55 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset + names to lowercase and alphanumeric, before looking + them up. + + * gtk/Makefile.am: Install codeset variant gtkrc files + with normalized names. + +Thu Oct 7 22:52:42 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even + popup menus when the menu is already visible, but its parent + is still hidden, (happens after tornoff window got hidden). + +Thu Oct 7 11:09:55 1999 Owen Taylor + + * gtk/Makefile.am (install-data-local): Fix + a typo where gtkrc.vi_VN.tcvn5712 wasn't getting + deleted, causing error messages on install. + +Thu Oct 7 11:03:06 1999 Owen Taylor + + * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw + the handle as well, since we now sometimes ignore + exposes on the handle while resizing. + +Wed Oct 6 18:02:31 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid + extra g_free introduced in one of the last one or two + commits. + +Wed Oct 6 16:38:36 1999 Owen Taylor + + * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files + consistent, put each style that a gtkrc.* file creates + in a unique namespace, remove old files before installing. + +Wed Oct 6 14:31:16 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when + gtk_rc_init is called multiple times. (Yes, people who + do that have bugs in their code.) + +Tue Oct 5 11:36:57 PDT 1999 Manish Singh + + * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf. + Remove it since it's generated by the Makefile anyway + +Tue Oct 5 02:43:41 1999 Owen Taylor + + * gdk/gdkinputcommon.h (gdk_input_device_new): Free + device->info.axes for core pointer. + +Thu Sep 30 13:55:25 1999 Owen Taylor + + * gtk/testgtk.c (destroy_idle_test): Rename idle to + idle_id, to deal with obsolete, broken C libraries. + +Mon Sep 27 02:50:15 1999 Owen Taylor + + * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in + allocation->x/y twice! + + * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough() + consistent with gtk_vscale_pos_trough(). + +Sun Sep 26 19:44:34 1999 Owen Taylor + + * gtk/gtkcontainer.c (gtk_container_queue_resize): We may + be queueing a resize on a toplevel container between + the time we show it and when we map it. So, we need + to test GTK_WIDGET_VISIBLE() for toplevels, and only + use GTK_WIDGET_DRAWABLE() for child windows. + +Thu Sep 23 16:41:03 1999 Owen Taylor + + * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS + (fixes bug #2144) + +Fri Sep 24 00:51:45 1999 Tim Janik + + * gtk/gtkcontainer.c (gtk_container_queue_resize): check for + container DRAWABLE (instead of VISIBLE), so we don't queue + resizes on non-toplevel containers. + +Sun Sep 19 18:13:31 1999 Owen Taylor + + * gtk/gtkselection.[ch]: Make the data argument + const guchar *. + +Sat Sep 18 21:27:40 1999 Owen Taylor + + * gtk/gtkwindow.c: Try to behave sensibly if + the focus widget is the window itself. (Should + we allow this at all?) + +Fri Sep 17 09:57:15 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_set_sensitive): + * gtk/gtknotebook.c (gtk_notebook_set_scrollable): + * gtk/gtknotebook.c (gtk_notebook_set_show_border): + * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args + in prototypes and implementations consistent (Tomas Ogren). + + * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag + before the widget is unparented (reported by damon). + + * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char, + since we provide unsigned data anyways. + +Thu Sep 16 21:32:01 1999 Owen Taylor + + * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay + the call to gtk_tooltips_layout_text() until later. + + * gtk/gtktooltips.c (gtk_tooltips_draw_tips): + Call gtk_widget_ensure_style() before using the style. + +Wed Sep 15 02:52:19 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_event): Added workaround + for old widgets that don't propagate draws to all + children. (Namely gnome-dock for gnome-libs <= 1.0.16) + +Tue Sep 14 19:22:19 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent + for a redraw but just the widget that requested the resize. + +Tue Sep 14 18:29:47 1999 Tim Janik + + * gtk/gtkcontainer.c: added new widget level method + gtk_container_set_reallocate_redraws() and a GtkContainer flag + reallocate_redraws : 1 to reflect the setting, exported this through + the argument system as a boolean ::reallocate_redraws. + + * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws + on the widget because the allocation changes, do so as well for + widget->parent if the parent has reallocate_redraws set to TRUE. + with that containers requesting reallocation redraws get automatically + redrawn if their children changed allocation (this unfortunately + affects also other children that didn't change allocation, but we + cannot work around that before 1.3). + +Tue Sep 14 18:23:01 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width + _and_ height are >0 (not _or_). + + * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize() + instead of gtk_container_queue_resize(), which is a core gtk internal + function (must have been on crack when i queued that). + + * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so + we can check more reliably if we want to discard expose events. + * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING + flag. + + * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes, + we simply trust these events. for deciding whether to discard exposes, + check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING. + +Mon Sep 13 15:01:21 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore + queues of areas that are completely off screen. + + * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken + logic for handleboxes. + + * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity + check on width/height. + +Mon Sep 13 02:22:47 1999 Tim Janik + + * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements", + we are fine with using $@ the way we do (if we actually encounter + brokeness with $@ in VPATH builds because of additional path prefixes, + we need to use $(@F) actually). + +Mon Sep 13 01:34:53 1999 Tim Janik + + * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce + short lived bugs, that would allow language bindings to do surgeries + to our guts. + +Fri Sep 10 15:22:50 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo + where comparison was being done against an uninitialized + value causing intermittant results depending on + compiler flags. Also make it clearer that we aren't + ever initializing the child as 0x0 (though this will + be caught in gtk_widget_size_allocate()) + +Fri Sep 10 10:06:56 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_set_transient_for): Move + gtk_window_unset_transient_for() call after we do checks + involving the old transient parent. + [ From Lance Capser ] + +1999-09-07 Raja R Harinath + + * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create + an empty file. + +Mon Sep 6 00:11:56 1999 Lars Hamann + + * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has + no children. (Reported by: Chris Rogers ) + +1999-09-03 Raja R Harinath + + * gtk/Makefile.am (gen_sources): Improve VPATH builds. + `$@' is valid only in the build dir, not after we've done + `cd $srcdir'. Also use `test -f' instead of less portable + `test -e'. + +Fri Sep 3 15:59:56 1999 Owen Taylor + + * gtk/gtktext.c (correct_cache_insert): Rewrite + for simplicity, and hopefully correctness. + (Fixes bug #1322, which was a segfault when + on some insertions with the properties around + the insertion set up just wrong.) + + * gtk/gtktext.c (gtk_text_adjustment): When we receive + a "changed" signal, clamp the new value to the adjustment + bounds to avoid segfaulting if someone tries to change + the adjustment to a bogus value. (Bug #1795) + +Thu Sep 2 16:33:59 1999 Owen Taylor + + * gtk/gtkmain.c: Ignore unexpected destroy notifies + for children, for toplevel windows handle them + like delete_event. + + * gtk/gtkplug.c: Add an unrealize handler so that + we unref plug->socket_window when we are done + with it. + +Fri Sep 3 14:52:54 1999 Owen Taylor + + * gtk/gtktext.c (clear_area): Fix stupid signedness + problem that was causing background to sometimes + be misaligned. + +Fri Sep 3 12:26:33 1999 Owen Taylor + + [ Fixes pointed out by Ettore Perazzoli ] + + * gtk/gtkmenu.c (gtk_menu_position): Make + sure we never position menus with negative x, y, + since gtk_widget_set_uposition() can't handle that. + + * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): + Modify the positioning code a bit so that we always + put the top-left corner onscreen. (This is for + UI reasons, gtk_menu_position() now takes care of + gtk_widet_set_uposition() brokeness.) + +Fri Sep 3 03:06:30 1999 Tim Janik + + * gtk/Makefile.am: fixed up things for -jx, x > 1. + +Sun Sep 5 08:48:51 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the + RC style that is passed in. The lack of the ref + before was a bug. If people worked around this + bug, this will introduce a slight memory leak + in their code. The code should typically look like: + + rc_style = gtk_rc_style_new (); + [...] + gtk_widget_modify_style (widget, rc_style); + gtk_rc_style_unref (rc_style); + + * gtk/gtkwidget.c (gtk_widget_modify_style): Reset + the style if it was already set. + + * gtk/gtkwidget.c (gtk_widget_set_name): Only set the + style if it was set before. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * gtk/testgtk.c (main): Add a check to see if we + are being run from the correct directory and + to quit nicely if we are not. + + * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function + static. + +Thu Sep 2 23:00:03 1999 Tim Janik + + * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS. + + * gtk/gtkwindow.c: + queue resizes unconditionally (gtk_widget_queue_resize will figure + what to do if the window is not realized). + (gtk_window_move_resize): only recenter the window + for GTK_WIN_POS_CENTER_ALWAYS. + (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in + the same way as GTK_WIN_POS_CENTER. + +Thu Sep 2 22:39:27 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_reposition): check for the last position + with (!(info->last_flags & GDK_HINT_POS)) instead of + (!info->last_flags & GDK_HINT_POS). + + * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and + new_height unconditionally, because we use these values even if + !default_size_changed && !hints_changed. + comented the (default_size_changed || hints_changed) case with + respect to resize rejects from the window manager. + + * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values + in the zvt condition hack, since this includes the window hints, set + the hints after the handling_resize case. + + * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a + window is initially shown with to the geometry. + +Thu Sep 2 07:38:56 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): + s/size_changed/default_size_changed/g so i know what's + really going on (frying brain on smaller flame now). + +Thu Sep 2 05:47:47 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if + we have size_changed upon handling_resize. this is a gross + workaround for the broken zvt widget and should be removed in + 1.3 again (search for FIXME). + Owen provided an accurate comment for this: + + /* We could be here for two reasons + * 1) We coincidentally got a resize while handling + * another resize. + * 2) Our computation of size_changed was completely + * screwed up, probably because one of our children + * is broken. It's probably a zvt widget. + * + * For 1), we could just go ahead and ask for the + * new size right now, but doing that for 2) + * might well be fighting the user (and can even + * trigger a loop). Since we really don't want to + * do that, we requeue a resize in hopes that + * by the time it gets handled, the child has seen + * the light and is willing to go along with the + * new size. (this happens for the zvt widget, since + * the size_allocate() above will have stored the + * requisition corresponding to the new size in the + * zvt widget) + * + * This doesn't buy us anything for 1), but it shouldn't + * hurt us too badly, since it is what would have + * happened if we had gotten the configure event before + * the new size had been set. + */ + +Wed Sep 1 20:46:11 1999 Owen Taylor + + * gtk/gtkrc.c: deal properly with the fact that RC + style lists may include rc styles more than once. + + * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed + unused static function. + + * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a + stack of directories of RC files currently being + parsed and implicitely add them to pixmap path. + + This fixes a bug where the directory would get + appended then overwritten by pixmap_path declarations. + + (bug #1462, from Peter Wainright ) + + * gtk/gtkthemes.c (gtk_theme_engine_unref): Call + theme's exit function. (Patch from Peter Wainwright, + bug #1454) + + * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy): + Add a destroy() handler to take care of removing + group for menu item. (Fixes bug #1197) + + * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko + in warning message. + +Wed Sep 1 21:27:42 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server + roundtrip to figure window's width and height, since we know that + anyways from widget->allocation. + +Wed Sep 1 12:37:44 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_move_resize): Compute + the hints after we request the new size. + +Wed Sep 1 10:38:37 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_compute_hints): Removed + GTK_WIDGET_REALIZED() assertion - we can compute the + hints before we are realized. + + * gtk/gtkwindow.c (gtk_window_move_resize): Reorder + hint changing so that we have a value of hints_changed + when we decide whether to constrain the window size. + + * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix. + + * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups, + change back to G_MAXINT. + +Wed Sep 1 06:54:59 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize + new GtkWindowGeometryInfo, so fields like GdkGeometry geometry + contain uncluttered values. + (gtk_window_compute_hints): simply assert that window is realized + and that geometry_info is valid, since we rely on this anyways. + (gtk_window_constrain_size): major cleanups to the code. + if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height + for the base size, instead of the minimums. use 32767 as max width + and height (like in gtkwindow.c) instead of G_MAXINT. + +Wed Sep 1 04:41:25 1999 Tim Janik + + * cleaned up the GtkContainer.need_resize flag handling mess, we + only need to force resize requests when we were prematurely + realized, or our widget tree was modified when we were temporarily + hidden. handling these cases directly upon showing the window (i.e. + while the GdkWindow is still unmapped) avoids the need to wait for + a configure event response and therefore makes the GUI more snappier + and avoids blank windows during the roundtrip. + + * gtk/gtkwidget.c: + (gtk_widget_hide): + (gtk_widget_show): don't queue resizes on toplevels, they know how + to deal with matters. + + * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize + flag directly for not visible resize containers and spare us unecessary + signal emissions. + + * gtk/gtkwindow.c: + (gtk_window_realize): if we need to enforce premature size allocation, + queue a container resize so we are correctly resized later on. + (gtk_window_init): + (gtk_window_size_request): + don't freak around with the ->need_resize flag, + gtk_container_queue_resize() will care about that. + (gtk_window_show): + handle initial resizing issues here, we can handle matters better in + this place, especially since we know that our GdkWindow is still + unmapped. + (gtk_window_move_resize): + don't care about ->need_resize at all. + handle size changes properly that occoured while we waited for a + configure event. + +Tue Aug 31 15:58:46 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_set_uposition): + * gtk/gtkwindow.[hc] (gtk_window_reposition): + Move the hint setting code from gtk_widget_set_uposition + to here; set the hints so that we respect any previously + set geometry hints. + + * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't + change the window hints here or move the window here, + let that happen in gtk_window_move_resize(). + +Tue Aug 31 06:58:52 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due + to already queued resizes (and therefore redraws) on a widget, check + its anchestry as well. + + * gtk/gtkcontainer.c: + (gtk_container_queue_resize): clear resize widgets for resize + containers before aborting prematurely. this is especially important + for toplevels which may need imemdiate processing or their resize + handler to be queued. + (gtk_container_dequeue_resize_handler): added new internal function for + gtkwindow.c. + + * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a + configure event, take possible changes in window position into account + as well. + if we request a new window size, queue up a resize handler that will + last until the configure event response arrives. + combined the ->need_resize case (initial show) with the general size + (hints) changed case and added even more comments. + if !auto_shrink, only revert to the old allocation if the new size + is smaller than the current allocation. + +Tue Aug 31 11:55:20 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy, + gtk_window_set_geometry_hints + gtk_window_set_default_size): + When hints are set, queue a resize so that the hints will + be eventually reset on the toplevel. + + * gtk/gtkwindow.c (gtk_window_show): Use + gtk_window_compute_default_size(). Clear the need_resize flag + on the initail map so that we don't unnecessarily trigger the + resize code. + + * gtk/gtkwindow.c (gtk_window_move_resize): Split apart + into separate functions. Compare the hints we are setting + with what we set last time so that we can accurately + tell when we need to reset the hints. + + * gtk/gtkwindow.c (gtk_window_compute_default_size): New + function to figure out the size from requisition + and default_size. + + * gtk/gtkwindow.c (gtk_window_constrain_size): Function + from fvwm to constrain a size to the geometry hints. + + * gtk/gtkwindow.c (gtk_window_compare_hints): New function + to compare two sets of geometry hints. + + * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed + from gtk_window_set_hints(), just compute the hints, + don't set them. + + * gtk/gtkwindow.c (gtk_window_compute_reposition): Move + code from gtk_window_move_resize() to separate function, + rationalize a bit. + +Tue Aug 31 13:05:03 1999 Owen Taylor + + * gtkrc.h: Move the ref_count member out of the GtkRcStyle + structure into a new private structure. + + * gtkrc.c: Split GtkRcStyle into public/private. + In the private part, add a list of pointers to the + RcStyle lists this RcStyle participates in. + + * gtkrc.c: When a RcStyle is free, remove all + lists referencing it from the + realized_style_ht hash, and free those lists. + + * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call + gtk_rc_init(), since that adds the default styles + to the list of parsed RC files again. + + * gtk/gtkrc.c: Use gtk_rc_style_find() consistently. + +Thu Aug 26 14:14:42 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity + checks that ensure that a widget's allocation is at least 1 in width + and height. (GNOME note: this doesn't affect old panel code anymore, + because GtkSocket will request width and height of at least 1 since + Fri Jul 23). + + * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been + allocated yet (happens if the user realizes the window prematurely), + size request and allocate it. + (gtk_window_size_allocate): guard against guint underflows. + +Wed Aug 25 19:01:36 1999 Lars Hamann + + * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs + in gtk_built_sources, so gtk.defs gets built prior to all other + sources. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * gtk/Makefile.am: + invoke indent on gtkmarshal.*. + rewrote source generation rules, use COPYING as oldest source tag for + a piggyback rule to generate all sources from (don't touch it ;). + major cleanups, strip spaces on build rules for GNU Make. + + * gtk/genmarshal.pl: don't operate on hardcoded filenames but take + source and target files from commandline arguments. don't invoke indent. + +Sat Aug 21 14:07:36 1999 Lars Hamann + + * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize + notebook after switch to avoid drawing problems. + (Bug#856 Reported by: Theodore Roth ) + + (gtk_notebook_pages_allocate): don't map not visible tab_labels, + show them instead. + (Bug#1805 Reported by: Dave Cole ) + +Sat Aug 21 14:07:36 1999 Lars Hamann + + * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize + notebook after switch to avoid drawing problems. + (Bug#856 Reported by: Theodore Roth ) + + (gtk_notebook_pages_allocate): don't map not visible tab_labels, + show them instead. + (Bug#1805 Reported by: Dave Cole ) + +Wed Aug 18 09:20:10 1999 Tim Janik + + * gtk/gtkwindow.c: + we use window->need_resize from configure_event now, to indicate that + the gtkwindow should keep its allocation (e.g. because the user resized + the window through window manager handles). resize_count is now reliably + used to figure whether we got the allocation we requested from the + window manager. + configure events get queued as resizes now, the real stuff (size + computation and allocation) now only goes on in gtk_window_move_resize(). + GtkWindow's requisition now contains its *real* requisition (like all + other widgets), *not* taking usize into account. + geometry_info->last_{width|height} is now updated from set_hints() only + so it always contains the last hints we set for the window manager. + made some event handlers return TRUE instead of FALSE. + the overall code should be much more straight forward now, and the + significant code portions are accompanied by comments now. + (gtk_window_set_hints): + removed requisition argument and made it + fetch the requisition through gtk_widget_get_child_requisition. + we also don't move the gdkwindow here anymore, gtk_window_move_resize() + does that now. + (gtk_window_show): + ensure that the widget is realized before calling + gtk_container_check_resize() (and thus gtk_window_move_resize()), also + ensure that we got properly size requested and allocated before + realization. + (gtk_window_configure_event): + ignore plain window moves, or reallocate the widget tree through the + resize queue otherwise. + (gtk_window_move_resize): + mostly rewrote this function to figure window manager hints more + reliably, coalesce window moves and resizes to reduce configure events + and do actuall size allocations. + +Tue Aug 17 07:43:04 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets + that have a resize pending, because a redraw is already queued for them. + + * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal + hack to clear resize_widgets. + + * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets + for resize containers prior to size allocation. (this is also a bit + ugly, but avoids side effects for stopped emissions and is thus more + reliable). + (gtk_widget_unparent): removed disconnect call for clear_resize_widgets. + + * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this + function from gtk_tooltips_expose, as we connect to ::expose_event + *and* ::draw now. + +1999-08-18 Federico Mena Quintero + + * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity + checks. + (gtk_target_list_unref): Likewise. + + * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise. + +Tue Aug 17 15:47:07 1999 Owen Taylor + + * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar): + guard against division by zero. (Fixes bug #1339) + +Tue Aug 17 10:56:49 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_move_{forward,backward}_word): + Prevent the trivial leak of information of allowing + word motion when the entry is not visible. + +Tue Aug 17 10:28:52 1999 Owen Taylor + + * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate + modality to error dialog as well as confirmation dialogs. + (Bug #1803, reported by Rosanna Wing Sze Yuen) + +Wed Aug 11 01:04:57 1999 Owen Taylor + + * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor + tree->view_lines. + (gtk-guy-990611-3.patch: Guy Harris ) + + * gtk/Makefile.am (install-data-local): Solaris apparently + has various troubles with ln -f; use rm first instead. + (gtk-guy-990611-2.patch: Guy Harris ) + +1999-07-30 Raja R Harinath + + * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir, + use `cp' followed by `rm' (the `rm' was already there). + +July 30, 1999 Elliot Lee + + * configure.in: Fix autoconf warnings about cross compilation by + trying to provide sane defaults for AC_TRY_RUN. + * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir), + put them into $(srcdir) when generated. Also add a dependency of + gtksignal.h on gtkmarshal.h for -j builds. + * gtk/gtk(dnd,style,gamma).c: Minor warning fixes. + +Wed Jul 28 09:29:19 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main_iteration_do): Added missing + GDK_THREADS_{LEAVE,ENTER} pair. + (From Paul Fisher ) + +Fri Jul 23 01:00:15 1999 Tim Janik + + * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested + width and height are always >0 (owen). + +Fri Jul 23 00:00:47 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent + change that assured that a widget's allocated with and height are + always >1, since this breaks *buggy* panel code. unfortunately this + back-breaks the gimp's color selector. + + * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our + allocation is always >0 in width and height, before sending the + configure event; this is a *gross* hack to get the gimp back to work. + + * marked both cases with TODO-1.3 + +Wed Jul 21 15:47:39 1999 Owen Taylor + + * gtk/gtktext.c: Don't display wrap indicators when + text is not editable and word wrap is on. + +Wed Jul 21 08:21:40 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case + option menus here as they are not derived from menu shell, assure that + the option menu has a menu we can add items to. + +Tue Jul 20 23:29:48 1999 Tim Janik + + * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation-> + width/height to (gint) before calculations and check against < 0 to + avoid guint wraparounds. + +Sun Jul 18 00:35:49 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated + width and height is never zero. sanity check both dimensions against + 32767 and issue a warning if the allocation is greater than that. + +Wed Jul 7 15:03:30 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_events_pending): Unlock around call + to g_main_pending() as well. + +Wed Jul 7 14:59:01 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main_iteration): Unlock around + call to g_main_iteration() - since that will regrab + GTK+ lock to process events. + +Thu Jul 1 15:01:55 1999 Owen Taylor + + * gtk/gtkwindow.c + - Regularize with the rest of GTK+ by making widget->requisition + not reflect the set_usize() + - Always recompute geometry hints, then check if they + changed before sending them to the X server. The + previous checks for changes would fail in a number + of circumstances. + +Thu Jul 1 11:55:59 1999 Owen Taylor + + * gtk/gtkstyle.c: Include for strcmp(). + +Wed Jun 30 19:26:36 1999 Owen Taylor + + * gtk/gtkdnd.c: + - Code cleanups + - Instantaneously update on modifier key presses + - Allow cancellation of the drag with Escape. + +Tue Jun 29 17:04:09 1999 Owen Taylor + + * gtk/testgtk.c (create_handle_box): Set the policy + to auto_shrink - otherwise the appearance is rather + strange when flipping between horizontal and vertical. + +Mon Jun 28 09:29:52 1999 Tim Janik + + * gtk/gtkwindow.c: add ::default_width and ::default_height arguments. + (gtk_window_set_default_size): don't change a value if it's < 0. + queue a resize. + +Sun Jun 27 11:00:33 1999 Tim Janik + + * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts. + +Mon Jun 28 12:08:25 1999 Owen Taylor + + * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't + add an extra "/" when concating "/" + filename. + (From Matt Grossman ) + +Mon Jun 28 10:57:12 1999 Owen Taylor + + * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask + for fg_gc if we set it for drawing pixmap. + +Tue Jun 15 12:45:12 1999 Owen Taylor + + Fixes from Peter Wainwright + + * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is + already set, call old engine's destroy function and + unref the old engine. + +Thu Jun 10 17:59:38 1999 Tim Janik + + * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize. + +Wed Jun 9 15:13:16 1999 Tim Janik + + * gtk/gtkaccelgroup.h: mark certain functions as internal. + +Wed Jun 9 13:48:28 1999 Tim Janik + + * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the + expand behaviour changed. + + * gtk/gtklabel.c (gtk_label_set_pattern): + (gtk_label_set_justify): + (gtk_label_set_line_wrap): + don't bother invoking queue_clear, the reallocation does + that for us, always free_words so the upcoming resize will + relayout the label's contents. + +Wed Jun 9 12:50:48 1999 Tim Janik + + * applied argument implementation patches from Elena Devdariani + . + + * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size, + ::space_style, ::relief + * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size + * gtk/gtkpreview.c: ::expand + * gtk/gtkpaned.c: ::handle_size, ::gutter_size + * gtk/gtknotebook.c: ::homogeneous + * gtk/gtklabel.c: ::wrap + * gtk/gtklist.c: ::selection_mode + * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge + * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y + * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity + * gtk/gtkclist.c: ::sort_type + * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle + * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child + +Tue Jun 1 23:38:38 1999 Owen Taylor + + * gtk/gtkstyle.c: Removed ill-thought-out part of last + comment. + +Tue Jun 1 23:30:09 1999 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_attach): Get the reference + counting right when we have to attach a new style + for a different visual. (Chi-Deok Hwang ) + + * gtk/gtkstyle.c: Documented the refcounting + peculularities of gtk_style_attach. + +1999-06-01 Tim Janik + + * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid + window types. + + * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead + of GTK_TOPLEVEL for creating the window. + +1999-06-01 Tim Janik + + * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is + the last argument (reported by Per Winkvist). + +Tue May 25 13:13:12 1999 Owen Taylor + + Fixes for invisible XOR lines (Frank Loemker + ) + + * gtk/gtkclist.c (gtk_clist_realize): Always use + a non-zero pixel for GDK_XOR. + + * gtk/gtkvpaned.c gtk/gtkhpaned.c: + Use GDK_INVERT instead of GDK_XOR. + +Wed May 12 21:56:40 1999 Lars Hamann + + * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed + signals if h/voffsets differ from adjustment values. + Reportet by Jerome Bolliet + +Mon May 10 04:20:41 1999 Tim Janik + + * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate + ::selection-done emissions up to the topmost menu shell. + +Fri May 7 10:15:14 1999 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset + the user data on the window before destroying it. + + * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an + unrealize handler to take care of destroying + notebook->panel properly. + (Bug #1198 - Morten Welinder ) + + * gtk/gtktext.c (expand_scratch_buffer): Fix reversal + of g_new and g_realloc to stop memory leak. (Actually, + we could just use g_realloc(), but I'm not 100% sure + that is portable). + (Bug #1196 - Morten Welinder ) + +Wed Apr 21 00:42:08 1999 Owen Taylor + + * gtk/gtkplug.h: Removed stray GtkPlugButton declaration. + + * gdk/gdkfont.c (gdk_text_measure): Fix the return value + for fontsets. + + * gtk/gtkbutton.c (gtkbutton_expose): Fix warning + with bin/button confusion. + +Thu May 6 04:53:26 1999 Tim Janik + + * gtk/testgtk.c: in the ItemFactory test, link radio items together, + and show how preselection of radio items is done. + +Sun May 2 13:31:14 1999 Tim Janik + + * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): + * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert): + * gtk/gtktoolbar.c (gtk_toolbar_insert_element): + * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1): + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): + * gtk/gtktable.c (gtk_table_attach): + * gtk/gtklist.c (gtk_list_insert_items): + * gtk/gtkmenushell.c (gtk_menu_shell_insert): + * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): + * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): + * gtk/gtkbin.c (gtk_bin_add): + * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): + * gtk/gtkfixed.c (gtk_fixed_put): + * gtk/gtklayout.c (gtk_layout_put): + general fixups to container_add logic. always realize child if + child->parent is realized, only map the child and queue a resize + if child and child->parent are both visible. + +Fri Apr 30 09:02:28 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall + instead of gtk_container_foreach to walk and unrealize children, so + composite children get also unrealized. + (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to. + (gtk_widget_map): assert that the widget is visible (basic constrain). + (gtk_widget_real_map): assert that the widget is realized (basic + constrain). + +Fri Apr 29 00:53:20 1999 Tim Janik + + * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak. + +Tue May 4 09:32:08 1999 Owen Taylor + + * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc + file for iso-8859-2 locales. + + * configure.in (ALL_LINGUAS): ALL_LINGUAS update. + +Tue Apr 27 16:38:32 1999 Owen Taylor + + * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES. + (Pointed out by andy@rz.uni-karlsruhe.de and others). + Remove some suspicious and useless lines. + +Tue May 4 08:44:08 1999 Owen Taylor + + * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use + width,height = 0, 0 to mean - here to edge of window, + instead of -1, -1, since the former is all we support. + +Tue May 4 08:34:43 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main): Correctly free list nodes + when removing from quit_functions list. + +Tue Apr 27 14:17:16 1999 Tim Janik + + * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable. + +Tue Apr 27 18:23:35 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): + When redrawing characters on non-visible entry, use appropriate + '*' character. (Bug #1130 - Jean-Marc Jacquet ) + +Tue Apr 27 01:31:40 1999 Lars Hamann + + * gtk/gtkclist.c (drag_dest_cell): compute destination cell + from drag coordinates. + (gtk_clist_drag_data_received) (gtk_clist_drag_motion): + use drag_dest_cell. + + * gtk/gtktree (drag_dest_cell) + (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise. + (Bug #1129) + +Wed Apr 21 21:26:11 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize + translate_* fields. + (gtk_item_factory_finalize): invoke translate_notify independant from + translate_data. + (gtk_item_factory_set_translate_func): likewise. + (gtk_item_factory_destroy): only remove ifactory pointer from those + widgets that belong to us (stupid me). + +Mon Apr 19 12:05:31 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of + rc_style list when lookup succeeeds. + +Thu Apr 15 01:11:24 1999 Lars Hamann + + * gtk/gtkctree.c (resync_selection): + * gtk/gtkclist.c (resync_selection): fixed undo_selection bug. + * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection + bug. + +Fri Apr 9 19:22:19 1999 Owen Taylor + + * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c: + Add some missing GDK_THREADS_ENTER()/LEAVE around + timeouts. (Patches from Sebastian Wilhelmi ) + +Thu Apr 8 20:10:33 1999 Tim Janik + + * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate() + rather than emit_by_name. + + * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference + on the widget across multiple signal emissions. + (gtk_editable_delete_text): same here. + (gtk_editable_class_init): set widget_class->activate_signal after + editable_signals[ACTIVATE] has been created. + +Wed Apr 7 22:59:47 1999 Owen Taylor + + * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp + position here prematurely -- we might not have the + right ->min_position and ->max_position yet. + +Tue Apr 6 16:38:51 1999 Owen Taylor + + * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request): + Add error traps so if the other end of the connection + dies, we survive. + + * gtk/gtkselection.c (gtk_selection_notify): Clean + up properly when selection property retrieval fails. + + * gtk/gtkselection.c (gtk_selection_request): Correctly + reject SelectionRequest notifies where the handler + returns no data. + +Tue Apr 6 12:24:21 1999 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight + when we've previously highlighted. + + * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't + emit two "drag_leave" signals for Motif drops. + + * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send + back the correct status messages when dropping from + Motif onto a proxy window that is rejecting the + drop. + +Sat Mar 27 23:32:13 1999 Tim Janik + + * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free + the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal() + to compare two argument values. added gtk_arg_to_valueloc() to set a + variable from an arg through its location (pointer). + + * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of + gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected + as gfloat*, uchars are collected as guchar*, ints are collected as + gint*, etc... + +Mon Mar 29 17:45:47 1999 Owen Taylor + + * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c: + Include instead of . + + * gtk/gtkstyle.c: Fix double include of gtkthemes.h + (actually, a lot more duplicate includes occur if + you trace through the sequence of #include's) + gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu + +Mon Mar 29 17:02:58 1999 Owen Taylor + + Patches from Akira Higuchi + gtk-a-higuti-990322-[0-3] + + * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS + that was causing -DX_LOCALE not to work. + + * gtk/gtkrc.c (gtk_rc_init): + X_LOCALE will never have LC_MESSAGES defined + +Thu Mar 25 12:38:31 1999 Tim Janik + + * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from + g_get_home_dir() (gtk-pmc-990123-0.patch.gz). + + * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/ + left/right as well (gtk-michael-980726-0.patch.gz). + + * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/ + for pointer values, use gchar instead of char. fixed uline allocation + leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem + chunks instead of G_ALLOC_ONLY. + (gtk_label_size_request): always alter requisition as passed and leave + widget->requisition alone. + (gtk_label_set_text): allow NULL strings. + (gtk_label_new): likewise. + +Wed Mar 24 09:24:03 1999 Tim Janik + + * gtk/gtkdrawingarea.[hc]: type/macro fixups. + +Mon Mar 22 05:51:34 1999 Tim Janik + + * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible + *and* mapped (i.e. drawable). + (gtk_bin_expose): only send exposes to drawable children. + + * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable. + (gtk_box_expose): only send exposes to drawable children. + + * gtk/gtkhscale.c (gtk_hscale_draw): + * gtk/gtkvscale.c (gtk_vscale_draw): + hm, this is an ugly one. we first compute the size of our trough area + here (window relative) and then check intersection with the draw_area + which is parent relative because we're a NO_WINDOW widget, so we need + to offset the trough area by allocation.x and allocation.y before the + check. (this must not be done for the background area though, since + that's already computed parent relative). + +Mon Mar 22 00:41:39 1999 Lars Hamann + + * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary, + unrealize title buttons. + +Fri Mar 19 00:00:22 1999 Lars Hamann + + * gtk/gtkclist.c (gtk_clist_column_title_passive) + (gtk_clist_column_title_active): + only connect/disconnect to GtkWidgetClass::event to block mouse events. + + * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): + zero initialize event, removed superfluous gdk_window_get_pointer call + + * gtk/gtklist.c (gtk_list_vertical_timeout) + (gtk_list_horizontal_timeout): removed superfluous + gdk_window_get_pointer call + +Wed Mar 17 09:00:00 1999 Tim Janik + + * plugging problems reported by "Bruce Mitchener, Jr." + due to a purify session. + + * gtk/gtkstyle.c: + (gtk_style_ref): + (gtk_style_unref): assert ref_count to be > 0. + + * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize + the requisition. + (gtk_clist_set_shift): likewise. + + * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the + adjustments. + + * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the + event before sending it and set send_event to TRUE (which needs to + be done for *all* synthesized events). + (gtk_list_vertical_timeout): likewise. + + * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory + leaks. + + * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event + to TRUE when synthesizing events. + +[ *** end of merges from 1.2 *** ] + +1999-11-21 Tor Lillqvist + + * gdk/gdkconfig.h: Remove, as this is a file generated by configure + (or copied from gdkconfig.h.win32 on Win32, sigh). + + * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL. + + * gdk/gdk.c (gdk_keyval_convert_case): Fix typo. + + * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line. + + * gdk/gdkconfig.h.win32: New file. + + * gdk/win32/makefile.cygwin: Build just a static archive here. + + * gdk/makefile.cygwin: New file. Get the win32-specific stuff + for the DLL from the static archive built above. + + * gdk/gdk.def: Moved here from the win32 subdirectory. + + * gdk/win32/*: Adapt for the changed private struct organisation. + + * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now. + +Sun Nov 21 16:44:35 1999 Stefan Jeske + + * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support + for wheel mice (buttons 4 and 5). + +1999-11-18 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor + drawables use just the pixel field in the foreground and + background GdkColor of the GdkGC. + + gdk_gc_set_{fore,back}ground() are called in the GIMP with + GdkColors containing uninitialized (red,green,blue) fields, and + just the pixel field filled in, and furthermore in the + visual-dependent format as returned by gdk_rgb_xpixel_from_rgb(). + It thus turns out that we really don't need to have the full + GdkColor for fg and bg in GdkGCWin32Data after all. Will change + it later to have just the pixel values. + +Mon Nov 15 17:17:51 GMT 1999 Tony Gale + + * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/ + +Sat Nov 13 22:30:29 GMT 1999 Tony Gale + + * docs/gtkfaq.sgml: threads example from Erik Mouw. + New question on GtkLabel background colors. + + * docs/gtk_tut.sgml: + - Correct the example code callback + function definitions. + - Update the gtkdial example code, from Frans van Schaik. + - Update setselection.c to current API. + + * examples/Makefile examples/*/*.c: Update to code + listed in tutorial. + +1999-11-10 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode + subrange table (from the "Developing International Software for + WIndows 95 and Windows NT" book) was missing the Hangul syllable + block... Get the loaded font's charset correctly. + + (Note that this, and the other *-win32.c files, still really are + the old ones, the win32 subdirectory is not ready for compilation + yet after the reorg.) + +Wed Nov 10 17:26:49 GMT 1999 Tony Gale + + * gtk/gtkclist.c: Fix off-by-one bug in parameter + check. + +Wed Nov 10 12:12:03 1999 Owen Taylor + + * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState() + on results of XQueryDeviceState(). + +Mon Nov 8 16:40:43 1999 Owen Taylor + + * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since + we need to accesss only ->children. We need an accessor + for the children. + + * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G + DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer() + to get rid of gdkx.h include. + + * gtk/gtkctree.c: Get rid of #include + and random references to 'None'. + + * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c + Get rid of unused #include + + * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include + gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from + gdkconfig.h. + +1999-11-08 Tor Lillqvist + + * gdk/win32/gdkdraw.c + * gdk/win32/gdkfont.c + * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes + following yesterday's changes. (Unrelated to Owen's reorg.) + +Mon Nov 8 16:18:25 1999 Owen Taylor + + * gdk/x11/gdkinput-gxi.c: Add missing include, + fix GdkWindowPrivate => GdkDrawablePrivate. + + * gdk/x11/gdkinputprivate.h: include . + + * gdk/x11/Makefile.am (xinput_sources): Add missing + backslash to fix building with --with-xinput=none + +Mon Nov 8 14:47:04 1999 Owen Taylor + + Move all X specific code into the x11/ directory. + Aside from shuffling things around, did the following: + + * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add + gdk_arg_context_* - a simple argument parsing system + in the style of popt. + + * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch] + gdk/x11/gdkprivate-x11.h: + Remove X specific stuff from GdkDrawable and GdkWindowPrivate - + add ->klass and ->klass_data fields. The klass_data + field points to an auxilliary structure that is + windowing system dependent. + + * gdk/gdkfont.c: Make most of the measurement functions + simply wrappers around gdk_text_extents(). + + * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a + _gdk_font_strlen() function that hides the weird + behavior in gtk+-1.[02] where a string is interpreted + differently for 8-bit and 16-bit fonts. + + * gdk/gdkevents.c: Add a new function gdk_event_button_generate() + to store common code for synthesizing double/triple + press events. + + * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h. + Make all the function that modify an existing GC + simply wrappers around gdk_gc_set_values(). + + * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation + for throwing out later. + + * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate, + GdkImagePrivate and GdkColormapPrivate to have a + windowing system dependent part (GdkFontPrivateX etc.) + that "derives" from the system-independent part. + + * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c: + Got rid of the included-source-files for XInput in + favor of automake conditionals. (Which didn't exist + when XInput support was originally added.) + + * gdk/gdkrgb.c: Remove the visual id from the debugging + statements since that is X11 specific; print out + type/depth info instead. + + +Wed Nov 3 18:14:49 1999 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when + loading duplicates of hashed fonts. + + * gdk/gdk.c (gdk_keysym_convert_case): rename + gdk_XConvertCase to gdk_keysym_convert_case, allow + results to be NULL in the GTK+ style. + + * gdk/gdkcompat.h: Started compatibility header + for renames. + +1999-11-07 Tor Lillqvist + + * gdk/win32/gdkprivate.h: New font private structures, related to + fontsets. + + * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and + gdk_font_list_free(). On X11, will just be wrappers to + XListFonts() and XFreeFontNames(). On Win32, the code previously + in gtkfontsel.c is now here. + + New function gdk_font_xlfd_create(). On X11 will get the FONT + property of the font (for GDK_FONT_FONTs), or call + XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32 + builds a XLFD style name from the font information in the LOGFONT + struct(s). + + New function gdk_font_xlfd_free(), which correspondingly frees the + string returned by gdk_font_xlfd_create(). + + Implement fontsets on Win32. Add a function that iterates over a + wide char string and calls a callback function for each substring + of wide chars from the same Unicode subrange (and thus probably + available in the same real font). + + Improve the XLFD emulation a bit. + + * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix. + + * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k + Beta3, WM_IME_CHAR messages don't seem to contain the composed + multi-byte char as with the Active IMM on Win9x. Oh well, handle + WM_IME_COMPOSITION with GCS_RESULTSTR instead, use + ImmGetCompositionStringW() to get the composed Unicode chars. + + * gdk/win32/gdkgc.c + * gdk/win32/gdkdraw.c: Changes needed because of the font private + struct changes. + + * gdk/win32/gdk.def: Add the new functions. + +1999-11-04 Tor Lillqvist + + * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to + get the Platform SDK to get . + + * gdk/win32/gdkevents.c: More event handling fixes and + simplification. Never generate motion events with is_hint true. We + used to do that on bogus grounds earlier. Windows sends + WM_MOUSEMOVE messages on button events even if the mouse hasn't + moved, ignore these. + + * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets. + + * gdk/win32/gdkglobals.c + * gdk/win32/gdkprivate.h: Define a typedef for the pointer to + the TrackMouseEvent function, and use it. + + * gdk/win32/gdkwindow.c: Terminate widechar string with a zero + char before calling WideCharToMultiByte in order to get a string + for the window title. + + * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out. + + * gdk/win32/gdk.def: Remove obsolete functions. + + * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add + /nodefaultlib and /defaultlib switches. + + * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/. + +1999-10-31 Tor Lillqvist + + * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including + EuroSign). + + * gdk/gdktypes.h: Add note about wchar_t not necessarily being the + same type as GdkWChar, especially on Win32. + + * gdk/win32/*.c: Change gdk_root_parent to be a pointer. + + * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode + before passing to Windows GDI for drawing etc. Convert to the + system default codepage before passing to Windows as window + titles. + + * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to + support changing input locale on the fly. + + * gdk/win32/gdkevent.c: Support input language (keyboard locale) + on-the-fly changes. Convert incoming characters from the current + codepage to Unicode (and then to a UTF-8 multi-byte string) based + on the current input language. Use keysym<->Unicode mapping tables + and functions borrowed from xterm sources. + + Support IMEs (Input Method Editors) for CJK languages. On non-CJK + editions of Win9x, use the ActiveX-based Active IMM (Input Method + Manager) if available. IMEs and the Active IMM are available under + the disguise of Chinese, Korean and Japanese support for IE and + Outlook Express from "Windows Update" for Win98. On Win2k, the CJK + support is present in all editions (as long as you install it). + + Call DispatchMessage from gdk_events_queue() (and thus + gdk_WindowProc()), instead of duplicating the code in + gdk_WindowProc(). + + Reworked the grab handling and propagation code, factored out + duplicated code snippets into separate functions. Other cleanups, + too. + + * gdk/win32/surrogate-dimm.h: Provide just the bits we need from + the header describing the Active IMM. + + * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far + just do the same as for "single" fonts. + + * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from + gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle + the new keysyms from gdkkeysyms.h. + + * gtk/gtkfontsel.c (Win32): Load the font for the preview as a + fontset, so that gtkentry uses wide characters. + + * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call + GTk+'s system directory "gtk+", not "gtk". + +Sat Oct 30 13:17:18 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ update + +1999-10-21 Tor Lillqvist + + * gdk/win32/gdkprivate.h: Add more font private data. + + * gdk/win32/gdkfont.c + * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset + fonts and strings. Now works much better. You still have to + have a correct font selected, though. No fontset emulation yet. + +1999-10-19 Tor Lillqvist + + * gtk/maketypes.awk: Use G_OS_WIN32. + + * gtk/gtk.def: Add some missing entry points. Also some non-public + ones, but PyGTK porter claims to need them. + + * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the + built-in type generation. + +1999-10-14 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for + GDK_FONT_FONT fonts (which is all we have for now, we don't + emulate fontsets). The X11 version uses plain XDrawString in that + case, too. The string passed to gdk_draw_text_wc seems to be in + fact (at least, when used by gtkentry and gtktext) either in a + single-byte charset, or a DBCS. Not Unicode. + + This fixes the problem in gtkfontsel, where even if you had + selected a font with a non-Latin1 charset (windows-greek, for + instance), the preview still used Latin-1 glyphs. + + * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't + use GetTextExtentPoint32W, use GetTextExtentPoint32A. + (gdk_font_load): Recognize the demibold etc weights, even if we + don't have the corresponding constants in the headers. + (gdk_font_hash_insert): Use same hash mechanism as in the X11 + version. Should save font resources a bit, when we don't have + multiple HFONTs for the same font. + + * gdk/win32/gdkprivate.h: Add the names field as in the X11 + version. + +1999-10-11 ERDI Gergo + + * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default + X values + +1999-10-09 ERDI Gergo + + * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text + layout support (as mentioned on + http://www.jcinteractive.com/gnome-ui/software/widgets/) + +Wed Oct 6 12:46:17 PDT 1999 Manish Singh + + * gtk/fnmatch.c + * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/ + +1999-10-05 Jesus Bravo Alvarez + + * configure.in (ALL_LINGUAS): Added Galician (gl) + +1999-10-05 Tor Lillqvist + + * gdk/win32/*.[ch]: Corresponding changes as in X11 backend. + + * gdk/win32/gdkcompat.c: New file, actually provide an + implementation for the deprecated functions. (Just temporarily.) + + * gtk/gtkfilesel.c: Fix an #ifdef syntax botch. + + * gtk/makefile.{cygwin,msc}: Update gdk_headers. + + * gdk/win32/gdk.def gtk/gtk.def: Updates. + +1999-10-05 Kjartan Maraas + + * configure.in: Added "uk" to ALL_LINGUAS. + +Mon Oct 4 11:57:11 PDT 1999 Manish Singh + + * configure.in: correct checking for BeOS check + + * gdk/gdktypes.h + * gtk/fnmatch.c + * gtk/gtkfilesel.c + * gtk/gtkitemfactory.c + * gtk/gtkmain.[ch] + * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines + +Mon Oct 4 16:16:53 1999 Pablo Saratxaga + + * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset + encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic + languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used + by Bulgarian). + +Sun Oct 3 18:13:44 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_reset_shapes_recurse): + Fix a reference to window_private->destroyed. + + * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct + (ugly) setting of an internal GdkWindow member to use + a _slightly_ cleaner macro. + + * gdk/gdkprivate.h: Split GdkWindowPrivate into + GdkDrawablePrivate and GdkWindowPrivate. + Add extra macros for accessing GDK_DRAWABLE_ components. + + * *.[ch]: Massive adjustments for the above, use the + new macros in a lot of places. + +Sun Oct 3 15:16:24 1999 Owen Taylor + + * gdk/gdktypes.h: Make GdkDrawable the base type, + not GdkWindow. + +Sun Oct 3 15:08:44 1999 Owen Taylor + + * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function. + +Sun Oct 3 14:26:15 1999 Owen Taylor + + * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory. + +Sun Oct 3 14:16:23 1999 Owen Taylor + + * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with + gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp) + + * configure.in gdk/Makefile.am x11/: create x-specific subdirectory. + + * docs/gtk-config.1: Now autogenerated. + * docs/Changes-1.4.txt: started + +1999-10-03 Tor Lillqvist + + * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage + to #ifdef also here. + + * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those + Owen did to the X11 backend. + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use + ScrollWindowEx when blitting inside a window, it can't be correct + in the general case. + + * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling + WM_GETMINMAXINFO is easier. + + * gdk/win32/gdkimage.c (gdk_image_new): Create new image with + depth equal to the bitspixel value, not the visual's depth. + + * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth + to 24 even if the bitspixel value is 32. + + * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no + need to check for depth==32 when bpp==32, depth will always be 24. + +Fri Oct 1 18:03:36 1999 Owen Taylor + + * docs/Changes-1.4.txt: Started + + * gtk/Makefile.am (gdk_headers): Include all the new headers. + + * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces. + + * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private + into C file. + + * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput + header to gdkinputprivate.h. + + * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been + unused since before 1.2. + +1999-09-30 Tor Lillqvist + + * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32, + expand possible hex escapes in the font family (put there by + logfont_to_xlfd if the font name isn't a legal XLFD font family, + mainly if it contains slashes). (gtk_font_selection_create_xlfd): + On Win32, add hex escapes here, too. + +Wed Sep 29 19:55:35 1999 Owen Taylor + + * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11 + to #ifdef GDK_WINDOWING_X11. + +[ Merges from gtk-1-2 ] + +Wed Sep 8 07:13:29 1999 Tim Janik + + * configure.in: fixed "GNU Make" check to pass with new make version + 3.77.95. + +Fri Sep 3 16:04:41 1999 Tim Janik + + * gtk-config.in (--version): don't echo @GTK_VERSION@, but + @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the + AM_PATH_GTK() macros don't get confused by the -pre1. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * configure.in (REBUILD): Change check for perl5 + to check explicitely for v >= 5.002. (5.001 + does not work with our scripts.) + +Wed Aug 25 15:45:46 1999 Tim Janik + + * configure.in: evaluate $PERL for the perl version check. added + --disable-rebuilds to give the user an option to completely disable + any source autogeneration rules. + +Mon Aug 23 23:16:14 1999 Tim Janik + + * configure.in: evaluate $ac_make when checking for GNU Make. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * docs/Makefile.am: added generation.txt. + + * Makefile.am: require automake 1.4, build README from README.in and + INSTALL from INSTALL.in in dist-hook. + + * README.in: + * INSTALL.in: new files to autogenerate README and INSTALL from. + + * configure.in: figure whether we have GNU Make + + * docs/generation.txt: minor additions/corrections. + +Wed Aug 11 13:38:26 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +July 30, 1999 Elliot Lee + + * configure.in: Fix autoconf warnings about cross compilation by + trying to provide sane defaults for AC_TRY_RUN. + +Fri Jul 16 22:20:21 PDT 1999 Manish Singh + + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.3 + +Thu Jul 8 11:30:18 1999 Owen Taylor + + * INSTALL: Indicate that the --with-glib= configure + time flag is unsupported. + +Mon Jul 5 20:36:03 1999 Owen Taylor + + * docs/generation.txt: Added a file that gives + documenation about the autogeneration process for + various autogenerated files. + +Tue Jun 29 15:59:25 1999 Owen Taylor + + * configure.in (LIBS): Look for libgmodule in the + right location. + +Thu Jun 17 13:57:31 1999 Owen Taylor + + * docs/gtk_tut.sgml: Removed references to + code examples in my directory on gtk.org as + they should all be in the tutorial now. + + * docs/gtk_tut.sgml: Added sources for dial-test + and scribble-xinput programs that were previously + missing. + +Fri Jun 4 00:08:59 1999 Owen Taylor + + * TODO: Added entry about menu keyboard navigation, removed + some finished items. + +Mon May 31 00:11:24 1999 Owen Taylor + + * acinclude.m4: Standardize on func_dgettext + not func_gettext, so that the checks for dgettext + actually are paid attention to. + +Wed May 5 10:47:54 1999 Owen Taylor + + * configure.in (LIBS): Add $INTLLIBS into $LIBS + directly, rather than repeating the checks for + gettext. + + * INSTALL: Added information about gettext and + NLS support. + + * acinclude.m4 (LIBM): Check for dgettext, not + just gettext. This should hopefully fix things wrt + systems with old versions of GNU gettext installed. + +Tue Jun 29 15:59:25 1999 Owen Taylor + + * configure.in (LIBS): Look for libgmodule in the + right location. + +Thu Apr 1 16:58:10 PST 1999 Manish Singh + + * autogen.sh: add --enable-maintainer-mode + + * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS" + +Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson + + * docs/gtk-config.1.in: + docs/Makefile.am: + configure.in: gtk-config is now generated. + + * docs/gtk-config.1: Removed, now generated. + +Thu Sep 23 17:59:59 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't + handle CreateNotify itself, still put out a debuging message for + --gdk-debug=events. made the ReparentNotify debugging message more + verbose. + wrap xcoords translation for ConfigureEvents into an error trap, + a destroy event may already be pending, and in that case, the + actuall coordinate values are not at all critical. + +Sat Sep 18 22:24:15 1999 Owen Taylor + + * gdk/gdkcc.c: Stop leaking the color_hash all over + the place. Simplify and improve the logic. + +Fri Sep 17 09:57:15 1999 Tim Janik + + * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean) + for prototypes and function implementations consistent (reported + by Tomas Ogren). + +Tue Sep 14 18:23:01 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): tell if expose events have + send_event set in debugging output. + (gdk_compress_exposures): default initialize the event so we don't + operate on bogus values (namely send_event). + +Thu Sep 2 16:33:59 1999 Owen Taylor + + * gdk/gdkwindow.c: When we receive an unexpected + destroy notify on one of our windows, don't just + warn about it, also mark our windows as destroyed. + +Sun Sep 5 08:10:53 1999 Owen Taylor + + * gdk/gdkfont.c (gdk_font_hash_insert): Add + name => font and name => fontset hashes. The + name => fontset hash is a _big_ win since we + weren't previously caching fontsets at all and loading + fontsets is expensive. The name => font hash + is less of a win, but it does save us from doing + repeated XQueryFont calls on the same font. + + * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names + list so we can remove font/fontset from hash. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_atom_intern): Remove useless + and slightly confusing test. [ XInternAtom (,,TRUE) + will never return None ]. + +Sat Sep 4 08:39:26 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints) + gdk/gdkwindow.c (gdk_window_set_hints): + + Don't omit setting the properties if flags == 0 - + there may be an existing set of properties there + already. (Very old bug. Would it be better to + delete the property instead?) + + * gdk/gdkselection.c (gdk_selection_property_get): Fix + spelling error in comment. + +Wed Sep 1 14:05:30 1999 Owen Taylor + + * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push() + to avoid stomping over gdk_error_warnings. + + * gdk/gdkimage.c (gdk_image_new): compute image->bpp + as (bits_per_pixel + 7) / 8. This gives the same + result as before for multiples of 8, but actually + a "reasonable" value for 1bit or 4bit displays. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * gdk/Makefile.am: minor cleanups, strip spaces on build rules for + GNU Make. + +Tue Aug 17 07:43:04 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): give a debugging note when + discarding configure events. + +1999-08-18 Federico Mena Quintero + + * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the + refcount is greater than zero. + + * gdk/gdkwindow.c (gdk_window_unref): Likewise. + + * gdk/gdkfont.c (gdk_font_unref): Likewise. + + * gdk/gdkgc.c (gdk_gc_unref): Likewise. + + * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise. + +Wed Aug 11 01:04:57 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_property_get): Fix assumption + that format 32 => sizeof(item) == 4. It really is + sizeof(long). + +Tue Jun 29 23:02:42 1999 Owen Taylor + + * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't + core dump at all on X IO errors, only core dump + if --enable-debug for X errors. + +Thu Jun 24 17:06:23 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for + unknown window:" message. disabled ConfigureNotify discarding code, + because it led to events being processed out of order. + +Thu Jun 24 12:22:02 1999 Tim Janik + + * gdk/gdkglobals.c: preinitialize gdk_error_code to 0. + + * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since + we export this function, supress error warnings and don't reset the + error code in the first half of this function. + + * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error + code (instead of just -1) so gdk_error_trap_pop() reveals something + actually informative about the error that happened. + + * gdk/*.c: + don't rely on gdk_error_code being -1 if an error occoured, but just + gdk_error_code != 0. + +Thu Jun 24 11:50:07 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list + pointer *before* invoking the filter function, so we at least don't + crash if a filter is removed that is currently executed. window filters + *really* need to be made truely reentrant at some point. + +Mon Jun 14 11:10:15 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): print the atom name in the + PropertyNotify debug messages. + +Wed May 5 22:51:06 1999 Owen Taylor + + Patch from Sung-Hyun Nam + + * gdk/gdkim.c: Fix cut-and-paste errors for + x/y and PreeditAttributes/StatusAttributes. + +Wed May 5 22:24:21 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change + G_MAXINT to 2^16 to alleviate overflow problems in + various window managers. + +Wed Apr 21 00:42:08 1999 Owen Taylor + + * gdk/gdkfont.c (gdk_text_measure): Fix the return value + for fontsets. + +Wed May 5 12:42:01 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints): + Initialize size_hints.x and size_hints.y because kwm + brokenly pays attention to them. + (Bug #1181 - Lars Heete ) + +Wed May 5 11:38:56 1999 Owen Taylor + + * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the + return value of gdk_list_visuals(). + (Bug #1193 - Morten Welinder ) + +Tue May 4 11:12:56 PDT 1999 Manish Singh + + * gdk/gdkim.c (gdk_im_real_open): cast the return value of + XSetIMValues to (void *) when comparing to NULL, to workaround + the problem of some compilers barfing since older X headers don't + have the prototype for it. + +Mon Apr 19 10:11:12 1999 Owen Taylor + + * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak + for pseudocolor where colormap->colors was double + allocated. + + * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the + color value in the hash table with the pixel filled + in so when we do later hash table lookups, the color + value is correct. + +Sun May 2 15:29:45 PDT 1999 Manish Singh + + * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before + making the call + +Tue Apr 27 11:17:35 1999 Owen Taylor + + * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak + pointed out by Morten Welinder . + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Fri Apr 16 20:41:43 PDT 1999 Manish Singh + + * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines + + * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use + g_strdup_printf instead of calcing the length separately + +Tue Apr 13 02:49:33 1999 Owen Taylor + + * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG + that we don't do in many other places. (Fixing duplicate + #include of config.h) + + * gdk/gdkevents.c: include gdkinput.h _after_ config.h. + Otherwise, #ifndef XINPUT_NONE check in the latter + doesn't work. (Bug #546) + +Sun Apr 11 14:38:03 1999 Tim Janik + + * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color + "None" case insensitive. + +Tue Apr 6 16:38:51 1999 Owen Taylor + + * gdk/gdkselection.c: + Add error traps so if the other end of the connection + dies, we survive. + +Tue Apr 6 12:24:21 1999 Owen Taylor + + * gdk/gdkdnd.c (gdk_drag_motion): Separate out the + dest_xid field into two fields - one for the window + to send in messages, one to indicate the last looked + up window for caching purposes. This is needed, so + that Leave messages get the correct window. + +Mon Apr 5 13:21:30 1999 Owen Taylor + + * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare): + Fix warning created by people mucking around + with the gsource API. + + * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full): + Change mapping between GIOCondition and GdkInputCondition + to match the way the Linux kernel does it. This should + fix problems where closed pipes were no longer signalling + GDK_INPUT_READ on systems with a native poll(). + +Mon Apr 5 17:11:57 1999 Owen Taylor + + * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check + explicitly for the string "None" - it is in the XPM + spec and some servers treat unknown colors in odd ways + (like asking the user!) + +Thu Apr 1 16:58:10 PST 1999 Manish Singh + + * gdk/gdkevents.c: made "->" into a "." of previous change so + it compiles + +Thu Apr 1 18:41:25 1999 Owen Taylor + + * gdk/gdkevents.c (gdk_compress_exposures): Set the + window field of the event structure before calling + user filters. + +1999-03-31 Federico Mena Quintero + + * gdk/gdk.c (gdk_init_check): Use False as the last argument to + XInternAtom() here. This is a particularly Old And Nasty(tm) bug. + +Mon Mar 29 17:31:52 1999 Owen Taylor + + * gdk/gdkim.c (gdk_mbstowcs): Free the value of the + intermediate text property - prevents major memory + leak when gdk_use_mb. + gtk-d3august-990311-0: Bj|rn Augustsson + +Mon Mar 29 17:02:58 1999 Owen Taylor + + Patches from Akira Higuchi + gtk-a-higuti-990322-[0-3] + + * gdk/gdkfont.c (gdk_text_extents_wc): Make work when + sizeof(wchar_t) != sizeof (GdkWChar) + + * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS + that was causing -DX_LOCALE not to work. + + * gtk/gtkrc.c (gtk_rc_init): + X_LOCALE will never have LC_MESSAGES defined + + * gdk/gdk.c (gdk_init_check): + Remove --xim-preedit and --xim-status from argv properly. + + * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so + that the client window is present on the X server + before we pass it to the input method. + +Tue Mar 9 10:46:49 1999 Owen Taylor + + * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where + if --display is specified on the command line, than + the drag window will not be created on that display. + +Tue Mar 9 10:38:24 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where + lookups with only_if_exists == TRUE were inserting + bogus values into the atom cache. + +Wed Mar 17 09:00:00 1999 Tim Janik + + * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t), + then reset it to NULL. + + * gdk/gdkcolor.c: + (gdk_colors_free): + (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the + key for g_hash_table_remove() in both functions, this prevents us + from accessing possibly uninitialized portions of a GdkColor structure + where we are only interested in its pixel value. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + +1999-09-21 Tor Lillqvist + + * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting, + just to be sure. + + * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of + unused variables, leftovers from the X11 version. + + * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd. + + * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only + downcase fields on X11. + +Mon Sep 20 13:17:39 1999 Pablo Saratxaga + + * configure.in,po/pt_BR.po: added Portuguese Brazilian file from + Alex Sandro Queiroz e Silva + +1999-09-17 Tor Lillqvist + + * gdk/win32/gdk.def: Add gdk_threads_mutex. + + * gtk/makefile.msc: Correct path to libintl. + + Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in + use of gint vs. int, and gint vs. gboolean in headers and + definitions. Use GtkType for the *_get_type functions. Note that + these changes preserve binary compatibility. + + * gdk/gdk.c + * gdk/win32/gdk.c + * gdk/gdk.h: Fix inconsistencies: gint vs int. + + * gtk/gtkmain.c + * gtk/gtkclist.c + * gtk/gtkmenufactory.c + * gtk/gtknotebook.c + * gtk/gtkwidget.c: Fix inconsistencies, also gint + vs. gboolean. + + * gtk/gtkcolorsel.[ch] + * gtk/gtkcombo.[ch] + * gtk/gtkdrawingarea.[ch] + * gtk/gtkgamma.[ch] + * gtk/gtkhandlebox.[ch] + * gtk/gtkhpaned.[ch] + * gtk/gtkhruler.[ch] + * gtk/gtkplug.[ch] + * gtk/gtkpreview.[ch] + * gtk/gtkruler.[ch] + * gtk/gtksocket.[ch] + * gtk/gtkstatusbar.[ch] + * gtk/gtktoolbar.[ch] + * gtk/gtkvbbox.[ch] + * gtk/gtkvpaned.[ch] + * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type + functions. + + * gtk/gtkgamma.h: Fix bug, missing () in call of + gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. + +1999-09-14 Tor Lillqvist + + * gdk/gdkcolor.c (gdk_colormap_new) + * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak: + colormap->colors was allocated twice. + + * gdk/win32/gdk.c: Remove some unused stuff. + + * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the + colormap. + + * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type) + * gtk/gtklabel.h (gtk_label_get_type) + * gtk/gtktipsquery.c (gtk_tips_query_get_type) + * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType + in a couple of places, not guint. + +Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga + + * configure.in,po/et.po: added Estonian language file + +Wed Sep 1 14:36:12 CEST 1999 Pablo Saratxaga + + * configure.in,po/da.po: added Danish file + +Sun Aug 29 13:38:59 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: Minor FAQ Update + +Sat Aug 28 14:34:37 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ update + +1999-08-27 Tor Lillqvist + + Win32: Philippe Colantoni suggests a + way to get window contents continually refreshed while resizing. I + didn't like the effects myself, so it's not on by default. + + * gdk/win32/gdkprivate.h: New flag variable + gdk_event_func_from_window_proc, FALSE by default. + + * gdk/win32/gdk.c (gdk_init_check): Set above flag if the + environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we + are passed --gdk-event-func-from-window-proc. + + * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set, + and we have am event_func, call it instead of enqueing the event. + +1999-08-23 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon + Kelley: Set expose_count in GdkEventExposes correctly. + + * gdk/win32/gdkwindow.c: Remove dead code (#ifdef + MULTIPLE_WINDOW_CLASSES). + + * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer + for bug in NT, apparently NT *does* draw the end pixel, too, in + LineTo with a one-pixel pen, so we don't have to do it ourselves. + +1999-08-21 Tor Lillqvist + + Improvements by Hans Breuer: + + * gdk/win32/gdkwindow.c (RegisterGdkClass): New function + + * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the + CS_?REDRAW flags as they cause lots of (late) redraws when "show + window contents while dragging" is turned on. Allocate at least + one unique class for every GdkWindowType. If support for single + window-specific icons is ever needed (eg. Dialog specific), every + such window should get its own class. + +1999-08-19 Tor Lillqvist + + * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste + error that caused crashes. + +1999-08-17 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one + window, use ScrollWindowEx, and call UpdateWindow. This prevents + bugs when for instance part of the window was outside the + display. Thanks to Philippe Colantoni for finding and fixing this. + +1999-08-16 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial + endpoint calculations which were totally wrong. (A little RTFMing + helps a lot ;-) + + * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc + from a separate directory, not from gettext, because of licensing + issues (we want to use the LGPL version). + + * README.win32: Mention the intl from glibc vs from gettext issue. + +1999-08-13 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs + in the key event handling: Now AltGr chars work again. Also, + now Alt-digits are passed up as well as Control-digits. + Pass keypad plus and minus as normal plus and minus. + +Wed Aug 11 13:38:26 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +1999-07-25 Tor Lillqvist + + * README.win32 + * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without + the Wintab SDK. + + * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work + OK, but getting closer. Guard against bogus tilt data from Wacom + ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to + enable easier building without Wintab. + + * gdk/win32/gdkinput.h + * gdk/win32/gdkevents.c + * gdk/win32/gdkwindow.c: Minor changes related related to above. + + * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11 + code. As we have just one visual on Win32, no sense to have it in a + table, and no need for the hash table. + + * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look + better on white background. + +1999-07-21 Tor Lillqvist + + * README.win32: Update gcc build instructions. Mention gettext is + GPL. + + * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct + supported cursor size with GetSystemMetrics. + + * gdk/win32/gdkfont.c + * gtk/gtkfontsel.c: Guard against some font weight and charset + symbols being undefined (in mingw32 headers). + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin + * gtk/gtkthemes.c: No longer need to have differently named + gcc-built DLLs when using gcc-2.95 and -fnative-struct. + +hu Jul 15 13:33:15 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: Long awaited FAQ update. + +1999-07-15 Tor Lillqvist + + * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement + it. Obscure bit manipulation needed. + + * gdk/win32/gdkevents.c: Logging. + + * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming + style (file name include compiler name) for theme engines. + +1999-07-13 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage. + + * gdk/win32/gdkevents.c: Fix long-standing bug in key + events. The key.string wasn't zero-terminated, still we strdup'ed + it in gdk_event_copy(). Synthesize crossing events for button + events before possible propagation. + + * gdk/win32/gdkwindow.c: Log gdk_window_set_title. + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Use new DLL naming style for the + GCC-compiled ones. + + * gdk/win32/makefile.msc + * gtk/makefile.msc: Cosmetics mostly. + + * gtk/gtk.def: Add missing entry points. + + * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32. + +1999-07-09 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width + or height is zero. Don't print a warning if Pie or Arc fails, they + always fail (?) for very narrow ellipses. + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for + the part or the destination window corresponding to source area + outside of the source drawable's boundary. + + * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do + anything if less than two points. + + * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always + return NULL. Gtk cut-and-paste inside a single program works + better this way. (It always gets the clipboard contents from + Windows, not from its own copy, which is cleared anyway. I can't + say I fully understand what happens... Emulating the X selection + and property stuff is a bit of a mess.) + + * gdk/win32/gdkevents.c + * gdk/win32/gdkproperty.c: A bit more verbose logging. + + * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions + that never got deleted). Revamp gdk_region_shrink. + + * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions + after use. + + * gtk/gtk.def: Add some missing entry points. + + * gtk/gtkrc.c: Strip trailing directory separator from pixmap path + component. + +1999-07-04 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Handle + Control-digits specially. + +1999-07-03 Tor Lillqvist + + * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext. + +1999-06-28 Tor Lillqvist + + * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for + bitmaps, should be multiple of 4. (Thanks to Hans Breuer for + finding this.) + +1999-06-01 Jose H Mercado + + * gtk+.spec.in: Corrected some typos in files section. + +1999-06-15 Tor Lillqvist + + * README.win32: Mention using GNU gettext. + * config.h.win32: Enable NLS stuff. + * gtk/makefile.msc: Use GNU gettext. + * gdk/win32/gdkdnd.c: Minor header reorg. + * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly + cosmetics. + * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public. + * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call. + +Wed Jun 2 11:44:25 PDT 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.status + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged) + +1999-05-30 Tor Lillqvist + + * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to + SafeAdjustWindowRectEx. Don't override all calls to + AdjustWindowRectEx by it, but use it only in two places: When + creating a new top-level window and when moving a top-level + window. + + Use screen coordinate rectangle, not client rectangle, in + gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only + when we try to place a window so that the decoration (mainly, + title bar) isn't visible. + + These changes fix the bug that showed up for instance as the + GIMP's saved top-level windows moving right and down (by an amount + equal to the window decoration) for each session. This bug showed + up also in testgtk's "Saved Position". + + gdk_window_resize also redone a bit. + +1999-05-25 Tor Lillqvist + + * gtk/testgtkrc: Add (commented out) Windows-style theme + include line. + + * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points. + +1999-05-18 Tor Lillqvist + + * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and + gdkx.h to a gdk subdirectory, so that applications can include + these with without trouble. + + * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified. + (gdk_image_destroy): Plug resource leak, some GdkImages didn't + have their bitmap destroyed. + + * gdk/win32/gdk.def: Add gdk_root_parent. + +Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson + + * configure.in + gtk-config.in + ltconfig + ltmain.sh + gtk/Makefile.am: changes to compile nicely (with xlib) + on BeOS + +Sat May 1 15:04:42 PDT 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.3 + +Fri Apr 30 13:38:16 1999 Lars Hamann + + * gtk/gtkclist.c: + * gtk/gtkctree.c: merges from gtk-1-2 + +1999-04-25 Tor Lillqvist + + Support added for building using a GNU toolchain on Win32, + gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1. + + * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files. + * config.h.win32: Changes for gcc. + * gdk/gdkrectangle.c: Include gdk.h as . + * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp. + * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h. + * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better. + Protect shl stuff unavaiilable with mingw32 headers. + * gdk/win32/gdkevents.c: Fix typo. + * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc. + * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?) + * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler. + * gdk/win32/gdkprivate.h: Make up for some stuff missing from + the mingw32 headers. + * gdk/win32/makefile.msc: Use latest Wintab kit and glib. + * gtk/gtkfilesel.c: Include early, to get stat->_stat + definition on Win32. Test for NATIVE_WIN32, not _MSC_VER. + * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32. + Test for NATIVE_WIN32, not _MSC_VER. + * gtk/gtkmain.c: No use warning about developer version on Win32, + there aren't any non-developer versions anyhow. + * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER. + * gtk/makefile.msc: Use pthread from another directory. Minor other + changes. + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Mon Mar 8 12:52:53 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning + when gtk_widget_grab_default() is called for a widget that + is not within a GtkWindow. + +Sat Apr 10 13:52:54 BST 1999 Tony Gale + + * docs/gtk_tut.sgml, examples/clist.c: use a + scrolled window in the clist example. Minor + tutorial fixes. + +Fri Apr 2 09:19:20 BST 1999 Tony Gale + + * docs/gtk_tut.sgml: Style check from David King + + +1999-03-30 Pavel Machek + + * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code + compile with unknown value of GDK_WINDOWING + +1999-03-28 Raja R Harinath + + * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists + after the rule is fired. + (install-exec-local): Install gdkconfig.h only if the contents are + different from the currently installed gdkconfig.h. + +1999-03-26 Raja R Harinath + + * gdk/Makefile.am (configexecincludedir): Rename from + configincludedir so that gdkconfig.h will be installed + as part of `make install-exec'. + +Fri Mar 19 16:50:33 PST 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.2f + + * autogen.sh: libtool is not required to autogen gtk+ + + * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly + needed) + +1999-03-18 Tor Lillqvist + + * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for + declaring gdk variables exported/imported from the DLL. New image + type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and + drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and + GDK_DRAG_PROTO_OLE2. + + * gdk/gdk.h: Merge in Win32 version: Two new functions, + gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far + declared only for the Win32 version, but could be in the X11 + version as well. (Needed for a Xlib-less gdk_imlib.) + gdk_color_hash should have only one parameter. Declare + gdk_threads_mutex with GDKVAR. + + * gdk/gdkcolor.c (gdk_color_hash): A hash function should have + just one parameter. + + * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes + per pixel, not bits. + + * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv): + Fetch bpp (which means bits-per-pixel here) from another place on + Win32. Accept also depth==32 (which we might get on Win32) with + bpp==32. + + * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel, + gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc, + gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c: + Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be + in the backend-dependent directory, not in the common gdk + directory. + + * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk + headers. + +Wed Mar 17 05:06:49 1999 Tim Janik + + * gtk/gtkmain.c (gtk_init_check): tell people that they don't really + want to use the Gtk+ devel version (which is true, and yes - even i am + currently working with the 1.2.x branch). so everyone reading this, you + probably want to issue + cvs checkout -r glib-1-2 glib + and + cvs checkout -r gtk-1-2 gtk+ + as your next two comands. + +Wed Mar 17 02:49:32 1999 Tim Janik + + * configure.in: build gtkcompat.h from gtkcompat.h.in instead of + gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0. + + * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this + file. strongly deprecated the GTK_HAVE_* macros, we provide + GTK_CHECK_VERSION() for people that need to check for certain + Gtk+ versions. + + * gtk/gtkcompat.h: removed this from CVS. + * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad + idea right from the start, it just didn't seem like that back then. + +Wed Mar 17 01:46:28 1999 Tim Janik + + * merges from gtk-1-2: + +Tue Mar 16 17:43:33 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the + item factory class has been created. + (gtk_item_factory_parse_rc): likewise. + + * gtk/gtkmenu.c: + keep proper references for old_active_menu_item. + (gtk_menu_reparent): unset the usize of the new parent, + so the menu can sanely be size requested and we don't get nasty screen + artefacts upon next reparentation. + (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an + enter notify. only synthesize enter notifies if the pointer really is + inside the event window. + (gtk_menu_popdown): use gtk_menu_shell_deselect(). + (gtk_menu_popup): move the background setting stuff into + gtk_menu_tearoff_bg_copy() so it can be called from other places as well. + + * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use + gtk_menu_shell_select_item() to select the new item. + (gtk_menu_shell_deselect): export this function, so gtkmenu.c can + do the right thing for deselection as well. + +Sat Mar 15 20:10:33 1999 Tim Janik + + * gtk/gtkwidget.[hc]: + (gtk_widget_accelerators_locked): return whether a widget's accelerators + are locked. + + * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or + existing accelerators if the widget's accelerators are locked. + +Sat Mar 14 19:44:05 1999 Tim Janik + + * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items. + + * gtk/gtkmenu.c: truely forward key press and key release events to + the menu widget from the toplevel or tearoff window. we can't simply + connect to that, we need to stop further processing of the events as + well. + +Sat Mar 13 13:14:17 1999 Tim Janik + + * gtk/gtkmenu.c: + (gtk_menu_key_press): pass event->keyval, event->state to + gtk_accelerator_valid, instead of event->keyval twice. + refuse to install single letter accelerators for menus that use + single letter shortcuts. + + * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use + gtk_menu_ensure_uline_accel_group(). + + * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group() + which will always return an uline accel group, made + gtk_menu_get_uline_accel_group() return NULL if the group isn't + yet created. + +Mon Mar 15 01:03:27 1999 Lars Hamann + + * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag. + + * gtk/gtkclist.c (gtk_clist_column_title_passive): + Leave button sensitive, trap button_press, button_release, + motion_notify, enter_notify and leave_notify events instead. + (gtk_clist_column_title_active): disconnect event handler. + (gtk_clist_drag_data_get): fixed memory leak. Reported by + Guillaume Laurent + +Wed Mar 10 23:49:55 1999 Lars Hamann + + * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few + width/height mixups. + + * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal + if needed. + +Wed Mar 10 00:11:32 1999 Tim Janik + + * gtk/testgtk.c (create_item_factory): unref the item factory after + window's destruction. + + * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference + count on the menu shell around the menu item's activation, since the + signal emission may cause menu shell destruction. + + * gtk/gtkitemfactory.c: + the previous code leaked one accel group per menu. we use + gtk_menu_get_uline_accel_group() now to fix that, and with that + also create the underline accelerator group of the menus only if + required (i.e. an underline accelerator has been specified). + (gtk_item_factory_construct): + (gtk_item_factory_create_item): removed code that would create an + extra accel group for the menu (and leak references). + (gtk_item_factory_create_item): adapted the underline accelerator + installation code to properly feature gtk_menu_get_uline_accel_group(). + + * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive + menu->accel_group, this may return NULL if the accelerator group + hasn't been set yet. + added gtk_menu_get_uline_accel_group() to retrive the underline + accelerator group of the menu, this will be created on demand + and proper care is taken about its reference count. + + * gtk/gtkitemfactory.h: + * gtk/gtkitemfactory.c: + dumped the approach of keeping a widgets by action list on the + factory since the factory<->widget destroy negotiation didn't work + and would be hard to get going at all. instead we keep a list of + GtkItemFactoryItem items on the factory (GtkItemFactoryItems are + persistant throughout a program's life time). + also, i removed the static const gchar *key_* variables, and made + them inline strings (they weren't actually used anyways). + (gtk_item_factory_add_item): update ifactory->items. + (gtk_item_factory_destroy): destroy ifactory->items (and remove + the item factory pointer from the remaining ifactory widgets). + (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem + list to find the widget. + (gtk_item_factory_get_item): new function that works around + gtk_item_factory_get_widget() limitations, this function will only + return menu items, even for entries. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + + * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix + provided by Olaf Dietsche . + +Sun Mar 7 06:13:29 1999 Tim Janik + + * gtk/gtkcontainer.c: + (gtk_container_add_with_args): + (gtk_container_addv): + (gtk_container_add): before adding a child to a conatiner, make sure + it is (default) constructed, this is neccessary because under certain + circumstances the child will get relized and mapped immediatedly, in + which case it has to be constructed already. + +Mon Mar 1 17:58:21 1999 Tim Janik + + * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal + values > 1 as TRUE also. + +1999-03-16 Tor Lillqvist + + * README.win32: New file. + + * configure.in: Check for lstat. + + * config.h.win32: Add non-definition of HAVE_LSTAT, just for + completeness. + + * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat. + + * gtk/gtk.def: Removed CRs. + + * gtk/makefile.msc: Correct include path to Win32 GDK version (in + ..\gdk\win32). + + * gdk/win32/makefile.msc: Correct upwards relative paths. + +Mon Mar 15 03:38:34 1999 George Lebl + + * gtk/gtkdnd.c: (gtk_drag_highlight) swap the + gtk_drag_highlight_expose and gtk_drag_highlight_paint since + it was connecting a void function to expose_event and the int + returning function to the draw signal + +1999-03-14 Jeff Garzik + + * configure.in: + Use correct path to libgmodule.la when ref'ing uninstalled copy + of glib. (Already in stable branch, Bug #417) + +1999-03-15 Tor Lillqvist + + Win32 merge and general portability stuff: + + * acconfig.h,configure.in: Check for . + + * gdk/win32: New directory (actually, been there for a while). + + * gtk/fnmatch.c: Include for G_DIR_SEPARATOR, WIN32 and + NATIVE_WIN32, and use these. Always case fold on Win32. No + backslashed escapes on native Win32. + + * gtk/{gtk.def,makefile.msc}: New files. + + * gtk/Makefile.am: Add above new files. + + * gtk/{gtkaccelgroup,gtkbindings}.c: Include + instead of . + + * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include + config.h. Protect inclusion of , , and + appropriately. + + * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much). + Use ABS() (from ) instead of abs(). + + * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion + of gtk (and thus glib) headers, so that WIN32 will be + defined. With MS C, include for mkdir prototype. + + * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add + some casts, needed by MS C. + + * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't + implemented). + + * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include + only on X11 platform, otherwise . Use + G_SEARCHPATH_SEPARATOR_S and g_module_build_path. + + * gtk/gtkmain.h: Mark variables for export/import on Win32. + + * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case + the event is not a hint, or its window is not the slider. Needed + on Win32, at least. + + * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use + unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and + G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use + a subdirectory of the Windows directory as gtk system + configuration directory. + + * gtk/gtkselection.c: No chunks on Win32. + + * gtk/gtksocket.c: Not implemented on Win32. + + * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path. + + * gtk/makeenums.h: Include gdkprivate.h after gdk.h. + + * gtk/maketypes.awk: Declare variables with a macro that expands to + necessary export/import magic in the case of Win32. + + * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers. + +1999-03-13 Raja R Harinath + + * configure.in (gdk_wc): Move widechar tests from `glib' to here, + since those were meant only for gdki18n.h. + * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_* + for widechar tests. + * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h. + +1999-03-13 Tor Lillqvist + + * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate + gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h. + + * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is + installed) to CFLAGS. + + * gdk/Makefile.am: Add rules for gdkconfig.h. + + * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing + APIs. + + * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via + gdkx.h anyway when compiling for X11. + (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In + general): Merge in Win32 version. + + * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32 + version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde + expansion (if we don't have HAVE_PWD_H), allow for drive + letters. UNC paths (\\server\share\...) are not handled yet. Also, + included code from Craig Setera's port to Win32 (the one that uses + X11, and the cygwin dll), even if it probably will be abandoned. + + * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if + the user entered one herself. This way one can complete *.h and + don't get matches on any .help files, for instance. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + + * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix + provided by Olaf Dietsche . + +1999-03-09 Federico Mena Quintero + + * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced + the number of calls to gdk_draw_point() (and thus to X) by + clipping the points by hand. + + * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of + the clip parameter. + (gtk_handle_box_paint): Only paint the handle if the expose area + intersects it. + +Sun Mar 7 18:46:37 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) + + * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.) + +Sun Mar 7 11:43:34 1999 ape@spacetec.no (Asbjorn Pettersen) + + * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes. + Added function gen_8_3_dll_name(gchar *name, gchar *fullname). + +Fri Mar 5 09:12:24 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in + textmode (O_TEXT) for OS/2 version. + +Sun Feb 28 16:46:02 1999 Stefan Jeske + + * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to + GtkSpinButton, "input" and "output", to make the output more flexible. + The user has to provide a mapping between adjustment->value and the + output string (and vice versa, if the spin button is editable). + See testgtk for examples. + +Sat Feb 27 01:18:47 1999 Tim Janik + + * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started + new one. + + * configure.in: set gtk+ version to 1.3.0. +======= * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, +>>>>>>> 1.2802 diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index fbd5888e3d..baae1d9764 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,10 @@ +Sun Jan 13 23:23:22 2002 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_compute_hints): Fix problem where + widget->requisition was being used instead of + gtk_widget_get_child_requisition (), causing geometry widgets + with usizes to misbehave. + 2002-01-14 Sven Neumann * gtk/gtkrc.c: g_getenv() returns a const string. @@ -16366,5 +16373,8616 @@ Thu Nov 9 11:23:22 2000 Jonathan Blandford 2000-11-02 Havoc Pennington +<<<<<<< ChangeLog + * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and + use stock buttons. Should be 100% source compatible, appropriate + filesel fields now point to dialog->vbox and dialog->action_area. + On the bizarre side, dialog->action_area and filesel->action_area + are not the same widget. + (gtk_file_selection_init): Put some padding around the selection + entry, so it isn't touching the GtkDialog separator. + + * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, + use stock buttons, etc. Should also be source compatible. + Set the dialog default title in _init not _new(). + + * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): + Use stock buttons; don't put a button box inside the existing + dialog button box. Don't bother with push/pop colormap anymore. + + * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more + specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT + for message dialog, and necessary for the font selection and color + selection with help and apply buttons. + + * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer + to the created button widget. Set GTK_CAN_DEFAULT on the button. + (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing + between buttons, put less padding around the action area. + (gtk_dialog_run): Exit on unmap rather than on destroy. + This will also exit the loop if the widget is hidden. + (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT + instead of GTK_RESPONSE_NONE; since we're already adding a bunch + of GTK_RESPONSE_* stuff, this seems cleaner, and lets you + special-case delete event. + + * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment + formatting + +Sun Nov 5 05:32:39 2000 Tim Janik + + * gtk/testgtk.c (uposition_stop_configure): provide a toggle + button to temporarily disable position recording in the + "saved position" test. + +Sat Nov 4 05:37:17 2000 Tim Janik + + * gtk/gtkthemes.c: added compat code that temporarily implements + GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is + going to be revamped by owen's upcoming GtkModule patches, but + untill then people want gtk to build, right? ;) + +2000-11-04 Havoc Pennington + + * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member + list + + * docs/Changes-2.0.txt: Add note about + gtk_container_get_toplevels() + + * gtk/gtktextview.h: formatting + + * gtk/gtktextview.c: don't start descriptions with "Returns", + confuses gtk-doc + +Sat Nov 4 10:12:27 2000 Owen Taylor + + * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS, + look for glib-2.0.m4 not glib.m4. (Ali Abdin) + +2000-11-03 Havoc Pennington + + * gtk/gtktexttagtable.c: Docs + (gtk_text_tag_table_size): return a signed int + + * gtk/gtktexttag.c: s/tkxt/text/g; write documentation + (gtk_text_tag_event): make the event_object a GObject + + * gtk/gtktextview.c: Write API docs for all functions. + + * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value + for gtk_text_view_get_window_type() called on one of the private + windows. + + * gtk/gtktextview.c: Instead of accessing text_view->buffer + directly, call get_buffer() which demand-creates a default + buffer. So gtk_text_view_new() can be used to create a view with a + default buffer in it, if you just want an empty text box users can + put data in. Useful for GUI builders also. + +2000-11-03 Pablo Saratxaga + + * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5; + the charset encodign portion MUST be in lowercase. + * gtk/gtkrc.az: added file for Azeri language + +2000-11-03 Havoc Pennington + + Get widgets working on the btree/buffer side. Display of them + still doesn't work. + + * gtk/gtktextview.c: start implementing child widget stuff + + * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function + + * gtk/gtktextlayout.c: handle embedded widgets + + * gtk/gtktextdisplay.c: handle embedded widgets + + * gtk/gtktextchild.c: Implement all the child anchor goo + + * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New + function + + * gtk/gtktextbtree.c: Add child anchor table to the btree struct + (insert_pixbuf_or_widget_segment): abstract out common portions of + creating a child anchor or a pixbuf segment. + (gtk_text_btree_create_child_anchor): new function + (gtk_text_btree_unregister_child_anchor): new function + + * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the + allocate_child signal on GtkTextLayout + + * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return + values + (gtk_text_iter_get_child_anchor): new function + + * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a + default handler for the changed signal, which calls + gtk_text_buffer_set_modified(), instead of just always emitting + changed then calling set_modified() manually. I guess this is + maybe more flexible. It seems logical. + +Fri Nov 3 08:58:38 2000 Tim Janik + + * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_' + now. + + * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now. + +Thu Nov 2 14:10:51 2000 Owen Taylor + + * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have + been marked static. + +2000-11-02 Havoc Pennington + + * gtk/testgtk.c (create_labels): had a test backward + + * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC + fields, so the dest GC ends up with the correct clip origin, + etc. Fixes a bug where colored labels didn't redraw + properly. + +2000-11-02 Alexander Larsson + + * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c, + gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c, + gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c: + Add last argument to t_type_register_static call. + + * gdk/linux-fb/gdkdrawable-fb2.c: + Add last argument to t_type_register_static call. + export the get_image drawable virtual function. + + * gdk/linux-fb/gdkimage-fb.c: + Add last argument to t_type_register_static call. + rename gtk_image_get to _gdk_fb_get_image and + export it for use by gdkdrawable-fb2. + + * gdk/linux-fb/gdkprivate-fb.h: + export _gdk_fb_get_image. + + * gdk/linux-fb/gdkselection-fb.c: + Add new api call stubs. + + * gtk/Makefile.am: + Missing ( in linux-fb part. + + * modules/linux-fb/Makefile.am: + Must link with gdk_pixbuf or get unresolved symbol. + +2000-11-01 Havoc Pennington + + * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use + GTK_TYPE_TEXT_ITER and BOXED marshallers + + * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto + + * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto + + * gtk/gtk-boxed.defs: add GtkTextIter + + * gtk/gtkmarshal.list: Add marshallers for text widget that + properly use OBJECT and BOXED + +2000-11-01 Havoc Pennington + + * gtk/testgtk.c (create_labels): Test set_markup_with_accel() + + * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval + before returning it. + +2000-11-01 Havoc Pennington + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): + Clip the rectangle to be rendered to the drawable, since + get_from_drawable() requires a region within the drawable + +2000-11-01 Havoc Pennington + + * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4 + from coordinates. + +Wed Oct 25 20:10:57 2000 Owen Taylor + + * gdk/gdkevents.c (gdk_event_copy): Only ref the window if + it isn't NULL. + +2000-11-01 Havoc Pennington + + * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList + on a label + (gtk_label_finalize): unref the attr list if any. + + * gtk/testgtk.c (create_get_image): close test on second click + (make_message_dialog): close dialog if it exists + + * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute + + * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not + gdk-pixbuf + + * gtk/gtklabel.c (gtk_label_set_markup): new function to set label + from Pango markup format + (gtk_label_set_markup_with_accel): ditto but with accelerator + parsing + + * gtk/gtkimage.c (gtk_image_expose): reformatting. + + * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to + reflect current state of GDK - use gdk_drawable_get_colormap, etc. + Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to + call gdk_window_get_origin(). + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): + implement GDK_PIXBUF_ALPHA_FULL + +Wed Nov 1 03:43:42 2000 Tim Janik + + * gtk/gtksignal.c (gtk_signal_compat_matched): make use of + g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and + g_signal_handlers_disconnect_matched to block/unblock and disconnect + multiple handlers respectively, instead of only treating the + first handler found (bug reported by owen). + +Mon Oct 30 19:23:50 2000 Jonathan Blandford + + * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function. + + * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function. + + * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c + gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c, + gtk/gtktreeviewcolumn.h: Fixed inline docs. + + * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree + widget. Needs writing someday. + + * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to + the docs. + +2000-10-30 Havoc Pennington + + * gtk/gtktextview.h, gtk/gtktextview.c: + Rename delete_at_cursor delete_from_cursor, and + move to move_cursor. + +2000-10-30 Havoc Pennington + + * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c, + gtktextbuffer.h, gtktextchild.c, gtktextchild.h, + gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h, + gtktextiter.c, gtktextiter.h, gtktextiterprivate.h, + gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h, + gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h, + gtktexttag.c, gtktexttag.h, gtktexttagprivate.h, + gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c, + gtktexttypes.h, gtktextview.c, gtktextview.h: + + Massive reindentation and reformatting. Arg alignment and comments + still need fixing in various places. + +2000-10-30 Havoc Pennington + + * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals + to be named insert_at_cursor and delete_at_cursor so C++ can + handle them. + +2000-10-28 Tor Lillqvist + + * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not + to get a double directory separator in case the home directory + ends with one. This would cause trouble especially on Windows, + where the path will be confused with the syntax for an an UNC + (network share) path \\server\share\path. + (gtk_rc_add_initial_default_files): Ditto. + +Sat Oct 28 02:33:09 2000 Robert Brady + + * gtk/gtkmarshal.list: add new marshallers for GtkTextView. + + * gtk/gtktextview.c: Use correct marshallers. + +Fri Oct 27 17:56:26 2000 Jonathan Blandford + + * gtk/gtkliststore.c: Not sure how this ever worked. Fixed it to + use new iter stuff, and added all the appropriate signals et al. + + * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this + code is internal to gtk only. + +2000-10-28 Tor Lillqvist + + * gtk/gtk.def + * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use + glib-genmarshal etc. + +Fri Oct 27 20:15:00 2000 Tim Janik + + * gtk/Makefile.am: added dependancies for testtextbuffer which broke + parallel builds. + +Fri Oct 27 18:51:44 2000 Tim Janik + + * gtk/gtksignal.[hc]: adapt to GSignal signature changes. + +2000-10-27 Robert Brady + + * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), + en_GB (British), ia (Interlingua). + +2000-10-26 Havoc Pennington + + * gtk/gtktextiter.c (my_strrstr): fix constness warning + + Fixed output of: + nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_ + + * gtk/gtktextsegment.c (char_segment_new): rename + (_char_segment_new_from_two_strings): rename + (_toggle_segment_new): rename + + * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static + (make_clipboard_widget): make it static + (text_get_func): static + (text_clear_func): static + + * gtk/gtkcolorsel.c (adjustment_changed): make this function + static + (hex_changed): make it static + (hsv_changed): make it static + (opacity_entry_changed): make it static + + * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk + (toggle_segment_check_func): rename with _gtk + + * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk + (_widget_segment_new): rename + (_widget_segment_add): rename + (_widget_segment_remove): rename + (_widget_segment_ref): rename + (_widget_segment_unref): rename + + * gtk/gtktextmark.c (_mark_segment_new): Rename + _gtk_mark_segment_new + +2000-10-26 Havoc Pennington + + * gtk/gtkmarshal.list: add new marshallers used by the text widget + * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller + types + + * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix + marshaller types + + * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h, + gtk/gtktextdisplay.c: We need to preserve Tk copyrights and + license on these files. + + * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this + work. + + * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to + runtime random number different for each tree, instead of + a constant I made up. + +Thu Oct 26 07:36:16 2000 Tim Janik + + * gtk/Makefile.am: buncha cleanups, kludged build sources + dependencies with a Makefile: oldest-source-stamp dependancy + for the moment. automake is really fighting us here, with + intentionally not allowing user-defined rules or dependancies + prior to it's -include $(DEP_FILES) statement. sucks rocks! + + * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h + to public headers. tehy have a comment stating that they are + "semi-public" aren't included by gtk.h and if enums popup there, + they can be /*< skip >*/-ed. + + * gtk/gtktextlayout.h: + * gtk/gtktextdisplay.h: indentation fixes, comment fixes, + added LGPL... + +Wed Oct 25 20:40:25 2000 Jonathan Blandford + + * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to + GtkTreeIter. Added iterators everywhere. + + * gtk/gtktreeviewcolumn.c: Changed to use the iterators. + + * gtk/gtktreeviewselection.c: Changed to use the iterators. + + * gtk/gtktreestore.c: Changed to use the iterators. + + * gtk/gtkliststore.c: Commented out the code. Will convert to + iterators tomorrow. + + * gtk/gtkmodelsimple.c: Commented out the code. Will convert to + iterators tomorrow. + + * gtk/treestoretest.c: Changed to use iterators. + + * demos/testgtk/main.c: Moved to use the new iterator system. + +Thu Oct 26 02:10:32 2000 Tim Janik + + * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid + localization misbehaviour. + + * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's + a useless type without copy/free. + + * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead + of GTK_TYPE_CTREE_NODE. + +Thu Oct 26 00:51:52 2000 Tim Janik + + * gtk/gtksignal.c: + (gtk_signal_emitv): use g_value_set_static_{string|boxed} where + applicable. + + * gtk/gtk-boxed.defs (GtkSelectionData): specify + gtk_selection_data_copy and gtk_selection_data_free + do GtkSelectionData work as params in signals. + +Wed Oct 25 20:47:41 2000 Tim Janik + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed + implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that, + couldn't they at least give it a non-standard name? + + * gtk/gtktextlayout.c: arg! yet another implementation of + gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy? + + * gtk/gtktextbuffer.c: gotcha! captured a vagabonding + gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back + home. now i know this _is_ a conspiracy. + + * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for + ::state-changed. + + * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): + (gtk_accel_group_create_add): marshaller signature fixups. + + * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups, + pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM. + + * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid + anymore. + +Tue Oct 24 23:59:21 2000 Tim Janik + + * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since + due to the signal system changes, it wouldn't build currently. to + be fixed soon. + + * docs/Changes-2.0.txt: GtkSignal/GSignal updates. + + * gtk/gtkwidget.c: ::direction_changed takes an enum as argument, + so it needs gtk_marshal_VOID__ENUM() instead of + gtk_marshal_NONE__UINT(). + + * gdk/gdk*.c: adapted type registration functions. + + * gtk/gtkbindings.c: + * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is + gone. + + * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType. + + * gtk/gtkobject.c: + (gtk_object_destroy): + (gtk_object_shutdown): fixed recursion guards. basically we have to + catch the case where any of GObject.shutdown() or gtk_object_destroy() + is called during ::destroy, and avoid recursion there. + + * gtk/gtktypeutils.c: + * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with + boxed_copy/boxed_free. this needs a more general solution based on a + publically installed code-generator utility. + + * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED, + glib's gobject has support for that now. + define GtkSignalMarshaller in terms of GSignalCMarshaller. + +Mon Oct 23 09:36:42 2000 Tim Janik + + * gtk/gtksignal.[hc]: + * gtk/gtkmarshal.[hc]: + * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't + compile gtkmarshal.c on its own anymore, just include it in gtksignal.c. + removed #include s all over the place, gtksignal.h takes + care of that. + + * *.c: marshaller name fixups. + + * gtk/gtkmarshal.list: added a comment briefing the format. + +Sun Oct 22 23:14:39 2000 Tim Janik + + * gtk/gtksignal.[hc]: nuked old implementation. we mostly have + compatibility macros here now. more specifically, most of + the API is preserved (yes, _most_, nonwithstanding the + following exceptions listed, the API is stil lHUGE ;) + things that got removed completely: + GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(), + gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(), + gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(), + gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(), + gtk_signal_remove_emission_hook(). + non-functional functions variants: + gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook(). + the GtkCallbackMarshal argument to gtk_signal_connect_full() is + not supported anymore. + (gtk_signal_compat_matched): new internal function to aid + implementation of the compatibility macros, it provides + functionality to block/unblock/disconnect handlers based + on func/data. + + * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType, + + * *.c: adaptions to new type registration API signatures. + +Fri Oct 20 15:26:33 2000 Tim Janik + + * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge. + +2000-10-25 Robert Brady + + * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change, + gdk_property_delete): If window == NULL, assume the root window. + (restoring the behaviour that was in 1.2). + + * gtk/testtext.c (save_buffer): Allow creation of new files when + saving. + + (fill_file_buffer): Don't die if a UTF-8 sequence is split across + calls to read(). + +2000-10-25 Tor Lillqvist + + * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11. + + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkimage-win32.c + * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the + X11 backend. + + * gdk/win32/gdkcc-win32.c + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkfont-win32.c + * gdk/win32/gdkinput-win32.c + * gdk/win32/gdkmain-win32.c + * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall. + +2000-10-24 Havoc Pennington + + * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make + it a static function + + * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should + redraw text when a tag is applied to it. + + * gtk/gtktexttag.c (gtk_text_tag_affects_size) + (gtk_text_tag_affects_nonsize_appearance): private functions to + see if a tag requires various kinds of redraw/layout to be queued + up. + + * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock + + * gtk/testtext.c (fill_example_buffer): Put the cursor + at the start of the buffer, so search works by default + + * gtk/gtktextiter.c (lines_match): init match_start always + + * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New + function, get iter at a line + a byte index + + * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function, + to set byte position within a line + (gtk_text_iter_check): remove leftover G_BREAKPOINT thing + +2000-10-23 Havoc Pennington + + * gtk/testtext.c: Re-enable the "find" dialog + + * gtk/testgtk.c: Add test for gdk_drawable_get_image + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where + the arguments to gdk_draw_drawable were in the wrong order + (gdk_window_paint_init_bg): This function was ignoring the + init_region, instead of clipping to it, so the entire backing + pixmap was cleared on every begin_paint() + (gdk_window_begin_paint_region): Hmm, the same list-walking bug + was in here again, the loop kept using the same GtkWindowPaint + over and over. + (gdk_window_begin_paint_region): Fix a bug where we had two + x_offset instead of x_offset and y_offset + + * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable + before we get the image. + (gdk_draw_drawable): get the composite before we draw the drawable. + (gdk_drawable_real_get_composite_drawable): default + get_composite_drawable implementation that returns the drawable + itself + + * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add + get_composite_drawable virtual function + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy + list-walking bug + + * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to + make this work if the source drawable is a GdkDrawableImplX11 + instead of a public drawable type. This is really broken; the + problem is that GdkDrawable needs a virtual method get_xid(), but + of course that doesn't work in practice. Enter RTTI. + + Also, improve mismatched depth message. + + * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for + GdkPixmap + + * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init): + install _gdk_x11_get_image as our implementation of get_image + + * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to + _gdk_x11_get_image and export for use in gdkdrawable-x11.c + + * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around + gdk_drawable_get_image + + * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image + + * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize + get_image + + * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird + trailing semicolon after for loop + +Mon Oct 23 12:07:57 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem + where font_desc for widget's context lagged widget's font_desc by + one step. + +2000-10-22 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c + * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings. + + * gtk/makefile.mingw.in + * gtk/gtk.def: Updates. + + * gtk/testgtk.c: sleep() is called _sleep in MS's C + library. + + * gtk/gtkimcontextsimple.c: Include for bsearch(). + + * gtk/makefile.msc: Remove + + * gtk/makefile.msc.in: New file, like makefile.mingw.in. + + * gtk/Makefile.am: Add it. + + * configure.in: Generate it. + + * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor) + * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return + something even if not implemented, to satisfy picky MSVC. + + Patches by Hans Breuer: + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call + SetBkMode() and SetTextAlign() before calling + pango_win32_render(). + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values): + Set hcliprgn to NULL after destroying it. + (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL. + + * gdk/win32/gdkgeometry-win32.c + (_gdk_windowing_window_queue_antiexpose): More effective + implementation. + + * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's + depth as default, not the visual's. + + * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard + against empty title. + + * gdk/win32/gdkprivate-win32.h: Define a helper macro, + IMAGE_PRIVATE_DATA. + + * gdk/win32/gdkimage-win32.c: Use it. + +2000-10-22 Robert Brady + + * configure.in: Check for bind_textdomain_codeset + + * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset + present, make use of it. + + Add a translatable string "default:LTR" which, if translated + to "default:RTL", will cause the default direction to be + Right-to-Left. + + * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget + direction if marked as flippable. + + * gtk/gtkhscale.c: Mark widget as flippable. + +2000-10-04 Havoc Pennington + + * gtk/testgtk.c (create_buttons): create some stock buttons + with the default accel group + (create_image): test some new GtkImage features + (make_message_dialog): test GtkMessageDialog + (create_modal_window): fix someone's bizzarro indentation + + * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement + GTK_WIN_POS_CENTER_ON_PARENT. + Add "destroy with parent" setting, which means the window goes + away with its transient parent. + (gtk_window_get_default_accel_group): get the default accel group + for the window. + (gtk_window_set_destroy_with_parent): set/unset destroy with + parent flag + (gtk_window_read_rcfiles): invalidate icon set caches + after reloading rcfiles + + * gtk/gtkenums.h (GtkWindowPosition): add + GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog + on its parent window when the dialog is mapped for the first time. + + * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add + a simple message dialog class + + * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event + handler to emit response signal, and maybe later it would + honor a hide_on_delete flag - though that isn't there yet. + Set border width on the vbox to 2, so we get some padding. + Use a button box for the action area. + (gtk_dialog_key_press): synthesize a delete event if Esc + is pressed and the GtkWidget key press handler didn't + handle the escape key. + (gtk_dialog_new_with_buttons): new function creates a dialog + with some default buttons in it. + (gtk_dialog_add_action_widget): add an activatable widget + as a button in the dialog - you can also add a non-activatable + widget by accessing the action area directly. + (gtk_dialog_add_button): add a simple button - stock ID or + label - to the action area + (gtk_dialog_response): emit response signal + (gtk_dialog_run): block waiting for the dialog, return + the response. Override normal delete_event behavior, so that + delete_event does nothing inside gtk_dialog_run(). +======= +>>>>>>> 1.2802 + +<<<<<<< ChangeLog + * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal + emitted when an action widget is clicked or the dialog gets + delete_event + + * gtk/gtk.h: add gtkmessagedialog.h + + * gtk/Makefile.am: add gtkmessagedialog.[hc] + +2000-10-18 Havoc Pennington + + * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug + where any number of empty lines would get skipped + + * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the + edge. + + * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the + warning about invalid iterators (explain more thoroughly) + (gtk_text_iter_in_region): rename gtk_text_iter_in_range + + * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less + big + + * demos/*.c: Add error handling + + * gtk/gtktextbuffer.c: don't modify const iterators + + * gtk/gdk-pixbuf-loader.c: Add full error handling here + + * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors + on file load + + * gtk/gtkiconfactory.c: Update to reflect addition of error + handling to gdk-pixbuf loaders + +Wed Oct 18 11:14:05 2000 Owen Taylor + + * configure.in demos/Makefile.am demos/testgtk/*: Start of work to + move to new modularized testgtk. + +2000-10-17 Jonathan Blandford + + * gtk/gtktreeview.c: Draw the arrows correctly. + + * gtk/gtktreemodel.c: Added user docs. + + * gtk/gtk.h: remove gtktreedatalist.h. + + * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct + parent when generating my type. + + * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE, + POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT. + +2000-10-16 Jonathan Blandford + + * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move + GtkTreeModel from object to interface. + +2000-10-16 Havoc Pennington + + * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing + compilation + +2000-10-16 Jonathan Blandford + + * gtk/gtktreeselection.c: Add API documentation to all public + functions. + + * gtk/gtktreeviewcolumn.c: Added API documentation to all public + functions. + +2000-10-15 Jonathan Blandford + + * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function + proposed by Guy Harris . Also, added API + docs to all public functions. + + * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h, + gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c, + gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c, + gtk/gtktreemodel.h, gtk/gtktreeselection.c, + gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node + issue. + +2000-10-14 Robert Brady + + * configure.in: Added "fa" (Persian) to ALL_LINGUAS. + +2000-10-12 Jonathan Blandford + + * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added + values other then G_TYPE_STRING. + * gtk/gtktreeselection.c: Minor commenting updates. + * gtk/gtktreeview.c: Format updates. + +2000-10-09 Tor Lillqvist + + * README.win32: Update. + + * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two + lines that had been deleted by mistake (?). + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle + also the case fg==white and bg==black (but still not randomly + coloured cursors). Thanks to Wolfgang Sourdeau. + + * gdk/win32/*.c: Silence gcc -Wall. + + * gtk/gtk.def: Add missing entry points. + + Fixes by Hans Breuer: + + * gdk/makefile.msc + * gdk/win32/makefile.msc: Update. + + * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined, + some MSVC thing, presumably), cause breakpoint on failures. Add + GDK_NOR case. Call g_log_set_always_fatal. + + * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle + should be pased by reference. + + * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly. + + * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert. + + * gdk/win32/gdkevents-win32.c + * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE. + + * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and + implementation object. + + * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables, + not just windows. + + * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize): + Use the wrapper object. + +2000-10-06 Havoc Pennington + + * Makefile.am (SRC_SUBDIRS): contrib subdir + + * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library, + so it can be used in Xlib version + + * demos/testpixbuf.c (update_timeout): error checking from 1.0 + tree + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync + change from 1.0 tree that returns first frame of animation + if the loaded file is an animation. + + * contrib: add new directory to hold stuff that comes with GTK+ + but isn't really part of GTK+ (for now, gdk-pixbuf-xlib) + + * configure.in: add contrib/* + +2000-10-05 Havoc Pennington + + * demos/testpixbuf-save.c: add pixbuf save test + + * demos/Makefile.am: add testpixbuf-save.c + +2000-10-05 Jonathan Blandford + + * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with + GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c + * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/ + * gtk/gtktreeselection.[ch]: Replaced + "node_selected"/"node_unselected" signal with "selection_changed" + signal. + +2000-10-04 Jonathan Blandford + + * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new + tree widget. + +2000-10-04 Jonathan Blandford + + * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle + drawing. + +Wed Oct 4 15:52:15 2000 Owen Taylor + + * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed): + Move list pointer forwards before removing item from + list. (Crash reported by Salmaso Raffaele) + + * gdk/gdkwindow.h: Remove spurious trailing , + + * gdk/Makefile.am (LDFLAGS): You can't do interlibrary + dependencies on uninstalled libraries, sorry folks. + +2000-10-04 Havoc Pennington + + * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h, + gtk/gtkiconfactory.c: Fix copyrights + + * demos/testpixbuf.c: add inline pixbuf test + +Mon Sep 25 15:05:17 2000 Owen Taylor + + * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify): + Add gdk_window_iconify. + + * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c + (gdk_window_set_geometry_hints): Add win_gravity + to geometry structure. + + * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): + Implement _NET_WM_PING. + + * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): + Set _NET_WM_PID on the client leader. + + * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name): + Handle UTF-8 better. + + * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle + UTF-8 better, set _NET_WM_NAME as well. Only set + icon name if it hasn't previously been explicitely + set. + +2000-10-03 Havoc Pennington + + * gtk/testtextbuffer.c: clean up trailing whitespace, + add extensive tests for tag toggle iteration. + + * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan + distance + + * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag): + optimize case where the tag root is on level 1 + (gtk_text_line_previous_could_contain_tag): attempt to implement + (gtk_text_line_next_could_contain_tag): Abstract out node_compare + functionality + + * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle): + Implement this, though not very efficiently. + + * gtk/gtktextiterprivate.h: reformat + + * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end + iterator + + * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix + this to properly revalidate the iterators. + + * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work + properly at the end of the line (and therefore on empty lines) + + * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee, + maybe we should return a value... + +2000-10-03 Tor Lillqvist + + * config.h.win32: Guard definition of alloca(). glib.h now handles + that. + + * gdk/gdk.def + * gtk/gtk.def: Add new entry points. + + Changes just to make GTK+ build without errors on Win32. No hope + of it working in its current state, though...: + + * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings. Add + some functions from the X11 backend, just to make GTK+ build. + + * gdk/makefile.mingw.in + * gtk/makefile.mingw.in: Use correct gdk_pixbuf version + number. Add new object files. + + * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use + GetMessageTime to get timestamp (where on X11 uses + gdk_x11_get_server_time()). + +2000-10-02 Havoc Pennington + + * gtk/gtktextview.c: text_window_* weren't static and should have + been. + Start work on child widgets; not yet complete, syncing to + office computer. + + * gtk/gtktextchild.h: change this to contain a public interface, + starting work on child interfaces. + * gtk/gtktextchildprivate.h: move private interfaces here + + * gtk/Makefile.am: update to reflect gtktextchildprivate.h + + * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h, + gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, + gtk/gtktextmark.c: copyright notices + + * gtk/gtktextmarkprivate.h: reformat, and put _ in front of + internal functions + + * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of + internal function + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): + Reformatting + +2000-09-30 Havoc Pennington + + * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle + NULL start/end pointers + + * gtk/gtktextbuffer.c: Write some docs + (gtk_text_buffer_get_selection_bounds): Allow start/end to be + NULL, so you can just check whether there's a selection. + + * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to + cleanup_line or segments_changed ourselves, it gets done + in unlink_segment + + * gtk/gtktextmark.h: + s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/ + + * gtk/gtktextsegment.h: Clean up some indentation and naming mess + + * gtk/gtktextmark.c: delete some more old Tk cruft + + * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to + mark before removing it, so we can emit MARK_DELETED with a valid + pointer. + (gtk_text_buffer_mark_set): hold ref across signal emission + + * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve + whining about attempts to delete special marks + + * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with + underscore, since it's internal. + + * gtk/gtktextbuffer.h: Remove find_string prototype, this is + now implemented in terms of iterators in gtktextiter.h + + * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): + New function, destructively sets contents of buffer. Also + a convenient way to clear the buffer by setting text to "" + + * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat + multiline string literal + + * gtk/testtext.c (text_changed_callback): Redraw line numbers if + text changes. + + * gtk/gtktextiter.c (forward_char): Return FALSE if new location + is not dereferenceable + (gtk_text_iter_forward_lines): fix return value + +2000-09-29 Havoc Pennington + + * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation + + * gtk/gtktextview.c: Implement drag thresholding; change functions + that set border window size to have nicer name + (gtk_text_view_mark_set_handler): Fix this to have the + right signature. + + * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes + + * gtk/testtext.c: Update with API changes, put line numbers on + both sides. + + * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap + with this + + * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with + pixbuf; delete a big block of #if 0 Tk code + + * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace + insert_pixmap with insert_pixbuf + +2000-09-29 Martin Baulig + + * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid + confusion with the GdkPixbuf of the GNOME 1.x platform. + +2000-09-29 Havoc Pennington + + * gtk/gtktextview.c: Implement the side windows. + + * gtk/testtext.c: Implement simple line numbering in the + left side window; seems to make scrolling sloooow. Oops. + Also, cursor blink is for some reason causing redraws + of the line numbers. Should investigate... + +2000-09-28 Havoc Pennington + + * gtk/gtktextview.c: Set up infrastructure to deal with lots of + scrolling child windows, and draw focus rectangle properly. + + (gtk_text_view_buffer_to_window_coords): + Coordinate transformation to deal with all these freaking windows + and offsets + (gtk_text_view_window_to_buffer_coords): transform the other way + + * gtk/testtext.c (create_buffer): Update to match Pango API change + + * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the + anonymous tags + (foreach_unref): don't emit remove signal from finalize, just + set tag's parent to NULL + +2000-09-26 Havoc Pennington + + * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove + Fix some warnings + +2000-09-26 Havoc Pennington + + * gtk/Makefile.am (gtk_private_h_sources): Move more text widget + headers into the private header list + + * Makefile.am (pkgconfig_DATA): install pkg-config files + + * configure.in: add pkg-config files + + * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files + + * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate + outstanding icon caches on theme change. + + * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three + important types: + + (GtkIconSource): Specification for creating a pixbuf + appropriate for a direction/state/size triplet from + a source pixbuf or filename + + (GtkIconSet): List of GtkIconSource objects that are used to + create the "same" icon (e.g. an OK button icon), and cache for + rendered icons + + (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look + up the icon set for a given stock ID. GTK maintains a stack of + GtkIconFactory to search, and applications or libraries can add + additional icon factories on top of the stack + + * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse + the set of GtkIconSource specified for a given stock ID into + a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the + RcStyle, under the specified stock ID. + + * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function + render_icon used to derive a GdkPixbuf from a GtkIconSource. + This allows people to theme how prelight, insensitive, etc. are + done. + + (gtk_style_lookup_icon_set): Look up a stock ID in the list of + icon factories for a style, and return the resulting + icon set if any. + + (gtk_style_render_icon): Render an icon using the render_icon + method in the GtkStyleClass. + + * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): + Use the style for a given widget to look up a stock ID, get the + icon set, and render an icon using the render_icon method + of the style + + * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type + (contains information about a stock item), the built-in stock item + IDs, and functions to add/lookup stock items. + + * gtk/stock-icons/*: Stock icons that come with GTK + + * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns + a button based on a GtkStockItem + (gtk_button_new_accel): Takes a uline string and accel group, and + installs the accelerator. + + * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic + image-display widget. + +2000-09-25 Havoc Pennington + + * gtk/gtktexttypes.c: Remove Latin1 conversion stuff + + * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): + Fix a bug when removing node data, we didn't properly + re-splice the linked list after removing the data. + + * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through + GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget + + * gtk/gtktextbuffer.c (selection_received): fix g_convert usage + + * gtk/gtktextlayout.c (set_para_values): Set tab array + for the layout from the GtkTextTag. + + * gtk/gtktexttypes.h: delete tab and search cruft, + remove g_convert() in favor of GLib version + + * gtk/gtktexttypes.c: remove tab implementation from here, + move to Pango + + * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement + tab stuff using new PangoTabArray from Pango + + * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove + unused border_width stuff + +Thu Sep 14 12:21:12 2000 Owen Taylor + + * gtk/gtktexttypes.[ch]: Remove g_convert (moved to + glib) and now useless utf_to_latin1() latin1_to_utf() + + * gtk/gtktextview.[ch]: Change ::move_insert and + ::delete_text action signals to ::move and ::delete; + create the signals with the right enumeration type, + not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d, + C-v bindings, change Home, End to move to beginning/end + of line, Add C-Home C-End to move to beginning/end + of buffer. Change ::cut_text to ::cut_clipboard, etc; + combine ::scroll_text into ::move; use new GtkSelectionData + functions to simplify DND text handling. + + * gtk/gtkenums.h gtk/gtktextview.h: Move movement, + deletion enumerations here, rename enumeration values to + be consistently plural. + + * gtk/gtktextbuffer.c: Use new clipboard interfaces + for cut/copy/paste and primary selection. + + * gtk/gtktextbuffer.[ch]: Remove excess time and + 'interactive' arguments from cut/copy/paste; + rename cut to cut_clipboard, etc; remove + gtk_text_buffer_get_clipboard_contents(). + + * gtk/gtktextlayout.[ch]: Add + gtk_text_layout_move_iter_to_line_end() to move the iter to + line ends. + + * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text): + Functions to set or get a UTF-8 string on the selection + data. + + * gtk/gtkclipboard.[ch]: New, simplified selection handling + interfaces. + + * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly + created widgets - one of these is useless if we don't. + + * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export + a public function clear all targets registered for the + widget. + + * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt: + Never call gtk_widget_realize() - that was just asking + for bizarre side-effects. + + * gtk/gtkselection.c (gtk_selection_owner_set): Call + gdk_selection_owner_set even if the widget is the + same so that we reliably update the timestamp on + the server. + + * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a + gdk_x11_get_server_time() function. + + * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h + gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h: + Add some tricky filtering on serial numbers for + selection clear events to fix up long-standard + race condition FIXME's in gtkselection.c. + + * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add + routines to convert from utf8 to compound text or + STRING and from a text property to UTF-8. + + * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add + a convenience function gdk_get_current_event_time(). + + * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy + and free selection_data->data properly + +Sat Sep 9 10:23:53 2000 Owen Taylor + + * gtk/gtkthemes.c: Remove some unecessary includes. + +2000-09-08 Jonathan Blandford + + * gtk/gtktextdisplay.c + * gtk/gtktextlayout.c + * gtk/gtktexttag.c + * gtk/gtktexttag.h + * gtk/testtext.c: Change the overstrike property to strikethrough, + to closer match pango. + +Fri Sep 8 14:28:00 2000 Owen Taylor + + * gtk/gtktextview.c: Fix up visibility so that focus, + cursor_visible and blink interact properly. Reenable cursor blink + which had been roughly disabled. Make blink and focus + properly per-view. + + * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible): + Add a flag for whether to display insertion cursor and + a function to set the flag. + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change + get_line_y() to get_line_yrange(), to be a bit more generally + useful. + +Thu Sep 07 20:54:33 2000 George Lebl + + * gtk/gtkmenu.c: in gtk_menu_set_submenu_navigation_region + do stop_navigating_submenu, to clear last timeout properly. + Also in gtk_menu_motion_notify move ignore_enter above + the conditional to make it always happen as suggested by Owen + +2000-09-07 Tor Lillqvist + + * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o + + * gdk/win32/gdkwin32.h: Add more definitions missing from the free + w32api headers. + + * gdk/win32/gdkprivate-win32.h: Add a couple of missing + declarations. + + * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings. + (gdk_win32_get_colormap): A line had been deleted by mistake. + + * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too. + (gdk_event_translate): Handle more virtual keycodes to be able to + generate GDK events for Control-comma, Control-period, etc. + + * gtk/gtk.def: Add some missing entry points. + +Thu Sep 7 11:47:02 2000 Owen Taylor + + * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c: + Doc comment fixing. (Mostly non-matching parameter names.) + + * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify + comments a little to avoid looking like a doc comment. + + * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to + GTK_INPUT_ERROR. (Should the mechanism for erros in spin button + conversions be changed to GError?) + + * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): + Move private #defines into .c file. + + * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize + order of argument addition, remove duplicates. + + * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass): + parent class is FrameClass, not BinClass. + + * gtk/gtk.h: Add gtkinvisible, which was missing. + (It's occasionalyl useful for client apps, if seldom.) + + * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER + #define. + +Wed Sep 6 09:53:15 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space + coordinates when creating window, instead of GDK-space + coordinates. (Avoid BadValue on too large windows.) + +2000-09-05 Sebastian Wilhelmi + + * configure.in (use_mmx_asm): Remove conftest* after use along the + lines of AC_TRY_COMPILE. + + * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead + of g_dirname, which is deprecated. + (gtk_rc_parse_any): Removed calls to + g_scanner_{freeze,thaw}_symbol_table, which are deprecated. + + * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy): + Removed calls to g_hash_table_{freeze,thaw}, as they are + deprecated now. + + * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename + instead of g_basename. + +2000-09-04 Elliot Lee + + * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid + ANSI warning. + +Sun Sep 03 00:47:08 2000 George Lebl + + * gtk/gtkwidget.h: Add some documenting comments about + GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT + just as owen said on irc. + + * gtk/gtkwindow.c (gtk_window_set_default): Don't blindly + set HAS_DEFAULT. Only set it if there isn't another window + holding it (a focus window which RECEIVES_DEFAULT) and only unset + it if the widget is not the focused window with RECEIVES_DEFAULT. + This fixes weird double default bugs in dialogs which has things + call gtk_window_set_default at times. + +Fri Sep 1 22:39:07 2000 Owen Taylor + + * gtk/gtkmenu.[ch] TODO.xml: Apply patch from + Nils Barth and David Santiago to improve submenu + navigation. The patch does this by creating a triangular + region from the point where the pointer leaves the + menu to the submenu. While the pointer is in + that region and a timeout has not expired, events + that would cause the active submenu to change are + ignored. + +Fri Sep 1 15:34:46 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where + moving a toplevel window immediately after sizing it would + result in it being sized back to the old size since + impl->width, impl->height aren't updated until we hear + back from the server. There is still a (longstanding) bug + here that gdk_window_get_size() will give the wrong size + until we do hear back. + +2000-08-31 Havoc Pennington + + * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, + gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, + gtk/gtktexttagprivate.h, gtk/gtktextview.c: + Rename GtkTextStyleValues to GtkTextAttributes + +2000-08-31 Havoc Pennington + + * gtk/gtktextbtree.c (GtkTextBTree): cache end line, + for rapid testing whether an iterator is the end iterator + (gtk_text_btree_new): init end line cache + (gtk_text_line_is_last): use fast cached line to + see if we're the last line. + (get_last_line): use cached line here too, should + speed up some random unrelated code. + +2000-08-30 Havoc Pennington + + * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer + signals. + + * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and + delete_text signals. This allows the signals to be used for + implementing undo. + + * gtk/gtktextbuffer.c: Change signal handler signatures; + provide "interactive" argument when emitting insert_text or + delete_text signal. + +2000-08-30 Havoc Pennington + + * gtk/gtktextbuffer.c: Docs + +Fri Aug 25 12:16:15 2000 Owen Taylor + + * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP + from switch statements, since Tor removed the enumeration + value. + + * gdk/x11/gdkimage-x11.c (gdk_image_get): + s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/. + +2000-08-29 Elliot Lee + * */*.h: Use G_GNUC_CONST. + +2000-08-27 Havoc Pennington + + * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs, + minor indentation fixes, inserted some FIXME about stuff I + realized was broken while documenting it. + (gtk_text_iter_get_pixmap): allow out params to be NULL, following + GTK convention + +Tue Aug 22 12:33:24 2000 Owen Taylor + + * gtk/testgtk.c (create_styles): Fix double free of + font desc. + +Mon Aug 21 22:39:18 2000 Owen Taylor + + * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}. + + * gtk/testgtk.c (create_styles): Add a test for modifying + the style through gtk_widget_modify_*. + + * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add + a function to get the current modifier style. + + * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy + of the passed in GtkRcStyle instead of ref'ing it. + + * gtk/gtkrc.[ch]: Add gtk_rc_style_copy(). + +2000-08-20 Tor Lillqvist + + * gdk/gdkimage.h + * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the + shared memory image+pixmap GdkImage type, or + gdk_image_bitmap_new(). They were used in the gdk_imlib port, but + I am dropping that. + + * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to + actually call gtk_init_abi_check(), passing also + sizeof(GtkWindow). Ditto for gtk_init_check(). + + * gtk/gtk.def + * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check): + New functions, used to check that the GTK+-using code has been + compiled using the correct compiler and switches. In particular, + with gcc one has to use the -fnative-struct switch as GTK+ is + compiled with that. + +Fri Aug 18 17:27:46 2000 Owen Taylor + + * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling + ->prev fields when merging lists. (Found simultaneously + by Pawel Salek and Jakub Jelinek) + +2000-08-12 Tor Lillqvist + + * gdk/gdk.def + * gtk/gtk.def: Add missing entries. + + * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use + OUT_TT_ONLY_PRECIS, try to get a TrueType font. + + * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New + function. Dummy implementation at this point. + + * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer + rules. Undefine GTK_COMPILATION when compiling the test programs. + + * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import. + +2000-08-11 Tor Lillqvist + + * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8() + to convert back and forth from UTF-8 and the "system" (or "current + locale") charset when necessary. Indentation/spacing cleanup. + +2000-08-10 Havoc Pennington + + * Makefile.am (snapshot): Change the format of the snapshot + version to match glib + + * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h + from EXTRA_DIST since it doesn't seem to exist + +2000-08-10 Tor Lillqvist + + * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage" + version of the directory name (not the UTF-8 one) when building + the path name to stat(). + +2000-08-03 Elliot Lee + + * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a + PANGO_ATTR_SHAPE set. + +Thu Aug 3 09:17:06 2000 Owen Taylor + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from + Peter Osterlund to simplify the code while keeping the + functionality the same. + +Wed Aug 2 14:57:38 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move + is_viewable() test further inside the function, since removing the + window from the redraw list without clearing ->update_area + was also very broken. + +2000-08-02 Tor Lillqvist + + * configure.in: Check for . + +2000-08-01 Martin Baulig + + * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning() + to display the message that this is a development version of GTK+. + +Mon Jul 31 18:37:36 2000 Owen Taylor + + * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation + was depending on widget->allocation instead of the width of text_area, + which was incorrect for subclasses like GtkSpinButton. + + * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos + with width == 1 tests that should be width == -1. + +Mon Jul 31 16:45:48 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, + (broken, Elliot, every single window blank on X) custom code with call + to gdk_window_is_viewable() which a) prevents code duplicate and + b) works. + +2000-07-31 Elliot Lee + + * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order + to get the GDK_PARENT_ROOT() macro to work. + * gtk/gtkmarshal.list: Add NONE:STRING,POINTER + * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces + of, windows that aren't shown. + * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of + pointer grab stuff. + +Mon Jul 31 13:53:16 BST 2000 Tony Gale + + * docs/gtkfaq.sgml docs/gtk-faq.sgml: + s/gtk_main_iteration/g_main_iteration/ + + Did this already in change: + Mon Nov 15 17:17:51 GMT 1999 Tony Gale + don't know how it got reverted. + +2000-07-31 Stanislav Brabec + + * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and + gdk_arg_no_debug_cb to fix compilation problem with --disable-debug. + + * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3, + not gdk_pixbuf. + +2000-07-30 Pablo Saratxaga + + * configure.in,po/{sp,sr}.po: Added Serbian files + +2000-07-30 Tor Lillqvist + + * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST. + + * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue): + Remove the g_pipe_readable_msg stuff. Not needed with new GLib + GIOChannel implementation. + + * gdk/win32/gdkinput.c + * gdk/win32/gdkpango-win32.c: Update license name here, too. + + * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix + definition to match prototype. + + * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS. + +2000-07-27 Elliot Lee + + * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type + function, to allow handling image formats that cannot be detected + by looking at content alone. + +Thu Jul 27 13:13:21 BST 2000 Tony Gale + + * docs/tutorial/*.gif *.jpg *.eps + Update these to the same look-n-feel. + Why does including images in DocBook suck so badly? + +Thu Jul 27 05:06:29 2000 Tim Janik + + * gtk/gtktable.c: applied patch from Phil Thompson + that enables space settings for + the last row/columns as well. + +Wed Jul 26 12:59:31 2000 Tim Janik + + * *.[hc]: applied patch from Andreas Persenius that + updates the license headers to the GNU Lesser General Public License, + as well as updating the copyright year to 2000. + +2000-07-26 Robert Brady + + * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h + and po/Makefile, was installing and looking for them under gtk20 + and gtk2 respectively. + +2000-07-25 Havoc Pennington + + * gtk/testtext.c: Comment out some stuff that depends on the rest + of my patches. + +2000-07-25 Havoc Pennington + + * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text + buffer + +2000-07-25 Havoc Pennington + + * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text + widget changes. + + * gtk/gtktextview.h: To be consistent with usage of "line" + throughout the API to mean "newline-terminated thingy", change + MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH + to MOVEMENT_LINE. + + (GtkTextView): Add flags for default editability, and whether to + show the cursor. Add functions to get/set that. Add + + (gtk_text_view_get_iter_location): new function + + * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to + gtktextlayout.h + (g_convert): Add g_convert temporarily, will go in glib in a bit + + * gtk/gtktexttagtable.h: include gtktexttag.h, and define + GtkTextTagTableForeach instead of brokenly using GHFunc. + Change gtk_text_tag_table_foreach() so it doesn't use GHFunc. + + * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here, + moved to public header. + + * gtk/gtktexttag.h: Rename the "elide" attribute of tags to + "invisible", since "elide" was a bad name. + (gtk_text_tag_get_priority): Added + + (GtkTextStyleValues): put this in public header, along with + functions to use it. + + * gtk/gtktextmarkprivate.h: Include more headers, since we no + longer include gtktextbtree.h. + + * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref, + gtk_text_mark_deleted + + * gtk/gtktextlayout.h: Don't include the "really private" headers, + only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData + to make this possible. Now we only need to install + gtktextlayout.h, not gtktextbtree.h and gtktext*private.h. + (However the Makefile.am isn't changed yet because of the + logistics of merging gtk-hp-patches piecemeal) + + * gtk/gtktextiterprivate.h: include btree header, so it compiles; + rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since + gtk_text_iter_get_line is now used in the public API for a + different purpose. + + * gtk/gtktextiter.h: Clean up function names to be more + consistent. Always call char offset "offset" and byte index + "index". A "line" is always a line number. + + (gtk_text_iter_is_last): new function, more efficient than + the existing way to check + (gtk_text_iter_is_first): new function, also more efficient + + (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these + + (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from + gtk_text_iter_forward_char, etc. + + (gtk_text_iter_forward_to_tag_toggle): Renamed from + forward_find_tag_toggle, since this isn't a linear search + + (GtkTextCharPredicate): rename from GtkTextViewCharPredicate + + (gtk_text_iter_forward_search, gtk_text_iter_backward_search): + New functions, search for a buffer substring. + + * gtk/gtktextbuffer.h: Add fields to store whether a paste is + interactive and default editable (since we need to store that info + until we receive the selection data). + + Remove all the _at_char and at_line etc. versions of functions; + only have iterator versions. + + Add _interactive() versions of functions, that consider the + editability of text. (FIXME add interactive flag to the + insert/delete signals per Darin's suggestion) + + (gtk_text_buffer_get_tag_table): new function, demand-creates the + tag table if necessary + + Remove declaration of gtk_text_buffer_get_iter_from_string + + (_gtk_text_buffer_get_btree): private/internal function, added. + + + * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData. + (gtk_text_line_is_last): new function + +2000-07-25 Havoc Pennington + + * gtk/gtkprogressbar.h: Implement new sane, 5-function API for + using GtkProgressBar. See Changes-2.0.txt for details. + + * gtk/gtkprogressbar.c: Add object arguments "fraction" and + "pulse_step" which are the equivalent of + gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction. + Implement new API. + + * gtk/gtkprogress.h (struct _GtkProgress): Add a field + (use_text_format) to mark whether text set on the progress bar is + a format string. Deprecate entire GtkProgress interface. + + * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE + (gtk_progress_build_string): make this a no-op if use_text_format + is FALSE + + * docs/Changes-2.0.txt: Describe progress bar changes. + +2000-07-25 Tor Lillqvist + + * Makefile.am: Include the build directory. + + * configure.in: Generate build/Makefile, build/win32/Makefile, + gdk/, gdk/win32/, and gtk/makefile.mingw. + + * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf. + Add GETTEXT_PACKAGE. + + * gdk/gdk.def + * gtk/gtk.def: Updates. + + * gdk/gdkfont.h + * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't + need them any longer. + + * gdk/gdkinput.h: Mark gdk_core_pointer for export/import. + + * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with + PANGOWIN32_LIBS and gdk_pixbuf. + + * gdk/win32: Compiles, but no doubt doesn't work at all. + + * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. + + * gdk/win32/gdkinput.c: New file, temporarily. + + * gdk/win32/gdkinput-win32.h: New file + + * gdk/win32/gdkinputprivate.h: Remove. + + * gdk/win32/gdkpango-win32.c: New file. + + * gtk/makefile.mingw.in: New file + + * gtk/makefile.cygwin: Removed + + * gtk/Makefile.am: Update accordingly. + + * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and + made externally visible. + + * gtk/gtkmain.c: Use it. + + * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h + is enough. + + * gtk/gtktypeutils.c: Mark glib_debug_objects for import. + +2000-07-24 Elliot Lee + * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the + individual backends already. + * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together + again. Yes, there really is a good reason for this, if you are using the gdkregion + internals, and if you're not, why do you care? + * gdk/gdkwindow.c: Fix inverted condition + * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely). + * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb + * gtk/gtkrange.c: Redraw trough when moving. + * gtk/gtktypeutils.c: Fix warning by adding const cast. + * modules/linux-fb/basic.c: Fix unknown glyph retrieval. + +2000-07-23 Tor Lillqvist + + * configure.in: Check for mkstemp and sigsetjmp. Output + gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw. + + More work on GDK for Win32. Still in an intermediate state. + + * gdk/makefile.cygwin + * gdk/win32/makefile.cygwin: Removed. + + * gdk/makefile.mingw.in + * gdk/win32/makefile.mingw.in: New files. + + * gdk/Makefile.am + * gdk/win32/Makefile.am: Generate and distribute them. + + * gdk/win32/gdkwindow-win32.h + * gdk/win32/gdkdrawable-win32.h + * gdk/win32/gdkpixmap-win32.h: New files. + + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkcursor-win32.c + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkgc-win32.c + * gdk/win32/gdkimage-win32.c + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Update data structures. Cosmetics: + Rename fields and variables called xcursor, xid, etc (these names + were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc. + +Sat Jul 22 17:41:26 2000 Owen Taylor + + * gtk/gtkentry.[ch]: Fix some problems with vertical + alignment. + + * gtk/gtkentry.c (gtk_entry_find_position): Fix + char/byte confusion. + +Sat Jul 22 11:16:05 2000 Owen Taylor + + * gtk/gtktextview.c (changed_handler): Fix bug where + redraw wasn't being done properly when height of + dirty region changed. + + * demos/Makefile.am: Remove various references to + -lgmodule + +Fri Jul 21 15:28:13 2000 Owen Taylor + + * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new + PangoAttrShape to reserve space for pixmaps, add + GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps + in the display functions. + + * gtk/testgtk.c (create_layout): Set some more exotic + scrolled window options + + * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type): + Add function to set the shadow type of a window, to allow + putting a shadow around widgets such as GtkLayout or GnomeCanvas + which don't draw their own frame. + +Fri Jul 21 16:34:42 BST 2000 Tony Gale + + * docs/tutorial/package-db-tutorial.sh: New file for + packaging DocBook format tutorial + +Fri Jul 21 14:23:51 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Minor updates + + * docs/tutorial/*.jpg *.eps: Screenshots for tutorial + +2000-07-19 Tor Lillqvist + + * gtk/gtksignal.c: Fix C++ comment. + + * gtk/gtkimmulticontext.c + * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__, + don't return value from void functions. + + * gtk/gtk.def: Add gtk_rc_style_unref. + +2000-07-19 Sebastian Wilhelmi + + * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h, + gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h, + gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h, + gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h, + gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h, + gtk/gtktypeutils.h: Include files outside of the extern "C" + block. Makes some C++ compiler happy. Reported by Denis Vakatov + . + +Wed Jul 19 14:07:57 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Yet more clean ups. + Completes first pass. Hurrah! + +Tue Jul 18 17:17:55 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: More clean ups. + +Mon Jul 17 18:52:38 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to + paint the background of the text area which was accidentally + removed at some point. + + * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: + + - Move most of the functionality from the theme vtable + into GtkRcStyleClass and GtkStyleClass. The moved + vtable functions were changed a bit in the move to + work better in their new home. + + - Get rid of the engine and engine_data fields from + GtkRcStyle and GtkStyle; instead the theme + engine derives theme-specific subclasses of GtkRcStyle + and GtkStyle + + - Add extra dlsym() found entry point to themes, + theme_create_rc_style(). + + * gtk/gtkstyle.c: Copy xthickness, ythickness fields + in gtk_style_real_copy. + + * gtk/themes.[ch]: add a function gtk_theme_engine_register_type() + to register a type associated with an engine. (The engine + won't be unloaded as there is an instance of the type.) + + +Mon Jul 17 18:19:06 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Clean ups. + +Mon Jul 17 13:59:29 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots + of cleaning up to do. + +2000-07-15 Tor Lillqvist + + * gdk/testgdk.c: New file, quick hack to test backends for + pixel-by-pixel correctness of the most simple graphic operations. + +Fri Jul 14 20:30:25 2000 Owen Taylor + + * Really release 1.3.1 + + * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new + include structure. + +Fri Jul 14 18:40:39 2000 Owen Taylor + + * Released 1.3.1 + +Fri Jul 14 16:21:26 2000 Owen Taylor + + * gtk/gtktextlayout.c: use FALSE for size_only most + of the time when calling gtk_text_layout_get_line_display() + to avoid causing double reshapes when a redraw follows + immediately after. + +Tue Jul 11 11:13:40 2000 Owen Taylor + + * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate + appropriate region and gdk_window_process_updates() so trough + updating doesn't lag behind the window being scrolled. + + * gdk/gdkgc.c: Make parent_class pointer static. + +Sun Jul 9 21:31:23 2000 Owen Taylor + + * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c: + include . + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix + cut-and-paste error in computing memory offset for 4 channels. + +Fri Jul 14 14:05:02 2000 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove + gtk_rc_append_default_pixmap_path(), since it wasn't + adding an interesting path and we don't have a meaningful + default for this value. + +Fri Jul 14 12:22:49 2000 Owen Taylor + + * configure.in Makefile.am gtk-config.m4 gtk.m4: Move + gtk-config to gtk-config-2.0 move gtk_.m4 to + gtk-2.0.m4 + + * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am + gdk/Makefile.am demos/Makefile.am: Change + library names to libgtk-1.3.la, etc, so that we + can distinguish gtk-1.2 and gtk-2.0 on the linkline. + + * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am + gdk/Makefile.am gdk/x11/Makfile.am + Move include files into /usr/include/gtk-2.0, + /usr/lib/gtk-2.0/include/ + + * autogen.sh acconfig.h configure.in gtk/gtkmain.c + gtk/gtkintl.h: Change package for gettext from + gtk+ to gtk20. Put hack in autogen.sh to modify + po/Makefile.in.in after gettextize to make this + possible. + + * gtk+.spec: Some updates, not tested. + + * gdk-pixbuf/Makefile.am: Move loaders into + $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders. + + * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations + $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir + to THEMENAME/gtk-2.0/. Move engine directory to + $(libdir)/gtk-2.0/$(GTK_VERSION)/engines. + +2000-07-12 Tor Lillqvist + + Win32 changes, still doesn't build though. + + * gdk/makefile.cygwin + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Updates. + + * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same + default values for fg and bg pixel as X11 does (0 and 1), not + black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default. + Use 0 for pen width by default (treated as 1 anyway later, but for + apps that might check the value in the GdkGC). + (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public + interface to gdk_gc_predraw and _postdraw. + + * gdk/win32/gdkwin32.h + * gdk/gdk.def: Add gdk_win32_hdc_{get,release}. + + * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove + extraneous semicolon. + + * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0. + + * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth, + not the Win32 bitspixel value. + + * gdk/win32/gdkcc-win32.c: + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Changes to make compilable, with new + GDK object structure. + +Tue Jul 11 20:59:35 2000 Tim Janik + + * docs/tutorial/gtk_tut_12.es.sgml (name): + * docs/tutorial/gtk_tut_it.sgml (name): + * docs/tutorial/gtk_tut_fr.sgml (name): + * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely + outdated email adress: s/timj@psynet.net/timj@gtk.org/. + +Tue Jul 11 13:10:57 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Cleanup indenting and various + small changes. + +Tue Jul 11 08:04:58 2000 Tim Janik + + * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen + a bug here, never been here and never fixed anything ;( + (don't segfault if tree->root_tree is NULL, which happens prior + to widget realization, but puke instead). + +Tue Jul 11 06:38:42 2000 Tim Janik + + * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and + add the necessary tokens. + + * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style. + (gtk_rc_style_to_style): copy thicknesses. + (gtk_rc_init_style): apply thicknesses. + (gtk_rc_parse_style): parse xthickness and ythickness. + + * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements. + + * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): + (gdk_window_new): + (_gdk_windowing_window_init): + * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): + (gdk_pixmap_create_from_data): + (gdk_bitmap_create_from_data): + (gdk_pixmap_new): + * gdk/x11/gdkimage-x11.c (gdk_image_get): + (gdk_image_new): + * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): + * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): + * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get): + (gdk_colormap_get_system): + (gdk_colormap_new): + * gdk/gdkwindow.c (gdk_window_init): + * gtk/gtkstyle.c (gtk_style_new): + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): + * gdk/gdkpixmap.c (gdk_pixmap_init): + * gtk/gtkrc.c (gtk_rc_style_new): + use g_object_new() instead of g_type_create_instance() which + is a private function for fundamental type implementations. + +Thu Jul 6 16:12:14 2000 Owen Taylor + + * configure.in: Add check for db2html + +Thu Jul 6 14:53:05 2000 Owen Taylor + + * gtk/gtktypeutils.c (gtk_type_init): Add a temporary + hack to set glib_debug_objects based on gtk_debug_flags. + +Thu Jul 6 14:12:13 2000 Owen Taylor + + * INSTALL.in: Update the Prerequisites section. + + * Makefile.am demos/Makefile.am docs/Makefile.am + docs/tutorial/Makefile.am gdk/x11/Makefile.am + gdk/linux-fb/Makefile.am: Dist fixes + +Thu Jul 6 12:26:03 2000 Owen Taylor + + * NEWS: 10,000 foot view of 1.3.1 changes. + +Thu Jul 6 11:54:03 2000 Owen Taylor + + * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c + gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c + gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h + gdk/x11/gdkmain-x11.c: + + Patch from George Lebl to add a GdkGrabStatus enumeration to use + as a return value of gdk_*_grab(). Previously, we just + returned the X11 values directly. + +Thu Jul 6 11:27:44 2000 Owen Taylor + + * gdk/x11/Makefile.am: Patch from George Lebl to + install all the headers in the right place. + +Tue Jul 4 13:13:01 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Add remaining sections. Completes + initial conversion to DocBook. + +2000-07-04 Tor Lillqvist + + * README.win32: Improve a bit. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also + WM_SYSCHAR, and other changes to get handling of Alt+nnn or + Alt+0nnn on the numpad (used to enter characters by numeric code + from current DOS or ANSI codepage) working correctly, as in other + Windows apps. + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use + same argument validity tests as in X11 version. + (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon. + + * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor + definitions in case missing from headers. + + * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also + destroy the window-specific cursor. + (RegisterGdkClass): Use the global gdk_ProgInstance instead of + calling GetModuleHandle(NULL). + (gdk_window_set_cursor): Reworked to always copy the passed cursor + with CopyCursor before setting it as the window-specific + cursor. It is OK for the caller to destroy the GdkCursor (and thus + also its Windows cursor) after calling this function. Destroy any + previous window-specific cursor. + +Mon Jul 3 17:54:49 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): + font charset is iso8859-1, not iso-8859-1. + +Mon Jul 3 17:08:14 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): + Use g_get_charset() instead of g_get_codeset(). + + * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: + Comment out some strdup'ing functions to keep timj + happy until we finish fighting this out. + +Mon Jul 3 14:24:16 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with + <= width or height. + + * gtk/gtktable.c (gtk_table_attach): Fix missed merge + from 1.2 for parent/child states. + + * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple + of typos. + + * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of + event structures, replace with a generic axes field. Replace + deviceid/sourec with GdkDevice *device. + + * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function + to extract particular axis use value from event. (Also + can be used for normal X/Y.) + + * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision; + allow for arbitrary number of axes, namespace everything + as gdk_device_*. Replace guint32 deviceid with GdkDevice * + everywhere. + + * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: + Get rid of the gdk_input_vtable setup if favor of simply + defining the functions in gdkinput-none/gxi/xfree.c in + a similar fashion to the way that the port structure is + done. + + * gtk/gtkdnd.c: Fix fields of synthesized button press event + for new event structures. + + * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match + new device interfaces. + +Sun Jul 2 18:19:50 2000 Owen Taylor + + * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to + set the initial text. + + * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c + gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c + gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c + gtk/gtkvscale.c: Adapt to new argument of create_pango_layout(). + + * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new + pango_layout_set_font_description to simplify. + +Sun Jul 2 17:43:41 2000 Owen Taylor + + * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new + pango_layout_set_font_description to simplify. + +Sun Jul 2 17:06:40 2000 Owen Taylor + + * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c + gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use + pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'. + + * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with + PANGO_PIXELS() macro. + +Sun Jul 2 15:24:41 2000 Owen Taylor + + * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function + that returns a PangoContext owned by the widget and updated to + match future changes in the widget. Also, make + gtk_widget_create_pango_layout() use this context. If we ever + add a ::changed signal to PangoContext, this will make things + much more convenient. + + * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed() + in the appropriate places instead of destroying the layouts and + creating new ones. + + * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context() + in a few strategic places. + +Sun Jul 2 14:37:58 2000 Owen Taylor + + * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call + gtk_widget_size_request() on reparented child, if one. Otherwise, + queue_resize() on the child never results in it getting size-requested + at all. + + * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items + in option menus, so that (with luck) people won't copy it into + their apps in the future. + + * gtk/gtkoptionmenu.c: Connect ::size_request on the menu + to gtk_option_menu_calc_size. This isn't perfect, but should fix + a lot of problems with changing the size of the menu's menu + items after adding it to the option menu. + + * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language(). + + * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when + the text direction for a widget changes. + + * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use + ::direction_changed to get rid of various hacks. + +Sun Jul 2 13:19:12 2000 Owen Taylor + + * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate + name. + +Sun Jul 2 13:06:26 2000 Owen Taylor + + * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign + flag to the structure. Do not call XFreePixmap on pixmaps created + by gdk_pixmap_foreign_new(). + +Sun Jul 2 12:45:50 2000 Owen Taylor + + * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel + value using GdkRGB functionality given GdkColormap and GdkColor. + (name not final, waiting for inspiration.) + + * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to + set the foreground/background of a GC using the GC's colormap + and GdkRGB. (name not final, waiting for inspiration.) + + * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from + gdk_rgb_get_cmap(), put #define in gdkcompat.h. + + * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for + gtk_widget_get_visual(), gtk_widget_get_default_visual, etc, + purely a function of the corresponding colormap. Make + gtk_widget_set_visual(), etc, noop macros in gtkcompat.h. + + * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite + gdk_pixbuf_*create_from_xpm_* in terms of + gdk_pixbuf_new_from_xpm_data(), move into platform independent + code. + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take + advantage of the new draw_rgb_32_image_dithalign. + + * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added. + + * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap + on each created GC. + + * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap. + + * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure + which we initialize from the drawable when the GC is created, + if the drawable has a colormap. + + * gdk/x11/gdkgc-x11.c: include string.h for memset. + + * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc. + + * gtk/gtklayout.[ch]: Remove unsed configure serial member. + +Sat Jul 1 16:28:32 2000 Owen Taylor + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): When + actually returning expose events, make sure to set + the count field properly. + + * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix + accidentally reintroced bug which always cleared + the graphics_exposures value. + +Wed Jun 28 18:03:09 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Change DocBook layout slightly + +Wed Jun 28 17:49:05 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7. + +Wed Jun 28 13:31:55 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Start of Section 6. + +Mon Jun 26 19:37:04 2000 Owen Taylor + + * configure.in: Put 1.3.1 in warning message, not 1.3.0. + + (Fixes problem with drawing childless frames. Pointed out + by and a first patch from Anders) + + * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always + compute a child_allocation, even if we don't have a child. + + * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation): + Always chain to the parent's impl, even if we don't have a child. + +Mon Jun 26 18:53:31 2000 Owen Taylor + + * gdk/gdkrgb.c: If possible, create only a single shm segment and + use multiple parts of it instead of creating a bunch of separate + segments, since the maximum number of segments per system is not + large. (This might be worth backporting to GTK+-1.2.x if we make a + new release ) + + * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo + structure in preparation for per-colormap GdkRGB. + + * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm + to False when we get EINVAL from shmget so that the caller of + gdk_image_new can retry with a smaller segment size. + +Mon Jun 26 13:01:16 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Add Sections 4 & 5. + +Fri Jun 23 17:54:23 2000 Tim Janik + + * configure.in: make the current version number 1.3.1 (binary age 0, + interface age 0). + + * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*, + gtkcompat.h is all we want. + + * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of + GLib primitive types. fixed g_type_register_fundamental() argument + ordering. + + * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code + compiles. + + * gdk-pixbuf-loader.[hc]: get rid of unistd.h include. + object code cleanup, comment trigraph fixes, etc... + +2000-06-23 Havoc Pennington + + * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark + instead of making up a bogus name for first_para_mark + + * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow + 0 as a context ID + +Thu Jun 22 17:43:51 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Change filename. Add Section 3. + +2000-06-21 Havoc Pennington + + * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where + we didn't check window->bg_pixmap != GDK_NO_BG. + + * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of + gdk-pixbuf + +Thu Jun 22 14:02:19 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgm: Move file to here. + TODO: Update Makfile.am + +Thu Jun 22 13:41:09 BST 2000 Tony Gale + + * docs/gtk-faq.sgm: Add Section 2 + +Thu Jun 22 08:43:45 BST 2000 Tony Gale + + * docs/gtk-faq.sgm: New file. Start of DocBook + version of the FAQ. + +Wed Jun 21 23:04:17 2000 Owen Taylor + + * configure.in (GDK_PIXBUF_MAJOR): Define version + numbers for GDK_PIXBUF_*, as they get substituted + into a header file. Need to consider versioning + for gdk-pixbuf more carefully later. + +2000-06-21 Raja R Harinath + + Work with srcdir != builddir. + * demos/testanimation.c: Don't include "gdk-pixbuf.h". Use + , not "gtk-pixbuf/gdk-pixbuf-loader.h". + * demos/testpixbuf.c: Likewise. + * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h". + * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h". Use + . + * demos/pixbuf-demo.c: Use not "gtk.h". Don't include + "gdk-pixbuf.h". + * demos/Makefile.am (INCLUDES): Remove unneeded directories. + +Wed Jun 21 19:45:02 2000 Owen Taylor + + * TODO.xml: Change 1.4 version numbers to 2.0. + +Wed Jun 21 19:29:08 2000 Owen Taylor + + * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation + fixups to GTK+ standard. + +Wed Jun 21 16:38:13 2000 Owen Taylor + + * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard, + gdk-pixbuf. + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): + fixups for GObject. + + * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of + gdk-pixbuf with GDK dependencies moved into GDK. + + * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily + move gdk-pixbuf-loader here until GObject has signals. + + * demos/: New directory of demos. Move demos from + gdk-pixbuf here. + + * demos/pixbuf-init.c: Small bit of code to check for + loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found, + set GDK_PIXBUF_MODULEDIR appropriately. + + * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat + define which no longer makes sense. + +2000-06-21 Havoc Pennington + + * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use + gtk_get_default_language + + * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): + new function to get the default language + + * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: + s/gtk_text_view_style_values/gtk_text_style_values/ + + * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h: + Add a "language" field to tags. + + (gtk_text_tag_set_arg): Fix bug in setting + "bg_full_height_set" tag. + +2000-06-21 Havoc Pennington + + * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate + in the interfaces + + * gtk/gtktexttypes.c: Remove UTF functions, use glib + stuff instead when possible. + + * gtk/gtktexttypes.h: Delete some unused constants + + * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c, + testtextbuffer.c: use glib instead of custom unicode routines + +Wed Jun 21 12:50:58 2000 Owen Taylor + + * docs/es/: Removed mistakenly added generated sgml + + * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex: + Remove outdated info files. + + * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial: + Moved tutorial files into subdir + + * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into + subdir. + + * docs/man/gtk_button.pod: Remove. (contents will be + integrated into gtk-reference button page.) + + * configure.in docs/Makefile.am docs/tutorial/Makefile.am + docs/faq/Makefile.am: Adjust for new organization + +2000-06-21 Christopher Blizzard + + * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs) + not $(MKINSTALLDIRS) + +Wed Jun 21 12:24:28 2000 Owen Taylor + + * gtk/testgtk.c (create_text): Finish the job Elliot started + of removing font setting test for text widget. (Since text widget + and GdkFont are not deprecated, and cause portability problems.) + +Wed Jun 21 11:41:43 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c + gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c: + Remove use of libunicode in favor of new GLib functions. + + * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32, + nano-x, framebuffer. The X11 include is just a hack until we get + the necessary functions in gdkcolor.h, so there is no reason to + add other includes of platforms. + + * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert + window bigger than the screen change. + + * gtk/testgtk.c: Revert some random changes from Elliot + that had no particular point and were causing testgtkrc + not to function correctly. + + * gdk/gdkregion-generic.h: Revert change from Elliot. Just + because GdkSegment and GdkRegionBox have the same fields, + it doesn't mean that 'typedef GdkSegment GdkRegionBox' + results in clearer code. + + * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events, + gdk_input_translate_coordinates): Fix missed GdkObjectification + +2000-06-18 Elliot Lee + + * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way. + * gtk/gtk{plug,socket}.h: Missed commits from previous. + +2000-06-20 Havoc Pennington + + * modules/linux-fb/Makefile.am: Make this compile + without framebuffer enabled + + * gdk/linux-fb/Makefile.am: Add conditional to not build + framebuffer unless specified in configure + + * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting + the size of the target instead of source if -1 was passed for + width/height + + * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix + width/height confusion. + +2000-06-19 Havoc Pennington + + * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be + GDK_DRAWABLE_XID. In the future, we probably want to make it + faster with G_DISABLE_CHECKS turned on. + +2000-06-14 Havoc Pennington + + * gdk/Makefile.am: add gdkpixmap.c + + * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/ + s/gdk_image_init/_gdk_windowing_image_init + + * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject + ref/unref + + * gdk/gdkcolor.h: make GdkColormap a GObject subclass + + * gdk/gdkcompat.h: remove GdkWindowType compat, since + GdkWindowType is now non-deprecated; + change gdk_window_get_type() compat to be + gdk_window_get_window_type(). + + * gdk/gdkdnd.h: make GdkDragContext a GObject. + + * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure + virtual GObject. Make all functions call into the vtable. + Move gdk_image_put() guts in here. Remove GdkDrawableType + and gdk_drawable_get_type(), these are now GdkWindow-specific. + draw_image, get_depth, get_size, set_colormap, get_colormap, + get_visual added to the vtable. + + * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual + GObject. Virtualize everything. + (gdk_gc_new_with_values): remove check for destroyed window, + because now GdkWindow::create_gc will check this. + (gdk_gc_set_values): New function to set GC values, this + was already implemented but wasn't in the header + + * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject. + + * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove + _gdk_window_draw_image(), remove _gdk_windowing_window_class, + remove _gdk_window_class; add _gdk_window_impl_get_type() and + _gdk_pixmap_impl_get_type(). Rename gdk_window_init to + _gdk_windowing_window_init, rename gdk_image_init to + _gdk_windowing_image_init. + + * gdk/gdkpango.c: Reflect GObject-ification of PangoContext. + (gdk_draw_layout): Remove check for destroyed window, + because all the drawable methods already check it. + + * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject. + Add gdkpixmap.c which contains implementation of GdkDrawable + virtual table (by chaining to a platform-specific implementation + object). + + * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, + GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace + GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate, + GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate, + GdkColormapPrivate. + + * gdk/gdktypes.h: #include + + * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject. + Move most functionality to platform-specific implementation + object. GdkWindow itself now handles the backing store, then + chains to the platform-specific implementation. + (gdk_window_get_window_type): return GdkWindowType of the window. + (gdk_window_peek_children): New routine, returns the children of + a GdkWindow + (gdk_window_get_children): Was in X11-specific code and did + XQueryTree. Changed to simply return a copy of window->children; + so it can go in cross-platform code. + + * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path + + * gdk/x11/gdkcolor-x11.c: implement X-specific parts of + GdkColormap; just changed to use the new private data instead + of casting to GdkColormapPrivate. + + * gdk/x11/gdkcursor-x11.c: added a couple typechecks to + gdk_cursor_new(). + + * gdk/x11/gdkdnd-x11.c: Change the way we access private fields + (private data member in the GObject). + (xdnd_manager_source_filter): Function had broken + error handling, fix it (use gdk_error_trap_push). + + * gdk/x11/gdkdrawable-x11.c: This file now implements + a base class for GdkWindowImplX11/GdkPixmapImplX11. This + base class is purely for the convenience of the X port, + and not part of the interface to cross-platform GDK. + + * gdk/x11/gdkevents-x11.c: Reflect various renamings. + + * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's + specific to X, and returned by the create_gc virtual method + of GdkDrawableImplX11. + (gdk_x11_gc_set_dashes): Change this to take an array of gint8 + rather than gchar, this was also changed in the GdkGC vtable. + (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the + mask is 0, return immediately, instead of checking every flag. + This is faster, and keeps us from segfaulting if values is NULL + and the mask contains some nonzero flags. + + * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of + GdkWindow. + + * gdk/x11/gdkglobals-x11.c: change type of grab window, since + GdkWindowPrivate is gone. + + * gdk/x11/gdkim-x11.c: rename things that got renamed. + + * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and + remove the image_put stuff that got transferred to GdkDrawable. + + * gdk/x11/gdkinput.c: renamings + + * gdk/x11/gdkmain-x11.c: #include + + * gdk/x11/gdkpixmap-x11.c: GObject conversion + + * gdk/x11/gdkprivate-x11.h: indentation fixes + + * gdk/x11/gdkproperty-x11.c: renamings + + * gdk/x11/gdkselection-x11.c: renamings + + * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now + implements the platform-specific "impl" object. + Moved gdk_window_get_children to gdk/gdkwindow.c + + * gdk/x11/gdkx.h: Remove all the private structs and private datas + that no longer exist. Add declaration of GdkGCX11 object here. + Fix all the macros to still work. + + * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow, + GdkDragContext from the boxed types since they are now GObjects. + + * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject, + moved xthickness/ythickness into the instance. GtkStyleClass + functions are now in the standard vtable for GtkStyle, so you have + to create a GObject subclass to write a theme engine. + (gtk_style_copy): fixed a leaked PangoFontDescription + (gtk_style_init): renamed gtk_style_realize, so gtk_style_init + can be the standard GObject function. + + * Throughout GTK: + s/style->klass->[xy]thickness/style->[xy]thickness + s/pango_layout_unref/g_object_unref/ + + * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject. + + * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of + accessing GDK internals. + + * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of + accessing GDK internals. + +2000-06-18 Elliot Lee + + * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen. + + * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar + problem by calculating event position relative to the trough + rather than the slider. + * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate. + + * gdk/gdkgc.h: Add GDK_NOR. + + * configure.in, Makefile.am: Add modules top level dir + * configure.in: Only use pangox library if building x11 target. + * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use. + +Fri Jun 16 22:24:22 2000 Christopher Blizzard + + * gtk/gtkcolorsel.c: Change private class member to be named + private_data throughout the file. + + * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to + private_data to avoid clashing with keyword. + +Fri Jun 16 22:24:22 2000 Christopher Blizzard + + * gdk/gdkdnd.h: Add comment to remove warning. + +Sun Jun 18 15:35:35 2000 Pablo Saratxaga + + * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by + Byelorussian language; changed the Makefile and file names + to reflect that. + +Mon Jun 12 16:58:40 2000 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw + rather than gdk_window_hide; this makes things work + correctly if the window is programmatically hidden while + iconified. + +Sun Jun 11 12:46:19 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix + cut and paste typo where wrong pixmap was being + unref'ed. (Pointed out by a friend of KUSANO Takayuki.) + +Sun Jun 11 10:22:36 2000 Owen Taylor + + * gtk/gtkselection.c (gtk_selection_bytes_per_item): + Add helper function to compute format / bytes + relationship. Use in a couple places to fix up + errors which assume 8 * format. + + * gtk/gtkselection.c (gtk_selection_request): Use 32 + rather than 8 * sizeof (GdkAtom), to work correctly + on Alpha. + +Thu Jun 8 21:54:51 2000 Christopher Blizzard + + * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not + libgtk.la + (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11 + versions + + * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error + checking macros return NULL since the function has a return value. + +Wed Jun 7 15:44:42 2000 Owen Taylor + + * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping + GTK+ from building at all. + + * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues. + +Mon Jun 5 19:32:53 CEST 2000 Paolo Molaro + + * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am, + gtk/Makefile.am: make it possible to configure gtk for different + targets on the same platform. The library name is now + libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb + flag. Only the x11 target compiles right now. + * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h, + gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir. + * gdk/nanox/gdk*generic*: delete generic region code. + * gdk/linux-fb/gdk*generic*: delete generic region code. + * README.nanox: update information. + +Tue Jun 6 10:53:59 2000 Owen Taylor + + * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to + prepend not append. (Pointed out by Brett Hall.) + +Tue Jun 6 01:59:57 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout. + +Mon Jun 5 16:00:09 2000 Owen Taylor + + * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll + need this later, and this makes sure that the atexit for + glib gets called after that for GDK, so atexits are + properly ordered for object leak checking. + + * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit(). + + * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call + pango_x_shutdown_display() + + * gtk/simple.c (main): Close window on destroy. + +Mon Jun 5 11:50:02 2000 Owen Taylor + + * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need + to treat initial creation different from setting with + regards to the graphics-exposures parameter, so add a parameter + indicating whether this is initial or not. + +Mon Jun 5 13:29:31 2000 Owen Taylor + + * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose() + to sort of work by adding an extra return_exposes arg + to gdk_event_translate() - it might be better to simply + deprecate the function altogether and force people to rewrite + without it. gdk_window_scroll() handles most of it, and where + gdk_window_scroll() doesn't work, simply redrawing more does. + + * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up + assertion. + + * gtk-config.in: Include PANGO_CFLAGS/LIBS. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a + bunch of pretty much useless /* Print debugging info */ comments + which had drifted away from the code they were commenting. + +2000-06-02 Havoc Pennington + + * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer + is in working order. + + * gtk/testtext.c: Change to reflect anonymous mark API + + * gtk/gtktextview.c: Convert from mark names to GtkTextMark*. + + * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size + field, which was unused. + + * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro, + saves some typing. + + * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark* + + * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable + flag on the insertion point and selection bound + + Throughout, use GtkTextMark instead of GtkTextLineSegment, and + make mark-manipulation functions take a GtkTextMark* instead of a + mark name. + + * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to + GtkTextMarkBody; will be used to detect attempts to delete + the permanent marks (insert and selection bound) + + * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer + +Fri Jun 2 12:56:01 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED + flag to on. + + * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): + Honor DOUBLE_BUFFRED_FLAG + + * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a + function to set the DOUBLE_BUFFERED flag. + + * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether + or not exposes done on the widget should be double-buffered. + + * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations + to be what would be expected. (Fixes problem with a + g_return_if_fail() validating a TextDirection enumeration) + +Thu Jun 1 23:05:13 2000 Owen Taylor + + * gtk/gtkwidget.c: Remove all references to + offscreen flag which was no longer used. + + * gtk/gtkprivate.h (enum): Remove unused flags and compress. + + * gtk/gtkframe.c (gtk_frame_set_label_widget): Check + for non-null label_widget->parent. + + * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute + which no longer was used. + + * gdk/gdkpango.c (gdk_pango_context_get_info): make static. + + * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks + for null arguments. + + * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add + check for destroyed windows. + +Thu Jun 1 13:48:45 2000 Owen Taylor + + * gtk/gtkimmulticontext.c: Add a finalize method and unref + the slave context there. + + * gtk/gtkinvisible.[ch]: Make reference counting behavior + identical to GtkWindow. + +Thu Jun 1 01:54:11 2000 Owen Taylor + + * Makefile.am gdk/gdkpango.c: Copy the layout render function from + pangox to here, so we can write them independent of rendering + system, using GDK primitives. + + * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c + gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable, + since we have a rendering-system independent implementation in + terms of draw_glyphs(). + + * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New + function to render a single line. + + * gdk/x11/gdkpango.c: Move the guts of this file mostly + into ../gdkpango.c, which simplifies things, since we + don't have to deal with raw X gc's. + +Fri May 19 04:28:16 2000 Owen Taylor + + * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to + get the logical attributes for a given GtkTextLine. + +Tue May 30 16:05:39 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track + g_locale_get_codeset() to g_get_codeset() change. + +Tue May 30 15:03:19 2000 Owen Taylor + + * gtk/testcalendar.c (calendar_font_selection_ok): Use font + descriptions. + + * gtk/gtkentry.c (gtk_entry_draw_text): Center text within + the entry. + + * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of + redoing (vastly simplifying) for Pango. Still needs quite + a bit of work. (Size selection is currently poor. List of + predefined sizes is not a good idea, since all of these + sizes won't necessarily be distinct.) + +Tue May 30 13:50:19 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle + CODESET results for LANG=C. + +Mon May 29 15:49:10 2000 Owen Taylor + + * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC + which takes a stringized pango font description; + ignore the older 'font' and 'fontset' declarations. + + * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font + field with a GdkFont derived via gdk_font_from_description(), + for compatibility. (Should we just remove it entirely? + Probably too much compatibility breakage, but people + should be migrating to the new Pango stuff as quickly + as possible.) + +Mon May 29 15:47:41 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/. + +Mon May 29 15:44:46 2000 Owen Taylor + + * gtk/gtkcalender.c: Roughly pango-ized. Really needs + redoing; there are some bugs in size allocation right + now, the semi-existant distinction between header / day + fonts was removed, but, with Pango, could actually + be made functional in a nice way. + + * gtk/testcalender: Move calender from examples into this + directory as a test program. (We really need to restrcture + testgtk into a whole directory full of tests for every + widget or functionality group, separated into multiple .c + files.) + +Mon May 29 15:19:56 2000 Owen Taylor + + * gtk/testgtk.c (file_exists): Fix stupid typo that + was keeping RC file from being loaded. + + * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized + RC file font code. + +Mon May 29 14:31:27 2000 Owen Taylor + + * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description): + Add function to load a GdkFont from a PangoFontDescription. + +2000-05-29 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event" + variable should be of type GdkEventPrivate. + +Fri May 26 17:16:40 2000 Owen Taylor + + * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able + to have any widget for the label, use a GtkLabel widget + to display the text. (Based partially on a patch from + Anders Carlson.) + + (Quite a bit of code reorganization - strip 90% of the + guts out of gtkaspectframe and add a single virtual + func to GtkFrameClass - compute_child_allocation.) + +Fri May 26 12:00:02 2000 Owen Taylor + + * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized. + (Removed clist->row_center_offset field because caching + it wasn't saving time or code, added private function + _gtk_clist_create_cell_layout()). + +Wed May 24 15:59:37 2000 Owen Taylor + + * gtk/gtkaccellabel.c: Pangoized. + + * gtk/[hv]ruler.c: Pangoized + +Mon May 22 19:23:59 2000 Owen Taylor + + * gtk/gtkfilesel.c (gtk_file_selection_init): + Use gtk_clist_set_column_auto_resize() to remove need + need for manual column width computations. + +Mon May 22 18:50:26 2000 Owen Taylor + + * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, + ensuring Pango correctness, and considerably simplifying the + code. + + * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE. + + * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect + getting of numbers of lines. + + * gtk/gtklabel.c (gtk_label_size_request): Set the requisition + to the actual requested width of the lable, not to the wrap + width we set. + + * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h. + + * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c + gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes. + + * gtk/gtktextview.c: Fix structure inheritance. + + * gtk/gtkprogressbar.c: Pangoize. + +Mon May 22 15:47:30 2000 Owen Taylor + + * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate + in a function. + + * gtk/gtktextlayout.c (find_display_line_above): Fixed + bug with computing line tops. + + * gtk/gtktextview.c (changed_handler): Fix < , <= confusion. + +Thu May 18 18:53:31 2000 Owen Taylor + + * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset + and y_offset coordinates to do what we need now. (The offset between + buffer and layout coordinates has been reintroduced, but is a + bit different than before.) + + * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead + handle the adjustments ourselves, and scroll as necessary using + the new gdk_window_scroll(). + + The advantage of this is that when we are incrementally revalidating, + we are essentially rearranging things around the visible portion + of the screen. With the old setup, the visible portion of the + screen was moved around in the layout, so scrolling and redrawing + to track that caused jumping of the display. Since we now + control the scrolling ourselves, we can suppress this and + only redraw when things actually change. + +Thu May 18 18:47:25 2000 Owen Taylor + + * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate + the region not just redisplay it after-all, since we store the + cursors in the LineDisplay. (Ugly interactions here between + GtkLayout and GtkTextBTree here.) + + * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison. + +Thu May 18 18:43:21 2000 Owen Taylor + + * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): + Added function to scroll contents of a window while keeping the + window constant. Works by XCopyArea or guffaw-scrolling depending + on the details of how the window is set up. (guffaw-scrolling + still needs to be filled in.) + +Wed May 17 22:36:53 2000 Owen Taylor + + * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget, + move the debugging that was tied to a global variable + to that. + + * gtk/gtkmarshal.list: Add NONE:INT,INT,INT + + * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate + validated flag, in line data instead of setting height/width to + -1. This allows us to perform operations with partially invalid + buffer (using the old size for invalid lines) and thus to do + incremental vaidation. Keep height/width aggregates up to date + when deleting text and rebalancing the tree. + + * gtk/gtktextbtree.[ch]: Add functions validate a line + (gtk_text_btree_validate_line), and to validate up + to a number of pixels (gtk_text_btree_validate). + + * gtk/gtktextlayout.[ch]: Add an ::invalidated signal + that indicates that something is changed and a revalidation + pass is needed. Change ::need_repaint to ::changed, and + make it take old and new yranges instead of a rectangle. + + * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move + the line_data_destroy() function from + gtk_text_btree_add_view() to a virtual function in + GtkTextLayout + + * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(), + since we are handling partial repaints in a different fashion + now. + + * gtk/gtktextbtree.[ch]: Only repaint the changed portion + of the selection instead of queueing a repaint on the + entire widget. + + * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move + get_selection_bounds() down to btree, make the function + in buffer a wrapper around the btree function. + + * gtk/gtktextlayout.[ch]: Add functions to check if the + layout is valid and to recompute either a range of pixels + aroudn a line or a certain total number of pixels. + + * gtk/gtktextlayout.[ch]: Cache a single line display; + now that we only redraw the needed portions, the hit rate + for this cache is quite high. + + * gtk/gtktextview.[ch]: Keep track of the first paragraph + on the screen so that when re-laying-out the buffer, we can + keep the same place. This requires connecting to ::value_changed + on the adjustments + + * gtk/gtktextview.[ch]: Add idle functions to revalidate + the buffer after we receive an ::invalidated signal. + +Wed May 17 22:10:47 2000 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper + to max of allocation and layout size, not just to the + layout size. + + * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): + Invalidate window so it gets redrawn properly. + + * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL + to mean the entire window. + + * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW + into public header. + +Mon May 15 14:51:31 2000 Owen Taylor + + * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function + to get the name of a mark. + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function + to find the paragraph from a y position. + +Thu May 11 12:57:20 2000 Owen Taylor + + * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid + nodes have width/height >= 0, not > 0. + +Tue May 9 21:29:06 2000 Owen Taylor + + * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display): + Add a size_only flag, so when we only need the size, we don't create + useless appearance attributes. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove + duplicate setting of font description. + + * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 + +Wed Apr 26 01:53:23 2000 Owen Taylor + + * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into + EXTRA_DIST. It does not work well when the file that + everything depends on is not in the tarball. + +Wed Apr 26 00:56:14 2000 Owen Taylor + + * gtk/testgtk.c: Some hacks and fixes so that it basically + works when not sitting in the GTK+ build tree. + +2000-05-03 Havoc Pennington + + * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag): + Properly determine the ordering of the tag root and the current + line within the tree. Previous algorithm only worked if the tag + root's immediate parent was the common root of both the current + line and the tag root. + +Wed Apr 26 00:43:00 2000 Owen Taylor + + * gtk/gtktextlayout.c (set_para_values): Fix some bugs in + alignment. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track + the widget text directional dynamically. + + * gtk/gtktextview.[ch]: Added functions to get and set default + wrap mode. + +Tue Apr 25 23:47:38 2000 Owen Taylor + + * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug + in cursor location computation. + +Tue Apr 25 23:22:59 2000 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/ + vadjusment values properly when layout gets smaller. + + * gtk/gtktextview.c (need_repaint_handler): Areas being + passed in are far completely inaccurate, and sometimes + too small, so, for now, just queue a redraw on the + whole visible region. + +2000-04-25 Havoc Pennington + + * gtk/gtktextbtree.c (summary_destroy): new function to + destroy tag summary nodes + (gtk_text_line_next_could_contain_tag): this function was + totally broken if the line passed in wasn't below the tag + root. Fix it. + (gtk_text_btree_first_could_contain_tag): In the tag == NULL + "wildcard" case, we have to do a linear scan. Blah. + (gtk_text_btree_last_could_contain_tag): In tag == NULL case, + we have to do the linear scan + (tag_removed_cb): When a tag is removed from the tag table, + remove the GtkTextTagInfo node from the btree. + (gtk_text_btree_spew): Implement the spew function, for + our debugging pleasure. + +Tue Apr 25 19:40:18 2000 Owen Taylor + + * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix + a problem with referring to the wrong buffer. + + * gtk/gtkentry.c: Fix focus-in/focus-out confusion. + + * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default + font description to gtk_style_new() - otherwise things + don't work without a .gtkrc file. + + * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the + tags table if we create it ourself, too. + + * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since + it was conflicting with XKB modifiers. + + * gtk/gtktextview.[ch]: Add simple support for + GtkIMContext. + +Mon Apr 24 19:34:18 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem + with deletion from last commit. + +Mon Apr 24 19:29:40 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language + in the context from the current locale. + + * gtk/gtkentry.c (gtk_entry_size_request): Use language from the + context, not hardcoded value. + + * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual, + not logical. + +Sun Apr 23 23:39:18 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as + attributes - that doesn't handle partial-glyph selection + properly. Instead use new pango_layout_line_get_x_ranges() + functionality to draw the selection. + + * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x() + now properly handles out-of-range coordinates. + + * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved. + + * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte() + public. + + * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext + for paragraphs opposite to the base direction of the widget. + + * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment. + + * gtk/gtktextlayout.c: Don't split segments on marks, since that + causes Arabic words to reshape as you cursor through. + + * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual + cursor position when moving vertically with the arrow keys and + scrolling with page-up/page-down. (Arrow keys save only the X, + scrolling saves both X and Y.) + + This means you can line-up / line-down or page-up / page-down + without losing your place, and also that moving vertically + with the cursor keys keeps the same X position, not the same + character count: + + * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical + arrow keys move by display lines, not paragraphs. + +Tue Apr 18 14:16:50 2000 Owen Taylor + + * gtk/gtklayout.c: Make sure that the bin window is at least + as big as the allocation. (Should we also make sure that the + bin window is big enough to completely cover widget->window?) + + * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add + function to get the onscreen rectangle. + + * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account + for offsets in window coordinates. + +Sun Apr 16 16:13:27 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset + confusion. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction + from the widget direction. + + * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): + Add a "direction" attribute. + + * gtk/gtktextview.c: global s/tkxt/text_view/. + + * gtk/testtext.c: Added long block of text in Arabic, to test out + the direction attributes. (Some problems with the shaping system + for arabic become obvious - like the fact the cursor splits words + into unjoined pieces.) + +Fri Apr 14 12:54:34 2000 Owen Taylor + + * gtk/gtktextdisplay.c (render_layout): Add overstrike handling. + + * gtk/gtktextlayout.c: Fix up alignment. + + * gtk/testtext.c: Add some tests for centering, wrapping. + +Fri Apr 14 09:26:22 2000 Owen Taylor + + * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c: + Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs(). + If we wrote GTK+-specific layout-render function this could just replace + the draw_layout() operation in the vtable. + + * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to + pango_layout_get_cursor_pos() and use that function. + + * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it + is a non-static symbol. + + * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y() + with gtk_text_btree_find_line_by_y() + + * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout + renderer that handles GtkTextAppearance attributes. + + * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: + + - Move the values in the style that don't affect geometry into a + GtkTextAppearance structure. + - Change underline to take a PangoUnderline and "font" a string + representation of a font description + - Add a "font_desc" attribute which takes a FontDescription structure. + + * gtk/gtktextlayout.[ch]: + + - Get rid of the display-line list per each line. Instead, we + generate, on demand, a GtkTextLineDisplay structure which] + contains a PangoLayout * and other necesary information + (offsets, cursor locations) for displaying a paragraph. + - Get rid of the code to wrap lines, create display chunks, + etc. Instead, we just go through a paragraph and convert + it into the necessary inputs to a PangoLayout. + - Implement a new attribute type, GtkTextAttrAppearance. This + holds a GtkTextAppearance, and is used to pass colors, + stipple, etc, through from the layout to the display without + having to use lots and lots of individual attributes. + - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos() + in terms of PangoLayout functions. + + * gtk/gtktextview.c: + + - Handle passing the necessary PangoContext to the layout + - Some fixups in painting to deal with the automatic backing store + and offsetting of GTK+-1.4 + - Add a style_set handler so that the default style reacts + properly to theme changes. + + * gtk/gtktext?*.[ch]: Random code-style fixes. + + * gtk/testtext.c: Substitute in languages that Pango handles now for Thai + +Mon Apr 10 10:33:45 2000 Owen Taylor + + * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget, + in original form preparatory to Pango-ization and gdkimcontext-ization. + +Thu Apr 6 19:25:39 2000 Owen Taylor + + * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs, + so that we can derive from gtkimcontext in language bindings properly. + +Thu Apr 6 16:02:52 2000 Owen Taylor + + * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval. + Add a compose table including (almost) all the compose combinations + from X. This is 6k of static, shared data as opposed to 50k or so of dynamic + data in the XIM implementation. + + * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval): + Moved functions to convert keyvalues from and to unicode here from + the win32 port and made them public. + +Wed Apr 5 16:37:29 2000 Owen Taylor + + * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1. + +Wed Apr 5 16:27:45 2000 Owen Taylor + + * gtk/gtkimcontext.[ch]: Base class for new input context system + + * gtk/gtkimmulticontext.[ch]: Proxy input context that allows + the real input context implementation to be loaded from modules + and switched on the fly. + + * gtk/gtkcontextsimple.[ch]: Simple implementation of an input + context that just does direct keysymbol => unicode translation. + + * gtk/gtkentry.[ch]: Start switching editing over to using + GtkInputContext. (No handling of preedit yet.) + +Wed Apr 5 15:48:41 2000 Owen Taylor + + * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too + many substitutions. (klass should not be subsituted.) + +Wed Apr 5 00:18:14 2000 Owen Taylor + + * configure.in: Add checks for Pango + + * configure.in docs/Makefile.am: Add test for sgml2html + and allow 'make dist' without building html, but print out + warnings in that case. (For making snapshots) + + * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am: + Add Pango libraries and C flags + + * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c: + Add function (gdk_draw_layout) to draw a pango layout. + + * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions + for getting Pango contexts for GDK. + + * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set() + + * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional + editing. + + * gtk/gtkentry.c: Hack in simple Hebrew input with direct + keysym => unicode translations. More languages can be added + here, but real input-method support is needed. + + * docs/Changes-1.4.txt: Added note about entry behavior. + + * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions + to set the reading direction for a widget and the global direction. + Add test which allows toggling the global direction. Two private + flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR) + + * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c + gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c + + * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango + + * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking, + underlining now handled by Pango. + + * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription + to RCStyle and Style. (Having both this and the old font name and GdkFont + is temporary.) + + * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added + convenience functions for creating contexts and layouts for widgets. + + * gtk/testgtk.c: Enhance label tests with multilingual labels. + +2000-05-29 Jonathan Blandford + + * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the + titles to be active, even if they aren't visible. + (gtk_clist_column_titles_passive): Ditto. + +2000-05-21 Nils Barth + + * gtkmenu.c: + * gtkmenu.h: + * gtktypeutils.h: Spelling/grammar fixes in comments. + +Tue May 23 12:25:07 CEST 2000 lupus + + * gdk/nanox/*.h: add missing header files. + +Fri May 19 11:52:59 2000 Tim Janik + + * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set + send_event to TRUE. + (gtk_drawing_area_size): queue a resize. + +Sun Mar 26 03:21:28 2000 Tim Janik + + * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing + the handlers, also invalidate them. bug nailed down by Karl Nelson + . + +Fri May 19 06:49:23 2000 Tim Janik + + * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle + "(nil)" foundries, patch from Grigorios Magklis. + + * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash + on non-available fonts, based on a patch by Grigorios Magklis + . + +2000-05-18 Elliot Lee + + * gdk/x11/gdkregion-generic.c: If a region does not have any + rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT + instead of GDK_OVERLAP_RECTANGLE_IN. + +2000-05-17 Jonathan Blandford + + * gtk/gtklayout.c (gtk_layout_map): Remove references to + OFFSCREEN, as it is no longer necessary. + +Wed May 17 10:52:12 2000 Owen Taylor + + * gtk/gtkcolorsel.c: Patch from David Santiago + to change things so that the + indicator of the active palette entry is done independently, + not via the focus, since it should always be visible. + +2000-05-17 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same + refcount leaks as in the X11 backend. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging + cosmetics. + + * gdk/win32/gdkwindow-win32.c: Similar changes as in X11 + backend. Add _gdk_windowing_window_destroy(). + + * gtk/gtkcolorsel.c: Include correct backend-specific header. + Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR + either, but these probably do exist on nanox?) + + * gtk/gtkhsv.c: Use G_PI (fresh from ) instead of M_PI + which isn't necessarily defined by . + + * gtk/gtkobject.c (gtk_object_init): Don't go up the class + ancestry past GtkObject. + + * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import + from DLL on Win32. + + * gtk/gtk.def: Update corresponding to recent changes. + + * gtk/makefile.{cygwin,msc}: Updates. + +Fri May 12 18:46:51 2000 Owen Taylor + + * docs/Changes-1.4.txt: A bit of editing. + + * gdk/gdkwindow.c (_gdk_window_clear_update_area) + * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function + to clear the update area for the window, and clear it + when hiding a window. + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore + if window destroyed. + + * gdk/gdkwindow.c (gdk_window_end_paint): Likewise. + + * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move + gdk_window_destroy() to the generic code, since there was a lot of + window-system-independent logic it in. Add a function: + + _gdk_window_destroy() + + to the internal API to destroy a window without unreferencing it. + Add a function: + + _gdk_windowing_window_destroy() + + That does the windowing-system-dependent part of destroying + the window. + +Fri May 12 11:07:41 2000 Owen Taylor + + * gtk/testgtk.c: Fix various memory leaks of pixmaps. + +Fri May 12 11:06:10 2000 Owen Taylor + + * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): + Make gtk_widget_shape_combine_mask() keep a reference count on + the pixmap since it keeps it around. + +Fri May 12 10:53:29 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount + leak. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount + leak with event filters. + +Thu May 11 14:29:44 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the + signal handlers with the right data arguments. (Fixes + some warnings when a widget was repeatedly set as a drag + destination.) + + * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the + window so we can avoid avoid setting the DND properties on the + toplevel window repeatedly. + +2000-05-13 Tor Lillqvist + + * gdk/win32/gdkwin32.h: Define more message types missing from + mingw headers. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY + call gdk_window_destroy_notify(). It was never called. This + probably meant that the GdkWindow was never freed. Thanks Owen for + noticing (!). + + * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark + window as destroyed before calling DestroyWindow(). DestroyWindow() + causes a call to the window procedure (gdk_WindowProc), which + calls gdk_event_translate(), which calls + gdk_window_destroy_notify(), which gets confused unless the window + is set as destroyed. + + * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename + this function to indicate it's win32 only. Put inside #ifdef + G_ENABLE_DEBUG. + + * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New + debugging function. (gdk_event_translate:) Add a default branch + that uses the above function to print debug messages with all + Windows messages symbolically. + + * gdk/win32/gdkprivate-win32.h: Declare it, and + gdk_win32_color_to_string, but only if G_ENABLE_DEBUG. + +Fri May 12 20:07:32 2000 Tim Janik + + * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a + public header file. + +Fri May 12 17:13:32 2000 Tim Janik + + * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition. + + * gtk/gtktext.c: made the adjustments no-construct args, simply + provide default adjustments. + (gtk_text_destroy): release adjustments. + + * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the + adjustment argument non-construct. + + * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here, + instead of in finalize. + (gtk_progress_get_text_from_value): + (gtk_progress_get_current_text): + (gtk_progress_set_value): + (gtk_progress_get_percentage_from_value): + (gtk_progress_get_current_percentage): + (gtk_progress_set_percentage): + (gtk_progress_configure): ensure an adjustment is present. + +Thu May 11 01:24:08 2000 Tim Janik + + * gtk/gtkcolorsel.[hc]: + * gtk/gtkcolorseldialog.[hc]: + * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain + their parent implementation, use bit fields for boolean values, don't + create unused widgets, usage of glib types, braces go on their own + lines, function argument alignment, #include directives etc. etc. etc.. + + * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h. + +Wed May 10 23:29:52 2000 Tim Janik + + * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips. + + * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state + of NULL. + + * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references + to freed data. + (gtk_combo_destroy): don't keep a pointer to a destroyed window. + + * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer + to NULL when the toplevel is getting destroyed. + (gtk_menu_set_tearoff_state): same here for the tearoff_window. + (gtk_menu_destroy): + (gtk_menu_init): store the information of whether we have to + readd the initial child ref_count during destruction in a new + GtkMenu field needs_destruction_ref_count. + + * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it + here, those reading: learn from my mistake! ;) + in order for set_?adjustment to support a default adjustemnt if + invoked with an adjustment pointer of NULL, the code read (pseudo): + if (v->adjustment) unref (v->adjustment); + if (!adjustment) adjustment = adjustment_new (); + if (v->adjustment != adjustment) v->adjustment = ref (adjustment); + now imagine the first unref to actually free the old adjustment and + adjustment_new() creating a new adjustment from the very same memory + portion. here, the latter comparision will unintendedly fail, and + all hell breaks loose. + (gtk_viewport_set_hadjustment): + (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL + after unreferencing it. + + * gtk/gtkcontainer.[hc]: removed toplevel registration + functions: gtk_container_register_toplevel(), + gtk_container_unregister_toplevel() and + gtk_container_get_toplevels() which had wrong semantics + anyways: it didn't reference and copy the list. + + * gtk/gtkwindow.c: we take over the container toplevel registration + bussiness now. windows are registered across multiple destructions, + untill they are finalized. the initial implicit reference count + users are holding on windows is removed with the first destruction + though. + (gtk_window_init): ref & sink and set has_user_ref_count, got + rid of gtk_container_register_toplevel() call. add window to + toplevel_list. + (gtk_window_destroy): unref the window if has_user_ref_count + is still set, got rid of call to + gtk_container_unregister_toplevel(). + (gtk_window_finalize): remove window from toplevel list. + (gtk_window_list_toplevels): new function to return a newly + created list with referenced toplevels. + (gtk_window_read_rcfiles): use gtk_window_list_toplevels(). + + * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange + adjustment a non-construct arg. + * gtk/gtkvscale.c (gtk_vscale_class_init): likewise. + * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise. + * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise. + + * gtk/gtkrange.c: added some realized checks. + (gtk_range_destroy): get rid of the h/v adjustments in the + destroy handler instead of finalize. remove timer. + (gtk_range_get_adjustment): demand create adjustment. + + * gtk/gtkviewport.c: made h/v adjustment non-construct args. + we simply create them on demand now and get rid of them in + the destroy handler. + (gtk_viewport_destroy): get rid of the h/v adjustments in the + destroy handler instead of finalize. + (gtk_viewport_get_hadjustment): + (gtk_viewport_get_vadjustment): + (gtk_viewport_size_allocate): demand create h/v adjustment + if required. + + * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the + gtk_widget_real_destroy () functionality. + (gtk_widget_real_destroy): reinitialize with a new style, instead + of setting widget->style to NULL. + +Fri May 5 13:02:09 2000 Tim Janik + + * gtk/gtkcalendar.c: + * gtk/gtkbutton.c: ported _get_type() implementation over to + GType, either to preserve memchunks allocation facilities, + or because Gtk+ 1.0 GtkTypeInfo was still being used. + + * gtk/gtkobject.[hc]: derive from GObject. ported various functions + over. prepare for ::destroy to be emitted multiple times. + removed reference tracer magic. chain into GObjectClass.shutdown() + to emit ::destroy signal. + + * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being + fundamental. + + * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init() + cludge. + + * gtk/gtksocket.c: + * gtk/gtkplug.c: + * gtk/gtklayout.c: + * gtk/gtklabel.c: + * gtk/gtkargcollector.c: + * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT + not being a fundamental anymore, and to work with the new + type system (nuked fundamental type varargs clutter). + + * gtk/*.c: install finalize handlers in the GObjectClass + part of the class structure. + changed direct GTK_OBJECT()->klass accesses to + GTK_*_GET_CLASS(). + changed direct object_class->type accesses to GTK_CLASS_TYPE(). + + * gtktypeutils.[hc]: use the reserved fundamental ids provided by + GType. made most of the GTK_*() type macros and Gtk* typedefs + simple wrappers around macros and types provided by GType. + most notably, a significant portion of the old API vanished: + GTK_TYPE_MAKE(), + GTK_TYPE_SEQNO(), + GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST, + GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST, + GTK_TYPE_ARGS, + GTK_TYPE_CALLBACK, + GTK_TYPE_C_CALLBACK, + GTK_TYPE_FOREIGN, + GtkTypeQuery, + gtk_type_query(), + gtk_type_set_varargs_type(), + gtk_type_get_varargs_type(), + gtk_type_check_object_cast(), + gtk_type_check_class_cast(), + gtk_type_describe_tree(), + gtk_type_describe_heritage(), + gtk_type_free(), + gtk_type_children_types(), + gtk_type_set_chunk_alloc(), + gtk_type_register_enum(), + gtk_type_register_flags(), + gtk_type_parent_class(). + replacements, where available are described in ../docs/Changes-1.4.txt. + implemented compatibility functions for the remaining API. + + * configure.in: depend on glib 1.3.1, use gobject module. + +Thu May 11 12:39:50 2000 Owen Taylor + + * TODO.xml: Various updates to current status. + +Wed May 10 20:25:04 2000 Owen Taylor + + * gtk.m4: Print out version when test succeeds. + +Wed May 10 16:38:17 2000 Owen Taylor + + * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch] + gtk/gtkhsv.[ch]: Color selection dialog rewrite. + + (Original triangle color selector from Simon Budig + , Cleaned up and rewritten for GTK+ by + from Jonathan, Havoc, and Federico. Merge into GTK+ done by David + Santiago ) + + * gtk/gtkcolorseldialog.[ch]: Split color selection dialog + out into a separate widget. + + * gtk/testgtk.c: Add some checkbuttons for toggling palette + and opacity controls. + +Wed May 10 16:08:09 2000 Owen Taylor + + * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that + snuck in prematurely. + +2000-05-07 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I + had deleted a ! operator by mistake, which caused + GDK_SELECTION_CLEAR events never to be generated, which caused + only the first copy to the clipboard from an gtkeditable to + actually cause a copy to the Windows clipboard. + +2000-05-06 Tor Lillqvist + + * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc + compilation, too. Current mingw gcc distributions include the + necessary headers. Also the necessary IIDs are now in mingw + headers/libraries, and own definitions unnecessary. + + More hacking on OLE2 DND, still doesn't work though, and thus + ifdeffed out. + + * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from + here, too. + +Sat, 6 May 2000 13:31:34 +0200 Paolo Molaro + + * gdk/nanox/*: nano-X port work in progress. + * gdk/simple.c: simple test for Gdk. + * README.nanox: notes about the port: read this first! + * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile + with nano-X. + +Fri May 5 11:18:47 2000 Owen Taylor + + * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move + gdk_window_clear() into common code, implement in terms of + gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was + not redirected to the backing rectangle. + +Wed Apr 26 01:53:23 2000 Owen Taylor + + * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into + EXTRA_DIST. It does not work well when the file that + everything depends on is not in the tarball. + +Tue Apr 25 22:20:41 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error + with recursion where process_updates() is called from + an expose handler. (GtkTextView is highly broken in + doing this, but it should work, so it is a nice test + case.) + +Sun Apr 23 23:39:18 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully + handle the case where updates are queued during processing of + updates. + +Tue Apr 18 14:16:50 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume + window is on gdk_display - use that instead of segfaulting. + +Thu May 4 02:04:46 2000 Tim Janik + + * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are + broken and require an empty arg, give it to them. + +Fri Apr 28 19:34:32 2000 Tim Janik + + * gtk/gtklabel.h: indentation fixes. + +2000-05-02 Tor Lillqvist + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to + draw too narrow or too low arcs, they seem to fail, at least with + some display drivers. + + * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR. + + Large changes to the Win32 backend, partially made necessary by + the changes to the backend-independent internal + structures. Attempts to implement similar backing store stuff as + on X11. The current (CVS) version of the Win32 backend is *not* as + stable as it was before the no-flicker branch was merged. A + zipfile with that version is available from + http://www.gimp.org/win32/. That should be use by "production" + code until this CVS version is usable. (But note, the Win32 + backend has never been claimed to be "production quality".) + + * README.win32: Add the above comment about versions. + + * gdk/gdkwindow.c: Don't use backing store for now on Win32. + + * gdk/gdk.def: Update. + + * gdk/gdkfont.h: Declare temporary Win32-only functions. Will + presumably be replaced by some more better mechanism as 1.4 gets + closer to release shape. + + * gdk/makefile.{cygwin,msc}: Update. + + * gdk/win32/*.c: Correct inclusions of the backend-specific and + internal headers. Change code according to changes in these. Use + gdk_drawable_*, not gdk_window_* where necessary. + + * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not + our old DND. + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try + to interpret single characters as UTF-8. Thanks to Hans Breuer. + Use correct function name in warning messages. + + * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the + GSourceFuncs gdk_event_prepare and gdk_event_check. + (gdk_event_get_graphics_expose): Do implement, use + PeekMessage. Thanks to Hans Breuer. + (event_mask_string): Debugging function to print an GdkEventMask. + (gdk_pointer_grab): Use it. + + * gdk/win32/gdkfont-win32.c: The Unicode subrange that the + (old) book I used claimed was Hangul actually is CJK Unified + Ideographs Extension A. Also, Hangul Syllables were missing. + Improve logging. + + * gdk/win32/gdkgc-win32.c: Largish changes. + + * gdk/win32/gdkim-win32.c (gdk_set_locale): Use + g_win32_getlocale() from GLib, and not setlocale() to get current + locale name. + + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to + gdkwin32.h, similarily as in the X11 backend. + + * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix, + assignment was used instead of equals in if test. Thanks to Hans + Breuer. + + * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of + the X11 version. + + * gdk/win32/makefile.{cygwin,msc} + * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the + path to the Win32 headers that works also with the mingw compiler. + + * gtk/gtkstyle.c: Include . + +2000-04-26 Havoc Pennington + + * gtk/gtklabel.c (gtk_label_get_text): Add this function, + replacing the broken gtk_label_get () + +2000-04-15 Havoc Pennington + + * gdk/gdkdnd.h: clean up enum format, remove extra comma, + this keeps scanner scripts from getting confused. + + * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the + data, rather than void + +2000-04-15 Tor Lillqvist + + * gtk/gtkclist.c (gtk_clist_motion) + * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event + with is_hint FALSE, get x and y from the event. They used to be + used uninitialised. The Win32 backend never sends motion events + marked as hints. This for instance fixes the annoying file and + font selector behaviour in the Win32 version. + +2000-04-14 Tor Lillqvist + + * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and + gtk_private_n_signals variables, they are used by some software, + sigh. + + * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the + installation directory from the Registry, where the installer + should have put it. + +Fri Apr 7 17:19:27 2000 Owen Taylor + + * gdk/x11/Makefile.am: Fix problem with installation directory for + gdkx.h + + * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago + so that when selecting menus with the + mouse, the first item will not be selected, but when selecting + with an accelerator, or navigating left-right on a menubar with + the menus popped up, the first item will be selected. + +2000-04-05 Dan Damian + + * configure.in: Added "ro" to ALL_LINGUAS. + +Wed Apr 5 00:08:36 2000 Owen Taylor + + * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy + indentation. + + * Makefile.am (EXTRA_DIST): Fix typo. + + * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk + to catch gdkconfig.h + + * gtk/gtkitemfactory.c: Added FIXME. + +2000-03-30 Jonathan Blandford + + * gtk/gtkpaned.c (gtk_paned_get_position): oops. + s/return_if_fail/return_val_if_fail/g and add a return value. + +Mon Mar 27 20:56:14 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up + merge slipup. + + * gdk/gdkinput.h: Fix missing line from merge. + +Mon Mar 27 20:39:49 2000 Owen Taylor + + * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h + instead of gdkprivate.h. + +Sun Mar 12 15:19:24 2000 Owen Taylor + + * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix + parent class to correctly be GtkDialogClass. + +Thu Feb 24 23:58:21 2000 Owen Taylor + + * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of + toplevel windows and their immediate children by their parents, + since the size of toplevel windows is out of our immediate + control and we don't get any real benefit from trying to track + this size for clipping. + + * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag + for input_only windows. + + * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag + to fix some hacks and make sure that we don't try to set the + background of input only windows. + +Thu Feb 24 18:11:46 2000 Owen Taylor + + * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for + the _really_ internal stuff, and leave gdkprivate.h for the fake private + stuff that we've traditionally exposed. + + * gdk/**.c: Use gdkinternals.h where appropriate. + + * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h + not include gdkprivate-x11.h, move all stuff of conceivable public + interest into gdkx.h; keep all really private stuff in + uninstalled header gdkprivate-x11.h. + + * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to + image->image_put on windows through a new function _gdk_window_draw_image() + to allow us to do backing store for images. (Sort of ugly) + + * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics + contexts locally so that we can offset them properly when drawing + onto backing pixmaps. + + * gdk/gdkinput.h: Reindented + + * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background + pixmap or color for the window, so we can properly initialize + our double-buffer pixmaps, and also so that we temporarily set + a background of None while scrolling. + + * gdk/gdkregion.h: Revise region boolean operators to have an + interface that is actually convenient - switch from creating new + regions on every op, to "methods" that modify existing regions + (A = A OP B). 3 argument forms which allow dest == src, would also + be possible, but the current interfaces seem to map nicely + onto what needs to be done. (There is quite a lot of region + code in GDK now.) + + * gdk/gdkregion.h: Add constructor from rectangle and a copy + operator. + + * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c, + gdkpoly-generic.h: Copy region code from Xlib, switch it over + to 32 bit coordinates, modify it to be mostly GTK+ style + and to have interfaces that match gdkregion.h. + + * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for + double-buffered drawing. gdk_window_begin_paint_{rect,region}() + create a backing pixmap and redirect all drawing to + that backing pixmap until a matching gdk_window_end_paint(). + + * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c: + Create a special drawable class for GtkWindow's that + redirects the drawing to the backing pixmap as necessary + and then calls the real operations in _gdk_windowing_window_class. + + * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c: + Store invalid region for each window. Generate expose events for invalid + region in an idle. This replaces both the expose compression + and the redrawing queuing in GTK+. It is both more efficient and + simpler than either one individually and far more so then the + combination. + + * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h: + Emulate 32 bit coordinates for windows with 16 bit coordinates + by offsetting drawing, guffaw scrolling techniques and + mapping/unmapping child windows as necessary. + + * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes, + where, when invalid regions are processed, the region is stored, + and if expose events come in that are detectably duplicate + the processed exposes (by comparison of event serial numbers), + the stored region is subtracted out of those exposes. + + * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of + regions newly exposed when scrolling or resizing windows. + This, combined with forcing processesing of queued invalidated + regions, gives nice flicker-free scrolling. + + * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of + invalidated regions after every scroll. + + * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate + emulation in GDK. Its, for all practical purposes just a + GtkViewport/GtkFixed hybrid now. + + * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11 + (16-bit) structures as necessary instead of just casting. + + * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code + in terms of the structures from gdkregion-generic.c, using appropriate + offsets from GDK to X11 coordinates. Cache clip mask and + origin and ts origin locally and only flush to the server + when drawing, to avoid constantly setting and resetting these + values when offsetting GC's for scrolling and backing pixmaps. + + * gdk/x11/gdkinput-x11.c: Fix leak of axes structures. + + * gtk/gtkcontainer.c: Call process_all_updates at end + of resizing to reduce flicker. (Avoids having redraw + lag arbitrarily behind resize under some circumstances) + + * gtk/gtkentry.c: Remove old backing store code, and simply take + advantage of the new backing store capabilities of GDK. + + * gtk/gtkmain.c: Simple implementation of widget backing + store - simply push a paint while handling each expose. + (Should really be configurable widget for widget.) + + * gtk/gtkwidget.c: Remove all the old complicated redraw + code, and simply invalidate the GDK windows from + gdk_window_queue_clear(), etc. (Sigh, so much carefully + debugged complexity ... gone to the winds.) + + Remove all the code for suppressing expose events while + resizes are pending; this isn't needed since the invalid + areas won't be processed until after the resizes are + processed, since they are in a lower priority idle. + +Thu Feb 24 15:37:41 2000 Owen Taylor + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width + and height of dest rectangle for non-intersecting rectangles. + +Sun Feb 20 16:47:31 2000 Owen Taylor + + * gtk/gtkwidget.h: Make GtkAllocation just a typedef + for GdkRectangle. + +Sun Feb 20 11:27:00 2000 Owen Taylor + + * gdk/gdk{events,image,private,types,window}.h + gdk/x11/gdkinputprivate.h: Change all coordinates + from int16 to int. Also, Change width and height from + unsigned to signed to avoid all the stupid C + signedness bugs. + +Sat Feb 19 12:01:53 2000 Owen Taylor + + * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): + Use gdk_drawable_get_depth instead of gdk_drawable_get_visual. + Add some more detailed checking. + + * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth): + New function to retrieve the depth of a drawable. + + * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth + field, reorder fields to save memory. + +Mon Dec 13 14:06:03 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion + of the background image instead of scaling the background down to + a line. + + * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious + which temporarily set slider to wrong size. + + * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to + queue_clear(). + +Wed Nov 17 18:36:05 1999 Owen Taylor + +2000-03-23 Jonathan Blandford + + * gtk/gtkpaned.c (gtk_paned_get_position): add getter. + +2000-03-17 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c: Remove the #ifndef + USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage. + + * gdk/win32/gdkfont-win32.c + * gdk/win32/gdkproperty-win32.c + * gdk/win32/gdkselection-win32.c + * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are + now declared such. + +Wed Mar 15 02:59:38 PST 2000 Manish Singh + + * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic + +Mon Mar 13 18:37:55 2000 Owen Taylor + + * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty() + is called without trapping X errors. + +Fri Feb 25 10:48:53 2000 Owen Taylor + + * gtk/gtkrc.*: Fix problem where stray '"' characters found their + way into the fontset lists. + +Tue Feb 22 08:52:52 2000 Tim Janik + + * gtk/gtkthemes.h: add extern "C" scope. + +Mon Feb 21 20:16:42 2000 Lars Hamann + + * gtk/gtkclist.c: applied patch from Guy Harris + to make appends to the list constant. (gtk-guy-990901-0.patch) + +Mon Feb 14 22:50:10 2000 Tim Janik + + * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal() + for the typename hash table. + +Mon Feb 14 15:01:23 2000 Owen Taylor + + * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks + to make sure we never divide by zero. + (Problem pointed out by Michal Jaegermann ) + +Mon Feb 14 12:29:38 2000 Owen Taylor + + * gtk/gtkfontsel.c: Apply patch from + SHIRASAKI Yasuhiro to make font selector work a little + better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.) + + Also, some cleanups in atom handling. + +Sun Feb 13 08:02:21 2000 Tim Janik + + * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer, + not GtkWidget. + +Fri Feb 11 02:19:32 2000 Tim Janik + + * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): + * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): + * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some + more guint wrap-around bugs before going to bed. + +Thu Feb 10 16:16:35 2000 Tim Janik + + * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against + guint wrap arounds in allocation.width. + + * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking + process untill we fit the allocation given. + +Tue Feb 8 09:38:29 2000 Tim Janik + + * gtk/gtkwidget.c: + (gtk_widget_unrealize): guard widget access with ref/unref + around signal emission. + (gtk_widget_hide): same here, but also check its destroyed + state before queueing a resize. + +Tue Feb 8 03:05:55 2000 Tim Janik + + * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead + of gtk_default_insensitive_bg as insensitive base color. + + * gtk/gtktext.c (gtk_text_style_set): set the background color according + to the widget's state. + (gtk_text_realize): same here. + (gtk_text_state_changed): same here. + (draw_bg_rect): compare background color against base[] from + GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL. + +Mon Feb 7 04:01:55 2000 Tim Janik + + * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when + grabs are active, unless a delete event is send to the toplevel + of the currently grab holding widget. + +Sun Feb 6 10:13:15 2000 Owen Taylor + + * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove + debugging g_print's. + +Fri Feb 4 15:54:54 2000 Owen Taylor + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't + ever make the scrolled-window requisition ever depend on the + visibility state of the scrollbars for the AUTOMATIC policy. + This breaks the GTK+ requisition model, and causes loops. + +Fri Feb 4 15:09:12 2000 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for + the default font to avoid problems with XFree86-4.0 where the + default charset is iso10646-1, not iso8859-1. + +Thu Feb 3 14:58:48 PST 2000 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release) + + * gtk/Makefile.am: minor cosmetic consistency tweak + +Thu Feb 3 14:46:01 2000 Owen Taylor + + * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set + the activate_time to 0, so that we handle a quick + press/release press/release properly and don't suppress + the second release. (Red Hat bug #7545) + +Wed Feb 2 22:25:17 2000 Tim Janik + + * gtk/gtkctree.c (row_delete): + (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy + bugs with destruction notifier, *always* update internal + structures *before* calling user code. + +Sun Jan 30 20:10:52 2000 Lars Hamann + + A few more fixes for bug #5487, #2051, #2677. + * gtk/gtkclist.c : + (gtk_clist_button_press): Reset clist->anchor to -1 if event->type is + not GDK_BUTTON_PRESS. + (resync_selection): resync only if selection_mode is + GTK_SELECTION_EXTENDED + * gtk/gtkctree.c (resync_selection): same here + +Sun Jan 30 12:29:20 2000 Owen Taylor + + * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for + gdk_drag_get_selection() and gtk_menu_detach(). + + [ From Jeroen Ruigrok/Asmodai ] + +Sat Jan 29 10:11:56 2000 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_size_request): + page->tab_label can be NULL. + +2000-01-25 Havoc Pennington + + * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative + arg is boolean + + * gdk/gdkselection.c (gdk_selection_owner_set): return boolean + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean + + * gdk/gdkproperty.c (gdk_property_get): return boolean + + * gdk/gdkinput.c (gdk_input_set_mode): return boolean + + * gdk/gdkim.c (gdk_im_ready): return boolean + + * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg + + * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild + glib clash, should fix glib) + + * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg + (gdk_get_show_events): return gboolean, and canonicalize + to TRUE/FALSE + + * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the + colormap is private + (gdk_colors_alloc): gboolean whether to be contiguous + (gdk_color_equal): return gboolean since we are a predicate + and not a qsort() (this looks semi-wrong due to glib breakage, + IMO glib should be fixed) + + * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg + (gdk_get_use_xshm): return gboolean + (gdk_pointer_is_grabbed): return gboolean + + * gdk/gdk.h: Change prototypes to match all the above changes, + and re-run egtk-format-protos as required. + +Fri Jan 28 12:28:17 2000 Owen Taylor + + * gtk/gtkctree.c (resync_selection): + * gtk/gtkclist.c (resync_selection): + + Return immediately if clist->drag_pos < 0. This is a workaround + for the corrupt state that the clist gets into when a + GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press(). + + Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel. + + * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized + variable from recent commit. + +Thu Jan 27 15:22:09 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit. + +Thu Jan 27 18:00:55 2000 Tim Janik + + * gtk/Makefile.am: prefix all autogenerated source that get build in + $(srcdir) with $(srcdir)/, so make doesn't assume they got generted + in builddir. since we subsequently cd into srcdir for autogeneration, + the paths have to be stripped from the target file names, thusly we + use $(@F) as target names now. + put a comment about configure.in's --disable-rebuilds option, + which can be used for non-writable source directories, for development + setups though, srcdir has to be *writable*. + +hu Jan 27 00:15:03 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions): + Finish the job of allowing event to be NULL. + (Fixes bug #4283, reported by Chris Blizzard) + + * gtk/gtkentry.c (entry_adjust_scroll): When calculating + things so that the cursor appears on screen, properly + take into account INNER_BORDER. + (Fixes bug #4754, reported by Antonio Campos) + +Wed Jan 26 23:12:28 2000 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_map): Don't + show the tab_label unless it itself is visible. + + gtk/gtknotebook.c (gtk_notebook_size_request): + Do a better job of making sure that the visibility + of the tab label corresponds to whether it should + be mapped or not. + +Wed Jan 26 21:17:03 2000 Owen Taylor + + * gtk/gtkoptionmenu.c (gtk_option_menu_position): + Use the requisition, not the allocation, since the + allocation has not necessarily been computed yet. + (Pointed out by Eugene Osintsev) + +Wed Jan 26 19:44:25 2000 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_new): Dont' set + style/base[GTK_STATE_INSENSITIVE] both to + gtk_default_insensitive_bg! + (Bug #2187, reported by Jonathan Blandford) + + * gtk/gtkaccelgroup.c (gtk_accelerator_valid): + Add Alt_L, Alt_R to list of invalid accelerators. + (Bug #3736, reported by Vlad Harchev) + +Wed Jan 26 19:01:56 2000 Owen Taylor + + * gtk/gtkfilesel.c (open_ref_dir): Fix several + bugs which occured after an attempt to open + invalid home directory left cmpl_state->reference_dir == NULL. + + - completion on files in home directory didn't work + - completion on an empty string caused segfault + + (Bug #3678, reported by Steve Ratcliffe) + + * gtk/gtkscale.c (gtk_scale_get_value_width): Fix + cut and paste error that was causing scales to + be incorrectly positioned. + (Bug #2956, + patch from Steve Ratcliffe ) + +2000-01-27 Shirasaki Yasuhiro + + * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs + when checking for dcgettext, if we've found we needed + it for dgettext. ++ +Wed Jan 26 18:06:07 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore + queue_clear on NO_WINDOW widgets during a reparent, + since at that point the window and widget heirarchies + are out of sync. This stops crashing in some cases + (the scrolled window reparent test, for instance), and + _probably_ won't cause drawing errors. + + * gtk/testgtk.c: Make the reparenting-a-scrolled-window + test do what it was supposed to do and be robust against + window closings, etc. (Bug #2443) + +Wed Jan 26 16:56:54 2000 Owen Taylor + + * gtk/gtkentry.c: Fix return values on mouse events. + (Bug #2686, Sky ) + + * gtk/genmarshal.pl: Fix up handling of FOREIGN. + (pointed out by George Lebl) + + * gdk/gdkcolor.c (gdk_color_copy): Made const-safe. + (From Ettore Perazzoli ) + +Mon Jan 24 10:44:48 2000 Owen Taylor + + * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle + clicks between rows or outside calender area correctly. + (Patch from Damon Chaplin) + + * gtk/gtkclist.c (gtk_clist_set_row_data_full): + * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): + Call destroy function when overwriting existing data. + (Pointed out by Damon Chaplin) + +Tue Jan 25 09:55:41 2000 Owen Taylor + + * gdk/gdk.c: Remove useless #include of , + which was causing problems on various systems with Xmu. + This hasn't been needed for a very long time. + (Fixes #1185 3167) + +Sun Jan 23 22:27:36 2000 Owen Taylor + + * gdk/gdki18n.h: Include when defining + gdk_isw* in terms of is* as a fallback. + (Bug #4106 - Dan Winship ) + +Sun Jan 23 22:12:36 2000 Owen Taylor + + * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't + realize the widget when it is size allocated! + (old, old bug) + + * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed): + Removed unused call to gdk_window_get_size() that + showed up when the above was fixed. + +Sat Jan 22 15:44:30 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_reparent): Correctly + fix up widget->window when the widget is a + NO_WINDOW container widget. + +Sat Jan 22 12:40:48 2000 Owen Taylor + + * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite + to account for the fact that feof() does _not_ + return TRUE on errors, and thus avoid infinite loops + when trying to use gdk_pixmap_create_from_xpm() + on unreadable values. + +Fri Jan 21 18:32:43 2000 Owen Taylor + + * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/. + +Fri Jan 21 16:24:08 2000 Owen Taylor + + * gdk/gdkgc.c (gdk_gc_set_dashes): Change from + gdk_gc_set_dashes to take gint8 instead of gchar to + make it clearer that it is _not_ a NULL terminated string. + + * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c + gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch] + gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string + arguments. + +Thu Dec 30 04:51:05 1999 Tim Janik + + * gtk/gtkvscale.c (gtk_vscale_pos_background): + * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the + background size relative to our allocation, guard against small + allocations, we may have not yet been size allocated. + +Thu Dec 2 10:59:14 1999 Owen Taylor + + * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3, + not just version == 3. We implement all 3 + most of 4 - + (we don't support matching text/plain;charset=iso-8859-1 + to a dest that expects text/plain). We'll still advertise + 3 to be safe, but any client implementing version >= 3 + must interoperate with 3. + +Tue Mar 14 11:53:31 2000 Owen Taylor + + * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground, + background and gc members, add a warning in gtk_tooltips_set_color() + indicating that this function is deprecated. + +Thu Mar 9 22:10:56 GMT 2000 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update: + - Minor cleanups (Emmanuel, me) + - New questions: + I need to add a new signal to a GTK+ widget. Any idea? (timj) + How can I retrieve the text from a GtkMenuItem? (timj) + How do I validate/limit/filter the input to a GtkEntry? (me) + Memory does not seem to be released when I free the list + nodes I've allocated (timj) + +2000-03-07 Tor Lillqvist + + * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes: + (gdk_win32_gdi_failed) New function for reporting errors from GDI, + for which it is no use to call GetLastError onWin9x. + (gdk_other_api_failed) New function, for general error + reporting without calling GetLastError. + (gdk_win32_api_failed) OTOH, this function always calls + GetLastError. (gdk_win32_last_error_string) Remove this function, + GLib has the equivalent now. + + * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to + call them with function name, file name and line number in the + arguments. + + * gdk/win32/*.c: Use the new macros for reporting errors from GDI + functions. + + * gtk/gtk.def: Add some missing entry points. + + * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and + gtk_paned_set_gutter_size, which don't exist any longer, as void. + + Fixes by Hans Breuer: + + * gdk/makefile.msc: Update for debugging. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake + implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or + PS_DASHDOTDOT or PS_DASH styles depending on the number of entries + in the dash_list. + + * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in + the x11 backend. + + * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro. + + * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h. + +2000-03-04 Tor Lillqvist + + * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store + just pixel value of background colour. + + * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function + containing code snippet previously duplicated in a couple of + places. + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use + gdk_colormap_color. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate + GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate + events for autorepeated Shift, Control and Alt keys. Use + gdk_colormap_color. + + * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the + pointer is inside the window the cursor of which we are setting, + call SetCursor immediately. + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: If we don't have the build number stamp + file, use zero. + + * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and + gtk_paned_set_gutter_size as empty. + + * gtk/gtk.def: Remove gtk_paned_set_gutter_size. + +Tue Feb 29 13:10:00 GMT 2000 Tony Gale + + * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h + gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c + docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml + docs/gtk_tut.sgml docs/gtk.texi TODO: + + Spelling/grammar fixes from Martin Buchholz + +Sat Feb 26 11:46:25 GMT 2000 Tony Gale + + * gtk/gtkcalendar.c: Implement num_marked_dates, + and don't emit mutiple day_selected signals on + month_prev. + +2000-02-25 Jonathan Blandford + + * docs/make-todo (lineno): let title and logo be configurable so + that GNOME can use this script too. + + * TODO.xml: added logourl and a title + +Fri Feb 25 11:12:00 2000 Owen Taylor + + * TODO.xml: Added some UI items, and an explanatory + comment at the top of the file. + +Thu Feb 24 09:07:28 2000 Tim Janik + + * TODO.xml: some updates, added abunch of new entries. + a note for those fiddeling with this file, when done + with it, invoke: + $ ./docs/make-todo TODO.xml >/dev/null + and correct output errors before comitting changes. + +Wed Feb 23 22:59:50 2000 Owen Taylor + + * TODO.xml: Added XML-structured TODO file. + * docs/make-todo: python script to turn TODO.xml into + pretty XML output. + +2000-02-23 Jonathan Blandford + + * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to + the function to let it draw the seven dots, instead of the old, + much maligned, method. + (draw_dot): New function to draw a dot. + + * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation + to draw the handle inside the border width as opposed to outside. + Use paint function instead of gdk_draw_point. + + * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation + to draw the handle inside the border width as opposed to outside. + Use paint function instead of gdk_draw_point. + + * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu): + Change indenting to be more GTK like. + +Wed Feb 23 10:54:14 GMT 2000 Tony Gale + + * docs/gtk_tut.sgml: New section on GtkCalendar + * examples/calendar: Update example code + +Tue Feb 22 13:54:12 GMT 2000 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +2000-02-19 Anders Carlsson + + * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE + to prevent the scroll event to be propagated upwards. + +Fri Feb 18 14:37:29 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove + OwnerGrabButtonMask from button entries for + GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE. + + * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL + to the event mask (which will result in button/press release + being added to the event mask on Unix) so scrolling works + for layouts in scroll windows. + + * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK. + + Patch from Anders Carlsson to add + a scroll event. + + * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel + scrolling to the "Test Scrolling" part of testgtk. + + * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal. + + * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched + it against GDK_SCROLL. + + * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new + way of mouse wheel scrolling. + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise. + + * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise. + + * gtk/gtkmain.c: Removed previous mouse wheel hack. + + * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in + gdk_event_mask_table. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added + GdkEventScroll handler. + + * gdk/gdkevents.h: Added GdkEventScroll structure. + +Thu Feb 17 17:10:12 2000 Owen Taylor + + * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford + and Anders Carlsson to change the Paned widgets so that they + can be dragged from anywhere along the length. Also change + the way that this is drawn to make this apparent. + + * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch + from George Lebl to check that option_menu->menu is present + before getting history. + +2000-02-14 Tor Lillqvist + + * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments + before the assertion for non-NULL segment list. + + * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values): + Seems that pattern brushes *must* be 8x8 pixels! At least on my + machine, but it might be display driver dependent. Sigh, so make + sure the stipple is that size. Does Windows suck or what? + + * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few + places. + +2000-02-13 Havoc Pennington + + * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init + refcount to 1 + (gdk_cursor_new): init refcount to 1 + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1 + +2000-02-13 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter + so that we don't have to do unnecessary settings to the HDC. + + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of + gdk_gc_predraw. + + * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where + the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct + GDI paths, call WidenPath to get the outline of the stroken path, + and then fill the outline (with the brush that was built from the + stipple). + + * gdk/win32/gdkgc-win32.c: Factor out common code from + _gdk_win32_gc_new and gdk_win32_gc_set_values into + gdk_win32_gc_values_to_win32values. Use correct colour for + SetBkColor() (Until now the code actually used a random colour in + the call to SetBkColor()... but that didn't show up as not many + GDI APIs use the background colour. Pattern (opaque stippled) + brushes do.) + + * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string, + gdk_win32_api_failed): New functions for error logging. + + * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro + WIN32_API_FAILED to call them, passing function or file name and + line number. + + * gdk/win32/*.c: Use the WIN32_API_FAILED macro. + + * gdk/win32/gdkprivate-win32.h: Store just the pixel values from + GdkColor for foreground and background in GdkGCWin32Data. + + * gdk/makefile.cygwin: Link in the resource object separately. + + * gdk/win32/rc/gdk.rc + * gtk/gtk.rc (New file) + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Update build number in DLLs automatically, + as in GLib. + +Sun Feb 13 08:54:45 2000 Tim Janik + + * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/. + * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): + * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): + * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the + parameters given and cursor->ref_count. coding style fixups. + + * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer, + not GtkWidget. + + * gtk/*.h: applied patch from Mathieu Lacage to + fix up widget macros and add _GET_CLASS() variant. + + * gtk/*.c: some GtkType fixups. + +2000-02-09 Tor Lillqvist + + * gdk/win32/gdkproperty-win32.c + * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW + were reversed. + +2000-02-04 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use + g_filename_to_utf8 to convert the font names Windows gives us from + whatever is the default codepage to UTF-8. + (gdk_font_load_internal) Use g_filename_from_utf8 for conversion + in the other direction. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste + error in debugging output. + +2000-02-02 Tor Lillqvist + + * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width + and height parameters to gdk_window_clear_area(). Not minus one. + +Wed Feb 2 11:58:05 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity + checks if the widget passed to gtk_drag_get_data() was not the + dest widget. + +2000-02-01 Tor Lillqvist + + * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and + g_filename_from_utf8 functions (which were added a moment ago to + GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed + size buffers. + + gtk_file_selection_get_filename returns the filename in the C + runtime encoding. It calls g_filename_from_utf8, but copies the + returned string to a static buffer, which is returned. I think + this is better than returning the result from g_filename_from_utf8 + directly, which would mean all apps that use it would have to free + the return value. Or should this function care about this issue at + all? Maybe a new function with clearly defined semantics. + + * gtk/gtkfilesel.h: Add comment about + gtk_file_selection_get_filename returning the filename in the C + runtime's encoding. + + * README.win32 + * gdk/gdk.def + * gdk/makefile.{cygwin,msc} + * gtk/gtk.def: Updates. + + * gdk/gdkcursor-win32.c: Initialise refcount. + +2000-01-31 Yuan-Chung Cheng + + * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS. + +2000-01-30 Havoc Pennington + + * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of + destroy + + * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned + + * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then + implemented in platform-specific code + + * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c + + * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an + underscore in front + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy): + put an underscore in front + + * gdk/gdkcursor.c: new file, implements + gdk_cursor_ref/gdk_cursor_unref + + * gdk/gdkcursor.h: Refcount GdkCursor + + * gdk/gdkcompat.h (gdk_cursor_destroy): compat + +2000-01-29 Tor Lillqvist + + * gdk/gdkwindow.h + * gdk/gdkpixmap.h: Remove prototypes for renamed functions. + +Tue Jan 25 11:43:21 2000 Owen Taylor + + * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix + structures to properly inherit from GtkWidget not GtkBin. + +Sun Jan 23 20:28:24 2000 Owen Taylor + + * gtk+.spec.in: Added lib/gtk+/include/* to %files + (bug #5178 - Peter Wainright) + + * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h + so that it will be installed. + (bug #4889 - "david d `zoo' zuhn" ) + +Fri Jan 21 16:29:28 2000 Owen Taylor + + * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument + for the GtkStyleClass vtable const. + + * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc + take a const string argument like GtkTranslateFunc. This will + require changes in use code. + +2000-01-19 Tor Lillqvist + + * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct + semantics (to mimic the X11 backend, which just calls XClearArea) + is to check for zero width (and height), and in that case use the + window's width minus x (height minus y). This fixes for instance + some redraw problems with gtkclist, which were easily noticeable + in the gtk file selection widget. + + (gdk_window_new): Don't set WS_EX_TOPMOST for dialog + windows. + +2000-01-13 Tor Lillqvist + + * configure.in + * gdk/Makefile.am + * gdk/x11/Makefile.am + * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright + (bug #5177). + * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown + out later. + +2000-01-09 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore + WM_MOVE for iconified or invisible windows. This fixes various + problems when minimising windows. Thanks to Bernd Herd. + +2000-01-05 Tor Lillqvist + + * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the + backend's draw_lines method, not draw_points. + +2000-01-02 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from + before Owen's reorganisation: Don't have queued_events and + queued_tail statics in this file, but use gdk_queued_events and + gdk_queued_tail. This makes exposure event compression work again. + + (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't + seem to be needed? + +1999-12-30 Tor Lillqvist + + * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include + gdkkeysyms.h to get the GDK_* keysym constants that are needed by + gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case() + doesn't do anything. + + * gdk/gdk.def: Add gdk_xid_table_insert. + + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkevents-win32.c + * gdk/win32/gdkinput-win32.c + + * gdk/win32/gdkwindow-win32.c: Remove the superfluous + extension_events field in the GdkWindowWin32Data struct. Use only + the extension_events field in GdkWindowPrivate. Previously one was + set, and the other one tested, which broke tablet + functionality. Thanks to Keishi Suenaga for pointing this out. + +1999-12-18 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents): + When handling a single character (text length == 1), don't handle + it as if it was UTF-8. + +1999-12-11 Tor Lillqvist + + * Makefile.am: Distribute README.win32. + + * gdk/Makefile.am + * gdk/win32/Makefile.am: Distribute Win32 files. + + * gdk/makefile.msc: New file. + + * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement + after label). + + * gdk/gdkprivate.h: Must mark also gdk_error_warnings and + gdk_error_code as GDKVAR, as they are referred outside GDK. + + * gdk/win32/makefile.msc: Update. + + * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More + tweaks. Check only if at least one of those Unicode subrange bits + we care for is set. If no code page bits are set, guess (wildly) + based on the charset. + + * gdk/win32/gdkinput-win32.c: Remove debugging leftover. + + * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is + non-NULL. + + * gtk/gtkdnd.c + * gtk/gtklayout.c + * gtk/gtkplug.c + * gtk/gtkselection.c + * gtk/gtksocket.c + * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as + appropriate. There must be a cleaner way to handle this? + + * gtk/gtkrc.c: Must include windows.h on Win32. + + * gtk/testgtk.c: No need to include gdkx.h. + + * gtk/makefile.cygwin: Correct invokation of genmarshal.pl. + +1999-12-07 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now, + the rbearing is set to the same as the width, but this should be + fixed. + +1999-12-06 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New + function. If Windows doesn't tell us what Unicode subranges a font + covers, guesstimate based on the codepages it covers. This will + hopefully help those Windows versions or fonts that don't give us + any useful Unicode subrange information with GetTextCharsetInfo. + Call this function in gdk_font_load_internal. + + * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc + minor changes. + +Fri Dec 3 14:09:50 1999 Owen Taylor + + * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history): + New function, long needed. + +Wed Dec 1 22:35:43 1999 Owen Taylor + + * gdk/gdkproperty.h x11/gdkproperty.c: Change + only_if_exists argument of gdk_atom_intern to + bool. + +1999-11-25 Tor Lillqvist + + * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): + Fix two copy&paste errors. + + * gdk/makefile.cygwin: Also rebuild DLL when the static archive in + win32 has changed. + + * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the + GdkWin32SingleFont struct. + + * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode + subranges of loaded fonts. Clear font signature first, in case + GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have + ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte. + + * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw): + Unoffset clip region. + +1999-11-23 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): set + event->any.window before calling filter functions. + +Fri Nov 19 10:34:41 1999 Owen Taylor + + * gtk/gtkgamma.h: Adapt cast macros to standard. + +[ Merges from 1.2 ] + +Tue Nov 16 10:15:54 1999 Owen Taylor + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_path): + If translation does not include a '/', use entire + translation instead of crashing. + +Sun Oct 31 22:21:11 1999 Tim Janik + + * docs/gtk_tut.sgml: + s/gtk_accel_group_attach/gtk_window_add_accel_group/. + +Sat Oct 30 09:09:09 1999 Owen Taylor + + * gtk/gtkselection.c (gtk_target_list_remove): Use + g_list_remove_link, not g_list_remove. + + [ From Geert Bevin ] + +Sun Oct 24 07:41:40 1999 Tim Janik + + * gtk/gtkclist.c (real_undo_selection): commented out g_print() + statement upon unselection (how the heck did that slip in?). + +Sat Oct 23 03:03:08 1999 Tim Janik + + * gtk/gtktext.c (gtk_text_freeze): + (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling + in frozen state (and aparently crashes). patch provided by Anders + Melchiorsen . + +Sat Oct 23 02:53:20 1999 Tim Janik + + * fix insensitive default/focus widget activation, + reported by Matt Goodall . + + * gtk/gtkwindow.c (gtk_window_key_press_event): + (gtk_window_activate_default): + (gtk_window_activate_focus): + return handled=FALSE for actiavtion of insensitive default + widgets. return handled=TRUE for activation of insensitive + focus widgets. don't activate in either case. + +Tue Oct 19 09:55:08 1999 Owen Taylor + + * gtk-config.in (lib_gtk): Switch order of @x_cflags@ + and $glib_cflags to match library order and in the + theory that an old version of GLib is more likely to + be in the include directory for X then vice-versa. + (Bug #2776) + +Tue Oct 19 09:46:49 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE + to determine the locale for fontsets, not LC_MESSAGES; + the user may want English messages with a handling + for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR + will still be broken) (Bug #2891) + +Tue Oct 19 20:36:42 1999 Changwoo Ryu + + * gtk/gtkrc.ko: Fixed the wrong number of "*"'s. + +Tue Oct 19 12:15:13 1999 Changwoo Ryu + + * gtk/gtkrc.ko: Changed the Korean default fontset. + +Fri Oct 8 02:32:47 1999 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug + where when scrolling to the left or top double exposes + were done, causing major slowdowns. + +Thu Oct 7 18:31:55 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset + names to lowercase and alphanumeric, before looking + them up. + + * gtk/Makefile.am: Install codeset variant gtkrc files + with normalized names. + +Thu Oct 7 22:52:42 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even + popup menus when the menu is already visible, but its parent + is still hidden, (happens after tornoff window got hidden). + +Thu Oct 7 11:09:55 1999 Owen Taylor + + * gtk/Makefile.am (install-data-local): Fix + a typo where gtkrc.vi_VN.tcvn5712 wasn't getting + deleted, causing error messages on install. + +Thu Oct 7 11:03:06 1999 Owen Taylor + + * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw + the handle as well, since we now sometimes ignore + exposes on the handle while resizing. + +Wed Oct 6 18:02:31 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid + extra g_free introduced in one of the last one or two + commits. + +Wed Oct 6 16:38:36 1999 Owen Taylor + + * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files + consistent, put each style that a gtkrc.* file creates + in a unique namespace, remove old files before installing. + +Wed Oct 6 14:31:16 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when + gtk_rc_init is called multiple times. (Yes, people who + do that have bugs in their code.) + +Tue Oct 5 11:36:57 PDT 1999 Manish Singh + + * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf. + Remove it since it's generated by the Makefile anyway + +Tue Oct 5 02:43:41 1999 Owen Taylor + + * gdk/gdkinputcommon.h (gdk_input_device_new): Free + device->info.axes for core pointer. + +Thu Sep 30 13:55:25 1999 Owen Taylor + + * gtk/testgtk.c (destroy_idle_test): Rename idle to + idle_id, to deal with obsolete, broken C libraries. + +Mon Sep 27 02:50:15 1999 Owen Taylor + + * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in + allocation->x/y twice! + + * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough() + consistent with gtk_vscale_pos_trough(). + +Sun Sep 26 19:44:34 1999 Owen Taylor + + * gtk/gtkcontainer.c (gtk_container_queue_resize): We may + be queueing a resize on a toplevel container between + the time we show it and when we map it. So, we need + to test GTK_WIDGET_VISIBLE() for toplevels, and only + use GTK_WIDGET_DRAWABLE() for child windows. + +Thu Sep 23 16:41:03 1999 Owen Taylor + + * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS + (fixes bug #2144) + +Fri Sep 24 00:51:45 1999 Tim Janik + + * gtk/gtkcontainer.c (gtk_container_queue_resize): check for + container DRAWABLE (instead of VISIBLE), so we don't queue + resizes on non-toplevel containers. + +Sun Sep 19 18:13:31 1999 Owen Taylor + + * gtk/gtkselection.[ch]: Make the data argument + const guchar *. + +Sat Sep 18 21:27:40 1999 Owen Taylor + + * gtk/gtkwindow.c: Try to behave sensibly if + the focus widget is the window itself. (Should + we allow this at all?) + +Fri Sep 17 09:57:15 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_set_sensitive): + * gtk/gtknotebook.c (gtk_notebook_set_scrollable): + * gtk/gtknotebook.c (gtk_notebook_set_show_border): + * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args + in prototypes and implementations consistent (Tomas Ogren). + + * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag + before the widget is unparented (reported by damon). + + * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char, + since we provide unsigned data anyways. + +Thu Sep 16 21:32:01 1999 Owen Taylor + + * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay + the call to gtk_tooltips_layout_text() until later. + + * gtk/gtktooltips.c (gtk_tooltips_draw_tips): + Call gtk_widget_ensure_style() before using the style. + +Wed Sep 15 02:52:19 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_event): Added workaround + for old widgets that don't propagate draws to all + children. (Namely gnome-dock for gnome-libs <= 1.0.16) + +Tue Sep 14 19:22:19 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent + for a redraw but just the widget that requested the resize. + +Tue Sep 14 18:29:47 1999 Tim Janik + + * gtk/gtkcontainer.c: added new widget level method + gtk_container_set_reallocate_redraws() and a GtkContainer flag + reallocate_redraws : 1 to reflect the setting, exported this through + the argument system as a boolean ::reallocate_redraws. + + * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws + on the widget because the allocation changes, do so as well for + widget->parent if the parent has reallocate_redraws set to TRUE. + with that containers requesting reallocation redraws get automatically + redrawn if their children changed allocation (this unfortunately + affects also other children that didn't change allocation, but we + cannot work around that before 1.3). + +Tue Sep 14 18:23:01 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width + _and_ height are >0 (not _or_). + + * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize() + instead of gtk_container_queue_resize(), which is a core gtk internal + function (must have been on crack when i queued that). + + * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so + we can check more reliably if we want to discard expose events. + * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING + flag. + + * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes, + we simply trust these events. for deciding whether to discard exposes, + check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING. + +Mon Sep 13 15:01:21 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore + queues of areas that are completely off screen. + + * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken + logic for handleboxes. + + * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity + check on width/height. + +Mon Sep 13 02:22:47 1999 Tim Janik + + * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements", + we are fine with using $@ the way we do (if we actually encounter + brokeness with $@ in VPATH builds because of additional path prefixes, + we need to use $(@F) actually). + +Mon Sep 13 01:34:53 1999 Tim Janik + + * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce + short lived bugs, that would allow language bindings to do surgeries + to our guts. + +Fri Sep 10 15:22:50 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo + where comparison was being done against an uninitialized + value causing intermittant results depending on + compiler flags. Also make it clearer that we aren't + ever initializing the child as 0x0 (though this will + be caught in gtk_widget_size_allocate()) + +Fri Sep 10 10:06:56 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_set_transient_for): Move + gtk_window_unset_transient_for() call after we do checks + involving the old transient parent. + [ From Lance Capser ] + +1999-09-07 Raja R Harinath + + * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create + an empty file. + +Mon Sep 6 00:11:56 1999 Lars Hamann + + * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has + no children. (Reported by: Chris Rogers ) + +1999-09-03 Raja R Harinath + + * gtk/Makefile.am (gen_sources): Improve VPATH builds. + `$@' is valid only in the build dir, not after we've done + `cd $srcdir'. Also use `test -f' instead of less portable + `test -e'. + +Fri Sep 3 15:59:56 1999 Owen Taylor + + * gtk/gtktext.c (correct_cache_insert): Rewrite + for simplicity, and hopefully correctness. + (Fixes bug #1322, which was a segfault when + on some insertions with the properties around + the insertion set up just wrong.) + + * gtk/gtktext.c (gtk_text_adjustment): When we receive + a "changed" signal, clamp the new value to the adjustment + bounds to avoid segfaulting if someone tries to change + the adjustment to a bogus value. (Bug #1795) + +Thu Sep 2 16:33:59 1999 Owen Taylor + + * gtk/gtkmain.c: Ignore unexpected destroy notifies + for children, for toplevel windows handle them + like delete_event. + + * gtk/gtkplug.c: Add an unrealize handler so that + we unref plug->socket_window when we are done + with it. + +Fri Sep 3 14:52:54 1999 Owen Taylor + + * gtk/gtktext.c (clear_area): Fix stupid signedness + problem that was causing background to sometimes + be misaligned. + +Fri Sep 3 12:26:33 1999 Owen Taylor + + [ Fixes pointed out by Ettore Perazzoli ] + + * gtk/gtkmenu.c (gtk_menu_position): Make + sure we never position menus with negative x, y, + since gtk_widget_set_uposition() can't handle that. + + * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): + Modify the positioning code a bit so that we always + put the top-left corner onscreen. (This is for + UI reasons, gtk_menu_position() now takes care of + gtk_widet_set_uposition() brokeness.) + +Fri Sep 3 03:06:30 1999 Tim Janik + + * gtk/Makefile.am: fixed up things for -jx, x > 1. + +Sun Sep 5 08:48:51 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the + RC style that is passed in. The lack of the ref + before was a bug. If people worked around this + bug, this will introduce a slight memory leak + in their code. The code should typically look like: + + rc_style = gtk_rc_style_new (); + [...] + gtk_widget_modify_style (widget, rc_style); + gtk_rc_style_unref (rc_style); + + * gtk/gtkwidget.c (gtk_widget_modify_style): Reset + the style if it was already set. + + * gtk/gtkwidget.c (gtk_widget_set_name): Only set the + style if it was set before. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * gtk/testgtk.c (main): Add a check to see if we + are being run from the correct directory and + to quit nicely if we are not. + + * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function + static. + +Thu Sep 2 23:00:03 1999 Tim Janik + + * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS. + + * gtk/gtkwindow.c: + queue resizes unconditionally (gtk_widget_queue_resize will figure + what to do if the window is not realized). + (gtk_window_move_resize): only recenter the window + for GTK_WIN_POS_CENTER_ALWAYS. + (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in + the same way as GTK_WIN_POS_CENTER. + +Thu Sep 2 22:39:27 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_reposition): check for the last position + with (!(info->last_flags & GDK_HINT_POS)) instead of + (!info->last_flags & GDK_HINT_POS). + + * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and + new_height unconditionally, because we use these values even if + !default_size_changed && !hints_changed. + comented the (default_size_changed || hints_changed) case with + respect to resize rejects from the window manager. + + * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values + in the zvt condition hack, since this includes the window hints, set + the hints after the handling_resize case. + + * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a + window is initially shown with to the geometry. + +Thu Sep 2 07:38:56 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): + s/size_changed/default_size_changed/g so i know what's + really going on (frying brain on smaller flame now). + +Thu Sep 2 05:47:47 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if + we have size_changed upon handling_resize. this is a gross + workaround for the broken zvt widget and should be removed in + 1.3 again (search for FIXME). + Owen provided an accurate comment for this: + + /* We could be here for two reasons + * 1) We coincidentally got a resize while handling + * another resize. + * 2) Our computation of size_changed was completely + * screwed up, probably because one of our children + * is broken. It's probably a zvt widget. + * + * For 1), we could just go ahead and ask for the + * new size right now, but doing that for 2) + * might well be fighting the user (and can even + * trigger a loop). Since we really don't want to + * do that, we requeue a resize in hopes that + * by the time it gets handled, the child has seen + * the light and is willing to go along with the + * new size. (this happens for the zvt widget, since + * the size_allocate() above will have stored the + * requisition corresponding to the new size in the + * zvt widget) + * + * This doesn't buy us anything for 1), but it shouldn't + * hurt us too badly, since it is what would have + * happened if we had gotten the configure event before + * the new size had been set. + */ + +Wed Sep 1 20:46:11 1999 Owen Taylor + + * gtk/gtkrc.c: deal properly with the fact that RC + style lists may include rc styles more than once. + + * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed + unused static function. + + * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a + stack of directories of RC files currently being + parsed and implicitely add them to pixmap path. + + This fixes a bug where the directory would get + appended then overwritten by pixmap_path declarations. + + (bug #1462, from Peter Wainright ) + + * gtk/gtkthemes.c (gtk_theme_engine_unref): Call + theme's exit function. (Patch from Peter Wainwright, + bug #1454) + + * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy): + Add a destroy() handler to take care of removing + group for menu item. (Fixes bug #1197) + + * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko + in warning message. + +Wed Sep 1 21:27:42 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server + roundtrip to figure window's width and height, since we know that + anyways from widget->allocation. + +Wed Sep 1 12:37:44 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_move_resize): Compute + the hints after we request the new size. + +Wed Sep 1 10:38:37 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_compute_hints): Removed + GTK_WIDGET_REALIZED() assertion - we can compute the + hints before we are realized. + + * gtk/gtkwindow.c (gtk_window_move_resize): Reorder + hint changing so that we have a value of hints_changed + when we decide whether to constrain the window size. + + * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix. + + * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups, + change back to G_MAXINT. + +Wed Sep 1 06:54:59 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize + new GtkWindowGeometryInfo, so fields like GdkGeometry geometry + contain uncluttered values. + (gtk_window_compute_hints): simply assert that window is realized + and that geometry_info is valid, since we rely on this anyways. + (gtk_window_constrain_size): major cleanups to the code. + if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height + for the base size, instead of the minimums. use 32767 as max width + and height (like in gtkwindow.c) instead of G_MAXINT. + +Wed Sep 1 04:41:25 1999 Tim Janik + + * cleaned up the GtkContainer.need_resize flag handling mess, we + only need to force resize requests when we were prematurely + realized, or our widget tree was modified when we were temporarily + hidden. handling these cases directly upon showing the window (i.e. + while the GdkWindow is still unmapped) avoids the need to wait for + a configure event response and therefore makes the GUI more snappier + and avoids blank windows during the roundtrip. + + * gtk/gtkwidget.c: + (gtk_widget_hide): + (gtk_widget_show): don't queue resizes on toplevels, they know how + to deal with matters. + + * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize + flag directly for not visible resize containers and spare us unecessary + signal emissions. + + * gtk/gtkwindow.c: + (gtk_window_realize): if we need to enforce premature size allocation, + queue a container resize so we are correctly resized later on. + (gtk_window_init): + (gtk_window_size_request): + don't freak around with the ->need_resize flag, + gtk_container_queue_resize() will care about that. + (gtk_window_show): + handle initial resizing issues here, we can handle matters better in + this place, especially since we know that our GdkWindow is still + unmapped. + (gtk_window_move_resize): + don't care about ->need_resize at all. + handle size changes properly that occoured while we waited for a + configure event. + +Tue Aug 31 15:58:46 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_set_uposition): + * gtk/gtkwindow.[hc] (gtk_window_reposition): + Move the hint setting code from gtk_widget_set_uposition + to here; set the hints so that we respect any previously + set geometry hints. + + * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't + change the window hints here or move the window here, + let that happen in gtk_window_move_resize(). + +Tue Aug 31 06:58:52 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due + to already queued resizes (and therefore redraws) on a widget, check + its anchestry as well. + + * gtk/gtkcontainer.c: + (gtk_container_queue_resize): clear resize widgets for resize + containers before aborting prematurely. this is especially important + for toplevels which may need imemdiate processing or their resize + handler to be queued. + (gtk_container_dequeue_resize_handler): added new internal function for + gtkwindow.c. + + * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a + configure event, take possible changes in window position into account + as well. + if we request a new window size, queue up a resize handler that will + last until the configure event response arrives. + combined the ->need_resize case (initial show) with the general size + (hints) changed case and added even more comments. + if !auto_shrink, only revert to the old allocation if the new size + is smaller than the current allocation. + +Tue Aug 31 11:55:20 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy, + gtk_window_set_geometry_hints + gtk_window_set_default_size): + When hints are set, queue a resize so that the hints will + be eventually reset on the toplevel. + + * gtk/gtkwindow.c (gtk_window_show): Use + gtk_window_compute_default_size(). Clear the need_resize flag + on the initail map so that we don't unnecessarily trigger the + resize code. + + * gtk/gtkwindow.c (gtk_window_move_resize): Split apart + into separate functions. Compare the hints we are setting + with what we set last time so that we can accurately + tell when we need to reset the hints. + + * gtk/gtkwindow.c (gtk_window_compute_default_size): New + function to figure out the size from requisition + and default_size. + + * gtk/gtkwindow.c (gtk_window_constrain_size): Function + from fvwm to constrain a size to the geometry hints. + + * gtk/gtkwindow.c (gtk_window_compare_hints): New function + to compare two sets of geometry hints. + + * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed + from gtk_window_set_hints(), just compute the hints, + don't set them. + + * gtk/gtkwindow.c (gtk_window_compute_reposition): Move + code from gtk_window_move_resize() to separate function, + rationalize a bit. + +Tue Aug 31 13:05:03 1999 Owen Taylor + + * gtkrc.h: Move the ref_count member out of the GtkRcStyle + structure into a new private structure. + + * gtkrc.c: Split GtkRcStyle into public/private. + In the private part, add a list of pointers to the + RcStyle lists this RcStyle participates in. + + * gtkrc.c: When a RcStyle is free, remove all + lists referencing it from the + realized_style_ht hash, and free those lists. + + * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call + gtk_rc_init(), since that adds the default styles + to the list of parsed RC files again. + + * gtk/gtkrc.c: Use gtk_rc_style_find() consistently. + +Thu Aug 26 14:14:42 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity + checks that ensure that a widget's allocation is at least 1 in width + and height. (GNOME note: this doesn't affect old panel code anymore, + because GtkSocket will request width and height of at least 1 since + Fri Jul 23). + + * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been + allocated yet (happens if the user realizes the window prematurely), + size request and allocate it. + (gtk_window_size_allocate): guard against guint underflows. + +Wed Aug 25 19:01:36 1999 Lars Hamann + + * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs + in gtk_built_sources, so gtk.defs gets built prior to all other + sources. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * gtk/Makefile.am: + invoke indent on gtkmarshal.*. + rewrote source generation rules, use COPYING as oldest source tag for + a piggyback rule to generate all sources from (don't touch it ;). + major cleanups, strip spaces on build rules for GNU Make. + + * gtk/genmarshal.pl: don't operate on hardcoded filenames but take + source and target files from commandline arguments. don't invoke indent. + +Sat Aug 21 14:07:36 1999 Lars Hamann + + * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize + notebook after switch to avoid drawing problems. + (Bug#856 Reported by: Theodore Roth ) + + (gtk_notebook_pages_allocate): don't map not visible tab_labels, + show them instead. + (Bug#1805 Reported by: Dave Cole ) + +Sat Aug 21 14:07:36 1999 Lars Hamann + + * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize + notebook after switch to avoid drawing problems. + (Bug#856 Reported by: Theodore Roth ) + + (gtk_notebook_pages_allocate): don't map not visible tab_labels, + show them instead. + (Bug#1805 Reported by: Dave Cole ) + +Wed Aug 18 09:20:10 1999 Tim Janik + + * gtk/gtkwindow.c: + we use window->need_resize from configure_event now, to indicate that + the gtkwindow should keep its allocation (e.g. because the user resized + the window through window manager handles). resize_count is now reliably + used to figure whether we got the allocation we requested from the + window manager. + configure events get queued as resizes now, the real stuff (size + computation and allocation) now only goes on in gtk_window_move_resize(). + GtkWindow's requisition now contains its *real* requisition (like all + other widgets), *not* taking usize into account. + geometry_info->last_{width|height} is now updated from set_hints() only + so it always contains the last hints we set for the window manager. + made some event handlers return TRUE instead of FALSE. + the overall code should be much more straight forward now, and the + significant code portions are accompanied by comments now. + (gtk_window_set_hints): + removed requisition argument and made it + fetch the requisition through gtk_widget_get_child_requisition. + we also don't move the gdkwindow here anymore, gtk_window_move_resize() + does that now. + (gtk_window_show): + ensure that the widget is realized before calling + gtk_container_check_resize() (and thus gtk_window_move_resize()), also + ensure that we got properly size requested and allocated before + realization. + (gtk_window_configure_event): + ignore plain window moves, or reallocate the widget tree through the + resize queue otherwise. + (gtk_window_move_resize): + mostly rewrote this function to figure window manager hints more + reliably, coalesce window moves and resizes to reduce configure events + and do actuall size allocations. + +Tue Aug 17 07:43:04 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets + that have a resize pending, because a redraw is already queued for them. + + * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal + hack to clear resize_widgets. + + * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets + for resize containers prior to size allocation. (this is also a bit + ugly, but avoids side effects for stopped emissions and is thus more + reliable). + (gtk_widget_unparent): removed disconnect call for clear_resize_widgets. + + * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this + function from gtk_tooltips_expose, as we connect to ::expose_event + *and* ::draw now. + +1999-08-18 Federico Mena Quintero + + * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity + checks. + (gtk_target_list_unref): Likewise. + + * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise. + +Tue Aug 17 15:47:07 1999 Owen Taylor + + * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar): + guard against division by zero. (Fixes bug #1339) + +Tue Aug 17 10:56:49 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_move_{forward,backward}_word): + Prevent the trivial leak of information of allowing + word motion when the entry is not visible. + +Tue Aug 17 10:28:52 1999 Owen Taylor + + * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate + modality to error dialog as well as confirmation dialogs. + (Bug #1803, reported by Rosanna Wing Sze Yuen) + +Wed Aug 11 01:04:57 1999 Owen Taylor + + * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor + tree->view_lines. + (gtk-guy-990611-3.patch: Guy Harris ) + + * gtk/Makefile.am (install-data-local): Solaris apparently + has various troubles with ln -f; use rm first instead. + (gtk-guy-990611-2.patch: Guy Harris ) + +1999-07-30 Raja R Harinath + + * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir, + use `cp' followed by `rm' (the `rm' was already there). + +July 30, 1999 Elliot Lee + + * configure.in: Fix autoconf warnings about cross compilation by + trying to provide sane defaults for AC_TRY_RUN. + * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir), + put them into $(srcdir) when generated. Also add a dependency of + gtksignal.h on gtkmarshal.h for -j builds. + * gtk/gtk(dnd,style,gamma).c: Minor warning fixes. + +Wed Jul 28 09:29:19 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main_iteration_do): Added missing + GDK_THREADS_{LEAVE,ENTER} pair. + (From Paul Fisher ) + +Fri Jul 23 01:00:15 1999 Tim Janik + + * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested + width and height are always >0 (owen). + +Fri Jul 23 00:00:47 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent + change that assured that a widget's allocated with and height are + always >1, since this breaks *buggy* panel code. unfortunately this + back-breaks the gimp's color selector. + + * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our + allocation is always >0 in width and height, before sending the + configure event; this is a *gross* hack to get the gimp back to work. + + * marked both cases with TODO-1.3 + +Wed Jul 21 15:47:39 1999 Owen Taylor + + * gtk/gtktext.c: Don't display wrap indicators when + text is not editable and word wrap is on. + +Wed Jul 21 08:21:40 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case + option menus here as they are not derived from menu shell, assure that + the option menu has a menu we can add items to. + +Tue Jul 20 23:29:48 1999 Tim Janik + + * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation-> + width/height to (gint) before calculations and check against < 0 to + avoid guint wraparounds. + +Sun Jul 18 00:35:49 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated + width and height is never zero. sanity check both dimensions against + 32767 and issue a warning if the allocation is greater than that. + +Wed Jul 7 15:03:30 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_events_pending): Unlock around call + to g_main_pending() as well. + +Wed Jul 7 14:59:01 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main_iteration): Unlock around + call to g_main_iteration() - since that will regrab + GTK+ lock to process events. + +Thu Jul 1 15:01:55 1999 Owen Taylor + + * gtk/gtkwindow.c + - Regularize with the rest of GTK+ by making widget->requisition + not reflect the set_usize() + - Always recompute geometry hints, then check if they + changed before sending them to the X server. The + previous checks for changes would fail in a number + of circumstances. + +Thu Jul 1 11:55:59 1999 Owen Taylor + + * gtk/gtkstyle.c: Include for strcmp(). + +Wed Jun 30 19:26:36 1999 Owen Taylor + + * gtk/gtkdnd.c: + - Code cleanups + - Instantaneously update on modifier key presses + - Allow cancellation of the drag with Escape. + +Tue Jun 29 17:04:09 1999 Owen Taylor + + * gtk/testgtk.c (create_handle_box): Set the policy + to auto_shrink - otherwise the appearance is rather + strange when flipping between horizontal and vertical. + +Mon Jun 28 09:29:52 1999 Tim Janik + + * gtk/gtkwindow.c: add ::default_width and ::default_height arguments. + (gtk_window_set_default_size): don't change a value if it's < 0. + queue a resize. + +Sun Jun 27 11:00:33 1999 Tim Janik + + * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts. + +Mon Jun 28 12:08:25 1999 Owen Taylor + + * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't + add an extra "/" when concating "/" + filename. + (From Matt Grossman ) + +Mon Jun 28 10:57:12 1999 Owen Taylor + + * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask + for fg_gc if we set it for drawing pixmap. + +Tue Jun 15 12:45:12 1999 Owen Taylor + + Fixes from Peter Wainwright + + * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is + already set, call old engine's destroy function and + unref the old engine. + +Thu Jun 10 17:59:38 1999 Tim Janik + + * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize. + +Wed Jun 9 15:13:16 1999 Tim Janik + + * gtk/gtkaccelgroup.h: mark certain functions as internal. + +Wed Jun 9 13:48:28 1999 Tim Janik + + * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the + expand behaviour changed. + + * gtk/gtklabel.c (gtk_label_set_pattern): + (gtk_label_set_justify): + (gtk_label_set_line_wrap): + don't bother invoking queue_clear, the reallocation does + that for us, always free_words so the upcoming resize will + relayout the label's contents. + +Wed Jun 9 12:50:48 1999 Tim Janik + + * applied argument implementation patches from Elena Devdariani + . + + * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size, + ::space_style, ::relief + * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size + * gtk/gtkpreview.c: ::expand + * gtk/gtkpaned.c: ::handle_size, ::gutter_size + * gtk/gtknotebook.c: ::homogeneous + * gtk/gtklabel.c: ::wrap + * gtk/gtklist.c: ::selection_mode + * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge + * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y + * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity + * gtk/gtkclist.c: ::sort_type + * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle + * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child + +Tue Jun 1 23:38:38 1999 Owen Taylor + + * gtk/gtkstyle.c: Removed ill-thought-out part of last + comment. + +Tue Jun 1 23:30:09 1999 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_attach): Get the reference + counting right when we have to attach a new style + for a different visual. (Chi-Deok Hwang ) + + * gtk/gtkstyle.c: Documented the refcounting + peculularities of gtk_style_attach. + +1999-06-01 Tim Janik + + * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid + window types. + + * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead + of GTK_TOPLEVEL for creating the window. + +1999-06-01 Tim Janik + + * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is + the last argument (reported by Per Winkvist). + +Tue May 25 13:13:12 1999 Owen Taylor + + Fixes for invisible XOR lines (Frank Loemker + ) + + * gtk/gtkclist.c (gtk_clist_realize): Always use + a non-zero pixel for GDK_XOR. + + * gtk/gtkvpaned.c gtk/gtkhpaned.c: + Use GDK_INVERT instead of GDK_XOR. + +Wed May 12 21:56:40 1999 Lars Hamann + + * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed + signals if h/voffsets differ from adjustment values. + Reportet by Jerome Bolliet + +Mon May 10 04:20:41 1999 Tim Janik + + * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate + ::selection-done emissions up to the topmost menu shell. + +Fri May 7 10:15:14 1999 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset + the user data on the window before destroying it. + + * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an + unrealize handler to take care of destroying + notebook->panel properly. + (Bug #1198 - Morten Welinder ) + + * gtk/gtktext.c (expand_scratch_buffer): Fix reversal + of g_new and g_realloc to stop memory leak. (Actually, + we could just use g_realloc(), but I'm not 100% sure + that is portable). + (Bug #1196 - Morten Welinder ) + +Wed Apr 21 00:42:08 1999 Owen Taylor + + * gtk/gtkplug.h: Removed stray GtkPlugButton declaration. + + * gdk/gdkfont.c (gdk_text_measure): Fix the return value + for fontsets. + + * gtk/gtkbutton.c (gtkbutton_expose): Fix warning + with bin/button confusion. + +Thu May 6 04:53:26 1999 Tim Janik + + * gtk/testgtk.c: in the ItemFactory test, link radio items together, + and show how preselection of radio items is done. + +Sun May 2 13:31:14 1999 Tim Janik + + * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): + * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert): + * gtk/gtktoolbar.c (gtk_toolbar_insert_element): + * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1): + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): + * gtk/gtktable.c (gtk_table_attach): + * gtk/gtklist.c (gtk_list_insert_items): + * gtk/gtkmenushell.c (gtk_menu_shell_insert): + * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): + * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): + * gtk/gtkbin.c (gtk_bin_add): + * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): + * gtk/gtkfixed.c (gtk_fixed_put): + * gtk/gtklayout.c (gtk_layout_put): + general fixups to container_add logic. always realize child if + child->parent is realized, only map the child and queue a resize + if child and child->parent are both visible. + +Fri Apr 30 09:02:28 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall + instead of gtk_container_foreach to walk and unrealize children, so + composite children get also unrealized. + (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to. + (gtk_widget_map): assert that the widget is visible (basic constrain). + (gtk_widget_real_map): assert that the widget is realized (basic + constrain). + +Fri Apr 29 00:53:20 1999 Tim Janik + + * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak. + +Tue May 4 09:32:08 1999 Owen Taylor + + * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc + file for iso-8859-2 locales. + + * configure.in (ALL_LINGUAS): ALL_LINGUAS update. + +Tue Apr 27 16:38:32 1999 Owen Taylor + + * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES. + (Pointed out by andy@rz.uni-karlsruhe.de and others). + Remove some suspicious and useless lines. + +Tue May 4 08:44:08 1999 Owen Taylor + + * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use + width,height = 0, 0 to mean - here to edge of window, + instead of -1, -1, since the former is all we support. + +Tue May 4 08:34:43 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main): Correctly free list nodes + when removing from quit_functions list. + +Tue Apr 27 14:17:16 1999 Tim Janik + + * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable. + +Tue Apr 27 18:23:35 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): + When redrawing characters on non-visible entry, use appropriate + '*' character. (Bug #1130 - Jean-Marc Jacquet ) + +Tue Apr 27 01:31:40 1999 Lars Hamann + + * gtk/gtkclist.c (drag_dest_cell): compute destination cell + from drag coordinates. + (gtk_clist_drag_data_received) (gtk_clist_drag_motion): + use drag_dest_cell. + + * gtk/gtktree (drag_dest_cell) + (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise. + (Bug #1129) + +Wed Apr 21 21:26:11 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize + translate_* fields. + (gtk_item_factory_finalize): invoke translate_notify independant from + translate_data. + (gtk_item_factory_set_translate_func): likewise. + (gtk_item_factory_destroy): only remove ifactory pointer from those + widgets that belong to us (stupid me). + +Mon Apr 19 12:05:31 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of + rc_style list when lookup succeeeds. + +Thu Apr 15 01:11:24 1999 Lars Hamann + + * gtk/gtkctree.c (resync_selection): + * gtk/gtkclist.c (resync_selection): fixed undo_selection bug. + * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection + bug. + +Fri Apr 9 19:22:19 1999 Owen Taylor + + * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c: + Add some missing GDK_THREADS_ENTER()/LEAVE around + timeouts. (Patches from Sebastian Wilhelmi ) + +Thu Apr 8 20:10:33 1999 Tim Janik + + * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate() + rather than emit_by_name. + + * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference + on the widget across multiple signal emissions. + (gtk_editable_delete_text): same here. + (gtk_editable_class_init): set widget_class->activate_signal after + editable_signals[ACTIVATE] has been created. + +Wed Apr 7 22:59:47 1999 Owen Taylor + + * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp + position here prematurely -- we might not have the + right ->min_position and ->max_position yet. + +Tue Apr 6 16:38:51 1999 Owen Taylor + + * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request): + Add error traps so if the other end of the connection + dies, we survive. + + * gtk/gtkselection.c (gtk_selection_notify): Clean + up properly when selection property retrieval fails. + + * gtk/gtkselection.c (gtk_selection_request): Correctly + reject SelectionRequest notifies where the handler + returns no data. + +Tue Apr 6 12:24:21 1999 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight + when we've previously highlighted. + + * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't + emit two "drag_leave" signals for Motif drops. + + * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send + back the correct status messages when dropping from + Motif onto a proxy window that is rejecting the + drop. + +Sat Mar 27 23:32:13 1999 Tim Janik + + * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free + the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal() + to compare two argument values. added gtk_arg_to_valueloc() to set a + variable from an arg through its location (pointer). + + * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of + gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected + as gfloat*, uchars are collected as guchar*, ints are collected as + gint*, etc... + +Mon Mar 29 17:45:47 1999 Owen Taylor + + * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c: + Include instead of . + + * gtk/gtkstyle.c: Fix double include of gtkthemes.h + (actually, a lot more duplicate includes occur if + you trace through the sequence of #include's) + gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu + +Mon Mar 29 17:02:58 1999 Owen Taylor + + Patches from Akira Higuchi + gtk-a-higuti-990322-[0-3] + + * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS + that was causing -DX_LOCALE not to work. + + * gtk/gtkrc.c (gtk_rc_init): + X_LOCALE will never have LC_MESSAGES defined + +Thu Mar 25 12:38:31 1999 Tim Janik + + * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from + g_get_home_dir() (gtk-pmc-990123-0.patch.gz). + + * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/ + left/right as well (gtk-michael-980726-0.patch.gz). + + * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/ + for pointer values, use gchar instead of char. fixed uline allocation + leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem + chunks instead of G_ALLOC_ONLY. + (gtk_label_size_request): always alter requisition as passed and leave + widget->requisition alone. + (gtk_label_set_text): allow NULL strings. + (gtk_label_new): likewise. + +Wed Mar 24 09:24:03 1999 Tim Janik + + * gtk/gtkdrawingarea.[hc]: type/macro fixups. + +Mon Mar 22 05:51:34 1999 Tim Janik + + * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible + *and* mapped (i.e. drawable). + (gtk_bin_expose): only send exposes to drawable children. + + * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable. + (gtk_box_expose): only send exposes to drawable children. + + * gtk/gtkhscale.c (gtk_hscale_draw): + * gtk/gtkvscale.c (gtk_vscale_draw): + hm, this is an ugly one. we first compute the size of our trough area + here (window relative) and then check intersection with the draw_area + which is parent relative because we're a NO_WINDOW widget, so we need + to offset the trough area by allocation.x and allocation.y before the + check. (this must not be done for the background area though, since + that's already computed parent relative). + +Mon Mar 22 00:41:39 1999 Lars Hamann + + * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary, + unrealize title buttons. + +Fri Mar 19 00:00:22 1999 Lars Hamann + + * gtk/gtkclist.c (gtk_clist_column_title_passive) + (gtk_clist_column_title_active): + only connect/disconnect to GtkWidgetClass::event to block mouse events. + + * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): + zero initialize event, removed superfluous gdk_window_get_pointer call + + * gtk/gtklist.c (gtk_list_vertical_timeout) + (gtk_list_horizontal_timeout): removed superfluous + gdk_window_get_pointer call + +Wed Mar 17 09:00:00 1999 Tim Janik + + * plugging problems reported by "Bruce Mitchener, Jr." + due to a purify session. + + * gtk/gtkstyle.c: + (gtk_style_ref): + (gtk_style_unref): assert ref_count to be > 0. + + * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize + the requisition. + (gtk_clist_set_shift): likewise. + + * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the + adjustments. + + * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the + event before sending it and set send_event to TRUE (which needs to + be done for *all* synthesized events). + (gtk_list_vertical_timeout): likewise. + + * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory + leaks. + + * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event + to TRUE when synthesizing events. + +[ *** end of merges from 1.2 *** ] + +1999-11-21 Tor Lillqvist + + * gdk/gdkconfig.h: Remove, as this is a file generated by configure + (or copied from gdkconfig.h.win32 on Win32, sigh). + + * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL. + + * gdk/gdk.c (gdk_keyval_convert_case): Fix typo. + + * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line. + + * gdk/gdkconfig.h.win32: New file. + + * gdk/win32/makefile.cygwin: Build just a static archive here. + + * gdk/makefile.cygwin: New file. Get the win32-specific stuff + for the DLL from the static archive built above. + + * gdk/gdk.def: Moved here from the win32 subdirectory. + + * gdk/win32/*: Adapt for the changed private struct organisation. + + * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now. + +Sun Nov 21 16:44:35 1999 Stefan Jeske + + * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support + for wheel mice (buttons 4 and 5). + +1999-11-18 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor + drawables use just the pixel field in the foreground and + background GdkColor of the GdkGC. + + gdk_gc_set_{fore,back}ground() are called in the GIMP with + GdkColors containing uninitialized (red,green,blue) fields, and + just the pixel field filled in, and furthermore in the + visual-dependent format as returned by gdk_rgb_xpixel_from_rgb(). + It thus turns out that we really don't need to have the full + GdkColor for fg and bg in GdkGCWin32Data after all. Will change + it later to have just the pixel values. + +Mon Nov 15 17:17:51 GMT 1999 Tony Gale + + * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/ + +Sat Nov 13 22:30:29 GMT 1999 Tony Gale + + * docs/gtkfaq.sgml: threads example from Erik Mouw. + New question on GtkLabel background colors. + + * docs/gtk_tut.sgml: + - Correct the example code callback + function definitions. + - Update the gtkdial example code, from Frans van Schaik. + - Update setselection.c to current API. + + * examples/Makefile examples/*/*.c: Update to code + listed in tutorial. + +1999-11-10 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode + subrange table (from the "Developing International Software for + WIndows 95 and Windows NT" book) was missing the Hangul syllable + block... Get the loaded font's charset correctly. + + (Note that this, and the other *-win32.c files, still really are + the old ones, the win32 subdirectory is not ready for compilation + yet after the reorg.) + +Wed Nov 10 17:26:49 GMT 1999 Tony Gale + + * gtk/gtkclist.c: Fix off-by-one bug in parameter + check. + +Wed Nov 10 12:12:03 1999 Owen Taylor + + * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState() + on results of XQueryDeviceState(). + +Mon Nov 8 16:40:43 1999 Owen Taylor + + * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since + we need to accesss only ->children. We need an accessor + for the children. + + * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G + DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer() + to get rid of gdkx.h include. + + * gtk/gtkctree.c: Get rid of #include + and random references to 'None'. + + * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c + Get rid of unused #include + + * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include + gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from + gdkconfig.h. + +1999-11-08 Tor Lillqvist + + * gdk/win32/gdkdraw.c + * gdk/win32/gdkfont.c + * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes + following yesterday's changes. (Unrelated to Owen's reorg.) + +Mon Nov 8 16:18:25 1999 Owen Taylor + + * gdk/x11/gdkinput-gxi.c: Add missing include, + fix GdkWindowPrivate => GdkDrawablePrivate. + + * gdk/x11/gdkinputprivate.h: include . + + * gdk/x11/Makefile.am (xinput_sources): Add missing + backslash to fix building with --with-xinput=none + +Mon Nov 8 14:47:04 1999 Owen Taylor + + Move all X specific code into the x11/ directory. + Aside from shuffling things around, did the following: + + * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add + gdk_arg_context_* - a simple argument parsing system + in the style of popt. + + * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch] + gdk/x11/gdkprivate-x11.h: + Remove X specific stuff from GdkDrawable and GdkWindowPrivate - + add ->klass and ->klass_data fields. The klass_data + field points to an auxilliary structure that is + windowing system dependent. + + * gdk/gdkfont.c: Make most of the measurement functions + simply wrappers around gdk_text_extents(). + + * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a + _gdk_font_strlen() function that hides the weird + behavior in gtk+-1.[02] where a string is interpreted + differently for 8-bit and 16-bit fonts. + + * gdk/gdkevents.c: Add a new function gdk_event_button_generate() + to store common code for synthesizing double/triple + press events. + + * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h. + Make all the function that modify an existing GC + simply wrappers around gdk_gc_set_values(). + + * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation + for throwing out later. + + * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate, + GdkImagePrivate and GdkColormapPrivate to have a + windowing system dependent part (GdkFontPrivateX etc.) + that "derives" from the system-independent part. + + * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c: + Got rid of the included-source-files for XInput in + favor of automake conditionals. (Which didn't exist + when XInput support was originally added.) + + * gdk/gdkrgb.c: Remove the visual id from the debugging + statements since that is X11 specific; print out + type/depth info instead. + + +Wed Nov 3 18:14:49 1999 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when + loading duplicates of hashed fonts. + + * gdk/gdk.c (gdk_keysym_convert_case): rename + gdk_XConvertCase to gdk_keysym_convert_case, allow + results to be NULL in the GTK+ style. + + * gdk/gdkcompat.h: Started compatibility header + for renames. + +1999-11-07 Tor Lillqvist + + * gdk/win32/gdkprivate.h: New font private structures, related to + fontsets. + + * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and + gdk_font_list_free(). On X11, will just be wrappers to + XListFonts() and XFreeFontNames(). On Win32, the code previously + in gtkfontsel.c is now here. + + New function gdk_font_xlfd_create(). On X11 will get the FONT + property of the font (for GDK_FONT_FONTs), or call + XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32 + builds a XLFD style name from the font information in the LOGFONT + struct(s). + + New function gdk_font_xlfd_free(), which correspondingly frees the + string returned by gdk_font_xlfd_create(). + + Implement fontsets on Win32. Add a function that iterates over a + wide char string and calls a callback function for each substring + of wide chars from the same Unicode subrange (and thus probably + available in the same real font). + + Improve the XLFD emulation a bit. + + * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix. + + * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k + Beta3, WM_IME_CHAR messages don't seem to contain the composed + multi-byte char as with the Active IMM on Win9x. Oh well, handle + WM_IME_COMPOSITION with GCS_RESULTSTR instead, use + ImmGetCompositionStringW() to get the composed Unicode chars. + + * gdk/win32/gdkgc.c + * gdk/win32/gdkdraw.c: Changes needed because of the font private + struct changes. + + * gdk/win32/gdk.def: Add the new functions. + +1999-11-04 Tor Lillqvist + + * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to + get the Platform SDK to get . + + * gdk/win32/gdkevents.c: More event handling fixes and + simplification. Never generate motion events with is_hint true. We + used to do that on bogus grounds earlier. Windows sends + WM_MOUSEMOVE messages on button events even if the mouse hasn't + moved, ignore these. + + * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets. + + * gdk/win32/gdkglobals.c + * gdk/win32/gdkprivate.h: Define a typedef for the pointer to + the TrackMouseEvent function, and use it. + + * gdk/win32/gdkwindow.c: Terminate widechar string with a zero + char before calling WideCharToMultiByte in order to get a string + for the window title. + + * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out. + + * gdk/win32/gdk.def: Remove obsolete functions. + + * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add + /nodefaultlib and /defaultlib switches. + + * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/. + +1999-10-31 Tor Lillqvist + + * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including + EuroSign). + + * gdk/gdktypes.h: Add note about wchar_t not necessarily being the + same type as GdkWChar, especially on Win32. + + * gdk/win32/*.c: Change gdk_root_parent to be a pointer. + + * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode + before passing to Windows GDI for drawing etc. Convert to the + system default codepage before passing to Windows as window + titles. + + * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to + support changing input locale on the fly. + + * gdk/win32/gdkevent.c: Support input language (keyboard locale) + on-the-fly changes. Convert incoming characters from the current + codepage to Unicode (and then to a UTF-8 multi-byte string) based + on the current input language. Use keysym<->Unicode mapping tables + and functions borrowed from xterm sources. + + Support IMEs (Input Method Editors) for CJK languages. On non-CJK + editions of Win9x, use the ActiveX-based Active IMM (Input Method + Manager) if available. IMEs and the Active IMM are available under + the disguise of Chinese, Korean and Japanese support for IE and + Outlook Express from "Windows Update" for Win98. On Win2k, the CJK + support is present in all editions (as long as you install it). + + Call DispatchMessage from gdk_events_queue() (and thus + gdk_WindowProc()), instead of duplicating the code in + gdk_WindowProc(). + + Reworked the grab handling and propagation code, factored out + duplicated code snippets into separate functions. Other cleanups, + too. + + * gdk/win32/surrogate-dimm.h: Provide just the bits we need from + the header describing the Active IMM. + + * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far + just do the same as for "single" fonts. + + * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from + gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle + the new keysyms from gdkkeysyms.h. + + * gtk/gtkfontsel.c (Win32): Load the font for the preview as a + fontset, so that gtkentry uses wide characters. + + * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call + GTk+'s system directory "gtk+", not "gtk". + +Sat Oct 30 13:17:18 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ update + +1999-10-21 Tor Lillqvist + + * gdk/win32/gdkprivate.h: Add more font private data. + + * gdk/win32/gdkfont.c + * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset + fonts and strings. Now works much better. You still have to + have a correct font selected, though. No fontset emulation yet. + +1999-10-19 Tor Lillqvist + + * gtk/maketypes.awk: Use G_OS_WIN32. + + * gtk/gtk.def: Add some missing entry points. Also some non-public + ones, but PyGTK porter claims to need them. + + * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the + built-in type generation. + +1999-10-14 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for + GDK_FONT_FONT fonts (which is all we have for now, we don't + emulate fontsets). The X11 version uses plain XDrawString in that + case, too. The string passed to gdk_draw_text_wc seems to be in + fact (at least, when used by gtkentry and gtktext) either in a + single-byte charset, or a DBCS. Not Unicode. + + This fixes the problem in gtkfontsel, where even if you had + selected a font with a non-Latin1 charset (windows-greek, for + instance), the preview still used Latin-1 glyphs. + + * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't + use GetTextExtentPoint32W, use GetTextExtentPoint32A. + (gdk_font_load): Recognize the demibold etc weights, even if we + don't have the corresponding constants in the headers. + (gdk_font_hash_insert): Use same hash mechanism as in the X11 + version. Should save font resources a bit, when we don't have + multiple HFONTs for the same font. + + * gdk/win32/gdkprivate.h: Add the names field as in the X11 + version. + +1999-10-11 ERDI Gergo + + * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default + X values + +1999-10-09 ERDI Gergo + + * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text + layout support (as mentioned on + http://www.jcinteractive.com/gnome-ui/software/widgets/) + +Wed Oct 6 12:46:17 PDT 1999 Manish Singh + + * gtk/fnmatch.c + * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/ + +1999-10-05 Jesus Bravo Alvarez + + * configure.in (ALL_LINGUAS): Added Galician (gl) + +1999-10-05 Tor Lillqvist + + * gdk/win32/*.[ch]: Corresponding changes as in X11 backend. + + * gdk/win32/gdkcompat.c: New file, actually provide an + implementation for the deprecated functions. (Just temporarily.) + + * gtk/gtkfilesel.c: Fix an #ifdef syntax botch. + + * gtk/makefile.{cygwin,msc}: Update gdk_headers. + + * gdk/win32/gdk.def gtk/gtk.def: Updates. + +1999-10-05 Kjartan Maraas + + * configure.in: Added "uk" to ALL_LINGUAS. + +Mon Oct 4 11:57:11 PDT 1999 Manish Singh + + * configure.in: correct checking for BeOS check + + * gdk/gdktypes.h + * gtk/fnmatch.c + * gtk/gtkfilesel.c + * gtk/gtkitemfactory.c + * gtk/gtkmain.[ch] + * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines + +Mon Oct 4 16:16:53 1999 Pablo Saratxaga + + * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset + encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic + languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used + by Bulgarian). + +Sun Oct 3 18:13:44 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_reset_shapes_recurse): + Fix a reference to window_private->destroyed. + + * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct + (ugly) setting of an internal GdkWindow member to use + a _slightly_ cleaner macro. + + * gdk/gdkprivate.h: Split GdkWindowPrivate into + GdkDrawablePrivate and GdkWindowPrivate. + Add extra macros for accessing GDK_DRAWABLE_ components. + + * *.[ch]: Massive adjustments for the above, use the + new macros in a lot of places. + +Sun Oct 3 15:16:24 1999 Owen Taylor + + * gdk/gdktypes.h: Make GdkDrawable the base type, + not GdkWindow. + +Sun Oct 3 15:08:44 1999 Owen Taylor + + * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function. + +Sun Oct 3 14:26:15 1999 Owen Taylor + + * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory. + +Sun Oct 3 14:16:23 1999 Owen Taylor + + * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with + gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp) + + * configure.in gdk/Makefile.am x11/: create x-specific subdirectory. + + * docs/gtk-config.1: Now autogenerated. + * docs/Changes-1.4.txt: started + +1999-10-03 Tor Lillqvist + + * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage + to #ifdef also here. + + * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those + Owen did to the X11 backend. + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use + ScrollWindowEx when blitting inside a window, it can't be correct + in the general case. + + * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling + WM_GETMINMAXINFO is easier. + + * gdk/win32/gdkimage.c (gdk_image_new): Create new image with + depth equal to the bitspixel value, not the visual's depth. + + * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth + to 24 even if the bitspixel value is 32. + + * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no + need to check for depth==32 when bpp==32, depth will always be 24. + +Fri Oct 1 18:03:36 1999 Owen Taylor + + * docs/Changes-1.4.txt: Started + + * gtk/Makefile.am (gdk_headers): Include all the new headers. + + * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces. + + * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private + into C file. + + * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput + header to gdkinputprivate.h. + + * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been + unused since before 1.2. + +1999-09-30 Tor Lillqvist + + * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32, + expand possible hex escapes in the font family (put there by + logfont_to_xlfd if the font name isn't a legal XLFD font family, + mainly if it contains slashes). (gtk_font_selection_create_xlfd): + On Win32, add hex escapes here, too. + +Wed Sep 29 19:55:35 1999 Owen Taylor + + * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11 + to #ifdef GDK_WINDOWING_X11. + +[ Merges from gtk-1-2 ] + +Wed Sep 8 07:13:29 1999 Tim Janik + + * configure.in: fixed "GNU Make" check to pass with new make version + 3.77.95. + +Fri Sep 3 16:04:41 1999 Tim Janik + + * gtk-config.in (--version): don't echo @GTK_VERSION@, but + @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the + AM_PATH_GTK() macros don't get confused by the -pre1. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * configure.in (REBUILD): Change check for perl5 + to check explicitely for v >= 5.002. (5.001 + does not work with our scripts.) + +Wed Aug 25 15:45:46 1999 Tim Janik + + * configure.in: evaluate $PERL for the perl version check. added + --disable-rebuilds to give the user an option to completely disable + any source autogeneration rules. + +Mon Aug 23 23:16:14 1999 Tim Janik + + * configure.in: evaluate $ac_make when checking for GNU Make. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * docs/Makefile.am: added generation.txt. + + * Makefile.am: require automake 1.4, build README from README.in and + INSTALL from INSTALL.in in dist-hook. + + * README.in: + * INSTALL.in: new files to autogenerate README and INSTALL from. + + * configure.in: figure whether we have GNU Make + + * docs/generation.txt: minor additions/corrections. + +Wed Aug 11 13:38:26 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +July 30, 1999 Elliot Lee + + * configure.in: Fix autoconf warnings about cross compilation by + trying to provide sane defaults for AC_TRY_RUN. + +Fri Jul 16 22:20:21 PDT 1999 Manish Singh + + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.3 + +Thu Jul 8 11:30:18 1999 Owen Taylor + + * INSTALL: Indicate that the --with-glib= configure + time flag is unsupported. + +Mon Jul 5 20:36:03 1999 Owen Taylor + + * docs/generation.txt: Added a file that gives + documenation about the autogeneration process for + various autogenerated files. + +Tue Jun 29 15:59:25 1999 Owen Taylor + + * configure.in (LIBS): Look for libgmodule in the + right location. + +Thu Jun 17 13:57:31 1999 Owen Taylor + + * docs/gtk_tut.sgml: Removed references to + code examples in my directory on gtk.org as + they should all be in the tutorial now. + + * docs/gtk_tut.sgml: Added sources for dial-test + and scribble-xinput programs that were previously + missing. + +Fri Jun 4 00:08:59 1999 Owen Taylor + + * TODO: Added entry about menu keyboard navigation, removed + some finished items. + +Mon May 31 00:11:24 1999 Owen Taylor + + * acinclude.m4: Standardize on func_dgettext + not func_gettext, so that the checks for dgettext + actually are paid attention to. + +Wed May 5 10:47:54 1999 Owen Taylor + + * configure.in (LIBS): Add $INTLLIBS into $LIBS + directly, rather than repeating the checks for + gettext. + + * INSTALL: Added information about gettext and + NLS support. + + * acinclude.m4 (LIBM): Check for dgettext, not + just gettext. This should hopefully fix things wrt + systems with old versions of GNU gettext installed. + +Tue Jun 29 15:59:25 1999 Owen Taylor + + * configure.in (LIBS): Look for libgmodule in the + right location. + +Thu Apr 1 16:58:10 PST 1999 Manish Singh + + * autogen.sh: add --enable-maintainer-mode + + * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS" + +Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson + + * docs/gtk-config.1.in: + docs/Makefile.am: + configure.in: gtk-config is now generated. + + * docs/gtk-config.1: Removed, now generated. + +Thu Sep 23 17:59:59 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't + handle CreateNotify itself, still put out a debuging message for + --gdk-debug=events. made the ReparentNotify debugging message more + verbose. + wrap xcoords translation for ConfigureEvents into an error trap, + a destroy event may already be pending, and in that case, the + actuall coordinate values are not at all critical. + +Sat Sep 18 22:24:15 1999 Owen Taylor + + * gdk/gdkcc.c: Stop leaking the color_hash all over + the place. Simplify and improve the logic. + +Fri Sep 17 09:57:15 1999 Tim Janik + + * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean) + for prototypes and function implementations consistent (reported + by Tomas Ogren). + +Tue Sep 14 18:23:01 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): tell if expose events have + send_event set in debugging output. + (gdk_compress_exposures): default initialize the event so we don't + operate on bogus values (namely send_event). + +Thu Sep 2 16:33:59 1999 Owen Taylor + + * gdk/gdkwindow.c: When we receive an unexpected + destroy notify on one of our windows, don't just + warn about it, also mark our windows as destroyed. + +Sun Sep 5 08:10:53 1999 Owen Taylor + + * gdk/gdkfont.c (gdk_font_hash_insert): Add + name => font and name => fontset hashes. The + name => fontset hash is a _big_ win since we + weren't previously caching fontsets at all and loading + fontsets is expensive. The name => font hash + is less of a win, but it does save us from doing + repeated XQueryFont calls on the same font. + + * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names + list so we can remove font/fontset from hash. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_atom_intern): Remove useless + and slightly confusing test. [ XInternAtom (,,TRUE) + will never return None ]. + +Sat Sep 4 08:39:26 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints) + gdk/gdkwindow.c (gdk_window_set_hints): + + Don't omit setting the properties if flags == 0 - + there may be an existing set of properties there + already. (Very old bug. Would it be better to + delete the property instead?) + + * gdk/gdkselection.c (gdk_selection_property_get): Fix + spelling error in comment. + +Wed Sep 1 14:05:30 1999 Owen Taylor + + * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push() + to avoid stomping over gdk_error_warnings. + + * gdk/gdkimage.c (gdk_image_new): compute image->bpp + as (bits_per_pixel + 7) / 8. This gives the same + result as before for multiples of 8, but actually + a "reasonable" value for 1bit or 4bit displays. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * gdk/Makefile.am: minor cleanups, strip spaces on build rules for + GNU Make. + +Tue Aug 17 07:43:04 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): give a debugging note when + discarding configure events. + +1999-08-18 Federico Mena Quintero + + * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the + refcount is greater than zero. + + * gdk/gdkwindow.c (gdk_window_unref): Likewise. + + * gdk/gdkfont.c (gdk_font_unref): Likewise. + + * gdk/gdkgc.c (gdk_gc_unref): Likewise. + + * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise. + +Wed Aug 11 01:04:57 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_property_get): Fix assumption + that format 32 => sizeof(item) == 4. It really is + sizeof(long). + +Tue Jun 29 23:02:42 1999 Owen Taylor + + * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't + core dump at all on X IO errors, only core dump + if --enable-debug for X errors. + +Thu Jun 24 17:06:23 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for + unknown window:" message. disabled ConfigureNotify discarding code, + because it led to events being processed out of order. + +Thu Jun 24 12:22:02 1999 Tim Janik + + * gdk/gdkglobals.c: preinitialize gdk_error_code to 0. + + * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since + we export this function, supress error warnings and don't reset the + error code in the first half of this function. + + * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error + code (instead of just -1) so gdk_error_trap_pop() reveals something + actually informative about the error that happened. + + * gdk/*.c: + don't rely on gdk_error_code being -1 if an error occoured, but just + gdk_error_code != 0. + +Thu Jun 24 11:50:07 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list + pointer *before* invoking the filter function, so we at least don't + crash if a filter is removed that is currently executed. window filters + *really* need to be made truely reentrant at some point. + +Mon Jun 14 11:10:15 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): print the atom name in the + PropertyNotify debug messages. + +Wed May 5 22:51:06 1999 Owen Taylor + + Patch from Sung-Hyun Nam + + * gdk/gdkim.c: Fix cut-and-paste errors for + x/y and PreeditAttributes/StatusAttributes. + +Wed May 5 22:24:21 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change + G_MAXINT to 2^16 to alleviate overflow problems in + various window managers. + +Wed Apr 21 00:42:08 1999 Owen Taylor + + * gdk/gdkfont.c (gdk_text_measure): Fix the return value + for fontsets. + +Wed May 5 12:42:01 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints): + Initialize size_hints.x and size_hints.y because kwm + brokenly pays attention to them. + (Bug #1181 - Lars Heete ) + +Wed May 5 11:38:56 1999 Owen Taylor + + * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the + return value of gdk_list_visuals(). + (Bug #1193 - Morten Welinder ) + +Tue May 4 11:12:56 PDT 1999 Manish Singh + + * gdk/gdkim.c (gdk_im_real_open): cast the return value of + XSetIMValues to (void *) when comparing to NULL, to workaround + the problem of some compilers barfing since older X headers don't + have the prototype for it. + +Mon Apr 19 10:11:12 1999 Owen Taylor + + * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak + for pseudocolor where colormap->colors was double + allocated. + + * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the + color value in the hash table with the pixel filled + in so when we do later hash table lookups, the color + value is correct. + +Sun May 2 15:29:45 PDT 1999 Manish Singh + + * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before + making the call + +Tue Apr 27 11:17:35 1999 Owen Taylor + + * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak + pointed out by Morten Welinder . + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Fri Apr 16 20:41:43 PDT 1999 Manish Singh + + * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines + + * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use + g_strdup_printf instead of calcing the length separately + +Tue Apr 13 02:49:33 1999 Owen Taylor + + * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG + that we don't do in many other places. (Fixing duplicate + #include of config.h) + + * gdk/gdkevents.c: include gdkinput.h _after_ config.h. + Otherwise, #ifndef XINPUT_NONE check in the latter + doesn't work. (Bug #546) + +Sun Apr 11 14:38:03 1999 Tim Janik + + * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color + "None" case insensitive. + +Tue Apr 6 16:38:51 1999 Owen Taylor + + * gdk/gdkselection.c: + Add error traps so if the other end of the connection + dies, we survive. + +Tue Apr 6 12:24:21 1999 Owen Taylor + + * gdk/gdkdnd.c (gdk_drag_motion): Separate out the + dest_xid field into two fields - one for the window + to send in messages, one to indicate the last looked + up window for caching purposes. This is needed, so + that Leave messages get the correct window. + +Mon Apr 5 13:21:30 1999 Owen Taylor + + * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare): + Fix warning created by people mucking around + with the gsource API. + + * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full): + Change mapping between GIOCondition and GdkInputCondition + to match the way the Linux kernel does it. This should + fix problems where closed pipes were no longer signalling + GDK_INPUT_READ on systems with a native poll(). + +Mon Apr 5 17:11:57 1999 Owen Taylor + + * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check + explicitly for the string "None" - it is in the XPM + spec and some servers treat unknown colors in odd ways + (like asking the user!) + +Thu Apr 1 16:58:10 PST 1999 Manish Singh + + * gdk/gdkevents.c: made "->" into a "." of previous change so + it compiles + +Thu Apr 1 18:41:25 1999 Owen Taylor + + * gdk/gdkevents.c (gdk_compress_exposures): Set the + window field of the event structure before calling + user filters. + +1999-03-31 Federico Mena Quintero + + * gdk/gdk.c (gdk_init_check): Use False as the last argument to + XInternAtom() here. This is a particularly Old And Nasty(tm) bug. + +Mon Mar 29 17:31:52 1999 Owen Taylor + + * gdk/gdkim.c (gdk_mbstowcs): Free the value of the + intermediate text property - prevents major memory + leak when gdk_use_mb. + gtk-d3august-990311-0: Bj|rn Augustsson + +Mon Mar 29 17:02:58 1999 Owen Taylor + + Patches from Akira Higuchi + gtk-a-higuti-990322-[0-3] + + * gdk/gdkfont.c (gdk_text_extents_wc): Make work when + sizeof(wchar_t) != sizeof (GdkWChar) + + * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS + that was causing -DX_LOCALE not to work. + + * gtk/gtkrc.c (gtk_rc_init): + X_LOCALE will never have LC_MESSAGES defined + + * gdk/gdk.c (gdk_init_check): + Remove --xim-preedit and --xim-status from argv properly. + + * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so + that the client window is present on the X server + before we pass it to the input method. + +Tue Mar 9 10:46:49 1999 Owen Taylor + + * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where + if --display is specified on the command line, than + the drag window will not be created on that display. + +Tue Mar 9 10:38:24 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where + lookups with only_if_exists == TRUE were inserting + bogus values into the atom cache. + +Wed Mar 17 09:00:00 1999 Tim Janik + + * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t), + then reset it to NULL. + + * gdk/gdkcolor.c: + (gdk_colors_free): + (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the + key for g_hash_table_remove() in both functions, this prevents us + from accessing possibly uninitialized portions of a GdkColor structure + where we are only interested in its pixel value. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + +1999-09-21 Tor Lillqvist + + * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting, + just to be sure. + + * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of + unused variables, leftovers from the X11 version. + + * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd. + + * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only + downcase fields on X11. + +Mon Sep 20 13:17:39 1999 Pablo Saratxaga + + * configure.in,po/pt_BR.po: added Portuguese Brazilian file from + Alex Sandro Queiroz e Silva + +1999-09-17 Tor Lillqvist + + * gdk/win32/gdk.def: Add gdk_threads_mutex. + + * gtk/makefile.msc: Correct path to libintl. + + Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in + use of gint vs. int, and gint vs. gboolean in headers and + definitions. Use GtkType for the *_get_type functions. Note that + these changes preserve binary compatibility. + + * gdk/gdk.c + * gdk/win32/gdk.c + * gdk/gdk.h: Fix inconsistencies: gint vs int. + + * gtk/gtkmain.c + * gtk/gtkclist.c + * gtk/gtkmenufactory.c + * gtk/gtknotebook.c + * gtk/gtkwidget.c: Fix inconsistencies, also gint + vs. gboolean. + + * gtk/gtkcolorsel.[ch] + * gtk/gtkcombo.[ch] + * gtk/gtkdrawingarea.[ch] + * gtk/gtkgamma.[ch] + * gtk/gtkhandlebox.[ch] + * gtk/gtkhpaned.[ch] + * gtk/gtkhruler.[ch] + * gtk/gtkplug.[ch] + * gtk/gtkpreview.[ch] + * gtk/gtkruler.[ch] + * gtk/gtksocket.[ch] + * gtk/gtkstatusbar.[ch] + * gtk/gtktoolbar.[ch] + * gtk/gtkvbbox.[ch] + * gtk/gtkvpaned.[ch] + * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type + functions. + + * gtk/gtkgamma.h: Fix bug, missing () in call of + gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. + +1999-09-14 Tor Lillqvist + + * gdk/gdkcolor.c (gdk_colormap_new) + * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak: + colormap->colors was allocated twice. + + * gdk/win32/gdk.c: Remove some unused stuff. + + * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the + colormap. + + * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type) + * gtk/gtklabel.h (gtk_label_get_type) + * gtk/gtktipsquery.c (gtk_tips_query_get_type) + * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType + in a couple of places, not guint. + +Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga + + * configure.in,po/et.po: added Estonian language file + +Wed Sep 1 14:36:12 CEST 1999 Pablo Saratxaga + + * configure.in,po/da.po: added Danish file + +Sun Aug 29 13:38:59 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: Minor FAQ Update + +Sat Aug 28 14:34:37 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ update + +1999-08-27 Tor Lillqvist + + Win32: Philippe Colantoni suggests a + way to get window contents continually refreshed while resizing. I + didn't like the effects myself, so it's not on by default. + + * gdk/win32/gdkprivate.h: New flag variable + gdk_event_func_from_window_proc, FALSE by default. + + * gdk/win32/gdk.c (gdk_init_check): Set above flag if the + environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we + are passed --gdk-event-func-from-window-proc. + + * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set, + and we have am event_func, call it instead of enqueing the event. + +1999-08-23 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon + Kelley: Set expose_count in GdkEventExposes correctly. + + * gdk/win32/gdkwindow.c: Remove dead code (#ifdef + MULTIPLE_WINDOW_CLASSES). + + * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer + for bug in NT, apparently NT *does* draw the end pixel, too, in + LineTo with a one-pixel pen, so we don't have to do it ourselves. + +1999-08-21 Tor Lillqvist + + Improvements by Hans Breuer: + + * gdk/win32/gdkwindow.c (RegisterGdkClass): New function + + * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the + CS_?REDRAW flags as they cause lots of (late) redraws when "show + window contents while dragging" is turned on. Allocate at least + one unique class for every GdkWindowType. If support for single + window-specific icons is ever needed (eg. Dialog specific), every + such window should get its own class. + +1999-08-19 Tor Lillqvist + + * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste + error that caused crashes. + +1999-08-17 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one + window, use ScrollWindowEx, and call UpdateWindow. This prevents + bugs when for instance part of the window was outside the + display. Thanks to Philippe Colantoni for finding and fixing this. + +1999-08-16 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial + endpoint calculations which were totally wrong. (A little RTFMing + helps a lot ;-) + + * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc + from a separate directory, not from gettext, because of licensing + issues (we want to use the LGPL version). + + * README.win32: Mention the intl from glibc vs from gettext issue. + +1999-08-13 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs + in the key event handling: Now AltGr chars work again. Also, + now Alt-digits are passed up as well as Control-digits. + Pass keypad plus and minus as normal plus and minus. + +Wed Aug 11 13:38:26 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +1999-07-25 Tor Lillqvist + + * README.win32 + * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without + the Wintab SDK. + + * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work + OK, but getting closer. Guard against bogus tilt data from Wacom + ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to + enable easier building without Wintab. + + * gdk/win32/gdkinput.h + * gdk/win32/gdkevents.c + * gdk/win32/gdkwindow.c: Minor changes related related to above. + + * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11 + code. As we have just one visual on Win32, no sense to have it in a + table, and no need for the hash table. + + * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look + better on white background. + +1999-07-21 Tor Lillqvist + + * README.win32: Update gcc build instructions. Mention gettext is + GPL. + + * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct + supported cursor size with GetSystemMetrics. + + * gdk/win32/gdkfont.c + * gtk/gtkfontsel.c: Guard against some font weight and charset + symbols being undefined (in mingw32 headers). + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin + * gtk/gtkthemes.c: No longer need to have differently named + gcc-built DLLs when using gcc-2.95 and -fnative-struct. + +hu Jul 15 13:33:15 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: Long awaited FAQ update. + +1999-07-15 Tor Lillqvist + + * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement + it. Obscure bit manipulation needed. + + * gdk/win32/gdkevents.c: Logging. + + * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming + style (file name include compiler name) for theme engines. + +1999-07-13 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage. + + * gdk/win32/gdkevents.c: Fix long-standing bug in key + events. The key.string wasn't zero-terminated, still we strdup'ed + it in gdk_event_copy(). Synthesize crossing events for button + events before possible propagation. + + * gdk/win32/gdkwindow.c: Log gdk_window_set_title. + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Use new DLL naming style for the + GCC-compiled ones. + + * gdk/win32/makefile.msc + * gtk/makefile.msc: Cosmetics mostly. + + * gtk/gtk.def: Add missing entry points. + + * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32. + +1999-07-09 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width + or height is zero. Don't print a warning if Pie or Arc fails, they + always fail (?) for very narrow ellipses. + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for + the part or the destination window corresponding to source area + outside of the source drawable's boundary. + + * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do + anything if less than two points. + + * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always + return NULL. Gtk cut-and-paste inside a single program works + better this way. (It always gets the clipboard contents from + Windows, not from its own copy, which is cleared anyway. I can't + say I fully understand what happens... Emulating the X selection + and property stuff is a bit of a mess.) + + * gdk/win32/gdkevents.c + * gdk/win32/gdkproperty.c: A bit more verbose logging. + + * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions + that never got deleted). Revamp gdk_region_shrink. + + * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions + after use. + + * gtk/gtk.def: Add some missing entry points. + + * gtk/gtkrc.c: Strip trailing directory separator from pixmap path + component. + +1999-07-04 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Handle + Control-digits specially. + +1999-07-03 Tor Lillqvist + + * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext. + +1999-06-28 Tor Lillqvist + + * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for + bitmaps, should be multiple of 4. (Thanks to Hans Breuer for + finding this.) + +1999-06-01 Jose H Mercado + + * gtk+.spec.in: Corrected some typos in files section. + +1999-06-15 Tor Lillqvist + + * README.win32: Mention using GNU gettext. + * config.h.win32: Enable NLS stuff. + * gtk/makefile.msc: Use GNU gettext. + * gdk/win32/gdkdnd.c: Minor header reorg. + * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly + cosmetics. + * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public. + * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call. + +Wed Jun 2 11:44:25 PDT 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.status + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged) + +1999-05-30 Tor Lillqvist + + * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to + SafeAdjustWindowRectEx. Don't override all calls to + AdjustWindowRectEx by it, but use it only in two places: When + creating a new top-level window and when moving a top-level + window. + + Use screen coordinate rectangle, not client rectangle, in + gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only + when we try to place a window so that the decoration (mainly, + title bar) isn't visible. + + These changes fix the bug that showed up for instance as the + GIMP's saved top-level windows moving right and down (by an amount + equal to the window decoration) for each session. This bug showed + up also in testgtk's "Saved Position". + + gdk_window_resize also redone a bit. + +1999-05-25 Tor Lillqvist + + * gtk/testgtkrc: Add (commented out) Windows-style theme + include line. + + * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points. + +1999-05-18 Tor Lillqvist + + * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and + gdkx.h to a gdk subdirectory, so that applications can include + these with without trouble. + + * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified. + (gdk_image_destroy): Plug resource leak, some GdkImages didn't + have their bitmap destroyed. + + * gdk/win32/gdk.def: Add gdk_root_parent. + +Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson + + * configure.in + gtk-config.in + ltconfig + ltmain.sh + gtk/Makefile.am: changes to compile nicely (with xlib) + on BeOS + +Sat May 1 15:04:42 PDT 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.3 + +Fri Apr 30 13:38:16 1999 Lars Hamann + + * gtk/gtkclist.c: + * gtk/gtkctree.c: merges from gtk-1-2 + +1999-04-25 Tor Lillqvist + + Support added for building using a GNU toolchain on Win32, + gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1. + + * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files. + * config.h.win32: Changes for gcc. + * gdk/gdkrectangle.c: Include gdk.h as . + * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp. + * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h. + * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better. + Protect shl stuff unavaiilable with mingw32 headers. + * gdk/win32/gdkevents.c: Fix typo. + * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc. + * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?) + * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler. + * gdk/win32/gdkprivate.h: Make up for some stuff missing from + the mingw32 headers. + * gdk/win32/makefile.msc: Use latest Wintab kit and glib. + * gtk/gtkfilesel.c: Include early, to get stat->_stat + definition on Win32. Test for NATIVE_WIN32, not _MSC_VER. + * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32. + Test for NATIVE_WIN32, not _MSC_VER. + * gtk/gtkmain.c: No use warning about developer version on Win32, + there aren't any non-developer versions anyhow. + * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER. + * gtk/makefile.msc: Use pthread from another directory. Minor other + changes. + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Mon Mar 8 12:52:53 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning + when gtk_widget_grab_default() is called for a widget that + is not within a GtkWindow. + +Sat Apr 10 13:52:54 BST 1999 Tony Gale + + * docs/gtk_tut.sgml, examples/clist.c: use a + scrolled window in the clist example. Minor + tutorial fixes. + +Fri Apr 2 09:19:20 BST 1999 Tony Gale + + * docs/gtk_tut.sgml: Style check from David King + + +1999-03-30 Pavel Machek + + * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code + compile with unknown value of GDK_WINDOWING + +1999-03-28 Raja R Harinath + + * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists + after the rule is fired. + (install-exec-local): Install gdkconfig.h only if the contents are + different from the currently installed gdkconfig.h. + +1999-03-26 Raja R Harinath + + * gdk/Makefile.am (configexecincludedir): Rename from + configincludedir so that gdkconfig.h will be installed + as part of `make install-exec'. + +Fri Mar 19 16:50:33 PST 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.2f + + * autogen.sh: libtool is not required to autogen gtk+ + + * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly + needed) + +1999-03-18 Tor Lillqvist + + * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for + declaring gdk variables exported/imported from the DLL. New image + type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and + drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and + GDK_DRAG_PROTO_OLE2. + + * gdk/gdk.h: Merge in Win32 version: Two new functions, + gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far + declared only for the Win32 version, but could be in the X11 + version as well. (Needed for a Xlib-less gdk_imlib.) + gdk_color_hash should have only one parameter. Declare + gdk_threads_mutex with GDKVAR. + + * gdk/gdkcolor.c (gdk_color_hash): A hash function should have + just one parameter. + + * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes + per pixel, not bits. + + * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv): + Fetch bpp (which means bits-per-pixel here) from another place on + Win32. Accept also depth==32 (which we might get on Win32) with + bpp==32. + + * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel, + gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc, + gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c: + Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be + in the backend-dependent directory, not in the common gdk + directory. + + * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk + headers. + +Wed Mar 17 05:06:49 1999 Tim Janik + + * gtk/gtkmain.c (gtk_init_check): tell people that they don't really + want to use the Gtk+ devel version (which is true, and yes - even i am + currently working with the 1.2.x branch). so everyone reading this, you + probably want to issue + cvs checkout -r glib-1-2 glib + and + cvs checkout -r gtk-1-2 gtk+ + as your next two comands. + +Wed Mar 17 02:49:32 1999 Tim Janik + + * configure.in: build gtkcompat.h from gtkcompat.h.in instead of + gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0. + + * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this + file. strongly deprecated the GTK_HAVE_* macros, we provide + GTK_CHECK_VERSION() for people that need to check for certain + Gtk+ versions. + + * gtk/gtkcompat.h: removed this from CVS. + * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad + idea right from the start, it just didn't seem like that back then. + +Wed Mar 17 01:46:28 1999 Tim Janik + + * merges from gtk-1-2: + +Tue Mar 16 17:43:33 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the + item factory class has been created. + (gtk_item_factory_parse_rc): likewise. + + * gtk/gtkmenu.c: + keep proper references for old_active_menu_item. + (gtk_menu_reparent): unset the usize of the new parent, + so the menu can sanely be size requested and we don't get nasty screen + artefacts upon next reparentation. + (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an + enter notify. only synthesize enter notifies if the pointer really is + inside the event window. + (gtk_menu_popdown): use gtk_menu_shell_deselect(). + (gtk_menu_popup): move the background setting stuff into + gtk_menu_tearoff_bg_copy() so it can be called from other places as well. + + * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use + gtk_menu_shell_select_item() to select the new item. + (gtk_menu_shell_deselect): export this function, so gtkmenu.c can + do the right thing for deselection as well. + +Sat Mar 15 20:10:33 1999 Tim Janik + + * gtk/gtkwidget.[hc]: + (gtk_widget_accelerators_locked): return whether a widget's accelerators + are locked. + + * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or + existing accelerators if the widget's accelerators are locked. + +Sat Mar 14 19:44:05 1999 Tim Janik + + * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items. + + * gtk/gtkmenu.c: truely forward key press and key release events to + the menu widget from the toplevel or tearoff window. we can't simply + connect to that, we need to stop further processing of the events as + well. + +Sat Mar 13 13:14:17 1999 Tim Janik + + * gtk/gtkmenu.c: + (gtk_menu_key_press): pass event->keyval, event->state to + gtk_accelerator_valid, instead of event->keyval twice. + refuse to install single letter accelerators for menus that use + single letter shortcuts. + + * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use + gtk_menu_ensure_uline_accel_group(). + + * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group() + which will always return an uline accel group, made + gtk_menu_get_uline_accel_group() return NULL if the group isn't + yet created. + +Mon Mar 15 01:03:27 1999 Lars Hamann + + * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag. + + * gtk/gtkclist.c (gtk_clist_column_title_passive): + Leave button sensitive, trap button_press, button_release, + motion_notify, enter_notify and leave_notify events instead. + (gtk_clist_column_title_active): disconnect event handler. + (gtk_clist_drag_data_get): fixed memory leak. Reported by + Guillaume Laurent + +Wed Mar 10 23:49:55 1999 Lars Hamann + + * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few + width/height mixups. + + * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal + if needed. + +Wed Mar 10 00:11:32 1999 Tim Janik + + * gtk/testgtk.c (create_item_factory): unref the item factory after + window's destruction. + + * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference + count on the menu shell around the menu item's activation, since the + signal emission may cause menu shell destruction. + + * gtk/gtkitemfactory.c: + the previous code leaked one accel group per menu. we use + gtk_menu_get_uline_accel_group() now to fix that, and with that + also create the underline accelerator group of the menus only if + required (i.e. an underline accelerator has been specified). + (gtk_item_factory_construct): + (gtk_item_factory_create_item): removed code that would create an + extra accel group for the menu (and leak references). + (gtk_item_factory_create_item): adapted the underline accelerator + installation code to properly feature gtk_menu_get_uline_accel_group(). + + * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive + menu->accel_group, this may return NULL if the accelerator group + hasn't been set yet. + added gtk_menu_get_uline_accel_group() to retrive the underline + accelerator group of the menu, this will be created on demand + and proper care is taken about its reference count. + + * gtk/gtkitemfactory.h: + * gtk/gtkitemfactory.c: + dumped the approach of keeping a widgets by action list on the + factory since the factory<->widget destroy negotiation didn't work + and would be hard to get going at all. instead we keep a list of + GtkItemFactoryItem items on the factory (GtkItemFactoryItems are + persistant throughout a program's life time). + also, i removed the static const gchar *key_* variables, and made + them inline strings (they weren't actually used anyways). + (gtk_item_factory_add_item): update ifactory->items. + (gtk_item_factory_destroy): destroy ifactory->items (and remove + the item factory pointer from the remaining ifactory widgets). + (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem + list to find the widget. + (gtk_item_factory_get_item): new function that works around + gtk_item_factory_get_widget() limitations, this function will only + return menu items, even for entries. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + + * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix + provided by Olaf Dietsche . + +Sun Mar 7 06:13:29 1999 Tim Janik + + * gtk/gtkcontainer.c: + (gtk_container_add_with_args): + (gtk_container_addv): + (gtk_container_add): before adding a child to a conatiner, make sure + it is (default) constructed, this is neccessary because under certain + circumstances the child will get relized and mapped immediatedly, in + which case it has to be constructed already. + +Mon Mar 1 17:58:21 1999 Tim Janik + + * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal + values > 1 as TRUE also. + +1999-03-16 Tor Lillqvist + + * README.win32: New file. + + * configure.in: Check for lstat. + + * config.h.win32: Add non-definition of HAVE_LSTAT, just for + completeness. + + * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat. + + * gtk/gtk.def: Removed CRs. + + * gtk/makefile.msc: Correct include path to Win32 GDK version (in + ..\gdk\win32). + + * gdk/win32/makefile.msc: Correct upwards relative paths. + +Mon Mar 15 03:38:34 1999 George Lebl + + * gtk/gtkdnd.c: (gtk_drag_highlight) swap the + gtk_drag_highlight_expose and gtk_drag_highlight_paint since + it was connecting a void function to expose_event and the int + returning function to the draw signal + +1999-03-14 Jeff Garzik + + * configure.in: + Use correct path to libgmodule.la when ref'ing uninstalled copy + of glib. (Already in stable branch, Bug #417) + +1999-03-15 Tor Lillqvist + + Win32 merge and general portability stuff: + + * acconfig.h,configure.in: Check for . + + * gdk/win32: New directory (actually, been there for a while). + + * gtk/fnmatch.c: Include for G_DIR_SEPARATOR, WIN32 and + NATIVE_WIN32, and use these. Always case fold on Win32. No + backslashed escapes on native Win32. + + * gtk/{gtk.def,makefile.msc}: New files. + + * gtk/Makefile.am: Add above new files. + + * gtk/{gtkaccelgroup,gtkbindings}.c: Include + instead of . + + * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include + config.h. Protect inclusion of , , and + appropriately. + + * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much). + Use ABS() (from ) instead of abs(). + + * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion + of gtk (and thus glib) headers, so that WIN32 will be + defined. With MS C, include for mkdir prototype. + + * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add + some casts, needed by MS C. + + * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't + implemented). + + * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include + only on X11 platform, otherwise . Use + G_SEARCHPATH_SEPARATOR_S and g_module_build_path. + + * gtk/gtkmain.h: Mark variables for export/import on Win32. + + * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case + the event is not a hint, or its window is not the slider. Needed + on Win32, at least. + + * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use + unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and + G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use + a subdirectory of the Windows directory as gtk system + configuration directory. + + * gtk/gtkselection.c: No chunks on Win32. + + * gtk/gtksocket.c: Not implemented on Win32. + + * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path. + + * gtk/makeenums.h: Include gdkprivate.h after gdk.h. + + * gtk/maketypes.awk: Declare variables with a macro that expands to + necessary export/import magic in the case of Win32. + + * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers. + +1999-03-13 Raja R Harinath + + * configure.in (gdk_wc): Move widechar tests from `glib' to here, + since those were meant only for gdki18n.h. + * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_* + for widechar tests. + * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h. + +1999-03-13 Tor Lillqvist + + * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate + gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h. + + * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is + installed) to CFLAGS. + + * gdk/Makefile.am: Add rules for gdkconfig.h. + + * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing + APIs. + + * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via + gdkx.h anyway when compiling for X11. + (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In + general): Merge in Win32 version. + + * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32 + version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde + expansion (if we don't have HAVE_PWD_H), allow for drive + letters. UNC paths (\\server\share\...) are not handled yet. Also, + included code from Craig Setera's port to Win32 (the one that uses + X11, and the cygwin dll), even if it probably will be abandoned. + + * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if + the user entered one herself. This way one can complete *.h and + don't get matches on any .help files, for instance. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + + * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix + provided by Olaf Dietsche . + +1999-03-09 Federico Mena Quintero + + * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced + the number of calls to gdk_draw_point() (and thus to X) by + clipping the points by hand. + + * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of + the clip parameter. + (gtk_handle_box_paint): Only paint the handle if the expose area + intersects it. + +Sun Mar 7 18:46:37 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) + + * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.) + +Sun Mar 7 11:43:34 1999 ape@spacetec.no (Asbjorn Pettersen) + + * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes. + Added function gen_8_3_dll_name(gchar *name, gchar *fullname). + +Fri Mar 5 09:12:24 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in + textmode (O_TEXT) for OS/2 version. + +Sun Feb 28 16:46:02 1999 Stefan Jeske + + * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to + GtkSpinButton, "input" and "output", to make the output more flexible. + The user has to provide a mapping between adjustment->value and the + output string (and vice versa, if the spin button is editable). + See testgtk for examples. + +Sat Feb 27 01:18:47 1999 Tim Janik + + * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started + new one. + + * configure.in: set gtk+ version to 1.3.0. +======= * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, +>>>>>>> 1.2802 diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index fbd5888e3d..baae1d9764 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,10 @@ +Sun Jan 13 23:23:22 2002 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_compute_hints): Fix problem where + widget->requisition was being used instead of + gtk_widget_get_child_requisition (), causing geometry widgets + with usizes to misbehave. + 2002-01-14 Sven Neumann * gtk/gtkrc.c: g_getenv() returns a const string. @@ -16366,5 +16373,8616 @@ Thu Nov 9 11:23:22 2000 Jonathan Blandford 2000-11-02 Havoc Pennington +<<<<<<< ChangeLog + * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and + use stock buttons. Should be 100% source compatible, appropriate + filesel fields now point to dialog->vbox and dialog->action_area. + On the bizarre side, dialog->action_area and filesel->action_area + are not the same widget. + (gtk_file_selection_init): Put some padding around the selection + entry, so it isn't touching the GtkDialog separator. + + * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, + use stock buttons, etc. Should also be source compatible. + Set the dialog default title in _init not _new(). + + * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): + Use stock buttons; don't put a button box inside the existing + dialog button box. Don't bother with push/pop colormap anymore. + + * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more + specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT + for message dialog, and necessary for the font selection and color + selection with help and apply buttons. + + * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer + to the created button widget. Set GTK_CAN_DEFAULT on the button. + (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing + between buttons, put less padding around the action area. + (gtk_dialog_run): Exit on unmap rather than on destroy. + This will also exit the loop if the widget is hidden. + (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT + instead of GTK_RESPONSE_NONE; since we're already adding a bunch + of GTK_RESPONSE_* stuff, this seems cleaner, and lets you + special-case delete event. + + * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment + formatting + +Sun Nov 5 05:32:39 2000 Tim Janik + + * gtk/testgtk.c (uposition_stop_configure): provide a toggle + button to temporarily disable position recording in the + "saved position" test. + +Sat Nov 4 05:37:17 2000 Tim Janik + + * gtk/gtkthemes.c: added compat code that temporarily implements + GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is + going to be revamped by owen's upcoming GtkModule patches, but + untill then people want gtk to build, right? ;) + +2000-11-04 Havoc Pennington + + * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member + list + + * docs/Changes-2.0.txt: Add note about + gtk_container_get_toplevels() + + * gtk/gtktextview.h: formatting + + * gtk/gtktextview.c: don't start descriptions with "Returns", + confuses gtk-doc + +Sat Nov 4 10:12:27 2000 Owen Taylor + + * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS, + look for glib-2.0.m4 not glib.m4. (Ali Abdin) + +2000-11-03 Havoc Pennington + + * gtk/gtktexttagtable.c: Docs + (gtk_text_tag_table_size): return a signed int + + * gtk/gtktexttag.c: s/tkxt/text/g; write documentation + (gtk_text_tag_event): make the event_object a GObject + + * gtk/gtktextview.c: Write API docs for all functions. + + * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value + for gtk_text_view_get_window_type() called on one of the private + windows. + + * gtk/gtktextview.c: Instead of accessing text_view->buffer + directly, call get_buffer() which demand-creates a default + buffer. So gtk_text_view_new() can be used to create a view with a + default buffer in it, if you just want an empty text box users can + put data in. Useful for GUI builders also. + +2000-11-03 Pablo Saratxaga + + * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5; + the charset encodign portion MUST be in lowercase. + * gtk/gtkrc.az: added file for Azeri language + +2000-11-03 Havoc Pennington + + Get widgets working on the btree/buffer side. Display of them + still doesn't work. + + * gtk/gtktextview.c: start implementing child widget stuff + + * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function + + * gtk/gtktextlayout.c: handle embedded widgets + + * gtk/gtktextdisplay.c: handle embedded widgets + + * gtk/gtktextchild.c: Implement all the child anchor goo + + * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New + function + + * gtk/gtktextbtree.c: Add child anchor table to the btree struct + (insert_pixbuf_or_widget_segment): abstract out common portions of + creating a child anchor or a pixbuf segment. + (gtk_text_btree_create_child_anchor): new function + (gtk_text_btree_unregister_child_anchor): new function + + * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the + allocate_child signal on GtkTextLayout + + * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return + values + (gtk_text_iter_get_child_anchor): new function + + * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a + default handler for the changed signal, which calls + gtk_text_buffer_set_modified(), instead of just always emitting + changed then calling set_modified() manually. I guess this is + maybe more flexible. It seems logical. + +Fri Nov 3 08:58:38 2000 Tim Janik + + * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_' + now. + + * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now. + +Thu Nov 2 14:10:51 2000 Owen Taylor + + * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have + been marked static. + +2000-11-02 Havoc Pennington + + * gtk/testgtk.c (create_labels): had a test backward + + * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC + fields, so the dest GC ends up with the correct clip origin, + etc. Fixes a bug where colored labels didn't redraw + properly. + +2000-11-02 Alexander Larsson + + * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c, + gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c, + gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c: + Add last argument to t_type_register_static call. + + * gdk/linux-fb/gdkdrawable-fb2.c: + Add last argument to t_type_register_static call. + export the get_image drawable virtual function. + + * gdk/linux-fb/gdkimage-fb.c: + Add last argument to t_type_register_static call. + rename gtk_image_get to _gdk_fb_get_image and + export it for use by gdkdrawable-fb2. + + * gdk/linux-fb/gdkprivate-fb.h: + export _gdk_fb_get_image. + + * gdk/linux-fb/gdkselection-fb.c: + Add new api call stubs. + + * gtk/Makefile.am: + Missing ( in linux-fb part. + + * modules/linux-fb/Makefile.am: + Must link with gdk_pixbuf or get unresolved symbol. + +2000-11-01 Havoc Pennington + + * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use + GTK_TYPE_TEXT_ITER and BOXED marshallers + + * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto + + * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto + + * gtk/gtk-boxed.defs: add GtkTextIter + + * gtk/gtkmarshal.list: Add marshallers for text widget that + properly use OBJECT and BOXED + +2000-11-01 Havoc Pennington + + * gtk/testgtk.c (create_labels): Test set_markup_with_accel() + + * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval + before returning it. + +2000-11-01 Havoc Pennington + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): + Clip the rectangle to be rendered to the drawable, since + get_from_drawable() requires a region within the drawable + +2000-11-01 Havoc Pennington + + * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4 + from coordinates. + +Wed Oct 25 20:10:57 2000 Owen Taylor + + * gdk/gdkevents.c (gdk_event_copy): Only ref the window if + it isn't NULL. + +2000-11-01 Havoc Pennington + + * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList + on a label + (gtk_label_finalize): unref the attr list if any. + + * gtk/testgtk.c (create_get_image): close test on second click + (make_message_dialog): close dialog if it exists + + * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute + + * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not + gdk-pixbuf + + * gtk/gtklabel.c (gtk_label_set_markup): new function to set label + from Pango markup format + (gtk_label_set_markup_with_accel): ditto but with accelerator + parsing + + * gtk/gtkimage.c (gtk_image_expose): reformatting. + + * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to + reflect current state of GDK - use gdk_drawable_get_colormap, etc. + Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to + call gdk_window_get_origin(). + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): + implement GDK_PIXBUF_ALPHA_FULL + +Wed Nov 1 03:43:42 2000 Tim Janik + + * gtk/gtksignal.c (gtk_signal_compat_matched): make use of + g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and + g_signal_handlers_disconnect_matched to block/unblock and disconnect + multiple handlers respectively, instead of only treating the + first handler found (bug reported by owen). + +Mon Oct 30 19:23:50 2000 Jonathan Blandford + + * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function. + + * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function. + + * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c + gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c, + gtk/gtktreeviewcolumn.h: Fixed inline docs. + + * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree + widget. Needs writing someday. + + * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to + the docs. + +2000-10-30 Havoc Pennington + + * gtk/gtktextview.h, gtk/gtktextview.c: + Rename delete_at_cursor delete_from_cursor, and + move to move_cursor. + +2000-10-30 Havoc Pennington + + * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c, + gtktextbuffer.h, gtktextchild.c, gtktextchild.h, + gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h, + gtktextiter.c, gtktextiter.h, gtktextiterprivate.h, + gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h, + gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h, + gtktexttag.c, gtktexttag.h, gtktexttagprivate.h, + gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c, + gtktexttypes.h, gtktextview.c, gtktextview.h: + + Massive reindentation and reformatting. Arg alignment and comments + still need fixing in various places. + +2000-10-30 Havoc Pennington + + * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals + to be named insert_at_cursor and delete_at_cursor so C++ can + handle them. + +2000-10-28 Tor Lillqvist + + * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not + to get a double directory separator in case the home directory + ends with one. This would cause trouble especially on Windows, + where the path will be confused with the syntax for an an UNC + (network share) path \\server\share\path. + (gtk_rc_add_initial_default_files): Ditto. + +Sat Oct 28 02:33:09 2000 Robert Brady + + * gtk/gtkmarshal.list: add new marshallers for GtkTextView. + + * gtk/gtktextview.c: Use correct marshallers. + +Fri Oct 27 17:56:26 2000 Jonathan Blandford + + * gtk/gtkliststore.c: Not sure how this ever worked. Fixed it to + use new iter stuff, and added all the appropriate signals et al. + + * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this + code is internal to gtk only. + +2000-10-28 Tor Lillqvist + + * gtk/gtk.def + * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use + glib-genmarshal etc. + +Fri Oct 27 20:15:00 2000 Tim Janik + + * gtk/Makefile.am: added dependancies for testtextbuffer which broke + parallel builds. + +Fri Oct 27 18:51:44 2000 Tim Janik + + * gtk/gtksignal.[hc]: adapt to GSignal signature changes. + +2000-10-27 Robert Brady + + * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), + en_GB (British), ia (Interlingua). + +2000-10-26 Havoc Pennington + + * gtk/gtktextiter.c (my_strrstr): fix constness warning + + Fixed output of: + nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_ + + * gtk/gtktextsegment.c (char_segment_new): rename + (_char_segment_new_from_two_strings): rename + (_toggle_segment_new): rename + + * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static + (make_clipboard_widget): make it static + (text_get_func): static + (text_clear_func): static + + * gtk/gtkcolorsel.c (adjustment_changed): make this function + static + (hex_changed): make it static + (hsv_changed): make it static + (opacity_entry_changed): make it static + + * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk + (toggle_segment_check_func): rename with _gtk + + * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk + (_widget_segment_new): rename + (_widget_segment_add): rename + (_widget_segment_remove): rename + (_widget_segment_ref): rename + (_widget_segment_unref): rename + + * gtk/gtktextmark.c (_mark_segment_new): Rename + _gtk_mark_segment_new + +2000-10-26 Havoc Pennington + + * gtk/gtkmarshal.list: add new marshallers used by the text widget + * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller + types + + * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix + marshaller types + + * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h, + gtk/gtktextdisplay.c: We need to preserve Tk copyrights and + license on these files. + + * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this + work. + + * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to + runtime random number different for each tree, instead of + a constant I made up. + +Thu Oct 26 07:36:16 2000 Tim Janik + + * gtk/Makefile.am: buncha cleanups, kludged build sources + dependencies with a Makefile: oldest-source-stamp dependancy + for the moment. automake is really fighting us here, with + intentionally not allowing user-defined rules or dependancies + prior to it's -include $(DEP_FILES) statement. sucks rocks! + + * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h + to public headers. tehy have a comment stating that they are + "semi-public" aren't included by gtk.h and if enums popup there, + they can be /*< skip >*/-ed. + + * gtk/gtktextlayout.h: + * gtk/gtktextdisplay.h: indentation fixes, comment fixes, + added LGPL... + +Wed Oct 25 20:40:25 2000 Jonathan Blandford + + * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to + GtkTreeIter. Added iterators everywhere. + + * gtk/gtktreeviewcolumn.c: Changed to use the iterators. + + * gtk/gtktreeviewselection.c: Changed to use the iterators. + + * gtk/gtktreestore.c: Changed to use the iterators. + + * gtk/gtkliststore.c: Commented out the code. Will convert to + iterators tomorrow. + + * gtk/gtkmodelsimple.c: Commented out the code. Will convert to + iterators tomorrow. + + * gtk/treestoretest.c: Changed to use iterators. + + * demos/testgtk/main.c: Moved to use the new iterator system. + +Thu Oct 26 02:10:32 2000 Tim Janik + + * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid + localization misbehaviour. + + * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's + a useless type without copy/free. + + * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead + of GTK_TYPE_CTREE_NODE. + +Thu Oct 26 00:51:52 2000 Tim Janik + + * gtk/gtksignal.c: + (gtk_signal_emitv): use g_value_set_static_{string|boxed} where + applicable. + + * gtk/gtk-boxed.defs (GtkSelectionData): specify + gtk_selection_data_copy and gtk_selection_data_free + do GtkSelectionData work as params in signals. + +Wed Oct 25 20:47:41 2000 Tim Janik + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed + implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that, + couldn't they at least give it a non-standard name? + + * gtk/gtktextlayout.c: arg! yet another implementation of + gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy? + + * gtk/gtktextbuffer.c: gotcha! captured a vagabonding + gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back + home. now i know this _is_ a conspiracy. + + * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for + ::state-changed. + + * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): + (gtk_accel_group_create_add): marshaller signature fixups. + + * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups, + pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM. + + * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid + anymore. + +Tue Oct 24 23:59:21 2000 Tim Janik + + * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since + due to the signal system changes, it wouldn't build currently. to + be fixed soon. + + * docs/Changes-2.0.txt: GtkSignal/GSignal updates. + + * gtk/gtkwidget.c: ::direction_changed takes an enum as argument, + so it needs gtk_marshal_VOID__ENUM() instead of + gtk_marshal_NONE__UINT(). + + * gdk/gdk*.c: adapted type registration functions. + + * gtk/gtkbindings.c: + * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is + gone. + + * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType. + + * gtk/gtkobject.c: + (gtk_object_destroy): + (gtk_object_shutdown): fixed recursion guards. basically we have to + catch the case where any of GObject.shutdown() or gtk_object_destroy() + is called during ::destroy, and avoid recursion there. + + * gtk/gtktypeutils.c: + * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with + boxed_copy/boxed_free. this needs a more general solution based on a + publically installed code-generator utility. + + * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED, + glib's gobject has support for that now. + define GtkSignalMarshaller in terms of GSignalCMarshaller. + +Mon Oct 23 09:36:42 2000 Tim Janik + + * gtk/gtksignal.[hc]: + * gtk/gtkmarshal.[hc]: + * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't + compile gtkmarshal.c on its own anymore, just include it in gtksignal.c. + removed #include s all over the place, gtksignal.h takes + care of that. + + * *.c: marshaller name fixups. + + * gtk/gtkmarshal.list: added a comment briefing the format. + +Sun Oct 22 23:14:39 2000 Tim Janik + + * gtk/gtksignal.[hc]: nuked old implementation. we mostly have + compatibility macros here now. more specifically, most of + the API is preserved (yes, _most_, nonwithstanding the + following exceptions listed, the API is stil lHUGE ;) + things that got removed completely: + GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(), + gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(), + gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(), + gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(), + gtk_signal_remove_emission_hook(). + non-functional functions variants: + gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook(). + the GtkCallbackMarshal argument to gtk_signal_connect_full() is + not supported anymore. + (gtk_signal_compat_matched): new internal function to aid + implementation of the compatibility macros, it provides + functionality to block/unblock/disconnect handlers based + on func/data. + + * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType, + + * *.c: adaptions to new type registration API signatures. + +Fri Oct 20 15:26:33 2000 Tim Janik + + * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge. + +2000-10-25 Robert Brady + + * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change, + gdk_property_delete): If window == NULL, assume the root window. + (restoring the behaviour that was in 1.2). + + * gtk/testtext.c (save_buffer): Allow creation of new files when + saving. + + (fill_file_buffer): Don't die if a UTF-8 sequence is split across + calls to read(). + +2000-10-25 Tor Lillqvist + + * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11. + + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkimage-win32.c + * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the + X11 backend. + + * gdk/win32/gdkcc-win32.c + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkfont-win32.c + * gdk/win32/gdkinput-win32.c + * gdk/win32/gdkmain-win32.c + * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall. + +2000-10-24 Havoc Pennington + + * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make + it a static function + + * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should + redraw text when a tag is applied to it. + + * gtk/gtktexttag.c (gtk_text_tag_affects_size) + (gtk_text_tag_affects_nonsize_appearance): private functions to + see if a tag requires various kinds of redraw/layout to be queued + up. + + * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock + + * gtk/testtext.c (fill_example_buffer): Put the cursor + at the start of the buffer, so search works by default + + * gtk/gtktextiter.c (lines_match): init match_start always + + * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New + function, get iter at a line + a byte index + + * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function, + to set byte position within a line + (gtk_text_iter_check): remove leftover G_BREAKPOINT thing + +2000-10-23 Havoc Pennington + + * gtk/testtext.c: Re-enable the "find" dialog + + * gtk/testgtk.c: Add test for gdk_drawable_get_image + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where + the arguments to gdk_draw_drawable were in the wrong order + (gdk_window_paint_init_bg): This function was ignoring the + init_region, instead of clipping to it, so the entire backing + pixmap was cleared on every begin_paint() + (gdk_window_begin_paint_region): Hmm, the same list-walking bug + was in here again, the loop kept using the same GtkWindowPaint + over and over. + (gdk_window_begin_paint_region): Fix a bug where we had two + x_offset instead of x_offset and y_offset + + * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable + before we get the image. + (gdk_draw_drawable): get the composite before we draw the drawable. + (gdk_drawable_real_get_composite_drawable): default + get_composite_drawable implementation that returns the drawable + itself + + * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add + get_composite_drawable virtual function + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy + list-walking bug + + * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to + make this work if the source drawable is a GdkDrawableImplX11 + instead of a public drawable type. This is really broken; the + problem is that GdkDrawable needs a virtual method get_xid(), but + of course that doesn't work in practice. Enter RTTI. + + Also, improve mismatched depth message. + + * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for + GdkPixmap + + * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init): + install _gdk_x11_get_image as our implementation of get_image + + * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to + _gdk_x11_get_image and export for use in gdkdrawable-x11.c + + * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around + gdk_drawable_get_image + + * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image + + * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize + get_image + + * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird + trailing semicolon after for loop + +Mon Oct 23 12:07:57 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem + where font_desc for widget's context lagged widget's font_desc by + one step. + +2000-10-22 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c + * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings. + + * gtk/makefile.mingw.in + * gtk/gtk.def: Updates. + + * gtk/testgtk.c: sleep() is called _sleep in MS's C + library. + + * gtk/gtkimcontextsimple.c: Include for bsearch(). + + * gtk/makefile.msc: Remove + + * gtk/makefile.msc.in: New file, like makefile.mingw.in. + + * gtk/Makefile.am: Add it. + + * configure.in: Generate it. + + * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor) + * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return + something even if not implemented, to satisfy picky MSVC. + + Patches by Hans Breuer: + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call + SetBkMode() and SetTextAlign() before calling + pango_win32_render(). + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values): + Set hcliprgn to NULL after destroying it. + (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL. + + * gdk/win32/gdkgeometry-win32.c + (_gdk_windowing_window_queue_antiexpose): More effective + implementation. + + * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's + depth as default, not the visual's. + + * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard + against empty title. + + * gdk/win32/gdkprivate-win32.h: Define a helper macro, + IMAGE_PRIVATE_DATA. + + * gdk/win32/gdkimage-win32.c: Use it. + +2000-10-22 Robert Brady + + * configure.in: Check for bind_textdomain_codeset + + * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset + present, make use of it. + + Add a translatable string "default:LTR" which, if translated + to "default:RTL", will cause the default direction to be + Right-to-Left. + + * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget + direction if marked as flippable. + + * gtk/gtkhscale.c: Mark widget as flippable. + +2000-10-04 Havoc Pennington + + * gtk/testgtk.c (create_buttons): create some stock buttons + with the default accel group + (create_image): test some new GtkImage features + (make_message_dialog): test GtkMessageDialog + (create_modal_window): fix someone's bizzarro indentation + + * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement + GTK_WIN_POS_CENTER_ON_PARENT. + Add "destroy with parent" setting, which means the window goes + away with its transient parent. + (gtk_window_get_default_accel_group): get the default accel group + for the window. + (gtk_window_set_destroy_with_parent): set/unset destroy with + parent flag + (gtk_window_read_rcfiles): invalidate icon set caches + after reloading rcfiles + + * gtk/gtkenums.h (GtkWindowPosition): add + GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog + on its parent window when the dialog is mapped for the first time. + + * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add + a simple message dialog class + + * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event + handler to emit response signal, and maybe later it would + honor a hide_on_delete flag - though that isn't there yet. + Set border width on the vbox to 2, so we get some padding. + Use a button box for the action area. + (gtk_dialog_key_press): synthesize a delete event if Esc + is pressed and the GtkWidget key press handler didn't + handle the escape key. + (gtk_dialog_new_with_buttons): new function creates a dialog + with some default buttons in it. + (gtk_dialog_add_action_widget): add an activatable widget + as a button in the dialog - you can also add a non-activatable + widget by accessing the action area directly. + (gtk_dialog_add_button): add a simple button - stock ID or + label - to the action area + (gtk_dialog_response): emit response signal + (gtk_dialog_run): block waiting for the dialog, return + the response. Override normal delete_event behavior, so that + delete_event does nothing inside gtk_dialog_run(). +======= +>>>>>>> 1.2802 + +<<<<<<< ChangeLog + * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal + emitted when an action widget is clicked or the dialog gets + delete_event + + * gtk/gtk.h: add gtkmessagedialog.h + + * gtk/Makefile.am: add gtkmessagedialog.[hc] + +2000-10-18 Havoc Pennington + + * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug + where any number of empty lines would get skipped + + * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the + edge. + + * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the + warning about invalid iterators (explain more thoroughly) + (gtk_text_iter_in_region): rename gtk_text_iter_in_range + + * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less + big + + * demos/*.c: Add error handling + + * gtk/gtktextbuffer.c: don't modify const iterators + + * gtk/gdk-pixbuf-loader.c: Add full error handling here + + * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors + on file load + + * gtk/gtkiconfactory.c: Update to reflect addition of error + handling to gdk-pixbuf loaders + +Wed Oct 18 11:14:05 2000 Owen Taylor + + * configure.in demos/Makefile.am demos/testgtk/*: Start of work to + move to new modularized testgtk. + +2000-10-17 Jonathan Blandford + + * gtk/gtktreeview.c: Draw the arrows correctly. + + * gtk/gtktreemodel.c: Added user docs. + + * gtk/gtk.h: remove gtktreedatalist.h. + + * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct + parent when generating my type. + + * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE, + POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT. + +2000-10-16 Jonathan Blandford + + * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move + GtkTreeModel from object to interface. + +2000-10-16 Havoc Pennington + + * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing + compilation + +2000-10-16 Jonathan Blandford + + * gtk/gtktreeselection.c: Add API documentation to all public + functions. + + * gtk/gtktreeviewcolumn.c: Added API documentation to all public + functions. + +2000-10-15 Jonathan Blandford + + * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function + proposed by Guy Harris . Also, added API + docs to all public functions. + + * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h, + gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c, + gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c, + gtk/gtktreemodel.h, gtk/gtktreeselection.c, + gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node + issue. + +2000-10-14 Robert Brady + + * configure.in: Added "fa" (Persian) to ALL_LINGUAS. + +2000-10-12 Jonathan Blandford + + * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added + values other then G_TYPE_STRING. + * gtk/gtktreeselection.c: Minor commenting updates. + * gtk/gtktreeview.c: Format updates. + +2000-10-09 Tor Lillqvist + + * README.win32: Update. + + * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two + lines that had been deleted by mistake (?). + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle + also the case fg==white and bg==black (but still not randomly + coloured cursors). Thanks to Wolfgang Sourdeau. + + * gdk/win32/*.c: Silence gcc -Wall. + + * gtk/gtk.def: Add missing entry points. + + Fixes by Hans Breuer: + + * gdk/makefile.msc + * gdk/win32/makefile.msc: Update. + + * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined, + some MSVC thing, presumably), cause breakpoint on failures. Add + GDK_NOR case. Call g_log_set_always_fatal. + + * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle + should be pased by reference. + + * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly. + + * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert. + + * gdk/win32/gdkevents-win32.c + * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE. + + * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and + implementation object. + + * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables, + not just windows. + + * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize): + Use the wrapper object. + +2000-10-06 Havoc Pennington + + * Makefile.am (SRC_SUBDIRS): contrib subdir + + * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library, + so it can be used in Xlib version + + * demos/testpixbuf.c (update_timeout): error checking from 1.0 + tree + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync + change from 1.0 tree that returns first frame of animation + if the loaded file is an animation. + + * contrib: add new directory to hold stuff that comes with GTK+ + but isn't really part of GTK+ (for now, gdk-pixbuf-xlib) + + * configure.in: add contrib/* + +2000-10-05 Havoc Pennington + + * demos/testpixbuf-save.c: add pixbuf save test + + * demos/Makefile.am: add testpixbuf-save.c + +2000-10-05 Jonathan Blandford + + * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with + GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c + * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/ + * gtk/gtktreeselection.[ch]: Replaced + "node_selected"/"node_unselected" signal with "selection_changed" + signal. + +2000-10-04 Jonathan Blandford + + * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new + tree widget. + +2000-10-04 Jonathan Blandford + + * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle + drawing. + +Wed Oct 4 15:52:15 2000 Owen Taylor + + * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed): + Move list pointer forwards before removing item from + list. (Crash reported by Salmaso Raffaele) + + * gdk/gdkwindow.h: Remove spurious trailing , + + * gdk/Makefile.am (LDFLAGS): You can't do interlibrary + dependencies on uninstalled libraries, sorry folks. + +2000-10-04 Havoc Pennington + + * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h, + gtk/gtkiconfactory.c: Fix copyrights + + * demos/testpixbuf.c: add inline pixbuf test + +Mon Sep 25 15:05:17 2000 Owen Taylor + + * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify): + Add gdk_window_iconify. + + * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c + (gdk_window_set_geometry_hints): Add win_gravity + to geometry structure. + + * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): + Implement _NET_WM_PING. + + * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): + Set _NET_WM_PID on the client leader. + + * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name): + Handle UTF-8 better. + + * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle + UTF-8 better, set _NET_WM_NAME as well. Only set + icon name if it hasn't previously been explicitely + set. + +2000-10-03 Havoc Pennington + + * gtk/testtextbuffer.c: clean up trailing whitespace, + add extensive tests for tag toggle iteration. + + * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan + distance + + * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag): + optimize case where the tag root is on level 1 + (gtk_text_line_previous_could_contain_tag): attempt to implement + (gtk_text_line_next_could_contain_tag): Abstract out node_compare + functionality + + * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle): + Implement this, though not very efficiently. + + * gtk/gtktextiterprivate.h: reformat + + * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end + iterator + + * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix + this to properly revalidate the iterators. + + * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work + properly at the end of the line (and therefore on empty lines) + + * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee, + maybe we should return a value... + +2000-10-03 Tor Lillqvist + + * config.h.win32: Guard definition of alloca(). glib.h now handles + that. + + * gdk/gdk.def + * gtk/gtk.def: Add new entry points. + + Changes just to make GTK+ build without errors on Win32. No hope + of it working in its current state, though...: + + * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings. Add + some functions from the X11 backend, just to make GTK+ build. + + * gdk/makefile.mingw.in + * gtk/makefile.mingw.in: Use correct gdk_pixbuf version + number. Add new object files. + + * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use + GetMessageTime to get timestamp (where on X11 uses + gdk_x11_get_server_time()). + +2000-10-02 Havoc Pennington + + * gtk/gtktextview.c: text_window_* weren't static and should have + been. + Start work on child widgets; not yet complete, syncing to + office computer. + + * gtk/gtktextchild.h: change this to contain a public interface, + starting work on child interfaces. + * gtk/gtktextchildprivate.h: move private interfaces here + + * gtk/Makefile.am: update to reflect gtktextchildprivate.h + + * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h, + gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, + gtk/gtktextmark.c: copyright notices + + * gtk/gtktextmarkprivate.h: reformat, and put _ in front of + internal functions + + * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of + internal function + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): + Reformatting + +2000-09-30 Havoc Pennington + + * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle + NULL start/end pointers + + * gtk/gtktextbuffer.c: Write some docs + (gtk_text_buffer_get_selection_bounds): Allow start/end to be + NULL, so you can just check whether there's a selection. + + * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to + cleanup_line or segments_changed ourselves, it gets done + in unlink_segment + + * gtk/gtktextmark.h: + s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/ + + * gtk/gtktextsegment.h: Clean up some indentation and naming mess + + * gtk/gtktextmark.c: delete some more old Tk cruft + + * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to + mark before removing it, so we can emit MARK_DELETED with a valid + pointer. + (gtk_text_buffer_mark_set): hold ref across signal emission + + * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve + whining about attempts to delete special marks + + * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with + underscore, since it's internal. + + * gtk/gtktextbuffer.h: Remove find_string prototype, this is + now implemented in terms of iterators in gtktextiter.h + + * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): + New function, destructively sets contents of buffer. Also + a convenient way to clear the buffer by setting text to "" + + * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat + multiline string literal + + * gtk/testtext.c (text_changed_callback): Redraw line numbers if + text changes. + + * gtk/gtktextiter.c (forward_char): Return FALSE if new location + is not dereferenceable + (gtk_text_iter_forward_lines): fix return value + +2000-09-29 Havoc Pennington + + * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation + + * gtk/gtktextview.c: Implement drag thresholding; change functions + that set border window size to have nicer name + (gtk_text_view_mark_set_handler): Fix this to have the + right signature. + + * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes + + * gtk/testtext.c: Update with API changes, put line numbers on + both sides. + + * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap + with this + + * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with + pixbuf; delete a big block of #if 0 Tk code + + * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace + insert_pixmap with insert_pixbuf + +2000-09-29 Martin Baulig + + * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid + confusion with the GdkPixbuf of the GNOME 1.x platform. + +2000-09-29 Havoc Pennington + + * gtk/gtktextview.c: Implement the side windows. + + * gtk/testtext.c: Implement simple line numbering in the + left side window; seems to make scrolling sloooow. Oops. + Also, cursor blink is for some reason causing redraws + of the line numbers. Should investigate... + +2000-09-28 Havoc Pennington + + * gtk/gtktextview.c: Set up infrastructure to deal with lots of + scrolling child windows, and draw focus rectangle properly. + + (gtk_text_view_buffer_to_window_coords): + Coordinate transformation to deal with all these freaking windows + and offsets + (gtk_text_view_window_to_buffer_coords): transform the other way + + * gtk/testtext.c (create_buffer): Update to match Pango API change + + * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the + anonymous tags + (foreach_unref): don't emit remove signal from finalize, just + set tag's parent to NULL + +2000-09-26 Havoc Pennington + + * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove + Fix some warnings + +2000-09-26 Havoc Pennington + + * gtk/Makefile.am (gtk_private_h_sources): Move more text widget + headers into the private header list + + * Makefile.am (pkgconfig_DATA): install pkg-config files + + * configure.in: add pkg-config files + + * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files + + * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate + outstanding icon caches on theme change. + + * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three + important types: + + (GtkIconSource): Specification for creating a pixbuf + appropriate for a direction/state/size triplet from + a source pixbuf or filename + + (GtkIconSet): List of GtkIconSource objects that are used to + create the "same" icon (e.g. an OK button icon), and cache for + rendered icons + + (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look + up the icon set for a given stock ID. GTK maintains a stack of + GtkIconFactory to search, and applications or libraries can add + additional icon factories on top of the stack + + * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse + the set of GtkIconSource specified for a given stock ID into + a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the + RcStyle, under the specified stock ID. + + * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function + render_icon used to derive a GdkPixbuf from a GtkIconSource. + This allows people to theme how prelight, insensitive, etc. are + done. + + (gtk_style_lookup_icon_set): Look up a stock ID in the list of + icon factories for a style, and return the resulting + icon set if any. + + (gtk_style_render_icon): Render an icon using the render_icon + method in the GtkStyleClass. + + * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): + Use the style for a given widget to look up a stock ID, get the + icon set, and render an icon using the render_icon method + of the style + + * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type + (contains information about a stock item), the built-in stock item + IDs, and functions to add/lookup stock items. + + * gtk/stock-icons/*: Stock icons that come with GTK + + * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns + a button based on a GtkStockItem + (gtk_button_new_accel): Takes a uline string and accel group, and + installs the accelerator. + + * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic + image-display widget. + +2000-09-25 Havoc Pennington + + * gtk/gtktexttypes.c: Remove Latin1 conversion stuff + + * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): + Fix a bug when removing node data, we didn't properly + re-splice the linked list after removing the data. + + * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through + GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget + + * gtk/gtktextbuffer.c (selection_received): fix g_convert usage + + * gtk/gtktextlayout.c (set_para_values): Set tab array + for the layout from the GtkTextTag. + + * gtk/gtktexttypes.h: delete tab and search cruft, + remove g_convert() in favor of GLib version + + * gtk/gtktexttypes.c: remove tab implementation from here, + move to Pango + + * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement + tab stuff using new PangoTabArray from Pango + + * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove + unused border_width stuff + +Thu Sep 14 12:21:12 2000 Owen Taylor + + * gtk/gtktexttypes.[ch]: Remove g_convert (moved to + glib) and now useless utf_to_latin1() latin1_to_utf() + + * gtk/gtktextview.[ch]: Change ::move_insert and + ::delete_text action signals to ::move and ::delete; + create the signals with the right enumeration type, + not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d, + C-v bindings, change Home, End to move to beginning/end + of line, Add C-Home C-End to move to beginning/end + of buffer. Change ::cut_text to ::cut_clipboard, etc; + combine ::scroll_text into ::move; use new GtkSelectionData + functions to simplify DND text handling. + + * gtk/gtkenums.h gtk/gtktextview.h: Move movement, + deletion enumerations here, rename enumeration values to + be consistently plural. + + * gtk/gtktextbuffer.c: Use new clipboard interfaces + for cut/copy/paste and primary selection. + + * gtk/gtktextbuffer.[ch]: Remove excess time and + 'interactive' arguments from cut/copy/paste; + rename cut to cut_clipboard, etc; remove + gtk_text_buffer_get_clipboard_contents(). + + * gtk/gtktextlayout.[ch]: Add + gtk_text_layout_move_iter_to_line_end() to move the iter to + line ends. + + * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text): + Functions to set or get a UTF-8 string on the selection + data. + + * gtk/gtkclipboard.[ch]: New, simplified selection handling + interfaces. + + * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly + created widgets - one of these is useless if we don't. + + * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export + a public function clear all targets registered for the + widget. + + * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt: + Never call gtk_widget_realize() - that was just asking + for bizarre side-effects. + + * gtk/gtkselection.c (gtk_selection_owner_set): Call + gdk_selection_owner_set even if the widget is the + same so that we reliably update the timestamp on + the server. + + * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a + gdk_x11_get_server_time() function. + + * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h + gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h: + Add some tricky filtering on serial numbers for + selection clear events to fix up long-standard + race condition FIXME's in gtkselection.c. + + * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add + routines to convert from utf8 to compound text or + STRING and from a text property to UTF-8. + + * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add + a convenience function gdk_get_current_event_time(). + + * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy + and free selection_data->data properly + +Sat Sep 9 10:23:53 2000 Owen Taylor + + * gtk/gtkthemes.c: Remove some unecessary includes. + +2000-09-08 Jonathan Blandford + + * gtk/gtktextdisplay.c + * gtk/gtktextlayout.c + * gtk/gtktexttag.c + * gtk/gtktexttag.h + * gtk/testtext.c: Change the overstrike property to strikethrough, + to closer match pango. + +Fri Sep 8 14:28:00 2000 Owen Taylor + + * gtk/gtktextview.c: Fix up visibility so that focus, + cursor_visible and blink interact properly. Reenable cursor blink + which had been roughly disabled. Make blink and focus + properly per-view. + + * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible): + Add a flag for whether to display insertion cursor and + a function to set the flag. + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change + get_line_y() to get_line_yrange(), to be a bit more generally + useful. + +Thu Sep 07 20:54:33 2000 George Lebl + + * gtk/gtkmenu.c: in gtk_menu_set_submenu_navigation_region + do stop_navigating_submenu, to clear last timeout properly. + Also in gtk_menu_motion_notify move ignore_enter above + the conditional to make it always happen as suggested by Owen + +2000-09-07 Tor Lillqvist + + * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o + + * gdk/win32/gdkwin32.h: Add more definitions missing from the free + w32api headers. + + * gdk/win32/gdkprivate-win32.h: Add a couple of missing + declarations. + + * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings. + (gdk_win32_get_colormap): A line had been deleted by mistake. + + * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too. + (gdk_event_translate): Handle more virtual keycodes to be able to + generate GDK events for Control-comma, Control-period, etc. + + * gtk/gtk.def: Add some missing entry points. + +Thu Sep 7 11:47:02 2000 Owen Taylor + + * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c: + Doc comment fixing. (Mostly non-matching parameter names.) + + * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify + comments a little to avoid looking like a doc comment. + + * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to + GTK_INPUT_ERROR. (Should the mechanism for erros in spin button + conversions be changed to GError?) + + * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): + Move private #defines into .c file. + + * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize + order of argument addition, remove duplicates. + + * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass): + parent class is FrameClass, not BinClass. + + * gtk/gtk.h: Add gtkinvisible, which was missing. + (It's occasionalyl useful for client apps, if seldom.) + + * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER + #define. + +Wed Sep 6 09:53:15 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space + coordinates when creating window, instead of GDK-space + coordinates. (Avoid BadValue on too large windows.) + +2000-09-05 Sebastian Wilhelmi + + * configure.in (use_mmx_asm): Remove conftest* after use along the + lines of AC_TRY_COMPILE. + + * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead + of g_dirname, which is deprecated. + (gtk_rc_parse_any): Removed calls to + g_scanner_{freeze,thaw}_symbol_table, which are deprecated. + + * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy): + Removed calls to g_hash_table_{freeze,thaw}, as they are + deprecated now. + + * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename + instead of g_basename. + +2000-09-04 Elliot Lee + + * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid + ANSI warning. + +Sun Sep 03 00:47:08 2000 George Lebl + + * gtk/gtkwidget.h: Add some documenting comments about + GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT + just as owen said on irc. + + * gtk/gtkwindow.c (gtk_window_set_default): Don't blindly + set HAS_DEFAULT. Only set it if there isn't another window + holding it (a focus window which RECEIVES_DEFAULT) and only unset + it if the widget is not the focused window with RECEIVES_DEFAULT. + This fixes weird double default bugs in dialogs which has things + call gtk_window_set_default at times. + +Fri Sep 1 22:39:07 2000 Owen Taylor + + * gtk/gtkmenu.[ch] TODO.xml: Apply patch from + Nils Barth and David Santiago to improve submenu + navigation. The patch does this by creating a triangular + region from the point where the pointer leaves the + menu to the submenu. While the pointer is in + that region and a timeout has not expired, events + that would cause the active submenu to change are + ignored. + +Fri Sep 1 15:34:46 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where + moving a toplevel window immediately after sizing it would + result in it being sized back to the old size since + impl->width, impl->height aren't updated until we hear + back from the server. There is still a (longstanding) bug + here that gdk_window_get_size() will give the wrong size + until we do hear back. + +2000-08-31 Havoc Pennington + + * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, + gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, + gtk/gtktexttagprivate.h, gtk/gtktextview.c: + Rename GtkTextStyleValues to GtkTextAttributes + +2000-08-31 Havoc Pennington + + * gtk/gtktextbtree.c (GtkTextBTree): cache end line, + for rapid testing whether an iterator is the end iterator + (gtk_text_btree_new): init end line cache + (gtk_text_line_is_last): use fast cached line to + see if we're the last line. + (get_last_line): use cached line here too, should + speed up some random unrelated code. + +2000-08-30 Havoc Pennington + + * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer + signals. + + * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and + delete_text signals. This allows the signals to be used for + implementing undo. + + * gtk/gtktextbuffer.c: Change signal handler signatures; + provide "interactive" argument when emitting insert_text or + delete_text signal. + +2000-08-30 Havoc Pennington + + * gtk/gtktextbuffer.c: Docs + +Fri Aug 25 12:16:15 2000 Owen Taylor + + * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP + from switch statements, since Tor removed the enumeration + value. + + * gdk/x11/gdkimage-x11.c (gdk_image_get): + s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/. + +2000-08-29 Elliot Lee + * */*.h: Use G_GNUC_CONST. + +2000-08-27 Havoc Pennington + + * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs, + minor indentation fixes, inserted some FIXME about stuff I + realized was broken while documenting it. + (gtk_text_iter_get_pixmap): allow out params to be NULL, following + GTK convention + +Tue Aug 22 12:33:24 2000 Owen Taylor + + * gtk/testgtk.c (create_styles): Fix double free of + font desc. + +Mon Aug 21 22:39:18 2000 Owen Taylor + + * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}. + + * gtk/testgtk.c (create_styles): Add a test for modifying + the style through gtk_widget_modify_*. + + * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add + a function to get the current modifier style. + + * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy + of the passed in GtkRcStyle instead of ref'ing it. + + * gtk/gtkrc.[ch]: Add gtk_rc_style_copy(). + +2000-08-20 Tor Lillqvist + + * gdk/gdkimage.h + * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the + shared memory image+pixmap GdkImage type, or + gdk_image_bitmap_new(). They were used in the gdk_imlib port, but + I am dropping that. + + * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to + actually call gtk_init_abi_check(), passing also + sizeof(GtkWindow). Ditto for gtk_init_check(). + + * gtk/gtk.def + * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check): + New functions, used to check that the GTK+-using code has been + compiled using the correct compiler and switches. In particular, + with gcc one has to use the -fnative-struct switch as GTK+ is + compiled with that. + +Fri Aug 18 17:27:46 2000 Owen Taylor + + * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling + ->prev fields when merging lists. (Found simultaneously + by Pawel Salek and Jakub Jelinek) + +2000-08-12 Tor Lillqvist + + * gdk/gdk.def + * gtk/gtk.def: Add missing entries. + + * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use + OUT_TT_ONLY_PRECIS, try to get a TrueType font. + + * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New + function. Dummy implementation at this point. + + * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer + rules. Undefine GTK_COMPILATION when compiling the test programs. + + * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import. + +2000-08-11 Tor Lillqvist + + * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8() + to convert back and forth from UTF-8 and the "system" (or "current + locale") charset when necessary. Indentation/spacing cleanup. + +2000-08-10 Havoc Pennington + + * Makefile.am (snapshot): Change the format of the snapshot + version to match glib + + * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h + from EXTRA_DIST since it doesn't seem to exist + +2000-08-10 Tor Lillqvist + + * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage" + version of the directory name (not the UTF-8 one) when building + the path name to stat(). + +2000-08-03 Elliot Lee + + * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a + PANGO_ATTR_SHAPE set. + +Thu Aug 3 09:17:06 2000 Owen Taylor + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from + Peter Osterlund to simplify the code while keeping the + functionality the same. + +Wed Aug 2 14:57:38 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move + is_viewable() test further inside the function, since removing the + window from the redraw list without clearing ->update_area + was also very broken. + +2000-08-02 Tor Lillqvist + + * configure.in: Check for . + +2000-08-01 Martin Baulig + + * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning() + to display the message that this is a development version of GTK+. + +Mon Jul 31 18:37:36 2000 Owen Taylor + + * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation + was depending on widget->allocation instead of the width of text_area, + which was incorrect for subclasses like GtkSpinButton. + + * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos + with width == 1 tests that should be width == -1. + +Mon Jul 31 16:45:48 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, + (broken, Elliot, every single window blank on X) custom code with call + to gdk_window_is_viewable() which a) prevents code duplicate and + b) works. + +2000-07-31 Elliot Lee + + * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order + to get the GDK_PARENT_ROOT() macro to work. + * gtk/gtkmarshal.list: Add NONE:STRING,POINTER + * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces + of, windows that aren't shown. + * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of + pointer grab stuff. + +Mon Jul 31 13:53:16 BST 2000 Tony Gale + + * docs/gtkfaq.sgml docs/gtk-faq.sgml: + s/gtk_main_iteration/g_main_iteration/ + + Did this already in change: + Mon Nov 15 17:17:51 GMT 1999 Tony Gale + don't know how it got reverted. + +2000-07-31 Stanislav Brabec + + * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and + gdk_arg_no_debug_cb to fix compilation problem with --disable-debug. + + * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3, + not gdk_pixbuf. + +2000-07-30 Pablo Saratxaga + + * configure.in,po/{sp,sr}.po: Added Serbian files + +2000-07-30 Tor Lillqvist + + * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST. + + * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue): + Remove the g_pipe_readable_msg stuff. Not needed with new GLib + GIOChannel implementation. + + * gdk/win32/gdkinput.c + * gdk/win32/gdkpango-win32.c: Update license name here, too. + + * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix + definition to match prototype. + + * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS. + +2000-07-27 Elliot Lee + + * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type + function, to allow handling image formats that cannot be detected + by looking at content alone. + +Thu Jul 27 13:13:21 BST 2000 Tony Gale + + * docs/tutorial/*.gif *.jpg *.eps + Update these to the same look-n-feel. + Why does including images in DocBook suck so badly? + +Thu Jul 27 05:06:29 2000 Tim Janik + + * gtk/gtktable.c: applied patch from Phil Thompson + that enables space settings for + the last row/columns as well. + +Wed Jul 26 12:59:31 2000 Tim Janik + + * *.[hc]: applied patch from Andreas Persenius that + updates the license headers to the GNU Lesser General Public License, + as well as updating the copyright year to 2000. + +2000-07-26 Robert Brady + + * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h + and po/Makefile, was installing and looking for them under gtk20 + and gtk2 respectively. + +2000-07-25 Havoc Pennington + + * gtk/testtext.c: Comment out some stuff that depends on the rest + of my patches. + +2000-07-25 Havoc Pennington + + * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text + buffer + +2000-07-25 Havoc Pennington + + * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text + widget changes. + + * gtk/gtktextview.h: To be consistent with usage of "line" + throughout the API to mean "newline-terminated thingy", change + MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH + to MOVEMENT_LINE. + + (GtkTextView): Add flags for default editability, and whether to + show the cursor. Add functions to get/set that. Add + + (gtk_text_view_get_iter_location): new function + + * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to + gtktextlayout.h + (g_convert): Add g_convert temporarily, will go in glib in a bit + + * gtk/gtktexttagtable.h: include gtktexttag.h, and define + GtkTextTagTableForeach instead of brokenly using GHFunc. + Change gtk_text_tag_table_foreach() so it doesn't use GHFunc. + + * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here, + moved to public header. + + * gtk/gtktexttag.h: Rename the "elide" attribute of tags to + "invisible", since "elide" was a bad name. + (gtk_text_tag_get_priority): Added + + (GtkTextStyleValues): put this in public header, along with + functions to use it. + + * gtk/gtktextmarkprivate.h: Include more headers, since we no + longer include gtktextbtree.h. + + * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref, + gtk_text_mark_deleted + + * gtk/gtktextlayout.h: Don't include the "really private" headers, + only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData + to make this possible. Now we only need to install + gtktextlayout.h, not gtktextbtree.h and gtktext*private.h. + (However the Makefile.am isn't changed yet because of the + logistics of merging gtk-hp-patches piecemeal) + + * gtk/gtktextiterprivate.h: include btree header, so it compiles; + rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since + gtk_text_iter_get_line is now used in the public API for a + different purpose. + + * gtk/gtktextiter.h: Clean up function names to be more + consistent. Always call char offset "offset" and byte index + "index". A "line" is always a line number. + + (gtk_text_iter_is_last): new function, more efficient than + the existing way to check + (gtk_text_iter_is_first): new function, also more efficient + + (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these + + (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from + gtk_text_iter_forward_char, etc. + + (gtk_text_iter_forward_to_tag_toggle): Renamed from + forward_find_tag_toggle, since this isn't a linear search + + (GtkTextCharPredicate): rename from GtkTextViewCharPredicate + + (gtk_text_iter_forward_search, gtk_text_iter_backward_search): + New functions, search for a buffer substring. + + * gtk/gtktextbuffer.h: Add fields to store whether a paste is + interactive and default editable (since we need to store that info + until we receive the selection data). + + Remove all the _at_char and at_line etc. versions of functions; + only have iterator versions. + + Add _interactive() versions of functions, that consider the + editability of text. (FIXME add interactive flag to the + insert/delete signals per Darin's suggestion) + + (gtk_text_buffer_get_tag_table): new function, demand-creates the + tag table if necessary + + Remove declaration of gtk_text_buffer_get_iter_from_string + + (_gtk_text_buffer_get_btree): private/internal function, added. + + + * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData. + (gtk_text_line_is_last): new function + +2000-07-25 Havoc Pennington + + * gtk/gtkprogressbar.h: Implement new sane, 5-function API for + using GtkProgressBar. See Changes-2.0.txt for details. + + * gtk/gtkprogressbar.c: Add object arguments "fraction" and + "pulse_step" which are the equivalent of + gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction. + Implement new API. + + * gtk/gtkprogress.h (struct _GtkProgress): Add a field + (use_text_format) to mark whether text set on the progress bar is + a format string. Deprecate entire GtkProgress interface. + + * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE + (gtk_progress_build_string): make this a no-op if use_text_format + is FALSE + + * docs/Changes-2.0.txt: Describe progress bar changes. + +2000-07-25 Tor Lillqvist + + * Makefile.am: Include the build directory. + + * configure.in: Generate build/Makefile, build/win32/Makefile, + gdk/, gdk/win32/, and gtk/makefile.mingw. + + * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf. + Add GETTEXT_PACKAGE. + + * gdk/gdk.def + * gtk/gtk.def: Updates. + + * gdk/gdkfont.h + * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't + need them any longer. + + * gdk/gdkinput.h: Mark gdk_core_pointer for export/import. + + * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with + PANGOWIN32_LIBS and gdk_pixbuf. + + * gdk/win32: Compiles, but no doubt doesn't work at all. + + * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. + + * gdk/win32/gdkinput.c: New file, temporarily. + + * gdk/win32/gdkinput-win32.h: New file + + * gdk/win32/gdkinputprivate.h: Remove. + + * gdk/win32/gdkpango-win32.c: New file. + + * gtk/makefile.mingw.in: New file + + * gtk/makefile.cygwin: Removed + + * gtk/Makefile.am: Update accordingly. + + * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and + made externally visible. + + * gtk/gtkmain.c: Use it. + + * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h + is enough. + + * gtk/gtktypeutils.c: Mark glib_debug_objects for import. + +2000-07-24 Elliot Lee + * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the + individual backends already. + * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together + again. Yes, there really is a good reason for this, if you are using the gdkregion + internals, and if you're not, why do you care? + * gdk/gdkwindow.c: Fix inverted condition + * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely). + * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb + * gtk/gtkrange.c: Redraw trough when moving. + * gtk/gtktypeutils.c: Fix warning by adding const cast. + * modules/linux-fb/basic.c: Fix unknown glyph retrieval. + +2000-07-23 Tor Lillqvist + + * configure.in: Check for mkstemp and sigsetjmp. Output + gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw. + + More work on GDK for Win32. Still in an intermediate state. + + * gdk/makefile.cygwin + * gdk/win32/makefile.cygwin: Removed. + + * gdk/makefile.mingw.in + * gdk/win32/makefile.mingw.in: New files. + + * gdk/Makefile.am + * gdk/win32/Makefile.am: Generate and distribute them. + + * gdk/win32/gdkwindow-win32.h + * gdk/win32/gdkdrawable-win32.h + * gdk/win32/gdkpixmap-win32.h: New files. + + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkcursor-win32.c + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkgc-win32.c + * gdk/win32/gdkimage-win32.c + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Update data structures. Cosmetics: + Rename fields and variables called xcursor, xid, etc (these names + were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc. + +Sat Jul 22 17:41:26 2000 Owen Taylor + + * gtk/gtkentry.[ch]: Fix some problems with vertical + alignment. + + * gtk/gtkentry.c (gtk_entry_find_position): Fix + char/byte confusion. + +Sat Jul 22 11:16:05 2000 Owen Taylor + + * gtk/gtktextview.c (changed_handler): Fix bug where + redraw wasn't being done properly when height of + dirty region changed. + + * demos/Makefile.am: Remove various references to + -lgmodule + +Fri Jul 21 15:28:13 2000 Owen Taylor + + * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new + PangoAttrShape to reserve space for pixmaps, add + GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps + in the display functions. + + * gtk/testgtk.c (create_layout): Set some more exotic + scrolled window options + + * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type): + Add function to set the shadow type of a window, to allow + putting a shadow around widgets such as GtkLayout or GnomeCanvas + which don't draw their own frame. + +Fri Jul 21 16:34:42 BST 2000 Tony Gale + + * docs/tutorial/package-db-tutorial.sh: New file for + packaging DocBook format tutorial + +Fri Jul 21 14:23:51 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Minor updates + + * docs/tutorial/*.jpg *.eps: Screenshots for tutorial + +2000-07-19 Tor Lillqvist + + * gtk/gtksignal.c: Fix C++ comment. + + * gtk/gtkimmulticontext.c + * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__, + don't return value from void functions. + + * gtk/gtk.def: Add gtk_rc_style_unref. + +2000-07-19 Sebastian Wilhelmi + + * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h, + gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h, + gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h, + gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h, + gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h, + gtk/gtktypeutils.h: Include files outside of the extern "C" + block. Makes some C++ compiler happy. Reported by Denis Vakatov + . + +Wed Jul 19 14:07:57 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Yet more clean ups. + Completes first pass. Hurrah! + +Tue Jul 18 17:17:55 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: More clean ups. + +Mon Jul 17 18:52:38 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to + paint the background of the text area which was accidentally + removed at some point. + + * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: + + - Move most of the functionality from the theme vtable + into GtkRcStyleClass and GtkStyleClass. The moved + vtable functions were changed a bit in the move to + work better in their new home. + + - Get rid of the engine and engine_data fields from + GtkRcStyle and GtkStyle; instead the theme + engine derives theme-specific subclasses of GtkRcStyle + and GtkStyle + + - Add extra dlsym() found entry point to themes, + theme_create_rc_style(). + + * gtk/gtkstyle.c: Copy xthickness, ythickness fields + in gtk_style_real_copy. + + * gtk/themes.[ch]: add a function gtk_theme_engine_register_type() + to register a type associated with an engine. (The engine + won't be unloaded as there is an instance of the type.) + + +Mon Jul 17 18:19:06 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Clean ups. + +Mon Jul 17 13:59:29 BST 2000 Tony Gale + + * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots + of cleaning up to do. + +2000-07-15 Tor Lillqvist + + * gdk/testgdk.c: New file, quick hack to test backends for + pixel-by-pixel correctness of the most simple graphic operations. + +Fri Jul 14 20:30:25 2000 Owen Taylor + + * Really release 1.3.1 + + * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new + include structure. + +Fri Jul 14 18:40:39 2000 Owen Taylor + + * Released 1.3.1 + +Fri Jul 14 16:21:26 2000 Owen Taylor + + * gtk/gtktextlayout.c: use FALSE for size_only most + of the time when calling gtk_text_layout_get_line_display() + to avoid causing double reshapes when a redraw follows + immediately after. + +Tue Jul 11 11:13:40 2000 Owen Taylor + + * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate + appropriate region and gdk_window_process_updates() so trough + updating doesn't lag behind the window being scrolled. + + * gdk/gdkgc.c: Make parent_class pointer static. + +Sun Jul 9 21:31:23 2000 Owen Taylor + + * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c: + include . + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix + cut-and-paste error in computing memory offset for 4 channels. + +Fri Jul 14 14:05:02 2000 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove + gtk_rc_append_default_pixmap_path(), since it wasn't + adding an interesting path and we don't have a meaningful + default for this value. + +Fri Jul 14 12:22:49 2000 Owen Taylor + + * configure.in Makefile.am gtk-config.m4 gtk.m4: Move + gtk-config to gtk-config-2.0 move gtk_.m4 to + gtk-2.0.m4 + + * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am + gdk/Makefile.am demos/Makefile.am: Change + library names to libgtk-1.3.la, etc, so that we + can distinguish gtk-1.2 and gtk-2.0 on the linkline. + + * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am + gdk/Makefile.am gdk/x11/Makfile.am + Move include files into /usr/include/gtk-2.0, + /usr/lib/gtk-2.0/include/ + + * autogen.sh acconfig.h configure.in gtk/gtkmain.c + gtk/gtkintl.h: Change package for gettext from + gtk+ to gtk20. Put hack in autogen.sh to modify + po/Makefile.in.in after gettextize to make this + possible. + + * gtk+.spec: Some updates, not tested. + + * gdk-pixbuf/Makefile.am: Move loaders into + $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders. + + * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations + $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir + to THEMENAME/gtk-2.0/. Move engine directory to + $(libdir)/gtk-2.0/$(GTK_VERSION)/engines. + +2000-07-12 Tor Lillqvist + + Win32 changes, still doesn't build though. + + * gdk/makefile.cygwin + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Updates. + + * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same + default values for fg and bg pixel as X11 does (0 and 1), not + black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default. + Use 0 for pen width by default (treated as 1 anyway later, but for + apps that might check the value in the GdkGC). + (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public + interface to gdk_gc_predraw and _postdraw. + + * gdk/win32/gdkwin32.h + * gdk/gdk.def: Add gdk_win32_hdc_{get,release}. + + * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove + extraneous semicolon. + + * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0. + + * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth, + not the Win32 bitspixel value. + + * gdk/win32/gdkcc-win32.c: + * gdk/win32/gdkcolor-win32.c + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Changes to make compilable, with new + GDK object structure. + +Tue Jul 11 20:59:35 2000 Tim Janik + + * docs/tutorial/gtk_tut_12.es.sgml (name): + * docs/tutorial/gtk_tut_it.sgml (name): + * docs/tutorial/gtk_tut_fr.sgml (name): + * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely + outdated email adress: s/timj@psynet.net/timj@gtk.org/. + +Tue Jul 11 13:10:57 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Cleanup indenting and various + small changes. + +Tue Jul 11 08:04:58 2000 Tim Janik + + * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen + a bug here, never been here and never fixed anything ;( + (don't segfault if tree->root_tree is NULL, which happens prior + to widget realization, but puke instead). + +Tue Jul 11 06:38:42 2000 Tim Janik + + * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and + add the necessary tokens. + + * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style. + (gtk_rc_style_to_style): copy thicknesses. + (gtk_rc_init_style): apply thicknesses. + (gtk_rc_parse_style): parse xthickness and ythickness. + + * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements. + + * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): + (gdk_window_new): + (_gdk_windowing_window_init): + * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): + (gdk_pixmap_create_from_data): + (gdk_bitmap_create_from_data): + (gdk_pixmap_new): + * gdk/x11/gdkimage-x11.c (gdk_image_get): + (gdk_image_new): + * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): + * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): + * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get): + (gdk_colormap_get_system): + (gdk_colormap_new): + * gdk/gdkwindow.c (gdk_window_init): + * gtk/gtkstyle.c (gtk_style_new): + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): + * gdk/gdkpixmap.c (gdk_pixmap_init): + * gtk/gtkrc.c (gtk_rc_style_new): + use g_object_new() instead of g_type_create_instance() which + is a private function for fundamental type implementations. + +Thu Jul 6 16:12:14 2000 Owen Taylor + + * configure.in: Add check for db2html + +Thu Jul 6 14:53:05 2000 Owen Taylor + + * gtk/gtktypeutils.c (gtk_type_init): Add a temporary + hack to set glib_debug_objects based on gtk_debug_flags. + +Thu Jul 6 14:12:13 2000 Owen Taylor + + * INSTALL.in: Update the Prerequisites section. + + * Makefile.am demos/Makefile.am docs/Makefile.am + docs/tutorial/Makefile.am gdk/x11/Makefile.am + gdk/linux-fb/Makefile.am: Dist fixes + +Thu Jul 6 12:26:03 2000 Owen Taylor + + * NEWS: 10,000 foot view of 1.3.1 changes. + +Thu Jul 6 11:54:03 2000 Owen Taylor + + * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c + gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c + gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h + gdk/x11/gdkmain-x11.c: + + Patch from George Lebl to add a GdkGrabStatus enumeration to use + as a return value of gdk_*_grab(). Previously, we just + returned the X11 values directly. + +Thu Jul 6 11:27:44 2000 Owen Taylor + + * gdk/x11/Makefile.am: Patch from George Lebl to + install all the headers in the right place. + +Tue Jul 4 13:13:01 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Add remaining sections. Completes + initial conversion to DocBook. + +2000-07-04 Tor Lillqvist + + * README.win32: Improve a bit. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also + WM_SYSCHAR, and other changes to get handling of Alt+nnn or + Alt+0nnn on the numpad (used to enter characters by numeric code + from current DOS or ANSI codepage) working correctly, as in other + Windows apps. + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use + same argument validity tests as in X11 version. + (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon. + + * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor + definitions in case missing from headers. + + * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also + destroy the window-specific cursor. + (RegisterGdkClass): Use the global gdk_ProgInstance instead of + calling GetModuleHandle(NULL). + (gdk_window_set_cursor): Reworked to always copy the passed cursor + with CopyCursor before setting it as the window-specific + cursor. It is OK for the caller to destroy the GdkCursor (and thus + also its Windows cursor) after calling this function. Destroy any + previous window-specific cursor. + +Mon Jul 3 17:54:49 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): + font charset is iso8859-1, not iso-8859-1. + +Mon Jul 3 17:08:14 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): + Use g_get_charset() instead of g_get_codeset(). + + * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: + Comment out some strdup'ing functions to keep timj + happy until we finish fighting this out. + +Mon Jul 3 14:24:16 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with + <= width or height. + + * gtk/gtktable.c (gtk_table_attach): Fix missed merge + from 1.2 for parent/child states. + + * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple + of typos. + + * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of + event structures, replace with a generic axes field. Replace + deviceid/sourec with GdkDevice *device. + + * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function + to extract particular axis use value from event. (Also + can be used for normal X/Y.) + + * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision; + allow for arbitrary number of axes, namespace everything + as gdk_device_*. Replace guint32 deviceid with GdkDevice * + everywhere. + + * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: + Get rid of the gdk_input_vtable setup if favor of simply + defining the functions in gdkinput-none/gxi/xfree.c in + a similar fashion to the way that the port structure is + done. + + * gtk/gtkdnd.c: Fix fields of synthesized button press event + for new event structures. + + * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match + new device interfaces. + +Sun Jul 2 18:19:50 2000 Owen Taylor + + * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to + set the initial text. + + * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c + gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c + gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c + gtk/gtkvscale.c: Adapt to new argument of create_pango_layout(). + + * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new + pango_layout_set_font_description to simplify. + +Sun Jul 2 17:43:41 2000 Owen Taylor + + * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new + pango_layout_set_font_description to simplify. + +Sun Jul 2 17:06:40 2000 Owen Taylor + + * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c + gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use + pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'. + + * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with + PANGO_PIXELS() macro. + +Sun Jul 2 15:24:41 2000 Owen Taylor + + * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function + that returns a PangoContext owned by the widget and updated to + match future changes in the widget. Also, make + gtk_widget_create_pango_layout() use this context. If we ever + add a ::changed signal to PangoContext, this will make things + much more convenient. + + * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed() + in the appropriate places instead of destroying the layouts and + creating new ones. + + * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context() + in a few strategic places. + +Sun Jul 2 14:37:58 2000 Owen Taylor + + * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call + gtk_widget_size_request() on reparented child, if one. Otherwise, + queue_resize() on the child never results in it getting size-requested + at all. + + * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items + in option menus, so that (with luck) people won't copy it into + their apps in the future. + + * gtk/gtkoptionmenu.c: Connect ::size_request on the menu + to gtk_option_menu_calc_size. This isn't perfect, but should fix + a lot of problems with changing the size of the menu's menu + items after adding it to the option menu. + + * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language(). + + * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when + the text direction for a widget changes. + + * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use + ::direction_changed to get rid of various hacks. + +Sun Jul 2 13:19:12 2000 Owen Taylor + + * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate + name. + +Sun Jul 2 13:06:26 2000 Owen Taylor + + * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign + flag to the structure. Do not call XFreePixmap on pixmaps created + by gdk_pixmap_foreign_new(). + +Sun Jul 2 12:45:50 2000 Owen Taylor + + * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel + value using GdkRGB functionality given GdkColormap and GdkColor. + (name not final, waiting for inspiration.) + + * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to + set the foreground/background of a GC using the GC's colormap + and GdkRGB. (name not final, waiting for inspiration.) + + * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from + gdk_rgb_get_cmap(), put #define in gdkcompat.h. + + * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for + gtk_widget_get_visual(), gtk_widget_get_default_visual, etc, + purely a function of the corresponding colormap. Make + gtk_widget_set_visual(), etc, noop macros in gtkcompat.h. + + * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite + gdk_pixbuf_*create_from_xpm_* in terms of + gdk_pixbuf_new_from_xpm_data(), move into platform independent + code. + + * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take + advantage of the new draw_rgb_32_image_dithalign. + + * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added. + + * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap + on each created GC. + + * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap. + + * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure + which we initialize from the drawable when the GC is created, + if the drawable has a colormap. + + * gdk/x11/gdkgc-x11.c: include string.h for memset. + + * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc. + + * gtk/gtklayout.[ch]: Remove unsed configure serial member. + +Sat Jul 1 16:28:32 2000 Owen Taylor + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): When + actually returning expose events, make sure to set + the count field properly. + + * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix + accidentally reintroced bug which always cleared + the graphics_exposures value. + +Wed Jun 28 18:03:09 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Change DocBook layout slightly + +Wed Jun 28 17:49:05 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7. + +Wed Jun 28 13:31:55 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Start of Section 6. + +Mon Jun 26 19:37:04 2000 Owen Taylor + + * configure.in: Put 1.3.1 in warning message, not 1.3.0. + + (Fixes problem with drawing childless frames. Pointed out + by and a first patch from Anders) + + * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always + compute a child_allocation, even if we don't have a child. + + * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation): + Always chain to the parent's impl, even if we don't have a child. + +Mon Jun 26 18:53:31 2000 Owen Taylor + + * gdk/gdkrgb.c: If possible, create only a single shm segment and + use multiple parts of it instead of creating a bunch of separate + segments, since the maximum number of segments per system is not + large. (This might be worth backporting to GTK+-1.2.x if we make a + new release ) + + * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo + structure in preparation for per-colormap GdkRGB. + + * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm + to False when we get EINVAL from shmget so that the caller of + gdk_image_new can retry with a smaller segment size. + +Mon Jun 26 13:01:16 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Add Sections 4 & 5. + +Fri Jun 23 17:54:23 2000 Tim Janik + + * configure.in: make the current version number 1.3.1 (binary age 0, + interface age 0). + + * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*, + gtkcompat.h is all we want. + + * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of + GLib primitive types. fixed g_type_register_fundamental() argument + ordering. + + * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code + compiles. + + * gdk-pixbuf-loader.[hc]: get rid of unistd.h include. + object code cleanup, comment trigraph fixes, etc... + +2000-06-23 Havoc Pennington + + * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark + instead of making up a bogus name for first_para_mark + + * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow + 0 as a context ID + +Thu Jun 22 17:43:51 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgml: Change filename. Add Section 3. + +2000-06-21 Havoc Pennington + + * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where + we didn't check window->bg_pixmap != GDK_NO_BG. + + * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of + gdk-pixbuf + +Thu Jun 22 14:02:19 BST 2000 Tony Gale + + * docs/faq/gtk-faq.sgm: Move file to here. + TODO: Update Makfile.am + +Thu Jun 22 13:41:09 BST 2000 Tony Gale + + * docs/gtk-faq.sgm: Add Section 2 + +Thu Jun 22 08:43:45 BST 2000 Tony Gale + + * docs/gtk-faq.sgm: New file. Start of DocBook + version of the FAQ. + +Wed Jun 21 23:04:17 2000 Owen Taylor + + * configure.in (GDK_PIXBUF_MAJOR): Define version + numbers for GDK_PIXBUF_*, as they get substituted + into a header file. Need to consider versioning + for gdk-pixbuf more carefully later. + +2000-06-21 Raja R Harinath + + Work with srcdir != builddir. + * demos/testanimation.c: Don't include "gdk-pixbuf.h". Use + , not "gtk-pixbuf/gdk-pixbuf-loader.h". + * demos/testpixbuf.c: Likewise. + * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h". + * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h". Use + . + * demos/pixbuf-demo.c: Use not "gtk.h". Don't include + "gdk-pixbuf.h". + * demos/Makefile.am (INCLUDES): Remove unneeded directories. + +Wed Jun 21 19:45:02 2000 Owen Taylor + + * TODO.xml: Change 1.4 version numbers to 2.0. + +Wed Jun 21 19:29:08 2000 Owen Taylor + + * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation + fixups to GTK+ standard. + +Wed Jun 21 16:38:13 2000 Owen Taylor + + * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard, + gdk-pixbuf. + + * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): + fixups for GObject. + + * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of + gdk-pixbuf with GDK dependencies moved into GDK. + + * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily + move gdk-pixbuf-loader here until GObject has signals. + + * demos/: New directory of demos. Move demos from + gdk-pixbuf here. + + * demos/pixbuf-init.c: Small bit of code to check for + loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found, + set GDK_PIXBUF_MODULEDIR appropriately. + + * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat + define which no longer makes sense. + +2000-06-21 Havoc Pennington + + * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use + gtk_get_default_language + + * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): + new function to get the default language + + * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: + s/gtk_text_view_style_values/gtk_text_style_values/ + + * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h: + Add a "language" field to tags. + + (gtk_text_tag_set_arg): Fix bug in setting + "bg_full_height_set" tag. + +2000-06-21 Havoc Pennington + + * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate + in the interfaces + + * gtk/gtktexttypes.c: Remove UTF functions, use glib + stuff instead when possible. + + * gtk/gtktexttypes.h: Delete some unused constants + + * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c, + testtextbuffer.c: use glib instead of custom unicode routines + +Wed Jun 21 12:50:58 2000 Owen Taylor + + * docs/es/: Removed mistakenly added generated sgml + + * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex: + Remove outdated info files. + + * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial: + Moved tutorial files into subdir + + * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into + subdir. + + * docs/man/gtk_button.pod: Remove. (contents will be + integrated into gtk-reference button page.) + + * configure.in docs/Makefile.am docs/tutorial/Makefile.am + docs/faq/Makefile.am: Adjust for new organization + +2000-06-21 Christopher Blizzard + + * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs) + not $(MKINSTALLDIRS) + +Wed Jun 21 12:24:28 2000 Owen Taylor + + * gtk/testgtk.c (create_text): Finish the job Elliot started + of removing font setting test for text widget. (Since text widget + and GdkFont are not deprecated, and cause portability problems.) + +Wed Jun 21 11:41:43 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c + gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c: + Remove use of libunicode in favor of new GLib functions. + + * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32, + nano-x, framebuffer. The X11 include is just a hack until we get + the necessary functions in gdkcolor.h, so there is no reason to + add other includes of platforms. + + * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert + window bigger than the screen change. + + * gtk/testgtk.c: Revert some random changes from Elliot + that had no particular point and were causing testgtkrc + not to function correctly. + + * gdk/gdkregion-generic.h: Revert change from Elliot. Just + because GdkSegment and GdkRegionBox have the same fields, + it doesn't mean that 'typedef GdkSegment GdkRegionBox' + results in clearer code. + + * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events, + gdk_input_translate_coordinates): Fix missed GdkObjectification + +2000-06-18 Elliot Lee + + * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way. + * gtk/gtk{plug,socket}.h: Missed commits from previous. + +2000-06-20 Havoc Pennington + + * modules/linux-fb/Makefile.am: Make this compile + without framebuffer enabled + + * gdk/linux-fb/Makefile.am: Add conditional to not build + framebuffer unless specified in configure + + * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting + the size of the target instead of source if -1 was passed for + width/height + + * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix + width/height confusion. + +2000-06-19 Havoc Pennington + + * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be + GDK_DRAWABLE_XID. In the future, we probably want to make it + faster with G_DISABLE_CHECKS turned on. + +2000-06-14 Havoc Pennington + + * gdk/Makefile.am: add gdkpixmap.c + + * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/ + s/gdk_image_init/_gdk_windowing_image_init + + * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject + ref/unref + + * gdk/gdkcolor.h: make GdkColormap a GObject subclass + + * gdk/gdkcompat.h: remove GdkWindowType compat, since + GdkWindowType is now non-deprecated; + change gdk_window_get_type() compat to be + gdk_window_get_window_type(). + + * gdk/gdkdnd.h: make GdkDragContext a GObject. + + * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure + virtual GObject. Make all functions call into the vtable. + Move gdk_image_put() guts in here. Remove GdkDrawableType + and gdk_drawable_get_type(), these are now GdkWindow-specific. + draw_image, get_depth, get_size, set_colormap, get_colormap, + get_visual added to the vtable. + + * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual + GObject. Virtualize everything. + (gdk_gc_new_with_values): remove check for destroyed window, + because now GdkWindow::create_gc will check this. + (gdk_gc_set_values): New function to set GC values, this + was already implemented but wasn't in the header + + * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject. + + * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove + _gdk_window_draw_image(), remove _gdk_windowing_window_class, + remove _gdk_window_class; add _gdk_window_impl_get_type() and + _gdk_pixmap_impl_get_type(). Rename gdk_window_init to + _gdk_windowing_window_init, rename gdk_image_init to + _gdk_windowing_image_init. + + * gdk/gdkpango.c: Reflect GObject-ification of PangoContext. + (gdk_draw_layout): Remove check for destroyed window, + because all the drawable methods already check it. + + * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject. + Add gdkpixmap.c which contains implementation of GdkDrawable + virtual table (by chaining to a platform-specific implementation + object). + + * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, + GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace + GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate, + GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate, + GdkColormapPrivate. + + * gdk/gdktypes.h: #include + + * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject. + Move most functionality to platform-specific implementation + object. GdkWindow itself now handles the backing store, then + chains to the platform-specific implementation. + (gdk_window_get_window_type): return GdkWindowType of the window. + (gdk_window_peek_children): New routine, returns the children of + a GdkWindow + (gdk_window_get_children): Was in X11-specific code and did + XQueryTree. Changed to simply return a copy of window->children; + so it can go in cross-platform code. + + * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path + + * gdk/x11/gdkcolor-x11.c: implement X-specific parts of + GdkColormap; just changed to use the new private data instead + of casting to GdkColormapPrivate. + + * gdk/x11/gdkcursor-x11.c: added a couple typechecks to + gdk_cursor_new(). + + * gdk/x11/gdkdnd-x11.c: Change the way we access private fields + (private data member in the GObject). + (xdnd_manager_source_filter): Function had broken + error handling, fix it (use gdk_error_trap_push). + + * gdk/x11/gdkdrawable-x11.c: This file now implements + a base class for GdkWindowImplX11/GdkPixmapImplX11. This + base class is purely for the convenience of the X port, + and not part of the interface to cross-platform GDK. + + * gdk/x11/gdkevents-x11.c: Reflect various renamings. + + * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's + specific to X, and returned by the create_gc virtual method + of GdkDrawableImplX11. + (gdk_x11_gc_set_dashes): Change this to take an array of gint8 + rather than gchar, this was also changed in the GdkGC vtable. + (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the + mask is 0, return immediately, instead of checking every flag. + This is faster, and keeps us from segfaulting if values is NULL + and the mask contains some nonzero flags. + + * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of + GdkWindow. + + * gdk/x11/gdkglobals-x11.c: change type of grab window, since + GdkWindowPrivate is gone. + + * gdk/x11/gdkim-x11.c: rename things that got renamed. + + * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and + remove the image_put stuff that got transferred to GdkDrawable. + + * gdk/x11/gdkinput.c: renamings + + * gdk/x11/gdkmain-x11.c: #include + + * gdk/x11/gdkpixmap-x11.c: GObject conversion + + * gdk/x11/gdkprivate-x11.h: indentation fixes + + * gdk/x11/gdkproperty-x11.c: renamings + + * gdk/x11/gdkselection-x11.c: renamings + + * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now + implements the platform-specific "impl" object. + Moved gdk_window_get_children to gdk/gdkwindow.c + + * gdk/x11/gdkx.h: Remove all the private structs and private datas + that no longer exist. Add declaration of GdkGCX11 object here. + Fix all the macros to still work. + + * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow, + GdkDragContext from the boxed types since they are now GObjects. + + * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject, + moved xthickness/ythickness into the instance. GtkStyleClass + functions are now in the standard vtable for GtkStyle, so you have + to create a GObject subclass to write a theme engine. + (gtk_style_copy): fixed a leaked PangoFontDescription + (gtk_style_init): renamed gtk_style_realize, so gtk_style_init + can be the standard GObject function. + + * Throughout GTK: + s/style->klass->[xy]thickness/style->[xy]thickness + s/pango_layout_unref/g_object_unref/ + + * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject. + + * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of + accessing GDK internals. + + * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of + accessing GDK internals. + +2000-06-18 Elliot Lee + + * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen. + + * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar + problem by calculating event position relative to the trough + rather than the slider. + * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate. + + * gdk/gdkgc.h: Add GDK_NOR. + + * configure.in, Makefile.am: Add modules top level dir + * configure.in: Only use pangox library if building x11 target. + * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use. + +Fri Jun 16 22:24:22 2000 Christopher Blizzard + + * gtk/gtkcolorsel.c: Change private class member to be named + private_data throughout the file. + + * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to + private_data to avoid clashing with keyword. + +Fri Jun 16 22:24:22 2000 Christopher Blizzard + + * gdk/gdkdnd.h: Add comment to remove warning. + +Sun Jun 18 15:35:35 2000 Pablo Saratxaga + + * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by + Byelorussian language; changed the Makefile and file names + to reflect that. + +Mon Jun 12 16:58:40 2000 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw + rather than gdk_window_hide; this makes things work + correctly if the window is programmatically hidden while + iconified. + +Sun Jun 11 12:46:19 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix + cut and paste typo where wrong pixmap was being + unref'ed. (Pointed out by a friend of KUSANO Takayuki.) + +Sun Jun 11 10:22:36 2000 Owen Taylor + + * gtk/gtkselection.c (gtk_selection_bytes_per_item): + Add helper function to compute format / bytes + relationship. Use in a couple places to fix up + errors which assume 8 * format. + + * gtk/gtkselection.c (gtk_selection_request): Use 32 + rather than 8 * sizeof (GdkAtom), to work correctly + on Alpha. + +Thu Jun 8 21:54:51 2000 Christopher Blizzard + + * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not + libgtk.la + (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11 + versions + + * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error + checking macros return NULL since the function has a return value. + +Wed Jun 7 15:44:42 2000 Owen Taylor + + * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping + GTK+ from building at all. + + * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues. + +Mon Jun 5 19:32:53 CEST 2000 Paolo Molaro + + * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am, + gtk/Makefile.am: make it possible to configure gtk for different + targets on the same platform. The library name is now + libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb + flag. Only the x11 target compiles right now. + * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h, + gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir. + * gdk/nanox/gdk*generic*: delete generic region code. + * gdk/linux-fb/gdk*generic*: delete generic region code. + * README.nanox: update information. + +Tue Jun 6 10:53:59 2000 Owen Taylor + + * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to + prepend not append. (Pointed out by Brett Hall.) + +Tue Jun 6 01:59:57 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout. + +Mon Jun 5 16:00:09 2000 Owen Taylor + + * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll + need this later, and this makes sure that the atexit for + glib gets called after that for GDK, so atexits are + properly ordered for object leak checking. + + * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit(). + + * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call + pango_x_shutdown_display() + + * gtk/simple.c (main): Close window on destroy. + +Mon Jun 5 11:50:02 2000 Owen Taylor + + * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need + to treat initial creation different from setting with + regards to the graphics-exposures parameter, so add a parameter + indicating whether this is initial or not. + +Mon Jun 5 13:29:31 2000 Owen Taylor + + * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose() + to sort of work by adding an extra return_exposes arg + to gdk_event_translate() - it might be better to simply + deprecate the function altogether and force people to rewrite + without it. gdk_window_scroll() handles most of it, and where + gdk_window_scroll() doesn't work, simply redrawing more does. + + * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up + assertion. + + * gtk-config.in: Include PANGO_CFLAGS/LIBS. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a + bunch of pretty much useless /* Print debugging info */ comments + which had drifted away from the code they were commenting. + +2000-06-02 Havoc Pennington + + * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer + is in working order. + + * gtk/testtext.c: Change to reflect anonymous mark API + + * gtk/gtktextview.c: Convert from mark names to GtkTextMark*. + + * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size + field, which was unused. + + * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro, + saves some typing. + + * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark* + + * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable + flag on the insertion point and selection bound + + Throughout, use GtkTextMark instead of GtkTextLineSegment, and + make mark-manipulation functions take a GtkTextMark* instead of a + mark name. + + * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to + GtkTextMarkBody; will be used to detect attempts to delete + the permanent marks (insert and selection bound) + + * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer + +Fri Jun 2 12:56:01 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED + flag to on. + + * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): + Honor DOUBLE_BUFFRED_FLAG + + * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a + function to set the DOUBLE_BUFFERED flag. + + * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether + or not exposes done on the widget should be double-buffered. + + * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations + to be what would be expected. (Fixes problem with a + g_return_if_fail() validating a TextDirection enumeration) + +Thu Jun 1 23:05:13 2000 Owen Taylor + + * gtk/gtkwidget.c: Remove all references to + offscreen flag which was no longer used. + + * gtk/gtkprivate.h (enum): Remove unused flags and compress. + + * gtk/gtkframe.c (gtk_frame_set_label_widget): Check + for non-null label_widget->parent. + + * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute + which no longer was used. + + * gdk/gdkpango.c (gdk_pango_context_get_info): make static. + + * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks + for null arguments. + + * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add + check for destroyed windows. + +Thu Jun 1 13:48:45 2000 Owen Taylor + + * gtk/gtkimmulticontext.c: Add a finalize method and unref + the slave context there. + + * gtk/gtkinvisible.[ch]: Make reference counting behavior + identical to GtkWindow. + +Thu Jun 1 01:54:11 2000 Owen Taylor + + * Makefile.am gdk/gdkpango.c: Copy the layout render function from + pangox to here, so we can write them independent of rendering + system, using GDK primitives. + + * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c + gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable, + since we have a rendering-system independent implementation in + terms of draw_glyphs(). + + * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New + function to render a single line. + + * gdk/x11/gdkpango.c: Move the guts of this file mostly + into ../gdkpango.c, which simplifies things, since we + don't have to deal with raw X gc's. + +Fri May 19 04:28:16 2000 Owen Taylor + + * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to + get the logical attributes for a given GtkTextLine. + +Tue May 30 16:05:39 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track + g_locale_get_codeset() to g_get_codeset() change. + +Tue May 30 15:03:19 2000 Owen Taylor + + * gtk/testcalendar.c (calendar_font_selection_ok): Use font + descriptions. + + * gtk/gtkentry.c (gtk_entry_draw_text): Center text within + the entry. + + * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of + redoing (vastly simplifying) for Pango. Still needs quite + a bit of work. (Size selection is currently poor. List of + predefined sizes is not a good idea, since all of these + sizes won't necessarily be distinct.) + +Tue May 30 13:50:19 2000 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle + CODESET results for LANG=C. + +Mon May 29 15:49:10 2000 Owen Taylor + + * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC + which takes a stringized pango font description; + ignore the older 'font' and 'fontset' declarations. + + * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font + field with a GdkFont derived via gdk_font_from_description(), + for compatibility. (Should we just remove it entirely? + Probably too much compatibility breakage, but people + should be migrating to the new Pango stuff as quickly + as possible.) + +Mon May 29 15:47:41 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/. + +Mon May 29 15:44:46 2000 Owen Taylor + + * gtk/gtkcalender.c: Roughly pango-ized. Really needs + redoing; there are some bugs in size allocation right + now, the semi-existant distinction between header / day + fonts was removed, but, with Pango, could actually + be made functional in a nice way. + + * gtk/testcalender: Move calender from examples into this + directory as a test program. (We really need to restrcture + testgtk into a whole directory full of tests for every + widget or functionality group, separated into multiple .c + files.) + +Mon May 29 15:19:56 2000 Owen Taylor + + * gtk/testgtk.c (file_exists): Fix stupid typo that + was keeping RC file from being loaded. + + * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized + RC file font code. + +Mon May 29 14:31:27 2000 Owen Taylor + + * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description): + Add function to load a GdkFont from a PangoFontDescription. + +2000-05-29 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event" + variable should be of type GdkEventPrivate. + +Fri May 26 17:16:40 2000 Owen Taylor + + * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able + to have any widget for the label, use a GtkLabel widget + to display the text. (Based partially on a patch from + Anders Carlson.) + + (Quite a bit of code reorganization - strip 90% of the + guts out of gtkaspectframe and add a single virtual + func to GtkFrameClass - compute_child_allocation.) + +Fri May 26 12:00:02 2000 Owen Taylor + + * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized. + (Removed clist->row_center_offset field because caching + it wasn't saving time or code, added private function + _gtk_clist_create_cell_layout()). + +Wed May 24 15:59:37 2000 Owen Taylor + + * gtk/gtkaccellabel.c: Pangoized. + + * gtk/[hv]ruler.c: Pangoized + +Mon May 22 19:23:59 2000 Owen Taylor + + * gtk/gtkfilesel.c (gtk_file_selection_init): + Use gtk_clist_set_column_auto_resize() to remove need + need for manual column width computations. + +Mon May 22 18:50:26 2000 Owen Taylor + + * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, + ensuring Pango correctness, and considerably simplifying the + code. + + * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE. + + * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect + getting of numbers of lines. + + * gtk/gtklabel.c (gtk_label_size_request): Set the requisition + to the actual requested width of the lable, not to the wrap + width we set. + + * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h. + + * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c + gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes. + + * gtk/gtktextview.c: Fix structure inheritance. + + * gtk/gtkprogressbar.c: Pangoize. + +Mon May 22 15:47:30 2000 Owen Taylor + + * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate + in a function. + + * gtk/gtktextlayout.c (find_display_line_above): Fixed + bug with computing line tops. + + * gtk/gtktextview.c (changed_handler): Fix < , <= confusion. + +Thu May 18 18:53:31 2000 Owen Taylor + + * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset + and y_offset coordinates to do what we need now. (The offset between + buffer and layout coordinates has been reintroduced, but is a + bit different than before.) + + * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead + handle the adjustments ourselves, and scroll as necessary using + the new gdk_window_scroll(). + + The advantage of this is that when we are incrementally revalidating, + we are essentially rearranging things around the visible portion + of the screen. With the old setup, the visible portion of the + screen was moved around in the layout, so scrolling and redrawing + to track that caused jumping of the display. Since we now + control the scrolling ourselves, we can suppress this and + only redraw when things actually change. + +Thu May 18 18:47:25 2000 Owen Taylor + + * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate + the region not just redisplay it after-all, since we store the + cursors in the LineDisplay. (Ugly interactions here between + GtkLayout and GtkTextBTree here.) + + * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison. + +Thu May 18 18:43:21 2000 Owen Taylor + + * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): + Added function to scroll contents of a window while keeping the + window constant. Works by XCopyArea or guffaw-scrolling depending + on the details of how the window is set up. (guffaw-scrolling + still needs to be filled in.) + +Wed May 17 22:36:53 2000 Owen Taylor + + * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget, + move the debugging that was tied to a global variable + to that. + + * gtk/gtkmarshal.list: Add NONE:INT,INT,INT + + * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate + validated flag, in line data instead of setting height/width to + -1. This allows us to perform operations with partially invalid + buffer (using the old size for invalid lines) and thus to do + incremental vaidation. Keep height/width aggregates up to date + when deleting text and rebalancing the tree. + + * gtk/gtktextbtree.[ch]: Add functions validate a line + (gtk_text_btree_validate_line), and to validate up + to a number of pixels (gtk_text_btree_validate). + + * gtk/gtktextlayout.[ch]: Add an ::invalidated signal + that indicates that something is changed and a revalidation + pass is needed. Change ::need_repaint to ::changed, and + make it take old and new yranges instead of a rectangle. + + * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move + the line_data_destroy() function from + gtk_text_btree_add_view() to a virtual function in + GtkTextLayout + + * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(), + since we are handling partial repaints in a different fashion + now. + + * gtk/gtktextbtree.[ch]: Only repaint the changed portion + of the selection instead of queueing a repaint on the + entire widget. + + * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move + get_selection_bounds() down to btree, make the function + in buffer a wrapper around the btree function. + + * gtk/gtktextlayout.[ch]: Add functions to check if the + layout is valid and to recompute either a range of pixels + aroudn a line or a certain total number of pixels. + + * gtk/gtktextlayout.[ch]: Cache a single line display; + now that we only redraw the needed portions, the hit rate + for this cache is quite high. + + * gtk/gtktextview.[ch]: Keep track of the first paragraph + on the screen so that when re-laying-out the buffer, we can + keep the same place. This requires connecting to ::value_changed + on the adjustments + + * gtk/gtktextview.[ch]: Add idle functions to revalidate + the buffer after we receive an ::invalidated signal. + +Wed May 17 22:10:47 2000 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper + to max of allocation and layout size, not just to the + layout size. + + * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): + Invalidate window so it gets redrawn properly. + + * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL + to mean the entire window. + + * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW + into public header. + +Mon May 15 14:51:31 2000 Owen Taylor + + * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function + to get the name of a mark. + + * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function + to find the paragraph from a y position. + +Thu May 11 12:57:20 2000 Owen Taylor + + * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid + nodes have width/height >= 0, not > 0. + +Tue May 9 21:29:06 2000 Owen Taylor + + * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display): + Add a size_only flag, so when we only need the size, we don't create + useless appearance attributes. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove + duplicate setting of font description. + + * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 + +Wed Apr 26 01:53:23 2000 Owen Taylor + + * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into + EXTRA_DIST. It does not work well when the file that + everything depends on is not in the tarball. + +Wed Apr 26 00:56:14 2000 Owen Taylor + + * gtk/testgtk.c: Some hacks and fixes so that it basically + works when not sitting in the GTK+ build tree. + +2000-05-03 Havoc Pennington + + * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag): + Properly determine the ordering of the tag root and the current + line within the tree. Previous algorithm only worked if the tag + root's immediate parent was the common root of both the current + line and the tag root. + +Wed Apr 26 00:43:00 2000 Owen Taylor + + * gtk/gtktextlayout.c (set_para_values): Fix some bugs in + alignment. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track + the widget text directional dynamically. + + * gtk/gtktextview.[ch]: Added functions to get and set default + wrap mode. + +Tue Apr 25 23:47:38 2000 Owen Taylor + + * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug + in cursor location computation. + +Tue Apr 25 23:22:59 2000 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/ + vadjusment values properly when layout gets smaller. + + * gtk/gtktextview.c (need_repaint_handler): Areas being + passed in are far completely inaccurate, and sometimes + too small, so, for now, just queue a redraw on the + whole visible region. + +2000-04-25 Havoc Pennington + + * gtk/gtktextbtree.c (summary_destroy): new function to + destroy tag summary nodes + (gtk_text_line_next_could_contain_tag): this function was + totally broken if the line passed in wasn't below the tag + root. Fix it. + (gtk_text_btree_first_could_contain_tag): In the tag == NULL + "wildcard" case, we have to do a linear scan. Blah. + (gtk_text_btree_last_could_contain_tag): In tag == NULL case, + we have to do the linear scan + (tag_removed_cb): When a tag is removed from the tag table, + remove the GtkTextTagInfo node from the btree. + (gtk_text_btree_spew): Implement the spew function, for + our debugging pleasure. + +Tue Apr 25 19:40:18 2000 Owen Taylor + + * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix + a problem with referring to the wrong buffer. + + * gtk/gtkentry.c: Fix focus-in/focus-out confusion. + + * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default + font description to gtk_style_new() - otherwise things + don't work without a .gtkrc file. + + * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the + tags table if we create it ourself, too. + + * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since + it was conflicting with XKB modifiers. + + * gtk/gtktextview.[ch]: Add simple support for + GtkIMContext. + +Mon Apr 24 19:34:18 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem + with deletion from last commit. + +Mon Apr 24 19:29:40 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language + in the context from the current locale. + + * gtk/gtkentry.c (gtk_entry_size_request): Use language from the + context, not hardcoded value. + + * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual, + not logical. + +Sun Apr 23 23:39:18 2000 Owen Taylor + + * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as + attributes - that doesn't handle partial-glyph selection + properly. Instead use new pango_layout_line_get_x_ranges() + functionality to draw the selection. + + * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x() + now properly handles out-of-range coordinates. + + * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved. + + * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte() + public. + + * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext + for paragraphs opposite to the base direction of the widget. + + * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment. + + * gtk/gtktextlayout.c: Don't split segments on marks, since that + causes Arabic words to reshape as you cursor through. + + * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual + cursor position when moving vertically with the arrow keys and + scrolling with page-up/page-down. (Arrow keys save only the X, + scrolling saves both X and Y.) + + This means you can line-up / line-down or page-up / page-down + without losing your place, and also that moving vertically + with the cursor keys keeps the same X position, not the same + character count: + + * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical + arrow keys move by display lines, not paragraphs. + +Tue Apr 18 14:16:50 2000 Owen Taylor + + * gtk/gtklayout.c: Make sure that the bin window is at least + as big as the allocation. (Should we also make sure that the + bin window is big enough to completely cover widget->window?) + + * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add + function to get the onscreen rectangle. + + * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account + for offsets in window coordinates. + +Sun Apr 16 16:13:27 2000 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset + confusion. + + * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction + from the widget direction. + + * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): + Add a "direction" attribute. + + * gtk/gtktextview.c: global s/tkxt/text_view/. + + * gtk/testtext.c: Added long block of text in Arabic, to test out + the direction attributes. (Some problems with the shaping system + for arabic become obvious - like the fact the cursor splits words + into unjoined pieces.) + +Fri Apr 14 12:54:34 2000 Owen Taylor + + * gtk/gtktextdisplay.c (render_layout): Add overstrike handling. + + * gtk/gtktextlayout.c: Fix up alignment. + + * gtk/testtext.c: Add some tests for centering, wrapping. + +Fri Apr 14 09:26:22 2000 Owen Taylor + + * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c: + Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs(). + If we wrote GTK+-specific layout-render function this could just replace + the draw_layout() operation in the vtable. + + * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to + pango_layout_get_cursor_pos() and use that function. + + * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it + is a non-static symbol. + + * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y() + with gtk_text_btree_find_line_by_y() + + * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout + renderer that handles GtkTextAppearance attributes. + + * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: + + - Move the values in the style that don't affect geometry into a + GtkTextAppearance structure. + - Change underline to take a PangoUnderline and "font" a string + representation of a font description + - Add a "font_desc" attribute which takes a FontDescription structure. + + * gtk/gtktextlayout.[ch]: + + - Get rid of the display-line list per each line. Instead, we + generate, on demand, a GtkTextLineDisplay structure which] + contains a PangoLayout * and other necesary information + (offsets, cursor locations) for displaying a paragraph. + - Get rid of the code to wrap lines, create display chunks, + etc. Instead, we just go through a paragraph and convert + it into the necessary inputs to a PangoLayout. + - Implement a new attribute type, GtkTextAttrAppearance. This + holds a GtkTextAppearance, and is used to pass colors, + stipple, etc, through from the layout to the display without + having to use lots and lots of individual attributes. + - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos() + in terms of PangoLayout functions. + + * gtk/gtktextview.c: + + - Handle passing the necessary PangoContext to the layout + - Some fixups in painting to deal with the automatic backing store + and offsetting of GTK+-1.4 + - Add a style_set handler so that the default style reacts + properly to theme changes. + + * gtk/gtktext?*.[ch]: Random code-style fixes. + + * gtk/testtext.c: Substitute in languages that Pango handles now for Thai + +Mon Apr 10 10:33:45 2000 Owen Taylor + + * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget, + in original form preparatory to Pango-ization and gdkimcontext-ization. + +Thu Apr 6 19:25:39 2000 Owen Taylor + + * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs, + so that we can derive from gtkimcontext in language bindings properly. + +Thu Apr 6 16:02:52 2000 Owen Taylor + + * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval. + Add a compose table including (almost) all the compose combinations + from X. This is 6k of static, shared data as opposed to 50k or so of dynamic + data in the XIM implementation. + + * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval): + Moved functions to convert keyvalues from and to unicode here from + the win32 port and made them public. + +Wed Apr 5 16:37:29 2000 Owen Taylor + + * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1. + +Wed Apr 5 16:27:45 2000 Owen Taylor + + * gtk/gtkimcontext.[ch]: Base class for new input context system + + * gtk/gtkimmulticontext.[ch]: Proxy input context that allows + the real input context implementation to be loaded from modules + and switched on the fly. + + * gtk/gtkcontextsimple.[ch]: Simple implementation of an input + context that just does direct keysymbol => unicode translation. + + * gtk/gtkentry.[ch]: Start switching editing over to using + GtkInputContext. (No handling of preedit yet.) + +Wed Apr 5 15:48:41 2000 Owen Taylor + + * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too + many substitutions. (klass should not be subsituted.) + +Wed Apr 5 00:18:14 2000 Owen Taylor + + * configure.in: Add checks for Pango + + * configure.in docs/Makefile.am: Add test for sgml2html + and allow 'make dist' without building html, but print out + warnings in that case. (For making snapshots) + + * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am: + Add Pango libraries and C flags + + * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c: + Add function (gdk_draw_layout) to draw a pango layout. + + * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions + for getting Pango contexts for GDK. + + * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set() + + * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional + editing. + + * gtk/gtkentry.c: Hack in simple Hebrew input with direct + keysym => unicode translations. More languages can be added + here, but real input-method support is needed. + + * docs/Changes-1.4.txt: Added note about entry behavior. + + * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions + to set the reading direction for a widget and the global direction. + Add test which allows toggling the global direction. Two private + flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR) + + * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c + gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c + + * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango + + * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking, + underlining now handled by Pango. + + * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription + to RCStyle and Style. (Having both this and the old font name and GdkFont + is temporary.) + + * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added + convenience functions for creating contexts and layouts for widgets. + + * gtk/testgtk.c: Enhance label tests with multilingual labels. + +2000-05-29 Jonathan Blandford + + * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the + titles to be active, even if they aren't visible. + (gtk_clist_column_titles_passive): Ditto. + +2000-05-21 Nils Barth + + * gtkmenu.c: + * gtkmenu.h: + * gtktypeutils.h: Spelling/grammar fixes in comments. + +Tue May 23 12:25:07 CEST 2000 lupus + + * gdk/nanox/*.h: add missing header files. + +Fri May 19 11:52:59 2000 Tim Janik + + * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set + send_event to TRUE. + (gtk_drawing_area_size): queue a resize. + +Sun Mar 26 03:21:28 2000 Tim Janik + + * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing + the handlers, also invalidate them. bug nailed down by Karl Nelson + . + +Fri May 19 06:49:23 2000 Tim Janik + + * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle + "(nil)" foundries, patch from Grigorios Magklis. + + * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash + on non-available fonts, based on a patch by Grigorios Magklis + . + +2000-05-18 Elliot Lee + + * gdk/x11/gdkregion-generic.c: If a region does not have any + rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT + instead of GDK_OVERLAP_RECTANGLE_IN. + +2000-05-17 Jonathan Blandford + + * gtk/gtklayout.c (gtk_layout_map): Remove references to + OFFSCREEN, as it is no longer necessary. + +Wed May 17 10:52:12 2000 Owen Taylor + + * gtk/gtkcolorsel.c: Patch from David Santiago + to change things so that the + indicator of the active palette entry is done independently, + not via the focus, since it should always be visible. + +2000-05-17 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same + refcount leaks as in the X11 backend. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging + cosmetics. + + * gdk/win32/gdkwindow-win32.c: Similar changes as in X11 + backend. Add _gdk_windowing_window_destroy(). + + * gtk/gtkcolorsel.c: Include correct backend-specific header. + Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR + either, but these probably do exist on nanox?) + + * gtk/gtkhsv.c: Use G_PI (fresh from ) instead of M_PI + which isn't necessarily defined by . + + * gtk/gtkobject.c (gtk_object_init): Don't go up the class + ancestry past GtkObject. + + * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import + from DLL on Win32. + + * gtk/gtk.def: Update corresponding to recent changes. + + * gtk/makefile.{cygwin,msc}: Updates. + +Fri May 12 18:46:51 2000 Owen Taylor + + * docs/Changes-1.4.txt: A bit of editing. + + * gdk/gdkwindow.c (_gdk_window_clear_update_area) + * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function + to clear the update area for the window, and clear it + when hiding a window. + + * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore + if window destroyed. + + * gdk/gdkwindow.c (gdk_window_end_paint): Likewise. + + * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move + gdk_window_destroy() to the generic code, since there was a lot of + window-system-independent logic it in. Add a function: + + _gdk_window_destroy() + + to the internal API to destroy a window without unreferencing it. + Add a function: + + _gdk_windowing_window_destroy() + + That does the windowing-system-dependent part of destroying + the window. + +Fri May 12 11:07:41 2000 Owen Taylor + + * gtk/testgtk.c: Fix various memory leaks of pixmaps. + +Fri May 12 11:06:10 2000 Owen Taylor + + * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): + Make gtk_widget_shape_combine_mask() keep a reference count on + the pixmap since it keeps it around. + +Fri May 12 10:53:29 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount + leak. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount + leak with event filters. + +Thu May 11 14:29:44 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the + signal handlers with the right data arguments. (Fixes + some warnings when a widget was repeatedly set as a drag + destination.) + + * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the + window so we can avoid avoid setting the DND properties on the + toplevel window repeatedly. + +2000-05-13 Tor Lillqvist + + * gdk/win32/gdkwin32.h: Define more message types missing from + mingw headers. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY + call gdk_window_destroy_notify(). It was never called. This + probably meant that the GdkWindow was never freed. Thanks Owen for + noticing (!). + + * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark + window as destroyed before calling DestroyWindow(). DestroyWindow() + causes a call to the window procedure (gdk_WindowProc), which + calls gdk_event_translate(), which calls + gdk_window_destroy_notify(), which gets confused unless the window + is set as destroyed. + + * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename + this function to indicate it's win32 only. Put inside #ifdef + G_ENABLE_DEBUG. + + * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New + debugging function. (gdk_event_translate:) Add a default branch + that uses the above function to print debug messages with all + Windows messages symbolically. + + * gdk/win32/gdkprivate-win32.h: Declare it, and + gdk_win32_color_to_string, but only if G_ENABLE_DEBUG. + +Fri May 12 20:07:32 2000 Tim Janik + + * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a + public header file. + +Fri May 12 17:13:32 2000 Tim Janik + + * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition. + + * gtk/gtktext.c: made the adjustments no-construct args, simply + provide default adjustments. + (gtk_text_destroy): release adjustments. + + * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the + adjustment argument non-construct. + + * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here, + instead of in finalize. + (gtk_progress_get_text_from_value): + (gtk_progress_get_current_text): + (gtk_progress_set_value): + (gtk_progress_get_percentage_from_value): + (gtk_progress_get_current_percentage): + (gtk_progress_set_percentage): + (gtk_progress_configure): ensure an adjustment is present. + +Thu May 11 01:24:08 2000 Tim Janik + + * gtk/gtkcolorsel.[hc]: + * gtk/gtkcolorseldialog.[hc]: + * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain + their parent implementation, use bit fields for boolean values, don't + create unused widgets, usage of glib types, braces go on their own + lines, function argument alignment, #include directives etc. etc. etc.. + + * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h. + +Wed May 10 23:29:52 2000 Tim Janik + + * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips. + + * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state + of NULL. + + * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references + to freed data. + (gtk_combo_destroy): don't keep a pointer to a destroyed window. + + * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer + to NULL when the toplevel is getting destroyed. + (gtk_menu_set_tearoff_state): same here for the tearoff_window. + (gtk_menu_destroy): + (gtk_menu_init): store the information of whether we have to + readd the initial child ref_count during destruction in a new + GtkMenu field needs_destruction_ref_count. + + * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it + here, those reading: learn from my mistake! ;) + in order for set_?adjustment to support a default adjustemnt if + invoked with an adjustment pointer of NULL, the code read (pseudo): + if (v->adjustment) unref (v->adjustment); + if (!adjustment) adjustment = adjustment_new (); + if (v->adjustment != adjustment) v->adjustment = ref (adjustment); + now imagine the first unref to actually free the old adjustment and + adjustment_new() creating a new adjustment from the very same memory + portion. here, the latter comparision will unintendedly fail, and + all hell breaks loose. + (gtk_viewport_set_hadjustment): + (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL + after unreferencing it. + + * gtk/gtkcontainer.[hc]: removed toplevel registration + functions: gtk_container_register_toplevel(), + gtk_container_unregister_toplevel() and + gtk_container_get_toplevels() which had wrong semantics + anyways: it didn't reference and copy the list. + + * gtk/gtkwindow.c: we take over the container toplevel registration + bussiness now. windows are registered across multiple destructions, + untill they are finalized. the initial implicit reference count + users are holding on windows is removed with the first destruction + though. + (gtk_window_init): ref & sink and set has_user_ref_count, got + rid of gtk_container_register_toplevel() call. add window to + toplevel_list. + (gtk_window_destroy): unref the window if has_user_ref_count + is still set, got rid of call to + gtk_container_unregister_toplevel(). + (gtk_window_finalize): remove window from toplevel list. + (gtk_window_list_toplevels): new function to return a newly + created list with referenced toplevels. + (gtk_window_read_rcfiles): use gtk_window_list_toplevels(). + + * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange + adjustment a non-construct arg. + * gtk/gtkvscale.c (gtk_vscale_class_init): likewise. + * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise. + * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise. + + * gtk/gtkrange.c: added some realized checks. + (gtk_range_destroy): get rid of the h/v adjustments in the + destroy handler instead of finalize. remove timer. + (gtk_range_get_adjustment): demand create adjustment. + + * gtk/gtkviewport.c: made h/v adjustment non-construct args. + we simply create them on demand now and get rid of them in + the destroy handler. + (gtk_viewport_destroy): get rid of the h/v adjustments in the + destroy handler instead of finalize. + (gtk_viewport_get_hadjustment): + (gtk_viewport_get_vadjustment): + (gtk_viewport_size_allocate): demand create h/v adjustment + if required. + + * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the + gtk_widget_real_destroy () functionality. + (gtk_widget_real_destroy): reinitialize with a new style, instead + of setting widget->style to NULL. + +Fri May 5 13:02:09 2000 Tim Janik + + * gtk/gtkcalendar.c: + * gtk/gtkbutton.c: ported _get_type() implementation over to + GType, either to preserve memchunks allocation facilities, + or because Gtk+ 1.0 GtkTypeInfo was still being used. + + * gtk/gtkobject.[hc]: derive from GObject. ported various functions + over. prepare for ::destroy to be emitted multiple times. + removed reference tracer magic. chain into GObjectClass.shutdown() + to emit ::destroy signal. + + * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being + fundamental. + + * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init() + cludge. + + * gtk/gtksocket.c: + * gtk/gtkplug.c: + * gtk/gtklayout.c: + * gtk/gtklabel.c: + * gtk/gtkargcollector.c: + * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT + not being a fundamental anymore, and to work with the new + type system (nuked fundamental type varargs clutter). + + * gtk/*.c: install finalize handlers in the GObjectClass + part of the class structure. + changed direct GTK_OBJECT()->klass accesses to + GTK_*_GET_CLASS(). + changed direct object_class->type accesses to GTK_CLASS_TYPE(). + + * gtktypeutils.[hc]: use the reserved fundamental ids provided by + GType. made most of the GTK_*() type macros and Gtk* typedefs + simple wrappers around macros and types provided by GType. + most notably, a significant portion of the old API vanished: + GTK_TYPE_MAKE(), + GTK_TYPE_SEQNO(), + GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST, + GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST, + GTK_TYPE_ARGS, + GTK_TYPE_CALLBACK, + GTK_TYPE_C_CALLBACK, + GTK_TYPE_FOREIGN, + GtkTypeQuery, + gtk_type_query(), + gtk_type_set_varargs_type(), + gtk_type_get_varargs_type(), + gtk_type_check_object_cast(), + gtk_type_check_class_cast(), + gtk_type_describe_tree(), + gtk_type_describe_heritage(), + gtk_type_free(), + gtk_type_children_types(), + gtk_type_set_chunk_alloc(), + gtk_type_register_enum(), + gtk_type_register_flags(), + gtk_type_parent_class(). + replacements, where available are described in ../docs/Changes-1.4.txt. + implemented compatibility functions for the remaining API. + + * configure.in: depend on glib 1.3.1, use gobject module. + +Thu May 11 12:39:50 2000 Owen Taylor + + * TODO.xml: Various updates to current status. + +Wed May 10 20:25:04 2000 Owen Taylor + + * gtk.m4: Print out version when test succeeds. + +Wed May 10 16:38:17 2000 Owen Taylor + + * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch] + gtk/gtkhsv.[ch]: Color selection dialog rewrite. + + (Original triangle color selector from Simon Budig + , Cleaned up and rewritten for GTK+ by + from Jonathan, Havoc, and Federico. Merge into GTK+ done by David + Santiago ) + + * gtk/gtkcolorseldialog.[ch]: Split color selection dialog + out into a separate widget. + + * gtk/testgtk.c: Add some checkbuttons for toggling palette + and opacity controls. + +Wed May 10 16:08:09 2000 Owen Taylor + + * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that + snuck in prematurely. + +2000-05-07 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I + had deleted a ! operator by mistake, which caused + GDK_SELECTION_CLEAR events never to be generated, which caused + only the first copy to the clipboard from an gtkeditable to + actually cause a copy to the Windows clipboard. + +2000-05-06 Tor Lillqvist + + * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc + compilation, too. Current mingw gcc distributions include the + necessary headers. Also the necessary IIDs are now in mingw + headers/libraries, and own definitions unnecessary. + + More hacking on OLE2 DND, still doesn't work though, and thus + ifdeffed out. + + * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from + here, too. + +Sat, 6 May 2000 13:31:34 +0200 Paolo Molaro + + * gdk/nanox/*: nano-X port work in progress. + * gdk/simple.c: simple test for Gdk. + * README.nanox: notes about the port: read this first! + * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile + with nano-X. + +Fri May 5 11:18:47 2000 Owen Taylor + + * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move + gdk_window_clear() into common code, implement in terms of + gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was + not redirected to the backing rectangle. + +Wed Apr 26 01:53:23 2000 Owen Taylor + + * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into + EXTRA_DIST. It does not work well when the file that + everything depends on is not in the tarball. + +Tue Apr 25 22:20:41 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error + with recursion where process_updates() is called from + an expose handler. (GtkTextView is highly broken in + doing this, but it should work, so it is a nice test + case.) + +Sun Apr 23 23:39:18 2000 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully + handle the case where updates are queued during processing of + updates. + +Tue Apr 18 14:16:50 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume + window is on gdk_display - use that instead of segfaulting. + +Thu May 4 02:04:46 2000 Tim Janik + + * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are + broken and require an empty arg, give it to them. + +Fri Apr 28 19:34:32 2000 Tim Janik + + * gtk/gtklabel.h: indentation fixes. + +2000-05-02 Tor Lillqvist + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to + draw too narrow or too low arcs, they seem to fail, at least with + some display drivers. + + * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR. + + Large changes to the Win32 backend, partially made necessary by + the changes to the backend-independent internal + structures. Attempts to implement similar backing store stuff as + on X11. The current (CVS) version of the Win32 backend is *not* as + stable as it was before the no-flicker branch was merged. A + zipfile with that version is available from + http://www.gimp.org/win32/. That should be use by "production" + code until this CVS version is usable. (But note, the Win32 + backend has never been claimed to be "production quality".) + + * README.win32: Add the above comment about versions. + + * gdk/gdkwindow.c: Don't use backing store for now on Win32. + + * gdk/gdk.def: Update. + + * gdk/gdkfont.h: Declare temporary Win32-only functions. Will + presumably be replaced by some more better mechanism as 1.4 gets + closer to release shape. + + * gdk/makefile.{cygwin,msc}: Update. + + * gdk/win32/*.c: Correct inclusions of the backend-specific and + internal headers. Change code according to changes in these. Use + gdk_drawable_*, not gdk_window_* where necessary. + + * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not + our old DND. + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try + to interpret single characters as UTF-8. Thanks to Hans Breuer. + Use correct function name in warning messages. + + * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the + GSourceFuncs gdk_event_prepare and gdk_event_check. + (gdk_event_get_graphics_expose): Do implement, use + PeekMessage. Thanks to Hans Breuer. + (event_mask_string): Debugging function to print an GdkEventMask. + (gdk_pointer_grab): Use it. + + * gdk/win32/gdkfont-win32.c: The Unicode subrange that the + (old) book I used claimed was Hangul actually is CJK Unified + Ideographs Extension A. Also, Hangul Syllables were missing. + Improve logging. + + * gdk/win32/gdkgc-win32.c: Largish changes. + + * gdk/win32/gdkim-win32.c (gdk_set_locale): Use + g_win32_getlocale() from GLib, and not setlocale() to get current + locale name. + + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to + gdkwin32.h, similarily as in the X11 backend. + + * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix, + assignment was used instead of equals in if test. Thanks to Hans + Breuer. + + * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of + the X11 version. + + * gdk/win32/makefile.{cygwin,msc} + * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the + path to the Win32 headers that works also with the mingw compiler. + + * gtk/gtkstyle.c: Include . + +2000-04-26 Havoc Pennington + + * gtk/gtklabel.c (gtk_label_get_text): Add this function, + replacing the broken gtk_label_get () + +2000-04-15 Havoc Pennington + + * gdk/gdkdnd.h: clean up enum format, remove extra comma, + this keeps scanner scripts from getting confused. + + * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the + data, rather than void + +2000-04-15 Tor Lillqvist + + * gtk/gtkclist.c (gtk_clist_motion) + * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event + with is_hint FALSE, get x and y from the event. They used to be + used uninitialised. The Win32 backend never sends motion events + marked as hints. This for instance fixes the annoying file and + font selector behaviour in the Win32 version. + +2000-04-14 Tor Lillqvist + + * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and + gtk_private_n_signals variables, they are used by some software, + sigh. + + * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the + installation directory from the Registry, where the installer + should have put it. + +Fri Apr 7 17:19:27 2000 Owen Taylor + + * gdk/x11/Makefile.am: Fix problem with installation directory for + gdkx.h + + * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago + so that when selecting menus with the + mouse, the first item will not be selected, but when selecting + with an accelerator, or navigating left-right on a menubar with + the menus popped up, the first item will be selected. + +2000-04-05 Dan Damian + + * configure.in: Added "ro" to ALL_LINGUAS. + +Wed Apr 5 00:08:36 2000 Owen Taylor + + * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy + indentation. + + * Makefile.am (EXTRA_DIST): Fix typo. + + * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk + to catch gdkconfig.h + + * gtk/gtkitemfactory.c: Added FIXME. + +2000-03-30 Jonathan Blandford + + * gtk/gtkpaned.c (gtk_paned_get_position): oops. + s/return_if_fail/return_val_if_fail/g and add a return value. + +Mon Mar 27 20:56:14 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up + merge slipup. + + * gdk/gdkinput.h: Fix missing line from merge. + +Mon Mar 27 20:39:49 2000 Owen Taylor + + * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h + instead of gdkprivate.h. + +Sun Mar 12 15:19:24 2000 Owen Taylor + + * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix + parent class to correctly be GtkDialogClass. + +Thu Feb 24 23:58:21 2000 Owen Taylor + + * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of + toplevel windows and their immediate children by their parents, + since the size of toplevel windows is out of our immediate + control and we don't get any real benefit from trying to track + this size for clipping. + + * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag + for input_only windows. + + * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag + to fix some hacks and make sure that we don't try to set the + background of input only windows. + +Thu Feb 24 18:11:46 2000 Owen Taylor + + * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for + the _really_ internal stuff, and leave gdkprivate.h for the fake private + stuff that we've traditionally exposed. + + * gdk/**.c: Use gdkinternals.h where appropriate. + + * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h + not include gdkprivate-x11.h, move all stuff of conceivable public + interest into gdkx.h; keep all really private stuff in + uninstalled header gdkprivate-x11.h. + + * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to + image->image_put on windows through a new function _gdk_window_draw_image() + to allow us to do backing store for images. (Sort of ugly) + + * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics + contexts locally so that we can offset them properly when drawing + onto backing pixmaps. + + * gdk/gdkinput.h: Reindented + + * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background + pixmap or color for the window, so we can properly initialize + our double-buffer pixmaps, and also so that we temporarily set + a background of None while scrolling. + + * gdk/gdkregion.h: Revise region boolean operators to have an + interface that is actually convenient - switch from creating new + regions on every op, to "methods" that modify existing regions + (A = A OP B). 3 argument forms which allow dest == src, would also + be possible, but the current interfaces seem to map nicely + onto what needs to be done. (There is quite a lot of region + code in GDK now.) + + * gdk/gdkregion.h: Add constructor from rectangle and a copy + operator. + + * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c, + gdkpoly-generic.h: Copy region code from Xlib, switch it over + to 32 bit coordinates, modify it to be mostly GTK+ style + and to have interfaces that match gdkregion.h. + + * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for + double-buffered drawing. gdk_window_begin_paint_{rect,region}() + create a backing pixmap and redirect all drawing to + that backing pixmap until a matching gdk_window_end_paint(). + + * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c: + Create a special drawable class for GtkWindow's that + redirects the drawing to the backing pixmap as necessary + and then calls the real operations in _gdk_windowing_window_class. + + * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c: + Store invalid region for each window. Generate expose events for invalid + region in an idle. This replaces both the expose compression + and the redrawing queuing in GTK+. It is both more efficient and + simpler than either one individually and far more so then the + combination. + + * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h: + Emulate 32 bit coordinates for windows with 16 bit coordinates + by offsetting drawing, guffaw scrolling techniques and + mapping/unmapping child windows as necessary. + + * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes, + where, when invalid regions are processed, the region is stored, + and if expose events come in that are detectably duplicate + the processed exposes (by comparison of event serial numbers), + the stored region is subtracted out of those exposes. + + * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of + regions newly exposed when scrolling or resizing windows. + This, combined with forcing processesing of queued invalidated + regions, gives nice flicker-free scrolling. + + * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of + invalidated regions after every scroll. + + * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate + emulation in GDK. Its, for all practical purposes just a + GtkViewport/GtkFixed hybrid now. + + * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11 + (16-bit) structures as necessary instead of just casting. + + * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code + in terms of the structures from gdkregion-generic.c, using appropriate + offsets from GDK to X11 coordinates. Cache clip mask and + origin and ts origin locally and only flush to the server + when drawing, to avoid constantly setting and resetting these + values when offsetting GC's for scrolling and backing pixmaps. + + * gdk/x11/gdkinput-x11.c: Fix leak of axes structures. + + * gtk/gtkcontainer.c: Call process_all_updates at end + of resizing to reduce flicker. (Avoids having redraw + lag arbitrarily behind resize under some circumstances) + + * gtk/gtkentry.c: Remove old backing store code, and simply take + advantage of the new backing store capabilities of GDK. + + * gtk/gtkmain.c: Simple implementation of widget backing + store - simply push a paint while handling each expose. + (Should really be configurable widget for widget.) + + * gtk/gtkwidget.c: Remove all the old complicated redraw + code, and simply invalidate the GDK windows from + gdk_window_queue_clear(), etc. (Sigh, so much carefully + debugged complexity ... gone to the winds.) + + Remove all the code for suppressing expose events while + resizes are pending; this isn't needed since the invalid + areas won't be processed until after the resizes are + processed, since they are in a lower priority idle. + +Thu Feb 24 15:37:41 2000 Owen Taylor + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width + and height of dest rectangle for non-intersecting rectangles. + +Sun Feb 20 16:47:31 2000 Owen Taylor + + * gtk/gtkwidget.h: Make GtkAllocation just a typedef + for GdkRectangle. + +Sun Feb 20 11:27:00 2000 Owen Taylor + + * gdk/gdk{events,image,private,types,window}.h + gdk/x11/gdkinputprivate.h: Change all coordinates + from int16 to int. Also, Change width and height from + unsigned to signed to avoid all the stupid C + signedness bugs. + +Sat Feb 19 12:01:53 2000 Owen Taylor + + * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): + Use gdk_drawable_get_depth instead of gdk_drawable_get_visual. + Add some more detailed checking. + + * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth): + New function to retrieve the depth of a drawable. + + * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth + field, reorder fields to save memory. + +Mon Dec 13 14:06:03 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion + of the background image instead of scaling the background down to + a line. + + * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious + which temporarily set slider to wrong size. + + * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to + queue_clear(). + +Wed Nov 17 18:36:05 1999 Owen Taylor + +2000-03-23 Jonathan Blandford + + * gtk/gtkpaned.c (gtk_paned_get_position): add getter. + +2000-03-17 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c: Remove the #ifndef + USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage. + + * gdk/win32/gdkfont-win32.c + * gdk/win32/gdkproperty-win32.c + * gdk/win32/gdkselection-win32.c + * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are + now declared such. + +Wed Mar 15 02:59:38 PST 2000 Manish Singh + + * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic + +Mon Mar 13 18:37:55 2000 Owen Taylor + + * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty() + is called without trapping X errors. + +Fri Feb 25 10:48:53 2000 Owen Taylor + + * gtk/gtkrc.*: Fix problem where stray '"' characters found their + way into the fontset lists. + +Tue Feb 22 08:52:52 2000 Tim Janik + + * gtk/gtkthemes.h: add extern "C" scope. + +Mon Feb 21 20:16:42 2000 Lars Hamann + + * gtk/gtkclist.c: applied patch from Guy Harris + to make appends to the list constant. (gtk-guy-990901-0.patch) + +Mon Feb 14 22:50:10 2000 Tim Janik + + * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal() + for the typename hash table. + +Mon Feb 14 15:01:23 2000 Owen Taylor + + * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks + to make sure we never divide by zero. + (Problem pointed out by Michal Jaegermann ) + +Mon Feb 14 12:29:38 2000 Owen Taylor + + * gtk/gtkfontsel.c: Apply patch from + SHIRASAKI Yasuhiro to make font selector work a little + better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.) + + Also, some cleanups in atom handling. + +Sun Feb 13 08:02:21 2000 Tim Janik + + * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer, + not GtkWidget. + +Fri Feb 11 02:19:32 2000 Tim Janik + + * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): + * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): + * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some + more guint wrap-around bugs before going to bed. + +Thu Feb 10 16:16:35 2000 Tim Janik + + * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against + guint wrap arounds in allocation.width. + + * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking + process untill we fit the allocation given. + +Tue Feb 8 09:38:29 2000 Tim Janik + + * gtk/gtkwidget.c: + (gtk_widget_unrealize): guard widget access with ref/unref + around signal emission. + (gtk_widget_hide): same here, but also check its destroyed + state before queueing a resize. + +Tue Feb 8 03:05:55 2000 Tim Janik + + * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead + of gtk_default_insensitive_bg as insensitive base color. + + * gtk/gtktext.c (gtk_text_style_set): set the background color according + to the widget's state. + (gtk_text_realize): same here. + (gtk_text_state_changed): same here. + (draw_bg_rect): compare background color against base[] from + GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL. + +Mon Feb 7 04:01:55 2000 Tim Janik + + * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when + grabs are active, unless a delete event is send to the toplevel + of the currently grab holding widget. + +Sun Feb 6 10:13:15 2000 Owen Taylor + + * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove + debugging g_print's. + +Fri Feb 4 15:54:54 2000 Owen Taylor + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't + ever make the scrolled-window requisition ever depend on the + visibility state of the scrollbars for the AUTOMATIC policy. + This breaks the GTK+ requisition model, and causes loops. + +Fri Feb 4 15:09:12 2000 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for + the default font to avoid problems with XFree86-4.0 where the + default charset is iso10646-1, not iso8859-1. + +Thu Feb 3 14:58:48 PST 2000 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release) + + * gtk/Makefile.am: minor cosmetic consistency tweak + +Thu Feb 3 14:46:01 2000 Owen Taylor + + * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set + the activate_time to 0, so that we handle a quick + press/release press/release properly and don't suppress + the second release. (Red Hat bug #7545) + +Wed Feb 2 22:25:17 2000 Tim Janik + + * gtk/gtkctree.c (row_delete): + (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy + bugs with destruction notifier, *always* update internal + structures *before* calling user code. + +Sun Jan 30 20:10:52 2000 Lars Hamann + + A few more fixes for bug #5487, #2051, #2677. + * gtk/gtkclist.c : + (gtk_clist_button_press): Reset clist->anchor to -1 if event->type is + not GDK_BUTTON_PRESS. + (resync_selection): resync only if selection_mode is + GTK_SELECTION_EXTENDED + * gtk/gtkctree.c (resync_selection): same here + +Sun Jan 30 12:29:20 2000 Owen Taylor + + * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for + gdk_drag_get_selection() and gtk_menu_detach(). + + [ From Jeroen Ruigrok/Asmodai ] + +Sat Jan 29 10:11:56 2000 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_size_request): + page->tab_label can be NULL. + +2000-01-25 Havoc Pennington + + * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative + arg is boolean + + * gdk/gdkselection.c (gdk_selection_owner_set): return boolean + + * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean + + * gdk/gdkproperty.c (gdk_property_get): return boolean + + * gdk/gdkinput.c (gdk_input_set_mode): return boolean + + * gdk/gdkim.c (gdk_im_ready): return boolean + + * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg + + * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild + glib clash, should fix glib) + + * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg + (gdk_get_show_events): return gboolean, and canonicalize + to TRUE/FALSE + + * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the + colormap is private + (gdk_colors_alloc): gboolean whether to be contiguous + (gdk_color_equal): return gboolean since we are a predicate + and not a qsort() (this looks semi-wrong due to glib breakage, + IMO glib should be fixed) + + * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg + (gdk_get_use_xshm): return gboolean + (gdk_pointer_is_grabbed): return gboolean + + * gdk/gdk.h: Change prototypes to match all the above changes, + and re-run egtk-format-protos as required. + +Fri Jan 28 12:28:17 2000 Owen Taylor + + * gtk/gtkctree.c (resync_selection): + * gtk/gtkclist.c (resync_selection): + + Return immediately if clist->drag_pos < 0. This is a workaround + for the corrupt state that the clist gets into when a + GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press(). + + Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel. + + * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized + variable from recent commit. + +Thu Jan 27 15:22:09 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit. + +Thu Jan 27 18:00:55 2000 Tim Janik + + * gtk/Makefile.am: prefix all autogenerated source that get build in + $(srcdir) with $(srcdir)/, so make doesn't assume they got generted + in builddir. since we subsequently cd into srcdir for autogeneration, + the paths have to be stripped from the target file names, thusly we + use $(@F) as target names now. + put a comment about configure.in's --disable-rebuilds option, + which can be used for non-writable source directories, for development + setups though, srcdir has to be *writable*. + +hu Jan 27 00:15:03 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions): + Finish the job of allowing event to be NULL. + (Fixes bug #4283, reported by Chris Blizzard) + + * gtk/gtkentry.c (entry_adjust_scroll): When calculating + things so that the cursor appears on screen, properly + take into account INNER_BORDER. + (Fixes bug #4754, reported by Antonio Campos) + +Wed Jan 26 23:12:28 2000 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_map): Don't + show the tab_label unless it itself is visible. + + gtk/gtknotebook.c (gtk_notebook_size_request): + Do a better job of making sure that the visibility + of the tab label corresponds to whether it should + be mapped or not. + +Wed Jan 26 21:17:03 2000 Owen Taylor + + * gtk/gtkoptionmenu.c (gtk_option_menu_position): + Use the requisition, not the allocation, since the + allocation has not necessarily been computed yet. + (Pointed out by Eugene Osintsev) + +Wed Jan 26 19:44:25 2000 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_new): Dont' set + style/base[GTK_STATE_INSENSITIVE] both to + gtk_default_insensitive_bg! + (Bug #2187, reported by Jonathan Blandford) + + * gtk/gtkaccelgroup.c (gtk_accelerator_valid): + Add Alt_L, Alt_R to list of invalid accelerators. + (Bug #3736, reported by Vlad Harchev) + +Wed Jan 26 19:01:56 2000 Owen Taylor + + * gtk/gtkfilesel.c (open_ref_dir): Fix several + bugs which occured after an attempt to open + invalid home directory left cmpl_state->reference_dir == NULL. + + - completion on files in home directory didn't work + - completion on an empty string caused segfault + + (Bug #3678, reported by Steve Ratcliffe) + + * gtk/gtkscale.c (gtk_scale_get_value_width): Fix + cut and paste error that was causing scales to + be incorrectly positioned. + (Bug #2956, + patch from Steve Ratcliffe ) + +2000-01-27 Shirasaki Yasuhiro + + * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs + when checking for dcgettext, if we've found we needed + it for dgettext. ++ +Wed Jan 26 18:06:07 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore + queue_clear on NO_WINDOW widgets during a reparent, + since at that point the window and widget heirarchies + are out of sync. This stops crashing in some cases + (the scrolled window reparent test, for instance), and + _probably_ won't cause drawing errors. + + * gtk/testgtk.c: Make the reparenting-a-scrolled-window + test do what it was supposed to do and be robust against + window closings, etc. (Bug #2443) + +Wed Jan 26 16:56:54 2000 Owen Taylor + + * gtk/gtkentry.c: Fix return values on mouse events. + (Bug #2686, Sky ) + + * gtk/genmarshal.pl: Fix up handling of FOREIGN. + (pointed out by George Lebl) + + * gdk/gdkcolor.c (gdk_color_copy): Made const-safe. + (From Ettore Perazzoli ) + +Mon Jan 24 10:44:48 2000 Owen Taylor + + * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle + clicks between rows or outside calender area correctly. + (Patch from Damon Chaplin) + + * gtk/gtkclist.c (gtk_clist_set_row_data_full): + * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): + Call destroy function when overwriting existing data. + (Pointed out by Damon Chaplin) + +Tue Jan 25 09:55:41 2000 Owen Taylor + + * gdk/gdk.c: Remove useless #include of , + which was causing problems on various systems with Xmu. + This hasn't been needed for a very long time. + (Fixes #1185 3167) + +Sun Jan 23 22:27:36 2000 Owen Taylor + + * gdk/gdki18n.h: Include when defining + gdk_isw* in terms of is* as a fallback. + (Bug #4106 - Dan Winship ) + +Sun Jan 23 22:12:36 2000 Owen Taylor + + * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't + realize the widget when it is size allocated! + (old, old bug) + + * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed): + Removed unused call to gdk_window_get_size() that + showed up when the above was fixed. + +Sat Jan 22 15:44:30 2000 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_reparent): Correctly + fix up widget->window when the widget is a + NO_WINDOW container widget. + +Sat Jan 22 12:40:48 2000 Owen Taylor + + * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite + to account for the fact that feof() does _not_ + return TRUE on errors, and thus avoid infinite loops + when trying to use gdk_pixmap_create_from_xpm() + on unreadable values. + +Fri Jan 21 18:32:43 2000 Owen Taylor + + * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/. + +Fri Jan 21 16:24:08 2000 Owen Taylor + + * gdk/gdkgc.c (gdk_gc_set_dashes): Change from + gdk_gc_set_dashes to take gint8 instead of gchar to + make it clearer that it is _not_ a NULL terminated string. + + * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c + gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch] + gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string + arguments. + +Thu Dec 30 04:51:05 1999 Tim Janik + + * gtk/gtkvscale.c (gtk_vscale_pos_background): + * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the + background size relative to our allocation, guard against small + allocations, we may have not yet been size allocated. + +Thu Dec 2 10:59:14 1999 Owen Taylor + + * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3, + not just version == 3. We implement all 3 + most of 4 - + (we don't support matching text/plain;charset=iso-8859-1 + to a dest that expects text/plain). We'll still advertise + 3 to be safe, but any client implementing version >= 3 + must interoperate with 3. + +Tue Mar 14 11:53:31 2000 Owen Taylor + + * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground, + background and gc members, add a warning in gtk_tooltips_set_color() + indicating that this function is deprecated. + +Thu Mar 9 22:10:56 GMT 2000 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update: + - Minor cleanups (Emmanuel, me) + - New questions: + I need to add a new signal to a GTK+ widget. Any idea? (timj) + How can I retrieve the text from a GtkMenuItem? (timj) + How do I validate/limit/filter the input to a GtkEntry? (me) + Memory does not seem to be released when I free the list + nodes I've allocated (timj) + +2000-03-07 Tor Lillqvist + + * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes: + (gdk_win32_gdi_failed) New function for reporting errors from GDI, + for which it is no use to call GetLastError onWin9x. + (gdk_other_api_failed) New function, for general error + reporting without calling GetLastError. + (gdk_win32_api_failed) OTOH, this function always calls + GetLastError. (gdk_win32_last_error_string) Remove this function, + GLib has the equivalent now. + + * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to + call them with function name, file name and line number in the + arguments. + + * gdk/win32/*.c: Use the new macros for reporting errors from GDI + functions. + + * gtk/gtk.def: Add some missing entry points. + + * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and + gtk_paned_set_gutter_size, which don't exist any longer, as void. + + Fixes by Hans Breuer: + + * gdk/makefile.msc: Update for debugging. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake + implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or + PS_DASHDOTDOT or PS_DASH styles depending on the number of entries + in the dash_list. + + * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in + the x11 backend. + + * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro. + + * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h. + +2000-03-04 Tor Lillqvist + + * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store + just pixel value of background colour. + + * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function + containing code snippet previously duplicated in a couple of + places. + + * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use + gdk_colormap_color. + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate + GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate + events for autorepeated Shift, Control and Alt keys. Use + gdk_colormap_color. + + * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the + pointer is inside the window the cursor of which we are setting, + call SetCursor immediately. + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: If we don't have the build number stamp + file, use zero. + + * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and + gtk_paned_set_gutter_size as empty. + + * gtk/gtk.def: Remove gtk_paned_set_gutter_size. + +Tue Feb 29 13:10:00 GMT 2000 Tony Gale + + * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h + gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c + docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml + docs/gtk_tut.sgml docs/gtk.texi TODO: + + Spelling/grammar fixes from Martin Buchholz + +Sat Feb 26 11:46:25 GMT 2000 Tony Gale + + * gtk/gtkcalendar.c: Implement num_marked_dates, + and don't emit mutiple day_selected signals on + month_prev. + +2000-02-25 Jonathan Blandford + + * docs/make-todo (lineno): let title and logo be configurable so + that GNOME can use this script too. + + * TODO.xml: added logourl and a title + +Fri Feb 25 11:12:00 2000 Owen Taylor + + * TODO.xml: Added some UI items, and an explanatory + comment at the top of the file. + +Thu Feb 24 09:07:28 2000 Tim Janik + + * TODO.xml: some updates, added abunch of new entries. + a note for those fiddeling with this file, when done + with it, invoke: + $ ./docs/make-todo TODO.xml >/dev/null + and correct output errors before comitting changes. + +Wed Feb 23 22:59:50 2000 Owen Taylor + + * TODO.xml: Added XML-structured TODO file. + * docs/make-todo: python script to turn TODO.xml into + pretty XML output. + +2000-02-23 Jonathan Blandford + + * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to + the function to let it draw the seven dots, instead of the old, + much maligned, method. + (draw_dot): New function to draw a dot. + + * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation + to draw the handle inside the border width as opposed to outside. + Use paint function instead of gdk_draw_point. + + * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation + to draw the handle inside the border width as opposed to outside. + Use paint function instead of gdk_draw_point. + + * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu): + Change indenting to be more GTK like. + +Wed Feb 23 10:54:14 GMT 2000 Tony Gale + + * docs/gtk_tut.sgml: New section on GtkCalendar + * examples/calendar: Update example code + +Tue Feb 22 13:54:12 GMT 2000 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +2000-02-19 Anders Carlsson + + * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE + to prevent the scroll event to be propagated upwards. + +Fri Feb 18 14:37:29 2000 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove + OwnerGrabButtonMask from button entries for + GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE. + + * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL + to the event mask (which will result in button/press release + being added to the event mask on Unix) so scrolling works + for layouts in scroll windows. + + * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK. + + Patch from Anders Carlsson to add + a scroll event. + + * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel + scrolling to the "Test Scrolling" part of testgtk. + + * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal. + + * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched + it against GDK_SCROLL. + + * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new + way of mouse wheel scrolling. + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise. + + * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise. + + * gtk/gtkmain.c: Removed previous mouse wheel hack. + + * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in + gdk_event_mask_table. + + * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added + GdkEventScroll handler. + + * gdk/gdkevents.h: Added GdkEventScroll structure. + +Thu Feb 17 17:10:12 2000 Owen Taylor + + * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford + and Anders Carlsson to change the Paned widgets so that they + can be dragged from anywhere along the length. Also change + the way that this is drawn to make this apparent. + + * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch + from George Lebl to check that option_menu->menu is present + before getting history. + +2000-02-14 Tor Lillqvist + + * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments + before the assertion for non-NULL segment list. + + * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values): + Seems that pattern brushes *must* be 8x8 pixels! At least on my + machine, but it might be display driver dependent. Sigh, so make + sure the stipple is that size. Does Windows suck or what? + + * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few + places. + +2000-02-13 Havoc Pennington + + * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init + refcount to 1 + (gdk_cursor_new): init refcount to 1 + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1 + +2000-02-13 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter + so that we don't have to do unnecessary settings to the HDC. + + * gdk/win32/gdkdrawable-win32.c + * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of + gdk_gc_predraw. + + * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where + the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct + GDI paths, call WidenPath to get the outline of the stroken path, + and then fill the outline (with the brush that was built from the + stipple). + + * gdk/win32/gdkgc-win32.c: Factor out common code from + _gdk_win32_gc_new and gdk_win32_gc_set_values into + gdk_win32_gc_values_to_win32values. Use correct colour for + SetBkColor() (Until now the code actually used a random colour in + the call to SetBkColor()... but that didn't show up as not many + GDI APIs use the background colour. Pattern (opaque stippled) + brushes do.) + + * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string, + gdk_win32_api_failed): New functions for error logging. + + * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro + WIN32_API_FAILED to call them, passing function or file name and + line number. + + * gdk/win32/*.c: Use the WIN32_API_FAILED macro. + + * gdk/win32/gdkprivate-win32.h: Store just the pixel values from + GdkColor for foreground and background in GdkGCWin32Data. + + * gdk/makefile.cygwin: Link in the resource object separately. + + * gdk/win32/rc/gdk.rc + * gtk/gtk.rc (New file) + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Update build number in DLLs automatically, + as in GLib. + +Sun Feb 13 08:54:45 2000 Tim Janik + + * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/. + * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): + * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): + * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the + parameters given and cursor->ref_count. coding style fixups. + + * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer, + not GtkWidget. + + * gtk/*.h: applied patch from Mathieu Lacage to + fix up widget macros and add _GET_CLASS() variant. + + * gtk/*.c: some GtkType fixups. + +2000-02-09 Tor Lillqvist + + * gdk/win32/gdkproperty-win32.c + * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW + were reversed. + +2000-02-04 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use + g_filename_to_utf8 to convert the font names Windows gives us from + whatever is the default codepage to UTF-8. + (gdk_font_load_internal) Use g_filename_from_utf8 for conversion + in the other direction. + + * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste + error in debugging output. + +2000-02-02 Tor Lillqvist + + * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width + and height parameters to gdk_window_clear_area(). Not minus one. + +Wed Feb 2 11:58:05 2000 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity + checks if the widget passed to gtk_drag_get_data() was not the + dest widget. + +2000-02-01 Tor Lillqvist + + * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and + g_filename_from_utf8 functions (which were added a moment ago to + GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed + size buffers. + + gtk_file_selection_get_filename returns the filename in the C + runtime encoding. It calls g_filename_from_utf8, but copies the + returned string to a static buffer, which is returned. I think + this is better than returning the result from g_filename_from_utf8 + directly, which would mean all apps that use it would have to free + the return value. Or should this function care about this issue at + all? Maybe a new function with clearly defined semantics. + + * gtk/gtkfilesel.h: Add comment about + gtk_file_selection_get_filename returning the filename in the C + runtime's encoding. + + * README.win32 + * gdk/gdk.def + * gdk/makefile.{cygwin,msc} + * gtk/gtk.def: Updates. + + * gdk/gdkcursor-win32.c: Initialise refcount. + +2000-01-31 Yuan-Chung Cheng + + * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS. + +2000-01-30 Havoc Pennington + + * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of + destroy + + * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned + + * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then + implemented in platform-specific code + + * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c + + * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an + underscore in front + + * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy): + put an underscore in front + + * gdk/gdkcursor.c: new file, implements + gdk_cursor_ref/gdk_cursor_unref + + * gdk/gdkcursor.h: Refcount GdkCursor + + * gdk/gdkcompat.h (gdk_cursor_destroy): compat + +2000-01-29 Tor Lillqvist + + * gdk/gdkwindow.h + * gdk/gdkpixmap.h: Remove prototypes for renamed functions. + +Tue Jan 25 11:43:21 2000 Owen Taylor + + * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix + structures to properly inherit from GtkWidget not GtkBin. + +Sun Jan 23 20:28:24 2000 Owen Taylor + + * gtk+.spec.in: Added lib/gtk+/include/* to %files + (bug #5178 - Peter Wainright) + + * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h + so that it will be installed. + (bug #4889 - "david d `zoo' zuhn" ) + +Fri Jan 21 16:29:28 2000 Owen Taylor + + * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument + for the GtkStyleClass vtable const. + + * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc + take a const string argument like GtkTranslateFunc. This will + require changes in use code. + +2000-01-19 Tor Lillqvist + + * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct + semantics (to mimic the X11 backend, which just calls XClearArea) + is to check for zero width (and height), and in that case use the + window's width minus x (height minus y). This fixes for instance + some redraw problems with gtkclist, which were easily noticeable + in the gtk file selection widget. + + (gdk_window_new): Don't set WS_EX_TOPMOST for dialog + windows. + +2000-01-13 Tor Lillqvist + + * configure.in + * gdk/Makefile.am + * gdk/x11/Makefile.am + * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright + (bug #5177). + * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown + out later. + +2000-01-09 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore + WM_MOVE for iconified or invisible windows. This fixes various + problems when minimising windows. Thanks to Bernd Herd. + +2000-01-05 Tor Lillqvist + + * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the + backend's draw_lines method, not draw_points. + +2000-01-02 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from + before Owen's reorganisation: Don't have queued_events and + queued_tail statics in this file, but use gdk_queued_events and + gdk_queued_tail. This makes exposure event compression work again. + + (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't + seem to be needed? + +1999-12-30 Tor Lillqvist + + * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include + gdkkeysyms.h to get the GDK_* keysym constants that are needed by + gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case() + doesn't do anything. + + * gdk/gdk.def: Add gdk_xid_table_insert. + + * gdk/win32/gdkprivate-win32.h + * gdk/win32/gdkevents-win32.c + * gdk/win32/gdkinput-win32.c + + * gdk/win32/gdkwindow-win32.c: Remove the superfluous + extension_events field in the GdkWindowWin32Data struct. Use only + the extension_events field in GdkWindowPrivate. Previously one was + set, and the other one tested, which broke tablet + functionality. Thanks to Keishi Suenaga for pointing this out. + +1999-12-18 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents): + When handling a single character (text length == 1), don't handle + it as if it was UTF-8. + +1999-12-11 Tor Lillqvist + + * Makefile.am: Distribute README.win32. + + * gdk/Makefile.am + * gdk/win32/Makefile.am: Distribute Win32 files. + + * gdk/makefile.msc: New file. + + * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement + after label). + + * gdk/gdkprivate.h: Must mark also gdk_error_warnings and + gdk_error_code as GDKVAR, as they are referred outside GDK. + + * gdk/win32/makefile.msc: Update. + + * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More + tweaks. Check only if at least one of those Unicode subrange bits + we care for is set. If no code page bits are set, guess (wildly) + based on the charset. + + * gdk/win32/gdkinput-win32.c: Remove debugging leftover. + + * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is + non-NULL. + + * gtk/gtkdnd.c + * gtk/gtklayout.c + * gtk/gtkplug.c + * gtk/gtkselection.c + * gtk/gtksocket.c + * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as + appropriate. There must be a cleaner way to handle this? + + * gtk/gtkrc.c: Must include windows.h on Win32. + + * gtk/testgtk.c: No need to include gdkx.h. + + * gtk/makefile.cygwin: Correct invokation of genmarshal.pl. + +1999-12-07 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now, + the rbearing is set to the same as the width, but this should be + fixed. + +1999-12-06 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New + function. If Windows doesn't tell us what Unicode subranges a font + covers, guesstimate based on the codepages it covers. This will + hopefully help those Windows versions or fonts that don't give us + any useful Unicode subrange information with GetTextCharsetInfo. + Call this function in gdk_font_load_internal. + + * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc + minor changes. + +Fri Dec 3 14:09:50 1999 Owen Taylor + + * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history): + New function, long needed. + +Wed Dec 1 22:35:43 1999 Owen Taylor + + * gdk/gdkproperty.h x11/gdkproperty.c: Change + only_if_exists argument of gdk_atom_intern to + bool. + +1999-11-25 Tor Lillqvist + + * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): + Fix two copy&paste errors. + + * gdk/makefile.cygwin: Also rebuild DLL when the static archive in + win32 has changed. + + * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the + GdkWin32SingleFont struct. + + * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode + subranges of loaded fonts. Clear font signature first, in case + GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have + ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte. + + * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw): + Unoffset clip region. + +1999-11-23 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_event_translate): set + event->any.window before calling filter functions. + +Fri Nov 19 10:34:41 1999 Owen Taylor + + * gtk/gtkgamma.h: Adapt cast macros to standard. + +[ Merges from 1.2 ] + +Tue Nov 16 10:15:54 1999 Owen Taylor + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_path): + If translation does not include a '/', use entire + translation instead of crashing. + +Sun Oct 31 22:21:11 1999 Tim Janik + + * docs/gtk_tut.sgml: + s/gtk_accel_group_attach/gtk_window_add_accel_group/. + +Sat Oct 30 09:09:09 1999 Owen Taylor + + * gtk/gtkselection.c (gtk_target_list_remove): Use + g_list_remove_link, not g_list_remove. + + [ From Geert Bevin ] + +Sun Oct 24 07:41:40 1999 Tim Janik + + * gtk/gtkclist.c (real_undo_selection): commented out g_print() + statement upon unselection (how the heck did that slip in?). + +Sat Oct 23 03:03:08 1999 Tim Janik + + * gtk/gtktext.c (gtk_text_freeze): + (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling + in frozen state (and aparently crashes). patch provided by Anders + Melchiorsen . + +Sat Oct 23 02:53:20 1999 Tim Janik + + * fix insensitive default/focus widget activation, + reported by Matt Goodall . + + * gtk/gtkwindow.c (gtk_window_key_press_event): + (gtk_window_activate_default): + (gtk_window_activate_focus): + return handled=FALSE for actiavtion of insensitive default + widgets. return handled=TRUE for activation of insensitive + focus widgets. don't activate in either case. + +Tue Oct 19 09:55:08 1999 Owen Taylor + + * gtk-config.in (lib_gtk): Switch order of @x_cflags@ + and $glib_cflags to match library order and in the + theory that an old version of GLib is more likely to + be in the include directory for X then vice-versa. + (Bug #2776) + +Tue Oct 19 09:46:49 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE + to determine the locale for fontsets, not LC_MESSAGES; + the user may want English messages with a handling + for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR + will still be broken) (Bug #2891) + +Tue Oct 19 20:36:42 1999 Changwoo Ryu + + * gtk/gtkrc.ko: Fixed the wrong number of "*"'s. + +Tue Oct 19 12:15:13 1999 Changwoo Ryu + + * gtk/gtkrc.ko: Changed the Korean default fontset. + +Fri Oct 8 02:32:47 1999 Owen Taylor + + * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug + where when scrolling to the left or top double exposes + were done, causing major slowdowns. + +Thu Oct 7 18:31:55 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset + names to lowercase and alphanumeric, before looking + them up. + + * gtk/Makefile.am: Install codeset variant gtkrc files + with normalized names. + +Thu Oct 7 22:52:42 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even + popup menus when the menu is already visible, but its parent + is still hidden, (happens after tornoff window got hidden). + +Thu Oct 7 11:09:55 1999 Owen Taylor + + * gtk/Makefile.am (install-data-local): Fix + a typo where gtkrc.vi_VN.tcvn5712 wasn't getting + deleted, causing error messages on install. + +Thu Oct 7 11:03:06 1999 Owen Taylor + + * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw + the handle as well, since we now sometimes ignore + exposes on the handle while resizing. + +Wed Oct 6 18:02:31 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid + extra g_free introduced in one of the last one or two + commits. + +Wed Oct 6 16:38:36 1999 Owen Taylor + + * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files + consistent, put each style that a gtkrc.* file creates + in a unique namespace, remove old files before installing. + +Wed Oct 6 14:31:16 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when + gtk_rc_init is called multiple times. (Yes, people who + do that have bugs in their code.) + +Tue Oct 5 11:36:57 PDT 1999 Manish Singh + + * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf. + Remove it since it's generated by the Makefile anyway + +Tue Oct 5 02:43:41 1999 Owen Taylor + + * gdk/gdkinputcommon.h (gdk_input_device_new): Free + device->info.axes for core pointer. + +Thu Sep 30 13:55:25 1999 Owen Taylor + + * gtk/testgtk.c (destroy_idle_test): Rename idle to + idle_id, to deal with obsolete, broken C libraries. + +Mon Sep 27 02:50:15 1999 Owen Taylor + + * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in + allocation->x/y twice! + + * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough() + consistent with gtk_vscale_pos_trough(). + +Sun Sep 26 19:44:34 1999 Owen Taylor + + * gtk/gtkcontainer.c (gtk_container_queue_resize): We may + be queueing a resize on a toplevel container between + the time we show it and when we map it. So, we need + to test GTK_WIDGET_VISIBLE() for toplevels, and only + use GTK_WIDGET_DRAWABLE() for child windows. + +Thu Sep 23 16:41:03 1999 Owen Taylor + + * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS + (fixes bug #2144) + +Fri Sep 24 00:51:45 1999 Tim Janik + + * gtk/gtkcontainer.c (gtk_container_queue_resize): check for + container DRAWABLE (instead of VISIBLE), so we don't queue + resizes on non-toplevel containers. + +Sun Sep 19 18:13:31 1999 Owen Taylor + + * gtk/gtkselection.[ch]: Make the data argument + const guchar *. + +Sat Sep 18 21:27:40 1999 Owen Taylor + + * gtk/gtkwindow.c: Try to behave sensibly if + the focus widget is the window itself. (Should + we allow this at all?) + +Fri Sep 17 09:57:15 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_set_sensitive): + * gtk/gtknotebook.c (gtk_notebook_set_scrollable): + * gtk/gtknotebook.c (gtk_notebook_set_show_border): + * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args + in prototypes and implementations consistent (Tomas Ogren). + + * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag + before the widget is unparented (reported by damon). + + * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char, + since we provide unsigned data anyways. + +Thu Sep 16 21:32:01 1999 Owen Taylor + + * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay + the call to gtk_tooltips_layout_text() until later. + + * gtk/gtktooltips.c (gtk_tooltips_draw_tips): + Call gtk_widget_ensure_style() before using the style. + +Wed Sep 15 02:52:19 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_event): Added workaround + for old widgets that don't propagate draws to all + children. (Namely gnome-dock for gnome-libs <= 1.0.16) + +Tue Sep 14 19:22:19 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent + for a redraw but just the widget that requested the resize. + +Tue Sep 14 18:29:47 1999 Tim Janik + + * gtk/gtkcontainer.c: added new widget level method + gtk_container_set_reallocate_redraws() and a GtkContainer flag + reallocate_redraws : 1 to reflect the setting, exported this through + the argument system as a boolean ::reallocate_redraws. + + * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws + on the widget because the allocation changes, do so as well for + widget->parent if the parent has reallocate_redraws set to TRUE. + with that containers requesting reallocation redraws get automatically + redrawn if their children changed allocation (this unfortunately + affects also other children that didn't change allocation, but we + cannot work around that before 1.3). + +Tue Sep 14 18:23:01 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width + _and_ height are >0 (not _or_). + + * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize() + instead of gtk_container_queue_resize(), which is a core gtk internal + function (must have been on crack when i queued that). + + * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so + we can check more reliably if we want to discard expose events. + * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING + flag. + + * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes, + we simply trust these events. for deciding whether to discard exposes, + check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING. + +Mon Sep 13 15:01:21 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore + queues of areas that are completely off screen. + + * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken + logic for handleboxes. + + * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity + check on width/height. + +Mon Sep 13 02:22:47 1999 Tim Janik + + * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements", + we are fine with using $@ the way we do (if we actually encounter + brokeness with $@ in VPATH builds because of additional path prefixes, + we need to use $(@F) actually). + +Mon Sep 13 01:34:53 1999 Tim Janik + + * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce + short lived bugs, that would allow language bindings to do surgeries + to our guts. + +Fri Sep 10 15:22:50 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo + where comparison was being done against an uninitialized + value causing intermittant results depending on + compiler flags. Also make it clearer that we aren't + ever initializing the child as 0x0 (though this will + be caught in gtk_widget_size_allocate()) + +Fri Sep 10 10:06:56 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_set_transient_for): Move + gtk_window_unset_transient_for() call after we do checks + involving the old transient parent. + [ From Lance Capser ] + +1999-09-07 Raja R Harinath + + * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create + an empty file. + +Mon Sep 6 00:11:56 1999 Lars Hamann + + * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has + no children. (Reported by: Chris Rogers ) + +1999-09-03 Raja R Harinath + + * gtk/Makefile.am (gen_sources): Improve VPATH builds. + `$@' is valid only in the build dir, not after we've done + `cd $srcdir'. Also use `test -f' instead of less portable + `test -e'. + +Fri Sep 3 15:59:56 1999 Owen Taylor + + * gtk/gtktext.c (correct_cache_insert): Rewrite + for simplicity, and hopefully correctness. + (Fixes bug #1322, which was a segfault when + on some insertions with the properties around + the insertion set up just wrong.) + + * gtk/gtktext.c (gtk_text_adjustment): When we receive + a "changed" signal, clamp the new value to the adjustment + bounds to avoid segfaulting if someone tries to change + the adjustment to a bogus value. (Bug #1795) + +Thu Sep 2 16:33:59 1999 Owen Taylor + + * gtk/gtkmain.c: Ignore unexpected destroy notifies + for children, for toplevel windows handle them + like delete_event. + + * gtk/gtkplug.c: Add an unrealize handler so that + we unref plug->socket_window when we are done + with it. + +Fri Sep 3 14:52:54 1999 Owen Taylor + + * gtk/gtktext.c (clear_area): Fix stupid signedness + problem that was causing background to sometimes + be misaligned. + +Fri Sep 3 12:26:33 1999 Owen Taylor + + [ Fixes pointed out by Ettore Perazzoli ] + + * gtk/gtkmenu.c (gtk_menu_position): Make + sure we never position menus with negative x, y, + since gtk_widget_set_uposition() can't handle that. + + * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): + Modify the positioning code a bit so that we always + put the top-left corner onscreen. (This is for + UI reasons, gtk_menu_position() now takes care of + gtk_widet_set_uposition() brokeness.) + +Fri Sep 3 03:06:30 1999 Tim Janik + + * gtk/Makefile.am: fixed up things for -jx, x > 1. + +Sun Sep 5 08:48:51 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the + RC style that is passed in. The lack of the ref + before was a bug. If people worked around this + bug, this will introduce a slight memory leak + in their code. The code should typically look like: + + rc_style = gtk_rc_style_new (); + [...] + gtk_widget_modify_style (widget, rc_style); + gtk_rc_style_unref (rc_style); + + * gtk/gtkwidget.c (gtk_widget_modify_style): Reset + the style if it was already set. + + * gtk/gtkwidget.c (gtk_widget_set_name): Only set the + style if it was set before. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * gtk/testgtk.c (main): Add a check to see if we + are being run from the correct directory and + to quit nicely if we are not. + + * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function + static. + +Thu Sep 2 23:00:03 1999 Tim Janik + + * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS. + + * gtk/gtkwindow.c: + queue resizes unconditionally (gtk_widget_queue_resize will figure + what to do if the window is not realized). + (gtk_window_move_resize): only recenter the window + for GTK_WIN_POS_CENTER_ALWAYS. + (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in + the same way as GTK_WIN_POS_CENTER. + +Thu Sep 2 22:39:27 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_reposition): check for the last position + with (!(info->last_flags & GDK_HINT_POS)) instead of + (!info->last_flags & GDK_HINT_POS). + + * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and + new_height unconditionally, because we use these values even if + !default_size_changed && !hints_changed. + comented the (default_size_changed || hints_changed) case with + respect to resize rejects from the window manager. + + * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values + in the zvt condition hack, since this includes the window hints, set + the hints after the handling_resize case. + + * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a + window is initially shown with to the geometry. + +Thu Sep 2 07:38:56 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): + s/size_changed/default_size_changed/g so i know what's + really going on (frying brain on smaller flame now). + +Thu Sep 2 05:47:47 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if + we have size_changed upon handling_resize. this is a gross + workaround for the broken zvt widget and should be removed in + 1.3 again (search for FIXME). + Owen provided an accurate comment for this: + + /* We could be here for two reasons + * 1) We coincidentally got a resize while handling + * another resize. + * 2) Our computation of size_changed was completely + * screwed up, probably because one of our children + * is broken. It's probably a zvt widget. + * + * For 1), we could just go ahead and ask for the + * new size right now, but doing that for 2) + * might well be fighting the user (and can even + * trigger a loop). Since we really don't want to + * do that, we requeue a resize in hopes that + * by the time it gets handled, the child has seen + * the light and is willing to go along with the + * new size. (this happens for the zvt widget, since + * the size_allocate() above will have stored the + * requisition corresponding to the new size in the + * zvt widget) + * + * This doesn't buy us anything for 1), but it shouldn't + * hurt us too badly, since it is what would have + * happened if we had gotten the configure event before + * the new size had been set. + */ + +Wed Sep 1 20:46:11 1999 Owen Taylor + + * gtk/gtkrc.c: deal properly with the fact that RC + style lists may include rc styles more than once. + + * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed + unused static function. + + * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a + stack of directories of RC files currently being + parsed and implicitely add them to pixmap path. + + This fixes a bug where the directory would get + appended then overwritten by pixmap_path declarations. + + (bug #1462, from Peter Wainright ) + + * gtk/gtkthemes.c (gtk_theme_engine_unref): Call + theme's exit function. (Patch from Peter Wainwright, + bug #1454) + + * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy): + Add a destroy() handler to take care of removing + group for menu item. (Fixes bug #1197) + + * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko + in warning message. + +Wed Sep 1 21:27:42 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server + roundtrip to figure window's width and height, since we know that + anyways from widget->allocation. + +Wed Sep 1 12:37:44 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_move_resize): Compute + the hints after we request the new size. + +Wed Sep 1 10:38:37 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_compute_hints): Removed + GTK_WIDGET_REALIZED() assertion - we can compute the + hints before we are realized. + + * gtk/gtkwindow.c (gtk_window_move_resize): Reorder + hint changing so that we have a value of hints_changed + when we decide whether to constrain the window size. + + * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix. + + * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups, + change back to G_MAXINT. + +Wed Sep 1 06:54:59 1999 Tim Janik + + * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize + new GtkWindowGeometryInfo, so fields like GdkGeometry geometry + contain uncluttered values. + (gtk_window_compute_hints): simply assert that window is realized + and that geometry_info is valid, since we rely on this anyways. + (gtk_window_constrain_size): major cleanups to the code. + if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height + for the base size, instead of the minimums. use 32767 as max width + and height (like in gtkwindow.c) instead of G_MAXINT. + +Wed Sep 1 04:41:25 1999 Tim Janik + + * cleaned up the GtkContainer.need_resize flag handling mess, we + only need to force resize requests when we were prematurely + realized, or our widget tree was modified when we were temporarily + hidden. handling these cases directly upon showing the window (i.e. + while the GdkWindow is still unmapped) avoids the need to wait for + a configure event response and therefore makes the GUI more snappier + and avoids blank windows during the roundtrip. + + * gtk/gtkwidget.c: + (gtk_widget_hide): + (gtk_widget_show): don't queue resizes on toplevels, they know how + to deal with matters. + + * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize + flag directly for not visible resize containers and spare us unecessary + signal emissions. + + * gtk/gtkwindow.c: + (gtk_window_realize): if we need to enforce premature size allocation, + queue a container resize so we are correctly resized later on. + (gtk_window_init): + (gtk_window_size_request): + don't freak around with the ->need_resize flag, + gtk_container_queue_resize() will care about that. + (gtk_window_show): + handle initial resizing issues here, we can handle matters better in + this place, especially since we know that our GdkWindow is still + unmapped. + (gtk_window_move_resize): + don't care about ->need_resize at all. + handle size changes properly that occoured while we waited for a + configure event. + +Tue Aug 31 15:58:46 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_set_uposition): + * gtk/gtkwindow.[hc] (gtk_window_reposition): + Move the hint setting code from gtk_widget_set_uposition + to here; set the hints so that we respect any previously + set geometry hints. + + * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't + change the window hints here or move the window here, + let that happen in gtk_window_move_resize(). + +Tue Aug 31 06:58:52 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due + to already queued resizes (and therefore redraws) on a widget, check + its anchestry as well. + + * gtk/gtkcontainer.c: + (gtk_container_queue_resize): clear resize widgets for resize + containers before aborting prematurely. this is especially important + for toplevels which may need imemdiate processing or their resize + handler to be queued. + (gtk_container_dequeue_resize_handler): added new internal function for + gtkwindow.c. + + * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a + configure event, take possible changes in window position into account + as well. + if we request a new window size, queue up a resize handler that will + last until the configure event response arrives. + combined the ->need_resize case (initial show) with the general size + (hints) changed case and added even more comments. + if !auto_shrink, only revert to the old allocation if the new size + is smaller than the current allocation. + +Tue Aug 31 11:55:20 1999 Owen Taylor + + * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy, + gtk_window_set_geometry_hints + gtk_window_set_default_size): + When hints are set, queue a resize so that the hints will + be eventually reset on the toplevel. + + * gtk/gtkwindow.c (gtk_window_show): Use + gtk_window_compute_default_size(). Clear the need_resize flag + on the initail map so that we don't unnecessarily trigger the + resize code. + + * gtk/gtkwindow.c (gtk_window_move_resize): Split apart + into separate functions. Compare the hints we are setting + with what we set last time so that we can accurately + tell when we need to reset the hints. + + * gtk/gtkwindow.c (gtk_window_compute_default_size): New + function to figure out the size from requisition + and default_size. + + * gtk/gtkwindow.c (gtk_window_constrain_size): Function + from fvwm to constrain a size to the geometry hints. + + * gtk/gtkwindow.c (gtk_window_compare_hints): New function + to compare two sets of geometry hints. + + * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed + from gtk_window_set_hints(), just compute the hints, + don't set them. + + * gtk/gtkwindow.c (gtk_window_compute_reposition): Move + code from gtk_window_move_resize() to separate function, + rationalize a bit. + +Tue Aug 31 13:05:03 1999 Owen Taylor + + * gtkrc.h: Move the ref_count member out of the GtkRcStyle + structure into a new private structure. + + * gtkrc.c: Split GtkRcStyle into public/private. + In the private part, add a list of pointers to the + RcStyle lists this RcStyle participates in. + + * gtkrc.c: When a RcStyle is free, remove all + lists referencing it from the + realized_style_ht hash, and free those lists. + + * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call + gtk_rc_init(), since that adds the default styles + to the list of parsed RC files again. + + * gtk/gtkrc.c: Use gtk_rc_style_find() consistently. + +Thu Aug 26 14:14:42 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity + checks that ensure that a widget's allocation is at least 1 in width + and height. (GNOME note: this doesn't affect old panel code anymore, + because GtkSocket will request width and height of at least 1 since + Fri Jul 23). + + * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been + allocated yet (happens if the user realizes the window prematurely), + size request and allocate it. + (gtk_window_size_allocate): guard against guint underflows. + +Wed Aug 25 19:01:36 1999 Lars Hamann + + * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs + in gtk_built_sources, so gtk.defs gets built prior to all other + sources. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * gtk/Makefile.am: + invoke indent on gtkmarshal.*. + rewrote source generation rules, use COPYING as oldest source tag for + a piggyback rule to generate all sources from (don't touch it ;). + major cleanups, strip spaces on build rules for GNU Make. + + * gtk/genmarshal.pl: don't operate on hardcoded filenames but take + source and target files from commandline arguments. don't invoke indent. + +Sat Aug 21 14:07:36 1999 Lars Hamann + + * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize + notebook after switch to avoid drawing problems. + (Bug#856 Reported by: Theodore Roth ) + + (gtk_notebook_pages_allocate): don't map not visible tab_labels, + show them instead. + (Bug#1805 Reported by: Dave Cole ) + +Sat Aug 21 14:07:36 1999 Lars Hamann + + * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize + notebook after switch to avoid drawing problems. + (Bug#856 Reported by: Theodore Roth ) + + (gtk_notebook_pages_allocate): don't map not visible tab_labels, + show them instead. + (Bug#1805 Reported by: Dave Cole ) + +Wed Aug 18 09:20:10 1999 Tim Janik + + * gtk/gtkwindow.c: + we use window->need_resize from configure_event now, to indicate that + the gtkwindow should keep its allocation (e.g. because the user resized + the window through window manager handles). resize_count is now reliably + used to figure whether we got the allocation we requested from the + window manager. + configure events get queued as resizes now, the real stuff (size + computation and allocation) now only goes on in gtk_window_move_resize(). + GtkWindow's requisition now contains its *real* requisition (like all + other widgets), *not* taking usize into account. + geometry_info->last_{width|height} is now updated from set_hints() only + so it always contains the last hints we set for the window manager. + made some event handlers return TRUE instead of FALSE. + the overall code should be much more straight forward now, and the + significant code portions are accompanied by comments now. + (gtk_window_set_hints): + removed requisition argument and made it + fetch the requisition through gtk_widget_get_child_requisition. + we also don't move the gdkwindow here anymore, gtk_window_move_resize() + does that now. + (gtk_window_show): + ensure that the widget is realized before calling + gtk_container_check_resize() (and thus gtk_window_move_resize()), also + ensure that we got properly size requested and allocated before + realization. + (gtk_window_configure_event): + ignore plain window moves, or reallocate the widget tree through the + resize queue otherwise. + (gtk_window_move_resize): + mostly rewrote this function to figure window manager hints more + reliably, coalesce window moves and resizes to reduce configure events + and do actuall size allocations. + +Tue Aug 17 07:43:04 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets + that have a resize pending, because a redraw is already queued for them. + + * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal + hack to clear resize_widgets. + + * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets + for resize containers prior to size allocation. (this is also a bit + ugly, but avoids side effects for stopped emissions and is thus more + reliable). + (gtk_widget_unparent): removed disconnect call for clear_resize_widgets. + + * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this + function from gtk_tooltips_expose, as we connect to ::expose_event + *and* ::draw now. + +1999-08-18 Federico Mena Quintero + + * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity + checks. + (gtk_target_list_unref): Likewise. + + * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise. + +Tue Aug 17 15:47:07 1999 Owen Taylor + + * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar): + guard against division by zero. (Fixes bug #1339) + +Tue Aug 17 10:56:49 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_move_{forward,backward}_word): + Prevent the trivial leak of information of allowing + word motion when the entry is not visible. + +Tue Aug 17 10:28:52 1999 Owen Taylor + + * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate + modality to error dialog as well as confirmation dialogs. + (Bug #1803, reported by Rosanna Wing Sze Yuen) + +Wed Aug 11 01:04:57 1999 Owen Taylor + + * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor + tree->view_lines. + (gtk-guy-990611-3.patch: Guy Harris ) + + * gtk/Makefile.am (install-data-local): Solaris apparently + has various troubles with ln -f; use rm first instead. + (gtk-guy-990611-2.patch: Guy Harris ) + +1999-07-30 Raja R Harinath + + * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir, + use `cp' followed by `rm' (the `rm' was already there). + +July 30, 1999 Elliot Lee + + * configure.in: Fix autoconf warnings about cross compilation by + trying to provide sane defaults for AC_TRY_RUN. + * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir), + put them into $(srcdir) when generated. Also add a dependency of + gtksignal.h on gtkmarshal.h for -j builds. + * gtk/gtk(dnd,style,gamma).c: Minor warning fixes. + +Wed Jul 28 09:29:19 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main_iteration_do): Added missing + GDK_THREADS_{LEAVE,ENTER} pair. + (From Paul Fisher ) + +Fri Jul 23 01:00:15 1999 Tim Janik + + * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested + width and height are always >0 (owen). + +Fri Jul 23 00:00:47 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent + change that assured that a widget's allocated with and height are + always >1, since this breaks *buggy* panel code. unfortunately this + back-breaks the gimp's color selector. + + * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our + allocation is always >0 in width and height, before sending the + configure event; this is a *gross* hack to get the gimp back to work. + + * marked both cases with TODO-1.3 + +Wed Jul 21 15:47:39 1999 Owen Taylor + + * gtk/gtktext.c: Don't display wrap indicators when + text is not editable and word wrap is on. + +Wed Jul 21 08:21:40 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case + option menus here as they are not derived from menu shell, assure that + the option menu has a menu we can add items to. + +Tue Jul 20 23:29:48 1999 Tim Janik + + * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation-> + width/height to (gint) before calculations and check against < 0 to + avoid guint wraparounds. + +Sun Jul 18 00:35:49 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated + width and height is never zero. sanity check both dimensions against + 32767 and issue a warning if the allocation is greater than that. + +Wed Jul 7 15:03:30 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_events_pending): Unlock around call + to g_main_pending() as well. + +Wed Jul 7 14:59:01 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main_iteration): Unlock around + call to g_main_iteration() - since that will regrab + GTK+ lock to process events. + +Thu Jul 1 15:01:55 1999 Owen Taylor + + * gtk/gtkwindow.c + - Regularize with the rest of GTK+ by making widget->requisition + not reflect the set_usize() + - Always recompute geometry hints, then check if they + changed before sending them to the X server. The + previous checks for changes would fail in a number + of circumstances. + +Thu Jul 1 11:55:59 1999 Owen Taylor + + * gtk/gtkstyle.c: Include for strcmp(). + +Wed Jun 30 19:26:36 1999 Owen Taylor + + * gtk/gtkdnd.c: + - Code cleanups + - Instantaneously update on modifier key presses + - Allow cancellation of the drag with Escape. + +Tue Jun 29 17:04:09 1999 Owen Taylor + + * gtk/testgtk.c (create_handle_box): Set the policy + to auto_shrink - otherwise the appearance is rather + strange when flipping between horizontal and vertical. + +Mon Jun 28 09:29:52 1999 Tim Janik + + * gtk/gtkwindow.c: add ::default_width and ::default_height arguments. + (gtk_window_set_default_size): don't change a value if it's < 0. + queue a resize. + +Sun Jun 27 11:00:33 1999 Tim Janik + + * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts. + +Mon Jun 28 12:08:25 1999 Owen Taylor + + * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't + add an extra "/" when concating "/" + filename. + (From Matt Grossman ) + +Mon Jun 28 10:57:12 1999 Owen Taylor + + * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask + for fg_gc if we set it for drawing pixmap. + +Tue Jun 15 12:45:12 1999 Owen Taylor + + Fixes from Peter Wainwright + + * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is + already set, call old engine's destroy function and + unref the old engine. + +Thu Jun 10 17:59:38 1999 Tim Janik + + * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize. + +Wed Jun 9 15:13:16 1999 Tim Janik + + * gtk/gtkaccelgroup.h: mark certain functions as internal. + +Wed Jun 9 13:48:28 1999 Tim Janik + + * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the + expand behaviour changed. + + * gtk/gtklabel.c (gtk_label_set_pattern): + (gtk_label_set_justify): + (gtk_label_set_line_wrap): + don't bother invoking queue_clear, the reallocation does + that for us, always free_words so the upcoming resize will + relayout the label's contents. + +Wed Jun 9 12:50:48 1999 Tim Janik + + * applied argument implementation patches from Elena Devdariani + . + + * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size, + ::space_style, ::relief + * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size + * gtk/gtkpreview.c: ::expand + * gtk/gtkpaned.c: ::handle_size, ::gutter_size + * gtk/gtknotebook.c: ::homogeneous + * gtk/gtklabel.c: ::wrap + * gtk/gtklist.c: ::selection_mode + * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge + * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y + * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity + * gtk/gtkclist.c: ::sort_type + * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle + * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child + +Tue Jun 1 23:38:38 1999 Owen Taylor + + * gtk/gtkstyle.c: Removed ill-thought-out part of last + comment. + +Tue Jun 1 23:30:09 1999 Owen Taylor + + * gtk/gtkstyle.c (gtk_style_attach): Get the reference + counting right when we have to attach a new style + for a different visual. (Chi-Deok Hwang ) + + * gtk/gtkstyle.c: Documented the refcounting + peculularities of gtk_style_attach. + +1999-06-01 Tim Janik + + * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid + window types. + + * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead + of GTK_TOPLEVEL for creating the window. + +1999-06-01 Tim Janik + + * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is + the last argument (reported by Per Winkvist). + +Tue May 25 13:13:12 1999 Owen Taylor + + Fixes for invisible XOR lines (Frank Loemker + ) + + * gtk/gtkclist.c (gtk_clist_realize): Always use + a non-zero pixel for GDK_XOR. + + * gtk/gtkvpaned.c gtk/gtkhpaned.c: + Use GDK_INVERT instead of GDK_XOR. + +Wed May 12 21:56:40 1999 Lars Hamann + + * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed + signals if h/voffsets differ from adjustment values. + Reportet by Jerome Bolliet + +Mon May 10 04:20:41 1999 Tim Janik + + * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate + ::selection-done emissions up to the topmost menu shell. + +Fri May 7 10:15:14 1999 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset + the user data on the window before destroying it. + + * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an + unrealize handler to take care of destroying + notebook->panel properly. + (Bug #1198 - Morten Welinder ) + + * gtk/gtktext.c (expand_scratch_buffer): Fix reversal + of g_new and g_realloc to stop memory leak. (Actually, + we could just use g_realloc(), but I'm not 100% sure + that is portable). + (Bug #1196 - Morten Welinder ) + +Wed Apr 21 00:42:08 1999 Owen Taylor + + * gtk/gtkplug.h: Removed stray GtkPlugButton declaration. + + * gdk/gdkfont.c (gdk_text_measure): Fix the return value + for fontsets. + + * gtk/gtkbutton.c (gtkbutton_expose): Fix warning + with bin/button confusion. + +Thu May 6 04:53:26 1999 Tim Janik + + * gtk/testgtk.c: in the ItemFactory test, link radio items together, + and show how preselection of radio items is done. + +Sun May 2 13:31:14 1999 Tim Janik + + * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): + * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert): + * gtk/gtktoolbar.c (gtk_toolbar_insert_element): + * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1): + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): + * gtk/gtktable.c (gtk_table_attach): + * gtk/gtklist.c (gtk_list_insert_items): + * gtk/gtkmenushell.c (gtk_menu_shell_insert): + * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): + * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): + * gtk/gtkbin.c (gtk_bin_add): + * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): + * gtk/gtkfixed.c (gtk_fixed_put): + * gtk/gtklayout.c (gtk_layout_put): + general fixups to container_add logic. always realize child if + child->parent is realized, only map the child and queue a resize + if child and child->parent are both visible. + +Fri Apr 30 09:02:28 1999 Tim Janik + + * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall + instead of gtk_container_foreach to walk and unrealize children, so + composite children get also unrealized. + (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to. + (gtk_widget_map): assert that the widget is visible (basic constrain). + (gtk_widget_real_map): assert that the widget is realized (basic + constrain). + +Fri Apr 29 00:53:20 1999 Tim Janik + + * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak. + +Tue May 4 09:32:08 1999 Owen Taylor + + * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc + file for iso-8859-2 locales. + + * configure.in (ALL_LINGUAS): ALL_LINGUAS update. + +Tue Apr 27 16:38:32 1999 Owen Taylor + + * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES. + (Pointed out by andy@rz.uni-karlsruhe.de and others). + Remove some suspicious and useless lines. + +Tue May 4 08:44:08 1999 Owen Taylor + + * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use + width,height = 0, 0 to mean - here to edge of window, + instead of -1, -1, since the former is all we support. + +Tue May 4 08:34:43 1999 Owen Taylor + + * gtk/gtkmain.c (gtk_main): Correctly free list nodes + when removing from quit_functions list. + +Tue Apr 27 14:17:16 1999 Tim Janik + + * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable. + +Tue Apr 27 18:23:35 1999 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): + When redrawing characters on non-visible entry, use appropriate + '*' character. (Bug #1130 - Jean-Marc Jacquet ) + +Tue Apr 27 01:31:40 1999 Lars Hamann + + * gtk/gtkclist.c (drag_dest_cell): compute destination cell + from drag coordinates. + (gtk_clist_drag_data_received) (gtk_clist_drag_motion): + use drag_dest_cell. + + * gtk/gtktree (drag_dest_cell) + (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise. + (Bug #1129) + +Wed Apr 21 21:26:11 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize + translate_* fields. + (gtk_item_factory_finalize): invoke translate_notify independant from + translate_data. + (gtk_item_factory_set_translate_func): likewise. + (gtk_item_factory_destroy): only remove ifactory pointer from those + widgets that belong to us (stupid me). + +Mon Apr 19 12:05:31 1999 Owen Taylor + + * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of + rc_style list when lookup succeeeds. + +Thu Apr 15 01:11:24 1999 Lars Hamann + + * gtk/gtkctree.c (resync_selection): + * gtk/gtkclist.c (resync_selection): fixed undo_selection bug. + * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection + bug. + +Fri Apr 9 19:22:19 1999 Owen Taylor + + * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c: + Add some missing GDK_THREADS_ENTER()/LEAVE around + timeouts. (Patches from Sebastian Wilhelmi ) + +Thu Apr 8 20:10:33 1999 Tim Janik + + * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate() + rather than emit_by_name. + + * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference + on the widget across multiple signal emissions. + (gtk_editable_delete_text): same here. + (gtk_editable_class_init): set widget_class->activate_signal after + editable_signals[ACTIVATE] has been created. + +Wed Apr 7 22:59:47 1999 Owen Taylor + + * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp + position here prematurely -- we might not have the + right ->min_position and ->max_position yet. + +Tue Apr 6 16:38:51 1999 Owen Taylor + + * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request): + Add error traps so if the other end of the connection + dies, we survive. + + * gtk/gtkselection.c (gtk_selection_notify): Clean + up properly when selection property retrieval fails. + + * gtk/gtkselection.c (gtk_selection_request): Correctly + reject SelectionRequest notifies where the handler + returns no data. + +Tue Apr 6 12:24:21 1999 Owen Taylor + + * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight + when we've previously highlighted. + + * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't + emit two "drag_leave" signals for Motif drops. + + * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send + back the correct status messages when dropping from + Motif onto a proxy window that is rejecting the + drop. + +Sat Mar 27 23:32:13 1999 Tim Janik + + * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free + the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal() + to compare two argument values. added gtk_arg_to_valueloc() to set a + variable from an arg through its location (pointer). + + * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of + gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected + as gfloat*, uchars are collected as guchar*, ints are collected as + gint*, etc... + +Mon Mar 29 17:45:47 1999 Owen Taylor + + * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c: + Include instead of . + + * gtk/gtkstyle.c: Fix double include of gtkthemes.h + (actually, a lot more duplicate includes occur if + you trace through the sequence of #include's) + gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu + +Mon Mar 29 17:02:58 1999 Owen Taylor + + Patches from Akira Higuchi + gtk-a-higuti-990322-[0-3] + + * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS + that was causing -DX_LOCALE not to work. + + * gtk/gtkrc.c (gtk_rc_init): + X_LOCALE will never have LC_MESSAGES defined + +Thu Mar 25 12:38:31 1999 Tim Janik + + * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from + g_get_home_dir() (gtk-pmc-990123-0.patch.gz). + + * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/ + left/right as well (gtk-michael-980726-0.patch.gz). + + * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/ + for pointer values, use gchar instead of char. fixed uline allocation + leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem + chunks instead of G_ALLOC_ONLY. + (gtk_label_size_request): always alter requisition as passed and leave + widget->requisition alone. + (gtk_label_set_text): allow NULL strings. + (gtk_label_new): likewise. + +Wed Mar 24 09:24:03 1999 Tim Janik + + * gtk/gtkdrawingarea.[hc]: type/macro fixups. + +Mon Mar 22 05:51:34 1999 Tim Janik + + * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible + *and* mapped (i.e. drawable). + (gtk_bin_expose): only send exposes to drawable children. + + * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable. + (gtk_box_expose): only send exposes to drawable children. + + * gtk/gtkhscale.c (gtk_hscale_draw): + * gtk/gtkvscale.c (gtk_vscale_draw): + hm, this is an ugly one. we first compute the size of our trough area + here (window relative) and then check intersection with the draw_area + which is parent relative because we're a NO_WINDOW widget, so we need + to offset the trough area by allocation.x and allocation.y before the + check. (this must not be done for the background area though, since + that's already computed parent relative). + +Mon Mar 22 00:41:39 1999 Lars Hamann + + * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary, + unrealize title buttons. + +Fri Mar 19 00:00:22 1999 Lars Hamann + + * gtk/gtkclist.c (gtk_clist_column_title_passive) + (gtk_clist_column_title_active): + only connect/disconnect to GtkWidgetClass::event to block mouse events. + + * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): + zero initialize event, removed superfluous gdk_window_get_pointer call + + * gtk/gtklist.c (gtk_list_vertical_timeout) + (gtk_list_horizontal_timeout): removed superfluous + gdk_window_get_pointer call + +Wed Mar 17 09:00:00 1999 Tim Janik + + * plugging problems reported by "Bruce Mitchener, Jr." + due to a purify session. + + * gtk/gtkstyle.c: + (gtk_style_ref): + (gtk_style_unref): assert ref_count to be > 0. + + * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize + the requisition. + (gtk_clist_set_shift): likewise. + + * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the + adjustments. + + * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the + event before sending it and set send_event to TRUE (which needs to + be done for *all* synthesized events). + (gtk_list_vertical_timeout): likewise. + + * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory + leaks. + + * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event + to TRUE when synthesizing events. + +[ *** end of merges from 1.2 *** ] + +1999-11-21 Tor Lillqvist + + * gdk/gdkconfig.h: Remove, as this is a file generated by configure + (or copied from gdkconfig.h.win32 on Win32, sigh). + + * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL. + + * gdk/gdk.c (gdk_keyval_convert_case): Fix typo. + + * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line. + + * gdk/gdkconfig.h.win32: New file. + + * gdk/win32/makefile.cygwin: Build just a static archive here. + + * gdk/makefile.cygwin: New file. Get the win32-specific stuff + for the DLL from the static archive built above. + + * gdk/gdk.def: Moved here from the win32 subdirectory. + + * gdk/win32/*: Adapt for the changed private struct organisation. + + * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now. + +Sun Nov 21 16:44:35 1999 Stefan Jeske + + * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support + for wheel mice (buttons 4 and 5). + +1999-11-18 Tor Lillqvist + + * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor + drawables use just the pixel field in the foreground and + background GdkColor of the GdkGC. + + gdk_gc_set_{fore,back}ground() are called in the GIMP with + GdkColors containing uninitialized (red,green,blue) fields, and + just the pixel field filled in, and furthermore in the + visual-dependent format as returned by gdk_rgb_xpixel_from_rgb(). + It thus turns out that we really don't need to have the full + GdkColor for fg and bg in GdkGCWin32Data after all. Will change + it later to have just the pixel values. + +Mon Nov 15 17:17:51 GMT 1999 Tony Gale + + * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/ + +Sat Nov 13 22:30:29 GMT 1999 Tony Gale + + * docs/gtkfaq.sgml: threads example from Erik Mouw. + New question on GtkLabel background colors. + + * docs/gtk_tut.sgml: + - Correct the example code callback + function definitions. + - Update the gtkdial example code, from Frans van Schaik. + - Update setselection.c to current API. + + * examples/Makefile examples/*/*.c: Update to code + listed in tutorial. + +1999-11-10 Tor Lillqvist + + * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode + subrange table (from the "Developing International Software for + WIndows 95 and Windows NT" book) was missing the Hangul syllable + block... Get the loaded font's charset correctly. + + (Note that this, and the other *-win32.c files, still really are + the old ones, the win32 subdirectory is not ready for compilation + yet after the reorg.) + +Wed Nov 10 17:26:49 GMT 1999 Tony Gale + + * gtk/gtkclist.c: Fix off-by-one bug in parameter + check. + +Wed Nov 10 12:12:03 1999 Owen Taylor + + * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState() + on results of XQueryDeviceState(). + +Mon Nov 8 16:40:43 1999 Owen Taylor + + * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since + we need to accesss only ->children. We need an accessor + for the children. + + * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G + DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer() + to get rid of gdkx.h include. + + * gtk/gtkctree.c: Get rid of #include + and random references to 'None'. + + * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c + Get rid of unused #include + + * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include + gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from + gdkconfig.h. + +1999-11-08 Tor Lillqvist + + * gdk/win32/gdkdraw.c + * gdk/win32/gdkfont.c + * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes + following yesterday's changes. (Unrelated to Owen's reorg.) + +Mon Nov 8 16:18:25 1999 Owen Taylor + + * gdk/x11/gdkinput-gxi.c: Add missing include, + fix GdkWindowPrivate => GdkDrawablePrivate. + + * gdk/x11/gdkinputprivate.h: include . + + * gdk/x11/Makefile.am (xinput_sources): Add missing + backslash to fix building with --with-xinput=none + +Mon Nov 8 14:47:04 1999 Owen Taylor + + Move all X specific code into the x11/ directory. + Aside from shuffling things around, did the following: + + * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add + gdk_arg_context_* - a simple argument parsing system + in the style of popt. + + * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch] + gdk/x11/gdkprivate-x11.h: + Remove X specific stuff from GdkDrawable and GdkWindowPrivate - + add ->klass and ->klass_data fields. The klass_data + field points to an auxilliary structure that is + windowing system dependent. + + * gdk/gdkfont.c: Make most of the measurement functions + simply wrappers around gdk_text_extents(). + + * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a + _gdk_font_strlen() function that hides the weird + behavior in gtk+-1.[02] where a string is interpreted + differently for 8-bit and 16-bit fonts. + + * gdk/gdkevents.c: Add a new function gdk_event_button_generate() + to store common code for synthesizing double/triple + press events. + + * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h. + Make all the function that modify an existing GC + simply wrappers around gdk_gc_set_values(). + + * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation + for throwing out later. + + * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate, + GdkImagePrivate and GdkColormapPrivate to have a + windowing system dependent part (GdkFontPrivateX etc.) + that "derives" from the system-independent part. + + * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c: + Got rid of the included-source-files for XInput in + favor of automake conditionals. (Which didn't exist + when XInput support was originally added.) + + * gdk/gdkrgb.c: Remove the visual id from the debugging + statements since that is X11 specific; print out + type/depth info instead. + + +Wed Nov 3 18:14:49 1999 Owen Taylor + + * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when + loading duplicates of hashed fonts. + + * gdk/gdk.c (gdk_keysym_convert_case): rename + gdk_XConvertCase to gdk_keysym_convert_case, allow + results to be NULL in the GTK+ style. + + * gdk/gdkcompat.h: Started compatibility header + for renames. + +1999-11-07 Tor Lillqvist + + * gdk/win32/gdkprivate.h: New font private structures, related to + fontsets. + + * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and + gdk_font_list_free(). On X11, will just be wrappers to + XListFonts() and XFreeFontNames(). On Win32, the code previously + in gtkfontsel.c is now here. + + New function gdk_font_xlfd_create(). On X11 will get the FONT + property of the font (for GDK_FONT_FONTs), or call + XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32 + builds a XLFD style name from the font information in the LOGFONT + struct(s). + + New function gdk_font_xlfd_free(), which correspondingly frees the + string returned by gdk_font_xlfd_create(). + + Implement fontsets on Win32. Add a function that iterates over a + wide char string and calls a callback function for each substring + of wide chars from the same Unicode subrange (and thus probably + available in the same real font). + + Improve the XLFD emulation a bit. + + * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix. + + * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k + Beta3, WM_IME_CHAR messages don't seem to contain the composed + multi-byte char as with the Active IMM on Win9x. Oh well, handle + WM_IME_COMPOSITION with GCS_RESULTSTR instead, use + ImmGetCompositionStringW() to get the composed Unicode chars. + + * gdk/win32/gdkgc.c + * gdk/win32/gdkdraw.c: Changes needed because of the font private + struct changes. + + * gdk/win32/gdk.def: Add the new functions. + +1999-11-04 Tor Lillqvist + + * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to + get the Platform SDK to get . + + * gdk/win32/gdkevents.c: More event handling fixes and + simplification. Never generate motion events with is_hint true. We + used to do that on bogus grounds earlier. Windows sends + WM_MOUSEMOVE messages on button events even if the mouse hasn't + moved, ignore these. + + * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets. + + * gdk/win32/gdkglobals.c + * gdk/win32/gdkprivate.h: Define a typedef for the pointer to + the TrackMouseEvent function, and use it. + + * gdk/win32/gdkwindow.c: Terminate widechar string with a zero + char before calling WideCharToMultiByte in order to get a string + for the window title. + + * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out. + + * gdk/win32/gdk.def: Remove obsolete functions. + + * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add + /nodefaultlib and /defaultlib switches. + + * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/. + +1999-10-31 Tor Lillqvist + + * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including + EuroSign). + + * gdk/gdktypes.h: Add note about wchar_t not necessarily being the + same type as GdkWChar, especially on Win32. + + * gdk/win32/*.c: Change gdk_root_parent to be a pointer. + + * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode + before passing to Windows GDI for drawing etc. Convert to the + system default codepage before passing to Windows as window + titles. + + * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to + support changing input locale on the fly. + + * gdk/win32/gdkevent.c: Support input language (keyboard locale) + on-the-fly changes. Convert incoming characters from the current + codepage to Unicode (and then to a UTF-8 multi-byte string) based + on the current input language. Use keysym<->Unicode mapping tables + and functions borrowed from xterm sources. + + Support IMEs (Input Method Editors) for CJK languages. On non-CJK + editions of Win9x, use the ActiveX-based Active IMM (Input Method + Manager) if available. IMEs and the Active IMM are available under + the disguise of Chinese, Korean and Japanese support for IE and + Outlook Express from "Windows Update" for Win98. On Win2k, the CJK + support is present in all editions (as long as you install it). + + Call DispatchMessage from gdk_events_queue() (and thus + gdk_WindowProc()), instead of duplicating the code in + gdk_WindowProc(). + + Reworked the grab handling and propagation code, factored out + duplicated code snippets into separate functions. Other cleanups, + too. + + * gdk/win32/surrogate-dimm.h: Provide just the bits we need from + the header describing the Active IMM. + + * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far + just do the same as for "single" fonts. + + * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from + gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle + the new keysyms from gdkkeysyms.h. + + * gtk/gtkfontsel.c (Win32): Load the font for the preview as a + fontset, so that gtkentry uses wide characters. + + * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call + GTk+'s system directory "gtk+", not "gtk". + +Sat Oct 30 13:17:18 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ update + +1999-10-21 Tor Lillqvist + + * gdk/win32/gdkprivate.h: Add more font private data. + + * gdk/win32/gdkfont.c + * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset + fonts and strings. Now works much better. You still have to + have a correct font selected, though. No fontset emulation yet. + +1999-10-19 Tor Lillqvist + + * gtk/maketypes.awk: Use G_OS_WIN32. + + * gtk/gtk.def: Add some missing entry points. Also some non-public + ones, but PyGTK porter claims to need them. + + * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the + built-in type generation. + +1999-10-14 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for + GDK_FONT_FONT fonts (which is all we have for now, we don't + emulate fontsets). The X11 version uses plain XDrawString in that + case, too. The string passed to gdk_draw_text_wc seems to be in + fact (at least, when used by gtkentry and gtktext) either in a + single-byte charset, or a DBCS. Not Unicode. + + This fixes the problem in gtkfontsel, where even if you had + selected a font with a non-Latin1 charset (windows-greek, for + instance), the preview still used Latin-1 glyphs. + + * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't + use GetTextExtentPoint32W, use GetTextExtentPoint32A. + (gdk_font_load): Recognize the demibold etc weights, even if we + don't have the corresponding constants in the headers. + (gdk_font_hash_insert): Use same hash mechanism as in the X11 + version. Should save font resources a bit, when we don't have + multiple HFONTs for the same font. + + * gdk/win32/gdkprivate.h: Add the names field as in the X11 + version. + +1999-10-11 ERDI Gergo + + * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default + X values + +1999-10-09 ERDI Gergo + + * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text + layout support (as mentioned on + http://www.jcinteractive.com/gnome-ui/software/widgets/) + +Wed Oct 6 12:46:17 PDT 1999 Manish Singh + + * gtk/fnmatch.c + * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/ + +1999-10-05 Jesus Bravo Alvarez + + * configure.in (ALL_LINGUAS): Added Galician (gl) + +1999-10-05 Tor Lillqvist + + * gdk/win32/*.[ch]: Corresponding changes as in X11 backend. + + * gdk/win32/gdkcompat.c: New file, actually provide an + implementation for the deprecated functions. (Just temporarily.) + + * gtk/gtkfilesel.c: Fix an #ifdef syntax botch. + + * gtk/makefile.{cygwin,msc}: Update gdk_headers. + + * gdk/win32/gdk.def gtk/gtk.def: Updates. + +1999-10-05 Kjartan Maraas + + * configure.in: Added "uk" to ALL_LINGUAS. + +Mon Oct 4 11:57:11 PDT 1999 Manish Singh + + * configure.in: correct checking for BeOS check + + * gdk/gdktypes.h + * gtk/fnmatch.c + * gtk/gtkfilesel.c + * gtk/gtkitemfactory.c + * gtk/gtkmain.[ch] + * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines + +Mon Oct 4 16:16:53 1999 Pablo Saratxaga + + * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset + encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic + languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used + by Bulgarian). + +Sun Oct 3 18:13:44 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_reset_shapes_recurse): + Fix a reference to window_private->destroyed. + + * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct + (ugly) setting of an internal GdkWindow member to use + a _slightly_ cleaner macro. + + * gdk/gdkprivate.h: Split GdkWindowPrivate into + GdkDrawablePrivate and GdkWindowPrivate. + Add extra macros for accessing GDK_DRAWABLE_ components. + + * *.[ch]: Massive adjustments for the above, use the + new macros in a lot of places. + +Sun Oct 3 15:16:24 1999 Owen Taylor + + * gdk/gdktypes.h: Make GdkDrawable the base type, + not GdkWindow. + +Sun Oct 3 15:08:44 1999 Owen Taylor + + * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function. + +Sun Oct 3 14:26:15 1999 Owen Taylor + + * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory. + +Sun Oct 3 14:16:23 1999 Owen Taylor + + * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with + gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp) + + * configure.in gdk/Makefile.am x11/: create x-specific subdirectory. + + * docs/gtk-config.1: Now autogenerated. + * docs/Changes-1.4.txt: started + +1999-10-03 Tor Lillqvist + + * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage + to #ifdef also here. + + * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those + Owen did to the X11 backend. + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use + ScrollWindowEx when blitting inside a window, it can't be correct + in the general case. + + * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling + WM_GETMINMAXINFO is easier. + + * gdk/win32/gdkimage.c (gdk_image_new): Create new image with + depth equal to the bitspixel value, not the visual's depth. + + * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth + to 24 even if the bitspixel value is 32. + + * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no + need to check for depth==32 when bpp==32, depth will always be 24. + +Fri Oct 1 18:03:36 1999 Owen Taylor + + * docs/Changes-1.4.txt: Started + + * gtk/Makefile.am (gdk_headers): Include all the new headers. + + * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces. + + * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private + into C file. + + * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput + header to gdkinputprivate.h. + + * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been + unused since before 1.2. + +1999-09-30 Tor Lillqvist + + * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32, + expand possible hex escapes in the font family (put there by + logfont_to_xlfd if the font name isn't a legal XLFD font family, + mainly if it contains slashes). (gtk_font_selection_create_xlfd): + On Win32, add hex escapes here, too. + +Wed Sep 29 19:55:35 1999 Owen Taylor + + * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11 + to #ifdef GDK_WINDOWING_X11. + +[ Merges from gtk-1-2 ] + +Wed Sep 8 07:13:29 1999 Tim Janik + + * configure.in: fixed "GNU Make" check to pass with new make version + 3.77.95. + +Fri Sep 3 16:04:41 1999 Tim Janik + + * gtk-config.in (--version): don't echo @GTK_VERSION@, but + @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the + AM_PATH_GTK() macros don't get confused by the -pre1. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * configure.in (REBUILD): Change check for perl5 + to check explicitely for v >= 5.002. (5.001 + does not work with our scripts.) + +Wed Aug 25 15:45:46 1999 Tim Janik + + * configure.in: evaluate $PERL for the perl version check. added + --disable-rebuilds to give the user an option to completely disable + any source autogeneration rules. + +Mon Aug 23 23:16:14 1999 Tim Janik + + * configure.in: evaluate $ac_make when checking for GNU Make. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * docs/Makefile.am: added generation.txt. + + * Makefile.am: require automake 1.4, build README from README.in and + INSTALL from INSTALL.in in dist-hook. + + * README.in: + * INSTALL.in: new files to autogenerate README and INSTALL from. + + * configure.in: figure whether we have GNU Make + + * docs/generation.txt: minor additions/corrections. + +Wed Aug 11 13:38:26 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +July 30, 1999 Elliot Lee + + * configure.in: Fix autoconf warnings about cross compilation by + trying to provide sane defaults for AC_TRY_RUN. + +Fri Jul 16 22:20:21 PDT 1999 Manish Singh + + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.3 + +Thu Jul 8 11:30:18 1999 Owen Taylor + + * INSTALL: Indicate that the --with-glib= configure + time flag is unsupported. + +Mon Jul 5 20:36:03 1999 Owen Taylor + + * docs/generation.txt: Added a file that gives + documenation about the autogeneration process for + various autogenerated files. + +Tue Jun 29 15:59:25 1999 Owen Taylor + + * configure.in (LIBS): Look for libgmodule in the + right location. + +Thu Jun 17 13:57:31 1999 Owen Taylor + + * docs/gtk_tut.sgml: Removed references to + code examples in my directory on gtk.org as + they should all be in the tutorial now. + + * docs/gtk_tut.sgml: Added sources for dial-test + and scribble-xinput programs that were previously + missing. + +Fri Jun 4 00:08:59 1999 Owen Taylor + + * TODO: Added entry about menu keyboard navigation, removed + some finished items. + +Mon May 31 00:11:24 1999 Owen Taylor + + * acinclude.m4: Standardize on func_dgettext + not func_gettext, so that the checks for dgettext + actually are paid attention to. + +Wed May 5 10:47:54 1999 Owen Taylor + + * configure.in (LIBS): Add $INTLLIBS into $LIBS + directly, rather than repeating the checks for + gettext. + + * INSTALL: Added information about gettext and + NLS support. + + * acinclude.m4 (LIBM): Check for dgettext, not + just gettext. This should hopefully fix things wrt + systems with old versions of GNU gettext installed. + +Tue Jun 29 15:59:25 1999 Owen Taylor + + * configure.in (LIBS): Look for libgmodule in the + right location. + +Thu Apr 1 16:58:10 PST 1999 Manish Singh + + * autogen.sh: add --enable-maintainer-mode + + * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS" + +Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson + + * docs/gtk-config.1.in: + docs/Makefile.am: + configure.in: gtk-config is now generated. + + * docs/gtk-config.1: Removed, now generated. + +Thu Sep 23 17:59:59 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't + handle CreateNotify itself, still put out a debuging message for + --gdk-debug=events. made the ReparentNotify debugging message more + verbose. + wrap xcoords translation for ConfigureEvents into an error trap, + a destroy event may already be pending, and in that case, the + actuall coordinate values are not at all critical. + +Sat Sep 18 22:24:15 1999 Owen Taylor + + * gdk/gdkcc.c: Stop leaking the color_hash all over + the place. Simplify and improve the logic. + +Fri Sep 17 09:57:15 1999 Tim Janik + + * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean) + for prototypes and function implementations consistent (reported + by Tomas Ogren). + +Tue Sep 14 18:23:01 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): tell if expose events have + send_event set in debugging output. + (gdk_compress_exposures): default initialize the event so we don't + operate on bogus values (namely send_event). + +Thu Sep 2 16:33:59 1999 Owen Taylor + + * gdk/gdkwindow.c: When we receive an unexpected + destroy notify on one of our windows, don't just + warn about it, also mark our windows as destroyed. + +Sun Sep 5 08:10:53 1999 Owen Taylor + + * gdk/gdkfont.c (gdk_font_hash_insert): Add + name => font and name => fontset hashes. The + name => fontset hash is a _big_ win since we + weren't previously caching fontsets at all and loading + fontsets is expensive. The name => font hash + is less of a win, but it does save us from doing + repeated XQueryFont calls on the same font. + + * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names + list so we can remove font/fontset from hash. + +Thu Sep 2 19:02:37 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_atom_intern): Remove useless + and slightly confusing test. [ XInternAtom (,,TRUE) + will never return None ]. + +Sat Sep 4 08:39:26 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints) + gdk/gdkwindow.c (gdk_window_set_hints): + + Don't omit setting the properties if flags == 0 - + there may be an existing set of properties there + already. (Very old bug. Would it be better to + delete the property instead?) + + * gdk/gdkselection.c (gdk_selection_property_get): Fix + spelling error in comment. + +Wed Sep 1 14:05:30 1999 Owen Taylor + + * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push() + to avoid stomping over gdk_error_warnings. + + * gdk/gdkimage.c (gdk_image_new): compute image->bpp + as (bits_per_pixel + 7) / 8. This gives the same + result as before for multiples of 8, but actually + a "reasonable" value for 1bit or 4bit displays. + +Mon Aug 23 19:11:17 1999 Tim Janik + + * gdk/Makefile.am: minor cleanups, strip spaces on build rules for + GNU Make. + +Tue Aug 17 07:43:04 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): give a debugging note when + discarding configure events. + +1999-08-18 Federico Mena Quintero + + * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the + refcount is greater than zero. + + * gdk/gdkwindow.c (gdk_window_unref): Likewise. + + * gdk/gdkfont.c (gdk_font_unref): Likewise. + + * gdk/gdkgc.c (gdk_gc_unref): Likewise. + + * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise. + +Wed Aug 11 01:04:57 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_property_get): Fix assumption + that format 32 => sizeof(item) == 4. It really is + sizeof(long). + +Tue Jun 29 23:02:42 1999 Owen Taylor + + * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't + core dump at all on X IO errors, only core dump + if --enable-debug for X errors. + +Thu Jun 24 17:06:23 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for + unknown window:" message. disabled ConfigureNotify discarding code, + because it led to events being processed out of order. + +Thu Jun 24 12:22:02 1999 Tim Janik + + * gdk/gdkglobals.c: preinitialize gdk_error_code to 0. + + * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since + we export this function, supress error warnings and don't reset the + error code in the first half of this function. + + * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error + code (instead of just -1) so gdk_error_trap_pop() reveals something + actually informative about the error that happened. + + * gdk/*.c: + don't rely on gdk_error_code being -1 if an error occoured, but just + gdk_error_code != 0. + +Thu Jun 24 11:50:07 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list + pointer *before* invoking the filter function, so we at least don't + crash if a filter is removed that is currently executed. window filters + *really* need to be made truely reentrant at some point. + +Mon Jun 14 11:10:15 1999 Tim Janik + + * gdk/gdkevents.c (gdk_event_translate): print the atom name in the + PropertyNotify debug messages. + +Wed May 5 22:51:06 1999 Owen Taylor + + Patch from Sung-Hyun Nam + + * gdk/gdkim.c: Fix cut-and-paste errors for + x/y and PreeditAttributes/StatusAttributes. + +Wed May 5 22:24:21 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change + G_MAXINT to 2^16 to alleviate overflow problems in + various window managers. + +Wed Apr 21 00:42:08 1999 Owen Taylor + + * gdk/gdkfont.c (gdk_text_measure): Fix the return value + for fontsets. + +Wed May 5 12:42:01 1999 Owen Taylor + + * gdk/gdkwindow.c (gdk_window_set_geometry_hints): + Initialize size_hints.x and size_hints.y because kwm + brokenly pays attention to them. + (Bug #1181 - Lars Heete ) + +Wed May 5 11:38:56 1999 Owen Taylor + + * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the + return value of gdk_list_visuals(). + (Bug #1193 - Morten Welinder ) + +Tue May 4 11:12:56 PDT 1999 Manish Singh + + * gdk/gdkim.c (gdk_im_real_open): cast the return value of + XSetIMValues to (void *) when comparing to NULL, to workaround + the problem of some compilers barfing since older X headers don't + have the prototype for it. + +Mon Apr 19 10:11:12 1999 Owen Taylor + + * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak + for pseudocolor where colormap->colors was double + allocated. + + * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the + color value in the hash table with the pixel filled + in so when we do later hash table lookups, the color + value is correct. + +Sun May 2 15:29:45 PDT 1999 Manish Singh + + * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before + making the call + +Tue Apr 27 11:17:35 1999 Owen Taylor + + * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak + pointed out by Morten Welinder . + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Fri Apr 16 20:41:43 PDT 1999 Manish Singh + + * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines + + * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use + g_strdup_printf instead of calcing the length separately + +Tue Apr 13 02:49:33 1999 Owen Taylor + + * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG + that we don't do in many other places. (Fixing duplicate + #include of config.h) + + * gdk/gdkevents.c: include gdkinput.h _after_ config.h. + Otherwise, #ifndef XINPUT_NONE check in the latter + doesn't work. (Bug #546) + +Sun Apr 11 14:38:03 1999 Tim Janik + + * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color + "None" case insensitive. + +Tue Apr 6 16:38:51 1999 Owen Taylor + + * gdk/gdkselection.c: + Add error traps so if the other end of the connection + dies, we survive. + +Tue Apr 6 12:24:21 1999 Owen Taylor + + * gdk/gdkdnd.c (gdk_drag_motion): Separate out the + dest_xid field into two fields - one for the window + to send in messages, one to indicate the last looked + up window for caching purposes. This is needed, so + that Leave messages get the correct window. + +Mon Apr 5 13:21:30 1999 Owen Taylor + + * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare): + Fix warning created by people mucking around + with the gsource API. + + * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full): + Change mapping between GIOCondition and GdkInputCondition + to match the way the Linux kernel does it. This should + fix problems where closed pipes were no longer signalling + GDK_INPUT_READ on systems with a native poll(). + +Mon Apr 5 17:11:57 1999 Owen Taylor + + * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check + explicitly for the string "None" - it is in the XPM + spec and some servers treat unknown colors in odd ways + (like asking the user!) + +Thu Apr 1 16:58:10 PST 1999 Manish Singh + + * gdk/gdkevents.c: made "->" into a "." of previous change so + it compiles + +Thu Apr 1 18:41:25 1999 Owen Taylor + + * gdk/gdkevents.c (gdk_compress_exposures): Set the + window field of the event structure before calling + user filters. + +1999-03-31 Federico Mena Quintero + + * gdk/gdk.c (gdk_init_check): Use False as the last argument to + XInternAtom() here. This is a particularly Old And Nasty(tm) bug. + +Mon Mar 29 17:31:52 1999 Owen Taylor + + * gdk/gdkim.c (gdk_mbstowcs): Free the value of the + intermediate text property - prevents major memory + leak when gdk_use_mb. + gtk-d3august-990311-0: Bj|rn Augustsson + +Mon Mar 29 17:02:58 1999 Owen Taylor + + Patches from Akira Higuchi + gtk-a-higuti-990322-[0-3] + + * gdk/gdkfont.c (gdk_text_extents_wc): Make work when + sizeof(wchar_t) != sizeof (GdkWChar) + + * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS + that was causing -DX_LOCALE not to work. + + * gtk/gtkrc.c (gtk_rc_init): + X_LOCALE will never have LC_MESSAGES defined + + * gdk/gdk.c (gdk_init_check): + Remove --xim-preedit and --xim-status from argv properly. + + * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so + that the client window is present on the X server + before we pass it to the input method. + +Tue Mar 9 10:46:49 1999 Owen Taylor + + * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where + if --display is specified on the command line, than + the drag window will not be created on that display. + +Tue Mar 9 10:38:24 1999 Owen Taylor + + * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where + lookups with only_if_exists == TRUE were inserting + bogus values into the atom cache. + +Wed Mar 17 09:00:00 1999 Tim Janik + + * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t), + then reset it to NULL. + + * gdk/gdkcolor.c: + (gdk_colors_free): + (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the + key for g_hash_table_remove() in both functions, this prevents us + from accessing possibly uninitialized portions of a GdkColor structure + where we are only interested in its pixel value. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + +1999-09-21 Tor Lillqvist + + * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting, + just to be sure. + + * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of + unused variables, leftovers from the X11 version. + + * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd. + + * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only + downcase fields on X11. + +Mon Sep 20 13:17:39 1999 Pablo Saratxaga + + * configure.in,po/pt_BR.po: added Portuguese Brazilian file from + Alex Sandro Queiroz e Silva + +1999-09-17 Tor Lillqvist + + * gdk/win32/gdk.def: Add gdk_threads_mutex. + + * gtk/makefile.msc: Correct path to libintl. + + Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in + use of gint vs. int, and gint vs. gboolean in headers and + definitions. Use GtkType for the *_get_type functions. Note that + these changes preserve binary compatibility. + + * gdk/gdk.c + * gdk/win32/gdk.c + * gdk/gdk.h: Fix inconsistencies: gint vs int. + + * gtk/gtkmain.c + * gtk/gtkclist.c + * gtk/gtkmenufactory.c + * gtk/gtknotebook.c + * gtk/gtkwidget.c: Fix inconsistencies, also gint + vs. gboolean. + + * gtk/gtkcolorsel.[ch] + * gtk/gtkcombo.[ch] + * gtk/gtkdrawingarea.[ch] + * gtk/gtkgamma.[ch] + * gtk/gtkhandlebox.[ch] + * gtk/gtkhpaned.[ch] + * gtk/gtkhruler.[ch] + * gtk/gtkplug.[ch] + * gtk/gtkpreview.[ch] + * gtk/gtkruler.[ch] + * gtk/gtksocket.[ch] + * gtk/gtkstatusbar.[ch] + * gtk/gtktoolbar.[ch] + * gtk/gtkvbbox.[ch] + * gtk/gtkvpaned.[ch] + * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type + functions. + + * gtk/gtkgamma.h: Fix bug, missing () in call of + gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. + +1999-09-14 Tor Lillqvist + + * gdk/gdkcolor.c (gdk_colormap_new) + * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak: + colormap->colors was allocated twice. + + * gdk/win32/gdk.c: Remove some unused stuff. + + * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the + colormap. + + * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type) + * gtk/gtklabel.h (gtk_label_get_type) + * gtk/gtktipsquery.c (gtk_tips_query_get_type) + * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType + in a couple of places, not guint. + +Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga + + * configure.in,po/et.po: added Estonian language file + +Wed Sep 1 14:36:12 CEST 1999 Pablo Saratxaga + + * configure.in,po/da.po: added Danish file + +Sun Aug 29 13:38:59 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: Minor FAQ Update + +Sat Aug 28 14:34:37 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ update + +1999-08-27 Tor Lillqvist + + Win32: Philippe Colantoni suggests a + way to get window contents continually refreshed while resizing. I + didn't like the effects myself, so it's not on by default. + + * gdk/win32/gdkprivate.h: New flag variable + gdk_event_func_from_window_proc, FALSE by default. + + * gdk/win32/gdk.c (gdk_init_check): Set above flag if the + environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we + are passed --gdk-event-func-from-window-proc. + + * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set, + and we have am event_func, call it instead of enqueing the event. + +1999-08-23 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon + Kelley: Set expose_count in GdkEventExposes correctly. + + * gdk/win32/gdkwindow.c: Remove dead code (#ifdef + MULTIPLE_WINDOW_CLASSES). + + * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer + for bug in NT, apparently NT *does* draw the end pixel, too, in + LineTo with a one-pixel pen, so we don't have to do it ourselves. + +1999-08-21 Tor Lillqvist + + Improvements by Hans Breuer: + + * gdk/win32/gdkwindow.c (RegisterGdkClass): New function + + * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the + CS_?REDRAW flags as they cause lots of (late) redraws when "show + window contents while dragging" is turned on. Allocate at least + one unique class for every GdkWindowType. If support for single + window-specific icons is ever needed (eg. Dialog specific), every + such window should get its own class. + +1999-08-19 Tor Lillqvist + + * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste + error that caused crashes. + +1999-08-17 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one + window, use ScrollWindowEx, and call UpdateWindow. This prevents + bugs when for instance part of the window was outside the + display. Thanks to Philippe Colantoni for finding and fixing this. + +1999-08-16 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial + endpoint calculations which were totally wrong. (A little RTFMing + helps a lot ;-) + + * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc + from a separate directory, not from gettext, because of licensing + issues (we want to use the LGPL version). + + * README.win32: Mention the intl from glibc vs from gettext issue. + +1999-08-13 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs + in the key event handling: Now AltGr chars work again. Also, + now Alt-digits are passed up as well as Control-digits. + Pass keypad plus and minus as normal plus and minus. + +Wed Aug 11 13:38:26 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: FAQ Update + +1999-07-25 Tor Lillqvist + + * README.win32 + * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without + the Wintab SDK. + + * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work + OK, but getting closer. Guard against bogus tilt data from Wacom + ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to + enable easier building without Wintab. + + * gdk/win32/gdkinput.h + * gdk/win32/gdkevents.c + * gdk/win32/gdkwindow.c: Minor changes related related to above. + + * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11 + code. As we have just one visual on Win32, no sense to have it in a + table, and no need for the hash table. + + * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look + better on white background. + +1999-07-21 Tor Lillqvist + + * README.win32: Update gcc build instructions. Mention gettext is + GPL. + + * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct + supported cursor size with GetSystemMetrics. + + * gdk/win32/gdkfont.c + * gtk/gtkfontsel.c: Guard against some font weight and charset + symbols being undefined (in mingw32 headers). + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin + * gtk/gtkthemes.c: No longer need to have differently named + gcc-built DLLs when using gcc-2.95 and -fnative-struct. + +hu Jul 15 13:33:15 BST 1999 Tony Gale + + * docs/gtkfaq.sgml: Long awaited FAQ update. + +1999-07-15 Tor Lillqvist + + * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement + it. Obscure bit manipulation needed. + + * gdk/win32/gdkevents.c: Logging. + + * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming + style (file name include compiler name) for theme engines. + +1999-07-13 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage. + + * gdk/win32/gdkevents.c: Fix long-standing bug in key + events. The key.string wasn't zero-terminated, still we strdup'ed + it in gdk_event_copy(). Synthesize crossing events for button + events before possible propagation. + + * gdk/win32/gdkwindow.c: Log gdk_window_set_title. + + * gdk/win32/makefile.cygwin + * gtk/makefile.cygwin: Use new DLL naming style for the + GCC-compiled ones. + + * gdk/win32/makefile.msc + * gtk/makefile.msc: Cosmetics mostly. + + * gtk/gtk.def: Add missing entry points. + + * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32. + +1999-07-09 Tor Lillqvist + + * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width + or height is zero. Don't print a warning if Pie or Arc fails, they + always fail (?) for very narrow ellipses. + + * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for + the part or the destination window corresponding to source area + outside of the source drawable's boundary. + + * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do + anything if less than two points. + + * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always + return NULL. Gtk cut-and-paste inside a single program works + better this way. (It always gets the clipboard contents from + Windows, not from its own copy, which is cleared anyway. I can't + say I fully understand what happens... Emulating the X selection + and property stuff is a bit of a mess.) + + * gdk/win32/gdkevents.c + * gdk/win32/gdkproperty.c: A bit more verbose logging. + + * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions + that never got deleted). Revamp gdk_region_shrink. + + * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions + after use. + + * gtk/gtk.def: Add some missing entry points. + + * gtk/gtkrc.c: Strip trailing directory separator from pixmap path + component. + +1999-07-04 Tor Lillqvist + + * gdk/win32/gdkevents.c (gdk_event_translate): Handle + Control-digits specially. + +1999-07-03 Tor Lillqvist + + * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext. + +1999-06-28 Tor Lillqvist + + * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for + bitmaps, should be multiple of 4. (Thanks to Hans Breuer for + finding this.) + +1999-06-01 Jose H Mercado + + * gtk+.spec.in: Corrected some typos in files section. + +1999-06-15 Tor Lillqvist + + * README.win32: Mention using GNU gettext. + * config.h.win32: Enable NLS stuff. + * gtk/makefile.msc: Use GNU gettext. + * gdk/win32/gdkdnd.c: Minor header reorg. + * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly + cosmetics. + * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public. + * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call. + +Wed Jun 2 11:44:25 PDT 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.status + * ltconfig + * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged) + +1999-05-30 Tor Lillqvist + + * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to + SafeAdjustWindowRectEx. Don't override all calls to + AdjustWindowRectEx by it, but use it only in two places: When + creating a new top-level window and when moving a top-level + window. + + Use screen coordinate rectangle, not client rectangle, in + gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only + when we try to place a window so that the decoration (mainly, + title bar) isn't visible. + + These changes fix the bug that showed up for instance as the + GIMP's saved top-level windows moving right and down (by an amount + equal to the window decoration) for each session. This bug showed + up also in testgtk's "Saved Position". + + gdk_window_resize also redone a bit. + +1999-05-25 Tor Lillqvist + + * gtk/testgtkrc: Add (commented out) Windows-style theme + include line. + + * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points. + +1999-05-18 Tor Lillqvist + + * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and + gdkx.h to a gdk subdirectory, so that applications can include + these with without trouble. + + * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified. + (gdk_image_destroy): Plug resource leak, some GdkImages didn't + have their bitmap destroyed. + + * gdk/win32/gdk.def: Add gdk_root_parent. + +Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson + + * configure.in + gtk-config.in + ltconfig + ltmain.sh + gtk/Makefile.am: changes to compile nicely (with xlib) + on BeOS + +Sat May 1 15:04:42 PDT 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.3 + +Fri Apr 30 13:38:16 1999 Lars Hamann + + * gtk/gtkclist.c: + * gtk/gtkctree.c: merges from gtk-1-2 + +1999-04-25 Tor Lillqvist + + Support added for building using a GNU toolchain on Win32, + gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1. + + * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files. + * config.h.win32: Changes for gcc. + * gdk/gdkrectangle.c: Include gdk.h as . + * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp. + * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h. + * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better. + Protect shl stuff unavaiilable with mingw32 headers. + * gdk/win32/gdkevents.c: Fix typo. + * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc. + * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?) + * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler. + * gdk/win32/gdkprivate.h: Make up for some stuff missing from + the mingw32 headers. + * gdk/win32/makefile.msc: Use latest Wintab kit and glib. + * gtk/gtkfilesel.c: Include early, to get stat->_stat + definition on Win32. Test for NATIVE_WIN32, not _MSC_VER. + * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32. + Test for NATIVE_WIN32, not _MSC_VER. + * gtk/gtkmain.c: No use warning about developer version on Win32, + there aren't any non-developer versions anyhow. + * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER. + * gtk/makefile.msc: Use pthread from another directory. Minor other + changes. + +Wed Apr 21 14:20:22 1999 George Lebl + + * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the + default filter from the list + +Mon Mar 8 12:52:53 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning + when gtk_widget_grab_default() is called for a widget that + is not within a GtkWindow. + +Sat Apr 10 13:52:54 BST 1999 Tony Gale + + * docs/gtk_tut.sgml, examples/clist.c: use a + scrolled window in the clist example. Minor + tutorial fixes. + +Fri Apr 2 09:19:20 BST 1999 Tony Gale + + * docs/gtk_tut.sgml: Style check from David King + + +1999-03-30 Pavel Machek + + * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code + compile with unknown value of GDK_WINDOWING + +1999-03-28 Raja R Harinath + + * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists + after the rule is fired. + (install-exec-local): Install gdkconfig.h only if the contents are + different from the currently installed gdkconfig.h. + +1999-03-26 Raja R Harinath + + * gdk/Makefile.am (configexecincludedir): Rename from + configincludedir so that gdkconfig.h will be installed + as part of `make install-exec'. + +Fri Mar 19 16:50:33 PST 1999 Manish Singh + + * acinclude.m4 + * config.guess + * config.sub + * ltconfig + * ltmain.sh: upgrade to libtool 1.2f + + * autogen.sh: libtool is not required to autogen gtk+ + + * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly + needed) + +1999-03-18 Tor Lillqvist + + * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for + declaring gdk variables exported/imported from the DLL. New image + type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and + drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and + GDK_DRAG_PROTO_OLE2. + + * gdk/gdk.h: Merge in Win32 version: Two new functions, + gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far + declared only for the Win32 version, but could be in the X11 + version as well. (Needed for a Xlib-less gdk_imlib.) + gdk_color_hash should have only one parameter. Declare + gdk_threads_mutex with GDKVAR. + + * gdk/gdkcolor.c (gdk_color_hash): A hash function should have + just one parameter. + + * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes + per pixel, not bits. + + * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv): + Fetch bpp (which means bits-per-pixel here) from another place on + Win32. Accept also depth==32 (which we might get on Win32) with + bpp==32. + + * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel, + gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc, + gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c: + Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be + in the backend-dependent directory, not in the common gdk + directory. + + * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk + headers. + +Wed Mar 17 05:06:49 1999 Tim Janik + + * gtk/gtkmain.c (gtk_init_check): tell people that they don't really + want to use the Gtk+ devel version (which is true, and yes - even i am + currently working with the 1.2.x branch). so everyone reading this, you + probably want to issue + cvs checkout -r glib-1-2 glib + and + cvs checkout -r gtk-1-2 gtk+ + as your next two comands. + +Wed Mar 17 02:49:32 1999 Tim Janik + + * configure.in: build gtkcompat.h from gtkcompat.h.in instead of + gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0. + + * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this + file. strongly deprecated the GTK_HAVE_* macros, we provide + GTK_CHECK_VERSION() for people that need to check for certain + Gtk+ versions. + + * gtk/gtkcompat.h: removed this from CVS. + * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad + idea right from the start, it just didn't seem like that back then. + +Wed Mar 17 01:46:28 1999 Tim Janik + + * merges from gtk-1-2: + +Tue Mar 16 17:43:33 1999 Tim Janik + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the + item factory class has been created. + (gtk_item_factory_parse_rc): likewise. + + * gtk/gtkmenu.c: + keep proper references for old_active_menu_item. + (gtk_menu_reparent): unset the usize of the new parent, + so the menu can sanely be size requested and we don't get nasty screen + artefacts upon next reparentation. + (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an + enter notify. only synthesize enter notifies if the pointer really is + inside the event window. + (gtk_menu_popdown): use gtk_menu_shell_deselect(). + (gtk_menu_popup): move the background setting stuff into + gtk_menu_tearoff_bg_copy() so it can be called from other places as well. + + * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use + gtk_menu_shell_select_item() to select the new item. + (gtk_menu_shell_deselect): export this function, so gtkmenu.c can + do the right thing for deselection as well. + +Sat Mar 15 20:10:33 1999 Tim Janik + + * gtk/gtkwidget.[hc]: + (gtk_widget_accelerators_locked): return whether a widget's accelerators + are locked. + + * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or + existing accelerators if the widget's accelerators are locked. + +Sat Mar 14 19:44:05 1999 Tim Janik + + * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items. + + * gtk/gtkmenu.c: truely forward key press and key release events to + the menu widget from the toplevel or tearoff window. we can't simply + connect to that, we need to stop further processing of the events as + well. + +Sat Mar 13 13:14:17 1999 Tim Janik + + * gtk/gtkmenu.c: + (gtk_menu_key_press): pass event->keyval, event->state to + gtk_accelerator_valid, instead of event->keyval twice. + refuse to install single letter accelerators for menus that use + single letter shortcuts. + + * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use + gtk_menu_ensure_uline_accel_group(). + + * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group() + which will always return an uline accel group, made + gtk_menu_get_uline_accel_group() return NULL if the group isn't + yet created. + +Mon Mar 15 01:03:27 1999 Lars Hamann + + * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag. + + * gtk/gtkclist.c (gtk_clist_column_title_passive): + Leave button sensitive, trap button_press, button_release, + motion_notify, enter_notify and leave_notify events instead. + (gtk_clist_column_title_active): disconnect event handler. + (gtk_clist_drag_data_get): fixed memory leak. Reported by + Guillaume Laurent + +Wed Mar 10 23:49:55 1999 Lars Hamann + + * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few + width/height mixups. + + * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal + if needed. + +Wed Mar 10 00:11:32 1999 Tim Janik + + * gtk/testgtk.c (create_item_factory): unref the item factory after + window's destruction. + + * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference + count on the menu shell around the menu item's activation, since the + signal emission may cause menu shell destruction. + + * gtk/gtkitemfactory.c: + the previous code leaked one accel group per menu. we use + gtk_menu_get_uline_accel_group() now to fix that, and with that + also create the underline accelerator group of the menus only if + required (i.e. an underline accelerator has been specified). + (gtk_item_factory_construct): + (gtk_item_factory_create_item): removed code that would create an + extra accel group for the menu (and leak references). + (gtk_item_factory_create_item): adapted the underline accelerator + installation code to properly feature gtk_menu_get_uline_accel_group(). + + * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive + menu->accel_group, this may return NULL if the accelerator group + hasn't been set yet. + added gtk_menu_get_uline_accel_group() to retrive the underline + accelerator group of the menu, this will be created on demand + and proper care is taken about its reference count. + + * gtk/gtkitemfactory.h: + * gtk/gtkitemfactory.c: + dumped the approach of keeping a widgets by action list on the + factory since the factory<->widget destroy negotiation didn't work + and would be hard to get going at all. instead we keep a list of + GtkItemFactoryItem items on the factory (GtkItemFactoryItems are + persistant throughout a program's life time). + also, i removed the static const gchar *key_* variables, and made + them inline strings (they weren't actually used anyways). + (gtk_item_factory_add_item): update ifactory->items. + (gtk_item_factory_destroy): destroy ifactory->items (and remove + the item factory pointer from the remaining ifactory widgets). + (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem + list to find the widget. + (gtk_item_factory_get_item): new function that works around + gtk_item_factory_get_widget() limitations, this function will only + return menu items, even for entries. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + + * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix + provided by Olaf Dietsche . + +Sun Mar 7 06:13:29 1999 Tim Janik + + * gtk/gtkcontainer.c: + (gtk_container_add_with_args): + (gtk_container_addv): + (gtk_container_add): before adding a child to a conatiner, make sure + it is (default) constructed, this is neccessary because under certain + circumstances the child will get relized and mapped immediatedly, in + which case it has to be constructed already. + +Mon Mar 1 17:58:21 1999 Tim Janik + + * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal + values > 1 as TRUE also. + +1999-03-16 Tor Lillqvist + + * README.win32: New file. + + * configure.in: Check for lstat. + + * config.h.win32: Add non-definition of HAVE_LSTAT, just for + completeness. + + * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat. + + * gtk/gtk.def: Removed CRs. + + * gtk/makefile.msc: Correct include path to Win32 GDK version (in + ..\gdk\win32). + + * gdk/win32/makefile.msc: Correct upwards relative paths. + +Mon Mar 15 03:38:34 1999 George Lebl + + * gtk/gtkdnd.c: (gtk_drag_highlight) swap the + gtk_drag_highlight_expose and gtk_drag_highlight_paint since + it was connecting a void function to expose_event and the int + returning function to the draw signal + +1999-03-14 Jeff Garzik + + * configure.in: + Use correct path to libgmodule.la when ref'ing uninstalled copy + of glib. (Already in stable branch, Bug #417) + +1999-03-15 Tor Lillqvist + + Win32 merge and general portability stuff: + + * acconfig.h,configure.in: Check for . + + * gdk/win32: New directory (actually, been there for a while). + + * gtk/fnmatch.c: Include for G_DIR_SEPARATOR, WIN32 and + NATIVE_WIN32, and use these. Always case fold on Win32. No + backslashed escapes on native Win32. + + * gtk/{gtk.def,makefile.msc}: New files. + + * gtk/Makefile.am: Add above new files. + + * gtk/{gtkaccelgroup,gtkbindings}.c: Include + instead of . + + * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include + config.h. Protect inclusion of , , and + appropriately. + + * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much). + Use ABS() (from ) instead of abs(). + + * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion + of gtk (and thus glib) headers, so that WIN32 will be + defined. With MS C, include for mkdir prototype. + + * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add + some casts, needed by MS C. + + * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't + implemented). + + * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include + only on X11 platform, otherwise . Use + G_SEARCHPATH_SEPARATOR_S and g_module_build_path. + + * gtk/gtkmain.h: Mark variables for export/import on Win32. + + * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case + the event is not a hint, or its window is not the slider. Needed + on Win32, at least. + + * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use + unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and + G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use + a subdirectory of the Windows directory as gtk system + configuration directory. + + * gtk/gtkselection.c: No chunks on Win32. + + * gtk/gtksocket.c: Not implemented on Win32. + + * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path. + + * gtk/makeenums.h: Include gdkprivate.h after gdk.h. + + * gtk/maketypes.awk: Declare variables with a macro that expands to + necessary export/import magic in the case of Win32. + + * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers. + +1999-03-13 Raja R Harinath + + * configure.in (gdk_wc): Move widechar tests from `glib' to here, + since those were meant only for gdki18n.h. + * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_* + for widechar tests. + * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h. + +1999-03-13 Tor Lillqvist + + * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate + gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h. + + * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is + installed) to CFLAGS. + + * gdk/Makefile.am: Add rules for gdkconfig.h. + + * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing + APIs. + + * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via + gdkx.h anyway when compiling for X11. + (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In + general): Merge in Win32 version. + + * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32 + version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde + expansion (if we don't have HAVE_PWD_H), allow for drive + letters. UNC paths (\\server\share\...) are not handled yet. Also, + included code from Craig Setera's port to Win32 (the one that uses + X11, and the cygwin dll), even if it probably will be abandoned. + + * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if + the user entered one herself. This way one can complete *.h and + don't get matches on any .help files, for instance. + +Tue Mar 9 01:01:28 1999 Tim Janik + + * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our + font hash table, if we have a GdkFontPrivate entry for this font + already, simply increment its reference count, provided by Olaf Dietsche + . + + * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix + provided by Olaf Dietsche . + +1999-03-09 Federico Mena Quintero + + * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced + the number of calls to gdk_draw_point() (and thus to X) by + clipping the points by hand. + + * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of + the clip parameter. + (gtk_handle_box_paint): Only paint the handle if the expose area + intersects it. + +Sun Mar 7 18:46:37 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) + + * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.) + +Sun Mar 7 11:43:34 1999 ape@spacetec.no (Asbjorn Pettersen) + + * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes. + Added function gen_8_3_dll_name(gchar *name, gchar *fullname). + +Fri Mar 5 09:12:24 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) + + * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in + textmode (O_TEXT) for OS/2 version. + +Sun Feb 28 16:46:02 1999 Stefan Jeske + + * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to + GtkSpinButton, "input" and "output", to make the output more flexible. + The user has to provide a mapping between adjustment->value and the + output string (and vice versa, if the spin button is editable). + See testgtk for examples. + +Sat Feb 27 01:18:47 1999 Tim Janik + + * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started + new one. + + * configure.in: set gtk+ version to 1.3.0. +======= * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, +>>>>>>> 1.2802 diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c index ed16e9370e..e5a921c5aa 100644 --- a/gtk/gtkwindow.c +++ b/gtk/gtkwindow.c @@ -4586,8 +4586,24 @@ gtk_window_compute_hints (GtkWindow *window, if (geometry_info && geometry_info->widget) { - extra_width = widget->requisition.width - geometry_info->widget->requisition.width; - extra_height = widget->requisition.height - geometry_info->widget->requisition.height; + GtkRequisition child_requisition; + + /* FIXME: This really isn't right. It gets the min size wrong and forces + * callers to do horrible hacks like set a huge usize on the child requisition + * to get the base size right. We really want to find the answers to: + * + * - If the geometry widget was infinitely big, how much extra space + * would be needed for the stuff around it. + * + * - If the geometry widget was infinitely small, how big would the + * window still have to be. + * + * Finding these answers would be a bit of a mess here. (Bug #68668) + */ + gtk_widget_get_child_requisition (geometry_info->widget, &child_requisition); + + extra_width = widget->requisition.width - child_requisition.width; + extra_height = widget->requisition.height - child_requisition.height; } /* We don't want to set GDK_HINT_POS in here, we just set it