1 2000-11-08 Alexander Larsson <alexl@redhat.com>
3 * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
6 * gtk/gtkmenu.c: Add support for scrolling menus.
7 Remove gtk_menu_append/prepend/insert, these have been moved to
8 gtkcompat.h as #defines.
11 Add compatibility #defines for gtk_menu_append/prepend/insert
13 * gtk/gtkmenu.h: Add data needed for scrolling menus.
14 GtkMenuPositionFunc gets an extra argument push_in.
15 gtk_menu_append/prepend/insert removed.
17 * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
18 positioning behaviour to fit to scrolling menus.
20 * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
21 into menuitem->submeny. That is wrong, and broke torn
22 off submenus of torn off menus, since they were unrealized
23 when the first menu was unrealized.
25 * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
26 gtk_menu_shell_select_item() since these need to be overridden in
29 * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
30 positioning behaviour to fit to scrolling menus.
31 (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
32 the current item so that it is prelighted when the menu pops up.
33 This is a workaround to the fact that the menu doesn't get the
34 initial enter event (due to grabs).
36 * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
37 s/gtk_menu_append/gtk_menu_shell_append/
40 s/gtk_menu_insert/gtk_menu_shell_insert/
42 * gtk/testgtk.c (create_menu, create_menus):
43 Create the first menu with 50 items so that menu scrolling
47 Patch from Jonathan Blandford <jrb@redhat.com>
49 * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
50 system to handle size requests. First, we ask what the size of
51 the toggle is. Then, when allocating the size, we allocate the
52 toggle_size first. This way we can have multiple menu-item
53 classes w/o needing a seperate class for each.
55 * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
56 * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
58 * gtk/gtkcheckmenuitem.c
59 (gtk_check_menu_item_toggle_size_request): New function to handle
60 the toggle size-request.
62 2000-11-07 Havoc Pennington <hp@redhat.com>
64 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
65 Half-ass somewhat fix this function, so that scrolling to the
66 insertion point works. Pango hacking is in the future to really
69 * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
70 length of data, no longer used.
72 * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
73 method contents in here, get rid of destroy method
74 (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
75 that were backward. Remove debug spew.
76 (cut_or_copy): Make the clipboard work with insert_range to
77 preserve tags and pixbufs, not just the primary selection.
79 2000-11-07 Havoc Pennington <hp@redhat.com>
81 * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename
82 to gtk_text_mark_get_visible
84 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
85 bug that was generating an invalid iterator
87 * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
88 ensure_char_offsets() in front of code placing the iter in an
91 * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
92 make override_location arg const
93 (paste): Replace the selection if we paste into the
96 * gtk/gtkselection.h: Remove "GtkSelectioData"
97 (struct _GtkSelectionData): move the definition here.
99 * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
100 Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
102 * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
104 * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
105 (gtk_text_buffer_insert_range_interactive): implement
106 (gtk_text_buffer_get_tags): Remove, replaced by
107 gtk_text_iter_get_tags()
109 * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
110 limit parameter, to avoid infinite linear scan.
111 (gtk_text_iter_backward_search): Add search limit
112 (gtk_text_iter_forward_find_char): Add search limit
113 (gtk_text_iter_backward_find_char): Add search limit
115 2000-11-07 Alexander Larsson <alla@lysator.liu.se>
117 * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
118 gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
119 gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
120 gdk/linux-fb/gdkwindow-fb.c:
121 use g_object_new() instead of g_type_create_instance() which
122 is a private function for fundamental type implementations.
124 * gdk/linux-fb/gdkinput-ps2.c:
125 Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
126 instead just store the current modifier state. Add a (somewhat broken)
127 keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
128 Rename exported function gdk_input_ps2_get_mouseinfo to
129 gdk_input_get_mouseinfo.
131 * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
132 gdk/linux-fb/gdkwindow-fb.c:
133 gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
136 2000-11-02 Havoc Pennington <hp@redhat.com>
138 * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
139 use stock buttons. Should be 100% source compatible, appropriate
140 filesel fields now point to dialog->vbox and dialog->action_area.
141 On the bizarre side, dialog->action_area and filesel->action_area
142 are not the same widget.
143 (gtk_file_selection_init): Put some padding around the selection
144 entry, so it isn't touching the GtkDialog separator.
146 * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog,
147 use stock buttons, etc. Should also be source compatible.
148 Set the dialog default title in _init not _new().
150 * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init):
151 Use stock buttons; don't put a button box inside the existing
152 dialog button box. Don't bother with push/pop colormap anymore.
154 * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more
155 specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
156 for message dialog, and necessary for the font selection and color
157 selection with help and apply buttons.
159 * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer
160 to the created button widget. Set GTK_CAN_DEFAULT on the button.
161 (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
162 between buttons, put less padding around the action area.
163 (gtk_dialog_run): Exit on unmap rather than on destroy.
164 This will also exit the loop if the widget is hidden.
165 (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
166 instead of GTK_RESPONSE_NONE; since we're already adding a bunch
167 of GTK_RESPONSE_* stuff, this seems cleaner, and lets you
168 special-case delete event.
170 * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
173 Sun Nov 5 05:32:39 2000 Tim Janik <timj@gtk.org>
175 * gtk/testgtk.c (uposition_stop_configure): provide a toggle
176 button to temporarily disable position recording in the
177 "saved position" test.
179 Sat Nov 4 05:37:17 2000 Tim Janik <timj@gtk.org>
181 * gtk/gtkthemes.c: added compat code that temporarily implements
182 GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
183 going to be revamped by owen's upcoming GtkModule patches, but
184 untill then people want gtk to build, right? ;)
186 2000-11-04 Havoc Pennington <hp@pobox.com>
188 * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
191 * docs/Changes-2.0.txt: Add note about
192 gtk_container_get_toplevels()
194 * gtk/gtktextview.h: formatting
196 * gtk/gtktextview.c: don't start descriptions with "Returns",
199 Sat Nov 4 10:12:27 2000 Owen Taylor <otaylor@redhat.com>
201 * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
202 look for glib-2.0.m4 not glib.m4. (Ali Abdin)
204 2000-11-03 Havoc Pennington <hp@redhat.com>
206 * gtk/gtktexttagtable.c: Docs
207 (gtk_text_tag_table_size): return a signed int
209 * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
210 (gtk_text_tag_event): make the event_object a GObject
212 * gtk/gtktextview.c: Write API docs for all functions.
214 * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
215 for gtk_text_view_get_window_type() called on one of the private
218 * gtk/gtktextview.c: Instead of accessing text_view->buffer
219 directly, call get_buffer() which demand-creates a default
220 buffer. So gtk_text_view_new() can be used to create a view with a
221 default buffer in it, if you just want an empty text box users can
222 put data in. Useful for GUI builders also.
224 2000-11-03 Pablo Saratxaga <pablo@mandrakesoft.com>
226 * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
227 the charset encodign portion MUST be in lowercase.
228 * gtk/gtkrc.az: added file for Azeri language
230 2000-11-03 Havoc Pennington <hp@redhat.com>
232 Get widgets working on the btree/buffer side. Display of them
235 * gtk/gtktextview.c: start implementing child widget stuff
237 * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
239 * gtk/gtktextlayout.c: handle embedded widgets
241 * gtk/gtktextdisplay.c: handle embedded widgets
243 * gtk/gtktextchild.c: Implement all the child anchor goo
245 * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
248 * gtk/gtktextbtree.c: Add child anchor table to the btree struct
249 (insert_pixbuf_or_widget_segment): abstract out common portions of
250 creating a child anchor or a pixbuf segment.
251 (gtk_text_btree_create_child_anchor): new function
252 (gtk_text_btree_unregister_child_anchor): new function
254 * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
255 allocate_child signal on GtkTextLayout
257 * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
259 (gtk_text_iter_get_child_anchor): new function
261 * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
262 default handler for the changed signal, which calls
263 gtk_text_buffer_set_modified(), instead of just always emitting
264 changed then calling set_modified() manually. I guess this is
265 maybe more flexible. It seems logical.
267 Fri Nov 3 08:58:38 2000 Tim Janik <timj@gtk.org>
269 * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
272 * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
274 Thu Nov 2 14:10:51 2000 Owen Taylor <otaylor@redhat.com>
276 * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
279 2000-11-02 Havoc Pennington <hp@redhat.com>
281 * gtk/testgtk.c (create_labels): had a test backward
283 * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
284 fields, so the dest GC ends up with the correct clip origin,
285 etc. Fixes a bug where colored labels didn't redraw
288 2000-11-02 Alexander Larsson <alexl@redhat.com>
290 * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
291 gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
292 gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
293 Add last argument to t_type_register_static call.
295 * gdk/linux-fb/gdkdrawable-fb2.c:
296 Add last argument to t_type_register_static call.
297 export the get_image drawable virtual function.
299 * gdk/linux-fb/gdkimage-fb.c:
300 Add last argument to t_type_register_static call.
301 rename gtk_image_get to _gdk_fb_get_image and
302 export it for use by gdkdrawable-fb2.
304 * gdk/linux-fb/gdkprivate-fb.h:
305 export _gdk_fb_get_image.
307 * gdk/linux-fb/gdkselection-fb.c:
308 Add new api call stubs.
311 Missing ( in linux-fb part.
313 * modules/linux-fb/Makefile.am:
314 Must link with gdk_pixbuf or get unresolved symbol.
316 2000-11-01 Havoc Pennington <hp@pobox.com>
318 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use
319 GTK_TYPE_TEXT_ITER and BOXED marshallers
321 * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
323 * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
325 * gtk/gtk-boxed.defs: add GtkTextIter
327 * gtk/gtkmarshal.list: Add marshallers for text widget that
328 properly use OBJECT and BOXED
330 2000-11-01 Havoc Pennington <hp@redhat.com>
332 * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
334 * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
337 2000-11-01 Havoc Pennington <hp@redhat.com>
339 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
340 Clip the rectangle to be rendered to the drawable, since
341 get_from_drawable() requires a region within the drawable
343 2000-11-01 Havoc Pennington <hp@redhat.com>
345 * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
348 Wed Oct 25 20:10:57 2000 Owen Taylor <otaylor@redhat.com>
350 * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
353 2000-11-01 Havoc Pennington <hp@pobox.com>
355 * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
357 (gtk_label_finalize): unref the attr list if any.
359 * gtk/testgtk.c (create_get_image): close test on second click
360 (make_message_dialog): close dialog if it exists
362 * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
364 * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
367 * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
368 from Pango markup format
369 (gtk_label_set_markup_with_accel): ditto but with accelerator
372 * gtk/gtkimage.c (gtk_image_expose): reformatting.
374 * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
375 reflect current state of GDK - use gdk_drawable_get_colormap, etc.
376 Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to
377 call gdk_window_get_origin().
379 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
380 implement GDK_PIXBUF_ALPHA_FULL
382 Wed Nov 1 03:43:42 2000 Tim Janik <timj@gtk.org>
384 * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
385 g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
386 g_signal_handlers_disconnect_matched to block/unblock and disconnect
387 multiple handlers respectively, instead of only treating the
388 first handler found (bug reported by owen).
390 Mon Oct 30 19:23:50 2000 Jonathan Blandford <jrb@redhat.com>
392 * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
394 * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
396 * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
397 gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
398 gtk/gtktreeviewcolumn.h: Fixed inline docs.
400 * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
401 widget. Needs writing someday.
403 * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
406 2000-10-30 Havoc Pennington <hp@redhat.com>
408 * gtk/gtktextview.h, gtk/gtktextview.c:
409 Rename delete_at_cursor delete_from_cursor, and
412 2000-10-30 Havoc Pennington <hp@redhat.com>
414 * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
415 gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
416 gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
417 gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
418 gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
419 gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
420 gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
421 gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
422 gtktexttypes.h, gtktextview.c, gtktextview.h:
424 Massive reindentation and reformatting. Arg alignment and comments
425 still need fixing in various places.
427 2000-10-30 Havoc Pennington <hp@redhat.com>
429 * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
430 to be named insert_at_cursor and delete_at_cursor so C++ can
433 2000-10-28 Tor Lillqvist <tml@iki.fi>
435 * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
436 to get a double directory separator in case the home directory
437 ends with one. This would cause trouble especially on Windows,
438 where the path will be confused with the syntax for an an UNC
439 (network share) path \\server\share\path.
440 (gtk_rc_add_initial_default_files): Ditto.
442 Sat Oct 28 02:33:09 2000 Robert Brady <robert@suse.co.uk>
444 * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
446 * gtk/gtktextview.c: Use correct marshallers.
448 Fri Oct 27 17:56:26 2000 Jonathan Blandford <jrb@redhat.com>
450 * gtk/gtkliststore.c: Not sure how this ever worked. Fixed it to
451 use new iter stuff, and added all the appropriate signals et al.
453 * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
454 code is internal to gtk only.
456 2000-10-28 Tor Lillqvist <tml@iki.fi>
459 * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
462 Fri Oct 27 20:15:00 2000 Tim Janik <timj@gtk.org>
464 * gtk/Makefile.am: added dependancies for testtextbuffer which broke
467 Fri Oct 27 18:51:44 2000 Tim Janik <timj@gtk.org>
469 * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
471 2000-10-27 Robert Brady <robert@suse.co.uk>
473 * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic),
474 en_GB (British), ia (Interlingua).
476 2000-10-26 Havoc Pennington <hp@redhat.com>
478 * gtk/gtktextiter.c (my_strrstr): fix constness warning
481 nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
483 * gtk/gtktextsegment.c (char_segment_new): rename
484 (_char_segment_new_from_two_strings): rename
485 (_toggle_segment_new): rename
487 * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
488 (make_clipboard_widget): make it static
489 (text_get_func): static
490 (text_clear_func): static
492 * gtk/gtkcolorsel.c (adjustment_changed): make this function
494 (hex_changed): make it static
495 (hsv_changed): make it static
496 (opacity_entry_changed): make it static
498 * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
499 (toggle_segment_check_func): rename with _gtk
501 * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
502 (_widget_segment_new): rename
503 (_widget_segment_add): rename
504 (_widget_segment_remove): rename
505 (_widget_segment_ref): rename
506 (_widget_segment_unref): rename
508 * gtk/gtktextmark.c (_mark_segment_new): Rename
509 _gtk_mark_segment_new
511 2000-10-26 Havoc Pennington <hp@redhat.com>
513 * gtk/gtkmarshal.list: add new marshallers used by the text widget
514 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
517 * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
520 * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
521 gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
522 license on these files.
524 * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
527 * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to
528 runtime random number different for each tree, instead of
529 a constant I made up.
531 Thu Oct 26 07:36:16 2000 Tim Janik <timj@gtk.org>
533 * gtk/Makefile.am: buncha cleanups, kludged build sources
534 dependencies with a Makefile: oldest-source-stamp dependancy
535 for the moment. automake is really fighting us here, with
536 intentionally not allowing user-defined rules or dependancies
537 prior to it's -include $(DEP_FILES) statement. sucks rocks!
539 * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
540 to public headers. tehy have a comment stating that they are
541 "semi-public" aren't included by gtk.h and if enums popup there,
542 they can be /*< skip >*/-ed.
544 * gtk/gtktextlayout.h:
545 * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
548 Wed Oct 25 20:40:25 2000 Jonathan Blandford <jrb@redhat.com>
550 * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
551 GtkTreeIter. Added iterators everywhere.
553 * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
555 * gtk/gtktreeviewselection.c: Changed to use the iterators.
557 * gtk/gtktreestore.c: Changed to use the iterators.
559 * gtk/gtkliststore.c: Commented out the code. Will convert to
562 * gtk/gtkmodelsimple.c: Commented out the code. Will convert to
565 * gtk/treestoretest.c: Changed to use iterators.
567 * demos/testgtk/main.c: Moved to use the new iterator system.
569 Thu Oct 26 02:10:32 2000 Tim Janik <timj@gtk.org>
571 * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
572 localization misbehaviour.
574 * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
575 a useless type without copy/free.
577 * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
578 of GTK_TYPE_CTREE_NODE.
580 Thu Oct 26 00:51:52 2000 Tim Janik <timj@gtk.org>
583 (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
586 * gtk/gtk-boxed.defs (GtkSelectionData): specify
587 gtk_selection_data_copy and gtk_selection_data_free
588 do GtkSelectionData work as params in signals.
590 Wed Oct 25 20:47:41 2000 Tim Janik <timj@gtk.org>
592 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
593 implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
594 couldn't they at least give it a non-standard name?
596 * gtk/gtktextlayout.c: arg! yet another implementation of
597 gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
599 * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
600 gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
601 home. now i know this _is_ a conspiracy.
603 * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
606 * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove):
607 (gtk_accel_group_create_add): marshaller signature fixups.
609 * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
610 pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
612 * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
615 Tue Oct 24 23:59:21 2000 Tim Janik <timj@gtk.org>
617 * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
618 due to the signal system changes, it wouldn't build currently. to
621 * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
623 * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
624 so it needs gtk_marshal_VOID__ENUM() instead of
625 gtk_marshal_NONE__UINT().
627 * gdk/gdk*.c: adapted type registration functions.
630 * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
633 * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
636 (gtk_object_destroy):
637 (gtk_object_shutdown): fixed recursion guards. basically we have to
638 catch the case where any of GObject.shutdown() or gtk_object_destroy()
639 is called during ::destroy, and avoid recursion there.
641 * gtk/gtktypeutils.c:
642 * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
643 boxed_copy/boxed_free. this needs a more general solution based on a
644 publically installed code-generator utility.
646 * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
647 glib's gobject has support for that now.
648 define GtkSignalMarshaller in terms of GSignalCMarshaller.
650 Mon Oct 23 09:36:42 2000 Tim Janik <timj@gtk.org>
652 * gtk/gtksignal.[hc]:
653 * gtk/gtkmarshal.[hc]:
654 * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
655 compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
656 removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
659 * *.c: marshaller name fixups.
661 * gtk/gtkmarshal.list: added a comment briefing the format.
663 Sun Oct 22 23:14:39 2000 Tim Janik <timj@gtk.org>
665 * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
666 compatibility macros here now. more specifically, most of
667 the API is preserved (yes, _most_, nonwithstanding the
668 following exceptions listed, the API is stil lHUGE ;)
669 things that got removed completely:
670 GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
671 gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
672 gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
673 gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
674 gtk_signal_remove_emission_hook().
675 non-functional functions variants:
676 gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
677 the GtkCallbackMarshal argument to gtk_signal_connect_full() is
678 not supported anymore.
679 (gtk_signal_compat_matched): new internal function to aid
680 implementation of the compatibility macros, it provides
681 functionality to block/unblock/disconnect handlers based
684 * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
686 * *.c: adaptions to new type registration API signatures.
688 Fri Oct 20 15:26:33 2000 Tim Janik <timj@gtk.org>
690 * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
692 2000-10-25 Robert Brady <robert@suse.co.uk>
694 * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
695 gdk_property_delete): If window == NULL, assume the root window.
696 (restoring the behaviour that was in 1.2).
698 * gtk/testtext.c (save_buffer): Allow creation of new files when
701 (fill_file_buffer): Don't die if a UTF-8 sequence is split across
704 2000-10-25 Tor Lillqvist <tml@iki.fi>
706 * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
708 * gdk/win32/gdkdrawable-win32.c
709 * gdk/win32/gdkimage-win32.c
710 * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
713 * gdk/win32/gdkcc-win32.c
714 * gdk/win32/gdkcolor-win32.c
715 * gdk/win32/gdkfont-win32.c
716 * gdk/win32/gdkinput-win32.c
717 * gdk/win32/gdkmain-win32.c
718 * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
720 2000-10-24 Havoc Pennington <hp@redhat.com>
722 * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
725 * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
726 redraw text when a tag is applied to it.
728 * gtk/gtktexttag.c (gtk_text_tag_affects_size)
729 (gtk_text_tag_affects_nonsize_appearance): private functions to
730 see if a tag requires various kinds of redraw/layout to be queued
733 * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
735 * gtk/testtext.c (fill_example_buffer): Put the cursor
736 at the start of the buffer, so search works by default
738 * gtk/gtktextiter.c (lines_match): init match_start always
740 * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
741 function, get iter at a line + a byte index
743 * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
744 to set byte position within a line
745 (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
747 2000-10-23 Havoc Pennington <hp@redhat.com>
749 * gtk/testtext.c: Re-enable the "find" dialog
751 * gtk/testgtk.c: Add test for gdk_drawable_get_image
753 * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
754 the arguments to gdk_draw_drawable were in the wrong order
755 (gdk_window_paint_init_bg): This function was ignoring the
756 init_region, instead of clipping to it, so the entire backing
757 pixmap was cleared on every begin_paint()
758 (gdk_window_begin_paint_region): Hmm, the same list-walking bug
759 was in here again, the loop kept using the same GtkWindowPaint
761 (gdk_window_begin_paint_region): Fix a bug where we had two
762 x_offset instead of x_offset and y_offset
764 * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
765 before we get the image.
766 (gdk_draw_drawable): get the composite before we draw the drawable.
767 (gdk_drawable_real_get_composite_drawable): default
768 get_composite_drawable implementation that returns the drawable
771 * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
772 get_composite_drawable virtual function
774 * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
777 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
778 make this work if the source drawable is a GdkDrawableImplX11
779 instead of a public drawable type. This is really broken; the
780 problem is that GdkDrawable needs a virtual method get_xid(), but
781 of course that doesn't work in practice. Enter RTTI.
783 Also, improve mismatched depth message.
785 * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
788 * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
789 install _gdk_x11_get_image as our implementation of get_image
791 * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
792 _gdk_x11_get_image and export for use in gdkdrawable-x11.c
794 * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
795 gdk_drawable_get_image
797 * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
799 * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
802 * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
803 trailing semicolon after for loop
805 Mon Oct 23 12:07:57 2000 Owen Taylor <otaylor@redhat.com>
807 * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
808 where font_desc for widget's context lagged widget's font_desc by
811 2000-10-22 Tor Lillqvist <tml@iki.fi>
813 * gdk/win32/gdkgc-win32.c
814 * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
816 * gtk/makefile.mingw.in
817 * gtk/gtk.def: Updates.
819 * gtk/testgtk.c: sleep() is called _sleep in MS's C
822 * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
824 * gtk/makefile.msc: Remove
826 * gtk/makefile.msc.in: New file, like makefile.mingw.in.
828 * gtk/Makefile.am: Add it.
830 * configure.in: Generate it.
832 * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
833 * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
834 something even if not implemented, to satisfy picky MSVC.
836 Patches by Hans Breuer:
838 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
839 SetBkMode() and SetTextAlign() before calling
840 pango_win32_render().
842 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
843 Set hcliprgn to NULL after destroying it.
844 (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
846 * gdk/win32/gdkgeometry-win32.c
847 (_gdk_windowing_window_queue_antiexpose): More effective
850 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
851 depth as default, not the visual's.
853 * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
856 * gdk/win32/gdkprivate-win32.h: Define a helper macro,
859 * gdk/win32/gdkimage-win32.c: Use it.
861 2000-10-22 Robert Brady <robert@suse.co.uk>
863 * configure.in: Check for bind_textdomain_codeset
865 * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset
866 present, make use of it.
868 Add a translatable string "default:LTR" which, if translated
869 to "default:RTL", will cause the default direction to be
872 * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget
873 direction if marked as flippable.
875 * gtk/gtkhscale.c: Mark widget as flippable.
877 2000-10-04 Havoc Pennington <hp@redhat.com>
879 * gtk/testgtk.c (create_buttons): create some stock buttons
880 with the default accel group
881 (create_image): test some new GtkImage features
882 (make_message_dialog): test GtkMessageDialog
883 (create_modal_window): fix someone's bizzarro indentation
885 * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement
886 GTK_WIN_POS_CENTER_ON_PARENT.
887 Add "destroy with parent" setting, which means the window goes
888 away with its transient parent.
889 (gtk_window_get_default_accel_group): get the default accel group
891 (gtk_window_set_destroy_with_parent): set/unset destroy with
893 (gtk_window_read_rcfiles): invalidate icon set caches
894 after reloading rcfiles
896 * gtk/gtkenums.h (GtkWindowPosition): add
897 GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog
898 on its parent window when the dialog is mapped for the first time.
900 * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add
901 a simple message dialog class
903 * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event
904 handler to emit response signal, and maybe later it would
905 honor a hide_on_delete flag - though that isn't there yet.
906 Set border width on the vbox to 2, so we get some padding.
907 Use a button box for the action area.
908 (gtk_dialog_key_press): synthesize a delete event if Esc
909 is pressed and the GtkWidget key press handler didn't
910 handle the escape key.
911 (gtk_dialog_new_with_buttons): new function creates a dialog
912 with some default buttons in it.
913 (gtk_dialog_add_action_widget): add an activatable widget
914 as a button in the dialog - you can also add a non-activatable
915 widget by accessing the action area directly.
916 (gtk_dialog_add_button): add a simple button - stock ID or
917 label - to the action area
918 (gtk_dialog_response): emit response signal
919 (gtk_dialog_run): block waiting for the dialog, return
920 the response. Override normal delete_event behavior, so that
921 delete_event does nothing inside gtk_dialog_run().
923 * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
924 emitted when an action widget is clicked or the dialog gets
927 * gtk/gtk.h: add gtkmessagedialog.h
929 * gtk/Makefile.am: add gtkmessagedialog.[hc]
931 2000-10-18 Havoc Pennington <hp@redhat.com>
933 * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug
934 where any number of empty lines would get skipped
936 * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
939 * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
940 warning about invalid iterators (explain more thoroughly)
941 (gtk_text_iter_in_region): rename gtk_text_iter_in_range
943 * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
946 * demos/*.c: Add error handling
948 * gtk/gtktextbuffer.c: don't modify const iterators
950 * gtk/gdk-pixbuf-loader.c: Add full error handling here
952 * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
955 * gtk/gtkiconfactory.c: Update to reflect addition of error
956 handling to gdk-pixbuf loaders
958 Wed Oct 18 11:14:05 2000 Owen Taylor <otaylor@redhat.com>
960 * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
961 move to new modularized testgtk.
963 2000-10-17 Jonathan Blandford <jrb@redhat.com>
965 * gtk/gtktreeview.c: Draw the arrows correctly.
967 * gtk/gtktreemodel.c: Added user docs.
969 * gtk/gtk.h: remove gtktreedatalist.h.
971 * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
972 parent when generating my type.
974 * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
975 POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
977 2000-10-16 Jonathan Blandford <jrb@redhat.com>
979 * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
980 GtkTreeModel from object to interface.
982 2000-10-16 Havoc Pennington <hp@redhat.com>
984 * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing
987 2000-10-16 Jonathan Blandford <jrb@redhat.com>
989 * gtk/gtktreeselection.c: Add API documentation to all public
992 * gtk/gtktreeviewcolumn.c: Added API documentation to all public
995 2000-10-15 Jonathan Blandford <jrb@redhat.com>
997 * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
998 proposed by Guy Harris <gharris@flashcom.net>. Also, added API
999 docs to all public functions.
1001 * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
1002 gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
1003 gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
1004 gtk/gtktreemodel.h, gtk/gtktreeselection.c,
1005 gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
1008 2000-10-14 Robert Brady <robert@suse.co.uk>
1010 * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
1012 2000-10-12 Jonathan Blandford <jrb@redhat.com>
1014 * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
1015 values other then G_TYPE_STRING.
1016 * gtk/gtktreeselection.c: Minor commenting updates.
1017 * gtk/gtktreeview.c: Format updates.
1019 2000-10-09 Tor Lillqvist <tml@iki.fi>
1021 * README.win32: Update.
1023 * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
1024 lines that had been deleted by mistake (?).
1026 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
1027 also the case fg==white and bg==black (but still not randomly
1028 coloured cursors). Thanks to Wolfgang Sourdeau.
1030 * gdk/win32/*.c: Silence gcc -Wall.
1032 * gtk/gtk.def: Add missing entry points.
1034 Fixes by Hans Breuer:
1037 * gdk/win32/makefile.msc: Update.
1039 * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
1040 some MSVC thing, presumably), cause breakpoint on failures. Add
1041 GDK_NOR case. Call g_log_set_always_fatal.
1043 * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
1044 should be pased by reference.
1046 * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
1048 * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
1050 * gdk/win32/gdkevents-win32.c
1051 * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
1053 * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
1054 implementation object.
1056 * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
1059 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
1060 Use the wrapper object.
1062 2000-10-06 Havoc Pennington <hp@redhat.com>
1064 * Makefile.am (SRC_SUBDIRS): contrib subdir
1066 * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
1067 so it can be used in Xlib version
1069 * demos/testpixbuf.c (update_timeout): error checking from 1.0
1072 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
1073 change from 1.0 tree that returns first frame of animation
1074 if the loaded file is an animation.
1076 * contrib: add new directory to hold stuff that comes with GTK+
1077 but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
1079 * configure.in: add contrib/*
1081 2000-10-05 Havoc Pennington <hp@redhat.com>
1083 * demos/testpixbuf-save.c: add pixbuf save test
1085 * demos/Makefile.am: add testpixbuf-save.c
1087 2000-10-05 Jonathan Blandford <jrb@redhat.com>
1089 * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
1090 GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
1091 * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
1092 * gtk/gtktreeselection.[ch]: Replaced
1093 "node_selected"/"node_unselected" signal with "selection_changed"
1096 2000-10-04 Jonathan Blandford <jrb@redhat.com>
1098 * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
1101 2000-10-04 Jonathan Blandford <jrb@redhat.com>
1103 * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
1106 Wed Oct 4 15:52:15 2000 Owen Taylor <otaylor@redhat.com>
1108 * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
1109 Move list pointer forwards before removing item from
1110 list. (Crash reported by Salmaso Raffaele)
1112 * gdk/gdkwindow.h: Remove spurious trailing ,
1114 * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
1115 dependencies on uninstalled libraries, sorry folks.
1117 2000-10-04 Havoc Pennington <hp@redhat.com>
1119 * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
1120 gtk/gtkiconfactory.c: Fix copyrights
1122 * demos/testpixbuf.c: add inline pixbuf test
1124 Mon Sep 25 15:05:17 2000 Owen Taylor <otaylor@redhat.com>
1126 * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
1127 Add gdk_window_iconify.
1129 * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
1130 (gdk_window_set_geometry_hints): Add win_gravity
1131 to geometry structure.
1133 * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
1134 Implement _NET_WM_PING.
1136 * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
1137 Set _NET_WM_PID on the client leader.
1139 * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
1140 Handle UTF-8 better.
1142 * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
1143 UTF-8 better, set _NET_WM_NAME as well. Only set
1144 icon name if it hasn't previously been explicitely
1147 2000-10-03 Havoc Pennington <hp@redhat.com>
1149 * gtk/testtextbuffer.c: clean up trailing whitespace,
1150 add extensive tests for tag toggle iteration.
1152 * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan
1155 * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
1156 optimize case where the tag root is on level 1
1157 (gtk_text_line_previous_could_contain_tag): attempt to implement
1158 (gtk_text_line_next_could_contain_tag): Abstract out node_compare
1161 * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
1162 Implement this, though not very efficiently.
1164 * gtk/gtktextiterprivate.h: reformat
1166 * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
1169 * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
1170 this to properly revalidate the iterators.
1172 * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
1173 properly at the end of the line (and therefore on empty lines)
1175 * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
1176 maybe we should return a value...
1178 2000-10-03 Tor Lillqvist <tml@iki.fi>
1180 * config.h.win32: Guard definition of alloca(). glib.h now handles
1184 * gtk/gtk.def: Add new entry points.
1186 Changes just to make GTK+ build without errors on Win32. No hope
1187 of it working in its current state, though...:
1189 * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings. Add
1190 some functions from the X11 backend, just to make GTK+ build.
1192 * gdk/makefile.mingw.in
1193 * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
1194 number. Add new object files.
1196 * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
1197 GetMessageTime to get timestamp (where on X11 uses
1198 gdk_x11_get_server_time()).
1200 2000-10-02 Havoc Pennington <hp@pobox.com>
1202 * gtk/gtktextview.c: text_window_* weren't static and should have
1204 Start work on child widgets; not yet complete, syncing to
1207 * gtk/gtktextchild.h: change this to contain a public interface,
1208 starting work on child interfaces.
1209 * gtk/gtktextchildprivate.h: move private interfaces here
1211 * gtk/Makefile.am: update to reflect gtktextchildprivate.h
1213 * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
1214 gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c,
1215 gtk/gtktextmark.c: copyright notices
1217 * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
1220 * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
1223 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
1226 2000-09-30 Havoc Pennington <hp@pobox.com>
1228 * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
1229 NULL start/end pointers
1231 * gtk/gtktextbuffer.c: Write some docs
1232 (gtk_text_buffer_get_selection_bounds): Allow start/end to be
1233 NULL, so you can just check whether there's a selection.
1235 * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to
1236 cleanup_line or segments_changed ourselves, it gets done
1239 * gtk/gtktextmark.h:
1240 s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
1242 * gtk/gtktextsegment.h: Clean up some indentation and naming mess
1244 * gtk/gtktextmark.c: delete some more old Tk cruft
1246 * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
1247 mark before removing it, so we can emit MARK_DELETED with a valid
1249 (gtk_text_buffer_mark_set): hold ref across signal emission
1251 * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
1252 whining about attempts to delete special marks
1254 * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
1255 underscore, since it's internal.
1257 * gtk/gtktextbuffer.h: Remove find_string prototype, this is
1258 now implemented in terms of iterators in gtktextiter.h
1260 * gtk/gtktextbuffer.c (gtk_text_buffer_set_text):
1261 New function, destructively sets contents of buffer. Also
1262 a convenient way to clear the buffer by setting text to ""
1264 * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
1265 multiline string literal
1267 * gtk/testtext.c (text_changed_callback): Redraw line numbers if
1270 * gtk/gtktextiter.c (forward_char): Return FALSE if new location
1271 is not dereferenceable
1272 (gtk_text_iter_forward_lines): fix return value
1274 2000-09-29 Havoc Pennington <hp@redhat.com>
1276 * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
1278 * gtk/gtktextview.c: Implement drag thresholding; change functions
1279 that set border window size to have nicer name
1280 (gtk_text_view_mark_set_handler): Fix this to have the
1283 * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
1285 * gtk/testtext.c: Update with API changes, put line numbers on
1288 * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
1291 * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
1292 pixbuf; delete a big block of #if 0 Tk code
1294 * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace
1295 insert_pixmap with insert_pixbuf
1297 2000-09-29 Martin Baulig <baulig@suse.de>
1299 * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
1300 confusion with the GdkPixbuf of the GNOME 1.x platform.
1302 2000-09-29 Havoc Pennington <hp@pobox.com>
1304 * gtk/gtktextview.c: Implement the side windows.
1306 * gtk/testtext.c: Implement simple line numbering in the
1307 left side window; seems to make scrolling sloooow. Oops.
1308 Also, cursor blink is for some reason causing redraws
1309 of the line numbers. Should investigate...
1311 2000-09-28 Havoc Pennington <hp@redhat.com>
1313 * gtk/gtktextview.c: Set up infrastructure to deal with lots of
1314 scrolling child windows, and draw focus rectangle properly.
1316 (gtk_text_view_buffer_to_window_coords):
1317 Coordinate transformation to deal with all these freaking windows
1319 (gtk_text_view_window_to_buffer_coords): transform the other way
1321 * gtk/testtext.c (create_buffer): Update to match Pango API change
1323 * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
1325 (foreach_unref): don't emit remove signal from finalize, just
1326 set tag's parent to NULL
1328 2000-09-26 Havoc Pennington <hp@redhat.com>
1330 * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
1333 2000-09-26 Havoc Pennington <hp@redhat.com>
1335 * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
1336 headers into the private header list
1338 * Makefile.am (pkgconfig_DATA): install pkg-config files
1340 * configure.in: add pkg-config files
1342 * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
1344 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
1345 outstanding icon caches on theme change.
1347 * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three
1350 (GtkIconSource): Specification for creating a pixbuf
1351 appropriate for a direction/state/size triplet from
1352 a source pixbuf or filename
1354 (GtkIconSet): List of GtkIconSource objects that are used to
1355 create the "same" icon (e.g. an OK button icon), and cache for
1358 (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
1359 up the icon set for a given stock ID. GTK maintains a stack of
1360 GtkIconFactory to search, and applications or libraries can add
1361 additional icon factories on top of the stack
1363 * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse
1364 the set of GtkIconSource specified for a given stock ID into
1365 a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the
1366 RcStyle, under the specified stock ID.
1368 * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
1369 render_icon used to derive a GdkPixbuf from a GtkIconSource.
1370 This allows people to theme how prelight, insensitive, etc. are
1373 (gtk_style_lookup_icon_set): Look up a stock ID in the list of
1374 icon factories for a style, and return the resulting
1377 (gtk_style_render_icon): Render an icon using the render_icon
1378 method in the GtkStyleClass.
1380 * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon):
1381 Use the style for a given widget to look up a stock ID, get the
1382 icon set, and render an icon using the render_icon method
1385 * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
1386 (contains information about a stock item), the built-in stock item
1387 IDs, and functions to add/lookup stock items.
1389 * gtk/stock-icons/*: Stock icons that come with GTK
1391 * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
1392 a button based on a GtkStockItem
1393 (gtk_button_new_accel): Takes a uline string and accel group, and
1394 installs the accelerator.
1396 * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
1397 image-display widget.
1399 2000-09-25 Havoc Pennington <hp@redhat.com>
1401 * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
1403 * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data):
1404 Fix a bug when removing node data, we didn't properly
1405 re-splice the linked list after removing the data.
1407 * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through
1408 GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
1410 * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
1412 * gtk/gtktextlayout.c (set_para_values): Set tab array
1413 for the layout from the GtkTextTag.
1415 * gtk/gtktexttypes.h: delete tab and search cruft,
1416 remove g_convert() in favor of GLib version
1418 * gtk/gtktexttypes.c: remove tab implementation from here,
1421 * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement
1422 tab stuff using new PangoTabArray from Pango
1424 * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
1425 unused border_width stuff
1427 Thu Sep 14 12:21:12 2000 Owen Taylor <otaylor@redhat.com>
1429 * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
1430 glib) and now useless utf_to_latin1() latin1_to_utf()
1432 * gtk/gtktextview.[ch]: Change ::move_insert and
1433 ::delete_text action signals to ::move and ::delete;
1434 create the signals with the right enumeration type,
1435 not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
1436 C-v bindings, change Home, End to move to beginning/end
1437 of line, Add C-Home C-End to move to beginning/end
1438 of buffer. Change ::cut_text to ::cut_clipboard, etc;
1439 combine ::scroll_text into ::move; use new GtkSelectionData
1440 functions to simplify DND text handling.
1442 * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
1443 deletion enumerations here, rename enumeration values to
1444 be consistently plural.
1446 * gtk/gtktextbuffer.c: Use new clipboard interfaces
1447 for cut/copy/paste and primary selection.
1449 * gtk/gtktextbuffer.[ch]: Remove excess time and
1450 'interactive' arguments from cut/copy/paste;
1451 rename cut to cut_clipboard, etc; remove
1452 gtk_text_buffer_get_clipboard_contents().
1454 * gtk/gtktextlayout.[ch]: Add
1455 gtk_text_layout_move_iter_to_line_end() to move the iter to
1458 * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
1459 Functions to set or get a UTF-8 string on the selection
1462 * gtk/gtkclipboard.[ch]: New, simplified selection handling
1465 * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
1466 created widgets - one of these is useless if we don't.
1468 * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
1469 a public function clear all targets registered for the
1472 * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
1473 Never call gtk_widget_realize() - that was just asking
1474 for bizarre side-effects.
1476 * gtk/gtkselection.c (gtk_selection_owner_set): Call
1477 gdk_selection_owner_set even if the widget is the
1478 same so that we reliably update the timestamp on
1481 * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a
1482 gdk_x11_get_server_time() function.
1484 * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
1485 gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
1486 Add some tricky filtering on serial numbers for
1487 selection clear events to fix up long-standard
1488 race condition FIXME's in gtkselection.c.
1490 * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
1491 routines to convert from utf8 to compound text or
1492 STRING and from a text property to UTF-8.
1494 * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add
1495 a convenience function gdk_get_current_event_time().
1497 * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
1498 and free selection_data->data properly
1500 Sat Sep 9 17:15:45 2000 Owen Taylor <otaylor@redhat.com>
1502 * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
1503 extra config options "im_module_file" (cache file for
1504 input method modules), and "im_module_path" - path
1505 to look for modules when generating cache file.
1509 Sat Sep 9 10:23:53 2000 Owen Taylor <otaylor@redhat.com>
1511 * gtk/gtkthemes.c: Remove some unecessary includes.
1513 2000-09-08 Jonathan Blandford <jrb@redhat.com>
1515 * gtk/gtktextdisplay.c
1516 * gtk/gtktextlayout.c
1519 * gtk/testtext.c: Change the overstrike property to strikethrough,
1520 to closer match pango.
1522 Fri Sep 8 14:28:00 2000 Owen Taylor <otaylor@redhat.com>
1524 * gtk/gtktextview.c: Fix up visibility so that focus,
1525 cursor_visible and blink interact properly. Reenable cursor blink
1526 which had been roughly disabled. Make blink and focus
1529 * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
1530 Add a flag for whether to display insertion cursor and
1531 a function to set the flag.
1533 * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
1534 get_line_y() to get_line_yrange(), to be a bit more generally
1537 Thu Sep 07 20:54:33 2000 George Lebl <jirka@5z.com>
1539 * gtk/gtkmenu.c: in gtk_menu_set_submenu_navigation_region
1540 do stop_navigating_submenu, to clear last timeout properly.
1541 Also in gtk_menu_motion_notify move ignore_enter above
1542 the conditional to make it always happen as suggested by Owen
1544 2000-09-07 Tor Lillqvist <tml@iki.fi>
1546 * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
1548 * gdk/win32/gdkwin32.h: Add more definitions missing from the free
1551 * gdk/win32/gdkprivate-win32.h: Add a couple of missing
1554 * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
1555 (gdk_win32_get_colormap): A line had been deleted by mistake.
1557 * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
1558 (gdk_event_translate): Handle more virtual keycodes to be able to
1559 generate GDK events for Control-comma, Control-period, etc.
1561 * gtk/gtk.def: Add some missing entry points.
1563 Thu Sep 7 11:47:02 2000 Owen Taylor <otaylor@redhat.com>
1565 * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
1566 Doc comment fixing. (Mostly non-matching parameter names.)
1568 * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
1569 comments a little to avoid looking like a doc comment.
1571 * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
1572 GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
1573 conversions be changed to GError?)
1575 * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT):
1576 Move private #defines into .c file.
1578 * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
1579 order of argument addition, remove duplicates.
1581 * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
1582 parent class is FrameClass, not BinClass.
1584 * gtk/gtk.h: Add gtkinvisible, which was missing.
1585 (It's occasionalyl useful for client apps, if seldom.)
1587 * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
1590 Wed Sep 6 09:53:15 2000 Owen Taylor <otaylor@redhat.com>
1592 * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
1593 coordinates when creating window, instead of GDK-space
1594 coordinates. (Avoid BadValue on too large windows.)
1596 2000-09-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1598 * configure.in (use_mmx_asm): Remove conftest* after use along the
1599 lines of AC_TRY_COMPILE.
1601 * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
1602 of g_dirname, which is deprecated.
1603 (gtk_rc_parse_any): Removed calls to
1604 g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
1606 * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
1607 Removed calls to g_hash_table_{freeze,thaw}, as they are
1610 * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
1611 instead of g_basename.
1613 2000-09-04 Elliot Lee <sopwith@redhat.com>
1615 * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
1618 Sun Sep 03 00:47:08 2000 George Lebl <jirka@5z.com>
1620 * gtk/gtkwidget.h: Add some documenting comments about
1621 GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
1622 just as owen said on irc.
1624 * gtk/gtkwindow.c (gtk_window_set_default): Don't blindly
1625 set HAS_DEFAULT. Only set it if there isn't another window
1626 holding it (a focus window which RECEIVES_DEFAULT) and only unset
1627 it if the widget is not the focused window with RECEIVES_DEFAULT.
1628 This fixes weird double default bugs in dialogs which has things
1629 call gtk_window_set_default at times.
1631 Fri Sep 1 22:39:07 2000 Owen Taylor <otaylor@redhat.com>
1633 * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
1634 Nils Barth and David Santiago to improve submenu
1635 navigation. The patch does this by creating a triangular
1636 region from the point where the pointer leaves the
1637 menu to the submenu. While the pointer is in
1638 that region and a timeout has not expired, events
1639 that would cause the active submenu to change are
1642 Fri Sep 1 15:34:46 2000 Owen Taylor <otaylor@redhat.com>
1644 * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
1645 moving a toplevel window immediately after sizing it would
1646 result in it being sized back to the old size since
1647 impl->width, impl->height aren't updated until we hear
1648 back from the server. There is still a (longstanding) bug
1649 here that gdk_window_get_size() will give the wrong size
1650 until we do hear back.
1652 2000-08-31 Havoc Pennington <hp@redhat.com>
1654 * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h,
1655 gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c,
1656 gtk/gtktexttagprivate.h, gtk/gtktextview.c:
1657 Rename GtkTextStyleValues to GtkTextAttributes
1659 2000-08-31 Havoc Pennington <hp@pobox.com>
1661 * gtk/gtktextbtree.c (GtkTextBTree): cache end line,
1662 for rapid testing whether an iterator is the end iterator
1663 (gtk_text_btree_new): init end line cache
1664 (gtk_text_line_is_last): use fast cached line to
1665 see if we're the last line.
1666 (get_last_line): use cached line here too, should
1667 speed up some random unrelated code.
1669 2000-08-30 Havoc Pennington <hp@pobox.com>
1671 * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
1674 * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
1675 delete_text signals. This allows the signals to be used for
1678 * gtk/gtktextbuffer.c: Change signal handler signatures;
1679 provide "interactive" argument when emitting insert_text or
1682 2000-08-30 Havoc Pennington <hp@pobox.com>
1684 * gtk/gtktextbuffer.c: Docs
1686 Fri Aug 25 12:16:15 2000 Owen Taylor <otaylor@redhat.com>
1688 * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
1689 from switch statements, since Tor removed the enumeration
1692 * gdk/x11/gdkimage-x11.c (gdk_image_get):
1693 s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
1695 2000-08-29 Elliot Lee <sopwith@redhat.com>
1696 * */*.h: Use G_GNUC_CONST.
1698 2000-08-27 Havoc Pennington <hp@pobox.com>
1700 * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
1701 minor indentation fixes, inserted some FIXME about stuff I
1702 realized was broken while documenting it.
1703 (gtk_text_iter_get_pixmap): allow out params to be NULL, following
1706 Tue Aug 22 12:33:24 2000 Owen Taylor <otaylor@redhat.com>
1708 * gtk/testgtk.c (create_styles): Fix double free of
1711 Mon Aug 21 22:39:18 2000 Owen Taylor <otaylor@redhat.com>
1713 * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
1715 * gtk/testgtk.c (create_styles): Add a test for modifying
1716 the style through gtk_widget_modify_*.
1718 * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
1719 a function to get the current modifier style.
1721 * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
1722 of the passed in GtkRcStyle instead of ref'ing it.
1724 * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
1726 2000-08-20 Tor Lillqvist <tml@iki.fi>
1729 * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
1730 shared memory image+pixmap GdkImage type, or
1731 gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
1734 * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
1735 actually call gtk_init_abi_check(), passing also
1736 sizeof(GtkWindow). Ditto for gtk_init_check().
1739 * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
1740 New functions, used to check that the GTK+-using code has been
1741 compiled using the correct compiler and switches. In particular,
1742 with gcc one has to use the -fnative-struct switch as GTK+ is
1745 Fri Aug 18 17:27:46 2000 Owen Taylor <otaylor@redhat.com>
1747 * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
1748 ->prev fields when merging lists. (Found simultaneously
1749 by Pawel Salek and Jakub Jelinek)
1751 2000-08-12 Tor Lillqvist <tml@iki.fi>
1754 * gtk/gtk.def: Add missing entries.
1756 * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
1757 OUT_TT_ONLY_PRECIS, try to get a TrueType font.
1759 * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
1760 function. Dummy implementation at this point.
1762 * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
1763 rules. Undefine GTK_COMPILATION when compiling the test programs.
1765 * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
1767 2000-08-11 Tor Lillqvist <tml@iki.fi>
1769 * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
1770 to convert back and forth from UTF-8 and the "system" (or "current
1771 locale") charset when necessary. Indentation/spacing cleanup.
1773 2000-08-10 Havoc Pennington <hp@redhat.com>
1775 * Makefile.am (snapshot): Change the format of the snapshot
1776 version to match glib
1778 * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
1779 from EXTRA_DIST since it doesn't seem to exist
1781 2000-08-10 Tor Lillqvist <tml@iki.fi>
1783 * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
1784 version of the directory name (not the UTF-8 one) when building
1785 the path name to stat().
1787 2000-08-03 Elliot Lee <sopwith@redhat.com>
1789 * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
1790 PANGO_ATTR_SHAPE set.
1792 Thu Aug 3 09:17:06 2000 Owen Taylor <otaylor@redhat.com>
1794 * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
1795 Peter Osterlund to simplify the code while keeping the
1796 functionality the same.
1798 Wed Aug 2 14:57:38 2000 Owen Taylor <otaylor@redhat.com>
1800 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
1801 is_viewable() test further inside the function, since removing the
1802 window from the redraw list without clearing ->update_area
1803 was also very broken.
1805 2000-08-02 Tor Lillqvist <tml@iki.fi>
1807 * configure.in: Check for <unistd.h>.
1809 2000-08-01 Martin Baulig <baulig@suse.de>
1811 * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
1812 to display the message that this is a development version of GTK+.
1814 Mon Jul 31 18:37:36 2000 Owen Taylor <otaylor@redhat.com>
1816 * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
1817 was depending on widget->allocation instead of the width of text_area,
1818 which was incorrect for subclasses like GtkSpinButton.
1820 * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
1821 with width == 1 tests that should be width == -1.
1823 Mon Jul 31 16:45:48 2000 Owen Taylor <otaylor@redhat.com>
1825 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken,
1826 (broken, Elliot, every single window blank on X) custom code with call
1827 to gdk_window_is_viewable() which a) prevents code duplicate and
1830 2000-07-31 Elliot Lee <sopwith@redhat.com>
1832 * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order to get the GDK_PARENT_ROOT() macro to work.
1833 * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
1834 * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces of, windows that aren't shown.
1835 * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of pointer grab stuff.
1837 Mon Jul 31 13:53:16 BST 2000 Tony Gale <gale@gtk.org>
1839 * docs/gtkfaq.sgml docs/gtk-faq.sgml:
1840 s/gtk_main_iteration/g_main_iteration/
1842 Did this already in change:
1843 Mon Nov 15 17:17:51 GMT 1999 Tony Gale <gale@gtk.org>
1844 don't know how it got reverted.
1846 2000-07-31 Stanislav Brabec <utx@penguin.cz>
1848 * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
1849 gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
1851 * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
1854 2000-07-30 Pablo Saratxaga <pablo@mandrakesoft.com>
1856 * configure.in,po/{sp,sr}.po: Added Serbian files
1858 2000-07-30 Tor Lillqvist <tml@iki.fi>
1860 * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
1862 * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
1863 Remove the g_pipe_readable_msg stuff. Not needed with new GLib
1864 GIOChannel implementation.
1866 * gdk/win32/gdkinput.c
1867 * gdk/win32/gdkpango-win32.c: Update license name here, too.
1869 * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
1870 definition to match prototype.
1872 * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
1874 2000-07-27 Elliot Lee <sopwith@redhat.com>
1876 * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
1877 function, to allow handling image formats that cannot be detected
1878 by looking at content alone.
1880 Thu Jul 27 13:13:21 BST 2000 Tony Gale <gale@gtk.org>
1882 * docs/tutorial/*.gif *.jpg *.eps
1883 Update these to the same look-n-feel.
1884 Why does including images in DocBook suck so badly?
1886 Thu Jul 27 05:06:29 2000 Tim Janik <timj@gtk.org>
1888 * gtk/gtktable.c: applied patch from Phil Thompson
1889 <phil@river-bank.demon.co.uk> that enables space settings for
1890 the last row/columns as well.
1892 Wed Jul 26 12:59:31 2000 Tim Janik <timj@gtk.org>
1894 * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
1895 updates the license headers to the GNU Lesser General Public License,
1896 as well as updating the copyright year to 2000.
1898 2000-07-26 Robert Brady <rwb197@zepler.org>
1900 * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
1901 and po/Makefile, was installing and looking for them under gtk20
1902 and gtk2 respectively.
1904 2000-07-25 Havoc Pennington <hp@redhat.com>
1906 * gtk/testtext.c: Comment out some stuff that depends on the rest
1909 2000-07-25 Havoc Pennington <hp@redhat.com>
1911 * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
1914 2000-07-25 Havoc Pennington <hp@redhat.com>
1916 * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
1919 * gtk/gtktextview.h: To be consistent with usage of "line"
1920 throughout the API to mean "newline-terminated thingy", change
1921 MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
1924 (GtkTextView): Add flags for default editability, and whether to
1925 show the cursor. Add functions to get/set that. Add
1927 (gtk_text_view_get_iter_location): new function
1929 * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
1931 (g_convert): Add g_convert temporarily, will go in glib in a bit
1933 * gtk/gtktexttagtable.h: include gtktexttag.h, and define
1934 GtkTextTagTableForeach instead of brokenly using GHFunc.
1935 Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
1937 * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
1938 moved to public header.
1940 * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
1941 "invisible", since "elide" was a bad name.
1942 (gtk_text_tag_get_priority): Added
1944 (GtkTextStyleValues): put this in public header, along with
1945 functions to use it.
1947 * gtk/gtktextmarkprivate.h: Include more headers, since we no
1948 longer include gtktextbtree.h.
1950 * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
1951 gtk_text_mark_deleted
1953 * gtk/gtktextlayout.h: Don't include the "really private" headers,
1954 only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
1955 to make this possible. Now we only need to install
1956 gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
1957 (However the Makefile.am isn't changed yet because of the
1958 logistics of merging gtk-hp-patches piecemeal)
1960 * gtk/gtktextiterprivate.h: include btree header, so it compiles;
1961 rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
1962 gtk_text_iter_get_line is now used in the public API for a
1965 * gtk/gtktextiter.h: Clean up function names to be more
1966 consistent. Always call char offset "offset" and byte index
1967 "index". A "line" is always a line number.
1969 (gtk_text_iter_is_last): new function, more efficient than
1970 the existing way to check
1971 (gtk_text_iter_is_first): new function, also more efficient
1973 (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
1975 (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from
1976 gtk_text_iter_forward_char, etc.
1978 (gtk_text_iter_forward_to_tag_toggle): Renamed from
1979 forward_find_tag_toggle, since this isn't a linear search
1981 (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
1983 (gtk_text_iter_forward_search, gtk_text_iter_backward_search):
1984 New functions, search for a buffer substring.
1986 * gtk/gtktextbuffer.h: Add fields to store whether a paste is
1987 interactive and default editable (since we need to store that info
1988 until we receive the selection data).
1990 Remove all the _at_char and at_line etc. versions of functions;
1991 only have iterator versions.
1993 Add _interactive() versions of functions, that consider the
1994 editability of text. (FIXME add interactive flag to the
1995 insert/delete signals per Darin's suggestion)
1997 (gtk_text_buffer_get_tag_table): new function, demand-creates the
1998 tag table if necessary
2000 Remove declaration of gtk_text_buffer_get_iter_from_string
2002 (_gtk_text_buffer_get_btree): private/internal function, added.
2005 * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
2006 (gtk_text_line_is_last): new function
2008 2000-07-25 Havoc Pennington <hp@redhat.com>
2010 * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
2011 using GtkProgressBar. See Changes-2.0.txt for details.
2013 * gtk/gtkprogressbar.c: Add object arguments "fraction" and
2014 "pulse_step" which are the equivalent of
2015 gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
2018 * gtk/gtkprogress.h (struct _GtkProgress): Add a field
2019 (use_text_format) to mark whether text set on the progress bar is
2020 a format string. Deprecate entire GtkProgress interface.
2022 * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
2023 (gtk_progress_build_string): make this a no-op if use_text_format
2026 * docs/Changes-2.0.txt: Describe progress bar changes.
2028 2000-07-25 Tor Lillqvist <tml@iki.fi>
2030 * Makefile.am: Include the build directory.
2032 * configure.in: Generate build/Makefile, build/win32/Makefile,
2033 gdk/, gdk/win32/, and gtk/makefile.mingw.
2035 * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
2036 Add GETTEXT_PACKAGE.
2039 * gtk/gtk.def: Updates.
2042 * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
2043 need them any longer.
2045 * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
2047 * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
2048 PANGOWIN32_LIBS and gdk_pixbuf.
2050 * gdk/win32: Compiles, but no doubt doesn't work at all.
2052 * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION.
2054 * gdk/win32/gdkinput.c: New file, temporarily.
2056 * gdk/win32/gdkinput-win32.h: New file
2058 * gdk/win32/gdkinputprivate.h: Remove.
2060 * gdk/win32/gdkpango-win32.c: New file.
2062 * gtk/makefile.mingw.in: New file
2064 * gtk/makefile.cygwin: Removed
2066 * gtk/Makefile.am: Update accordingly.
2068 * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
2069 made externally visible.
2071 * gtk/gtkmain.c: Use it.
2073 * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
2076 * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
2078 2000-07-24 Elliot Lee <sopwith@redhat.com>
2079 * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
2080 individual backends already.
2081 * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
2082 again. Yes, there really is a good reason for this, if you are using the gdkregion
2083 internals, and if you're not, why do you care?
2084 * gdk/gdkwindow.c: Fix inverted condition
2085 * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
2086 * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
2087 * gtk/gtkrange.c: Redraw trough when moving.
2088 * gtk/gtktypeutils.c: Fix warning by adding const cast.
2089 * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
2091 2000-07-23 Tor Lillqvist <tml@iki.fi>
2093 * configure.in: Check for mkstemp and sigsetjmp. Output
2094 gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
2096 More work on GDK for Win32. Still in an intermediate state.
2098 * gdk/makefile.cygwin
2099 * gdk/win32/makefile.cygwin: Removed.
2101 * gdk/makefile.mingw.in
2102 * gdk/win32/makefile.mingw.in: New files.
2105 * gdk/win32/Makefile.am: Generate and distribute them.
2107 * gdk/win32/gdkwindow-win32.h
2108 * gdk/win32/gdkdrawable-win32.h
2109 * gdk/win32/gdkpixmap-win32.h: New files.
2111 * gdk/win32/gdkcolor-win32.c
2112 * gdk/win32/gdkcursor-win32.c
2113 * gdk/win32/gdkdrawable-win32.c
2114 * gdk/win32/gdkgc-win32.c
2115 * gdk/win32/gdkimage-win32.c
2116 * gdk/win32/gdkprivate-win32.h
2117 * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
2118 Rename fields and variables called xcursor, xid, etc (these names
2119 were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
2121 Sat Jul 22 17:41:26 2000 Owen Taylor <otaylor@redhat.com>
2123 * gtk/gtkentry.[ch]: Fix some problems with vertical
2126 * gtk/gtkentry.c (gtk_entry_find_position): Fix
2127 char/byte confusion.
2129 Sat Jul 22 11:16:05 2000 Owen Taylor <otaylor@redhat.com>
2131 * gtk/gtktextview.c (changed_handler): Fix bug where
2132 redraw wasn't being done properly when height of
2133 dirty region changed.
2135 * demos/Makefile.am: Remove various references to
2138 Fri Jul 21 15:28:13 2000 Owen Taylor <otaylor@redhat.com>
2140 * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
2141 PangoAttrShape to reserve space for pixmaps, add
2142 GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
2143 in the display functions.
2145 * gtk/testgtk.c (create_layout): Set some more exotic
2146 scrolled window options
2148 * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
2149 Add function to set the shadow type of a window, to allow
2150 putting a shadow around widgets such as GtkLayout or GnomeCanvas
2151 which don't draw their own frame.
2153 Fri Jul 21 16:34:42 BST 2000 Tony Gale <gale@gtk.org>
2155 * docs/tutorial/package-db-tutorial.sh: New file for
2156 packaging DocBook format tutorial
2158 Fri Jul 21 14:23:51 BST 2000 Tony Gale <gale@gtk.org>
2160 * docs/tutorial/gtk-tut.sgml: Minor updates
2162 * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
2164 2000-07-19 Tor Lillqvist <tml@iki.fi>
2166 * gtk/gtksignal.c: Fix C++ comment.
2168 * gtk/gtkimmulticontext.c
2169 * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
2170 don't return value from void functions.
2172 * gtk/gtk.def: Add gtk_rc_style_unref.
2174 2000-07-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2176 * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
2177 gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
2178 gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
2179 gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
2180 gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
2181 gtk/gtktypeutils.h: Include files outside of the extern "C"
2182 block. Makes some C++ compiler happy. Reported by Denis Vakatov
2183 <vakatov@peony.nlm.nih.gov>.
2185 Wed Jul 19 14:07:57 BST 2000 Tony Gale <gale@gtk.org>
2187 * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
2188 Completes first pass. Hurrah!
2190 Tue Jul 18 17:17:55 BST 2000 Tony Gale <gale@gtk.org>
2192 * docs/tutorial/gtk-tut.sgml: More clean ups.
2194 Mon Jul 17 18:52:38 2000 Owen Taylor <otaylor@redhat.com>
2196 * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
2197 paint the background of the text area which was accidentally
2198 removed at some point.
2200 * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]:
2202 - Move most of the functionality from the theme vtable
2203 into GtkRcStyleClass and GtkStyleClass. The moved
2204 vtable functions were changed a bit in the move to
2205 work better in their new home.
2207 - Get rid of the engine and engine_data fields from
2208 GtkRcStyle and GtkStyle; instead the theme
2209 engine derives theme-specific subclasses of GtkRcStyle
2212 - Add extra dlsym() found entry point to themes,
2213 theme_create_rc_style().
2215 * gtk/gtkstyle.c: Copy xthickness, ythickness fields
2216 in gtk_style_real_copy.
2218 * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
2219 to register a type associated with an engine. (The engine
2220 won't be unloaded as there is an instance of the type.)
2223 Mon Jul 17 18:19:06 BST 2000 Tony Gale <gale@gtk.org>
2225 * docs/tutorial/gtk-tut.sgml: Clean ups.
2227 Mon Jul 17 13:59:29 BST 2000 Tony Gale <gale@gtk.org>
2229 * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
2230 of cleaning up to do.
2232 2000-07-15 Tor Lillqvist <tml@iki.fi>
2234 * gdk/testgdk.c: New file, quick hack to test backends for
2235 pixel-by-pixel correctness of the most simple graphic operations.
2237 Fri Jul 14 20:30:25 2000 Owen Taylor <otaylor@redhat.com>
2239 * Really release 1.3.1
2241 * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
2244 Fri Jul 14 18:40:39 2000 Owen Taylor <otaylor@redhat.com>
2248 Fri Jul 14 16:21:26 2000 Owen Taylor <otaylor@redhat.com>
2250 * gtk/gtktextlayout.c: use FALSE for size_only most
2251 of the time when calling gtk_text_layout_get_line_display()
2252 to avoid causing double reshapes when a redraw follows
2255 Tue Jul 11 11:13:40 2000 Owen Taylor <otaylor@redhat.com>
2257 * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
2258 appropriate region and gdk_window_process_updates() so trough
2259 updating doesn't lag behind the window being scrolled.
2261 * gdk/gdkgc.c: Make parent_class pointer static.
2263 Sun Jul 9 21:31:23 2000 Owen Taylor <otaylor@redhat.com>
2265 * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
2268 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
2269 cut-and-paste error in computing memory offset for 4 channels.
2271 Fri Jul 14 14:05:02 2000 Owen Taylor <otaylor@redhat.com>
2273 * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
2274 gtk_rc_append_default_pixmap_path(), since it wasn't
2275 adding an interesting path and we don't have a meaningful
2276 default for this value.
2278 Fri Jul 14 12:22:49 2000 Owen Taylor <otaylor@redhat.com>
2280 * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
2281 gtk-config to gtk-config-2.0 move gtk_.m4 to
2284 * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
2285 gdk/Makefile.am demos/Makefile.am: Change
2286 library names to libgtk-1.3.la, etc, so that we
2287 can distinguish gtk-1.2 and gtk-2.0 on the linkline.
2289 * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
2290 gdk/Makefile.am gdk/x11/Makfile.am
2291 Move include files into /usr/include/gtk-2.0,
2292 /usr/lib/gtk-2.0/include/
2294 * autogen.sh acconfig.h configure.in gtk/gtkmain.c
2295 gtk/gtkintl.h: Change package for gettext from
2296 gtk+ to gtk20. Put hack in autogen.sh to modify
2297 po/Makefile.in.in after gettextize to make this
2300 * gtk+.spec: Some updates, not tested.
2302 * gdk-pixbuf/Makefile.am: Move loaders into
2303 $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
2305 * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
2306 $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
2307 to THEMENAME/gtk-2.0/. Move engine directory to
2308 $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
2310 2000-07-12 Tor Lillqvist <tml@iki.fi>
2312 Win32 changes, still doesn't build though.
2314 * gdk/makefile.cygwin
2315 * gdk/win32/makefile.cygwin
2316 * gtk/makefile.cygwin: Updates.
2318 * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
2319 default values for fg and bg pixel as X11 does (0 and 1), not
2320 black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
2321 Use 0 for pen width by default (treated as 1 anyway later, but for
2322 apps that might check the value in the GdkGC).
2323 (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
2324 interface to gdk_gc_predraw and _postdraw.
2326 * gdk/win32/gdkwin32.h
2327 * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
2329 * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
2330 extraneous semicolon.
2332 * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
2334 * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
2335 not the Win32 bitspixel value.
2337 * gdk/win32/gdkcc-win32.c:
2338 * gdk/win32/gdkcolor-win32.c
2339 * gdk/win32/gdkprivate-win32.h
2340 * gdk/win32/gdkwin32.h: Changes to make compilable, with new
2341 GDK object structure.
2343 Tue Jul 11 20:59:35 2000 Tim Janik <timj@gtk.org>
2345 * docs/tutorial/gtk_tut_12.es.sgml (name):
2346 * docs/tutorial/gtk_tut_it.sgml (name):
2347 * docs/tutorial/gtk_tut_fr.sgml (name):
2348 * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
2349 outdated email adress: s/timj@psynet.net/timj@gtk.org/.
2351 Tue Jul 11 13:10:57 BST 2000 Tony Gale <gale@gtk.org>
2353 * docs/faq/gtk-faq.sgml: Cleanup indenting and various
2356 Tue Jul 11 08:04:58 2000 Tim Janik <timj@gtk.org>
2358 * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
2359 a bug here, never been here and never fixed anything ;(
2360 (don't segfault if tree->root_tree is NULL, which happens prior
2361 to widget realization, but puke instead).
2363 Tue Jul 11 06:38:42 2000 Tim Janik <timj@gtk.org>
2365 * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
2366 add the necessary tokens.
2368 * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
2369 (gtk_rc_style_to_style): copy thicknesses.
2370 (gtk_rc_init_style): apply thicknesses.
2371 (gtk_rc_parse_style): parse xthickness and ythickness.
2373 * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
2375 * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new):
2377 (_gdk_windowing_window_init):
2378 * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new):
2379 (gdk_pixmap_create_from_data):
2380 (gdk_bitmap_create_from_data):
2382 * gdk/x11/gdkimage-x11.c (gdk_image_get):
2384 * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new):
2385 * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new):
2386 * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
2387 (gdk_colormap_get_system):
2389 * gdk/gdkwindow.c (gdk_window_init):
2390 * gtk/gtkstyle.c (gtk_style_new):
2391 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
2392 * gdk/gdkpixmap.c (gdk_pixmap_init):
2393 * gtk/gtkrc.c (gtk_rc_style_new):
2394 use g_object_new() instead of g_type_create_instance() which
2395 is a private function for fundamental type implementations.
2397 Thu Jul 6 16:12:14 2000 Owen Taylor <otaylor@redhat.com>
2399 * configure.in: Add check for db2html
2401 Thu Jul 6 14:53:05 2000 Owen Taylor <otaylor@redhat.com>
2403 * gtk/gtktypeutils.c (gtk_type_init): Add a temporary
2404 hack to set glib_debug_objects based on gtk_debug_flags.
2406 Thu Jul 6 14:12:13 2000 Owen Taylor <otaylor@redhat.com>
2408 * INSTALL.in: Update the Prerequisites section.
2410 * Makefile.am demos/Makefile.am docs/Makefile.am
2411 docs/tutorial/Makefile.am gdk/x11/Makefile.am
2412 gdk/linux-fb/Makefile.am: Dist fixes
2414 Thu Jul 6 12:26:03 2000 Owen Taylor <otaylor@redhat.com>
2416 * NEWS: 10,000 foot view of 1.3.1 changes.
2418 Thu Jul 6 11:54:03 2000 Owen Taylor <otaylor@redhat.com>
2420 * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
2421 gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
2422 gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
2423 gdk/x11/gdkmain-x11.c:
2425 Patch from George Lebl to add a GdkGrabStatus enumeration to use
2426 as a return value of gdk_*_grab(). Previously, we just
2427 returned the X11 values directly.
2429 Thu Jul 6 11:27:44 2000 Owen Taylor <otaylor@redhat.com>
2431 * gdk/x11/Makefile.am: Patch from George Lebl to
2432 install all the headers in the right place.
2434 Tue Jul 4 13:13:01 BST 2000 Tony Gale <gale@gtk.org>
2436 * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
2437 initial conversion to DocBook.
2439 2000-07-04 Tor Lillqvist <tml@iki.fi>
2441 * README.win32: Improve a bit.
2443 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
2444 WM_SYSCHAR, and other changes to get handling of Alt+nnn or
2445 Alt+0nnn on the numpad (used to enter characters by numeric code
2446 from current DOS or ANSI codepage) working correctly, as in other
2449 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
2450 same argument validity tests as in X11 version.
2451 (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
2453 * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
2454 definitions in case missing from headers.
2456 * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
2457 destroy the window-specific cursor.
2458 (RegisterGdkClass): Use the global gdk_ProgInstance instead of
2459 calling GetModuleHandle(NULL).
2460 (gdk_window_set_cursor): Reworked to always copy the passed cursor
2461 with CopyCursor before setting it as the window-specific
2462 cursor. It is OK for the caller to destroy the GdkCursor (and thus
2463 also its Windows cursor) after calling this function. Destroy any
2464 previous window-specific cursor.
2466 Mon Jul 3 17:54:49 2000 Owen Taylor <otaylor@redhat.com>
2468 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
2469 font charset is iso8859-1, not iso-8859-1.
2471 Mon Jul 3 17:08:14 2000 Owen Taylor <otaylor@redhat.com>
2473 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
2474 Use g_get_charset() instead of g_get_codeset().
2476 * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h:
2477 Comment out some strdup'ing functions to keep timj
2478 happy until we finish fighting this out.
2480 Mon Jul 3 14:24:16 2000 Owen Taylor <otaylor@redhat.com>
2482 * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
2485 * gtk/gtktable.c (gtk_table_attach): Fix missed merge
2486 from 1.2 for parent/child states.
2488 * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
2491 * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
2492 event structures, replace with a generic axes field. Replace
2493 deviceid/sourec with GdkDevice *device.
2495 * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
2496 to extract particular axis use value from event. (Also
2497 can be used for normal X/Y.)
2499 * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
2500 allow for arbitrary number of axes, namespace everything
2501 as gdk_device_*. Replace guint32 deviceid with GdkDevice *
2504 * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}:
2505 Get rid of the gdk_input_vtable setup if favor of simply
2506 defining the functions in gdkinput-none/gxi/xfree.c in
2507 a similar fashion to the way that the port structure is
2510 * gtk/gtkdnd.c: Fix fields of synthesized button press event
2511 for new event structures.
2513 * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
2514 new device interfaces.
2516 Sun Jul 2 18:19:50 2000 Owen Taylor <otaylor@redhat.com>
2518 * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
2519 set the initial text.
2521 * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
2522 gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
2523 gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
2524 gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
2526 * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
2527 pango_layout_set_font_description to simplify.
2529 Sun Jul 2 17:43:41 2000 Owen Taylor <otaylor@redhat.com>
2531 * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
2532 pango_layout_set_font_description to simplify.
2534 Sun Jul 2 17:06:40 2000 Owen Taylor <otaylor@redhat.com>
2536 * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
2537 gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
2538 pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
2540 * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
2541 PANGO_PIXELS() macro.
2543 Sun Jul 2 15:24:41 2000 Owen Taylor <otaylor@redhat.com>
2545 * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
2546 that returns a PangoContext owned by the widget and updated to
2547 match future changes in the widget. Also, make
2548 gtk_widget_create_pango_layout() use this context. If we ever
2549 add a ::changed signal to PangoContext, this will make things
2550 much more convenient.
2552 * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
2553 in the appropriate places instead of destroying the layouts and
2556 * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
2557 in a few strategic places.
2559 Sun Jul 2 14:37:58 2000 Owen Taylor <otaylor@redhat.com>
2561 * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call
2562 gtk_widget_size_request() on reparented child, if one. Otherwise,
2563 queue_resize() on the child never results in it getting size-requested
2566 * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
2567 in option menus, so that (with luck) people won't copy it into
2568 their apps in the future.
2570 * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
2571 to gtk_option_menu_calc_size. This isn't perfect, but should fix
2572 a lot of problems with changing the size of the menu's menu
2573 items after adding it to the option menu.
2575 * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
2577 * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
2578 the text direction for a widget changes.
2580 * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
2581 ::direction_changed to get rid of various hacks.
2583 Sun Jul 2 13:19:12 2000 Owen Taylor <otaylor@redhat.com>
2585 * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
2588 Sun Jul 2 13:06:26 2000 Owen Taylor <otaylor@redhat.com>
2590 * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
2591 flag to the structure. Do not call XFreePixmap on pixmaps created
2592 by gdk_pixmap_foreign_new().
2594 Sun Jul 2 12:45:50 2000 Owen Taylor <otaylor@redhat.com>
2596 * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
2597 value using GdkRGB functionality given GdkColormap and GdkColor.
2598 (name not final, waiting for inspiration.)
2600 * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
2601 set the foreground/background of a GC using the GC's colormap
2602 and GdkRGB. (name not final, waiting for inspiration.)
2604 * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from
2605 gdk_rgb_get_cmap(), put #define in gdkcompat.h.
2607 * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
2608 gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
2609 purely a function of the corresponding colormap. Make
2610 gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
2612 * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
2613 gdk_pixbuf_*create_from_xpm_* in terms of
2614 gdk_pixbuf_new_from_xpm_data(), move into platform independent
2617 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
2618 advantage of the new draw_rgb_32_image_dithalign.
2620 * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
2622 * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
2625 * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
2627 * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
2628 which we initialize from the drawable when the GC is created,
2629 if the drawable has a colormap.
2631 * gdk/x11/gdkgc-x11.c: include string.h for memset.
2633 * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
2635 * gtk/gtklayout.[ch]: Remove unsed configure serial member.
2637 Sat Jul 1 16:28:32 2000 Owen Taylor <otaylor@redhat.com>
2639 * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
2640 actually returning expose events, make sure to set
2641 the count field properly.
2643 * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
2644 accidentally reintroced bug which always cleared
2645 the graphics_exposures value.
2647 Wed Jun 28 18:03:09 BST 2000 Tony Gale <gale@gtk.org>
2649 * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
2651 Wed Jun 28 17:49:05 BST 2000 Tony Gale <gale@gtk.org>
2653 * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
2655 Wed Jun 28 13:31:55 BST 2000 Tony Gale <gale@gtk.org>
2657 * docs/faq/gtk-faq.sgml: Start of Section 6.
2659 Mon Jun 26 19:37:04 2000 Owen Taylor <otaylor@redhat.com>
2661 * configure.in: Put 1.3.1 in warning message, not 1.3.0.
2663 (Fixes problem with drawing childless frames. Pointed out
2664 by and a first patch from Anders)
2666 * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
2667 compute a child_allocation, even if we don't have a child.
2669 * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
2670 Always chain to the parent's impl, even if we don't have a child.
2672 Mon Jun 26 18:53:31 2000 Owen Taylor <otaylor@redhat.com>
2674 * gdk/gdkrgb.c: If possible, create only a single shm segment and
2675 use multiple parts of it instead of creating a bunch of separate
2676 segments, since the maximum number of segments per system is not
2677 large. (This might be worth backporting to GTK+-1.2.x if we make a
2680 * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
2681 structure in preparation for per-colormap GdkRGB.
2683 * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
2684 to False when we get EINVAL from shmget so that the caller of
2685 gdk_image_new can retry with a smaller segment size.
2687 Mon Jun 26 13:01:16 BST 2000 Tony Gale <gale@gtk.org>
2689 * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
2691 Fri Jun 23 17:54:23 2000 Tim Janik <timj@gtk.org>
2693 * configure.in: make the current version number 1.3.1 (binary age 0,
2696 * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
2697 gtkcompat.h is all we want.
2699 * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
2700 GLib primitive types. fixed g_type_register_fundamental() argument
2703 * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
2706 * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
2707 object code cleanup, comment trigraph fixes, etc...
2709 2000-06-23 Havoc Pennington <hp@redhat.com>
2711 * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark
2712 instead of making up a bogus name for first_para_mark
2714 * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow
2717 Thu Jun 22 17:43:51 BST 2000 Tony Gale <gale@gtk.org>
2719 * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
2721 2000-06-21 Havoc Pennington <hp@pobox.com>
2723 * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
2724 we didn't check window->bg_pixmap != GDK_NO_BG.
2726 * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
2729 Thu Jun 22 14:02:19 BST 2000 Tony Gale <gale@gtk.org>
2731 * docs/faq/gtk-faq.sgm: Move file to here.
2732 TODO: Update Makfile.am
2734 Thu Jun 22 13:41:09 BST 2000 Tony Gale <gale@gtk.org>
2736 * docs/gtk-faq.sgm: Add Section 2
2738 Thu Jun 22 08:43:45 BST 2000 Tony Gale <gale@gtk.org>
2740 * docs/gtk-faq.sgm: New file. Start of DocBook
2743 Wed Jun 21 23:04:17 2000 Owen Taylor <otaylor@redhat.com>
2745 * configure.in (GDK_PIXBUF_MAJOR): Define version
2746 numbers for GDK_PIXBUF_*, as they get substituted
2747 into a header file. Need to consider versioning
2748 for gdk-pixbuf more carefully later.
2750 2000-06-21 Raja R Harinath <harinath@cs.umn.edu>
2752 Work with srcdir != builddir.
2753 * demos/testanimation.c: Don't include "gdk-pixbuf.h". Use
2754 <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
2755 * demos/testpixbuf.c: Likewise.
2756 * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
2757 * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h". Use
2759 * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h". Don't include
2761 * demos/Makefile.am (INCLUDES): Remove unneeded directories.
2763 Wed Jun 21 19:45:02 2000 Owen Taylor <otaylor@redhat.com>
2765 * TODO.xml: Change 1.4 version numbers to 2.0.
2767 Wed Jun 21 19:29:08 2000 Owen Taylor <otaylor@redhat.com>
2769 * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
2770 fixups to GTK+ standard.
2772 Wed Jun 21 16:38:13 2000 Owen Taylor <otaylor@redhat.com>
2774 * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
2777 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
2780 * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of
2781 gdk-pixbuf with GDK dependencies moved into GDK.
2783 * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
2784 move gdk-pixbuf-loader here until GObject has signals.
2786 * demos/: New directory of demos. Move demos from
2789 * demos/pixbuf-init.c: Small bit of code to check for
2790 loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
2791 set GDK_PIXBUF_MODULEDIR appropriately.
2793 * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
2794 define which no longer makes sense.
2796 2000-06-21 Havoc Pennington <hp@redhat.com>
2798 * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
2799 gtk_get_default_language
2801 * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language):
2802 new function to get the default language
2804 * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c:
2805 s/gtk_text_view_style_values/gtk_text_style_values/
2807 * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
2808 Add a "language" field to tags.
2810 (gtk_text_tag_set_arg): Fix bug in setting
2811 "bg_full_height_set" tag.
2813 2000-06-21 Havoc Pennington <hp@redhat.com>
2815 * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
2818 * gtk/gtktexttypes.c: Remove UTF functions, use glib
2819 stuff instead when possible.
2821 * gtk/gtktexttypes.h: Delete some unused constants
2823 * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
2824 testtextbuffer.c: use glib instead of custom unicode routines
2826 Wed Jun 21 12:50:58 2000 Owen Taylor <otaylor@redhat.com>
2828 * docs/es/: Removed mistakenly added generated sgml
2830 * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
2831 Remove outdated info files.
2833 * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
2834 Moved tutorial files into subdir
2836 * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
2839 * docs/man/gtk_button.pod: Remove. (contents will be
2840 integrated into gtk-reference button page.)
2842 * configure.in docs/Makefile.am docs/tutorial/Makefile.am
2843 docs/faq/Makefile.am: Adjust for new organization
2845 2000-06-21 Christopher Blizzard <blizzard@redhat.com>
2847 * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
2848 not $(MKINSTALLDIRS)
2850 Wed Jun 21 12:24:28 2000 Owen Taylor <otaylor@redhat.com>
2852 * gtk/testgtk.c (create_text): Finish the job Elliot started
2853 of removing font setting test for text widget. (Since text widget
2854 and GdkFont are not deprecated, and cause portability problems.)
2856 Wed Jun 21 11:41:43 2000 Owen Taylor <otaylor@redhat.com>
2858 * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
2859 gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
2860 Remove use of libunicode in favor of new GLib functions.
2862 * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
2863 nano-x, framebuffer. The X11 include is just a hack until we get
2864 the necessary functions in gdkcolor.h, so there is no reason to
2865 add other includes of platforms.
2867 * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert
2868 window bigger than the screen change.
2870 * gtk/testgtk.c: Revert some random changes from Elliot
2871 that had no particular point and were causing testgtkrc
2872 not to function correctly.
2874 * gdk/gdkregion-generic.h: Revert change from Elliot. Just
2875 because GdkSegment and GdkRegionBox have the same fields,
2876 it doesn't mean that 'typedef GdkSegment GdkRegionBox'
2877 results in clearer code.
2879 * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
2880 gdk_input_translate_coordinates): Fix missed GdkObjectification
2882 2000-06-18 Elliot Lee <sopwith@redhat.com>
2884 * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
2885 * gtk/gtk{plug,socket}.h: Missed commits from previous.
2887 2000-06-20 Havoc Pennington <hp@redhat.com>
2889 * modules/linux-fb/Makefile.am: Make this compile
2890 without framebuffer enabled
2892 * gdk/linux-fb/Makefile.am: Add conditional to not build
2893 framebuffer unless specified in configure
2895 * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
2896 the size of the target instead of source if -1 was passed for
2899 * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix
2900 width/height confusion.
2902 2000-06-19 Havoc Pennington <hp@redhat.com>
2904 * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
2905 GDK_DRAWABLE_XID. In the future, we probably want to make it
2906 faster with G_DISABLE_CHECKS turned on.
2908 2000-06-14 Havoc Pennington <hp@redhat.com>
2910 * gdk/Makefile.am: add gdkpixmap.c
2912 * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
2913 s/gdk_image_init/_gdk_windowing_image_init
2915 * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
2918 * gdk/gdkcolor.h: make GdkColormap a GObject subclass
2920 * gdk/gdkcompat.h: remove GdkWindowType compat, since
2921 GdkWindowType is now non-deprecated;
2922 change gdk_window_get_type() compat to be
2923 gdk_window_get_window_type().
2925 * gdk/gdkdnd.h: make GdkDragContext a GObject.
2927 * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
2928 virtual GObject. Make all functions call into the vtable.
2929 Move gdk_image_put() guts in here. Remove GdkDrawableType
2930 and gdk_drawable_get_type(), these are now GdkWindow-specific.
2931 draw_image, get_depth, get_size, set_colormap, get_colormap,
2932 get_visual added to the vtable.
2934 * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual
2935 GObject. Virtualize everything.
2936 (gdk_gc_new_with_values): remove check for destroyed window,
2937 because now GdkWindow::create_gc will check this.
2938 (gdk_gc_set_values): New function to set GC values, this
2939 was already implemented but wasn't in the header
2941 * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
2943 * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
2944 _gdk_window_draw_image(), remove _gdk_windowing_window_class,
2945 remove _gdk_window_class; add _gdk_window_impl_get_type() and
2946 _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
2947 _gdk_windowing_window_init, rename gdk_image_init to
2948 _gdk_windowing_image_init.
2950 * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
2951 (gdk_draw_layout): Remove check for destroyed window,
2952 because all the drawable methods already check it.
2954 * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
2955 Add gdkpixmap.c which contains implementation of GdkDrawable
2956 virtual table (by chaining to a platform-specific implementation
2959 * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP,
2960 GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
2961 GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
2962 GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
2965 * gdk/gdktypes.h: #include <glib-object.h>
2967 * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
2968 Move most functionality to platform-specific implementation
2969 object. GdkWindow itself now handles the backing store, then
2970 chains to the platform-specific implementation.
2971 (gdk_window_get_window_type): return GdkWindowType of the window.
2972 (gdk_window_peek_children): New routine, returns the children of
2974 (gdk_window_get_children): Was in X11-specific code and did
2975 XQueryTree. Changed to simply return a copy of window->children;
2976 so it can go in cross-platform code.
2978 * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
2980 * gdk/x11/gdkcolor-x11.c: implement X-specific parts of
2981 GdkColormap; just changed to use the new private data instead
2982 of casting to GdkColormapPrivate.
2984 * gdk/x11/gdkcursor-x11.c: added a couple typechecks to
2987 * gdk/x11/gdkdnd-x11.c: Change the way we access private fields
2988 (private data member in the GObject).
2989 (xdnd_manager_source_filter): Function had broken
2990 error handling, fix it (use gdk_error_trap_push).
2992 * gdk/x11/gdkdrawable-x11.c: This file now implements
2993 a base class for GdkWindowImplX11/GdkPixmapImplX11. This
2994 base class is purely for the convenience of the X port,
2995 and not part of the interface to cross-platform GDK.
2997 * gdk/x11/gdkevents-x11.c: Reflect various renamings.
2999 * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
3000 specific to X, and returned by the create_gc virtual method
3001 of GdkDrawableImplX11.
3002 (gdk_x11_gc_set_dashes): Change this to take an array of gint8
3003 rather than gchar, this was also changed in the GdkGC vtable.
3004 (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
3005 mask is 0, return immediately, instead of checking every flag.
3006 This is faster, and keeps us from segfaulting if values is NULL
3007 and the mask contains some nonzero flags.
3009 * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
3012 * gdk/x11/gdkglobals-x11.c: change type of grab window, since
3013 GdkWindowPrivate is gone.
3015 * gdk/x11/gdkim-x11.c: rename things that got renamed.
3017 * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and
3018 remove the image_put stuff that got transferred to GdkDrawable.
3020 * gdk/x11/gdkinput.c: renamings
3022 * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
3024 * gdk/x11/gdkpixmap-x11.c: GObject conversion
3026 * gdk/x11/gdkprivate-x11.h: indentation fixes
3028 * gdk/x11/gdkproperty-x11.c: renamings
3030 * gdk/x11/gdkselection-x11.c: renamings
3032 * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now
3033 implements the platform-specific "impl" object.
3034 Moved gdk_window_get_children to gdk/gdkwindow.c
3036 * gdk/x11/gdkx.h: Remove all the private structs and private datas
3037 that no longer exist. Add declaration of GdkGCX11 object here.
3038 Fix all the macros to still work.
3040 * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
3041 GdkDragContext from the boxed types since they are now GObjects.
3043 * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
3044 moved xthickness/ythickness into the instance. GtkStyleClass
3045 functions are now in the standard vtable for GtkStyle, so you have
3046 to create a GObject subclass to write a theme engine.
3047 (gtk_style_copy): fixed a leaked PangoFontDescription
3048 (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
3049 can be the standard GObject function.
3052 s/style->klass->[xy]thickness/style->[xy]thickness
3053 s/pango_layout_unref/g_object_unref/
3055 * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
3057 * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of
3058 accessing GDK internals.
3060 * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of
3061 accessing GDK internals.
3063 2000-06-18 Elliot Lee <sopwith@redhat.com>
3065 * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
3067 * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
3068 problem by calculating event position relative to the trough
3069 rather than the slider.
3070 * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
3072 * gdk/gdkgc.h: Add GDK_NOR.
3074 * configure.in, Makefile.am: Add modules top level dir
3075 * configure.in: Only use pangox library if building x11 target.
3076 * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
3078 Fri Jun 16 22:24:22 2000 Christopher Blizzard <blizzard@redhat.com>
3080 * gtk/gtkcolorsel.c: Change private class member to be named
3081 private_data throughout the file.
3083 * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
3084 private_data to avoid clashing with keyword.
3086 Fri Jun 16 22:24:22 2000 Christopher Blizzard <blizzard@redhat.com>
3088 * gdk/gdkdnd.h: Add comment to remove warning.
3090 Sun Jun 18 15:35:35 2000 Pablo Saratxaga <pablo@mandrakesoft.com>
3092 * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
3093 Byelorussian language; changed the Makefile and file names
3096 Mon Jun 12 16:58:40 2000 Owen Taylor <otaylor@redhat.com>
3098 * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
3099 rather than gdk_window_hide; this makes things work
3100 correctly if the window is programmatically hidden while
3103 Sun Jun 11 12:46:19 2000 Owen Taylor <otaylor@redhat.com>
3105 * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
3106 cut and paste typo where wrong pixmap was being
3107 unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
3109 Sun Jun 11 10:22:36 2000 Owen Taylor <otaylor@redhat.com>
3111 * gtk/gtkselection.c (gtk_selection_bytes_per_item):
3112 Add helper function to compute format / bytes
3113 relationship. Use in a couple places to fix up
3114 errors which assume 8 * format.
3116 * gtk/gtkselection.c (gtk_selection_request): Use 32
3117 rather than 8 * sizeof (GdkAtom), to work correctly
3120 Thu Jun 8 21:54:51 2000 Christopher Blizzard <blizzard@redhat.com>
3122 * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
3124 (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
3127 * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
3128 checking macros return NULL since the function has a return value.
3130 Wed Jun 7 15:44:42 2000 Owen Taylor <otaylor@redhat.com>
3132 * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
3133 GTK+ from building at all.
3135 * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
3137 Mon Jun 5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
3139 * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
3140 gtk/Makefile.am: make it possible to configure gtk for different
3141 targets on the same platform. The library name is now
3142 libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
3143 flag. Only the x11 target compiles right now.
3144 * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
3145 gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
3146 * gdk/nanox/gdk*generic*: delete generic region code.
3147 * gdk/linux-fb/gdk*generic*: delete generic region code.
3148 * README.nanox: update information.
3150 Tue Jun 6 10:53:59 2000 Owen Taylor <otaylor@redhat.com>
3152 * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
3153 prepend not append. (Pointed out by Brett Hall.)
3155 Tue Jun 6 01:59:57 2000 Owen Taylor <otaylor@redhat.com>
3157 * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
3159 Mon Jun 5 16:00:09 2000 Owen Taylor <otaylor@redhat.com>
3161 * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
3162 need this later, and this makes sure that the atexit for
3163 glib gets called after that for GDK, so atexits are
3164 properly ordered for object leak checking.
3166 * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
3168 * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call
3169 pango_x_shutdown_display()
3171 * gtk/simple.c (main): Close window on destroy.
3173 Mon Jun 5 11:50:02 2000 Owen Taylor <otaylor@redhat.com>
3175 * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
3176 to treat initial creation different from setting with
3177 regards to the graphics-exposures parameter, so add a parameter
3178 indicating whether this is initial or not.
3180 Mon Jun 5 13:29:31 2000 Owen Taylor <otaylor@redhat.com>
3182 * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
3183 to sort of work by adding an extra return_exposes arg
3184 to gdk_event_translate() - it might be better to simply
3185 deprecate the function altogether and force people to rewrite
3186 without it. gdk_window_scroll() handles most of it, and where
3187 gdk_window_scroll() doesn't work, simply redrawing more does.
3189 * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
3192 * gtk-config.in: Include PANGO_CFLAGS/LIBS.
3194 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a
3195 bunch of pretty much useless /* Print debugging info */ comments
3196 which had drifted away from the code they were commenting.
3198 2000-06-02 Havoc Pennington <hp@pobox.com>
3200 * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
3201 is in working order.
3203 * gtk/testtext.c: Change to reflect anonymous mark API
3205 * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
3207 * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
3208 field, which was unused.
3210 * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
3213 * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*
3215 * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
3216 flag on the insertion point and selection bound
3218 Throughout, use GtkTextMark instead of GtkTextLineSegment, and
3219 make mark-manipulation functions take a GtkTextMark* instead of a
3222 * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to
3223 GtkTextMarkBody; will be used to detect attempts to delete
3224 the permanent marks (insert and selection bound)
3226 * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer
3228 Fri Jun 2 12:56:01 2000 Owen Taylor <otaylor@redhat.com>
3230 * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
3233 * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event):
3234 Honor DOUBLE_BUFFRED_FLAG
3236 * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
3237 function to set the DOUBLE_BUFFERED flag.
3239 * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
3240 or not exposes done on the widget should be double-buffered.
3242 * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
3243 to be what would be expected. (Fixes problem with a
3244 g_return_if_fail() validating a TextDirection enumeration)
3246 Thu Jun 1 23:05:13 2000 Owen Taylor <otaylor@redhat.com>
3248 * gtk/gtkwidget.c: Remove all references to
3249 offscreen flag which was no longer used.
3251 * gtk/gtkprivate.h (enum): Remove unused flags and compress.
3253 * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
3254 for non-null label_widget->parent.
3256 * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute
3257 which no longer was used.
3259 * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
3261 * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
3264 * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
3265 check for destroyed windows.
3267 Thu Jun 1 13:48:45 2000 Owen Taylor <otaylor@redhat.com>
3269 * gtk/gtkimmulticontext.c: Add a finalize method and unref
3270 the slave context there.
3272 * gtk/gtkinvisible.[ch]: Make reference counting behavior
3273 identical to GtkWindow.
3275 Thu Jun 1 01:54:11 2000 Owen Taylor <otaylor@redhat.com>
3277 * Makefile.am gdk/gdkpango.c: Copy the layout render function from
3278 pangox to here, so we can write them independent of rendering
3279 system, using GDK primitives.
3281 * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
3282 gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
3283 since we have a rendering-system independent implementation in
3284 terms of draw_glyphs().
3286 * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
3287 function to render a single line.
3289 * gdk/x11/gdkpango.c: Move the guts of this file mostly
3290 into ../gdkpango.c, which simplifies things, since we
3291 don't have to deal with raw X gc's.
3293 Fri May 19 04:28:16 2000 Owen Taylor <otaylor@redhat.com>
3295 * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
3296 get the logical attributes for a given GtkTextLine.
3298 Tue May 30 16:05:39 2000 Owen Taylor <otaylor@redhat.com>
3300 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
3301 g_locale_get_codeset() to g_get_codeset() change.
3303 Tue May 30 15:03:19 2000 Owen Taylor <otaylor@redhat.com>
3305 * gtk/testcalendar.c (calendar_font_selection_ok): Use font
3308 * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
3311 * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
3312 redoing (vastly simplifying) for Pango. Still needs quite
3313 a bit of work. (Size selection is currently poor. List of
3314 predefined sizes is not a good idea, since all of these
3315 sizes won't necessarily be distinct.)
3317 Tue May 30 13:50:19 2000 Owen Taylor <otaylor@redhat.com>
3319 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
3320 CODESET results for LANG=C.
3322 Mon May 29 15:49:10 2000 Owen Taylor <otaylor@redhat.com>
3324 * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
3325 which takes a stringized pango font description;
3326 ignore the older 'font' and 'fontset' declarations.
3328 * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
3329 field with a GdkFont derived via gdk_font_from_description(),
3330 for compatibility. (Should we just remove it entirely?
3331 Probably too much compatibility breakage, but people
3332 should be migrating to the new Pango stuff as quickly
3335 Mon May 29 15:47:41 2000 Owen Taylor <otaylor@redhat.com>
3337 * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
3339 Mon May 29 15:44:46 2000 Owen Taylor <otaylor@redhat.com>
3341 * gtk/gtkcalender.c: Roughly pango-ized. Really needs
3342 redoing; there are some bugs in size allocation right
3343 now, the semi-existant distinction between header / day
3344 fonts was removed, but, with Pango, could actually
3345 be made functional in a nice way.
3347 * gtk/testcalender: Move calender from examples into this
3348 directory as a test program. (We really need to restrcture
3349 testgtk into a whole directory full of tests for every
3350 widget or functionality group, separated into multiple .c
3353 Mon May 29 15:19:56 2000 Owen Taylor <otaylor@redhat.com>
3355 * gtk/testgtk.c (file_exists): Fix stupid typo that
3356 was keeping RC file from being loaded.
3358 * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
3361 Mon May 29 14:31:27 2000 Owen Taylor <otaylor@redhat.com>
3363 * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
3364 Add function to load a GdkFont from a PangoFontDescription.
3366 2000-05-29 Tor Lillqvist <tml@iki.fi>
3368 * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
3369 variable should be of type GdkEventPrivate.
3371 Fri May 26 17:16:40 2000 Owen Taylor <otaylor@redhat.com>
3373 * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
3374 to have any widget for the label, use a GtkLabel widget
3375 to display the text. (Based partially on a patch from
3378 (Quite a bit of code reorganization - strip 90% of the
3379 guts out of gtkaspectframe and add a single virtual
3380 func to GtkFrameClass - compute_child_allocation.)
3382 Fri May 26 12:00:02 2000 Owen Taylor <otaylor@redhat.com>
3384 * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
3385 (Removed clist->row_center_offset field because caching
3386 it wasn't saving time or code, added private function
3387 _gtk_clist_create_cell_layout()).
3389 Wed May 24 15:59:37 2000 Owen Taylor <otaylor@redhat.com>
3391 * gtk/gtkaccellabel.c: Pangoized.
3393 * gtk/[hv]ruler.c: Pangoized
3395 Mon May 22 19:23:59 2000 Owen Taylor <otaylor@redhat.com>
3397 * gtk/gtkfilesel.c (gtk_file_selection_init):
3398 Use gtk_clist_set_column_auto_resize() to remove need
3399 need for manual column width computations.
3401 Mon May 22 18:50:26 2000 Owen Taylor <otaylor@redhat.com>
3403 * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel,
3404 ensuring Pango correctness, and considerably simplifying the
3407 * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
3409 * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
3410 getting of numbers of lines.
3412 * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
3413 to the actual requested width of the lable, not to the wrap
3416 * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
3418 * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
3419 gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
3421 * gtk/gtktextview.c: Fix structure inheritance.
3423 * gtk/gtkprogressbar.c: Pangoize.
3425 Mon May 22 15:47:30 2000 Owen Taylor <otaylor@redhat.com>
3427 * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
3430 * gtk/gtktextlayout.c (find_display_line_above): Fixed
3431 bug with computing line tops.
3433 * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
3435 Thu May 18 18:53:31 2000 Owen Taylor <otaylor@redhat.com>
3437 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
3438 and y_offset coordinates to do what we need now. (The offset between
3439 buffer and layout coordinates has been reintroduced, but is a
3440 bit different than before.)
3442 * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
3443 handle the adjustments ourselves, and scroll as necessary using
3444 the new gdk_window_scroll().
3446 The advantage of this is that when we are incrementally revalidating,
3447 we are essentially rearranging things around the visible portion
3448 of the screen. With the old setup, the visible portion of the
3449 screen was moved around in the layout, so scrolling and redrawing
3450 to track that caused jumping of the display. Since we now
3451 control the scrolling ourselves, we can suppress this and
3452 only redraw when things actually change.
3454 Thu May 18 18:47:25 2000 Owen Taylor <otaylor@redhat.com>
3456 * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
3457 the region not just redisplay it after-all, since we store the
3458 cursors in the LineDisplay. (Ugly interactions here between
3459 GtkLayout and GtkTextBTree here.)
3461 * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
3463 Thu May 18 18:43:21 2000 Owen Taylor <otaylor@redhat.com>
3465 * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
3466 Added function to scroll contents of a window while keeping the
3467 window constant. Works by XCopyArea or guffaw-scrolling depending
3468 on the details of how the window is set up. (guffaw-scrolling
3469 still needs to be filled in.)
3471 Wed May 17 22:36:53 2000 Owen Taylor <otaylor@redhat.com>
3473 * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
3474 move the debugging that was tied to a global variable
3477 * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
3479 * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
3480 validated flag, in line data instead of setting height/width to
3481 -1. This allows us to perform operations with partially invalid
3482 buffer (using the old size for invalid lines) and thus to do
3483 incremental vaidation. Keep height/width aggregates up to date
3484 when deleting text and rebalancing the tree.
3486 * gtk/gtktextbtree.[ch]: Add functions validate a line
3487 (gtk_text_btree_validate_line), and to validate up
3488 to a number of pixels (gtk_text_btree_validate).
3490 * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
3491 that indicates that something is changed and a revalidation
3492 pass is needed. Change ::need_repaint to ::changed, and
3493 make it take old and new yranges instead of a rectangle.
3495 * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
3496 the line_data_destroy() function from
3497 gtk_text_btree_add_view() to a virtual function in
3500 * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
3501 since we are handling partial repaints in a different fashion
3504 * gtk/gtktextbtree.[ch]: Only repaint the changed portion
3505 of the selection instead of queueing a repaint on the
3508 * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
3509 get_selection_bounds() down to btree, make the function
3510 in buffer a wrapper around the btree function.
3512 * gtk/gtktextlayout.[ch]: Add functions to check if the
3513 layout is valid and to recompute either a range of pixels
3514 aroudn a line or a certain total number of pixels.
3516 * gtk/gtktextlayout.[ch]: Cache a single line display;
3517 now that we only redraw the needed portions, the hit rate
3518 for this cache is quite high.
3520 * gtk/gtktextview.[ch]: Keep track of the first paragraph
3521 on the screen so that when re-laying-out the buffer, we can
3522 keep the same place. This requires connecting to ::value_changed
3525 * gtk/gtktextview.[ch]: Add idle functions to revalidate
3526 the buffer after we receive an ::invalidated signal.
3528 Wed May 17 22:10:47 2000 Owen Taylor <otaylor@redhat.com>
3530 * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
3531 to max of allocation and layout size, not just to the
3534 * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size):
3535 Invalidate window so it gets redrawn properly.
3537 * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
3538 to mean the entire window.
3540 * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
3543 Mon May 15 14:51:31 2000 Owen Taylor <otaylor@redhat.com>
3545 * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
3546 to get the name of a mark.
3548 * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
3549 to find the paragraph from a y position.
3551 Thu May 11 12:57:20 2000 Owen Taylor <otaylor@redhat.com>
3553 * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
3554 nodes have width/height >= 0, not > 0.
3556 Tue May 9 21:29:06 2000 Owen Taylor <otaylor@redhat.com>
3558 * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
3559 Add a size_only flag, so when we only need the size, we don't create
3560 useless appearance attributes.
3562 * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
3563 duplicate setting of font description.
3565 * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000
3567 Wed Apr 26 01:53:23 2000 Owen Taylor <otaylor@redhat.com>
3569 * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into
3570 EXTRA_DIST. It does not work well when the file that
3571 everything depends on is not in the tarball.
3573 Wed Apr 26 00:56:14 2000 Owen Taylor <otaylor@redhat.com>
3575 * gtk/testgtk.c: Some hacks and fixes so that it basically
3576 works when not sitting in the GTK+ build tree.
3578 2000-05-03 Havoc Pennington <hp@redhat.com>
3580 * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
3581 Properly determine the ordering of the tag root and the current
3582 line within the tree. Previous algorithm only worked if the tag
3583 root's immediate parent was the common root of both the current
3584 line and the tag root.
3586 Wed Apr 26 00:43:00 2000 Owen Taylor <otaylor@redhat.com>
3588 * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
3591 * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
3592 the widget text directional dynamically.
3594 * gtk/gtktextview.[ch]: Added functions to get and set default
3597 Tue Apr 25 23:47:38 2000 Owen Taylor <otaylor@redhat.com>
3599 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
3600 in cursor location computation.
3602 Tue Apr 25 23:22:59 2000 Owen Taylor <otaylor@redhat.com>
3604 * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
3605 vadjusment values properly when layout gets smaller.
3607 * gtk/gtktextview.c (need_repaint_handler): Areas being
3608 passed in are far completely inaccurate, and sometimes
3609 too small, so, for now, just queue a redraw on the
3610 whole visible region.
3612 2000-04-25 Havoc Pennington <hp@redhat.com>
3614 * gtk/gtktextbtree.c (summary_destroy): new function to
3615 destroy tag summary nodes
3616 (gtk_text_line_next_could_contain_tag): this function was
3617 totally broken if the line passed in wasn't below the tag
3619 (gtk_text_btree_first_could_contain_tag): In the tag == NULL
3620 "wildcard" case, we have to do a linear scan. Blah.
3621 (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
3622 we have to do the linear scan
3623 (tag_removed_cb): When a tag is removed from the tag table,
3624 remove the GtkTextTagInfo node from the btree.
3625 (gtk_text_btree_spew): Implement the spew function, for
3626 our debugging pleasure.
3628 Tue Apr 25 19:40:18 2000 Owen Taylor <otaylor@redhat.com>
3630 * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
3631 a problem with referring to the wrong buffer.
3633 * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
3635 * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
3636 font description to gtk_style_new() - otherwise things
3637 don't work without a .gtkrc file.
3639 * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
3640 tags table if we create it ourself, too.
3642 * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
3643 it was conflicting with XKB modifiers.
3645 * gtk/gtktextview.[ch]: Add simple support for
3648 Mon Apr 24 19:34:18 2000 Owen Taylor <otaylor@redhat.com>
3650 * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
3651 with deletion from last commit.
3653 Mon Apr 24 19:29:40 2000 Owen Taylor <otaylor@redhat.com>
3655 * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
3656 in the context from the current locale.
3658 * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
3659 context, not hardcoded value.
3661 * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
3664 Sun Apr 23 23:39:18 2000 Owen Taylor <otaylor@redhat.com>
3666 * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
3667 attributes - that doesn't handle partial-glyph selection
3668 properly. Instead use new pango_layout_line_get_x_ranges()
3669 functionality to draw the selection.
3671 * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
3672 now properly handles out-of-range coordinates.
3674 * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
3676 * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
3679 * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
3680 for paragraphs opposite to the base direction of the widget.
3682 * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
3684 * gtk/gtktextlayout.c: Don't split segments on marks, since that
3685 causes Arabic words to reshape as you cursor through.
3687 * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
3688 cursor position when moving vertically with the arrow keys and
3689 scrolling with page-up/page-down. (Arrow keys save only the X,
3690 scrolling saves both X and Y.)
3692 This means you can line-up / line-down or page-up / page-down
3693 without losing your place, and also that moving vertically
3694 with the cursor keys keeps the same X position, not the same
3697 * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
3698 arrow keys move by display lines, not paragraphs.
3700 Tue Apr 18 14:16:50 2000 Owen Taylor <otaylor@redhat.com>
3702 * gtk/gtklayout.c: Make sure that the bin window is at least
3703 as big as the allocation. (Should we also make sure that the
3704 bin window is big enough to completely cover widget->window?)
3706 * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
3707 function to get the onscreen rectangle.
3709 * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
3710 for offsets in window coordinates.
3712 Sun Apr 16 16:13:27 2000 Owen Taylor <otaylor@redhat.com>
3714 * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
3717 * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
3718 from the widget direction.
3720 * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg):
3721 Add a "direction" attribute.
3723 * gtk/gtktextview.c: global s/tkxt/text_view/.
3725 * gtk/testtext.c: Added long block of text in Arabic, to test out
3726 the direction attributes. (Some problems with the shaping system
3727 for arabic become obvious - like the fact the cursor splits words
3728 into unjoined pieces.)
3730 Fri Apr 14 12:54:34 2000 Owen Taylor <otaylor@redhat.com>
3732 * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
3734 * gtk/gtktextlayout.c: Fix up alignment.
3736 * gtk/testtext.c: Add some tests for centering, wrapping.
3738 Fri Apr 14 09:26:22 2000 Owen Taylor <otaylor@redhat.com>
3740 * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
3741 Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
3742 If we wrote GTK+-specific layout-render function this could just replace
3743 the draw_layout() operation in the vtable.
3745 * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to
3746 pango_layout_get_cursor_pos() and use that function.
3748 * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
3749 is a non-static symbol.
3751 * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
3752 with gtk_text_btree_find_line_by_y()
3754 * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
3755 renderer that handles GtkTextAppearance attributes.
3757 * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h:
3759 - Move the values in the style that don't affect geometry into a
3760 GtkTextAppearance structure.
3761 - Change underline to take a PangoUnderline and "font" a string
3762 representation of a font description
3763 - Add a "font_desc" attribute which takes a FontDescription structure.
3765 * gtk/gtktextlayout.[ch]:
3767 - Get rid of the display-line list per each line. Instead, we
3768 generate, on demand, a GtkTextLineDisplay structure which]
3769 contains a PangoLayout * and other necesary information
3770 (offsets, cursor locations) for displaying a paragraph.
3771 - Get rid of the code to wrap lines, create display chunks,
3772 etc. Instead, we just go through a paragraph and convert
3773 it into the necessary inputs to a PangoLayout.
3774 - Implement a new attribute type, GtkTextAttrAppearance. This
3775 holds a GtkTextAppearance, and is used to pass colors,
3776 stipple, etc, through from the layout to the display without
3777 having to use lots and lots of individual attributes.
3778 - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
3779 in terms of PangoLayout functions.
3781 * gtk/gtktextview.c:
3783 - Handle passing the necessary PangoContext to the layout
3784 - Some fixups in painting to deal with the automatic backing store
3785 and offsetting of GTK+-1.4
3786 - Add a style_set handler so that the default style reacts
3787 properly to theme changes.
3789 * gtk/gtktext?*.[ch]: Random code-style fixes.
3791 * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
3793 Mon Apr 10 10:33:45 2000 Owen Taylor <otaylor@redhat.com>
3795 * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
3796 in original form preparatory to Pango-ization and gdkimcontext-ization.
3798 Thu Apr 6 19:25:39 2000 Owen Taylor <otaylor@redhat.com>
3800 * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
3801 so that we can derive from gtkimcontext in language bindings properly.
3803 Thu Apr 6 16:02:52 2000 Owen Taylor <otaylor@redhat.com>
3805 * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
3806 Add a compose table including (almost) all the compose combinations
3807 from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
3808 data in the XIM implementation.
3810 * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
3811 Moved functions to convert keyvalues from and to unicode here from
3812 the win32 port and made them public.
3814 Wed Apr 5 16:37:29 2000 Owen Taylor <otaylor@redhat.com>
3816 * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
3818 Wed Apr 5 16:27:45 2000 Owen Taylor <otaylor@redhat.com>
3820 * gtk/gtkimcontext.[ch]: Base class for new input context system
3822 * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
3823 the real input context implementation to be loaded from modules
3824 and switched on the fly.
3826 * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
3827 context that just does direct keysymbol => unicode translation.
3829 * gtk/gtkentry.[ch]: Start switching editing over to using
3830 GtkInputContext. (No handling of preedit yet.)
3832 Wed Apr 5 15:48:41 2000 Owen Taylor <otaylor@redhat.com>
3834 * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
3835 many substitutions. (klass should not be subsituted.)
3837 Wed Apr 5 00:18:14 2000 Owen Taylor <otaylor@redhat.com>
3839 * configure.in: Add checks for Pango
3841 * configure.in docs/Makefile.am: Add test for sgml2html
3842 and allow 'make dist' without building html, but print out
3843 warnings in that case. (For making snapshots)
3845 * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
3846 Add Pango libraries and C flags
3848 * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
3849 Add function (gdk_draw_layout) to draw a pango layout.
3851 * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
3852 for getting Pango contexts for GDK.
3854 * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
3856 * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
3859 * gtk/gtkentry.c: Hack in simple Hebrew input with direct
3860 keysym => unicode translations. More languages can be added
3861 here, but real input-method support is needed.
3863 * docs/Changes-1.4.txt: Added note about entry behavior.
3865 * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
3866 to set the reading direction for a widget and the global direction.
3867 Add test which allows toggling the global direction. Two private
3868 flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
3870 * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
3871 gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c
3873 * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
3875 * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
3876 underlining now handled by Pango.
3878 * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
3879 to RCStyle and Style. (Having both this and the old font name and GdkFont
3882 * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added
3883 convenience functions for creating contexts and layouts for widgets.
3885 * gtk/testgtk.c: Enhance label tests with multilingual labels.
3887 2000-05-29 Jonathan Blandford <jrb@redhat.com>
3889 * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
3890 titles to be active, even if they aren't visible.
3891 (gtk_clist_column_titles_passive): Ditto.
3893 2000-05-21 Nils Barth <nils_barth@post.harvard.edu>
3897 * gtktypeutils.h: Spelling/grammar fixes in comments.
3899 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
3901 * gdk/nanox/*.h: add missing header files.
3903 Fri May 19 11:52:59 2000 Tim Janik <timj@gtk.org>
3905 * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
3907 (gtk_drawing_area_size): queue a resize.
3909 Sun Mar 26 03:21:28 2000 Tim Janik <timj@gtk.org>
3911 * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
3912 the handlers, also invalidate them. bug nailed down by Karl Nelson
3913 <kenelson@ece.ucdavis.edu>.
3915 Fri May 19 06:49:23 2000 Tim Janik <timj@gtk.org>
3917 * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
3918 "(nil)" foundries, patch from Grigorios Magklis.
3920 * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
3921 on non-available fonts, based on a patch by Grigorios Magklis
3922 <maglis@cs.rochester.edu>.
3924 2000-05-18 Elliot Lee <sopwith@redhat.com>
3926 * gdk/x11/gdkregion-generic.c: If a region does not have any
3927 rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
3928 instead of GDK_OVERLAP_RECTANGLE_IN.
3930 2000-05-17 Jonathan Blandford <jrb@redhat.com>
3932 * gtk/gtklayout.c (gtk_layout_map): Remove references to
3933 OFFSCREEN, as it is no longer necessary.
3935 Wed May 17 10:52:12 2000 Owen Taylor <otaylor@redhat.com>
3937 * gtk/gtkcolorsel.c: Patch from David Santiago
3938 <mrcooger@cyberverse.com> to change things so that the
3939 indicator of the active palette entry is done independently,
3940 not via the focus, since it should always be visible.
3942 2000-05-17 Tor Lillqvist <tml@iki.fi>
3944 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
3945 refcount leaks as in the X11 backend.
3947 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
3950 * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
3951 backend. Add _gdk_windowing_window_destroy().
3953 * gtk/gtkcolorsel.c: Include correct backend-specific header.
3954 Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
3955 either, but these probably do exist on nanox?)
3957 * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
3958 which isn't necessarily defined by <math.h>.
3960 * gtk/gtkobject.c (gtk_object_init): Don't go up the class
3961 ancestry past GtkObject.
3963 * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
3966 * gtk/gtk.def: Update corresponding to recent changes.
3968 * gtk/makefile.{cygwin,msc}: Updates.
3970 Fri May 12 18:46:51 2000 Owen Taylor <otaylor@redhat.com>
3972 * docs/Changes-1.4.txt: A bit of editing.
3974 * gdk/gdkwindow.c (_gdk_window_clear_update_area)
3975 * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
3976 to clear the update area for the window, and clear it
3977 when hiding a window.
3979 * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
3980 if window destroyed.
3982 * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
3984 * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move
3985 gdk_window_destroy() to the generic code, since there was a lot of
3986 window-system-independent logic it in. Add a function:
3988 _gdk_window_destroy()
3990 to the internal API to destroy a window without unreferencing it.
3993 _gdk_windowing_window_destroy()
3995 That does the windowing-system-dependent part of destroying
3998 Fri May 12 11:07:41 2000 Owen Taylor <otaylor@redhat.com>
4000 * gtk/testgtk.c: Fix various memory leaks of pixmaps.
4002 Fri May 12 11:06:10 2000 Owen Taylor <otaylor@redhat.com>
4004 * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask):
4005 Make gtk_widget_shape_combine_mask() keep a reference count on
4006 the pixmap since it keeps it around.
4008 Fri May 12 10:53:29 2000 Owen Taylor <otaylor@redhat.com>
4010 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
4013 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
4014 leak with event filters.
4016 Thu May 11 14:29:44 2000 Owen Taylor <otaylor@redhat.com>
4018 * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
4019 signal handlers with the right data arguments. (Fixes
4020 some warnings when a widget was repeatedly set as a drag
4023 * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
4024 window so we can avoid avoid setting the DND properties on the
4025 toplevel window repeatedly.
4027 2000-05-13 Tor Lillqvist <tml@iki.fi>
4029 * gdk/win32/gdkwin32.h: Define more message types missing from
4032 * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
4033 call gdk_window_destroy_notify(). It was never called. This
4034 probably meant that the GdkWindow was never freed. Thanks Owen for
4037 * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
4038 window as destroyed before calling DestroyWindow(). DestroyWindow()
4039 causes a call to the window procedure (gdk_WindowProc), which
4040 calls gdk_event_translate(), which calls
4041 gdk_window_destroy_notify(), which gets confused unless the window
4042 is set as destroyed.
4044 * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
4045 this function to indicate it's win32 only. Put inside #ifdef
4048 * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
4049 debugging function. (gdk_event_translate:) Add a default branch
4050 that uses the above function to print debug messages with all
4051 Windows messages symbolically.
4053 * gdk/win32/gdkprivate-win32.h: Declare it, and
4054 gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
4056 Fri May 12 20:07:32 2000 Tim Janik <timj@gtk.org>
4058 * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
4061 Fri May 12 17:13:32 2000 Tim Janik <timj@gtk.org>
4063 * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
4065 * gtk/gtktext.c: made the adjustments no-construct args, simply
4066 provide default adjustments.
4067 (gtk_text_destroy): release adjustments.
4069 * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
4070 adjustment argument non-construct.
4072 * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
4073 instead of in finalize.
4074 (gtk_progress_get_text_from_value):
4075 (gtk_progress_get_current_text):
4076 (gtk_progress_set_value):
4077 (gtk_progress_get_percentage_from_value):
4078 (gtk_progress_get_current_percentage):
4079 (gtk_progress_set_percentage):
4080 (gtk_progress_configure): ensure an adjustment is present.
4082 Thu May 11 01:24:08 2000 Tim Janik <timj@gtk.org>
4084 * gtk/gtkcolorsel.[hc]:
4085 * gtk/gtkcolorseldialog.[hc]:
4086 * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
4087 their parent implementation, use bit fields for boolean values, don't
4088 create unused widgets, usage of glib types, braces go on their own
4089 lines, function argument alignment, #include directives etc. etc. etc..
4091 * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
4093 Wed May 10 23:29:52 2000 Tim Janik <timj@gtk.org>
4095 * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
4097 * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
4100 * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
4102 (gtk_combo_destroy): don't keep a pointer to a destroyed window.
4104 * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
4105 to NULL when the toplevel is getting destroyed.
4106 (gtk_menu_set_tearoff_state): same here for the tearoff_window.
4108 (gtk_menu_init): store the information of whether we have to
4109 readd the initial child ref_count during destruction in a new
4110 GtkMenu field needs_destruction_ref_count.
4112 * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
4113 here, those reading: learn from my mistake! ;)
4114 in order for set_?adjustment to support a default adjustemnt if
4115 invoked with an adjustment pointer of NULL, the code read (pseudo):
4116 if (v->adjustment) unref (v->adjustment);
4117 if (!adjustment) adjustment = adjustment_new ();
4118 if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
4119 now imagine the first unref to actually free the old adjustment and
4120 adjustment_new() creating a new adjustment from the very same memory
4121 portion. here, the latter comparision will unintendedly fail, and
4122 all hell breaks loose.
4123 (gtk_viewport_set_hadjustment):
4124 (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
4125 after unreferencing it.
4127 * gtk/gtkcontainer.[hc]: removed toplevel registration
4128 functions: gtk_container_register_toplevel(),
4129 gtk_container_unregister_toplevel() and
4130 gtk_container_get_toplevels() which had wrong semantics
4131 anyways: it didn't reference and copy the list.
4133 * gtk/gtkwindow.c: we take over the container toplevel registration
4134 bussiness now. windows are registered across multiple destructions,
4135 untill they are finalized. the initial implicit reference count
4136 users are holding on windows is removed with the first destruction
4138 (gtk_window_init): ref & sink and set has_user_ref_count, got
4139 rid of gtk_container_register_toplevel() call. add window to
4141 (gtk_window_destroy): unref the window if has_user_ref_count
4142 is still set, got rid of call to
4143 gtk_container_unregister_toplevel().
4144 (gtk_window_finalize): remove window from toplevel list.
4145 (gtk_window_list_toplevels): new function to return a newly
4146 created list with referenced toplevels.
4147 (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
4149 * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
4150 adjustment a non-construct arg.
4151 * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
4152 * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
4153 * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
4155 * gtk/gtkrange.c: added some realized checks.
4156 (gtk_range_destroy): get rid of the h/v adjustments in the
4157 destroy handler instead of finalize. remove timer.
4158 (gtk_range_get_adjustment): demand create adjustment.
4160 * gtk/gtkviewport.c: made h/v adjustment non-construct args.
4161 we simply create them on demand now and get rid of them in
4162 the destroy handler.
4163 (gtk_viewport_destroy): get rid of the h/v adjustments in the
4164 destroy handler instead of finalize.
4165 (gtk_viewport_get_hadjustment):
4166 (gtk_viewport_get_vadjustment):
4167 (gtk_viewport_size_allocate): demand create h/v adjustment
4170 * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
4171 gtk_widget_real_destroy () functionality.
4172 (gtk_widget_real_destroy): reinitialize with a new style, instead
4173 of setting widget->style to NULL.
4175 Fri May 5 13:02:09 2000 Tim Janik <timj@gtk.org>
4177 * gtk/gtkcalendar.c:
4178 * gtk/gtkbutton.c: ported _get_type() implementation over to
4179 GType, either to preserve memchunks allocation facilities,
4180 or because Gtk+ 1.0 GtkTypeInfo was still being used.
4182 * gtk/gtkobject.[hc]: derive from GObject. ported various functions
4183 over. prepare for ::destroy to be emitted multiple times.
4184 removed reference tracer magic. chain into GObjectClass.shutdown()
4185 to emit ::destroy signal.
4187 * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
4190 * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
4197 * gtk/gtkargcollector.c:
4198 * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
4199 not being a fundamental anymore, and to work with the new
4200 type system (nuked fundamental type varargs clutter).
4202 * gtk/*.c: install finalize handlers in the GObjectClass
4203 part of the class structure.
4204 changed direct GTK_OBJECT()->klass accesses to
4206 changed direct object_class->type accesses to GTK_CLASS_TYPE().
4208 * gtktypeutils.[hc]: use the reserved fundamental ids provided by
4209 GType. made most of the GTK_*() type macros and Gtk* typedefs
4210 simple wrappers around macros and types provided by GType.
4211 most notably, a significant portion of the old API vanished:
4214 GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
4215 GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
4218 GTK_TYPE_C_CALLBACK,
4222 gtk_type_set_varargs_type(),
4223 gtk_type_get_varargs_type(),
4224 gtk_type_check_object_cast(),
4225 gtk_type_check_class_cast(),
4226 gtk_type_describe_tree(),
4227 gtk_type_describe_heritage(),
4229 gtk_type_children_types(),
4230 gtk_type_set_chunk_alloc(),
4231 gtk_type_register_enum(),
4232 gtk_type_register_flags(),
4233 gtk_type_parent_class().
4234 replacements, where available are described in ../docs/Changes-1.4.txt.
4235 implemented compatibility functions for the remaining API.
4237 * configure.in: depend on glib 1.3.1, use gobject module.
4239 Thu May 11 12:39:50 2000 Owen Taylor <otaylor@redhat.com>
4241 * TODO.xml: Various updates to current status.
4243 Wed May 10 20:25:04 2000 Owen Taylor <otaylor@redhat.com>
4245 * gtk.m4: Print out version when test succeeds.
4247 Wed May 10 16:38:17 2000 Owen Taylor <otaylor@redhat.com>
4249 * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
4250 gtk/gtkhsv.[ch]: Color selection dialog rewrite.
4252 (Original triangle color selector from Simon Budig
4253 <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
4254 from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
4255 Santiago <mrcooger@cyberverse.com>)
4257 * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
4258 out into a separate widget.
4260 * gtk/testgtk.c: Add some checkbuttons for toggling palette
4261 and opacity controls.
4263 Wed May 10 16:08:09 2000 Owen Taylor <otaylor@redhat.com>
4265 * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that
4266 snuck in prematurely.
4268 2000-05-07 Tor Lillqvist <tml@iki.fi>
4270 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
4271 had deleted a ! operator by mistake, which caused
4272 GDK_SELECTION_CLEAR events never to be generated, which caused
4273 only the first copy to the clipboard from an gtkeditable to
4274 actually cause a copy to the Windows clipboard.
4276 2000-05-06 Tor Lillqvist <tml@iki.fi>
4278 * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
4279 compilation, too. Current mingw gcc distributions include the
4280 necessary headers. Also the necessary IIDs are now in mingw
4281 headers/libraries, and own definitions unnecessary.
4283 More hacking on OLE2 DND, still doesn't work though, and thus
4286 * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
4289 Sat, 6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
4291 * gdk/nanox/*: nano-X port work in progress.
4292 * gdk/simple.c: simple test for Gdk.
4293 * README.nanox: notes about the port: read this first!
4294 * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
4297 Fri May 5 11:18:47 2000 Owen Taylor <otaylor@redhat.com>
4299 * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
4300 gdk_window_clear() into common code, implement in terms of
4301 gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
4302 not redirected to the backing rectangle.
4304 Wed Apr 26 01:53:23 2000 Owen Taylor <otaylor@redhat.com>
4306 * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into
4307 EXTRA_DIST. It does not work well when the file that
4308 everything depends on is not in the tarball.
4310 Tue Apr 25 22:20:41 2000 Owen Taylor <otaylor@redhat.com>
4312 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
4313 with recursion where process_updates() is called from
4314 an expose handler. (GtkTextView is highly broken in
4315 doing this, but it should work, so it is a nice test
4318 Sun Apr 23 23:39:18 2000 Owen Taylor <otaylor@redhat.com>
4320 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
4321 handle the case where updates are queued during processing of
4324 Tue Apr 18 14:16:50 2000 Owen Taylor <otaylor@redhat.com>
4326 * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
4327 window is on gdk_display - use that instead of segfaulting.
4329 Thu May 4 02:04:46 2000 Tim Janik <timj@gtk.org>
4331 * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
4332 broken and require an empty arg, give it to them.
4334 Fri Apr 28 19:34:32 2000 Tim Janik <timj@gtk.org>
4336 * gtk/gtklabel.h: indentation fixes.
4338 2000-05-02 Tor Lillqvist <tml@iki.fi>
4340 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
4341 draw too narrow or too low arcs, they seem to fail, at least with
4342 some display drivers.
4344 * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
4346 Large changes to the Win32 backend, partially made necessary by
4347 the changes to the backend-independent internal
4348 structures. Attempts to implement similar backing store stuff as
4349 on X11. The current (CVS) version of the Win32 backend is *not* as
4350 stable as it was before the no-flicker branch was merged. A
4351 zipfile with that version is available from
4352 http://www.gimp.org/win32/. That should be use by "production"
4353 code until this CVS version is usable. (But note, the Win32
4354 backend has never been claimed to be "production quality".)
4356 * README.win32: Add the above comment about versions.
4358 * gdk/gdkwindow.c: Don't use backing store for now on Win32.
4360 * gdk/gdk.def: Update.
4362 * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
4363 presumably be replaced by some more better mechanism as 1.4 gets
4364 closer to release shape.
4366 * gdk/makefile.{cygwin,msc}: Update.
4368 * gdk/win32/*.c: Correct inclusions of the backend-specific and
4369 internal headers. Change code according to changes in these. Use
4370 gdk_drawable_*, not gdk_window_* where necessary.
4372 * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
4375 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
4376 to interpret single characters as UTF-8. Thanks to Hans Breuer.
4377 Use correct function name in warning messages.
4379 * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
4380 GSourceFuncs gdk_event_prepare and gdk_event_check.
4381 (gdk_event_get_graphics_expose): Do implement, use
4382 PeekMessage. Thanks to Hans Breuer.
4383 (event_mask_string): Debugging function to print an GdkEventMask.
4384 (gdk_pointer_grab): Use it.
4386 * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
4387 (old) book I used claimed was Hangul actually is CJK Unified
4388 Ideographs Extension A. Also, Hangul Syllables were missing.
4391 * gdk/win32/gdkgc-win32.c: Largish changes.
4393 * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
4394 g_win32_getlocale() from GLib, and not setlocale() to get current
4397 * gdk/win32/gdkprivate-win32.h
4398 * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
4399 gdkwin32.h, similarily as in the X11 backend.
4401 * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
4402 assignment was used instead of equals in if test. Thanks to Hans
4405 * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
4408 * gdk/win32/makefile.{cygwin,msc}
4409 * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
4410 path to the Win32 headers that works also with the mingw compiler.
4412 * gtk/gtkstyle.c: Include <string.h>.
4414 2000-04-26 Havoc Pennington <hp@redhat.com>
4416 * gtk/gtklabel.c (gtk_label_get_text): Add this function,
4417 replacing the broken gtk_label_get ()
4419 2000-04-15 Havoc Pennington <hp@pobox.com>
4421 * gdk/gdkdnd.h: clean up enum format, remove extra comma,
4422 this keeps scanner scripts from getting confused.
4424 * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
4425 data, rather than void
4427 2000-04-15 Tor Lillqvist <tml@iki.fi>
4429 * gtk/gtkclist.c (gtk_clist_motion)
4430 * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
4431 with is_hint FALSE, get x and y from the event. They used to be
4432 used uninitialised. The Win32 backend never sends motion events
4433 marked as hints. This for instance fixes the annoying file and
4434 font selector behaviour in the Win32 version.
4436 2000-04-14 Tor Lillqvist <tml@iki.fi>
4438 * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
4439 gtk_private_n_signals variables, they are used by some software,
4442 * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
4443 installation directory from the Registry, where the installer
4446 Fri Apr 7 17:19:27 2000 Owen Taylor <otaylor@redhat.com>
4448 * gdk/x11/Makefile.am: Fix problem with installation directory for
4451 * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
4452 <mrcooger@cyberverse.com> so that when selecting menus with the
4453 mouse, the first item will not be selected, but when selecting
4454 with an accelerator, or navigating left-right on a menubar with
4455 the menus popped up, the first item will be selected.
4457 2000-04-05 Dan Damian <dand@dnttm.ro>
4459 * configure.in: Added "ro" to ALL_LINGUAS.
4461 Wed Apr 5 00:08:36 2000 Owen Taylor <otaylor@redhat.com>
4463 * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
4466 * Makefile.am (EXTRA_DIST): Fix typo.
4468 * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
4469 to catch gdkconfig.h
4471 * gtk/gtkitemfactory.c: Added FIXME.
4473 2000-03-30 Jonathan Blandford <jrb@redhat.com>
4475 * gtk/gtkpaned.c (gtk_paned_get_position): oops.
4476 s/return_if_fail/return_val_if_fail/g and add a return value.
4478 Mon Mar 27 20:56:14 2000 Owen Taylor <otaylor@redhat.com>
4480 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up
4483 * gdk/gdkinput.h: Fix missing line from merge.
4485 Mon Mar 27 20:39:49 2000 Owen Taylor <otaylor@redhat.com>
4487 * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
4488 instead of gdkprivate.h.
4490 Sun Mar 12 15:19:24 2000 Owen Taylor <otaylor@redhat.com>
4492 * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
4493 parent class to correctly be GtkDialogClass.
4495 Thu Feb 24 23:58:21 2000 Owen Taylor <otaylor@redhat.com>
4497 * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
4498 toplevel windows and their immediate children by their parents,
4499 since the size of toplevel windows is out of our immediate
4500 control and we don't get any real benefit from trying to track
4501 this size for clipping.
4503 * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
4504 for input_only windows.
4506 * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
4507 to fix some hacks and make sure that we don't try to set the
4508 background of input only windows.
4510 Thu Feb 24 18:11:46 2000 Owen Taylor <otaylor@redhat.com>
4512 * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
4513 the _really_ internal stuff, and leave gdkprivate.h for the fake private
4514 stuff that we've traditionally exposed.
4516 * gdk/**.c: Use gdkinternals.h where appropriate.
4518 * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
4519 not include gdkprivate-x11.h, move all stuff of conceivable public
4520 interest into gdkx.h; keep all really private stuff in
4521 uninstalled header gdkprivate-x11.h.
4523 * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
4524 image->image_put on windows through a new function _gdk_window_draw_image()
4525 to allow us to do backing store for images. (Sort of ugly)
4527 * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
4528 contexts locally so that we can offset them properly when drawing
4529 onto backing pixmaps.
4531 * gdk/gdkinput.h: Reindented
4533 * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
4534 pixmap or color for the window, so we can properly initialize
4535 our double-buffer pixmaps, and also so that we temporarily set
4536 a background of None while scrolling.
4538 * gdk/gdkregion.h: Revise region boolean operators to have an
4539 interface that is actually convenient - switch from creating new
4540 regions on every op, to "methods" that modify existing regions
4541 (A = A OP B). 3 argument forms which allow dest == src, would also
4542 be possible, but the current interfaces seem to map nicely
4543 onto what needs to be done. (There is quite a lot of region
4546 * gdk/gdkregion.h: Add constructor from rectangle and a copy
4549 * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
4550 gdkpoly-generic.h: Copy region code from Xlib, switch it over
4551 to 32 bit coordinates, modify it to be mostly GTK+ style
4552 and to have interfaces that match gdkregion.h.
4554 * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
4555 double-buffered drawing. gdk_window_begin_paint_{rect,region}()
4556 create a backing pixmap and redirect all drawing to
4557 that backing pixmap until a matching gdk_window_end_paint().
4559 * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
4560 Create a special drawable class for GtkWindow's that
4561 redirects the drawing to the backing pixmap as necessary
4562 and then calls the real operations in _gdk_windowing_window_class.
4564 * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
4565 Store invalid region for each window. Generate expose events for invalid
4566 region in an idle. This replaces both the expose compression
4567 and the redrawing queuing in GTK+. It is both more efficient and
4568 simpler than either one individually and far more so then the
4571 * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
4572 Emulate 32 bit coordinates for windows with 16 bit coordinates
4573 by offsetting drawing, guffaw scrolling techniques and
4574 mapping/unmapping child windows as necessary.
4576 * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
4577 where, when invalid regions are processed, the region is stored,
4578 and if expose events come in that are detectably duplicate
4579 the processed exposes (by comparison of event serial numbers),
4580 the stored region is subtracted out of those exposes.
4582 * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
4583 regions newly exposed when scrolling or resizing windows.
4584 This, combined with forcing processesing of queued invalidated
4585 regions, gives nice flicker-free scrolling.
4587 * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
4588 invalidated regions after every scroll.
4590 * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
4591 emulation in GDK. Its, for all practical purposes just a
4592 GtkViewport/GtkFixed hybrid now.
4594 * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
4595 (16-bit) structures as necessary instead of just casting.
4597 * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
4598 in terms of the structures from gdkregion-generic.c, using appropriate
4599 offsets from GDK to X11 coordinates. Cache clip mask and
4600 origin and ts origin locally and only flush to the server
4601 when drawing, to avoid constantly setting and resetting these
4602 values when offsetting GC's for scrolling and backing pixmaps.
4604 * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
4606 * gtk/gtkcontainer.c: Call process_all_updates at end
4607 of resizing to reduce flicker. (Avoids having redraw
4608 lag arbitrarily behind resize under some circumstances)
4610 * gtk/gtkentry.c: Remove old backing store code, and simply take
4611 advantage of the new backing store capabilities of GDK.
4613 * gtk/gtkmain.c: Simple implementation of widget backing
4614 store - simply push a paint while handling each expose.
4615 (Should really be configurable widget for widget.)
4617 * gtk/gtkwidget.c: Remove all the old complicated redraw
4618 code, and simply invalidate the GDK windows from
4619 gdk_window_queue_clear(), etc. (Sigh, so much carefully
4620 debugged complexity ... gone to the winds.)
4622 Remove all the code for suppressing expose events while
4623 resizes are pending; this isn't needed since the invalid
4624 areas won't be processed until after the resizes are
4625 processed, since they are in a lower priority idle.
4627 Thu Feb 24 15:37:41 2000 Owen Taylor <otaylor@redhat.com>
4629 * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
4630 and height of dest rectangle for non-intersecting rectangles.
4632 Sun Feb 20 16:47:31 2000 Owen Taylor <otaylor@redhat.com>
4634 * gtk/gtkwidget.h: Make GtkAllocation just a typedef
4637 Sun Feb 20 11:27:00 2000 Owen Taylor <otaylor@redhat.com>
4639 * gdk/gdk{events,image,private,types,window}.h
4640 gdk/x11/gdkinputprivate.h: Change all coordinates
4641 from int16 to int. Also, Change width and height from
4642 unsigned to signed to avoid all the stupid C
4645 Sat Feb 19 12:01:53 2000 Owen Taylor <otaylor@redhat.com>
4647 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
4648 Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
4649 Add some more detailed checking.
4651 * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
4652 New function to retrieve the depth of a drawable.
4654 * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
4655 field, reorder fields to save memory.
4657 Mon Dec 13 14:06:03 1999 Owen Taylor <otaylor@redhat.com>
4659 * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
4660 of the background image instead of scaling the background down to
4663 * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
4664 which temporarily set slider to wrong size.
4666 * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
4669 Wed Nov 17 18:36:05 1999 Owen Taylor <otaylor@redhat.com>
4671 2000-03-23 Jonathan Blandford <jrb@redhat.com>
4673 * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
4675 2000-03-17 Tor Lillqvist <tml@iki.fi>
4677 * gdk/win32/gdkevents-win32.c: Remove the #ifndef
4678 USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
4680 * gdk/win32/gdkfont-win32.c
4681 * gdk/win32/gdkproperty-win32.c
4682 * gdk/win32/gdkselection-win32.c
4683 * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
4686 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
4688 * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
4690 Mon Mar 13 18:37:55 2000 Owen Taylor <otaylor@redhat.com>
4692 * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
4693 is called without trapping X errors.
4695 Fri Feb 25 10:48:53 2000 Owen Taylor <otaylor@redhat.com>
4697 * gtk/gtkrc.*: Fix problem where stray '"' characters found their
4698 way into the fontset lists.
4700 Tue Feb 22 08:52:52 2000 Tim Janik <timj@gtk.org>
4702 * gtk/gtkthemes.h: add extern "C" scope.
4704 Mon Feb 21 20:16:42 2000 Lars Hamann <lars@gtk.org>
4706 * gtk/gtkclist.c: applied patch from Guy Harris <guy@netapp.com>
4707 to make appends to the list constant. (gtk-guy-990901-0.patch)
4709 Mon Feb 14 22:50:10 2000 Tim Janik <timj@gtk.org>
4711 * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
4712 for the typename hash table.
4714 Mon Feb 14 15:01:23 2000 Owen Taylor <otaylor@redhat.com>
4716 * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
4717 to make sure we never divide by zero.
4718 (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
4720 Mon Feb 14 12:29:38 2000 Owen Taylor <otaylor@redhat.com>
4722 * gtk/gtkfontsel.c: Apply patch from
4723 SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
4724 better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
4726 Also, some cleanups in atom handling.
4728 Sun Feb 13 08:02:21 2000 Tim Janik <timj@gtk.org>
4730 * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
4733 Fri Feb 11 02:19:32 2000 Tim Janik <timj@gtk.org>
4735 * gtk/gtkhpaned.c (gtk_hpaned_size_allocate):
4736 * gtk/gtkvpaned.c (gtk_vpaned_size_allocate):
4737 * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
4738 more guint wrap-around bugs before going to bed.
4740 Thu Feb 10 16:16:35 2000 Tim Janik <timj@gtk.org>
4742 * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
4743 guint wrap arounds in allocation.width.
4745 * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
4746 process untill we fit the allocation given.
4748 Tue Feb 8 09:38:29 2000 Tim Janik <timj@gtk.org>
4751 (gtk_widget_unrealize): guard widget access with ref/unref
4752 around signal emission.
4753 (gtk_widget_hide): same here, but also check its destroyed
4754 state before queueing a resize.
4756 Tue Feb 8 03:05:55 2000 Tim Janik <timj@gtk.org>
4758 * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
4759 of gtk_default_insensitive_bg as insensitive base color.
4761 * gtk/gtktext.c (gtk_text_style_set): set the background color according
4762 to the widget's state.
4763 (gtk_text_realize): same here.
4764 (gtk_text_state_changed): same here.
4765 (draw_bg_rect): compare background color against base[] from
4766 GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
4768 Mon Feb 7 04:01:55 2000 Tim Janik <timj@gtk.org>
4770 * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
4771 grabs are active, unless a delete event is send to the toplevel
4772 of the currently grab holding widget.
4774 Sun Feb 6 10:13:15 2000 Owen Taylor <otaylor@redhat.com>
4776 * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
4777 debugging g_print's.
4779 Fri Feb 4 15:54:54 2000 Owen Taylor <otaylor@redhat.com>
4781 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
4782 ever make the scrolled-window requisition ever depend on the
4783 visibility state of the scrollbars for the AUTOMATIC policy.
4784 This breaks the GTK+ requisition model, and causes loops.
4786 Fri Feb 4 15:09:12 2000 Owen Taylor <otaylor@redhat.com>
4788 * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
4789 the default font to avoid problems with XFree86-4.0 where the
4790 default charset is iso10646-1, not iso8859-1.
4792 Thu Feb 3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
4798 * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
4800 * gtk/Makefile.am: minor cosmetic consistency tweak
4802 Thu Feb 3 14:46:01 2000 Owen Taylor <otaylor@redhat.com>
4804 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
4805 the activate_time to 0, so that we handle a quick
4806 press/release press/release properly and don't suppress
4807 the second release. (Red Hat bug #7545)
4809 Wed Feb 2 22:25:17 2000 Tim Janik <timj@gtk.org>
4811 * gtk/gtkctree.c (row_delete):
4812 (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
4813 bugs with destruction notifier, *always* update internal
4814 structures *before* calling user code.
4816 Sun Jan 30 20:10:52 2000 Lars Hamann <lars@gtk.org>
4818 A few more fixes for bug #5487, #2051, #2677.
4820 (gtk_clist_button_press): Reset clist->anchor to -1 if event->type is
4821 not GDK_BUTTON_PRESS.
4822 (resync_selection): resync only if selection_mode is
4823 GTK_SELECTION_EXTENDED
4824 * gtk/gtkctree.c (resync_selection): same here
4826 Sun Jan 30 12:29:20 2000 Owen Taylor <otaylor@redhat.com>
4828 * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
4829 gdk_drag_get_selection() and gtk_menu_detach().
4831 [ From Jeroen Ruigrok/Asmodai ]
4833 Sat Jan 29 10:11:56 2000 Owen Taylor <otaylor@redhat.com>
4835 * gtk/gtknotebook.c (gtk_notebook_size_request):
4836 page->tab_label can be NULL.
4838 2000-01-25 Havoc Pennington <hp@pobox.com>
4840 * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
4843 * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
4845 * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
4847 * gdk/gdkproperty.c (gdk_property_get): return boolean
4849 * gdk/gdkinput.c (gdk_input_set_mode): return boolean
4851 * gdk/gdkim.c (gdk_im_ready): return boolean
4853 * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
4855 * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
4856 glib clash, should fix glib)
4858 * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
4859 (gdk_get_show_events): return gboolean, and canonicalize
4862 * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
4864 (gdk_colors_alloc): gboolean whether to be contiguous
4865 (gdk_color_equal): return gboolean since we are a predicate
4866 and not a qsort() (this looks semi-wrong due to glib breakage,
4867 IMO glib should be fixed)
4869 * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
4870 (gdk_get_use_xshm): return gboolean
4871 (gdk_pointer_is_grabbed): return gboolean
4873 * gdk/gdk.h: Change prototypes to match all the above changes,
4874 and re-run egtk-format-protos as required.
4876 Fri Jan 28 12:28:17 2000 Owen Taylor <otaylor@redhat.com>
4878 * gtk/gtkctree.c (resync_selection):
4879 * gtk/gtkclist.c (resync_selection):
4881 Return immediately if clist->drag_pos < 0. This is a workaround
4882 for the corrupt state that the clist gets into when a
4883 GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
4885 Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
4887 * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
4888 variable from recent commit.
4890 Thu Jan 27 15:22:09 2000 Owen Taylor <otaylor@redhat.com>
4892 * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
4894 Thu Jan 27 18:00:55 2000 Tim Janik <timj@gtk.org>
4896 * gtk/Makefile.am: prefix all autogenerated source that get build in
4897 $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
4898 in builddir. since we subsequently cd into srcdir for autogeneration,
4899 the paths have to be stripped from the target file names, thusly we
4900 use $(@F) as target names now.
4901 put a comment about configure.in's --disable-rebuilds option,
4902 which can be used for non-writable source directories, for development
4903 setups though, srcdir has to be *writable*.
4905 hu Jan 27 00:15:03 2000 Owen Taylor <otaylor@redhat.com>
4907 * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
4908 Finish the job of allowing event to be NULL.
4909 (Fixes bug #4283, reported by Chris Blizzard)
4911 * gtk/gtkentry.c (entry_adjust_scroll): When calculating
4912 things so that the cursor appears on screen, properly
4913 take into account INNER_BORDER.
4914 (Fixes bug #4754, reported by Antonio Campos)
4916 Wed Jan 26 23:12:28 2000 Owen Taylor <otaylor@redhat.com>
4918 * gtk/gtknotebook.c (gtk_notebook_map): Don't
4919 show the tab_label unless it itself is visible.
4921 gtk/gtknotebook.c (gtk_notebook_size_request):
4922 Do a better job of making sure that the visibility
4923 of the tab label corresponds to whether it should
4926 Wed Jan 26 21:17:03 2000 Owen Taylor <otaylor@redhat.com>
4928 * gtk/gtkoptionmenu.c (gtk_option_menu_position):
4929 Use the requisition, not the allocation, since the
4930 allocation has not necessarily been computed yet.
4931 (Pointed out by Eugene Osintsev)
4933 Wed Jan 26 19:44:25 2000 Owen Taylor <otaylor@redhat.com>
4935 * gtk/gtkstyle.c (gtk_style_new): Dont' set
4936 style/base[GTK_STATE_INSENSITIVE] both to
4937 gtk_default_insensitive_bg!
4938 (Bug #2187, reported by Jonathan Blandford)
4940 * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
4941 Add Alt_L, Alt_R to list of invalid accelerators.
4942 (Bug #3736, reported by Vlad Harchev)
4944 Wed Jan 26 19:01:56 2000 Owen Taylor <otaylor@redhat.com>
4946 * gtk/gtkfilesel.c (open_ref_dir): Fix several
4947 bugs which occured after an attempt to open
4948 invalid home directory left cmpl_state->reference_dir == NULL.
4950 - completion on files in home directory didn't work
4951 - completion on an empty string caused segfault
4953 (Bug #3768, reported by Steve Ratcliffe)
4955 * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
4956 cut and paste error that was causing scales to
4957 be incorrectly positioned.
4959 patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
4961 2000-01-27 Shirasaki Yasuhiro <yasuhiro@gnome.gr.jp>
4963 * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
4964 when checking for dcgettext, if we've found we needed
4967 Wed Jan 26 18:06:07 2000 Owen Taylor <otaylor@redhat.com>
4969 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
4970 queue_clear on NO_WINDOW widgets during a reparent,
4971 since at that point the window and widget heirarchies
4972 are out of sync. This stops crashing in some cases
4973 (the scrolled window reparent test, for instance), and
4974 _probably_ won't cause drawing errors.
4976 * gtk/testgtk.c: Make the reparenting-a-scrolled-window
4977 test do what it was supposed to do and be robust against
4978 window closings, etc. (Bug #2443)
4980 Wed Jan 26 16:56:54 2000 Owen Taylor <otaylor@redhat.com>
4982 * gtk/gtkentry.c: Fix return values on mouse events.
4983 (Bug #2686, Sky <seb_sky@yahoo.com>)
4985 * gtk/genmarshal.pl: Fix up handling of FOREIGN.
4986 (pointed out by George Lebl)
4988 * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
4989 (From Ettore Perazzoli <ettore@helixcode.com>)
4991 Mon Jan 24 10:44:48 2000 Owen Taylor <otaylor@redhat.com>
4993 * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
4994 clicks between rows or outside calender area correctly.
4995 (Patch from Damon Chaplin)
4997 * gtk/gtkclist.c (gtk_clist_set_row_data_full):
4998 * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full):
4999 Call destroy function when overwriting existing data.
5000 (Pointed out by Damon Chaplin)
5002 Tue Jan 25 09:55:41 2000 Owen Taylor <otaylor@redhat.com>
5004 * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
5005 which was causing problems on various systems with Xmu.
5006 This hasn't been needed for a very long time.
5009 Sun Jan 23 22:27:36 2000 Owen Taylor <otaylor@redhat.com>
5011 * gdk/gdki18n.h: Include <ctype.h> when defining
5012 gdk_isw* in terms of is* as a fallback.
5013 (Bug #4106 - Dan Winship <danw@MIT.EDU>)
5015 Sun Jan 23 22:12:36 2000 Owen Taylor <otaylor@redhat.com>
5017 * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
5018 realize the widget when it is size allocated!
5021 * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
5022 Removed unused call to gdk_window_get_size() that
5023 showed up when the above was fixed.
5025 Sat Jan 22 15:44:30 2000 Owen Taylor <otaylor@redhat.com>
5027 * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
5028 fix up widget->window when the widget is a
5029 NO_WINDOW container widget.
5031 Sat Jan 22 12:40:48 2000 Owen Taylor <otaylor@redhat.com>
5033 * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
5034 to account for the fact that feof() does _not_
5035 return TRUE on errors, and thus avoid infinite loops
5036 when trying to use gdk_pixmap_create_from_xpm()
5037 on unreadable values.
5039 Fri Jan 21 18:32:43 2000 Owen Taylor <otaylor@redhat.com>
5041 * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
5043 Fri Jan 21 16:24:08 2000 Owen Taylor <otaylor@redhat.com>
5045 * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
5046 gdk_gc_set_dashes to take gint8 instead of gchar to
5047 make it clearer that it is _not_ a NULL terminated string.
5049 * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
5050 gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
5051 gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
5054 Thu Dec 30 04:51:05 1999 Tim Janik <timj@gtk.org>
5056 * gtk/gtkvscale.c (gtk_vscale_pos_background):
5057 * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
5058 background size relative to our allocation, guard against small
5059 allocations, we may have not yet been size allocated.
5061 Thu Dec 2 10:59:14 1999 Owen Taylor <otaylor@redhat.com>
5063 * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
5064 not just version == 3. We implement all 3 + most of 4 -
5065 (we don't support matching text/plain;charset=iso-8859-1
5066 to a dest that expects text/plain). We'll still advertise
5067 3 to be safe, but any client implementing version >= 3
5068 must interoperate with 3.
5070 Tue Mar 14 11:53:31 2000 Owen Taylor <otaylor@redhat.com>
5072 * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
5073 background and gc members, add a warning in gtk_tooltips_set_color()
5074 indicating that this function is deprecated.
5076 Thu Mar 9 22:10:56 GMT 2000 Tony Gale <gale@gtk.org>
5078 * docs/gtkfaq.sgml: FAQ Update:
5079 - Minor cleanups (Emmanuel, me)
5081 I need to add a new signal to a GTK+ widget. Any idea? (timj)
5082 How can I retrieve the text from a GtkMenuItem? (timj)
5083 How do I validate/limit/filter the input to a GtkEntry? (me)
5084 Memory does not seem to be released when I free the list
5085 nodes I've allocated (timj)
5087 2000-03-07 Tor Lillqvist <tml@iki.fi>
5089 * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
5090 (gdk_win32_gdi_failed) New function for reporting errors from GDI,
5091 for which it is no use to call GetLastError onWin9x.
5092 (gdk_other_api_failed) New function, for general error
5093 reporting without calling GetLastError.
5094 (gdk_win32_api_failed) OTOH, this function always calls
5095 GetLastError. (gdk_win32_last_error_string) Remove this function,
5096 GLib has the equivalent now.
5098 * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
5099 call them with function name, file name and line number in the
5102 * gdk/win32/*.c: Use the new macros for reporting errors from GDI
5105 * gtk/gtk.def: Add some missing entry points.
5107 * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
5108 gtk_paned_set_gutter_size, which don't exist any longer, as void.
5110 Fixes by Hans Breuer:
5112 * gdk/makefile.msc: Update for debugging.
5114 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
5115 implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
5116 PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
5119 * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
5122 * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
5124 * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
5126 2000-03-04 Tor Lillqvist <tml@iki.fi>
5128 * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
5129 just pixel value of background colour.
5131 * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
5132 containing code snippet previously duplicated in a couple of
5135 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
5138 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
5139 GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
5140 events for autorepeated Shift, Control and Alt keys. Use
5143 * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
5144 pointer is inside the window the cursor of which we are setting,
5145 call SetCursor immediately.
5147 * gdk/win32/makefile.cygwin
5148 * gtk/makefile.cygwin: If we don't have the build number stamp
5151 * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
5152 gtk_paned_set_gutter_size as empty.
5154 * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
5156 Tue Feb 29 13:10:00 GMT 2000 Tony Gale <gale@gtk.org>
5158 * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
5159 gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
5160 docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
5161 docs/gtk_tut.sgml docs/gtk.texi TODO:
5163 Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
5165 Sat Feb 26 11:46:25 GMT 2000 Tony Gale <gale@gtk.org>
5167 * gtk/gtkcalendar.c: Implement num_marked_dates,
5168 and don't emit mutiple day_selected signals on
5171 2000-02-25 Jonathan Blandford <jrb@redhat.com>
5173 * docs/make-todo (lineno): let title and logo be configurable so
5174 that GNOME can use this script too.
5176 * TODO.xml: added logourl and a title
5178 Fri Feb 25 11:12:00 2000 Owen Taylor <otaylor@redhat.com>
5180 * TODO.xml: Added some UI items, and an explanatory
5181 comment at the top of the file.
5183 Thu Feb 24 09:07:28 2000 Tim Janik <timj@gtk.org>
5185 * TODO.xml: some updates, added abunch of new entries.
5186 a note for those fiddeling with this file, when done
5188 $ ./docs/make-todo TODO.xml >/dev/null
5189 and correct output errors before comitting changes.
5191 Wed Feb 23 22:59:50 2000 Owen Taylor <otaylor@redhat.com>
5193 * TODO.xml: Added XML-structured TODO file.
5194 * docs/make-todo: python script to turn TODO.xml into
5197 2000-02-23 Jonathan Blandford <jrb@redhat.com>
5199 * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
5200 the function to let it draw the seven dots, instead of the old,
5201 much maligned, method.
5202 (draw_dot): New function to draw a dot.
5204 * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
5205 to draw the handle inside the border width as opposed to outside.
5206 Use paint function instead of gdk_draw_point.
5208 * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
5209 to draw the handle inside the border width as opposed to outside.
5210 Use paint function instead of gdk_draw_point.
5212 * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
5213 Change indenting to be more GTK like.
5215 Wed Feb 23 10:54:14 GMT 2000 Tony Gale <gale@gtk.org>
5217 * docs/gtk_tut.sgml: New section on GtkCalendar
5218 * examples/calendar: Update example code
5220 Tue Feb 22 13:54:12 GMT 2000 Tony Gale <gale@gtk.org>
5222 * docs/gtkfaq.sgml: FAQ Update
5224 2000-02-19 Anders Carlsson <andersca@gnu.org>
5226 * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
5227 to prevent the scroll event to be propagated upwards.
5229 Fri Feb 18 14:37:29 2000 Owen Taylor <otaylor@redhat.com>
5231 * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
5232 OwnerGrabButtonMask from button entries for
5233 GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
5235 * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
5236 to the event mask (which will result in button/press release
5237 being added to the event mask on Unix) so scrolling works
5238 for layouts in scroll windows.
5240 * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
5242 Patch from Anders Carlsson <andersca@gnu.org> to add
5245 * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
5246 scrolling to the "Test Scrolling" part of testgtk.
5248 * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
5250 * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
5251 it against GDK_SCROLL.
5253 * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
5254 way of mouse wheel scrolling.
5256 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
5258 * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
5260 * gtk/gtkmain.c: Removed previous mouse wheel hack.
5262 * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
5263 gdk_event_mask_table.
5265 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added
5266 GdkEventScroll handler.
5268 * gdk/gdkevents.h: Added GdkEventScroll structure.
5270 Thu Feb 17 17:10:12 2000 Owen Taylor <otaylor@redhat.com>
5272 * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
5273 and Anders Carlsson to change the Paned widgets so that they
5274 can be dragged from anywhere along the length. Also change
5275 the way that this is drawn to make this apparent.
5277 * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
5278 from George Lebl to check that option_menu->menu is present
5279 before getting history.
5281 2000-02-14 Tor Lillqvist <tml@iki.fi>
5283 * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
5284 before the assertion for non-NULL segment list.
5286 * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
5287 Seems that pattern brushes *must* be 8x8 pixels! At least on my
5288 machine, but it might be display driver dependent. Sigh, so make
5289 sure the stipple is that size. Does Windows suck or what?
5291 * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
5294 2000-02-13 Havoc Pennington <hp@pobox.com>
5296 * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
5298 (gdk_cursor_new): init refcount to 1
5300 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
5302 2000-02-13 Tor Lillqvist <tml@iki.fi>
5304 * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
5305 so that we don't have to do unnecessary settings to the HDC.
5307 * gdk/win32/gdkdrawable-win32.c
5308 * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
5311 * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
5312 the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
5313 GDI paths, call WidenPath to get the outline of the stroken path,
5314 and then fill the outline (with the brush that was built from the
5317 * gdk/win32/gdkgc-win32.c: Factor out common code from
5318 _gdk_win32_gc_new and gdk_win32_gc_set_values into
5319 gdk_win32_gc_values_to_win32values. Use correct colour for
5320 SetBkColor() (Until now the code actually used a random colour in
5321 the call to SetBkColor()... but that didn't show up as not many
5322 GDI APIs use the background colour. Pattern (opaque stippled)
5325 * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
5326 gdk_win32_api_failed): New functions for error logging.
5328 * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
5329 WIN32_API_FAILED to call them, passing function or file name and
5332 * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
5334 * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
5335 GdkColor for foreground and background in GdkGCWin32Data.
5337 * gdk/makefile.cygwin: Link in the resource object separately.
5339 * gdk/win32/rc/gdk.rc
5340 * gtk/gtk.rc (New file)
5341 * gdk/win32/makefile.cygwin
5342 * gtk/makefile.cygwin: Update build number in DLLs automatically,
5345 Sun Feb 13 08:54:45 2000 Tim Janik <timj@gtk.org>
5347 * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
5348 * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap):
5349 * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy):
5350 * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
5351 parameters given and cursor->ref_count. coding style fixups.
5353 * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
5356 * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
5357 fix up widget macros and add _GET_CLASS() variant.
5359 * gtk/*.c: some GtkType fixups.
5361 2000-02-09 Tor Lillqvist <tml@iki.fi>
5363 * gdk/win32/gdkproperty-win32.c
5364 * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
5367 2000-02-04 Tor Lillqvist <tml@iki.fi>
5369 * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
5370 g_filename_to_utf8 to convert the font names Windows gives us from
5371 whatever is the default codepage to UTF-8.
5372 (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
5373 in the other direction.
5375 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
5376 error in debugging output.
5378 2000-02-02 Tor Lillqvist <tml@iki.fi>
5380 * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
5381 and height parameters to gdk_window_clear_area(). Not minus one.
5383 Wed Feb 2 11:58:05 2000 Owen Taylor <otaylor@redhat.com>
5385 * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
5386 checks if the widget passed to gtk_drag_get_data() was not the
5389 2000-02-01 Tor Lillqvist <tml@iki.fi>
5391 * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
5392 g_filename_from_utf8 functions (which were added a moment ago to
5393 GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
5396 gtk_file_selection_get_filename returns the filename in the C
5397 runtime encoding. It calls g_filename_from_utf8, but copies the
5398 returned string to a static buffer, which is returned. I think
5399 this is better than returning the result from g_filename_from_utf8
5400 directly, which would mean all apps that use it would have to free
5401 the return value. Or should this function care about this issue at
5402 all? Maybe a new function with clearly defined semantics.
5404 * gtk/gtkfilesel.h: Add comment about
5405 gtk_file_selection_get_filename returning the filename in the C
5410 * gdk/makefile.{cygwin,msc}
5411 * gtk/gtk.def: Updates.
5413 * gdk/gdkcursor-win32.c: Initialise refcount.
5415 2000-01-31 Yuan-Chung Cheng <platin@linux.org.tw>
5417 * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
5419 2000-01-30 Havoc Pennington <hp@pobox.com>
5421 * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
5424 * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
5426 * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then
5427 implemented in platform-specific code
5429 * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
5431 * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
5434 * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
5435 put an underscore in front
5437 * gdk/gdkcursor.c: new file, implements
5438 gdk_cursor_ref/gdk_cursor_unref
5440 * gdk/gdkcursor.h: Refcount GdkCursor
5442 * gdk/gdkcompat.h (gdk_cursor_destroy): compat
5444 2000-01-29 Tor Lillqvist <tml@iki.fi>
5447 * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
5449 Tue Jan 25 11:43:21 2000 Owen Taylor <otaylor@redhat.com>
5451 * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
5452 structures to properly inherit from GtkWidget not GtkBin.
5454 Sun Jan 23 20:28:24 2000 Owen Taylor <otaylor@redhat.com>
5456 * gtk+.spec.in: Added lib/gtk+/include/* to %files
5457 (bug #5178 - Peter Wainright)
5459 * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
5460 so that it will be installed.
5461 (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
5463 Fri Jan 21 16:29:28 2000 Owen Taylor <otaylor@redhat.com>
5465 * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
5466 for the GtkStyleClass vtable const.
5468 * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
5469 take a const string argument like GtkTranslateFunc. This will
5470 require changes in use code.
5472 2000-01-19 Tor Lillqvist <tml@iki.fi>
5474 * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
5475 semantics (to mimic the X11 backend, which just calls XClearArea)
5476 is to check for zero width (and height), and in that case use the
5477 window's width minus x (height minus y). This fixes for instance
5478 some redraw problems with gtkclist, which were easily noticeable
5479 in the gtk file selection widget.
5481 (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
5484 2000-01-13 Tor Lillqvist <tml@iki.fi>
5488 * gdk/x11/Makefile.am
5489 * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
5491 * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
5494 2000-01-09 Tor Lillqvist <tml@iki.fi>
5496 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
5497 WM_MOVE for iconified or invisible windows. This fixes various
5498 problems when minimising windows. Thanks to Bernd Herd.
5500 2000-01-05 Tor Lillqvist <tml@iki.fi>
5502 * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
5503 backend's draw_lines method, not draw_points.
5505 2000-01-02 Tor Lillqvist <tml@iki.fi>
5507 * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
5508 before Owen's reorganisation: Don't have queued_events and
5509 queued_tail statics in this file, but use gdk_queued_events and
5510 gdk_queued_tail. This makes exposure event compression work again.
5512 (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
5515 1999-12-30 Tor Lillqvist <tml@iki.fi>
5517 * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
5518 gdkkeysyms.h to get the GDK_* keysym constants that are needed by
5519 gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
5520 doesn't do anything.
5522 * gdk/gdk.def: Add gdk_xid_table_insert.
5524 * gdk/win32/gdkprivate-win32.h
5525 * gdk/win32/gdkevents-win32.c
5526 * gdk/win32/gdkinput-win32.c
5528 * gdk/win32/gdkwindow-win32.c: Remove the superfluous
5529 extension_events field in the GdkWindowWin32Data struct. Use only
5530 the extension_events field in GdkWindowPrivate. Previously one was
5531 set, and the other one tested, which broke tablet
5532 functionality. Thanks to Keishi Suenaga for pointing this out.
5534 1999-12-18 Tor Lillqvist <tml@iki.fi>
5536 * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
5537 When handling a single character (text length == 1), don't handle
5538 it as if it was UTF-8.
5540 1999-12-11 Tor Lillqvist <tml@iki.fi>
5542 * Makefile.am: Distribute README.win32.
5545 * gdk/win32/Makefile.am: Distribute Win32 files.
5547 * gdk/makefile.msc: New file.
5549 * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
5552 * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
5553 gdk_error_code as GDKVAR, as they are referred outside GDK.
5555 * gdk/win32/makefile.msc: Update.
5557 * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
5558 tweaks. Check only if at least one of those Unicode subrange bits
5559 we care for is set. If no code page bits are set, guess (wildly)
5560 based on the charset.
5562 * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
5564 * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
5570 * gtk/gtkselection.c
5572 * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
5573 appropriate. There must be a cleaner way to handle this?
5575 * gtk/gtkrc.c: Must include windows.h on Win32.
5577 * gtk/testgtk.c: No need to include gdkx.h.
5579 * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
5581 1999-12-07 Tor Lillqvist <tml@iki.fi>
5583 * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
5584 the rbearing is set to the same as the width, but this should be
5587 1999-12-06 Tor Lillqvist <tml@iki.fi>
5589 * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
5590 function. If Windows doesn't tell us what Unicode subranges a font
5591 covers, guesstimate based on the codepages it covers. This will
5592 hopefully help those Windows versions or fonts that don't give us
5593 any useful Unicode subrange information with GetTextCharsetInfo.
5594 Call this function in gdk_font_load_internal.
5596 * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
5599 Fri Dec 3 14:09:50 1999 Owen Taylor <otaylor@redhat.com>
5601 * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
5602 New function, long needed.
5604 Wed Dec 1 22:35:43 1999 Owen Taylor <otaylor@redhat.com>
5606 * gdk/gdkproperty.h x11/gdkproperty.c: Change
5607 only_if_exists argument of gdk_atom_intern to
5610 1999-11-25 Tor Lillqvist <tml@iki.fi>
5612 * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin):
5613 Fix two copy&paste errors.
5615 * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
5618 * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
5619 GdkWin32SingleFont struct.
5621 * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
5622 subranges of loaded fonts. Clear font signature first, in case
5623 GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
5624 ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
5626 * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
5627 Unoffset clip region.
5629 1999-11-23 Tor Lillqvist <tml@iki.fi>
5631 * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
5632 event->any.window before calling filter functions.
5634 Fri Nov 19 10:34:41 1999 Owen Taylor <otaylor@redhat.com>
5636 * gtk/gtkgamma.h: Adapt cast macros to standard.
5640 Tue Nov 16 10:15:54 1999 Owen Taylor <otaylor@redhat.com>
5642 * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
5643 If translation does not include a '/', use entire
5644 translation instead of crashing.
5646 Sun Oct 31 22:21:11 1999 Tim Janik <timj@gtk.org>
5648 * docs/gtk_tut.sgml:
5649 s/gtk_accel_group_attach/gtk_window_add_accel_group/.
5651 Sat Oct 30 09:09:09 1999 Owen Taylor <otaylor@redhat.com>
5653 * gtk/gtkselection.c (gtk_target_list_remove): Use
5654 g_list_remove_link, not g_list_remove.
5656 [ From Geert Bevin <gbevin@thunderstorms.org> ]
5658 Sun Oct 24 07:41:40 1999 Tim Janik <timj@gtk.org>
5660 * gtk/gtkclist.c (real_undo_selection): commented out g_print()
5661 statement upon unselection (how the heck did that slip in?).
5663 Sat Oct 23 03:03:08 1999 Tim Janik <timj@gtk.org>
5665 * gtk/gtktext.c (gtk_text_freeze):
5666 (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
5667 in frozen state (and aparently crashes). patch provided by Anders
5668 Melchiorsen <and@kampsax.dtu.dk>.
5670 Sat Oct 23 02:53:20 1999 Tim Janik <timj@gtk.org>
5672 * fix insensitive default/focus widget activation,
5673 reported by Matt Goodall <mgg@isotek.co.uk>.
5675 * gtk/gtkwindow.c (gtk_window_key_press_event):
5676 (gtk_window_activate_default):
5677 (gtk_window_activate_focus):
5678 return handled=FALSE for actiavtion of insensitive default
5679 widgets. return handled=TRUE for activation of insensitive
5680 focus widgets. don't activate in either case.
5682 Tue Oct 19 09:55:08 1999 Owen Taylor <otaylor@redhat.com>
5684 * gtk-config.in (lib_gtk): Switch order of @x_cflags@
5685 and $glib_cflags to match library order and in the
5686 theory that an old version of GLib is more likely to
5687 be in the include directory for X then vice-versa.
5690 Tue Oct 19 09:46:49 1999 Owen Taylor <otaylor@redhat.com>
5692 * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE
5693 to determine the locale for fontsets, not LC_MESSAGES;
5694 the user may want English messages with a handling
5695 for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
5696 will still be broken) (Bug #2891)
5698 Tue Oct 19 20:36:42 1999 Changwoo Ryu <cwryu@adam.kaist.ac.kr>
5700 * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
5702 Tue Oct 19 12:15:13 1999 Changwoo Ryu <cwryu@adam.kaist.ac.kr>
5704 * gtk/gtkrc.ko: Changed the Korean default fontset.
5706 Fri Oct 8 02:32:47 1999 Owen Taylor <otaylor@redhat.com>
5708 * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
5709 where when scrolling to the left or top double exposes
5710 were done, causing major slowdowns.
5712 Thu Oct 7 18:31:55 1999 Owen Taylor <otaylor@redhat.com>
5714 * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
5715 names to lowercase and alphanumeric, before looking
5718 * gtk/Makefile.am: Install codeset variant gtkrc files
5719 with normalized names.
5721 Thu Oct 7 22:52:42 1999 Tim Janik <timj@gtk.org>
5723 * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
5724 popup menus when the menu is already visible, but its parent
5725 is still hidden, (happens after tornoff window got hidden).
5727 Thu Oct 7 11:09:55 1999 Owen Taylor <otaylor@redhat.com>
5729 * gtk/Makefile.am (install-data-local): Fix
5730 a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
5731 deleted, causing error messages on install.
5733 Thu Oct 7 11:03:06 1999 Owen Taylor <otaylor@redhat.com>
5735 * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
5736 the handle as well, since we now sometimes ignore
5737 exposes on the handle while resizing.
5739 Wed Oct 6 18:02:31 1999 Owen Taylor <otaylor@redhat.com>
5741 * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
5742 extra g_free introduced in one of the last one or two
5745 Wed Oct 6 16:38:36 1999 Owen Taylor <otaylor@redhat.com>
5747 * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
5748 consistent, put each style that a gtkrc.* file creates
5749 in a unique namespace, remove old files before installing.
5751 Wed Oct 6 14:31:16 1999 Owen Taylor <otaylor@redhat.com>
5753 * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
5754 gtk_rc_init is called multiple times. (Yes, people who
5755 do that have bugs in their code.)
5757 Tue Oct 5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
5759 * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
5760 Remove it since it's generated by the Makefile anyway
5762 Tue Oct 5 02:43:41 1999 Owen Taylor <otaylor@redhat.com>
5764 * gdk/gdkinputcommon.h (gdk_input_device_new): Free
5765 device->info.axes for core pointer.
5767 Thu Sep 30 13:55:25 1999 Owen Taylor <otaylor@redhat.com>
5769 * gtk/testgtk.c (destroy_idle_test): Rename idle to
5770 idle_id, to deal with obsolete, broken C libraries.
5772 Mon Sep 27 02:50:15 1999 Owen Taylor <otaylor@redhat.com>
5774 * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
5775 allocation->x/y twice!
5777 * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
5778 consistent with gtk_vscale_pos_trough().
5780 Sun Sep 26 19:44:34 1999 Owen Taylor <otaylor@redhat.com>
5782 * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
5783 be queueing a resize on a toplevel container between
5784 the time we show it and when we map it. So, we need
5785 to test GTK_WIDGET_VISIBLE() for toplevels, and only
5786 use GTK_WIDGET_DRAWABLE() for child windows.
5788 Thu Sep 23 16:41:03 1999 Owen Taylor <otaylor@redhat.com>
5790 * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS
5793 Fri Sep 24 00:51:45 1999 Tim Janik <timj@gtk.org>
5795 * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
5796 container DRAWABLE (instead of VISIBLE), so we don't queue
5797 resizes on non-toplevel containers.
5799 Sun Sep 19 18:13:31 1999 Owen Taylor <otaylor@redhat.com>
5801 * gtk/gtkselection.[ch]: Make the data argument
5804 Sat Sep 18 21:27:40 1999 Owen Taylor <otaylor@redhat.com>
5806 * gtk/gtkwindow.c: Try to behave sensibly if
5807 the focus widget is the window itself. (Should
5808 we allow this at all?)
5810 Fri Sep 17 09:57:15 1999 Tim Janik <timj@gtk.org>
5812 * gtk/gtkwidget.c (gtk_widget_set_sensitive):
5813 * gtk/gtknotebook.c (gtk_notebook_set_scrollable):
5814 * gtk/gtknotebook.c (gtk_notebook_set_show_border):
5815 * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
5816 in prototypes and implementations consistent (Tomas Ogren).
5818 * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
5819 before the widget is unparented (reported by damon).
5821 * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
5822 since we provide unsigned data anyways.
5824 Thu Sep 16 21:32:01 1999 Owen Taylor <otaylor@redhat.com>
5826 * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
5827 the call to gtk_tooltips_layout_text() until later.
5829 * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
5830 Call gtk_widget_ensure_style() before using the style.
5832 Wed Sep 15 02:52:19 1999 Owen Taylor <otaylor@redhat.com>
5834 * gtk/gtkwidget.c (gtk_widget_event): Added workaround
5835 for old widgets that don't propagate draws to all
5836 children. (Namely gnome-dock for gnome-libs <= 1.0.16)
5838 Tue Sep 14 19:22:19 1999 Tim Janik <timj@gtk.org>
5840 * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
5841 for a redraw but just the widget that requested the resize.
5843 Tue Sep 14 18:29:47 1999 Tim Janik <timj@gtk.org>
5845 * gtk/gtkcontainer.c: added new widget level method
5846 gtk_container_set_reallocate_redraws() and a GtkContainer flag
5847 reallocate_redraws : 1 to reflect the setting, exported this through
5848 the argument system as a boolean ::reallocate_redraws.
5850 * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
5851 on the widget because the allocation changes, do so as well for
5852 widget->parent if the parent has reallocate_redraws set to TRUE.
5853 with that containers requesting reallocation redraws get automatically
5854 redrawn if their children changed allocation (this unfortunately
5855 affects also other children that didn't change allocation, but we
5856 cannot work around that before 1.3).
5858 Tue Sep 14 18:23:01 1999 Tim Janik <timj@gtk.org>
5860 * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
5861 _and_ height are >0 (not _or_).
5863 * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
5864 instead of gtk_container_queue_resize(), which is a core gtk internal
5865 function (must have been on crack when i queued that).
5867 * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
5868 we can check more reliably if we want to discard expose events.
5869 * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
5872 * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
5873 we simply trust these events. for deciding whether to discard exposes,
5874 check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
5876 Mon Sep 13 15:01:21 1999 Owen Taylor <otaylor@redhat.com>
5878 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
5879 queues of areas that are completely off screen.
5881 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
5882 logic for handleboxes.
5884 * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
5885 check on width/height.
5887 Mon Sep 13 02:22:47 1999 Tim Janik <timj@gtk.org>
5889 * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
5890 we are fine with using $@ the way we do (if we actually encounter
5891 brokeness with $@ in VPATH builds because of additional path prefixes,
5892 we need to use $(@F) actually).
5894 Mon Sep 13 01:34:53 1999 Tim Janik <timj@gtk.org>
5896 * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
5897 short lived bugs, that would allow language bindings to do surgeries
5900 Fri Sep 10 15:22:50 1999 Owen Taylor <otaylor@redhat.com>
5902 * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
5903 where comparison was being done against an uninitialized
5904 value causing intermittant results depending on
5905 compiler flags. Also make it clearer that we aren't
5906 ever initializing the child as 0x0 (though this will
5907 be caught in gtk_widget_size_allocate())
5909 Fri Sep 10 10:06:56 1999 Owen Taylor <otaylor@redhat.com>
5911 * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
5912 gtk_window_unset_transient_for() call after we do checks
5913 involving the old transient parent.
5914 [ From Lance Capser <lmc@cyberhighway.net> ]
5916 1999-09-07 Raja R Harinath <harinath@cs.umn.edu>
5918 * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
5921 Mon Sep 6 00:11:56 1999 Lars Hamann <lars@gtk.org>
5923 * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
5924 no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
5926 1999-09-03 Raja R Harinath <harinath@cs.umn.edu>
5928 * gtk/Makefile.am (gen_sources): Improve VPATH builds.
5929 `$@' is valid only in the build dir, not after we've done
5930 `cd $srcdir'. Also use `test -f' instead of less portable
5933 Fri Sep 3 15:59:56 1999 Owen Taylor <otaylor@redhat.com>
5935 * gtk/gtktext.c (correct_cache_insert): Rewrite
5936 for simplicity, and hopefully correctness.
5937 (Fixes bug #1322, which was a segfault when
5938 on some insertions with the properties around
5939 the insertion set up just wrong.)
5941 * gtk/gtktext.c (gtk_text_adjustment): When we receive
5942 a "changed" signal, clamp the new value to the adjustment
5943 bounds to avoid segfaulting if someone tries to change
5944 the adjustment to a bogus value. (Bug #1795)
5946 Thu Sep 2 16:33:59 1999 Owen Taylor <otaylor@redhat.com>
5948 * gtk/gtkmain.c: Ignore unexpected destroy notifies
5949 for children, for toplevel windows handle them
5952 * gtk/gtkplug.c: Add an unrealize handler so that
5953 we unref plug->socket_window when we are done
5956 Fri Sep 3 14:52:54 1999 Owen Taylor <otaylor@redhat.com>
5958 * gtk/gtktext.c (clear_area): Fix stupid signedness
5959 problem that was causing background to sometimes
5962 Fri Sep 3 12:26:33 1999 Owen Taylor <otaylor@redhat.com>
5964 [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
5966 * gtk/gtkmenu.c (gtk_menu_position): Make
5967 sure we never position menus with negative x, y,
5968 since gtk_widget_set_uposition() can't handle that.
5970 * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
5971 Modify the positioning code a bit so that we always
5972 put the top-left corner onscreen. (This is for
5973 UI reasons, gtk_menu_position() now takes care of
5974 gtk_widet_set_uposition() brokeness.)
5976 Fri Sep 3 03:06:30 1999 Tim Janik <timj@gtk.org>
5978 * gtk/Makefile.am: fixed up things for -jx, x > 1.
5980 Sun Sep 5 08:48:51 1999 Owen Taylor <otaylor@redhat.com>
5982 * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
5983 RC style that is passed in. The lack of the ref
5984 before was a bug. If people worked around this
5985 bug, this will introduce a slight memory leak
5986 in their code. The code should typically look like:
5988 rc_style = gtk_rc_style_new ();
5990 gtk_widget_modify_style (widget, rc_style);
5991 gtk_rc_style_unref (rc_style);
5993 * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
5994 the style if it was already set.
5996 * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
5997 style if it was set before.
5999 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
6001 * gtk/testgtk.c (main): Add a check to see if we
6002 are being run from the correct directory and
6003 to quit nicely if we are not.
6005 * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
6008 Thu Sep 2 23:00:03 1999 Tim Janik <timj@gtk.org>
6010 * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
6013 queue resizes unconditionally (gtk_widget_queue_resize will figure
6014 what to do if the window is not realized).
6015 (gtk_window_move_resize): only recenter the window
6016 for GTK_WIN_POS_CENTER_ALWAYS.
6017 (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
6018 the same way as GTK_WIN_POS_CENTER.
6020 Thu Sep 2 22:39:27 1999 Tim Janik <timj@gtk.org>
6022 * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
6023 with (!(info->last_flags & GDK_HINT_POS)) instead of
6024 (!info->last_flags & GDK_HINT_POS).
6026 * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
6027 new_height unconditionally, because we use these values even if
6028 !default_size_changed && !hints_changed.
6029 comented the (default_size_changed || hints_changed) case with
6030 respect to resize rejects from the window manager.
6032 * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
6033 in the zvt condition hack, since this includes the window hints, set
6034 the hints after the handling_resize case.
6036 * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
6037 window is initially shown with to the geometry.
6039 Thu Sep 2 07:38:56 1999 Tim Janik <timj@gtk.org>
6041 * gtk/gtkwindow.c (gtk_window_move_resize):
6042 s/size_changed/default_size_changed/g so i know what's
6043 really going on (frying brain on smaller flame now).
6045 Thu Sep 2 05:47:47 1999 Tim Janik <timj@gtk.org>
6047 * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
6048 we have size_changed upon handling_resize. this is a gross
6049 workaround for the broken zvt widget and should be removed in
6050 1.3 again (search for FIXME).
6051 Owen provided an accurate comment for this:
6053 /* We could be here for two reasons
6054 * 1) We coincidentally got a resize while handling
6056 * 2) Our computation of size_changed was completely
6057 * screwed up, probably because one of our children
6058 * is broken. It's probably a zvt widget.
6060 * For 1), we could just go ahead and ask for the
6061 * new size right now, but doing that for 2)
6062 * might well be fighting the user (and can even
6063 * trigger a loop). Since we really don't want to
6064 * do that, we requeue a resize in hopes that
6065 * by the time it gets handled, the child has seen
6066 * the light and is willing to go along with the
6067 * new size. (this happens for the zvt widget, since
6068 * the size_allocate() above will have stored the
6069 * requisition corresponding to the new size in the
6072 * This doesn't buy us anything for 1), but it shouldn't
6073 * hurt us too badly, since it is what would have
6074 * happened if we had gotten the configure event before
6075 * the new size had been set.
6078 Wed Sep 1 20:46:11 1999 Owen Taylor <otaylor@redhat.com>
6080 * gtk/gtkrc.c: deal properly with the fact that RC
6081 style lists may include rc styles more than once.
6083 * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
6084 unused static function.
6086 * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
6087 stack of directories of RC files currently being
6088 parsed and implicitely add them to pixmap path.
6090 This fixes a bug where the directory would get
6091 appended then overwritten by pixmap_path declarations.
6093 (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
6095 * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
6096 theme's exit function. (Patch from Peter Wainwright,
6099 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
6100 Add a destroy() handler to take care of removing
6101 group for menu item. (Fixes bug #1197)
6103 * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
6106 Wed Sep 1 21:27:42 1999 Tim Janik <timj@gtk.org>
6108 * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
6109 roundtrip to figure window's width and height, since we know that
6110 anyways from widget->allocation.
6112 Wed Sep 1 12:37:44 1999 Owen Taylor <otaylor@redhat.com>
6114 * gtk/gtkwindow.c (gtk_window_move_resize): Compute
6115 the hints after we request the new size.
6117 Wed Sep 1 10:38:37 1999 Owen Taylor <otaylor@redhat.com>
6119 * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
6120 GTK_WIDGET_REALIZED() assertion - we can compute the
6121 hints before we are realized.
6123 * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
6124 hint changing so that we have a value of hints_changed
6125 when we decide whether to constrain the window size.
6127 * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
6129 * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
6130 change back to G_MAXINT.
6132 Wed Sep 1 06:54:59 1999 Tim Janik <timj@gtk.org>
6134 * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
6135 new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
6136 contain uncluttered values.
6137 (gtk_window_compute_hints): simply assert that window is realized
6138 and that geometry_info is valid, since we rely on this anyways.
6139 (gtk_window_constrain_size): major cleanups to the code.
6140 if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
6141 for the base size, instead of the minimums. use 32767 as max width
6142 and height (like in gtkwindow.c) instead of G_MAXINT.
6144 Wed Sep 1 04:41:25 1999 Tim Janik <timj@gtk.org>
6146 * cleaned up the GtkContainer.need_resize flag handling mess, we
6147 only need to force resize requests when we were prematurely
6148 realized, or our widget tree was modified when we were temporarily
6149 hidden. handling these cases directly upon showing the window (i.e.
6150 while the GdkWindow is still unmapped) avoids the need to wait for
6151 a configure event response and therefore makes the GUI more snappier
6152 and avoids blank windows during the roundtrip.
6156 (gtk_widget_show): don't queue resizes on toplevels, they know how
6157 to deal with matters.
6159 * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
6160 flag directly for not visible resize containers and spare us unecessary
6164 (gtk_window_realize): if we need to enforce premature size allocation,
6165 queue a container resize so we are correctly resized later on.
6167 (gtk_window_size_request):
6168 don't freak around with the ->need_resize flag,
6169 gtk_container_queue_resize() will care about that.
6171 handle initial resizing issues here, we can handle matters better in
6172 this place, especially since we know that our GdkWindow is still
6174 (gtk_window_move_resize):
6175 don't care about ->need_resize at all.
6176 handle size changes properly that occoured while we waited for a
6179 Tue Aug 31 15:58:46 1999 Owen Taylor <otaylor@redhat.com>
6181 * gtk/gtkwidget.c (gtk_widget_set_uposition):
6182 * gtk/gtkwindow.[hc] (gtk_window_reposition):
6183 Move the hint setting code from gtk_widget_set_uposition
6184 to here; set the hints so that we respect any previously
6187 * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
6188 change the window hints here or move the window here,
6189 let that happen in gtk_window_move_resize().
6191 Tue Aug 31 06:58:52 1999 Tim Janik <timj@gtk.org>
6193 * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
6194 to already queued resizes (and therefore redraws) on a widget, check
6195 its anchestry as well.
6197 * gtk/gtkcontainer.c:
6198 (gtk_container_queue_resize): clear resize widgets for resize
6199 containers before aborting prematurely. this is especially important
6200 for toplevels which may need imemdiate processing or their resize
6201 handler to be queued.
6202 (gtk_container_dequeue_resize_handler): added new internal function for
6205 * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
6206 configure event, take possible changes in window position into account
6208 if we request a new window size, queue up a resize handler that will
6209 last until the configure event response arrives.
6210 combined the ->need_resize case (initial show) with the general size
6211 (hints) changed case and added even more comments.
6212 if !auto_shrink, only revert to the old allocation if the new size
6213 is smaller than the current allocation.
6215 Tue Aug 31 11:55:20 1999 Owen Taylor <otaylor@redhat.com>
6217 * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
6218 gtk_window_set_geometry_hints
6219 gtk_window_set_default_size):
6220 When hints are set, queue a resize so that the hints will
6221 be eventually reset on the toplevel.
6223 * gtk/gtkwindow.c (gtk_window_show): Use
6224 gtk_window_compute_default_size(). Clear the need_resize flag
6225 on the initail map so that we don't unnecessarily trigger the
6228 * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
6229 into separate functions. Compare the hints we are setting
6230 with what we set last time so that we can accurately
6231 tell when we need to reset the hints.
6233 * gtk/gtkwindow.c (gtk_window_compute_default_size): New
6234 function to figure out the size from requisition
6237 * gtk/gtkwindow.c (gtk_window_constrain_size): Function
6238 from fvwm to constrain a size to the geometry hints.
6240 * gtk/gtkwindow.c (gtk_window_compare_hints): New function
6241 to compare two sets of geometry hints.
6243 * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
6244 from gtk_window_set_hints(), just compute the hints,
6247 * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
6248 code from gtk_window_move_resize() to separate function,
6251 Tue Aug 31 13:05:03 1999 Owen Taylor <otaylor@redhat.com>
6253 * gtkrc.h: Move the ref_count member out of the GtkRcStyle
6254 structure into a new private structure.
6256 * gtkrc.c: Split GtkRcStyle into public/private.
6257 In the private part, add a list of pointers to the
6258 RcStyle lists this RcStyle participates in.
6260 * gtkrc.c: When a RcStyle is free, remove all
6261 lists referencing it from the
6262 realized_style_ht hash, and free those lists.
6264 * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
6265 gtk_rc_init(), since that adds the default styles
6266 to the list of parsed RC files again.
6268 * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
6270 Thu Aug 26 14:14:42 1999 Tim Janik <timj@gtk.org>
6272 * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
6273 checks that ensure that a widget's allocation is at least 1 in width
6274 and height. (GNOME note: this doesn't affect old panel code anymore,
6275 because GtkSocket will request width and height of at least 1 since
6278 * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
6279 allocated yet (happens if the user realizes the window prematurely),
6280 size request and allocate it.
6281 (gtk_window_size_allocate): guard against guint underflows.
6283 Wed Aug 25 19:01:36 1999 Lars Hamann <lars@gtk.org>
6285 * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
6286 in gtk_built_sources, so gtk.defs gets built prior to all other
6289 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
6292 invoke indent on gtkmarshal.*.
6293 rewrote source generation rules, use COPYING as oldest source tag for
6294 a piggyback rule to generate all sources from (don't touch it ;).
6295 major cleanups, strip spaces on build rules for GNU Make.
6297 * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
6298 source and target files from commandline arguments. don't invoke indent.
6300 Sat Aug 21 14:07:36 1999 Lars Hamann <lars@gtk.org>
6302 * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
6303 notebook after switch to avoid drawing problems.
6304 (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
6306 (gtk_notebook_pages_allocate): don't map not visible tab_labels,
6308 (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
6310 Sat Aug 21 14:07:36 1999 Lars Hamann <lars@gtk.org>
6312 * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
6313 notebook after switch to avoid drawing problems.
6314 (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
6316 (gtk_notebook_pages_allocate): don't map not visible tab_labels,
6318 (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
6320 Wed Aug 18 09:20:10 1999 Tim Janik <timj@gtk.org>
6323 we use window->need_resize from configure_event now, to indicate that
6324 the gtkwindow should keep its allocation (e.g. because the user resized
6325 the window through window manager handles). resize_count is now reliably
6326 used to figure whether we got the allocation we requested from the
6328 configure events get queued as resizes now, the real stuff (size
6329 computation and allocation) now only goes on in gtk_window_move_resize().
6330 GtkWindow's requisition now contains its *real* requisition (like all
6331 other widgets), *not* taking usize into account.
6332 geometry_info->last_{width|height} is now updated from set_hints() only
6333 so it always contains the last hints we set for the window manager.
6334 made some event handlers return TRUE instead of FALSE.
6335 the overall code should be much more straight forward now, and the
6336 significant code portions are accompanied by comments now.
6337 (gtk_window_set_hints):
6338 removed requisition argument and made it
6339 fetch the requisition through gtk_widget_get_child_requisition.
6340 we also don't move the gdkwindow here anymore, gtk_window_move_resize()
6343 ensure that the widget is realized before calling
6344 gtk_container_check_resize() (and thus gtk_window_move_resize()), also
6345 ensure that we got properly size requested and allocated before
6347 (gtk_window_configure_event):
6348 ignore plain window moves, or reallocate the widget tree through the
6349 resize queue otherwise.
6350 (gtk_window_move_resize):
6351 mostly rewrote this function to figure window manager hints more
6352 reliably, coalesce window moves and resizes to reduce configure events
6353 and do actuall size allocations.
6355 Tue Aug 17 07:43:04 1999 Tim Janik <timj@gtk.org>
6357 * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
6358 that have a resize pending, because a redraw is already queued for them.
6360 * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
6361 hack to clear resize_widgets.
6363 * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
6364 for resize containers prior to size allocation. (this is also a bit
6365 ugly, but avoids side effects for stopped emissions and is thus more
6367 (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
6369 * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
6370 function from gtk_tooltips_expose, as we connect to ::expose_event
6373 1999-08-18 Federico Mena Quintero <federico@redhat.com>
6375 * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
6377 (gtk_target_list_unref): Likewise.
6379 * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
6381 Tue Aug 17 15:47:07 1999 Owen Taylor <otaylor@redhat.com>
6383 * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
6384 guard against division by zero. (Fixes bug #1339)
6386 Tue Aug 17 10:56:49 1999 Owen Taylor <otaylor@redhat.com>
6388 * gtk/gtkentry.c (gtk_move_{forward,backward}_word):
6389 Prevent the trivial leak of information of allowing
6390 word motion when the entry is not visible.
6392 Tue Aug 17 10:28:52 1999 Owen Taylor <otaylor@redhat.com>
6394 * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
6395 modality to error dialog as well as confirmation dialogs.
6396 (Bug #1803, reported by Rosanna Wing Sze Yuen)
6398 Wed Aug 11 01:04:57 1999 Owen Taylor <otaylor@redhat.com>
6400 * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
6402 (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
6404 * gtk/Makefile.am (install-data-local): Solaris apparently
6405 has various troubles with ln -f; use rm first instead.
6406 (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
6408 1999-07-30 Raja R Harinath <harinath@cs.umn.edu>
6410 * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
6411 use `cp' followed by `rm' (the `rm' was already there).
6413 July 30, 1999 Elliot Lee <sopwith@redhat.com>
6415 * configure.in: Fix autoconf warnings about cross compilation by
6416 trying to provide sane defaults for AC_TRY_RUN.
6417 * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
6418 put them into $(srcdir) when generated. Also add a dependency of
6419 gtksignal.h on gtkmarshal.h for -j builds.
6420 * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
6422 Wed Jul 28 09:29:19 1999 Owen Taylor <otaylor@redhat.com>
6424 * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
6425 GDK_THREADS_{LEAVE,ENTER} pair.
6426 (From Paul Fisher <pnfisher@redhat.com>)
6428 Fri Jul 23 01:00:15 1999 Tim Janik <timj@gtk.org>
6430 * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
6431 width and height are always >0 (owen).
6433 Fri Jul 23 00:00:47 1999 Tim Janik <timj@gtk.org>
6435 * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
6436 change that assured that a widget's allocated with and height are
6437 always >1, since this breaks *buggy* panel code. unfortunately this
6438 back-breaks the gimp's color selector.
6440 * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
6441 allocation is always >0 in width and height, before sending the
6442 configure event; this is a *gross* hack to get the gimp back to work.
6444 * marked both cases with TODO-1.3
6446 Wed Jul 21 15:47:39 1999 Owen Taylor <otaylor@redhat.com>
6448 * gtk/gtktext.c: Don't display wrap indicators when
6449 text is not editable and word wrap is on.
6451 Wed Jul 21 08:21:40 1999 Tim Janik <timj@gtk.org>
6453 * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
6454 option menus here as they are not derived from menu shell, assure that
6455 the option menu has a menu we can add items to.
6457 Tue Jul 20 23:29:48 1999 Tim Janik <timj@gtk.org>
6459 * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
6460 width/height to (gint) before calculations and check against < 0 to
6461 avoid guint wraparounds.
6463 Sun Jul 18 00:35:49 1999 Tim Janik <timj@gtk.org>
6465 * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
6466 width and height is never zero. sanity check both dimensions against
6467 32767 and issue a warning if the allocation is greater than that.
6469 Wed Jul 7 15:03:30 1999 Owen Taylor <otaylor@redhat.com>
6471 * gtk/gtkmain.c (gtk_events_pending): Unlock around call
6472 to g_main_pending() as well.
6474 Wed Jul 7 14:59:01 1999 Owen Taylor <otaylor@redhat.com>
6476 * gtk/gtkmain.c (gtk_main_iteration): Unlock around
6477 call to g_main_iteration() - since that will regrab
6478 GTK+ lock to process events.
6480 Thu Jul 1 15:01:55 1999 Owen Taylor <otaylor@redhat.com>
6483 - Regularize with the rest of GTK+ by making widget->requisition
6484 not reflect the set_usize()
6485 - Always recompute geometry hints, then check if they
6486 changed before sending them to the X server. The
6487 previous checks for changes would fail in a number
6490 Thu Jul 1 11:55:59 1999 Owen Taylor <otaylor@redhat.com>
6492 * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
6494 Wed Jun 30 19:26:36 1999 Owen Taylor <otaylor@redhat.com>
6498 - Instantaneously update on modifier key presses
6499 - Allow cancellation of the drag with Escape.
6501 Tue Jun 29 17:04:09 1999 Owen Taylor <otaylor@redhat.com>
6503 * gtk/testgtk.c (create_handle_box): Set the policy
6504 to auto_shrink - otherwise the appearance is rather
6505 strange when flipping between horizontal and vertical.
6507 Mon Jun 28 09:29:52 1999 Tim Janik <timj@gtk.org>
6509 * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
6510 (gtk_window_set_default_size): don't change a value if it's < 0.
6513 Sun Jun 27 11:00:33 1999 Tim Janik <timj@gtk.org>
6515 * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
6517 Mon Jun 28 12:08:25 1999 Owen Taylor <otaylor@redhat.com>
6519 * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
6520 add an extra "/" when concating "/" + filename.
6521 (From Matt Grossman <mattg@oz.net>)
6523 Mon Jun 28 10:57:12 1999 Owen Taylor <otaylor@redhat.com>
6525 * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
6526 for fg_gc if we set it for drawing pixmap.
6528 Tue Jun 15 12:45:12 1999 Owen Taylor <otaylor@redhat.com>
6530 Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
6532 * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
6533 already set, call old engine's destroy function and
6534 unref the old engine.
6536 Thu Jun 10 17:59:38 1999 Tim Janik <timj@gtk.org>
6538 * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
6540 Wed Jun 9 15:13:16 1999 Tim Janik <timj@gtk.org>
6542 * gtk/gtkaccelgroup.h: mark certain functions as internal.
6544 Wed Jun 9 13:48:28 1999 Tim Janik <timj@gtk.org>
6546 * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
6547 expand behaviour changed.
6549 * gtk/gtklabel.c (gtk_label_set_pattern):
6550 (gtk_label_set_justify):
6551 (gtk_label_set_line_wrap):
6552 don't bother invoking queue_clear, the reallocation does
6553 that for us, always free_words so the upcoming resize will
6554 relayout the label's contents.
6556 Wed Jun 9 12:50:48 1999 Tim Janik <timj@gtk.org>
6558 * applied argument implementation patches from Elena Devdariani
6561 * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
6562 ::space_style, ::relief
6563 * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
6564 * gtk/gtkpreview.c: ::expand
6565 * gtk/gtkpaned.c: ::handle_size, ::gutter_size
6566 * gtk/gtknotebook.c: ::homogeneous
6567 * gtk/gtklabel.c: ::wrap
6568 * gtk/gtklist.c: ::selection_mode
6569 * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
6570 * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
6571 * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
6572 * gtk/gtkclist.c: ::sort_type
6573 * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
6574 * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
6576 Tue Jun 1 23:38:38 1999 Owen Taylor <otaylor@redhat.com>
6578 * gtk/gtkstyle.c: Removed ill-thought-out part of last
6581 Tue Jun 1 23:30:09 1999 Owen Taylor <otaylor@redhat.com>
6583 * gtk/gtkstyle.c (gtk_style_attach): Get the reference
6584 counting right when we have to attach a new style
6585 for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
6587 * gtk/gtkstyle.c: Documented the refcounting
6588 peculularities of gtk_style_attach.
6590 1999-06-01 Tim Janik <timj@dhcpd7.redhat.com>
6592 * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
6595 * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
6596 of GTK_TOPLEVEL for creating the window.
6598 1999-06-01 Tim Janik <timj@dhcpd7.redhat.com>
6600 * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
6601 the last argument (reported by Per Winkvist).
6603 Tue May 25 13:13:12 1999 Owen Taylor <otaylor@redhat.com>
6605 Fixes for invisible XOR lines (Frank Loemker
6606 <floemker@TechFak.Uni-Bielefeld.DE>)
6608 * gtk/gtkclist.c (gtk_clist_realize): Always use
6609 a non-zero pixel for GDK_XOR.
6611 * gtk/gtkvpaned.c gtk/gtkhpaned.c:
6612 Use GDK_INVERT instead of GDK_XOR.
6614 Wed May 12 21:56:40 1999 Lars Hamann <lars@gtk.org>
6616 * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
6617 signals if h/voffsets differ from adjustment values.
6618 Reportet by Jerome Bolliet <bolliet@in2p3.fr>
6620 Mon May 10 04:20:41 1999 Tim Janik <timj@gtk.org>
6622 * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
6623 ::selection-done emissions up to the topmost menu shell.
6625 Fri May 7 10:15:14 1999 Owen Taylor <otaylor@redhat.com>
6627 * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
6628 the user data on the window before destroying it.
6630 * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
6631 unrealize handler to take care of destroying
6632 notebook->panel properly.
6633 (Bug #1198 - Morten Welinder <terra@diku.dk>)
6635 * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
6636 of g_new and g_realloc to stop memory leak. (Actually,
6637 we could just use g_realloc(), but I'm not 100% sure
6639 (Bug #1196 - Morten Welinder <terra@diku.dk>)
6641 Wed Apr 21 00:42:08 1999 Owen Taylor <otaylor@redhat.com>
6643 * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
6645 * gdk/gdkfont.c (gdk_text_measure): Fix the return value
6648 * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
6649 with bin/button confusion.
6651 Thu May 6 04:53:26 1999 Tim Janik <timj@gtk.org>
6653 * gtk/testgtk.c: in the ItemFactory test, link radio items together,
6654 and show how preselection of radio items is done.
6656 Sun May 2 13:31:14 1999 Tim Janik <timj@gtk.org>
6658 * gtk/gtktreeitem.c (gtk_tree_item_set_subtree):
6659 * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
6660 * gtk/gtktoolbar.c (gtk_toolbar_insert_element):
6661 * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
6662 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add):
6663 * gtk/gtktable.c (gtk_table_attach):
6664 * gtk/gtklist.c (gtk_list_insert_items):
6665 * gtk/gtkmenushell.c (gtk_menu_shell_insert):
6666 * gtk/gtknotebook.c (gtk_notebook_insert_page_menu):
6667 * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add):
6668 * gtk/gtkbin.c (gtk_bin_add):
6669 * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end):
6670 * gtk/gtkfixed.c (gtk_fixed_put):
6671 * gtk/gtklayout.c (gtk_layout_put):
6672 general fixups to container_add logic. always realize child if
6673 child->parent is realized, only map the child and queue a resize
6674 if child and child->parent are both visible.
6676 Fri Apr 30 09:02:28 1999 Tim Janik <timj@gtk.org>
6678 * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
6679 instead of gtk_container_foreach to walk and unrealize children, so
6680 composite children get also unrealized.
6681 (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
6682 (gtk_widget_map): assert that the widget is visible (basic constrain).
6683 (gtk_widget_real_map): assert that the widget is realized (basic
6686 Fri Apr 29 00:53:20 1999 Tim Janik <timj@gtk.org>
6688 * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
6690 Tue May 4 09:32:08 1999 Owen Taylor <otaylor@redhat.com>
6692 * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
6693 file for iso-8859-2 locales.
6695 * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
6697 Tue Apr 27 16:38:32 1999 Owen Taylor <otaylor@redhat.com>
6699 * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
6700 (Pointed out by andy@rz.uni-karlsruhe.de and others).
6701 Remove some suspicious and useless lines.
6703 Tue May 4 08:44:08 1999 Owen Taylor <otaylor@redhat.com>
6705 * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use
6706 width,height = 0, 0 to mean - here to edge of window,
6707 instead of -1, -1, since the former is all we support.
6709 Tue May 4 08:34:43 1999 Owen Taylor <otaylor@redhat.com>
6711 * gtk/gtkmain.c (gtk_main): Correctly free list nodes
6712 when removing from quit_functions list.
6714 Tue Apr 27 14:17:16 1999 Tim Janik <timj@gtk.org>
6716 * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
6718 Tue Apr 27 18:23:35 1999 Owen Taylor <otaylor@redhat.com>
6720 * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
6721 When redrawing characters on non-visible entry, use appropriate
6722 '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
6724 Tue Apr 27 01:31:40 1999 Lars Hamann <lars@gtk.org>
6726 * gtk/gtkclist.c (drag_dest_cell): compute destination cell
6727 from drag coordinates.
6728 (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
6731 * gtk/gtktree (drag_dest_cell)
6732 (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
6735 Wed Apr 21 21:26:11 1999 Tim Janik <timj@gtk.org>
6737 * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
6739 (gtk_item_factory_finalize): invoke translate_notify independant from
6741 (gtk_item_factory_set_translate_func): likewise.
6742 (gtk_item_factory_destroy): only remove ifactory pointer from those
6743 widgets that belong to us (stupid me).
6745 Mon Apr 19 12:05:31 1999 Owen Taylor <otaylor@redhat.com>
6747 * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
6748 rc_style list when lookup succeeeds.
6750 Thu Apr 15 01:11:24 1999 Lars Hamann <lars@gtk.org>
6752 * gtk/gtkctree.c (resync_selection):
6753 * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
6754 * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
6757 Fri Apr 9 19:22:19 1999 Owen Taylor <otaylor@redhat.com>
6759 * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
6760 Add some missing GDK_THREADS_ENTER()/LEAVE around
6761 timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
6763 Thu Apr 8 20:10:33 1999 Tim Janik <timj@gtk.org>
6765 * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
6766 rather than emit_by_name.
6768 * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
6769 on the widget across multiple signal emissions.
6770 (gtk_editable_delete_text): same here.
6771 (gtk_editable_class_init): set widget_class->activate_signal after
6772 editable_signals[ACTIVATE] has been created.
6774 Wed Apr 7 22:59:47 1999 Owen Taylor <otaylor@redhat.com>
6776 * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
6777 position here prematurely -- we might not have the
6778 right ->min_position and ->max_position yet.
6780 Tue Apr 6 16:38:51 1999 Owen Taylor <otaylor@redhat.com>
6782 * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
6783 Add error traps so if the other end of the connection
6786 * gtk/gtkselection.c (gtk_selection_notify): Clean
6787 up properly when selection property retrieval fails.
6789 * gtk/gtkselection.c (gtk_selection_request): Correctly
6790 reject SelectionRequest notifies where the handler
6793 Tue Apr 6 12:24:21 1999 Owen Taylor <otaylor@redhat.com>
6795 * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
6796 when we've previously highlighted.
6798 * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
6799 emit two "drag_leave" signals for Motif drops.
6801 * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
6802 back the correct status messages when dropping from
6803 Motif onto a proxy window that is rejecting the
6806 Sat Mar 27 23:32:13 1999 Tim Janik <timj@gtk.org>
6808 * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
6809 the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
6810 to compare two argument values. added gtk_arg_to_valueloc() to set a
6811 variable from an arg through its location (pointer).
6813 * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
6814 gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
6815 as gfloat*, uchars are collected as guchar*, ints are collected as
6818 Mon Mar 29 17:45:47 1999 Owen Taylor <otaylor@redhat.com>
6820 * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
6821 Include <string.h> instead of <strings.h>.
6823 * gtk/gtkstyle.c: Fix double include of gtkthemes.h
6824 (actually, a lot more duplicate includes occur if
6825 you trace through the sequence of #include's)
6826 gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
6828 Mon Mar 29 17:02:58 1999 Owen Taylor <otaylor@redhat.com>
6830 Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
6831 gtk-a-higuti-990322-[0-3]
6833 * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
6834 that was causing -DX_LOCALE not to work.
6836 * gtk/gtkrc.c (gtk_rc_init):
6837 X_LOCALE will never have LC_MESSAGES defined
6839 Thu Mar 25 12:38:31 1999 Tim Janik <timj@gtk.org>
6841 * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
6842 g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
6844 * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
6845 left/right as well (gtk-michael-980726-0.patch.gz).
6847 * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
6848 for pointer values, use gchar instead of char. fixed uline allocation
6849 leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
6850 chunks instead of G_ALLOC_ONLY.
6851 (gtk_label_size_request): always alter requisition as passed and leave
6852 widget->requisition alone.
6853 (gtk_label_set_text): allow NULL strings.
6854 (gtk_label_new): likewise.
6856 Wed Mar 24 09:24:03 1999 Tim Janik <timj@gtk.org>
6858 * gtk/gtkdrawingarea.[hc]: type/macro fixups.
6860 Mon Mar 22 05:51:34 1999 Tim Janik <timj@gtk.org>
6862 * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
6863 *and* mapped (i.e. drawable).
6864 (gtk_bin_expose): only send exposes to drawable children.
6866 * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
6867 (gtk_box_expose): only send exposes to drawable children.
6869 * gtk/gtkhscale.c (gtk_hscale_draw):
6870 * gtk/gtkvscale.c (gtk_vscale_draw):
6871 hm, this is an ugly one. we first compute the size of our trough area
6872 here (window relative) and then check intersection with the draw_area
6873 which is parent relative because we're a NO_WINDOW widget, so we need
6874 to offset the trough area by allocation.x and allocation.y before the
6875 check. (this must not be done for the background area though, since
6876 that's already computed parent relative).
6878 Mon Mar 22 00:41:39 1999 Lars Hamann <lars@gtk.org>
6880 * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
6881 unrealize title buttons.
6883 Fri Mar 19 00:00:22 1999 Lars Hamann <lars@gtk.org>
6885 * gtk/gtkclist.c (gtk_clist_column_title_passive)
6886 (gtk_clist_column_title_active):
6887 only connect/disconnect to GtkWidgetClass::event to block mouse events.
6889 * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout):
6890 zero initialize event, removed superfluous gdk_window_get_pointer call
6892 * gtk/gtklist.c (gtk_list_vertical_timeout)
6893 (gtk_list_horizontal_timeout): removed superfluous
6894 gdk_window_get_pointer call
6896 Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
6898 * plugging problems reported by "Bruce Mitchener, Jr."
6899 <bruce@puremagic.com> due to a purify session.
6903 (gtk_style_unref): assert ref_count to be > 0.
6905 * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
6907 (gtk_clist_set_shift): likewise.
6909 * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
6912 * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
6913 event before sending it and set send_event to TRUE (which needs to
6914 be done for *all* synthesized events).
6915 (gtk_list_vertical_timeout): likewise.
6917 * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
6920 * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
6921 to TRUE when synthesizing events.
6923 [ *** end of merges from 1.2 *** ]
6925 1999-11-21 Tor Lillqvist <tml@iki.fi>
6927 * gdk/gdkconfig.h: Remove, as this is a file generated by configure
6928 (or copied from gdkconfig.h.win32 on Win32, sigh).
6930 * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
6932 * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
6934 * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
6936 * gdk/gdkconfig.h.win32: New file.
6938 * gdk/win32/makefile.cygwin: Build just a static archive here.
6940 * gdk/makefile.cygwin: New file. Get the win32-specific stuff
6941 for the DLL from the static archive built above.
6943 * gdk/gdk.def: Moved here from the win32 subdirectory.
6945 * gdk/win32/*: Adapt for the changed private struct organisation.
6947 * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
6949 Sun Nov 21 16:44:35 1999 Stefan Jeske <stefan@gtk.org>
6951 * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support
6952 for wheel mice (buttons 4 and 5).
6954 1999-11-18 Tor Lillqvist <tml@iki.fi>
6956 * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
6957 drawables use just the pixel field in the foreground and
6958 background GdkColor of the GdkGC.
6960 gdk_gc_set_{fore,back}ground() are called in the GIMP with
6961 GdkColors containing uninitialized (red,green,blue) fields, and
6962 just the pixel field filled in, and furthermore in the
6963 visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
6964 It thus turns out that we really don't need to have the full
6965 GdkColor for fg and bg in GdkGCWin32Data after all. Will change
6966 it later to have just the pixel values.
6968 Mon Nov 15 17:17:51 GMT 1999 Tony Gale <gale@gtk.org>
6970 * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
6972 Sat Nov 13 22:30:29 GMT 1999 Tony Gale <gale@gtk.org>
6974 * docs/gtkfaq.sgml: threads example from Erik Mouw.
6975 New question on GtkLabel background colors.
6977 * docs/gtk_tut.sgml:
6978 - Correct the example code callback
6979 function definitions.
6980 - Update the gtkdial example code, from Frans van Schaik.
6981 - Update setselection.c to current API.
6983 * examples/Makefile examples/*/*.c: Update to code
6986 1999-11-10 Tor Lillqvist <tml@iki.fi>
6988 * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
6989 subrange table (from the "Developing International Software for
6990 WIndows 95 and Windows NT" book) was missing the Hangul syllable
6991 block... Get the loaded font's charset correctly.
6993 (Note that this, and the other *-win32.c files, still really are
6994 the old ones, the win32 subdirectory is not ready for compilation
6995 yet after the reorg.)
6997 Wed Nov 10 17:26:49 GMT 1999 Tony Gale <gale@gtk.org>
6999 * gtk/gtkclist.c: Fix off-by-one bug in parameter
7002 Wed Nov 10 12:12:03 1999 Owen Taylor <otaylor@redhat.com>
7004 * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
7005 on results of XQueryDeviceState().
7007 Mon Nov 8 16:40:43 1999 Owen Taylor <otaylor@redhat.com>
7009 * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
7010 we need to accesss only ->children. We need an accessor
7013 * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
7014 DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
7015 to get rid of gdkx.h include.
7017 * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
7018 and random references to 'None'.
7020 * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
7021 Get rid of unused #include <gdk/gdkx.h>
7023 * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
7024 gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
7027 1999-11-08 Tor Lillqvist <tml@iki.fi>
7029 * gdk/win32/gdkdraw.c
7030 * gdk/win32/gdkfont.c
7031 * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
7032 following yesterday's changes. (Unrelated to Owen's reorg.)
7034 Mon Nov 8 16:18:25 1999 Owen Taylor <otaylor@redhat.com>
7036 * gdk/x11/gdkinput-gxi.c: Add missing include,
7037 fix GdkWindowPrivate => GdkDrawablePrivate.
7039 * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
7041 * gdk/x11/Makefile.am (xinput_sources): Add missing
7042 backslash to fix building with --with-xinput=none
7044 Mon Nov 8 14:47:04 1999 Owen Taylor <otaylor@redhat.com>
7046 Move all X specific code into the x11/ directory.
7047 Aside from shuffling things around, did the following:
7049 * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
7050 gdk_arg_context_* - a simple argument parsing system
7051 in the style of popt.
7053 * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
7054 gdk/x11/gdkprivate-x11.h:
7055 Remove X specific stuff from GdkDrawable and GdkWindowPrivate -
7056 add ->klass and ->klass_data fields. The klass_data
7057 field points to an auxilliary structure that is
7058 windowing system dependent.
7060 * gdk/gdkfont.c: Make most of the measurement functions
7061 simply wrappers around gdk_text_extents().
7063 * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a
7064 _gdk_font_strlen() function that hides the weird
7065 behavior in gtk+-1.[02] where a string is interpreted
7066 differently for 8-bit and 16-bit fonts.
7068 * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
7069 to store common code for synthesizing double/triple
7072 * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
7073 Make all the function that modify an existing GC
7074 simply wrappers around gdk_gc_set_values().
7076 * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
7077 for throwing out later.
7079 * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
7080 GdkImagePrivate and GdkColormapPrivate to have a
7081 windowing system dependent part (GdkFontPrivateX etc.)
7082 that "derives" from the system-independent part.
7084 * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
7085 Got rid of the included-source-files for XInput in
7086 favor of automake conditionals. (Which didn't exist
7087 when XInput support was originally added.)
7089 * gdk/gdkrgb.c: Remove the visual id from the debugging
7090 statements since that is X11 specific; print out
7091 type/depth info instead.
7094 Wed Nov 3 18:14:49 1999 Owen Taylor <otaylor@redhat.com>
7096 * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
7097 loading duplicates of hashed fonts.
7099 * gdk/gdk.c (gdk_keysym_convert_case): rename
7100 gdk_XConvertCase to gdk_keysym_convert_case, allow
7101 results to be NULL in the GTK+ style.
7103 * gdk/gdkcompat.h: Started compatibility header
7106 1999-11-07 Tor Lillqvist <tml@iki.fi>
7108 * gdk/win32/gdkprivate.h: New font private structures, related to
7111 * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
7112 gdk_font_list_free(). On X11, will just be wrappers to
7113 XListFonts() and XFreeFontNames(). On Win32, the code previously
7114 in gtkfontsel.c is now here.
7116 New function gdk_font_xlfd_create(). On X11 will get the FONT
7117 property of the font (for GDK_FONT_FONTs), or call
7118 XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
7119 builds a XLFD style name from the font information in the LOGFONT
7122 New function gdk_font_xlfd_free(), which correspondingly frees the
7123 string returned by gdk_font_xlfd_create().
7125 Implement fontsets on Win32. Add a function that iterates over a
7126 wide char string and calls a callback function for each substring
7127 of wide chars from the same Unicode subrange (and thus probably
7128 available in the same real font).
7130 Improve the XLFD emulation a bit.
7132 * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
7134 * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
7135 Beta3, WM_IME_CHAR messages don't seem to contain the composed
7136 multi-byte char as with the Active IMM on Win9x. Oh well, handle
7137 WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
7138 ImmGetCompositionStringW() to get the composed Unicode chars.
7141 * gdk/win32/gdkdraw.c: Changes needed because of the font private
7144 * gdk/win32/gdk.def: Add the new functions.
7146 1999-11-04 Tor Lillqvist <tml@iki.fi>
7148 * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
7149 get the Platform SDK to get <dimm.h>.
7151 * gdk/win32/gdkevents.c: More event handling fixes and
7152 simplification. Never generate motion events with is_hint true. We
7153 used to do that on bogus grounds earlier. Windows sends
7154 WM_MOUSEMOVE messages on button events even if the mouse hasn't
7155 moved, ignore these.
7157 * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
7159 * gdk/win32/gdkglobals.c
7160 * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
7161 the TrackMouseEvent function, and use it.
7163 * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
7164 char before calling WideCharToMultiByte in order to get a string
7165 for the window title.
7167 * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
7169 * gdk/win32/gdk.def: Remove obsolete functions.
7171 * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
7172 /nodefaultlib and /defaultlib switches.
7174 * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
7176 1999-10-31 Tor Lillqvist <tml@iki.fi>
7178 * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
7181 * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
7182 same type as GdkWChar, especially on Win32.
7184 * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
7186 * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
7187 before passing to Windows GDI for drawing etc. Convert to the
7188 system default codepage before passing to Windows as window
7191 * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
7192 support changing input locale on the fly.
7194 * gdk/win32/gdkevent.c: Support input language (keyboard locale)
7195 on-the-fly changes. Convert incoming characters from the current
7196 codepage to Unicode (and then to a UTF-8 multi-byte string) based
7197 on the current input language. Use keysym<->Unicode mapping tables
7198 and functions borrowed from xterm sources.
7200 Support IMEs (Input Method Editors) for CJK languages. On non-CJK
7201 editions of Win9x, use the ActiveX-based Active IMM (Input Method
7202 Manager) if available. IMEs and the Active IMM are available under
7203 the disguise of Chinese, Korean and Japanese support for IE and
7204 Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
7205 support is present in all editions (as long as you install it).
7207 Call DispatchMessage from gdk_events_queue() (and thus
7208 gdk_WindowProc()), instead of duplicating the code in
7211 Reworked the grab handling and propagation code, factored out
7212 duplicated code snippets into separate functions. Other cleanups,
7215 * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
7216 the <dimm.h> header describing the Active IMM.
7218 * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
7219 just do the same as for "single" fonts.
7221 * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
7222 gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
7223 the new keysyms from gdkkeysyms.h.
7225 * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
7226 fontset, so that gtkentry uses wide characters.
7228 * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
7229 GTk+'s system directory "gtk+", not "gtk".
7231 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
7233 * docs/gtkfaq.sgml: FAQ update
7235 1999-10-21 Tor Lillqvist <tml@iki.fi>
7237 * gdk/win32/gdkprivate.h: Add more font private data.
7239 * gdk/win32/gdkfont.c
7240 * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
7241 fonts and strings. Now works much better. You still have to
7242 have a correct font selected, though. No fontset emulation yet.
7244 1999-10-19 Tor Lillqvist <tml@iki.fi>
7246 * gtk/maketypes.awk: Use G_OS_WIN32.
7248 * gtk/gtk.def: Add some missing entry points. Also some non-public
7249 ones, but PyGTK porter claims to need them.
7251 * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
7252 built-in type generation.
7254 1999-10-14 Tor Lillqvist <tml@iki.fi>
7256 * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
7257 GDK_FONT_FONT fonts (which is all we have for now, we don't
7258 emulate fontsets). The X11 version uses plain XDrawString in that
7259 case, too. The string passed to gdk_draw_text_wc seems to be in
7260 fact (at least, when used by gtkentry and gtktext) either in a
7261 single-byte charset, or a DBCS. Not Unicode.
7263 This fixes the problem in gtkfontsel, where even if you had
7264 selected a font with a non-Latin1 charset (windows-greek, for
7265 instance), the preview still used Latin-1 glyphs.
7267 * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
7268 use GetTextExtentPoint32W, use GetTextExtentPoint32A.
7269 (gdk_font_load): Recognize the demibold etc weights, even if we
7270 don't have the corresponding constants in the headers.
7271 (gdk_font_hash_insert): Use same hash mechanism as in the X11
7272 version. Should save font resources a bit, when we don't have
7273 multiple HFONTs for the same font.
7275 * gdk/win32/gdkprivate.h: Add the names field as in the X11
7278 1999-10-11 ERDI Gergo <cactus@cactus.rulez.org>
7280 * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
7283 1999-10-09 ERDI Gergo <cactus@cactus.rulez.org>
7285 * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
7286 layout support (as mentioned on
7287 http://www.jcinteractive.com/gnome-ui/software/widgets/)
7289 Wed Oct 6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
7292 * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
7294 1999-10-05 Jesus Bravo Alvarez <jba@pobox.com>
7296 * configure.in (ALL_LINGUAS): Added Galician (gl)
7298 1999-10-05 Tor Lillqvist <tml@iki.fi>
7300 * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
7302 * gdk/win32/gdkcompat.c: New file, actually provide an
7303 implementation for the deprecated functions. (Just temporarily.)
7305 * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
7307 * gtk/makefile.{cygwin,msc}: Update gdk_headers.
7309 * gdk/win32/gdk.def gtk/gtk.def: Updates.
7311 1999-10-05 Kjartan Maraas <kmaraas@online.no>
7313 * configure.in: Added "uk" to ALL_LINGUAS.
7315 Mon Oct 4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
7317 * configure.in: correct checking for BeOS check
7322 * gtk/gtkitemfactory.c
7324 * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
7326 Mon Oct 4 16:16:53 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
7328 * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
7329 encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
7330 languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
7333 Sun Oct 3 18:13:44 1999 Owen Taylor <otaylor@redhat.com>
7335 * gtk/gtkwidget.c (gtk_reset_shapes_recurse):
7336 Fix a reference to window_private->destroyed.
7338 * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
7339 (ugly) setting of an internal GdkWindow member to use
7340 a _slightly_ cleaner macro.
7342 * gdk/gdkprivate.h: Split GdkWindowPrivate into
7343 GdkDrawablePrivate and GdkWindowPrivate.
7344 Add extra macros for accessing GDK_DRAWABLE_ components.
7346 * *.[ch]: Massive adjustments for the above, use the
7347 new macros in a lot of places.
7349 Sun Oct 3 15:16:24 1999 Owen Taylor <otaylor@redhat.com>
7351 * gdk/gdktypes.h: Make GdkDrawable the base type,
7354 Sun Oct 3 15:08:44 1999 Owen Taylor <otaylor@redhat.com>
7356 * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
7358 Sun Oct 3 14:26:15 1999 Owen Taylor <otaylor@redhat.com>
7360 * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
7362 Sun Oct 3 14:16:23 1999 Owen Taylor <otaylor@redhat.com>
7364 * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
7365 gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
7367 * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
7369 * docs/gtk-config.1: Now autogenerated.
7370 * docs/Changes-1.4.txt: started
7372 1999-10-03 Tor Lillqvist <tml@iki.fi>
7374 * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
7375 to #ifdef also here.
7377 * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
7378 Owen did to the X11 backend.
7380 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
7381 ScrollWindowEx when blitting inside a window, it can't be correct
7382 in the general case.
7384 * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
7385 WM_GETMINMAXINFO is easier.
7387 * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
7388 depth equal to the bitspixel value, not the visual's depth.
7390 * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
7391 to 24 even if the bitspixel value is 32.
7393 * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
7394 need to check for depth==32 when bpp==32, depth will always be 24.
7396 Fri Oct 1 18:03:36 1999 Owen Taylor <otaylor@redhat.com>
7398 * docs/Changes-1.4.txt: Started
7400 * gtk/Makefile.am (gdk_headers): Include all the new headers.
7402 * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
7404 * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
7407 * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
7408 header to gdkinputprivate.h.
7410 * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
7411 unused since before 1.2.
7413 1999-09-30 Tor Lillqvist <tml@iki.fi>
7415 * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
7416 expand possible hex escapes in the font family (put there by
7417 logfont_to_xlfd if the font name isn't a legal XLFD font family,
7418 mainly if it contains slashes). (gtk_font_selection_create_xlfd):
7419 On Win32, add hex escapes here, too.
7421 Wed Sep 29 19:55:35 1999 Owen Taylor <otaylor@redhat.com>
7423 * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
7424 to #ifdef GDK_WINDOWING_X11.
7426 [ Merges from gtk-1-2 ]
7428 Wed Sep 8 07:13:29 1999 Tim Janik <timj@gtk.org>
7430 * configure.in: fixed "GNU Make" check to pass with new make version
7433 Fri Sep 3 16:04:41 1999 Tim Janik <timj@gtk.org>
7435 * gtk-config.in (--version): don't echo @GTK_VERSION@, but
7436 @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
7437 AM_PATH_GTK() macros don't get confused by the -pre1.
7439 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
7441 * configure.in (REBUILD): Change check for perl5
7442 to check explicitely for v >= 5.002. (5.001
7443 does not work with our scripts.)
7445 Wed Aug 25 15:45:46 1999 Tim Janik <timj@gtk.org>
7447 * configure.in: evaluate $PERL for the perl version check. added
7448 --disable-rebuilds to give the user an option to completely disable
7449 any source autogeneration rules.
7451 Mon Aug 23 23:16:14 1999 Tim Janik <timj@gtk.org>
7453 * configure.in: evaluate $ac_make when checking for GNU Make.
7455 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
7457 * docs/Makefile.am: added generation.txt.
7459 * Makefile.am: require automake 1.4, build README from README.in and
7460 INSTALL from INSTALL.in in dist-hook.
7463 * INSTALL.in: new files to autogenerate README and INSTALL from.
7465 * configure.in: figure whether we have GNU Make
7467 * docs/generation.txt: minor additions/corrections.
7469 Wed Aug 11 13:38:26 BST 1999 Tony Gale <gale@gtk.org>
7471 * docs/gtkfaq.sgml: FAQ Update
7473 July 30, 1999 Elliot Lee <sopwith@redhat.com>
7475 * configure.in: Fix autoconf warnings about cross compilation by
7476 trying to provide sane defaults for AC_TRY_RUN.
7478 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
7481 * ltmain.sh: upgrade to libtool 1.3.3
7483 Thu Jul 8 11:30:18 1999 Owen Taylor <otaylor@redhat.com>
7485 * INSTALL: Indicate that the --with-glib= configure
7486 time flag is unsupported.
7488 Mon Jul 5 20:36:03 1999 Owen Taylor <otaylor@redhat.com>
7490 * docs/generation.txt: Added a file that gives
7491 documenation about the autogeneration process for
7492 various autogenerated files.
7494 Tue Jun 29 15:59:25 1999 Owen Taylor <otaylor@redhat.com>
7496 * configure.in (LIBS): Look for libgmodule in the
7499 Thu Jun 17 13:57:31 1999 Owen Taylor <otaylor@redhat.com>
7501 * docs/gtk_tut.sgml: Removed references to
7502 code examples in my directory on gtk.org as
7503 they should all be in the tutorial now.
7505 * docs/gtk_tut.sgml: Added sources for dial-test
7506 and scribble-xinput programs that were previously
7509 Fri Jun 4 00:08:59 1999 Owen Taylor <otaylor@redhat.com>
7511 * TODO: Added entry about menu keyboard navigation, removed
7512 some finished items.
7514 Mon May 31 00:11:24 1999 Owen Taylor <otaylor@redhat.com>
7516 * acinclude.m4: Standardize on func_dgettext
7517 not func_gettext, so that the checks for dgettext
7518 actually are paid attention to.
7520 Wed May 5 10:47:54 1999 Owen Taylor <otaylor@redhat.com>
7522 * configure.in (LIBS): Add $INTLLIBS into $LIBS
7523 directly, rather than repeating the checks for
7526 * INSTALL: Added information about gettext and
7529 * acinclude.m4 (LIBM): Check for dgettext, not
7530 just gettext. This should hopefully fix things wrt
7531 systems with old versions of GNU gettext installed.
7533 Tue Jun 29 15:59:25 1999 Owen Taylor <otaylor@redhat.com>
7535 * configure.in (LIBS): Look for libgmodule in the
7538 Thu Apr 1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
7540 * autogen.sh: add --enable-maintainer-mode
7542 * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
7544 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
7546 * docs/gtk-config.1.in:
7548 configure.in: gtk-config is now generated.
7550 * docs/gtk-config.1: Removed, now generated.
7552 Thu Sep 23 17:59:59 1999 Tim Janik <timj@gtk.org>
7554 * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
7555 handle CreateNotify itself, still put out a debuging message for
7556 --gdk-debug=events. made the ReparentNotify debugging message more
7558 wrap xcoords translation for ConfigureEvents into an error trap,
7559 a destroy event may already be pending, and in that case, the
7560 actuall coordinate values are not at all critical.
7562 Sat Sep 18 22:24:15 1999 Owen Taylor <otaylor@redhat.com>
7564 * gdk/gdkcc.c: Stop leaking the color_hash all over
7565 the place. Simplify and improve the logic.
7567 Fri Sep 17 09:57:15 1999 Tim Janik <timj@gtk.org>
7569 * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
7570 for prototypes and function implementations consistent (reported
7573 Tue Sep 14 18:23:01 1999 Tim Janik <timj@gtk.org>
7575 * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
7576 send_event set in debugging output.
7577 (gdk_compress_exposures): default initialize the event so we don't
7578 operate on bogus values (namely send_event).
7580 Thu Sep 2 16:33:59 1999 Owen Taylor <otaylor@redhat.com>
7582 * gdk/gdkwindow.c: When we receive an unexpected
7583 destroy notify on one of our windows, don't just
7584 warn about it, also mark our windows as destroyed.
7586 Sun Sep 5 08:10:53 1999 Owen Taylor <otaylor@redhat.com>
7588 * gdk/gdkfont.c (gdk_font_hash_insert): Add
7589 name => font and name => fontset hashes. The
7590 name => fontset hash is a _big_ win since we
7591 weren't previously caching fontsets at all and loading
7592 fontsets is expensive. The name => font hash
7593 is less of a win, but it does save us from doing
7594 repeated XQueryFont calls on the same font.
7596 * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
7597 list so we can remove font/fontset from hash.
7599 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
7601 * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
7602 and slightly confusing test. [ XInternAtom (,,TRUE)
7603 will never return None ].
7605 Sat Sep 4 08:39:26 1999 Owen Taylor <otaylor@redhat.com>
7607 * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
7608 gdk/gdkwindow.c (gdk_window_set_hints):
7610 Don't omit setting the properties if flags == 0 -
7611 there may be an existing set of properties there
7612 already. (Very old bug. Would it be better to
7613 delete the property instead?)
7615 * gdk/gdkselection.c (gdk_selection_property_get): Fix
7616 spelling error in comment.
7618 Wed Sep 1 14:05:30 1999 Owen Taylor <otaylor@redhat.com>
7620 * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
7621 to avoid stomping over gdk_error_warnings.
7623 * gdk/gdkimage.c (gdk_image_new): compute image->bpp
7624 as (bits_per_pixel + 7) / 8. This gives the same
7625 result as before for multiples of 8, but actually
7626 a "reasonable" value for 1bit or 4bit displays.
7628 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
7630 * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
7633 Tue Aug 17 07:43:04 1999 Tim Janik <timj@gtk.org>
7635 * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
7636 discarding configure events.
7638 1999-08-18 Federico Mena Quintero <federico@redhat.com>
7640 * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
7641 refcount is greater than zero.
7643 * gdk/gdkwindow.c (gdk_window_unref): Likewise.
7645 * gdk/gdkfont.c (gdk_font_unref): Likewise.
7647 * gdk/gdkgc.c (gdk_gc_unref): Likewise.
7649 * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
7651 Wed Aug 11 01:04:57 1999 Owen Taylor <otaylor@redhat.com>
7653 * gdk/gdkproperty.c (gdk_property_get): Fix assumption
7654 that format 32 => sizeof(item) == 4. It really is
7657 Tue Jun 29 23:02:42 1999 Owen Taylor <otaylor@redhat.com>
7659 * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
7660 core dump at all on X IO errors, only core dump
7661 if --enable-debug for X errors.
7663 Thu Jun 24 17:06:23 1999 Tim Janik <timj@gtk.org>
7665 * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
7666 unknown window:" message. disabled ConfigureNotify discarding code,
7667 because it led to events being processed out of order.
7669 Thu Jun 24 12:22:02 1999 Tim Janik <timj@gtk.org>
7671 * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
7673 * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
7674 we export this function, supress error warnings and don't reset the
7675 error code in the first half of this function.
7677 * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
7678 code (instead of just -1) so gdk_error_trap_pop() reveals something
7679 actually informative about the error that happened.
7682 don't rely on gdk_error_code being -1 if an error occoured, but just
7683 gdk_error_code != 0.
7685 Thu Jun 24 11:50:07 1999 Tim Janik <timj@gtk.org>
7687 * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
7688 pointer *before* invoking the filter function, so we at least don't
7689 crash if a filter is removed that is currently executed. window filters
7690 *really* need to be made truely reentrant at some point.
7692 Mon Jun 14 11:10:15 1999 Tim Janik <timj@gtk.org>
7694 * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
7695 PropertyNotify debug messages.
7697 Wed May 5 22:51:06 1999 Owen Taylor <otaylor@redhat.com>
7699 Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
7701 * gdk/gdkim.c: Fix cut-and-paste errors for
7702 x/y and PreeditAttributes/StatusAttributes.
7704 Wed May 5 22:24:21 1999 Owen Taylor <otaylor@redhat.com>
7706 * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
7707 G_MAXINT to 2^16 to alleviate overflow problems in
7708 various window managers.
7710 Wed Apr 21 00:42:08 1999 Owen Taylor <otaylor@redhat.com>
7712 * gdk/gdkfont.c (gdk_text_measure): Fix the return value
7715 Wed May 5 12:42:01 1999 Owen Taylor <otaylor@redhat.com>
7717 * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
7718 Initialize size_hints.x and size_hints.y because kwm
7719 brokenly pays attention to them.
7720 (Bug #1181 - Lars Heete <hel@admin.de>)
7722 Wed May 5 11:38:56 1999 Owen Taylor <otaylor@redhat.com>
7724 * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the
7725 return value of gdk_list_visuals().
7726 (Bug #1193 - Morten Welinder <terra@diku.dk>)
7728 Tue May 4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
7730 * gdk/gdkim.c (gdk_im_real_open): cast the return value of
7731 XSetIMValues to (void *) when comparing to NULL, to workaround
7732 the problem of some compilers barfing since older X headers don't
7733 have the prototype for it.
7735 Mon Apr 19 10:11:12 1999 Owen Taylor <otaylor@redhat.com>
7737 * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
7738 for pseudocolor where colormap->colors was double
7741 * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
7742 color value in the hash table with the pixel filled
7743 in so when we do later hash table lookups, the color
7746 Sun May 2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
7748 * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
7751 Tue Apr 27 11:17:35 1999 Owen Taylor <otaylor@redhat.com>
7753 * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
7754 pointed out by Morten Welinder <terra@diku.dk>.
7756 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
7758 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
7759 default filter from the list
7761 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
7763 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
7764 default filter from the list
7766 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
7768 * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
7770 * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
7771 g_strdup_printf instead of calcing the length separately
7773 Tue Apr 13 02:49:33 1999 Owen Taylor <otaylor@redhat.com>
7775 * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
7776 that we don't do in many other places. (Fixing duplicate
7777 #include of config.h)
7779 * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
7780 Otherwise, #ifndef XINPUT_NONE check in the latter
7781 doesn't work. (Bug #546)
7783 Sun Apr 11 14:38:03 1999 Tim Janik <timj@gtk.org>
7785 * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
7786 "None" case insensitive.
7788 Tue Apr 6 16:38:51 1999 Owen Taylor <otaylor@redhat.com>
7790 * gdk/gdkselection.c:
7791 Add error traps so if the other end of the connection
7794 Tue Apr 6 12:24:21 1999 Owen Taylor <otaylor@redhat.com>
7796 * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
7797 dest_xid field into two fields - one for the window
7798 to send in messages, one to indicate the last looked
7799 up window for caching purposes. This is needed, so
7800 that Leave messages get the correct window.
7802 Mon Apr 5 13:21:30 1999 Owen Taylor <otaylor@redhat.com>
7804 * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
7805 Fix warning created by people mucking around
7806 with the gsource API.
7808 * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
7809 Change mapping between GIOCondition and GdkInputCondition
7810 to match the way the Linux kernel does it. This should
7811 fix problems where closed pipes were no longer signalling
7812 GDK_INPUT_READ on systems with a native poll().
7814 Mon Apr 5 17:11:57 1999 Owen Taylor <otaylor@redhat.com>
7816 * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check
7817 explicitly for the string "None" - it is in the XPM
7818 spec and some servers treat unknown colors in odd ways
7819 (like asking the user!)
7821 Thu Apr 1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
7823 * gdk/gdkevents.c: made "->" into a "." of previous change so
7826 Thu Apr 1 18:41:25 1999 Owen Taylor <otaylor@redhat.com>
7828 * gdk/gdkevents.c (gdk_compress_exposures): Set the
7829 window field of the event structure before calling
7832 1999-03-31 Federico Mena Quintero <federico@nuclecu.unam.mx>
7834 * gdk/gdk.c (gdk_init_check): Use False as the last argument to
7835 XInternAtom() here. This is a particularly Old And Nasty(tm) bug.
7837 Mon Mar 29 17:31:52 1999 Owen Taylor <otaylor@redhat.com>
7839 * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
7840 intermediate text property - prevents major memory
7841 leak when gdk_use_mb.
7842 gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
7844 Mon Mar 29 17:02:58 1999 Owen Taylor <otaylor@redhat.com>
7846 Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
7847 gtk-a-higuti-990322-[0-3]
7849 * gdk/gdkfont.c (gdk_text_extents_wc): Make work when
7850 sizeof(wchar_t) != sizeof (GdkWChar)
7852 * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
7853 that was causing -DX_LOCALE not to work.
7855 * gtk/gtkrc.c (gtk_rc_init):
7856 X_LOCALE will never have LC_MESSAGES defined
7858 * gdk/gdk.c (gdk_init_check):
7859 Remove --xim-preedit and --xim-status from argv properly.
7861 * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
7862 that the client window is present on the X server
7863 before we pass it to the input method.
7865 Tue Mar 9 10:46:49 1999 Owen Taylor <otaylor@redhat.com>
7867 * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
7868 if --display is specified on the command line, than
7869 the drag window will not be created on that display.
7871 Tue Mar 9 10:38:24 1999 Owen Taylor <otaylor@redhat.com>
7873 * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
7874 lookups with only_if_exists == TRUE were inserting
7875 bogus values into the atom cache.
7877 Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
7879 * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
7880 then reset it to NULL.
7884 (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
7885 key for g_hash_table_remove() in both functions, this prevents us
7886 from accessing possibly uninitialized portions of a GdkColor structure
7887 where we are only interested in its pixel value.
7889 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
7891 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
7892 font hash table, if we have a GdkFontPrivate entry for this font
7893 already, simply increment its reference count, provided by Olaf Dietsche
7894 <olaf.dietsche+list.gtk@netcologne.de>.
7896 1999-09-21 Tor Lillqvist <tml@iki.fi>
7898 * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
7901 * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
7902 unused variables, leftovers from the X11 version.
7904 * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
7906 * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
7907 downcase fields on X11.
7909 Mon Sep 20 13:17:39 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
7911 * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
7912 Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
7914 1999-09-17 Tor Lillqvist <tml@iki.fi>
7916 * gdk/win32/gdk.def: Add gdk_threads_mutex.
7918 * gtk/makefile.msc: Correct path to libintl.
7920 Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
7921 use of gint vs. int, and gint vs. gboolean in headers and
7922 definitions. Use GtkType for the *_get_type functions. Note that
7923 these changes preserve binary compatibility.
7927 * gdk/gdk.h: Fix inconsistencies: gint vs int.
7931 * gtk/gtkmenufactory.c
7933 * gtk/gtkwidget.c: Fix inconsistencies, also gint
7936 * gtk/gtkcolorsel.[ch]
7938 * gtk/gtkdrawingarea.[ch]
7940 * gtk/gtkhandlebox.[ch]
7941 * gtk/gtkhpaned.[ch]
7942 * gtk/gtkhruler.[ch]
7944 * gtk/gtkpreview.[ch]
7946 * gtk/gtksocket.[ch]
7947 * gtk/gtkstatusbar.[ch]
7948 * gtk/gtktoolbar.[ch]
7950 * gtk/gtkvpaned.[ch]
7951 * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
7954 * gtk/gtkgamma.h: Fix bug, missing () in call of
7955 gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS.
7957 1999-09-14 Tor Lillqvist <tml@iki.fi>
7959 * gdk/gdkcolor.c (gdk_colormap_new)
7960 * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
7961 colormap->colors was allocated twice.
7963 * gdk/win32/gdk.c: Remove some unused stuff.
7965 * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
7968 * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
7969 * gtk/gtklabel.h (gtk_label_get_type)
7970 * gtk/gtktipsquery.c (gtk_tips_query_get_type)
7971 * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
7972 in a couple of places, not guint.
7974 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
7976 * configure.in,po/et.po: added Estonian language file
7978 Wed Sep 1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
7980 * configure.in,po/da.po: added Danish file
7982 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
7984 * docs/gtkfaq.sgml: Minor FAQ Update
7986 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
7988 * docs/gtkfaq.sgml: FAQ update
7990 1999-08-27 Tor Lillqvist <tml@iki.fi>
7992 Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
7993 way to get window contents continually refreshed while resizing. I
7994 didn't like the effects myself, so it's not on by default.
7996 * gdk/win32/gdkprivate.h: New flag variable
7997 gdk_event_func_from_window_proc, FALSE by default.
7999 * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
8000 environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
8001 are passed --gdk-event-func-from-window-proc.
8003 * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
8004 and we have am event_func, call it instead of enqueing the event.
8006 1999-08-23 Tor Lillqvist <tml@iki.fi>
8008 * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
8009 Kelley: Set expose_count in GdkEventExposes correctly.
8011 * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
8012 MULTIPLE_WINDOW_CLASSES).
8014 * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
8015 for bug in NT, apparently NT *does* draw the end pixel, too, in
8016 LineTo with a one-pixel pen, so we don't have to do it ourselves.
8018 1999-08-21 Tor Lillqvist <tml@iki.fi>
8020 Improvements by Hans Breuer:
8022 * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
8024 * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
8025 CS_?REDRAW flags as they cause lots of (late) redraws when "show
8026 window contents while dragging" is turned on. Allocate at least
8027 one unique class for every GdkWindowType. If support for single
8028 window-specific icons is ever needed (eg. Dialog specific), every
8029 such window should get its own class.
8031 1999-08-19 Tor Lillqvist <tml@iki.fi>
8033 * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
8034 error that caused crashes.
8036 1999-08-17 Tor Lillqvist <tml@iki.fi>
8038 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
8039 window, use ScrollWindowEx, and call UpdateWindow. This prevents
8040 bugs when for instance part of the window was outside the
8041 display. Thanks to Philippe Colantoni for finding and fixing this.
8043 1999-08-16 Tor Lillqvist <tml@iki.fi>
8045 * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
8046 endpoint calculations which were totally wrong. (A little RTFMing
8049 * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
8050 from a separate directory, not from gettext, because of licensing
8051 issues (we want to use the LGPL version).
8053 * README.win32: Mention the intl from glibc vs from gettext issue.
8055 1999-08-13 Tor Lillqvist <tml@iki.fi>
8057 * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
8058 in the key event handling: Now AltGr chars work again. Also,
8059 now Alt-digits are passed up as well as Control-digits.
8060 Pass keypad plus and minus as normal plus and minus.
8062 Wed Aug 11 13:38:26 BST 1999 Tony Gale <gale@gtk.org>
8064 * docs/gtkfaq.sgml: FAQ Update
8066 1999-07-25 Tor Lillqvist <tml@iki.fi>
8069 * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
8072 * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
8073 OK, but getting closer. Guard against bogus tilt data from Wacom
8074 ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
8075 enable easier building without Wintab.
8077 * gdk/win32/gdkinput.h
8078 * gdk/win32/gdkevents.c
8079 * gdk/win32/gdkwindow.c: Minor changes related related to above.
8081 * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
8082 code. As we have just one visual on Win32, no sense to have it in a
8083 table, and no need for the hash table.
8085 * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
8086 better on white background.
8088 1999-07-21 Tor Lillqvist <tml@iki.fi>
8090 * README.win32: Update gcc build instructions. Mention gettext is
8093 * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
8094 supported cursor size with GetSystemMetrics.
8096 * gdk/win32/gdkfont.c
8097 * gtk/gtkfontsel.c: Guard against some font weight and charset
8098 symbols being undefined (in mingw32 headers).
8100 * gdk/win32/makefile.cygwin
8101 * gtk/makefile.cygwin
8102 * gtk/gtkthemes.c: No longer need to have differently named
8103 gcc-built DLLs when using gcc-2.95 and -fnative-struct.
8105 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
8107 * docs/gtkfaq.sgml: Long awaited FAQ update.
8109 1999-07-15 Tor Lillqvist <tml@iki.fi>
8111 * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
8112 it. Obscure bit manipulation needed.
8114 * gdk/win32/gdkevents.c: Logging.
8116 * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
8117 style (file name include compiler name) for theme engines.
8119 1999-07-13 Tor Lillqvist <tml@iki.fi>
8121 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
8123 * gdk/win32/gdkevents.c: Fix long-standing bug in key
8124 events. The key.string wasn't zero-terminated, still we strdup'ed
8125 it in gdk_event_copy(). Synthesize crossing events for button
8126 events before possible propagation.
8128 * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
8130 * gdk/win32/makefile.cygwin
8131 * gtk/makefile.cygwin: Use new DLL naming style for the
8134 * gdk/win32/makefile.msc
8135 * gtk/makefile.msc: Cosmetics mostly.
8137 * gtk/gtk.def: Add missing entry points.
8139 * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
8141 1999-07-09 Tor Lillqvist <tml@iki.fi>
8143 * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
8144 or height is zero. Don't print a warning if Pie or Arc fails, they
8145 always fail (?) for very narrow ellipses.
8147 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
8148 the part or the destination window corresponding to source area
8149 outside of the source drawable's boundary.
8151 * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
8152 anything if less than two points.
8154 * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
8155 return NULL. Gtk cut-and-paste inside a single program works
8156 better this way. (It always gets the clipboard contents from
8157 Windows, not from its own copy, which is cleared anyway. I can't
8158 say I fully understand what happens... Emulating the X selection
8159 and property stuff is a bit of a mess.)
8161 * gdk/win32/gdkevents.c
8162 * gdk/win32/gdkproperty.c: A bit more verbose logging.
8164 * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
8165 that never got deleted). Revamp gdk_region_shrink.
8167 * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
8170 * gtk/gtk.def: Add some missing entry points.
8172 * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
8175 1999-07-04 Tor Lillqvist <tml@iki.fi>
8177 * gdk/win32/gdkevents.c (gdk_event_translate): Handle
8178 Control-digits specially.
8180 1999-07-03 Tor Lillqvist <tml@iki.fi>
8182 * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
8184 1999-06-28 Tor Lillqvist <tml@iki.fi>
8186 * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
8187 bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
8190 1999-06-01 Jose H Mercado <jmercado@mit.edu>
8192 * gtk+.spec.in: Corrected some typos in files section.
8194 1999-06-15 Tor Lillqvist <tml@iki.fi>
8196 * README.win32: Mention using GNU gettext.
8197 * config.h.win32: Enable NLS stuff.
8198 * gtk/makefile.msc: Use GNU gettext.
8199 * gdk/win32/gdkdnd.c: Minor header reorg.
8200 * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
8202 * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
8203 * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
8205 Wed Jun 2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
8211 * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
8213 1999-05-30 Tor Lillqvist <tml@iki.fi>
8215 * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
8216 SafeAdjustWindowRectEx. Don't override all calls to
8217 AdjustWindowRectEx by it, but use it only in two places: When
8218 creating a new top-level window and when moving a top-level
8221 Use screen coordinate rectangle, not client rectangle, in
8222 gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
8223 when we try to place a window so that the decoration (mainly,
8224 title bar) isn't visible.
8226 These changes fix the bug that showed up for instance as the
8227 GIMP's saved top-level windows moving right and down (by an amount
8228 equal to the window decoration) for each session. This bug showed
8229 up also in testgtk's "Saved Position".
8231 gdk_window_resize also redone a bit.
8233 1999-05-25 Tor Lillqvist <tml@iki.fi>
8235 * gtk/testgtkrc: Add (commented out) Windows-style theme
8238 * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
8240 1999-05-18 Tor Lillqvist <tml@iki.fi>
8242 * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
8243 gdkx.h to a gdk subdirectory, so that applications can include
8244 these with <gdk/*.h> without trouble.
8246 * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
8247 (gdk_image_destroy): Plug resource leak, some GdkImages didn't
8248 have their bitmap destroyed.
8250 * gdk/win32/gdk.def: Add gdk_root_parent.
8252 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
8258 gtk/Makefile.am: changes to compile nicely (with xlib)
8261 Sat May 1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
8267 * ltmain.sh: upgrade to libtool 1.3
8269 Fri Apr 30 13:38:16 1999 Lars Hamann <lars@gtk.org>
8272 * gtk/gtkctree.c: merges from gtk-1-2
8274 1999-04-25 Tor Lillqvist <tml@iki.fi>
8276 Support added for building using a GNU toolchain on Win32,
8277 gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
8279 * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
8280 * config.h.win32: Changes for gcc.
8281 * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
8282 * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
8283 * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
8284 * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
8285 Protect shl stuff unavaiilable with mingw32 headers.
8286 * gdk/win32/gdkevents.c: Fix typo.
8287 * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
8288 * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
8289 * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
8290 * gdk/win32/gdkprivate.h: Make up for some stuff missing from
8291 the mingw32 headers.
8292 * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
8293 * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
8294 definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
8295 * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
8296 Test for NATIVE_WIN32, not _MSC_VER.
8297 * gtk/gtkmain.c: No use warning about developer version on Win32,
8298 there aren't any non-developer versions anyhow.
8299 * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
8300 * gtk/makefile.msc: Use pthread from another directory. Minor other
8303 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
8305 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
8306 default filter from the list
8308 Mon Mar 8 12:52:53 1999 Owen Taylor <otaylor@redhat.com>
8310 * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
8311 when gtk_widget_grab_default() is called for a widget that
8312 is not within a GtkWindow.
8314 Sat Apr 10 13:52:54 BST 1999 Tony Gale <gale@gtk.org>
8316 * docs/gtk_tut.sgml, examples/clist.c: use a
8317 scrolled window in the clist example. Minor
8320 Fri Apr 2 09:19:20 BST 1999 Tony Gale <gale@gtk.org>
8322 * docs/gtk_tut.sgml: Style check from David King
8323 <dking@youvegotmail.net>
8325 1999-03-30 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
8327 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
8328 compile with unknown value of GDK_WINDOWING
8330 1999-03-28 Raja R Harinath <harinath@cs.umn.edu>
8332 * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
8333 after the rule is fired.
8334 (install-exec-local): Install gdkconfig.h only if the contents are
8335 different from the currently installed gdkconfig.h.
8337 1999-03-26 Raja R Harinath <harinath@cs.umn.edu>
8339 * gdk/Makefile.am (configexecincludedir): Rename from
8340 configincludedir so that gdkconfig.h will be installed
8341 as part of `make install-exec'.
8343 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
8349 * ltmain.sh: upgrade to libtool 1.2f
8351 * autogen.sh: libtool is not required to autogen gtk+
8353 * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
8356 1999-03-18 Tor Lillqvist <tml@iki.fi>
8358 * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
8359 declaring gdk variables exported/imported from the DLL. New image
8360 type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
8361 drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
8362 GDK_DRAG_PROTO_OLE2.
8364 * gdk/gdk.h: Merge in Win32 version: Two new functions,
8365 gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
8366 declared only for the Win32 version, but could be in the X11
8367 version as well. (Needed for a Xlib-less gdk_imlib.)
8368 gdk_color_hash should have only one parameter. Declare
8369 gdk_threads_mutex with GDKVAR.
8371 * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
8374 * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
8375 per pixel, not bits.
8377 * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
8378 Fetch bpp (which means bits-per-pixel here) from another place on
8379 Win32. Accept also depth==32 (which we might get on Win32) with
8382 * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
8383 gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
8384 gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
8385 Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
8386 in the backend-dependent directory, not in the common gdk
8389 * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
8392 Wed Mar 17 05:06:49 1999 Tim Janik <timj@gtk.org>
8394 * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
8395 want to use the Gtk+ devel version (which is true, and yes - even i am
8396 currently working with the 1.2.x branch). so everyone reading this, you
8397 probably want to issue
8398 cvs checkout -r glib-1-2 glib
8400 cvs checkout -r gtk-1-2 gtk+
8401 as your next two comands.
8403 Wed Mar 17 02:49:32 1999 Tim Janik <timj@gtk.org>
8405 * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
8406 gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
8408 * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
8409 file. strongly deprecated the GTK_HAVE_* macros, we provide
8410 GTK_CHECK_VERSION() for people that need to check for certain
8413 * gtk/gtkcompat.h: removed this from CVS.
8414 * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
8415 idea right from the start, it just didn't seem like that back then.
8417 Wed Mar 17 01:46:28 1999 Tim Janik <timj@gtk.org>
8419 * merges from gtk-1-2:
8421 Tue Mar 16 17:43:33 1999 Tim Janik <timj@gtk.org>
8423 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
8424 item factory class has been created.
8425 (gtk_item_factory_parse_rc): likewise.
8428 keep proper references for old_active_menu_item.
8429 (gtk_menu_reparent): unset the usize of the new parent,
8430 so the menu can sanely be size requested and we don't get nasty screen
8431 artefacts upon next reparentation.
8432 (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
8433 enter notify. only synthesize enter notifies if the pointer really is
8434 inside the event window.
8435 (gtk_menu_popdown): use gtk_menu_shell_deselect().
8436 (gtk_menu_popup): move the background setting stuff into
8437 gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
8439 * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
8440 gtk_menu_shell_select_item() to select the new item.
8441 (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
8442 do the right thing for deselection as well.
8444 Sat Mar 15 20:10:33 1999 Tim Janik <timj@gtk.org>
8446 * gtk/gtkwidget.[hc]:
8447 (gtk_widget_accelerators_locked): return whether a widget's accelerators
8450 * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
8451 existing accelerators if the widget's accelerators are locked.
8453 Sat Mar 14 19:44:05 1999 Tim Janik <timj@gtk.org>
8455 * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
8457 * gtk/gtkmenu.c: truely forward key press and key release events to
8458 the menu widget from the toplevel or tearoff window. we can't simply
8459 connect to that, we need to stop further processing of the events as
8462 Sat Mar 13 13:14:17 1999 Tim Janik <timj@gtk.org>
8465 (gtk_menu_key_press): pass event->keyval, event->state to
8466 gtk_accelerator_valid, instead of event->keyval twice.
8467 refuse to install single letter accelerators for menus that use
8468 single letter shortcuts.
8470 * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
8471 gtk_menu_ensure_uline_accel_group().
8473 * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
8474 which will always return an uline accel group, made
8475 gtk_menu_get_uline_accel_group() return NULL if the group isn't
8478 Mon Mar 15 01:03:27 1999 Lars Hamann <lars@gtk.org>
8480 * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
8482 * gtk/gtkclist.c (gtk_clist_column_title_passive):
8483 Leave button sensitive, trap button_press, button_release,
8484 motion_notify, enter_notify and leave_notify events instead.
8485 (gtk_clist_column_title_active): disconnect event handler.
8486 (gtk_clist_drag_data_get): fixed memory leak. Reported by
8487 Guillaume Laurent <glaurent@worldnet.fr>
8489 Wed Mar 10 23:49:55 1999 Lars Hamann <lars@gtk.org>
8491 * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
8492 width/height mixups.
8494 * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
8497 Wed Mar 10 00:11:32 1999 Tim Janik <timj@gtk.org>
8499 * gtk/testgtk.c (create_item_factory): unref the item factory after
8500 window's destruction.
8502 * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
8503 count on the menu shell around the menu item's activation, since the
8504 signal emission may cause menu shell destruction.
8506 * gtk/gtkitemfactory.c:
8507 the previous code leaked one accel group per menu. we use
8508 gtk_menu_get_uline_accel_group() now to fix that, and with that
8509 also create the underline accelerator group of the menus only if
8510 required (i.e. an underline accelerator has been specified).
8511 (gtk_item_factory_construct):
8512 (gtk_item_factory_create_item): removed code that would create an
8513 extra accel group for the menu (and leak references).
8514 (gtk_item_factory_create_item): adapted the underline accelerator
8515 installation code to properly feature gtk_menu_get_uline_accel_group().
8517 * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
8518 menu->accel_group, this may return NULL if the accelerator group
8519 hasn't been set yet.
8520 added gtk_menu_get_uline_accel_group() to retrive the underline
8521 accelerator group of the menu, this will be created on demand
8522 and proper care is taken about its reference count.
8524 * gtk/gtkitemfactory.h:
8525 * gtk/gtkitemfactory.c:
8526 dumped the approach of keeping a widgets by action list on the
8527 factory since the factory<->widget destroy negotiation didn't work
8528 and would be hard to get going at all. instead we keep a list of
8529 GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
8530 persistant throughout a program's life time).
8531 also, i removed the static const gchar *key_* variables, and made
8532 them inline strings (they weren't actually used anyways).
8533 (gtk_item_factory_add_item): update ifactory->items.
8534 (gtk_item_factory_destroy): destroy ifactory->items (and remove
8535 the item factory pointer from the remaining ifactory widgets).
8536 (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
8537 list to find the widget.
8538 (gtk_item_factory_get_item): new function that works around
8539 gtk_item_factory_get_widget() limitations, this function will only
8540 return menu items, even for <Branch> entries.
8542 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
8544 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
8545 font hash table, if we have a GdkFontPrivate entry for this font
8546 already, simply increment its reference count, provided by Olaf Dietsche
8547 <olaf.dietsche+list.gtk@netcologne.de>.
8549 * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
8550 provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
8552 Sun Mar 7 06:13:29 1999 Tim Janik <timj@gtk.org>
8554 * gtk/gtkcontainer.c:
8555 (gtk_container_add_with_args):
8556 (gtk_container_addv):
8557 (gtk_container_add): before adding a child to a conatiner, make sure
8558 it is (default) constructed, this is neccessary because under certain
8559 circumstances the child will get relized and mapped immediatedly, in
8560 which case it has to be constructed already.
8562 Mon Mar 1 17:58:21 1999 Tim Janik <timj@gtk.org>
8564 * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
8565 values > 1 as TRUE also.
8567 1999-03-16 Tor Lillqvist <tml@iki.fi>
8569 * README.win32: New file.
8571 * configure.in: Check for lstat.
8573 * config.h.win32: Add non-definition of HAVE_LSTAT, just for
8576 * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
8578 * gtk/gtk.def: Removed CRs.
8580 * gtk/makefile.msc: Correct include path to Win32 GDK version (in
8583 * gdk/win32/makefile.msc: Correct upwards relative paths.
8585 Mon Mar 15 03:38:34 1999 George Lebl <jirka@5z.com>
8587 * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
8588 gtk_drag_highlight_expose and gtk_drag_highlight_paint since
8589 it was connecting a void function to expose_event and the int
8590 returning function to the draw signal
8592 1999-03-14 Jeff Garzik <jgarzik@pobox.com>
8595 Use correct path to libgmodule.la when ref'ing uninstalled copy
8596 of glib. (Already in stable branch, Bug #417)
8598 1999-03-15 Tor Lillqvist <tml@iki.fi>
8600 Win32 merge and general portability stuff:
8602 * acconfig.h,configure.in: Check for <sys/time.h>.
8604 * gdk/win32: New directory (actually, been there for a while).
8606 * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
8607 NATIVE_WIN32, and use these. Always case fold on Win32. No
8608 backslashed escapes on native Win32.
8610 * gtk/{gtk.def,makefile.msc}: New files.
8612 * gtk/Makefile.am: Add above new files.
8614 * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
8615 instead of <strings.h>.
8617 * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
8618 config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
8619 <unistd.h> appropriately.
8621 * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
8622 Use ABS() (from <glib.h>) instead of abs().
8624 * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
8625 of gtk (and thus glib) headers, so that WIN32 will be
8626 defined. With MS C, include <direct.h> for mkdir prototype.
8628 * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
8629 some casts, needed by MS C.
8631 * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
8634 * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
8635 <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>. Use
8636 G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
8638 * gtk/gtkmain.h: Mark variables for export/import on Win32.
8640 * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
8641 the event is not a hint, or its window is not the slider. Needed
8644 * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
8645 unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
8646 G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
8647 a subdirectory of the Windows directory as gtk system
8648 configuration directory.
8650 * gtk/gtkselection.c: No chunks on Win32.
8652 * gtk/gtksocket.c: Not implemented on Win32.
8654 * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
8656 * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
8658 * gtk/maketypes.awk: Declare variables with a macro that expands to
8659 necessary export/import magic in the case of Win32.
8661 * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
8663 1999-03-13 Raja R Harinath <harinath@cs.umn.edu>
8665 * configure.in (gdk_wc): Move widechar tests from `glib' to here,
8666 since those were meant only for gdki18n.h.
8667 * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
8669 * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
8671 1999-03-13 Tor Lillqvist <tml@iki.fi>
8673 * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
8674 gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
8676 * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
8677 installed) to CFLAGS.
8679 * gdk/Makefile.am: Add rules for gdkconfig.h.
8681 * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
8684 * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
8685 gdkx.h anyway when compiling for X11.
8686 (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
8687 general): Merge in Win32 version.
8689 * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
8690 version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
8691 expansion (if we don't have HAVE_PWD_H), allow for drive
8692 letters. UNC paths (\\server\share\...) are not handled yet. Also,
8693 included code from Craig Setera's port to Win32 (the one that uses
8694 X11, and the cygwin dll), even if it probably will be abandoned.
8696 * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
8697 the user entered one herself. This way one can complete *.h and
8698 don't get matches on any .help files, for instance.
8700 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
8702 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
8703 font hash table, if we have a GdkFontPrivate entry for this font
8704 already, simply increment its reference count, provided by Olaf Dietsche
8705 <olaf.dietsche+list.gtk@netcologne.de>.
8707 * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
8708 provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
8710 1999-03-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
8712 * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
8713 the number of calls to gdk_draw_point() (and thus to X) by
8714 clipping the points by hand.
8716 * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
8718 (gtk_handle_box_paint): Only paint the handle if the expose area
8721 Sun Mar 7 18:46:37 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen)
8723 * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
8725 Sun Mar 7 11:43:34 1999 ape@spacetec.no (Asbjorn Pettersen)
8727 * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
8728 Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
8730 Fri Mar 5 09:12:24 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen)
8732 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
8733 textmode (O_TEXT) for OS/2 version.
8735 Sun Feb 28 16:46:02 1999 Stefan Jeske <stefan@gtk.org>
8737 * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to
8738 GtkSpinButton, "input" and "output", to make the output more flexible.
8739 The user has to provide a mapping between adjustment->value and the
8740 output string (and vice versa, if the spin button is editable).
8741 See testgtk for examples.
8743 Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org>
8745 * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
8748 * configure.in: set gtk+ version to 1.3.0.