]> Pileus Git - ~andy/gtk/blob - ChangeLog
fix assertion failure by creating the line data, but not validating it at
[~andy/gtk] / ChangeLog
1 2002-01-25  Havoc Pennington  <hp@redhat.com>
2
3         * gtk/gtktextbtree.c (_gtk_text_btree_delete): fix assertion
4         failure by creating the line data, but not validating it at this
5         stage. Also, remove old code related to the "bogus newline" mess
6         that removed all tags from the last char in the buffer if you
7         tried to delete it.
8         (_gtk_text_line_data_new): put this here and prepend underscore,
9         remove from gtktextlayout.c
10
11 Mon Jan 28 19:57:39 2002  Owen Taylor  <otaylor@redhat.com>
12
13         * modules/input/imhangul.c modules/input/imhangul-defs.h
14         po/POTFILES.in. Add port of Emacs korean-hangul input
15         method from Yusuke Tabata (#67665)
16
17 Mon Jan 28 18:25:10 2002  Owen Taylor  <otaylor@redhat.com>
18
19         * gtk/gtkentry.c (gtk_entry_draw_frame): Paint shadow
20         before focus to give theme engines a bit morea
21         flexibility. (#69857)
22
23 Mon Jan 28 16:23:20 2002  Jonathan Blandford  <jrb@redhat.com>
24
25         * gtk/gtktreeview.c (gtk_tree_view_dy_to_top_row): no longer
26         g_assert.
27
28 2002-01-28  Jon Trowbridge  <trow@gnu.org>
29
30         * gtk/gtktreeview.c (gtk_tree_view_set_model): When setting the
31         GtkTreeView's model, set prelight_node, prelight_tree,
32         button_pressed_node and button_pressed_tree to NULL. (#69603)
33
34 2002-01-28 Bill Haneman <bill.haneman@sun.com>
35
36         * gtk/gtkstyle.c:
37         Make sure that the default expanders are drawn with
38         an outline thickness appropriate to the size of the
39         expanders (RINT expander_size/7).
40         Added static gtk_style_draw_polygon_with_gc(), to
41         reduce code duplication.
42
43         * gtk/gtktreeview.c: (gtk_tree_view_bin_expose):
44         Use focus_line_thickness when drawing focus lines.
45
46         * gtk/gtktreeviewcolumn.c:(gtk_tree_view_column_cell_get_size):
47         Adjust requested width to include focus line thickness.
48         (gtk_tree_view_column_cell_render_or_focus):
49         Calculate a focus line rectangle which gets larger as the focus
50         line thickness increases, to avoid overwriting cell content.
51         Render left-aligned content at x+focus_line_width.
52         (gtk_tree_view_column_cell_draw_focus):
53         Don't draw a focus line around an editable text cell, since the
54         text caret already indicates keyboard focus.
55         Pass a GtkStateType appropriate to the focussed cell's state
56         to gtk_paint_focus.
57
58 Mon Jan 28 14:44:40 2002  Jonathan Blandford  <jrb@redhat.com>
59
60         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): Only
61         activate/edit the row if shift is not pressed, #69248
62
63 2002-01-28  Anders Carlsson  <andersca@gnu.org>
64
65         * gtk/gtkcurve.c (gtk_curve_set_vector): Fix build.
66
67 2002-01-28  Matthias Clasen  <matthiasc@poet.de>
68
69         * gtk/{gtkalignment.c,gtkaspectframe.c,gtkbutton.c,
70         gtkcellrenderer.c,gtkcellrendererpixbuf.c,gtkcombo.c,
71         gtkcontainer.c,gtkcurve.c,gtkframe.c,gtklabel.c,
72         gtkmessagedialog.c,gtknotebook.c,gtkspinbutton.c,gtktable.c,
73         gtktext.c,gtktextview.c,gtktreeview.c,gtktreeviewcolumn.c,
74         gtkviewport.c,gtkwidget.c}: General property notification 
75         cleanup. (#69066)
76
77 2002-01-28  Anders Carlsson  <andersca@gnu.org>
78
79         * gtk/gtkaccelgroup.c (gtk_accel_groups_activate): & with the
80         default mod mask so accels work when numlock is on.
81
82 Sun Jan 27 23:23:23 2002  Kristian Rietveld  <kris@gtk.org>
83
84         * gtk/gtkrbtree.[ch]: add _gtk_rbtree_mark_invalid (my previous
85         commit already needed this ...)
86
87 Sun Jan 27 22:13:02 2002  Kristian Rietveld  <kris@gtk.org>
88
89         Fix for bug #69586
90
91         * gtk/gtktreeprivate.h: get rid of tab_offset, introduce
92         expander_size
93
94         * gtk/gtktreeview.c: get rid of ->priv->tab_offset, introduce
95         expander_size caching (from style), fix CELL_HEIGHT macro,
96         use MAX ("RBNODE_HEIGHT", expander_size) (differs per case) for
97         row height calculation, added style_set callback
98
99 2002-01-27  Anders Carlsson  <andersca@gnu.org>
100
101         * gtk/gtklabel.c (gtk_label_create_window): Set the cursor to
102         GDK_XTERM.
103
104         * gtk/gtktextview.h (struct _GtkTextView): add mouse_cursor_obscured.
105
106         * gtk/gtkentry.h (struct _GtkEntry): Add mouse_cursor_obscured.
107
108         * gtk/gtktextview.c (set_invisible_cursor): New function.
109         (gtk_text_view_obscure_mouse_cursor): Likewise.
110         (gtk_text_view_key_press_event): Call obscure_cursor if text 
111         has been inserted.
112         (gtk_text_view_motion_event): Restore the mouse cursor.
113
114         * gtk/gtkentry.c (gtk_entry_realize): Add GDK_POINTER_MOTION_MASK.
115         (set_invisible_cursor): New function.
116         (gtk_entry_obscure_mouse_cursor): Likewise.
117         (gtk_entry_key_press): call obscure_cursor if text has been inserted.
118         (gtk_entry_motion_notify): Restore the mouse cursor.
119
120 2002-01-27  Sven Neumann  <sven@gimp.org>
121
122         * gtk/gtkstyle.c (sanitize_size): removed unused return value.
123
124 Sat Jan 26 19:27:23 2002  Owen Taylor  <otaylor@redhat.com>
125
126         * gtk/gtksocket.c (gtk_socket_grab_notify): Don't
127         send MODALITY_ON/OFF if socket->same_app (More fixes for #69735)
128
129 Sat Jan 26 19:04:37 2002  Owen Taylor  <otaylor@redhat.com>
130
131         * gtk/gtkmain.c (check_is_grabbed): Return FALSE not true
132         in the grab_widget == NULL case. (Bug reported by 
133         Padraig O'Briain, #69735)
134
135         * gtk/gtkplug.c (handle_modality_on): Realize the modality
136         window so gtk_widget_event() doesn't complain :-((((.
137
138 2002-01-25  Federico Mena Quintero  <federico@ximian.com>
139
140         Merge from gdk-pixbuf stable.
141
142         * gdk/gdkpixbuf-drawable.c (rgb565msb): Fixed the endianness
143         conversion --- swap the individual 16 bit values instead of taking
144         everying as a 32 bit value.
145         (rgb565lsb): Likewise.
146         (rgb555lsb): Likewise.
147         (rgb555msb): Likewise.
148
149 2002-01-25  Alex Larsson  <alexl@redhat.com>
150
151         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_drawable_impl_fb_class_init):
152         Implement copy_to_image instead of get_image
153         
154         * gdk/linux-fb/gdkimage-fb.c:
155         Implement _gdk_image_new_for_depth, _gdk_windowing_get_bits_for_depth and
156         _gdk_fb_copy_to_image.
157         Based in part on patch from Mathieu Lacage <mathieu_lacage@realmagic.fr>
158
159         * gdk/linux-fb/gdkmain-fb.c:
160         Make ENABLE_FB_MANAGER region larger.
161
162         * gdk/linux-fb/gdkprivate-fb.h:
163         Change _gdk_fb_get_image to _gdk_fb_copy_to_image.
164
165 2002-01-25  Sven Neumann  <sven@gimp.org>
166
167         * gtk/gtkwindow.c (gtk_window_get_size): changed the comment so
168         that gtk-doc doesn't get confused.
169
170 Fri Jan 25 14:03:36 2002  Tim Janik  <timj@gtk.org>
171
172         * gtk/gtkspinbutton.c (gtk_spin_button_draw_arrow): assert
173         that the passed in arrow is always _UP or _DOWN, this catches
174         false invocations which lead to drawing artefacts.
175         (start_spinning): likewise, i.e. sanity check the passed in arrow.
176         (gtk_spin_button_button_release): fix arrow redrawing.
177         (gtk_spin_button_button_press): must set click_child for
178         button3 even if we don't take spinning action right away.
179
180         * gtk/gtkspinbutton.h (struct _GtkSpinButton): document
181         valid values for click_child.
182
183 Thu Jan 24 23:03:24 2002  Kristian Rietveld  <kris@gtk.org>
184
185         * gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): update docs,
186         return current FALSE if x is smaller than the current visible area,
187         not than the requested area, don't correct y coordinate,
188         TREE_WINDOW_Y_TO_RBTREE_Y will do that. Fixes #67477.
189
190 Thu Jan 24 15:41:08 2002  Jonathan Blandford  <jrb@redhat.com>
191
192         * gtk/gtktreeview.c
193          (gtk_tree_view_motion_draw_column_motion_arrow): fix column
194          reordering fully.
195          (gtk_tree_view_size_allocate): fix evil bug.
196
197 Thu Jan 24 11:53:19 2002  Owen Taylor  <otaylor@redhat.com>
198
199         * gtk/gtktreeview.c (gtk_tree_view_destroy): Don't clear
200         the model until we clean up all the other objects
201         that might refer to the object.
202
203 2002-01-24  Mark McLoughlin  <mark@skynet.ie>
204
205         * gtk/gtkaccessible.h: include gtk/gtkwidget.h
206
207 Wed Jan 23 20:28:59 2002  Owen Taylor  <otaylor@redhat.com>
208
209         * gtk/gtknotebook.c (gtk_notebook_draw_arrow): 
210         Use insensitive state for insensitive arrows, not
211         just an "etched state". (#67172, Adrian Custer)
212
213 2002-01-23  Manish Singh  <yosh@gimp.org>
214
215         * gtk/gtkentry.c (gtk_entry_set_text): use a variable that's actually
216         been declared.
217
218 2002-01-23  Damon Chaplin  <damon@ximian.com>
219
220         * configure.in (gtk_doc_min_version): set minimum gtk-doc version to
221         0.9, since we need to use the new --type-init-func argument for
222         gtkdoc-scangobj.
223
224 2002-01-23  Matthias Clasen  <matthiasc@poet.de>
225
226         * gtk/gtkentry.c, gtk/gtkwidget.c: Remove excessive
227         g_return_if_fail() calls. (#57615)
228
229         * gtk/gtkitemfactory.c (gtk_item_factory_delete_entries): Make
230         it work for paths with underline accelerators. (#69247)
231
232 Wed Jan 23 15:12:16 2002  Owen Taylor  <otaylor@redhat.com>
233
234         * gtk/gtkspinbutton.c (gtk_spin_button_state_changed): 
235         Stop spinning if widget becomes insensitive. (#56248)
236
237 Wed Jan 23 14:44:12 2002  Owen Taylor  <otaylor@redhat.com>
238
239         * gtk/gtkspinbutton.c (EPSILON): Decreate value since
240         we now use doubles.
241
242 Tue Jan 22 16:58:37 2002  Jonathan Blandford  <jrb@redhat.com>
243
244         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): Fix sizing bug
245         I introduced accidentally, #69358
246
247 2002-01-22 Padraig O'Briain <padraig.obriain@sun.com>
248
249         * gtk/gtktreestore.c (gtk_tree_store_iter_children):
250         Update last change to prevent core dump
251
252 Mon Jan 21 01:21:54 2002  Kristian Rietveld  <kris@gtk.org>
253
254         * gtk/gtktreestore.c: add some more stamp checks (pointed out
255         by Anders Carlsson)
256
257         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): don't
258         assume _row_changed will insert sort (because _row_changed doesn't
259         need to follow this signal), so apply insert sort here
260         (gtk_tree_model_sort_level_find_insert): header doesn't need to be
261         set here, so use a return instead of g_return_val_if_fail.
262
263 Mon Jan 21 18:28:17 2002  Jonathan Blandford  <jrb@redhat.com>
264
265         * gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): Update
266         top_row.  Remove extraneous print statements.
267
268 2002-01-21  Matthias Clasen  <matthiasc@poet.de>
269
270         * gtk/gtkitemfactory.c (gtk_item_factory_popup, 
271         gtk_item_factory_popup_with_data): Document allowed values
272         for ifactory.
273
274         * gtk/gtkitemfactory.c (gtk_item_factory_delete_entry): Make 
275         it work for paths with underline accelerators.
276
277 Fri Jan 18 16:31:21 2002  Jonathan Blandford  <jrb@redhat.com>
278
279         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): only resize the
280         window.
281
282 Mon Jan 21 11:56:31 2002  Owen Taylor  <otaylor@redhat.com>
283
284         * gtk/gtkentry.c (gtk_entry_real_activate): Trap the 
285         case where there is no default widget and the entry
286         is the focus widget, since this also causes infinite
287         recursion. (#69158)
288
289 Mon Jan 21 11:46:39 2002  Owen Taylor  <otaylor@redhat.com>
290
291         * gdk/gdk.c (gdk_init_check): Set the fallback program class here,
292         rather than lazilygdk_get_program_class(), since we don't want
293         -name to override it. (#69123, Ryan Lovett)
294
295 Mon Jan 21 10:29:45 2002  Owen Taylor  <otaylor@redhat.com>
296
297         * gdk/gdk.c: Fix wrong types for command line arguments 
298         (#69124, Ryan Lovett)
299
300         * gdk/gdk.c (gdk_arg_context_parse): Fix bug in parsing
301         parsing '--arg VALUE'.
302
303         * gdk/gdk.c: Remove unused variable gdk_error_trap_free_list.
304
305 2002-01-21  Havoc Pennington  <hp@pobox.com>
306
307         * gdk/gdkwindow.c (gdk_window_add_filter): mention that window 
308         arg can be NULL
309
310 Sat Jan 19 20:49:41 2002  Kristian Rietveld  <kris@gtk.org>
311
312         * demos/gtk-demo/editable_cells.c: fix a load of open line ends
313         (cell_edited): modified patch from German Poo Caaman~o
314         to fix up old_text declaration and free the memory
315         (do_editable_cells): unref the model after creating the treeview
316
317         * demos/gtk-demo/list_store.c: fix a load of open line ends,
318         (add_columns): set the sort column id, so we can sort
319
320         * demos/gtk-demo/tree_store.c: fix a load of open line ends,
321         (do_tree_store): unref the model after creating the treeview
322
323 2002-01-19  Havoc Pennington  <hp@pobox.com>
324
325         * gtk/gtkwindow.c: link to new X11 section in a lot of places when
326         mentioning the window manager.
327
328         * gtk/gtkwidget.c (gtk_widget_hide_on_delete): don't mention
329         window manager since we're portable.
330
331 Sat Jan 19 08:47:41 2002  Jeff Garzik  <jgarzik@mandrakesoft.com>
332
333         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
334         Wrap case values in GPOINTER_TO_UINT().  Fixes build with gcc 3.x.
335
336         * gtk/gtkmain.c:  Include sys/types.h if G_OS_UNIX.
337         Fixes build with gcc 3.x and -ansi.
338
339 Fri Jan 18 23:01:37 2002  Owen Taylor  <otaylor@redhat.com>
340
341         * gtk/gtkrc.c (gtk_rc_parse_style): Fix problems when
342         an engine declaration occurs in a reopened style, and
343         g_free() of objects when errors occur.
344
345 2002-01-18  Matthias Clasen  <matthiasc@poet.de>
346
347         * gtk/gtkitemfactory.c (gtk_item_factory_get_widget_by_action):
348         Clarify documentation. (#69026)
349
350         * gtk/gtkprogressbar.c (gtk_progress_bar_size_request): Fix 
351         missing initialization of adjustment. (#69025)
352
353 2002-01-17  Raja R Harinath  <harinath@cs.umn.edu>
354
355         Simplify Makefiles. 
356         <URL: http://bugzilla.gnome.org/show_bug.cgi?id=68969>
357         * gdk/Makefile.am: Remove use of automake conditionals to pick
358         library to build.
359         * gtk/Makefile.am: Likewise.
360         
361         * gdk/Makefile.am (LDFLAGS): Use $(libdir), not @prefix@/lib.
362         * gtk/Makefile.am (LDFLAGS): Likewise.
363
364 Thu Jan 17 20:13:14 2002  Owen Taylor  <otaylor@redhat.com>
365
366         * gtk/gtknotebook.c (gtk_notebook_redraw_tabs): Fix
367         missing allocation.x/y offsets. (#68962, Jacob
368         Berkman)
369
370         * gtk/gtknotebook.c (gtk_notebook_size_allocate):
371         Queue a redraw on the entire widget if we hide
372         the last page or show the first. (Also #68962)
373         
374 2002-01-17  Havoc Pennington  <hp@redhat.com>
375
376         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): change
377         GTK_MOVEMENT_PARAGRAPHS to go to start/end of paragraph before it
378         starts to go up/down paragraphs. This makes Ctrl+Up/Ctrl+Down work
379         as in the keynav spec, though it makes the interpretation of
380         GTK_MOVEMENT_PARAGRAPHS different from the interpretation of some
381         of the other GTK_MOVEMENT_ thingies, maybe, as if that enum makes
382         any sense anyhow.
383
384 Thu Jan 17 16:34:55 2002  Jonathan Blandford  <jrb@redhat.com>
385
386         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): For
387         some reason, I was activating a row while just selecting it.
388         Reported by andersca.
389         (gtk_tree_view_size_request): add a
390         validate_rows_handler to give us a rough width of the widget.
391
392         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
393         Queue a resize here just in case.  It's needed in over half the
394         cases, and I don't want to do a diff to figure out exactly when
395         it's needed.
396
397 2002-01-17  Matthias Clasen  <matthiasc@poet.de>
398
399         * gtk/gtkinputdialog.c,
400         gtk/gtkcolorsel.c, gtk/gtkfilesel.c, gtk/gtkfontsel.c:
401         Mark children as composite. (#66360)
402
403         * gtk/gtkwidget.c (gtk_widget_push_composite_child): Explain
404         composite children some more. (#66360)
405
406 2002-01-17  Havoc Pennington  <hp@redhat.com>
407
408         * gtk/gtktextlayout.c (_gtk_text_layout_get_line_xrange): new
409         function (which I then decided not to use but I think it's needed
410         to fix #68963
411
412         * gtk/gtktextview.c: add page_horizontally action signal and
413         implement Ctrl+PgUp, Ctrl+PgDown based on patch from Padraig, 
414         hackily modified to avoid adding GTK_MOVEMENT_ API. Part of 
415         #53934
416
417         * gtk/gtkmarshalers.list: add NONE:INT,BOOL
418
419 Thu Jan 17 17:02:38 2002  Owen Taylor  <otaylor@redhat.com>
420
421         * gtk/gtkwidget.c (gtk_widget_real_unrealize): Call
422         gtk_selection_remove_all() here, not in destroy/
423         finalize. (#66636, Sergey Vlasov)
424
425         * gtk/gtkselection.c (gtk_selection_request): Fix
426         reentrancy problem with multiple conversions.
427
428         * gtk/gtkselection.c (gtk_selection_remove_all): 
429         Don't remove incrs, we don't need the widget for
430         maintain the incr.
431
432         * gtk/gtkselection.c (struct _GtkIncrInfo): Remove
433         the widget field from here, we don't need it.
434
435 Thu Jan 17 13:08:34 2002  Owen Taylor  <otaylor@redhat.com>
436
437         * gdk/x11/gdkmain-x11.c (gdk_error_trap_push): Move
438         here, and save/restore the X error handler to allow
439         people using GTK+ to set the X error handler to something
440         custom without disturbing the operation of GDK.
441
442         * gdk/linux-fb/gdkmain-fb.c (gdk_error_trap_push) 
443         * gdk/win32/gdkmain-win32.c (gdk_error_trap_pop): Add
444         dummy implementations.
445
446         * gdk/x11/gdkmain-x11.c gdk/x11/gdkevents-x11.c 
447         gdk/x11/gdkdnd-x11.c: Use gdk_error_trap_push()/pop()
448         for all error trapping.
449
450         * gdk/x11/gdkdnd-x11.c: Remove '#if 0' code.
451
452         * gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Fix
453         problem where we would add the results anyways,
454         and then add it again if no error occurred, and problem
455         where we could leave _gdk_error_warnings() unset.
456
457 Wed Jan 16 20:28:38 2002  Owen Taylor  <otaylor@redhat.com>
458
459         * gtk/gtkfilesel.c: Fix "deleting" filename by adding
460         another boolean parameter to file_selection_populate() -
461         whether to clear the entry. Also, never fill in the
462         entry when the user clicks on something in the 
463         directory list. (#6791, Reported by Jos Dehaes and many,
464         many, many others.)
465
466 2002-01-16  Havoc Pennington  <hp@redhat.com>
467
468         * gtk/gtktextview.c (gtk_text_view_scroll_pages): update
469         cursor_y_pos with clamped delta rather than theoretical delta
470         (#68788). Also, if we can't page up/down further then jump 
471         to top/bottom of the document.
472
473 Wed Jan 16 19:33:41 2002  Owen Taylor  <otaylor@redhat.com>
474
475         * gtk/gtkfilesel.c (gtk_file_selection_map): Refresh
476         the dialog on map. (#52877, inspired by request from
477         Murray Cumming)
478
479 Wed Jan 16 19:23:04 2002  Owen Taylor  <otaylor@redhat.com>
480
481         * gtk/gtkbindings.c (gtk_binding_entry_activate): 
482         Support "optional" bindings. If a binding signal
483         has a boolean return value, and returns FALSE it
484         is as if it didn't exist all.
485
486         * gtk/gtkbindings.c (binding_compose_params): Switch
487         over to GValue.
488
489         * gtk/gtknotebook.[ch]: Make the select_page() and
490         change_current_page() signals only take effect when
491         the focus is on the tab area so that key presses
492         in children pass up to the toplevel correctly.
493
494 Wed Jan 16 12:16:37 2002  Owen Taylor  <otaylor@redhat.com>
495
496         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Fix 
497         calculation error in the (shouldn't happen) case where
498         option_menu->height < child_requisition.height. (Patch
499         from Jacob Berkman, #66969)
500
501 2002-01-15  Matthias Clasen  <matthiasc@poet.de>
502
503         * gtk/gtkenums.h (GtkMatchType): Deprecate. (#68183)
504
505         * gtk/gtkscale.h (gtk_scale_value_width): Remove useless 
506         compatibility macro. (#67730) 
507
508 Wed Jan 16 10:54:38 2002  Owen Taylor  <otaylor@redhat.com>
509
510         * configure.in: Fix typo in --help output.
511         (Arnaud Charlet).
512
513 Wed Jan 16 10:18:42 2002  Owen Taylor  <otaylor@redhat.com>
514
515         * gtk/stock-icons/Makefile.am (EXTRA_DIST): Add 
516         gtkstockpixbufs.h.
517
518         * configure.in: Make TIFF, JPEG, PNG loaders mandatory
519         unless you configure with --without-libtiff, etc.
520         (#54045, Brian Cameron)
521
522 2002-01-16  Padraig O'Briain <padraig.obriain@sun.com>
523
524         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
525         Avoid unexpected warning message when navigating menu (#68517)
526
527 2002-01-15  Jody Goldberg <jody@gnome.org>
528
529         * gtk/gtklayout.c (gtk_layout_realize) : It is possible that a
530         GtkLayout may have been scrolled _before_ it was realized.
531
532 Tue Jan 15 18:10:24 2002  Owen Taylor  <otaylor@redhat.com>
533
534         * gtk/gtkspinbutton.c (gtk_spin_button_grab_notify): Stop
535         the timer on destroy, or when we are notified that we are
536         shadowed by a modal dialog.
537
538         * gtk/gtkspinbutton.c: Remove explicit gtk_grab_add()/remove() -
539         not needed any more.
540
541         * gtk/gtkmain.c (gtk_grab_notify): Fix problem where notifications
542         weren't sent out for the default grab group.
543
544         * gtk/gtkmain.c (gtk_grab_notify): Fix notification of widgets that
545         were getting events because they were part of the previous grab.
546
547 Tue Jan 15 12:23:33 2002  Owen Taylor  <otaylor@redhat.com>
548
549         * gtk/gtknotebook.c (gtk_notebook_mnemonic_activate_switch_page): 
550         focus the activated tab, not the page. (#53612)
551
552         * gtk/gtknotebook.c (gtk_notebook_set_focus_child): Track
553         the last focus descendant of the page.
554
555         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): If the focus
556         was on the previous page, move it to the last focused widget /
557         first element on the new page, if possible, or if not, to the 
558         notebook itself. (#68224, reported by Jonathan Blandford)
559
560         * gtk/gtknotebook.c (focus_tabs_in): Don't focus tabs
561         tabs aren't visible. (#65462, Damon Chaplin, fixed based 
562         on patch from Anders Carlsson)
563
564 2002-01-15            Vitaly Tishkov       <tvv@sparc.spb.su>
565
566         * gtk/gtkstyle.c
567         a misprint in documentation for gtk_style_render_icon () is fixed
568
569 Mon Jan 14 23:21:47 2002  Tim Janik  <timj@gtk.org>
570
571         * gtk/gtkmenuitem.c (gtk_menu_item_map): map event_window after
572         mapping child, so we don't loose events.
573
574 2002-01-15  Sven Neumann  <sven@gimp.org>
575
576         * gtk/gtkaccellabel.h
577         * gtk/gtkitemfactory.c: fixed documentation by syncing the parameter
578         names used in headers and code.
579
580 2002-01-14  jacob berkman  <jacob@ximian.com>
581
582         * gtk/gtkrc.c (gtk_rc_get_im_module_path): close a comment block
583
584 Tue Jan 15 01:13:51 2002  Kristian Rietveld  <kris@gtk.org>
585
586         * gtk/gtktreemodelsort.c: fix a load of open line ends,
587         (gtk_tree_model_sort_set_model): only free root level if it's
588         !NULL
589
590 2002-01-14  Matthias Clasen  <matthiasc@poet.de>
591
592         * gtk/gtkoldeditable.c, gtk/gtkrc.c, 
593         gtk/gtkstyle.c: Documentation additions.
594
595         * gtk/gtkmenu.c (gtk_menu_set_accel_path),
596         gtk/gtkmenuitem.c (gtk_menu_item_set_accel_path), 
597         gtk/gtkwidget.c (gtk_widget_add_accelerator): Typo and markup fixes.
598
599         * gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): Document.
600
601         * gtk/gtkaccelmap.c (gtk_accel_map_add_filter): Explain intended use.
602
603 Mon Jan 14 17:14:13 2002  Owen Taylor  <otaylor@redhat.com>
604
605         * gdk/x11/gdkselection-x11.c (sanitize_utf8): Don't
606         mangle sequences of consecutive \n or \r.
607
608 Mon Jan 14 17:42:28 2002  Jonathan Blandford  <jrb@redhat.com>
609
610         * gtk/gtktreeview.c (gtk_tree_view_stop_editing): allow cancel to
611         happen.
612
613         * gtk/gtktreeview.c (install_presize_handler): only install the
614         handler if we're realized, #68056
615
616 Mon Jan 14 16:35:58 2002  Owen Taylor  <otaylor@redhat.com>
617
618         * gtk/gtkwindow.c (gtk_window_move_resize): Unset 
619         initial_pos_set after the first configure request.
620
621 2002-01-13  Jody Goldberg <jody@gnome.org>
622
623         * gtk/gtktexttag.c (get_color_arg) : set_boxed will copy the color
624           and will use a mem_chunk to do it.  Avoid an unnecessary copy, a
625           leak, and confusion.
626
627 Sun Jan 13 23:23:22 2002  Owen Taylor  <otaylor@redhat.com>
628
629         * gtk/gtkwindow.c (gtk_window_compute_hints): Fix problem where
630         widget->requisition was being used instead of
631         gtk_widget_get_child_requisition (), causing geometry widgets
632         with usizes to misbehave.
633
634 2002-01-14  Sven Neumann  <sven@gimp.org>
635
636         * gtk/gtkrc.c: g_getenv() returns a const string.
637
638 2002-01-14  Hasbullah Bin Pit  <sebol@ikhlas.com>
639
640         * configure.in: Added ms at ALL_LINGUAS.
641         * po/ms.po: Added Malay Translation.
642
643 2002-01-14  Matthias Clasen  <matthiasc@poet.de>
644
645         * gtk/gtkitemfactory.c: Documentation.
646
647 2002-01-13  Sven Neumann  <sven@gimp.org>
648
649         * gdk/gdkwindow.c: documentation cleanups.
650
651 Sun Jan 13 01:15:45 2002  Kristian Rietveld  <kris@gtk.org>
652
653         * gtk/gtktreemodelsort.c: various cleanups,
654         (get_child_iter_from_elt): removed,
655         (gtk_tree_model_sort_elt_get_path): rewritten to be a lot cleaner
656         and especially faster,
657         (gtk_tree_model_convert_iter_to_child_iter): use
658         gtk_tree_model_sort_elt_get_path
659
660 Sat Jan 12 16:57:31 2002  Kristian Rietveld  <kris@gtk.org>
661
662         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
663         revert Owen's change (using a strdupped string as object data), so
664         the interactive search works again
665
666 2002-01-11  Havoc Pennington  <hp@pobox.com>
667
668         * gtk/gtklabel.c: put in more links to Pango markup format docs
669         (gtk_label_set_justify): mention gtk_misc_set_alignment
670
671 2002-01-12  Tor Lillqvist  <tml@iki.fi>
672
673         Fixes contributed by Archaeopteryx Software: This is a first small
674         part of their changes. Will commit more later.
675         
676         * gdk/win32/*.c: Add some more checks for failed GDI calls. If a
677         call fails, don't use bogus values.
678
679          gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): Plug
680         memory leak: g_free() the AND and XOR bitmaps after use.
681         (_gdk_cursor_destroy): If we are destroying the current Windows
682         cursor, set the Windows cursor to none first.
683
684         * gdk/win32/gdkgc-win32.c (predraw_set_foreground): Delete the old
685         brush that was in the DC, like the win32-procution branch does. I
686         guess this plugs a resource leak? With the HDC cache, the old
687         brush might be something we created ourselves, and not a stock
688         brush. And it doesn't do any harm to call DeleteObject on stock
689         brushes.
690
691         * gdk/win32/gdkwindow-win32.c (gdk_window_impl_win32_finalize): If
692         the window has a cursor which is the current Windows cursor,
693         before destroying it set the current Windows cursor to none.
694         (gdk_window_set_cursor): Also here, if destroying the current
695         Windows cursor, set the current Windows cursor to none first.
696         (gdk_window_get_pointer): Revamp logic.
697         
698 2002-01-10  jacob berkman  <jacob@ximian.com>
699
700         * gtk/gtkwidget.c (gtk_widget_add_events): actually iterate
701         through the list rather than infinitely loop
702
703 2002-01-08  Matthias Clasen  <matthiasc@poet.de>
704
705         * gtk/gtkwidget.c (gtk_widget_set_style_recurse): Rename to
706         reset_rc_styles_recurse(). (#68084)
707
708 2002-01-10            Vitaly Tishkov       <tvv@sparc.spb.su>
709         * gtk/gtkimage.c
710         * gtk/gtkimcontext.c
711         * gtk/gtktreemodel.c
712         * gtk/gtktreemodelsort.c
713         * gtk/gtkwindow.c
714         fix docs        
715
716 Wed Jan  9 20:56:42 2002  Jonathan Blandford  <jrb@redhat.com>
717
718         * gdk/x11/gdkkeys-x11.c (get_xkb): get the types as well as the
719         symbols because we need them in MyEnhancedXkbTranslateKeyCode.
720
721 2002-01-10  Tor Lillqvist  <tml@iki.fi>
722
723         Apply the same fixes and improvements as to the
724         gtk-1-3-win32-production branch: Bug fixes and cleanup of
725         selection and DND functionality. Still doesn't work as well as the
726         win32-production branch, though, but getting closer.
727
728         After this, need to add Archaeopteryx Software's OLE2 DND support.
729
730         * gdk/win32/gdkselection-win32.c (gdk_selection_owner_set,
731         gdk_selection_send_notify, generate_selection_notify): Don't use
732         SendMessage() to generate events for the same app, instead use
733         gdk_event_put().
734
735         * gdk/win32/gdkprivate-win32.h
736         * gdk/win32/gdkglobals-win32.c
737         * gdk/win32/gdkmain-win32.c
738         * gdk/win32/gdkevents-win32.c: Thus, remove declaration, definition,
739         initialisation and handling of gdk_selection_notify_msg,
740         gdk_selection_request_msg and gdk_selection_clear_msg. 
741
742         * gdk/win32/gdkselection-win32.c (gdk_text_property_to_text_list,
743         gdk_free_text_list, gdk_string_to_compound_text,
744         gdk_free_compound_text): Implement trivially, witrh a text_list
745         always having a single element, and a compound text always
746         consisting of just a single (UTF-8!) string. Let's see how well
747         this works.
748
749         * gdk/win32/gdkselection-win32.c (gdk_selection_convert): Fix
750         non-ASCII paste from the clipboard: Try getting the same formats
751         from the Windows clipboard that gdk_property_change() puts there:
752         CF_UNICODETEXT, UTF8_STRING or CF_TEXT+CF_LOCALE.
753
754         * gdk/win32/gdkproperty-win32.c (gdk_property_change): When
755         storing text on the clipboard, handle non-ASCII text
756         correctly. The logic is as follows:
757
758         If we have only ASCII characters, use CF_TEXT.
759
760         Else, if we are on NT, use CF_UNICODETEXT.
761
762         Else (we are on Win9x), if all the characters are present in the
763         code page of some installed locale, use CF_TEXT and also set
764         CF_LOCALE to that locale.
765
766         Else (still on Win9x) store as RTF. We use a very simple RTF
767         string, just the text, no fonts or other crap, with the non-ASCII
768         characters as Unicode \uN keywords. Additionally, also store the
769         UTF-8 string as such, under the format "UTF8_STRING", so that GDK
770         can also paste from the Clipboard what it has copied there. (Thus
771         no need to implement any RTF parser.)
772         
773         (find_common_locale): New function, implements the search for a
774         locale for case 3 above.
775
776         * gdk/win32/gdkglobals-win32.c: New global variables
777         compound_text, text_uri_list, utf8_string, cf_rtf and
778         cf_utf8_string.
779
780         * gdk/win32/gdkim-win32.c (_gdk_ucs2_to_utf8): New function,
781         converts from a wchar_t string to UTF-8.
782         (_gdk_utf8_to_ucs2): Rename from _gdk_win32_nmbstowchar_ts.
783         (_gdk_utf8_to_wcs): Rename from gdk_nmbstowchar_ts.
784
785         * gdk/win32/gdkevents-win32.c (build_keypress_event): Use
786         _gdk_ucs2_to_utf8().
787
788         * gdk/win32/gdkselection-win32.c: Remove some unnecessary logging.
789
790         * gdk/win32/gdkdnd-win32.c: Plug memory leaks, the
791         gdk_drag_context_ref() was called unnecessarily in a couple of
792         places, meaning drag contexts were never freed. The same memory
793         leaks seem to be present in gdk/linux-fb/gdkselection-fb.c, BTW.
794
795         (gdk_drop_reply): For WIN32_DROPFILES drops, free the temporarily
796         stored file list.
797
798         * gdk/win32/gdkselection-win32.c: Clarify the use of the
799         sel_prop_table. Now it is used only for storing the GDK_SELECTION
800         "properties".
801
802         The file names dropped with WM_DROPFILES -style DND is stored
803         temporarily (between the drop and the target picking them up) in a
804         separate place.
805
806         Have a separate hash table to map selection atoms to owner
807         windows. This used to be quite mixed up.
808
809         (_gdk_dropfiles_store): New function, to store the dropped file
810         list for the drop target to possibly fetch, and clear it
811         afterwards, from gdk_drop_reply().
812
813         (gdk_selection_owner_get): Much simplified now.
814
815 2002-01-09  jacob berkman  <jacob@ximian.com>
816
817         * gtk/gtklayout.c (gtk_layout_style_set): set the background of
818         our bin window also (fixes #58957)
819
820 Wed Jan  9 19:10:07 2002  Jonathan Blandford  <jrb@redhat.com>
821
822         * gtk/gtktreeselection.c
823         (_gtk_tree_selection_internal_select_node): Now we test we can
824         unselect nodes before selecting new ones.
825         (gtk_tree_selection_real_select_node): be careful comparing booleans.
826
827 Wed Jan  9 21:31:44 2002  Kristian Rietveld  <kris@gtk.org>
828
829         * gtk/gtkliststore.c (gtk_list_store_sort): pass NULL to
830         gtk_tree_model_rows_reordered and not an iter with user_data
831         set to NULL (which is an invalid liststore iter, so
832         iter_n_children failed, etc)
833
834 2002-01-09  Sven Neumann  <sven@gimp.org>
835
836         * tests/prop-editor.c: declared internal functions static.
837         
838 Wed Jan  9 11:13:12 2002  Owen Taylor  <otaylor@redhat.com>
839
840         * gtk/gtkmenuitem.c (_gtk_menu_item_refresh_accel_path): 
841         Fix problem with menus without accel groups, such as the
842         menus for option menus.
843
844         * gtk/gtkpaned.c (gtk_paned_expose): Only conditionalize
845         drawing of handle on whether both children are visible,
846         not the drawing of the other child!. (#68325, Diego Gonzalez)
847
848 Wed Jan  9 10:20:16 2002  Owen Taylor  <otaylor@redhat.com>
849
850         * gdk/x11/gdkdrawable-x11.c gdk/x11/gdkgc-c11.c: Check for
851         RENDER before trying to use it... XRenderFindFormat() prints
852         warnings if called when extension isn't present.
853
854 Wed Jan  9 15:20:40 2002  Tim Janik  <timj@gtk.org>
855
856         * gtk/gtkmenuitem.c (gtk_menu_item_parent_set): update the accel
857         path upon parent changes.
858
859 Wed Jan  9 13:20:14 2002  Tim Janik  <timj@gtk.org>
860
861         * gtk/gtkviewport.c (gtk_viewport_size_allocate): small but important
862         fix to force vadjustments at size_alocate time from Xavier Ordoquy
863         <mcarkan@users.sourceforge.net>.
864
865 Wed Jan  9 11:23:39 2002  Tim Janik  <timj@gtk.org>
866
867         * gtk/gtklayout.c (gtk_layout_get_property): 
868         * gtk/gtkspinbutton.c (gtk_spin_button_get_property): 
869         * gtk/gtktreeview.c (gtk_tree_view_get_property): 
870         * gtk/gtkwidget.c (gtk_widget_get_property): 
871         * gtk/gtkfontsel.c (gtk_font_selection_get_property): 
872         * gtk/gtkrange.c (gtk_range_get_property):
873         * gtk/gtkviewport.c (gtk_viewport_get_property):
874         * gtk/gtkprogressbar.c (gtk_progress_bar_get_property): don't cast a
875         possible NULL pointer.
876
877 2002-01-08  Mike Kestner  <mkestner@speakeasy.net>
878
879         * gtk/gtkcelleditable.h : Use G_TYPE_INSTANCE_GET_INTERFACE.
880         * gtk/gtktreednd.h : ditto.
881         * gtk/gtktreemodel.h : ditto.
882         * gtk/gtktreesortable.h : ditto.
883         * gtk/gtkwidget.h : Don't reference incomplete _GdkRectangle type.
884
885 2002-01-08  Matthias Clasen  <matthiasc@poet.de>
886
887         * gtk/gtkplug.c, gtk/gtksocket.c: Speak of window IDs rather 
888         than XIDs in the docs.
889
890         * gtk/gtkclipboard.c (gtk_clipboard_clear): Fix docs.
891
892 Tue Jan  8 18:39:23 2002  Jonathan Blandford  <jrb@redhat.com>
893
894         * gtk/gtktreedatalist.c (gtk_tree_data_list_compare_func): wow!
895         Am I a moron or what 0 < 1 is not equivalent to strcmp ("a", "b")
896
897 Tue Jan  8 18:04:01 2002  Owen Taylor  <otaylor@redhat.com>
898
899         * gtk/gtktoolbar.c (gtk_toolbar_set_icon_size):
900         Handle TOGGLE/RADIOBUTTON as well. (#68201,
901         Damon Chaplin.)
902
903         * gtk/gtktoolbar.c (get_first_child): Fix stupid 
904         bug, just introduced.
905
906 Tue Jan  8 15:53:28 2002  Owen Taylor  <otaylor@redhat.com>
907
908         * gtk/gtkdnd.c (gtk_drag_find_widget): Fix coordinate
909         translations, once and for all.
910
911         * gtk/gtktextbuffer.c (paste_from_buffer): Free
912         the ClipboardRequest structure. (#66198, HideToshi
913         Tajima)
914
915 2002-01-08  jacob berkman  <jacob@ximian.com>
916
917         * gtk/gtklayout.c (gtk_layout_move_internal): queue a resize on
918         the child rather than the layout. see bug #68263
919
920 Tue Jan  8 14:51:19 2002  Owen Taylor  <otaylor@redhat.com>
921
922         * gtk/gtkpaned.c (gtk_paned_expose): Don't draw
923         the handle if we aren't showing both children.
924         (#68135, Diego Gonzalez)
925
926 Tue Jan  8 14:45:43 2002  Owen Taylor  <otaylor@redhat.com>
927
928         * gtk/gtkwidget.c (gtk_widget_add_events): Fix
929         leak of result of gtk_container_get_children().
930
931 Tue Jan  8 14:42:19 2002  Owen Taylor  <otaylor@redhat.com>
932
933         * gtk/gtktoolbar.c: Fix leaks of results of
934         gtk_container_get_children(). (#68199, Damon Chaplin)
935
936 Tue Jan  8 14:19:43 2002  Owen Taylor  <otaylor@redhat.com>
937
938         * gtk/gtkcheckbutton.c (gtk_check_button_size_allocate): 
939         Fix problem where child->requisition was accessed
940         directly instead of calling get_child_requisition()
941         (#68199, Damon Chaplin)
942
943 2001-01-08  James Henstridge  <james@daa.com.au>
944
945         * gtk/gtkstyle.c: add trailing */ on doc comment.
946
947 Mon Jan  7 22:19:32 2002  Owen Taylor  <otaylor@redhat.com>
948
949         * gdk/x11/gdkdrawable-x11.c (draw_with_pixmaps): Fix a
950         problem where were the offset into the image was passed
951         into convert_to_format() wrong.
952
953         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_pixbuf): Call
954         gdk_x11_drawable_update_picture_clip () before using
955         the picture; allow update_picture_clip() to take a NULL gc
956         to mean no clipping.
957
958 2002-01-07  Matthias Clasen  <matthiasc@poet.de>
959
960         * gtk/gtksocket.c (gtk_socket_get_id): Doc typo fix. (#68172)
961
962         * gtk/gtktreemodel.c (gtk_tree_path_is_descendant): Fix docs.
963
964         * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Document.
965
966         * gtk/gtkwindow.c (gtk_window_remove_accel_group): Fix docs.
967
968         * gtk/gtkrc.c (gtk_rc_get_style_by_paths),
969         gtk/gtkwidget.c (gtk_widget_get_toplevel, 
970         gtk_widget_push_composite_child), gtk/gtkdialog.c 
971         (gtk_dialog_new_with_buttons, gtk_dialog_run): Keep gtk-doc
972         from messing up the indentation of inline examples.     
973
974         * gtk/gtkmain.c, gtk/gtkrc.c: Consistently call g_getenv() 
975         instead of getenv().
976
977         * gtk/gtktreemodel.c, gtk/gtkaccelgroup.c, gtk/gtkclipboard.c,
978         gtk/gtkdnd.c, gtk/gtkiconfactory.c, gtk/gtkrc.c,
979         gtk/gtkstyle.c, gtk/gtkselection.c: Doc fixes.
980
981         * gtk/gtkaccelmap.c (gtk_accel_map_add_filter,
982         gtk_accel_map_foreach_unfiltered, gtk_accel_map_load_scanner):
983         Document.
984
985 2002-01-07  Anders Carlsson  <andersca@gnu.org>
986
987         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Remove
988         unused pixels and rowstride variables.
989         (gtk_cell_renderer_pixbuf_get_size): Check for non-NULL width.
990
991 Mon Jan  7 08:48:23 2002  Tim Janik  <timj@gtk.org>
992
993         * gtk/gtkdnd.c (gtk_drag_find_widget): don't forget to offset
994         the pointer by x/y_offset into the new window when we found
995         the drag destination.
996
997         * gtk/gtkaccelmap.c (internal_change_entry): fix return code
998         for simulation when the entry already contains the required
999         accel key and mod.
1000
1001 2002-01-06  Matthias Clasen  <matthiasc@poet.de>
1002  
1003         * docs/debugging.txt: Replace GTK_NO_CHECK_CASTS by 
1004         G_DISABLE_CAST_CHECKS.
1005
1006         * gtk/gtkaccelgroup.c (gtk_accel_group_from_accel_closure,
1007         gtk_accel_group_query, gtk_accel_group_find,
1008         gtk_accel_groups_from_object): Document.
1009
1010         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_closure): Document.
1011
1012 2002-01-04  Hans Breuer  <hans@breuer.org>
1013
1014         * gdk/gdkdraw.c gdk/gdkpixbuf-drawable.c : 
1015         need to cast image->mem away from void* to avoid 
1016         'error C2036: 'void *' : unknown size'. Doing pointer 
1017         arithmetics on void pointers is a GCCism afaik.
1018
1019         * gdk/gdkpixbuf-render.c : #include "gdkinternals.h" for
1020         _gdk_draw_pixbuf ()
1021
1022         * gdk/makefile.msc gdk/win32/makefile.msc 
1023         gdk/gtk/makefile.msc.in : use -FI msvc_recommended_pragmas.h
1024
1025         * gdk/win32/gdkdrawable-win32.c : use _gkd_win32_copy_to_image
1026         and take care of image->visual possibly NULL.
1027
1028         * gdk/win32/gdkimage-win32.c : implement _gdk_image_new_for_depth(),
1029         _gdk_win32_copy_to_image() and _gdk_windowing_bits_for_depth().
1030         Again take care of image->visual possibly NULL.
1031
1032         * gdk/win32/gdkprivate-win32.h : declare _gdk_win32_copy_to_image()
1033
1034         * gdk/win32/gdkevents-win32.c : use gdk_drawable_get_colormap
1035         instead of private field access
1036
1037         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new) : adapt
1038         colormap setting to the gdk-X behaviour
1039
1040 2001-01-04  Matthias Clasen  <matthiasc@poet.de>
1041
1042         * gtk/gtkwidget.c: Documentation additions.
1043
1044 2001-01-04  Matthias Clasen  <matthiasc@poet.de>
1045
1046         * gtk/gtkobject.c (gtk_object_dispose): Fix a comment.
1047
1048         * gtk/gtkwidget.c (gtk_widget_set_sensitive): tiny docs change
1049
1050 2002-01-04  Havoc Pennington  <hp@pobox.com>
1051
1052         * gtk/gtkwidget.c (gtk_widget_set_sensitive): tiny docs change
1053         
1054 Fri Jan  4 13:05:15 2002  Owen Taylor  <otaylor@redhat.com>
1055
1056         * gtk/gtkdnd.c (gtk_drag_find_widget): At least
1057         don't infinite loop if the widget and window heirarchies
1058         don't correspond.
1059
1060         * gtk/gtkdnd.c (gtk_drag_find_widget): Handle changes
1061         in heirarchy in ::drag_motion, ::drag_drop callbacks
1062         by referencing child widget lists. (Patch from Tim)
1063
1064         * gtk/gtkdnd.c (gtk_drag_find_widget): Fix a problem
1065         with widgets where window.x != widget->allocation.x
1066
1067 Fri Jan  4 01:36:48 2002  Owen Taylor  <otaylor@redhat.com>
1068
1069         * gdk/x11/gdkdrawable-x11.c (convert_to_format): Optimize
1070         a little bit. (More for consistency than because it
1071         makes much of a difference.)
1072
1073 Thu Jan  3 22:18:15 2002  Owen Taylor  <otaylor@redhat.com>
1074
1075         * gdk/x11/gdkdrawable-x11.c gdk/x11/gdkprivate-x11.h
1076         (_gdk_x11_have_render): Private function to tell if we have RENDER
1077         extension.
1078
1079         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_get_fg_picture): Return
1080         None if we don't have RENDER extension.
1081
1082         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Don't
1083         use Xft unless we have render extension.
1084
1085         * gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_get_picture):
1086         Handle missing render extension.
1087
1088         * gdk/gdkdraw.c gdk/gdkdrawable.h gdk/gdkpixmap.c gdk/gdkwindow.c
1089         gdk/gdkinternals.h: Add a private copy_to_image() virtual function
1090         to the GdkDrawable vtable that extends get_image() to allow
1091         copying onto existing images.  Make the default implementation of
1092         get_image() use this so that backends don't have to implement
1093         both. Add private wrapper _gdk_drawable_copy_to_image().
1094
1095         * gdk/x11/gdkimage-x11.c gdk/x11/gdkprivate-x11.c
1096         gdk/x11/gdkdrawable-x11.c (_gdk_x11_copy_to_image): Implement
1097         copy_to_image() semantics, speed up by using ShmPixmaps and
1098         XCopyArea when possible, XFlush() after ungrabbing the server,
1099         generally redo the logic once again.
1100
1101         * gdk/gdkinternals.h gdk/x11/gdkimage-x11.c
1102         _gdk_windowing_bits_per_depth(): Function to convert from depth to
1103         bits-per-pixel. (We assume only one bpp per depth - X requires
1104         this.)
1105
1106         * gdk/gdkinternals.h gdk/gdkrgb.c gdk/gdkimage.c: Move the GdkRGB
1107         scratch image code into a generic _gdk_image_get_scratch() chunk
1108         of code that we can use other places we need scratch images.
1109
1110         * gdk/gdkimage.c gdk/x11/gdkimage.c gdk/gdkinternals.h:
1111         Add _gdk_image_new_for_depth() as the backend 
1112         to _gdk_image_new() to allowing creating images with
1113         a depth and no visual.
1114
1115         * gdk/gdkpixbuf-drawable.c: Fix so that getting 
1116         parts of images not at 0,0 actually works.
1117
1118         * gdk/gdkdrawable.h gdk/gdkinternals.h gdk/gdkdraw.c
1119         gdk/gdkwindow.c gdk/gdkpixmap.c gdk/gdkpixbuf-render.c: 
1120          - Add a new GdkDrawableClass vfunc _draw_pixbuf, and 
1121           _gdk_draw_pixbuf() [ will be made public later ], to allow 
1122           backends to accelerate drawing pixbufs. 
1123          - Move the implementation of gdk_pixbuf_render_to_drawable_alpha()
1124            to be the default implementation. 
1125          - Update docs for gdk_pixbuf_render_to_drawable_alpha(). 
1126          - Optimize the default implementation by using 
1127            _gdk_image_copy_to_pixmap() and scratch shared images, and
1128            special casing the compositing.
1129
1130         * gdk/x11/gdkdrawable-x11.c: Accelerate _gdk_draw_pixbuf()
1131         with alpha using the RENDER extension.
1132
1133         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
1134         Optimize by _gdk_image_copy_to_pixmap() and scratch images.
1135
1136         * tests/testrgb.c: Add test for speed of alpha composition,
1137         reduce the number of iterations since alpha composition
1138         can be a bit slow.
1139
1140         * gdk/x11/gdkimage-x11.c gdk/gdkprivate-x11.h (_gdk_x11_image_get_shm_pixmap): 
1141         Private function to get a ShmPixmap for an image, if possible.
1142
1143 2002-01-04  Anders Carlsson  <andersca@gnu.org>
1144
1145         * tests/testtreesort.c: Add my cool list of integers.
1146
1147 Thu Dec 27 18:12:55 2001  Owen Taylor  <otaylor@redhat.com>
1148
1149         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Fix
1150         problem where retrieved atoms weren't properly returned.
1151
1152 2002-01-03  Anders Carlsson  <andersca@gnu.org>
1153
1154         * gtk/gtktextview.c (gtk_text_view_key_press_event): When
1155         tab is pressed and the text view isn't editable, 
1156         move the focus instead.
1157
1158         * gtk/gtkstyle.c (gtk_default_draw_focus): Free dash list if
1159         necessary.
1160
1161         * gtk/gtkhsv.c (gtk_hsv_get_focus_gc): Free dash list.
1162
1163         * gtk/gtkcolorsel.c (get_focus_gc): Free dash list.
1164
1165         * gtk/gtkdnd.c (set_icon_stock_pixbuf): Don't unref the mask
1166         if it's NULL.
1167
1168         * gtk/gtktreeview.c: Rename gtk_tree_view_queue_draw_node to
1169         _gtk_tree_view_queue_draw_node.
1170         (gtk_tree_view_row_has_child_toggled): Only redraw one node.
1171
1172         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): 
1173         sort_column_id can be 0.
1174
1175         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
1176         Only redraw one the node being selected.
1177
1178         * gtk/gtktreeprivate.h: Add _gtk_tree_view_queue_draw_node.
1179         
1180 Wed Jan  2 23:09:06 2002  Tim Janik  <timj@gtk.org>
1181
1182         * gtk/gtkcontainer.c (_gtk_container_queue_resize): don't ignore
1183         realized but visible && !mapped resize containers (which is
1184         possible with unset CHILD_VISIBLE now).
1185
1186 2002-01-02  jacob berkman  <jacob@ximian.com>
1187
1188         * gtk/Makefile.am (LDFLAGS): automake still doesn't support
1189         libsomething_la_LDFLAGS, so fix the build again
1190
1191 2002-01-01  Havoc Pennington  <hp@pobox.com>
1192
1193         * gtk/gtktextview.c (gtk_text_view_expose_event): propagate
1194         exposes to no window children not in the buffer window.
1195         (gtk_text_view_class_init): add move_focus bindings for Ctrl-Tab
1196         - is this the right way to do it?
1197         (gtk_text_view_focus): add focus method, just chains up for now, 
1198         I'm not sure why the GtkContainer implementation doesn't work
1199
1200         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): fill
1201         in the text line for the child anchor segment
1202
1203         * tests/testtext.c (do_add_focus_children): add another test
1204         example (to put focusable buttons into the widget)
1205
1206 2002-01-01  Havoc Pennington  <hp@pobox.com>
1207
1208         * docs/README.linux-fb: note that this file is obsolete
1209
1210         * docs/Changes-2.0.txt, docs/Changes-1.2.txt: Add notes to these
1211         files that they should not be edited and look in the reference 
1212         manual instead. Probably these files should just be replaced by 
1213         the note, and their main contents deleted.
1214
1215         * gtk/gtktextview.c: docs
1216
1217         * gtk/gtktextmark.c: docs
1218
1219         * gtk/gtktextchild.c: docs
1220
1221         * gtk/gtktextbuffer.c: docs stuff
1222
1223         * gtk/gtkclipboard.c (gtk_clipboard_get): fool with docs to maybe
1224         give people more leads in sorting out PRIMARY vs. CLIPBOARD
1225
1226 2002-01-01  Tor Lillqvist  <tml@iki.fi>
1227
1228         * demos/Makefile.am (test-inline-pixbufs.h): Append EXEEXT to
1229         ../gdk-pixbuf/gdk-pixbuf-csource.
1230
1231 2001-12-31  Tor Lillqvist  <tml@iki.fi>
1232
1233         * gdk/win32/gdkgc-win32.c (predraw_set_foreground): Improved error
1234         handling.
1235         (gdk_win32_hdc_get,gdk_win32_hdc_release): Silence gcc -Wall.
1236
1237         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image): Silence gcc
1238         -Wall.  Use GDK_IS_PIXMAP_IMPL_WIN32 instead of GDK_IS_PIXMAP in
1239         one more place.
1240
1241         * gdk/win32/gdkinput-win32.c (_gdk_input_other_event): Silence gcc
1242         -Wall.
1243
1244         * gtk/Makefile.am (libgtk_win32_1_3_la_LDFLAGS): Add -lwsock32.
1245
1246 2002-01-01  Havoc Pennington  <hp@pobox.com>
1247
1248         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): doc 
1249         fix
1250         
1251 2002-01-01  Havoc Pennington  <hp@pobox.com>
1252
1253         * gtk/gtktextview.c (changed_handler): Replace call to
1254         gtk_widget_size_request() that expected to actually compute the
1255         request with a direct use of widget_class->size_request, so we get
1256         our size request right; fixes remaining part of #63065 reported by
1257         Matthias Clasen
1258
1259 2001-12-31  Havoc Pennington  <hp@pobox.com>
1260
1261         * tests/testtext.c (do_insert_and_scroll): remove backward_char
1262         since we no longer have bogus newline
1263         (dialog_response_callback): remove another backward_char horkage, 
1264         reported by Matthias Clasen #63065
1265
1266 2001-12-31  Havoc Pennington  <hp@pobox.com>
1267
1268         * gtk/gtktextbtree.c (gtk_text_btree_node_view_check_consistency):
1269         fix an incorrect assertion that the "valid" flag is always correct
1270         in a node and add explanatory comment. This keeps me from 
1271         reproducing #59101, but I'm remembering that 59101 was actually 
1272         about incorrect pixel totals, so I'm not sure 59101 is actually 
1273         fixed. May just have stopped happening due to some change in 
1274         how C-k works.
1275
1276 2001-12-31  Havoc Pennington  <hp@pobox.com>
1277
1278         * gtk/gtktextview.c (gtk_text_view_start_selection_drag): extend
1279         selection if shift is down, bug #50939
1280         (gtk_text_view_button_press_event): add double/triple click
1281         selection to the current selection if shift is down
1282
1283 2001-12-31  Havoc Pennington  <hp@pobox.com>
1284
1285         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index): fix 
1286         to use ensure_byte_offsets not ensure_char_offsets, patch 
1287         from Padraig O'Briain bug #67356
1288         
1289 2001-12-30  Havoc Pennington  <hp@pobox.com>
1290
1291         * gtk/gtkdialog.h (GtkDialogFlags): fix GtkDialogFlags to have 
1292         the right values, reported by Jeff Franks
1293
1294 2001-12-30  Matthias Clasen  <matthiasc@poet.de>
1295
1296         * gtk/gtkwindow.c, gtk/gtkimcontextsimple.c: Minor documentation tweaks.
1297
1298 2001-12-28  Matthias Clasen  <matthiasc@poet.de>
1299
1300         * gdk/x11/gdkproperty-x11.c, gdk/x11/gdkselection-x11.c: 
1301         Minor documentation tweaks.
1302
1303 2001-12-28  Tor Lillqvist  <tml@iki.fi>
1304
1305         * gdk/win32/gdkfont-win32.c: Use G_N_ELEMENTS().
1306         (unicode_classify): Don't return -1 on encountering an
1307         unclassified character, but play it safe and return U_BASIC_LATIN.
1308
1309 Thu Dec 27 16:05:30 2001  Owen Taylor  <otaylor@redhat.com>
1310
1311         * gtk/gtkarrow.c gtk/gtkimage.c gtkpixmap.c: Make interpretation
1312         of misc->xpad/ypad consistent with GtkLabel. Do 
1313         directional flipping when interpreting misc->xalign/yalign.
1314         Fix off-by-one error for negative x,y. (#67472, reported
1315         by Mathieu Lacage)
1316
1317 Thu Dec 27 15:45:41 2001  Owen Taylor  <otaylor@redhat.com>
1318
1319         * gtk/gtkwidget.c (gtk_widget_set_style_internal):
1320         Remove optimization that was causing problems because
1321         we called gtk_widget_size_request() before we called
1322         gtk_widget_queue_resize() so RESIZE_NEEDED was not
1323         set. Optimization shouldn't mattter now that we
1324         are smart about needlessly size requesting or allocating
1325         widgets. (#67598, reported by Jacob Berkman)
1326
1327 Thu Dec 27 15:38:20 2001  Owen Taylor  <otaylor@redhat.com>
1328
1329         * gtk/gtkmenu.c (gtk_menu_stop_navigating_submenu_cb):
1330         Call gdk_window_get_pointer() on menu->bin_window not
1331         menu->window, so we get the correct window for the
1332         menu item. (#65213, Guillermo S. Romero)
1333
1334 Thu Dec 27 15:13:44 2001  Owen Taylor  <otaylor@redhat.com>
1335
1336         * gtk/gtkmenu.c (gtk_menu_set_title): Allow unsetting
1337         the title by setting to NULL. Move docs inline. 
1338         Update the title if the tearoff window already
1339         exists. Code cleanup. (Fixes #65190, reported by
1340         Vitaly Tishkov.)
1341
1342 Thu Dec 27 14:04:22 2001  Owen Taylor  <otaylor@redhat.com>
1343
1344         * gtk/gtksocket.c (gtk_socket_key_press_event): 
1345         gtk/gtkplug.c (gtk_plug_key_press_event): Don't do
1346         special handling of key presses unless we are doing 
1347         iter-app embedding. (Fixes #67590, Anders Carlsson)
1348
1349 Thu Dec 27 16:37:04 2001  Kristian Rietveld  <kris@gtk.org>
1350
1351         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted),
1352         (gtk_tree_model_sort_sort_level),
1353         (gtk_tree_model_sort_insert_value): fix a few places where
1354         I was confused between modelsort iters and other iters. This was
1355         really going to happen someday ;)
1356
1357 Wed Dec 26 23:41:41 2001  Kristian Rietveld  <kris@gtk.org>
1358
1359         * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): ensure
1360         we are unprelighted before reordering
1361
1362         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): we
1363         need to break out of the for loop, not return (this fixed
1364         the 'selection freeze' bug).
1365
1366         * gtk/gtktreemodelsort.c: more fixage and cleanups. It seems to
1367         be pretty stable now, though it still needs some more code
1368         cleanups.
1369
1370 Wed Dec 26 12:32:31 2001  Owen Taylor  <otaylor@redhat.com>
1371
1372         * docs/Changes-2.0.txt: Document the fact that
1373         gtk_paned_set_handle_size() has been removed.
1374
1375         * gtk/gtkpaned.h Remove gtk_paned_handle_size() compat macro, 
1376         since it pointed to gtk_paned_set_handle_size(), which
1377         was removed. (#66760, Matt Wilson)
1378
1379 Wed Dec 26 12:28:24 2001  Owen Taylor  <otaylor@redhat.com>
1380
1381         * gtk/gtkdnd.c (gtk_drag_highlight): Connect 
1382         gtk_drag_hightlight_expose _after_, so it works with
1383         widgets that paint there entire background. (#66735)
1384
1385 Wed Dec 26 12:17:06 2001  Owen Taylor  <otaylor@redhat.com>
1386
1387         * gtk/gtkplug.c (gtk_plug_size_allocate): Assign the
1388         allocation to widget->allocation. (Fixes #67290,
1389         Chris Phelps.)
1390
1391 Wed Dec 26 11:49:01 2001  Owen Taylor  <otaylor@redhat.com>
1392
1393         (#67542, reported by Anders Carlsson)
1394         
1395         * gtk/gtkstyle.c (gtk_style_real_init_from_rc): Merge
1396         rc_style->font_desc with defaul style instead of replacing
1397         it.
1398
1399         * gtk/gtkrc.c (gtk_rc_style_real_merge): Allow partial
1400         font descriptions in RC styles by calling
1401         pango_font_description_merge(). 
1402
1403 2001-12-24  James Henstridge  <james@daa.com.au>
1404
1405         * gtk/gtkdialog.h (doc comment): s/<!>/<!-- -->/ to make the doc
1406         valid with both SGML and XML.
1407
1408 Sat Dec 22 12:38:03 2001  Owen Taylor  <otaylor@redhat.com>
1409
1410         * configure.in: 1.3.12, interface, binary age 0.
1411
1412         * configure.in: Require new versions of Glib, Pango, ATK.
1413
1414         * NEWS: Updated.
1415
1416         * configure.in: Make explicit what libtool we are executing.
1417         (Tomas Ogren)
1418
1419         * gdk/gdkcolor.c gdk/gdkgc.c gdk/gdkwindow.c: Doc fixes.
1420
1421         * gtk/gtkwidget.c (gtk_widget_[class]path) gtkrc.h : Fix 
1422         parameter names for docs.
1423
1424 Sat Dec 22 22:35:29 2001  Owen Taylor  <otaylor@redhat.com>
1425
1426         * gtk/gtkwindow.c (gtk_window_realize) 
1427           gtk/gtkplug.c (gtk_plug_realize): Include GDK_KEY_RELEASE_MASK.
1428
1429         * gtk/gtkentry.c (gtk_entry_key_release)
1430           gtk/gtktextview.c (gtk_text_view_key_release_event): Pass
1431         key release events to the input method.
1432
1433         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
1434         Handle release of Control/Shift to end hex sequence.
1435
1436         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_filter_keypress): 
1437         Handle key releases as well as presses.
1438
1439 2001-12-21  Matthias Clasen  <matthiasc@poet.de>
1440
1441         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Trivial doc adjustment.
1442
1443         * gtk/gtklabel.c (gtk_label_new_with_mnemonic),
1444         gtk/gtkbutton.c (gtk_button_new_with_mnemonic): More precise
1445         documentation about underscores and mnemonics. (#66380)
1446
1447         * gtk/gtktextiter.c (gtk_text_iter_backward_word_starts): Fix
1448         cyclic reference in docs.
1449
1450         * gtk/gtklabel.c (gtk_label_set_justify): Correct documentation
1451         of default value. (#65402)
1452
1453         * gtk/gtkmain.c (gtk_set_locale, gtk_disable_set_locale): 
1454         Markup fixes.
1455
1456 2001-12-20  Anders Carlsson  <andersca@gnu.org>
1457
1458         * gtk/gtktreeview.c (gtk_tree_view_realize): Don't call
1459         map here.
1460
1461 Tue Dec 18 16:15:55 2001  Owen Taylor  <otaylor@redhat.com>
1462
1463         * gdk/gdkgc.h: Explicitely deprecate gdk_gc_set_font()
1464         (reported by Jeff Franks.)
1465
1466 Tue Dec 18 16:07:28 2001  Owen Taylor  <otaylor@redhat.com>
1467
1468         * gdk/gdkkeys.h (struct _GdkKeymapClass): Fix 
1469         prototype for direction_changed. (Reported by
1470         Jeff Franks.)
1471
1472 2001-12-18  Padraig O'Briain <padraig.obriain@sun.com>
1473
1474         * gtk/gtktreeview.c (gtk_tree_view_get_expander_column):
1475         Fix typo (list->data becomes list->next)
1476
1477 2001-12-06  Havoc Pennington  <hp@redhat.com>
1478
1479         Add Unicode control char menu, based on patch from Dov.
1480         Bug #63495
1481         
1482         * gtk/gtkentry.c (gtk_entry_commit_cb): share code via
1483         gtk_entry_enter_text
1484         (gtk_entry_enter_text): function to do "typing in text"
1485         (popup_targets_received): add the Unicode menu items
1486
1487         * gtk/gtktextview.c (popup_targets_received): add missing mnemonic
1488         on Input Methods item, and add the unicode menu items.
1489
1490         * gtk/gtktextutil.h, gtk/gtktextutil.c: private utilities to be
1491         used in GtkEntry and GtkTextView - may become public later.     
1492
1493 2001-12-16  Kjartan Maraas  <kmaraas@gnome.org>
1494
1495         * gtk/gtkprogressbar.c: Fix a typo.
1496         * gtk/gtkpaned.c: Fix a typo.
1497         
1498 2001-12-15  Darin Adler  <darin@bentspoon.com>
1499
1500         Fix some warnings.
1501
1502         * gdk/x11/gdkproperty-x11.c: (gdk_property_get): Fix wrong type in
1503         g_new -- bug if sizeof (GtkAtom) != sizeof (GtkAtom *).
1504         * gdk/x11/gdkwindow-x11.c: (create_moveresize_window): FALSE -> NULL
1505         * gtk/gtkaccellabel.c: (gtk_accel_label_refetch): Remove unused local.
1506         * gtk/gtklistitem.c: (gtk_list_item_expose): Remove unused local.
1507         * gtk/gtktextiter.c: (_gtk_text_iter_backward_indexable_segment):
1508         Restructure loop to get rid of uninitialized variable warning. Also
1509         gives a tiny efficiency gain.
1510
1511 2001-12-15  Murray Cumming  <murrayc@usa.net>
1512
1513         * Fixed first arg type of GtkScale's "format_value" signal's
1514         function pointer.
1515
1516 2001-12-14            Vitaly Tishkov       tvv@sparc.spb.su
1517         docs/reference/gtk/tmpl/gtkcelleditable.sgml
1518                 gtkcelleditable -> GtkCellEditable
1519         docs/reference/gtk/tmpl/gtktreesortable.sgml
1520                 gtktreesortable -> GtkTreeSortable
1521
1522 2001-12-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1523
1524         * demos/testpixbuf-drawable.c, demos/testpixbuf-save.c,
1525         demos/testpixbuf-scale.c, demos/testpixbuf.c: Call g_object_ref
1526         and g_object_unref instead of gdk_pixbuf_ref and gdk_pixbuf_unref
1527         resp.
1528
1529 Thu Dec 13 22:02:41 2001  Kristian Rietveld   <kris@gtk.org>
1530
1531         * gtk/gtktreeview.c (validate_visible_area): free path
1532         at the end
1533
1534 2001-12-13  Matthias Clasen  <matthiasc@poet.de>
1535
1536         * gtk/gtkdialog.c, gtk/gtkrc.c, gtk/gtkwidget.c: Markup fixes.
1537
1538 Thu Dec 13 20:37:27 2001  Kristian Rietveld  <kris@gtk.org>
1539
1540         * gtk/gtktreeview.c (gtk_tree_view_button_press): do not try
1541         to find the clicked node in the tree when tree == NULL
1542
1543 2001-12-13  Anders Carlsson  <andersca@gnu.org>
1544
1545         * gtk/gtktreeview.c (gtk_tree_view_button_press): Compare 
1546         event->state with the default mod mask. 
1547
1548 2001-12-12  jacob berkman  <jacob@ximian.com>
1549
1550         * gtk/gtk*.h (GTK_IS_*_CLASS): s/obj/klass/ where appropriate
1551
1552 Wed Dec 12 17:22:45 2001  Owen Taylor  <otaylor@redhat.com>
1553
1554         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_slave):
1555         Reset the existing slave before removing it to give
1556         it a chance to commit and emit "preedit_changed" 
1557         in case there was still a preedit string.
1558
1559 2001-12-12  Matthias Clasen  <matthiasc@poet.de>
1560         
1561         * gtk/gtktextlayout.c: Typo fixes
1562         * gtk/gtkwindow.c (gtk_window_set_position): Typo fix. (#66746)
1563
1564         * gtk/gtkwidget.c (gtk_widget_send_expose, gtk_widget_get_toplevel, 
1565         gtk_widget_get_default_direction): Doc fixes. (#66727, #66737, #66744)
1566
1567         * gtk/gtkstyle.h (GTK_STYLE_NUM_STYLECOLORS): Remove. (#66467)
1568
1569 Wed Dec 12 16:43:10 2001  Jonathan Blandford  <jrb@redhat.com>
1570
1571         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Remove
1572         validate_rows_timer in unrealize.  Reported by Matthew Wilson.
1573
1574 Wed Dec 12 16:18:26 2001  Owen Taylor  <otaylor@redhat.com>
1575
1576         * gtk/gtkmenu.c (gtk_menu_realize): Remove support for
1577         "prepainting" the menu before realizing other than
1578         via gtk_style_set_background() - this was broken when
1579         we added menu scroll support.
1580
1581         * gtk/gtkmenu.c (gtk_menu_paint): Pay attention to the
1582         window in the expose event -- fixes problem with border
1583         flashing during scrolling.
1584
1585 Wed Dec 12 15:11:49 2001  Owen Taylor  <otaylor@redhat.com>
1586
1587         * gtk/gtksettings.c (gtk_settings_get_property): Support
1588         using names/nicks for the gdk_settings values for enum valued
1589         types. (#57678, reported by Anders Carlsson)
1590
1591 Wed Dec 12 15:01:33 2001  Jonathan Blandford  <jrb@redhat.com>
1592
1593         * gtk/gtknotebook.c (gtk_notebook_set_tab_label): keep in sync
1594         with insert_page_menu.  Code duplication is bad.
1595
1596         * gtk/gtklabel.c (gtk_label_mnemonic_activate): Whoops -- got the
1597         wrong fix yesterday.
1598
1599 Wed Dec 12 14:27:30 2001  Owen Taylor  <otaylor@redhat.com>
1600
1601         * gtk/gtkmenubar.c (window_key_press_handler): Fix check for
1602         modifiers.
1603
1604 2001-12-12  James Henstridge  <james@daa.com.au>
1605
1606         * gtk/gtkmenu.c (gtk_menu_key_press): check GTK_MENU_ITEM
1607         (menu_item)->accel_path first when looking up the accel path.
1608
1609 Tue Dec 11 19:18:21 2001  Owen Taylor  <otaylor@redhat.com>
1610
1611         * tests/testgtk.c (layout_expose_handler): Only draw
1612         for events on the bin window.
1613
1614 Tue Dec 11 18:55:16 2001  Jonathan Blandford  <jrb@redhat.com>
1615
1616         * gtk/gtklabel.c (gtk_label_mnemonic_activate): Small fix to let
1617         mnemonics work with notebooks.
1618
1619 Tue Dec 11 15:25:06 2001  Jonathan Blandford  <jrb@redhat.com>
1620
1621         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): Change
1622         bin_window to be located at y=TREE_VIEW_HEADER_HEIGHT(tree_view).
1623         Makes some flicker while scrolling go away.
1624
1625 2001-12-11  Michael Natterer  <mitch@gimp.org>
1626
1627         * demos/testpixbuf-save.c: added new keyboard shortcut 'a' which
1628         adds alpha to the pixbuf; re-load the saved pixbuf and
1629         pixel-by-pixel compare it with the original one.
1630
1631 Tue Dec 11 15:39:08 2001  Soeren Sandmann  <sandmann@daimi.au.dk>
1632
1633         * ChangeLog: Fix wrong ChangeLog entry
1634         * gtk/gtkstyle.c (gtk_default_draw_shadow_gap): Fix drawing of top
1635         right corner
1636
1637 2001-12-10  jacob berkman  <jacob@ximian.com>
1638
1639         * gdk/x11/gdkinput-xfree.c (_gdk_input_grab_pointer): 
1640         * gdk/x11/gdkmain-x11.c (gdk_pointer_grab): 
1641         (gdk_keyboard_grab): do not grab things if the nograb debug flag
1642         is set
1643
1644         * gdk/gdkinternals.h: 
1645         * gdk/gdk.c: add nograbs debug flag to disable grabs of the
1646         keyboard / mouse
1647
1648 Mon Dec 10 19:42:29 2001  Jonathan Blandford  <jrb@redhat.com>
1649
1650         * gtk/gtktreeview.c (validate_rows_handler): stupid bug where I
1651         didn't reset the timer.
1652
1653 2001-12-10  Matthias Clasen  <matthiasc@poet.de>
1654
1655         * gtk/gtkcontainer.c (gtk_container_child_type): Close comment.
1656
1657 2001-12-09  Matthias Clasen  <matthiasc@poet.de>
1658
1659         * gtk/gtkviewport.c: Add docs.
1660
1661 Mon Dec 10 16:21:38 2001  Jonathan Blandford  <jrb@redhat.com>
1662
1663         * gtk/gtkrbtree.c (_fixup_parity): New function to fixup parity.
1664         RBTree corruption bug--
1665
1666 2001-12-10  Anders Carlsson  <andersca@gnu.org>
1667
1668         * gtk/gtktreeview.c (gtk_tree_view_remove_widget): Return
1669         if edited_column is NULL, also grab focus before removing
1670         the cell_editable.
1671
1672 Sun Dec 09 15:06:51 2001  George Lebl <jirka@5z.com>
1673
1674         * gtk/gtkrange.c (gtk_range_calc_layout): check for 0 value on the
1675           denominator in the horizontal case just like we do in the vertical
1676           case (why I didn't notice that there were two cases the first time
1677           around is beyond me:).  Also fix indentation in the vertical case.
1678
1679 2001-12-09  Anders Carlsson  <andersca@gnu.org>
1680
1681         * gdk/x11/gdkevents-x11.c: Update xsettings name.
1682
1683         * gtk/gtkdnd.c (gtk_drag_check_threshold): Use the
1684         gtk-dnd-drag-threshold GtkSetting.
1685
1686         * gtk/gtksettings.c (gtk_settings_class_init): Add 
1687         setting for dnd drag threshold.
1688
1689 2001-12-09  Matthias Clasen  <matthiasc@poet.de>
1690
1691         * gtk/gtkcontainer.c: Add docs.
1692
1693 2001-12-08  Matthias Clasen  <matthiasc@poet.de>
1694
1695         * gtk/gtkwidget.c: Doc markup fix. 
1696
1697         * gtk/gtktreeviewcolumn.c: Markup fixes. (#66447)
1698
1699         * gtk/gtktreestore.c: Typo fixes. (#66445)
1700
1701         * gtk/gtkaccelgroup.c: Misc doc markup. (#66425) 
1702
1703         * gtk/gtkclipboard.c (gtk_clipboard_get_owner): Fix reference
1704         to gtk_clipboard_set_with_owner(). (#66424)
1705  
1706 Sat Dec  8 16:12:10 2001  Christopher Blizzard  <blizzard@redhat.com>
1707
1708         * gdk/gdk.c (gdk_init_check): Fallback to setting the prgname to
1709         "<unknown>" if someone doesn't pass in a valid argc.  (Patch from
1710         Fabrice Bellet <fabrice@gnu.org>, #54127).
1711
1712 Sat Dec  8 10:04:54 2001  Jonathan Blandford  <jrb@redhat.com>
1713
1714         * gtk/gtkrbtree.c (_gtk_rbtree_debug_spew): Add debug spew to lots
1715         of places, so that people with crashy trees can just run their
1716         program with GTK_DEBUG=TREE.
1717
1718 Sat Dec  8 20:57:24 2001  Kristian Rietveld  <kristian@planet.nl>
1719
1720         * gtk/gtkliststore.c (gtk_list_store_remove): nuke the stamp++,
1721         per jrb's request
1722
1723 2001-12-08  Anders Carlsson  <andersca@gnu.org>
1724
1725         * tests/testgtk.c (layout_expose_handler): Don't return TRUE
1726         since then the default GtkLayout expose handler won't be called.
1727
1728 Fri Dec  7 23:42:50 2001  Jonathan Blandford  <jrb@redhat.com>
1729
1730         * gtk/gtktreeview.c (validate_rows_handler): remove
1731         g_return_if_fail.
1732
1733         * gtk/gtktreeview.c (validate_visible_area): Patch from Manish
1734         Singh <yosh@gimp.org> to fix bug when rendering Tree with an
1735         empty model.
1736
1737 Fri Dec  7 20:06:14 2001  Jonathan Blandford  <jrb@redhat.com>
1738
1739         * gtk/gtktreeview.c (validate_visible_area): get logic right,
1740         #66249
1741
1742         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): fix bug where
1743         removing a node ended up with a corrupt tree.  Really really nasty
1744         bug.
1745         (_gtk_rbtree_debug_spew): new debug helper function
1746         (_fixup_validation): new inline function to clean up code
1747         readability a lot. 
1748
1749 Fri Dec  7 19:34:51 2001  Owen Taylor  <otaylor@redhat.com>
1750
1751         * gtk/gtktoolbar.c (gtk_toolbar_insert_element):
1752         Close comment.
1753
1754 2001-12-07  Matthias Clasen  <matthiasc@poet.de>
1755
1756         * gtk/gtkstyle.h: Typo fixes.
1757
1758         * gtk/gtkstyle.c, gtk/gtktoolbar.c: Add docs.
1759
1760         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Fix docs.
1761
1762 Fri Dec  7 16:05:22 2001  Owen Taylor  <otaylor@redhat.com>
1763
1764         * modules/input/gtkimcontextxim.c: Display the XIM
1765         status callbacks with a popup window. (Patch from
1766         HideToshi Tajima, #50628, somewhat modified.)
1767
1768 Fri Dec  7 12:07:15 2001  Tim Janik  <timj@gtk.org>
1769
1770         * gtk/Makefile.am: each source generation rule needs to use its own
1771         temporary file, to avoid clashes for parallel builds. fixed rules
1772         for gtkmarshalers.h and gtkmarshalers.c to use their own temp files.
1773
1774 2001-12-07  Havoc Pennington  <hp@pobox.com>
1775
1776         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new): fix up my list of
1777         "cursors that are actually useful" in gdk_cursor_new() docs
1778
1779 Thu Dec  6 23:09:21 2001  Owen Taylor  <otaylor@redhat.com>
1780
1781         * gtk/gtk[hv]paned.c (gtk_[hv]paned_size_allocate): Fix errors
1782         in computing the size of the second child.
1783
1784 Thu Dec  6 16:50:17 2001  Owen Taylor  <otaylor@redhat.com>
1785
1786         * gtk/gtkrange.c: Make button 1 clicks on the trough
1787         do pages, button 3 steps. (Patch from Hans Breuer
1788         #63735)
1789
1790 2001-12-06  Matthias Clasen  <matthiasc@poet.de>
1791
1792         * gtk/gtklabel.c: Fix docs. (#66383)
1793
1794         * gtk/gtkbbox.c (gtk_button_box_set_child_secondary): Fix docs. 
1795         (#66278, #66280)
1796         
1797         * gdk/gdkwindow.h (gdk_window_get_deskrelative_origin),
1798         gdk/gdkimage.h (gdk_image_get): Deprecate. (#66208)
1799
1800         * gtk/gtkcolorsel.c (gtk_color_selection_set_update_policy):
1801         Don't emit a g_warning() about being deprecated. (#66208)       
1802
1803         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_widget): Add docs.
1804
1805         * gtk/gtkcontainer.c: Doc fixes.
1806         
1807         * gtk/gtkliststore.c (gtk_list_store_clear): Add docs; misc doc fixes.
1808
1809         * gtk/gtkstyle.c (gtk_style_attach): Add docs.
1810
1811 2001-12-05  Sven Neumann  <sven@gimp.org>
1812
1813         * gtk/gtkwidget.c (gtk_widget_reset_shapes): close comment.
1814
1815         * gtk/queryimmodules.c: g_dir_read_name() returns const.
1816
1817 Tue Dec  4 21:46:13 2001  HideToshi Tajima  <hidetoshi.tajima@sun.com>
1818
1819         * gtk/gtktreeprivate.h: restore the else case of #ifdef __GNUC__
1820         #66225
1821         
1822 2001-12-04  Manish Singh  <yosh@gimp.org>
1823
1824         * gtk/gtkmain.c
1825         * gtk/queryimmodules.c: g_module_symbol takes a gpointer *, not just
1826         a gpointer.
1827
1828         * gtk/gtkwidget.c (gtk_widget_push_composite_child): minor cosmetic
1829         correction to docs.
1830
1831         * demos/gtk-demo/item_factory.c: add GTK_WINDOW() cast
1832
1833 2001-12-04  Havoc Pennington  <hp@redhat.com>
1834
1835         * gtk/gtktextbtree.c (gtk_text_btree_remove_tag_info): remove
1836         g_assert_not_reached() that was bogus, since we demand-create the
1837         tag info. reported by Chris Phelps
1838
1839         Jump through assorted hoops to fix bug from Chris Phelps where 
1840         removing tags from the table resulted in btree trying to 
1841         access tag->table
1842         
1843         * gtk/gtktextbuffer.c: set up mechanics of adding/removing 
1844         ourselves to the tag table
1845
1846         * gtk/gtktexttagtable.c (_gtk_text_tag_table_add_buffer) 
1847         (_gtk_text_tag_table_remove_buffer): private cruft to 
1848         let us notify buffer of disappearing tags
1849
1850         * gtk/gtktexttag.h: remove BTreeNode typedef from this public
1851         header, put it in tagprivate    
1852
1853         * gtk/gtktextbtree.c (_gtk_text_btree_new): don't connect to
1854         tag_removed; it's emitted too late.
1855         (_gtk_text_btree_notify_will_remove_tag): rename tag_remove_cb to
1856         this
1857
1858         Padding for ABI-compat expansion
1859         
1860         * gtk/gtktexttag.h (struct _GtkTextAttributes): pad this
1861         (struct _GtkTextAppearance): one pad in here too
1862
1863         * gtk/gtktextlayout.h (struct _GtkTextLayoutClass): padding here
1864
1865         * gtk/gtktextview.h (struct _GtkTextViewClass): more padding,
1866         since action signals etc. seem pretty likely
1867
1868         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): padding
1869
1870         * gtk/gtktexttag.h (struct _GtkTextTagClass): padding
1871
1872         * gtk/gtktexttagtable.h (struct _GtkTextTagTableClass): padding
1873
1874 2001-12-04  Matthias Clasen  <matthiasc@poet.de>
1875
1876         * gdk/gdkcolor.h (gdk_colormap_change): Deprecate. (#65851)
1877
1878         * gdk/gdktypes.h (GdkKeyInfo): Remove. (#66025)
1879
1880         * gtk/gtkwindow.c, gtk/gtkwidget.c: Add docs, markup fixes.
1881
1882 Tue Dec  4 18:51:44 2001  Jonathan Blandford  <jrb@redhat.com>
1883
1884         * gtk/gtktreeviewcolumn.h: remove gtk_tree_view_column_cell_event,
1885         #62084.
1886
1887 Tue Dec  4 18:38:35 2001  Jonathan Blandford  <jrb@redhat.com>
1888
1889         * demos/gtk-demo/main.c: (create_tree): Minor fix.
1890
1891         * docs/tree-column-sizing.txt: Update
1892
1893         * gtk/gtkrbtree.[ch]: Massive work to support validation.
1894
1895         * gtk/gtktreemodel.c: Doc fixes.
1896
1897         * gtk/gtktreeview.c: Incremental reflow added.
1898         * gtk/gtktreeviewcolumn.c: ditto
1899         * gtk/gtktreeviewcolumn.h: ditto
1900
1901 2001-12-04  Havoc Pennington  <hp@redhat.com>
1902         
1903         * gtk/gtktexttag.c (gtk_text_tag_set_property): add a warning for
1904         "invisible" property, #65999
1905
1906 2001-12-04  Matt Wilson  <msw@redhat.com>
1907
1908         * gtk/gtktreestore.c (gtk_tree_store_insert): fixed docs
1909
1910 Tue Dec  4 12:16:31 2001  Owen Taylor  <otaylor@redhat.com>
1911
1912         * gtk/gtksettings.c (gtk_settings_set_property_value):
1913         Simplify, make more efficient and fix memory leak
1914         when turning quark into a string. (#66103, HideToshi
1915         Tajima)
1916
1917         * gtk/gtkcolorsel.c: Ref and sink priv->tooltips in
1918         init() and unref priv->tooltips in destroy rather
1919         than calling gtk_object_destroy() which has no
1920         effect on memory management. (#66104, HideToshi
1921         Tajima)
1922
1923         * gtk/gtkcolorsel.c (palette_set_color): Use g_object_set_data_full()
1924         so we free the when the object is freed. (Fixes memory
1925         leak, #66096, HideToshi Tajima)
1926
1927         * gdk/gdkevents.c (gdk_synthesize_window_state): Use 
1928         a full GdkEvent structure to avoid reads of uninitialized/
1929         invalid memory in gdk_event_put() (#65877, patch
1930         from Hidetoshi Tajima)
1931
1932 Tue Dec  4 11:06:54 2001  Owen Taylor  <otaylor@redhat.com>
1933
1934         * gtk/gtkmenuitem.c: Revert my last mistaken change - 
1935         toggle-size-request doesn't take a requisition.
1936
1937         * gtk/gtkmenuitem.c (gtk_menu_item_class_init): Fix
1938         reference to marshaler that no longer exists.
1939
1940 Mon Dec  3 16:39:17 2001  Owen Taylor  <otaylor@redhat.com>
1941
1942         Patch from Bill Haneman (with many modifications) to make
1943         the focus color work on dark themes and to make the
1944         focus line width configurable. (#61079, #63074)
1945
1946         * gtk/gtkwidget.c: Add style properties, 
1947         ::focus-widget, ::focus-line-width, and ::focus-padding.
1948
1949         * gtk/gtkstyle.[ch]: Make gtk_paint_focus() take a 
1950         state argument as well so we can use fg[STATE] to
1951         draw instead of always drawing with black. 
1952         Cange paint_focus() to respect GtkWidget::focus-width
1953         and GtkWidget::focus-line-pattern. Fix continuity
1954         problem where the default 1-1 stipple had a blob
1955         in one corner and a gap in the other. Change the
1956         interpretation of x/y/width/height to be the bounding
1957         box of the focus rect instead of the rectangle
1958         passed to gdk_draw_rectangle.
1959
1960         * gtk/gtkcheckbutton.c gtk/gtklistitem.c gtk/gtknotebook.c 
1961         gtk/gtkoptionmenu.c gtk/gtkradiobutton.c gtk/gtkspinbutton.c 
1962         gtk/gtktextview.c gtk/gtktreeview.c: Handle ::focus-width 
1963         and ::focus-line-padding.
1964
1965         * gtk/gtkentry.c: Handle :;focus-width property; cleanup
1966         and remove duplicated code; fix drawing of focus rectangle
1967         when interior-focus = FALSE. (#63072, #63073)
1968
1969         * gtk/gtkrange.c gtk/gtktext.c gtk/gtktreeitem.c
1970         gtk/gtktreeviewcolumn.c: Basic fixups to make compile;
1971         Range and TreeViewColumn will need more extensive fixing.
1972
1973         * gtk/gtkcolorsel.c: Honor focus line attributes when
1974         drawing the focus on the color swatches. (#63071)
1975
1976         * gtk/gtkhsv.c: Honor focus line attributes when
1977         drawing the focus for the ring and triangle.
1978
1979         * docs/widget_geometry.txt: Start at documenting how 
1980         various widgets are drawn.
1981
1982         * gtk/gtkbutton.c (_gtk_button_paint): Export 
1983         _gtk_button_paint() librarywide, so we don't have 
1984         duplicate a bunch of code in gtktogglebutton.c.
1985
1986         * gtk/gtktogglebutton.c: Use _gtk_button_paint().
1987
1988 Mon Dec  3 21:04:13 2001  Jonathan Blandford  <jrb@redhat.com>
1989
1990         * gtk/gtkmarshalers.list: remove VOID:BOXED,POINTER and
1991         NONE:POINTER.
1992
1993 2001-12-03  Alex Larsson  <alexl@redhat.com>
1994
1995         * gtk/gtkaccellabel.c:
1996         * gtk/gtkarrow.c:
1997         * gtk/gtkcolorsel.c:
1998         * gtk/gtkcontainer.c:
1999         * gtk/gtklabel.c:
2000         * gtk/gtktextview.c:
2001         * gtk/gtktogglebutton.c:
2002         * gtk/gtktreeview.c:
2003         * gtk/gtkwindow.c:
2004         Return FALSE from expose handlers.
2005
2006 Mon Dec  3 21:15:59 2001  Kristian Rietveld  <kris@gtk.org>
2007
2008         * gtk/gtktreedatalist.c (_gtk_tree_data_list_value_to_node): if
2009         we use pointers, we should free the previous pointer first (if
2010         it exists), before we set a new pointer. (#64726)
2011
2012         * gtk/gtktreeprivate.h: get rid of cursor_drag
2013
2014         * gtk/gtktreeview.c (gtk_tree_view_unrealize): remove check     
2015         for cursor_drag
2016         (gtk_tree_view_bin_expose): don't directly return in the while
2017         loop
2018         (gtk_tree_view_class_init): indentend expanders by default
2019         (gtk_tree_view_header_focus): only give the button focus
2020         if it's clickable, visible and the column is reorderable
2021         (#65539)
2022
2023         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2024         create and free cursor
2025
2026 Mon Dec  3 10:23:07 2001  Owen Taylor  <otaylor@redhat.com>
2027
2028         * gtk/gtkcalendar.c (gtk_calendar_size_request): Fix
2029         some bugs with size requisition. (From Bill Haneman)
2030
2031         * gtk/gtkcalendar.c: Draw headers and selection in 
2032         base/text[SELECTED] instead of fg/bg[SELECTED].
2033
2034         * gtk/gtkcalendar.c: Miscellaneous cleanups to drawing
2035         code and formatting.
2036
2037 2001-12-03  Havoc Pennington  <hp@pobox.com>
2038
2039         * gtk/gtktextview.c (set_window_height): 
2040         (set_window_width): Hmm, setter functions normally assign the new
2041         value to the object field. Reported by Chris Phelps.
2042
2043 2001-11-30  jacob berkman  <jacob@ximian.com>
2044
2045         * gtk/gtknotebook.c (gtk_notebook_remove_tab_label): set the
2046         signal id to 0 after we disconnect from it
2047
2048 2001-11-30  Matthias Clasen  <matthiasc@poet.de>
2049
2050         * gdk/gdkdrawable.h (gdk_drawable_ref, gdk_drawable_unref),
2051         gdk/gdkcolor.h (gdk_colormap_ref, gdk_colormap_unref),
2052         gdk/gdkdnd.h (gdk_drag_context_ref, gdk_drag_context_unref),
2053         gdk/gdkgc.h (gdk_gc_ref, gdk_gc_unref):  Deprecate.
2054
2055         * gdk/gdkvisual.h: Use GDK_DISABLE_DEPRECATED, not 
2056         GTK_DISABLE_DEPRECATED.
2057
2058         * gdk/gdkcolor.c (gdk_colormap_ref, gdk_colormap_unref),
2059         gdk/gdkgc.c (gdk_gc_ref, gdk_gc_unref): Document.
2060
2061 Fri Nov 30 16:37:01 2001  Owen Taylor  <otaylor@redhat.com>
2062
2063         * gtk/gtkcombo.c (gtk_combo_popup_list): Sanitize
2064         move/resize code, removing various bad, non-functional
2065         hacks. (Fixes #65048, reported by Damon Chaplin.)
2066
2067 Fri Nov 30 16:12:21 2001  Owen Taylor  <otaylor@redhat.com>
2068
2069         * gdk/gdkpango.c: Patch from Hidetoshi Tajima to fix 
2070         bad match error when target drawable is not the 
2071         same depth as the root window. (#65841)
2072
2073         * HACKING: Update.
2074
2075 2001-11-29  Matthias Clasen  <matthiasc@poet.de>
2076
2077         * gdk/gdkwindow.c: Typo fix.
2078
2079 Thu Nov 29 21:35:56 2001  Kristian Rietveld  <kristian@planet.nl>
2080
2081         * gtk/gtkmenu.c (gtk_menu_motion_notify): add checks for
2082         empty menu items to behave like insensitive items (#59456)
2083
2084         * gtk/gtkmenuitem.c (gtk_real_menu_item_activate_item): select
2085         next item if the first item in the menu is a tear off item
2086         (#59456-2, suggestion by Matthias Clasen)
2087
2088         * gtk/gtkmenushell.c (gtk_menu_shell_button_press),
2089         (gtk_menu_shell_button_release), (gtk_menu_shell_entry_notify),
2090         (gtk_menu_shell_leave_notify), (gtk_real_menu_shell_move_current),
2091         (gtk_real_menu_shell_activate_current): add check, so empty
2092         menu items behave like insensitive items (#59456)
2093         
2094         * gtk/gtkmenuitem.[ch]: add _gtk_menu_item_is_selectable to make
2095         the checks more readable ...
2096         
2097         * gtk/gtkmenushell.c (gtk_menu_shell_button_press),
2098         (gtk_menu_shell_button_release): causes the menu to dropdown if the
2099         caption is clicked again (#64977)
2100
2101 2001-11-29  Havoc Pennington  <hp@redhat.com>
2102
2103         * gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
2104         assertion here that we were at the end iterator was not correct;
2105         change code to move us to the end iterator. bug #65731
2106
2107 Wed Nov 28 20:05:44 2001  Owen Taylor  <otaylor@redhat.com>
2108
2109         * gtk/gtkaccellabel.c (gtk_accel_label_refetch): Remove 
2110         improper use of g_locale_to_utf8() to convert from
2111         latin-1, and do it the easy way by building the string
2112         correctly in the first place.
2113
2114 Wed Nov 28 19:34:15 2001  Owen Taylor  <otaylor@redhat.com>
2115
2116         * gdk/x11/gdkproperty-x11.c (gdk_property_change, gdk_property_get): 
2117         Convert atoms to and from atoms for properties of type XA_ATOM.
2118         (#65555, patch from Hidetoshi Tajima)
2119
2120 Wed Nov 28 18:37:04 2001  Owen Taylor  <otaylor@redhat.com>
2121
2122         * gtk/gtksocket.[ch] (gtk_socket_add_id): Rename 'id' parameter 
2123         to avoid problems with Objective C.
2124
2125 2001-11-28  Matthias Clasen  <matthiasc@poet.de>
2126         
2127         * gtk/gtkaccelmap.c: Typo fixes. (#65607)
2128
2129         * gtk/gtkfixed.c (gtk_fixed_set_has_window, gtk_fixed_get_has_window):
2130         Fix docs. (#65505)
2131
2132         * gtk/gtkwindow.c (gtk_window_set_mnemnonic_modifier): Document.
2133
2134 Wed Nov 28 18:19:12 2001  Owen Taylor  <otaylor@redhat.com>
2135
2136         * gtk/gtkmenu.c (gtk_menu_set_tearoff_hints): Move
2137         accounting of menu->tearoff_scrollbar width to here
2138         and make sure we have the correct requisition.
2139
2140         * gtk/gtkmenu.c (gtk_menu_position): Fix fixme
2141         by using gtk_window_move().
2142
2143         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Force
2144         the requisition to be updated by calling
2145         gtk_widget_size_request() (#65440)
2146
2147         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_activate): 
2148         queue resize before calling gtk_menu_set_tearoff_state().
2149
2150 Wed Nov 28 22:20:44 2001  Kristian Rietveld  <kristian@planet.nl>
2151
2152         * demos/gtk-demo/editable_cells.c: fix typo
2153
2154         * demos/gtk-demo/list_store.c (add_columns): remove call to
2155         gtk_tree_view_column_set_clickable which didn't make sense
2156
2157 2001-11-28  Havoc Pennington  <hp@redhat.com>
2158
2159         * gtk/gtktextview.c (gtk_text_view_paint): put the warning
2160         explaining the validation error in front of the G_BREAKPOINT
2161
2162         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): call
2163         process updates with include_children = FALSE instead of TRUE, so
2164         we redraw the range only, not the whole darn window.  Making
2165         GtkRange a NO_WINDOW widget had weirdly caused the text widget
2166         Trace/breakpoint trap bug to become much easier to trigger.
2167
2168 Wed Nov 28 14:12:03 2001  Owen Taylor  <otaylor@redhat.com>
2169
2170         * gdk/Makefile.am (gdk_public_h_sources): Remove reference
2171         to gdkcursors.h.
2172
2173 2001-11-28  Matthias Clasen  <matthiasc@poet.de>
2174
2175         * gtk/gtkwindow.c (gtk_window_move): Add markup to docs.
2176
2177         * gdk/gdkcursor.h: Directly include the contents
2178         of gdkcursors.h in the GdkCursorType enum.
2179
2180         * gdk/gdkcursors.h: Deleted.
2181
2182         * gdk/gdkkeysyms.h: Remove XFree86-specific keysyms, add 
2183         header boilerplate.
2184
2185         * gdk/Makefile.am: Remove the X-derived-headers rule.
2186
2187 Tue Nov 27 20:17:55 2001  Owen Taylor  <otaylor@redhat.com>
2188
2189         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_activate):
2190         Notify on the ::active property _here_, not in
2191         gtk_check_menu_item_set_active.
2192
2193 Mon Nov 26 19:11:18 2001  Jonathan Blandford  <jrb@redhat.com>
2194
2195         * gtk/gtkcellrendererpixbuf.c
2196         (gtk_cell_renderer_pixbuf_class_init): add 2 properties
2197         (PIXBUF_EXPANDER_OPEN and PIXBUF_EXPANDER_CLOSED)
2198
2199 Sun Nov 25 21:19:02 2001  Owen Taylor  <otaylor@redhat.com>
2200
2201         * gdk/x11/gdkgeometry-x11.c: Add long, but horribly sketchy
2202         comment about what is going on in this file.
2203
2204         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
2205         x/y problem.
2206
2207 Sun Nov 25 18:59:19 2001  Owen Taylor  <otaylor@redhat.com>
2208
2209         * gtk/gtkoptionmenu.c (gtk_option_menu_calc_size): 
2210         Calculate size based on the _child_ of the menu item,
2211         not the menuitem. (#65005, Damon Chaplin)
2212
2213         * gtk/gtklistitem.c (gtk_list_item_new_with_label): Add
2214         some extra vertical padding to the label widget ... restores
2215         GTK+-1.2 spacing. (#65085, Damon Chaplin.)
2216
2217 2001-11-26  Tor Lillqvist  <tml@iki.fi>
2218
2219         * demos/pixbuf-demo.c
2220         * demos/gtk-demo/pixbufs.c: M_PI -> G_PI.
2221
2222         * demos/gtk-demo/main.c (read_line): No flockfile() or
2223         getc_unlocked() on Win32.
2224
2225 2001-11-25  Tor Lillqvist  <tml@iki.fi>
2226
2227         * configure.in
2228         * acconfig.h: As we now use GDir, no need to check for dirent.h.
2229
2230 Sun Nov 25 23:18:39 2001  Kristian Rietveld  <kristian@planet.nl>
2231
2232         * gtk/gtktexttag.c (gtk_text_tag_set_property): free font_desc
2233         when finished (#65266)
2234
2235 Sun Nov 25 23:16:29 2001  Kristian Rietveld  <kristian@planet.nl>
2236
2237         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): free
2238         data after we set the property. (#65264)
2239
2240 Sun Nov 25 23:14:06 2001  Kristian Rietveld  <kristian@planet.nl>
2241
2242         * gtk/gtkbutton.c: add destroy method so label_text gets freed
2243         if it has been allocated (#65268)
2244
2245 Sat Nov 24 13:39:51 2001  Manish Singh  <yosh@gimp.org>
2246
2247         * gdk/linux-fb/gdkdrawable-fb2.c
2248         * gdk/linux-fb/gdkpango-fb.c: update to latest Pango API
2249
2250         * gdk/linux-fb/gdkwindow-fb.c: implement gdk_window_show_unraised
2251
2252         * gdk/linux-fb/gdkfont-fb.c (gdk_font_load): plug memleak on
2253         set_family
2254         
2255         * gdk/linux-fb/gdkfbswitch.c: minor cleanups
2256
2257 Sat Nov 24 22:05:27 2001  Kristian Rietveld  <kristian@planet.nl>
2258
2259         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): don't
2260         deactivate menu when menu_item isn't sensitive (#61389)
2261
2262 Sat Nov 24 15:35:26 2001  Kristian Rietveld  <kristian@planet.nl>
2263
2264         * gtk/gtktreemodel.c (gtk_tree_model_foreach): free path before
2265         we return (in case of a failure here)
2266
2267 Fri Nov 23 19:22:50 2001  Owen Taylor  <otaylor@redhat.com>
2268
2269         * gtk/gtknotebook.c: Handle events in windows other
2270         than widget->event_window properly. (#65079, reported
2271         by Damon Chaplin)
2272
2273         * gdk/gdkevents.c (gdk_event_get_coords): Fix x/y bug.
2274
2275 Fri Nov 23 18:57:46 2001  Owen Taylor  <otaylor@redhat.com>
2276
2277         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): Align
2278         the image at the top. (#65020, request from Seth Nickell)
2279
2280 Fri Nov 23 18:49:53 2001  Owen Taylor  <otaylor@redhat.com>
2281
2282         * gtk/{gtkclist,gtkctree.c} (draw_row): Remove some strange
2283         arithmetic that was resulting in rows being drawn too low.
2284         (#65001, reported by Damon Chaplin)
2285
2286 Fri Nov 23 18:36:42 2001  Owen Taylor  <otaylor@redhat.com>
2287
2288         * gtk/gtkrange.c (gtk_range_button_press): Offset 
2289         invalidated range correctly.
2290
2291         * gtk/gtkclist.c (hadjustment_value_changed): Fix scrolling 
2292         of title window. (#65001, reported by Damon Chaplin)
2293
2294         * gtk/gtkcombo.c (gtk_combo_button_event_after): Replace
2295         horrible hack with use of ::event_after.
2296
2297 Thu Nov 22 15:01:03 2001  Owen Taylor  <otaylor@redhat.com>
2298
2299         * Version 1.3.11
2300
2301         * configure.in (ATK_REQUIRED_VERSION): Require
2302         GLib-1.3.11, Pango-0.22, ATK-0.7.
2303
2304         * tests/prop-editor.c (property_widget): Restore
2305         to working as well as it did before.
2306
2307         * gtk/gtklistitem.h: Mark deprecated since it is
2308         an integral part of GtkList.
2309
2310         * demos/gtk-demo/demo-common.h: New header file,
2311         for a common functions not important to the meat
2312         of the demos.
2313         
2314         * demos/gtk-demo/main.c (demo_ifind_file): Add a utility
2315         function to search for a file used by the demo.
2316
2317         * demos/*.c: Use demo_find_file.
2318
2319 2001-11-23  Matthias Clasen  <matthiasc@poet.de>
2320
2321         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag),
2322         gtk/gtkruler.c (gtk_ruler_get_metric): Actually commit typo 
2323         fixes already mentioned in ChangeLog entry on 2001-11-14.
2324
2325         * docs/reference/gtk/tmpl/drawing.sgml: Minor markup fixes.
2326
2327 2001-11-23  Hans Breuer  <hans@breuer.org>
2328
2329         * gdk/win32/gdkfont-win32.c (gdk_font_from_description) : 
2330         reflect Pango API change
2331
2332         * gtk/gtk.def : updated externals
2333
2334         * gtk/gtkfixed.c (gtk_fixed_get_has_window) : use 
2335         g_return_val_if_fail() to avoid 'function must return a value'
2336
2337         * gtk/gtkrc.c : added spaces to fix small coding style issues
2338         * gtk/gtkwidget.c : ... and linebreaks. Also a static for
2339         'static correctness'
2340
2341         * gtk/makefile.msc.in : temporary(?) disable gtk<plug|socket>
2342         because they only can be build on win32 after applying my patch
2343
2344 Wed Nov 21 22:55:37 2001  Tim Janik  <timj@gtk.org>
2345
2346         * gtk/gtkbutton.c (gtk_button_map): raise event window afte
2347         children, in order for the input pnly window to stay *above*
2348         children.
2349
2350 Wed Nov 21 22:44:27 2001  Tim Janik  <timj@gtk.org>
2351
2352         * tests/testtreeview.c: make hackery worse ;) by checking fundamental
2353         type walks againts G_TYPE_FUNDAMENTAL_MAX.
2354         
2355         * tests/prop-editor.c: disable type hackery.
2356
2357 Wed Nov 21 17:41:39 2001  Owen Taylor  <otaylor@redhat.com>
2358
2359         * gdk/gdkimage.c (gdk_image_get): Fix problem with
2360         lost parameter.
2361
2362 Wed Nov 21 17:01:25 2001  Owen Taylor  <otaylor@redhat.com>
2363
2364         * gtk/gtkcellrenderer.h gtk/gtktreemodel.h 
2365         gtk/gtktreeprivate.h gtk/gtktreesortable.h: Remove
2366         trailing commas in enum declarations.
2367
2368 Wed Nov 21 15:21:26 2001  Owen Taylor  <otaylor@redhat.com>
2369
2370         * configure.in (GTK_MICRO_VERSION): Version 1.3.11, 
2371         interface, binary age 0.
2372
2373         * NEWS: Updates
2374
2375         * gtk/gtktreemodel.c gtk/gtkrc.c gtk/gtkentry.c: SGML
2376         fixes in docs.
2377
2378         * gtk/gtkmain.h: Remove unused and misnamespaced
2379         get_gtk_win32_directory() prototype.
2380
2381         * gdk/gdkimage.c (gdk_image_get): Fix parameter names
2382         to match header.
2383
2384         * gdk/gdkwindow.h: Fix parameters to gdk_window_shape_combine_mask(),
2385         gdk_window_set_transient_for(), gdk_window_set_geometry_hints(),
2386         to match docs.
2387
2388         * gdk/gdkevents.c (gdk_event_get_coords)
2389           gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_active)
2390           gtk/gtkdnd.c (gtk_drag_set_icon_stock):
2391         Fix parameter names in docs.
2392         
2393         * docs/faq/Makefile.am (FAQ_FILES): Add missing files.
2394         (#64961, Akira Tagoh)
2395
2396 Wed Nov 21 11:41:29 2001  Owen Taylor  <otaylor@redhat.com>
2397
2398         * tests/testgtk.c (create_tooltips): Ref-sink the tooltips object.
2399
2400         * gtk/gtktoolbar.c (gtk_toolbar_init): Ref-sink the tooltips object.
2401
2402         * gtk/gtkfilesel.c (open_new_dir): Fix some constness warnings.
2403
2404         * gtk/gtkaccelgroup.c: Rename gtk_accel_groups_from_acceleratable()
2405         back to gtk_accel_groups_from_object(), change @acceleratable
2406         parameter to gtk_accel_groups_activate() accordingly.
2407
2408         * gtk/gtkaccelmap.c (gtk_accel_map_lookup_entry): Remove
2409         left-over comment about quark return.
2410
2411         * gtk/gtkaccelmap.h: Fix spelling of gtk_accel_map_foreach_unfiltered().
2412
2413         * gtk/gtk-boxed.defs (GtkIconSource): added as a boxed type.
2414         (Patch from Matt Wilson)
2415
2416         * gtk/gtkobject.c (gtk_object_finalize): Warn if a floating
2417         object is finalized.
2418
2419 Tue Nov 20 21:25:08 2001  Tim Janik  <timj@gtk.org>
2420
2421         * applied patch from owen to get rid of accel map notifiers.
2422         changed things to fix reentrancy and API as discussed on gtk-devel.
2423
2424         * gtk/gtkaccelgroup.[hc]:
2425         (gtk_accel_group_finalize): unregister this accel group from all
2426         accel map paths.
2427         (accel_closure_invalidate): handle invalidation of closures by
2428         disconnecting their accelerators.
2429         (quick_accel_add): move closure connection and changed notification
2430         into this function to reduce code duplication. don't emit change
2431         notification on closurers without accelerators.
2432         (quick_accel_remove): rewrite, do the exact opposite of quick_accel_add
2433         for a GtkAccelGroupEntry.
2434         (gtk_accel_group_connect): get rid of the accel_path_quark argument.
2435         (gtk_accel_group_connect_by_path): new function to add accelerators
2436         with an accel path.
2437         (gtk_accel_group_disconnect_closure): new function, disconnect a
2438         closure from of an accel group.
2439         (gtk_accel_group_disconnect): loop over all closure for a accel_ley,
2440         accel_mods pair and remove them.
2441         (_gtk_accel_group_reconnect): new function that basically does
2442         gtk_accel_group_disconnect_closure() and
2443         gtk_accel_group_connect_by_path() once an accel path changed.
2444         (gtk_accel_groups_disconnect_closure): remove this, there's
2445         gtk_accel_group_disconnect_closure().
2446         
2447         * gtk/gtkaccelmap.[hc]: keep list of accel groups per entry now,
2448         nuke notifiers.
2449         (_gtk_accel_path_is_valid): make this non-static for
2450         gtkwidget.c and gtkaccelgroup.c assertions.
2451         (gtk_accel_map_add_notifer): removed this function.
2452         (gtk_accel_map_remove_notifer): same.
2453         (_gtk_accel_map_add_group):
2454         (_gtk_accel_map_remove_group): (un-)register accel groups, with
2455         accel paths for correct propagation.
2456         (gtk_accel_map_add_entry): return void.
2457         (gtk_accel_map_lookup): return gboolean instead of GQuark.
2458         
2459         * gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): always
2460         set accel_path on widgets.
2461         
2462         * gtk/gtkwidget.[hc]:
2463         (accel_path_changed): got rid of this, changes are handled by
2464         accel maps internally now.
2465         (_gtk_widget_set_accel_path): get things to work without notifiers.
2466         (gtk_widget_list_accel_closures): list accel closures of a widget.
2467         
2468         * gtk/gtkwindow.[hc]: rename ::accels_changed, to ::keys_changed.
2469
2470 2001-11-20  Matthias Clasen  <matthiasc@poet.de>
2471
2472         * gtk/gtkcontainer.c (gtk_container_propagate_expose): Typo fix.
2473
2474 Tue Nov 20 23:01:01 2001  Kristian Rietveld  <kristian@planet.nl>
2475
2476         * gtk/gtktreemodel.c (gtk_tree_row_reference_unref_path):
2477         replace gboolean free_last in the function parameters with
2478         gint depth. Changes to reflect new situation.
2479
2480         * gtk/gtktreemodel.c (gtk_tree_row_reference_unref_path_helper):
2481         replace gboolean free_last, with gint depth, add gint current_depth.
2482         Changes to reflect new situation.
2483
2484         * gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): changes
2485         to reflect new situation
2486
2487         * gtk/gtktreemodel.c (gtk_tree_row_reference_free): ditto
2488
2489 Tue Nov 20 12:37:10 2001  Owen Taylor  <otaylor@redhat.com>
2490
2491         * gtk/gtknotebook.c (gtk_notebook_paint): Fix problem
2492         where notebook gap was double shifted by allocation.x/y
2493
2494         * gtk/gtknotebook.c (gtk_notebook_unmap): Chain up
2495         to unmap children.
2496
2497 Tue Nov 20 14:49:59 2001  Tim Janik  <timj@gtk.org>
2498
2499         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): fix
2500         allocation to be relative to paned->allocation, now
2501         that this is a NO_WINDOW widget.
2502         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): same here.
2503
2504         * gtk/gtkaccellabel.c (gtk_accel_label_class_init): ::closure
2505         needs to be a boxed property.
2506
2507 Mon Nov 19 17:34:40 2001  Owen Taylor  <otaylor@redhat.com>
2508
2509         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator):
2510         Use the widget's state when drawing the indicator, as
2511         in GtkCheckButton. This gives us color changes for
2512         un-prelighted checkbuttons. (#63308, Matt Wilson)
2513
2514 Mon Nov 19 17:11:23 2001  Owen Taylor  <otaylor@redhat.com>
2515
2516         (Fixes related to #64428, Michael Meeks)
2517
2518         * gtk/gtkplug.c (gtk_plug_set_is_child): Unmap the
2519         widget, so it gets mapped again properly when we
2520         add to a parent.
2521
2522         * gtk/gtkplug.c (_gtk_plug_add_to_socket): Set
2523         plug->socket_window. 
2524
2525         * gtk/gtkplug.c (_gtk_plug_remove_from_socket): Set
2526         socket_window to NULL, not FALSE.
2527
2528         * gtk/gtkplug.c (_gtk_plug_add_to_socket): Set
2529         socket->same_app to TRUE. (#64612)
2530
2531 Mon Nov 19 15:50:41 2001  Owen Taylor  <otaylor@redhat.com>
2532
2533         * gtk/gtkfixed.[ch] docs/Changes-2.0.txt: Add 
2534         gtk_fixed_set/get_has_window() to remove criticism
2535         about GTK_WIDGET_SET_FLAGS() hacks.
2536
2537 2001-11-19  Michael Natterer  <mitch@gimp.org>
2538
2539         * gtk/gtknotebook.c: show notebook->event_window with
2540         gdk_window_show_unraised(), so it doesn't catch the events which
2541         should go to the tab widgets first.
2542
2543 Mon Nov 19 15:30:51 2001  Jonathan Blandford  <jrb@redhat.com>
2544
2545         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add a
2546         "resizable" property, to get rid of the
2547         GTK_TREE_VIEW_COLUMN_RESIZABLE sizing flag.
2548         (gtk_tree_view_column_set_resizable): New function to set resizable.
2549         (gtk_tree_view_column_set_resizable): getter.
2550
2551         * tests/testtreecolumns.c (add_clicked): modify for above change.
2552
2553         * Makefile.am (install-data-hook): remove old .pc files before
2554         installing the new one.  We used to symlink this, and it will
2555         break old installs.
2556
2557 2001-11-19  Havoc Pennington  <hp@pobox.com>
2558
2559         * tests/testtext.c (fill_example_buffer): put in a test for
2560         negative indentation values
2561
2562 Mon Nov 19 14:08:18 2001  Owen Taylor  <otaylor@redhat.com>
2563
2564         * gtk/gtklabel.c (gtk_label_init): Change default for
2565         justify to GTK_JUSTIFY_LEFT. Assuming that multiline
2566         labels are most often wrapped labels, this gives better
2567         compatibility with GTK+-1.2, where justification was
2568         ignored for wrapped labesl and is a more sensible
2569         default in any case. (#64489)
2570
2571         * gtk/gtklabel.c (gtk_label_class_init): Fix default
2572         for wrap property to FALSE.
2573
2574 2001-11-19  jacob berkman  <jacob@ximian.com>
2575
2576         * gtk/Makefile.am (gtk_extra_sources): add gtkmarshal.list
2577
2578 Mon Nov 19 13:56:45 2001  Owen Taylor  <otaylor@redhat.com>
2579
2580         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): Use 
2581         RevertToParent, not RevertToNone. (#64613, 
2582         Matthias Clasen)
2583
2584 Mon Nov 19 12:28:02 2001  Owen Taylor  <otaylor@redhat.com>
2585
2586         * gtk/gtkframe.c (gtk_frame_class_init): label_xalign
2587         and label_yalign need to be float properties to
2588         correspond to GTK+-1.2, to gtk_frame_set_label_align,
2589         and to the types of the xalign and yalign properties of GtkMisc.
2590         (#63484, Vitaly Tishkov)
2591
2592 Mon Nov 19 12:24:30 2001  Owen Taylor  <otaylor@redhat.com>
2593
2594         * gtk/gtksocket.h (struct _GtkSocketClass): Fix return
2595         of plug_added vfunc. (#64408, Jeff Franks)
2596
2597 Mon Nov 19 12:07:20 2001  Owen Taylor  <otaylor@redhat.com>
2598
2599         * configure.in (deps): Undef HAVE_STDLIB_H before
2600         checking for jpeg, because jconfig.h has this
2601         in it too (%#$@!). Fix from Matthias Clasen, #64500.
2602
2603 Mon Nov 19 11:30:03 2001  Owen Taylor  <otaylor@redhat.com>
2604
2605         * gdk/x11/gdkproperty-x11.c (get_atom_name): Fix a 
2606         memory leak when retrieving atom names. (Michael Meeks,
2607         #64508)
2608
2609 2001-11-18  Alex Larsson  <alexl@redhat.com>
2610
2611         * gdk/x11/gdkfont-x11.c (gdk_font_from_description):
2612         Update to new Pango API.
2613         
2614 Sun Nov 18 19:47:29 2001  Owen Taylor  <otaylor@redhat.com>
2615
2616         * gtk/gtkobject.h docs/Changes-2.0.txt: Rename the
2617         GTK_DESTROYED flag to GTK_IN_DESTRUCTION, remove the
2618         GTK_OBJECT_DESTROYED() check macro.
2619
2620         * gtk/gtkbindings.c (gtk_bindings_activate): Remove
2621         instances of GTK_OBJECT_DESTROYED() that weren't
2622         needed any more.
2623
2624         * gtk/gtkdialog.c: Exchange use of GTK_OBJECT_DESTROYED
2625         for a connection to ::destroy.
2626
2627 Sun Nov 18 18:18:11 2001  Owen Taylor  <otaylor@redhat.com>
2628
2629         * gtk/gtkfixed.c: Make a NO_WINDOW widget, as it should
2630         have been since the beginning, but as special hack,
2631         allow clearing the NO_WINDOW flag to get a window widget.
2632
2633 Sun Nov 18 22:01:36  Kristian Rietveld  <kristian@planet.nl>
2634
2635         * gtk/gtktreestore.c: return TRUE when value changed, so
2636         row_changed is being emitted
2637
2638 2001-11-18  Hans Breuer  <hans@breuer.org>
2639
2640         * gtk/gdkaccelmap.c : make it compile with msvc: !HAVE_UNISTD_H;
2641         no label without op, even if it's a no-op.
2642
2643         * gtk/gtk.def :
2644         * gtk/makefile.msc.in : reflect marshaler split, some clean-up  
2645
2646         * config.h.win32.in : remove definition of HAVE_DIRENT_H
2647         * gtk/gtkfilesel.c : due to GDir (new in glib) DIR isn't
2648         required anymore, replace it.
2649         * gtk/queryimmodules.c : DIR -> GDir replacement, also
2650         getcwd() -> g_get_current_dir()
2651
2652         * gdk/win32/gdkgeometry-win32.c : adapt to refactored gdkgeometry-x11.c
2653         Even 'noisy laugh' scolling appears to work, though I still can't
2654         claim to have fully understood what it is supposed to do ...
2655
2656 Sat Nov 17 21:07:46 2001  Owen Taylor  <otaylor@redhat.com>
2657
2658         * gtk/gtkenums.h: Include glib-object.h instead of
2659         gobject/gsignal.h
2660
2661         * gdk/{gdkinternals.h,gdkwindow.c,gdkwindow.[ch],
2662           x11,{fb,win32,x11/gdkwindow-*.c}: Add a dummy GdkScreen
2663         argument to the window_at_pointer() field of
2664         GdkPointerHooks. (Patch from Erwann Chenede)
2665
2666         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Up
2667         to 6 pointers.
2668
2669 2001-11-17  Matt Wilson  <msw@redhat.com>
2670
2671         * gtk/gtkenums.h: must include glib-object.h only
2672
2673 Sat Nov 17 19:26:20 2001  Owen Taylor  <otaylor@redhat.com>
2674
2675         * gtk/gtkwindow.c (gtk_window_key_press_event): Reprioritize
2676         key bindings in order of visibility - mnemonics, then 
2677         accelerators, then send key to the focus widget, then
2678         bindings on the GtkWindow.
2679
2680         * gtk/gtklayout.h docs/Changes-2.0.txt tests/testgtk.c: 
2681         Removed the xoffset, yoffset fields of GtkLayout which were
2682         identically zero for compat with 1.2, but were no longer 
2683         compatible with all uses of these fields in 1.2.
2684
2685         * gtk/gtkwindow.c (gtk_window_set_default): Remove 
2686         unused variable.
2687
2688 Sat Nov 17 19:08:13 2001  Owen Taylor  <otaylor@redhat.com>
2689
2690         * tests/testtreeview.c (gtk_tree_model_types_get_type): 
2691         We no longer need to create the signals here ... they
2692         come from the interface.
2693
2694         * gtk/maketypes.awk: Use GType, not GtkType in output.
2695
2696         * gtk/gtktypeutils.h: Mark virtually all of this
2697         file deprecated.
2698
2699         * gtk/gtkcontainer.h: Deprecate gtk_container_foreach_full;
2700         the only use of this function is the GtkArg using
2701         GtkCallbackMarshal, since destroy notification is
2702         silly here.
2703
2704 Sat Nov 17 18:26:45 2001  Owen Taylor  <otaylor@redhat.com>
2705
2706         * gtk/Makefile.am gtk/gtkmarshal.list gtk/gtkmarshalers.list
2707         gtk/*.c gtk/gtksignal.h: Make gtkmarshal.list/gtkmarshal.h
2708         only for compatibility with GTK+-1.2; and deprecate it; 
2709         put all marshalers we actually use into gtkmarshalers.list 
2710         and use the _gtk_marshal_ prefix for these marshalers.
2711
2712 2001-11-17  Murray Cumming  <murrayc@usa.net>
2713
2714         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init):
2715         The first parameters of the signals are now registered as
2716         GTK_TYPE_TEXT_TAG instead of G_TYPE_OBJECT.
2717         
2718 2001-11-17  Tor Lillqvist  <tml@iki.fi>
2719
2720         * gtk-zip.sh.in: Build separate runtime and developer
2721         packages.
2722
2723         * gtk/gtk.def: Reflect recent accelerator-related changes.
2724
2725 Fri Nov 16 19:44:35 2001  Owen Taylor  <otaylor@redhat.com>
2726
2727         * gtk/gtkwindow.c (gtk_window_set_default): Move 
2728         notification of "has_default" to here, so it
2729         is safe to call gtk_window_set_default() instead
2730         of gtk_widget_grab_default().
2731
2732         * gtk/gtkwindow.c (gtk_window_set_focus): Make it call
2733         gtk_widget_grab_focus(), which then calls 
2734         _gtk_widget_internal_set_focus(). This makes 
2735         gtk_window_set_focus() a safe way of both setting
2736         and unsetting the focus widget.
2737
2738         * gtk/gtkwidget.c (gtk_widget_propagate_state): Use
2739         gtk_widget_get_toplevel(), instead of gtk_widget_ancestor
2740         to find the toplevel.
2741
2742         * gtk/gtkwindow.h: Move gtk_window_set_focus/default
2743         from the "internal functions" section.
2744
2745 2001-11-16  jacob berkman  <jacob@ximian.com>
2746
2747         * tests/testgtk.c (create_radio_buttons): add some no-indicator
2748         radio buttons
2749
2750         * gtk/gtkradiobutton.c (gtk_radio_button_init): since we are
2751         initially active, also initially be depressed
2752         (gtk_radio_button_clicked): also update our depressed state
2753
2754 Thu Nov 15 12:54:36 2001  Owen Taylor  <otaylor@redhat.com>
2755
2756         * gtk/gtkwindow.c (gtk_window_key_press_event): Propagate
2757         key press events not just to focus/window but also to
2758         intermediate widgets.
2759
2760         * gtk/gtknotebook.c: Handle Ctrl-PageUp/Ctrl-PageDown
2761         to switch pages. (Needs some work on handling focus
2762         when switching pages.)
2763
2764 Fri Nov 16 14:06:31 2001  Owen Taylor  <otaylor@redhat.com>
2765
2766         * gtk/gtknotebook.c: Fix child allocations to be relative to 
2767         widget position and some drawing bugs.
2768
2769         * gtk/gtkmenuitem.c (gtk_menu_item_paint): Fix problem
2770         with reading uninitialized variable.
2771
2772 Fri Nov 16 00:16:40 2001  Owen Taylor  <otaylor@redhat.com>
2773
2774         * gtk/{gtkmenuitem.[ch],gtkcheckmenuitem.c,gtkimagemenuitem.c,
2775         gtkradiomenuitem.c,gtktearoffmenuitem.c}: Make Menu items
2776         NO_WINDOW widgets.
2777
2778         * gtk/gtk{h,v,}paned.[ch]: Make NO_WINDOW widgets, some
2779         cleanup.
2780
2781         * gtk/gtkstyle.c (gtk_default_draw_handle): Don't assume
2782         we are drawing in a window when drawing the paned handle.
2783
2784 2001-11-16  Sven Neumann  <sven@gimp.org>
2785
2786         * demos/gtk-demo/appwindow.c
2787         * demos/gtk-demo/menus.c: reduce compiler warnings
2788
2789 Thu Nov 15 19:47:09 2001  Owen Taylor  <otaylor@redhat.com>
2790
2791         * demos/gtk-demo/main.c (button_press_event_cb): Remove 
2792         unused callback to make things compile with 
2793         gtk_tree_view_path_at_pos_change().
2794
2795 Thu Nov 15 18:44:33 2001  Jonathan Blandford  <jrb@redhat.com>
2796
2797         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): maybe fix #64160
2798
2799 2001-11-15  Matthias Clasen  <matthiasc@poet.de>
2800
2801         * gtk/gtkwindow.c (gtk_window_new): Move '.' out of quote. (#64407)
2802  
2803 Thu Nov 15 16:24:55 2001  Jonathan Blandford  <jrb@redhat.com>
2804
2805         * gtk/gtktreeview.c (gtk_tree_view_get_bin_window): New function
2806         to get a GdkWindow to compare event->window to.
2807
2808         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_left_right): emit
2809         the signal for lateral motion too, #64361
2810
2811         * gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): remove window
2812         arg as it is useless, #64137
2813
2814 Thu Nov 15 16:07:42 2001  Owen Taylor  <otaylor@redhat.com>
2815
2816         * gtk/gtknotebook.c: Some small drawing fixes for scroll arrows.
2817
2818 Thu Nov 15 14:19:34 2001  Owen Taylor  <otaylor@redhat.com>
2819  
2820         * gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Cal
2821         gdk_window_invalidate_maybe_recurse() for recursion.
2822         (Soeren Sandmann)
2823
2824         * gtk/gtkviewport.c: Make !redraw_on_allocate. (Soeren Sandmann)
2825  
2826         * gtk/gtkcontainer.c (gtk_container_expose): Call
2827         gtk_container_forall() not _foreach() to propagate,
2828         since we need to propagate exposes to internal children
2829         as well.
2830
2831         * gtk/gtkwidget.c (gtk_widget_set_events, gtk_widget_add_events): 
2832         Remove the restriction of only being able to call these
2833         on window widgets, since we have lots of NO_WINDOW widgets
2834         with windows now; for add events, recurse over the children
2835         of widget->window to find one owned by the widget.
2836
2837         * gtk/gtkbutton.[ch]: Make a NO_WINDOW widget, using an input-only
2838         window to catch events.
2839
2840         * gtk/gtktogglebutton.[ch]: Remove the code for switching
2841         between NO_WINDOW and WINDOW widgets based on the mode.
2842
2843         * gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c gtk/gtkclist.c
2844         gtk/gtktreeview.c: Adopt to NO_WINDOW change for GtkButton.
2845
2846         * gtk/gtkrange.[ch]: Make into a NO_WINDOW widget.
2847
2848         * gtk/gtkhscale.c, gtk/gtkvscale.c: Adopt to NO_WINDOW
2849         change for range.
2850
2851         * gtk/gtknotebook.[ch]: Make into a NO_WINDOW widget.
2852  
2853         * docs/Changes-2.0.txt: Add a note about the NO_WINDOW changes.
2854
2855 Thu Nov 15 11:59:35 2001  Owen Taylor  <otaylor@redhat.com>
2856
2857         * gtk/gtkmessagedialog.c: Patch from Murray Cumming to add
2858         "message_type" and "buttons" CONSTRUCT properties. (#64069)
2859
2860         * tests/testsocket.c: Expand tests to add a "local passive
2861         child" (Test case for #64428)
2862
2863 2001-11-14  jacob berkman  <jacob@ximian.com>
2864
2865         * gtk/gtkgamma.c (button_clicked_callback): create the label with
2866         a mnemonic
2867
2868 2001-11-15  Sven Neumann  <sven@gimp.org>
2869
2870         * tests/testgtk.c: make it compile without warnings.
2871
2872 2001-11-14  Alex Larsson  <alexl@redhat.com>
2873
2874         * gtk/gtklabel.c:
2875         Don't recalculate the layout on each gkt_label_ensure_layout () for
2876         wrapped labels.
2877
2878 Wed Nov 14 17:40:23 2001  Jonathan Blandford  <jrb@redhat.com>
2879
2880         * gtk/gtktreeview.c (gtk_tree_view_get_expander_column): Return
2881         the currently selected column when we get the column, #64380
2882
2883         * gtk/gtkentry.c (gtk_cell_editable_key_press_event): Handle Esc
2884         to cancel CellRendererText editting, #63613
2885
2886         * gtk/gtkcellrenderertext.c: ditto
2887
2888         * gtk/gtkcellrenderertext.h: formatting changes
2889
2890 2001-11-14  Matthias Clasen  <matthiasc@poet.de>
2891
2892         * gtk/gtkbutton.c (gtk_button_get_label): Rearrange docs (#64566)
2893
2894         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): Typo fix (#64474)
2895
2896         * gtk/gtkruler.c (gtk_ruler_get_metric): Typo fix (#64470)
2897
2898         * gtk/gtknotebook.c (gtk_notebook_prepend_page): Typo fix (#64467)
2899
2900         * gtk/gtklabel.c: Documentation fixes (#64452)
2901
2902 2001-11-14  Daniel Egger  <degger@fhm.edu>
2903
2904         * gdk-pixbuf/io-xpm.c: 
2905         (xpm_skip_whitespaces): Remove unused static function.
2906         (xpm_skip_string): Dito.        
2907         (xpm_extract_color): Declare const variable const to avoid warnings. 
2908
2909         * gtk/gtkfixed.c: (gtk_fixed_map): Remove unused static function.
2910         
2911         * gtk/gtkplug.c: #if 0'ed prototype for #if 0'ed code.
2912         
2913         * gtk/gtksocket.c: Change type of mask to g_message to %ld for 
2914         a long.
2915
2916 Wed Nov 14 15:14:48 2001  Owen Taylor  <otaylor@redhat.com>
2917
2918         * gtk/gtkcontainer.c (gtk_container_idle_sizer): Back
2919         out accidental commit of debugging timing code.
2920
2921 2001-11-14  Havoc Pennington  <hp@redhat.com>
2922
2923         * gtk/gtktextview.c (gtk_text_view_move_cursor): fix Control-E so
2924         it doesn't move to a new line each time you press it
2925
2926         * gtk/gtktextiter.c (gtk_text_iter_forward_to_line_end): fix
2927         return value, #62987
2928
2929 2001-11-14  Havoc Pennington  <hp@redhat.com>
2930
2931         * tests/testtextbuffer.c (main): bulk of the tests were commented
2932         out, oops.
2933
2934         * gtk/gtktextiter.c (find_paragraph_delimiter_for_line): make this 
2935         function work, should resolve #63426
2936         (gtk_text_iter_ends_line): return TRUE for the end iterator
2937
2938         * gtk/gtktextiter.h: put padding back in GtkTextIter, I thought of
2939         a couple things that might get cached in here.
2940
2941 Tue Nov 13 21:00:59 2001  Jonathan Blandford  <jrb@redhat.com>
2942
2943         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_class_init): new
2944         "model" construct property for language bindings.
2945
2946         * gtk/gtktreestore.c (gtk_tree_store_set_column_types): New
2947         function to let you set the column types of a GtkTreeStore for
2948         language bindings.
2949
2950         * gtk/gtkliststore.c (gtk_list_store_set_column_types): ditto.
2951
2952 2001-11-13  Havoc Pennington  <hp@redhat.com>
2953
2954         * gtk/gtktextview.c (gtk_text_view_add_child_in_window): docs
2955         including reference to bugzilla bug about how we should have 
2956         a better way of positioning children
2957
2958         * gtk/gtktextview.h (struct _GtkTextViewClass): add some padding
2959
2960         * gtk/gtktextview.c (gtk_text_view_size_allocate): assign zero
2961         size to side rects if they don't exist, #63438
2962
2963 2001-11-13  Havoc Pennington  <hp@redhat.com>
2964
2965         * gtk/gtktextview.c (gtk_text_view_key_press_event): fix to
2966         properly replace selection with Return or Tab
2967
2968         * gtk/gtktextdisplay.c (gtk_text_layout_draw): fix broken code
2969         that didn't locate the end of the line correctly, should fix #63800
2970
2971 2001-11-13  Havoc Pennington  <hp@redhat.com>
2972
2973         * gtk/gtktextview.c (gtk_text_view_size_request): add border width
2974         to requisition, request non-anchored children
2975         (gtk_text_view_size_allocate): handle border width, allocate
2976         non-anchored children
2977         (text_view_child_new_window): set the child as object data
2978         (gtk_text_view_move_child): allow children at negative
2979         coordinates, no reason why not
2980         (gtk_text_view_forall): make it copy the list of children before
2981         walking it, to avoid reentrancy issues  
2982         (gtk_text_view_move_child): short-circuit if position is unchanged
2983         (changed_handler): only queue_resize if requisition has changed
2984         (gtk_text_view_init): don't redraw_on_allocate, since we can do 
2985         a better job of invalidation ourselves
2986
2987         * tests/testtext.c: add tests for the fixed-position children
2988
2989 Tue Nov 13 19:51:43 2001  Tim Janik  <timj@gtk.org>
2990
2991         * gtk/gtkwindow.c (handle_accels_changed): protect idle handle
2992         with gdk threads macro.
2993
2994 Mon Nov 12 23:08:37 2001  Tim Janik  <timj@gtk.org>
2995
2996         * gtk/maketypes.awk: fix type utils generation on unix.
2997
2998         * gtk/gtkaccelmap.[hc]: new files, implementing a global accelerator
2999         registry.
3000
3001         * gtk/gtkaccelgroup.[hc]: major API/implementation revamp:
3002         removed GTK_ACCEL_SIGNAL_VISIBLE, gtk_accel_group_get_default,
3003         gtk_accel_group_get_entry, gtk_accel_group_(un)lock_entry,
3004         gtk_accel_group_add/remove, gtk_accel_group_handle_add/remove,
3005         gtk_accel_group_create_add/remove, gtk_accel_group_entries_from_object.
3006         introduced ::accel_changed signal for change notification, and
3007         gtk_accel_group_connect/disconnect to connect closures to accel groups.
3008         made gtk_accel_group_attach/detach and gtk_accel_group_activate private
3009         functions.
3010         deprecated gtk_accel_group_ref/unref.
3011
3012         * gtk/gtkaccellabel.[hc]: changes to make accellabels pay attention
3013         to accel group changed notification and basically operate on closures.
3014         removed gtk_accel_label_get_accel_object and
3015         gtk_accel_label_set_accel_object.
3016         introduced gtk_accel_label_set_accel_closure, and for convenience,
3017         gtk_accel_label_set_accel_widget.
3018
3019         * gtk/gtkitemfactory.[hc]: removed accelerator propagation code
3020         which mostly moved into gtkaccelmap.[hc].
3021         removed gtk_item_factory_parse_rc*, gtk_item_factory_dump_*
3022         and gtk_item_factory_print_func.
3023
3024         * gtk/gtkmain.c: call _gtk_accel_map_init().
3025
3026         * gtk/gtkmenuitem.[hc]: introduced gtk_menu_item_set_accel_path(),
3027         that associates an accelerator path with menu items, through which
3028         persistent accelerator settings on menu items are enabled.
3029
3030         * gtk/gtkmenu.[hc]: added gtk_menu_set_accel_path() so accelerator
3031         paths of menu item can be default constructed to allow installation
3032         of accelerators on menu items that don't come with an accelerator
3033         binding by default.
3034
3035         * gtk/gtksettings.c: fix STRING type rc settings by special casing
3036         them appropriately in the parser.
3037
3038         * gtk/gtksignal.[hc]: allow a class function offset of 0 for
3039         gtk_signal_newv().
3040
3041         * gtk/gtkwidget.[hc]: accelerator API revamp.
3042         removed ::accelerator_add/remove signals, gtk_widget_accelerator_signal,
3043         gtk_widget_accelerators_locked, gtk_widget_remove_accelerators and
3044         gtk_widget_(un)lock_accelerators.
3045         accelerators maintained through gtk_widget_add/remove_accelerator()
3046         are not runtime changable now, the correct sequence to setup a
3047         widget for runtime changable accelerators is now:
3048           gtk_accel_map_add_entry(accel_path, key, mods);
3049           _gtk_widget_set_accel_path(widget, accel_path, accel_group);
3050
3051         * gtk/gtkwindow.[hc]: accelerator changes, proxy and coalesce accel
3052         group changes (as well as mnemonic changes) through the new signal
3053         ::accels_changed.
3054
3055 Sat Nov 10 12:08:56 2001  Tim Janik  <timj@gtk.org>
3056
3057         * gtk/gtksettings.c (_gtk_settings_parse_convert): properly handle
3058         GString->string conversions.
3059
3060 Mon Nov 12 19:33:52 2001  Owen Taylor  <otaylor@redhat.com>
3061
3062         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): Warn
3063         if GTK_DIALOG_NO_SEPARATOR is passed in and ignore it.
3064
3065 2001-11-12  Matthias Clasen  <matthiasc@poet.de>
3066
3067         * gtk/gtktreeview.c: Documentation fixes. (#64377)
3068         
3069         * gtk/gtktreestore.c: Documentation fixes. (#64376)
3070
3071 2001-11-11  Matthias Clasen  <matthiasc@poet.de>
3072
3073         * gtk/gtkiconfactory.c, gtk/gtktextbuffer.c, gtk/gtktreemodel.c,
3074         gtk/gtkwindow.c, gtk/gtknotebook.c, gtk/gtkradiobutton.c, 
3075         gtk/gtktextiter.c, gtk/gtkdialog.c: Mass fixing of trivial doc bugs.  
3076         (#63544, #57007, #64141, #63472, #57108, #60818, #61562)
3077
3078 2001-11-10  Hans Breuer  <hans@breuer.org>
3079
3080         * gdk/win32/gdkevents-win32.c (gdk_event_translate) : make sure 
3081         we know what we are talking about when asked for MINMAXINFO.
3082         Also some cleaning for !HAVE_DIMM_H etc.
3083
3084 2001-11-10  Matthias Clasen  <matthiasc@poet.de>
3085
3086         * gtk/gtktreeviewcolumn.c: Fix docs for 
3087         gtk_tree_view_column_set_sort_order. (#62647)
3088         
3089         * gtk/gtkcontainer.c: Fix docs for 
3090         gtk_container_set_border_width. (#64139)
3091
3092         * gtk/gtkcolorsel.c: Documentation fixes.
3093
3094 2001-11-10  Hans Breuer  <hans@breuer.org>
3095
3096         * gtk/gtkfontsel.c : use g_strcasecmp(), some poor platforms
3097         don't have strcasecmp()
3098
3099         * gtk/gtktextview.c : to fix crashing on e.g. TextView::find need 
3100         to remove the idle funcs in gtk_text_view_destroy (). To reduce 
3101         code duplication wrap it in its own function and use it in 
3102         gtk_text_view_unrealize () and gtk_text_view_destroy_layout ()
3103
3104         * gdk/win32/gdkdrawable-win32.c : implement the finalize
3105         method like the X11 version does, allow to set_colormap NULL
3106         * gdk/win32/gdkwindow-win32.c : adapt GdkWindowImplWin32::
3107         set_colormap, also some adaption to X11 version :
3108         (gdk_window_hide) call _gdk_window_clear_update_area
3109         (gdk_window_reparent) call _gdk_window_init_position
3110
3111         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints) : 
3112         call gdk_window_resize() after all hints are set, because the
3113         window resizing process (WM_GETMINMAXINFO) takes all of them into 
3114         account
3115
3116         * gdk/win32/gdkfont-win32.c : make gdk_font_equal return a gboolean
3117
3118         * gdk/win32/gdkvisual-win32.c : register GdkVisual with 
3119         sizeof (GdkVisualPrivate)
3120
3121         * gdk/gdk.def gtk/gtk.def : upated externals
3122
3123         * gdk/makefile.msc gdk/win32/makefile.msc gdk-pixbuf/makefile.msc
3124           gdk-pixbuf/pixops/makefile.msc gtk/makefile.msc.in tests/makefile.msc :
3125         from now on use make.msc from $(TOP)/glib/build/win32
3126
3127         * gtk/stock-icons/makefile.msc : add stock_missing_image
3128
3129 2001-11-08  Tor Lillqvist  <tml@iki.fi>
3130
3131         * README.win32: Add headers. Add section about ActiveIMM.
3132
3133         * configure.in: Add --with-ie55 flag to specify the location of
3134         the "IE55 libs and headers" package downloadable from Microsoft,
3135         which contains, among other things, the Active IMM header dimm.h
3136         and UUID library uuid.lib. Use test -f instead of AC_CHECK_FILE.
3137         Require GLib 1.3.10.
3138         
3139         * config.h.win32.in: New version, produced by merging two
3140         configure-generated ones (for gcc and MSVC). Hopefully #defines
3141         the same flags that the previous, hand-written one, did.
3142
3143         * gdk/Makefile.am
3144         * gdk/win32/Makefile.am: Handle the uuid library from the IE55 lib.
3145
3146         * gdk/win32/gdkevents-win32.c: Conditionalize ActiveIMM
3147         stuff. Remove unused GdkIOClosure.
3148
3149         * gdk/win32/surrogate-dimm.h: Remove, use real dimm.h instead (if
3150         available).
3151
3152         * gdk/win32/libie55uuid.la: New file, handwritten libtool wrapper
3153         for uuid.lib. (Does it really have to be this hard to use an
3154         existing library with libtool? Probably I am missing something.)
3155
3156 2001-11-08  Darin Adler  <darin@bentspoon.com>
3157
3158         * gtk/gtklabel.c: (gtk_label_ensure_layout): Fix an obvious
3159         typo where it says LEFT instead of CENTER.
3160
3161 2001-11-07  Darin Adler  <darin@bentspoon.com>
3162
3163         * gtk/gtkdialog.c: (gtk_dialog_set_response_sensitive),
3164         (gtk_dialog_set_default_response): Add g_return_if_fail.
3165
3166 Mon Nov  5 22:34:29 2001  Owen Taylor  <otaylor@redhat.com>
3167
3168         * gtk/gtktreednd.[ch] (struct _GtkTreeDragSourceIface): 
3169         Add row_draggable() vfunc, and wrapper function.
3170
3171         * gtk/gtktreednd.[ch] (struct _GtkTreeDragDestIface): Make
3172         row_drop_possible take a GtkSelectionData, rather than
3173         model/row pair.
3174
3175         * gtk/gtktreestore.c gtk/gtkliststore.c: Update for 
3176         new DND interfaces.
3177
3178         * gtk/gtktreeview.[ch]: Remove the row_draggable_func
3179         location_dropable_func from gtk_tree_view_set_rows_drag_source/dest.
3180         and rename them to enable_model_drag_source/dest.
3181
3182         * gtk/treeviewcolumn.c: Add DND of columns between rows.
3183         Still can't drop _to_ the left tree, but other places
3184         work.
3185
3186         * gtk/gtktreeview.c (unset_reorderable): Unset the
3187         reorderable property if unset/enable_model_drag_source/dest
3188         are called manually.
3189
3190         * gtk/gtktreestore.c (gtk_tree_store_row_drop_possible): 
3191         Correct for change in depth count handling.
3192
3193         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon):
3194         Pass in a expose area to gtk_tree_view_column_cell_render()
3195
3196 2001-11-06  Havoc Pennington  <hp@redhat.com>
3197
3198         * demos/gtk-demo/textview.c (easter_egg_callback): wacky easter egg
3199
3200 Tue Nov  6 10:13:16 2001  Owen Taylor  <otaylor@redhat.com>
3201
3202         * gdk/x11/gdkgc-x11.c: Fix misplaced HAVE_XFT.
3203
3204 2001-11-05  Havoc Pennington  <hp@redhat.com>
3205
3206         * gtk/gtktextview.c (gtk_text_view_paint): expose the child
3207         widgets in here
3208         (gtk_text_view_realize): set parent window of child widgets
3209         (gtk_text_view_size_request): use child req to decide whether
3210         to invalidate layout, not widget->requisition
3211
3212         * gtk/gtktextdisplay.c (render_layout_line): set
3213         shaped_width_pixels for NULL shape objects, so that we properly
3214         draw the "missing pixbuf/widget" thing
3215         (render_layout_line): don't draw the widget here
3216         (gtk_text_layout_draw): pass out a list of widgets that need exposing
3217
3218         * demos/gtk-demo/textview.c (insert_text): add demo of child
3219         widgets
3220
3221         * gtk/gtktextlayout.c (add_child_attrs): remove debug spew
3222
3223         * gtk/gtktextdisplay.c (render_layout_line): remove debug spew
3224
3225         * gtk/gtktextview.c (gtk_text_view_update_child_allocation): add
3226         scroll offsets
3227         (gtk_text_view_value_changed): poke new X and Y into child allocations
3228
3229 2001-11-06  Tor Lillqvist  <tml@iki.fi>
3230
3231         * gtk/gtkmain.c (find_module): Do search GTK_BINARY_VERSION
3232         -specific directory on Windows, too (#63759).
3233
3234 Mon Nov  5 12:46:44 2001  Owen Taylor  <otaylor@redhat.com>
3235
3236         * gdk/x11/gdkdrawable-x11.[ch] gdk/x11/gdkgc-x11.c
3237         gdk/x11/gdkpixmap-x11.c gdk/x11/gdkprivate-x11.h
3238         gdk/x11/gdkwindow-x11.c: Redo Xft support to go
3239         directly to Picture objects instead of using XftDraw.
3240         This fixes the problem where we weren't able to 
3241         properly destroy XftDraw objects before destroying
3242         the accompanying windows, and probably improves
3243         efficiency a bit too. (#50214)
3244
3245 Mon Nov  5 10:01:49 2001  Owen Taylor  <otaylor@redhat.com>
3246
3247         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): 
3248         Clamp max window width/height to 32767, not 32768 since
3249         we have to be able to deal with a dx/y of -32768 without
3250         getting a width of 65536 when guffaw scrolling.
3251
3252         * gdk/x11/gdkgeometry-x11.c: Implement gdk_window_scroll()
3253         for the guffaw scrolling case, fixing some problems with
3254         copy-area case as well. Fix BadValue bug with moving windows
3255         by large amounts.
3256
3257         * gdk/x11/gdkgeometry-x11.c (gdk_window_clip_changed): Update
3258         clip in window structue before calling gdk_window_invalidate_region
3259         since that trims new invalidations to the window's visible
3260         region.
3261
3262         * gdk/x11/gdkwindow-x11.c (gdk_window_set_static_gravities): 
3263         Really set the static window gravity on the children, not
3264         repeatedly on the window.
3265
3266         * gtk/testgtk.c: Add a torture test for big windows and 
3267         gdk_window_scroll().
3268
3269 Sun Nov  4 17:36:08 2001  Manish Singh  <yosh@gimp.org>
3270
3271         * acconfig.h configure.in: sigsetjmp is macroized in some places,
3272         so use AC_TRY_LINK instead of AC_CHECK_FUNCS for the check.
3273
3274 Sun Nov  4 19:16:23 2001  Owen Taylor  <otaylor@redhat.com>
3275
3276         * gdk/gdkcolor.c (gdk_color_parse): Implement gdk_color_parse()
3277         in terms of pango_color_parse().
3278
3279         * gdk/{linux-fb,win32,x11}/gdkcolor-*.c: Remove port-specific
3280         gdk_color_parse() implementations.
3281
3282 Sun Nov  4 18:39:43 2001  Owen Taylor  <otaylor@redhat.com>
3283
3284         * gtk/gtksizegroup.c (gtk_size_group_set_mode): 
3285         queue_resize_on_group with both the old and new mode, not
3286         just the new mode. (#60171, Nicolas Setton). Also, notify
3287         the "mode" property.
3288         
3289 Sun Nov  4 16:02:08 2001  Owen Taylor  <otaylor@redhat.com>
3290
3291         * gdk/gdkwindow.[ch]: Add a function gdk_window_invalidate_maybe_recurse() 
3292         for use in "shallow invalidation" of a widget. (Windows belonging
3293         to the widget, but not to the widget's children)
3294
3295         * gtk/gtkprivate.h gtk/gtkwidget.c gtk/gtksizegroup.c: Add private
3296         flags GTK_ALLOC_NEEDED, GTK_REQUEST_NEEDED.  These flags are set
3297         up on ancestors up to the resize container on queue_resize. Size
3298         requests only actually take place if GTK_REQUEST_NEEDED, size
3299         allocations only take place if GTK_ALLOC_NEEDED or the size
3300         changed.
3301
3302         * gtk/gtkcontainer.c gtk/gtkwidget.c: Remove
3303         container->resize_widgets and the RESIZE_NEEDED flag since the
3304         above flags are sufficient to figure out what needs to be
3305         resized/reallocated. Remove code manipulating
3306         container->resize_widget.
3307
3308         * gtk/gtkwidget.[ch]: Add gtk_widget_set_redraw_on_alloc(); this
3309         allows widgets to turn off being automatically invalidated is when
3310         they are resized.
3311
3312         * gtk/gtkwidget.[ch] (gtk_widget_size_allocate): Invalidation when
3313         a widget is resized or moved is "shallow" as described above -
3314         only the windows that need to be invalidated are invalidated.
3315
3316         * gtk/gtkbox.c gtk/gtktable.c gtk/gtkalignment.c docs/Changes-2.0.txt: 
3317         Make these widget's init functions call 
3318         gtk_widget_set_redraw_on_allocate(widget,FALSE).
3319
3320         * gtk/gtkwindow.c (gtk_window_configure_event): Call 
3321         _gtk_container_queue_resize(), since we don't want
3322         redrawing. (Probably could be done for other 
3323         calls to gtk_widget_queue_resize() in gtkwindow.c,
3324         but this is the most important one.)
3325
3326         * gtk/gtkwindow.c (gtk_window_move_resize): Don't call
3327         gtk_widget_queue_draw() - size_allocate() handles
3328         that as appropriate.
3329
3330         * gtk/gtkframe.c (gtk_frame_size_allocate): Invalidate instead
3331         of queue_clear() to avoid invalidating children.
3332
3333 2001-11-04  jacob berkman  <jacob@ximian.com>
3334
3335         * gtk/gtkmain.c (find_module): don't free the module name until
3336         after we load the module
3337
3338 Sat Nov  3 13:57:21 2001  Owen Taylor  <otaylor@redhat.com>
3339  
3340         * gtk/gtkctree.c: Convert GTK_TYPE_CTREE_NODE to pointer
3341         derivation instead of boxed derivation.
3342  
3343         * gtk/gtkmarshal.list: Remove some now unused marshallers.
3344  
3345 2001-11-04  Tor Lillqvist  <tml@iki.fi>
3346
3347         * gtk/gtkimmodule.c: Can't include gtkprivate.h (I added the
3348         include yesterday, without really thinking), as that defeats the
3349         working of correct_libdir_prefix() (it becomes a no-op.). Add
3350         comment mentioning that. Thanks to Hans Breuer for noticing.
3351         
3352 2001-11-03  Daniel Elstner  <daniel.elstner@gmx.net>
3353
3354         * gtk/gtkwindow.h (frame_event): Use GtkWindow* as first
3355         signal argument (was GtkWidget*).
3356
3357         * gtk/gtkwindow.c (gtk_window_frame_event),
3358           gtk/gtkwindow-decorate.c (gtk_decorated_window_frame_event):
3359         Fixed argument types as above, removed GTK_WINDOW casts and
3360         added some GTK_WIDGET casts instead.
3361
3362 2001-11-03  Hans Breuer  <hans@breuer.org>
3363
3364         * gtk/gtkfilesel.c (gtk_file_selection_finalize) : chain
3365         finalize to parent class to get removed from the toplevel_list.
3366         Should fix 'random' crashes of #63474.
3367
3368         * gtk/gtktreemodelsort.c : chain finalize() to parent class
3369
3370 2001-11-03  Tor Lillqvist  <tml@iki.fi>
3371
3372         * modules/input/Makefile.am: Use -no-undefined on Windows. Look
3373         for .dll or .so as appropriate as module suffix.
3374
3375         * gtk-zip.sh.in: Use correct import library names.
3376
3377         * gtk/gtk.def: Add a couple of missing entry points. (#63585)
3378
3379         * gtk/gtkimmodule.c (correct_libdir_prefix): New function, used on
3380         Windows to turn build-time paths from a gtk.immodules distributed
3381         as part of a binary package into runtime ones in the
3382         end-user-chosen installation directory.
3383         (gtk_im_module_init): Use it for module path and domain
3384         directory.
3385
3386 2001-11-02  Tor Lillqvist  <tml@iki.fi>
3387
3388         * gtk/gtkrc.c (gtk_rc_make_default_dir): Fix typo: extraneous
3389         comma.  Include gtkprivate.h for GTK_LIBDIR etc definitions on
3390         Windows.
3391
3392 2001-10-30  Tor Lillqvist  <tml@iki.fi>
3393
3394         * Makefile (install-data-hook): Use cp, not $(LN_S) on the .pc
3395         files. Configure on Win32 (running on Cygwin) thinks symlinks
3396         exist, but pkg-config is not necesarily a Cygwin program, and
3397         doesn't understand them.
3398
3399 Fri Nov  2 16:45:17 2001  Jonathan Blandford  <jrb@redhat.com>
3400
3401         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Clean up height code
3402         a bit.  I don't think it's completely correct yet, but it's
3403         getting there.
3404
3405 Fri Nov  2 16:14:15 2001  Owen Taylor  <otaylor@redhat.com>
3406
3407         * gtk/gtkviewport.c (gtk_viewport_size_request): Remove
3408         random + 5 for width and height. If people want padding,
3409         they should add padding. (Note the +5 isn't padding
3410         that will always appear - it just appears in the case
3411         where the widget is allocated it's requisition.)
3412         (#51018, Janet Davis)
3413
3414 Fri Nov  2 15:53:23 2001  Owen Taylor  <otaylor@redhat.com>
3415
3416         * gtk/gtkimcontext.h (struct _GtkIMContextClass): Pad
3417         the structure for future expansion.
3418
3419 Fri Nov  2 15:30:34 2001  Owen Taylor  <otaylor@redhat.com>
3420
3421         Patch from HideToshi Tajima (#51922)
3422         
3423         * gtk/gtkimmulticontext.c: Proxy set_use_preedit().
3424
3425         * gtk/modules/input/gtkimcontextxim.[ch]: Implement
3426         set_use_preedit().
3427         
3428         * gtk/modules/input/gtkimcontextxim.[ch]: If we have
3429         to destroy the input context because we change the
3430         client window or use_preedit, make sure we empty
3431         the preedit string.
3432
3433 Fri Nov  2 14:55:53 2001  Owen Taylor  <otaylor@redhat.com>
3434
3435         * gtk/{gtkcolorseldialog.c,gtkfilesel.c,gtkfontsel.c,
3436         gtkgamma.c,gtkmessagedialog.c}: Go to the GUP
3437         proposed ordering of buttons with [OK] in the lower
3438         right hand corner. Patch from Gregory Merchan,
3439         #56331.
3440
3441 Fri Nov  2 11:51:49 2001  Jonathan Blandford  <jrb@redhat.com>
3442
3443         * gtk/gtklabel.c (gtk_label_select_region_index): remove
3444         extraneous gtk_label_clear_layout (label)
3445
3446 2001-11-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3447
3448         * tests/makefile.msc, gtk/makefile.msc.in: Removed
3449         -DGTK_DISABLE_COMPAT_H.
3450
3451         * docs/Changes-2.0.txt:
3452         s/GDK_DISABLE_COMPAT_H/GDK_DISABLE_DEPRECATED/
3453
3454         * gtk/gtkcompat.h.in, gdk/gdkcompat.h: Removed from CVS.
3455
3456 Fri Nov  2 10:21:03 2001  Owen Taylor  <otaylor@redhat.com>
3457
3458         * examples/**/Makefile.am: Convert to use pkg-config
3459         rather than gtk-config. (#53375, Skip Montanaro)
3460
3461 2001-11-02  Matt Wilson  <msw@redhat.com>
3462
3463         * gtk/gtkdialog.c (find_child_by_response_id): remove totally
3464         broken unused, non-compiling, static function.
3465
3466 Fri Nov  2 08:17:06 2001  Owen Taylor  <otaylor@redhat.com>
3467
3468         * gtk/gtkdialog.c (gtk_dialog_set_response_sensitive): 
3469         Iterate through children of the action area, not of
3470         the vbox. (#58278, Sergey Kuzminov)
3471
3472 2001-11-01  Havoc Pennington  <hp@pobox.com>
3473
3474         * gtk/gtktext.c (gtk_text_set_position): handle -1 argument in
3475         order to remove a workaround in Nautilus that forced
3476         GTK_ENABLE_BROKEN
3477
3478         * gtk/gtkwidget.c (gtk_widget_modify_style): fix typos in the docs
3479
3480 Thu Nov  1 20:09:31 2001  Owen Taylor  <otaylor@redhat.com>
3481
3482         * gtk/gtkrange.c: Patch from George Lebl to 
3483         fix division by zero for full scroll bars. (#62114)
3484
3485 Thu Nov  1 19:56:40 2001  Owen Taylor  <otaylor@redhat.com>
3486
3487         * gtk/gtkmain.c (gtk_main_do_event): ref/unref
3488         around gtk_widget_event() if we are going to
3489         set a flag afterwards. (#63464)
3490
3491 Thu Nov  1 19:44:48 2001  Owen Taylor  <otaylor@redhat.com>
3492
3493         * gtk/gtkiconfactory.c gtk/stock-icons/Makefile.am: 
3494         Actually add the missing/broken image icon as the
3495         image for the "missing image" stock icon.
3496
3497 Thu Nov  1 19:18:34 2001  Owen Taylor  <otaylor@redhat.com>
3498
3499         * demos/gtk-demo/stock_browser.c (do_stock_browser): 
3500         Set a reasonable default height for the window.
3501
3502         * demos/gtk-demo/stock_browser.c (id_to_macro): Fix
3503         bug where subsequent '-' weren't converted to '_'.
3504         (#59550, Matthias Clasen)
3505
3506         * demos/gtk-demo/appwindow.c (menu_items): Don't right 
3507         justify the Help menu - just include a comment on
3508         how to do it. (#63539,  Marius Andreiana)
3509
3510         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): Don't 
3511         list GTK_ICON_SIZE_INVALID.
3512
3513         * demos/gtk-demo/stock_browser.c: Show the biggest available
3514         size, not a fixed size. (Often reported, including #63539, 
3515         Marius Andreiana)
3516
3517 Thu Nov  1 19:11:35 2001  Jonathan Blandford  <jrb@redhat.com>
3518
3519         * gtk/gtkrbtree.c (gtk_rbtree_reorder_fixup): Fix reorder_fixup,
3520         #59583
3521
3522         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): fix
3523         warning.
3524
3525 Thu Nov  1 16:54:00 2001  Owen Taylor  <otaylor@redhat.com>
3526
3527         * gtk/gtktypeutils.h: Make GtkFunction return boolean, not gint.
3528         (Daniel Elstner).
3529
3530 Thu Nov  1 16:20:56 2001  Owen Taylor  <otaylor@redhat.com>
3531
3532         * gtk/gtkimcontext.[ch]: Add:
3533           - A ::retrieve_surrounding signal that asks the widget for
3534             context around the insertion point.
3535           - A ::delete_surrounding signal that asks the widget to 
3536             delete context aroudn the insertion point.
3537           - gtk_im_context_set_context() for widgets to set context
3538             around the insertion point in response to ::retrieve_context.
3539           - gtk_im_context_get_context() for context to get context
3540             around the insertion point
3541
3542         * gtkmarshal.list: Add BOOL:INT,INT
3543
3544         * gtk/gtkimmulticontext.c: Proxy the get_surrounding() /
3545         set_surrounding() methods, and the ::retrieve_surrounding /
3546         ::delete_surrounding signals.
3547
3548         * gtk/gtkentry.c gtk/gtktreeview.c: Hook up to the
3549         GtkIMContext::retrieve_surrounding / ::delete_surrounding
3550         signals.
3551
3552 Thu Nov  1 15:45:04 2001  Jonathan Blandford  <jrb@redhat.com>
3553
3554         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
3555         it's amazing how well things work sometimes, even when they're
3556         completely wrong.
3557
3558         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
3559         where you could try to collapse a node w/o it having children.
3560
3561         (gtk_tree_view_class_init): remove Shift L<->R as they already
3562         existed for expand/collapse.
3563
3564 Thu Nov  1 12:21:31 2001  Jonathan Blandford  <jrb@redhat.com>
3565
3566         * gtk/gtktreeview.c (gtk_tree_view_focus_to_cursor): Fix crash
3567         found by Matt Wilson.
3568
3569 Thu Nov  1 00:44:50 2001  Jonathan Blandford  <jrb@redhat.com>
3570
3571         * gtk/gtktreeview.c (gtk_tree_view_class_init): Support Shift,
3572         Control, and Shift|Control L<->R, #63475
3573
3574 Wed Oct 31 18:53:51 2001  Jonathan Blandford  <jrb@redhat.com>
3575
3576         * gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): fix
3577         infinite loop noticed by yosh.
3578
3579 2001-11-01  Michael Meeks  <michael@ximian.com>
3580
3581         * gtk/gtksocket.c (gtk_socket_unrealize): unset the
3582         GTK_REALIZED flag so we don't re-enter when we are
3583         destroyed from the plug side.
3584
3585 Wed Oct 31 18:23:47 2001  Owen Taylor  <otaylor@redhat.com>
3586
3587         * gtk/gtkoptionmenu.c (gtk_option_menu_detacher): 
3588         Add a "menu" property and notify on it. (#62798,
3589         Padraig O'Briain)
3590
3591         * gtk/gtkselection.[ch] gtk/{gtkentry.c, gtkfilesel.c,
3592         gtkoldeditable.c, gtktextbuffer.c, gtktextview.c}: 
3593         Fix set_text to take a gchar, not a guchar, and to have 
3594         a len argument.
3595
3596 Wed Oct 31 15:31:13 2001  Manish Singh  <yosh@gimp.org>
3597
3598         * gtk/gtkstock.c: fix typo to make it compile
3599
3600 Wed Oct 31 17:27:20 2001  Jonathan Blandford  <jrb@redhat.com>
3601
3602         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): if
3603         the widget is insensitive, draw the text insensitively, #63306
3604
3605 2001-10-31  Matthias Clasen  <matthiasc@poet.de>
3606
3607         * gtk/gtkstock.c: Add stock items for most stock icons. (#61757)
3608
3609 Wed Oct 31 16:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
3610
3611         * gtk/gtktreednd.c (gtk_tree_set_row_drag_data): rename
3612         gtk_selection_data_set_tree_row, #60218
3613         (gtk_tree_get_row_drag_data): rename
3614         gtk_selection_data_get_tree_row, #60218
3615
3616         * gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): Actually
3617         get this right, after the third try, #63122.
3618
3619 2001-10-31  jacob berkman  <jacob@ximian.com>
3620
3621         * gdk/gdkselection.h (GDK_TARGET_STRING): 
3622         (GDK_SELECTION_TYPE_STRING): these should be 31, not 3.  Hooray
3623         for Xatoms (and not using the XA_* macros)!
3624
3625 Wed Oct 31 15:38:14 2001  Owen Taylor  <otaylor@redhat.com>
3626
3627         * gtk/gtkwindow.[ch] (gtk_window_get_focus): Add a
3628         gtk_window_get_focus() getter to determine the currently
3629         focused widget within the window. (#63145, request
3630         from Damian Ivereigh)
3631
3632 Wed Oct 31 14:45:08 2001  Jonathan Blandford  <jrb@redhat.com>
3633
3634         * gtk/gtkenums.h (enum): Add GTK_SELECTION_NONE enum, #61695
3635
3636         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Handle new
3637         GTK_SELECTION_NONE enum.
3638         (_gtk_tree_selection_internal_select_node): ditto
3639
3640         * gtk/gtkcellrenderer.h (struct _GtkCellRendererClass): add
3641         constness.
3642
3643         * gtk/gtkcellrenderertoggle.c: more yummy constness.
3644
3645         * gtk/gtkclist.c (gtk_clist_set_selection_mode): g_return_if_fail
3646         if mode == GTK_SELECTION_NONE
3647
3648 Wed Oct 31 14:05:17 2001  Jonathan Blandford  <jrb@redhat.com>
3649
3650         * gtk/gtktreeview.c (gtk_tree_view_class_init): Added a
3651         "cursor_changed" signal, #62850.
3652
3653 2001-10-31  Matt Wilson  <msw@redhat.com>
3654
3655         * gtk/gtktreedatalist.c (_gtk_tree_data_list_alloc): after
3656         allocating the treedatalist, zero it to make sure the values are
3657         cleared from any garbage that was in this chunk.
3658
3659 2001-10-31  Murray Cumming  <murrayc@usa.net>
3660
3661         * gtk/cellrenderertext.h: "edited" default signal handler
3662         gchar* args are now const.
3663         gtk/cellrenderertoggle.h: "toggled" default signal handler
3664         gchar* arg is now const.
3665         Also changed other signal handlers for "edited" and "toggled" to
3666         have the same signature.
3667
3668 Tue Oct 30 19:17:57 2001  Jonathan Blandford  <jrb@redhat.com>
3669
3670         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_sort_level): massize
3671         rewrite.  Static models now totally work.  I'm not 100% sure about
3672         row_inserted and row_changed, but I'll get those later.
3673
3674 2001-10-30  Sven Neumann  <sven@gimp.org>
3675
3676         * configure.in: use GLIB_AC_DIVERT_BEFORE_HELP() so we get proper
3677         output for configure --help.
3678
3679 2001-10-30  Havoc Pennington  <hp@pobox.com>
3680
3681         * gtk/gtktextview.c (changed_handler): Update the IM spot location
3682         here, if text was invalidated in the visible area, because the
3683         scroll offset doesn't normally change in that case, and the mark
3684         isn't set, just implicitly moved over as text is added/removed
3685         
3686 Mon Oct 29 19:18:35 2001  Jonathan Blandford  <jrb@redhat.com>
3687
3688         * gtk/gtkseparatormenuitem.c: Code cleanup.
3689         (gtk_separator_menu_item_class_init): Fix bugs in this code.
3690
3691 2001-10-29  jacob berkman  <jacob@ximian.com>
3692
3693         * gdk/Makefile.am (LDFLAGS): 
3694         * gtk/Makefile.am (LDFLAGS): automake doesn't support conditionalized
3695         LDFLAGS, so put win32 flags in here
3696
3697 Mon Oct 29 15:41:58 2001  Jonathan Blandford  <jrb@redhat.com>
3698
3699         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_sort_level): Darn.
3700         I can't believe this took this long to fix.
3701
3702 Mon Oct 29 13:54:49 2001  Jonathan Blandford  <jrb@redhat.com>
3703
3704         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered): fix
3705         reordered signal.
3706
3707 Mon Oct 29 12:27:51 2001  Owen Taylor  <otaylor@redhat.com>
3708
3709         * gtk/gtkfilesel.c (gtk_file_selection_rename_file): Grab
3710         the focus to the fileop entry for create dir / rename
3711         file. (#62838)
3712
3713 Mon Oct 29 12:21:49 2001  Owen Taylor  <otaylor@redhat.com>
3714
3715         * configure.in: Don't use AC_CHECK_FILE to check for a 
3716         file since it always spits warnings about cross compilation,
3717         use -f instead. It's not like we cross compile properly
3718         anyways.
3719
3720         * configure.in (gtktargetlib): Move call to AC_PROG_CC
3721         to suppress autoconf warning.
3722
3723         * acconfig.h: Add some missing #undefs from recent
3724         Win32 additions.
3725
3726 Mon Oct 29 11:31:40 2001  Owen Taylor  <otaylor@redhat.com>
3727
3728         * m4macros/gtk-2.0.m4: Don't try to use pkg-config
3729         when we didn't find it. (#62944, Eric Lemings)
3730
3731         * m4macros/gtk-2.0.m4: Fix problem with spaces around =
3732         sign in assignment. (#63209, Arkadiusz Miskiewicz)
3733
3734 2001-10-29  Anders Carlsson  <andersca@gnu.org>
3735
3736         * gtk/gtktreeview.c (gtk_tree_view_size_request): Calculate
3737         the buttons size request before using it. Fixes #61696.
3738
3739 2001-10-29  Tor Lillqvist  <tml@iki.fi>
3740
3741         * README.win32: Updates.
3742
3743         * gtk-zip.sh.in: New file, used to build distribution package for
3744         Windows.
3745
3746         * gdk/gdkglobals.c: Mark gdk_threads_mutex for DLL export when
3747         applicable with GDKVAR.
3748
3749         * gdk/win32/libwntab32x.la: New file, hand-written wrapper for the
3750         Wintab library.
3751
3752         * gdk/win32/gdkwin32.h
3753         * gdk/win32/gdkprivate-win32.h: Reorganise to match corresponding
3754         X11 headers better, and to enable gdkwin32.h to be installed and
3755         included from applications, but not the *-win32.h headers.
3756
3757         * gdk/win32/*.c: Corresponding small changes, simplifications of
3758         #includes.
3759         
3760         * gdk/win32/gdkregion-win32.c: Remove.
3761
3762         * gdk/win32/gdkevents-win32.c (print_event): Add GDK_SETTING.
3763
3764         * gdk/win32/gdkfont-win32.c
3765         * gdk/win32/gdkgeometry-win32.c: Remove unused variables.
3766
3767         * gdk/win32/gdkproperty-win32.c (gdk_atom_intern): Don't insert
3768         GDK_NONE values into hash table.
3769
3770         * gtk/gtk.def: Update.
3771
3772         * gtk/gtkfilesel.c: Include <winsock.h> (if available) for
3773         gethostname().
3774
3775         * gtk/gtkmain.c 
3776         * gtk/gtkrc.c: (Win32) Save actual DLL name for later use in DLL
3777         entry function. Avoid hardcoded paths GTK_LIBDIR, GTK_SYSCONFDIR,
3778         GTK_DATA_PREFIX and GTK_LOCALEDIR, instead add functions that call
3779         g_win32_get_package_installation_subdirectory() with the actual
3780         DLL name saved above. Redefine above directory name macros to call
3781         these functions. Remove some ifdefs.
3782
3783         * gtk/maketypes.awk: Output GTKTYPEBUILTINS_VAR (that marks
3784         variable for export on Win32) also to the _vars file.
3785
3786         Changes for autoconfiscated build on Win32, and addition of Win32
3787         backend to the related files:
3788         
3789         * configure.in: Like in GLib, set LT_CURRENT_MINUS_AGE for use
3790         when forming DLL name in some files. Set MS_LIB_AVAILABLE is
3791         lib.exe is available. Call AC_LIBTOOL_WIN32_DLL. Set
3792         PLATFORM_WIN32, OS_WIN32 and USE_WIN32 automake conditionals. Add
3793         win32 target, using pangowin32. Don't use the
3794         -export-symbols-regex option on Win32, we use .def files to list
3795         exported symbols. Check <winsock.h> (for gethostname() in
3796         gtkfilesel.c). Enclose nested AC_CHECK_* macros in brackets to
3797         prevent premature m4 expansion.
3798
3799         * acconfig.h: Add HAVE_WINTAB.
3800
3801         * gdk/Makefile.am: Add libgdk-win32-1.3.la target and associated
3802         macros and rules. Use -no-undefined on Win32. Use gdk.def file. If
3803         MS_LIB_AVAILABLE, build MS import library. Install the import
3804         libraries. If HAVE_WINTAB, link with the Wintab library.
3805
3806         * gdk/win32/Makefile.am: Actually enable building the win32
3807         objects here, not just list all files in EXTRA_DIST. Link in the
3808         compiled resource file from rc/gdk-win32res.lo. If HAVE_WINTAB,
3809         copy the Wintab library into the .libs directory. 
3810
3811         * gdk/win32/gdkwindow-win32.c (RegisterGdkClass): Don't assume the
3812         name of the GDK DLL when fetching the icon. Use the HMODULE saved
3813         in gdk_dll_hinstance by DllMain.
3814
3815         * gdk/win32/rc/Makefile.am: Build gdk-win32res.lo using the
3816         build/win32/lt-compile-resource script.
3817
3818         * gdk/win32/rc/gdk.rc.in
3819         * gtk/gtk-win32.rc.in: Use the DLL name that libtool would use.
3820
3821         * gtk/Makefile.am: Add libgtk-win32-1.3.la target and associated
3822         macros and rules. Use -no-undefined on Win32. Use gtk-win32.def
3823         file. Install import libraries.
3824
3825 2001-10-29  Anders Carlsson  <andersca@gnu.org>
3826
3827         * gtk/gtkiconfactory.c (get_default_icons): Fix build.
3828
3829 2001-10-28  Hans Breuer  <hans@breuer.org>
3830
3831         * gdk/gdk.c gdk/gdkevents.c
3832           gdk/win32/gdkcolor-win32.c gdk/win32/gdkdnd-win32.c
3833           gdk/win32/gdkdrawable-win32.c gdk/win32/gdkevents-win32.c
3834           gdk/win32/gdkfont-win32.c gdk/win32/gdkgc-win32.c
3835           gdk/win32/gdkim-win32.c gdk/win32/gdkmain-win32.c
3836           gdk/win32/gdkprivate-win32.h gdk/win32/gdkproperty-win32.c
3837           gdk/win32/gdkselection-win32.c gdk/win32/gdkwin32.h
3838           gdk/win32/gdkwindow-win32.c gdk/win32/gdkwindow-win32.h :
3839         static correct-ness, underscore prefixing of library internal 
3840         functions
3841         (applied the undisputed and the win32 part. Of the latter 
3842          I'm probably the one who will change it back again, if Owen
3843          decides that the Gdk*Impl types should not be private to Gdk)
3844
3845         * gdk/gdk.def : added the remaining exported functions
3846
3847 2001-10-28  Matthias Clasen  <matthiasc@poet.de>
3848
3849         * gtk/gtkcellrenderertoggle.c, gtk/gtkimcontextsimple.c,
3850         gtk/gtkimmulticontext.c, gtk/gtkimagemenuitem.c,
3851         gtk/gtkiconfactory.c, gtk/gtkwindow.c: Documentation updates.
3852
3853 2001-10-28  jacob berkman  <jacob@ximian.com>
3854
3855         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): do not call
3856         gtk_settings_get_default() here as that requires an X connection
3857         (which breaks doc building with no X connection) and is not
3858         multihead safe
3859         (gtk_color_selection_init): delay palette loading until realize
3860         time
3861         (gtk_color_selection_realize): load the palette, and initialize
3862         the global palette if it hasn't been already
3863
3864         * gtk/gtkpreview.c (gtk_preview_class_init): don't initialize the
3865         visual/cmap fields of klass->info since they are gone
3866         (gtk_preview_get_visual): just return gdk_rgb_get_visual ()
3867         (gtk_preview_get_cmap): just return gdk_rgb_get_colormap ()
3868         (gtk_preview_realize): don't set VISUAL and COLORMAP attributes
3869
3870         * gtk/gtkpreview.h (struct _GtkPreviewInfo): remove visual and
3871         cmap fields
3872         (gtk_preview_get_visual):
3873         (gtk_preview_get_cmap): mark as deprecated
3874
3875         * docs/Changes-2.0.txt: add a little note about the GtkPreviewInfo
3876         changes
3877
3878 Sun Oct 28 09:15:39 2001  Owen Taylor  <otaylor@redhat.com>
3879
3880         * gtk/gtkimcontext.h (struct _GtkIMContext): Fixed
3881         structure to have GObject not GtkObject as
3882         parent_instance. (Jeff Franks.)
3883
3884 2001-10-27  Matthias Clasen  <matthiasc@poet.de>
3885
3886         * gdk/x11/gdkinput.c: Typo fix.
3887
3888 2001-10-26  Havoc Pennington  <hp@pobox.com>
3889
3890         * gtk/gtktextview.c (gtk_text_view_mark_set_handler): Call
3891         update_im_spot_location here explicitly
3892         (gtk_text_view_reset_im_context): don't update the spot location
3893         here
3894
3895 2001-10-27  Anders Carlsson  <andersca@gnu.org>
3896
3897         * gtk/gtktreemodel.c (gtk_tree_model_get): Fix typo in docs.
3898         This fixes #62942.
3899
3900         * gtk/gtkspinbutton.c (gtk_spin_button_new_with_range): 
3901         Clarify that we're returning a spin button in the _new function.
3902         This fixes #54097.
3903         
3904 Fri Oct 26 20:55:57 2001  Owen Taylor  <otaylor@redhat.com>
3905
3906         * gtk/gtkbutton.c: Revert changes to GTK_RUN_LAST. 
3907         Unfortunately, people apparently erroneously connect
3908         to ::clicked for GtkToggleButton and expect
3909         they know what happened in the default signal handler
3910         instead of appropriately connecting to notification
3911         signal ::toggled. When the revolution comes, such
3912         people will be first against the wall.
3913
3914         We'll just have to go back to the old less-reliable
3915         set-it-back hacks for handling model-view check
3916         buttons and radio buttons. :-(. 
3917
3918 2001-10-27  Hans Breuer  <hans@breuer.org>
3919
3920         * gtk/gtkbbox.c gtk/gtkctree.c gtk/gtkhbbox.c
3921           gtk/gtkimmulticontext.c gtk/gtklabel.c gtk/gtkliststore.c
3922           gtk/gtkmenu.c gtk/gtkpaned.c gtk/gtkrc.c gtk/gtkscale.c
3923           gtk/gtkstyle.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
3924           gtk/gtktexttag.c gtk/gtktexttagtable.c gtk/gtktextview.c
3925           gtk/gtktreestore.c gtk/gtkvbbox.c : 
3926         to simplify parsing for exported functions:
3927         - made implementation signature static, when the local 
3928           prototype already was
3929         - put the functions return value on it's own line
3930         - added as space between the function name and the 
3931           opening bracket
3932
3933         * gtk/gtk.def : added the remaining exported functions
3934
3935 2001-10-27  Anders Carlsson  <andersca@gnu.org>
3936
3937         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width): 
3938         Add note about width having to be greater than 0. This fixes
3939         #55574. 
3940
3941         * gtk/gtktextiter.c (gtk_text_iter_backward_sentence_start): 
3942         Fix docs to say previous instead of next.
3943         (gtk_text_iter_backward_word_start): Likewise.
3944         This fixes bug #62980.
3945
3946         * gtk/gtkcontainer.c (gtk_container_set_border_width): Mention
3947         that the valid width is in range 0-65535 pixels. Fixes bug 
3948         #56754.
3949
3950         * gtk/gtksizegroup.c (gtk_size_group_set_mode): Remove
3951         a dot in the documentation. Fixes bug #62632.
3952
3953         * gdk/x11/gdkmain-x11.c: Replace int and guint with
3954         long and gulong in some places to make the code 64-bit
3955         clean.
3956         (_gdk_windowing_init_check): Replace gint with gulong.
3957         This patch was made by George Lebl and fixes bug #62113.
3958
3959         * tests/testgtk.c (create_range_controls): Don't set a 
3960         fixed height on the hscale widget. This fixes "bug" 
3961         #55840.
3962         (create_window_states): Set up destroy signals so that
3963         all windows will be destroyed when one is. This fixes 
3964         bug #58133.
3965
3966 2001-10-26  Anders Carlsson  <andersca@gnu.org>
3967
3968         * gtk/gtktreeview.c: 
3969         (gtk_tree_view_class_init): Create new "indent_expander"
3970         style property.
3971
3972         (gtk_tree_view_get_arrow_xrange): Add a tree argument
3973         to the function since the xrange can change depending
3974         on where in the tree we are. 
3975         
3976         (coords_are_over_arrow): Update function call to
3977         gtk_tree_view_get_arrow_xrange.
3978         (gtk_tree_view_draw_arrow): Likewise.
3979         
3980         (gtk_tree_view_real_expand_collapse_cursor_row):
3981         Call real_{expand|collapse}_row, so that we'll have an
3982         animation.
3983
3984 Fri Oct 26 20:13:36 2001  Kristian Rietveld  <kristian@planet.nl>
3985
3986         * tests/Makefile.am: fixed a small typo
3987
3988 Fri Oct 26 18:27:11 2001  Kristian Rietveld  <kristian@planet.nl>
3989
3990         * demos/gtk-demo/list_store.c (create_model): Anders
3991         Carlsson suggested to use G_N_ELEMENTS here
3992
3993 2001-10-26  Sven Neumann  <sven@gimp.org>
3994
3995         * gtk/gtkbutton.[ch]
3996         * gtk/gtkdnd.c: fixed inline comments
3997         
3998         * gtk/gtkgamma.c: gtk_entry_get_text() returns a const gchar.
3999
4000 2001-10-26  Hans Breuer  <hans@breuer.org>
4001
4002         * gdk-pixbuf/gdk_pixbuf.def : 
4003         * gdk/gdk.def : 
4004         * gtk/gtk.def : updated externals
4005
4006         * gdk/win32/gdkpixmap-win32.c : removed duplicate of
4007         gdk_window_lookup implementation. It already was in
4008         gdk/win32/gdkwindow-win32.c
4009
4010         * gdk/win32/gdkproperty-win32.c : made it compile again
4011         after GdkAtom API change
4012
4013         * gtk/gtk/makefile.msc.in : updated
4014
4015 Wed Oct 24 11:36:33 2001  Owen Taylor  <otaylor@redhat.com>
4016
4017         * configure.in (GTK_MICRO_VERSION): Version 1.3.10,
4018         require GLib 1.3.10.
4019
4020         * NEWS: updates.
4021
4022 Thu Oct 25 16:27:29 2001  Jonathan Blandford  <jrb@redhat.com>
4023
4024         * gtk/gtkrbtree.c (_gtk_rbnode_rotate_left): Add support for
4025         invalid nodes.
4026          (_gtk_rbnode_rotate_right): Ditto.
4027          (_gtk_rbtree_node_mark_invalid): New function.
4028          (_gtk_rbtree_node_mark_valid): New function.
4029
4030         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_class_init): We're a
4031         GObject, not a GtkObject.
4032         (gtk_tree_model_sort_row_has_child_toggled): Rewrote to be more
4033         correct.
4034         (gtk_tree_model_sort_row_deleted): ditto.
4035         (gtk_tree_model_sort_{un,}ref_node): Fix.
4036
4037         * gtk/gtktreeview.c: Protean incremental reflow support (commented
4038         out)
4039
4040         * gtk/gtktreeview.h (GtkTreeViewSearchEqualFunc): change char *key
4041         to const char *key.
4042
4043         * gtk/gtktreemodel.c (gtk_tree_row_reference_unref_path_helper):
4044         Important 1 line fix to fix a lot of refcounting woes.
4045
4046 2001-10-25  Matt Wilson  <msw@redhat.com>
4047
4048         * gtk/gtktextview.c (gtk_text_view_destroy): call
4049         gtk_text_view_destroy_layout after gtk_text_view_set_buffer (which
4050         now invalidates) so that we remove our idle functions.
4051         (gtk_text_view_destroy_layout): remove the first_validate_idle as
4052         well.
4053
4054         * gtk/gtktexttag.c (gtk_text_tag_class_init): the valid range for
4055         the 'indent' property is G_MININT to G_MAXINT.  Don't use
4056         -G_MAXINT for the minimum of the 'rise' property, use G_MININT
4057         instead.
4058
4059 2001-10-24  Anders Carlsson  <andersca@gnu.org>
4060
4061         * gtk/gtktreeview.c: 
4062         (gtk_tree_view_real_expand_row): add an animate argument
4063         (gtk_tree_view_real_collapse_row): likewise
4064         
4065         (gtk_tree_view_button_press), (gtk_tree_view_button_release), 
4066         (gtk_tree_view_collapse_all), (gtk_tree_view_expand_row),
4067         (gtk_tree_view_collapse_row): update functions that call
4068         real_{expand|collapse}_row to set the animate argument 
4069         accordingly.
4070         
4071 2001-10-24  Alex Larsson  <alexl@redhat.com>
4072
4073         * gdk/linux-fb/gdkfont-fb.c:
4074         Update to new Pango APIs
4075
4076         * gdk/linux-fb/gdkproperty-fb.c:
4077         Update to new GdkAtom APIs
4078
4079         * gdk/linux-fb/gdkwindow-fb.c:
4080         Remove warnings
4081
4082 Mon Oct 22 20:07:21 2001  Jonathan Blandford  <jrb@redhat.com>
4083
4084         * gtk/gtktreestore.c (gtk_tree_store_prepend): Fix docs, #62808
4085
4086 Wed Oct 24 22:54:07 2001  Kristian Rietveld  <kristian@planet.nl>
4087
4088         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): treat
4089         s_path as a child path
4090
4091 Wed Oct 24 20:29:47 2001  Kristian Rietveld  <kristian@planet.nl>
4092
4093         * gtk/gtktreemodelsort.c: more changes in an attempt to get
4094         it right. It's not yet ready for general consumption.
4095
4096         * tests/treestoretest.c: add a button and entry for the new
4097         iter_change function
4098         (iter_change): new function, to test
4099         the row_changed signal implementation of the GtkTreeModelSort
4100
4101         * tests/testtreesort.c: cleanups, changes to test more features
4102         of the GtkTreeModelSort at once
4103
4104 2001-10-24  Havoc Pennington  <hp@redhat.com>
4105
4106         * gtk/gtktextbuffer.c (clipboard_clipboard_buffer_received):
4107         remove hack to strip off the bogus newline, since we killed the
4108         bogus newline; fixes #61779
4109
4110 2001-10-24  Havoc Pennington  <hp@redhat.com>
4111
4112         * gtk/gtktextview.c (gtk_text_view_update_adjustments): don't
4113         create layout if we didn't have one
4114         (gtk_text_view_set_buffer): invalidate so we get the idle handlers
4115         as appropriate, avoids blanking the screen 
4116         (gtk_text_view_invalidate): new function to do invalidation,
4117         containing old guts of invalidated_handler
4118
4119 Wed Oct 24 10:29:47 2001  Owen Taylor  <otaylor@redhat.com>
4120
4121         * gtk/gtkalignment.c (gtk_alignment_class_init): Improve
4122         dreadful tooltips.
4123
4124 Tue Oct 23 17:31:42 2001  Owen Taylor  <otaylor@redhat.com>
4125
4126         * gdk/x11/gdkwindow-x11.c gdk/win32/gdkwindow-win32.c: Always 
4127         set window->parent (except or the root window itself); if 
4128         the window's parent is not a GdkWindow, or is a window of 
4129         type GDK_WINDOW_FOREIGN, set window->parent to the root parent.
4130
4131         * gdk/gdkwindow.c (gdk_window_get_toplevels): Don't include
4132         windows of type GDK_WINDOW_FOREIGN.
4133
4134 2001-10-24  Havoc Pennington  <hp@pobox.com>
4135
4136         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): if we move to
4137         the front of a segment, use the "slow" technique for moving
4138         backward, so we don't mess up the any_segment field in the iter. 
4139         Fixes #57707
4140
4141         * tests/testtextbuffer.c: add code to detect #57707, to avoid
4142         regression
4143
4144 2001-10-23  Havoc Pennington  <hp@redhat.com>
4145
4146         * gtk/gtktextview.c (popup_targets_received): only sensitize Cut
4147         if selection contains some editable text, #60975
4148         (gtk_text_view_scroll_to_iter): remove warning about scrolling
4149         prior to map; it should actually be OK to do so in many cases, 
4150         it would be nice to warn about scrolling when many lines have
4151         height 0, but I don't know what to do about that. Perhaps 
4152         move part of flush_scroll into this function? comment added 
4153         to consider this.
4154
4155 2001-10-23  Havoc Pennington  <hp@redhat.com>
4156
4157         * gtk/gtktextview.c (changed_handler): Correctly keep the same
4158         text on the top of the screen, considering that the changed region
4159         may have overlapped the first paragraph. Should fix msw's "text
4160         widget scrolled to wrong place on map" bug, and probably some
4161         other scrolling cases as well.
4162         (gtk_text_view_set_scroll_adjustments): start adjustments at 0.0, 
4163         instead of some random value
4164
4165         * gtk/gtktextview.c (gtk_text_view_class_init): actually override
4166         grab_focus, so #59708 is really fixed
4167
4168 2001-10-24  Anders Carlsson  <andersca@gnu.org>
4169
4170         * gtk/gtkentry.c: (append_action_signal): Use an image menu item here
4171         (popup_targets_received): Call append_action_signal with stock items
4172         
4173         * gtk/gtklabel.c: (append_action_signal): Use an image menu item here
4174         (gtk_label_do_popup): Call append_action_signal with stock items
4175         
4176         * gtk/gtktextview.c: (append_action_signal): Use an image menu item here
4177         (popup_targets_received): Call append_action_signal with stock items
4178
4179 2001-10-23  Havoc Pennington  <hp@redhat.com>
4180
4181         * gtk/gtktextview.c (changed_handler): queue a resize here; will
4182         temporarily slow down the widget a lot, until we figure out how to
4183         optimize to avoid full redraw everytime we queue a resize.
4184
4185 2001-10-23  Havoc Pennington  <hp@redhat.com>
4186
4187         * gtk/gtktextiter.c (test_log_attrs): handle case where offset ==
4188         0 and char_len == 0, bug #61729
4189
4190 2001-10-23  Havoc Pennington  <hp@redhat.com>
4191
4192         * gtk/gtktextiter.c (gtk_text_iter_forward_cursor_positions): fix
4193         return value, #61714 (Vitaly Tishkov)
4194         (gtk_text_iter_backward_sentence_starts): ditto
4195         (gtk_text_iter_backward_word_starts): ditto
4196         (gtk_text_iter_forward_word_ends): ditto
4197         (gtk_text_iter_forward_sentence_ends): ditto
4198         (gtk_text_iter_backward_cursor_positions): ditto
4199
4200 2001-10-23  Havoc Pennington  <hp@redhat.com>
4201
4202         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_pixel): Apply
4203         fix from Dov Grobgeld, #61858
4204
4205 2001-10-23  Havoc Pennington  <hp@redhat.com>
4206
4207         * gtk/gtktextview.c (gtk_text_view_update_im_spot_location): 
4208         Update IM spot location at appropriate times, #50626
4209         (Hidetoshi Tajima)
4210
4211 2001-10-23  Havoc Pennington  <hp@redhat.com>
4212
4213         * gtk/gtktextview.c (gtk_text_view_grab_focus): scroll to cursor
4214         on grab focus, unless it's caused by button click, #59708
4215
4216 Tue Oct 23 11:53:00 2001  Owen Taylor  <otaylor@redhat.com>
4217
4218         * gtk/Makefile.am (INCLUDES): Remove G_DISABLE_CONST_RETURNS.
4219
4220         * gtk/gtkfontsel.[ch]: Make gtk_font_selection_get_font()
4221         G_CONST_RETURN. (Murray Cumming)        
4222
4223         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_preview_text):
4224         Make G_CONST_RETURN.
4225
4226         * gtk/gtkfilesel.c (open_user_dir): Fix bug with freeing
4227         results of g_get_home_dir().
4228
4229         * gtk/gtkfilesel.c: Make filesel->fileop_file a duplicated 
4230         copy. Storing the return from gtk_entry_get_text() is evil.
4231
4232         * gtk/gtkcombo.c gtk/gtkcellrenderertext.c gtk/gtkbindings.c 
4233         gtk/gtkfilesel.c gtk/gtkfontsel.c gtk/gtkimmodule.c 
4234         gtk/gtkobject.c gtk/gtkoldeditable.c gtk/gtktreedatalist.c
4235         gtk/gtksignal.c: Add const.
4236
4237         * gdk/x11/gdkkeys-x11.c (get_direction): Add missing const.
4238
4239         * gtk/gtktreeview.c: Namespace object data keys to be safe, even 
4240         if we are setting them on private widgets.
4241
4242         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search): 
4243         Duplicate entry->text before setting it as object data.
4244
4245 2001-10-22  Havoc Pennington  <hp@redhat.com>
4246
4247         * gtk/gtktextbuffer.c (gtk_text_buffer_place_cursor): don't back
4248         up a char from the end iterator, fixes #61859 ("can't put cursor
4249         at the end of the buffer")
4250
4251         * gtk/gtktextiter.c (gtk_text_iter_forward_to_line_end): fix this
4252         to work with delimiters other than newline.
4253
4254         * tests/testtextbuffer.c: add some tests for get_chars_in_line,
4255         get_bytes_in_line
4256
4257         * gtk/gtktextiter.c (gtk_text_iter_get_chars_in_line): fix for the
4258         last line, since the newline is no longer counted.
4259         (gtk_text_iter_get_bytes_in_line): ditto
4260
4261 2001-10-22  Havoc Pennington  <hp@redhat.com>
4262
4263         * gtk/gtktextbtree.c (_gtk_text_btree_insert): add assertion that 
4264         #58290 would trigger if it reappeared, I think
4265
4266 2001-10-22  Havoc Pennington  <hp@redhat.com>
4267
4268         * gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
4269         add temporary code to dump btree contents on assertion failure
4270         described in #62656
4271         
4272         * gtk/gtktextbtree.c (ensure_end_iter_segment): add some
4273         assertions that we're getting the right end iter segment
4274
4275         * gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
4276         verify that we aren't on the end iterator after moving 
4277         forward one segment - fixes return value in an obscure case. 
4278         Also, some trivial code cleanup/rearranging.
4279         
4280 2001-10-22  Havoc Pennington  <hp@redhat.com>
4281
4282         * gtk/gtktextlayout.h: add a #error unless you define
4283         GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API, so people don't use this accidentally
4284
4285         * gtk/gtktext*.c: #define GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API as appropriate.
4286         
4287 2001-10-22  Havoc Pennington  <hp@redhat.com>
4288
4289         * gtk/gtktextview.c (gtk_text_view_get_border_window_size): fix 
4290         #62365
4291
4292 2001-10-22  Havoc Pennington  <hp@redhat.com>
4293
4294         * gtk/gtktextview.c (gtk_text_view_get_window_type): fix 
4295         #62436
4296
4297 2001-10-22  Havoc Pennington  <hp@redhat.com>
4298
4299         * gtk/gtktextview.c (gtk_text_view_set_border_window_size): Fix 
4300         #62366
4301
4302 Mon Oct 22 11:47:47 2001  Owen Taylor  <otaylor@redhat.com>
4303
4304         * gtk/gtklabel.c: Add cursor-position, selection-bound 
4305         properties. (#62148, reported by Padraig O'Briain)
4306
4307         * gtk/gtkentry.c (gtk_entry_class_init): Rename text_position
4308         to cursor_position. (1.3.x addition, text_position is an awful
4309         name.) Make cursor_position read-only to avoid sticky questions
4310         of interaction with selection_bound. (#62636, reported by
4311         Padraig O'Briain)
4312
4313 Mon Oct 22 16:25:12 2001  Owen Taylor  <otaylor@redhat.com>
4314
4315         Fixing popup menus to have "Paste" sensitized correctly. Original
4316         patches from Damian Ivereigh, much mangled.
4317
4318         * gtk/gtkselection.c: Add functions gtk_selection_data_get_targets(),
4319         gtk_selection_data_targets_include_text(). (#60854)
4320
4321         * gtk/gtkclipboard.c: Add a simple do-it-all non-async "check if
4322         the clipboard has text" function gtk_clipboard_wait_is_text_available.
4323         (#60854)
4324
4325         * gtk/gtkentry.c: Only enable the paste item if the clipboard
4326         contains text. (#60973)
4327
4328         * gtk/gtktextview.c: Only enable the paste item if the clipboard
4329         contains text. (#60975)
4330
4331 2001-10-22  Havoc Pennington  <hp@redhat.com>
4332
4333         * gtk/gtktextview.c (gtk_text_view_class_init): rip out
4334         "height_lines" and "width_columns" properties, it doesn't make
4335         sense to set the size request on a text view really. #62103
4336
4337 Mon Oct 22 15:17:05 2001  Jonathan Blandford  <jrb@redhat.com>
4338
4339         * gtk/gtktreestore.c (gtk_tree_store_iter_depth): Realized
4340         g_node_depth is broken, and that it's not worth being consistent
4341         with it.
4342
4343 2001-10-22  Havoc Pennington  <hp@redhat.com>
4344
4345         * gtk/gtktextiter.c (gtk_text_iter_set_line): Clarify behavior in
4346         docs, #61777
4347         (gtk_text_iter_forward_search) (gtk_text_iter_backward_search):
4348         change the two boolean args to a flags field, so we can extend 
4349         to add case insensitive, regexp searches later. #61852
4350
4351 Mon Oct 22 15:07:17 2001  Jonathan Blandford  <jrb@redhat.com>
4352
4353         * gtk/gtktreestore.c (gtk_tree_store_iter_depth): update docs to
4354         reflect reality, #62810
4355
4356 Mon Oct 22 14:08:26 2001  Jonathan Blandford  <jrb@redhat.com>
4357
4358         * demos/gtk-demo/appwindow.c: Remove handle_box from App demo.
4359
4360         * gtk/gtktreeview.c (size_allocate): Move to a different drawing
4361         system.  Instead of having a window the size of the tree, we have
4362         a window the size of widget->allocation, and simply draw with the
4363         offset.
4364         (coords_are_over_arrow): ditto.  Move to window coordinates.
4365         (do_prelight): ditto
4366         (do_unprelight): ditto
4367
4368         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
4369         Minor fix from Kristian Rietveld to fix unsorted case.
4370
4371 2001-10-22  jacob berkman  <jacob@ximian.com>
4372
4373         * gtk/gtkclist.c (cell_size_request): don't cast a PIXTEXT cell to
4374         a PIXMAP cell (fixes crash when using PIXTEXT cells)
4375
4376 Sat Oct 20 18:58:25 2001  Owen Taylor  <otaylor@redhat.com>
4377
4378         * gtk/gtkentry.h: Deprecate gtk_entry_set_editable.
4379         (#58768, Vitaly Tishkov)
4380         
4381         * gtk/gtkobject.h: Deprecate with abandon. 
4382         (#61942, Vitaly Tishkov, Matthias Clasen)
4383
4384         * gtk/gtksignal.h: Deprecate everything.
4385
4386         * gtk/gtkmain.h (GTK_PRIORITY_INTERNAL): Deprecate
4387         all GTK_PRIORITY_* defines other than GKT_PRIORITY_RESIZE>
4388         (#61942, Matthias Clasen)
4389
4390         * gtk/gtkstyle.h: Deprecate gtk_draw_*. (#61140,
4391         Havoc Pennington)
4392
4393         * gtk/gtkitemfactory.h: Deprecate compat functions
4394         for GtkMenuFactory code. (#62071)
4395
4396         * gdk/gdkdrawable.h: Deprecate gdk_draw_string,
4397         gdk_draw_text,gdk_draw_text_wc. (#62071)
4398
4399 Mon Oct 22 10:12:08 2001  Owen Taylor  <otaylor@redhat.com>
4400
4401         * gdk/gdk.c docs/Changes-2.0.txt (gdk_threads_init): Don't call
4402         g_thread_init(), we don't want to link to -lgthread if we don't
4403         have to.
4404
4405 Mon Oct 22 08:51:02 2001  Owen Taylor  <otaylor@redhat.com>
4406
4407         * gdk/gdk.[ch] (gdk_threads_init) docs/Changes-2.0.txt: 
4408         Add a function, gdk_threads_init() that must be explicitely 
4409         called to enable the GDK thread mutex.
4410
4411 2001-10-22  Jakub Steiner <jimmac@ximian.com>
4412
4413         * gtk/stock-icons/stock_stop.png: no body parts
4414         
4415 Sun Oct 21 23:27:00 2001  Owen Taylor  <otaylor@redhat.com>
4416
4417         * gtk/gtkwidget.c (gtk_widget_translate_coordinates): Fix
4418         problem with g_return_if_fail return value.
4419
4420         * gdk/x11/gdkproperty-x11.c docs/Changes-2.0.txt: Move over the 
4421         virtual atom code from the gdk-multihead branch, removing the per-display
4422         part. Virtualizing atoms needs to be done now to prevent compat
4423         breakage in direct Xlib accessing code in the future. (#62208)
4424  
4425         * gdk/x11/gdkx.h: gdk/gdk/x11/gdkproperty-x11.c: Export
4426         gdk_x11_xatom_to_atom, gdk_x11_atom_to_xatom().
4427  
4428         * gdk/gdktypes.h docs/Changes-2.0.txt: Make GdkAtom
4429         an opaque pointer type so the compiler catches attempts
4430         to mingle it with X atoms.
4431
4432         * gdk/x11/{gdkdnd-x11.c,gdkevents-x11.c,gdkglobals-x11.c,
4433           gdkkeys-x11.c, gdkmain-x11.c, gdkprivate-x11.c, 
4434           gdkproperty-x11.c, gdkselection-x11.c, gdkwindow-x11.c}
4435           gtk/{gtkclist.c,gtkctree.c,gtkdnd.c,gtkplug.c,gtksocket.c}
4436           tests/testdnd.c,tests/testselection.c: 
4437         Fix up for above atom changes.
4438
4439         * gdk/gdkselection.h (GDK_SELECTION_CLIPBOARD): Add, since we
4440         now have the ability to add custom predefines.
4441
4442         * gtk/{gtkentry.c,gtklabel.c,gtkoldeditable.c,gtktextview.c}:
4443         Use GDK_SELECTION_CLIPBOARD instead of GDK_NONE in calls
4444         to gtk_clipboard_get().
4445
4446         * gdk/win32/gdkproperty-win32.c: Add CLIPBOARD, fix up
4447         for GdkAtom => pointer change.
4448
4449         * gdk/linux-fb/gdkproperty-fb.c: Fix handling of predefined
4450         atoms, fix for GdkAtom => pointer change.
4451
4452 Mon Oct 22 00:26:46 2001  Kristian Rietveld  <kristian@planet.nl>
4453
4454         * gtk/gtkspinbutton.c: remove ARROW_SIZE constant, use
4455         new function spin_button_get_arrow_size() instead.
4456
4457         * gtk/gtkstyle.c (gtk_default_draw_arrow): actual size of
4458         arrow was hardcoded, it's now variable.
4459
4460         Fixes bug #50200
4461
4462 Sat Oct 20 18:16:04 2001  Manish Singh  <yosh@gimp.org>
4463
4464         * gtk/gtktreeview.c (gtk_treeview_get_property): PROP_MODEL and
4465         PROP_EXPANDER_COLUMN can be NULL, so don't do a object cast check
4466         for those
4467
4468 Sat Oct 20 19:38:16 2001  Owen Taylor  <otaylor@redhat.com>
4469
4470         * demos/*.c demos/gdk-pixbuf/*.c: Eliminate gtk_signal_*
4471         in favor of g_signal_*, gtk_object_* in favor of 
4472         g_object_*.
4473
4474 Fri Oct 19 18:35:22 2001  Manish Singh  <yosh@gimp.org>
4475
4476         * gtk/{gtkentry.c,gtktextview.c}: since GtkIMContext derives directly
4477         from GObject now, we have to use the g_object_* functions, not
4478         gtk_object_*.
4479
4480 Fri Oct 19 22:46:54 2001  Kristian Rietveld  <kristian@planet.nl>
4481
4482         * gtk/gtktreemodelsort.[ch]: we probably have rows_reordered
4483         nailed down now (this code is not yet ready for general consumption)
4484
4485 Fri Oct 19 13:44:51 2001  Manish Singh  <yosh@gimp.org>
4486
4487         * gtk/gtktreeview.c (gtk_treeview_scroll_to_cell): correct docs
4488         for use_align
4489
4490 Fri Oct 19 15:34:06 2001  Owen Taylor  <otaylor@redhat.com>
4491
4492         * gtk/gtk.h gtk/Makefile.am: Export GtkIMContextSimple publically. (#61862)
4493
4494 Fri Oct 19 15:08:30 2001  Owen Taylor  <otaylor@redhat.com>
4495
4496         * gtk/{gtkimcontext.c,gtkimcontextsimple.c,gtkimmulticontext.c}
4497         modules/input/{gtkimcontextxim.c,imcyrillic-translit.c,iminuktitut.c,
4498         imipa.c,imthai-broken.c,imviqr.c}: Make GtkIMContext derive from
4499         GObject, not GtkObject. (#62621)
4500
4501 Fri Oct 19 12:49:12 2001  Owen Taylor  <otaylor@redhat.com>
4502
4503         * tests/testsocket.c: Remove now useless include of unistd.h,
4504         fix wrong argument gtk_socket_steal. (Hans Breuer, #58541)
4505         
4506 Fri Oct 19 12:24:32 2001  Owen Taylor  <otaylor@redhat.com>
4507
4508         * gdk/linux-fb/gdkfont-fb.c: Fix up for change to 
4509         Pango font API. #61933. (Untested, even for compilation.)
4510
4511 Fri Oct 19 11:24:58 2001  Owen Taylor  <otaylor@redhat.com>
4512
4513         * gtk/gtkmain.[ch] (gtk_disable_setlocale): Actually
4514         export gtk_disable_setlocale(). (Caught by Sven Neumann)
4515
4516 2001-10-18  Havoc Pennington  <hp@redhat.com>
4517
4518         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_lookup): fix compilation
4519
4520 2001-10-18  Havoc Pennington  <hp@redhat.com>
4521
4522         * gtk/gtkbutton.c (gtk_button_class_init): Change button signals
4523         to GTK_RUN_LAST, #50239
4524
4525 2001-10-18  HideToshi Tajima  <hidetoshi.tajima@sun.com>
4526
4527         * gtk/gtkimmodule.c (match_locale):
4528         Support "*" for all locales with least priority
4529         when to select default im module, #58201
4530
4531 2001-10-18  Matthias Clasen  <matthiasc@poet.de>
4532
4533         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): 
4534         Fix docs. (#61976)
4535  
4536         * gtk/gtkplug.c (gtk_plug_get_id) : Fix docs. (#62144)
4537
4538         * gtk/gtkliststore.c: Fix docs. (#61672, #61675)
4539
4540         * gdk/gdkwindow.h, gdk/gdkpixmap.h, gdk/x11/gdkx.h,
4541         gdk/x11/gdkwindow-x11.c, gdk/x11/gdkpixmap-x11.c,
4542         gdk/win32/gdkwin32.h, gdk/win32/gdkwindow-win32.c,
4543         gdk/win32/gdkpixmap-win32.c, gdk/linux-fb/gdkfb.h,
4544         gdk/linux-fb/gdkwindow-fb.c, gdk/linux-fb/gdkpixmap-fb.c:
4545         Add gdk_window_lookup, gdk_window_foreign_new, gdk_pixmap_lookup
4546         and gkd_pixmap_foreign_new to the gdk frontend api. (#62063)
4547
4548         * gtk/gtkselection.c: Remove gdk backend dependencies. (#62063)
4549
4550         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): 
4551         Don't restrict the width of the spinbutton entry field 
4552         to 10 digits. (#58681)
4553
4554 Thu Oct 18 14:58:14 2001  Jonathan Blandford  <jrb@redhat.com>
4555
4556         * tests/testtreeflow.c: new test program for the tree.
4557
4558 Thu Oct 18 14:22:10 2001  Jonathan Blandford  <jrb@redhat.com>
4559
4560         * gtk/gtktreestore.c (gtk_tree_store_remove): fix small bug
4561         reported by (Oleg Maiboroda), #62600
4562
4563 2001-10-18  Michael Meeks  <michael@ximian.com>
4564
4565         * gtk/gtkentry.c (gtk_entry_set_property),
4566         (gtk_entry_get_property): impl 'text'
4567         (gtk_entry_class_init): add the 'text' prop.
4568         (gtk_entry_insert_text): notify 'text' changed.
4569         (gtk_entry_delete_text): ditto.
4570
4571 2001-10-17  Matthias Clasen  <matthiasc@poet.de>
4572
4573         * gtk/gtkdnd.c, gtk/gtkclipboard.c, gdk/x11/gdkmain-x11.c:
4574         Documentation updates.
4575
4576 Wed Oct 17 15:17:20 2001  Owen Taylor  <otaylor@redhat.com>
4577
4578         * gtk/gtkentry.c (gtk_entry_real_insert_text): Fix mistake
4579         in truncating length of text to MAX_SIZE. (Found by 
4580         Padraig O'Briain, #62055)
4581
4582 Tue Oct 16 17:04:44 2001  Owen Taylor  <otaylor@redhat.com>
4583
4584         * gtk/gtkwidget.c: Rename ACTIVATE_MNEMONIC enum to
4585         MNEMONIC_ACTIVATE; signal was changed a long time
4586         ago.
4587
4588         * gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale): 
4589         Fix wrong return statement. (Reported by HideToshi
4590         Tajima and others.)
4591
4592         * gtk/gtklabel.h (struct _GtkLabelClass): Remove
4593         left over select_all vfunc.
4594
4595 Tue Oct 16 15:50:03 2001  Owen Taylor  <otaylor@redhat.com>
4596
4597         * gtk/gtkwidget.c (gtk_widget_translate_coordinates): Add
4598         a utility function to translate coordinates relative to
4599         one widget's allocation to coordinates relative to another
4600         widget's allocation.
4601
4602         * gtk/gtkradiobutton.c: Add a special ->focus() implementation
4603         that:
4604          - only accepts external focus if there is no active
4605            member of the group or the button is active.
4606          - makes arrow keys move the active button as well
4607            as the focus
4608          - make tab tab out directly.
4609         This makes a radio button group act as a single focus location.
4610         (#53577).
4611         
4612         * gtk/gtkcontainer.c (gtk_container_focus): Remove prefiltering -
4613         it was only a small optimization that didn't matter and made
4614         things more complicated.
4615
4616         * gtk/gtkcontainer.c (gtk_container_focus_tab): Get rid of custom
4617         sorter for FOCUS_TAB as we did for the other focus directions,
4618         sort by center of widgets, not upper-left corner. (Shouldn't
4619         matter in general.)
4620
4621         * gtk/gtkcontainer.c: Restructure code to remove duplicate code
4622         from the different types of focusing: encapsulate sorting the
4623         widgets for the focus direction into one routine
4624         (gtk_container_focus_sort()) and then share the work of moving the
4625         focus between the different focus directions.
4626
4627         * gtk/gtkcontainer.c: Fix bug where arrow navigation might not
4628         work correctly with focus chains containing non-immediate
4629         children. Sorting was being done using allocation coordinates for
4630         each widget in the focus chain, and if there were intermediate
4631         window-widgets, these allocations would not be in the same
4632         coordinate system.
4633
4634 Tue Oct 16 15:12:26 2001  Jonathan Blandford  <jrb@redhat.com>
4635
4636         * gtk/gtkoptionmenu.c (gtk_option_menu_mnemonic_activate): add a
4637         mnemonic_activate function to option menu.
4638
4639 2001-10-15  Murray Cumming <murrayc@usa.net>
4640
4641         * gtk/gtkinputdialog.c, gtk/gtktoolbar.c,  gtk/gtkwidget.c:
4642           Corrected the type names used in some calls to g_signal_new().
4643         
4644 Sat Oct 13 07:09:30 2001  Tim Janik  <timj@gtk.org>
4645
4646         * gtk/gtkbindings.c (gtk_binding_set_add_path): to compare pattern
4647         specs, use g_pattern_spec_equal() instead of direct field accesses.
4648         upon compressing two equal paths of the same type, the resulting
4649         priority has to be the maximum.
4650         * gtk/gtkenums.h (enum): take GTK_PATH_PRIO_MASK out of the
4651         GtkPathPriorityType enum and make it a macro.
4652
4653 2001-10-12  Matthias Clasen  <matthiasc@poet.de>
4654
4655         * gtk/gtkwidget.c: Fix some doc comments.
4656
4657 Fri Oct 12 11:39:20 2001  Joshua N Pritikin  <vishnu@pobox.com>
4658
4659         * gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): Fix to work
4660         on empty models.
4661
4662 2001-10-11  Matthias Clasen  <matthiasc@poet.de>
4663
4664         * gtk/gtkcolorsel.c, gtk/gtkwidget.c, gtk/gtktreeview.c:
4665         Remove stale gdk backend includes.
4666  
4667 2001-10-10  Michael Meeks  <michael@ximian.com>
4668
4669         * gtk/gtkcombo.c (gtk_combo_class_init): add enable_empty
4670         and value_in_list properties.
4671         (gtk_combo_set_value_in_list): notify change.
4672         (gtk_combo_set_property, gtk_combo_get_property): impl. prop.
4673
4674 2001-10-11  James Henstridge  <james@daa.com.au>
4675
4676         * configure.in: add AS=CC and ASFLAGS=CFLAGS substitutions so
4677         that gtk+ can be built with automake 1.5 while not breaking
4678         things for automake 1.4.
4679
4680 Wed Oct 10 12:48:38 2001  Owen Taylor  <otaylor@redhat.com>
4681
4682         * gtk/gtkmain.c (gtk_init_check): Call setlocale (LC_ALL, "").
4683         (#60606)
4684
4685         * gtk/gtkmain.c (gtk_disable_setlocale): Add function
4686         to disable calling setlocale (LC_ALL, "").
4687
4688         * gtk/gtkmain.c (gtk_set_locale): Indicate in the 
4689         docs that this function is not typically useful.
4690
4691         * gdk/x11/{gdkim-x11.c,gdkmain-x11.c,gdkprivate-x11.h}: 
4692         Automatically initialize GDK for the current locale
4693         on gdk_init(). Don't reset locale to C when
4694         XSupportsLocale() fails.
4695
4696         * gdk/linux-fb/gdkim-fb.c (gdk_set_locale): Remove
4697         useless checks for UTF-8 locale breakage that mattered
4698         only for X.
4699
4700         * examples/calendar/calendar.c
4701         tests/{testgtk.c,testtext.c,testcalendar.c}: Remove calls to 
4702         gtk_set_locale().
4703
4704         * gtk/gtkiconfactory.c gtk/gtkitemfactory.c:
4705         gdk_pixbuf_new_from_stream => gdk_pixbuf_new_from_inline.
4706
4707 Wed Oct 10 21:13:46 2001  Kristian Rietveld  <kristian@planet.nl>
4708
4709         * gtk/gtktreemodel.[ch]: added gtk_tree_model_get_iter_from_string().
4710
4711         Fixes bug #61904
4712
4713 Wed Oct 10 01:19:04 2001  Jonathan Blandford  <jrb@redhat.com>
4714
4715         * gtk/gtktreeselection.c (gtk_tree_selection_iter_is_selected):
4716         new function, #61923
4717         (gtk_tree_selection_path_is_selected): Ditto
4718
4719 Tue Oct  9 17:40:24 2001  Jonathan Blandford  <jrb@redhat.com>
4720
4721         * gtk/gtktreestore.c (gtk_tree_store_finalize): We're a gobject,
4722         not a GtkObject.  Thanks andersca.
4723
4724         * gtk/gtkliststore.c (gtk_list_store_finalize): ditto
4725
4726 Tue Oct  9 14:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
4727
4728         * gtk/gtktreeviewcolumn.c
4729         (gtk_tree_view_model_sort_column_changed): fix broken code.
4730
4731 2001-10-08  Matthias Clasen  <matthiasc@poet.de>
4732
4733         * gtk/gtkselection.c: s/succesfully/successfully/g
4734
4735 2001-10-08  Havoc Pennington  <hp@pobox.com>
4736
4737         * demos/gtk-demo/stock_browser.c: remove unused enum
4738
4739         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
4740         pass the current selection state of the node in to the user
4741         selection func
4742
4743 2001-10-06  Matthias Clasen  <matthiasc@poet.de>
4744
4745         * gdk/x11/gdkx.h (GDK_CURSOR_XCURSOR): Replace reference to 
4746         non-existent function gdk_x11_cursor_get_xid 
4747         by gdk_x11_cursor_get_xcursor.
4748
4749 Fri Oct  5 20:50:00 2001  Jonathan Blandford  <jrb@redhat.com>
4750
4751         * gtk/gtktreestore.c (gtk_tree_store_iter_has_child): improve
4752         warning.
4753
4754         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): ref and
4755         unref nodes, #okay61676
4756
4757         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_sort): we listen
4758         to the property; no need to clear the other columns.  Also, we go
4759         to 'unsorted' if the model supports it.
4760
4761 2001-10-05  Sven Neumann  <sven@gimp.org>
4762
4763         * demos/testpixbuf-save.c
4764         * demos/testpixbuf-scale.c: simple tests for the new PNG tEXt chunk 
4765         feature.
4766
4767 Fri Oct  5 19:06:07 2001  Kristian Rietveld  <kristian@planet.nl>
4768
4769         * gtk/gtktreeview.c (gtk_tree_view_leave_notify): should
4770         destroy the search dialog
4771
4772         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
4773         added check to prevent creation of a search dialog if there's
4774         already one around
4775
4776         * gtk/gtktreeview.c: Define GTK_TREE_VIEW_SEARCH_DIALOG_KEY, and use
4777         it instead of "search-dialog" (when getting/setting the search dialog
4778         widget).
4779
4780 2001-10-05  Jakub Steiner <jimmac@ximian.com>
4781
4782         * gtk/stock-icons/stock_broken_image.png: broken images icon
4783
4784 2001-10-04  Havoc Pennington  <hp@pobox.com>
4785
4786         Fix #56586
4787         
4788         * gtk/gtksettings.c (gtk_settings_class_init): move the F10
4789         accelerator setting here...
4790
4791         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): ...from over here,
4792         because we try to use it when a menu bar hasn't necessarily been 
4793         initialized.
4794
4795 2001-10-03  Havoc Pennington  <hp@redhat.com>
4796
4797         * tests/testtextbuffer.c (logical_motion_tests): fix test case, 
4798         it previously verified incorrect behavior
4799
4800         Fixes for #61565
4801         
4802         * gtk/gtktextiter.c (gtk_text_iter_set_line): don't return lines
4803         off the end
4804         (_gtk_text_btree_get_iter_at_line_char): don't return lines off
4805         the end
4806         (_gtk_text_btree_get_iter_at_line_byte): don't return lines off
4807         the end
4808         (gtk_text_iter_forward_lines): if on the last line, move to end of
4809         it
4810
4811         * gtk/gtktextbtree.c (_gtk_text_btree_last_could_contain_tag):
4812         don't return a line off the end
4813
4814 Wed Oct  3 23:47:25  Kristian Rietveld  <kristian@planet.nl>
4815
4816         * gtk/gtkeditable.[ch]: move insert_text and delete_text virtual
4817         functions to do_insert_text and do_delete_text, add signals
4818         insert_text, delete_text and changed
4819
4820         * gtk/gtkentry.[ch]: remove signals insert_text, delete_text
4821         and changed. Updates to match new situation.
4822
4823         * gtk/gtkspinbutton.c: updates to match new situation
4824
4825         * gtk/gtkoldeditable.h: remove signals changed, insert_text
4826         and delete_text
4827
4828         * gtk/gtkoldeditable.c: updates to match new situation
4829
4830         * gtk/gtktext.c: updates to match new situation
4831
4832         Fixes bug #59803
4833
4834 2001-10-03  Havoc Pennington  <hp@redhat.com>
4835
4836         * gtk/gtktextiter.c (test_log_attrs): allow testing the end 
4837         position
4838
4839         * gtk/gtktextbuffer.c (compute_log_attrs): update for pango
4840         changes
4841
4842         * tests/testtextbuffer.c (logical_motion_tests): updates
4843
4844 2001-10-03  jacob berkman  <jacob@ximian.com>
4845
4846         * gtk/gtkwidget.c (gtk_widget_style_get_property): 
4847         * gtk/gtkstyle.c (_gtk_style_peek_property_value): 
4848         * gtk/gtksettings.c (apply_queued_setting): 
4849         * gtk/gtkmain.c (gtk_init_check): 
4850         * gtk/gtkcontainer.c (gtk_container_child_get_property):
4851         s/retrive/retrieve/
4852
4853 Wed Oct  3 20:29:29 2001  Kristian Rietveld  <kristian@planet.nl>
4854
4855         * gtk/gtktreemodelsort.[ch]: preparation for surgery
4856         * tests/testtreesort.c: ditto
4857
4858 2001-10-02  Havoc Pennington  <hp@redhat.com>
4859
4860         Throughout: assorted docs
4861         
4862         * gdk/gdkwindow.h: deprecate gdk_window_set_hints(), it's broken,
4863         gdk_window_set_geometry_hints() should be used instead.
4864
4865         * gdk/gdkimage.h: deprecate gdk_image_ref, gdk_image_unref, and
4866         document them
4867
4868         * gdk/x11/gdkx.h: remove gdk_get_client_window() since it doesn't
4869         seem to exist in any .c files
4870
4871         * gdk/x11/gdkcolor-x11.c (gdk_colormap_query_color): docs, 
4872         g_return_if_fail (pixel < colormap->size).
4873
4874 Wed Oct  3 10:42:54 2001  Owen Taylor  <otaylor@redhat.com>
4875
4876         * gtk/gtkdnd.c (gtk_drag_dest_find_target): Allow
4877         NULL for @target_list to mean, use
4878         gtk_drag_dest_get_target_list (widget).
4879
4880         * gtk/gtkdnd.c (gtk_drag_finish): Fix problem where
4881         drop could hang when calling gtk_drag_finish with 
4882         success == FALSE and del == TRUE.
4883
4884         * gtk/gtkdnd.c (gtk_drag_dest_drop): Fix problem where
4885         drops without a matching target found would propagate
4886         to the parent widget rather than being rejected.
4887
4888         * gtk/gtktextview.c (gtk_text_view_drag_data_received): 
4889         Use text_view->dnd_mark instead of mark name to be
4890         consistent with the rest of the code.
4891
4892         * gtk/gtktextview.c (gtk_text_view_drag_motion): Make
4893         pendantically correct for a drop-only-in-some-places
4894         widget. (Check whether you can insert in drag_drop,
4895         not just in drag_motion ... matters in theory, and
4896         for Motif drag and drop in practice.)
4897
4898         * gtk/gtkentry.c (gtk_entry_drag_drop): Patch from 
4899         Damian Ivereigh to not allow drops on non-editable
4900         entries. (#61124)
4901
4902         * gtk/gtkentry.c (gtk_entry_motion_notify): Don't allow
4903         text to be moved from a non-editable entry.
4904         
4905 2001-10-03  James Henstridge  <james@daa.com.au>
4906
4907         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width):
4908         s/width/fixed_width/ in order to get things to compile.
4909
4910 Wed Oct  3 00:37:09 2001  Jonathan Blandford  <jrb@redhat.com>
4911
4912         * gtk/gtkcelleditable.c: docs
4913
4914         * gtk/gtktreemodel.h: more docs.
4915
4916 2001-10-02  Havoc Pennington  <hp@redhat.com>
4917
4918         * gdk/x11/gdkwindow-x11.c: docs
4919
4920         * tests/testtextbuffer.c (logical_motion_tests): add sentence
4921         boundary tests
4922
4923 Tue Oct  2 20:18:32 2001  Kristian Rietveld  <kristian@planet.nl>
4924
4925         * demos/gtk-demo/Makefile.am: add editable_cells.c,
4926         list_store.c and tree_store.c
4927
4928         * demos/gtk-demo/appwindow.c: remove tearoff item from
4929         File menu, put menubar and toolbar in handle boxes.
4930
4931         * demos/gtk-demo/genincude.pl: various changes to support trees
4932
4933         * demos/gtk-demo/main.c: various changes to support trees
4934
4935         * demos/gtk-demo/stock_browser.c: changed name of demo
4936         to Stock Item and Icon Browser, so geninclude.pl doesn't see
4937         it as child
4938
4939         * demos/gtk-demo/editable_cells.c: new file/demo
4940         * demos/gtk-demo/list_store.c: new file/demo
4941         * demos/gtk-demo/tree_store.c: new file/demo
4942
4943 Mon Oct  1 16:05:44 2001  Owen Taylor  <otaylor@redhat.com>
4944
4945         * gtk/gtkrc.c gtk/gtksettings.c: 
4946         g_string_printfa => g_string_append_printf.
4947
4948 Mon Oct  1 16:08:23 2001  Jonathan Blandford  <jrb@redhat.com>
4949
4950         * gtk/gtkliststore.c (gtk_list_store_class_init): add a finalize
4951         and destroy handler.
4952
4953         * gtk/gtktreestore.c (gtk_list_store_class_init): ditto, #59963
4954
4955         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Add
4956         'start_editing' flag to select_cursor_row.  Bug spotted by Manish
4957         Singh <yosh@gimp.org>.
4958
4959 2001-10-01  Matthias Clasen  <matthiasc@poet.de>
4960
4961         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): replace
4962         g_scanner_add/remove_symbol by g_scanner_scope_add/remove_symbol.
4963
4964         * gtk/gtkrc.c (gtk_rc_parse_any): here as well.
4965
4966 Mon Oct  1 14:07:02 2001  Jonathan Blandford  <jrb@redhat.com>
4967
4968         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): change
4969         scroll_to_cell delayed code to happen in size_allocate.
4970
4971         * gtk/gtkstyle.c (gtk_default_draw_expander): change
4972         prelight/normal arrow drawing.
4973
4974         * gtk/gtktreedatalist.c: Change compare func to use g_utf8_collate
4975
4976         * gtk/gtktreestore.c: refactor.
4977
4978 Sun Sep 30 22:15:52 2001  Manish Singh  <yosh@gimp.org>
4979
4980         * gtk/gtkcheckbutton.c (gtk_check_button_size_allocate): Applied
4981         patch from Soeren Sandmann <sandmann@daimi.au.dk>. Vertically
4982         centers the child in relation to the to indicator height.
4983
4984 Sun Sep 30 15:11:59 2001  Jonathan Blandford  <jrb@redhat.com>
4985
4986         * gtk/gtktreestore.c (gtk_tree_store_remove): Make ITERS_PERSIST
4987         correct
4988
4989 Sun Sep 30  07:01:42 2001 CEST <mikeh@bahnhof.se>
4990
4991         * gtk/gtkcellrenderertext.c: I reverted back to old "weight"
4992         property code using g_param_spec_int and changed from
4993         g_value_get_enum to g_value_get_int instead. Probably a better way
4994         to fix the problem :-)
4995
4996 Sun Sep 30  05:31:32 2001 CEST Mikael Hermansson <tyan@linux.se>
4997
4998     * gtk/gtkcellrenderertext.c changed "weight" property type from 
4999       g_param_spec_int to g_param_spec_enum.
5000
5001 Sat Sep 29 12:25:26 2001  Manish Singh  <yosh@gimp.org>
5002
5003         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): typo
5004         fix: s/Wether/Whether/ in reorderable property description
5005
5006 Thu Sep 27 16:46:36 2001  Jonathan Blandford  <jrb@redhat.com>
5007
5008         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): only
5009         start editing when you select with a keyboard.
5010
5011         (gtk_tree_view_button_press_event): much more graceful now.
5012
5013         * gtk/gtkstyle.c: Draw togglebutton better.
5014
5015 2001-09-26  Havoc Pennington  <hp@redhat.com>
5016
5017         * demos/gtk-demo/dialog.c (interactive_dialog_clicked): add demo
5018         of passing non-stock label in to gtk_dialog_new_with_buttons
5019
5020         * gtk/gtktextview.c (cursor_blinks): disable cursor blink when
5021         debugging updates
5022
5023         * gtk/gtktextiter.h: comment about how GtkTextIter struct contents
5024         are private
5025
5026         * gtk/gtkbutton.c (gtk_button_new_from_stock): if stock ID doesn't
5027         exist, fall back to mnemonic label, not plain label, bug #61184
5028         
5029 Wed Sep 26 19:48:01 2001  Jonathan Blandford  <jrb@redhat.com>
5030
5031         * gtk/gtktreestore.c (gtk_tree_store_set_valist): Stop being
5032         stupid and emitting the signal every time.
5033
5034         * gtk/gtkliststore.c (gtk_list_store_set_valist): ditto
5035
5036 Wed Sep 26 16:35:59 2001  Owen Taylor  <otaylor@redhat.com>
5037
5038        Patch from Mark McLoughlin <mark@skynet.ie> (#61233)
5039
5040        * contrib/gdk-pixbuf-xlib/Makefile.am: install
5041        gdk-pixbuf-xlib-2.0.pc.
5042
5043 Wed Sep 26 16:15:25 2001  Owen Taylor  <otaylor@redhat.com>
5044
5045         * gtk/gtknotebook.c (gtk_notebook_set_tab_label): Fix
5046         problem where menmonic wasn't removed properly when
5047         setting a label when there already is a label.
5048         Also, handle setting the tab label back to the same
5049         value. (#61160, #61161)
5050
5051         * gtk/gtkentry.c (paste_received): Patch from 
5052         Damian Ivereigh to replace selection if there is 
5053         one. (#61121)
5054
5055 2001-09-25  Darin Adler  <darin@bentspoon.com>
5056
5057         * tests/.cvsignore: Ignore new test program.
5058
5059 2001-09-25  Havoc Pennington  <hp@redhat.com>
5060
5061         * gtk/gtktextview.c: fix for #50317
5062         
5063 2001-09-25  Havoc Pennington  <hp@redhat.com>
5064
5065         * gtk/gtktextview.c (gtk_text_view_key_press_event): use 
5066         gtk_text_iter_can_insert
5067         
5068         * gtk/gtktextbuffer.c: use gtk_text_iter_can_insert
5069
5070         * gtk/gtktextiter.c (find_line_log_attrs): fixes, #57611, #57613
5071          (gtk_text_iter_can_insert): new function to fix #60282, should
5072         also fix msw's "can paste into empty buffer" bug.
5073
5074         * gtk/gtktexttag.c (gtk_text_tag_event): change type check for 
5075         "event object,"  #59091
5076
5077         * gtk/gtktextbtree.c: indentation fixes
5078
5079         * gtk/gtktextiter.c (find_by_log_attrs): fixes
5080
5081 Tue Sep 25 12:41:17 2001  Owen Taylor  <otaylor@redhat.com>
5082
5083         * configure.in: Version 1.3.9, interface age 0, binary age 0.
5084
5085         * configure.in: Require GLib-1.39, Pango 0.20, Atk 0.5.
5086
5087         * NEWS: Updates.
5088
5089 Mon Sep 24 11:59:09 2001  Owen Taylor  <otaylor@redhat.com>
5090
5091         * gtk/gtkstyle.[ch] (_gtk_draw_insertion_cursor): Shared
5092         function for drawing cursors between gtkentry/gtklabel/gtktextview.
5093         Should this be public? It has a bit of an odd interface, but
5094         custom editing widgets probably should be using it.
5095         Function will draw with wider width for taller cursors, and
5096         draws a little indicator arrow to indicate directoin for split 
5097         cursors.
5098
5099         * gtk/gtktextview.c: Add a "cursor_color" property.
5100
5101         * gtk/gtktextdisplay.[ch]: Add a cursor_gc parameter to
5102         gtk_text_layout_draw().
5103
5104         * gtk/gtkentry.c gtk/gtklabel.c gtk/gtktextdisplay.c: Use
5105         _gtk_draw_insertion_cursor().
5106
5107 Tue Sep 25 11:22:23 2001  Owen Taylor  <otaylor@redhat.com>
5108
5109         * gtk/gtkcellrenderertext.c gtk/gtktexttag.c: Restore
5110         the behavior where you could turn family_set (etc) back on
5111         and get back the values you had before.
5112
5113         * demos/gtk-demo/stock_browser.c (id_to_macro): Use
5114         g_string_ascii_up() rather than looping through the
5115         string ourself.
5116
5117 Tue Sep 25 15:32:44 2001  Jonathan Blandford  <jrb@redhat.com>
5118
5119         * gtk/gtktreeviewcolumn.c
5120         (gtk_tree_view_column_set_cell_renderer): Removed
5121         (gtk_tree_view_column_set_alignment): xalign = CLAMP (xalign, 0.0, 1.0);  Fixes 61012.
5122
5123         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Fixed #61012
5124         Patch from Detlef Reichl
5125
5126 2001-09-25  Havoc Pennington  <hp@redhat.com>
5127
5128         * tests/testtextbuffer.c (line_separator_tests): Add tests for
5129         line separators, addresses bug #57428
5130
5131 Tue Sep 25 12:34:42 2001  Jonathan Blandford  <jrb@redhat.com>
5132
5133         * gtk/gtkentry.c: Make a GtkCellEditable
5134         (get_widget_window_size): Change to let it honor size_allocate
5135         when a CellEditable.
5136
5137         * gtk/gtktreeview.c: M-x clean-line-ends.  Lots of focus and
5138         editable changes.
5139         (gtk_tree_view_set_cursor): Now you can set the cursor
5140         horizontally, as well as start editing.
5141
5142         * gtk/gtkstyle.c (gtk_default_draw_check): changing toggle drawing
5143         code to look more like the other check buttons.
5144
5145         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
5146         Change the way we calculate cell size.
5147
5148         * gtk/gtkmarshal.list (VOID:STRING,STRING): new marshaller.
5149
5150         * demos/gtk-demo/sizegroup.c: Add mnemonics.
5151
5152         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): Fix docs.
5153         Fix logic.
5154
5155         * gtk/gtkcellrenderertext.c: Change to be editable.
5156
5157         * gtk/gtkcellrenderertoggle.c: Change to be activatable.
5158
5159         * test/testtreesort.c: Fix misspelling
5160
5161         * test/testreecolumns.c: Add mnemonics.
5162
5163         * test/testreeedit.c: New test program.
5164
5165 2001-09-25  Havoc Pennington  <hp@pobox.com>
5166
5167         * gtk/gtkwindow.c: Put notes in gtk_window_set_has_frame(),
5168         etc. docs about how these are not going to do what you want for 
5169         the X/win32 ports. Futile attempt to avoid a FAQ...
5170
5171 2001-09-24  James Henstridge  <james@daa.com.au>
5172
5173         * gtk/gtkmarshal.list (VOID): add marshal function types.
5174
5175         * gtk/gtkctree.c (gtk_ctree_class_init): make arguments have type
5176         GTK_TYPE_CTREE_NODE|G_SIGNAL_TYPE_STATIC_SCOPE rather than
5177         GTK_TYPE_POINTER.
5178         (gtk_ctree_node_get_type): implement boxed type for GtkCTreeNodes
5179         with no-op copy/free functions.
5180
5181         * gtk/gtkctree.h (gtk_ctree_node_get_type): add prototype for
5182         GtkCTreeNode get_type function.
5183
5184 2001-09-24  Havoc Pennington  <hp@redhat.com>
5185
5186         * gtk/gtktextiter.c, gtk/gtktextbuffer.c, gtk/gtktextbtree.c,
5187         gtktextlayout.c:
5188         Get rid of the newline-that-could-not-be-deleted; buffers may 
5189         now be zero-length. Much easier to fix than expected, once 
5190         I figured out the right way to do it. However, there are 
5191         various subtle bugs introduced by this that will have to get 
5192         sorted out. Please use bugzilla.
5193
5194 Mon Sep 24 15:09:08 2001  Owen Taylor  <otaylor@redhat.com>
5195
5196         * gtk/gtkwindow.c (gtk_window_move_resize): Don't wait for a
5197         response back from the window manager if our size hasn't changed 
5198         since we won't get a response back from the window manager;
5199         there was code in there to do this, but it was in the wrong
5200         place so if the hints change and the size didn't we'd expect
5201         a response.
5202
5203         Also, optimize the position-only-changed case by running
5204         the resize queue immediately, and clean up some comments
5205         for the changes.
5206
5207 Mon Sep 24 12:48:25 2001  Owen Taylor  <otaylor@redhat.com>
5208
5209         * gtk/gtknotebook.h: Add a compat macro that got lost.
5210
5211         * gtk/gtktreestore.c: Doc fixes.
5212
5213         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix reference
5214         leak for windows that receive events after being destroyed.
5215         (#60863, Joshua N. Pritikin)
5216
5217         * gtk/gtktable.c (gtk_table_remove): Use gtk_widget_queue_resize
5218         rather than gtk_container_queue_resize().
5219
5220         * gtk/{gtkcontainer.c,gtkwidget.c,gtkwindow.c}: _gtk prefix
5221         gtk_container_queue_resize, gtk_container_queue_resize_widgets,
5222         gtk_container_child_composite_name. (#60217.)
5223
5224 2001-09-22  Hans Breuer  <hans@breuer.org>
5225
5226         * gtk/gtkmenu.h : fix compat macros for gtk_menu_<prepend|insert>
5227
5228 Sat Sep 22 16:50:34 2001  Kristian Rietveld  <kristian@planet.nl>
5229
5230         * gtk/gtktexttag.c (gtk_text_tag_set_property): (case PROP_WEIGHT):
5231         weight value should be an int
5232
5233 Sat Sep 22 15:17:41 2001  Kristian Rietveld  <kristian@planet.nl>
5234
5235         * gtk/gtkmenu.c (gtk_menu_select_item): move most code
5236         to gtk_menu_scroll_item_visible(). Only call
5237         gtk_menu_scroll_item_visible() if the menu widget has been
5238         realized. Fixes bug #55310.
5239
5240 2001-09-21  Havoc Pennington  <hp@redhat.com>
5241
5242         * gtk/gtktextview.c (gtk_text_view_key_press_event): don't pass
5243         key press to IM context if cursor isn't in an editable location;
5244         bug #58425, patch from Hidetoshi Tajima
5245
5246 2001-09-21  Havoc Pennington  <hp@redhat.com>
5247
5248         Bug #60862
5249         
5250         * gtk/gtktextbtree.c (gtk_text_btree_node_destroy): 
5251         (_gtk_text_btree_unref): fix up mark memory management
5252
5253         * gtk/gtktextmark.c (mark_segment_delete_func): ditto
5254
5255 2001-09-20  Havoc Pennington  <hp@redhat.com>
5256
5257         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): don't
5258         try to handle alignment here, because it's done by PangoLayout
5259         after we set the layout width. Fix from Dov.
5260
5261 2001-09-21  Hans Breuer  <hans@breuer.org>
5262
5263         * gdk/gdk.def :
5264         * gtk/gtk.def : updated externals
5265
5266         * gtk/gtkmain.h : define get_gtk_win32_directoty () 
5267         * gtk/gtkmain.c (find_module) : don't use module_name after freeing it.
5268         Also handle that Win32 pathes cann't be hard-coded      
5269
5270         * gtk/gtkrc.c : use get_gtk_win32_directoty () to cleanup the various
5271         module, themes etc directory calculations
5272
5273         * gdk/win32/gdkgeometry-win32.c : some more hacking to get coordinates
5274         >16 bit right. The size limit within Win9x appears _not_ to be 32767
5275         but slightly smaller ...
5276
5277         * gdk/win32/gdkwindow-win32.c : use impl->position_info to avoid 
5278         >16 bit clipping. Added dummy body for gdk_window_set_icon_list ()
5279
5280         * gdk/win32/gdkdrawable-win32.c : implement gdk_win32_drawable_get_handle ()
5281
5282         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
5283         handling. I'm not sure if it is better now, but at least not worse
5284
5285         * gdk/win32/makefile.msc : define INSIDE_GDK_WIN32, some cleanup
5286
5287         * gdk/win32/gdkwin32.h : reflect recent API restrictions
5288
5289 2001-09-21  Matt Wilson  <msw@redhat.com>
5290
5291         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy): set
5292         radio_menu_item->group to NULL after removing it from the list, as
5293         it is no longer in the group. (#60869)
5294
5295         * gtk/gtkradiobutton.c (gtk_radio_button_destroy): likewise
5296
5297 2001-09-20  Havoc Pennington  <hp@pobox.com>
5298
5299         * configure.in (PANGO_REQUIRED_VERSION)
5300         (ATK_REQUIRED_VERSION): add variables and checks for specific 
5301         versions of dependencies. Previously we didn't verify the 
5302         Pango or ATk versions.
5303
5304 2001-09-09  Havoc Pennington  <hp@pobox.com>
5305
5306         * gtk/gtktextiter.c: fool with indentation
5307         (gtk_text_iter_in_range): add g_return_if_fail
5308
5309 Thu Sep 20 17:45:54 2001  Joshua N Pritikin  <vishnu@pobox.com>
5310
5311         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): Fix
5312         ref count on new tag to be 1.  Update doc.  (#60836)
5313
5314 Thu Sep 20 16:20:47 2001  Owen Taylor  <otaylor@redhat.com>
5315
5316         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Remove unnecessary
5317         call to gdk_image_new_bitmap(). (#59094, reported by
5318         by Sven Neumann)
5319
5320 Thu Sep 20 15:31:35 2001  Owen Taylor  <otaylor@redhat.com>
5321
5322         * gtk/gtkcalendar.c (gtk_calendar_init): Use the current
5323         day, as well as the current month and year.
5324         (#59047, reported by Vitaly Tishkov)
5325
5326 Thu Sep 20 15:10:30 2001  Owen Taylor  <otaylor@redhat.com>
5327
5328         * gtk/gtkdialog.c (gtk_dialog_init): Automatically set
5329         set dialogs to GTK_WIN_POS_CENTER_ON_PARENT. (#60554)
5330         
5331 Thu Sep 20 18:00:56 2001  Kristian Rietveld  <kristian@planet.nl>
5332
5333         * tests/testgtk.c (struct OptionMenuItem): get rid of it,
5334
5335         (build_option_menu): add func argument, connect ::changed
5336         signal to option menu instead of connecting the ::activate
5337         signal to the menu items,
5338
5339         (toplevel): get rid of RADIOMENUTOGGLED macro,
5340
5341         (list_toggle_sel_mode), (clist_toggle_sel_mode),
5342         (ctree_toggle_line_style), (ctree_toggle_expander_style),
5343         (ctree_toggle_justify), (ctree_toggle_sel_mode),
5344         (progressbar_toggle_orientation), (progressbar_toggle_bar_style):
5345         use gtk_option_menu_get_history() instead of RADIOMENUTOGGLED,
5346
5347         (notebook_type_changed): merged standard_notebook(),
5348         notabs_notebook(), scrollable_notebook() and borderless_notebook()
5349         into notebook_type_changed()
5350
5351         (create_list), (create_ctree), (create_notebook),
5352         (create_progress_bar): changed OptionMenuItem arrays into
5353         gchar * arrays. Removed "Extended" item where used.
5354
5355         Fixes bug #59885
5356
5357 2001-09-20  Sven Neumann  <sven@gimp.org>
5358
5359         * configure.in
5360         * gdk/Makefile.am
5361         * gtk/Makefile.am
5362         * gtk/gtkselection.c
5363         * gtk/gtktreeview.c
5364         * gtk/gtkwindow.c: removed remaining traces of nanox GDK backend.
5365
5366 Thu Sep 20 11:19:42 2001  Owen Taylor  <otaylor@redhat.com>
5367
5368         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): Add
5369         a missing pango_layout_iter_free ().
5370
5371 Thu Sep 20 11:03:51 2001  Owen Taylor  <otaylor@redhat.com>
5372
5373         * gtk/gtkobject.c gtk/gtklist.c gtk/gtkplug.c gtk/gtksocket.c
5374         gtk/gtktreemodelsort.c gtk/gtktreeview.c: Small warning cleanups.
5375
5376         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_get_group): Change
5377         the function definition so we don't accidentally rely on
5378         the compat #define from gtk_radio_menu_item_group.
5379         (#60782, Jeff Franks)
5380
5381 Thu Sep 20 16:51:02 2001  Kristian Rietveld  <kristian@planet.nl>
5382
5383         * gtk/gtkwindow.c (gtk_window_get_frame_dimensions): returned
5384         incorrect values for top, right and bottom due to cut-and-paste
5385         bug. Pointed out by Vitaly Tishkov, fixes bug #59008
5386
5387 Wed Sep 19 17:59:27 2001  Owen Taylor  <otaylor@redhat.com>
5388
5389         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set
5390         _NET_WM_PID and WM_CLIENT_MACHINE properties on each
5391         window, not just on the client leader. (#58463)
5392
5393 Wed Sep 19 17:28:47 2001  Owen Taylor  <otaylor@redhat.com>
5394
5395         * gtk/gtkwidget.c (gtk_widget_new): Add missing cast.
5396
5397         * gtk/gtkmenuitem.[ch] gtk/gtkmenushell.c: Underscore prefix
5398         non-public _gtk_menu_item_set_placement.
5399
5400         * gtk/gtktooltips.h: Deprecate gtk_tooltips_set_delay().
5401
5402 Wed Sep 19 16:16:38 2001  Owen Taylor  <otaylor@redhat.com>
5403
5404         * gdk/win32/gdkcolor-win32.c gdk/x11/gdkcolor-x11.c 
5405           gdk/linux-fb/gdkcolor-fb.c:
5406         Fix propagated (flags && GDK_COLOR_WRITEABLE) typo.
5407         (#59723)
5408
5409 Wed Sep 19 16:12:16 2001  Owen Taylor  <otaylor@redhat.com>
5410
5411         * gdk/gdkpixbuf-render.c: Allow -1 for width/height
5412         to mean "width/height of pixbuf" (Patch from Matthias Clasen,
5413         #59723)
5414
5415 Wed Sep 19 16:01:27 2001  Owen Taylor  <otaylor@redhat.com>
5416
5417         Patch from Frank Belew #59037 for Solaris compilation.
5418
5419         * gtk/maketypes.awk: Change syntax slightly for a call
5420         to sub(), apparently making awk on Solaris happier.
5421
5422         * gtk/gtktreeview.c: Remove C++ comments.
5423
5424 Wed Sep 19 15:46:29 2001  Owen Taylor  <otaylor@redhat.com>
5425
5426         * gtk/gtkwindow.c: Add xgettext:no-c-format comment to
5427         to handle '99% of the time. (#60473, reported by Christian Rose)
5428
5429         * gtk/gtkwidget.h: Remove prototype for gtk_widget_get_usize()
5430         which no longer exists. (#60379, reported by Vitaly Tishkov)
5431
5432 Wed Sep 19 11:06:24 2001  Tim Janik  <timj@gtk.org>
5433
5434         * Released 1.3.8.
5435
5436         * gdk/Makefile.am: kill EXTRA_DIST clearing.
5437         
5438 Wed Sep 19 02:50:40 2001  Tim Janik  <timj@gtk.org>
5439
5440         * demos/Makefile.am ($(testpixbuf_OBJECTS)): don't use BUILT_SOURCES
5441         as its broken in automake 1.4, add explicit object rule to
5442         generate this.
5443         
5444         * gdk-pixbuf/Makefile.am: fix maintainer and normal cleanfiles.
5445         get rid of uneccessary stamps, group stuff more logically, and build
5446         sources due to object rules. fix srcdir!=builddir.
5447
5448 Tue Sep 18 20:47:16 2001  Owen Taylor  <otaylor@redhat.com>
5449
5450         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Fix 
5451         incorrect parameter to compute_double_length
5452         (#58680, patch from Matthias Clasen)
5453
5454         Fixes for compilation with Forte cc. (#59734, Derek Rafter)
5455
5456         * gtk/gtkwindow.h gtk/gtksizegroup.h: Remove extra ;.
5457
5458         * gdk/gdktypes.h (GdkModifierType): Write 1u << 31
5459         for GDK_RELEASE_MASK to avoid warnings with Forte.
5460
5461         * gtk/gtktexttag.c gtk/gtkcellrendertext.c: Add some missing
5462         break; statements.
5463
5464 2001-09-18  Alex Larsson  <alexl@redhat.com>
5465
5466         * gtk/gtkcheckbutton.c:
5467         * gtk/gtkradiobutton.c:
5468         Don't draw with GTK_STATE_ACTIVE.
5469
5470         * gtk/gtkclist.c:
5471         * gtk/gtkctree.c:
5472         Draw lines between rows with base_gc[GTK_STATE_NORMAL].
5473
5474         * gtk/gtktextdisplay.c:
5475         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
5476         unfocused with base_gc [GTK_STATE_ACTIVE].
5477         
5478         * gtk/gtkentry.c:
5479         Add select all menu-item.
5480         Default cursor color is red.
5481         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
5482         unfocused with base_gc [GTK_STATE_ACTIVE].
5483
5484         * gtk/gtklabel.[ch]:
5485         Add keynav + menu to selectable lables.
5486         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
5487         unfocused with base_gc [GTK_STATE_ACTIVE].
5488
5489         * gtk/gtkfilesel.c:
5490         Add drag and drop support.
5491
5492         * gtk/gtkstyle.c:
5493         (This was checked in earlier)
5494         New default values for text/base SELECTED and ACTIVE
5495         
5496 Tue Sep 18 23:51:49 2001  Tim Janik  <timj@gtk.org>
5497
5498         * configure.in: up version to 1.3.8, interface age 0,
5499         binary age 0, depend on glib 1.3.8.
5500
5501         * NEWS: 1.3.8 updates.
5502
5503 Tue Sep 18 18:46:54 2001  Jonathan Blandford  <jrb@redhat.com>
5504
5505         * gtk/gtktreeview.c (gtk_tree_view_start_editing): centralize all
5506         the editing code
5507
5508         * gtk/gtkcelleditable.c: Got rid of stop_editing, as there was no
5509         reason to call it beyond emiting the two signals.
5510
5511         * gtk/gtkentry.c (gtk_entry_class_init): add "has_frame" property
5512         to GtkEntry.
5513
5514 Wed Sep 12 11:21:14 2001  Owen Taylor  <otaylor@redhat.com>
5515
5516         * gtk/gtkcellrenderertext.[ch] gtk/gtktexttag.[ch]
5517           gtk/gtktextview.c tests/testgtk.c: Fix up for changes to 
5518         PangoFontDescription.
5519
5520         * gtk/gtkentry.c gtk/gtkclist.c gtk/gtkcellrenderertext.c
5521         gtk/gtkspinbutton.c: Fix up for change to PangoMetrics
5522         structure.
5523   
5524         * gtk/gtkfontsel.c: Fix up for new Pango font listing API.
5525
5526         * gtk/gtkstyle.[ch]: Add gtk_style_get_font/set_font to replace
5527         direct access to style->font. Deprecate gtk_style_ref/unref.
5528   
5529         * gtk/gtkclist.c gtk/gtkctree.c gtk/gtkstyle.c gtk/gtkwidget.c:
5530         Remove gtk_style_ref/unref with g_object_ref/unref.
5531   
5532         * gtk/gtkcalendar.c: Remove leftover macros accessing
5533         style->font.
5534   
5535         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): Remove unused
5536         variable.
5537   
5538         * gtk/gtktext.c gtk/gtklabel.c: Use gtk_style_get_font() instead of 
5539         style->font.
5540
5541 Tue Sep 18 13:51:35 2001  Jonathan Blandford  <jrb@redhat.com>
5542
5543         * gtk/gtkcellrenderer.h (enum): Get rid of broken "can_edit" and
5544         "can_activate" properties in favor of
5545         GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE,
5546         and GTK_CELL_RENDERER_MODE_EDITABLE
5547
5548 Tue Sep 18 12:12:43 2001  Jonathan Blandford  <jrb@redhat.com>
5549
5550         * gtk/gtktreeview.c (gtk_tree_view_put): Add put for use with
5551         editable widgets.  This function is private, and should only be
5552         used by GtkTreeView.
5553
5554 2001-09-18  Matt Wilson  <msw@redhat.com>
5555
5556         * docs/Makefile.am (EXTRA_DIST): don't use += before =
5557
5558         * docs/faq/Makefile.am (EXTRA_DIST): likewise
5559
5560         * docs/tutorial/Makefile.am (EXTRA_DIST): likewise
5561         
5562         * gdk/Makefile.am (MAINTAINERCLEANFILES): likewise
5563         (EXTRA_HEADERS): likewise
5564
5565         * gtk/Makefile.am (MAINTAINERCLEANFILES): likewise
5566         (EXTRA_HEADERS): likewise
5567         (EXTRA_DIST): likewise
5568         (CLEANFILES): likewise
5569
5570         * gtk/stock-icons/Makefile.am (CLEANFILES): likewise
5571
5572         * tests/Makefile.am (EXTRA_DIST): likewise
5573         
5574         * Makefile.am (install-data-local): changed to use
5575         install-data-hook, which runs after install-pkgconfigDATA, so that
5576         the pkgconfigdir will have been created and populated first.
5577
5578 Mon Sep 17 17:39:52 2001  Jonathan Blandford  <jrb@redhat.com>
5579
5580         * gtk/gtkcelleditable.[ch]: Add editable interface.  This should
5581         be the last big GtkTreeView API change.
5582
5583         * gtk/gtkcellrenderer.[ch]: Get rid of the "event" vfunc, and
5584         replace with "activate" and "start_editing".  Also, added a
5585         "can_activate" and "can_edit" property.
5586
5587         * gtk/gtktreeviewcolumn.c: modify to use above.
5588
5589 2001-09-16  Alexander Larsson  <alla@lysator.liu.se>
5590
5591         * gtk/gtkoptionmenu.c:  Handle scroll wheel events.
5592
5593 Fri Sep 14 22:31:25 2001  Matthias Clasen  <matthiasc@poet.de>
5594
5595         * demos/gtk-demo/main.c (setup_default_icon): Use a shaped
5596         icon instead of one with ugly white background.
5597
5598 Fri Sep 14 22:26:01 2001  Matthias Clasen  <matthiasc@poet.de>
5599
5600         * demos/gtk-demo/stock_browser.c (id_to_macro): make
5601         the uppercasing work. (#59550)
5602
5603 2001-09-14  Jakub Steiner <jimmac@ximian.com>
5604
5605         * gtk/stock-icons/dialog_error.png:
5606         * gtk/stock-icons/dialog_question.png: more road signs
5607
5608 2001-09-13  Jakub Steiner <jimmac@ximian.com>
5609
5610         * gtk/stock-icons/dialog_question.png:
5611         * gtk/stock-icons/dialog_warning.png: anders and jonathan seem to
5612           like a road sign.
5613
5614 Wed Sep 12 19:01:05 2001  Jonathan Blandford  <jrb@redhat.com>
5615
5616         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Rename interface
5617         signals to make them more clear.  Also, change ::range_changed to
5618         ::row_changed.
5619         * gtk/gtktreemodel.c: Adjust to interface change
5620         * gtk/gtktreemodel.h: ditto
5621         * gtk/gtktreemodelsort.c: ditto
5622         * gtk/gtktreestore.c: ditto
5623         * gtk/gtkliststore.c: ditto
5624         * gtk/gtktreeview.c: ditto
5625         * tests/testtreecolumns.c: ditto
5626         * gtk/gtkmarshal.list: Actually remove a marshaller!
5627
5628 2001-09-12  Padraig O'Briain <padraig.obriain@sun.com>
5629
5630         * gtk/gtktextview.c
5631         Add support for Ctrl+Up/Down arrow to move cursor to beginning
5632         of previous/next paragraph. If within a paragraph cursor moves to
5633         beginning of that paragraph.
5634
5635 2001-09-12  Jakub Steiner <jimmac@ximian.com>
5636
5637         * gtk/stock-icons/dialog_question.png: replacing the shaky
5638           question mark with a sans-serif one.
5639         * gtk/stock-icons/stock_top.png, stock_bottom.png,
5640      stock_first.png, stock_last.png: using the new style arrows
5641         * gtk/stock-icons/stock_font.png: simple one to replace the ugly
5642      colors.
5643         * gtk/stock-icons/stock_refresh.png: anti-aliased and changed
5644      color.
5645         * gtk/stock-icons/stock_zoom*: anti-aliased
5646         * gtk/stock-icons/dialog_error.png, dialog_warning.png: confused
5647      '-' with a '_', removed the wrong files
5648
5649 Sat Sep  8 16:19:02 2001  Owen Taylor  <otaylor@redhat.com>
5650  
5651         * gtk/gtkmain.c: Implement a search path for GTK+ modules.
5652  
5653         * configure.in gtk/gtkrc.c gtk/Makefile.am: Look for modules
5654         in gtk-2.0/<type>/major.minor.(micro-binary_age) rather
5655         than in gtk-2.0/major.minor.micro/<type>/. This
5656         works better for a search path for modules.
5657  
5658         * gtk+-2.0.pc.in gtk+-2.0-uninstalled.pc.in: Add
5659         gtk_binary_version variable holding major.minor.(micro-binary_age).
5660  
5661         * modules/input/Makefile.am (moduledir): Fix installation
5662         directory to match change in lookup location.
5663  
5664         * gtk/gtkmain.c (gtk_init_check): Remove OS/2 code for dll 
5665         suffixes. Needs to be handled in g_module_build_path().
5666
5667         * gtk/gtkrc.c gtk/queryimmodules.c: Use g_build_filename() where
5668         appropriate.
5669  
5670 Tue Sep 11 13:59:12 2001  Owen Taylor  <otaylor@redhat.com>
5671
5672         * gtk/gtkrc.c (insert_rc_property): Fixed reversed comparison
5673         causing RC properties not to work.
5674
5675 2001-09-11  Jakub Steiner <jimmac@ximian.com>
5676
5677         * gtk/stock-icons/dialog-error.png: less drastic
5678         * gtk/stock-icons/dialog-warning.png: no body parts. (I hope
5679           "STOP" is international enough.
5680         * gtk/stock-icons/stock_dnd*.png: get rid of the cursor
5681         * gtk/stock-icons/stock_menu_properties.png: 16x16 version
5682
5683 Mon Sep 10 21:26:24 2001  Joshua N Pritikin  <vishnu@pobox.com>
5684
5685         * gtk/gtktextview.c (gtk_text_view_set_buffer): Make
5686         (add|remove)_selection_clipboard symmetric. (bug #59836)
5687
5688         * gtk/gtktreeview.c (gtk_tree_view_unref_and_check_selection_tree): 
5689         Avoid SEGV for empty tree. (bug #60243)
5690
5691 Mon Sep 10 20:47:22 2001  Tim Janik  <timj@gtk.org>
5692
5693         * tests/testgtk.c (create_idle_test): slight fix for
5694         g_object_set() not usable for nesting anymore.
5695
5696         * gtk/gtkhandlebox.c (gtk_handle_box_class_init): 
5697         * gtk/gtkframe.c (gtk_frame_class_init): deprecate ::shadow
5698         properties, supply ::shadow_type properties instead as most
5699         other widgets do.
5700
5701 2001-09-10  Alex Larsson  <alexl@redhat.com>
5702
5703         * demos/gtk-demo/stock_browser.c:
5704         * gdk/gdkcolor.c:
5705         * gdk/gdkfont.c:
5706         * gdk/gdkcursor.c:
5707         * gdk/gdkevents.c:
5708         * gdk/gdkrectangle.c:
5709         * gtk/gtktypeutils.c:
5710         Update to use the new g_boxed_type_register_static API.
5711
5712 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
5713
5714         * gtk/gtktreestore.c:
5715         Fix looping in gtk_tree_store_init() waiting for zero random int.
5716
5717 Mon Sep 10 16:55:49 2001  Tim Janik  <timj@gtk.org>
5718
5719         * gtk/gtkalignment.c (gtk_alignment_init): fix xscale and yscale
5720         behaviour which havoc broke. they have to default to 1.0 for
5721         expand behaviour.
5722
5723         * gtk/gtkwindow.c (gtk_window_get_property): don't cast NULL objects.
5724
5725 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
5726
5727         * gtk/gtkstyle.c (_gtk_style_peek_property_value)
5728         Amend previous change to avoid runtime error in g_param_spec_ref()
5729
5730 Mon Sep 10 06:58:56 2001  Owen Taylor  <otaylor@redhat.com>
5731
5732         * gtk/gtkrc.c (insert_rc_property): Fix blank line
5733         in the wrong place.
5734
5735 Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
5736
5737         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
5738         do a lookup immediately after creating style->property_cache,
5739         since bsearch crashes on zero length for Solaris.
5740         (Found by Padraig O'Briain.)
5741
5742 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
5743
5744         * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
5745         Really return NULL if not set.
5746         (gtk_widget_init): Remove unused varaible.
5747         
5748 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
5749
5750         * configure.in:
5751         Remove gdk/nanox/Makefile from AC_OUTPUT(), since it is no longer
5752         in cvs.
5753
5754 2001-09-08  Havoc Pennington  <hp@pobox.com>
5755
5756         * gtk/gtkaccelgroup.c: add docs to functions that I can imagine 
5757         people might want to use
5758
5759 2001-09-08  Havoc Pennington  <hp@pobox.com>
5760
5761         * gtk/gtkalignment.c (gtk_alignment_class_init): default
5762         xscale/yscale to 0.0, not 0.5, 0.5 isn't useful
5763
5764         * tests/testtextbuffer.c: fix usage of gtk_text_iter_spew
5765
5766         * gtk/gtktextiter.c: fix docs
5767         (gtk_text_iter_spew): get rid of this
5768
5769         * gtk/gtklayout.c: docs
5770
5771         * gtk/gtkbutton.c (gtk_button_construct_child): add an alignment
5772         to center image and label together, instead of having image on
5773         left and label centered, patch/suggestion from Jacob
5774
5775         * gtk/gtkdialog.c: docs
5776
5777 Sat Sep  8 14:19:49 2001  Jonathan Blandford  <jrb@redhat.com>
5778
5779         * gtk/gtkliststore.c: Write documentation
5780         * gtk/gtktreestore.c: Write documentation
5781
5782 Sat Sep  8 13:53:09 2001  Owen Taylor  <otaylor@redhat.com>
5783
5784         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch]: Replace uses of GBSearchArray
5785         with GArray and bsearch(), to remove dependency on a still
5786         evolving interface that we want to keep private to glib/gobject. 
5787
5788 2001-09-08  Havoc Pennington  <hp@pobox.com>
5789
5790         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_add_attribute):
5791         docs fixes
5792
5793         * gtk/gtktable.c (gtk_table_get_col_spacing): docs fixes
5794
5795         * gtk/gtkspinbutton.c (gtk_spin_button_get_increments): docs fixes
5796
5797         * gtk/gtksocket.c (gtk_socket_steal): docs fixes
5798
5799         * gtk/gtkscrolledwindow.h: docs fixes
5800
5801         * gtk/gtkimage.c (gtk_image_new): docs fixes
5802
5803 Sat Sep  8 01:49:22 2001  Owen Taylor  <otaylor@redhat.com>
5804
5805         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): Prevent a 
5806         false alarm  constness warning with a cast.
5807
5808         * gdk/x11/gdkx.h: Undefine GDK_ROOT_PARENT before redefining it
5809         for the inside-gdk case.
5810
5811 Sat Sep  8 01:44:18 2001  Jonathan Blandford  <jrb@redhat.com>
5812
5813         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_dirty):
5814         remove g_print.
5815
5816         * gtk/gtktreeview.c (gtk_tree_view_set_model): unref model when we
5817         change models, #59899
5818
5819 2001-09-07  Havoc Pennington  <hp@pobox.com>
5820
5821         * gtk/gtkmain.c: move some docs inline
5822
5823 2001-09-07  Havoc Pennington  <hp@pobox.com>
5824
5825         * gtk/gtk.h: tsk tsk, jrb broke the build
5826
5827 Fri Sep  7 20:45:29 2001  Jonathan Blandford  <jrb@redhat.com>
5828
5829         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_{start,end}):
5830         Removed 'fill' attribute.  It was silly b/c that was a property of
5831         the cell renderer, anyway.
5832         (gtk_tree_view_column_render): Actually render the packed
5833         renderers.
5834         * doc/tree-column-sizing.txt: initial devel documentation.
5835         * gtk/gtktreeview.c (gtk_tree_view_expand_all): Fix bug.
5836         * gtk/gtkcellrenderertextpixbuf.[ch]: removed.
5837
5838         * tests/testtreefocus.c: fix up to reflect above changes.
5839         * tests/testtreeview.c: ditto
5840         * demos/gtk-demo/stock_browser.c: ditto
5841
5842 2001-09-07  Alex Larsson  <alexl@redhat.com>
5843
5844         * gdk/linux-fb/gdkcolor-fb.c:
5845         Removed unused function.
5846         
5847         * gdk/linux-fb/gdkdrawable-fb2.c
5848         * gdk/linux-fb/gdkfont-fb.c:
5849         Use PangoLanguage functions.
5850
5851         * gdk/linux-fb/gdkinput.c:
5852         * gdk/linux-fb/gdkselection-fb.c:
5853         Fix const warnings.
5854         
5855         * gdk/linux-fb/gdkwindow-fb.c:
5856         Fix warning. Implement gdk_window_set_icon_list() and
5857         gdk_window_get_frame_extents(). (No icon support yet though.)
5858
5859         * gtk/gtkwindow.c (gtk_window_get_position):
5860         If window->frame is set get the extents of it instead.
5861         
5862 Fri Sep  7 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
5863
5864         * gtk/gtkwidget.c (gtk_widget_get_default_colormap): 
5865         Make the default default colormap the GdkRGB colormap,
5866         not the system colormap.
5867
5868         * gtk/gtkinvisible.c (gtk_invisible_init) 
5869           gtk/gtkwindow.c (gtk_window_init): Set the current
5870         colormap, as returned by _gtk_widget_peek_colormap()
5871         on the widget.
5872
5873         * gtk/gtkwidget.[ch]: Export _gtk_widget_peek_colormap
5874         to GTK+. Make it return %NULL instead of the default
5875         colormap if no colormap has explicitely been pushed.
5876
5877         * gtk/gtkwidget.c (gtk_widget_get_colormap): Check for
5878         colormaps on ancestral widgets before defaulting the
5879         the system default colormap.
5880
5881         * docs/Changes-2.0.txt: explain colormap changes.
5882
5883 2001-09-07  Havoc Pennington  <hp@redhat.com>
5884
5885         * gtk/gtktextiter.c: add some lame code to handle G_MININT, fixes 
5886         #57424
5887
5888 Fri Sep  7 18:17:47 2001  Owen Taylor  <otaylor@redhat.com>
5889
5890         * gdk/gdk.h gdk/x11/gdkmain-x11.c: Deprecate gdk_set/get_use_xshm, 
5891         make gdk_set_use_xshm a noop. Remove --no-xshm command line
5892         option. If we aren't autodetecting properly, we need
5893         to fix the problem, or at least make it an environment
5894         variable setting, to avoid problems with propagating
5895         to embedded children, plugins, etc.
5896
5897         * gdk/gdkcolor.h: Deprecate gdk_colormap_get_system_size().
5898
5899         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf.h
5900         (gdk_pixbuf_render_pixmap_and_mask_for_colormap):
5901         New function to render a pixmap and mask for a particular colormap.
5902
5903         * gtk/gtkwindow.c (get_pixmap_and_mask): Change to use
5904         gdk_pixbuf_render_pixmap_and_mask_for_colormap () instead
5905         of internal implementation of the same.
5906
5907 2001-09-07  Havoc Pennington  <hp@redhat.com>
5908
5909         * gtk/gtktextlayout.c (gtk_text_layout_get_lines): remove some
5910         debug code that seems to have caused a breakpoint in valid cases
5911         
5912         * gtk/gtktextbtree.c (_gtk_text_btree_add_view): set the prev
5913         pointer on the first view when adding the second view, fixes
5914         crash when closing gtk-demo text test with active selection
5915
5916         * gtk/gtktextbuffer.c
5917         (gtk_text_buffer_remove_selection_clipboard): don't leave dead
5918         clipboards in the list of clipboards - probably fixes #59836
5919
5920 Fri Sep  7 11:51:44 2001  Owen Taylor  <otaylor@redhat.com>
5921
5922       Make gdkx.h the only installed header from gdk/x11.
5923       All structures in gdk/x11 are opaque.
5924
5925         * gdk/x11/Makefile.am gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h:
5926         Don't install gdk{drawable,pixmap,window}-x11.h.
5927
5928         * gdk/x11/{gdkcolormap-x11.c, gdkfont-x11.c, gdkx.h, gdkvisual-x11.c: 
5929         Move GdkColormapPrivateX11, GdkFontPrivateX GdkImagePrivateX11, 
5930         GdkVisualClass into C files.
5931
5932         * gdk/gdkpixmap-x11.[ch]: Make gdk_pixmap_impl_get_type() static.
5933
5934         * gdk/x11/{gdkcolor-x11.c, gdkcursor-x11.c, gdkdrawable-x11.c,
5935         gdkfont-x11.c, gdkgc-x11.c, gdkx.h, gdkimage-x11,gdkvisual-x11.c}
5936         Add public functions to replace previously exported direct
5937         structure access.
5938         gdk_x11_colormap_get_{xdisplay,xcolormap} 
5939         gdk_x11_cursor_get_{xdisplay,xcursor},
5940         gdk_x11_drawable_get_{xdisplay,xcursor,gdk_x11_visual_get_xvisual, 
5941         gdk_x11_font_get_{xdisplay,xfont}, gdk_x11_image_get_{xdisplay,ximage},
5942         gdk_x11_gc_get_{xdisplay,ximage}
5943         
5944         * gdk/gdkprivate.h gdk/gdkinternals.h: Move GdkColorInfo,
5945         GdkEventFilter, GdkClientFilter, GdkFontPrivate to gdkinternals.
5946
5947       Fix a number of variables and functions that were exported
5948       "accidentally" from GDK.
5949
5950         * gdk/**.[ch]: gdk => _gdk for gdk_visual_init,
5951         gdk_events_init, gdk_input_init, gdk_dnd_init, gdk_image_exit, 
5952         gdk_input_exit, gdk_windowing_exit, gdk_event_func, gdk_event_data,
5953         gdk_event_notify, gdk_queued_events, gdk_queued_tail,
5954         gdk_event_new, gdk_events_queue, gdk_events_unqueue,
5955         gdk_event_queue_find_first, gdk_event_queue_remove_link,
5956         gdk_event_queue_append, gdk_event_button_generate,
5957         gdk_debug_flags, gdk_default_filters, gdk_parent_root.
5958
5959         * gdk/x11/{gdkevents-x11.c, gdkglobals-x11.c, gdkimage-x11.c, 
5960            gdkmain-x11.c, gdkprivate-x11.h, gdk/x11/gdkwindow-x11.c}:
5961         gdk => _gdk for gdk_event_mask_table, gkd_nevent_masks, 
5962         gdk_wm_window_protocols, gdk_leader_window, gdk_xgrab_window,
5963         gdk_use_xshm, gdk_input_ignore_core.
5964
5965         * gdk/x11/xsettings-common.h (xsettings_list_insert): Add
5966         #defines to namespace functions into the private _gdk_ 
5967         namespace.
5968
5969         * gdk/gdkwindow.[ch] gdk/x11/gdkx.h: Add gdk_get_default_root_window ()
5970         to replace gdk_parent_root exported variable. Adjust and
5971         deprecate GDK_ROOT_PARENT().
5972
5973         * demos/{testpixbuf-drawable.c,testpixbuf-save.c}: Fix
5974         GDK_ROOT_PARENT usage, remove includes of port-specific
5975         headers.
5976
5977         * gdk/{win32,x11,fb}/gdkinput*.[ch]: s/gdk/_gdk/ for 
5978         _gdk_input_gxid_host, _gdk_input_gxid_port, _gdk_input_ignore_core, 
5979         gdk_input_devices, _gdk_input_windows, gdk_init_input_core.
5980
5981         * gdk/x11/{gdkevents-x11.,c gdkglobals-x11.c, gdkmain-x11.c}
5982         docs/Changes-2.0.txt: Remove gdk_wm_protocols, 
5983         gdk_wm_delete_window functions, gdk_wm_take_focus, 
5984         use gdk_atom_intern() instead.
5985
5986         * gdk/linux-fb/{gdkselection-fb.c, gdkmain-fb.c, gdkprivatefb.h}
5987           gdk/win32/{gdkselection-win32.c, gdkmgdkwin32.h, gdkprivate-win32.h} 
5988           gdk/x11/{gdkselection-x11.c gdkx.h, gtkprivate-x11.h}
5989           gtk/gtkselection.c 
5990         Unexport gdk_selection_property, just use 
5991         gdk_atom_intern ("GDK_SELECTION").
5992
5993         * gdk/x11/{gdkprivate-x11.h,gdkdrawable-x11h,gdkgc-x11.c,gdkx.h}: 
5994         Unexport gdk_drawable_impl_x11_get_type, gdk_gc_x11_get_type, 
5995         GDK_GC_X11 cast macros, GdkGCX11 structures, GdkCursorPrivate, 
5996         GdkVisualprivate, gdk_x11_gc_flush.
5997
5998       Make a number of public exports of variables into functions
5999       to increase encapsulation.
6000
6001         * gdk/gdkinternals.h gdk/gdkinput.h gdk/gdkevents.h 
6002         gdk/linux-fb/gdkmouse-fb.c: gdk_core_pointer => _gdk_core_pointer, 
6003         move to gdkinternals.h. Add gdk_device_get_core_pointer ().     
6004
6005         * gdk/gdkprivate.h gdk/gdkpango.c gdk/gdkinternals.h
6006         docs/Changes-2.0.txt: Unexport gdk_parent_root, gdk_error_code, 
6007         gdk_error_warnings.
6008
6009         * gdk/x11/{gdkcolormap-x11.c, gdkmain-x11.c, gdkx.h}
6010           docs/Changes-2.0.txt: 
6011         s/gdk_screen/_gdk_screen/, add gdk_x11_get_default_screen()
6012         s/gdk_root_window/_gdk_root_window/, add gdk_x11_get_default_root_xwindow()
6013         Add gdk_x11_get_default_xdisplay().
6014
6015         * gdk/gdk.h gdk/gdk.c linux-fb/gdkfb.h linux-fb/gdkglobals-fb.c 
6016         win32/gdkwin32.h x11/gdkglobals-x11.c gdk/x11/gdkmain-x11.c 
6017         gdk/x11/gdkx.h: gdk/gdk.def: Add gdk_get/set_program_class, 
6018         Don't export gdk_progclass, move --class command line
6019         option and handling to common portion of GDK.
6020
6021       Miscellaneous fixes:
6022
6023         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Fix
6024         g_return_val_if_fail that should have been g_return_if_fail.
6025
6026         * gdk/gdkinternals.h gdk/gdkprivate.h: Move
6027         gdk_synthesize_window_state() to the semi-public gdkprivate.h.
6028
6029         * gtk/gtkdnd.c (_gtk_drag_source_handle_event): Remove uneeded
6030         X11 dependency.
6031
6032         * gdk/linux-fb/gdkmain-fb.c gdk/win32/gdkmain-win32.c gdk/TODO: 
6033         Remove unused gdk_key_repeat_disable/restore.
6034
6035         * linux-fb/gdkglobals-fb.c win32/gdkglobals-win32.c 
6036         x11/gdkglobals-x11.c x11/gdkprivate-x11.h gdk/gdk.def:
6037         Remove unused gdk_null_window_warnings variable.
6038
6039         * gdk/Makefile.am (DIST_SUBDIRS) nanox/*: cvs remove nanox;
6040         it can be retrieved from the repository; it is too far
6041         from functional to be worth having people check out;
6042         it would be easier to start from scratch, I suspect.
6043
6044         * gdk/x11/gdkpixmap-x11.c: Fix lvalue usage of GDK_PIXMAP_XID().
6045
6046         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
6047         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
6048         Fix some accidentally global variables and unused global variables.
6049
6050         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
6051         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
6052         Fix some accidentally global variables and unused global variables.
6053
6054       Add some space for future expansion to multihead.
6055
6056         * gdk/gdkdrawable.h: Add four reserved function pointers
6057         for future expansion of GdkDrawableClass.
6058
6059         * gtk/gtkwindow.h gtk/gtkinvisible.h: Add reserved pointer
6060         where we can put a GdkScreen * later.
6061
6062 2001-09-07  Havoc Pennington  <hp@redhat.com>
6063
6064         * gtk/gtktextview.c (gtk_text_view_flush_scroll): update
6065         adjustments after validating destination yrange; fixes #53918
6066         (This may cause other issues, but I hope it won't)
6067         
6068 2001-09-05  Havoc Pennington  <hp@redhat.com>
6069
6070         * gtk/gtktextbtree.c (_gtk_text_btree_delete): when merging end
6071         line into start line, update the character counts in parent nodes; 
6072         caused a bug when end and start line had different parent nodes.
6073
6074 2001-08-30  Havoc Pennington  <hp@redhat.com>
6075         
6076         * gtk/gtktexttag.c (_gtk_text_attributes_fill_from_tags): add
6077         assertion that tag is in a table
6078
6079 Fri Sep  7 12:48:56 2001  Matthias Clasen  <matthiasc@poet.de>
6080
6081         * gdk/x11/gdkkeys-x11.c (get_direction): Don't call
6082         g_strcasecmp on NULL strings. (#59058)
6083
6084 2001-09-06  Alex Larsson  <alexl@redhat.com>
6085
6086         * gtk/gtkbin.c:
6087         * gtk/gtkfontsel.c:
6088         * gtk/gtkspinbutton.c:
6089         * gtk/gtktipsquery.c:
6090         Use GtkType/GType instead of uint.
6091
6092 Tue Sep  4 18:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
6093
6094         * gtk/gtkliststore.c (gtk_list_store_init): fix initial val for
6095         sort column.
6096
6097         * gtk/gtktreestore.c (gtk_list_store_init): ditto
6098
6099         * gtk/gtktreesortable.c: add docs.
6100
6101 Tue Sep  4 09:37:19 2001  Owen Taylor  <otaylor@redhat.com>
6102
6103         * Version 1.3.7
6104
6105         * configure.in docs/Makefile.am docs/gtk-config.1.in: Remove 
6106         docs for gtk-config
6107
6108         * modules/input/Makefile.am (install-data-local): Don't
6109         run gtk-query-immodules if DESTDIR is set.
6110
6111         * NEWS: Various additions.
6112
6113 Tue Sep  4 03:12:25 2001  Tim Janik  <timj@gtk.org>
6114
6115         * NEWS: updates for 1.3.7 release.
6116
6117 Mon Sep  3 18:03:56 2001  Jonathan Blandford  <jrb@redhat.com>
6118
6119         * gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func):
6120         handle default sort feature
6121
6122         * gtk/gtktreesortable.c (gtk_tree_sortable_set_default_sort_func):
6123         new function to handle default sort.
6124         (gtk_tree_sortable_has_default_sort_func): check if default sort
6125         is set.
6126
6127         * gtk/gtkliststore.c (gtk_list_store_set_default_sort_func): 
6128         handle default sort feature
6129
6130 Sun Sep  2 20:32:36 2001  Jonathan Blandford  <jrb@redhat.com>
6131
6132         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): patch from
6133         vishnu@pobox.com (Joshua N Pritikin) to fix math and an assertion,
6134         #59731
6135
6136 Sun Sep  2 17:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
6137
6138         * gtk/gtktreeview.c (gtk_tree_view_deleted): Patch from
6139         vishnu@pobox.com (Joshua N Pritikin) to emit signal at the correct
6140         time, #59727
6141
6142         * gtk/gtkbutton.c (gtk_button_update_state): Get depressed
6143         correctly.
6144
6145 Sun Sep  2 21:41:21 2001  Owen Taylor  <otaylor@redhat.com>
6146
6147         * gdk/x11/gdkkeys-x11.c (update_keymaps): Set current serial
6148         so that we don't eternally update the keymap after we
6149         get a change notification.
6150
6151         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Fix
6152         incorrect cast.
6153
6154 Sun Sep  2 23:27:16 2001  Kristian Rietveld  <kristian@planet.nl>
6155
6156         * gtk/gtktreemodelsort.[ch]: much changes in an attempt to make
6157         it working. It mostly works now, although there're still a few issues
6158         to be worked out.
6159
6160         * tests/testtreesort.c (main): changes to have a better test
6161         application for the GtkTreeModelSort.
6162
6163 Sun Sep  2 23:19:07 2001  Kristian Rietveld  <kristian@planet.nl>
6164
6165         * gtk/gtktreeview.c (gtk_tree_view_search_iter): code cleaup,
6166         fix for bug #59222.
6167
6168         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): add
6169         gpointer search_data argument to function definition and
6170         prototype, to match GtkTreeViewSearchEqualFunc typedef.
6171
6172 Sat Sep  1 21:57:27 2001  Kristian Rietveld  <kristian@planet.nl>
6173
6174         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): add warnings
6175         per jrb's request.
6176
6177 Fri Aug 31 20:01:23 2001  Jonathan Blandford  <jrb@redhat.com>
6178
6179         * gtk/gtktreeview.c (gtk_tree_view_search_iter): pass in user data.
6180
6181         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy search_data.
6182
6183 Wed Aug 29 20:40:58 2001  Owen Taylor  <otaylor@redhat.com>
6184
6185         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_add/remove_selection_clipboard): 
6186         Instead of always mirroring the selection to a single PRIMARY
6187         selection, allow it to be mirrored to any number of clipboards.
6188
6189         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_paste_primary): Remove, 
6190         just use gtk_text_buffer_paste_clipboard with the appropriate clipboard.
6191
6192         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_cut/copy/paste_clipboard): Add a
6193         GtkClipboard argument, and for paste_clipboard, the
6194         @override_location argument from @paste_primary.
6195
6196         * gtk/gtktextview.c: Adapt to above change.
6197         
6198 2001-08-30  Havoc Pennington  <hp@redhat.com>
6199
6200         * gtk/gtktextview.c (invalidated_handler): put validate idle at
6201         resize - 2 just for flexibility
6202
6203 2001-08-30  Havoc Pennington  <hp@redhat.com>
6204
6205         * gtk/gtktextdisplay.c (render_layout_line): handle NULL shaped
6206         object from the empty-child-anchor case by drawing a little box.
6207         
6208         * gtk/gtktextlayout.c (add_child_attrs): Still set shape attribute
6209         if the child anchor has no anchored widgets - fixes #59328.
6210
6211         Also, remove bizarre deletion of preedit string that seems to have
6212         gotten in here somehow.
6213
6214 2001-08-30  Havoc Pennington  <hp@redhat.com>
6215
6216         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): apply fix
6217         to #58420 from Hidetoshi Tajima and Matthias Clasen
6218
6219 Wed Aug 29 17:28:04 2001  Jonathan Blandford  <jrb@redhat.com>
6220
6221         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
6222         change color when the GtkTreeView loses focus.
6223
6224         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
6225         ditto.
6226         
6227         * gtk/gtkstyle.c (gtk_default_draw_flat_box): ditto
6228
6229 2001-08-28  Havoc Pennington  <hp@pobox.com>
6230
6231         * gtk/gtkwindow.c (gtk_window_set_icon_list): fix g_object_notify
6232
6233 2001-08-28  Havoc Pennington  <hp@pobox.com>
6234
6235         * demos/gtk-demo/main.c (setup_default_icon): add default icon
6236
6237         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic):
6238         warning fix
6239         (gtk_radio_button_new_with_label): warning fix
6240
6241         * gtk/gtkdnd.c: used some random GtkImage private structs, 
6242         update to reflect GtkImage changes
6243
6244         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): don't check
6245         whether the hint is supported, just always set the icon. A task
6246         list might want to use it even if the WM doesn't, and the WM may
6247         change over time. Also, XDeleteProperty() if list == NULL.
6248
6249         * gtk/gtkwindow.c (gtk_window_set_icon_list)
6250         (gtk_window_get_icon_list)
6251         (gtk_window_set_icon)
6252         (gtk_window_get_icon)
6253         (gtk_window_set_default_icon_list)
6254         (gtk_window_get_default_icon_list):
6255         new functions
6256
6257         * gtk/gtk-boxed.defs (GtkIconSet): add GtkIconSet
6258
6259         * gtk/gtkimage.c: Implement property support, bug #59408
6260
6261         * gtk/gtkcontainer.c (gtk_container_add): make the warning message
6262         on reparent-without-removing-first a bit more helpful.
6263         Let's just destroy this FAQ.
6264
6265 Tue Aug 28 21:37:11 2001  Matthias Clasen  <matthiasc@poet.de>
6266
6267         * demos/gtk-demo/appwindow.c (do_appwindow): Use g_signal_connect_object
6268         instead of gtk_signal_connect, to avoid warnings at destruction time. (#58161)
6269
6270 Tue Aug 28 21:00:44 2001  Matthias Clasen  <matthiasc@poet.de>
6271
6272         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Move the setting
6273         of use_text_format to the end of the function. (#56447)
6274
6275 Tue Aug 28 20:06:07 2001  Matthias Clasen  <matthiasc@poet.de>
6276
6277         * demos/testpixbuf.c (update_timeout): Use gdk_pixbuf_loader_get_pixbuf
6278         only in response to an area_prepared signal.
6279
6280 2001-08-28  Alex Larsson  <alexl@redhat.com>
6281
6282         * gtk/gtkwidget.c (gtk_widget_class_init):
6283         Make unrealize GTK_RUN_LAST.
6284
6285 Mon Aug 27 22:00:41 2001 Manish Singh <yosh@gimp.org>
6286
6287         * gtk/gtkradiobutton.c: fix silly cut'n'paste error,
6288         with_label and with_mnemonic should create radio buttons, not
6289         check buttons
6290
6291 Mon Aug 27 15:28:56 2001  Jonathan Blandford  <jrb@redhat.com>
6292
6293         * tests/testtreefocus.c (main): Fix to use GtkSelectionMode.
6294         * tests/treestoretest.c (make_window): ditto
6295         * demos/gtk-demo/main.c (create_tree): ditto
6296         * demos/gtk-demo/stock_browser.c (do_stock_browser): ditto.
6297
6298 Mon Aug 27 15:18:14 2001  Jonathan Blandford  <jrb@redhat.com>
6299
6300         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Use the
6301         GTK selection types rather than GtkTreeSelectionMode.
6302
6303         * docs/Changes-2.0: Add comment about selection change.
6304
6305 Mon Aug 27 14:21:30 2001  Jonathan Blandford  <jrb@redhat.com>
6306
6307         * gtk/gtkenums.h (GtkSelectionMode): deprecate
6308         GTK_SELECTION_EXTENDED.
6309
6310         * gtk/gtkclist.c: Remove old GTK_SELECTION_MULTIPLE behavior.
6311         Make GTK_SELECTION_EXTENDED be GTK_SELECTION_MULTIPLE.
6312
6313         * gtk/gtkctree.c: ditto
6314
6315         * gtk/gtklist.c: ditto
6316
6317         * gtk/gtktree.c: ditto
6318
6319 Mon Aug 27 14:18:12 2001  Owen Taylor  <otaylor@redhat.com>
6320
6321         * gtk/gtkmenubar.h (gtk_menu_bar_prepend): Fix a cuple
6322         of typos in compat macros. (#59624, Skip Montaro)
6323
6324 Sun Aug 26 20:00:00 2001  Owen Taylor  <otaylor@redhat.com>
6325
6326         * configure.in acinclude.m4: Use autoconf 2.13/2.50 compat
6327         macro.
6328
6329          (patch from ERDI Gergo  <cactus@cactus.rulez.org>, #58920)
6330  
6331         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Change
6332         interface to be a standard setter from gtk_menu_item_right_justify.
6333         (gtk_menu_item_get_right_justified): a getter to go with the setter
6334
6335         * gtk/gtkmenuitem.h: Add a deprecated compat macro for
6336         gtk_menu_item_right_justify.
6337
6338         * demos/gtk-demo/menus.c tests/testgtk.c: Switch to 
6339         gtk_menu_item_set_right_justified.
6340  
6341 2001-08-27  Jens Finke <jens@gnome.org>
6342
6343         * gtk+.spec.in: Updated to match gpp requirements, reworked the
6344         files section to make it work with 1.3.x releases.
6345
6346 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
6347
6348         * gtk/gtkbutton.[ch]:
6349         Add properties for labels, mnemonics and stock items.
6350         Added C accessor functions for the properties.
6351         Removed deprecated button->child.
6352
6353         * gtk/gtkradiobutton.c:
6354         * gtk/gtktogglebutton.c:
6355         Update to use the functions in GtkButton.
6356
6357         * gtk/gtkcheckbutton.c:
6358         Update to use the functions in GtkButton.
6359         Changed size allocation of child. Now only gets as much
6360         space as it requests.
6361
6362         * gtk/gtkclist.c:
6363         Don't use GtkButton->child
6364
6365         * gtk/gtklabel.c:
6366         Fixed typo in docs
6367         
6368 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
6369
6370         * tests/testgtk.c:
6371         * tests/Makefile.am:
6372         Ressurect the properties test.
6373         I don't care if it is inferior, I just want to test my property code.
6374
6375 2001-08-25  Chema Celorio  <chema@celorio.com>
6376
6377         * gtk/gtktable.c (gtk_table_set_child_property): pass ->nrows to
6378         gtk_table_resize as the first argument for CHILD_PROP_RIGHT_ATTACH
6379         and CHILD_PROP_LEFT_ATTACH v.s. using ->ncols
6380
6381 2001-08-24  Havoc Pennington  <hp@pobox.com>
6382
6383         * gtk/gtkcompat.h: remove gtk_menu_* compat defines; 
6384         these are already in gtkmenu.h, and the copies
6385         here were broken.
6386
6387         Also, change GTK_DISABLE_COMPAT_H to GTK_DISABLE_DEPRECATED
6388
6389         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_image):
6390         special-case bitmaps to allow no colormap
6391         (bitmap1): implement no-colormap bitmap-getting
6392         (bitmap1a): implement no-colormap bitmap-getting to pixbuf with
6393         alpha
6394         (rgb8): indentation
6395         (rgb1a, rgb1): change the way we read the data out of the image, 
6396         old way didn't seem to work quite right.
6397
6398         I'm pretty sure a lot of the rgbconvert code is still broken.
6399         
6400         * gtk/gtkwindow.c (gtk_window_move_resize): move hints comparison
6401         above position constraint (I really intended to do this before,
6402         don't know what's up with that)
6403         (gtk_XParseGeometry): shut up gcc
6404
6405         * gdk/gdkpixbuf-drawable.c (rgb1a): fix bug where "x1" was used
6406         and "0" should have been. remove the attempted 4-bytes-at-once
6407         optimization, it was totally broken.
6408
6409 Sat Aug 25 19:02:39 2001  Owen Taylor  <otaylor@redhat.com>
6410
6411         * gtk/gtkbutton.[ch] gtk/gtktogglebutton.c: Add optional movement
6412         on push to buttons (based on patch from Soeren Sandmann, #54720)
6413
6414           - Add child_displacement_x/y style properties to control how far the
6415             child moves when the button is depressed.
6416
6417           - Add non-exported function _gtk_button_set_depressed to clean
6418             up the handling of the in/out shadow and separate it frmo
6419             widget->state.
6420
6421           - Lots of code cleanup and simplification of state handling
6422             for GtkButton/GtkToggleButton.
6423  
6424         * tests/testgtkrc: Set the x/y displacement to 1 to provide a test
6425         of button movement. testgtk + testgtkrc == test ugly GTK+, as always.   
6426
6427 Fri Aug 24 23:09:05 2001  Owen Taylor  <otaylor@redhat.com>
6428
6429         * gtk/gtkimage.[ch] docs/Changes-2.0.txt: Break compatibility 
6430         and make gtk_image_new() take no arguments. The compiler will
6431         catch it, and it is vastly more useful than having
6432         gtk_image_new() be a deprecated alias for gtk_image_new_from_image().  
6433
6434         * gtk/gtkmenu.c (gtk_menu_set_property): Apply patch
6435         to add tearoff-title property (#51319, Lee Mallabone)
6436
6437 Fri Aug 24 22:12:32 2001  Owen Taylor  <otaylor@redhat.com>
6438
6439         * gtk/gtkmenuitem.[ch]: Remove unused and useless function
6440         gtk_menu_item_configure(). (#58925)
6441
6442 Fri Aug 24 16:03:45 2001  Jonathan Blandford  <jrb@redhat.com>
6443
6444         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
6445         "use_align" to give people the option to just make a cell visible.
6446
6447         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
6448         we were scrolling past the end of the tree.
6449
6450         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
6451         rename gtk_tree_view_column_pack_start_cell_renderer to
6452         gtk_tree_view_column_pack_start.  Same for pack_end, and clear.
6453
6454 Fri Aug 24 12:02:08 2001  Owen Taylor  <otaylor@redhat.com>
6455
6456         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Remove
6457         a stray g_object_ref() left over from gtk_object_ref/sink.
6458         (Pointed out by Josh Pritikin.)
6459
6460 Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>
6461
6462         * gtk/gtkcontainer.[ch]: Rename gtk_container_children()
6463         to gtk_container_get_children. Added deprecated compatibility
6464         macro. (Suggested by Vitaly Tishkov, #59051)
6465
6466         * gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
6467         calls.
6468
6469 Thu Aug 23 19:10:01 2001  Owen Taylor  <otaylor@redhat.com>
6470
6471         * gtk/gtkmenubar.h (gtk_menu_bar_insert): Deprecate 
6472         gtk_menu_bar_append/prepend/insert, forgot to do this
6473         when we deprecated gtk_menu_append/prepend/insert.
6474
6475         * gtk/gtkmenu.h (gtk_menu_insert): Add casts to deprecated
6476         compat macros.
6477
6478         * gtk/gtkmenu.c: Fix problem with static gtk_menu_insert() being
6479         renamed by compat macro.
6480
6481         * gtk/gtkfontsel.h: Deprecated gtk_font_selection_get_font(),
6482         gtk_font_selection_dialog_get_font(). (Suggested by
6483         Vitaly Tishkov, #59383)
6484
6485 Thu Aug 23 18:23:31 2001  Owen Taylor  <otaylor@redhat.com>
6486
6487         * gtk/gtktexttag.c (gtk_text_tag_table_get_size): 
6488         Rename from gtk_text_tag_table_size(). (#59366)
6489
6490 Thu Aug 23 20:01:41 2001  Kristian Rietveld  <kristian@planet.nl>
6491
6492         * gtk/gtktreemodelsort.[ch], gtk/gtktreesortable.[ch],
6493         gtk/gtktreestore.[ch], gtk/gtktreeviewcolumn.[ch],
6494         gtk/gtkliststore.[ch]: use GtkSortType instead of GtkTreeSortOrder.
6495         (#59173).
6496
6497 Thu Aug 23 16:26:47 2001  Tim Janik  <timj@gtk.org>
6498
6499         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): 
6500         * gtk/gtktextmark.c (gtk_text_mark_finalize): chain parent class
6501         handlers, pointed out by Joshua N Pritikin <vishnu@pobox.com>.
6502
6503 Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>
6504
6505         [ Patch from Sebastian Wilhelmi, 52790 ]
6506
6507         * gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
6508
6509         * gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h: 
6510         Move compatibility macros from g[dt]kcompat.h to within 
6511         #ifndef G[DT]K_DISABLE_DEPRECATED in each file.
6512
6513         * gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
6514
6515         * demos/Makefile.am demos/gtk-demo/Makefile.am 
6516           docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
6517           tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
6518
6519         * demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
6520                  testpixbuf.c}: Fix usages of deprecated functions.
6521
6522 Wed Aug 22 19:03:27 2001  Jonathan Blandford  <jrb@redhat.com>
6523
6524         * gtk/gtktreeview.c (gtk_tree_view_set_model): clean up selection
6525         when changing models.
6526
6527 Wed Aug 22 18:25:46 2001  Jonathan Blandford  <jrb@redhat.com>
6528
6529         * gtk/gtktreeview.c: Fix selection.  I think it's all dandy now.
6530         We check the current event for modifiers rather than try to trap
6531         all presses.
6532
6533 2001-08-22  Anders Carlsson  <andersca@gnu.org>
6534
6535         * gtk/gtkliststore.h (GTK_LIST_STORE_CLASS): Fix a small typo.
6536         It's LIST_STORE, not LISTSTORE.
6537
6538 Tue Aug 21 12:43:29 2001  Owen Taylor  <otaylor@redhat.com>
6539
6540         * gtk/gtk.h: Remove commented out gtkpacker reference.
6541
6542 2001-08-21  Matthias Clasen  <matthiasc@waldgeist.poet.de>
6543
6544         * configure.in (all_loaders): Add tga loader, 
6545         patch by Nicola Girardi. (#56067)
6546
6547 Tue Aug 21 02:57:13 2001  Jonathan Blandford  <jrb@redhat.com>
6548
6549         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix up selection
6550         a little.  More needs to be done tomorrow.
6551
6552 Tue Aug 21 00:45:55 2001  Jonathan Blandford  <jrb@redhat.com>
6553
6554         * gtk/gtktreeview.c (gtk_tree_view_destroy): Grr... Get it right.
6555
6556 Mon Aug 20 23:48:18 2001  Jonathan Blandford  <jrb@redhat.com>
6557
6558         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Fix bug
6559         reported by Kristian Rietveld <kristian@planet.nl> to handle row
6560         == NULL.
6561         (gtk_tree_view_destroy): Fix bug reported by Kristian Rietveld
6562         <kristian@planet.nl> to change destroy order.
6563
6564 Mon Aug 20 11:39:44 2001  Jonathan Blandford  <jrb@redhat.com>
6565
6566         * gtk/gtktreeselection.c (gtk_tree_selection_class_init): Use
6567         correct marshaller.
6568
6569 Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>
6570
6571         * gtk/gtkliststore.c: Fix up warnings, #58928.
6572
6573         * gtk/gtktreeselection.h: Change signal prototype, #58647
6574
6575         * gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
6576         #59221.
6577
6578         * gtk/gtkstyle.c: Actually prelight arrow, #50981
6579         
6580 2001-08-18  Hans Breuer  <hans@breuer.org>
6581
6582         * gdk/gdk.def : updated externals
6583
6584         * gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
6585         is required to get (at least) visible in entry fields. Some selections
6586         are really handled now - even on win32 - but copying via middle
6587         mouse button into a different app needs to wait ... 
6588
6589         * gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
6590         mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!
6591
6592         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
6593         handling. I'm not sure if it is better now, but at least not worse
6594
6595         * gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
6596         with SetWindowPos () which allows more fine-tuning backing-store wise
6597
6598         * gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
6599         Also changed move/resize to be more like the X version.
6600
6601         * gtk/gtk.def : updated externals
6602
6603 2001-08-19  Sven Neumann  <sven@gimp.org>
6604
6605         * gtk/gtktooltips.c
6606         * tests/testtreesort.c
6607         * tests/treestoretest.c: inserted some casts to get rid of compiler
6608         warnings.
6609
6610 Sun Aug 19 01:44:44 2001  Jonathan Blandford  <jrb@redhat.com>
6611
6612         * gtk/gtktreeviewcolumn.c
6613         (gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.
6614
6615         * gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
6616         (_gtk_tree_view_find_node): If *node is NULL,
6617         *tree should be NULL too.
6618
6619         * demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
6620         column/renderers.
6621         * tests/testtreecolumns.c: ditto
6622         * tests/testtreefocus.c: ditto
6623         * tests/testtreesort.c: ditto
6624         * tests/testtreeview.c: ditto
6625         * tests/treestoretest.c: ditto
6626
6627 Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>
6628
6629         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
6630         signals; is_expander/is_expanded.
6631
6632         * gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
6633         pixbufs.
6634
6635         * gtk/gtktreeview.c: set above properties.
6636
6637 Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>
6638
6639         * gtk/gtkwidget.h: Really remove set_default_style().
6640
6641         * docs/Changes-2.0.txt: added a note about
6642         gtk_widget_push/pop/set_default_style.
6643
6644 2001-08-18  Havoc Pennington  <hp@pobox.com>
6645
6646         * gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
6647         hints_changed in addition to the other cases.
6648         (gtk_window_move_resize): include last position from configure
6649         notify in debug spew
6650
6651 2001-08-18  James Henstridge  <james@daa.com.au>
6652
6653         * gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
6654         second argument to the weak ref notify, cleaning up some uglyness.
6655         (gtk_accel_group_attach): remove and add the weak notifier when
6656         changing the accel groups slist.
6657         (gtk_accel_group_detach): same here.
6658
6659 2001-08-17  Darin Adler  <darin@bentspoon.com>
6660
6661         * gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
6662         missing parameters to utf8 functions to make it compile.
6663
6664 Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>
6665
6666         * gtk/gtktreeprivate.h:
6667         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
6668         (gtk_tree_view_init), (gtk_tree_view_set_property),
6669         (gtk_tree_view_get_property), (gtk_tree_view_destroy),
6670         (gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
6671         (gtk_tree_view_focus_out), (gtk_tree_view_set_model),
6672         (gtk_tree_view_set_destroy_count_func),
6673         (gtk_tree_view_set_enable_search),
6674         (gtk_tree_view_get_enable_search),
6675         (gtk_tree_view_get_search_column),
6676         (gtk_tree_view_set_search_column),
6677         (gtk_tree_view_get_search_equal_func),
6678         (gtk_tree_view_set_search_equal_func),
6679         (gtk_tree_view_search_dialog_destroy),
6680         (gtk_tree_view_search_position_func),
6681         (gtk_tree_view_interactive_search),
6682         (gtk_tree_view_search_delete_event),
6683         (gtk_tree_view_search_button_press_event),
6684         (gtk_tree_view_search_key_press_event),
6685         (gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
6686         (gtk_tree_view_search_iter), (gtk_tree_view_search_init):
6687         * gtk/gtktreeview.h:
6688         Add heavily modified patch from Kristian Rietveld to handle
6689         interactive searching.
6690
6691 Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>
6692
6693         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
6694         string parameter.
6695
6696         * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
6697         GtkMenuShell::selection_done, now that we have it, instead of 
6698         ::deactivate so we're not tearing the menu apart and notify
6699         the user prematurely.
6700
6701 Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>
6702
6703         * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
6704         window, clear window->need_default_position to avoid infinite loops.
6705         some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
6706
6707 Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>
6708
6709         * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
6710         code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
6711         (gtk_tree_view_set_property): don't cast possible NULL objects.
6712         (gtk_tree_view_destroy): reset the model to NULL.
6713
6714         * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
6715         parent_class handler.
6716
6717 2001-08-17  Matthias Clasen  <matthiasc@waldgeist.poet.de>
6718
6719         * gtk/demos/gtk-demo/*: Remove all uses of deprecated functions.
6720
6721 2001-08-17  Anders Carlsson  <andersca@gnu.org>
6722
6723         * gtk/gtkstyle.c (create_expander_affine): Divide with floating
6724         point numbers so that the result will be floating point.
6725
6726 2001-08-16  Matthias Clasen  <matthiasc@waldgeist.poet.de>
6727
6728         * tests/testgtk.c (create_handle_box): 
6729         (create_toolbar): Replace gtk_window_set_policy calls by
6730         gtk_window_set_resizable.
6731
6732 2001-08-16  Jakub Steiner <jimmac@ximian.com>
6733
6734         * gtk/stock-icons/dialog_info.png: new style bulb
6735         * gtk/stock-icons/dialog_error.png: maybe a little drastic ;)
6736         * gtk/stock-icons/dialog_warning.png: need a hand?
6737         * gtk/stock-icons/stock_add.png, stock_remove.png: I hope 
6738           the aa border gets chopped off ok
6739         * gtk/stock-icons/stock_colorselector.png: using the new hand
6740         * gtk/stock-icons/stock_dnd_multiple.png: I'm not totally sure what 
6741           this one is for, but the old icon was butt ugly.
6742         * gtk/stock-icons/stock*_insert_image.png: not sure if it belongs here
6743         * gtk/stock-icons/stock*_insert_object.png: "
6744         * gtk/stock-icons/stock_index.png: using new hand icon
6745         * gtk/stock-icons/stock*_new.png: the document template being used 
6746           elsewhere too
6747         * gtk/stock-icons/stock*_print*.png: new print and print preview 
6748           icons (panel/menu)  
6749         * gtk/stock-icons/stock*_save*.png, stock*_revert.png: new save/revert 
6750           icons based on Tuomas' floppy image.
6751         * gtk/stock-icons/stock*_search*.png: search and s'n'r icons for panel/menu
6752         * gtk/stock-icons/stock*_stop.png: replacing the old 'x' button
6753         * gtk/stock-icons/stock*_trash.png: based on Tuomas' trash icon
6754         * gtk/stock-icons/stock*_undelete.png: "
6755         * gtk/stock-icons/stock_preferences.png: I have a version with a 
6756           document base if the sliders are no good.
6757         * gtk/stock-icons/stock_properties.png: properties 
6758         
6759
6760         * gtk/stock-icons/stock*_copy.png, stock*_cut.png, stock*_paste.png: Tuomas' 
6761           (tigert@ximian.com) clipboard icons
6762         * gtk/stock-icons/stock_{up,down,left,right}_arrow.png: tigert's new arrows
6763         * gtk/stock-icons/stock*_{undo,redo}.png: tigert's undo/redo icons.
6764         * gtk/stock-icons/stock_open.png: shaded open icon by Tuomas. we should make it a
6765           little bigger IMHO
6766
6767 2001-08-16  Sven Neumann  <sven@gimp.org>
6768
6769         * gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
6770
6771 2001-08-15  Padraig O'Briain  <padraig.obriain@sun.com>
6772
6773         * gtk/gtkcellrenderertext.c:
6774         Avoid warning when specifying NULL for "attributes" property
6775
6776 2001-08-15  Matthias Clasen  <matthiasc@waldgeist.poet.de>
6777
6778         * docs/debugging.txt: Add a warning about --enable-debug=no,
6779         some editorial changes.
6780
6781 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
6782
6783         * gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h, 
6784         gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update 
6785         debugging info, remove unused debug flags. (#58330)
6786
6787 Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>
6788
6789         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): 
6790         (gtk_tree_selection_select_all): Remove strict checking for rows.
6791
6792 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
6793         
6794         * gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips): 
6795         Don't remove the tooltip window when the tip text changes. (#15891)
6796
6797 Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>
6798
6799         * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
6800         $(srcdir).
6801
6802 Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>
6803
6804         * Makefile.am (EXTRA_DIST): Fix problem with trying to
6805         dist files from intl/, which is no longer there.
6806
6807 2001-08-11  Hans Breuer  <hans@breuer.org>
6808
6809         * gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
6810           gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c, 
6811           gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c, 
6812           gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c, 
6813           gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
6814           gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
6815
6816         * gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
6817           gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
6818         GDK_TYPE_EVENT signals
6819
6820         * gtk/gtkalignment.c : removed 'direct allocation bug',
6821         which Tim discovered while reading the patch
6822
6823 Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>
6824
6825         * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
6826         compat macros for push/pop/set_visual that were supposed
6827         to be added a long time ago, but got dropped. 
6828
6829 Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>
6830
6831         * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
6832         property notifies.
6833
6834 2001-08-07  Havoc Pennington  <hp@pobox.com>
6835
6836         * gtk/gtkfilesel.c (open_ref_dir): fix a typo.
6837
6838         * gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
6839         some fixage is needed here, but nothing simple. Owen understands
6840         it. ;-)
6841
6842         * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
6843         sizing and positioning.  Also, fix bug in compute_geometry_hints
6844         (width/height confusion for setting min size). 
6845         (gtk_window_move): new function
6846         (gtk_window_resize): new function
6847         (gtk_window_get_size): new function
6848         (gtk_window_get_position): new function
6849         (gtk_window_parse_geometry): new function
6850         
6851         * gtk/gtkwidget.c (gtk_widget_set_size_request): new function
6852         (gtk_widget_get_size_request): new function
6853         (gtk_widget_get_usize): delete, that was a short-lived function
6854         ;-)
6855         (gtk_widget_set_usize): deprecate
6856         (gtk_widget_set_uposition): deprecate, make it a trivial 
6857         gtk_window_move() wrapper
6858         (gtk_widget_class_init): remove x/y/width/height properties,
6859         add width_request height_request
6860         
6861         * demos/*: update to avoid deprecated functions
6862         
6863         * gtk/gtklayout.c: add x/y child properties
6864
6865         * gtk/gtkfixed.c: add x/y child properties, and get rid of 
6866         uses of "gint16"
6867
6868         * tests/testgtk.c (create_window_sizing): lots of tweaks to window
6869         sizing test
6870
6871         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
6872         configure events on toplevel windows are always in root window
6873         coordinates, following ICCCM spec that all synthetic events 
6874         are in root window coords already, while real events are 
6875         in parent window coords. Previously the code assumed that 
6876         coords of 0,0 were parent window coords, which was 
6877         really broken.
6878   
6879         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
6880         warning
6881  
6882         * gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS 
6883         and GDK_HINT_USER_SIZE so we can set USSize and USPosition 
6884         hints in gtk_window_parse_geometry()
6885  
6886         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
6887         new USER_POS USER_SIZE hints    
6888
6889 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
6890
6891         * tests/prop-editor.c (properties_from_type): Use 
6892         g_object_class_list_properties to get the param specs 
6893         for a given type. (#58609)
6894
6895 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
6896
6897         * gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
6898         free the text_aa parts. (#57549)
6899
6900 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
6901
6902         * gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
6903         not the foreground color. (#57621)
6904
6905 2001-08-09  Alexander Larsson <alexl@redhat.com>
6906
6907         * gdk/win32/gdkfont-win32.c:
6908         Update to the new pango win32 api.
6909
6910 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
6911
6912         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
6913         COMPOUND_TEXT instead of TEXT
6914         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
6915         interpret the return value of g_string_to_compound_text()
6916         (#55152)
6917
6918 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
6919
6920         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
6921         fail if iter is NULL. (#58347)
6922
6923 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
6924
6925         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
6926         some off-by-one issues, fixing selection of line-ends. (#50323)
6927
6928 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
6929
6930         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
6931         functions in order to make mouse operation work again in the
6932         color wheel. (#58604)
6933
6934 2001-08-07  James Henstridge  <james@daa.com.au>
6935
6936         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
6937         the accelerator when the accel object is changed.  Fixes bug
6938         #58628.
6939
6940 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
6941
6942         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
6943         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
6944         (gnome bugzilla #58202)
6945
6946 2001-08-06  Havoc Pennington  <hp@pobox.com>
6947  
6948         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
6949         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
6950         it was expecting a GdkWindow, not a GdkWindowImplX11.
6951  
6952         Also, we were getting the window rect in screen coords 
6953         and the screen rect in window coords then intersecting 
6954         them; instead, get window rect in window coords.
6955  
6956         Finally, there were codepaths that resulted in a stuck server grab
6957         (when the window was fully onscreen, or on gdk_image_new()
6958         failure); make the server ungrab thing a bit more
6959         robust/consistent.
6960
6961 2001-08-06  Sven Neumann  <sven@gimp.org>
6962
6963         * gdk/gdkpango.c (gdk_pango_context_destroy): 
6964         check if info->colormap != NULL before unref'ing it. It might have
6965         been set to NULL using gdk_pango_context_set_colormap().
6966
6967 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
6968
6969         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
6970         Fix conversion from float to int so that we don't get
6971         skew in the int => float => int roundtrip. 
6972         (#58120, reported by Vitaly Tishkov). Also fix problem
6973         where if no alpha was set, the returned alpha
6974         from (say) set_current_alpha() was returned as 1, not 65535.
6975
6976 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
6977
6978         * gtk/gtklist.c (gtk_list_clear_items): Fix
6979         problem with selecting a new focus child.
6980
6981         * gtk/gtklist.c (gtk_list_clear_items): Clear 
6982         list->undo/list_focus_child after unparenting
6983         child, since unparenting the child can result
6984         in list->last_focus_child being set. (#58024)
6985
6986         * Makefile.am (SUBDIRS): Add target specific pc
6987         files to DISTCLEANFILES.
6988
6989         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
6990         (58327, Matthias Clasen)
6991
6992 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
6993
6994         * tests/testgtk.c: Patch from Hans (with various modifications),
6995         to add the ability to use testgtk as a rough-and-ready
6996         benchmark. Try, 'testgtk --bench all:5' (if you want decent
6997         numbers, run without a window manager)
6998
6999 2001-08-04 Alexander Larsson <alexl@redhat.com>
7000
7001         * gdk/win32/gdkinput.c:
7002         Add #ifdef HAVE_WINTAB around wintab.h include.
7003
7004         * gtk/gtk.def:
7005         Removed marshals that have been moved to glib.
7006         Commented out plug and socket. They didn't compile for me 
7007         on win32.
7008
7009 2001-08-04  Hans Breuer  <hans@breuer.org>
7010
7011         * gtk/stocks-icons/makefile.msc : new file
7012         * gtk/makefile.msc.in : use it
7013
7014         * gtk/gtkstyle.c : not all platforms do provide M_PI and
7015         friends, but luckily there is G_PI
7016
7017         * gtk/gtk.def : updated
7018
7019         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
7020         windows WS_POPUP, but only those without a parent. This fixes the 
7021         mis-alignment between the selectable (temp, input only) window and 
7022         the window text of GtkLabel.
7023
7024         (gdk_window_show) : respect private->state when actually showing
7025         the window.
7026
7027         (gdk_window_set_transient_for) : Implementation from Wolfgang 
7028         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
7029         error handling. Should fix #50586.
7030
7031         * gdk/win32/gdkevents-win32.c : beautify log output
7032
7033 2001-08-04  Michael Natterer  <mitch@gimp.org>
7034
7035         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
7036         Need to show the image after adding it to the GtkImageMenuItem.
7037         This used to work without in testgtk because of the
7038         gtk_widget_show_all() at the end of the function.
7039         (Closes #54978).
7040
7041 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
7042
7043         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
7044         (gtk_notebook_set_child_property): fix finding of child's page,
7045         since we have to validly deal with labels and menus here as well.
7046         (gtk_notebook_get_child_property): fix warning.
7047         (gtk_notebook_class_init): property tab_pack is of type
7048         GTK_TYPE_PACK_TYPE (enum) not boolean.
7049         (gtk_notebook_find_child): don't always warn, we might be looking
7050         for a label or menu child.
7051         (gtk_notebook_map): fix mapping of panel.
7052
7053         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
7054         widget's mapped state, regardless of the value being set equals
7055         old settings, since things like REALIZED(parent) or MAPPED(parent)
7056         may have changed since the old value was set. make it an error to
7057         invoke this function on a toplevel widget.
7058
7059 2001-07-31  Darin Adler  <darin@bentspoon.com>
7060
7061         * gdk/gdkprivate.h:
7062         * gdk/x11/gdkx.h:
7063         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
7064
7065         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
7066         GTK_OBJECT.
7067
7068 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
7069
7070         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
7071         scoping error pointed out by matthiasc@poet.de.
7072
7073 2001-07-31  Sven Neumann  <sven@gimp.org>
7074
7075         * demos/gtk-demo/appwindow.c
7076         * demos/gtk-demo/item_factory.c
7077         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
7078
7079 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
7080
7081         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
7082         argument order for g_signal_has_handler_pending.
7083
7084 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
7085
7086         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
7087         instead of long deprecated g_scanner_stat_mode().
7088
7089 2001-07-29  Hans Breuer  <hans@breuer.org>
7090
7091         * gdk/makefile.msc : build in the backend dir after
7092         auto-generating files
7093
7094         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
7095         with code from win32-production-branch.
7096
7097         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
7098         before calling DestroyWindow, which indirectly calls 
7099         gdk_window_destroy_notify ()
7100
7101         (performance patch merged from win32-production-branch)
7102         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
7103         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
7104         R2_COPYPEN rop). It is claimed to be much faster.
7105
7106 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
7107
7108         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
7109         add an "attributes" property to the text renderer for ATK.
7110
7111 2001-07-26  Alex Larsson  <alexl@redhat.com>
7112
7113         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
7114         Initialize image->bits_per_pixel from the drawable, not from
7115         the root window.
7116
7117         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
7118         Fix cast. argument is an IMPL already.
7119
7120 2001-07-15  James Henstridge  <james@daa.com.au>
7121
7122         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
7123         (gtk_window_remove_accel_group): same here.
7124         (gtk_window_key_press_event): same here.
7125
7126         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
7127         (gtk_widget_remove_accelerator): same here.
7128         (gtk_widget_remove_accelerators): same here.
7129
7130         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
7131
7132         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
7133         instead of GtkObject.
7134
7135         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
7136         now takes GObjects.
7137
7138         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
7139         pass a GObject to gtk_accel_group_entries_from_object.
7140         (gtk_item_factory_create_item): s/accel_widget/accel_object/
7141
7142         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
7143
7144         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
7145
7146         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
7147         GObjects can have accelerators set now.  Add compatibility
7148         defines.
7149
7150         * gtk/gtkmarshal.list: add missing marshallers.
7151
7152         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
7153         accelerators on plain GObjects.  gtk_accel_group_object_destroy
7154         has been converted into a weak reference, and
7155         gtk_accel_group_delete_entries is now a destroy notify for that
7156         piece of data.
7157
7158 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
7159
7160         * gdk/gdkdraw.c: Added a check on the colormap depth to
7161         gdk_drawable_set_colormap()
7162         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
7163         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
7164         for pixmaps without visuals (more specifically, bitmaps)
7165         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
7166         doesn't set a colormap with the wrong depth
7167
7168
7169 2001-07-22  Anders Carlsson  <andersca@gnome.org>
7170
7171         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
7172         expander_height and expander_width properties with a single
7173         property, expander_size.
7174         (gtk_tree_view_init): Set the tab_offset to expander_size
7175         plus some padding.
7176         (gtk_tree_view_unrealize): Remove the expand/collapse
7177         timeout if it exists.
7178         (coords_are_over_arrow): Fix a small bug.
7179         (gtk_tree_view_motion_draw_column_motion_arrow): Use
7180         expander_size.
7181         (gtk_tree_view_draw_focus): Use "treeview" instead of
7182         "add-mode" as detail when drawing the focus.
7183         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
7184         instead of "add-mode" as detail when drawing the focus.
7185         (gtk_tree_view_deleted): If we have a node currently being
7186         expanded or collapsed, remove the timeout and set the node 
7187         to NULL.
7188         (gtk_tree_view_queue_draw_arrow): New function that just
7189         redraws the arrow of a node.
7190         (gtk_tree_view_draw_arrow): Use expander_size instead of
7191         expander_width/expander_height, also pass a different
7192         expander_style to gtk_paint_expander depending on the 
7193         state of the node being drawn.
7194         (expand_collapse_timeout): New function for expanding 
7195         or collapsing a node depending on the previous state.
7196         (gtk_tree_view_real_expand_row): Add timeout and set 
7197         correct state for node being expanded.
7198         (gtk_tree_view_real_collapse_row): Add timeout and set
7199         correct state for node being collapsed.
7200
7201         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
7202         information about the node currently being expanded or
7203         collapsed, and also a timeout id.
7204
7205         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
7206         with expander_style for draw_expander.
7207
7208         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
7209         expander_style.
7210         (create_expander_affine): New function for creating an 
7211         expander affine.
7212         (apply_affine_on_point): New function for applying an 
7213         affine to a point.
7214         (gtk_default_draw_expander): Modified to take expander_style
7215         instead of is_open, and to draw the rectangle rotated differently
7216         depending on the expander style.
7217         (gtk_paint_expander): Replace is_open with expander_style.
7218
7219         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
7220
7221         * gtk/gtkenums.h: Add expander style enum.
7222
7223 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
7224
7225         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
7226         value from gtk_tree_model_get_iter, the model might be empty.
7227
7228 2001-07-20  Hans Breuer  <hans@breuer.org>
7229
7230         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
7231         gdk/gdkinput.c like the other backends
7232
7233         * gdk/win32/gdkinput-win32.h :
7234         * gdk/win32/gdkinput.c :
7235         * gdk/win32/gdkvisual-win32.c :
7236         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
7237         GdkVisual GObjectification. UNTESTED for pen-devices because
7238         I simply have none.
7239
7240         * gdk/gdk.def :
7241         * gtk/gtk.def : updated externals
7242
7243         * gtk/gtkiconfactory.c :
7244         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
7245         before passing &error to functions to avoid strange crashes
7246         
7247         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
7248
7249         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
7250
7251         * gtk/makefile.msc.in : updated
7252
7253 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
7254
7255         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
7256         Add property support. (#51858)
7257
7258 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
7259
7260         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
7261         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
7262         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
7263
7264 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
7265
7266         * gtk/gtkcolorsel.c: Add propery support (roughly
7267         based on patch from Lee Mallabone, #51014)
7268
7269         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
7270         deprecated, since we already g_warning() on it.
7271
7272 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
7273
7274         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
7275         typo that sometimes caused selection not to work properly.
7276
7277         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
7278         entry when tabbing in. (#57743)
7279         
7280         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
7281         user drags up above or down below the entry, move
7282         to the end or the beginning of the entry. (Suggestion
7283         from Jay Cox, #50940)
7284
7285         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
7286         a current selection, then when moving by chars or
7287         words, move to the end of the selection rather than
7288         from entry->current_pos. (Suggestion from Jay Cox,
7289         #50942)
7290         
7291 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
7292
7293         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
7294         set window->decorated. (Patch from Hidetoshi Tajima,
7295         #55846)
7296
7297 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
7298
7299         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
7300         the widget/child realization/mapping invariants.
7301
7302         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
7303         gtk_widget_[get/set]_child_visible() to control
7304         whether visible children of a mapped window are
7305         mapped.
7306
7307         * docs/widget_system.txt: Updated for changes in
7308         container contract, and addition of GTK_CHILD_VISIBLE.
7309
7310         * gtk/gtkcontainer.c: Add generic map()/unmap()
7311         functions that work for almost all containers.
7312
7313         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
7314         gtk_widget_set_child_visible() where necessary.
7315
7316         * gtk/*.c: Remove excess map(), unmap(), and 
7317         realization/mapping invariant enforcing code
7318         from many containers.
7319
7320 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
7321
7322         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
7323         Get the foreground color from 'text', nor 'fg'. (#57568)
7324
7325 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
7326
7327         * gtk/*.c: Patch from Matthias Clasen to remove remove
7328         all instances of g_return_if_fail (foo != NULL); that are
7329         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
7330         since the second check catches the NULL anyways.
7331
7332 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
7333
7334         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
7335         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
7336         GDK_THREADS_ENTER()/LEAVE() pairs.
7337
7338         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
7339         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
7340         pairs. (Problem found by M. Meeks)
7341
7342 2001-07-18  Darin Adler  <darin@bentspoon.com>
7343
7344         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
7345         that we don't get a g_warning message every time we register a new
7346         icon size.
7347
7348         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
7349         using pixel variable of the correct type.
7350         
7351 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
7352
7353         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
7354         so that using X functions on a GdkWindow is possible, if
7355         a little hairy.
7356
7357         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
7358         and ts_origin of a GC, so that external parties can offset/restore
7359         a GC, when using gdk_window_get_internal_paint_info().
7360
7361 2001-07-17  Darin Adler  <darin@bentspoon.com>
7362
7363         * .cvsignore: Ignore the sgml directory made by gtkdoc.
7364         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
7365         instead of the deprecated gtk_window_set_policy.
7366         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
7367         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
7368         function to get rid of warning and some code too.
7369         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
7370         missing const.
7371         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
7372         unused local.
7373         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
7374         const.
7375         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
7376         (gdk_utf8_to_compound_text): Add missing const.
7377         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
7378         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
7379         cast and get rid of an unnecessary one.
7380         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
7381         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
7382         local.
7383         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
7384         Remove unused local.
7385         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
7386         missing const.
7387         * tests/testsocket.c: (add_child): Add cast so the printf format
7388         doesn't make us implicitly depend on what integer type
7389         gtk_socket_get_id returns.
7390         * tests/testtextbuffer.c: Add missing const.
7391         * tests/testtreefocus.c: (main): Remove unused local.
7392         * tests/treestoretest.c: (iter_remove): Remove unused local.
7393         (uppercase_value): Remove unused function.
7394         (make_window): Add statement to quiet the compiler's uninitialized
7395         variable warning.
7396
7397 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
7398
7399         * gtk/gtkrange.c:
7400         (second_timeout): 
7401         (initial_timeout): 
7402         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
7403         (gtk_range_calc_layout): compute the new layout based on an
7404         adjustment->value being passed in as argument.
7405         (gtk_range_button_press): for button2 slider warps, first recalc
7406         the layout, then adjust the value. also, use update_slider_position()
7407         for adjusting the value, so we keep pixel quantisation at which we
7408         usually operate (upon motion or button releases). the reason for this
7409         is that, we can't change the adjustment upon button2 presses to a non
7410         quantised value and upon button2 release re-quantise the value since
7411         that'd alter the value even if we didn't get any motion events (causing
7412         unexpected scroll area warps upon release and/or slider pixel-jitter).
7413         (gtk_range_motion_notify): update the slider position from queried
7414         coordinates, not event coordinates.
7415
7416 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
7417
7418         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
7419         the default gc values are: width=0, CapBut, JoinMiter.
7420
7421 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
7422
7423         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
7424         into account the xpad and ypad when calculating the width and the
7425         height of the pixbuf cel.
7426
7427 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
7428
7429         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
7430         Rename to gtk_radio_menu_item_get_group(), add deprecated
7431         alias. (#57044)
7432
7433         * gtk/gtkfilesel.c: Indentation fix.
7434
7435 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
7436
7437         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
7438         Hasselmann to fix warnings in compat macros. 
7439         (#56773)
7440
7441         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
7442         stupid wrong cast added in last patch.
7443
7444 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
7445
7446         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
7447         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
7448
7449 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
7450
7451         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
7452         missing cast.
7453
7454         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
7455         NULL/FALSE return value confusion.
7456
7457         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
7458         problem when scrollbar completely fills range. (Patch
7459         from  Matthias Clasen, #57047)
7460
7461 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
7462
7463         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
7464         clean up when handling events for move-resize emulation.
7465         (Problem traced down by Matthias Clasen, #57271)
7466
7467 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
7468
7469         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
7470           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
7471           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
7472           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
7473           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
7474           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
7475           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
7476         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
7477
7478 2001-07-09  Peter Williams  <peterw@ximian.com>
7479
7480         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
7481         for when srcdir != builddir
7482
7483 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
7484
7485         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
7486         gtk_tree_model_get_iter_root.
7487
7488         * gtk/gtkliststore.c: Add a bunch of g_return statements.
7489         (gtk_list_store_iter_n_children): Fix up.
7490
7491         * gtk/gtktreestore.c: Add a bunch of g_return statements.
7492
7493 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
7494
7495         * gtk/gtkwidget.c (gtk_widget_class_init):
7496         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
7497         restore some workingness.
7498
7499         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
7500         handle of window type for input-only windows.
7501
7502 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
7503
7504         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
7505         Patch from Gregory Merchan to add 
7506         gtk_button_box_set_secondary(), which separates
7507         the child into a separate group from the normal
7508         buttons. (#56331)
7509
7510         * gtk/gtkdialog.c: Make help buttons secondary by
7511         default.
7512
7513         * gtk/gtkbbox.c: Added a child property "secondary".
7514
7515         * gtk/testgtk.c: Turn on the help button for the 
7516         color selector to check that it properly appears
7517         as secondary.
7518
7519 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
7520  
7521         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
7522         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
7523         Add gdk_set_pointer_hooks() to allow pointer-querying to
7524         be hooked by an event record/playback system like GERD.
7525         (#56914)
7526         
7527 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
7528
7529         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
7530         in the right value of initial_emission to
7531         gtk_widget_set_style_internal (#57091)
7532
7533 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
7534
7535         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
7536         Make compile.
7537
7538         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
7539         with calling gtk_widget_set_style_internal() with
7540         the old style, not the new style. (#56989)
7541
7542 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
7543
7544         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
7545           gtk/gtkwidget.c:
7546         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
7547         not GTK_WIDGET_GET_ANCESTOR ... see 
7548         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
7549         Indicate the best practice in the docs for gtk_widget_get_toplevel().
7550
7551         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
7552         so GtkPlug can give the correct signals when transforming
7553         from a child to a toplevel.
7554         
7555         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
7556         reparentation correctly.
7557
7558         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
7559         Propagate the previous_toplevel argument down properly.
7560
7561         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
7562         of wrong atr list.
7563
7564         * gtk/gtkplug.[ch]: Add an "embedded" signal.
7565
7566         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
7567         signals.
7568
7569         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
7570         functions gtk_plug_get_id(), gtk_socket_get_id(),
7571         to avoid the user having to worry about realization,
7572         and gdkx.h.
7573
7574         * tests/testsocket.c: Extend to try out the new signals
7575         and gtk_plug/socket_get_id().
7576
7577         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
7578         setting of underline attributes.
7579
7580         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
7581         DestroyNotify events from SubstructureNotifyMask
7582
7583         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
7584         Switch GDK_WINDOW_TYPE (window) as needed.
7585
7586         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
7587         allow creation of toplevel windows as children of
7588         foreign windows.
7589
7590         * gtk/gtkplug.c: Remove hacks involving changing private
7591         fields of GdkWindow.
7592
7593         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
7594         exactly the same signals and notification
7595         be emitted for local embedding as for inter-process
7596         embedding.
7597
7598 2001-07-04  James Henstridge  <james@daa.com.au>
7599
7600         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
7601
7602 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
7603
7604         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
7605         XEMBED embedding add a _XEMBED_INFO property to the
7606         client with version number and a "mapped" flags.
7607         Use the mapped flag instead of the racy MapRequestEvent
7608
7609         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
7610         code to reliably set things (when the child is a passive
7611         embedder participating in the XEMBED protocol) intead
7612         of just being a hack for embedding non-participating
7613         programs. Fix various bugs and race conditions.
7614         
7615         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
7616         work by simply making the GtkSocket the gtk parent
7617         of the GtkPlug. Set a flag in this case and make
7618         the GtkPlug work like a normal container by overriding
7619         methods such as check_resize and "chaining past" GtkWindow
7620         to GtkBin.
7621
7622         * gtk/gtkentry.c (gtk_entry_real_activate)
7623           gtk/gtkmain.c (gtk_propagate_event): 
7624         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
7625         
7626         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
7627         gtk_widget_get_ancestor):
7628         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
7629         might not give the expected result and recommend
7630         an alternative.
7631
7632         * tests/testsocket.c tests/testsocket_child.c
7633         tests/testsocket_common.c tests/Makefile.am: Extended
7634         to test different type of adding plugs to sockets
7635         (local,active,passive), and to test mapping/unmapping
7636         the plug.
7637
7638         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
7639         mark the window as destroyed until after we
7640         called _gdk_windowing_window_destroy().
7641         (_gdk_windowing_window_destroy() may use GDK functions
7642         on the window.)
7643
7644         * gdk/x11/gdkinput.c: Remove the check for finalization - 
7645         devices can be finalized under some circumnstances.
7646  
7647         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
7648         small problem with GDK_TYPE_DEVICE.
7649  
7650 2001-07-02  Havoc Pennington  <hp@pobox.com>
7651
7652         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
7653         use constants not atoms.
7654
7655 2001-07-02  James Henstridge  <james@daa.com.au>
7656
7657         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
7658         PANGO_TYPE_TAB_ARRAY.
7659
7660         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
7661         for PANGO_TYPE_TAB_ARRAY.
7662
7663         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
7664         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
7665
7666         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
7667         the file.  Remove Pango types from defs -- they are now defined in
7668         libpango.
7669
7670 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
7671
7672         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
7673
7674         * gtk/gtkobject.c (gtk_object_destroy): invoke
7675         g_object_run_dispose().
7676
7677         * gtk/gtkwindow.c: 
7678         * gtk/gtkwidget.c: 
7679         * gtk/gtkobject.c:
7680         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
7681         method.
7682
7683 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
7684
7685         * gtk/gtktypeutils.c (gtk_type_class): Remove
7686         change check for GTK_TYPE_OBJECT derivation to
7687         G_TYPE_OBJECTS - it's Tim-approved to use this 
7688         for arbitary objects.
7689
7690         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
7691         prefix gtk_container_dequeue_resize_handler().
7692
7693         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
7694         to the hierarachy_changed signal, since you otherwise
7695         have to always keep that around.
7696
7697         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
7698         for extra argument to hierarchy_changed.
7699
7700 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
7701
7702         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
7703         for style to mean "revert to default style"
7704
7705         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
7706           gtk_widget_restore_default_style): Make this functions
7707         deprecated aliases for gtk_widget_set_style (widget, NULL).
7708
7709         * gtk/gtkwidget.[ch]: Remove:
7710            gtk_widget_set_default_style ()
7711            gtk_widget_push_style ()
7712            gtk_widget_pop_style ()
7713         These functions interact are overriden by RC files, and
7714         thus virtually useless, and complicated.
7715
7716 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
7717
7718         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
7719         most of the previous global variables in gtkrc.c. This is
7720         in preparation for multi-head, since each screen can
7721         have different GtkSettings and RC information.
7722
7723         * gtk/gtkrc.[ch]: 
7724
7725         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
7726         GtkSettings parameter to GtkRcStyle::parse.
7727
7728         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
7729         Add two new settings gtk-theme-name, gtk-key-theme-name,
7730         for RC files that are loaded by name after reading
7731         the default RC files.
7732         
7733         * gtk/gtkrc.c: Allow priorities for styles, as wll as
7734         bindings.
7735
7736         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
7737         and use it by default for RC files loaded via 
7738         gtk-theme-name, gtk-key-theme-name.
7739
7740         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
7741         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
7742         tests/testgtkrc: Require pathnames to be absolute.
7743
7744         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
7745         the source when parsing, since the operation of looking up a
7746         pixmap from an RC file depends on the parsing context.
7747
7748         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
7749         reset RC styles on all widgets when files are reparsed.
7750
7751         * tests/testgtk.c (create_rc_file) 
7752           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
7753         Simplify, now that gtk_rc_reparse_all() resets styles on
7754         all widgets itself.
7755
7756         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
7757         return value.
7758
7759         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
7760         GtkSettings argument.
7761
7762         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
7763         gtk_settings_get_global().
7764
7765         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
7766         to get the appropriate GtkSettings for a widget. (For now,
7767         just gets the default GtkSetttings.) 
7768
7769         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
7770           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
7771         changes.
7772
7773         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
7774         getting a style for a path without actually having a widget.
7775         (Allows using a style for a subpart of a widget, for
7776         example.)
7777
7778         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
7779         the RC files to be reloaded for just one GtkSettings
7780         (not sure how useful this really is.)
7781
7782         * gtk/gtkrc.h: Deprecate
7783         gtk_rc_add_widget_name/widget_class/class_style
7784
7785 2001-06-30  Alex Larsson  <alexl@redhat.com>
7786
7787         * gdk/linux-fb/gdkinput-none.c:
7788         * gdk/linux-fb/gdkinput.c:
7789         * gdk/linux-fb/gdkinputprivate.h:
7790         Convert GdkDevice to a GObject.
7791
7792         * linux-fb/gdkprivate-fb.h:
7793         * linux-fb/gdkvisual-fb.c:
7794         Convert GdkVisual to a GObject.
7795
7796 2001-06-29  Alex Larsson  <alexl@redhat.com>
7797
7798         * gdk/gdkvisual.h:
7799         * gdk/gdkcolor.c:
7800         * gdk/x11/gdkx.h:
7801         * gdk/x11/gdkvisual-x11.c:
7802         Convert GdkVisual to a GObject.
7803
7804         * gdk/gdkinput.h:
7805         * gdk/gdkevents.c:
7806         * gdk/x11/gdkinputprivate.h:
7807         * gdk/x11/gdkinput-gxi.c:
7808         * gdk/x11/gdkinput-none.c:
7809         * gdk/x11/gdkinput-x11.c:
7810         * gdk/x11/gdkinput-xfree.c:
7811         * gdk/x11/gdkinput.c:
7812         Convert GdkDevice to a GObject.
7813
7814 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
7815
7816         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
7817         to just plain new, fixing the number of columns, and column types
7818         at creation time.
7819
7820         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
7821
7822         * gtk/gtkcellrenderertext.c
7823         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
7824         height to a specific font.
7825
7826         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
7827
7828         * tests/*c: change to work with new store models.
7829
7830 2001-06-29  Havoc Pennington  <hp@redhat.com>
7831
7832        * Throughout: fixes to compile with G_DISABLE_COMPAT
7833         (s/g_signal_connectc/g_signal_connect/,
7834         s/g_signal_newc/g_signal_new/,
7835         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
7836
7837 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@redhat.com>
7838
7839         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
7840         add path argument to selection callbacks.
7841
7842 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
7843
7844         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
7845         walk through a model in a depth first manner, with the option to
7846         break out.
7847
7848 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
7849
7850         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
7851         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
7852         column and follow it when draged, rather than a location in the
7853         view. "expander_column" property and drawing functions changed
7854         accordingly.  Fixes bug #55942.
7855
7856         (gtk_tree_view_{set,get}_expander_column): Now works with a
7857         GtkTreeViewColumn* instead of int.
7858
7859 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
7860
7861         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
7862
7863 2001-06-28  Havoc Pennington  <hp@pobox.com>
7864
7865         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
7866         image data to the screen, using a server grab to avoid race
7867         conditions.
7868
7869         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
7870         check for NULL return from gtk_image_new_from_stock(), it never
7871         returns NULL.
7872         (gtk_item_factory_create_item): fix bug where we parsed the stock
7873         ID as an inline pixbuf
7874
7875         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
7876
7877         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
7878         support (should be using binding set here)
7879
7880         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
7881         support (should be using binding set here)
7882
7883         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
7884         support
7885
7886         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
7887
7888         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
7889
7890         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
7891
7892         * gtk/gtkimcontextsimple.c
7893         (gtk_im_context_simple_filter_keypress): keypad
7894
7895         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
7896
7897         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
7898
7899         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
7900
7901         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
7902         should be binding-setted)
7903
7904         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
7905
7906         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
7907
7908         * gtk/gtkcalendar.c: numeric keypad fixes
7909
7910         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
7911         support
7912
7913         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
7914         screwup
7915
7916         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
7917         clip the render area to the drawable's clip region in advance,
7918         so we don't get data from the server that we don't need.
7919
7920         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7921         check return value of gdk_pixbuf_get_from_drawable(), fall back 
7922         to bilevel alpha if we can't get the pixbuf to composite against.
7923
7924         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
7925
7926         * gdk/gdkimage.c (gdk_image_get_colormap): add
7927         gdk_image_set_colormap, gdk_image_get_colormap
7928
7929         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
7930         take a region of the image, instead of converting the entire
7931         image.
7932
7933         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
7934         keybinding signal. Add default bindings for it. Add default
7935         handler for show_help that shows the tooltip for the widget.
7936
7937         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
7938         "close" keybinding signal, remove key press handler.
7939
7940         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
7941         it's not our usual practice to leave a deprecated function around
7942         with a runtime warning, plus we don't want it to appear in docs,
7943         plus if we make them yellow no one will want to change them
7944         anyhow.
7945
7946 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
7947
7948         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
7949         GTK_WIDGET_REALIZE() for resize queueing.
7950
7951         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
7952         GTK_WIDGET_REALIZE() for post event delivery destruction upon
7953         GDK_DESTROY.
7954         
7955         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
7956         sompensate for former (pre-2.0) connect_after() facility.
7957         (gtk_widget_send_expose): 
7958         (gtk_widget_event): assert the widget is realized, since event delivery
7959         to non-realized widgets is essentially a bug. event handlers should
7960         be able to unconditionally rely on widget->window (unless they
7961         emit events on their own which can trigger widget destruction).
7962         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
7963         logic. event delivery happens as follows:
7964         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
7965         b) if !was_handled in (a) and the widget is still realized, emit event-
7966            specific signal (RUN_LAST handler). returns was_handled.
7967         c) emission of GtkWidget::event-after for notification if the widget is
7968            still realized (regardless of was_handled from previous stages, no
7969            class handler). no return value.
7970         d) was_handled gets passed on to caller, to determine further
7971            propagation. if the widget got unrealized meanwhile, was_handled
7972            is returned as TRUE.
7973
7974         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
7975         gdk_event_get_coords().
7976
7977 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
7978
7979         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
7980         age 0, binary age 0. depend on glib 1.3.7.
7981
7982         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
7983
7984         * gtk/gtkmenubar.c: same here.
7985         
7986         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
7987
7988         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
7989
7990         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
7991         
7992         * gtk/gtkmenubar.c (add_to_window): likewise.
7993         
7994         * gtk/gtktextbtree.c: and here...
7995         
7996         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
7997         
7998         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
7999         
8000         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
8001         
8002         * gtk/gtktreeviewcolumn.c:
8003         (_gtk_tree_view_column_set_tree_view): yet again.
8004
8005         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
8006         signal connections without g_signal_connect_data().
8007         
8008         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
8009         demo of the matter.
8010         
8011         * demos/testpixbuf.c (main): running out of equality phrases for the
8012         ChangeLog, but had to adapt connections here as well.
8013         
8014         * demos/testanimation.c (progressive_timeout): and for the fun of it,
8015         tackled this the same way.
8016         
8017         * tests/testtext.c (create_view): ok, it's becoming a pain at this
8018         point, but had enough enery for one more fix.
8019
8020         * tests/testtreecolumns.c (main): stand up man, do your work!
8021
8022         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
8023         fix, either that's been all of it or CVS gtk is broken yet again.
8024         
8025 2001-06-29  James Henstridge  <james@daa.com.au>
8026
8027         The following changes correspond to bug #56812
8028
8029         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
8030         code for GdkDevice.
8031
8032         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
8033         GdkCursor.
8034
8035 2001-06-19  Havoc Pennington  <hp@pobox.com>
8036
8037         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
8038         for mapping a window without fooling with stacking order, but
8039         updating the "withdrawn" flag
8040
8041         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
8042         filtering as soon as possible, moving move resize and wmspec_check
8043         handling after the event filter.  Make default filter apply to all
8044         events, not just those with no GdkWindow wrapped around the X
8045         window. Fix a FIXME about how the window could be a pixmap using 
8046         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
8047
8048         Also, be robust against events not on a known GdkWindow.
8049
8050         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
8051         gdk_x11_ungrab_server): export reference-counted server grabs, so
8052         other people can grab server over a GDK function that also does
8053         so.
8054
8055 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
8056
8057         * gtk/gtktreeviewcolumn.c
8058         (gtk_tree_view_column_pack_start_cell_renderer): New function to
8059         reflect that you can (hypothetically) pack cell renderers into a
8060         column.
8061         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
8062         (gtk_tree_view_column_cell_is_visible): Move more functionality to
8063         the column.
8064         (gtk_tree_view_column_cell_can_focus): Move more functionality to
8065         the column.
8066
8067         * gtk/gtktreeview.c: Move to use new column-packing code.
8068         (gtk_tree_view_real_expand_row): remove totally braindead code.
8069         (gtk_tree_view_real_collapse_row): ditto.
8070
8071 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
8072
8073         * gtk/gtktreeviewcolumn.c: Fix a typo.
8074         
8075 2001-06-26  Joel Becker  <jlbec@evilplan.org>
8076
8077         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
8078           at the end of the file
8079
8080 2001-06-26  Havoc Pennington  <hp@redhat.com>
8081
8082         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
8083
8084 2001-06-26  Havoc Pennington  <hp@redhat.com>
8085
8086         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
8087         property
8088
8089 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
8090
8091         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
8092         stupid missing statement
8093
8094         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
8095         private function for ATK.  It notifies you of how many _visible_
8096         children are deleted when a node is deleted.  Should be used by
8097         atk only.
8098
8099 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
8100
8101         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
8102         Use new pango_context_get_metrics() to fix problems
8103         with font lists in descriptions. (#56184, reported by
8104         Jonas Borgström)
8105
8106 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
8107
8108         * gtk/gtkiconfactory.c:
8109         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
8110         item factory so inlined pixbufs actually work.
8111
8112 2001-06-25  Havoc Pennington  <hp@redhat.com>
8113
8114         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
8115         s/RESIZEABLE/RESIZABLE/
8116
8117         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
8118
8119 2001-06-25  Alexander Larsson  <alexl@redhat.com>
8120
8121         * configure.in:
8122         Added --enable-fbmanager. This is some experimental code
8123         that lets several GtkFB apps coordinate their access to the
8124         framebuffer.
8125         
8126         * acconfig.h:
8127         Added ENABLE_FB_MANAGER.
8128
8129         * gdk/linux-fb/Makefile.am:
8130         Added gdkfbmanager and gdkfbswitch.
8131
8132         * gdk/linux-fb/gdkkeyboard-fb.c:
8133         * gdk/linux-fb/gdkmouse-fb.c:
8134         * gdk/linux-fb/gdkprivate-fb.h:
8135         Split device init and open so that
8136         they can be opened and closed while switched
8137         away.
8138
8139         * gdk/linux-fb/gdkmain-fb.c:
8140         Add the basic manager communication.
8141
8142         * gdk/linux-fb/gdkrender-fb.c:
8143         Don't update to the shadow fb if we're
8144         blocked by the fb manager.
8145
8146 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
8147
8148         * docs/Changes-2.0.txt: Add note about child property
8149         changes.
8150
8151 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
8152
8153         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
8154         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
8155
8156         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
8157         with un'reffing wrong list reported by Jeff Franks.
8158
8159         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
8160
8161         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
8162         for the default icon. Remove inline XPM.
8163
8164         * gtk/gtkstock.h gtk/gtkiconfactory.c:
8165         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
8166         is used for GTK_STOCK_DND, but it is a bit too small.)
8167
8168         * gtk/stock-icons/stock_dnd_multiple.png
8169         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
8170
8171         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
8172         TRUE when starting a drag. In other cases, we are
8173         just observing. (#52995)
8174
8175         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
8176         function to set the icon for a drag from a GdkPixbuf
8177         or stock ID.
8178
8179         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
8180         Likewise, for drag sources.
8181
8182         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
8183         (Now should be done using the stock system.)
8184
8185 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
8186
8187         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
8188         Removed - didn't work and not particularly useful anyways
8189         if it did. 
8190
8191 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
8192
8193         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
8194         introduced last night that was making things decidedly not work.
8195
8196         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
8197         so that we have getter/setter pairing everywhere it makes
8198         sense. (#55767)
8199
8200         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
8201         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
8202         deprecated compat macro. (#55516)
8203
8204         * gtk/gtklabel.[ch]: Add functions
8205         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
8206         gtk_label_set_label(), which mirror the property API for GtkLabel.
8207         Make gtk_label_get_attributes() only reflect the attributes
8208         set by gtk_label_set_attributes.
8209
8210         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
8211         from gtk_notebook_set_page().
8212
8213 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
8214
8215         * configure.in: Fix tests for XShm.h.
8216
8217         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
8218         gdk_image_new() by use of goto, properly use g_object_unref().
8219
8220 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
8221
8222         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
8223         calls, as GdkImage is an object. these should be g_obejct_unref()
8224         instead but that won't work because of the g_error() statement
8225         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
8226         to spot these places.
8227
8228 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
8229
8230         * modules/input/gtkimcontextxim.c: Fixup some problems with 
8231         text length handling in error cases.
8232
8233         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
8234         a bit to make test actually warn on attempt to allocation
8235         a negative size. (#56101, Matthias Clasen)
8236
8237 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
8238
8239         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
8240         noticed by Brian Cameron.
8241         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
8242         Cameron.
8243
8244 2001-06-22  Hans Breuer  <hans@breuer.org>
8245
8246         * gdk/gdk.def : updated externals
8247
8248         * gdk/win32/gdkdrawable-win32.c : corrected some casts
8249         in GDK_NOTEs
8250
8251         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
8252         to translate coordinates to the internal > 16 bit system
8253         Try to handle WM_WINDOWPOSCHANGED to get better performance for
8254         when moving/resizing
8255
8256         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
8257         and gdk_keymap_get_direction (). The latter is untested for
8258         the RTL case
8259
8260         * gtk/gtk.def : updated externals
8261
8262         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
8263         from pango_language_from_string (), not an already freed pointer
8264
8265         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
8266         binary (-kb) to be useable on windoze
8267  
8268 2001-06-21  Alexander Larsson  <alexl@redhat.com>
8269
8270         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
8271         Update to new PangoLanguage changes.
8272         
8273         * gtk/gtkwindow-decorate.c:
8274         * gtk/gtkwindow.[ch]:
8275         Added setting argument to gtk_window_set_has_frame ()
8276         
8277 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
8278
8279         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
8280         the case without XKB properly.
8281
8282         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
8283         unused gtk_rc_auto_parse variable.
8284
8285         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
8286         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
8287         longer needed with GdkPixbuf.
8288
8289         * gtk/gtkrc.c (_gtk_rc_init): Make private.
8290
8291 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
8292
8293         * gtk/gtkentry.h: Mark deprecated functions with
8294         GTK_DISABLE_DEPRECATED.
8295
8296 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
8297
8298         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
8299
8300         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
8301
8302         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
8303           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
8304           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
8305           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
8306           to recent changes in Pango.
8307
8308         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
8309           to test whether the basic engine honors them.
8310
8311 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
8312
8313         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
8314         gtk_container_child_get_property().
8315
8316 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
8317
8318         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
8319         (gtk_tree_view_move_cursor_page_up_down): implement.
8320
8321 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
8322
8323         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
8324         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
8325         don't use automatic fixed size buffer for printf-ing floats, doubles
8326         can expand to really _huge_ strings, use g_strdup_printf() instead.
8327
8328 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
8329
8330         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
8331         construct property in 1.2 and still needs to be.
8332
8333         * gtk/gtkwidget.c: "composite_child" is not a settable property.
8334
8335 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
8336
8337         * gtk/gtkliststore.c (gtk_list_store_clear): 
8338         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
8339         clear a model.
8340
8341 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
8342
8343         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
8344
8345         * gtk/Makefile.am:
8346         * gtk/gtk.h: disabled GtkPacker compilation.
8347
8348         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
8349
8350         * gtk/gtknotebook.c:
8351         * gtk/gtktable.c:
8352         * gtk/gtkbox.c: ported this over to child properties.
8353
8354         * gtk/gtksettings.c: fetch class properties via
8355         g_object_class_list_properties().
8356
8357         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
8358         child arg interface. use gobjectnotifyqueue.c for child property
8359         notification.
8360
8361         * gtk/gtkwidget.[hc]: provide necessary means for container child
8362         properties, i.e. ::child_notify signal,
8363         gtk_widget_freeze_child_notify(),
8364         gtk_widget_child_notify(),
8365         gtk_widget_thaw_child_notify().
8366
8367         * tests/testgtk.c: removed inferior property handling code, for
8368         property editing, a generic module should be used, and GLE
8369         coincidentally fullfills that purpose.
8370
8371         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
8372         needs to be adapted to g_object_class_list_properties() before this
8373         builds again.
8374
8375 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
8376
8377         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
8378         test if a node is expanded.
8379
8380 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
8381
8382         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
8383         where collapsing a selected row would result in the cursor/anchor
8384         getting screwed up.
8385
8386 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
8387
8388         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
8389         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
8390         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
8391         Now I can really reorder/sort all Store widgets.  treesorttest
8392         seems to just work now.
8393         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
8394         testtreesort worked through a big coincidence all this time.
8395         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
8396         code.
8397         * tests/testtreecolumns.c: Big 'ol warning at the top letting
8398         people know that this code should never ever ever be copied.
8399
8400 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
8401
8402         * gtk/gtkwindow.h: Fixed a small typo, it should be
8403         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
8404         on line 134.
8405
8406 2001-06-14  Havoc Pennington  <hp@redhat.com>
8407
8408         Docs fixups, and:
8409         
8410         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
8411         GTK_DISABLE_DEPRECATED
8412
8413 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
8414
8415         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
8416         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
8417         finish it off tonight, though it basically works now when it's a
8418         list.  Also, I have a sinking feeling neither GtkTreeStore or
8419         GtkListStore actually resort when adding a new item.  I'll look
8420         into it.
8421
8422 2001-06-14  Havoc Pennington  <hp@redhat.com>
8423
8424         * demos/gtk-demo/main.c (load_file): fix bug identified by
8425         warnings I just added to gtktextbuffer
8426
8427 2001-06-14  Havoc Pennington  <hp@redhat.com>
8428
8429         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
8430
8431         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
8432
8433         * gtk/gtktextbtree.c: don't leak node data all over the place.
8434
8435         * demos/gtk-demo/main.c (main): create fontify tags for the right
8436         buffer
8437
8438         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
8439         to mention tags in the same table can't have the same name,
8440         suggested by Skip Montanaro
8441
8442 2001-06-11  Havoc Pennington  <hp@redhat.com>
8443
8444         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
8445         for trying to add two tags with same name to the tag table
8446
8447         * demos/gtk-demo/main.c (main): fix colors ;-)
8448
8449 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
8450
8451         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
8452         that allows grouping together multiple windows so that grabs
8453         within that set of windows only affect those windows.
8454
8455         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
8456         signal for notification when a widget becomes shadowed
8457         by a grab or is no longer shadowed by a grab.
8458
8459         * gtk/gtkwidget.c (gtk_widget_propagate_state)
8460           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
8461         insenstive widgets to maintain a grab.
8462
8463 2001-06-14  Alexander Larsson  <alexl@redhat.com>
8464
8465         * docs/README.linux-fb:
8466         Add some example config files that can be used with the URW fonts.
8467         
8468         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
8469         Set up the color ramps for DirectColor mode.
8470
8471 2001-06-11  Havoc Pennington  <hp@redhat.com>
8472
8473         * Release 1.3.6
8474          
8475 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
8476
8477         * gdk/linux-fb/gdkwindow-fb.c:
8478         Unify shaped window code and make it repaint the area that used
8479         to be part of the shape, but isn't anymore.
8480
8481 2001-06-11  Havoc Pennington  <hp@redhat.com>
8482
8483         * NEWS: Updates
8484
8485         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
8486
8487         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
8488         
8489 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
8490
8491         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
8492         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
8493         passes zero instead, so do we.
8494         
8495 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
8496
8497         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
8498         Deep copy dash_list too.
8499         (_gdk_fb_gc_new): Set default cap_style before
8500         setting values.
8501
8502 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
8503
8504         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
8505         gdk_keymap_get_direction): New functions.
8506
8507 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
8508
8509         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
8510         gtk_tree_model_get_flags by adding a second flag for atk.
8511
8512         * gtk/gtktreemodel.c: make cursor behavior interact better with
8513         mouse presses.
8514
8515 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
8516
8517         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
8518         expand_row/collapse_row to be 2 signals each -- test_expand_row
8519         and row_expanded as well as test_collapse_row and row_collapsed.
8520
8521 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
8522
8523         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
8524         signal name to be changed instead of selection_changed.
8525
8526 2001-06-08  Havoc Pennington  <hp@redhat.com>
8527
8528         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
8529         "scroll_offset" property for notification when the layout offsets
8530         may have changed
8531         (gtk_entry_adjust_scroll): add notify for scroll_offset
8532         (gtk_entry_layout_index_to_text_index): function to compensate for
8533         preedit string when doing coordinate stuff on the entry's layout
8534         (gtk_entry_text_index_to_layout_index): inverse function
8535         (gtk_entry_get_layout_offsets): hook to get current position of
8536         the layout      
8537         (gtk_entry_get_layout): hook to get the layout itself.
8538
8539         * gtk/gtklabel.c (gtk_label_get_layout): new function
8540
8541 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
8542
8543         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
8544         keybinding.
8545         (gtk_tree_view_focus): Fix merge conflict.
8546
8547 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
8548
8549         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
8550         clean up cursor handling.
8551
8552 2001-06-08  Havoc Pennington  <hp@redhat.com>
8553
8554         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
8555         function
8556
8557         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
8558         this function
8559
8560 2001-06-08  Alex Larsson  <alexl@redhat.com>
8561
8562         * gtk/gtkcompat.h.in:
8563         Added compat macros for all old GTK_TYPE_GDK_xxx types.
8564         Fixes bug #52892
8565
8566 2001-06-08  Havoc Pennington  <hp@redhat.com>
8567         
8568         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
8569         parent still
8570
8571 2001-06-08  Havoc Pennington  <hp@redhat.com>
8572
8573         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
8574         don't call g_list funcs on GSList
8575
8576         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
8577         gtk_container_focus(), since some widgets have focusable locations
8578         which are not other widgets. These widgets should not have to be 
8579         containers just to manage the focus. For example, GtkHSV is
8580         currently a container for no good reason. Also, this cleans
8581         up the "if (is_container && is_sensitive && is_drawable)
8582         container_focus ()" mess in widget implementations.
8583
8584         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
8585         function, and have it just call gtk_widget_child_focus().
8586
8587         * gtk/gtkhsv.c: derive from widget not container
8588         
8589         Throughout: fix to reflect GtkContainer::focus change
8590         
8591 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
8592
8593         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
8594         range.  Fix bug #55921
8595
8596         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
8597         (#55920).
8598
8599 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
8600
8601         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
8602         and gdk_keymap_get_current_direction().
8603
8604         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
8605           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
8606         the current locked group, use it to set the keymap
8607         direction.
8608
8609         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
8610         to determine whether we draw a split cursor or use
8611         a jumping cursor based on the current direction.
8612
8613         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
8614         Obey the split cursor setting. 
8615
8616 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
8617
8618         * gtk/gtkimmulticontext.c (activate_cb): Only activate
8619         when toggling on, not when toggling off... (#55906)
8620
8621 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
8622
8623         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
8624         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
8625         in docs. (#55812, Vitaly Tishkov)
8626
8627 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
8628
8629         * demos/gtk-demo/main.c (create_tree): Changed signal name from
8630         selection_changed to changed in signal connection to GtkTreeSelection,
8631         also used g_signal_connectc since GtkTreeSelection is now a GObject.
8632
8633 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
8634
8635         * gtk/gtktreeselection.c: Now it's a GObject instead of a
8636         GtkObject.  The GtkTreeSelection::selection_changed signal is now
8637         the GtkTreeSelection::changed signal.
8638
8639         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
8640         object.
8641
8642         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
8643         object.
8644
8645 2001-06-07  Havoc Pennington  <hp@redhat.com>
8646
8647         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
8648
8649 2001-06-07  Havoc Pennington  <hp@redhat.com>
8650         
8651         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
8652         (not tested yet because with absolute path to srcdir I can't build
8653         atk, but it was broken anyway so this may help) 
8654
8655 2001-06-07  Havoc Pennington  <hp@redhat.com>
8656
8657         * configure.in: output m4macros/Makefile
8658         
8659 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
8660
8661         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
8662         buttons.  Fixes #55460 reported by matthiasc@poet.de.
8663
8664 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
8665
8666         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
8667         expansion/collapsing so it only happens in one place.
8668         (gtk_tree_view_real_expand_row): ditto.
8669
8670 2001-06-07  Havoc Pennington  <hp@redhat.com>
8671
8672         * tests/Makefile.am: add missing -I flag
8673
8674         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
8675
8676         * configure.in: use pkg-config to see if GModule is
8677         supported; fix to properly turn on included loaders 
8678         when GModule isn't supported; don't use AC_CHECK_LIB 
8679         when libs are not installed yet
8680
8681         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
8682
8683         * Makefile.am (SUBDIRS): add m4macros subdir
8684
8685         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
8686         dependencies also.
8687
8688 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
8689
8690         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
8691         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
8692
8693 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
8694
8695         * gtk/gtktreeview.c
8696         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
8697         bindings to expand and collapse rows.
8698         (gtk_tree_view_real_select_cursor_parent): New key binding.
8699         (gtk_tree_view_real_toggle_cursor_row): New key binding.
8700
8701         * gtk/gtkmarshal.list: new
8702         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
8703
8704 2001-06-06  Havoc Pennington  <hp@redhat.com>
8705
8706         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
8707
8708         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
8709         Down to move visually rather than logically, since it confuses 
8710         people. Add -/+ and Ctrl--/+ bindings for logical movement.
8711
8712 2001-06-06  Alex Larsson  <alexl@redhat.com>
8713
8714         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
8715         Fix up error messages.
8716
8717 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
8718
8719         * gtk/gtktooltips.h: Include gtkwidget.h 
8720         (#55798, Karl Nelson)
8721
8722         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
8723         a valid latin-1 character. (Marc Lehmann, #35467)
8724
8725         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
8726         (Marc Lehmann, #35467)
8727         
8728 2001-06-05  Alex Larsson  <alexl@redhat.com>
8729
8730         * demos/gtk-demo/appwindow.c (do_appwindow):
8731         Don't swap the order of the args to gtk_widget_destroyed.
8732
8733         * tests/testgtk.c (destroy_properties):
8734         Don't crash when the properties window is destroyed.
8735
8736         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
8737         Use with_mnemonics to handle the case of stock items with
8738         underscores in them.
8739
8740 2001-06-05  Havoc Pennington  <hp@redhat.com>
8741
8742         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
8743         gtk_text_iter_reorder
8744
8745 2001-06-05  Havoc Pennington  <hp@redhat.com>
8746
8747         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
8748
8749 2001-06-05  Havoc Pennington  <hp@redhat.com>
8750
8751         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
8752         to the range that was set
8753
8754         * gtk/gtkrange.c: add value_changed signal, primarily 
8755         intended for use with GtkScale
8756         (gtk_range_set_increments): new function
8757         (gtk_range_set_range): new function with weird name
8758         (gtk_range_set_value): new function
8759         (gtk_range_get_value): new function
8760
8761         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
8762         from gtk_spin_button_get_value_as_float(). Compat #define
8763         added for get_value_as_float.
8764
8765         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
8766
8767         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
8768
8769 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
8770
8771         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
8772
8773 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
8774
8775         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
8776
8777         * tests/testgtk.c (create_tooltips): Remove usage of
8778         gtk_widget_set().
8779
8780 2001-06-05  Havoc Pennington  <hp@redhat.com>
8781
8782         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
8783
8784         Applying patch from Jeff Franks, with function docs added.
8785         
8786         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
8787         remove call to set_mnemonic_widget, change docs a bit.  
8788
8789         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
8790         new function
8791
8792         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
8793         new function
8794
8795         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
8796
8797         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
8798         function
8799         (gtk_radio_button_new_with_mnemonic_from_widget): new function
8800
8801         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
8802         new function
8803
8804         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
8805         function        
8806
8807         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
8808         auto-selection of mnemonic widget.
8809
8810 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
8811
8812         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
8813         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
8814         (gtk_tree_view_column_set_min_width): ditto.
8815
8816 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
8817
8818         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
8819         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
8820
8821 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
8822
8823         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
8824         gtk_clist_thaw().
8825
8826 2001-06-04  Havoc Pennington  <hp@pobox.com>
8827
8828         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
8829 r       eleases for buttons 6, 7
8830
8831 2001-06-04  Havoc Pennington  <hp@redhat.com>
8832
8833         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
8834         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
8835         #55562
8836
8837 2001-06-04  Havoc Pennington  <hp@redhat.com>
8838
8839         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
8840         where text_view->layout == NULL by assuming its size is 0, 
8841         i.e. same as if we haven't done any reflow. Reported by 
8842         Hidetoshi Tajima #55448 
8843
8844 2001-06-04  Havoc Pennington  <hp@redhat.com>
8845
8846         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
8847         and 7 for scroll left/right, from Thomas Broyer
8848
8849 2001-05-10  Havoc Pennington  <hp@redhat.com>
8850
8851         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
8852         we need to parse the xsetting as if it were an RC file string.
8853
8854         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
8855         value of palette from settings, not from static variable
8856
8857         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
8858         xsettings translation table
8859
8860         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
8861         hardcoding the toolbar style conflicts with new customizable 
8862         toolbar style philosophy
8863         (gtk_toolbar_class_init): add settings for default toolbar style;
8864         these are used unless the app specifically forces a toolbar style
8865
8866         * gtk/gtksettings.c (settings_install_property_parser): only
8867         return at the start if we warn and parser == NULL
8868
8869         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
8870         palette changed handler so we don't notify dead color selections
8871
8872         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
8873         xthickness/ythickness of 0 or 1 properly 
8874         (gtk_default_draw_resize_grip): clear the background behind the
8875         resize grips, and align to bottom right if we square the 
8876         area to be drawn.
8877
8878         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
8879         statusbar label to 1, so it doesn't make toplevels resize oddly
8880         (gtk_statusbar_size_request): add grip size to request
8881         (gtk_statusbar_size_allocate): hack so the hbox still works with 
8882         the grip size in the request
8883
8884         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
8885         bug where showing all on a toplevel makes the toolbar 
8886         button text appear despite the toolbar mode
8887
8888         * gtk/gtkmenubar.c: add internal padding style property
8889
8890         * gtk/gtktoolbar.c: Add internal padding style property; add
8891         shadow type style property
8892
8893         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
8894         state; and put Container::border_width outside the frame
8895
8896         * gtk/gtktextview.c: don't draw focus rectangle if we're in
8897         interior focus mode, we just use blinking cursor
8898
8899 2001-06-04  Havoc Pennington  <hp@redhat.com>
8900
8901         * configure.in: Make gdk-pixbuf have same version number as GTK
8902
8903 2001-06-04  Havoc Pennington  <hp@redhat.com>
8904
8905         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
8906         digits greater than 6. If there actually are limits (which there
8907         likely aren't), should clamp to them not warn.
8908         (gtk_spin_button_new_with_range): don't take log of 0
8909         (gtk_spin_button_size_request): use digits to compute size
8910         request, rather than step increment.
8911
8912         * tests/testgtk.c (create_spins): test larger values of digits
8913         
8914         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
8915         font on map not expose, so we don't get weirdness during scrolling
8916
8917 2001-06-04  Havoc Pennington  <hp@redhat.com>
8918
8919         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
8920         Sam Solon, bug #54577, update value even if not drawable.
8921
8922 2001-06-04  Havoc Pennington  <hp@redhat.com>
8923
8924         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
8925         SCROLL_LEFT, reported by Thomas Broyer.
8926
8927 2001-06-04  Havoc Pennington  <hp@redhat.com>
8928
8929         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
8930         Process updates immediately, to prevent funny lag effect
8931         when scrolling, at some mild potential efficiency cost.
8932
8933 2001-06-04  Havoc Pennington  <hp@redhat.com>
8934
8935         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
8936         slider on the click.
8937
8938 2001-06-03  Havoc Pennington  <hp@pobox.com>
8939
8940         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
8941         hscale/vscale details, so we can use it for scrollbar as well.
8942
8943         * tests/testgtk.c (reformat_value): honor digits from GtkScale
8944
8945         * gtk/gtkenums.h (GtkTroughType): Remove this enum
8946         (GtkScrollType): add START and END from GtkTroughType
8947
8948         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
8949         its x/y arguments
8950
8951         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
8952         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
8953         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
8954         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
8955         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
8956
8957         Notable changes in the process:
8958          
8959         - stepper_size style property is the height for vertical 
8960           ranges, width for horizontal; the other dimension matches
8961           the trough size
8962         - add ability to do NeXT-style steppers (and several other styles
8963           that don't make any sense)
8964         - added min_slider_length, fixed_slider_length properties to
8965           GtkScrollbar
8966         - cleaned some private (or at least useless) functions out of
8967           gtkscale.h    
8968         - moved bindings to GtkScale from subclasses, even arrow keys,
8969           since blind users don't know scale orientation.
8970         - change move_slider action signal to use new GtkScrollType,
8971           remove GtkTroughType argument
8972         - digits rounds the values a range will input to the given 
8973           number of decimals, but will not try to force adjustment 
8974           values set by other controllers. That is, we no longer
8975           modify adjustment->value inside a value_changed handler.
8976         - added getters for GtkScale setters
8977         - middle-click begins a slider drag
8978         
8979 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
8980
8981         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
8982         getting the focus code to work.
8983         (gtk_tree_view_class_init): Add a bunch of keybindings.
8984
8985         * gtk/gtktreeviewcolumn.c
8986         (gtk_tree_view_column_set_cell_data_func):
8987         s/GtkCellDataFunc/GtkTreeCellDataFunc.
8988         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
8989         of "properties_changed" to help justify the death of the latter
8990         signal. (-:
8991
8992         * tests/testtreefocus.c (main): Let some columns be focussable to
8993         test focus better.
8994
8995 2001-06-01  Havoc Pennington  <hp@redhat.com>
8996
8997         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
8998         
8999         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
9000         overwrite in overwrite mode if we already deleted the selection
9001         and replaced it with new text.  
9002
9003         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
9004         selection to an empty range, clear the clipboard if we owned it.
9005         (gtk_label_set_selectable): give up selection if we become
9006         unselectable.
9007         (gtk_label_state_changed): override state changed to unselect text
9008         when insensitive
9009         (get_text_callback): add paranoia check that indexes aren't
9010         outside of label->text
9011         (gtk_label_select_region): make -1 for start_offset mean "end of
9012         label," for consistency with GtkEditable
9013
9014         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
9015         GTK_DIALOG_NO_SEPARATOR flag
9016
9017 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
9018
9019         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
9020         notifications on non-existant "enable_arrow_keys".
9021         (#53753, Skip Montanaro)
9022
9023 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
9024
9025         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
9026         GDK_TYPE_RECTANGLE.
9027
9028         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
9029         of allocation argument be GDK_TYPE_RECTANGLE.
9030
9031 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
9032
9033         * gtk/gtkoptionmenu.c: Account for the fact that the border
9034         width is _outside_ the window. (Fixes #54585, bug found
9035         by Bastien Nocera.)
9036
9037 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
9038
9039         * gtk/gtksettings.c (gtk_settings_get_property): Validate
9040         value from GDK settings against parameter spec.
9041
9042         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
9043         to temporary values and use g_value_transform(), since
9044         thinking that GValue was going to be easy or efficient
9045         to use was, of course, a mistake.
9046
9047         * gtk/gtksettings.c: Add cursor blink setting.
9048         
9049         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
9050
9051         * gtk/gtkentry.c: Add cursor blinking.
9052
9053         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
9054         cursor blink global settings.
9055
9056         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
9057         for :text_position in places where it is missing.
9058
9059 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
9060
9061         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
9062
9063 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
9064
9065         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
9066         not pkg-config. (#51032)
9067
9068         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
9069         (fixes #51952, James Henstridge)
9070         
9071 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
9072
9073         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
9074         Rename to the more correct gtk-go-up.
9075
9076         * gtk/stock-icons/stock_menu_sort_ascending.png:
9077         Added new file.
9078         
9079         * gtk/stock-icons/stock_menu_sort_descending.png:
9080         Changed to show descending instead of ascending.
9081
9082         * gtk/gtkiconfactory.c:
9083         Added menu size icon to sort ascending.
9084
9085         * gtk/stock-icons/Makefile.am:
9086         Added stock_menu_sort_ascending.png.
9087         
9088         * gtk/gtkseparatormenuitem.c:
9089         Use correct typenames.
9090
9091 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
9092
9093         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
9094         gulong as in GSignal.
9095
9096 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
9097
9098         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
9099         instances of GtkCellRenderer in code (all but dnd icon code).
9100         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
9101         there, and I can do multiple Cells per column.
9102
9103         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
9104
9105         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
9106         when model was unreffed prior to removing the row reference.
9107
9108 2001-05-25  Havoc Pennington  <hp@redhat.com>
9109
9110         * gtk/gtkiconfactory.c: fix so that default icons are created if 
9111         you call gtk_stock_list_ids()
9112
9113         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
9114         in list
9115
9116 2001-05-25  Havoc Pennington  <hp@redhat.com>
9117
9118         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
9119         set can render without falling back to missing image icon
9120
9121         * gtk/gtktextview.c (gtk_text_view_size_request): request full
9122         size of text, instead of random values
9123
9124         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
9125         size of tree view, instead of random values
9126
9127         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
9128         image in an appropriate size
9129
9130         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
9131         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
9132
9133         Throughout: fix GTK_STOCK_BUTTON_ instances
9134         
9135         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
9136         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
9137         Add a bunch of new stock items/icons
9138
9139         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
9140         new function, convenience for inserting columns with a data func
9141
9142         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
9143         (_gtk_icon_factory_list_ids): use list of all factories to
9144         generate a list of all known IDs
9145
9146         * gtk/gtkstock.c (gtk_stock_list_ids): replace
9147         gtk_stock_list_items() with a function that returns all IDs known
9148         including those for GtkIconFactory.
9149
9150 2001-05-25  Hans Breuer  <hans@breuer.org>
9151
9152         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
9153         work -> check boxes and radio buttons are drawn now, even on win9x.
9154         Improved line settings a bit, still no clue how to get really dotted
9155         lines on win9x, on NT it's PS_ALTERNATE.
9156
9157         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
9158         GDK_HINT_MIN_SIZE as well
9159
9160         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
9161
9162         * gtk/gtk.def : updated
9163
9164         * gtk/gtktreeprivate.h : change column_drop_func to be a function
9165         pointer not a function pointer pointer
9166
9167         * tests/testdnd.c : include <stdlib.h> for putenv prototype
9168
9169         * tests/testsocket.c : made it compile on win32 again
9170
9171         * tests/makefile.msc : one more test-app uses prop-editor.obj
9172
9173 2001-05-22  Havoc Pennington  <hp@pobox.com>
9174
9175         * gtk/gtkbin.c (gtk_bin_get_child): New function
9176
9177 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
9178
9179         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
9180         to ignore when doing compose processing.
9181
9182 2001-05-22  Joe Shaw  <joe@ximian.com>
9183
9184         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
9185         Simplify as suggested by Havoc. Just get the last iter and work
9186         backward to the tag instead of getting a line and working back from
9187         there. Fixes passing in an invalid offset to
9188         iter_init_from_byte_offset().
9189
9190 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
9191
9192         * gtk/gtktreeview*.h: 
9193         * gtk/gtkcell*.h:
9194         * gtk/gtk*store.h:
9195         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
9196         macros to all objects.
9197
9198 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
9199
9200         * gtk/gtkcellrenderertext.c
9201         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
9202         with very large (TM) amounts of text.  May be moved to
9203         GtkCellRenderer in the future, though I'm not sure it wants to be
9204         this accessible.
9205
9206         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
9207         More sanity brought to this class.  I like it.
9208
9209         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
9210         case.  Kids, don't try this at home.
9211
9212         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
9213         convenience function.
9214
9215         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
9216
9217 2001-05-21  Alexander Larsson  <alexl@redhat.com>
9218
9219         * gtk/gtkfontsel.c:
9220         Added properties. Based on patch by Lee Mallabone.
9221
9222         * gtk/gtkruler.c:
9223         * gtk/gtkhruler.c:
9224         * gtk/gtkvruler.c:
9225         * gtk/gtktext.c:
9226         * gtk/gtktextview.c:
9227         Converted GtkArg to GParam. Based on patches by John Margaglione.
9228
9229         * tests/Makefile.am:
9230         * tests/testtext.c:
9231         Add a property editor to testtext.
9232         
9233 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
9234
9235         * gtk/gtk{h,v,}paned.c: Only show the separator if 
9236
9237         * configure.in: Fixed reversed conditional causing all image
9238         libraries to be linked in.
9239
9240 2001-05-21  Joe Shaw  <joe@ximian.com>
9241
9242         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
9243         that top_y needs to be >= 0.
9244
9245 2001-05-11  Havoc Pennington  <hp@pobox.com>
9246         
9247         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
9248         losing connection to the X server.
9249
9250 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
9251
9252         * configure.in: Start checks for X from pangox/pangoxft
9253         CFLAGS to avoid duplicate libraries.
9254
9255         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
9256
9257         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
9258         to include gobject.
9259         
9260 2001-05-18  Alexander Larsson  <alexl@redhat.com>
9261
9262         * gtk/gtkspinbutton.c:
9263         Convert GtkArgs to GParams. Based on patch by John Margaglione.
9264         Also do size request reasonable for MAXDOUBLE. Previously it printed
9265         the limits to a buffer and overran it. Instead do it using log10() and
9266         limit the width to 10 digits.
9267         
9268         * gtk/gtkwidget.c (gtk_widget_get_property):
9269         Correctly handle setting the parent property to NULL.
9270
9271 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
9272
9273         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
9274         style attributes even if the widget isn't realized.
9275
9276         * demos/gtk-demo/main.c: Use a slightly smaller font.
9277
9278 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
9279
9280         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
9281         This is something that only a widget writer would ever want
9282         to change.
9283
9284         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
9285         gtk_signal_emit_by_name().
9286
9287         * gtk/gtkviewport.c: Fix some warnings.
9288
9289         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
9290         allowing the requisitions of multiple widgets to be grouped
9291         together.
9292
9293         * tests/testgtk.c: Add GtkSizeGroup test
9294
9295         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
9296
9297         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
9298         warnings.
9299
9300         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
9301
9302 2001-04-28  Martin Baulig  <baulig@suse.de>
9303
9304         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
9305         to gtk_image_menu_item_set_icon() and made it work if there's already
9306         an image.
9307         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
9308         (gtk_image_menu_item_new_with_label): New function.
9309
9310 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
9311
9312         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
9313         highlighting code!!!!  The result is okay so long as you don't try
9314         to stress it.  It also highlights a bug in the TextView so it's in
9315         an unproportional font right now until it's fixed.
9316
9317         *demos/gtk-demo/*.c: Clean up code a bit to make it
9318         ugly-parser(TM) friendly. (-:
9319
9320 2001-05-17  Joe Shaw  <joe@ximian.com>
9321
9322         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
9323         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
9324         if it is only partially onscreen.
9325
9326 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
9327
9328         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
9329         not by characters.
9330
9331         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
9332         are not zero or one; that is, when graphemes of multiple characters
9333         are involved.
9334
9335         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
9336         FIXME.
9337
9338 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
9339         
9340         * gtk/gtkbbox.c:
9341         Add properties, based on patch by Lee Mallabone.
9342
9343         * gtk/gtknotebook.c:
9344         * gtk/gtktoolbar.c:
9345         Convert from GtkArg to GParam, based on patch by John Margaglione.
9346         
9347         * gtk/gtkhscale.c:
9348         * gtk/gtkvscale.c:
9349         * gtk/gtkhscrollbar.c:
9350         * gtk/gtkvscrollbar.c:
9351         * gtk/gtkrange.c:
9352         Move adjustment property to GtkRange.
9353
9354         * gtk/gtklabel.c:
9355         Setup mnemonics on property changes
9356
9357         * gtk/gtkwidget.c (gtk_widget_get_property):
9358         GdkExtensionMode is an enum, not a flag. Set it with
9359         g_value_set_enum ().
9360
9361         * tests/prop-editor.c:
9362         Better propery editor.
9363
9364         * tests/testgtk.c:
9365         Add new property test. Pass zero to the property editor to
9366         get properties from all derived types.
9367         
9368 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
9369
9370         * autogen.sh (have_automake): Require libtool-1.4,
9371         automake-1.4p1.
9372
9373         * acinclude.m4: Remove libtool macros.
9374
9375         * gdk-pixbuf/Makefile.am: Add dependencies to loade
9376         modules.
9377
9378         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
9379         for libgdk.
9380
9381         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
9382         libgdk.la for libgtk.
9383
9384         * modules/input/Makefile.am: Make modules have full
9385         dependencies.
9386
9387 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
9388
9389         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
9390         #54699 where paths weren't being checked for correctness.
9391
9392 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
9393
9394         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
9395         in any order you wan, whether or not the column is added to the
9396         tree, or the tree is realized.  Yay!
9397
9398         * gtk/gtktreeviewcolumn.c
9399         (gtk_tree_view_column_setup_sort_column_id_callback): handle
9400         sorting columns a lot saner
9401
9402         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
9403         new function to actually set wether or not a column is
9404         reorderable.
9405
9406         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
9407         if we have 'em.
9408
9409         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
9410         Fix nasty bug where we were showing the button just before
9411         realizing it.  As a result, the parent window was
9412         tree_view->window instead of tree_view->priv->header_window.
9413
9414         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
9415         to let you easily reorder a list or tree.
9416
9417 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
9418
9419         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
9420         from args to properties.
9421
9422 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
9423
9424         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
9425         from args to properties. (#51957)
9426
9427         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
9428         calls to after ->set_property call.
9429
9430 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
9431
9432         * tests/prop-editor.c: Block against redundant changes.
9433
9434         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
9435         properties.
9436
9437 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
9438
9439         * gdk/gdkpixmap.h: Remove creative formatting.
9440
9441 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
9442
9443         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
9444         property API. (#51669)
9445
9446         * gtk/gtkscale.c: Patch from John Margaglione converting to
9447         property API. (#51891)
9448
9449         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
9450         to property API. (#50985)
9451
9452 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
9453
9454         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
9455         buffering state across expose event, so we still call end_paint().
9456
9457 2001-05-11  Alexander Larsson  <alexl@redhat.com>
9458
9459         * gtk/gtkhsv.c (paint_triangle):
9460         Expose the ring in the triangle at the correct place when
9461         exposing just a part of the triangle.
9462
9463         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
9464         Return FALSE, or window focusing will not work.
9465
9466 2001-05-11  Havoc Pennington  <hp@pobox.com>
9467
9468         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
9469         #54144
9470
9471         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
9472         bug #54330
9473
9474 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
9475
9476         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
9477         propagate exposes to NULL child.
9478
9479         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
9480         against not having one of the scrollbars.
9481
9482         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
9483         we don't keep a mnemonic window if we have no mnemonic installed.
9484
9485 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
9486
9487         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
9488         it has the _important_ side effect of initializing a class.
9489
9490 2001-05-10  Alexander Larsson  <alexl@redhat.com>
9491
9492         * gdk/linux-fb/gdkprivate-fb.h:
9493         Make sure you can compile out the implementation/wrapper assert
9494         macros.
9495
9496         * gdk/linux-fb/gdkdrawable-fb2.c:
9497         Check implementation/wrappers, initialize type for pixmap dummys.
9498
9499         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
9500         Hide the cursor if reading from the screen.
9501
9502         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
9503         Fix sign bug in tiling code.
9504
9505         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
9506         Handle background pixmaps.
9507
9508 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
9509
9510         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
9511         function to let user control where columns are dragged.
9512
9513         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
9514         Escape is pressed.
9515
9516 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
9517
9518         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
9519         "columns_changed" signal.
9520         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
9521         motion code to draw arrows to the side if indicator is outside the
9522         widget.
9523         (gtk_tree_view_map_expanded_rows): Implement.
9524
9525 2001-05-07  Alexander Larsson  <alexl@redhat.com>
9526
9527         * demos/testpixbuf-save.c: 
9528         * demos/testpixbuf-drawable.c:
9529         Include gdkfb.h on linux-fb.
9530
9531 2001-05-07  Alexander Larsson  <alexl@redhat.com>
9532
9533         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
9534         New function for getting toplevel window at position.
9535         (gdk_drag_find_window): Use get_toplevel_window () instead
9536         of gdk_window_get_pointer(). (gdk_drag_status): Use
9537         correct context for getting window.
9538
9539         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
9540         g_strdup the atom name.
9541
9542         * gdk/linux-fb/gdkwindow-fb.c:
9543         Costmetic fix.
9544
9545         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
9546         Add code for changing cursor on linux-fb backend (same as
9547         win32).
9548
9549 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
9550
9551         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
9552         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
9553         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
9554         report was not for the development branch of GTK+, but it applies
9555         anyways).
9556
9557 2001-05-04  Havoc Pennington  <hp@redhat.com>
9558
9559         * configure.in: fix some shell typos
9560
9561         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
9562
9563         * gtk/gtkimage.c: handle animations
9564
9565         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
9566         border_width * 2, not just border_width
9567
9568         * gtk/gtkscale.c: add "format_value" signal to allow people
9569         to override the way values are drawn.
9570         (gtk_scale_get_value_size): fix width/height mistake,
9571         and compute size from actual displayed text, not 
9572         from made-up text.
9573
9574         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
9575         signal registration
9576
9577         * tests/testtext.c: Add "Remove all tags" menu item for testing
9578
9579         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
9580
9581         * demos/gtk-demo/main.c (main): add hack so we can find modules
9582         without installing gtk
9583
9584         * demos/gtk-demo/textview.c (insert_text): demo font scaling
9585
9586         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
9587         factor)
9588         (gtk_cell_renderer_text_set_property): remove some bogus
9589         g_object_notify
9590
9591         * gtk/gtktexttag.c: add "scale" property which is a font scaling
9592         factor
9593
9594         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
9595         to layout
9596
9597         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
9598         gtk_text_iter_is_first
9599
9600 2001-01-06  Hans Breuer  <hans@breuer.org>
9601
9602         * gdk/gdk.def : updated exports
9603
9604         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
9605         gdk won't compile anymore
9606  
9607         * gdk/win32/gdkevents-win32.c : initialize ret_val when
9608         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
9609         Improved gdk_flush () to not only do pending drawing operations
9610         but also process all currently pending events. This should make
9611         the behaviour more similar to the X11 version.  
9612
9613         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
9614         option needs to be set even if there is no GDK_GC_BACKGROUND.
9615         (gdk_win32_hdc_get) : use predraw_set_background () independent
9616         of value_mask. This allows to draw dashed lines leaving the original
9617         background intact.
9618
9619         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
9620         after processing, because we can't reuse it as the X11 version does.
9621
9622         * gtk/gtk.def : updated exports
9623
9624         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
9625         would like to get rid of this file again, and use straight
9626         makefile.msc again, as the other Gtk+ subdirs do)
9627
9628         * test/makefile.msc (new file) : build the test apps here
9629
9630 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
9631
9632         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
9633         strike-through setting
9634         (gdk_draw_layout_line_with_colors): Render strike-through
9635
9636 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
9637
9638         * Release 1.3.5
9639
9640         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
9641
9642         * NEWS: Updated
9643
9644         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
9645         Makefile breakage.
9646
9647 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
9648
9649         * demos/gtk-demo/images.c (progressive_timeout): Fix
9650         typo in filename.
9651
9652         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
9653         out FIXME warning; just too annoying.
9654
9655 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
9656
9657         * gdk/linux-fb/gdkcolor-fb.c:
9658         Better error messages.
9659
9660         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
9661         Initialize abs_x and abs_y.
9662         
9663         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
9664         Correct handling of stipple offset.
9665
9666         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
9667         Treat directcolor framebuffers as truecolor.
9668         
9669 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
9670
9671         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
9672         dependency on Atk for accessibility support.
9673
9674         * configure.in **/Makefile.am: Major reworking of substituted
9675         variables for CFLAGS/LIBS to make a lot more sane and 
9676         keep the the compile/link lines a bit shorter.
9677
9678         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
9679
9680 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
9681
9682         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
9683         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
9684         use _gtk_boolean_handled_accumulator.
9685
9686 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
9687
9688         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
9689         to fix things so clicking inside selection leaves cursor
9690         at point where clicked. (#50324)
9691
9692         * gtk/gtksettings.c (gtk_settings_class_init): Restore
9693         sane value for default double click time.
9694
9695         * tests/testtext.c (test_init): Really path to input modules.
9696
9697 2001-05-03  Sven Neumann  <sven@convergence.de>
9698
9699         * demos/testpixbuf-save.c: include target-specific headers as
9700         done in testpixbuf-drawable.c
9701
9702 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
9703
9704         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
9705         new_text_length appropriately when we run into the 
9706         size limit for the entry. (#53445, reported by Jeff Franks)
9707
9708         * tests/testgtk.c (create_entry): Remove most of the
9709         property toggle buttons. Replace with a "Props" button
9710         that brings up a property editor.
9711
9712         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
9713         Split the property editor code out for reuse, improve.
9714
9715 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
9716
9717         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
9718         trap errors around calls to XSetInputFocus since we have
9719         no way of knowing reliably whether we are viewable or
9720         not. (#53947)
9721
9722 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
9723
9724         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
9725         fix bug in dropping columns.  Moving columns now basically works
9726         modula some fine tuning.
9727
9728 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
9729
9730         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
9731         autoscroll support.  It mostly works, but could use some fine
9732         tuning.
9733         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
9734         Actually move the column.
9735
9736 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
9737
9738         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
9739           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
9740           New default theme! A slighly improved version of the 2.0 Raleigh
9741           theme, with Windows-esque focus/drawing default. 
9742           (GtkWidget::interior_focus defaults to TRUE.)
9743
9744         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
9745
9746 2001-04-30  Havoc Pennington  <hp@pobox.com>
9747
9748         * tests/testtext.c (line_numbers_expose): fix to work with
9749         gtk_paint_layout change
9750
9751 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
9752
9753         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
9754           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
9755           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
9756           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
9757
9758         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
9759           with GtkWidget::interior_focus = TRUE better.
9760
9761         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
9762         ::default_outside_border for more flexibility.
9763
9764         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
9765         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
9766         change that had to be made with g_object_get.
9767
9768 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
9769
9770         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
9771         (gtk_tree_view_move_column_after): Clean up interface. 
9772
9773 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
9774
9775         * gtk/gtkpacker.h:
9776         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
9777          to gtkenum.h.
9778
9779         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
9780         handled in switch).
9781
9782         * gtk/Makefile.am:
9783         (gtk.defs): generate enum portions with  glib-mkenums.
9784         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
9785         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
9786         
9787         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
9788         addition.
9789
9790         * docs/Changes-2.0.txt: keep a note on signal handlers now
9791         not getting emitted during the emission they were connected within.
9792
9793 2001-04-28  Havoc Pennington  <hp@pobox.com>
9794
9795         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
9796
9797 2001-04-24  Havoc Pennington  <hp@redhat.com>
9798
9799         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
9800         (gtk_text_layout_move_iter_to_next_line): fix these two for
9801         invisible text, lots of other stuff still hosed.
9802
9803         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
9804         new function, replaces the get/set palette stuff. This function 
9805         is intended for use by libgnomeui which should set the hook to a
9806         thing which sets the palette in GConf, and we need the
9807         GConf-to-xsettings proxy which will result in the change being
9808         propagated back to the GTK app.
9809
9810         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
9811         about unusable signals that it may be because the signal has 
9812         parameters.
9813
9814         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
9815         style, otherwise gtkrc.c won't know to create a new GtkStyle for
9816         it.
9817         (gtk_widget_modify_color_component): call
9818         gtk_widget_modify_style() so the rc style will get copied.
9819         (gtk_widget_modify_font): ditto
9820
9821         * gtk/gtkrc.c: make a couple variables static
9822
9823         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
9824         help button by default, since it does nothing
9825
9826         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
9827         around with UI
9828
9829         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
9830         so we can have tooltips
9831
9832         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
9833         can have tooltips
9834
9835         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
9836         GDK_ENABLE_BROKEN, because its memory behavior is completely
9837         hosed.
9838
9839         * gtk/gtknotebook.c: remove key press handler, replace with
9840         binding set, add numeric keypad support
9841
9842         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
9843
9844         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
9845
9846         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
9847         addition to plain Delete
9848
9849         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
9850         GDK_KP_Enter in addition to GDK_Return
9851
9852         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
9853         activate on entry instead of key press
9854         (gtk_font_selection_on_clist_key_press): get
9855         rid of this signal handler, not needed with new font sel.
9856
9857         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
9858         no-longer-needed emit_stop_by_name(), just return TRUE
9859
9860         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
9861         cruft, this widget is no longer focusable.
9862
9863         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
9864         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
9865         move_slider action signal, add binding set for vscale/hscale, in
9866         the process support numeric keypad
9867
9868         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
9869         make GDK_Return and GDK_KP_Enter activate the entry via 
9870         binding set, instead of hardcoded.
9871
9872 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
9873
9874         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
9875         code.  Some documentation added.
9876
9877 2001-04-27  Havoc Pennington  <hp@redhat.com>
9878
9879         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
9880
9881         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
9882
9883         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
9884         line/para separators
9885         (gtk_entry_create_layout): set single paragraph mode on the layout
9886
9887         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
9888         spacing between the image and label; instead, inside a button box 
9889         the button will get extra space that will go there, but if people 
9890         configure button box for 0 chubbiness, then there's no spacing.
9891
9892         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
9893         and min/max size style properties, so people can tune their
9894         chubbiness.
9895
9896         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
9897         functions
9898
9899         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
9900         space_style, and button_relief into style properties, remove
9901         functions for setting them
9902         
9903         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
9904         it back down
9905
9906         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
9907         types from gtk_widget_style_get
9908
9909         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
9910         with a style property.
9911
9912         * gdk/x11/gdkevents-x11.c: namespace the settings
9913
9914         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
9915
9916         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
9917         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
9918         be used. Also, translate doc strings for settings. Also, namespace
9919         the double-click-time property. Also, remove bell properties crap.
9920
9921 2001-04-27  Sven Neumann  <sven@gimp.org>
9922
9923         * Makefile.am: before creating links, check if pkg-config files
9924         exist for the default target. Otherwise link to the pkg-config files
9925         that got installed with this build.
9926
9927 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
9928
9929         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
9930         dragging code.  Revealed some (potential) GdkWindow bugs.
9931
9932         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
9933         _gdk_window_init_position to the end of reparent to fix the case
9934         of reparenting when new_x != old_x and new_y != old_y.
9935
9936 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
9937
9938         * gtk/gtkentry.c (strstr_len): Fix optimization that
9939         was correct for the use here, but completely incorrect
9940         in general.
9941
9942 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
9943
9944         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
9945         until patch adding gtk_window_set_size() is recommitted. 
9946
9947         * **Makefile.am configure.in gdk/x11/gdkim-11.c
9948           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
9949           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
9950           (#10784)
9951
9952 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
9953
9954         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
9955         window == NULL in a number of cases.
9956
9957         * tests/testdnd.c: Set module path for gdk-pixbuf.
9958
9959 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
9960
9961         * gtk/Makefile.am xembed.h: File containing #defines
9962         for XEMBED protocol.
9963
9964         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
9965
9966         - Change protocol from old plug/socket specific protocol
9967           to XEMBED draft
9968         - Various fixes to work with GTK+-2.0
9969
9970         Still quite a bit of work to do here to handle initiation
9971         from the socket side (as specified by XEMBED), to handle
9972         the more advanced features of XEMBED, and to figure out
9973         a good way to handle same-app embedding with less overhead
9974         than using full XEMBED.
9975
9976 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
9977
9978         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
9979         track of whether the toplevel has the focus; only send
9980         focus-in events to the focus widget when the window
9981         actually has the focus.
9982
9983 2001-04-25  Havoc Pennington  <hp@pobox.com>
9984
9985         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
9986         were still in the header
9987
9988 2001-04-24  Alexander Larsson  <alexl@redhat.com>
9989
9990         * gtk/gtkclist.[ch]:
9991         * gtk/gtkctree.c:
9992         When there is a row highlighted for D'n'D it must alse
9993         be painted hightlighted on exposes. Otherwise exposes from
9994         the icon being dragged will mess up the hightlight.
9995
9996         * gtk/gtkfontsel.c:
9997         Don't recenter selected font when exposing the font family
9998         clist. This means you can now actually scroll the font family
9999         list.
10000
10001         * gtk/gtknotebook.c:
10002         Fix focus movement on scrolling tabs that are placed on the left
10003         and right.
10004
10005 2001-04-21  Havoc Pennington  <hp@pobox.com>
10006
10007         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
10008         empty/invisible lines.
10009
10010         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
10011         (gtk_text_iter_set_visible_line_index): new functions to set
10012         indexes excluding invisible text
10013
10014         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
10015         index
10016
10017         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
10018         (gtk_text_iter_get_visible_line_offset): new functions to 
10019         get indexes excluding invisible text
10020
10021         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
10022         bunch of extra padding that served no purpose
10023
10024         * gtk/gtkdialog.c: Make all the spacings configurable via style
10025         properties, for chubbiness configuration in themes
10026
10027         * tests/testtext.c: fix path to the immodules.
10028         
10029 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
10030
10031         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
10032         got munched by #endif.
10033
10034         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
10035
10036         * gtk/gtktreeview.c: Refactored code to clean up a number of
10037         events.
10038
10039         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
10040         values to make consistent with other functions.  Spotted by Jeff
10041         Franks <jcf@tpg.com.au>.
10042
10043         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
10044         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
10045
10046 2001-04-23  Sven Neumann  <sven@gimp.org>
10047
10048         * gtk/Makefile.am
10049         * gtk/gtkplug.c
10050         * gtk/gtksocket.c: on request of Owen, reverted my last change 
10051         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
10052
10053 2001-04-23  Sven Neumann  <sven@gimp.org>
10054
10055         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
10056         compile for non-X11 targets again
10057
10058 2001-04-20  Alexander Larsson  <alexl@redhat.com>
10059
10060         * gtk/gtkcolorsel.[ch]:
10061         API Change. Take GdkColor arguments instead of gdouble *.
10062         Leave the old gtk_color_selection_set_color for compatibility,
10063         but marked deprecated.
10064         Do correct rounding when converting RGB <-> HSV.
10065         
10066         * gtk/gtkcolorseldialog.c:
10067         * tests/testgtk.c:
10068         Use new GtkColorSelection API.
10069
10070         * gtk/gtkhsv.c:
10071         Fix problem selecting colors in triangle when Hue is 330.
10072         Fix some black dots around the HSB triangle.
10073         
10074         * gtk/gtkfilesel.c:
10075         return FALSE from the focus_in_event handler to fix focus problems.
10076
10077 2001-04-18  Havoc Pennington  <hp@redhat.com>
10078
10079         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
10080         set, so keybindings are configurable    
10081         (gtk_window_activate_default): Change to activate the focus widget
10082         instead if there's a focus widget, to be consistent with the
10083         behavior that previously existed in key_press_event
10084
10085 2001-04-18  Havoc Pennington  <hp@redhat.com>
10086
10087         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
10088
10089 2001-04-18  Havoc Pennington  <hp@redhat.com>
10090
10091         Close bug #50615:
10092         
10093         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
10094         the layout
10095
10096         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
10097
10098         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
10099
10100         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
10101         
10102         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
10103         to blue for base, in addition to bg
10104         
10105 2001-04-18  Havoc Pennington  <hp@redhat.com>
10106
10107         * tests/testgtk.c (create_image): allow shrinking the image window
10108         to test that we clip to allocation.
10109
10110         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
10111         #9845
10112
10113         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
10114
10115 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
10116
10117         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
10118         mode on shm segments to 0600. We'll see who complains.
10119
10120         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
10121         _gdk_windowing_window_destroy() AFTER recursing through
10122         children.
10123
10124         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
10125         testsocket_child on X.
10126
10127         * tests/testsocket[_child].c: Fix uses of
10128         gtk_window_get_default_accel_group().
10129
10130         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
10131
10132         * gdk/gdkimage.c: (gdk_image_get):
10133         Deal with the possibility that XGetImage() might return NULL.
10134         Allocate the GdkImagePrivate structure only after XGetImage()
10135         succeeds in order not to dereference a NULL ximage pointer.  This
10136         prevents a core dump when XGetImage() fails - which is unlikely,
10137         but can happen due to race conditions accessing the geometries of
10138         drawables.  An x error will still be triggered, but the gdk image
10139         wrapper at least wont seg fault.
10140         
10141 2001-04-18  Havoc Pennington  <hp@redhat.com>
10142
10143         * gtk/gtkimage.c: fix to properly queue resizes when the image is
10144         set
10145
10146         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
10147         if the insertion point isn't editable
10148
10149         * demos/gtk-demo/images.c: Added a GtkImage demo
10150
10151         * demos/gtk-demo/drawingarea.c: drawing area demo
10152         
10153         * demos/gtk-demo/menus.c (create_menu): cleanups
10154
10155 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
10156
10157         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
10158           gdk/x11/gdkevents-x11.c: Introduce an extra child
10159         of toplevel windows that serves to hold the focus to
10160         avoid events being delivered to embedded windows.
10161
10162         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
10163         some extra variables to clean up code and reduce the
10164         number of casts.
10165
10166         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
10167         guint for 1 bit bit fields, not gboolean.
10168
10169 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
10170
10171         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
10172         not TRUE. (Fixes #52925)
10173
10174 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
10175
10176         * Released 1.3.4
10177
10178         * NEWS: Updated
10179
10180         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
10181         use GTK_TYPE_ENUM.
10182
10183 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
10184
10185         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
10186
10187         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
10188         names to compatibility #defines so docs work.
10189
10190         * gtk/gtkenums.h: Remove GtkMenuFactoryType
10191
10192         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
10193
10194         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
10195
10196         * tests/testgtkrc: No magenta cursors, please.
10197
10198         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
10199
10200         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
10201         
10202 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
10203
10204         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
10205         grabs, since they are no longer necessary.
10206
10207         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
10208         by signal_connect() and call gtk_button_pressed() rather
10209         than signal_connect_after().
10210
10211         * tests/testgtk.c: Restore radio menu items to combos 
10212         since they'll look OK with Raleigh, and it is easier
10213         than finishing the process of removing them that was
10214         started earlier.
10215
10216 2001-04-16  Hans Breuer  <hans@breuer.org>
10217
10218         * gdk/gdk.def :
10219         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
10220
10221         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
10222         we are interested in the functions return value not the function address
10223         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
10224
10225         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
10226
10227 2001-04-14  Hans Breuer  <hans@breuer.org>
10228
10229         * gdk/gdk.def :
10230         * gdk/makefile.msc : updated
10231
10232         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
10233         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
10234         (the testgtk::text backgound pixmap is drawn again)
10235         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
10236         Win32 Pango change
10237         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
10238
10239         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
10240         Not sure if the returned settings have the right unit, because I couldn't
10241         find any docs for the X version ...
10242
10243         * gtk/gtk.def :
10244         * gtk/makefile.msc.in : updated
10245
10246 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
10247
10248         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
10249         wording problems. (Compared to version from Johannes Stezenbach to
10250         check correctness.)
10251
10252 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
10253
10254         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
10255         this to compile.
10256
10257 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
10258
10259         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
10260         not pixbufpos.
10261
10262         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
10263
10264         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
10265         are unsigned insts, therefore use g_value_set_uint.
10266         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
10267
10268 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
10269
10270         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
10271
10272         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
10273         GTK_TYPE_STRING.
10274
10275         * gtk/gtktreeview.c: New functions to allow initial column
10276         dragging work.
10277
10278         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
10279
10280         * tests/testtreefocus.c: give dave some love.
10281
10282         * tests/testtreesort.c: Modify test to check really long samples.
10283
10284 2001-04-11  Alexander Larsson  <alexl@redhat.com>
10285
10286         * gtk-2.0.m4: Pass pkg-config options
10287         before the other args so it works even if
10288         POSIXLY_CORRECT is set.
10289
10290 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
10291
10292         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
10293         0, interface 0).
10294
10295 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
10296
10297         * gtk/gtkcalendar.c (gtk_calendar_button_press):
10298         check for action_func != NULL
10299
10300 2001-04-04  Sven Neumann  <sven@gimp.org>
10301
10302         * tests/testgtk.c (test_init): corrected path to gtk.immodules
10303
10304 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
10305
10306         * Released Gtk+-1.3.3.
10307
10308 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
10309
10310         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
10311
10312 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
10313
10314         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
10315         files to/from source dir. (if we don't stay in builddir, we
10316         can't reach make-inline-pixbuf.
10317
10318         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
10319         deps.
10320
10321         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
10322         ages 0).
10323
10324 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
10325
10326         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
10327         moved to the GtkTreeSortable interface.
10328
10329         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
10330         Make more efficient (fixes #50262).
10331
10332 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
10333
10334         * NEWS: Updated.
10335
10336         * configure.in: Remove support for uninstalled glib.
10337
10338         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
10339         so as not to stop emission.
10340
10341         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
10342         is no longer supported.
10343
10344         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
10345         into tests, change build order to build modules before
10346         gtk/.
10347
10348         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
10349         to here.
10350
10351 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
10352
10353         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
10354         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
10355         GPatternSpec. this is actually unlikely to cause breakage in
10356         third-party apps since except for gle, pretty much ever caller
10357         passes NULL here.
10358
10359         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
10360
10361         * *.c: use g_pattern_*() API.
10362
10363         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
10364
10365         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
10366         directions aren't passed in.
10367
10368         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
10369         functionality to be usable from gtkstyle.c as well, give precedence
10370         for conversion to user-supplied parsers.
10371         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
10372
10373         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
10374         _gtk_settings_parse_convert() for rcporperty value conversion.
10375
10376 2001-04-03  Alexander Larsson  <alexl@redhat.com>
10377
10378         * gdk/linux-fb/gdkevents-fb.c:
10379         Add empty gdk_setting_get().
10380
10381 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
10382
10383         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
10384         variable names.
10385         
10386         * gtk/makeenums.pl: touch this so enum files get remade.
10387
10388 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
10389
10390         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
10391         work again when not sorted.
10392
10393         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
10394         and "expand_row" signal, closing bug 52578.
10395
10396         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
10397         support.
10398
10399         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
10400         support.
10401
10402 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
10403
10404         * gdk/gdkevents.h: Add GdkEventSetting event for notification
10405         of changes to system settings, gdk_setting_get() to retrieve
10406         a single system setting.
10407
10408         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
10409         to the draft XSETTINGS mechanism.
10410
10411         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
10412         XSETTINGS.
10413
10414         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
10415         of GDK settings changes to the GtkSettings object.
10416
10417         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
10418         double-click-timeout property to GDK.
10419
10420         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
10421         Define GDK boxed types here.
10422
10423         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
10424         gdk/gdkenumtypes.[ch] for enum definitions.
10425
10426         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
10427         * gtk/gtk-boxed.defs: Comment out GDK types
10428         * gtk/gtktypeutils.h: Remove GDK types
10429         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
10430
10431 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
10432
10433         * Applied patch from Ron Steinke to add signal accumulators
10434         so that signals with the convention 'TRUE return means
10435         handled' stop emission on a TRUE return.
10436
10437         * gtk/gtkmain.[ch]: Add private accumulator 
10438         _gtk_boolean_handled_accumulator, used throughout GTK+.
10439         
10440         * gtk/gtkspinbutton.c: Add accumulator for ::output.
10441
10442         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
10443         
10444         * gtk/gtkwidget.c: Add accumulators for event signals,
10445         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
10446         for ::mnemonic-activate.
10447
10448         * gtk/gtkwindow.c: Add accumulator for ::frame_event
10449
10450 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
10451
10452         * gtk/gtkwidget.c: Add missing include.
10453
10454 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
10455
10456         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
10457         marshaller.
10458
10459         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
10460         "changed" signal to "range_changed".
10461
10462         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
10463         removing a tree from one model would remove all trees from that
10464         model.
10465         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
10466         changed signal instead.
10467
10468 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
10469
10470         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
10471         chaining up to parent impl, since we have a INPUT_ONLY
10472         window.
10473
10474         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
10475         foreground color for the cursor.
10476
10477 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
10478
10479         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
10480         param spec when caching property values, since we unref it
10481         later when we free the style.
10482
10483         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
10484         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
10485
10486 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
10487
10488         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
10489         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
10490         stupidity.
10491
10492 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
10493
10494         [ First pass at adding style properties. Still needs some definite
10495         fine-tuning. ]
10496
10497         * gtk/gtkbutton.c: Add ::default_spacing style property.
10498          
10499         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
10500         ::indicator_spacing style properties.
10501
10502         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
10503         style properties.
10504
10505         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
10506         rather than a normal property.
10507
10508         * gtk/gtkwidget.c: Add an ::interior_focus style property to
10509         draw focus inside buttons, in the Windows/Java Metal/etc. style.
10510
10511         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
10512         Honor ::interior_focus.
10513         
10514         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
10515         TRUE.
10516
10517         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
10518         Add ::slider_width, ::trough_border, ::stepper_size,
10519         ::stepper_spacing style properties.
10520
10521         * gtk/gtkscale.[ch] Add ::slider-length style property.
10522
10523 2001-04-02 Alexander Larsson   <alexl@redhat.com>
10524
10525         * gdk/linux-fb/gdkwindow-fb.c:
10526         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
10527         warnings that were spewed on startup.
10528
10529         * gtk/gtkwindow-decorate.c:
10530         gtk_window_reposition -> _gtk_window_reposition
10531
10532 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
10533
10534         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
10535         Add boxed type for GtkRequistion. Use it for ::size-request.
10536
10537         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
10538         Add a new GtkBorder structure useful for geometry properties
10539         for widgets. Add corresponding GTK_TYPE_BORDER.
10540         
10541         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
10542         Support automatic parser selection like
10543         gtk_settings_install_property_parser().
10544
10545         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
10546         functionality for use by gtk_widget_class_install_style_property.
10547         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
10548
10549 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
10550
10551         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
10552         g_param_spec_unichar(). 
10553
10554 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
10555
10556         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
10557         _NET window managers.
10558
10559         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
10560
10561 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
10562
10563         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
10564         bad needs to be nuked, not just deprecated.
10565
10566         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
10567         gtk_widget_popup().
10568
10569         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
10570         
10571         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
10572         widget.
10573         
10574         * docs/Changes-2.0.txt: updates.
10575         
10576 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
10577
10578         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
10579         for (i = 0; i < 100; i ++)
10580           g_print ("I will confirm it compile before committing\n");
10581
10582 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
10583
10584         * gtk/gtktreestore.c: Initial work on implementing the
10585         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
10586
10587 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
10588
10589         * gtk/gtkwidget.c: fixed a bunch of notifications, added
10590         reference counts around emissions where the widget is used afterwards.
10591         added freeze/thaws around multiple properties being notified.
10592         (_gtk_widget_get_aux_info): cleanups.
10593         
10594         * gtk/gtksettings.c (gtk_settings_install_property): provide
10595         default parsing functions for gdkcolor, enums and flags.
10596
10597         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
10598         applied by owen.
10599         backed out gtk_window_get_location(), gtk_window_set_location(),
10600         gtk_window_get_size() and gtk_window_set_size(), these
10601         have to be sorted out wrg x/y/width/height/default_with/default_height
10602         properties.
10603         kept a flag in GtkWindowGeometryInfo to handle user
10604         resetting default sizes.
10605         cleaned up ZVT comments.
10606         bunch of assorted bug fixes, notification fixes.
10607         (_gtk_window_reposition): make this a really internal function.
10608         
10609         * gtk/testgtk.c: fixups.
10610         
10611 2001-03-31  Hans Breuer  <hans@breuer.org>
10612
10613         * config.h.win32.in : disable USE_MMX for msvc build cause
10614         the assembler doesn't fit and is out of my scope. Disable
10615         USE_GMODULE for msvc build as wel. The right way to share
10616         binaries on win32 would be to use libtiff.dll etc. To reduce
10617         installation hassles IMO it's better to include all fileformats
10618         builtin to gdk-pixbuf
10619
10620         * gdk-pixbuf/makefile.msc : new file
10621
10622         * gdk/gdk.def : updated
10623
10624         * gdk/win32/gdkevents-win32.c : don't erase the background if
10625         .no_bg is set. It improves the scrolling (e.g. of testgtk main
10626         buttons
10627         * gdk/win32/gdkgeometry-win32.c : added comment about the above
10628
10629         * gdk/win32/gdkwindow-win32.c : added three new functions like
10630         the X version. Only one is implemented, because the other two
10631         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
10632         be default behaviour on win32 anyway ...
10633
10634         * gtk/gtk.def : updated
10635
10636         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
10637         from where it was built and add an additional rule to automagically
10638         build gtkmarshal.[hc]
10639
10640         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
10641         before array access for the current entry isn't finished
10642
10643         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
10644         use g_return_val_if_fail
10645
10646         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
10647         for the static array, but let the compiler calculate it. It
10648         makes me wonder if gcc isn't capable to catch bugs like this ...
10649
10650 2001-03-31  James Henstridge  <james@daa.com.au>
10651
10652         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
10653         constant "-1" in the aux info structure.
10654
10655 2001-03-30  Alexander Larsson  <alexl@redhat.com>
10656
10657         * gtk/gtkbutton.c (gtk_button_get_property):
10658         * gtk/gtklabel.c:
10659         Remove leaks.
10660         
10661         * gtk/gtkcontainer.c:
10662         * gtk/gtkhscale.c:
10663         * gtk/gtkhscrollbar.c:
10664         * gtk/gtklayout.c:
10665         * gtk/gtkmisc.c:
10666         * gtk/gtkprogress.c:
10667         * gtk/gtkprogressbar.c:
10668         * gtk/gtkrange.c:
10669         * gtk/gtktable.c:
10670         * gtk/gtkviewport.c:
10671         * gtk/gtkvscale.c:
10672         * gtk/gtkvscrollbar.c:
10673         * gtk/gtkwidget.c:
10674         Property patches, based on patches from John Margaglione and Lee Mallabone.
10675
10676 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
10677
10678         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
10679         adjustment. Cleaned redundant preconditions (spin != NULL). Added
10680         inline API function docs.
10681         (gtk_spin_button_new_with_range): New convenience constructor.
10682         (gtk_spin_button_set_increments): New adjustment helper.
10683         (gtk_spin_button_set_range): New adjustment helper.
10684
10685         * gtk/testgtk.c : added test of the new convenince constructor and
10686         value_changed signals.
10687
10688 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
10689
10690         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
10691         listen to the reorder signal.
10692
10693 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
10694
10695         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
10696         to get the aux info structure fo the widget.
10697
10698         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
10699         above function.
10700
10701         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
10702
10703         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
10704         to get the size of the window manager frame, basically the same
10705         code that gdk_window_get_root_origin() had
10706         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
10707
10708         * gtk/gtkwindow.c (gtk_window_set_default_size): use
10709         gdk_window_resize() if the window is realized and resizeable
10710
10711         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
10712         typo so that setting gravity works
10713
10714         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
10715         allocation if auto_shrink is on, even if the default size
10716         has not changed.
10717
10718         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
10719         g_return_if_fail
10720
10721 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
10722
10723         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
10724         reordering/sorting work.  Now pretty much works.
10725
10726         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
10727         reorder mostly work.  Still need to get the parity correct.
10728
10729         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
10730         signal, so I can listen for the sort_column_changed signal so I
10731         can change my "sort_indicator" property.  Cool.
10732
10733 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
10734
10735         [ Patch from Havoc Pennington, hp@redhat.com ]
10736
10737         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
10738         Add functions gdk_window_begin_resize_drag/begin_move_drag
10739         to start resizing or moving a toplevel window. This
10740         is done either using the _NET_WM_MOVERESIZE protocol,
10741         or, if that isn't present, by emulation.
10742
10743         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
10744         to export the above to GTK+-land.
10745
10746         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
10747         
10748         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
10749         Move this function into gdkwindow, since we need it
10750         when implementing fallback resizing.
10751
10752         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
10753         Fix typo when setting gravity.
10754
10755         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
10756         Add an optional (but on by default) resize grip for resizing 
10757         the parent window.
10758
10759 01-03-29  Alexander Larsson  <alexl@redhat.com>
10760
10761         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
10762         Don't return TRUE from the event handler, that blocks all
10763         event signals on the tooltip widget. Now you can press buttons
10764         in toolbars again.
10765
10766 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
10767
10768         * gtk/testtext.c (create_buffer): Add missing NULL on
10769         valist.
10770
10771         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
10772         c-n-p problem with INCONSISTENT property.
10773
10774         [ Patch from Havoc Pennington  <hp@redhat.com> ]
10775
10776         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
10777         hook.
10778
10779         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
10780         signal as a hook for extending the default popup menu
10781
10782         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
10783         use radio menu items for the input method menuitems
10784
10785         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
10786         inserted unicode from Ctrl-Shift-hex input method
10787
10788         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
10789         validatation here, already done at GtkTextBuffer level.
10790
10791         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
10792         popup_menu run action signal and Shift+F10 and Menu keybindings.
10793
10794         * gtk/gtkentry.c: implement a default handler for popup_menu
10795
10796         * gtk/gtktextview.c: implement a default handler for popup_menu
10797
10798         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
10799         from a key event
10800         
10801         * gtk/gtklabel.c: remove "trailer" cruft
10802
10803 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
10804
10805         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
10806         handle reordering of trees.  Seems to mostly work w/ the exception
10807         of the parity flag.
10808
10809         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
10810         signal.
10811
10812 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
10813
10814         * gtk/gtkwidget.h: c++ fixes.
10815
10816 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
10817
10818         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
10819         memory.
10820
10821 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
10822
10823         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
10824         Nils Barth fixing event return values. (#51041)
10825
10826         * gtk/gtkwidget.c: Fix some return values for default
10827         functions.
10828
10829         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
10830         return values for trough_keys functions.
10831
10832         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
10833         value for add_accelerator (shoudl have been a void
10834         return.)
10835
10836         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
10837         Fix return type of EVENT.
10838
10839         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
10840         signal return a boolean.
10841
10842 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
10843
10844         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
10845         reordered signal.
10846
10847         * tests/testtreesort.c (main): fix spelling.
10848
10849 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
10850
10851         * gtk/gtkliststore.c: More work on implementing sortable
10852         interface.
10853
10854 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
10855
10856         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
10857         reference the widgets in the resulting list. (#11821)
10858         This makes this consistent with gtk_container_children.
10859
10860         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
10861         uses of gtk_window_list_toplevels.
10862
10863 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
10864
10865         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
10866         a virtual function to set whether the IM context should use 
10867         the preedit string. (#51922)
10868         
10869 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
10870
10871         * gdk/gdkpango.h: Remove stale FIXME comment.
10872
10873 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
10874
10875         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
10876         Fixed bug that returned NULL if a filename was selected.
10877
10878 2001-03-24  Havoc Pennington  <hp@pobox.com>
10879
10880         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
10881         to contain the word "theme"
10882
10883 2001-03-24  Havoc Pennington  <hp@pobox.com>
10884
10885         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
10886         slower but finer-grained
10887         (gtk_hsv_focus): get initial focus on the ring or triangle 
10888         according to tab direction
10889
10890         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
10891
10892 2001-03-23  Havoc Pennington  <hp@pobox.com>
10893
10894         * gtk/gtkhsv.c: make this somewhat key-navigable
10895
10896         * gtk/gtkfontsel.c: mnemonics
10897
10898         * gtk/gtkgamma.c: mnemonics
10899
10900         * gtk/gtkcolorsel.c: add mnemonics to labels
10901
10902 2001-03-22  Havoc Pennington  <hp@pobox.com>
10903
10904         Applied big patch from Seth Lytle to fix event handler return
10905         values, slightly modified.
10906
10907         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
10908         handled.
10909         (gtk_calendar_key_press): return TRUE for GDK_space triggers
10910         select_day
10911
10912         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
10913         (gtk_clist_button_release): return TRUE if handled
10914
10915         * gtk/gtkcolorsel.c (mouse_release):
10916         (palette_activate): 
10917         (palette_press): 
10918         (palette_new): 
10919         (mouse_press): 
10920         (get_screen_color): 
10921         fixed return type (void to gboolean), return TRUE,
10922         added GTK_SIGNAL_FUNC cast
10923
10924         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
10925         (void to gboolean), and return TRUE
10926         (gtk_combo_button_release): changed return value to TRUE after
10927         gtk_grab_add on combo->popwin
10928
10929         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
10930         collapse or expand
10931
10932         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
10933         button/motion
10934
10935         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
10936         press/release and motion that trigger act
10937
10938         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
10939
10940         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
10941         for GDK_Return
10942         
10943         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
10944         (gtk_list_button_release): return TRUE if selection
10945
10946         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
10947         press
10948
10949         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
10950         (gtk_menu_shell_button_release): chain parent_menu_shell retval
10951
10952         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
10953         nothing triggered
10954         (gtk_notebook_button_release): return TRUE if we do anything
10955
10956         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
10957         (gtk_spin_button_button_release): return TRUE or chained retval
10958
10959         * gtk/gtktext.c (gtk_text_button_press): 
10960         (gtk_text_button_release): return TRUE
10961         (gtk_text_key_press): remove redundant retval code
10962         
10963         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
10964         and sensitive
10965         (gtk_tree_item_subtree_button_click): changed type to gint, and return
10966         TRUE if sensitive
10967
10968         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
10969         return TRUE
10970
10971 2001-03-23  Havoc Pennington  <hp@redhat.com>
10972
10973         * gtk/testgtk.c: fix warnings
10974
10975         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
10976
10977         * gtk/gtktextview.c: fix warnings
10978
10979         * gtk/gtktext.c (find_cursor_at_line): fix warning
10980
10981         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
10982
10983         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
10984         of this function
10985
10986         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
10987         fix warning
10988
10989         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
10990
10991         * gtk/gtkfontsel.c: fix warning
10992
10993         * gtk/gtkcolorsel.c: fix warnings
10994
10995 2001-03-23  Havoc Pennington  <hp@redhat.com>
10996
10997         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
10998
10999         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
11000
11001         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
11002         and deprecated gtk_check_menu_item_set_show_toggle().
11003         
11004         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
11005
11006         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
11007
11008         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
11009
11010 2001-03-23  Havoc Pennington  <hp@redhat.com>
11011
11012         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
11013         some docs
11014
11015 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
11016
11017         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
11018         this.
11019
11020         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
11021         set_cell to set_value
11022
11023         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
11024         set_cell to set_value
11025
11026 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
11027
11028         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
11029         fix braino.
11030         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
11031         support.
11032
11033         * gtk/gtktreeview.c: Addition of initial sortable support.
11034
11035         * gtk/gtktreestore.c: Addition of initial sortable support.
11036
11037         * gtk/gtkliststore.c: Addition of initial sortable support.
11038
11039         * gtk/gtkmarshal.list: yet another marshaller.
11040
11041         * gtk/gtktreedatallist.[ch]: shared code between the store models
11042         for handling sorting headers.
11043
11044 2001-03-22  Havoc Pennington  <hp@redhat.com>
11045
11046         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
11047         (gtk_container_unset_focus_chain): Add ability to override the 
11048         focus chain for a container explicitly
11049
11050 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
11051
11052         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
11053         added PROP_MNEMONIC_WIDGET.
11054
11055         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
11056         (gtk_window_remove_mnemonic): 
11057         (gtk_window_add_mnemonic): fixed assertions.
11058         (gtk_window_activate_mnemonic): constrain modifier checks to those
11059         permitted by gtk_accelerator_get_default_mod_mask().
11060         got rid of gtk_window_get_default_accel_group().
11061
11062         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
11063         activatable widgets either by focussing or a warning.
11064         added a signal accumulator to ::activate_mnemonic which stops the
11065         emission once a handler returned TRUE.
11066
11067 2001-03-22  Havoc Pennington  <hp@pobox.com>
11068
11069         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
11070         the stock item label
11071
11072         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
11073
11074         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
11075
11076         * demos/gtk-demo/*.c: Add mnemonics all over the place
11077
11078         * gtk/gtklabel.h: mark parse_uline deprecated
11079
11080 2001-03-21  Alexander Larsson  <alexl@redhat.com>
11081
11082         * gtk/gtkitemfactory.[ch]:
11083         Add support for stock and normal imagemenuitems.
11084         
11085         * gtk/testgtk.c:
11086         Add some tests for mnemonics, stock toolbars, stock
11087         and image menuitems in itemfactory and gdk_window_scroll.
11088
11089 2001-03-21  Alexander Larsson  <alexl@redhat.com>
11090
11091         * gtk/gtkbutton.[ch]:
11092         * gtk/gtkdialog.c:
11093         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
11094         removed accel_group argument. Renamed gtk_button_new_accel() to
11095         gtk_button_new_with_mnemonic() and removed accel_group argument.
11096
11097         * gtk/gtkcheckbutton.[ch]:
11098         New function gtk_check_button_new_with_mnemonic().
11099
11100         * gtk/gtkentry.c:
11101         Override activate_mnemonic and just grab focus.
11102
11103         * gtk/gtkitemfactory.c:
11104         Don't add menu uline accel group, instead use mnemonics support.
11105
11106         * gtk/gtklabel.[ch]:
11107         New support for mnemonics.
11108
11109         * gtk/gtkmarshal.list:
11110         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
11111
11112         * gtk/gtkmenu.[c]:
11113         * gtkmenushell.c:
11114         Use mnemonics instead of accel groups for uline
11115         support in menu items.
11116         Removed gtk_menu_get_uline_accel_group() and
11117         gtk_menu_ensure_uline_accel_group().
11118
11119         * gtk/gtkmenuitem.c:
11120         Override activate_mnemonic to handle switching between
11121         menu items if there are collisions.
11122         
11123         * gtk/gtknotebook.c:
11124         Connect to activate_mnemonic on the tab_label, so that
11125         activating it switches to that notebook page.
11126
11127         * gtk/gtkwidget.[ch]:
11128         Add activate_mnemonic signal. New function
11129         gtk_widget_activate_mnemonic() to emit it.
11130         Default implementation does activate/grab_focus.
11131
11132         * gtk/gtkwindow.[ch]:
11133         Add support for mnemonics in windows.
11134         New functions:
11135         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
11136         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
11137
11138         * gtk/testgtk.c:
11139         Update to function name changes.
11140         
11141 2001-03-21  Alexander Larsson  <alexl@redhat.com>
11142
11143         * gtk/gtkimagemenuitem.[c]:
11144         Add gtk_image_menu_item_new_from_stock()
11145
11146 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
11147
11148         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
11149         Fix buglet in meeting.
11150
11151 2001-03-19  Havoc Pennington  <hp@redhat.com>
11152
11153         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
11154         add a bunch of accessor functions. This is because we have
11155         reasonable expectations of extending what fields it contains in
11156         the future.
11157
11158         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
11159         changes
11160
11161         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
11162         GtkIconSource   
11163
11164 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
11165
11166         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
11167         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
11168
11169         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
11170           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
11171           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
11172           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
11173         Change float to double everywhere with the exception of 0<->1.0 alignment
11174         and GtkCurve.
11175
11176 2001-03-19  Tor Lillqvist  <tml@iki.fi>
11177
11178         * gdk/win32/gdkdrawable-win32.c
11179         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
11180         output.
11181
11182         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
11183         gdkwin32.h.
11184
11185 2001-03-18  Tor Lillqvist  <tml@iki.fi>
11186
11187         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
11188         print_event_state, print_event): Use preprocessor macro to make
11189         code more compact. Print also GDK_WINDOW_STATE events.
11190         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
11191         
11192         * gtk/gtk.def
11193         * gtk/makefile.mingw.in: Update.
11194
11195         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
11196         to catch also Cygwin.
11197
11198 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
11199
11200         * gtk/gtkspinbutton.[hc]: added rc-style argument
11201         GtkSpinButton::shadow_type.
11202         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
11203         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
11204         rc-style settings.
11205
11206         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
11207
11208         * gtk/gtkwidget.c: quark cleanups.
11209
11210         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
11211         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
11212         to create_rc_style() (we don't do cloning in standard OO sense).
11213         added per rc style properties.
11214         
11215         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
11216         property values and for caching those. some cleanups.
11217         
11218         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
11219         
11220         * gtk/gtksettings.[hc]: new file for global rc-file properties
11221         (at least currently, should get extended to support X properties
11222         and other communication mechanisms).
11223         
11224         * gtk/gtkwidget.[hc]: added style property support:
11225         (gtk_widget_class_install_style_property_parser): install style
11226         property pspec with parser function for rc-file values other
11227         than LONG, DOUBLE or STRING.
11228         (gtk_widget_class_install_style_property): same as above without
11229         parser (parsers are going to be needed quite infrequently).
11230         (gtk_widget_style_get_property): retrive style property value.
11231         (gtk_widget_style_get_valist): same as above with varargs support,
11232         has NOCOPY semantics.
11233         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
11234
11235 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
11236
11237         * demos/gtk-demo/main.c (row_activated_cb): modified to use
11238         "row_activated" signal.
11239
11240         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
11241         stupidity.  Lets actually pass in the row with this signal...
11242
11243 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
11244
11245         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
11246
11247         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
11248
11249         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
11250         everything into the ::destroy function, and freed a lot more.
11251
11252 2001-03-16  Havoc Pennington  <hp@redhat.com>
11253
11254         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
11255         instead of gint16, to avoid overflow issues, since sizes > 16-bit
11256         are now allowed.
11257
11258 2001-03-16  Havoc Pennington  <hp@redhat.com>
11259
11260         * Applied patch from Nils Barth (bug # 51041) to 
11261         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
11262         in various places.
11263
11264 2001-03-15  Havoc Pennington  <hp@redhat.com>
11265         
11266         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
11267         for properties to set on the tag.
11268
11269         * gtk/testtext.c: fixups to reflect create_tag change
11270         
11271         * gtk/gtktexttag.c (gtk_text_tag_set_property):
11272         background/foreground stipple are objects, not boxed.
11273
11274         * demos/gtk-demo/textview.c: intellihancing
11275
11276 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
11277
11278         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
11279         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
11280
11281 2001-03-16  Alexander Larsson  <alexl@redhat.com>
11282
11283         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
11284         Fix sign error with queued region translations.
11285
11286 2001-03-15  HideToshi Tajima  <tajima@happy>
11287
11288         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
11289         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
11290         * gtk/gtkentry.c (update_im_cursor_location): 
11291         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
11292         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
11293         set_cursor_pos to set_cursor_location in GtkInputContext class
11294
11295 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
11296
11297         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
11298         the location of the cell relative to its area.
11299         * gtk/gtkcell*: modified for above change
11300         * gtk/gtktreeview.c: modified for above change.
11301
11302 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
11303
11304         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
11305          (gtk_tree_view_finalize): actually unref the model.  Thanks to
11306         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
11307
11308 2001-03-14  Havoc Pennington  <hp@redhat.com>
11309
11310         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
11311         
11312         * gtk/gtk.h: remove gtkdata.h
11313
11314         * gtk/Makefile.am: remove gtkdata
11315         
11316         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
11317         not "disconnect" on the adjustments.
11318         
11319         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
11320         GtkData
11321
11322         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
11323         not GtkData
11324
11325         * configure.in: handle case where X render exists, but Pango lacks
11326         Xft support.
11327
11328 2001-03-15 Alexander Larsson  <alexl@redhat.com>
11329
11330         * gtk/gtktoolbar.[ch]:
11331         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
11332         to add stock items to toolbars.
11333
11334         * gtk/Makefile.am:
11335         Remove ../gdk/gdkim.h from gdk_headers.
11336
11337 2001-03-15  Sven Neumann  <sven@gimp.org>
11338
11339         * gdk/gdkim.h: removed
11340         
11341         * gdk/gdkprivate.h
11342         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
11343
11344 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
11345
11346         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
11347         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
11348         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
11349         set_cursor_pos() virtual method
11350
11351         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
11352         (gtk_im_context_xim_set_cursor_pos): add implementation for
11353         set_cursor_pos() method
11354
11355         * gtk/gtkentry.c (recompute_idle_func): set current cursor
11356         position to input methods
11357
11358 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
11359
11360         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
11361         code a lot.
11362
11363         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
11364         g_mem_chunk.
11365         (_gtk_tree_data_list_alloc): use g_mem_chunk.
11366         (_gtk_tree_data_list_node_to_value): Fix to switch on
11367         G_TYPE_FUNDAMENTAL.
11368         (_gtk_tree_data_list_value_to_node): Fix to switch on
11369         G_TYPE_FUNDAMENTAL.
11370         (_gtk_tree_data_list_node_copy): Fix to switch on
11371         G_TYPE_FUNDAMENTAL.
11372
11373 2001-03-12  Havoc Pennington  <hp@redhat.com>
11374
11375         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
11376         to convert to new property API. Also, change default_width and
11377         default_height get_property to return 0 as the flag value for
11378         "unset"; -1 is not a valid value for these fields.
11379
11380 2001-03-12  Havoc Pennington  <hp@redhat.com>
11381
11382         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
11383         enum with registration for icon sizes, instead of strings.
11384
11385         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
11386         gtkwidget.c: Fix to reflect GtkIconSize
11387         
11388 2001-03-12  Alexander Larsson  <alexl@redhat.com>
11389
11390         Make GtkFB compile and link.
11391         
11392         * gdk/linux-fb/gdkdrawable-fb2.c:
11393         window->mapped to GDK_WINDOW_IS_MAPPED(). 
11394         
11395         * gdk/linux-fb/gdkwindow-fb.c:
11396         window->mapped to GDK_WINDOW_IS_MAPPED(). 
11397         Added gdk_window_shape_combine_region.
11398         Added assorted placeholders for unimplemented new GdkWindow API calls.
11399
11400 2001-03-12  Alexander Larsson  <alexl@redhat.com>
11401
11402         * gtk/gtkfilesel.c:
11403         Add more test when converting filenames from/to utf-8.
11404         Don't allow entering text in the filename entry which isn't allowed in
11405         a filename. Just beep instead.
11406
11407 2001-03-12  Alexander Larsson  <alexl@redhat.com>
11408
11409         * gtk/gtkclist.c:
11410         Scroll using gdk_window_scroll(). Don't wait for exposes.
11411         Move the column headers in an order that makes them flash less.
11412
11413 2001-03-10  Hans Breuer  <hans@breuer.org>
11414
11415         * gdk/gdk.def : updated
11416
11417         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
11418         to offseting the clip_mask at the right place
11419
11420         * gdk/win32/gdkwindow-win32.c : don't create background brushes
11421         for all the gdkClasses, especially not for the input_only case.
11422         Otherwise flickering wont be avoidable, because we don't get
11423         WM_ERASEBKGND message for these windows.
11424
11425         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
11426         and fixed massive redraw problems apparently triggered by Alexanders 
11427         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
11428         but it seems to work quite well :-)
11429
11430         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
11431         prototype
11432
11433 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
11434
11435         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
11436         (gtk_list_store_set_cell): Fix a stupid typo.
11437
11438 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
11439
11440         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
11441         select_all not work if you're in SINGLE mode (it doesn't make that
11442         much sense, anyway.)
11443
11444         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
11445         handle types more sanely.
11446         (_gtk_tree_data_list_value_to_node): handle types more sanely.
11447         (_gtk_tree_data_list_node_copy): handle types more sanely.
11448
11449         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
11450         GValue better. Converts the type as well.
11451
11452         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
11453         GValue better. Converts the type as well.
11454
11455 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
11456
11457         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
11458         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
11459         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
11460         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
11461
11462         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
11463         gdk_im/gdk_ic.
11464
11465 2001-03-09  Hans Breuer  <hans@breuer.org>
11466
11467         * gdk/gdk.def : updated
11468
11469         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
11470         for their palette
11471
11472         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
11473         removing
11474
11475         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
11476         removing and implemented Havoc's GdkWindow state functions; 
11477         stick/unstick only as no-op, cause I don't know how to emulate 
11478         on win32 ...
11479
11480         * gtk/gtk.def : updated
11481
11482         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
11483
11484         * gtk/gtktypeutils.c : #include <string.h>
11485
11486         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
11487
11488 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
11489
11490         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
11491         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
11492         not a boxed.
11493
11494 2001-03-09  Alexander Larsson  <alexl@redhat.com>
11495
11496         * docs/Changes-2.0.txt:
11497         Document expose event->region change and that gtk_widget_event
11498         doesn't allow passing expose events.
11499
11500         * gdk/gdkevents.h:
11501         Add region to expose event.
11502         
11503         * gdk/gdkevents.c:
11504         Handle event->region in gdk_event_copy() and gdk_event_free().
11505
11506         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
11507         Generate expose_event->region when creating expose events.
11508
11509         * gdk/x11/gdkevents-x11.c:
11510         Generate expose events with regions when translating X events.
11511
11512         * gtk/gtkcontainer.[ch]:
11513         Default expose handler that propagates expose events to NO_WINDOW
11514         children. New function gtk_container_propagate_expose()
11515
11516         * gtk/gtkwidget.[ch]:
11517         Moved gtk_widget_event implementation to gtk_widget_event_internal.
11518         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
11519         expose events. New function gtk_widget_send_expose() to send expose
11520         events. New function gtk_widget_region_intersect() to calculate
11521         window/region intersections.
11522         
11523         * gtk/gtkmain.c (gtk_main_do_event):
11524         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
11525         Use gtk_widget_send_expose() to send expose events.
11526         
11527         * gtk/gtkbin.c:
11528         * gtk/gtkbox.c:
11529         * gtk/gtkfixed.c:
11530         * gtk/gtkimagemenuitem.c:
11531         * gtk/gtklist.c:
11532         * gtk/gtkpacker.c:
11533         * gtk/gtktable.c:
11534         * gtk/gtktree.c:
11535         Remove expose handler, using the default container implementation
11536         instead.
11537         
11538         * gtk/gtkbutton.c:
11539         * gtk/gtkcheckbutton.c:
11540         * gtk/gtkeventbox.c:
11541         * gtk/gtkfixed.c:
11542         * gtk/gtkhandlebox.c:
11543         * gtk/gtklayout.c:
11544         * gtk/gtklistitem.c:
11545         * gtk/gtkmenu.c:
11546         * gtk/gtkmenubar.c:
11547         * gtk/gtkmenuitem.c:
11548         * gtk/gtknotebook.c:
11549         * gtk/gtkoptionmenu.c:
11550         * gtk/gtkpaned.c:
11551         * gtk/gtkscrolledwindow.c:
11552         * gtk/gtktogglebutton.c:
11553         * gtk/gtktoolbar.c:
11554         * gtk/gtktreeitem.c:
11555         * gtk/gtkviewport.c:
11556         Chain expose handler to parent class handler. Use
11557         gtk_container_propagate_expose() to propagate exposes.
11558
11559         * gtk/gtkclist.c (check_exposures):
11560         * gtk/gtktext.c (process_exposes):
11561         Use gtk_widget_send_expose instead of gtk_widget_event.
11562
11563 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
11564
11565         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
11566
11567 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
11568
11569         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
11570         unref the nodes.   Fixes bug #50058.
11571
11572         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
11573         "::ref_iter" to "::ref_node".
11574         (gtk_tree_model_unref_node): change "::unref_iter" to
11575         "::unref_node". Fixes bug #50064.
11576
11577 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
11578
11579         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
11580         support for invisible cells.
11581          (gtk_tree_view_bin_expose): ditto
11582
11583 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
11584
11585         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
11586         on gobjects.
11587
11588         * tests/testtreefocus.c (main): New test file.
11589
11590         * tests/testtreeview.c: update to latest glib changes.
11591
11592         * tests/testtreecolumns.c: update to latest glib changes.
11593
11594 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
11595
11596         * gtk/testgtk.c: re-enabled event watcher emission hooks.
11597
11598 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
11599
11600         * *.c: added accumulator data argument to g_signal_newc()
11601         functions.
11602
11603         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
11604         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
11605         * gtk/treestoretest.c (make_window):
11606         s/g_signal_connect/g_signal_connectc/.
11607
11608         * gtk/gtktextbuffer.c: completed signal arg fixups,
11609         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
11610
11611 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
11612
11613         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
11614         G_CONST_RETURN.
11615
11616         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
11617         ::hierarchy-changed signal when a widget changes
11618         from anchored to unanchored or vice versa.
11619         (anchored means 
11620          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
11621         Use a private flag to keep track of this efficiently.
11622
11623 2001-03-07  Havoc Pennington  <hp@redhat.com>
11624
11625         * gtk/testgtk.c (create_spins): uglify so that size request gets
11626         tested.
11627
11628         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
11629         request on values for upper/lower, completes #6152
11630
11631 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
11632
11633         * Makefile.am: Remove gtk-config-2.0 again.
11634         (Grrrr, pkg-config. And stops make loops.)
11635
11636 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
11637
11638         * gtk/gtksignal.[hc]: removed old emission hook API.
11639         
11640         * docs/Changes-2.0.txt: fixed sections.
11641         
11642         * gtk/gtktextbuffer.c: signal arg fixups.
11643
11644 2001-03-07  Havoc Pennington  <hp@redhat.com>
11645
11646         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
11647
11648         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
11649         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
11650         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
11651         validation and the redraw which is higher priority than the
11652         validation.
11653
11654 2001-03-07  Havoc Pennington  <hp@redhat.com>
11655
11656         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
11657         (gtk_entry_set_property): remove trailer
11658
11659         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
11660         (gtk_entry_get_width_chars): new functions, to set size request to 
11661         a given number of characters
11662
11663         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
11664
11665         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
11666         (gtk_dialog_get_has_separator): new function
11667         (run_delete_handler): fix to not emit "response" signal
11668         because we already did in the delete event handler installed
11669         at dialog creation time.
11670         
11671         * gtk/gtkdialog.h: add a has_separator property,
11672         add GTK_DIALOG_NO_SEPARATOR flag
11673
11674 2001-03-07  Havoc Pennington  <hp@redhat.com>
11675
11676         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
11677         off decorations for a window.
11678
11679         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
11680         changes
11681
11682         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
11683         to get location of PangoLayout inside the label, closes #51198
11684
11685         * gtk/testgtk.c (create_bbox): fix up button box usage
11686
11687         * gtk/testcalendar.c (create_calendar): fix up button box usage
11688
11689         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
11690
11691         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
11692
11693         * gtk/gtkhbbox.h: deprecations
11694
11695         * gtk/gtkvbbox.h: deprecations
11696
11697         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
11698         emulate deprecated gtk_button_box_get_spacing
11699
11700         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
11701         the "set global default" functions
11702         (struct _GtkButtonBox): remove "spacing" field, use the one from 
11703         GtkBox base class
11704
11705         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
11706
11707         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
11708         render the icon, return the missing image icon.
11709
11710         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
11711         image icon if the load fails.   
11712
11713         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
11714         when no image is found; should be the Netscape "missing image"
11715         icon eventually but for now is a random image
11716
11717         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
11718         role for the session manager
11719
11720         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
11721
11722         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
11723         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
11724
11725         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
11726
11727 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
11728
11729         * gtk/*.c: marshaller fixes.
11730         
11731         * gtk/gtkmarshal.list: extreme cleanup.
11732
11733         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
11734         param spec for now.
11735
11736         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
11737         where appliable.
11738
11739         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
11740         special cased autogenerated boxed types from gtktypebuiltins_ids.c
11741         which are not reference counted:
11742         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
11743         PangoFontDescription, GtkTreeIter and GtkTreePath.
11744
11745 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
11746
11747         * gtk/gtktreeselection.h: 
11748         * gtk/gtktreemodel.c:
11749         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
11750         file should be included directly, and gobject/gmarshal.h
11751         as well as gtk/gtkmarshal.h even can't be included directly.
11752
11753         * Makefile.am: grr, install gtk-config-2.0.
11754
11755         * gtk/testgtk.c:
11756         * gtk/simple.c:
11757         * gtk/gtkmenu.c:
11758         * gtk/gtkitemfactory.c: use g_object_connect() instead of
11759         passing "*signal*::*" args to gtk_widget_set().
11760         
11761         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
11762         
11763         * gtk/*.c: removed trailer arg from property setters and getters.
11764         macro fixups.
11765
11766 2001-03-07  Alexander Larsson  <alexl@redhat.com>
11767
11768         * gtk/gtklabel.c (set_markup): Removed warning
11769
11770 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
11771
11772         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
11773         field to allow you to hide cell renderers.
11774
11775         * gtk/gtkcellrenderer.c: Add support for invisible cells.
11776
11777         * gtk/gtktreeview.c: Add support for invisible cells.
11778
11779 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
11780
11781         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
11782         Add "clicked" signal back to columns.
11783
11784         * ChangeLog: remove conflict markers.
11785
11786 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
11787
11788         * gtk/gtkbutton.c: Add animation of activation by, on 
11789         activate, pressing the button, and adding a timeout that 
11790         releases the button after 250ms or on key release and
11791         emits ::clicked. (#51501)
11792
11793         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
11794         action area, we connect to ::clicked instead of ::activate
11795         so the dialog stays up through the animation.
11796
11797 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
11798
11799         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
11800         check the ignore_enter flag for the menu shell that
11801         the item is actually a child of, not for attached
11802         submenus. (#51536)
11803
11804 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
11805
11806         * gtk/gtkmain.c (gtk_propagate_event): Only do special
11807         special key-press grab handling for widgets within
11808         GtkWindows. Otherwise, fall through to normal case.
11809
11810         This prevents key events being sent twice to GtkInvisible
11811         widgets, which can cause all sorts of mischief.
11812
11813 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
11814
11815         * gtk/gtkmain.c (gtk_propagate_event): When a grab
11816         widget is in effect, give the grab widget a first
11817         crack at KEY_PRESS/RELEASE events. (#424)
11818
11819 2001-03-06  James Henstridge  <james@daa.com.au>
11820
11821         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
11822         offset for the window_state_event to point at window_state_event
11823         rather than no_expose_event.
11824
11825 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
11826
11827         * gtk/gtkimmodule.h: fix busted /* comment */
11828
11829 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
11830
11831         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
11832         object properties.
11833
11834 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
11835
11836         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
11837         add object properties.
11838
11839         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
11840         to add object properties.
11841
11842         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
11843         object properties.
11844
11845         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
11846         add object properties.
11847
11848         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
11849         object properties.
11850
11851 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
11852
11853         * gtk/gtktreemodel.c: renamed "child_toggled" to
11854         "has_child_toggled".
11855
11856         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
11857         handle new signal name.
11858
11859         * gtk/gtktreestore.c: Updated to handle new signal name.
11860         * gtk/gtklisttore.c: Updated to handle new signal name.
11861         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
11862
11863 2001-03-05  Alexander Larsson  <alexl@redhat.com>
11864
11865         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
11866         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
11867
11868 2001-03-05  Michael Natterer  <mitch@gimp.org>
11869
11870         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
11871         pixbuf-engine coincidentially also failed to make one of it's
11872         parent_class pointers static, causing overwriting of GtkLabel's
11873         parent_class pointer in pixbuf_style_class_init().
11874         (Will commit the fix to the pixbuf-engine too).
11875
11876 2001-03-05  Alexander Larsson  <alexl@redhat.com>
11877
11878         * gdk/gdkwindow.h:
11879         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
11880         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
11881         gdk_window_set_icon_list for net wmspec functionality.
11882
11883         * gdk/x11/gdkwindow-x11.c:
11884         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
11885         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
11886         gdk_window_set_icon_list.
11887         Added gdk_wmspec_change_state helper function and used it in the code.
11888         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
11889
11890         * gtk/gtkdialog.c (gtk_dialog_init):
11891         Set GDK_WINDOW_TYPE_HINT_DIALOG.
11892
11893         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
11894         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
11895
11896         * gtk/gtkwindow.c:
11897         new function gtk_window_set_type_hint.
11898         On realize, set type hint and modal hint.
11899
11900         * gtk/gtkwindow.h:
11901         Added type_hint field and gtk_window_set_type_hint.
11902
11903 2001-03-05  Alexander Larsson  <alexl@redhat.com>
11904
11905         * gtk/gtklabel.[ch]:
11906         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
11907         New function gtk_label_get_accel_keyval () to get the underline accelerator
11908         of the label. Setting the label pattern overrides other attributes.
11909
11910 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
11911
11912         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
11913         Added missing initializers to gtk_rc_style_init().
11914
11915 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
11916
11917         * gtk/gtktextview.c: fixed bug #51097 about setting 
11918         gtk_text_view_set_border_window_size() if the widget is 
11919         already realized.
11920
11921 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
11922
11923         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
11924
11925         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
11926         comment. Won't do to have duplicated doc comments between
11927         the platform subdirs.
11928
11929 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
11930
11931         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
11932           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
11933
11934         Detectable auto-repeat - make a repeating key generate
11935         press/press/press/release instead of press/release pairs.
11936
11937         If we have Xkb and XkbSetDectableAutoRepeat supports
11938         that, we do it that way. Otherwise, when we get
11939         a release event, we check ahead with XPending to see
11940         if the next key is a KeyPress with the same keycode
11941         and timestamp. (Not 100% reliable, but pretty close.)
11942           
11943 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
11944         
11945         * gtk/gtkmain.c (gtk_propagate_event): Only do special
11946         special key-press grab handling for widgets within
11947         GtkWindows. Otherwise, fall through to normal case.
11948  
11949         This prevents key events being sent twice to GtkInvisible
11950         widgets, which can cause all sorts of mischief.
11951  
11952 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
11953  
11954         * gtk/gtkmain.c (gtk_propagate_event): When a grab
11955         widget is in effect, give the grab widget a first
11956         crack at KEY_PRESS/RELEASE events. (#424)
11957  
11958 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
11959
11960         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
11961         to extend the selection. (Roughly based on patch
11962         from Jay Cox, #50939)
11963
11964         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
11965         to properly handle previous GDK_BUTTON_PRESS. 
11966         (Patch from Jay Cox, #50938)
11967
11968         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
11969         '\0' back along with the deleted text. (#51148)
11970
11971 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
11972
11973         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
11974         the group when extracting it from the X keyboard event.
11975
11976         * modules/input/Makefile.am modules/input/imipa.c: 
11977         Simple module for entering IPA. (Do we need a 
11978         gtk-stupid-input-tricks CVS module?)
11979
11980 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
11981
11982         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
11983         const.
11984
11985         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
11986
11987         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
11988         is no focus widget for the dialog currently, grab the focus as well
11989         as the default.
11990
11991         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
11992         the action area's children to iterate through, not the
11993         dialog's children.
11994
11995 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
11996
11997         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
11998         Add plug-socket tests. (Won't work worth a darn until I commit
11999         the rest of the plug-socket changes, but no reason these
12000         can't go into CVS now.)
12001
12002 2001-03-02  Havoc Pennington  <hp@redhat.com>
12003
12004         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
12005         _gdk_region_get_xrectangles()
12006
12007         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
12008
12009         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
12010
12011         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
12012         function, contributed by Ron Steinke    
12013
12014         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
12015         gdk_net_wm_supports
12016
12017         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
12018         New function, contributed by Ron Steinke
12019
12020         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
12021         used to line up the text in the entry when using the entry for
12022         editable sheet cell hacks
12023
12024         * gtk/testgtk.c (create_entry): test the activate_default setting
12025         on GtkEntry
12026
12027         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
12028         cause the entry to activate the default button for a dialog when 
12029         activated
12030         (gtk_entry_get_activates_default): new function
12031
12032 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
12033
12034         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
12035         Hwang to move call to sync_selection() up a few lines
12036         to before the row list is modified, to fix crash when
12037         removing rows in the undo_selection list.
12038
12039         (Test case provided by Daniel Elstner:
12040
12041         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
12042
12043 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
12044
12045         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
12046         of tree->root_tree in parent_set rather than _map(), 
12047         fixing #50892 in a bit better manner.
12048
12049 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
12050
12051         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
12052
12053 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
12054
12055         * gtk/gtkstyle.c : Remove duplicate fwd decl for
12056         gtk_default_draw_shadow.
12057
12058 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
12059
12060         * gdk/gdkimage.c (gdk_image_new): Remove excess 
12061         warning, make warnings more verbose, treat a error
12062         in shmat as permanent, and don't try again.
12063         (#51163, Ed Randall.)
12064
12065 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
12066
12067         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
12068         delay for the first click before starting to scroll.
12069         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
12070
12071         * gtk/gtktext.c: GtkText should have I-beam cursor. 
12072         (based on gtk-enf-990513-1.patch, Eric Fisher.)
12073
12074 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
12075
12076         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
12077         cleanup to remove some references to unused
12078         ->xoffset, ->yoffset.
12079
12080 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
12081
12082         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
12083         mask. (#51039, fix from Martin Maierhofer)
12084
12085 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
12086
12087         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
12088         for unshifted + and shifted = for non-us keyboards.
12089         Make <Control>+ and <Control>- work as well as 
12090         <Control>KP_Plus, <Control>KP_Minus for recursive
12091         open/close.  (#2682, René Seindal)
12092
12093 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
12094
12095         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
12096         the active menu item before deactivating the menu,
12097         so gtk_menu_popdown doesn't change the history. (#50964)
12098         
12099 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
12100
12101         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
12102         draw lines with text_gc rather than black_gc.
12103         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
12104
12105 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
12106
12107         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
12108         Move handling of buttons fully in gtktreeviewcolumn.  This code is
12109         less interrelated then it was, but it still requires the
12110         GtkTreeView to map it.
12111
12112         * test/testtreecolumn.c: Now I can add a column to one view,
12113         remove it, add it to the another view, remove it, then re-add it
12114         to the first.  Nifty.
12115
12116 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
12117
12118         * docs/tutorial/gtk-tut.sgml: Minor corrections
12119
12120 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
12121
12122         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
12123         GtkRowReference.
12124
12125 2001-02-28  Havoc Pennington  <hp@redhat.com>
12126
12127         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
12128         draw_default
12129         (gtk_widget_draw_focus): remove this function; we could instead
12130         make it just gtk_widget_draw(), but in most cases I think the
12131         result would be broken user code, so think it's better to have
12132         that code not compile and get fixed
12133         (gtk_widget_draw_default): ditto
12134
12135         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
12136         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
12137         
12138         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
12139         widgets lose/get the default, instead of calling draw_default
12140         
12141         * docs/Changes-2.0.txt: note about all this
12142
12143         Then fixed every widget in GTK, I won't list all the filenames.
12144
12145 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
12146
12147         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
12148         _gtk_tree_row_reference_deleted.
12149         (inserted_callback): Proxy out to
12150         _gtk_tree_row_reference_inserted.
12151         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
12152         get around signal emission ordering problem.
12153
12154         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
12155         fix to work with SINGLE 
12156         (_gtk_tree_selection_internal_select_node): Major sanitization on
12157         selections.  SINGLE now seems to work.
12158
12159         * tests/Makefile.am: add testtreecolumn.c:
12160
12161         * tests/testtreecolumn.c: New test.  Mostly points out selection
12162         bugs currently, but will test columns later.
12163
12164         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
12165         selection bug.  I hate touching this code -- it's scary.
12166
12167 2001-02-26  Havoc Pennington  <hp@redhat.com>
12168
12169         * gtk/testgtk.c: test the window state stuff
12170
12171         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
12172         window come to the user's attention as if it were just created
12173         (gtk_window_iconify): new function
12174         (gtk_window_deiconify): new function
12175         (gtk_window_stick): new function
12176         (gtk_window_unstick): new function
12177         (gtk_window_maximize): new function
12178         (gtk_window_unmaximize): new function
12179
12180         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
12181
12182         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
12183
12184         * gdk/x11/gdkevents-x11.c: create window state events when
12185         appropriate
12186         (gdk_wmspec_supported): new function
12187
12188         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
12189         iconification before showing the window
12190         (gdk_window_deiconify): new function
12191         (gdk_window_stick): new function
12192         (gdk_window_unstick): new function
12193         (gdk_window_maximize): new function
12194         (gdk_window_unmaximize): new function
12195
12196         * gdk/gdkwindow.c: store the window state in the window; 
12197         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
12198         window->mapped.
12199         (gdk_window_get_state): return the current window state
12200
12201         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
12202         (gdk_event_get_state): handle GDK_WINDOW_STATE
12203         (gdk_synthesize_window_state): function to create the window state
12204         events
12205
12206         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
12207         event, for changes to "window state" such as maximized, sticky, 
12208         etc.
12209         
12210         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
12211         focuses a window
12212
12213         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
12214         finds out if we support a given WM spec hint
12215
12216 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
12217
12218         * docs/faq/gtk-faq.sgml: New question re memory leaks.
12219
12220 2001-02-25  Hans Breuer  <hans@breuer.org>
12221
12222         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
12223         cause we want to loose those prototypes only in the latter case
12224
12225         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
12226         GdkPixmapImplWin32 because it itsn't derived from it. Use the
12227         impl member variable instead
12228
12229         * gtk/gtk.def : updated
12230
12231         * gtk/gtklist.c : 
12232         * gtk/gtkmenus.c : include <string.h> for memset ()
12233
12234         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
12235         for everthing built here, but for gtk-x.x.dll only. This solves
12236         problem of indifferent gtk type definitions
12237
12238 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
12239
12240         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
12241
12242 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
12243
12244         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
12245         column that is exposed.
12246
12247         (_gtk_tree_view_update_size): Changed name from set_size, and
12248         changed function to do more work, and not force people calling it
12249         to figure out the size.  Simplifies a lot of code elsewhere.
12250
12251 2001-02-23  Alexander Larsson  <alexl@redhat.com>
12252
12253         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
12254         return solid masks for xpms that have no transparent color.
12255         This makes the ..._create_from_xpm... API backwards
12256         compatible.
12257
12258 2001-02-23  Tor Lillqvist  <tml@iki.fi>
12259
12260         * README.win32: Update. Mention the gtk-1-3-win32-production
12261         branch.
12262
12263         * gdk/win32/bdfcursor.c: New file. A program that generates
12264         xcursors.h. Thanks to Stefan Ondrejicka.
12265
12266         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
12267         compact format.
12268
12269         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
12270
12271         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
12272         function, uses xcursors.h.
12273         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
12274         cursor from inline data instead of using LoadCursor() to generate
12275         it from a resource.
12276
12277         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
12278         event, must check the Windows message for mouse button state, as
12279         the GDK event state might not have been built if it is
12280         undelivered. Remove one goto.
12281
12282         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
12283         SetCursor() if the current cursor as returned by GetCursor() is
12284         the window's previous cursor. The ChildWindowFromPoint() test
12285         apparently didn't work correctly.
12286
12287         * gdk/win32/rc/*.cur: Remove.
12288
12289         * gdk/win32/rc/gdk.rc.in: Remove cursors.
12290
12291         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
12292
12293         * gtk/makefile.{mingw,msc}.in: Updates.
12294
12295 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
12296
12297         * gtk/gtktreemodel.h: add functions for signal emission.
12298
12299         * gtk/gtktreestore.c: move to use above functions instead of
12300         g_signal_emit.
12301
12302         * gtk/gtkliststore.c: ditto
12303
12304 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
12305
12306         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
12307         GObject instead of GtkObject.
12308
12309         * gtk/gtkliststore.c: ditto.
12310
12311         * gtk/gtktreemodelsort.c: ditto.
12312
12313         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
12314         GtkTreeModelIface, instead of in each model.
12315
12316 2001-02-21  Havoc Pennington  <hp@redhat.com>
12317
12318         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
12319         unbreak this function
12320
12321         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
12322         properties
12323
12324         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
12325         properties
12326
12327         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
12328         properties
12329
12330         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
12331         mean unset the max length
12332
12333 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
12334
12335         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
12336         Changed name to be set_cell_data_func to make it clear what
12337         the functino does.  Close bug #51069.
12338
12339 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
12340
12341         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
12342         have memory actually freed.  Keeps box running longer.
12343
12344 2001-02-21  Alexander Larsson  <alexl@redhat.com>
12345         
12346         * gtk/gtkseparatormenuitem.[ch]:
12347         Added new menu separator item. The drawing and size handling
12348         is still done in GtkMenuItem, but the API is a bit more sane.
12349         
12350         * gtk/Makefile.am:
12351         Add gtkseparatormenuitem.[ch].
12352
12353         * gtk/gtk.h:
12354         Add gtkseparatormenuitem.h.
12355         
12356         * gtk/gtkentry.c:
12357         * gtk/gtkmenufactory.c:
12358         * gtk/gtktextview.c:
12359         Use the new API for menu separators.
12360         
12361         * demos/gtk-demo/menus.c (create_menu):
12362         Add some GtkSeparatorMenuItem demo code.
12363
12364 2001-02-20  Havoc Pennington  <hp@redhat.com>
12365
12366         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
12367         Lee Mallabone
12368
12369         * gtk/gtkarrow.c: Convert to new property API, patch from 
12370         Lee Mallabone
12371
12372 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
12373
12374         * tests/testtreeview.c (toggled_callback): fix to reflect change
12375         in GtkTreeModelStore.
12376
12377 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
12378
12379         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
12380         function to create an icon set from a pixbuf.
12381
12382 2001-02-20  Alexander Larsson  <alexl@redhat.com>
12383
12384         * gtk/gtkcellrenderertext.[ch]:
12385         Add a "markup" property.
12386
12387         * gtk/treestoretest.c:
12388         Use the markup property, remove some leftover stuff from
12389         GtkTreeModelMapping.
12390
12391 2001-02-20  Alexander Larsson  <alexl@redhat.com>
12392
12393         * gtk/gtklabel.c (gtk_label_set_selectable):
12394         Queue a redraw if the selectable setting was changed.
12395
12396 2001-02-20  Alexander Larsson  <alexl@redhat.com>
12397
12398         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
12399         Actually copy the whole gc, not just the public parts.
12400         
12401         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
12402         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
12403         labels.
12404
12405 2001-02-19  Havoc Pennington  <hp@pobox.com>
12406
12407         * gdk/gdkwindow.c: docs
12408
12409         * gdk/gdkrgb.c: docs
12410
12411         * gdk/gdkregion-generic.c: docs
12412
12413         * gdk/gdkgc.c (gdk_gc_set_values): docs
12414
12415         * gdk/gdkdraw.c: docs
12416
12417         * gdk/gdkdrawable.h: deprecate drawable get/set data
12418
12419 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
12420
12421         * demos/gtk-demo/dialog.c: Add simple new demo.
12422
12423 2001-02-19  Havoc Pennington  <hp@redhat.com>
12424
12425         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
12426         insert_child_anchor signal, bug #50245
12427
12428         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
12429         from create_child_anchor, so the anchor is passed in
12430
12431         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
12432         (_gtk_widget_segment_new): have the child anchor object passed in, 
12433         instead of creating it.
12434
12435         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
12436         to gtk_text_buffer_get_modified
12437
12438 2001-02-19  Havoc Pennington  <hp@redhat.com>
12439
12440         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
12441         changed GLib without fixing GTK
12442
12443         * gtk/gtkrange.h: Rename all the stupid implementation detail 
12444         functions to have an underscore in front. Most of them should 
12445         probably just go away, but for starters don't export them.
12446         Bug #50482
12447
12448 2001-02-19  Havoc Pennington  <hp@redhat.com>
12449
12450         * gdk/gdkcolor.h: test was backward, so deprecated functions were
12451         excluded by default
12452
12453         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
12454         clean up the old code a bit
12455
12456         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
12457         inconsistent state
12458
12459         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
12460         draw inconsistent state
12461
12462         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
12463         (create_menu): add inconsistent test
12464
12465         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
12466         new function
12467         (gtk_check_menu_item_get_inconsistent): new function
12468         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
12469         state (using etched in for now)
12470
12471         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
12472         draw inconsistent state
12473
12474         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
12475         function, used when the user has selected a range of stuff in
12476         different states
12477         (gtk_toggle_button_get_inconsistent): accessor for that
12478         (gtk_toggle_button_paint): draw inconsistent state (etched in?
12479         don't know what else to do)
12480
12481 2001-02-19  Hans Breuer <hans@breuer.org>
12482
12483         * gtk/gtk.def : updated exported symbols
12484
12485         * gtk/makefile.msc.in : updated
12486
12487         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
12488         a colormap, when invoked from testgtk::entry. I'm not sure where
12489         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
12490         avoids immediate crashing ...
12491
12492         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
12493         any objections ?
12494
12495         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
12496         0 parameter. At least msvc doesn't like macros with var args. 
12497         I simply removed the extra 0, was it a feature or a typo ?
12498
12499         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
12500         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
12501         because the value assignment to the internal struct wasn't working.
12502         I'm not absolutely sure. The problem could have been resolved by
12503         changing the "func" declartion in the struct, but was the pointer
12504         to the function pointer intended ?
12505
12506         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
12507
12508         * gdk/gdk.def : updated exported symbols
12509
12510         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
12511         only use SetDIBitsToDevice if there is a palette at the drawable
12512         and the image is GDK_VISUAL_PSEUDO_COLOR
12513
12514         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
12515
12516         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
12517
12518         * gdk/*/makefile.msc : updated
12519
12520 2001-02-19  Havoc Pennington  <hp@redhat.com>
12521
12522         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
12523         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
12524
12525         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
12526         (gdk_key_repeat_restore): nuke
12527
12528         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
12529         (gdk_init_check): no atexit func
12530
12531         * gdk/gdkrgb.h: mark some stuff deprecated
12532
12533         * gdk/gdkcolor.h: mark some stuff deprecated
12534         
12535         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
12536
12537         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
12538
12539 2001-02-16  Havoc Pennington  <hp@redhat.com>
12540
12541         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
12542         scroll steps.
12543
12544         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
12545         steps, and add Ctrl-arrow shortcuts for paging visually as with
12546         HScale, since Page Up and Page Down move logically.
12547
12548         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
12549         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
12550         
12551         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
12552         steps
12553         (gtk_range_scroll): handle the visual steps
12554
12555         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
12556         scroll steps
12557
12558         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
12559         steps, not the logical ones.
12560
12561         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
12562         (scroll_vertical): handle up/down steps
12563
12564 2001-02-19 Alexander Larsson  <alexl@redhat.com>
12565
12566         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
12567         Copy data and free data with free().
12568
12569         * gdk-pixbuf/gdk-pixbuf.c:
12570         * gdk-pixbuf/io-jpeg.c:
12571         * gdk-pixbuf/io-png.c:
12572         Use g_try_malloc/g_free instead malloc/free.
12573         
12574         * gdk-pixbuf/test-gdk-pixbuf.c:
12575         Must... initialize... gobject...
12576         
12577         * gdk-pixbuf/pixops/timescale.c:
12578         * gtk/gtkcalendar.c:
12579         Use g_malloc instead of malloc.
12580         
12581 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
12582
12583         * gtk/testgtkrc:
12584         Comment out property assignments, these don't work yet.
12585
12586 2001-02-17  Havoc Pennington  <hp@pobox.com>
12587
12588         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
12589         bit.
12590
12591 2001-02-17  Havoc Pennington  <hp@pobox.com>
12592
12593         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
12594         shadowed variables that had broken size request in some cases,
12595         leading to bogus tooltips (#50996)
12596
12597 2001-02-06  Jon K Hellan  <hellan@acm.org>
12598
12599         Implement fast browsing of tooltips, bug #50619
12600         
12601         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
12602         and last_popdown
12603         
12604         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
12605         use_sticky_delay and last_popdown.
12606         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
12607         time of popdown.
12608         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
12609         is NULL.
12610         (gtk_tooltips_recently_shown): New static function.  Return true
12611         if < sticky_delay has elapsed since last popdown.
12612         (gtk_tooltips_event_handler): Display window after sticky_delay
12613         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
12614         since last popdown.
12615         
12616 2001-02-17  Havoc Pennington  <hp@pobox.com>
12617
12618         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
12619         instead of (). #6394
12620
12621         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
12622         G_CONST_RETURN, make it return by reference, #50473
12623         
12624 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
12625
12626         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
12627         generated ENTER_NOTIFY event with 0, otherwise not explicitely
12628         setup fields contain garbage (e.g. subwindow, breaking
12629         gdk_drawable_ref() upon event copy).
12630         (gtk_menu_stop_navigating_submenu_cb): same here.
12631
12632         * gtk/gtklist.c (gtk_list_vertical_timeout): 
12633         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
12634         * gtk/gtkclist.c (vertical_timeout): 
12635         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
12636         default-zero-intialization for unions to memset(,0,), as unions are
12637         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
12638         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
12639
12640         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
12641         g_closure_sink() warning.
12642
12643         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
12644         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
12645         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
12646         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
12647         
12648 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
12649
12650         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
12651         gtk_*_store_get, and moved to GtkTreeModel.
12652
12653         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
12654
12655         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
12656
12657         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
12658
12659         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
12660         set the func.
12661
12662         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
12663         freeze/thaw notify between setting all the properties for a cell.
12664
12665         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
12666
12667 2001-02-15  Havoc Pennington  <hp@redhat.com>
12668
12669         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
12670         the X coordinates so they're with respect to the line, rather than 
12671         with respect to the layout.
12672
12673         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
12674         Mallabone
12675
12676         * gtk/testgtk.c (create_range_controls): add vscale tests, 
12677         and inverted test
12678
12679         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
12680         #50806
12681
12682         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
12683
12684         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
12685         gtk_text_iter_is_end
12686
12687         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
12688         rename gtk_text_buffer_get_end_iter
12689
12690         * gtk/testgtk.c (create_labels): Add test for selectable
12691
12692         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
12693         the selection stuff. This code is kind of broken since it doesn't 
12694         use the theme engine.
12695
12696         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
12697         fix infinite loop and y offset problem
12698         (gdk_draw_layout_line_with_colors): fix foreground color handling
12699
12700         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
12701         that makes the label selectable.
12702         
12703         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
12704         layout when the style is set, since fonts etc. could have changed.      
12705
12706 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
12707
12708         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
12709
12710         * gtk/gtktreemodelsimple.[ch]: removed.
12711
12712 2001-02-16  Alexander Larsson  <alexl@redhat.com>
12713
12714         * gtk/gtktreemodelmapping.[ch]:
12715         New files. Implement GtkTreeModelMapping.
12716         
12717         * gtk/Makefile.am:
12718         Add gtktreemodelmapping.[ch].
12719         
12720         * gtk/gtk.h:
12721         Add gtktreemodelmapping.h
12722
12723         * gtk/treestoretest.c:
12724         Test the GtkTreeModelMapping
12725
12726 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
12727
12728         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
12729         have a demo, we might as well pass in real values.  Thanks to
12730         clahey for pointing this out.
12731
12732 2001-02-14  Havoc Pennington  <hp@pobox.com>
12733
12734         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
12735         "static" to a private function
12736         (gtk_image_menu_item_class_init): remove destroy handler,
12737         add "image" object property
12738
12739 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
12740
12741         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
12742         Add a shortcut if the window and the current clip_region doesn't
12743         overlap. This is needed when there are a lot of windows in a
12744         window. The layout test in testgtk is a good test.
12745
12746         * gdk/linux-fb/gdkwindow-fb.c:
12747         Whitespace fix.
12748
12749 2001-02-13  Sven Neumann  <sven@convergence.de>
12750
12751         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
12752
12753 2001-02-13  Alexander Larsson  <alexl@redhat.com>
12754
12755         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
12756         Don't reference last_cursor if it is null. Fixes crash when rotating
12757         the screen before having moved the mouse.
12758
12759         * gdk/linux-fb/gdkcc-fb.c: Zapp!
12760
12761         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
12762
12763         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
12764         when using 90 or 270 degrees rotation.
12765
12766 2001-02-12  Havoc Pennington  <hp@pobox.com>
12767
12768         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
12769         it always set the foreground, even if we were only using
12770         a stipple.
12771         (gdk_draw_layout_line_with_colors): new function, allow
12772         override colors
12773         (gdk_draw_layout_with_colors): new function, allow override
12774         colors
12775         (gdk_pango_layout_line_get_clip_region): function to get the clip
12776         region for a logical text range
12777         (gdk_pango_layout_get_clip_region): get the clip region for a
12778         logical text range
12779
12780         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
12781         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
12782         the right number of arguments.
12783
12784         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
12785         enhance the function to check that node data corresponds to a 
12786         view still belonging to the tree.
12787
12788         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
12789         GtkTreePath
12790         (gtk_tree_view_inserted): ditto
12791         (gtk_tree_view_child_toggled): ditto
12792
12793         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
12794         simplify this code.
12795
12796         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
12797         a PangoAttrList
12798
12799         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
12800
12801         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
12802
12803         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
12804         size in the size request 
12805         (gtk_menu_bar_size_allocate): consider toggle size here
12806
12807         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
12808         that displays a widget in the toggle slot
12809
12810         * gtk/testgtk.c: test GtkImageMenuItem
12811
12812         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
12813         
12814         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
12815         request and allocation
12816
12817         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
12818
12819         * gtk/gtkcheckmenuitem.c
12820         (gtk_check_menu_item_toggle_size_request): ditto
12821         
12822 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
12823
12824         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
12825         reference.
12826
12827         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
12828         and refuse to initialize GTK+ if they fail.
12829
12830 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
12831
12832         * configure.in: Add check for gtk-doc version.
12833
12834 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
12835
12836         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
12837         where the xpad/ypad was only being used on one side!
12838
12839 2001-02-11  Tor Lillqvist  <tml@iki.fi>
12840
12841         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
12842         function, copied from X11 version.
12843
12844         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
12845         DestroyCursor failures. The reason for the problem (despite the
12846         inconsistent messages from GetLastError()) was that
12847         DestroyCursor() cannot be called while a cursor is set in a
12848         window. Set the new cursor first and then destroy the old one.
12849         Thanks to jpe@archaeopteryx.com.
12850
12851         * gdk/win32/gdkcc-win32.c: Remove.
12852
12853         * gdk/win32/Makefile.am: Remove from here, too.
12854         
12855         * gdk/gdk.def
12856         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
12857
12858         * gtk/gtk.def
12859         * gtk/makefile.mingw.in: Updates.
12860
12861 2001-02-08  Havoc Pennington  <hp@redhat.com>
12862
12863         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
12864         add a widget to a bin that already has a child.
12865
12866         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
12867
12868         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
12869         
12870         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
12871
12872         * gdk/gdk.h: remove gdkcc.h
12873
12874         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
12875
12876         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
12877         GdkPixbuf, since the previous implementation was GdkColorContext
12878         dependent.
12879
12880         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
12881         
12882 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
12883
12884         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
12885         a sane value!
12886
12887 2001-02-08  Havoc Pennington  <hp@redhat.com>
12888
12889         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
12890         lighten them.
12891
12892 2001-02-08  Havoc Pennington  <hp@redhat.com>
12893
12894         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
12895         validation idle
12896
12897         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
12898         cell renderer
12899
12900         * demos/pixbuf-demo.c (timeout): remove deprecated
12901         gtk_widget_draw
12902
12903         * demos/testpixbuf-save.c (main): remove deprecated
12904         gtk_drawing_area_size
12905
12906         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
12907         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
12908         at the start of the allocation.
12909         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
12910         unsetup or NULL model.
12911
12912         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
12913         even/odd/sorted cells in the tree view.
12914
12915         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
12916         bugfixes
12917
12918         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
12919         backgrounds with draw_flat_box using different detail for even/odd
12920         rows.
12921
12922         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
12923         row, so we can draw the alternating colors thing
12924
12925         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
12926         property from a synonym property, notify for the synonym.
12927         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
12928         (gtk_text_tag_get_property): Always return the font, even if
12929         all its fields aren't set
12930
12931         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
12932         store the attr list; it leaves us with no way to change attributes
12933         in _render according to the render flags, and no way to implement
12934         get_property. Instead store all the specific text attributes. 
12935         Separate whether an attribute is enabled from its value. Sync all
12936         properties with GtkTextTag, make them all consistent, etc.
12937
12938         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
12939         renderers can highlight the sort row/column     
12940
12941         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
12942         accessor functions to get values; this has the side effect of
12943         showing up which accessor functions were missing. Added those.
12944
12945         * gtk/gtktreeviewcolumn.h: Replace set_justification with
12946         set_alignment, to be consistent with GtkLabel, GtkMisc
12947
12948         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
12949         arrow.
12950
12951         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
12952
12953         * gtk/gtktreesortable.h: updates in here
12954
12955 2001-02-07  Sven Neumann  <sven@convergence.de>
12956
12957         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
12958         pango dimensions after painting the background. We used to draw
12959         gigantic flat boxes here.
12960
12961 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
12962
12963         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
12964         error introduced with earlier commit) (pointed out by
12965         Ollie Lho)
12966
12967 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
12968
12969         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
12970         which are no longer necessary.
12971
12972 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
12973
12974         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
12975
12976 2001-02-04  Tor Lillqvist  <tml@iki.fi>
12977
12978         * gdk/gdk.def
12979         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
12980         Provide dummy implementations.
12981
12982 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
12983
12984         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
12985
12986         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
12987         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
12988         deprecated this function.
12989
12990         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
12991         argument.
12992
12993 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
12994
12995         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
12996
12997 2001-02-03  Havoc Pennington  <hp@pobox.com>
12998
12999         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
13000         Mikael Hermansson with patch from Mikael (if there was a toggle
13001         start one after the first character in the range, this function
13002         was broken). Bug #50380
13003
13004 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
13005
13006         * configure.in: Remove confusing comment about X11.
13007
13008 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
13009
13010         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
13011         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
13012         
13013 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
13014
13015         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
13016         it breaks things on BSD. If you want to compile GTK+ with
13017         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
13018         when configuring, since GTK+ simply can't be "pure ANSI" 
13019         in the header files it uses. (#8170, Greg Hudson)
13020
13021 2001-02-02  Havoc Pennington  <hp@redhat.com>
13022
13023         * gtk/gtkwindow.c: docs
13024
13025         * gtk/gtkwidget.c: docs
13026         (gtk_widget_set_colormap): add a reference to the colormap
13027         (gtk_widget_get_default_colormap): add a reference to the colormap
13028
13029         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
13030
13031         * gtk/gtktextiter.c: docs
13032
13033         * gtk/gtkmain.c (gtk_propagate_event): docs
13034
13035         * gtk/gtkpaned.c (gtk_paned_get_position): docs
13036         (gtk_paned_set_position): docs
13037
13038         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
13039         sort interface, no implementation yet.
13040
13041         * demos/testpixbuf.c (new_testrgb_window): replace
13042         gtk_drawing_area_size() with gtk_widget_set_usize()
13043
13044         * demos/testpixbuf-drawable.c (main): ditto
13045         
13046         * gtk/testgtk.c: remove use of GtkStatusbarMsg
13047
13048         * gtk/gtktextbuffer.c: docs
13049
13050         * gtk/gtkstock.c: docs
13051
13052         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
13053
13054         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
13055
13056         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
13057         
13058         * gtk/gtkimage.c: add some docs in here
13059         (gtk_image_size_request): change name of
13060         gtk_widget_render_stock_icon
13061         (gtk_image_get_icon_set): don't dup returned string
13062         (gtk_image_get_icon_set): don't dup returned string
13063
13064         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
13065         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
13066         and gtkiconfactory.h functions
13067
13068         * gtk/gtkiconfactory.c: add some docs in here
13069
13070         * gtk/gtkmain.c (gtk_get_default_language): document
13071         (gtk_get_current_event): document
13072         (gtk_get_current_event_state): document
13073         (gtk_get_event_widget): document
13074
13075         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
13076
13077         * gtk/gtkcontainer.c: Add some documentation
13078         (gtk_container_add): give a more explanatory warning on adding an
13079         already-parented widget, this is kind of a FAQ and also a common
13080         typo that's easier to debug with a nice warning 
13081
13082         * gtk/gtkcellrenderertoggle.c
13083         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
13084         adding this, it's useless
13085         (gtk_cell_renderer_toggle_set_active): remove
13086         (gtk_cell_renderer_toggle_get_radio): add
13087
13088         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
13089         the NULL cell renderer, that doesn't make any sense to me. 
13090
13091         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
13092         demo code should never use deprecated features.
13093
13094         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
13095         code should never use deprecated features.
13096
13097         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
13098         gtk_widget_queue_clear_area deprecated
13099
13100         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
13101         deprecated
13102
13103         * gtk/gtklabel.h: mark gtk_label_get() deprecated
13104
13105         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
13106         a GdkImage deprecated, replaced by new consistently-named
13107         functions       
13108
13109         * gtk/gtkmain.h: Mark gtk_exit() deprecated
13110
13111         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
13112
13113         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
13114         deprecated
13115
13116         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
13117         so it won't appear in docs and confuse people.
13118
13119         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
13120
13121         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
13122         macros deprecated. (can't mark the type itself deprecated, since
13123         GtkProgressBar is not deprecated and we need the type decl to use
13124         GtkProgressBar)
13125
13126         * gtk/gtkpixmap.h: Mark deprecated
13127
13128         * gtk/gtkoldeditable.h: Mark deprecated
13129
13130         * gtk/gtklist.h: Mark deprecated
13131
13132         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
13133         for anything anymore.
13134
13135         * gtk/gtkctree.h: Mark deprecated
13136
13137         * gtk/gtkclist.h: Mark deprecated
13138
13139         * gtk/gtkpreview.h: Mark deprecated
13140
13141         * gtk/gtkpacker.h: Mark deprecated
13142
13143         * gtk/gtktipsquery.h: Mark deprecated
13144
13145         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
13146
13147         * gtk/gtkvruler.h: Add comment that it will move out of GTK
13148
13149         * gtk/gtkhruler.h: Add comment that it will move out of GTK
13150
13151         * gtk/gtkruler.h: Add comment that it will move out of GTK
13152
13153         * gtk/gtkgamma.h: Add comment that it will move out of GTK
13154
13155         * gtk/gtkcurve.h: Add comment that it will move out of GTK
13156
13157 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
13158
13159         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
13160         gdk_colormap_sync private since it was never exported
13161         in a header file.
13162
13163         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
13164         colormap->colors[] for StaticGray, StaticColor colormaps.
13165
13166         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
13167         was being used as if it was image->bits_per_pixel.
13168
13169         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
13170         for the image in the GdkImage structure since it isn't
13171         reconstructable, and we need it to handle packed types
13172
13173         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
13174         the assumption that on Win32 image->bits_per_pixel == image->depth,
13175         always.
13176
13177         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
13178
13179         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
13180         warning message if no converter can be found. 
13181
13182 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
13183
13184         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
13185         chars to isupper() / tolower(). (#567)
13186
13187         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
13188         to clear up 64-bit warnings. (#567)
13189
13190 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
13191
13192         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
13193         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
13194
13195         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
13196         since some people set $(libdir) separately. (#1290, David Kaelbling)
13197
13198 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
13199
13200         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
13201         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
13202         MAXPATHLEN, but the code here depends on a fixed value.)
13203         (#4524)
13204
13205 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
13206
13207         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
13208         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
13209
13210 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
13211
13212         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
13213         viewable there is no way that moving the node will cause the 
13214         focus row to become not viewable, so omit check on the visibility
13215         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
13216
13217 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
13218
13219         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
13220         selection before inserting new text.
13221
13222 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
13223
13224         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
13225         Make the sensitivity of the reparented child track that of
13226         the original parent menu item. (#34218, David Hodson)
13227
13228         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
13229         the case where the current item is destroyed properly.
13230
13231         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
13232         some edge cases with child-less menuitems.
13233         
13234 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
13235
13236         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
13237         key pop down window. (#12074, Jon K Hellan)
13238
13239 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
13240
13241         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
13242         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
13243         The solution here isn't perfect - you get an extraneous
13244         emission of "toggle", which could conceivably confuse an app,
13245         but better than the current situation. LXR search seems to
13246         indicate that no apps in GNOME CVS connect to "toggle".
13247
13248 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
13249
13250         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
13251         gtk_public_h_sources to directly here to avoid warning when
13252         building srcdir != builddir. (#9656)
13253
13254 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
13255
13256         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
13257         handlers in gtkrange.c return the proper values (TRUE == handled)
13258         (#10316).
13259
13260         This is just the tip of the iceberg, but gtkrange.c is the
13261         most common place where the propagation is problematical,
13262         and also a place where it is almost certainly safe to change
13263         this in the stable branch.
13264
13265         (You don't want right click popups on a range control or anything...)
13266
13267 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
13268
13269         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
13270         area on focus out, even if a background pixmap isn't set.
13271         (#13941)
13272         
13273 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
13274
13275         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
13276         to deal with setting the shape properly when scrolling arrows are
13277         turned on, but not visible because there is sufficient space.
13278         (#13432)
13279
13280 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
13281
13282         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
13283         items with submenus, destroy the item along with the submenu.
13284         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
13285         properly.
13286
13287         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
13288         later.
13289
13290 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
13291
13292         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
13293         the focus widget sometimes wasn't drawn with the default if there
13294         was no default widget.
13295
13296         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
13297         unreference pixmaps. 
13298
13299         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
13300         for some extra safety.
13301
13302 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
13303
13304         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
13305         the text of a cell to the old pointer value better, by
13306         copying the new text before freeing the old text. Some code
13307         cleanup. (#8079, Karl Nelson)
13308
13309 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
13310
13311         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
13312         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
13313
13314 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
13315
13316         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
13317         item from a menu, check to see if it matches 
13318         menu->old_active_menu_item, and if so, unref and clear
13319         old_active_menu_item (Patch from Pavel Cisler)
13320
13321         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
13322         menu_shell->active_menu_item, if it is the child being
13323         removed. (Patch based on that of Gene Ragan, #50337)
13324
13325 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
13326
13327         * gdk/linux-fb/gdkselection-fb.c: 
13328         * gdk/linux-fb/gdkcolor-fb.c: 
13329         * gdk/linux-fb/gdkdrawable-fb2.c: 
13330         * gdk/linux-fb/gdkfont-fb.c: 
13331         * gdk/linux-fb/gdkim-fb.c: 
13332         * gdk/linux-fb/gdkinput.c: 
13333         * gdk/linux-fb/gdkkeyboard-fb.c: 
13334         * gdk/linux-fb/gdkmain-fb.c: 
13335         * gdk/linux-fb/gdkrender-fb.c: 
13336         A bunch of whitespace cleanup.
13337         
13338 2001-01-30  Havoc Pennington  <hp@pobox.com>
13339
13340         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
13341         #ifdef GTK_ENABLE_BROKEN.
13342
13343         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
13344         GTK_ENABLE_BROKEN just before including the broken headers.
13345         
13346         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
13347         deprecated types registered.
13348
13349         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
13350         we have to test the broken stuff.
13351
13352         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
13353         
13354 2001-01-30  Havoc Pennington  <hp@redhat.com>
13355
13356         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
13357         here where prev pointer was set to the wrong thing
13358
13359         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
13360         (gtk_tree_path_is_descendant): new function
13361
13362         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
13363         cached length
13364         (gtk_list_store_get_iter): don't modify iter if we can't get the
13365         path.
13366
13367         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
13368         
13369         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
13370         GtkTreeDragDest
13371
13372         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
13373         was causing segfault
13374
13375         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
13376         pointer to NULL
13377
13378         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
13379
13380         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
13381         on returning FALSE
13382         (gtk_list_store_iter_children): ditto
13383         (gtk_list_store_iter_nth_child): ditto
13384         (gtk_list_store_iter_nth_child): ditto
13385         (gtk_list_store_iter_parent): ditto
13386
13387         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
13388         on iter->user_data != NULL instead of silently accepting it.
13389         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
13390         we are returning TRUE.
13391         (gtk_tree_store_iter_children): ditto
13392         (gtk_tree_store_iter_nth_child): ditto
13393         (gtk_tree_store_iter_parent): ditto
13394         (gtk_tree_store_insert): remove handling of parent->user_data ==
13395         NULL, replace with parent == NULL       
13396
13397         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
13398         and a comment explaining things
13399
13400         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
13401         interface support to GtkTreeStore.
13402
13403         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
13404         FALSE if no prev, fix
13405
13406         * gtk/gtktreeview.c (set_source_row): use a row reference
13407         (set_dest_row): use a row reference
13408
13409 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
13410
13411         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
13412         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
13413         (gtk_tree_selection_select_iter): The same as above.
13414
13415 2001-01-26  Havoc Pennington  <hp@redhat.com>
13416
13417         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
13418         which holds a handle to a specific row (particular set of values
13419         in the model, i.e. pointer-identity row).
13420
13421         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
13422         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
13423         Still need to use it for the src/dest row saved on the drag context.
13424
13425 2001-01-26  Havoc Pennington  <hp@redhat.com>
13426
13427         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
13428
13429         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
13430         not offset by TREE_VIEW_HEADER_HEIGHT
13431         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
13432         TREE_VIEW_HEADER_HEIGHT
13433
13434         * configure.in (included_loaders): for me, --with-included-loaders
13435         generates the error "the specified loader yes does not exist",
13436         i.e. the arg defaults to "yes", so change test for value ""
13437         to test for value "yes", and include all loaders in that case.
13438
13439         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
13440
13441         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
13442         handle TREE_VIEW_VERTICAL_SEPARATOR
13443         (gtk_tree_view_bin_expose): fix to consider the row offset as
13444         pointing halfway into vertical separator.       
13445         (gtk_tree_view_draw_node_focus_rect): ditto
13446
13447         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
13448         --gtk-debug=updates, which causes gdk_window_set_debug_updates
13449         (TRUE) to be called.
13450
13451         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
13452         debug mode where the invalid region is colored in on invalidate,
13453         so you can see the flicker and know whether your redraw code is 
13454         doing a good job.
13455
13456         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
13457         tree window coordinates (clip rect is in tree window coords)
13458
13459         * gtk/Makefile.am: add gtktreednd.[hc]
13460
13461         * gtk/gtkliststore.c: implement gtktreednd interfaces.
13462
13463         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
13464         drag-and-drop data operations on a model (so we can set up tree
13465         drag-and-drop automatically)
13466
13467         * gtk/testgtk.c: Add a window to change sensitivity in the
13468         GtkLabel test; add a way to change the entry frame in GtkEntry
13469         test
13470
13471         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
13472         (gtk_entry_get_has_frame): new functions to remove the frame
13473         around an entry
13474         (gtk_entry_size_request): shrink requisition if no frame
13475         (gtk_entry_draw_focus): don't draw frame if no frame
13476
13477         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
13478         checks inside a cell renderer
13479         (gtk_default_draw_option): ditto for options
13480
13481         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
13482         children from the alignment, not the button
13483         (gtk_tree_view_column_init): ref/sink the column, to emulate
13484         GObject refcounting.
13485
13486         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
13487         
13488         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
13489         Use theme functions to draw the toggles 
13490
13491         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
13492
13493         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
13494         GdkPangoAttrEmbossed to use in rendering insensitive text
13495
13496         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
13497
13498         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
13499         using new GDK features
13500         
13501 2001-01-24  Alexander Larsson  <alexl@redhat.com>
13502
13503         * gtk/gtkimage.c:
13504         Splitted gtk_image_clear into gtk_image_clear() and
13505         gtk_image_reset(). Call gtk_image_clear() in ::destroy
13506         to avoid leaks.
13507
13508         * gtk/gtklabel.c (set_markup):
13509         Don't leak text.
13510
13511         * gtk/gtktextlayout.c:
13512         Always free display->shaped_objects.
13513
13514         * gtk/testgtk.c (create_clist):
13515         Don't leak custom style.
13516
13517 2001-01-23  Alexander Larsson  <alexl@redhat.com>
13518
13519         * gtk/gtkcolorsel.c (grab_color_at_mouse):
13520         Don't leak image. Simplify using gdk_colormap_query_color().
13521         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
13522
13523         * linux-fb/gdkcolor-fb.c:
13524         Implemented gdk_colormap_query_color.
13525
13526 2001-01-23  Alexander Larsson  <alexl@redhat.com>
13527
13528         * linux-fb/gdkcursor-fb.c:
13529         Don't leak built-in cursors.
13530
13531         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
13532         Don't leak tmp_points.
13533
13534         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
13535         Don't modify desc. Don't leak font if the PangoFont
13536         isn't found.
13537         
13538         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
13539         Free dash_list.
13540
13541         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
13542         Don't leak string.
13543         
13544 2001-01-20  Havoc Pennington  <hp@pobox.com>
13545
13546         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
13547         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
13548         me, matches Pango
13549
13550 2001-01-22  Havoc Pennington  <hp@redhat.com>
13551
13552         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
13553
13554         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
13555
13556         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
13557         Remove, move back to gdk-pixbuf
13558
13559         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
13560         to all the word functions
13561
13562         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
13563         before doing anything on NULL layout or if we don't have the focus
13564
13565         * gtk/testtext.c (fill_example_buffer): "justification"
13566
13567         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
13568         to be called "justification" not "justify"
13569
13570         * demos/gtk-demo/textview.c (create_tags): "justification"
13571         
13572         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
13573
13574 2001-01-22  Alexander Larsson  <alexl@redhat.com>
13575
13576         * gdk/gdkwindow.c (gdk_window_invalidate_region):
13577         Don't leak visible_region. Use visible_region instead of region.
13578         
13579         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
13580         Don't do extra gdk_drawable_ref(). This is not X.
13581         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
13582         gdk_fb_focused_window is ref:ed.
13583         (gdk_fb_window_send_crossing_events): Watch out for destroyed
13584         windows.
13585
13586 2001-01-22  Alexander Larsson  <alexl@redhat.com>
13587
13588         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
13589         Don't leak the PangoFontDescriptor.
13590
13591 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
13592
13593         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
13594         when not realized.
13595         (gtk_tree_view_scroll_to_cell): Make work when not realized.
13596         (gtk_tree_view_realize): add scroll_to support
13597         (gtk_tree_view_finalize): add a finalize method.  Populate.
13598         (gtk_tree_view_insert_column): ref and sink the column.
13599         (gtk_tree_view_append_column): ref and sink the column.
13600         (gtk_tree_view_queue_draw_node): New function to handle redrawing
13601         individual nodes.  Should make the code much more efficient, if
13602         actually used.
13603
13604 2001-01-19  Havoc Pennington  <hp@redhat.com>
13605
13606         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
13607         byte_offset variable was being used to mean both "offset into
13608         layout" and "offset into buffer line" which was no longer true
13609         with addition of preedit string; fix
13610
13611 2001-01-19  Havoc Pennington  <hp@redhat.com>
13612
13613         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
13614
13615         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
13616         function
13617
13618         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
13619         implement
13620
13621         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
13622         scroll_to_cell, matches TextView scroll functions better
13623         (gtk_tree_view_tree_to_widget_coords): new function
13624         (gtk_tree_view_widget_to_tree_coords): new function
13625         (gtk_tree_view_get_visible_rect): new function
13626         (gtk_tree_view_get_path_at_pos): accept negative coordinates
13627         (gtk_tree_view_draw_node_focus_rect): new function moved from
13628         draw_focus, also, use width of bin_window as width of the focus
13629         rect
13630         (gtk_tree_view_expand_row): fix bug where it didn't recognize
13631         already-expanded rows
13632         (gtk_tree_view_get_cell_rect): new function
13633         (gtk_tree_view_get_path_at_pos): return the click position
13634         relative to the passed-in cell
13635         (gtk_tree_view_set_expander_column): new function
13636
13637         * configure.in: remove gtk-config-2.0 chmod
13638
13639         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
13640         and properly handle drags with targets we don't understand
13641         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
13642         scrolling anyway
13643         (gtk_text_view_drag_drop): stop scrolling here though, and set the
13644         mark invisible
13645
13646         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
13647         function
13648         (gtk_drag_dest_get_target_list): new function
13649         (gtk_drag_dest_set_target_list): new function
13650         
13651         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
13652
13653         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
13654         related to drag-and-drop
13655
13656 2001-01-19  Alexander Larsson  <alexl@redhat.com>
13657
13658         * gdk/linux-fb/gdkprivate-fb.h:
13659         Define EMULATE_GDKFONT.
13660         Add extra pango_font stuff to GfkFontPrivate.
13661         
13662         * gdk/linux-fb/gdkdrawable-fb2.c:
13663         * gdk/linux-fb/gdkfont-fb.c:
13664         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
13665         emulation using PangoFont.
13666
13667 2001-01-17  Havoc Pennington  <hp@pobox.com>
13668
13669         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
13670         all the non-deprecated set_foo functions. Added missing object
13671         properties, and added g_object_notify() to setters. 
13672         Wrote docs.
13673         
13674 2001-01-18  Tor Lillqvist  <tml@iki.fi>
13675
13676         * gtk/gtkmain.c
13677         * gtk/gtkrc.c: (Win32) Use the new
13678         g_win32_get_package_installation_(sub)directory() functions.
13679
13680         * config.h.win32.in: New file.
13681         
13682         * config.h.win32: Removed.
13683
13684         * configure.in: Output config.h.win32.
13685
13686         * Makefile.am: Add it to EXTRA_DIST.
13687
13688         * gtk/gtk.def: Update.
13689
13690 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
13691
13692         * gtk/gtklabel.c (gtk_label_size_request): Set the
13693         attributes onto the PangoLayout even if they are newly
13694         created from label->pattern.
13695
13696 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
13697
13698         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
13699
13700         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
13701         structures in functions. Fixes bug where gtk_dataset_*
13702         was accidentally still being used in one place, causing
13703         every dest side event to be treated independently.
13704
13705         * gtk/gtkdnd.c: Remove last vestages of handling
13706         ::draw (fixes warning)
13707         
13708         * gtk/gtkentry.[ch]: Add drag and drop support.
13709
13710         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
13711         new function gtk_check_drag_threshhold() for checking
13712         to check if (dx,dy) has exceeded the threshhold for starting
13713         a drag and use it everywhere.
13714
13715 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
13716
13717         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
13718         add -I{includedir}/gtk-2.0.
13719
13720         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
13721         gdk/gdk-pixbuf.h: Doc fixups.
13722         
13723         * gtk/gtkobject.h: Remove trailing , from enum
13724
13725 2001-01-17 Alexander Larsson <alexl@redhat.com> 
13726
13727         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
13728         Doh! Mixed up x and y.
13729
13730         * gdk/linux-fb/gdkglobals-fb.c:
13731         Removed gdk_fb_pointer_grab_window_events,
13732         added _gdk_fb_pointer_grab_owner_events and
13733         _gdk_fb_keyboard_grab_owner_events.
13734
13735         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
13736         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
13737         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
13738         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
13739         Send crossing events after ungrab finished.
13740         (gdk_keyboard_grab): Set ..._owner_events
13741         (type_masks): Move out of function.
13742         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
13743         gdk_fb_keyboard_event_window): New functions, return the
13744         window an event should be targeted at. Handles grabs and
13745         event propagation. Can return NULL.
13746         (gdk_event_make): Remove event_mask checking. Now always
13747         returns an event.
13748                 
13749         * gdk/linux-fb/gdkkeyboard-fb.c:
13750         * gdk/linux-fb/gdkproperty-fb.c:
13751         * gdk/linux-fb/gdkselection-fb.c:
13752         Use new event_window/gdk_event_make() behaviour.
13753         
13754         * gdk/linux-fb/gdkmouse-fb.c:
13755         Use new event_window/gdk_event_make() behaviour.
13756         Only send motion events if in the same window.
13757         If grabbed, use cursor from window if sibling of grabbed
13758         window, and cursor from grabbed window otherwise.
13759
13760         * gdk/linux-fb/gdkprivate-fb.h:
13761         Update gdk_fb_window_send_crossing_events, gdk_event_make
13762         and grab varaible declarations. Add gdk_fb_*_event_window().
13763
13764         * gdk/linux-fb/gdkwindow-fb.c:
13765         Use new event_window/gdk_event_make() behaviour.
13766         Keep correct track of focus window.
13767         (gdk_window_set_events): Set all specific button motion masks
13768         if GDK_BUTTON_MOTION_MASK set.
13769
13770         * gtk/gtkdnd.c (gtk_drag_update):
13771         Free info->last_event if gdk_drag_motion returned FALSE.
13772
13773 2001-01-16  Tor Lillqvist  <tml@iki.fi>
13774
13775         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
13776         Eliminate redraws when input-only windows are shown or
13777         hidden. Thanks to jpe@archaeopteryx.com.
13778
13779 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
13780
13781         * docs/faq/gtk-faq.sgml: FAQ update:
13782           - Update to bugzilla
13783           - Add GTK+ and security/SUID/SGID
13784           - Add DnD question
13785
13786 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
13787
13788         * gdk/linux-fb/gdkdnd-fb.c:
13789         Some cleanups.
13790         
13791 2001-01-15  Havoc Pennington  <hp@pobox.com>
13792
13793         * tests/testtreeview.c: add test stuff for CellRendererToggle
13794
13795         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
13796         accessor
13797
13798         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
13799         only toggle on button press (would do release like GtkButton, but
13800         we'd need implicit grab code for treeview cells)
13801
13802 2001-01-16  Tor Lillqvist  <tml@iki.fi>
13803
13804         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
13805
13806         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
13807         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
13808
13809         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
13810         to g_{locale,filename}_{to,from}_utf8 to match current API.
13811
13812         * gtk/makefile.msc.in (gtk_OBJECTS)
13813         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
13814
13815         * gtk/gtk.def: Update.
13816
13817 2001-01-15  Tor Lillqvist  <tml@iki.fi>
13818
13819         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
13820         implementaion that more closely mimics the events that an X server
13821         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
13822         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
13823         with nested preview widgets, for instance, more responsive when
13824         you move the mouse quickly into them.
13825         (find_window_for_pointer_event): Make it actually compile.
13826         (gdk_event_translate): Set send_event to the value of
13827         InSendMessage (). This doesn't really mean the same as X11's
13828         send_event flag, but is close enough, says jpe@archaeopteryx.com
13829
13830 2001-01-15  Alexander Larsson  <alexl@redhat.com>
13831
13832         * gdk/linux-fb/gdkdnd-fb.c:
13833         Implemented drag and drop.
13834         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
13835         when it tries to free and then copy the same event (info->last_event).
13836         I am not sure about why this happens, but will continue looking.
13837
13838 2001-01-15  Alexander Larsson  <alexl@redhat.com>
13839
13840         * gdk/linux-fb/gdkwindow-fb.c:
13841         Use gdk_window_invalidate_rect instead of
13842         gdk_window_invalidate_rect_clear to minimise flashing.
13843         When hiding windows you need to clear the root window though.
13844
13845 2001-01-15  Alexander Larsson  <alexl@redhat.com>
13846
13847         * gdk/linux-fb/gdkdrawable-fb2.c:
13848         For optization, add an full_shapes argument to gdk_fb_clip_region.
13849         If this is false, only the cliprects of the shapes are used.
13850
13851         * gdk/linux-fb/gdkprivate-fb.h:
13852         Export gdk_fb_window_peek_shape.
13853         Add full_shapes to gdk_fb_clip_region.
13854
13855         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
13856         When moving a window, don't clear everything under the it, just the
13857         root window. Makes stuff faster and flash less.
13858         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
13859         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
13860         offset of the shape.
13861         
13862
13863 2001-01-12  Havoc Pennington  <hp@redhat.com>
13864
13865         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
13866         current invalid region, fixes redraw bug while scrolling the 
13867         text widget
13868
13869         * gtk/gtktextview.c, gtk/gtktextview.h:
13870         Rearrange the scrolling/validation/etc. code in a major way, 
13871         so it seems to make sense to me. Probably isn't genuinely that
13872         much better, but...
13873
13874         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
13875         notifies
13876
13877         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
13878
13879 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
13880
13881         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
13882         Hide mouse pointer while rotation. Show it afterwards.
13883
13884 2001-01-12  Alexander Larsson  <alexl@redhat.com>
13885
13886         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
13887         windows in consideration when generating clip region.
13888
13889         * gdk/linux-fb/gdkfb.h:
13890         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
13891
13892         * gdk/linux-fb/gdkprivate-fb.h:
13893         Add shape to GdkWindowFBDatat.
13894         exported gdk_fb_window_get_abs_shape().
13895         removed gdk_fb_draw_lines declaration.
13896
13897         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
13898         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
13899         send focus changes when there is a grabbed window.
13900         (gdk_window_get_pointer): Handle shaped windows.
13901         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
13902         (gdk_fb_window_peek_shape): Returns the shape for a window,
13903         handles GDK_FB_USE_CHILD_SHAPE.
13904         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
13905         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
13906         (gdk_window_shape_combine_mask): Implement.
13907
13908         * gtk/gtkwindow-decorate.c:
13909         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
13910         setting the shape of a window makes the window transparent.
13911
13912 2001-01-11  Havoc Pennington  <hp@redhat.com>
13913
13914         * gtk/gtktreemodelsimple.h: Oops, broke some macros
13915
13916 2001-01-10  Havoc Pennington  <hp@redhat.com>
13917
13918         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
13919         add this function, bug 40251
13920
13921         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
13922         of type macro   
13923
13924 2001-01-11  Alexander Larsson  <alexl@redhat.com>
13925
13926         * acconfig.h:
13927         Added ENABLE_SHADOW_FB
13928
13929         * configure.in:
13930         Added --disable-shadowfb
13931
13932         * gdk/linux-fb/gdkcursor-fb.c:
13933         Update shadowfb when updating cursor
13934
13935         * gdk/linux-fb/gdkdrawable-fb2.c:
13936         Added wrappers for shadowfb that calls  the normal drawable
13937         methods, but calls gdk_shadow_fb_update(bounding box) when
13938         GdkWindows are drawed to.
13939         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
13940         which also returns the bounding box.
13941
13942         * gdk/linux-fb/gdkfb.h:
13943         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
13944
13945         * gdk/linux-fb/gdkgeometry-fb.c:
13946         Update shadowfb when scrolling window.
13947
13948         * gdk/linux-fb/gdkglobals-fb.c:
13949         Add _gdk_fb_screen_angle.
13950         
13951         * gdk/linux-fb/gdkkeyboard-fb.c:
13952         Test code for screen rotation. Shift-F2 in the xlate driver
13953         rotates the screen.
13954
13955         * gdk/linux-fb/gdkmain-fb.c:
13956         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
13957
13958         * gdk/linux-fb/gdkmouse-fb.c:
13959         Use fb_width/height instead of modeinfo.xres/yres.
13960
13961         * gdk/linux-fb/gdkprivate-fb.h:
13962         Added fb_men, fb_width, fb_height & fb_stride. When using
13963         shadow fb these can differ from the framebuffer stuff.
13964         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
13965         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
13966         _gdk_fb_screen_angle. Removed CM, RP.
13967
13968         * gdk/linux-fb/gdkrender-fb.c:
13969         Added code for shadowfb handling and screen rotation using
13970         shadowfb.
13971
13972         * gdk/linux-fb/gdkwindow-fb.c:
13973         Use fb_mem, fb_stride, fb_width, fb_height.
13974         Added recompute_rowstride to reset the rowstride of all windows.
13975         Added gdk_fb_recompute_all() which recomputes rootwindow size,
13976         window abs positions and window rowstrides. Usefull when the
13977         rotation has changed.
13978
13979 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
13980
13981         * docs/faq/gtk-faq.sgml: update to make web site updating easier
13982
13983 2001-01-10  Havoc Pennington  <hp@redhat.com>
13984
13985         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
13986         where sibling == iter
13987         (gtk_tree_store_insert_after): handle sibling == iter
13988         (gtk_tree_store_prepend): remove stamp checks
13989         (gtk_tree_store_insert_before): ditto
13990         (gtk_tree_store_append): ditto
13991         (gtk_tree_store_get_path): ditto
13992         (gtk_tree_store_get_value): ditto
13993         (gtk_tree_store_iter_has_child): ditto
13994         (gtk_tree_store_iter_n_children): ditto
13995         (gtk_tree_store_iter_nth_child): ditto
13996         (gtk_tree_store_insert_after): ditto
13997         (gtk_tree_store_is_ancestor): ditto
13998         (gtk_tree_store_iter_depth): ditto
13999         (gtk_tree_store_insert_before): assert that sibling's parent is
14000         the same as the passed-in parent
14001         (gtk_tree_store_insert_after): assert that sibling's parent is
14002         the same as the passed-in parent
14003
14004         
14005         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
14006         function to get the first iterator in a model
14007         
14008         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
14009         conventionally the "root" in this sense is just NULL afaict.
14010
14011         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
14012         where sibling == iter
14013         (gtk_list_store_insert_after): handle case where sibling == iter
14014
14015         * tests/testtreeview.c (run_automated_tests): fairly lame basic
14016         automated tests for ListStore, TreeStore
14017
14018         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
14019         (gtk_list_store_insert): update tail pointer, and fix it to work
14020         (gtk_list_store_insert_before): update tail pointer, and fix it to work
14021         (gtk_list_store_append): use tail to be faster
14022         (gtk_list_store_prepend): fix it, update tail pointer
14023         (gtk_list_store_insert_after): fix it, update tail pointer
14024
14025         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
14026         the list
14027
14028 2001-01-09  Havoc Pennington  <hp@redhat.com>
14029
14030         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
14031         is NULL due to a pending resize
14032
14033         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
14034         column width to values less than 1
14035
14036         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
14037         width to be between min/max width, and still set the width 
14038         even if autosize is turned on, so the tree view can use this 
14039         function in order to autosize.
14040         (gtk_tree_view_column_init): set initial width to 1 not 0
14041
14042         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
14043         setter function to modify column width, so we get notification
14044         (gtk_tree_view_insert_iter_height): ditto
14045         (gtk_tree_view_calc_size): ditto
14046         (gtk_tree_view_check_dirty): ditto
14047
14048         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
14049         properties to change all the interesting attributes of the tree
14050         view column.
14051         (gtk_tree_view_column_set_header_clickable): rename set_clickable
14052         (gtk_tree_view_column_get_clickable): add
14053         (gtk_tree_view_column_set_cell_renderer): don't unset the current
14054         attributes; assume a cell renderer with equivalent object
14055         properties has been swapped in. Do g_object_notify().
14056         (gtk_tree_view_column_set_visible): g_object_notify
14057         (gtk_tree_view_column_get_sizing): rename from get_col_type
14058         (gtk_tree_view_column_set_sizing): g_object_notify
14059         (gtk_tree_view_column_set_width): add g_object_notify
14060         (gtk_tree_view_column_set_min_width): ditto
14061         (gtk_tree_view_column_set_max_width): ditto
14062         (gtk_tree_view_column_set_title): ditto
14063         (gtk_tree_view_column_set_clickable): ditto
14064         (gtk_tree_view_column_set_widget): ditto
14065         (gtk_tree_view_column_set_justification): ditto
14066
14067 2001-01-09  Havoc Pennington  <hp@redhat.com>
14068
14069         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
14070         there are no rows in the model
14071
14072         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
14073         NULL, then return the start of the list
14074
14075         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
14076         if we can't get any rows from an empty model 
14077
14078         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
14079         extraneous * after function pointer typedef usage
14080
14081         * Makefile.am: don't specify full path to cp and rm
14082
14083         * gtk/gtkcellrenderertextpixbuf.c
14084         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
14085         NULL before dereferencing, fixes a segfault that happened from
14086         time to time
14087
14088         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
14089         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
14090         and reindent the function
14091         (gtk_cell_renderer_pixbuf_get_size): indentation
14092
14093         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
14094         we quit it
14095         (gtk_dialog_add_buttons_valist): add g_return_if_fail
14096         (gtk_dialog_set_default_response): New function, to set default
14097         button
14098         (gtk_dialog_set_response_sensitive): New function, to set 
14099         sensitivity of buttons
14100
14101         * gtk/gtkcellrendererpixbuf.c
14102         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
14103         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
14104
14105         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
14106         handle any G_TYPE_OBJECT subclass, not just the base class, and 
14107         also boxed types.
14108         (_gtk_tree_data_list_value_to_node): ditto
14109
14110         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
14111         --gtk-debug=tree
14112
14113         * gtk/gtkmain.c: add GTK_DEBUG_TREE
14114
14115         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
14116
14117 2001-01-09  Tor Lillqvist  <tml@iki.fi>
14118
14119         * gdk/win32/gdkevents-win32.c: Implement better mouse
14120         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
14121         (find_window_for_pointer_event): New function.
14122         (gdk_event_translate): Use it when handling mouse events.
14123
14124 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
14125
14126         * configure.in:
14127         Added --with-included-loaders option
14128
14129         * gdk-pixbuf/Makefile.am:
14130         * gdk-pixbuf/gdk-pixbuf-io.c:
14131         Add support for including selected gdk-pixbuf loaders only.
14132
14133         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
14134         gtk_window_set_has_frame):
14135         Added inline documentation.
14136
14137         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
14138         * docs/reference/gdk/tmpl/windows.sgml:
14139         Added inline documentation.
14140
14141 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
14142
14143         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
14144         realizing buttons that have already been realized.
14145
14146 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
14147
14148         * tests/testtreeview.c (main): Show menu items before adding to
14149         option menu.
14150
14151         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
14152         around if we kill them.
14153
14154         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
14155         Return if we pass in a NULL model.
14156
14157 2001-01-08  Havoc Pennington  <hp@redhat.com>
14158
14159         * tests/testtreeview.c: hack on this some
14160
14161         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
14162         gtk_tree_store_set_valist, v is for arrays, valist for varargs
14163         list
14164         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
14165
14166         * gtk/gtkliststore.h: Add varargs set() and get() convenience
14167         functions
14168
14169 2001-01-08  Alexander Larsson  <alexl@redhat.com>
14170
14171         * gtk/gtkwindow-decorate.[hc]:
14172         * gtk/Makefile.am:
14173         New files. Contains an implementation of a minimal WM for
14174         linux-fb.
14175
14176         * gtk/gtkwindow.h:
14177         Add the possibility for GtkWindows to specify a frame. This
14178         is used for the window decoration code, but could concievably
14179         be used for X programs too (xmms style windows).
14180         GtkWindow->frame is the toplevel window if the window is framed.
14181         The signal frame_event gets all events that are targeted to
14182         GtkWindow->frame.
14183         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
14184         
14185         * gtk/gtkwindow.c:
14186         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
14187         Call out to gtkwindow-decorate.c for WM support in linx-fb.
14188
14189 2001-01-08  Alexander Larsson  <alexl@redhat.com>
14190
14191         * docs/README.linux-fb:
14192         Correct filename ~/.pangoft2_aliases
14193
14194         * gdk/gdkwindow.h:
14195         Added new function gdk_window_get_decorations.
14196
14197         * gdk/linux-fb/gdkfb.h:
14198         Removed _gdk_window_get_decorations declaration.
14199         Renamed _gdk_window_set_child_handler to
14200         gdk_fb_window_set_child_handler.
14201
14202         * gdk/linux-fb/gdkwindow-fb.c:
14203         Renamed _gdk_window_set_child_handler to
14204         gdk_fb_window_set_child_handler.
14205
14206         * gdk/x11/gdkwindow-x11.c:
14207         New function gdk_window_get_mwm_hints().
14208         Implemented gdk_window_get_decorations.
14209
14210         * docs/reference/gdk/tmpl/windows.sgml:
14211         * docs/reference/gdk/gdk-sections.txt:
14212         Added gdk_window_get_decorations docs.
14213         
14214 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
14215
14216         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
14217         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
14218         gdk_fb_window_send_crossing_events):
14219         Possibly send focus events when the mouse moves from one
14220         window to another.
14221
14222 2001-01-07  Tor Lillqvist  <tml@iki.fi>
14223
14224         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
14225         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
14226         to match current API.
14227
14228         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
14229         environment variable is set, don't call g_error when on a
14230         palettized (PseudoColor) display. Some people want to use GTK+ 
14231         in 256-colour mode even though works only partially.
14232
14233         * gdk/gdk.def
14234         * gtk/gtk.def
14235         * gtk/makefile.mingw.in: Update.
14236
14237 2001-01-05  Havoc Pennington  <hp@redhat.com>
14238
14239         * tests/testtreeview.c: hack on this a bit
14240
14241         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
14242         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
14243
14244         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
14245         was spelled incorrectly
14246         (GTK_IS_TREE_MODEL_SIMPLE): ditto
14247
14248         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
14249         from gtk_tree_view_set_headers_active   
14250
14251         * gtk/gtktexttag.c:
14252         (gtk_text_tag_get_property): handle PROP_DIRECTION
14253         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
14254         properties, bug 40235
14255
14256         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
14257         forward_to_line_end
14258
14259 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
14260
14261         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
14262         modules/input/gtkimcontextxim.c: Adapt to new prototypes
14263         for unicode,locale,filename conversion functions.
14264
14265 2001-01-05  Havoc Pennington  <hp@redhat.com>
14266
14267         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
14268         broken if called on the first position in the buffer.
14269
14270         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
14271         forward_to_delimiters to be called only if we aren't already at
14272         the delimiters.
14273
14274 2001-01-05  Havoc Pennington  <hp@redhat.com>
14275
14276         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
14277
14278 2001-01-05  Alexander Larsson  <alexl@redhat.com>
14279
14280         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
14281         colormap in here. Sync from X port.
14282         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
14283         Sync from X port.
14284         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
14285         This happens now and then, and i don't think it is a bug.
14286         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
14287         != endpoint.
14288         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
14289         GDK_LINE_SOLID.
14290
14291         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
14292         some of the fields filled in at least.
14293
14294         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
14295         miLineArcD is no more, remove it from the function definition.
14296
14297 2001-01-04  Havoc Pennington  <hp@redhat.com>
14298
14299         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
14300         this
14301
14302         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
14303         user_data instead of tree_node
14304
14305         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
14306         TREE_VIEW_COLUMN_SIZE
14307
14308         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
14309         "size" field to "width" finishes bug 40061
14310
14311         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
14312         for bitfields, bug 40268
14313
14314 2001-01-04  Havoc Pennington  <hp@redhat.com>
14315
14316         Rename some stuff:
14317         
14318         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
14319
14320         s/GtkModelSimple/GtkTreeModelSimple/g;
14321         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
14322         s/gtk_model_simple/gtk_tree_model_simple/g;
14323         s/gtkmodelsimple/gtktreemodelsimple/g;
14324
14325         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
14326
14327         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
14328         s/column_set_col_type/column_set_sizing/g;
14329
14330         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
14331         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
14332
14333         s/GtkCellRendererType/GtkCellRendererState/g;
14334         
14335         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
14336         (gtk_cell_renderer_toggle_class_init): change "state" property to
14337         "active", to match GtkToggleButton
14338         (gtk_cell_renderer_toggle_get_active): new function, bug
14339         40269
14340         (gtk_cell_renderer_toggle_set_active): new function
14341         (gtk_cell_renderer_toggle_set_property): route changes to toggle
14342         state through gtk_cell_renderer_set_active
14343
14344 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
14345
14346         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
14347         temporarily until they work again.  Brought up to date with
14348         changes in the model.
14349         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
14350         model.
14351
14352 2001-01-04  Havoc Pennington  <hp@redhat.com>
14353
14354         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
14355         equal to the line length, then position iterator before paragraph 
14356         separators. Fixes crash reported by Mikael Hermansson when
14357         pressing left arrow from the start of a line.   
14358
14359         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
14360         about byte indexes off the end
14361         (iter_set_from_char_offset): add g_error about char offsets
14362         off the end
14363
14364 2001-01-03  Havoc Pennington  <hp@redhat.com>
14365
14366         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
14367
14368         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
14369         of private functions; remove inclusion of private headers.
14370
14371         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
14372         function, so we don't need private functions in gtktextdisplay.c
14373
14374         * gtk/gtktextiterprivate.h: underscore-ification
14375
14376         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
14377         to instead say "only useful to implement widgets"
14378
14379         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
14380         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
14381         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
14382
14383         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
14384         This function was completely broken
14385
14386         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
14387
14388         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
14389
14390         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
14391
14392         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
14393
14394         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
14395
14396         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
14397
14398         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
14399         gtk_paint_layout
14400
14401         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
14402         gtk_paint_layout
14403
14404         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
14405         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
14406         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
14407         which were not implemented.     
14408
14409         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
14410         insert_pixbuf signal. Rename delete_text to delete_range since it
14411         also deletes pixbufs and child anchors. This almost closes bug
14412         40245 (still need to deal with child anchors)
14413
14414         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
14415         insert_pixbuf, change signal names as appropriate, change types of
14416         signals taking marks/tags to have the specific type, not just
14417         G_TYPE_OBJECT
14418         
14419         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
14420         closes bug 40051
14421
14422         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
14423         unnecessary remove_contents() call
14424         (gtk_option_menu_class_init): add a "changed" signal, closes
14425         bug 40039
14426         (gtk_option_menu_update_contents): emit "changed" if the 
14427         active menu item changes
14428
14429         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
14430         cast to GtkObject, reported by Jonas Borgstrom
14431         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
14432         we can't do stuff with side effects in finalize. Instead, spew a
14433         warning if the loader isn't closed.
14434
14435         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
14436         colormap in here, non-X ports probably need to sync to this change
14437
14438         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
14439         assertion that colormap != NULL, you can set the colormap to NULL
14440         if you like.
14441         
14442         * Makefile.am: remove gtk-config-2.0
14443
14444         * configure.in: Use pkg-config to locate GLib. Remove
14445         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
14446         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
14447         Use pkg-config to locate Pango. Output correct Pango libs to
14448         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
14449
14450         * Makefile.am (pkgconfig_DATA): install only target-specific pc
14451         files
14452         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
14453         X11 pc files
14454
14455         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
14456         unref from here
14457
14458 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
14459
14460         * configure.in:
14461         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
14462
14463 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
14464
14465         * gtk/gtktextlayout.c
14466         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
14467         variable when moving back onto a single line.
14468
14469 2001-01-01  Havoc Pennington  <hp@redhat.com>
14470
14471         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
14472
14473         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
14474
14475         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
14476         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
14477
14478 2001-01-01  Havoc Pennington  <hp@redhat.com>
14479
14480         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
14481
14482         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
14483         GtkTextAttributes
14484
14485         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
14486         #40246
14487         (gtk_text_attributes_copy_values): rename from 
14488         gtk_text_attributes_copy
14489         (gtk_text_attributes_copy): a more standard GTK copy function, 
14490         which returns a new object
14491
14492 2001-01-01  Havoc Pennington  <hp@redhat.com>
14493
14494         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
14495         
14496         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
14497         don't fill in tree_view->priv->selection, kind of an unexpected
14498         side effect
14499
14500         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
14501         gtkintl.h
14502         
14503         * gtk/gtkcellrenderer.c: Remove definition of _ and include
14504         gtkintl.h
14505         (gtk_cell_renderer_get_property): remove calls to g_value_init
14506
14507         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
14508         gtkintl.h
14509
14510         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
14511         and include gtkintl.h
14512         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
14513         property names
14514
14515         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
14516         GtkTreeSelection
14517         (_gtk_tree_selection_new_from_with_view): rename, return
14518         GtkTreeSelection
14519         (_gtk_tree_selection_set_tree_view): rename with uscore
14520         (gtk_tree_selection_get_selected): fill in the "model" out param
14521         first, so it gets filled in even if we return at the top of the 
14522         function
14523         (gtk_tree_selection_real_select_all): add a comment and an else{}
14524         to clarify this a bit
14525         (gtk_tree_selection_real_unselect_all): add the same else{}
14526
14527         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
14528         set_tree_view to have underscore prefixes, move them to the
14529         private header, fix return type of new_with_tree_view
14530         (struct _GtkTreeSelection): mark struct
14531         fields private  
14532
14533         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
14534         GtkTreeModelFlags, not a guint
14535         (gtk_tree_path_prev): return gboolean not gint
14536         (gtk_tree_path_up): return gboolean not gint
14537
14538         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
14539         return GtkTreeModelFlags, not a guint
14540
14541         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
14542         that child model is non-null before unrefing it
14543         (g_value_int_compare_func): make this a qsort compare func, not 
14544         a boolean predicate
14545
14546         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
14547         (add -umn to the end), and mark it unimplemented
14548         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
14549         I don't see what it's for - doesn't the model always sort itself?
14550         (gtk_tree_model_sort_set_compare): this had the wrong signature
14551
14552         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
14553         Fix the docs to say that it destructively replaces existing
14554         attributes (previously said that it added attributes).
14555         (gtk_tree_view_column_set_visible): canonicalize bool before
14556         equality testing. Also, check for realization before
14557         hiding/showing the tree_column->window; if this window could exist
14558         before realization, then it's busted and needs fixing, we can't 
14559         create GDK resources pre-realization. Also, remove
14560         superfluous queue_resize(), since set_size() does that for us.
14561         (gtk_tree_view_column_set_col_type): check realization before 
14562         using tree_column->window
14563
14564         * gtk/gtktreedatalist.c: fix filename in copyright notice
14565
14566 2000-12-31  Havoc Pennington  <hp@pobox.com>
14567
14568         * gtk/gtktextview.c: Rearrange all the
14569         scroll-while-dragging-or-selecting code to be different, not
14570         necessarily better. ;-)
14571         (gtk_text_view_scroll_to_mark): Change this
14572         function to take within_margin as a fraction instead of a pixel
14573         value, and to take alignment arguments (indicating where to align 
14574         the mark inside the visible area)
14575         
14576         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
14577         to GtkObject
14578
14579         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
14580         behavior so that offsets past the end of the line are not 
14581         allowed, and an offset equal to the line length moves the iterator
14582         to the next line
14583         (gtk_text_iter_set_line_index): make parallel change
14584         (gtk_text_iter_get_bytes_in_line): add this function
14585         
14586         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
14587         of byte indexes off the end of the line; byte index at the end of
14588         the line now returns FALSE and doesn't fill in the requested
14589         values, byte index past the end of the line is an error.  Also,
14590         don't allow -1 offset anymore, since its meaning is unclear.
14591
14592         This change exposes some bug in visual cursor motion, where we
14593         end up with a huge invalid byte index; needs fixing. Symptom of 
14594         bug is a crash when you hit up arrow.
14595         
14596         (_gtk_text_line_char_locate): match the change to byte_locate
14597
14598         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
14599         from start of line properly. fixes bug reported by Mikael
14600         Hermansson where backspace would delete all text before the
14601         cursor.
14602
14603 2000-12-30  Tor Lillqvist  <tml@iki.fi>
14604
14605         * gdk/win32/gdkwindow-win32.c
14606         (gdk_window_impl_win32_get_visible_region): New function, as in
14607         the X11 backend.
14608         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
14609         instead of duplicating the same code here.
14610
14611         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
14612         GDK_COLORMAP macro.
14613
14614         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
14615         destroy function.
14616         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
14617         access that.
14618
14619         * gtk/gtk.def: Update.
14620
14621         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
14622
14623 2000-12-30  Havoc Pennington  <hp@pobox.com>
14624
14625         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
14626         colormap on input only windows, to avoid special cases all over
14627         the code for these windows.
14628
14629 2000-12-26  Tor Lillqvist  <tml@iki.fi>
14630
14631         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
14632         we are on a palettized display ("PseudoColor" in X11), as the code
14633         for that doesn't work anyway, and never has.
14634
14635 2000-12-22  Alexander Larsson  <alexl@redhat.com>
14636
14637         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
14638         Don't use isprint() for chars > 255.
14639
14640 2000-12-21  Havoc Pennington  <hp@redhat.com>
14641
14642         * tests/testtreeview.c: more work
14643
14644 2000-12-21  Alexander Larsson  <alexl@redhat.com>
14645
14646         * docs/README.linux-fb:
14647         Update the docs to the new pangoft2 way.
14648
14649 2000-12-21  Alexander Larsson  <alexl@redhat.com>
14650
14651         * configure.in:
14652         For linux-fb get the pangoft2 cflags and libs. This needs a recent
14653         pango version.
14654         Remove modules/linux-fb/Makefile.
14655
14656         * gdk/linux-fb/gdkdrawable-fb2.c:
14657         Render glyphs using freetype.
14658
14659         * gdk/linux-fb/gdkfb.h:
14660         Add new fb-specific functions needed for managing windows.
14661
14662         * gdk/linux-fb/gdkmain-fb.c:
14663         Remove gdk_font_init/fini() calls.
14664
14665         * gdk/linux-fb/gdkpango-fb.c:
14666         Remove old implementation. Use pangoft2 instead.
14667
14668         * gdk/linux-fb/gdkprivate-fb.h:
14669         Remove PangoFBFont and related stuff.
14670
14671         * gdk/linux-fb/gdkwindow-fb.c:
14672         Implement drawable->get_visible_region.
14673         Implement support for _gdk_window_set_child_handler () and
14674         _gdk_window_get_decorations().
14675
14676         * modules/Makefile.am:
14677         Remove linux-fb subdir.
14678
14679         * modules/linux-fb/*:
14680         Removed all.
14681         
14682 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
14683
14684         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
14685         calls, as they are no longer needed.
14686
14687         * gtk/gtktreemodelsort.c: Fix up the comparison code.
14688         
14689         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
14690         figure out how to emit a signal on an interface.
14691
14692 2000-12-20  Havoc Pennington  <hp@redhat.com>
14693
14694         * tests: new directory to contain tests, gtk/test* should move
14695         here sometime (with appropriate on-cvs-server hackery)
14696
14697         * tests/testtreeview.c, tests/Makefile.am: a test
14698         
14699         * configure.in (AC_OUTPUT): add tests/Makefile
14700
14701         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
14702         and "invisible_set" which were missing
14703
14704         * gtk/gtkrbtree.h: some cheesy indentation fix
14705         
14706 2000-12-20  Alexander Larsson  <alexl@redhat.com>
14707
14708         * gtk/gtkinvisible.c (gtk_invisible_realize):
14709         Attach the style to the window so that the style it is not
14710         leaked when unrealizing the window.
14711
14712 2000-12-18  Havoc Pennington  <hp@redhat.com>
14713
14714         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
14715         begin/end user action where appropriate
14716         (gtk_text_view_commit_handler): add begin/end user action
14717
14718         * gtk/gtktextbuffer.c: add begin/end user action signals, and
14719         bracket interactive operations with begin/end user action pair.
14720         
14721         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
14722         "interactive" arg from insert_text and delete_text signals.
14723         Add begin_user_action, end_user_action signals
14724         (gtk_text_buffer_begin_user_action): 
14725         (gtk_text_buffer_end_user_action): New functions to delimit 
14726         a user-visible action
14727
14728         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
14729         signals.
14730         
14731 2000-12-18  Havoc Pennington  <hp@redhat.com>
14732
14733         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
14734         was pretty non-working.
14735
14736         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
14737         by passing the length to g_utf8_validate().
14738
14739 2000-12-16  Havoc Pennington  <hp@pobox.com>
14740
14741         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
14742         Port to GObject, can go back in gdk-pixbuf after setting up 
14743         a gdk-pixbuf-marshal.h header over there.
14744
14745         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
14746         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
14747         args
14748         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
14749         set
14750         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
14751         here, do it when we create the buttons later
14752         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
14753         (gtk_tree_view_map): paranoia checks that column->button is shown 
14754         and unmapped
14755         (gtk_tree_view_size_request): only request visible children.
14756         Move header size calculation in here, for cleanliness, and 
14757         to maintain invariants for child widgets if we eventually 
14758         let users set different children inside the buttons
14759         (gtk_tree_view_map_buttons): factor out code to map buttons,
14760         since it was being called several times
14761         (gtk_tree_view_size_allocate_buttons): move_resize the drag
14762         windows instead of just moving them; their height may change 
14763         if we allow random widgets in there, or the theme changes.
14764         (gtk_tree_view_size_allocate): move button size allocation 
14765         above emitting the scroll signals, to ensure a sane state when we
14766         hit user code
14767         (gtk_tree_view_button_release): remove queue_resize after
14768         tree_view_set_size(), set_size() will handle any resize queuing
14769         that's needed
14770         (gtk_tree_view_focus_in): just queue a draw, don't fool with
14771         draw_focus goo
14772         (gtk_tree_view_focus): use gtk_get_current_event() and
14773         gdk_event_get_state()
14774         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
14775         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
14776         semicolon
14777         (gtk_tree_view_create_button): show the button here
14778         (gtk_tree_view_button_clicked): actually emit the clicked signal
14779         on the column
14780         (_gtk_tree_view_set_size): return right away if the size is
14781         unchanged, as a cheesy optimization
14782         (gtk_tree_view_setup_model): rename set_model_realized to 
14783         setup_model to match the flag that indicates whether we've 
14784         called it
14785         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
14786         exist, because set_scroll_adjustment does that and it shouldn't
14787         matter what order you call these in
14788         (gtk_tree_view_get_vadjustment): ditto
14789         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
14790         for paranoia
14791         (gtk_tree_view_set_headers_visible): call
14792         gtk_tree_view_map_buttons() instead of using cut-and-paste code
14793         (gtk_tree_view_append_column): clarify whether the return value
14794         is the count of columns before or after, and do the increment 
14795         separately from the return statement so you can tell from the code.
14796         (gtk_tree_view_remove_column): ditto
14797         (gtk_tree_view_insert_column): ditto
14798         (gtk_tree_view_get_column): remove g_return_if_fail for columns
14799         outside the existing range, the docs say that outside-range
14800         columns are allowed, so we handle them as documented. (Presumably
14801         this allows a nice loop with column != NULL as test.)
14802         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
14803         mean (left/right/center etc.).
14804         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
14805         (gtk_tree_view_expand_row): add docs
14806         (gtk_tree_view_collapse_row): add docs
14807
14808         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
14809         function to emit the clicked signal on a column
14810         
14811         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
14812         state of an event
14813         (gdk_event_get_time): don't treat GDK_SCROLL 
14814         as a button event, remove default case from switch so gcc 
14815         will whine if we don't explicitly handle all event types
14816
14817         * gtk/gtktreeselection.h: added some FIXME 
14818         
14819         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
14820         "columns" to "n_columns" and "column" to "columns" for clarity
14821
14822 2000-12-16  Havoc Pennington  <hp@pobox.com>
14823         
14824         * gtk/gtktextiter.c: General cleanup of the log attr iteration
14825         stuff. This should make e.g. the delete key work again in the
14826         text widget...
14827         (gtk_text_iter_forward_cursor_positions): handle negative count
14828         (gtk_text_iter_backward_cursor_positions): handle negative count
14829         (gtk_text_iter_forward_word_ends): handle negative count
14830         (gtk_text_iter_backward_word_starts): handle negative count
14831
14832         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
14833         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
14834         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
14835         GObject. No doubt will cause breakage.
14836
14837         * demos/gtk-demo/textview.c: remove hacks around
14838         non-GObject-ification of the text objects
14839
14840         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
14841         the text tag
14842         
14843 2000-12-14  Havoc Pennington  <hp@pobox.com>
14844
14845         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
14846         that we have Xrender
14847
14848 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
14849
14850         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
14851         Add two virtualized functions gdk_drawable_get_clip_region - to
14852         get the clip region when drawing.
14853         
14854         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
14855         use invalidate_region.
14856
14857         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
14858         region.
14859
14860         * acconfig.h configure.in: Check for Xft. For now, assume
14861         that if Xft is found, Pango was compiled with Xft support
14862         as well.
14863
14864         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
14865         gdk_colormap_query_color().
14866         
14867         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
14868         with Xft if appropriate.
14869
14870         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
14871         a pangoxft context if we have XFT and the environment
14872         variable GD_USE_XFT is set.
14873         
14874         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
14875         and also possibly an XftDraw structure.
14876
14877         * gtk/gtkfontsel.c: Handle the case where the font from the
14878         style doesn't match any of the fonts a bit better.
14879         
14880         * gtk/testgtk.c: Add tabs between directional segments for
14881         hebrew/arabic test. (Not really necessary, just a little
14882         prettier.)
14883
14884 2000-12-14  Havoc Pennington  <hp@redhat.com>
14885
14886         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
14887         reading a file
14888
14889 2000-12-14  Havoc Pennington  <hp@redhat.com>
14890
14891         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
14892         unused call to get_last_line()
14893
14894         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
14895         here until boxed is working (and maybe after that - we should
14896         really not gratuitously break old code)
14897
14898         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
14899         specific types for font_desc and tabs args, move them to
14900         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
14901         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
14902
14903         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
14904         use GTK_TYPE_POINTER for signal signatures as a hack-around
14905
14906         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
14907         PangoTabArray
14908
14909         * gtk/gtktextlayout.c (line_display_iter_to_index): 
14910         make static
14911         (line_display_index_to_iter): make static
14912
14913         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
14914         to marshal a string not a boxed
14915
14916         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
14917
14918         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
14919         since the UTF-8 isn't validated yet
14920
14921         * gtk/gtktextsegment.c (char_segment_check_func): don't require
14922         lines to end in '\n'
14923         
14924         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
14925         forward_to_delimiters, and grapheme boundaries
14926         (gtk_text_view_delete_from_cursor): properly handle non-newline
14927         delimiters, and grapheme boundaries
14928
14929         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
14930         to gtk_text_iter_forward_to_delimiters, and make it work properly
14931         if empty lines end with a character other than '\n'
14932
14933         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
14934         position
14935
14936 2000-12-15  Tor Lillqvist  <tml@iki.fi>
14937
14938         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
14939
14940         * gtk/gtk.def
14941         * gdk/gdk.def: Update.
14942
14943         * gdk/win32/gdkmain-win32.c
14944         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
14945         gdkmain-win32.c here.
14946
14947         * gdk/win32/makefile.mingw.in (all): No need to make
14948         gdk-win32res.o here, the makefile one step up will call us to make
14949         it.
14950
14951         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
14952         gdkkeys-win32.
14953
14954         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
14955
14956         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
14957         call to g_source_add().
14958
14959         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
14960         leak. Thanks to Andreas Kemnade.
14961
14962 2000-12-13  Havoc Pennington  <hp@pobox.com>
14963
14964         * gtk/gtktextbtree.h: Remove double _ in front of some functions
14965
14966         * gtk/gtktext*.[hc]: update accordingly
14967         
14968 2000-12-13  Havoc Pennington  <hp@pobox.com>
14969
14970         * gtk/gtktextbtree.h: Put _ in front of every function in this 
14971         header file
14972
14973         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
14974
14975 2000-12-13  Alex Larsson  <alexl@redhat.com>
14976
14977         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
14978         Add support for ps2 intellimouse.
14979
14980         * gdkkeyboard-fb.c:
14981         Move shift-F1 repaint handling to xlate handler only.
14982         
14983         * docs/README.linux-fb:
14984         Add imps2 to docs.
14985         Document the new refresh keys.
14986         
14987 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
14988
14989         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
14990
14991         * gtk/gtkbox.c: change property types from (u)long to (u)int for
14992         ::position and ::padding.
14993
14994         * gtk/gtkcontainer.c: make ::border_width an INT property.
14995
14996         * gtk/gtkpacker.c: make ::position an INT property.
14997
14998         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
14999         guard against NULL h/v scrollbars, since this is used at construction
15000         time.
15001
15002         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
15003         internal gtk_clist_constructor().
15004
15005         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
15006         gtk_ctree_constructor().
15007
15008         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
15009         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
15010
15011         * docs/reference/Makefile.am: fun stuff, disabled docs generation
15012         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
15013
15014         * gtk/gtkwidget.[hc]:
15015         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
15016         and gtk_widget_get().
15017         (gtk_widget_new): use g_object_new_valist().
15018         (gtk_widget_set): use g_object_set_valist().
15019
15020         * gtk/gtkobject.[hc]:
15021         removed gtk_object_arg_get_info(), gtk_object_getv(),
15022         gtk_object_query_args(), gtk_object_newv(),
15023         gtk_object_class_add_signals(),
15024         gtk_object_class_user_signal_new(),
15025         gtk_object_class_user_signal_newv(),
15026         gtk_object_arg_set(), gtk_object_arg_get(),
15027         gtk_object_args_collect(),
15028         gtk_object_default_construct(),
15029         gtk_object_constructed(),
15030         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
15031         removed nsignals, signals and n_args members from GtkObjectClass.
15032         (gtk_object_new): use g_object_new_valist().
15033         (gtk_object_set): use g_object_set_valist().
15034         (gtk_object_get): use g_object_get_valist().
15035         
15036         * gtk/gtkcompat.h: define gtk_object_default_construct().
15037         
15038         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
15039         g_object_new().
15040
15041         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
15042         fucntions, cleaned up method assignments (make sure your structures
15043         are setup properly before calling out). removed all GTK_CONSTRUCTED
15044         hacks ;)
15045
15046 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
15047
15048         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
15049         off-by-one error in checks. (Dave Lambert)
15050
15051 2000-12-12  Alexander Larsson  <alexl@redhat.com>
15052
15053         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
15054         Don't free gdk_fb_keyboard twice.
15055
15056 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
15057
15058         * gtk/testgtk.c:
15059         (create_tooltips): 
15060         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
15061         use GObject swapped_signal:: properties instead.
15062
15063         * gtk/gtkcellrenderertoggle.c: 
15064         * gtk/gtkcellrenderertextpixbuf.c: 
15065         * gtk/gtkcellrenderertext.c: 
15066         * gtk/gtkcellrendererpixbuf.c: 
15067         * gtk/gtkcellrenderer.c:
15068         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
15069         missing warnings for invalid property ids, install properties
15070         with g_object_class_install_property() now.
15071         
15072         * gtk/gtksignal.c:
15073         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
15074         
15075 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
15076         
15077         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
15078         to determine if a window is the focus widget within
15079         its toplevel.
15080
15081         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
15082         to be boolean.
15083
15084         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
15085         of the case where the container CAN_FOCUS to here instead
15086         of having it in each individual move-the-focus place.
15087
15088         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
15089         focusing to be geometric in a much more obvious sense. Arrowing
15090         around is still non-intuitive because it isn't perfect and
15091         because entries, etc, grab the arrow keys, but it at least
15092         usually will do what you expect now.
15093         
15094         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
15095         file.
15096
15097         * gtk/gtknotebook.c: Change tabs to be a single item in
15098         the focus chain. Make movement of focus on tabs with arrow
15099         keys wrap around.
15100         
15101         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
15102         CHECK_FIND_CHILD macro to give informative error messages
15103         instead of silent returns.
15104
15105         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
15106         flag since we handle GdkReturn on the tabs.
15107
15108         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
15109         windows rather than sending expose events directly.
15110
15111         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
15112         definition for GtkNotebookPage into .c file, since it is private.
15113
15114         * gtk/testgtk.c (create_notebook): Add option for 
15115         testing borderless notebook.
15116
15117         * gtk/testgtk.c (page_switch): Removed egregious poking
15118         around in GTK+ internals.
15119
15120         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
15121
15122         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
15123         properly through gtk_clist_focus. Make the title headers a
15124         single item in the tab-focus chain, and make left-right wrap
15125         around.
15126
15127         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
15128         focus method so that wrapping around works properly.
15129
15130         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
15131         that is handled for the widget now. 
15132
15133 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
15134
15135         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
15136         widgets as TOPLEVEL.
15137
15138         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
15139         TOPLEVEL widgets are containers.
15140
15141         * gtk/gtkinvisible.h: Remove useless include.
15142
15143 2000-12-11  Havoc Pennington  <hp@redhat.com>
15144
15145         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
15146         Handle chopping off \r\n and 0x2029 in addition to \n before
15147         passing to PangoLayout
15148
15149         * gtk/gtkimcontextsimple.c
15150         (gtk_im_context_simple_get_preedit_string): 
15151         return an empty string if no match is pending
15152
15153         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
15154         assertion that the returned preedit string was sane
15155
15156         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
15157         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
15158         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
15159
15160 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
15161
15162         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
15163         Fix up finalizer to chain to its parent.
15164
15165 2000-12-11  Alexander Larsson  <alexl@redhat.com>
15166
15167         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
15168         Clearified the difference between the keyboard types. Wrote a note
15169         about the magic sysrq key to get out of raw mode.
15170
15171 2000-12-09  James Henstridge  <james@daa.com.au>
15172
15173         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
15174         member to hold masks for detecting the start of a protocol packet.
15175         (mouse_devs): add packet start masks for ps2 and ms device types.
15176         Left the mask for fidmour blank, as I have no idea what it should
15177         be.
15178         (handle_mouse_io): skip bytes until we get to the start of a
15179         packet.  My Logitech mouse seems to be passing an extra NULL pad
15180         byte, and GPM does a similar thing here.
15181         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
15182         this is the ms mouse driver.
15183         (gdk_fb_mouse_ms_packet): fix up button handling, which was
15184         completely broken except for button1.  It was checking the wrong
15185         bit in the packet for the status of the right mouse button, and
15186         wrongly assuming right == button2 rather than 3.  I fixed that and
15187         also added support for middle button (button2).
15188
15189 2000-12-08  Havoc Pennington  <hp@redhat.com>
15190
15191         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
15192         that cause a segfault on text insertion
15193
15194         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
15195         warning
15196
15197         * gtk/gtktextiter.c (test_log_attrs): use
15198         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
15199
15200         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
15201         Get log attrs for a line, using a cache stored on the buffer
15202         
15203         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
15204         reported by Jeff Franks
15205
15206 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
15207
15208         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
15209         /dev/ttyS0 -> /dev/mouse
15210
15211 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
15212
15213         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
15214         Added dummy gdk_fontset_load.
15215
15216 2000-12-08  Alexander Larsson  <alexl@redhat.com>
15217
15218         * docs/README.linux-fb:
15219         * docs/Makefile.am:
15220         Initial GtkFB docs.
15221         
15222         * gdk/linux-fb/Makefile.am:
15223         Define GDK_DATA_PREFIX.
15224
15225         * gdk/linux-fb/gdkmain-fb.c:
15226         Fix typo.
15227         Change default display to /dev/fb0.
15228
15229         * gdk/linux-fb/gdkpango-fb.c:
15230         Add $(prefix)/share/fonts/ to font path.
15231         
15232 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
15233
15234         * gdk/linux-fb/gdkkeyboard-fb.c:
15235         New file containing the abstracted keyboard driver. Most code
15236         taken from gdkinput-ps2.c
15237
15238         * gdk/linux-fb/gdkinput-ps2.c:
15239         Removed file.
15240         
15241         * gdk/linux-fb/Makefile.am:
15242         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
15243
15244         * gdk/linux-fb/gdkcolor-fb.c:
15245         display->fb was renamed to display->fb_fd.
15246
15247         * gdk/linux-fb/gdkcursor-fb.c:
15248         gdk_mouse_get_info -> gdk_fb_mouse_get_info
15249
15250         * gdk/linux-fb/gdkinput.c:
15251         Moved gdk_input_init here from gdkinput-ps2.c
15252
15253         * gdk/linux-fb/gdkmain-fb.c:
15254         display->fb was renamed to display->fb_fd.
15255         Now the tty and the console is opened here instead
15256         of in the keyboard driver. Also check GDK_VT to see what
15257         tty to open.
15258         Move gdk_beep () here from gdkinput-ps2.c
15259         gdk_mouse_get_info -> gdk_fb_mouse_get_info
15260
15261         * gdk/linux-fb/gdkmouse-fb.c:
15262         Add header.
15263         gdk_mouse_get_info -> gdk_fb_mouse_get_info
15264         Return correct keyboard modifiers.
15265         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
15266
15267         * gdk/linux-fb/gdkprivate-fb.h:
15268         Add tty and vt info to display.
15269         Add orignal modeinfo storage to display
15270         Update global functions
15271
15272         * gdk/linux-fb/gdkwindow-fb.c:
15273         Added gdk_fb_window_find_focus().
15274         gdk_mouse_get_info -> gdk_fb_mouse_get_info
15275
15276 2000-12-07  Havoc Pennington  <hp@pobox.com>
15277
15278         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
15279         function, noticed by Alex
15280
15281 2000-12-06  Elliot Lee  <sopwith@redhat.com>
15282
15283         * configure.in: Detect freetype properly
15284
15285         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
15286         above.
15287
15288 2000-12-06  Alexander Larsson  <alexl@redhat.com>
15289
15290         * gdk/linux-fb/Makefile.am:
15291         Add gdkmouse-fb.c
15292         
15293         * gdk/linux-fb/gdkmouse-fb.c:
15294         New file. Abstracted the mouse drivers a bit.
15295
15296         * gdk/linux-fb/gdkcursor-fb.c:
15297         The cursor hide/show functions was moved here from gdkinput-ps2.c.
15298
15299         * gdk/linux-fb/gdkinput-ps2.c:
15300         Removed old mouse handling code. Moved cursor handling code
15301         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
15302         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
15303         gdk_mouse_get_info.
15304
15305         * gdk/linux-fb/gdkmain-fb.c:
15306         Pass NULL pointers for x,y in gdk_mouse_get_info call.
15307
15308         * gdk/linux-fb/gdkprivate-fb.h:
15309         Removed public gdk_fb_find_common_ancestor, added and renamed
15310         functions for the new mouse handling code.
15311
15312         * gdk/linux-fb/gdkwindow-fb.c:
15313         Moved gdk_fb_window_send_crossing_events here. added global
15314         variable gdk_fb_window_containing_pointer. made
15315         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
15316         renamed to gdk_mouse_get_info.
15317
15318 2000-12-06  Alexander Larsson  <alexl@redhat.com>
15319
15320         * gdk/linux-fb/gdkevents-fb.c:
15321         Update to match latest gmain/gsource changes.
15322
15323         * gdk/linux-fb/gdkinput-ps2.c:
15324         Bogus gdk_keymap_get_entries_for_keycode implementation so that
15325         it links. Will be implemented later.
15326
15327 2000-12-03  Havoc Pennington  <hp@pobox.com>
15328
15329         * gdk/Makefile.am: add gdkkeys.[hc]
15330
15331         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
15332         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
15333
15334         * acconfig.h, configure.in: add checks and command line options
15335         for XKB
15336
15337         * gdk/x11/gdkkeys-x11.c: Implement the above functions
15338         
15339         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
15340         and group in the key event
15341
15342         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
15343         field with the low-level hardware key code, and a group
15344         field with the keyboard group
15345
15346         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
15347         and declare a couple globals used for keymap handling
15348         
15349         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
15350         hold down Shift-Control and type a hex number to get a Unicode 
15351         character corresponding to the hex number
15352         (gtk_im_context_simple_get_preedit_string): Fix cursor position
15353         (return bytes not chars)
15354
15355 2000-12-05  Elliot Lee  <sopwith@redhat.com>
15356
15357         * gdk/gdkcolor.h: Make GdkColor specify element sizes
15358         to avoid waste on 64-bit platforms.
15359
15360 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
15361
15362         * INSTALL: Fix link to PNG home, remove reference
15363         to fribidi.
15364
15365         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
15366         
15367         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
15368         tested.)
15369
15370         * gtk/gtkcheckmenuitem.c: Permanently turn on
15371         always_show_toggle.
15372
15373         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
15374         be NULL. (Vladimir Klebanov, #26545)
15375
15376         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
15377         some signed/unsigned comparison problems. (#6510,
15378         David Kaelbling)
15379
15380         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
15381         return type to boolean (Oskar Liljeblad, #18648)
15382
15383 2000-12-05  Alexander Larsson  <alexl@redhat.com>
15384
15385         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
15386         Remove bogus colormap setting.
15387
15388 2000-12-05  Alexander Larsson  <alexl@redhat.com>
15389
15390         * gdk/linux-fb/gdkcolor-fb.c:
15391         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
15392
15393         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
15394         Must set colormap.
15395         
15396 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
15397
15398         * docs/tutorial/gtk-tut.sgml: DND updates
15399
15400 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
15401
15402         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
15403         Remove old debug g_warning().
15404         (gdk_fb_draw_drawable): The src argument can be either a wrapper
15405         or an implementation, just pass the implementation to draw_drawable_2.
15406         
15407         * gdk/linux-fb/gdkprivate-fb.h:
15408         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
15409
15410         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
15411         clear and invalidate area when window is destroyed.
15412         (send_map_events): Remove old commented out code.
15413
15414 2000-12-05  Alexander Larsson  <alexl@redhat.com>
15415
15416         * gdk/linux-fb/gdkpango-fb.c:
15417         Use italic instead of oblique in font aliases.
15418         
15419         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
15420         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
15421         other unsupported functions.
15422
15423 2000-12-04  Havoc Pennington  <hp@redhat.com>
15424
15425         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
15426
15427         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
15428
15429         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
15430
15431         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
15432         hack to avoid infinite loops (synthetic expose event) - 
15433         Owen has more appropriate fixes in a branch he'll check in later.
15434
15435         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
15436         separator, CR, and CRLF as line ends
15437
15438         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
15439         into lines using pango_find_paragraph_boundary(); other bits of
15440         the widget are still going to be broken if the boundary isn't '\n'
15441         though
15442
15443 2000-12-04  Alexander Larsson  <alexl@redhat.com>
15444
15445         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
15446         multiply.
15447
15448         * gdk/linux-fb/gdkpango-fb.c:
15449         Copied some 26.6 scaling macros from pango to clean up the rounding.
15450         (pango_fb_font_get_glyph_info): Correct sign on x value.
15451
15452         * gdk/linux-fb/gdkprivate-fb.h:
15453         Removed unreferenced external functions.
15454
15455         * modules/linux-fb/Makefile.am: Use ` instead of '.
15456
15457         * modules/linux-fb/basic.c:
15458         Remove dead code. In particular the dummy lang engine which broke all
15459         pango layouts in GtkFB. Don't include tables-big.i anymore.
15460
15461         * modules/linux-fb/tables-big.i:
15462         Upgrade to latest version from pango. Left for reference, basic_ranges
15463         moved to basic.c.
15464         
15465 2000-12-04  Havoc Pennington  <hp@redhat.com>
15466
15467         Fix bugs Alex found:
15468         
15469         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
15470         to "draw"
15471
15472         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
15473
15474         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
15475
15476         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
15477         implementation in here, apparently the expose() implementation was
15478         dead code.
15479
15480 2000-12-04  Alexander Larsson  <alexl@redhat.com>
15481
15482         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
15483         Return positive descent.
15484
15485 2000-12-02  Havoc Pennington  <hp@pobox.com>
15486
15487         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
15488         method and signal
15489         
15490         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
15491         calls gdk_window_process_updates() to push the exposes through
15492         (gtk_widget_class_init): No more draw signal, no
15493         gtk_widget_real_draw()  
15494         
15495         * gtk/gtkbin.c (gtk_bin_draw): remove
15496
15497         * gtk/gtkbox.c (gtk_box_draw): remove
15498
15499         * gtk/gtkbutton.c (gtk_button_draw): remove
15500
15501         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
15502
15503         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
15504
15505         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
15506
15507         * gtk/gtkclist.c (gtk_clist_draw): remove
15508
15509         * gtk/gtkentry.c (gtk_entry_draw): remove
15510
15511         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
15512
15513         * gtk/gtkfixed.c (gtk_fixed_draw): remove
15514
15515         * gtk/gtkframe.c (gtk_frame_draw): remove
15516
15517         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
15518
15519         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
15520
15521         * gtk/gtklayout.c (gtk_layout_draw): remove
15522
15523         * gtk/gtklist.c (gtk_list_draw): remove
15524
15525         * gtk/gtklistitem.c (gtk_list_item_draw): remove
15526
15527         * gtk/gtkmenu.c (gtk_menu_draw): remove
15528
15529         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
15530
15531         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
15532
15533         * gtk/gtknotebook.c (gtk_notebook_draw): remove
15534
15535         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
15536
15537         * gtk/gtkpacker.c (gtk_packer_draw): remove
15538
15539         * gtk/gtkrange.c (gtk_range_draw): remove
15540
15541         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
15542
15543         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
15544
15545         * gtk/gtktable.c (gtk_table_draw): remove
15546
15547         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
15548
15549         * gtk/gtktext.c (gtk_text_draw): remove
15550
15551         * gtk/gtktextview.c (gtk_text_view_draw): remove
15552
15553         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
15554
15555         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
15556
15557         * gtk/gtktree.c (gtk_tree_draw): remove
15558
15559         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
15560
15561         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
15562
15563         * gtk/gtkviewport.c (gtk_viewport_draw): remove
15564
15565         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
15566
15567         * gtk/gtkvscale.c (gtk_vscale_draw): remove
15568
15569         * gtk/gtkwindow.c (gtk_window_draw): remove
15570
15571 2000-20-01  Anders Carlsson  <andersca@gnu.org>
15572
15573         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
15574         a GtkToggleButton is both insensitive and active, it was being
15575         drawn by the GtkButton draw handler which doesn't check the
15576         state. Now it's calling gtk_toggle_button_paint instead.
15577         
15578 2000-12-01  Havoc Pennington  <hp@redhat.com>
15579
15580         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
15581         dangling pointers to the appearance attributes from the 
15582         line display
15583
15584         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
15585         width/height to mean "full width/height of drawable"
15586
15587         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
15588         click to select word/line
15589         
15590         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
15591         when getting log attrs. Get a slice, so that pixmaps and stuff
15592         are properly handled.
15593
15594         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
15595         paste into the selection (replaces selection now, previously
15596         crashed or added to selection). Reveals longstanding btree bug -
15597         select multiple lines, middle-click on the selection, boom. This
15598         isn't related to my changes though.
15599
15600         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
15601         PangoLogAttrs changes
15602         (gtk_entry_move_backward_word): ditto
15603
15604         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
15605         functions return bool whether the iter moved onto a
15606         dereferenceable position.
15607  
15608         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
15609         functions for motion in terms of display lines.
15610
15611         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
15612         get the buffer a mark is inside
15613         
15614 2000-12-01  Alexander Larsson  <alexl@redhat.com>
15615
15616         * gdk/linux-fb/Makefile.am:
15617         * modules/linux-fb/Makefile.am:
15618         Freetype 2 final uses freetype-config
15619
15620         * gdk/linux-fb/gdkpango-fb.c:
15621         Upgrade to use Freetype 2 final.
15622         More flexible support for font aliases, this also fixes a bug with
15623         GtkFontSelector, as the aliases must be visible in the font/family list,
15624         or GtkFontSelector reads uninitialized memory.
15625
15626 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
15627
15628         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
15629         XGetIMValues to properly terminate variable argument list, and do
15630         NULL return check for ic_values and xim_styles.
15631
15632         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
15633         Restore preedit state after XmbResetIC().
15634         
15635         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
15636         XvaCreateNestedList() should take XvaNestedList, but not
15637         XvaNestedList*.
15638
15639         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
15640         preedit_draw_callback, preedit_caret_callback): Match
15641         "preedit-changed" signal name to "preedit_changed" to be
15642         consistent to the spec.
15643
15644         * gtk/gtkimcontextsimple.c (check_table):
15645         Match "preedit-changed" to "preedit_changed" to be consistent
15646         to the spec.
15647
15648 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
15649
15650         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
15651         gc->clip_region == NULL>
15652
15653 2000-11-30  Tor Lillqvist  <tml@iki.fi>
15654
15655         Changes by Hans Breuer:
15656         
15657         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
15658         Dont't use negative width and height as max_hints. This fixes
15659         Owen's recent testgtk changes for win32.
15660
15661         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
15662         gdk_win32_hdc_release): These are exported and may be called with
15663         other drawable types than our GdkDrawableImplWin32 (?).
15664
15665         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
15666         so always #define USE_BACKING_STORE.
15667
15668         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
15669         of printf for debugging output.
15670
15671         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
15672         
15673         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
15674
15675         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
15676         declaration.
15677
15678         * gtk/gtktexttypes.h: Ditto.
15679
15680         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
15681         (GDK_VoidSymbol) also if in case of arg check failure.
15682
15683         * gtk/gtkimcontextsimple.c
15684         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
15685         position to the pointer, but to the variable it points to.
15686
15687         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
15688
15689         * gtk/gtk.def: Updates.
15690
15691 2000-11-29  Elliot Lee  <sopwith@redhat.com>
15692
15693         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
15694         GTK_TYPE_TREE_MODEL.
15695
15696 2000-11-29  Alexander Larsson  <alexl@redhat.com>
15697
15698         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
15699         Set the size of the font from the description.
15700         (gdk_text_width): Gross hack that calculates the width
15701         of text by text_length * size/2. This is necessary because
15702         GtkLabel does some ugly gtk_string_width call to calculate
15703         an good size.
15704         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
15705
15706 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
15707
15708         * docs/tutorial/gtk-tut.sgml: DND updates
15709
15710 2000-11-29  Alexander Larsson  <alexl@redhat.com>
15711
15712         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
15713         If you pass width or height == 0 to gdk_window_clear_area they
15714         should be calculated from the window size.
15715
15716 2000-11-29  Alexander Larsson  <alexl@redhat.com>
15717
15718         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
15719         a grab, but no grab-cursor, use the cursor from the grabbed
15720         window. (gdk_fb_window_send_crossing_events): Send normal
15721         enter/leave notifications if grab and owner_events == TRUE.
15722
15723 2000-11-29  Alexander Larsson  <alexl@redhat.com>
15724
15725         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
15726         Do implicit button grabs, even if the window doesn't
15727         want the event.
15728         (gdk_fb_window_send_crossing_events): If there is a
15729         grab, only the grabbed window gets normal enter/leave
15730         notifications. On ungrab go from grabbed window to current.
15731         Don't send any notification to b when propagating from c -> b.
15732         If setting a grab on window, don't set prev_window.
15733         (handle_mouse_input): Send enter/leave events to the window the
15734         mouse is over, not the grabbed one.
15735         
15736 2000-11-28  Elliot Lee  <sopwith@redhat.com>
15737
15738         * gdk/gdkregion-generic.c: Zap warning.
15739         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
15740         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
15741
15742 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
15743
15744         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
15745         The cursor should be hidden if it is part of either the
15746         source or destination region. Not only if it is in both.
15747         (gdk_window_set_transient_for): Silence warnings.
15748
15749 2000-11-28  Alexander Larsson  <alexl@redhat.com>
15750
15751         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
15752         The default mode in X is Pie Arcs, therefore that is
15753         what Gtk+ uses.
15754
15755 2000-11-28  Alexander Larsson  <alexl@redhat.com>
15756
15757         * gdk/linux-fb/gdkinput-ps2.c:
15758         Implement correct EnterNotify/LeaveNotify:
15759         (gdk_fb_window_send_crossing_events): New function that sends
15760         all GdkCrossingEvents from the last mouse-window to the specified
15761         destination.
15762         (gdk_fb_window_visibility_crossing): Removed function.
15763         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
15764         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
15765         instead of gdk_window_get_pointer() for better readability.
15766
15767         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
15768         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
15769
15770         * gdk/linux-fb/gdkprivate-fb.h:
15771         removed gdk_fb_window_visibility_crossing, added
15772         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
15773
15774         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
15775         New function that finds the least common ancestor of two windows.
15776         (gdk_window_show, gdk_window_hide):
15777         Use gdk_fb_window_send_crossing_events.
15778         (gdk_fb_window_move_resize): Send configure events to toplevel
15779         windows. Use gdk_fb_window_send_crossing_events.
15780
15781 2000-11-27  Havoc Pennington  <hp@redhat.com>
15782
15783         * gtk/gtkprivate.h (enum): Remove a trailing comma
15784
15785 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
15786
15787         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
15788         the "changed" callback of the adjustment.  We need to redraw the
15789         spin button's arrows when the adjustment's range changes.
15790         (adjustment_changed_cb): Draw the arrows.
15791         (gtk_spin_button_value_changed): Draw the arrows.
15792
15793 2000-11-23  Alexander Larsson  <alexl@redhat.com>
15794
15795         * gdk/linux-fb/gdkselection-fb.c:
15796         Initial selection implementation.
15797
15798         * gtk/gtkselection.c:
15799         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
15800         requestor in gtk_selection_request.
15801         
15802         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
15803         Added gdk_selection_property atom.
15804
15805         * gdk/linux-fb/gdkprivate-fb.h:
15806         Export _gdk_selection_window_destroyed.
15807         Removed mask_off_x/y from GdkCursorPrivateFB.
15808         Removed hbearing, added top, left to PangoFBGlyphInfo.
15809
15810         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
15811         Call _gdk_selection_window_destroyed
15812         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
15813         the root window has been created.
15814         (static_dx_hack, static_dy_hack, compare_draw_rects,
15815         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
15816         in region. They are already sorted. Instead just traverse them in
15817         reverse if draw_direction < 0.
15818         
15819         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
15820         Double-clicks must be sent after the normal button_press.
15821         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
15822         
15823         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
15824         Pass _gdk_fb_screen_gc instead of NULL.
15825
15826         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
15827         Initialize gdk_selection_property.
15828         (gdk_event_make): Remove unused code.
15829
15830         * gdk/linux-fb/gdkcursor-fb.c:
15831         Make the pixmap for the cursor the same size as the mask. Also remove
15832         the mask_off_x/y fields in GdkCursorPrivateFB and combine
15833         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
15834         Now the whole cursor is visible.
15835
15836         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
15837         Fix bug where xdest+height instead of ydest+height was used
15838         to calculate if the source and dest overlapped. This fixes the
15839         redraw bug when the main window in testgtk was scrolled when
15840         partially covered by a tall window.
15841         Copy rectangles in region in order depending on draw_direction.
15842         Also moved the draw_direction flipping of start_y and end_y into
15843         the gc functions, as this might not be what all of them want.
15844         (gdk_fb_draw_lines): Support dashed lines.
15845         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
15846         so that the text is positioned correctly (was 1 pixel high).
15847
15848         gdk/linux-fb/gdkgc-fb.c:
15849         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
15850         all lines were drawn a pixel to short. Also checked the default of
15851         the rest of the values, and they're the same as X now.
15852
15853         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
15854         Clean up pixel positioning of the glyphs. Just use bgy->top and
15855         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
15856         to all divisions to get correct rounding behaviour.
15857
15858         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
15859         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
15860         Moved start_y/end_y flip into draw_drawable implementations.
15861         Flip also x rendering when draw_direction < 0.
15862         Remove unneccesary multiply with draw_direction.
15863
15864 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
15865
15866         * docs/tutorial/gtk-tut.sgml:
15867           - get rid of gtk_toggle_button_toggled FUD
15868           - start DND section - needs work - based on:
15869                 http://wolfpack.twu.net/docs/gtkdnd/
15870
15871 2000-11-22  Alexander Larsson  <alexl@redhat.com>
15872
15873         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
15874         Correct calculation of font metrics. Now GtkEntrys have sane
15875         size.
15876
15877 2000-11-22  Alexander Larsson  <alexl@redhat.com>
15878
15879         * gdk/gdktypes.h:
15880         Add new type GdkSpan
15881         
15882         * docs/reference/gdk/gdk-sections.txt,
15883         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
15884         gdk/gdkregion.h:
15885         Implement and document gdk_region_spans_intersect_foreach.
15886
15887         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
15888         Add new file gdkrender-fb.c which contains all core
15889         rendering code.
15890         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
15891         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
15892         (optimized rectangle fillers).
15893
15894         * gdk/linux-fb/gdkdrawable-fb2.c:
15895         Move all rendering code to gdkrender-fb.c.
15896         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
15897         Use the new span intersection functions in gdk_fb_fill_spans.
15898         gdk_fb_draw_rectangle() clips filled rectangles and calls
15899         gc->fill_rectangle with the result.
15900         gdk_fb_fill_spans() gets extra argument "sorted".
15901
15902         * gdk/linux-fb/gdkevents-fb.c:
15903         Remove unused includes and defines.
15904         New function gdk_fb_get_time() to get correct time for events.
15905
15906         * gdk/linux-fb/gdkinput-ps2.c:
15907         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
15908         Make sure to set the time of all events.
15909
15910         * gdk/linux-fb/gdkmain-fb.c:
15911         Use gdk_fb_get_time ().
15912
15913         * gdk/linux-fb/gdkprivate-fb.h:
15914         New virtual GC calls: fill_span & fill_rectangle.
15915         Export gdk_fb_get_time().
15916         gdk_fb_fill_spans() gets extra argument "sorted".
15917
15918         * gdk/linux-fb/mi*.c:
15919         Use GdkSpan instead of GdkRectangle.
15920         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
15921         from XFree 4 source)
15922         
15923 2000-11-22    <jrb@redhat.com>
15924
15925         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
15926         reversing the order in an if statement will do.  Doing so managed
15927         to make the treemodelsort half work.  Other half will follow after
15928         I get the insert function fully fixed.
15929
15930 2000-11-21  Elliot Lee  <sopwith@redhat.com>
15931         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
15932         more than 2 bits. Besides, I need to implement an evil hack. :)
15933
15934 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
15935
15936         * docs/tutorial/gtk-tut.sgml: minor corrections
15937
15938 2000-11-20  Jonathan Blandford <jrb@redhat.com>
15939         * gtk/gtktreemodelsort.h: Add convertion functions to let you
15940           convert to and from relative path's and iters.
15941
15942         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
15943           testing sorting functions a bit better.  Currently broken -- will
15944           fix in morning.
15945
15946 2000-11-20  Havoc Pennington  <hp@redhat.com>
15947
15948         * gtk/gtkwidget.c: Documented a bunch of functions in here
15949         (gtk_widget_realize): Warn if you try to realize
15950         a widget with no parent that isn't a toplevel
15951         (gtk_widget_intersect): return a gboolean
15952
15953 2000-11-20  Havoc Pennington  <hp@redhat.com>
15954
15955         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
15956         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
15957         scrolling to be implemented in GDK to finish. Also, right now
15958         we just size_allocate all children on every layout change,
15959         which is pretty lame. Test commented out of testtext.c, 
15960         until it works better.
15961
15962 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
15963
15964         * gdk/linux-fb/gdkdrawable-fb2.c:
15965         Removed unused arguments from gdk_fb_drawable_get_pixel().
15966
15967         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
15968         Renamed fidur specific mouse packet data in MouseDevice to
15969         generic. Used it in ps2 mouse handling code to avoid blocking
15970         reads.
15971
15972 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
15973
15974         * demos/gtk-demo/main.c: Changed to have the list become
15975         non-italic when the demo window is destroyed through an external
15976         event (like a close button).  Doing so found three bugs in the
15977         widget.
15978
15979         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
15980
15981         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
15982         we actually set the cell.
15983
15984         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
15985
15986         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
15987         free a leaked path.  Thanks memprof.
15988
15989 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
15990
15991         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
15992         off-by-one error when destroying allocated segments
15993         on failure. (Elliot)
15994
15995 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
15996
15997         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
15998         memleaks found by Evan Martin.
15999
16000 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
16001
16002         * Released 1.3.2
16003         
16004         * NEWS: Updates for 1.3.2
16005
16006 2000-11-17  Tor Lillqvist  <tml@iki.fi>
16007
16008         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
16009         but in general for window system specific events.
16010
16011         * gtk/gtk.def
16012         * gtk/makefile.mingw.in
16013         * gtk/makefile.msc.in: Update.
16014         
16015         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
16016
16017 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
16018
16019         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
16020         distribute gtk.immodules.
16021
16022         * gtk/Makefile.am (install-data-local): Don't install the
16023         gtk.immodules file created for the uninstalled modules;
16024         instead run gtk-query-immodules after install
16025
16026 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
16027
16028         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
16029         -rpath to the right install location.
16030
16031         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
16032         -export-dynamic.
16033
16034         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
16035         properly.
16036
16037 2000-11-15  Havoc Pennington  <hp@pobox.com>
16038
16039         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
16040         patch from Mikael Hermansson to temporarily stop blinking while
16041         the user is using the keyboard to type or navigate. 
16042
16043         Also, when blinking, stay on for longer than we stay off. Also,
16044         return from start_cursor_blink if !cursor_visible, to save
16045         checking that flag all over the place before we call
16046         start_cursor_blink.
16047
16048 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
16049
16050         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
16051         only contain a "fontset" line, which is now ignored.
16052
16053         * gtk/gtkentry.c (gtk_entry_button_release): Make 
16054         double-click-to-select-word work.
16055         
16056 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
16057
16058         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
16059         Don't move back one char when we are actually at the end of the 
16060         paragraph.
16061
16062 2000-11-15  Robert Brady  <robert@suse.co.uk>
16063
16064         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
16065         'o' < 'p'.
16066         
16067         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
16068         bind_textdomain_codeset.
16069
16070         (gtk_init_check): Make the warning about translating default:LTR
16071         sterner.
16072         
16073 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
16074
16075         * **/Makefile.am : remove unecessary rules for win32-specific
16076         config-substituted targets. If you want these rules, use
16077         --enable-maintainer-mode (called automatically by autogen.sh).
16078         Stops a lot of unneccessary make-time warnings.
16079
16080         * gtk/gtktext{layout,display}.c: Factor in total width as
16081         well as screen when figuring alignment for word-wrap as well as
16082         no wrap; this is necessary to handle lines that cannot be wrapped
16083         at all.
16084
16085 2000-11-15  Havoc Pennington  <hp@redhat.com>
16086
16087         * gtk/testtext.c: Implement essential color cycling feature
16088
16089 2000-11-15  Havoc Pennington  <hp@redhat.com>
16090
16091         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
16092         when we invalidate the main window.
16093
16094         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
16095         GtkTextView will now invalidate the side windows for us when text
16096         changes.
16097
16098 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
16099
16100         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
16101         unconditionally, since we may need to update the horizontal
16102         scrollbars even if the height didn't change.
16103
16104         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
16105         the extra attrs, since some of them affect size.
16106
16107         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
16108         x_offset correctly.
16109
16110 2000-11-15  Havoc Pennington  <hp@redhat.com>
16111
16112         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
16113         don't move the first line out into the margin, instead move the
16114         whole paragraph in order to make space for the first line within 
16115         the margin
16116
16117 2000-11-15  Havoc Pennington  <hp@redhat.com>
16118
16119         * gtk/gtktextview.c (changed_handler): offset redraw rect by
16120         xoffset in addition to yoffset, so horizontal scrolling doesn't
16121         break redraws
16122
16123 2000-11-15  Havoc Pennington  <hp@redhat.com>
16124
16125         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
16126         from the cursor
16127         (render_layout_line): fix reversed test that caused weird
16128         underlines to get drawn
16129
16130 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
16131
16132         * gdk/linux-fb/gdkprivate-fb.h:
16133         Fix debug macros.
16134         
16135 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
16136
16137         * gdk/linux-fb/gdkprivate-fb.h:
16138         Added virtual functions set_pixel, get_color,
16139         fill_span and draw_drawable to the GC.
16140         Added global _gdk_fb_screen_gc to use instead of
16141         NULL when drawing to the screen.
16142         Added _gdk_fb_gc_calc_state() prototype.
16143
16144         * gdk/linux-fb/gdkgc-fb.c:
16145         Call _gdk_fb_gc_calc_state() on any gc state change.
16146
16147         * gdk/linux-fb/gdkglobals-fb.c:
16148         Add _gdk_fb_screen_gc
16149                 
16150         * gdk/linux-fb/gdkdrawable-fb2.c:
16151         _gdk_fb_gc_calc_state() calculates best functions
16152         for the GC state and depth.
16153         Moved bpp specialized code to separate functions.
16154         Added optimized 24 bpp AA draw_drawable.
16155
16156         * gdk/linux-fb/gdkevents-fb.c:
16157         Silence gcc warning.
16158
16159         * gdk/linux-fb/gdkimage-fb.c:
16160         Use _gdk_fb_screen_gc
16161
16162         * gdk/linux-fb/gdkwindow-fb.c:
16163         Init and use _gdk_fb_screen_gc
16164
16165         * gdk/linux-fb/mitypes.h:
16166         Remove unused types.
16167
16168 2000-11-14  Havoc Pennington  <hp@pobox.com>
16169
16170         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
16171         to pixels
16172
16173 2000-11-14  Havoc Pennington  <hp@pobox.com>
16174
16175         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
16176
16177         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
16178         unknown char, no real reason we were using a variable. 
16179         Remove gtk_text_unknown_char variable. Fix all the text widget
16180         files accordingly.
16181
16182         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
16183         since the Unicode spec seems to prefer that character for our
16184         purposes.
16185
16186 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
16187
16188         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
16189         value of g_getenv() isn't freeable, so g_strdup it.
16190
16191         * modules/input/inuktitut.c: Inuktitut input method.
16192
16193         * modules/input/Makefile.am: Build this.
16194         
16195 2000-11-14  Elliot Lee  <sopwith@redhat.com>
16196
16197         * gtk/Makefile.am: Install gtk.immodules, needed for operation
16198         of gtk programs.
16199
16200 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
16201
16202         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
16203         reversed > that was causing Home to go to end of previous line.
16204
16205         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
16206         modified-keypresses (leave for bindings.)
16207
16208         * modules/input/Makefile.am: Remove useless -export-dynamic
16209         from module LDFLAGS.
16210
16211 2000-11-14  Havoc Pennington  <hp@redhat.com>
16212
16213         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
16214         higher.
16215
16216         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
16217         account. Also, render rise, underline, background, etc. for
16218         pixbufs as well as text. Also, draw underlines one pixel higher.
16219
16220         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
16221         PangoAttribute for the rise, so it gets drawn properly. Also,
16222         add the GtkTextAppearance attribute for pixbuf/widget segments
16223         as well; we should go ahead and have rise, underline, background,
16224         stipple work for those
16225
16226         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
16227         Pango
16228
16229 2000-11-15  Tor Lillqvist  <tml@iki.fi>
16230
16231         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
16232
16233         * gtk/gtk.def: Update.
16234
16235         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
16236         included.
16237         (gtk_rc_get_im_module_file): Use run-time installation directory
16238         on Win32.
16239
16240         * gdk/win32/rc/gdk.rc: Remove.
16241         * gdk/win32/rc/gdk.rc.in: New file.
16242         * gdk/win32/rc/Makefile.am: New file
16243         * gdk/win32/Makefile.am: Corresponding changes.
16244
16245         * gtk/gtk.rc: Remove.
16246         * gtk/gtk-win32.rc.in: New file.
16247         * gtk/Makefile.am: Corresponding changes.
16248
16249         * configure.in: Corresponding changes.
16250
16251         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
16252         has a built gtkcompat.h. Developers using CVS code on Win32 can
16253         hand-edit it from gtkcompat.h.in.
16254
16255         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
16256         gtkcompat.h from gtkcompat.h.win32.
16257
16258 2000-11-14  Havoc Pennington  <hp@redhat.com>
16259
16260         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
16261         to default to GDK_ACTION_MOVE if the drag is within a single
16262         widget. Defaults to GDK_ACTION_COPY between widgets.
16263
16264 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
16265
16266         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
16267
16268         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
16269
16270         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
16271         srcdir != builddir
16272
16273         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
16274
16275         * configure.in (GTK_VERSION): Up to 1.3.2
16276
16277         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
16278         gtkimcontextxim.h
16279
16280         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
16281         missing doc comment.
16282
16283 2000-11-14  Alexander Larsson  <alexl@redhat.com>
16284
16285         * modules/linux-fb/basic.c:
16286         Use the glib iconv wrappers.
16287
16288 2000-11-13  Havoc Pennington  <hp@pobox.com>
16289
16290         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
16291         still more bugs.
16292
16293         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
16294         scroll the GdkWindows before realization.
16295
16296 2000-11-13  Havoc Pennington  <hp@redhat.com>
16297
16298         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
16299         where GC didn't always get updated properly
16300
16301         * demos/gtk-demo/textview.c (create_tags): Use subattributes
16302         of fonts instead of setting the entire font
16303
16304         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
16305         setting entire font
16306
16307         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
16308
16309         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
16310         a bunch of individually-settable font attributes. You can still 
16311         use the "font" and "font_desc" args, they just set all the font
16312         attributes at once.
16313
16314 2000-11-13 Elliot Lee <sopwith@redhat.com>
16315
16316         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
16317
16318 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
16319
16320         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
16321         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
16322
16323         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
16324         work better.
16325
16326 2000-11-13  Havoc Pennington  <hp@redhat.com>
16327
16328         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
16329         the module file.
16330
16331         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
16332         dest->language
16333
16334         * gtk/testtext.c: Test pixels above/below/inside paragraphs
16335         settings
16336
16337         * gtk/gtktextview.c: Implement object args and setters/getters for
16338         all the aspects of the GtkTextAttributes that are not set from
16339         GtkWidget attributes. This is spacing, justification, margins,
16340         etc.
16341
16342         (gtk_text_view_set_arg)
16343         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
16344         args
16345         (gtk_text_view_class_init): Add args for justify, left_margin,
16346         right_margin, indent, and tabs
16347         
16348
16349         * gtk/gtktextlayout.c (set_para_values): fix to display indent
16350         attribute properly
16351
16352         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
16353         replace with indent attribute
16354
16355         * gtk/gtktextlayout.c (set_para_values): multiply indent by
16356         PANGO_SCALE
16357
16358         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
16359         rearranging code to do that
16360         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
16361         i.e. don't subtract the top_margin first, just to keep
16362         all margin-futzing in one place.
16363
16364         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
16365
16366         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
16367         special case of last line, Pango now handles this itself.
16368         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
16369         Y coordinate
16370         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
16371         (find_display_line_above): wasn't moving the byte index as it
16372         iterated over lines, so always returned byte 0. Also, port to use
16373         PangoLayoutIter.
16374         (find_display_line_below): same problem as
16375         find_display_line_above. Also, port to use PangoLayoutIter.
16376
16377 2000-11-13  Alexander Larsson  <alexl@redhat.com>
16378
16379         * gdk/linux-fb/*.[ch]:
16380         Massive reindent to gtk+ standard. My hands hurt.
16381
16382         * gdk/linux-fb/gdkcolor-fb.c:
16383         Move GdkColorPrivateFB from inherited to windowing_data
16384
16385         * gdk/linux-fb/gdkcursor-fb.c:
16386         _gdk_cursor_new_from_pixmap made static
16387
16388         * gdk/linux-fb/gdkdnd-fb.c:
16389         GdkDragContextPrivate moved to windowing_data
16390
16391         * gdk/linux-fb/gdkdrawable-fb2.c:
16392         Removed endian.h, use glib endianness macros instead
16393         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
16394         and GDK_DRAWABLE_IMPL_FBDATA
16395
16396         * gdk/linux-fb/gdkfont-fb.c:
16397         Add empty gdk_font_load(). Needed for linking of Gtk+.
16398
16399         * gdk/linux-fb/gdkimage-fb.c:
16400         Removed endian.h, use glib endianness macros instead
16401         Moved GdkImagePrivateFB to windowing_data
16402         gdk_image_new_bitmap didn't always allocate enough
16403         memory.
16404
16405         * gdk/linux-fb/gdkinput-ps2.c:
16406         Added semi-working support for MS serial mice.
16407
16408         * gdk/linux-fb/gdkprivate-fb.h:
16409         s/GdkWindowPrivate/GdkWindowObject/
16410         Removed GdkWindowPrivate typedef
16411         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
16412         Removed GDK_DRAWABLE_P
16413         Move GdkColorPrivateFB from inherited to windowing_data
16414         Moved GdkImagePrivateFB to windowing_data
16415
16416         * gdk/linux-fb/gdkvisual-fb.c:
16417         Removed some unused debug code.
16418
16419         * gdk/linux-fb/gdkwindow-fb.c:
16420         Use stock cursors instead of including X headers.
16421         s/GdkWindowPrivate/GdkWindowObject/
16422
16423         * gdk/linux-fb/mitypes.h:
16424         Removed unused types.
16425
16426         * modules/linux-fb/basic.c:
16427         Use the pango fribidi wrappers.
16428
16429 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
16430
16431         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
16432         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
16433         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
16434         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
16435         GEqualFunc where applicable.
16436         
16437         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
16438         pango_font_description_equal as changed in pango.
16439         
16440         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
16441
16442         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
16443
16444         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
16445
16446         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
16447
16448         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
16449
16450         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
16451
16452         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
16453         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
16454
16455         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
16456         gtk_rc_styles_compare -> gtk_rc_styles_equal.
16457
16458 2000-11-12  Havoc Pennington  <hp@pobox.com>
16459
16460         * demos/gtk-demo/Makefile.am (democodedir): change demo install
16461         dir to datadir/gtk+-2.0/demo
16462
16463         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
16464         sorts of text widget and Pango font bugs. Urgh.
16465
16466         * demos/gtk-demo/Makefile.am (demos): Add textview.c
16467
16468         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
16469         tree that you should double click to see the demo. Fix 
16470         types of variables to reflect changed return values from 
16471         GtkTreeStore and GtkTreeViewColumn constructors.
16472
16473         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
16474         newly-created buffer to prepare for GObject semantics
16475
16476         * gtk/testtext.c: don't leak the buffer with GObject semantics
16477
16478         * gtk/testtextbuffer.c: ditto
16479         
16480 2000-11-12  Havoc Pennington  <hp@pobox.com>
16481
16482         Rename this testgtk to gtk-demo to avoid confusion, and 
16483         install it so people can use it as a supplement to 
16484         the documentation.
16485         
16486         * demos/gtk-demo: Moved from demos/testgtk
16487
16488         * demos/testgtk: Removed
16489
16490         * configure.in: make Makefile in gtk-demo
16491         
16492         * demos/gtk-demo/Makefile.am: Install sample source to 
16493         datadir/gtk-demo (maybe there's a better place?), and 
16494         rename the binary to gtk-demo
16495         
16496         * demos/gtk-demo/main.c (load_file): Load installed sample
16497         source if source isn't found in pwd.
16498
16499 2000-11-09  Havoc Pennington  <hp@pobox.com>
16500
16501         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
16502         argument to set the char displayed when visibility == FALSE
16503         (gtk_entry_create_layout): If !entry->visible, replace 
16504         all chars with the "invisible char"
16505
16506         * gtk/testgtk.c: Test the invisible_char deal
16507         
16508 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
16509
16510         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
16511         can't get a native font in the right encoding.
16512
16513 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
16514
16515         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
16516         respectively.
16517
16518 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
16519
16520         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
16521         Fix warning when moving between paragraphs.
16522
16523         * gtk/gtkentry.[ch]: Change move => move_cursor, 
16524         delete => delete_from_cursor, insert => insert_at_cursor
16525
16526 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
16527
16528         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
16529
16530         * modules/input/imthai-broken.c: A Thai input method for use if
16531         Thai keys are really generating Latin1 keysyms.
16532
16533         * modules/input/Makefile.am: Build these.
16534
16535 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
16536
16537         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
16538         g_filename_{to,from}_utf8 now takes an extra parameter.
16539
16540         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
16541         strftime into UTF-8.
16542
16543         (column_from_x, gtk_calendar_paint_day_names): Support RTL
16544         calendars.
16545
16546         (gtk_calendar_paint_day_names): Draw day names in the right 
16547         place.
16548         
16549 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
16550
16551         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
16552         problem with using result of g_get_charset() backwards -
16553         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
16554
16555         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
16556         negative min_width/height and max_width/height to
16557         mean "requisition"; this allows setting a window
16558         to be user-resizable in only one direction easily.
16559
16560         * gtk/testgtk.c (create_main_window): Remove hard-coded
16561         usize - set a default size in the vertical direction.
16562
16563 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
16564
16565         * gtk/gtkrange.c: Add some missing casts. Support 
16566         2 and 3 button clicks on the arrows to mean 
16567         "move by pages" and "jump to end". (Like gtkspinbutton)
16568
16569 2000-11-12 Hans Breuer <Hans@Breuer.Org>
16570
16571         * gdk/win32/makefile.msc : reflect build module changes
16572
16573         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
16574         from GdkPixmap*, cast implementation member instead.
16575
16576         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
16577         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
16578         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
16579         more Gdi functions return value checking. 
16580         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
16581         GdkImagePrivateWin32 *.
16582
16583         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
16584         menus useable again. Add #pragma message to keep reminded on this issue.
16585         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
16586         windows. This allows to enable backing store on Win32!
16587
16588         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
16589         in drawable is of impl type. Correct specific type checks appropriate.
16590  
16591         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
16592         GDK_WINDOW_DESTROYED before allocating new resources.
16593
16594         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
16595
16596         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
16597         (gdk_window_foreign_new) initialize parent handle.
16598         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
16599
16600         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
16601         Let the GDI invalidate the window on MoveWindow call to fix scrolling
16602         problems (e.g. main buttons in testgtk). 
16603
16604 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
16605
16606         * gtk/gtkentry.c (gtk_entry_key_press): Call 
16607         gtk_widget_activate for GDK_Return.
16608
16609         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
16610         of preedit cursor position.
16611
16612 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
16613
16614         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
16615         static.
16616
16617 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
16618
16619         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
16620         out support for multiple locales; that simple doesn't
16621         work reliably with current Xlib
16622
16623         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
16624         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
16625         Add support for positioning the cursor within the preedit string.
16626
16627 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
16628
16629         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
16630         at XIM input method module.
16631
16632         * gtk/gtktextview.c: Check for bindings after passing
16633         events to im context filter.
16634
16635 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
16636
16637         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
16638         empty attribute lists properly.
16639
16640 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
16641
16642         * gtk/queryimmodules.c (main): Return non-zero exit
16643         status if errors were encountered querying any
16644         modules.
16645
16646         * modules/input/Makefile.am (moduledir): remove
16647         leftover bin program target.
16648
16649         * docs/make-todo: Fix typo in error message.
16650
16651 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
16652
16653         * configure.in: Add modules/input/Makefile
16654
16655 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
16656
16657         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
16658         don't include gtkthemes.h.
16659
16660         * gtk/testgtk.c gtk/testtext.c: Set environment variables
16661         to point
16662
16663         * gtk/Makefile.am: Add new .c and .h files, build 
16664         gtk-query-immodules and use it to create a gtk.immodules
16665         file for use of test programs.
16666
16667         * gtk/gtkpreview.c: remove extra blank line.
16668
16669 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
16670
16671         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
16672         Add the ability to add extra tables beyond the default
16673         one, and also the ability to have compose sequences 
16674         that are prefixes of other compose sequences. 
16675
16676         * gtk/gtkimcontextsimple.c: Export a preedit string which
16677         consists of possible candidates for keystrokes that have
16678         been entered but not yet committed.
16679
16680         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
16681         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
16682
16683         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
16684         Add a function to add input-method switching menu items
16685         to a menu.
16686
16687         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
16688         when switching input methods.
16689
16690         * gtk/gtkimcontextsimple.[ch]: Change the format of
16691         the compose table to allow compose tables of different
16692         lengths / sequence.
16693
16694 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
16695
16696         * gtk/gtkimmodule.[ch]: Support routines for loading
16697         GtkIMContext implementations dynamically at runtime.
16698
16699         * modules/input/imcyrillic-translit.c: A sample input
16700         method (based on GtkIMContextSimple with an extra table),
16701         which demonstrates preedit strings and the module
16702         system for input modules
16703
16704         * gtk/queryimmodules.c: Program to query the available
16705         input modules and write the results into a file.
16706          
16707         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
16708         extra config options "im_module_file" (cache file for
16709         input method modules), and "im_module_path" - path
16710         to look for modules when generating cache file.
16711
16712         This doesn't scale.
16713
16714 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
16715
16716         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
16717         generic code from gtkthemes into a new abstraction
16718         GtkModule which has the logic for implementing
16719         a loadable module which implements a number of 
16720         GObject types.
16721
16722 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
16723
16724         * gtk/gtkeditable.[ch]: Convert GtkEditable from
16725         a class into an interface  
16726         
16727         * gtk/gtkoldeditable.[ch]: Move the old editable
16728         implementation into here, so legacy widgets can
16729         still rely on the implemenation. GtkOldEditable
16730         exports GtkEditable. Make selection handling
16731         code use new text conversion functions (and
16732         handle UTF-8 as a side-effect). Use GtkClipboard
16733         for CLIPBOARD.
16734
16735         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
16736         Adopt to match above changes.
16737
16738         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
16739         avoid GtkOldEditable implementation. Restructure
16740         to reduce number of places that modify state directly.
16741         Move to GtkBindingSet. Display the preedit string.
16742         Queue recomputation of PangoLayout and scroll position
16743         to improve effiency of doing complex changes naively.
16744         Add a menu with cut/copy/paste and input method selection.
16745
16746 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
16747
16748         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
16749         to set preedit string and attributes; display preedit string by
16750         inserting string and attributes at cursor when creating the
16751         GtkTextLineDisplay.
16752
16753         * gtk/gtktextlayout.c: Move all conversions between byte
16754         positions in PangoLayout and GtkTextIter into new functions
16755         line_display_iter_to_index/index_to_iter that properly
16756         handle the preedit string.
16757
16758         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
16759         it to return const char * (eventually will end up
16760         as GCONST char *, most likely.)
16761
16762         * gtk/gtktextview.[ch]: Handle the preedit string, call
16763         gtk_im_context_reset() as necessary, add a menu to switch
16764         input methods.
16765         
16766         * gtk/gtktextlayout.[ch]: Remove useless
16767         gtk_text_layout_get_log_attrs() function.
16768
16769 2000-11-11  Tor Lillqvist  <tml@iki.fi>
16770
16771         * gdk/gdk.def
16772         * gtk/gtk.def: Update.
16773
16774         * gdk/win32/*.c: Add last argument to g_type_register_static()
16775         calls.
16776
16777         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
16778
16779         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
16780         generated by older wheel mouse drivers. Get the correct y
16781         coordinate from WM_MOUSEWHEEL messages.
16782
16783         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
16784         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
16785         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
16786         Debugging functions.
16787
16788         * gdk/win32/gdkprivate-win32.h: Declare them.
16789
16790         * gdk/win32/gdkinput-win32.h: Add declaration for
16791         gdk_input_window_destroy().
16792
16793         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
16794
16795 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
16796
16797         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
16798         function to help handle keeping things in sync.
16799
16800 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
16801
16802         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
16803         BOXED marshallers.
16804
16805         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
16806         (gtk_list_store_class_init): use the new BOXED marshallers.
16807
16808         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
16809         new_with_values to new_with_types.
16810         (gtk_tree_store_get_column_type): add this.
16811         (gtk_tree_store_class_init): use the new BOXED marshallers.
16812
16813         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
16814         mirror some POINTER marshallers.
16815
16816 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
16817
16818         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
16819         allow more interesting iterators.  Also, made the lifecycle of
16820         iterators more explicit.
16821
16822         * gtk/gtktreemodelsort.[ch]: New model for sorting.
16823
16824         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
16825         types.
16826
16827 2000-11-09  Alexander Larsson  <alexl@redhat.com>
16828
16829         * demos/testgtk/menus.c:
16830         Changes to make the new testgtk compile after
16831         gtk_menu_append was removed.
16832
16833         * gdk/linux-fb/gdkdrawable-fb2.c
16834         (gdk_fb_get_depth, gdk_fb_get_visual,
16835         gdk_drawable_impl_fb_class_init): Implement
16836         these drawable functions. Now GtkImages work again.
16837
16838         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
16839
16840         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
16841         
16842         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
16843         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
16844         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
16845         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
16846
16847 2000-11-08  Havoc Pennington  <hp@pobox.com>
16848
16849         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
16850         visible_set args, don't know where these had gone, I thought they
16851         used to be there
16852
16853         * gtk/testtext.c: Add a menu item to apply invisibility tag;
16854         now we can test the feature and see that it's totally broken.
16855
16856 2000-11-08  Havoc Pennington  <hp@pobox.com>
16857
16858         Make DND copy pixbufs and tags when source and target share a 
16859         tag table.
16860         
16861         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
16862         in-process GTK_TEXT_BUFFER_CONTENTS target
16863         (gtk_text_view_drag_data_received): Paste from
16864         GTK_TEXT_BUFFER_CONTENTS if we receive it.
16865
16866 2000-11-08  Alexander Larsson  <alexl@redhat.com>
16867
16868         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
16869         API changes.
16870
16871         * gtk/gtkmenu.c: Add support for scrolling menus.
16872         Remove gtk_menu_append/prepend/insert, these have been moved to
16873         gtkcompat.h as #defines.
16874
16875         * gtk/gtkcompat.h.in:
16876         Add compatibility #defines for gtk_menu_append/prepend/insert
16877
16878         * gtk/gtkmenu.h: Add data needed for scrolling menus.
16879         GtkMenuPositionFunc gets an extra argument push_in.
16880         gtk_menu_append/prepend/insert removed.
16881         
16882         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
16883         positioning behaviour to fit to scrolling menus.
16884
16885         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
16886         into menuitem->submeny. That is wrong, and broke torn
16887         off submenus of torn off menus, since they were unrealized
16888         when the first menu was unrealized.
16889
16890         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
16891         gtk_menu_shell_select_item() since these need to be overridden in
16892         GtkMenu.
16893
16894         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
16895         positioning behaviour to fit to scrolling menus.
16896         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
16897         the current item so that it is prelighted when the menu pops up.
16898         This is a workaround to the fact that the menu doesn't get the
16899         initial enter event (due to grabs).
16900
16901         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
16902         s/gtk_menu_append/gtk_menu_shell_append/
16903
16904         * gtk/gtknotebook.c:
16905         s/gtk_menu_insert/gtk_menu_shell_insert/
16906
16907         * gtk/testgtk.c (create_menu, create_menus):
16908         Create the first menu with 50 items so that menu scrolling
16909         can be tested.
16910         
16911         
16912         Patch from Jonathan Blandford  <jrb@redhat.com>
16913
16914         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
16915         system to handle size requests.  First, we ask what the size of
16916         the toggle is.  Then, when allocating the size, we allocate the
16917         toggle_size first.  This way we can have multiple menu-item
16918         classes w/o needing a seperate class for each.
16919
16920         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
16921         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
16922
16923         * gtk/gtkcheckmenuitem.c
16924         (gtk_check_menu_item_toggle_size_request): New function to handle
16925         the toggle size-request.
16926
16927 2000-11-07  Havoc Pennington  <hp@redhat.com>
16928
16929         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
16930         Half-ass somewhat fix this function, so that scrolling to the
16931         insertion point works. Pango hacking is in the future to really
16932         fix it.
16933
16934         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
16935         length of data, no longer used.
16936
16937         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
16938         method contents in here, get rid of destroy method
16939         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
16940         that were backward. Remove debug spew.
16941         (cut_or_copy): Make the clipboard work with insert_range to
16942         preserve tags and pixbufs, not just the primary selection.
16943
16944 2000-11-07  Havoc Pennington  <hp@redhat.com>
16945
16946         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
16947         to gtk_text_mark_get_visible
16948
16949         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
16950         bug that was generating an invalid iterator
16951
16952         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
16953         ensure_char_offsets() in front of code placing the iter in an
16954         invalid state.
16955
16956         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
16957         make override_location arg const
16958         (paste): Replace the selection if we paste into the 
16959         current selection
16960
16961         * gtk/gtkselection.h: Remove "GtkSelectioData"
16962         (struct _GtkSelectionData): move the definition here.
16963
16964         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
16965         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
16966
16967         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
16968
16969         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
16970         (gtk_text_buffer_insert_range_interactive): implement
16971         (gtk_text_buffer_get_tags): Remove, replaced by
16972         gtk_text_iter_get_tags()
16973
16974         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
16975         limit parameter, to avoid infinite linear scan.
16976         (gtk_text_iter_backward_search): Add search limit
16977         (gtk_text_iter_forward_find_char): Add search limit
16978         (gtk_text_iter_backward_find_char): Add search limit
16979
16980 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
16981
16982         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
16983         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
16984         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
16985         gdk/linux-fb/gdkwindow-fb.c:
16986         use g_object_new() instead of g_type_create_instance() which
16987         is a private function for fundamental type implementations.
16988
16989         * gdk/linux-fb/gdkinput-ps2.c:
16990         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
16991         instead just store the current modifier state. Add a (somewhat broken)
16992         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
16993         Rename exported function gdk_input_ps2_get_mouseinfo to
16994         gdk_input_get_mouseinfo.
16995
16996         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
16997         gdk/linux-fb/gdkwindow-fb.c:
16998         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
16999         
17000
17001 2000-11-02  Havoc Pennington  <hp@redhat.com>
17002
17003         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
17004         use stock buttons. Should be 100% source compatible, appropriate
17005         filesel fields now point to dialog->vbox and dialog->action_area.
17006         On the bizarre side, dialog->action_area and filesel->action_area
17007         are not the same widget.
17008         (gtk_file_selection_init): Put some padding around the selection
17009         entry, so it isn't touching the GtkDialog separator.    
17010
17011         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
17012         use stock buttons, etc. Should also be source compatible.
17013         Set the dialog default title in _init not _new().
17014         
17015         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
17016         Use stock buttons; don't put a button box inside the existing
17017         dialog button box. Don't bother with push/pop colormap anymore.
17018
17019         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
17020         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
17021         for message dialog, and necessary for the font selection and color
17022         selection with help and apply buttons.
17023         
17024         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
17025         to the created button widget. Set GTK_CAN_DEFAULT on the button.
17026         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
17027         between buttons, put less padding around the action area.
17028         (gtk_dialog_run): Exit on unmap rather than on destroy. 
17029         This will also exit the loop if the widget is hidden.
17030         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
17031         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
17032         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
17033         special-case delete event.
17034
17035         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
17036         formatting
17037         
17038 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
17039
17040         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
17041         button to temporarily disable position recording in the
17042         "saved position" test.
17043
17044 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
17045
17046         * gtk/gtkthemes.c: added compat code that temporarily implements
17047         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
17048         going to be revamped by owen's upcoming GtkModule patches, but
17049         untill then people want gtk to build, right? ;)
17050
17051 2000-11-04  Havoc Pennington  <hp@pobox.com>
17052
17053         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
17054         list
17055
17056         * docs/Changes-2.0.txt: Add note about
17057         gtk_container_get_toplevels()
17058
17059         * gtk/gtktextview.h: formatting
17060         
17061         * gtk/gtktextview.c: don't start descriptions with "Returns",
17062         confuses gtk-doc
17063
17064 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
17065
17066         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
17067         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
17068
17069 2000-11-03  Havoc Pennington  <hp@redhat.com>
17070
17071         * gtk/gtktexttagtable.c: Docs
17072         (gtk_text_tag_table_size): return a signed int
17073
17074         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
17075         (gtk_text_tag_event): make the event_object a GObject
17076
17077         * gtk/gtktextview.c: Write API docs for all functions.
17078
17079         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
17080         for gtk_text_view_get_window_type() called on one of the private
17081         windows.
17082
17083         * gtk/gtktextview.c: Instead of accessing text_view->buffer
17084         directly, call get_buffer() which demand-creates a default
17085         buffer. So gtk_text_view_new() can be used to create a view with a
17086         default buffer in it, if you just want an empty text box users can
17087         put data in. Useful for GUI builders also.
17088
17089 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
17090
17091         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
17092         the charset encodign portion MUST be in lowercase.
17093         * gtk/gtkrc.az: added file for Azeri language
17094
17095 2000-11-03  Havoc Pennington  <hp@redhat.com>
17096
17097         Get widgets working on the btree/buffer side. Display of them 
17098         still doesn't work.
17099         
17100         * gtk/gtktextview.c: start implementing child widget stuff
17101
17102         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
17103
17104         * gtk/gtktextlayout.c: handle embedded widgets
17105
17106         * gtk/gtktextdisplay.c: handle embedded widgets
17107
17108         * gtk/gtktextchild.c: Implement all the child anchor goo
17109
17110         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
17111         function
17112
17113         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
17114         (insert_pixbuf_or_widget_segment): abstract out common portions of 
17115         creating a child anchor or a pixbuf segment.
17116         (gtk_text_btree_create_child_anchor): new function
17117         (gtk_text_btree_unregister_child_anchor): new function
17118
17119         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
17120         allocate_child signal on GtkTextLayout
17121
17122         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
17123         values
17124         (gtk_text_iter_get_child_anchor): new function
17125
17126         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
17127         default handler for the changed signal, which calls
17128         gtk_text_buffer_set_modified(), instead of just always emitting
17129         changed then calling set_modified() manually. I guess this is
17130         maybe more flexible. It seems logical.
17131
17132 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
17133
17134         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
17135         now.
17136
17137         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
17138
17139 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
17140
17141         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
17142         been marked static.
17143
17144 2000-11-02  Havoc Pennington  <hp@redhat.com>
17145
17146         * gtk/testgtk.c (create_labels): had a test backward
17147
17148         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
17149         fields, so the dest GC ends up with the correct clip origin, 
17150         etc. Fixes a bug where colored labels didn't redraw 
17151         properly.
17152
17153 2000-11-02  Alexander Larsson  <alexl@redhat.com>
17154
17155         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
17156         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
17157         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
17158         Add last argument to t_type_register_static call.
17159         
17160         * gdk/linux-fb/gdkdrawable-fb2.c:
17161         Add last argument to t_type_register_static call.
17162         export the get_image drawable virtual function.
17163
17164         * gdk/linux-fb/gdkimage-fb.c:
17165         Add last argument to t_type_register_static call.
17166         rename gtk_image_get to _gdk_fb_get_image and
17167         export it for use by gdkdrawable-fb2.
17168
17169         * gdk/linux-fb/gdkprivate-fb.h:
17170         export _gdk_fb_get_image.
17171
17172         * gdk/linux-fb/gdkselection-fb.c:
17173         Add new api call stubs.
17174
17175         * gtk/Makefile.am:
17176         Missing ( in linux-fb part.
17177
17178         * modules/linux-fb/Makefile.am:
17179         Must link with gdk_pixbuf or get unresolved symbol.
17180
17181 2000-11-01  Havoc Pennington  <hp@pobox.com>
17182
17183         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
17184         GTK_TYPE_TEXT_ITER and BOXED marshallers
17185
17186         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
17187
17188         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
17189         
17190         * gtk/gtk-boxed.defs: add GtkTextIter
17191
17192         * gtk/gtkmarshal.list: Add marshallers for text widget that 
17193         properly use OBJECT and BOXED
17194
17195 2000-11-01  Havoc Pennington  <hp@redhat.com>
17196
17197         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
17198
17199         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
17200         before returning it. 
17201         
17202 2000-11-01  Havoc Pennington  <hp@redhat.com>
17203
17204         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
17205         Clip the rectangle to be rendered to the drawable, since
17206         get_from_drawable() requires a region within the drawable
17207
17208 2000-11-01  Havoc Pennington  <hp@redhat.com>
17209
17210         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
17211         from coordinates.
17212
17213 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
17214
17215         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
17216         it isn't NULL.
17217
17218 2000-11-01  Havoc Pennington  <hp@pobox.com>
17219
17220         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
17221         on a label
17222         (gtk_label_finalize): unref the attr list if any.
17223
17224         * gtk/testgtk.c (create_get_image): close test on second click
17225         (make_message_dialog): close dialog if it exists
17226
17227         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
17228
17229         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
17230         gdk-pixbuf
17231
17232         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
17233         from Pango markup format
17234         (gtk_label_set_markup_with_accel): ditto but with accelerator
17235         parsing
17236
17237         * gtk/gtkimage.c (gtk_image_expose): reformatting.
17238
17239         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
17240         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
17241         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
17242         call gdk_window_get_origin().
17243
17244         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
17245         implement GDK_PIXBUF_ALPHA_FULL
17246         
17247 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
17248
17249         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
17250         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
17251         g_signal_handlers_disconnect_matched to block/unblock and disconnect
17252         multiple handlers respectively, instead of only treating the
17253         first handler found (bug reported by owen).
17254
17255 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
17256
17257         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
17258
17259         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
17260
17261         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
17262         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
17263         gtk/gtktreeviewcolumn.h: Fixed inline docs.
17264
17265         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
17266         widget.  Needs writing someday.
17267
17268         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
17269         the docs.
17270
17271 2000-10-30  Havoc Pennington  <hp@redhat.com>
17272
17273         * gtk/gtktextview.h, gtk/gtktextview.c:
17274         Rename delete_at_cursor delete_from_cursor, and 
17275         move to move_cursor.
17276
17277 2000-10-30  Havoc Pennington  <hp@redhat.com>
17278
17279         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
17280         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
17281         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
17282         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
17283         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
17284         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
17285         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
17286         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
17287         gtktexttypes.h, gtktextview.c, gtktextview.h:
17288
17289         Massive reindentation and reformatting. Arg alignment and comments
17290         still need fixing in various places.
17291
17292 2000-10-30  Havoc Pennington  <hp@redhat.com>
17293
17294         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
17295         to be named insert_at_cursor and delete_at_cursor so C++ can
17296         handle them.
17297
17298 2000-10-28  Tor Lillqvist  <tml@iki.fi>
17299
17300         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
17301         to get a double directory separator in case the home directory
17302         ends with one. This would cause trouble especially on Windows,
17303         where the path will be confused with the syntax for an an UNC
17304         (network share) path \\server\share\path.
17305         (gtk_rc_add_initial_default_files): Ditto.
17306
17307 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
17308
17309         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
17310
17311         * gtk/gtktextview.c: Use correct marshallers.
17312
17313 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
17314
17315         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
17316         use new iter stuff, and added all the appropriate signals et al.
17317
17318         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
17319         code is internal to gtk only.
17320
17321 2000-10-28  Tor Lillqvist  <tml@iki.fi>
17322
17323         * gtk/gtk.def
17324         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
17325         glib-genmarshal etc.
17326
17327 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
17328
17329         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
17330         parallel builds.
17331
17332 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
17333
17334         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
17335
17336 2000-10-27  Robert Brady  <robert@suse.co.uk>
17337
17338         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
17339         en_GB (British), ia (Interlingua).
17340
17341 2000-10-26  Havoc Pennington  <hp@redhat.com>
17342
17343         * gtk/gtktextiter.c (my_strrstr): fix constness warning
17344
17345         Fixed output of:
17346         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
17347         
17348         * gtk/gtktextsegment.c (char_segment_new): rename
17349         (_char_segment_new_from_two_strings): rename
17350         (_toggle_segment_new): rename
17351         
17352         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
17353         (make_clipboard_widget): make it static
17354         (text_get_func): static
17355         (text_clear_func): static
17356
17357         * gtk/gtkcolorsel.c (adjustment_changed): make this function
17358         static
17359         (hex_changed): make it static
17360         (hsv_changed): make it static
17361         (opacity_entry_changed): make it static
17362
17363         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
17364         (toggle_segment_check_func): rename with _gtk
17365
17366         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
17367         (_widget_segment_new): rename
17368         (_widget_segment_add): rename
17369         (_widget_segment_remove): rename
17370         (_widget_segment_ref): rename
17371         (_widget_segment_unref): rename
17372
17373         * gtk/gtktextmark.c (_mark_segment_new): Rename
17374         _gtk_mark_segment_new   
17375
17376 2000-10-26  Havoc Pennington  <hp@redhat.com>
17377
17378         * gtk/gtkmarshal.list: add new marshallers used by the text widget
17379         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
17380         types
17381
17382         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
17383         marshaller types
17384
17385         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
17386         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
17387         license on these files.
17388
17389         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
17390         work.
17391
17392         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
17393         runtime random number different for each tree, instead of 
17394         a constant I made up.
17395
17396 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
17397
17398         * gtk/Makefile.am: buncha cleanups, kludged build sources
17399         dependencies with a Makefile: oldest-source-stamp dependancy
17400         for the moment. automake is really fighting us here, with
17401         intentionally not allowing user-defined rules or dependancies
17402         prior to it's -include $(DEP_FILES) statement. sucks rocks!
17403
17404         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
17405         to public headers. tehy have a comment stating that they are
17406         "semi-public" aren't included by gtk.h and if enums popup there,
17407         they can be /*< skip >*/-ed.
17408
17409         * gtk/gtktextlayout.h: 
17410         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
17411         added LGPL... <SIGH>
17412
17413 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
17414
17415         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
17416         GtkTreeIter.  Added iterators everywhere.
17417
17418         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
17419
17420         * gtk/gtktreeviewselection.c: Changed to use the iterators.
17421
17422         * gtk/gtktreestore.c: Changed to use the iterators.
17423
17424         * gtk/gtkliststore.c: Commented out the code.  Will convert to
17425         iterators tomorrow.
17426
17427         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
17428         iterators tomorrow.
17429
17430         * gtk/treestoretest.c: Changed to use iterators.
17431
17432         * demos/testgtk/main.c: Moved to use the new iterator system.
17433
17434 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
17435
17436         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
17437         localization misbehaviour.
17438
17439         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
17440         a useless type without copy/free.
17441
17442         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
17443         of GTK_TYPE_CTREE_NODE.
17444
17445 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
17446
17447         * gtk/gtksignal.c:
17448         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
17449         applicable.
17450
17451         * gtk/gtk-boxed.defs (GtkSelectionData): specify
17452         gtk_selection_data_copy and gtk_selection_data_free
17453         do GtkSelectionData work as params in signals.
17454
17455 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
17456
17457         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
17458         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
17459         couldn't they at least give it a non-standard name?
17460         
17461         * gtk/gtktextlayout.c: arg! yet another implementation of
17462         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
17463
17464         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
17465         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
17466         home. now i know this _is_ a conspiracy.
17467
17468         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
17469         ::state-changed.
17470
17471         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
17472         (gtk_accel_group_create_add): marshaller signature fixups.
17473
17474         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
17475         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
17476
17477         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
17478         anymore.
17479
17480 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
17481
17482         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
17483         due to the signal system changes, it wouldn't build currently. to
17484         be fixed soon.
17485
17486         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
17487
17488         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
17489         so it needs gtk_marshal_VOID__ENUM() instead of
17490         gtk_marshal_NONE__UINT().
17491
17492         * gdk/gdk*.c: adapted type registration functions.
17493
17494         * gtk/gtkbindings.c:
17495         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
17496         gone.
17497
17498         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
17499
17500         * gtk/gtkobject.c:
17501         (gtk_object_destroy):
17502         (gtk_object_shutdown): fixed recursion guards. basically we have to
17503         catch the case where any of GObject.shutdown() or gtk_object_destroy()
17504         is called during ::destroy, and avoid recursion there.
17505
17506         * gtk/gtktypeutils.c:
17507         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
17508         boxed_copy/boxed_free. this needs a more general solution based on a
17509         publically installed code-generator utility.
17510
17511         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
17512         glib's gobject has support for that now.
17513         define GtkSignalMarshaller in terms of GSignalCMarshaller.
17514
17515 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
17516
17517         * gtk/gtksignal.[hc]:
17518         * gtk/gtkmarshal.[hc]:
17519         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
17520         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
17521         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
17522         care of that.
17523
17524         * *.c: marshaller name fixups.
17525
17526         * gtk/gtkmarshal.list: added a comment briefing the format.
17527
17528 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
17529
17530         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
17531         compatibility macros here now. more specifically, most of
17532         the API is preserved (yes, _most_, nonwithstanding the
17533         following exceptions listed, the API is stil lHUGE ;)
17534         things that got removed completely:
17535         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
17536         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
17537         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
17538         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
17539         gtk_signal_remove_emission_hook().
17540         non-functional functions variants:
17541         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
17542         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
17543         not supported anymore.
17544         (gtk_signal_compat_matched): new internal function to aid
17545         implementation of the compatibility macros, it  provides
17546         functionality to block/unblock/disconnect handlers based
17547         on func/data.
17548
17549         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
17550
17551         * *.c: adaptions to new type registration API signatures.
17552
17553 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
17554
17555         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
17556
17557 2000-10-25  Robert Brady  <robert@suse.co.uk>
17558
17559         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
17560         gdk_property_delete): If window == NULL, assume the root window.
17561         (restoring the behaviour that was in 1.2).
17562         
17563         * gtk/testtext.c (save_buffer): Allow creation of new files when
17564         saving.
17565
17566         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
17567         calls to read().
17568
17569 2000-10-25  Tor Lillqvist  <tml@iki.fi>
17570
17571         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
17572
17573         * gdk/win32/gdkdrawable-win32.c
17574         * gdk/win32/gdkimage-win32.c
17575         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
17576         X11 backend.
17577
17578         * gdk/win32/gdkcc-win32.c
17579         * gdk/win32/gdkcolor-win32.c
17580         * gdk/win32/gdkfont-win32.c
17581         * gdk/win32/gdkinput-win32.c
17582         * gdk/win32/gdkmain-win32.c
17583         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
17584
17585 2000-10-24  Havoc Pennington  <hp@redhat.com>
17586
17587         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
17588         it a static function
17589
17590         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
17591         redraw text when a tag is applied to it.
17592
17593         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
17594         (gtk_text_tag_affects_nonsize_appearance): private functions to
17595         see if a tag requires various kinds of redraw/layout to be queued
17596         up.
17597
17598         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
17599
17600         * gtk/testtext.c (fill_example_buffer): Put the cursor 
17601         at the start of the buffer, so search works by default
17602
17603         * gtk/gtktextiter.c (lines_match): init match_start always
17604
17605         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
17606         function, get iter at a line + a byte index
17607
17608         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
17609         to set byte position within a line
17610         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
17611
17612 2000-10-23  Havoc Pennington  <hp@redhat.com>
17613
17614         * gtk/testtext.c: Re-enable the "find" dialog
17615
17616         * gtk/testgtk.c: Add test for gdk_drawable_get_image
17617         
17618         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
17619         the arguments to gdk_draw_drawable were in the wrong order
17620         (gdk_window_paint_init_bg): This function was ignoring the
17621         init_region, instead of clipping to it, so the entire backing
17622         pixmap was cleared on every begin_paint()
17623         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
17624         was in here again, the loop kept using the same GtkWindowPaint
17625         over and over.
17626         (gdk_window_begin_paint_region): Fix a bug where we had two
17627         x_offset instead of x_offset and y_offset
17628
17629         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
17630         before we get the image.
17631         (gdk_draw_drawable): get the composite before we draw the drawable.
17632         (gdk_drawable_real_get_composite_drawable): default
17633         get_composite_drawable implementation that returns the drawable 
17634         itself
17635
17636         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
17637         get_composite_drawable virtual function
17638
17639         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
17640         list-walking bug
17641
17642         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
17643         make this work if the source drawable is a GdkDrawableImplX11
17644         instead of a public drawable type. This is really broken; the
17645         problem is that GdkDrawable needs a virtual method get_xid(), but
17646         of course that doesn't work in practice. Enter RTTI.
17647
17648         Also, improve mismatched depth message.
17649
17650         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
17651         GdkPixmap
17652
17653         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
17654         install _gdk_x11_get_image as our implementation of get_image
17655         
17656         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
17657         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
17658
17659         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
17660         gdk_drawable_get_image
17661
17662         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
17663
17664         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
17665         get_image
17666
17667         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
17668         trailing semicolon after for loop
17669
17670 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
17671
17672         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
17673         where font_desc for widget's context lagged widget's font_desc by
17674         one step.
17675
17676 2000-10-22  Tor Lillqvist  <tml@iki.fi>
17677
17678         * gdk/win32/gdkgc-win32.c
17679         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
17680
17681         * gtk/makefile.mingw.in
17682         * gtk/gtk.def: Updates.
17683
17684         * gtk/testgtk.c: sleep() is called _sleep in MS's C
17685         library.
17686
17687         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
17688
17689         * gtk/makefile.msc: Remove
17690
17691         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
17692
17693         * gtk/Makefile.am: Add it.
17694
17695         * configure.in: Generate it.
17696
17697         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
17698         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
17699         something even if not implemented, to satisfy picky MSVC.
17700
17701         Patches by Hans Breuer:
17702         
17703         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
17704         SetBkMode() and SetTextAlign() before calling
17705         pango_win32_render().
17706
17707         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
17708         Set hcliprgn to NULL after destroying it.
17709         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
17710
17711         * gdk/win32/gdkgeometry-win32.c
17712         (_gdk_windowing_window_queue_antiexpose): More effective
17713         implementation.
17714
17715         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
17716         depth as default, not the visual's.
17717
17718         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
17719         against empty title.
17720
17721         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
17722         IMAGE_PRIVATE_DATA.
17723
17724         * gdk/win32/gdkimage-win32.c: Use it.
17725
17726 2000-10-22  Robert Brady  <robert@suse.co.uk>
17727
17728         * configure.in: Check for bind_textdomain_codeset
17729
17730         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
17731         present, make use of it.
17732
17733         Add a translatable string "default:LTR" which, if translated
17734         to "default:RTL", will cause the default direction to be
17735         Right-to-Left.
17736
17737         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
17738         direction if marked as flippable.
17739
17740         * gtk/gtkhscale.c: Mark widget as flippable.
17741         
17742 2000-10-04  Havoc Pennington  <hp@redhat.com>
17743
17744         * gtk/testgtk.c (create_buttons): create some stock buttons
17745         with the default accel group
17746         (create_image): test some new GtkImage features
17747         (make_message_dialog): test GtkMessageDialog
17748         (create_modal_window): fix someone's bizzarro indentation
17749
17750         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
17751         GTK_WIN_POS_CENTER_ON_PARENT. 
17752         Add "destroy with parent" setting, which means the window goes
17753         away with its transient parent.
17754         (gtk_window_get_default_accel_group): get the default accel group
17755         for the window.
17756         (gtk_window_set_destroy_with_parent): set/unset destroy with
17757         parent flag
17758         (gtk_window_read_rcfiles): invalidate icon set caches
17759         after reloading rcfiles 
17760
17761         * gtk/gtkenums.h (GtkWindowPosition): add
17762         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
17763         on its parent window when the dialog is mapped for the first time.
17764
17765         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
17766         a simple message dialog class
17767         
17768         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
17769         handler to emit response signal, and maybe later it would
17770         honor a hide_on_delete flag - though that isn't there yet.
17771         Set border width on the vbox to 2, so we get some padding.      
17772         Use a button box for the action area.
17773         (gtk_dialog_key_press): synthesize a delete event if Esc
17774         is pressed and the GtkWidget key press handler didn't 
17775         handle the escape key.
17776         (gtk_dialog_new_with_buttons): new function creates a dialog
17777         with some default buttons in it.
17778         (gtk_dialog_add_action_widget): add an activatable widget
17779         as a button in the dialog - you can also add a non-activatable
17780         widget by accessing the action area directly.
17781         (gtk_dialog_add_button): add a simple button - stock ID or 
17782         label - to the action area
17783         (gtk_dialog_response): emit response signal
17784         (gtk_dialog_run): block waiting for the dialog, return 
17785         the response. Override normal delete_event behavior, so that 
17786         delete_event does nothing inside gtk_dialog_run().
17787         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
17788         emitted when an action widget is clicked or the dialog gets
17789         delete_event
17790
17791         * gtk/gtk.h: add gtkmessagedialog.h
17792
17793         * gtk/Makefile.am: add gtkmessagedialog.[hc]
17794
17795 2000-10-18  Havoc Pennington  <hp@redhat.com>
17796
17797         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
17798         where any number of empty lines would get skipped
17799
17800         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
17801         edge.
17802
17803         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
17804         warning about invalid iterators (explain more thoroughly)
17805         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
17806
17807         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
17808         big
17809
17810         * demos/*.c: Add error handling
17811
17812         * gtk/gtktextbuffer.c: don't modify const iterators
17813
17814         * gtk/gdk-pixbuf-loader.c: Add full error handling here
17815
17816         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
17817         on file load
17818
17819         * gtk/gtkiconfactory.c: Update to reflect addition of error
17820         handling to gdk-pixbuf loaders
17821
17822 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
17823
17824         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
17825         move to new modularized testgtk.
17826
17827 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
17828
17829         * gtk/gtktreeview.c: Draw the arrows correctly.
17830
17831         * gtk/gtktreemodel.c: Added user docs.
17832
17833         * gtk/gtk.h: remove gtktreedatalist.h.
17834
17835         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
17836         parent when generating my type.
17837
17838         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
17839         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
17840
17841 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
17842
17843         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
17844         GtkTreeModel from object to interface.
17845
17846 2000-10-16  Havoc Pennington  <hp@redhat.com>
17847
17848         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
17849         compilation
17850
17851 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
17852
17853         * gtk/gtktreeselection.c: Add API documentation to all public
17854         functions.
17855
17856         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
17857         functions.
17858
17859 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
17860
17861         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
17862         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
17863         docs to all public functions.
17864
17865         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
17866         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
17867         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
17868         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
17869         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
17870         issue.
17871
17872 2000-10-14  Robert Brady  <robert@suse.co.uk>
17873
17874         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
17875
17876 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
17877
17878         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
17879         values other then G_TYPE_STRING.
17880         * gtk/gtktreeselection.c: Minor commenting updates.
17881         * gtk/gtktreeview.c: Format updates.
17882
17883 2000-10-09  Tor Lillqvist  <tml@iki.fi>
17884
17885         * README.win32: Update.
17886
17887         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
17888         lines that had been deleted by mistake (?).
17889
17890         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
17891         also the case fg==white and bg==black (but still not randomly
17892         coloured cursors). Thanks to Wolfgang Sourdeau.
17893
17894         * gdk/win32/*.c: Silence gcc -Wall.
17895
17896         * gtk/gtk.def: Add missing entry points.
17897
17898         Fixes by Hans Breuer:
17899
17900         * gdk/makefile.msc
17901         * gdk/win32/makefile.msc: Update.
17902
17903         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
17904         some MSVC thing, presumably), cause breakpoint on failures. Add
17905         GDK_NOR case. Call g_log_set_always_fatal.
17906
17907         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
17908         should be pased by reference.
17909         
17910         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
17911         
17912         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
17913
17914         * gdk/win32/gdkevents-win32.c
17915         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
17916
17917         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
17918         implementation object.
17919
17920         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
17921         not just windows.
17922         
17923         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
17924         Use the wrapper object.
17925         
17926 2000-10-06  Havoc Pennington  <hp@redhat.com>
17927
17928         * Makefile.am (SRC_SUBDIRS): contrib subdir
17929
17930         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
17931         so it can be used in Xlib version
17932
17933         * demos/testpixbuf.c (update_timeout): error checking from 1.0
17934         tree
17935
17936         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
17937         change from 1.0 tree that returns first frame of animation
17938         if the loaded file is an animation.
17939
17940         * contrib: add new directory to hold stuff that comes with GTK+
17941         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
17942         
17943         * configure.in: add contrib/*
17944
17945 2000-10-05  Havoc Pennington  <hp@redhat.com>
17946
17947         * demos/testpixbuf-save.c: add pixbuf save test
17948
17949         * demos/Makefile.am: add testpixbuf-save.c
17950
17951 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
17952
17953         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
17954         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
17955         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
17956         * gtk/gtktreeselection.[ch]: Replaced
17957         "node_selected"/"node_unselected" signal with "selection_changed"
17958         signal.
17959
17960 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
17961
17962         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
17963         tree widget.
17964
17965 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
17966
17967         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
17968         drawing.
17969
17970 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
17971
17972         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
17973         Move list pointer forwards before removing item from
17974         list. (Crash reported by Salmaso Raffaele)
17975
17976         * gdk/gdkwindow.h: Remove spurious trailing ,
17977
17978         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
17979         dependencies on uninstalled libraries, sorry folks.
17980
17981 2000-10-04  Havoc Pennington  <hp@redhat.com>
17982
17983         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
17984         gtk/gtkiconfactory.c: Fix copyrights    
17985
17986         * demos/testpixbuf.c: add inline pixbuf test
17987         
17988 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
17989
17990         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
17991         Add gdk_window_iconify.
17992
17993         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
17994         (gdk_window_set_geometry_hints): Add win_gravity
17995         to geometry structure.
17996
17997         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
17998         Implement _NET_WM_PING.
17999
18000         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
18001         Set _NET_WM_PID on the client leader.
18002
18003         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
18004         Handle UTF-8 better.
18005
18006         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
18007         UTF-8 better, set _NET_WM_NAME as well. Only set
18008         icon name if it hasn't previously been explicitely 
18009         set.
18010
18011 2000-10-03  Havoc Pennington  <hp@redhat.com>
18012
18013         * gtk/testtextbuffer.c: clean up trailing whitespace,
18014         add extensive tests for tag toggle iteration.
18015         
18016         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
18017         distance
18018
18019         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
18020         optimize case where the tag root is on level 1
18021         (gtk_text_line_previous_could_contain_tag): attempt to implement
18022         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
18023         functionality
18024
18025         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
18026         Implement this, though not very efficiently.
18027
18028         * gtk/gtktextiterprivate.h: reformat
18029
18030         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
18031         iterator
18032
18033         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
18034         this to properly revalidate the iterators.
18035
18036         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
18037         properly at the end of the line (and therefore on empty lines)
18038
18039         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
18040         maybe we should return a value...
18041
18042 2000-10-03  Tor Lillqvist  <tml@iki.fi>
18043
18044         * config.h.win32: Guard definition of alloca(). glib.h now handles
18045         that.
18046
18047         * gdk/gdk.def
18048         * gtk/gtk.def: Add new entry points.
18049
18050         Changes just to make GTK+ build without errors on Win32. No hope
18051         of it working in its current state, though...:
18052         
18053         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
18054         some functions from the X11 backend, just to make GTK+ build.
18055
18056         * gdk/makefile.mingw.in
18057         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
18058         number. Add new object files.
18059
18060         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
18061         GetMessageTime to get timestamp (where on X11 uses
18062         gdk_x11_get_server_time()).
18063
18064 2000-10-02  Havoc Pennington  <hp@pobox.com>
18065
18066         * gtk/gtktextview.c: text_window_* weren't static and should have
18067         been.
18068         Start work on child widgets; not yet complete, syncing to 
18069         office computer.
18070
18071         * gtk/gtktextchild.h: change this to contain a public interface,
18072         starting work on child interfaces.
18073         * gtk/gtktextchildprivate.h: move private interfaces here
18074
18075         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
18076
18077         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
18078         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
18079         gtk/gtktextmark.c: copyright notices
18080
18081         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
18082         internal functions      
18083
18084         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
18085         internal function
18086
18087         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
18088         Reformatting    
18089
18090 2000-09-30  Havoc Pennington  <hp@pobox.com>
18091
18092         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
18093         NULL start/end pointers
18094
18095         * gtk/gtktextbuffer.c: Write some docs
18096         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
18097         NULL, so you can just check whether there's a selection.        
18098
18099         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
18100         cleanup_line or segments_changed ourselves, it gets done 
18101         in unlink_segment
18102
18103         * gtk/gtktextmark.h:
18104         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
18105         
18106         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
18107
18108         * gtk/gtktextmark.c: delete some more old Tk cruft
18109
18110         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
18111         mark before removing it, so we can emit MARK_DELETED with a valid
18112         pointer.
18113         (gtk_text_buffer_mark_set): hold ref across signal emission
18114
18115         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
18116         whining about attempts to delete special marks
18117
18118         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
18119         underscore, since it's internal.
18120
18121         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
18122         now implemented in terms of iterators in gtktextiter.h
18123
18124         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
18125         New function, destructively sets contents of buffer. Also 
18126         a convenient way to clear the buffer by setting text to ""
18127
18128         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
18129         multiline string literal
18130
18131         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
18132         text changes.
18133
18134         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
18135         is not dereferenceable
18136         (gtk_text_iter_forward_lines): fix return value
18137
18138 2000-09-29  Havoc Pennington  <hp@redhat.com>
18139
18140         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
18141
18142         * gtk/gtktextview.c: Implement drag thresholding; change functions 
18143         that set border window size to have nicer name
18144         (gtk_text_view_mark_set_handler):  Fix this to have the 
18145         right signature.
18146
18147         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
18148
18149         * gtk/testtext.c: Update with API changes, put line numbers on 
18150         both sides.
18151         
18152         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
18153         with this
18154
18155         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
18156         pixbuf; delete a big block of #if 0 Tk code
18157
18158         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
18159         insert_pixmap with insert_pixbuf
18160
18161 2000-09-29  Martin Baulig  <baulig@suse.de>
18162
18163         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
18164         confusion with the GdkPixbuf of the GNOME 1.x platform.
18165
18166 2000-09-29  Havoc Pennington  <hp@pobox.com>
18167
18168         * gtk/gtktextview.c: Implement the side windows.
18169
18170         * gtk/testtext.c: Implement simple line numbering in the 
18171         left side window; seems to make scrolling sloooow. Oops.
18172         Also, cursor blink is for some reason causing redraws
18173         of the line numbers. Should investigate...
18174
18175 2000-09-28  Havoc Pennington  <hp@redhat.com>
18176
18177         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
18178         scrolling child windows, and draw focus rectangle properly.
18179         
18180         (gtk_text_view_buffer_to_window_coords):
18181         Coordinate transformation to deal with all these freaking windows
18182         and offsets
18183         (gtk_text_view_window_to_buffer_coords): transform the other way
18184
18185         * gtk/testtext.c (create_buffer): Update to match Pango API change
18186
18187         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
18188         anonymous tags
18189         (foreach_unref): don't emit remove signal from finalize, just
18190         set tag's parent to NULL
18191
18192 2000-09-26  Havoc Pennington  <hp@redhat.com>
18193
18194         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
18195         Fix some warnings       
18196
18197 2000-09-26  Havoc Pennington  <hp@redhat.com>
18198
18199         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
18200         headers into the private header list
18201
18202         * Makefile.am (pkgconfig_DATA): install pkg-config files
18203
18204         * configure.in: add pkg-config files
18205
18206         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
18207
18208         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
18209         outstanding icon caches on theme change.
18210
18211         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
18212         important types:
18213
18214         (GtkIconSource): Specification for creating a pixbuf 
18215         appropriate for a direction/state/size triplet from 
18216         a source pixbuf or filename
18217
18218         (GtkIconSet): List of GtkIconSource objects that are used to
18219         create the "same" icon (e.g. an OK button icon), and cache for
18220         rendered icons
18221
18222         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
18223         up the icon set for a given stock ID.  GTK maintains a stack of
18224         GtkIconFactory to search, and applications or libraries can add
18225         additional icon factories on top of the stack
18226         
18227         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
18228         the set of GtkIconSource specified for a given stock ID into 
18229         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
18230         RcStyle, under the specified stock ID.
18231
18232         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
18233         render_icon used to derive a GdkPixbuf from a GtkIconSource.
18234         This allows people to theme how prelight, insensitive, etc. are
18235         done.
18236
18237         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
18238         icon factories for a style, and return the resulting 
18239         icon set if any.
18240
18241         (gtk_style_render_icon): Render an icon using the render_icon 
18242         method in the GtkStyleClass.
18243
18244         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
18245         Use the style for a given widget to look up a stock ID, get the
18246         icon set, and render an icon using the render_icon method 
18247         of the style
18248
18249         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
18250         (contains information about a stock item), the built-in stock item
18251         IDs, and functions to add/lookup stock items.
18252
18253         * gtk/stock-icons/*: Stock icons that come with GTK
18254
18255         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
18256         a button based on a GtkStockItem
18257         (gtk_button_new_accel): Takes a uline string and accel group, and
18258         installs the accelerator.
18259
18260         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
18261         image-display widget.
18262
18263 2000-09-25  Havoc Pennington  <hp@redhat.com>
18264
18265         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
18266
18267         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
18268         Fix a bug when removing node data, we didn't properly 
18269         re-splice the linked list after removing the data.
18270
18271         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
18272         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
18273
18274         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
18275
18276         * gtk/gtktextlayout.c (set_para_values): Set tab array 
18277         for the layout from the GtkTextTag.
18278
18279         * gtk/gtktexttypes.h: delete tab and search cruft, 
18280         remove g_convert() in favor of GLib version
18281
18282         * gtk/gtktexttypes.c: remove tab implementation from here,
18283         move to Pango
18284
18285         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
18286         tab stuff using new PangoTabArray from Pango
18287
18288         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
18289         unused border_width stuff
18290
18291 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
18292
18293         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
18294         glib) and now useless utf_to_latin1() latin1_to_utf()
18295
18296         * gtk/gtktextview.[ch]: Change ::move_insert and
18297         ::delete_text action signals to ::move and ::delete;
18298         create the signals with the right enumeration type,
18299         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
18300         C-v bindings, change Home, End to move to beginning/end
18301         of line, Add C-Home C-End to move to beginning/end
18302         of buffer. Change ::cut_text to ::cut_clipboard, etc;
18303         combine ::scroll_text into ::move; use new GtkSelectionData
18304         functions to simplify DND text handling.
18305         
18306         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
18307         deletion enumerations here, rename enumeration values to 
18308         be consistently plural.
18309
18310         * gtk/gtktextbuffer.c: Use new clipboard interfaces
18311         for cut/copy/paste and primary selection.
18312
18313         * gtk/gtktextbuffer.[ch]: Remove excess time and
18314         'interactive' arguments from cut/copy/paste;
18315         rename cut to cut_clipboard, etc; remove
18316         gtk_text_buffer_get_clipboard_contents().
18317
18318         * gtk/gtktextlayout.[ch]: Add 
18319         gtk_text_layout_move_iter_to_line_end() to move the iter to 
18320         line ends.
18321
18322         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
18323         Functions to set or get a UTF-8 string on the selection
18324         data.
18325
18326         * gtk/gtkclipboard.[ch]: New, simplified selection handling
18327         interfaces.
18328
18329         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
18330         created widgets - one of these is useless if we don't.
18331
18332         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
18333         a public function clear all targets registered for the
18334         widget.
18335
18336         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
18337         Never call gtk_widget_realize() - that was just asking
18338         for bizarre side-effects.
18339
18340         * gtk/gtkselection.c (gtk_selection_owner_set): Call
18341         gdk_selection_owner_set even if the widget is the
18342         same so that we reliably update the timestamp on
18343         the server.
18344
18345         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
18346         gdk_x11_get_server_time() function.
18347         
18348         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
18349         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
18350         Add some tricky filtering on serial numbers for
18351         selection clear events to fix up long-standard
18352         race condition FIXME's in gtkselection.c.
18353
18354         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
18355         routines to convert from utf8 to compound text or
18356         STRING and from a text property to UTF-8.
18357
18358         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
18359         a convenience function gdk_get_current_event_time().
18360
18361         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
18362         and free selection_data->data properly
18363
18364 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
18365
18366         * gtk/gtkthemes.c: Remove some unecessary includes.
18367
18368 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
18369
18370         * gtk/gtktextdisplay.c
18371         * gtk/gtktextlayout.c
18372         * gtk/gtktexttag.c
18373         * gtk/gtktexttag.h
18374         * gtk/testtext.c: Change the overstrike property to strikethrough,
18375         to closer match pango.
18376
18377 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
18378
18379         * gtk/gtktextview.c: Fix up visibility so that focus,
18380         cursor_visible and blink interact properly.  Reenable cursor blink
18381         which had been roughly disabled. Make blink and focus
18382         properly per-view.
18383
18384         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
18385         Add a flag for whether to display insertion cursor and
18386         a function to set the flag.
18387
18388         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
18389         get_line_y() to get_line_yrange(), to be a bit more generally
18390         useful.
18391
18392 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
18393
18394         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
18395           do stop_navigating_submenu, to clear last timeout properly.
18396           Also in gtk_menu_motion_notify move ignore_enter above
18397           the conditional to make it always happen as suggested by Owen
18398
18399 2000-09-07  Tor Lillqvist  <tml@iki.fi>
18400
18401         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
18402
18403         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
18404         w32api headers.
18405
18406         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
18407         declarations.
18408
18409         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
18410         (gdk_win32_get_colormap): A line had been deleted by mistake.
18411
18412         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
18413         (gdk_event_translate): Handle more virtual keycodes to be able to
18414         generate GDK events for Control-comma, Control-period, etc.
18415
18416         * gtk/gtk.def: Add some missing entry points.
18417
18418 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
18419
18420         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
18421         Doc comment fixing. (Mostly non-matching parameter names.)
18422
18423         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
18424         comments a little to avoid looking like a doc comment.
18425
18426         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
18427         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
18428         conversions be changed to GError?)
18429
18430         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
18431         Move private #defines into .c file.
18432
18433         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
18434         order of argument addition, remove duplicates.
18435
18436         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
18437         parent class is FrameClass, not BinClass.
18438
18439         * gtk/gtk.h: Add gtkinvisible, which was missing.
18440         (It's occasionalyl useful for client apps, if seldom.)
18441
18442         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
18443         #define.
18444
18445 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
18446
18447         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
18448         coordinates when creating window, instead of GDK-space
18449         coordinates. (Avoid BadValue on too large windows.)
18450
18451 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
18452
18453         * configure.in (use_mmx_asm): Remove conftest* after use along the
18454         lines of AC_TRY_COMPILE.        
18455         
18456         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
18457         of g_dirname, which is deprecated.
18458         (gtk_rc_parse_any): Removed calls to
18459         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
18460
18461         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
18462         Removed calls to g_hash_table_{freeze,thaw}, as they are
18463         deprecated now.
18464
18465         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
18466         instead of g_basename.
18467         
18468 2000-09-04 Elliot Lee <sopwith@redhat.com>
18469         
18470         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
18471         ANSI warning.
18472
18473 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
18474
18475         * gtk/gtkwidget.h:  Add some documenting comments about 
18476           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
18477           just as owen said on irc.
18478
18479         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
18480           set HAS_DEFAULT.  Only set it if there isn't another window
18481           holding it (a focus window which RECEIVES_DEFAULT) and only unset
18482           it if the widget is not the focused window with RECEIVES_DEFAULT.
18483           This fixes weird double default bugs in dialogs which has things
18484           call gtk_window_set_default at times.
18485
18486 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
18487
18488         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
18489         Nils Barth and David Santiago to improve submenu
18490         navigation. The patch does this by creating a triangular
18491         region from the point where the pointer leaves the
18492         menu to the submenu.  While the pointer is in
18493         that region and a timeout has not expired, events 
18494         that would cause the active submenu to change are
18495         ignored.
18496
18497 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
18498
18499         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
18500         moving a toplevel window immediately after sizing it would
18501         result in it being sized back to the old size since 
18502         impl->width, impl->height aren't updated until we hear
18503         back from the server. There is still a (longstanding) bug
18504         here that gdk_window_get_size() will give the wrong size
18505         until we do hear back.
18506
18507 2000-08-31  Havoc Pennington  <hp@redhat.com>
18508
18509         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
18510         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
18511         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
18512         Rename GtkTextStyleValues to GtkTextAttributes
18513
18514 2000-08-31  Havoc Pennington  <hp@pobox.com>
18515
18516         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
18517         for rapid testing whether an iterator is the end iterator
18518         (gtk_text_btree_new): init end line cache
18519         (gtk_text_line_is_last): use fast cached line to 
18520         see if we're the last line.
18521         (get_last_line): use cached line here too, should 
18522         speed up some random unrelated code.
18523         
18524 2000-08-30  Havoc Pennington  <hp@pobox.com>
18525
18526         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
18527         signals.
18528
18529         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
18530         delete_text signals. This allows the signals to be used for
18531         implementing undo.
18532
18533         * gtk/gtktextbuffer.c: Change signal handler signatures; 
18534         provide "interactive" argument when emitting insert_text or
18535         delete_text signal.
18536         
18537 2000-08-30  Havoc Pennington  <hp@pobox.com>
18538
18539         * gtk/gtktextbuffer.c: Docs
18540
18541 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
18542
18543         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
18544         from switch statements, since Tor removed the enumeration
18545         value.
18546         
18547         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
18548         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
18549
18550 2000-08-29 Elliot Lee <sopwith@redhat.com>
18551         * */*.h: Use G_GNUC_CONST.
18552
18553 2000-08-27  Havoc Pennington  <hp@pobox.com>
18554
18555         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
18556         minor indentation fixes, inserted some FIXME about stuff I
18557         realized was broken while documenting it.
18558         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
18559         GTK convention  
18560
18561 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
18562
18563         * gtk/testgtk.c (create_styles): Fix double free of
18564         font desc.
18565
18566 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
18567
18568         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
18569         
18570         * gtk/testgtk.c (create_styles): Add a test for modifying
18571         the style through gtk_widget_modify_*.
18572
18573         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
18574         a function to get the current modifier style.
18575
18576         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
18577         of the passed in GtkRcStyle instead of ref'ing it.
18578
18579         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
18580
18581 2000-08-20  Tor Lillqvist  <tml@iki.fi>
18582
18583         * gdk/gdkimage.h
18584         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
18585         shared memory image+pixmap GdkImage type, or
18586         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
18587         I am dropping that.
18588
18589         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
18590         actually call gtk_init_abi_check(), passing also
18591         sizeof(GtkWindow). Ditto for gtk_init_check(). 
18592
18593         * gtk/gtk.def
18594         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
18595         New functions, used to check that the GTK+-using code has been
18596         compiled using the correct compiler and switches. In particular,
18597         with gcc one has to use the -fnative-struct switch as GTK+ is
18598         compiled with that.
18599
18600 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
18601
18602         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
18603         ->prev fields when merging lists. (Found simultaneously
18604         by Pawel Salek and Jakub Jelinek)
18605
18606 2000-08-12  Tor Lillqvist  <tml@iki.fi>
18607
18608         * gdk/gdk.def
18609         * gtk/gtk.def: Add missing entries.
18610
18611         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
18612         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
18613
18614         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
18615         function. Dummy implementation at this point.
18616
18617         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
18618         rules. Undefine GTK_COMPILATION when compiling the test programs.
18619         
18620         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
18621
18622 2000-08-11  Tor Lillqvist  <tml@iki.fi>
18623
18624         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
18625         to convert back and forth from UTF-8 and the "system" (or "current
18626         locale") charset when necessary. Indentation/spacing cleanup.
18627
18628 2000-08-10  Havoc Pennington  <hp@redhat.com>
18629
18630         * Makefile.am (snapshot): Change the format of the snapshot
18631         version to match glib
18632
18633         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
18634         from EXTRA_DIST since it doesn't seem to exist
18635
18636 2000-08-10  Tor Lillqvist  <tml@iki.fi>
18637
18638         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
18639         version of the directory name (not the UTF-8 one) when building
18640         the path name to stat().
18641
18642 2000-08-03  Elliot Lee  <sopwith@redhat.com>
18643
18644         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
18645         PANGO_ATTR_SHAPE set.
18646
18647 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
18648
18649         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
18650         Peter Osterlund to simplify the code while keeping the
18651         functionality the same.
18652
18653 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
18654
18655         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
18656         is_viewable() test further inside the function, since removing the 
18657         window from the redraw list without clearing ->update_area
18658         was also very broken.
18659
18660 2000-08-02  Tor Lillqvist  <tml@iki.fi>
18661
18662         * configure.in: Check for <unistd.h>.
18663
18664 2000-08-01  Martin Baulig  <baulig@suse.de>
18665
18666         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
18667         to display the message that this is a development version of GTK+.
18668
18669 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
18670
18671         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
18672         was depending on widget->allocation instead of the width of text_area,
18673         which was incorrect for subclasses like GtkSpinButton.
18674
18675         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
18676         with width == 1 tests that should be width == -1.
18677
18678 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
18679
18680         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
18681         (broken, Elliot, every single window blank on X) custom code with call
18682         to gdk_window_is_viewable() which a) prevents code duplicate and
18683         b) works. 
18684
18685 2000-07-31  Elliot Lee  <sopwith@redhat.com>
18686
18687         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
18688         to get the GDK_PARENT_ROOT() macro to work.
18689         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
18690         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
18691         of, windows that aren't shown.
18692         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
18693         pointer grab stuff.
18694
18695 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
18696
18697         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
18698           s/gtk_main_iteration/g_main_iteration/
18699
18700           Did this already in change:
18701                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
18702           don't know how it got reverted.
18703
18704 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
18705
18706         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
18707         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
18708
18709         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
18710         not gdk_pixbuf.
18711
18712 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
18713
18714         * configure.in,po/{sp,sr}.po: Added Serbian files
18715
18716 2000-07-30  Tor Lillqvist  <tml@iki.fi>
18717
18718         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
18719
18720         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
18721         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
18722         GIOChannel implementation.
18723
18724         * gdk/win32/gdkinput.c
18725         * gdk/win32/gdkpango-win32.c: Update license name here, too.
18726
18727         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
18728         definition to match prototype.
18729
18730         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
18731
18732 2000-07-27  Elliot Lee  <sopwith@redhat.com>
18733
18734         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
18735         function, to allow handling image formats that cannot be detected
18736         by looking at content alone.
18737
18738 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
18739
18740         * docs/tutorial/*.gif *.jpg *.eps
18741           Update these to the same look-n-feel.
18742           Why does including images in DocBook suck so badly?
18743
18744 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
18745
18746         * gtk/gtktable.c: applied patch from Phil Thompson
18747         <phil@river-bank.demon.co.uk> that enables space settings for
18748         the last row/columns as well.
18749
18750 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
18751
18752         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
18753         updates the license headers to the GNU Lesser General Public License,
18754         as well as updating the copyright year to 2000.
18755
18756 2000-07-26  Robert Brady  <rwb197@zepler.org>
18757
18758         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
18759           and po/Makefile, was installing and looking for them under gtk20
18760           and gtk2 respectively.
18761
18762 2000-07-25  Havoc Pennington  <hp@redhat.com>
18763
18764         * gtk/testtext.c: Comment out some stuff that depends on the rest
18765         of my patches.
18766
18767 2000-07-25  Havoc Pennington  <hp@redhat.com>
18768
18769         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
18770         buffer
18771
18772 2000-07-25  Havoc Pennington  <hp@redhat.com>
18773
18774         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
18775         widget changes.
18776
18777         * gtk/gtktextview.h: To be consistent with usage of "line"
18778         throughout the API to mean "newline-terminated thingy", change
18779         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
18780         to MOVEMENT_LINE.
18781
18782         (GtkTextView): Add flags for default editability, and whether to
18783         show the cursor. Add functions to get/set that. Add 
18784
18785         (gtk_text_view_get_iter_location): new function
18786
18787         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
18788         gtktextlayout.h
18789         (g_convert): Add g_convert temporarily, will go in glib in a bit
18790         
18791         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
18792         GtkTextTagTableForeach instead of brokenly using GHFunc.
18793         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
18794
18795         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
18796         moved to public header.
18797
18798         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
18799         "invisible", since "elide" was a bad name.
18800         (gtk_text_tag_get_priority): Added
18801
18802         (GtkTextStyleValues): put this in public header, along with
18803         functions to use it.
18804
18805         * gtk/gtktextmarkprivate.h: Include more headers, since we no
18806         longer include gtktextbtree.h.
18807
18808         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
18809         gtk_text_mark_deleted
18810
18811         * gtk/gtktextlayout.h: Don't include the "really private" headers,
18812         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
18813         to make this possible. Now we only need to install
18814         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
18815         (However the Makefile.am isn't changed yet because of the
18816         logistics of merging gtk-hp-patches piecemeal)
18817
18818         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
18819         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
18820         gtk_text_iter_get_line is now used in the public API for a
18821         different purpose.
18822
18823         * gtk/gtktextiter.h: Clean up function names to be more
18824         consistent. Always call char offset "offset" and byte index
18825         "index". A "line" is always a line number. 
18826
18827         (gtk_text_iter_is_last): new function, more efficient than 
18828         the existing way to check
18829         (gtk_text_iter_is_first): new function, also more efficient
18830
18831         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
18832
18833         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
18834         gtk_text_iter_forward_char, etc.
18835
18836         (gtk_text_iter_forward_to_tag_toggle): Renamed from
18837         forward_find_tag_toggle, since this isn't a linear search
18838
18839         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
18840
18841         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
18842         New functions, search for a buffer substring.
18843
18844         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
18845         interactive and default editable (since we need to store that info
18846         until we receive the selection data).
18847
18848         Remove all the _at_char and at_line etc. versions of functions;
18849         only have iterator versions.
18850
18851         Add _interactive() versions of functions, that consider the
18852         editability of text. (FIXME add interactive flag to the 
18853         insert/delete signals per Darin's suggestion)
18854
18855         (gtk_text_buffer_get_tag_table): new function, demand-creates the
18856         tag table if necessary
18857
18858         Remove declaration of gtk_text_buffer_get_iter_from_string
18859
18860         (_gtk_text_buffer_get_btree): private/internal function, added.
18861         
18862
18863         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
18864         (gtk_text_line_is_last): new function
18865
18866 2000-07-25  Havoc Pennington  <hp@redhat.com>
18867
18868         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
18869         using GtkProgressBar. See Changes-2.0.txt for details.
18870
18871         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
18872         "pulse_step" which are the equivalent of
18873         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
18874         Implement new API.
18875         
18876         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
18877         (use_text_format) to mark whether text set on the progress bar is
18878         a format string. Deprecate entire GtkProgress interface.
18879
18880         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
18881         (gtk_progress_build_string): make this a no-op if use_text_format
18882         is FALSE
18883
18884         * docs/Changes-2.0.txt: Describe progress bar changes.
18885
18886 2000-07-25  Tor Lillqvist  <tml@iki.fi>
18887
18888         * Makefile.am: Include the build directory.
18889
18890         * configure.in: Generate build/Makefile, build/win32/Makefile,
18891         gdk/, gdk/win32/, and gtk/makefile.mingw.
18892
18893         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
18894         Add GETTEXT_PACKAGE.
18895         
18896         * gdk/gdk.def
18897         * gtk/gtk.def: Updates.
18898
18899         * gdk/gdkfont.h
18900         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
18901         need them any longer.
18902
18903         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
18904
18905         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
18906         PANGOWIN32_LIBS and gdk_pixbuf.
18907
18908         * gdk/win32: Compiles, but no doubt doesn't work at all.
18909
18910         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
18911
18912         * gdk/win32/gdkinput.c: New file, temporarily.
18913         
18914         * gdk/win32/gdkinput-win32.h: New file
18915
18916         * gdk/win32/gdkinputprivate.h: Remove.
18917
18918         * gdk/win32/gdkpango-win32.c: New file.
18919
18920         * gtk/makefile.mingw.in: New file
18921
18922         * gtk/makefile.cygwin: Removed
18923         
18924         * gtk/Makefile.am: Update accordingly.
18925
18926         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
18927         made externally visible.
18928
18929         * gtk/gtkmain.c: Use it.
18930         
18931         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
18932         is enough.
18933
18934         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
18935
18936 2000-07-24 Elliot Lee <sopwith@redhat.com>
18937         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
18938         individual backends already.
18939         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
18940         again. Yes, there really is a good reason for this, if you are using the gdkregion
18941         internals, and if you're not, why do you care?
18942         * gdk/gdkwindow.c: Fix inverted condition
18943         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
18944         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
18945         * gtk/gtkrange.c: Redraw trough when moving.
18946         * gtk/gtktypeutils.c: Fix warning by adding const cast.
18947         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
18948
18949 2000-07-23  Tor Lillqvist  <tml@iki.fi>
18950
18951         * configure.in: Check for mkstemp and sigsetjmp. Output
18952         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
18953
18954         More work on GDK for Win32. Still in an intermediate state.
18955
18956         * gdk/makefile.cygwin
18957         * gdk/win32/makefile.cygwin: Removed.
18958         
18959         * gdk/makefile.mingw.in
18960         * gdk/win32/makefile.mingw.in: New files.
18961
18962         * gdk/Makefile.am
18963         * gdk/win32/Makefile.am: Generate and distribute them.
18964
18965         * gdk/win32/gdkwindow-win32.h
18966         * gdk/win32/gdkdrawable-win32.h
18967         * gdk/win32/gdkpixmap-win32.h: New files.
18968
18969         * gdk/win32/gdkcolor-win32.c
18970         * gdk/win32/gdkcursor-win32.c
18971         * gdk/win32/gdkdrawable-win32.c
18972         * gdk/win32/gdkgc-win32.c
18973         * gdk/win32/gdkimage-win32.c
18974         * gdk/win32/gdkprivate-win32.h
18975         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
18976         Rename fields and variables called xcursor, xid, etc (these names
18977         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
18978
18979 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
18980
18981         * gtk/gtkentry.[ch]: Fix some problems with vertical
18982         alignment.
18983
18984         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
18985         char/byte confusion.
18986
18987 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
18988
18989         * gtk/gtktextview.c (changed_handler): Fix bug where
18990         redraw wasn't being done properly when height of
18991         dirty region changed.
18992
18993         * demos/Makefile.am: Remove various references to
18994         -lgmodule
18995
18996 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
18997
18998         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
18999         PangoAttrShape to reserve space for pixmaps, add 
19000         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
19001         in the display functions.
19002         
19003         * gtk/testgtk.c (create_layout): Set some more exotic
19004         scrolled window options
19005
19006         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
19007         Add function to set the shadow type of a window, to allow
19008         putting a shadow around widgets such as GtkLayout or GnomeCanvas
19009         which don't draw their own frame.
19010
19011 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
19012
19013         * docs/tutorial/package-db-tutorial.sh: New file for
19014           packaging DocBook format tutorial
19015
19016 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
19017
19018         * docs/tutorial/gtk-tut.sgml: Minor updates
19019
19020         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
19021
19022 2000-07-19  Tor Lillqvist  <tml@iki.fi>
19023
19024         * gtk/gtksignal.c: Fix C++ comment.
19025
19026         * gtk/gtkimmulticontext.c
19027         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
19028         don't return value from void functions.
19029
19030         * gtk/gtk.def: Add gtk_rc_style_unref.
19031
19032 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
19033
19034         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
19035         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
19036         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
19037         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
19038         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
19039         gtk/gtktypeutils.h: Include files outside of the extern "C"
19040         block. Makes some C++ compiler happy. Reported by Denis Vakatov
19041         <vakatov@peony.nlm.nih.gov>.
19042
19043 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
19044
19045         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
19046           Completes first pass. Hurrah!
19047
19048 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
19049
19050         * docs/tutorial/gtk-tut.sgml: More clean ups.
19051
19052 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
19053
19054         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
19055         paint the background of the text area which was accidentally
19056         removed at some point.
19057
19058         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
19059           
19060          - Move most of the functionality from the theme vtable
19061            into GtkRcStyleClass and GtkStyleClass. The moved
19062            vtable functions were changed a bit in the move to
19063            work better in their new home.
19064
19065          - Get rid of the engine and engine_data fields from
19066            GtkRcStyle and GtkStyle; instead the theme
19067            engine derives theme-specific subclasses of GtkRcStyle
19068            and GtkStyle
19069
19070          - Add extra dlsym() found entry point to themes,
19071            theme_create_rc_style().
19072
19073         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
19074         in gtk_style_real_copy.
19075
19076         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
19077         to register a type associated with an engine. (The engine
19078         won't be unloaded as there is an instance of the type.)
19079
19080
19081 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
19082
19083         * docs/tutorial/gtk-tut.sgml: Clean ups.
19084
19085 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
19086
19087         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
19088           of cleaning up to do.
19089
19090 2000-07-15  Tor Lillqvist  <tml@iki.fi>
19091
19092         * gdk/testgdk.c: New file, quick hack to test backends for
19093         pixel-by-pixel correctness of the most simple graphic operations.
19094
19095 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
19096
19097         * Really release 1.3.1
19098         
19099         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
19100         include structure.
19101
19102 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
19103
19104         * Released 1.3.1
19105
19106 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
19107
19108         * gtk/gtktextlayout.c: use FALSE for size_only most
19109         of the time when calling gtk_text_layout_get_line_display()
19110         to avoid causing double reshapes when a redraw follows
19111         immediately after.
19112
19113 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
19114
19115         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
19116         appropriate region and gdk_window_process_updates() so trough
19117         updating doesn't lag behind the window being scrolled.
19118
19119         * gdk/gdkgc.c: Make parent_class pointer static.
19120          
19121 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
19122
19123         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
19124         include <string.h>.
19125          
19126         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
19127         cut-and-paste error in computing memory offset for 4 channels.
19128
19129 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
19130
19131         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
19132         gtk_rc_append_default_pixmap_path(), since it wasn't
19133         adding an interesting path and we don't have a meaningful
19134         default for this value.
19135
19136 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
19137
19138         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
19139         gtk-config to gtk-config-2.0 move gtk_.m4 to
19140         gtk-2.0.m4
19141
19142         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
19143         gdk/Makefile.am demos/Makefile.am: Change 
19144         library names to libgtk-1.3.la, etc, so that we
19145         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
19146
19147         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
19148         gdk/Makefile.am gdk/x11/Makfile.am
19149         Move include files into /usr/include/gtk-2.0, 
19150         /usr/lib/gtk-2.0/include/
19151          
19152         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
19153         gtk/gtkintl.h: Change package for gettext from 
19154         gtk+ to gtk20. Put hack in autogen.sh to modify
19155         po/Makefile.in.in after gettextize to make this
19156         possible.
19157
19158         * gtk+.spec: Some updates, not tested.
19159
19160         * gdk-pixbuf/Makefile.am: Move loaders into
19161         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
19162
19163         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
19164         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
19165         to THEMENAME/gtk-2.0/. Move engine directory  to
19166         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
19167         
19168 2000-07-12  Tor Lillqvist  <tml@iki.fi>
19169
19170         Win32 changes, still doesn't build though.
19171
19172         * gdk/makefile.cygwin
19173         * gdk/win32/makefile.cygwin
19174         * gtk/makefile.cygwin: Updates.
19175
19176         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
19177         default values for fg and bg pixel as X11 does (0 and 1), not
19178         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
19179         Use 0 for pen width by default (treated as 1 anyway later, but for
19180         apps that might check the value in the GdkGC).
19181         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
19182         interface to gdk_gc_predraw and _postdraw.
19183
19184         * gdk/win32/gdkwin32.h
19185         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
19186
19187         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
19188         extraneous semicolon.
19189
19190         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
19191
19192         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
19193         not the Win32 bitspixel value.
19194
19195         * gdk/win32/gdkcc-win32.c:
19196         * gdk/win32/gdkcolor-win32.c 
19197         * gdk/win32/gdkprivate-win32.h
19198         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
19199         GDK object structure.
19200
19201 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
19202
19203         * docs/tutorial/gtk_tut_12.es.sgml (name): 
19204         * docs/tutorial/gtk_tut_it.sgml (name): 
19205         * docs/tutorial/gtk_tut_fr.sgml (name): 
19206         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
19207         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
19208
19209 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
19210
19211         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
19212           small changes.
19213
19214 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
19215
19216         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
19217         a bug here, never been here and never fixed anything ;(
19218         (don't segfault if tree->root_tree is NULL, which happens prior
19219         to widget realization, but puke instead).
19220
19221 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
19222
19223         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
19224         add the necessary tokens.
19225
19226         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
19227         (gtk_rc_style_to_style): copy thicknesses.
19228         (gtk_rc_init_style): apply thicknesses.
19229         (gtk_rc_parse_style): parse xthickness and ythickness.
19230
19231         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
19232
19233         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
19234         (gdk_window_new): 
19235         (_gdk_windowing_window_init): 
19236         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
19237         (gdk_pixmap_create_from_data): 
19238         (gdk_bitmap_create_from_data): 
19239         (gdk_pixmap_new): 
19240         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
19241         (gdk_image_new): 
19242         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
19243         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
19244         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
19245         (gdk_colormap_get_system): 
19246         (gdk_colormap_new): 
19247         * gdk/gdkwindow.c (gdk_window_init): 
19248         * gtk/gtkstyle.c (gtk_style_new):
19249         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
19250         * gdk/gdkpixmap.c (gdk_pixmap_init): 
19251         * gtk/gtkrc.c (gtk_rc_style_new):
19252         use g_object_new() instead of g_type_create_instance() which
19253         is a private function for fundamental type implementations.
19254
19255 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
19256
19257         * configure.in: Add check for db2html
19258
19259 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
19260
19261         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
19262         hack to set glib_debug_objects based on gtk_debug_flags.
19263
19264 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
19265
19266         * INSTALL.in: Update the Prerequisites section.
19267
19268         * Makefile.am demos/Makefile.am docs/Makefile.am
19269         docs/tutorial/Makefile.am gdk/x11/Makefile.am
19270         gdk/linux-fb/Makefile.am: Dist fixes
19271
19272 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
19273
19274         * NEWS: 10,000 foot view of 1.3.1 changes.
19275
19276 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
19277
19278         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
19279         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
19280         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
19281         gdk/x11/gdkmain-x11.c: 
19282
19283         Patch from George Lebl to add a GdkGrabStatus enumeration to use
19284         as a return value of gdk_*_grab(). Previously, we just
19285         returned the X11 values directly.
19286
19287 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
19288
19289         * gdk/x11/Makefile.am: Patch from George Lebl to 
19290         install all the headers in the right place.
19291
19292 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
19293
19294         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
19295           initial conversion to DocBook.
19296
19297 2000-07-04  Tor Lillqvist  <tml@iki.fi>
19298
19299         * README.win32: Improve a bit.
19300
19301         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
19302         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
19303         Alt+0nnn on the numpad (used to enter characters by numeric code
19304         from current DOS or ANSI codepage) working correctly, as in other
19305         Windows apps.
19306
19307         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
19308         same argument validity tests as in X11 version.
19309         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
19310
19311         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
19312         definitions in case missing from headers.
19313
19314         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
19315         destroy the window-specific cursor.
19316         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
19317         calling GetModuleHandle(NULL).
19318         (gdk_window_set_cursor): Reworked to always copy the passed cursor
19319         with CopyCursor before setting it as the window-specific
19320         cursor. It is OK for the caller to destroy the GdkCursor (and thus
19321         also its Windows cursor) after calling this function. Destroy any
19322         previous window-specific cursor.
19323
19324 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
19325
19326         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
19327         font charset is iso8859-1, not iso-8859-1.
19328
19329 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
19330
19331         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
19332         Use g_get_charset() instead of g_get_codeset().
19333
19334         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
19335         Comment out some strdup'ing functions to keep timj
19336         happy until we finish fighting this out.
19337
19338 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
19339
19340         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
19341         <= width or height.
19342
19343         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
19344         from 1.2 for parent/child states.
19345
19346         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
19347         of typos.
19348
19349         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
19350         event structures, replace with a generic axes field. Replace 
19351         deviceid/sourec with GdkDevice *device.
19352
19353         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
19354         to extract particular axis use value from event. (Also
19355         can be used for normal X/Y.)
19356
19357         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
19358         allow for arbitrary number of axes, namespace everything
19359         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
19360         everywhere.
19361
19362         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
19363         Get rid of the gdk_input_vtable setup if favor of simply
19364         defining the functions in gdkinput-none/gxi/xfree.c in
19365         a similar fashion to the way that the port structure is 
19366         done.
19367
19368         * gtk/gtkdnd.c: Fix fields of synthesized button press event
19369         for new event structures. 
19370
19371         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
19372         new device interfaces.
19373
19374 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
19375
19376         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
19377         set the initial text.
19378
19379         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
19380         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
19381         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
19382         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
19383
19384         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
19385         pango_layout_set_font_description to simplify.
19386
19387 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
19388
19389         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
19390         pango_layout_set_font_description to simplify.
19391
19392 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
19393
19394         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
19395         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
19396         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
19397
19398         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
19399         PANGO_PIXELS() macro.
19400
19401 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
19402
19403         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
19404         that returns a PangoContext owned by the widget and updated to
19405         match future changes in the widget. Also, make 
19406         gtk_widget_create_pango_layout() use this context. If we ever
19407         add a ::changed signal to PangoContext, this will make things
19408         much more convenient. 
19409
19410         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
19411         in the appropriate places instead of destroying the layouts and
19412         creating new ones.
19413
19414         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
19415         in a few strategic places.
19416
19417 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
19418
19419         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
19420         gtk_widget_size_request() on reparented child, if one. Otherwise,
19421         queue_resize() on the child never results in it getting size-requested
19422         at all.
19423
19424         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
19425         in option menus, so that (with luck) people won't copy it into
19426         their apps in the future.
19427
19428         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
19429         to gtk_option_menu_calc_size. This isn't perfect, but should fix
19430         a lot of problems with changing the size of the menu's menu
19431         items after adding it to the option menu.
19432
19433         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
19434
19435         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
19436         the text direction for a widget changes.
19437
19438         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
19439         ::direction_changed to get rid of various hacks.
19440
19441 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
19442
19443         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
19444         name.
19445
19446 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
19447
19448         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
19449         flag to the structure. Do not call XFreePixmap on pixmaps created
19450         by gdk_pixmap_foreign_new().
19451
19452 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
19453
19454         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
19455         value using GdkRGB functionality given GdkColormap and GdkColor.
19456         (name not final, waiting for inspiration.)
19457         
19458         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
19459         set the foreground/background of a GC using the GC's colormap
19460         and GdkRGB. (name not final, waiting for inspiration.)
19461
19462         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
19463         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
19464
19465         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
19466         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
19467         purely a function of the corresponding colormap. Make
19468         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
19469
19470         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
19471         gdk_pixbuf_*create_from_xpm_* in terms of
19472         gdk_pixbuf_new_from_xpm_data(), move into platform independent
19473         code.
19474
19475         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
19476         advantage of the new draw_rgb_32_image_dithalign.
19477
19478         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
19479
19480         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
19481         on each created GC.
19482
19483         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
19484
19485         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
19486         which we initialize from the drawable when the GC is created,
19487         if the drawable has a colormap.
19488
19489         * gdk/x11/gdkgc-x11.c: include string.h for memset.
19490
19491         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
19492
19493         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
19494
19495 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
19496
19497         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
19498         actually returning expose events, make sure to set
19499         the count field properly.
19500
19501         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
19502         accidentally reintroced bug which always cleared
19503         the graphics_exposures value. 
19504
19505 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
19506
19507         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
19508
19509 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
19510
19511         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
19512
19513 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
19514
19515         * docs/faq/gtk-faq.sgml: Start of Section 6.
19516
19517 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
19518
19519         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
19520         
19521         (Fixes problem with drawing childless frames. Pointed out
19522         by and a first patch from Anders)
19523         
19524         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
19525         compute a child_allocation, even if we don't have a child.
19526
19527         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
19528         Always chain to the parent's impl, even if we don't have a child.
19529
19530 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
19531
19532         * gdk/gdkrgb.c: If possible, create only a single shm segment and
19533         use multiple parts of it instead of creating a bunch of separate
19534         segments, since the maximum number of segments per system is not
19535         large. (This might be worth backporting to GTK+-1.2.x if we make a
19536         new release )
19537
19538         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
19539         structure in preparation for per-colormap GdkRGB.
19540
19541         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
19542         to False when we get EINVAL from shmget so that the caller of
19543         gdk_image_new can retry with a smaller segment size.
19544
19545 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
19546
19547         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
19548
19549 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
19550
19551         * configure.in: make the current version number 1.3.1 (binary age 0,
19552         interface age 0).
19553         
19554         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
19555         gtkcompat.h is all we want.
19556
19557         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
19558         GLib primitive types. fixed g_type_register_fundamental() argument
19559         ordering.
19560
19561         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
19562         compiles.
19563
19564         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
19565         object code cleanup, comment trigraph fixes, etc...
19566
19567 2000-06-23  Havoc Pennington  <hp@redhat.com>
19568
19569         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
19570         instead of making up a bogus name for first_para_mark
19571
19572         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
19573         0 as a context ID
19574
19575 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
19576
19577         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
19578
19579 2000-06-21  Havoc Pennington  <hp@pobox.com>
19580
19581         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
19582         we didn't check window->bg_pixmap != GDK_NO_BG.
19583
19584         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
19585         gdk-pixbuf
19586
19587 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
19588
19589         * docs/faq/gtk-faq.sgm: Move file to here.
19590           TODO: Update Makfile.am 
19591
19592 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
19593
19594         * docs/gtk-faq.sgm: Add Section 2
19595
19596 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
19597
19598         * docs/gtk-faq.sgm: New file. Start of DocBook
19599           version of the FAQ.
19600
19601 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
19602
19603         * configure.in (GDK_PIXBUF_MAJOR): Define version
19604         numbers for GDK_PIXBUF_*, as they get substituted
19605         into a header file. Need to consider versioning
19606         for gdk-pixbuf more carefully later.
19607
19608 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
19609
19610         Work with srcdir != builddir.   
19611         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
19612         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
19613         * demos/testpixbuf.c: Likewise.
19614         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
19615         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
19616         <gdk/x11/gdkx.h>.
19617         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
19618         "gdk-pixbuf.h".
19619         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
19620
19621 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
19622
19623         * TODO.xml: Change 1.4 version numbers to 2.0.
19624
19625 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
19626
19627         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
19628         fixups to GTK+ standard.
19629
19630 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
19631
19632         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
19633         gdk-pixbuf.
19634
19635         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
19636         fixups for GObject.
19637
19638         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
19639         gdk-pixbuf with GDK dependencies moved into GDK.
19640         
19641         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
19642         move gdk-pixbuf-loader here until GObject has signals.
19643
19644         * demos/: New directory of demos. Move demos from
19645         gdk-pixbuf here.
19646
19647         * demos/pixbuf-init.c: Small bit of code to check for
19648         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
19649         set GDK_PIXBUF_MODULEDIR appropriately.
19650
19651         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
19652         define which no longer makes sense.
19653
19654 2000-06-21  Havoc Pennington  <hp@redhat.com>
19655
19656         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
19657         gtk_get_default_language
19658
19659         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
19660         new function to get the default language
19661
19662         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
19663         s/gtk_text_view_style_values/gtk_text_style_values/
19664
19665         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
19666         Add a "language" field to tags.
19667
19668         (gtk_text_tag_set_arg): Fix bug in setting
19669         "bg_full_height_set" tag.
19670
19671 2000-06-21  Havoc Pennington  <hp@redhat.com>
19672
19673         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
19674         in the interfaces
19675
19676         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
19677         stuff instead when possible.
19678
19679         * gtk/gtktexttypes.h: Delete some unused constants
19680
19681         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
19682         testtextbuffer.c: use glib instead of custom unicode routines
19683
19684 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
19685
19686         * docs/es/: Removed mistakenly added generated sgml
19687
19688         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
19689         Remove outdated info files.
19690
19691         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
19692         Moved tutorial files into subdir
19693
19694         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
19695         subdir.
19696
19697         * docs/man/gtk_button.pod: Remove. (contents will be
19698         integrated into gtk-reference button page.)
19699
19700         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
19701         docs/faq/Makefile.am: Adjust for new organization
19702
19703 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
19704
19705         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
19706         not $(MKINSTALLDIRS)
19707
19708 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
19709
19710         * gtk/testgtk.c (create_text): Finish the job Elliot started
19711         of removing font setting test for text widget. (Since text widget
19712         and GdkFont are not deprecated, and cause portability problems.)
19713
19714 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
19715
19716         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
19717         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
19718         Remove use of libunicode in favor of new GLib functions.
19719
19720         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
19721         nano-x, framebuffer. The X11 include is just a hack until we get
19722         the necessary functions in gdkcolor.h, so there is no reason to
19723         add other includes of platforms.
19724
19725         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
19726         window bigger than the screen change.
19727
19728         * gtk/testgtk.c: Revert some random changes from Elliot
19729         that had no particular point and were causing testgtkrc
19730         not to function correctly.
19731         
19732         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
19733         because GdkSegment and GdkRegionBox have the same fields,
19734         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
19735         results in clearer code.
19736
19737         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
19738         gdk_input_translate_coordinates): Fix missed GdkObjectification
19739
19740 2000-06-18  Elliot Lee  <sopwith@redhat.com>
19741
19742         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
19743         * gtk/gtk{plug,socket}.h: Missed commits from previous.
19744
19745 2000-06-20  Havoc Pennington  <hp@redhat.com>
19746
19747         * modules/linux-fb/Makefile.am: Make this compile
19748         without framebuffer enabled
19749
19750         * gdk/linux-fb/Makefile.am: Add conditional to not build
19751         framebuffer unless specified in configure
19752
19753         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
19754         the size of the target instead of source if -1 was passed for
19755         width/height
19756
19757         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
19758         width/height confusion.
19759
19760 2000-06-19  Havoc Pennington  <hp@redhat.com>
19761
19762         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
19763         GDK_DRAWABLE_XID. In the future, we probably want to make it
19764         faster with G_DISABLE_CHECKS turned on.
19765
19766 2000-06-14  Havoc Pennington  <hp@redhat.com>
19767
19768         * gdk/Makefile.am: add gdkpixmap.c
19769
19770         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
19771         s/gdk_image_init/_gdk_windowing_image_init
19772
19773         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
19774         ref/unref
19775
19776         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
19777
19778         * gdk/gdkcompat.h: remove GdkWindowType compat, since
19779         GdkWindowType is now non-deprecated; 
19780         change gdk_window_get_type() compat to be
19781         gdk_window_get_window_type().
19782
19783         * gdk/gdkdnd.h: make GdkDragContext a GObject.
19784
19785         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
19786         virtual GObject. Make all functions call into the vtable.
19787         Move gdk_image_put() guts in here. Remove GdkDrawableType
19788         and gdk_drawable_get_type(), these are now GdkWindow-specific.
19789         draw_image, get_depth, get_size, set_colormap, get_colormap,
19790         get_visual added to the vtable.
19791         
19792         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
19793         GObject. Virtualize everything. 
19794         (gdk_gc_new_with_values): remove check for destroyed window,
19795         because now GdkWindow::create_gc will check this.
19796         (gdk_gc_set_values): New function to set GC values, this 
19797         was already implemented but wasn't in the header
19798
19799         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
19800
19801         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
19802         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
19803         remove _gdk_window_class; add _gdk_window_impl_get_type() and
19804         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
19805         _gdk_windowing_window_init, rename gdk_image_init to
19806         _gdk_windowing_image_init.
19807         
19808         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
19809         (gdk_draw_layout): Remove check for destroyed window, 
19810         because all the drawable methods already check it.
19811         
19812         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
19813         Add gdkpixmap.c which contains implementation of GdkDrawable
19814         virtual table (by chaining to a platform-specific implementation
19815         object).
19816         
19817         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
19818         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
19819         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
19820         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
19821         GdkColormapPrivate. 
19822
19823         * gdk/gdktypes.h: #include <glib-object.h>
19824
19825         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
19826         Move most functionality to platform-specific implementation
19827         object. GdkWindow itself now handles the backing store, then
19828         chains to the platform-specific implementation.
19829         (gdk_window_get_window_type): return GdkWindowType of the window.
19830         (gdk_window_peek_children): New routine, returns the children of 
19831         a GdkWindow
19832         (gdk_window_get_children): Was in X11-specific code and did 
19833         XQueryTree. Changed to simply return a copy of window->children; 
19834         so it can go in cross-platform code.
19835         
19836         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
19837
19838         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
19839         GdkColormap; just changed to use the new private data instead
19840         of casting to GdkColormapPrivate.
19841
19842         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
19843         gdk_cursor_new().
19844
19845         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
19846         (private data member in the GObject). 
19847         (xdnd_manager_source_filter): Function had broken 
19848         error handling, fix it (use gdk_error_trap_push).
19849
19850         * gdk/x11/gdkdrawable-x11.c: This file now implements
19851         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
19852         base class is purely for the convenience of the X port,
19853         and not part of the interface to cross-platform GDK.
19854
19855         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
19856         
19857         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
19858         specific to X, and returned by the create_gc virtual method
19859         of GdkDrawableImplX11. 
19860         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
19861         rather than gchar, this was also changed in the GdkGC vtable.
19862         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
19863         mask is 0, return immediately, instead of checking every flag.
19864         This is faster, and keeps us from segfaulting if values is NULL
19865         and the mask contains some nonzero flags.
19866
19867         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
19868         GdkWindow.
19869
19870         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
19871         GdkWindowPrivate is gone.
19872
19873         * gdk/x11/gdkim-x11.c: rename things that got renamed.
19874
19875         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
19876         remove the image_put stuff that got transferred to GdkDrawable.
19877         
19878         * gdk/x11/gdkinput.c: renamings
19879
19880         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
19881
19882         * gdk/x11/gdkpixmap-x11.c: GObject conversion
19883
19884         * gdk/x11/gdkprivate-x11.h: indentation fixes
19885
19886         * gdk/x11/gdkproperty-x11.c: renamings
19887
19888         * gdk/x11/gdkselection-x11.c: renamings
19889
19890         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
19891         implements the platform-specific "impl" object.
19892         Moved gdk_window_get_children to gdk/gdkwindow.c
19893
19894         * gdk/x11/gdkx.h: Remove all the private structs and private datas
19895         that no longer exist. Add declaration of GdkGCX11 object here.
19896         Fix all the macros to still work. 
19897
19898         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
19899         GdkDragContext from the boxed types since they are now GObjects.
19900
19901         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
19902         moved xthickness/ythickness into the instance. GtkStyleClass
19903         functions are now in the standard vtable for GtkStyle, so you have
19904         to create a GObject subclass to write a theme engine.
19905         (gtk_style_copy): fixed a leaked PangoFontDescription
19906         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
19907         can be the standard GObject function.
19908         
19909         * Throughout GTK:
19910         s/style->klass->[xy]thickness/style->[xy]thickness
19911         s/pango_layout_unref/g_object_unref/
19912
19913         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
19914         
19915         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
19916         accessing GDK internals.
19917
19918         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
19919         accessing GDK internals.
19920
19921 2000-06-18  Elliot Lee  <sopwith@redhat.com>
19922
19923         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
19924
19925         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
19926         problem by calculating event position relative to the trough
19927         rather than the slider.
19928         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
19929
19930         * gdk/gdkgc.h: Add GDK_NOR.
19931
19932         * configure.in, Makefile.am: Add modules top level dir
19933         * configure.in: Only use pangox library if building x11 target.
19934         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
19935
19936 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
19937
19938         * gtk/gtkcolorsel.c: Change private class member to be named
19939         private_data throughout the file.
19940
19941         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
19942         private_data to avoid clashing with keyword.
19943
19944 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
19945
19946         * gdk/gdkdnd.h: Add comment to remove warning.
19947
19948 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
19949
19950         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
19951         Byelorussian language; changed the Makefile and file names 
19952         to reflect that.
19953
19954 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
19955
19956         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
19957         rather than gdk_window_hide; this makes things work
19958         correctly if the window is programmatically hidden while
19959         iconified.
19960
19961 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
19962
19963         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
19964         cut and paste typo where wrong pixmap was being
19965         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
19966
19967 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
19968
19969         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
19970         Add helper function to compute format / bytes 
19971         relationship. Use in a couple places to fix up
19972         errors which assume 8 * format.
19973
19974         * gtk/gtkselection.c (gtk_selection_request): Use 32
19975         rather than 8 * sizeof (GdkAtom), to work correctly
19976         on Alpha.
19977
19978 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
19979
19980         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
19981         libgtk.la
19982         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
19983         versions
19984
19985         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
19986         checking macros return NULL since the function has a return value.
19987
19988 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
19989
19990         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
19991         GTK+ from building at all.
19992
19993         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
19994
19995 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
19996
19997         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
19998         gtk/Makefile.am: make it possible to configure gtk for different
19999         targets on the same platform. The library name is now 
20000         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
20001         flag. Only the x11 target compiles right now.
20002         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
20003         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
20004         * gdk/nanox/gdk*generic*: delete generic region code.
20005         * gdk/linux-fb/gdk*generic*: delete generic region code.
20006         * README.nanox: update information.
20007         
20008 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
20009
20010         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
20011         prepend not append. (Pointed out by Brett Hall.)
20012
20013 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
20014
20015         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
20016
20017 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
20018
20019         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
20020         need this later, and this makes sure that the atexit for
20021         glib gets called after that for GDK, so atexits are
20022         properly ordered for object leak checking.
20023
20024         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
20025
20026         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
20027         pango_x_shutdown_display()
20028
20029         * gtk/simple.c (main): Close window on destroy.
20030
20031 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
20032
20033         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
20034         to treat initial creation different from setting with 
20035         regards to the graphics-exposures parameter, so add a parameter
20036         indicating whether this is initial or not.
20037
20038 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
20039
20040         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
20041         to sort of work by adding an extra return_exposes arg
20042         to gdk_event_translate() - it might be better to simply
20043         deprecate the function altogether and force people to rewrite
20044         without it. gdk_window_scroll() handles most of it, and where
20045         gdk_window_scroll() doesn't work, simply redrawing more does.
20046
20047         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
20048         assertion.
20049
20050         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
20051
20052         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
20053         bunch of pretty much useless /* Print debugging info */ comments 
20054         which had drifted away from the code they were commenting.
20055
20056 2000-06-02  Havoc Pennington  <hp@pobox.com>
20057
20058         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
20059         is in working order.
20060         
20061         * gtk/testtext.c: Change to reflect anonymous mark API
20062
20063         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
20064
20065         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
20066         field, which was unused.
20067
20068         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
20069         saves some typing.
20070
20071         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
20072
20073         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
20074         flag on the insertion point and selection bound
20075
20076         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
20077         make mark-manipulation functions take a GtkTextMark* instead of a
20078         mark name.
20079         
20080         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
20081         GtkTextMarkBody; will be used to detect attempts to delete
20082         the permanent marks (insert and selection bound)
20083
20084         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
20085
20086 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
20087
20088         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
20089         flag to on.
20090
20091         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
20092         Honor DOUBLE_BUFFRED_FLAG
20093
20094         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
20095         function to set the DOUBLE_BUFFERED flag.
20096
20097         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
20098         or not exposes done on the widget should be double-buffered.
20099
20100         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
20101         to be what would be expected. (Fixes problem with a
20102         g_return_if_fail() validating a TextDirection enumeration)
20103
20104 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
20105
20106         * gtk/gtkwidget.c: Remove all references to 
20107         offscreen flag which was no longer used.
20108
20109         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
20110
20111         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
20112         for non-null label_widget->parent.
20113
20114         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
20115         which no longer was used.
20116
20117         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
20118
20119         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
20120         for null arguments.
20121
20122         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
20123         check for destroyed windows.
20124
20125 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
20126
20127         * gtk/gtkimmulticontext.c: Add a finalize method and unref
20128         the slave context there.
20129
20130         * gtk/gtkinvisible.[ch]: Make reference counting behavior
20131         identical to GtkWindow.
20132
20133 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
20134
20135         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
20136         pangox to here, so we can write them independent of rendering
20137         system, using GDK primitives.
20138
20139         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
20140         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
20141         since we have a rendering-system independent implementation in
20142         terms of draw_glyphs().
20143         
20144         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
20145         function to render a single line.
20146
20147         * gdk/x11/gdkpango.c: Move the guts of this file mostly
20148         into ../gdkpango.c, which simplifies things, since we
20149         don't have to deal with raw X gc's.
20150
20151 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
20152
20153         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
20154         get the logical attributes for a given GtkTextLine.
20155
20156 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
20157
20158         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
20159         g_locale_get_codeset() to g_get_codeset() change.
20160
20161 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
20162
20163         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
20164         descriptions.
20165
20166         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
20167         the entry.
20168
20169         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
20170         redoing (vastly simplifying) for Pango. Still needs quite
20171         a bit of work. (Size selection is currently poor. List of 
20172         predefined sizes is not a good idea, since all of these
20173         sizes won't necessarily be distinct.)
20174
20175 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
20176
20177         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
20178         CODESET results for LANG=C.
20179
20180 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
20181
20182         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
20183         which takes a stringized pango font description;
20184         ignore the older 'font' and 'fontset' declarations.
20185
20186         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
20187         field with a GdkFont derived via gdk_font_from_description(),
20188         for compatibility. (Should we just remove it entirely?
20189         Probably too much compatibility breakage, but people
20190         should be migrating to the new Pango stuff as quickly
20191         as possible.)
20192
20193 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
20194
20195         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
20196
20197 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
20198
20199         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
20200         redoing; there are some bugs in size allocation right
20201         now, the semi-existant distinction between header / day
20202         fonts was removed, but, with Pango, could actually
20203         be made functional in a nice way.
20204         
20205         * gtk/testcalender: Move calender from examples into this
20206         directory as a test program. (We really need to restrcture
20207         testgtk into a whole directory full of tests for every
20208         widget or functionality group, separated into multiple .c
20209         files.)
20210
20211 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
20212
20213         * gtk/testgtk.c (file_exists): Fix stupid typo that
20214         was keeping RC file from being loaded.
20215
20216         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
20217         RC file font code.
20218
20219 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
20220
20221         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
20222         Add function to load a GdkFont from a PangoFontDescription.
20223
20224 2000-05-29  Tor Lillqvist  <tml@iki.fi>
20225
20226         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
20227         variable should be of type GdkEventPrivate.
20228
20229 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
20230
20231         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
20232         to have any widget for the label, use a GtkLabel widget
20233         to display the text. (Based partially on a patch from
20234         Anders Carlson.)
20235
20236         (Quite a bit of code reorganization - strip 90% of the
20237         guts out of gtkaspectframe and add a single virtual
20238         func to GtkFrameClass - compute_child_allocation.)
20239
20240 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
20241
20242         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
20243         (Removed clist->row_center_offset field because caching
20244         it wasn't saving time or code, added private function
20245         _gtk_clist_create_cell_layout()).
20246
20247 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
20248
20249         * gtk/gtkaccellabel.c: Pangoized.
20250
20251         * gtk/[hv]ruler.c: Pangoized
20252
20253 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
20254
20255         * gtk/gtkfilesel.c (gtk_file_selection_init):
20256         Use gtk_clist_set_column_auto_resize() to remove need
20257         need for manual column width computations.
20258
20259 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
20260
20261         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
20262         ensuring Pango correctness, and considerably simplifying the
20263         code.
20264         
20265         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
20266
20267         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
20268         getting of numbers of lines.
20269
20270         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
20271         to the actual requested width of the lable, not to the wrap
20272         width we set.
20273
20274         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
20275
20276         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
20277           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
20278
20279         * gtk/gtktextview.c: Fix structure inheritance.
20280
20281         * gtk/gtkprogressbar.c: Pangoize.
20282
20283 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
20284
20285         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
20286         in a function.
20287
20288         * gtk/gtktextlayout.c (find_display_line_above): Fixed
20289         bug with computing line tops.
20290
20291         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
20292
20293 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
20294
20295         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
20296         and y_offset coordinates to do what we need now. (The offset between
20297         buffer and layout coordinates has been reintroduced, but is a 
20298         bit different than before.)
20299
20300         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
20301         handle the adjustments ourselves, and scroll as necessary using
20302         the new gdk_window_scroll().
20303         
20304         The advantage of this is that when we are incrementally revalidating,
20305         we are essentially rearranging things around the visible portion
20306         of the screen. With the old setup, the visible portion of the
20307         screen was moved around in the layout, so scrolling and redrawing
20308         to track that caused jumping of the display. Since we now
20309         control the scrolling ourselves, we can suppress this and
20310         only redraw when things actually change.
20311
20312 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
20313
20314         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
20315         the region not just redisplay it after-all, since we store the
20316         cursors in the LineDisplay. (Ugly interactions here between
20317         GtkLayout and GtkTextBTree here.)
20318         
20319         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
20320
20321 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
20322
20323         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
20324         Added function to scroll contents of a window while keeping the
20325         window constant. Works by XCopyArea or guffaw-scrolling depending
20326         on the details of how the window is set up. (guffaw-scrolling
20327         still needs to be filled in.)
20328
20329 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
20330
20331         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
20332         move the debugging that was tied to a global variable
20333         to that.
20334
20335         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
20336
20337         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
20338         validated flag, in line data instead of setting height/width to
20339         -1. This allows us to perform operations with partially invalid
20340         buffer (using the old size for invalid lines) and thus to do
20341         incremental vaidation. Keep height/width aggregates up to date
20342         when deleting text and rebalancing the tree.
20343
20344         * gtk/gtktextbtree.[ch]: Add functions validate a line
20345         (gtk_text_btree_validate_line), and to validate up
20346         to a number of pixels (gtk_text_btree_validate).
20347
20348         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
20349         that indicates that something is changed and a revalidation
20350         pass is needed. Change ::need_repaint to ::changed, and
20351         make it take old and new yranges instead of a rectangle.
20352
20353         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
20354         the line_data_destroy() function from 
20355         gtk_text_btree_add_view() to a virtual function in 
20356         GtkTextLayout
20357
20358         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
20359         since we are handling partial repaints in a different fashion
20360         now.
20361
20362         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
20363         of the selection instead of queueing a repaint on the
20364         entire widget.
20365
20366         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
20367         get_selection_bounds() down to btree, make the function
20368         in buffer a wrapper around the btree function.
20369
20370         * gtk/gtktextlayout.[ch]: Add functions to check if the
20371         layout is valid and to recompute either a range of pixels
20372         aroudn a line or a certain total number of pixels.
20373
20374         * gtk/gtktextlayout.[ch]: Cache a single line display;
20375         now that we only redraw the needed portions, the hit rate
20376         for this cache is quite high.
20377         
20378         * gtk/gtktextview.[ch]: Keep track of the first paragraph
20379         on the screen so that when re-laying-out the buffer, we can
20380         keep the same place. This requires connecting to ::value_changed
20381         on the adjustments
20382
20383         * gtk/gtktextview.[ch]: Add idle functions to revalidate
20384         the buffer after we receive an ::invalidated signal.
20385         
20386 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
20387
20388         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
20389         to max of allocation and layout size, not just to the
20390         layout size.
20391
20392         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
20393         Invalidate window so it gets redrawn properly.
20394
20395         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
20396         to mean the entire window.
20397
20398         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
20399         into public header.
20400
20401 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
20402
20403         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
20404         to get the name of a mark.
20405
20406         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
20407         to find the paragraph from a y position.
20408
20409 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
20410
20411         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
20412         nodes have width/height >= 0, not > 0.
20413
20414 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
20415
20416         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
20417         Add a size_only flag, so when we only need the size, we don't create
20418         useless appearance attributes.
20419
20420         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
20421         duplicate setting of font description.
20422
20423         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
20424
20425 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
20426
20427         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
20428         EXTRA_DIST. It does not work well when the file that
20429         everything depends on is not in the tarball.
20430
20431 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
20432
20433         * gtk/testgtk.c: Some hacks and fixes so that it basically
20434         works when not sitting in the GTK+ build tree.
20435
20436 2000-05-03  Havoc Pennington  <hp@redhat.com>
20437
20438         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
20439         Properly determine the ordering of the tag root and the current
20440         line within the tree. Previous algorithm only worked if the tag
20441         root's immediate parent was the common root of both the current
20442         line and the tag root.
20443
20444 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
20445
20446         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
20447         alignment.
20448
20449         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
20450         the widget text directional dynamically.
20451
20452         * gtk/gtktextview.[ch]: Added functions to get and set default
20453         wrap mode.
20454
20455 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
20456
20457         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
20458         in cursor location computation.
20459
20460 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
20461
20462         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
20463         vadjusment values properly when layout gets smaller.
20464
20465         * gtk/gtktextview.c (need_repaint_handler): Areas being
20466         passed in are far completely inaccurate, and sometimes
20467         too small, so, for now, just queue a redraw on the
20468         whole visible region.
20469
20470 2000-04-25  Havoc Pennington  <hp@redhat.com>
20471
20472         * gtk/gtktextbtree.c (summary_destroy): new function to 
20473         destroy tag summary nodes
20474         (gtk_text_line_next_could_contain_tag): this function was 
20475         totally broken if the line passed in wasn't below the tag
20476         root. Fix it.
20477         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
20478         "wildcard" case, we have to do a linear scan. Blah.
20479         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
20480         we have to do the linear scan
20481         (tag_removed_cb): When a tag is removed from the tag table, 
20482         remove the GtkTextTagInfo node from the btree.
20483         (gtk_text_btree_spew): Implement the spew function, for 
20484         our debugging pleasure.
20485
20486 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
20487
20488         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
20489         a problem with referring to the wrong buffer.
20490
20491         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
20492
20493         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
20494         font description to gtk_style_new() - otherwise things
20495         don't work without a .gtkrc file.
20496
20497         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
20498         tags table if we create it ourself, too.
20499
20500         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
20501         it was conflicting with XKB modifiers.
20502
20503         * gtk/gtktextview.[ch]: Add simple support for 
20504         GtkIMContext.
20505
20506 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
20507
20508         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
20509         with deletion from last commit.
20510
20511 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
20512
20513         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
20514         in the context from the current locale.
20515         
20516         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
20517         context, not hardcoded value.
20518
20519         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
20520         not logical.
20521
20522 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
20523
20524         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
20525         attributes - that doesn't handle partial-glyph selection
20526         properly. Instead use new pango_layout_line_get_x_ranges()
20527         functionality to draw the selection.
20528
20529         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
20530         now properly handles out-of-range coordinates.
20531
20532         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
20533
20534         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
20535         public.
20536
20537         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
20538         for paragraphs opposite to the base direction of the widget.
20539
20540         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
20541
20542         * gtk/gtktextlayout.c: Don't split segments on marks, since that
20543         causes Arabic words to reshape as you cursor through.
20544
20545         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
20546         cursor position when moving vertically with the arrow keys and
20547         scrolling with page-up/page-down. (Arrow keys save only the X,
20548         scrolling saves both X and Y.)
20549
20550         This means you can line-up / line-down or page-up / page-down
20551         without losing your place, and also that moving vertically
20552         with the cursor keys keeps the same X position, not the same
20553         character count:
20554
20555         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
20556         arrow keys move by display lines, not paragraphs.
20557
20558 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
20559
20560         * gtk/gtklayout.c: Make sure that the bin window is at least
20561         as big as the allocation. (Should we also make sure that the
20562         bin window is big enough to completely cover widget->window?)
20563
20564         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
20565         function to get the onscreen rectangle.
20566
20567         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
20568         for offsets in window coordinates.
20569
20570 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
20571
20572         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
20573         confusion.
20574
20575         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
20576         from the widget direction.
20577
20578         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
20579         Add a "direction" attribute.
20580
20581         * gtk/gtktextview.c: global s/tkxt/text_view/.
20582
20583         * gtk/testtext.c: Added long block of text in Arabic, to test out
20584         the direction attributes. (Some problems with the shaping system
20585         for arabic become obvious - like the fact the cursor splits words
20586         into unjoined pieces.)
20587
20588 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
20589
20590         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
20591
20592         * gtk/gtktextlayout.c: Fix up alignment.
20593
20594         * gtk/testtext.c: Add some tests for centering, wrapping.
20595
20596 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
20597
20598         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
20599         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
20600         If we wrote GTK+-specific layout-render function this could just replace
20601         the draw_layout() operation in the vtable.
20602
20603         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
20604         pango_layout_get_cursor_pos() and use that function.
20605
20606         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
20607         is a non-static symbol.
20608
20609         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
20610         with gtk_text_btree_find_line_by_y()
20611
20612         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
20613         renderer that handles GtkTextAppearance attributes.
20614
20615         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
20616
20617           - Move the values in the style that don't affect geometry into a
20618             GtkTextAppearance structure.
20619           - Change underline to take a PangoUnderline and "font" a string
20620             representation of a font description
20621           - Add a "font_desc" attribute which takes a FontDescription structure.
20622
20623         * gtk/gtktextlayout.[ch]:
20624
20625           - Get rid of the display-line list per each line. Instead, we
20626             generate, on demand, a GtkTextLineDisplay structure which]
20627             contains a PangoLayout * and other necesary information
20628             (offsets, cursor locations) for displaying a paragraph.
20629           - Get rid of the code to wrap lines, create display chunks,
20630             etc. Instead, we just go through a paragraph and convert
20631             it into the necessary inputs to a PangoLayout.
20632           - Implement a new attribute type, GtkTextAttrAppearance. This
20633             holds a GtkTextAppearance, and is used to pass colors, 
20634             stipple, etc, through from the layout to the display without
20635             having to use lots and lots of individual attributes.
20636           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
20637             in terms of PangoLayout functions.
20638         
20639         * gtk/gtktextview.c: 
20640          
20641           - Handle passing the necessary PangoContext to the layout
20642           - Some fixups in painting to deal with the automatic backing store
20643             and offsetting of GTK+-1.4
20644           - Add a style_set handler so that the default style reacts
20645             properly to theme changes.
20646         
20647         * gtk/gtktext?*.[ch]: Random code-style fixes.
20648
20649         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
20650
20651 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
20652
20653         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
20654         in original form preparatory to Pango-ization and gdkimcontext-ization.
20655
20656 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
20657
20658         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
20659         so that we can derive from gtkimcontext in language bindings properly.
20660
20661 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
20662
20663         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
20664         Add a compose table including (almost) all the compose combinations
20665         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
20666         data in the XIM implementation.
20667
20668         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
20669         Moved functions to convert keyvalues from and to unicode here from
20670         the win32 port and made them public.
20671
20672 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
20673
20674         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
20675
20676 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
20677
20678         * gtk/gtkimcontext.[ch]: Base class for new input context system
20679
20680         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
20681         the real input context implementation to be loaded from modules
20682         and switched on the fly.
20683
20684         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
20685         context that just does direct keysymbol => unicode translation.
20686
20687         * gtk/gtkentry.[ch]: Start switching editing over to using
20688         GtkInputContext. (No handling of preedit yet.)
20689
20690 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
20691
20692         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
20693         many substitutions. (klass should not be subsituted.)
20694
20695 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
20696
20697         * configure.in: Add checks for Pango
20698
20699         * configure.in docs/Makefile.am: Add test for sgml2html
20700         and allow 'make dist' without building html, but print out
20701         warnings in that case. (For making snapshots)
20702
20703         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
20704         Add Pango libraries and C flags
20705
20706         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
20707         Add function (gdk_draw_layout) to draw a pango layout.
20708
20709         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
20710         for getting Pango contexts for GDK.
20711
20712         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
20713
20714         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
20715         editing.
20716
20717         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
20718         keysym => unicode translations. More languages can be added
20719         here, but real input-method support is needed.
20720
20721         * docs/Changes-1.4.txt: Added note about entry behavior.
20722         
20723         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
20724         to set the reading direction for a widget and the global direction.
20725         Add test which allows toggling the global direction. Two private
20726         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
20727
20728         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
20729           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
20730
20731         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
20732
20733         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
20734         underlining now handled by Pango.
20735
20736         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
20737         to RCStyle and Style. (Having both this and the old font name and GdkFont 
20738         is temporary.)
20739
20740         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
20741         convenience functions for creating contexts and layouts for widgets.
20742
20743         * gtk/testgtk.c: Enhance label tests with multilingual labels.
20744
20745 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
20746
20747         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
20748         titles to be active, even if they aren't visible.
20749         (gtk_clist_column_titles_passive):  Ditto.
20750
20751 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
20752
20753         * gtkmenu.c:
20754         * gtkmenu.h:
20755         * gtktypeutils.h: Spelling/grammar fixes in comments.
20756
20757 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
20758
20759         * gdk/nanox/*.h: add missing header files.
20760
20761 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
20762
20763         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
20764         send_event to TRUE.
20765         (gtk_drawing_area_size): queue a resize.
20766
20767 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
20768
20769         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
20770         the handlers, also invalidate them. bug nailed down by Karl Nelson
20771         <kenelson@ece.ucdavis.edu>.
20772
20773 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
20774
20775         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
20776         "(nil)" foundries, patch from Grigorios Magklis.
20777
20778         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
20779         on non-available fonts, based on a patch by Grigorios Magklis
20780         <maglis@cs.rochester.edu>.
20781
20782 2000-05-18  Elliot Lee  <sopwith@redhat.com>
20783
20784         * gdk/x11/gdkregion-generic.c: If a region does not have any
20785         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
20786         instead of GDK_OVERLAP_RECTANGLE_IN.
20787
20788 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
20789
20790         * gtk/gtklayout.c (gtk_layout_map): Remove references to
20791         OFFSCREEN, as it is no longer necessary.
20792
20793 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
20794
20795         * gtk/gtkcolorsel.c: Patch from David Santiago
20796         <mrcooger@cyberverse.com> to change things so that the 
20797         indicator of the active palette entry is done independently,
20798         not via the focus, since it should always be visible.
20799
20800 2000-05-17  Tor Lillqvist  <tml@iki.fi>
20801
20802         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
20803         refcount leaks as in the X11 backend.
20804
20805         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
20806         cosmetics.
20807
20808         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
20809         backend. Add _gdk_windowing_window_destroy().
20810
20811         * gtk/gtkcolorsel.c: Include correct backend-specific header.
20812         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
20813         either, but these probably do exist on nanox?)
20814         
20815         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
20816         which isn't necessarily defined by <math.h>.
20817
20818         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
20819         ancestry past GtkObject.
20820
20821         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
20822         from DLL on Win32.
20823
20824         * gtk/gtk.def: Update corresponding to recent changes.
20825
20826         * gtk/makefile.{cygwin,msc}: Updates.
20827
20828 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
20829
20830         * docs/Changes-1.4.txt: A bit of editing.
20831
20832         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
20833         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
20834         to clear the update area for the window, and clear it
20835         when hiding a window.
20836
20837         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
20838         if window destroyed.
20839
20840         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
20841
20842         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
20843         gdk_window_destroy() to the generic code, since there was a lot of 
20844         window-system-independent logic it in. Add a function:
20845         
20846          _gdk_window_destroy() 
20847
20848         to the internal API to destroy a window without unreferencing it.
20849         Add a function:
20850
20851          _gdk_windowing_window_destroy()
20852
20853         That does the windowing-system-dependent part of destroying 
20854         the window.
20855
20856 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
20857
20858         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
20859
20860 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
20861
20862         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
20863         Make gtk_widget_shape_combine_mask() keep a reference count on
20864         the pixmap since it keeps it around.
20865
20866 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
20867
20868         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
20869         leak.
20870
20871         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
20872         leak with event filters.
20873
20874 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
20875
20876         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
20877         signal handlers with the right data arguments. (Fixes
20878         some warnings when a widget was repeatedly set as a drag
20879         destination.)
20880
20881         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
20882         window so we can avoid avoid setting the DND properties on the
20883         toplevel window repeatedly.
20884
20885 2000-05-13  Tor Lillqvist  <tml@iki.fi>
20886
20887         * gdk/win32/gdkwin32.h: Define more message types missing from
20888         mingw headers.
20889
20890         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
20891         call gdk_window_destroy_notify(). It was never called. This
20892         probably meant that the GdkWindow was never freed. Thanks Owen for
20893         noticing (!).
20894
20895         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
20896         window as destroyed before calling DestroyWindow(). DestroyWindow()
20897         causes a call to the window procedure (gdk_WindowProc), which
20898         calls gdk_event_translate(), which calls
20899         gdk_window_destroy_notify(), which gets confused unless the window
20900         is set as destroyed.
20901
20902         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
20903         this function to indicate it's win32 only. Put inside #ifdef
20904         G_ENABLE_DEBUG.
20905
20906         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
20907         debugging function. (gdk_event_translate:) Add a default branch
20908         that uses the above function to print debug messages with all
20909         Windows messages symbolically.
20910
20911         * gdk/win32/gdkprivate-win32.h: Declare it, and
20912         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
20913
20914 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
20915
20916         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
20917         public header file.
20918
20919 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
20920
20921         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
20922
20923         * gtk/gtktext.c: made the adjustments no-construct args, simply
20924         provide default adjustments.
20925         (gtk_text_destroy): release adjustments.
20926
20927         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
20928         adjustment argument non-construct.
20929
20930         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
20931         instead of in finalize.
20932         (gtk_progress_get_text_from_value): 
20933         (gtk_progress_get_current_text): 
20934         (gtk_progress_set_value): 
20935         (gtk_progress_get_percentage_from_value): 
20936         (gtk_progress_get_current_percentage): 
20937         (gtk_progress_set_percentage): 
20938         (gtk_progress_configure): ensure an adjustment is present.
20939
20940 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
20941
20942         * gtk/gtkcolorsel.[hc]:
20943         * gtk/gtkcolorseldialog.[hc]:
20944         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
20945         their parent implementation, use bit fields for boolean values, don't
20946         create unused widgets, usage of glib types, braces go on their own
20947         lines, function argument alignment, #include directives etc. etc. etc..
20948
20949         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
20950
20951 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
20952
20953         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
20954
20955         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
20956         of NULL.
20957
20958         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
20959         to freed data.
20960         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
20961
20962         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
20963         to NULL when the toplevel is getting destroyed.
20964         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
20965         (gtk_menu_destroy): 
20966         (gtk_menu_init): store the information of whether we have to
20967         readd the initial child ref_count during destruction in a new
20968         GtkMenu field needs_destruction_ref_count.
20969
20970         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
20971         here, those reading: learn from my mistake! ;)
20972         in order for set_?adjustment to support a default adjustemnt if
20973         invoked with an adjustment pointer of NULL, the code read (pseudo):
20974         if (v->adjustment) unref (v->adjustment);
20975         if (!adjustment) adjustment = adjustment_new ();
20976         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
20977         now imagine the first unref to actually free the old adjustment and
20978         adjustment_new() creating a new adjustment from the very same memory
20979         portion. here, the latter comparision will unintendedly fail, and
20980         all hell breaks loose.
20981         (gtk_viewport_set_hadjustment):
20982         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
20983         after unreferencing it.
20984
20985         * gtk/gtkcontainer.[hc]: removed toplevel registration
20986         functions: gtk_container_register_toplevel(),
20987         gtk_container_unregister_toplevel() and
20988         gtk_container_get_toplevels() which had wrong semantics
20989         anyways: it didn't reference and copy the list.
20990
20991         * gtk/gtkwindow.c: we take over the container toplevel registration
20992         bussiness now. windows are registered across multiple destructions,
20993         untill they are finalized. the initial implicit reference count
20994         users are holding on windows is removed with the first destruction
20995         though.
20996         (gtk_window_init): ref & sink and set has_user_ref_count, got
20997         rid of gtk_container_register_toplevel() call. add window to
20998         toplevel_list.
20999         (gtk_window_destroy): unref the window if has_user_ref_count
21000         is still set, got rid of call to
21001         gtk_container_unregister_toplevel().
21002         (gtk_window_finalize): remove window from toplevel list.
21003         (gtk_window_list_toplevels): new function to return a newly
21004         created list with referenced toplevels.
21005         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
21006
21007         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
21008         adjustment a non-construct arg.
21009         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
21010         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
21011         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
21012
21013         * gtk/gtkrange.c: added some realized checks.
21014         (gtk_range_destroy): get rid of the h/v adjustments in the
21015         destroy handler instead of finalize. remove timer.
21016         (gtk_range_get_adjustment): demand create adjustment.
21017
21018         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
21019         we simply create them on demand now and get rid of them in
21020         the destroy handler.
21021         (gtk_viewport_destroy): get rid of the h/v adjustments in the
21022         destroy handler instead of finalize.
21023         (gtk_viewport_get_hadjustment): 
21024         (gtk_viewport_get_vadjustment): 
21025         (gtk_viewport_size_allocate): demand create h/v adjustment
21026         if required.
21027
21028         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
21029         gtk_widget_real_destroy () functionality.
21030         (gtk_widget_real_destroy): reinitialize with a new style, instead
21031         of setting widget->style to NULL.
21032
21033 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
21034
21035         * gtk/gtkcalendar.c:
21036         * gtk/gtkbutton.c: ported _get_type() implementation over to
21037         GType, either to preserve memchunks allocation facilities,
21038         or because Gtk+ 1.0 GtkTypeInfo was still being used.
21039
21040         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
21041         over. prepare for ::destroy to be emitted multiple times.
21042         removed reference tracer magic. chain into GObjectClass.shutdown()
21043         to emit ::destroy signal.
21044
21045         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
21046         fundamental.
21047
21048         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
21049         cludge.
21050
21051         * gtk/gtksocket.c:
21052         * gtk/gtkplug.c:
21053         * gtk/gtklayout.c:
21054         * gtk/gtklabel.c:
21055         * gtk/gtkargcollector.c:
21056         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
21057         not being a fundamental anymore, and to work with the new
21058         type system (nuked fundamental type varargs clutter).
21059
21060         * gtk/*.c: install finalize handlers in the GObjectClass
21061         part of the class structure.
21062         changed direct GTK_OBJECT()->klass accesses to
21063         GTK_*_GET_CLASS().
21064         changed direct object_class->type accesses to GTK_CLASS_TYPE().
21065
21066         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
21067         GType. made most of the GTK_*() type macros and Gtk* typedefs
21068         simple wrappers around macros and types provided by GType.
21069         most notably, a significant portion of the old API vanished:
21070         GTK_TYPE_MAKE(),
21071         GTK_TYPE_SEQNO(),
21072         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
21073         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
21074         GTK_TYPE_ARGS,
21075         GTK_TYPE_CALLBACK,
21076         GTK_TYPE_C_CALLBACK,
21077         GTK_TYPE_FOREIGN,
21078         GtkTypeQuery,
21079         gtk_type_query(),
21080         gtk_type_set_varargs_type(),
21081         gtk_type_get_varargs_type(),
21082         gtk_type_check_object_cast(),
21083         gtk_type_check_class_cast(),
21084         gtk_type_describe_tree(),
21085         gtk_type_describe_heritage(),
21086         gtk_type_free(),
21087         gtk_type_children_types(),
21088         gtk_type_set_chunk_alloc(),
21089         gtk_type_register_enum(),
21090         gtk_type_register_flags(),
21091         gtk_type_parent_class().
21092         replacements, where available are described in ../docs/Changes-1.4.txt.
21093         implemented compatibility functions for the remaining API.
21094
21095         * configure.in: depend on glib 1.3.1, use gobject module.
21096
21097 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
21098
21099         * TODO.xml: Various updates to current status.
21100
21101 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
21102
21103         * gtk.m4: Print out version when test succeeds.
21104
21105 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
21106
21107         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
21108         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
21109         
21110         (Original triangle color selector from Simon Budig
21111         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
21112         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
21113         Santiago <mrcooger@cyberverse.com>)
21114
21115         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
21116         out into a separate widget.
21117
21118         * gtk/testgtk.c: Add some checkbuttons for toggling palette
21119         and opacity controls.
21120
21121 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
21122
21123         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
21124         snuck in prematurely.
21125
21126 2000-05-07  Tor Lillqvist  <tml@iki.fi>
21127
21128         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
21129         had deleted a ! operator by mistake, which caused
21130         GDK_SELECTION_CLEAR events never to be generated, which caused
21131         only the first copy to the clipboard from an gtkeditable to
21132         actually cause a copy to the Windows clipboard.
21133
21134 2000-05-06  Tor Lillqvist  <tml@iki.fi>
21135
21136         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
21137         compilation, too. Current mingw gcc distributions include the
21138         necessary headers. Also the necessary IIDs are now in mingw
21139         headers/libraries, and own definitions unnecessary.
21140
21141         More hacking on OLE2 DND, still doesn't work though, and thus
21142         ifdeffed out.
21143
21144         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
21145         here, too.
21146
21147 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
21148
21149         * gdk/nanox/*: nano-X port work in progress.
21150         * gdk/simple.c: simple test for Gdk.
21151         * README.nanox: notes about the port: read this first!
21152         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
21153         with nano-X.
21154
21155 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
21156
21157         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
21158         gdk_window_clear() into common code, implement in terms of
21159         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
21160         not redirected to the backing rectangle.
21161
21162 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
21163
21164         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
21165         EXTRA_DIST. It does not work well when the file that
21166         everything depends on is not in the tarball.
21167
21168 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
21169
21170         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
21171         with recursion where process_updates() is called from
21172         an expose handler. (GtkTextView is highly broken in
21173         doing this, but it should work, so it is a nice test
21174         case.)
21175
21176 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
21177
21178         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
21179         handle the case where updates are queued during processing of
21180         updates.
21181
21182 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
21183
21184         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
21185         window is on gdk_display - use that instead of segfaulting.
21186
21187 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
21188
21189         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
21190         broken and require an empty arg, give it to them.
21191
21192 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
21193
21194         * gtk/gtklabel.h: indentation fixes.
21195
21196 2000-05-02  Tor Lillqvist  <tml@iki.fi>
21197
21198         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
21199         draw too narrow or too low arcs, they seem to fail, at least with
21200         some display drivers.
21201
21202         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
21203
21204         Large changes to the Win32 backend, partially made necessary by
21205         the changes to the backend-independent internal
21206         structures. Attempts to implement similar backing store stuff as
21207         on X11. The current (CVS) version of the Win32 backend is *not* as
21208         stable as it was before the no-flicker branch was merged. A
21209         zipfile with that version is available from
21210         http://www.gimp.org/win32/. That should be use by "production"
21211         code until this CVS version is usable. (But note, the Win32
21212         backend has never been claimed to be "production quality".)
21213
21214         * README.win32: Add the above comment about versions.
21215
21216         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
21217
21218         * gdk/gdk.def: Update.
21219
21220         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
21221         presumably be replaced by some more better mechanism as 1.4 gets
21222         closer to release shape.
21223
21224         * gdk/makefile.{cygwin,msc}: Update.
21225
21226         * gdk/win32/*.c: Correct inclusions of the backend-specific and
21227         internal headers. Change code according to changes in these. Use
21228         gdk_drawable_*, not gdk_window_* where necessary.
21229
21230         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
21231         our old DND.
21232
21233         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
21234         to interpret single characters as UTF-8. Thanks to Hans Breuer.
21235         Use correct function name in warning messages.
21236
21237         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
21238         GSourceFuncs gdk_event_prepare and gdk_event_check.
21239         (gdk_event_get_graphics_expose): Do implement, use
21240         PeekMessage. Thanks to Hans Breuer.
21241         (event_mask_string): Debugging function to print an GdkEventMask.
21242         (gdk_pointer_grab): Use it.
21243
21244         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
21245         (old) book I used claimed was Hangul actually is CJK Unified
21246         Ideographs Extension A. Also, Hangul Syllables were missing.
21247         Improve logging.
21248
21249         * gdk/win32/gdkgc-win32.c: Largish changes.
21250
21251         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
21252         g_win32_getlocale() from GLib, and not setlocale() to get current
21253         locale name.
21254
21255         * gdk/win32/gdkprivate-win32.h
21256         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
21257         gdkwin32.h, similarily as in the X11 backend.
21258
21259         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
21260         assignment was used instead of equals in if test. Thanks to Hans
21261         Breuer.
21262
21263         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
21264         the X11 version.
21265
21266         * gdk/win32/makefile.{cygwin,msc}
21267         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
21268         path to the Win32 headers that works also with the mingw compiler.
21269
21270         * gtk/gtkstyle.c: Include <string.h>.
21271
21272 2000-04-26  Havoc Pennington  <hp@redhat.com>
21273
21274         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
21275         replacing the broken gtk_label_get ()
21276
21277 2000-04-15  Havoc Pennington  <hp@pobox.com>
21278
21279         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
21280         this keeps scanner scripts from getting confused.
21281
21282         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
21283         data, rather than void
21284
21285 2000-04-15  Tor Lillqvist  <tml@iki.fi>
21286
21287         * gtk/gtkclist.c (gtk_clist_motion)
21288         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
21289         with is_hint FALSE, get x and y from the event. They used to be
21290         used uninitialised. The Win32 backend never sends motion events
21291         marked as hints. This for instance fixes the annoying file and
21292         font selector behaviour in the Win32 version.
21293
21294 2000-04-14  Tor Lillqvist  <tml@iki.fi>
21295
21296         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
21297         gtk_private_n_signals variables, they are used by some software,
21298         sigh.
21299
21300         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
21301         installation directory from the Registry, where the installer
21302         should have put it.
21303
21304 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
21305
21306         * gdk/x11/Makefile.am: Fix problem with installation directory for
21307         gdkx.h
21308
21309         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
21310         <mrcooger@cyberverse.com> so that when selecting menus with the
21311         mouse, the first item will not be selected, but when selecting
21312         with an accelerator, or navigating left-right on a menubar with
21313         the menus popped up, the first item will be selected.
21314
21315 2000-04-05  Dan Damian  <dand@dnttm.ro>
21316
21317         * configure.in: Added "ro" to ALL_LINGUAS.
21318
21319 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
21320
21321         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
21322         indentation.
21323
21324         * Makefile.am (EXTRA_DIST): Fix typo.
21325
21326         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
21327         to catch gdkconfig.h
21328
21329         * gtk/gtkitemfactory.c: Added FIXME.
21330
21331 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
21332
21333         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
21334         s/return_if_fail/return_val_if_fail/g and add a return value.
21335
21336 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
21337
21338         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
21339         merge slipup.
21340
21341         * gdk/gdkinput.h: Fix missing line from merge.
21342
21343 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
21344
21345         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
21346         instead of gdkprivate.h.
21347
21348 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
21349
21350         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
21351         parent class to correctly be GtkDialogClass.
21352
21353 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
21354
21355         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
21356         toplevel windows and their immediate children by their parents,
21357         since the size of toplevel windows is out of our immediate
21358         control and we don't get any real benefit from trying to track
21359         this size for clipping.
21360
21361         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
21362         for input_only windows.
21363
21364         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
21365         to fix some hacks and make sure that we don't try to set the
21366         background of input only windows.
21367
21368 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
21369
21370         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
21371         the _really_ internal stuff, and leave gdkprivate.h for the fake private
21372         stuff that we've traditionally exposed.
21373
21374         * gdk/**.c: Use gdkinternals.h where appropriate.
21375
21376         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
21377         not include gdkprivate-x11.h, move all stuff of conceivable public
21378         interest into gdkx.h; keep all really private stuff in
21379         uninstalled header gdkprivate-x11.h.
21380
21381         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
21382         image->image_put on windows through a new function _gdk_window_draw_image()
21383         to allow us to do backing store for images. (Sort of ugly)
21384
21385         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
21386         contexts locally so that we can offset them properly when drawing 
21387         onto backing pixmaps.
21388
21389         * gdk/gdkinput.h: Reindented
21390
21391         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
21392         pixmap or color for the window, so we can properly initialize
21393         our double-buffer pixmaps, and also so that we temporarily set
21394         a background of None while scrolling.
21395
21396         * gdk/gdkregion.h: Revise region boolean operators to have an
21397         interface that is actually convenient - switch from creating new
21398         regions on every op, to "methods" that modify existing regions
21399         (A = A OP B). 3 argument forms which allow dest == src, would also
21400         be possible, but the current interfaces seem to map nicely
21401         onto what needs to be done. (There is quite a lot of region
21402         code in GDK now.)
21403
21404         * gdk/gdkregion.h: Add constructor from rectangle and a copy
21405         operator.
21406
21407         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
21408         gdkpoly-generic.h: Copy region code from Xlib, switch it over
21409         to 32 bit coordinates, modify it to be mostly GTK+ style
21410         and to have interfaces that match gdkregion.h.
21411
21412         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
21413         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
21414         create a backing pixmap and redirect all drawing to
21415         that backing pixmap until a matching gdk_window_end_paint().
21416
21417         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
21418         Create a special drawable class for GtkWindow's that 
21419         redirects the drawing to the backing pixmap as necessary
21420         and then calls the real operations in _gdk_windowing_window_class.
21421
21422         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
21423         Store invalid region for each window. Generate expose events for invalid
21424         region in an idle. This replaces both the expose compression
21425         and the redrawing queuing in GTK+. It is both more efficient and
21426         simpler than either one individually and far more so then the
21427         combination.
21428
21429         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
21430         Emulate 32 bit coordinates for windows with 16 bit coordinates
21431         by offsetting drawing, guffaw scrolling techniques and
21432         mapping/unmapping child windows as necessary.
21433
21434         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
21435         where, when invalid regions are processed, the region is stored,
21436         and if expose events come in that are detectably duplicate
21437         the processed exposes (by comparison of event serial numbers),
21438         the stored region is subtracted out of those exposes.
21439
21440         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
21441         regions newly exposed when scrolling or resizing windows.
21442         This, combined with forcing processesing of queued invalidated
21443         regions, gives nice flicker-free scrolling.
21444
21445         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
21446         invalidated regions after every scroll.
21447
21448         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
21449         emulation in GDK. Its, for all practical purposes just a
21450         GtkViewport/GtkFixed hybrid now.
21451
21452         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
21453         (16-bit) structures as necessary instead of just casting.
21454
21455         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
21456         in terms of the structures from gdkregion-generic.c, using appropriate
21457         offsets from GDK to X11 coordinates. Cache clip mask and
21458         origin and ts origin locally and only flush to the server
21459         when drawing, to avoid constantly setting and resetting these
21460         values when offsetting GC's for scrolling and backing pixmaps.
21461
21462         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
21463
21464         * gtk/gtkcontainer.c: Call process_all_updates at end
21465         of resizing to reduce flicker. (Avoids having redraw
21466         lag arbitrarily behind resize under some circumstances)
21467
21468         * gtk/gtkentry.c: Remove old backing store code, and simply take
21469         advantage of the new backing store capabilities of GDK.
21470
21471         * gtk/gtkmain.c: Simple implementation of widget backing
21472         store - simply push a paint while handling each expose.
21473         (Should really be configurable widget for widget.)
21474         
21475         * gtk/gtkwidget.c: Remove all the old complicated redraw
21476         code, and simply invalidate the GDK windows from
21477         gdk_window_queue_clear(), etc. (Sigh, so much carefully
21478         debugged complexity ... gone to the winds.)
21479
21480         Remove all the code for suppressing expose events while
21481         resizes are pending; this isn't needed since the invalid
21482         areas won't be processed until after the resizes are
21483         processed, since they are in a lower priority idle.
21484
21485 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
21486
21487         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
21488         and height of dest rectangle for non-intersecting rectangles.
21489
21490 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
21491
21492         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
21493         for GdkRectangle.
21494
21495 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
21496
21497         * gdk/gdk{events,image,private,types,window}.h
21498          gdk/x11/gdkinputprivate.h: Change all coordinates
21499          from int16 to int. Also, Change width and height from
21500          unsigned to signed to avoid all the stupid C 
21501          signedness bugs.
21502
21503 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
21504
21505         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
21506         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
21507         Add some more detailed checking.
21508
21509         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
21510         New function to retrieve the depth of a drawable.
21511
21512         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
21513         field, reorder fields to save memory. 
21514
21515 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
21516
21517         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
21518         of the background image instead of scaling the background down to
21519         a line.
21520
21521         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
21522         which temporarily set slider to wrong size.
21523
21524         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
21525         queue_clear().
21526
21527 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
21528
21529 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
21530
21531         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
21532
21533 2000-03-17  Tor Lillqvist  <tml@iki.fi>
21534
21535         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
21536         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
21537
21538         * gdk/win32/gdkfont-win32.c
21539         * gdk/win32/gdkproperty-win32.c
21540         * gdk/win32/gdkselection-win32.c
21541         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
21542         now declared such.
21543
21544 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
21545
21546         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
21547
21548 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
21549
21550         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
21551         is called without trapping X errors.
21552
21553 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
21554
21555         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
21556         way into the fontset lists.
21557
21558 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
21559
21560         * gtk/gtkthemes.h: add extern "C" scope.
21561
21562 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
21563
21564         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
21565         to make appends to the list constant. (gtk-guy-990901-0.patch)
21566
21567 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
21568
21569         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
21570         for the typename hash table.
21571
21572 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
21573
21574         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
21575         to make sure we never divide by zero. 
21576         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
21577
21578 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
21579
21580         * gtk/gtkfontsel.c: Apply patch from
21581         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
21582         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
21583
21584         Also, some cleanups in atom handling.
21585
21586 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
21587
21588         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
21589         not GtkWidget.
21590
21591 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
21592
21593         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
21594         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
21595         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
21596         more guint wrap-around bugs before going to bed.
21597
21598 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
21599
21600         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
21601         guint wrap arounds in allocation.width.
21602
21603         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
21604         process untill we fit the allocation given.
21605
21606 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
21607
21608         * gtk/gtkwidget.c:
21609         (gtk_widget_unrealize): guard widget access with ref/unref
21610         around signal emission.
21611         (gtk_widget_hide): same here, but also check its destroyed
21612         state before queueing a resize.
21613
21614 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
21615
21616         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
21617         of gtk_default_insensitive_bg as insensitive base color.
21618
21619         * gtk/gtktext.c (gtk_text_style_set): set the background color according
21620         to the widget's state.
21621         (gtk_text_realize): same here.
21622         (gtk_text_state_changed): same here.
21623         (draw_bg_rect): compare background color against base[] from
21624         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
21625
21626 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
21627
21628         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
21629         grabs are active, unless a delete event is send to the toplevel
21630         of the currently grab holding widget.
21631
21632 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
21633
21634         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
21635         debugging g_print's.
21636
21637 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
21638
21639         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
21640         ever make the scrolled-window requisition ever depend on the 
21641         visibility state of the scrollbars for the AUTOMATIC policy. 
21642         This breaks the GTK+ requisition model, and causes loops.
21643
21644 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
21645
21646         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
21647         the default font to avoid problems with XFree86-4.0 where the
21648         default charset is iso10646-1, not iso8859-1.
21649
21650 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
21651
21652         * acinclude.m4
21653         * config.guess
21654         * config.sub
21655         * ltconfig
21656         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
21657
21658         * gtk/Makefile.am: minor cosmetic consistency tweak
21659
21660 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
21661
21662         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
21663         the activate_time to 0, so that we handle a quick
21664         press/release press/release properly and don't suppress
21665         the second release. (Red Hat bug #7545)
21666
21667 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
21668
21669         * gtk/gtkctree.c (row_delete):
21670         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
21671         bugs with destruction notifier, *always* update internal
21672         structures *before* calling user code.
21673
21674 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
21675
21676         A few more fixes for bug #5487, #2051, #2677.
21677         * gtk/gtkclist.c : 
21678         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
21679         not GDK_BUTTON_PRESS.
21680         (resync_selection): resync only if selection_mode is
21681         GTK_SELECTION_EXTENDED
21682         * gtk/gtkctree.c (resync_selection): same here
21683
21684 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
21685
21686         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
21687         gdk_drag_get_selection() and gtk_menu_detach().
21688
21689         [ From Jeroen Ruigrok/Asmodai ]
21690
21691 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
21692
21693         * gtk/gtknotebook.c (gtk_notebook_size_request): 
21694         page->tab_label can be NULL.
21695
21696 2000-01-25  Havoc Pennington  <hp@pobox.com>
21697         
21698         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
21699         arg is boolean
21700
21701         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
21702
21703         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
21704
21705         * gdk/gdkproperty.c (gdk_property_get): return boolean
21706
21707         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
21708
21709         * gdk/gdkim.c (gdk_im_ready): return boolean
21710
21711         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
21712
21713         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
21714         glib clash, should fix glib)
21715
21716         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
21717         (gdk_get_show_events): return gboolean, and canonicalize 
21718         to TRUE/FALSE
21719
21720         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
21721         colormap is private
21722         (gdk_colors_alloc): gboolean whether to be contiguous
21723         (gdk_color_equal): return gboolean since we are a predicate
21724         and not a qsort() (this looks semi-wrong due to glib breakage,
21725         IMO glib should be fixed)
21726         
21727         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
21728         (gdk_get_use_xshm): return gboolean
21729         (gdk_pointer_is_grabbed): return gboolean
21730
21731         * gdk/gdk.h: Change prototypes to match all the above changes,
21732         and re-run egtk-format-protos as required.
21733
21734 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
21735
21736         * gtk/gtkctree.c (resync_selection): 
21737         * gtk/gtkclist.c (resync_selection):
21738
21739         Return immediately if clist->drag_pos < 0. This is a workaround
21740         for the corrupt state that the clist gets into when a
21741         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
21742
21743         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
21744         
21745         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
21746         variable from recent commit.
21747
21748 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
21749
21750         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
21751
21752 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
21753
21754         * gtk/Makefile.am: prefix all autogenerated source that get build in
21755         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
21756         in builddir. since we subsequently cd into srcdir for autogeneration,
21757         the paths have to be stripped from the target file names, thusly we
21758         use $(@F) as target names now.
21759         put a comment about configure.in's --disable-rebuilds option,
21760         which can be used for non-writable source directories, for development
21761         setups though, srcdir has to be *writable*.
21762
21763 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
21764
21765         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
21766           Finish the job of allowing event to be NULL.
21767           (Fixes bug #4283, reported by Chris Blizzard)
21768
21769         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
21770           things so that the cursor appears on screen, properly
21771           take into account INNER_BORDER.
21772           (Fixes bug #4754, reported by Antonio Campos)
21773
21774 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
21775
21776         * gtk/gtknotebook.c (gtk_notebook_map): Don't
21777           show the tab_label unless it itself is visible.
21778
21779           gtk/gtknotebook.c (gtk_notebook_size_request):
21780           Do a better job of making sure that the visibility
21781           of the tab label corresponds to whether it should
21782           be mapped or not.
21783
21784 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
21785
21786         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
21787           Use the requisition, not the allocation, since the
21788           allocation has not necessarily been computed yet.
21789           (Pointed out by Eugene Osintsev)
21790
21791 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
21792
21793         * gtk/gtkstyle.c (gtk_style_new): Dont' set
21794           style/base[GTK_STATE_INSENSITIVE] both to
21795           gtk_default_insensitive_bg!
21796           (Bug #2187, reported by Jonathan Blandford)
21797
21798         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
21799           Add Alt_L, Alt_R to list of invalid accelerators.
21800           (Bug #3736, reported by Vlad Harchev)
21801
21802 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
21803
21804         * gtk/gtkfilesel.c (open_ref_dir): Fix several
21805         bugs which occured after an attempt to open 
21806         invalid home directory left cmpl_state->reference_dir == NULL.
21807
21808          - completion on files in home directory didn't work
21809          - completion on an empty string caused  segfault
21810
21811          (Bug #3678, reported by Steve Ratcliffe)
21812
21813         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
21814         cut and paste error that was causing scales to
21815         be incorrectly positioned.
21816         (Bug #2956,
21817          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
21818
21819 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
21820
21821         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
21822         when checking for dcgettext, if we've found we needed
21823         it for dgettext.
21824 +
21825 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
21826
21827         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
21828         queue_clear on NO_WINDOW widgets during a reparent,
21829         since at that point the window and widget heirarchies
21830         are out of sync. This stops crashing in some cases
21831         (the scrolled window reparent test, for instance), and
21832         _probably_ won't cause drawing errors.
21833
21834         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
21835         test do what it was supposed to do and be robust against
21836         window closings, etc. (Bug #2443)
21837
21838 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
21839
21840         * gtk/gtkentry.c: Fix return values on mouse events.
21841         (Bug #2686, Sky <seb_sky@yahoo.com>)
21842
21843         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
21844         (pointed out by George Lebl)
21845
21846         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
21847         (From Ettore Perazzoli  <ettore@helixcode.com>)
21848  
21849 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
21850
21851         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
21852         clicks between rows or outside calender area correctly.
21853         (Patch from Damon Chaplin)
21854
21855         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
21856         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
21857           Call destroy function when overwriting existing data. 
21858           (Pointed out by Damon Chaplin)
21859
21860 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
21861
21862         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
21863           which was causing problems on various systems with Xmu.
21864           This hasn't been needed for a very long time.
21865           (Fixes #1185 3167)
21866
21867 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
21868
21869         * gdk/gdki18n.h: Include <ctype.h> when defining
21870           gdk_isw* in terms of is* as a fallback.
21871           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
21872
21873 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
21874
21875         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
21876           realize the widget when it is size allocated!
21877           (old, old bug)
21878
21879         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
21880           Removed unused call to gdk_window_get_size() that
21881           showed up when the above was fixed.
21882
21883 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
21884
21885         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
21886           fix up widget->window when the widget is a
21887           NO_WINDOW container widget.
21888
21889 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
21890
21891         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
21892           to account for the fact that feof() does _not_ 
21893           return TRUE on errors, and thus avoid infinite loops
21894           when trying to use gdk_pixmap_create_from_xpm()
21895           on unreadable values.
21896
21897 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
21898
21899         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
21900
21901 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
21902
21903         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
21904           gdk_gc_set_dashes to take gint8 instead of gchar to
21905           make it clearer that it is _not_ a NULL terminated string.
21906
21907         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
21908           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
21909           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
21910           arguments.
21911
21912 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
21913
21914         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
21915         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
21916         background size relative to our allocation, guard against small
21917         allocations, we may have not yet been size allocated.
21918
21919 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
21920
21921         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
21922         not just version == 3. We implement all 3 + most of 4 - 
21923         (we don't support matching text/plain;charset=iso-8859-1
21924         to a dest that expects text/plain). We'll still advertise
21925         3 to be safe, but any client implementing version >= 3
21926         must interoperate with 3.
21927         
21928 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
21929
21930         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
21931         background and gc members, add a warning in gtk_tooltips_set_color()
21932         indicating that this function is deprecated.
21933
21934 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
21935
21936         * docs/gtkfaq.sgml: FAQ Update:
21937           - Minor cleanups (Emmanuel, me)
21938           - New questions:
21939                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
21940                 How can I retrieve the text from a GtkMenuItem? (timj)
21941                 How do I validate/limit/filter the input to a GtkEntry? (me)
21942                 Memory does not seem to be released when I free the list
21943                         nodes I've allocated (timj)
21944
21945 2000-03-07  Tor Lillqvist  <tml@iki.fi>
21946
21947         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
21948         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
21949         for which it is no use to call GetLastError onWin9x.
21950         (gdk_other_api_failed) New function, for general error
21951         reporting without calling GetLastError.
21952         (gdk_win32_api_failed) OTOH, this function always calls
21953         GetLastError. (gdk_win32_last_error_string) Remove this function,
21954         GLib has the equivalent now.
21955
21956         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
21957         call them with function name, file name and line number in the
21958         arguments.
21959
21960         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
21961         functions.
21962         
21963         * gtk/gtk.def: Add some missing entry points.
21964
21965         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
21966         gtk_paned_set_gutter_size, which don't exist any longer, as void.
21967         
21968         Fixes by Hans Breuer:
21969
21970         * gdk/makefile.msc: Update for debugging.
21971
21972         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
21973         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
21974         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
21975         in the dash_list.
21976
21977         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
21978         the x11 backend.
21979
21980         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
21981
21982         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
21983
21984 2000-03-04  Tor Lillqvist  <tml@iki.fi>
21985
21986         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
21987         just pixel value of background colour.
21988
21989         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
21990         containing code snippet previously duplicated in a couple of
21991         places.
21992         
21993         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
21994         gdk_colormap_color.
21995
21996         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
21997         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
21998         events for autorepeated Shift, Control and Alt keys. Use
21999         gdk_colormap_color.
22000
22001         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
22002         pointer is inside the window the cursor of which we are setting,
22003         call SetCursor immediately.
22004
22005         * gdk/win32/makefile.cygwin
22006         * gtk/makefile.cygwin: If we don't have the build number stamp
22007         file, use zero.
22008
22009         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
22010         gtk_paned_set_gutter_size as empty.
22011
22012         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
22013         
22014 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
22015
22016         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
22017           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
22018           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
22019           docs/gtk_tut.sgml docs/gtk.texi TODO:
22020
22021           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
22022
22023 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
22024
22025         * gtk/gtkcalendar.c: Implement num_marked_dates,
22026           and don't emit mutiple day_selected signals on
22027           month_prev.
22028
22029 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
22030
22031         * docs/make-todo (lineno): let title and logo be configurable so
22032         that GNOME can use this script too.
22033
22034         * TODO.xml: added logourl and a title
22035
22036 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
22037
22038         * TODO.xml: Added some UI items, and an explanatory
22039         comment at the top of the file.
22040
22041 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
22042
22043         * TODO.xml: some updates, added abunch of new entries.
22044         a note for those fiddeling with this file, when done
22045         with it, invoke:
22046         $ ./docs/make-todo TODO.xml >/dev/null
22047         and correct output errors before comitting changes.
22048
22049 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
22050
22051         * TODO.xml: Added XML-structured TODO file.
22052         * docs/make-todo: python script to turn TODO.xml into
22053           pretty XML output. 
22054
22055 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
22056
22057         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
22058         the function to let it draw the seven dots, instead of the old,
22059         much maligned, method.
22060         (draw_dot): New function to draw a dot.
22061
22062         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
22063         to draw the handle inside the border width as opposed to outside.
22064         Use paint function instead of gdk_draw_point.
22065
22066         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
22067         to draw the handle inside the border width as opposed to outside.
22068         Use paint function instead of gdk_draw_point.
22069
22070         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
22071         Change indenting to be more GTK like.
22072
22073 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
22074
22075         * docs/gtk_tut.sgml: New section on GtkCalendar
22076         * examples/calendar: Update example code
22077
22078 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
22079
22080         * docs/gtkfaq.sgml: FAQ Update
22081
22082 2000-02-19  Anders Carlsson  <andersca@gnu.org>
22083
22084         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
22085         to prevent the scroll event to be propagated upwards.
22086
22087 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
22088
22089         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
22090         OwnerGrabButtonMask from button entries for
22091         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
22092
22093         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
22094         to the event mask (which will result in button/press release
22095         being added to the event mask on Unix) so scrolling works
22096         for layouts in scroll windows.
22097
22098         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
22099
22100         Patch from Anders Carlsson  <andersca@gnu.org> to add
22101         a scroll event.
22102
22103         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
22104         scrolling to the "Test Scrolling" part of testgtk.
22105  
22106         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
22107  
22108         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
22109         it against GDK_SCROLL.
22110  
22111         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
22112         way of mouse wheel scrolling.
22113  
22114         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
22115  
22116         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
22117  
22118         * gtk/gtkmain.c: Removed previous mouse wheel hack.
22119  
22120         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
22121         gdk_event_mask_table.
22122  
22123         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
22124         GdkEventScroll handler.
22125  
22126         * gdk/gdkevents.h: Added GdkEventScroll structure.
22127  
22128 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
22129
22130         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
22131         and Anders Carlsson to change the Paned widgets so that they
22132         can be dragged from anywhere along the length. Also change
22133         the way that this is drawn to make this apparent.
22134
22135         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
22136         from George Lebl to check that option_menu->menu is present
22137         before getting history.
22138
22139 2000-02-14  Tor Lillqvist  <tml@iki.fi>
22140
22141         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
22142         before the assertion for non-NULL segment list.
22143
22144         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
22145         Seems that pattern brushes *must* be 8x8 pixels! At least on my
22146         machine, but it might be display driver dependent. Sigh, so make
22147         sure the stipple is that size. Does Windows suck or what?
22148
22149         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
22150         places.
22151
22152 2000-02-13  Havoc Pennington  <hp@pobox.com>
22153
22154         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
22155         refcount to 1
22156         (gdk_cursor_new): init refcount to 1
22157
22158         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
22159
22160 2000-02-13  Tor Lillqvist  <tml@iki.fi>
22161
22162         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
22163         so that we don't have to do unnecessary settings to the HDC.
22164
22165         * gdk/win32/gdkdrawable-win32.c
22166         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
22167         gdk_gc_predraw.
22168
22169         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
22170         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
22171         GDI paths, call WidenPath to get the outline of the stroken path,
22172         and then fill the outline (with the brush that was built from the
22173         stipple).
22174
22175         * gdk/win32/gdkgc-win32.c: Factor out common code from
22176         _gdk_win32_gc_new and gdk_win32_gc_set_values into
22177         gdk_win32_gc_values_to_win32values. Use correct colour for
22178         SetBkColor() (Until now the code actually used a random colour in
22179         the call to SetBkColor()... but that didn't show up as not many
22180         GDI APIs use the background colour. Pattern (opaque stippled)
22181         brushes do.)
22182
22183         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
22184         gdk_win32_api_failed): New functions for error logging.
22185
22186         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
22187         WIN32_API_FAILED to call them, passing function or file name and
22188         line number.
22189
22190         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
22191
22192         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
22193         GdkColor for foreground and background in GdkGCWin32Data.
22194
22195         * gdk/makefile.cygwin: Link in the resource object separately.
22196
22197         * gdk/win32/rc/gdk.rc
22198         * gtk/gtk.rc (New file)
22199         * gdk/win32/makefile.cygwin
22200         * gtk/makefile.cygwin: Update build number in DLLs automatically,
22201         as in GLib.
22202
22203 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
22204
22205         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
22206         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
22207         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
22208         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
22209         parameters given and cursor->ref_count. coding style fixups.
22210
22211         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
22212         not GtkWidget.
22213         
22214         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
22215         fix up widget macros and add _GET_CLASS() variant.
22216         
22217         * gtk/*.c: some GtkType fixups.
22218
22219 2000-02-09  Tor Lillqvist  <tml@iki.fi>
22220
22221         * gdk/win32/gdkproperty-win32.c
22222         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
22223         were reversed.
22224
22225 2000-02-04  Tor Lillqvist  <tml@iki.fi>
22226
22227         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
22228         g_filename_to_utf8 to convert the font names Windows gives us from
22229         whatever is the default codepage to UTF-8.
22230         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
22231         in the other direction.
22232
22233         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
22234         error in debugging output.
22235
22236 2000-02-02  Tor Lillqvist  <tml@iki.fi>
22237
22238         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
22239         and height parameters to gdk_window_clear_area(). Not minus one.
22240
22241 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
22242
22243         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
22244         checks if the widget passed to gtk_drag_get_data() was not the
22245         dest widget.
22246
22247 2000-02-01  Tor Lillqvist  <tml@iki.fi>
22248
22249         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
22250         g_filename_from_utf8 functions (which were added a moment ago to
22251         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
22252         size buffers.
22253
22254         gtk_file_selection_get_filename returns the filename in the C
22255         runtime encoding. It calls g_filename_from_utf8, but copies the
22256         returned string to a static buffer, which is returned. I think
22257         this is better than returning the result from g_filename_from_utf8
22258         directly, which would mean all apps that use it would have to free
22259         the return value. Or should this function care about this issue at
22260         all? Maybe a new function with clearly defined semantics.
22261
22262         * gtk/gtkfilesel.h: Add comment about
22263         gtk_file_selection_get_filename returning the filename in the C
22264         runtime's encoding.
22265
22266         * README.win32
22267         * gdk/gdk.def
22268         * gdk/makefile.{cygwin,msc}
22269         * gtk/gtk.def: Updates.
22270
22271         * gdk/gdkcursor-win32.c: Initialise refcount.
22272
22273 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
22274
22275         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
22276
22277 2000-01-30  Havoc Pennington  <hp@pobox.com>
22278
22279         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
22280         destroy
22281
22282         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
22283
22284         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
22285         implemented in platform-specific code
22286
22287         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
22288
22289         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
22290         underscore in front
22291
22292         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
22293         put an underscore in front
22294
22295         * gdk/gdkcursor.c: new file, implements
22296         gdk_cursor_ref/gdk_cursor_unref
22297
22298         * gdk/gdkcursor.h: Refcount GdkCursor
22299
22300         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
22301
22302 2000-01-29  Tor Lillqvist  <tml@iki.fi>
22303
22304         * gdk/gdkwindow.h
22305         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
22306
22307 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
22308
22309         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
22310         structures to properly inherit from GtkWidget not GtkBin.
22311
22312 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
22313
22314         * gtk+.spec.in: Added lib/gtk+/include/* to %files
22315         (bug #5178 - Peter Wainright)
22316         
22317         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
22318         so that it will be installed.
22319         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
22320
22321 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
22322
22323         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
22324         for the GtkStyleClass vtable const.
22325
22326         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
22327         take a const string argument like GtkTranslateFunc. This will
22328         require changes in use code.
22329
22330 2000-01-19  Tor Lillqvist  <tml@iki.fi>
22331
22332         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
22333         semantics (to mimic the X11 backend, which just calls XClearArea)
22334         is to check for zero width (and height), and in that case use the
22335         window's width minus x (height minus y). This fixes for instance
22336         some redraw problems with gtkclist, which were easily noticeable
22337         in the gtk file selection widget.
22338
22339         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
22340         windows.
22341
22342 2000-01-13  Tor Lillqvist  <tml@iki.fi>
22343
22344         * configure.in
22345         * gdk/Makefile.am
22346         * gdk/x11/Makefile.am
22347         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
22348         (bug #5177).
22349         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
22350         out later.
22351
22352 2000-01-09  Tor Lillqvist  <tml@iki.fi>
22353
22354         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
22355         WM_MOVE for iconified or invisible windows. This fixes various
22356         problems when minimising windows. Thanks to Bernd Herd.
22357
22358 2000-01-05  Tor Lillqvist  <tml@iki.fi>
22359
22360         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
22361         backend's draw_lines method, not draw_points.
22362
22363 2000-01-02  Tor Lillqvist  <tml@iki.fi>
22364
22365         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
22366         before Owen's reorganisation: Don't have queued_events and
22367         queued_tail statics in this file, but use gdk_queued_events and
22368         gdk_queued_tail. This makes exposure event compression work again.
22369
22370         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
22371         seem to be needed?
22372
22373 1999-12-30  Tor Lillqvist  <tml@iki.fi>
22374
22375         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
22376         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
22377         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
22378         doesn't do anything.
22379
22380         * gdk/gdk.def: Add gdk_xid_table_insert.
22381
22382         * gdk/win32/gdkprivate-win32.h
22383         * gdk/win32/gdkevents-win32.c
22384         * gdk/win32/gdkinput-win32.c
22385         
22386         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
22387         extension_events field in the GdkWindowWin32Data struct. Use only
22388         the extension_events field in GdkWindowPrivate. Previously one was
22389         set, and the other one tested, which broke tablet
22390         functionality. Thanks to Keishi Suenaga for pointing this out.
22391
22392 1999-12-18  Tor Lillqvist  <tml@iki.fi>
22393
22394         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
22395         When handling a single character (text length == 1), don't handle
22396         it as if it was UTF-8.
22397
22398 1999-12-11  Tor Lillqvist  <tml@iki.fi>
22399
22400         * Makefile.am: Distribute README.win32.
22401         
22402         * gdk/Makefile.am
22403         * gdk/win32/Makefile.am: Distribute Win32 files.
22404
22405         * gdk/makefile.msc: New file.
22406
22407         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
22408         after label).
22409
22410         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
22411         gdk_error_code as GDKVAR, as they are referred outside GDK.
22412
22413         * gdk/win32/makefile.msc: Update.
22414
22415         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
22416         tweaks. Check only if at least one of those Unicode subrange bits
22417         we care for is set. If no code page bits are set, guess (wildly)
22418         based on the charset.
22419
22420         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
22421
22422         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
22423         non-NULL.
22424
22425         * gtk/gtkdnd.c
22426         * gtk/gtklayout.c
22427         * gtk/gtkplug.c
22428         * gtk/gtkselection.c
22429         * gtk/gtksocket.c
22430         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
22431         appropriate. There must be a cleaner way to handle this?
22432
22433         * gtk/gtkrc.c: Must include windows.h on Win32.
22434
22435         * gtk/testgtk.c: No need to include gdkx.h.
22436
22437         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
22438
22439 1999-12-07  Tor Lillqvist  <tml@iki.fi>
22440
22441         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
22442         the rbearing is set to the same as the width, but this should be
22443         fixed.
22444
22445 1999-12-06  Tor Lillqvist  <tml@iki.fi>
22446
22447         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
22448         function. If Windows doesn't tell us what Unicode subranges a font
22449         covers, guesstimate based on the codepages it covers. This will
22450         hopefully help those Windows versions or fonts that don't give us
22451         any useful Unicode subrange information with GetTextCharsetInfo.
22452         Call this function in gdk_font_load_internal.
22453
22454         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
22455         minor changes.
22456
22457 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
22458
22459         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
22460         New function, long needed.
22461
22462 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
22463
22464         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
22465         only_if_exists argument of gdk_atom_intern to
22466         bool.
22467
22468 1999-11-25  Tor Lillqvist  <tml@iki.fi>
22469
22470         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
22471         Fix two copy&paste errors.
22472
22473         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
22474         win32 has changed.
22475
22476         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
22477         GdkWin32SingleFont struct.
22478
22479         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
22480         subranges of loaded fonts. Clear font signature first, in case
22481         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
22482         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
22483
22484         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
22485         Unoffset clip region.
22486
22487 1999-11-23  Tor Lillqvist  <tml@iki.fi>
22488
22489         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
22490         event->any.window before calling filter functions.
22491
22492 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
22493
22494         * gtk/gtkgamma.h: Adapt cast macros to standard.
22495
22496 [ Merges from 1.2 ]
22497
22498 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
22499
22500         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
22501         If translation does not include a '/', use entire
22502         translation instead of crashing.
22503
22504 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
22505
22506         * docs/gtk_tut.sgml:
22507         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
22508
22509 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
22510
22511         * gtk/gtkselection.c (gtk_target_list_remove): Use
22512         g_list_remove_link, not g_list_remove.
22513
22514         [ From Geert Bevin <gbevin@thunderstorms.org> ]
22515         
22516 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
22517
22518         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
22519         statement upon unselection (how the heck did that slip in?).
22520
22521 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
22522
22523         * gtk/gtktext.c (gtk_text_freeze): 
22524         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
22525         in frozen state (and aparently crashes). patch provided by Anders
22526         Melchiorsen <and@kampsax.dtu.dk>.
22527
22528 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
22529
22530         * fix insensitive default/focus widget activation,
22531         reported by Matt Goodall <mgg@isotek.co.uk>.
22532
22533         * gtk/gtkwindow.c (gtk_window_key_press_event): 
22534         (gtk_window_activate_default):
22535         (gtk_window_activate_focus):
22536         return handled=FALSE for actiavtion of insensitive default
22537         widgets. return handled=TRUE for activation of insensitive
22538         focus widgets. don't activate in either case.
22539
22540 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
22541
22542         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
22543         and $glib_cflags to match library order and in the
22544         theory that an old version of GLib is more likely to
22545         be in the include directory for X then vice-versa.
22546         (Bug #2776)
22547
22548 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
22549
22550         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
22551         to determine the locale for fontsets, not LC_MESSAGES;
22552         the user may want English messages with a handling
22553         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
22554         will still be broken) (Bug #2891)
22555
22556 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
22557
22558         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
22559
22560 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
22561
22562         * gtk/gtkrc.ko: Changed the Korean default fontset.
22563
22564 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
22565
22566         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
22567         where when scrolling to the left or top double exposes
22568         were done, causing major slowdowns.
22569
22570 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
22571
22572         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
22573         names to lowercase and alphanumeric, before looking
22574         them up.
22575
22576         * gtk/Makefile.am: Install codeset variant gtkrc files
22577         with normalized names.
22578
22579 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
22580
22581         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
22582         popup menus when the menu is already visible, but its parent
22583         is still hidden, (happens after tornoff window got hidden).
22584
22585 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
22586
22587         * gtk/Makefile.am (install-data-local): Fix
22588         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
22589         deleted, causing error messages on install.
22590
22591 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
22592
22593         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
22594         the handle as well, since we now sometimes ignore
22595         exposes on the handle while resizing.
22596
22597 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
22598
22599         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
22600         extra g_free introduced in one of the last one or two 
22601         commits.
22602
22603 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
22604
22605         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
22606         consistent, put each style that a gtkrc.* file creates
22607         in a unique namespace, remove old files before installing.
22608
22609 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
22610
22611         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
22612         gtk_rc_init is called multiple times. (Yes, people who
22613         do that have bugs in their code.)
22614
22615 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
22616
22617         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
22618         Remove it since it's generated by the Makefile anyway
22619
22620 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
22621
22622         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
22623         device->info.axes for core pointer.
22624
22625 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
22626
22627         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
22628         idle_id, to deal with obsolete, broken C libraries.
22629
22630 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
22631
22632         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
22633         allocation->x/y twice!
22634
22635         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
22636         consistent with gtk_vscale_pos_trough().
22637
22638 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
22639
22640         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
22641         be queueing a resize on a toplevel container between
22642         the time we show it and when we map it. So, we need
22643         to test GTK_WIDGET_VISIBLE() for toplevels, and only
22644         use GTK_WIDGET_DRAWABLE() for child windows.
22645
22646 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
22647
22648         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
22649         (fixes bug #2144)
22650
22651 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
22652
22653         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
22654         container DRAWABLE (instead of VISIBLE), so we don't queue
22655         resizes on non-toplevel containers.
22656
22657 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
22658
22659         * gtk/gtkselection.[ch]: Make the data argument
22660         const guchar *.
22661
22662 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
22663
22664         * gtk/gtkwindow.c: Try to behave sensibly if 
22665         the focus widget is the window itself. (Should
22666         we allow this at all?)
22667
22668 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
22669
22670         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
22671         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
22672         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
22673         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
22674         in prototypes and implementations consistent (Tomas Ogren).
22675
22676         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
22677         before the widget is unparented (reported by damon).
22678
22679         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
22680         since we provide unsigned data anyways.
22681
22682 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
22683
22684         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
22685         the call to gtk_tooltips_layout_text() until later.
22686
22687         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
22688         Call gtk_widget_ensure_style() before using the style.
22689
22690 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
22691
22692         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
22693         for old widgets that don't propagate draws to all
22694         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
22695
22696 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
22697
22698         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
22699         for a redraw but just the widget that requested the resize.
22700
22701 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
22702
22703         * gtk/gtkcontainer.c: added new widget level method
22704         gtk_container_set_reallocate_redraws() and a GtkContainer flag
22705         reallocate_redraws : 1 to reflect the setting, exported this through
22706         the argument system as a boolean ::reallocate_redraws.
22707
22708         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
22709         on the widget because the allocation changes, do so as well for
22710         widget->parent if the parent has reallocate_redraws set to TRUE.
22711         with that containers requesting reallocation redraws get automatically
22712         redrawn if their children changed allocation (this unfortunately
22713         affects also other children that didn't change allocation, but we
22714         cannot work around that before 1.3).
22715
22716 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
22717
22718         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
22719         _and_ height are >0 (not _or_).
22720
22721         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
22722         instead of gtk_container_queue_resize(), which is a core gtk internal
22723         function (must have been on crack when i queued that).
22724
22725         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
22726         we can check more reliably if we want to discard expose events.
22727         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
22728         flag.
22729         
22730         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
22731         we simply trust these events. for deciding whether to discard exposes,
22732         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
22733         
22734 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
22735
22736         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
22737         queues of areas that are completely off screen.
22738
22739         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
22740         logic for handleboxes.
22741
22742         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
22743         check on width/height.
22744
22745 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
22746
22747         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
22748         we are fine with using $@ the way we do (if we actually encounter
22749         brokeness with $@ in VPATH builds because of additional path prefixes,
22750         we need to use $(@F) actually).
22751
22752 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
22753
22754         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
22755         short lived bugs, that would allow language bindings to do surgeries
22756         to our guts.
22757
22758 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
22759
22760         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
22761         where comparison was being done against an uninitialized
22762         value causing intermittant results depending on
22763         compiler flags. Also make it clearer that we aren't
22764         ever initializing the child as 0x0 (though this will
22765         be caught in gtk_widget_size_allocate())
22766
22767 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
22768
22769         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
22770         gtk_window_unset_transient_for() call after we do checks
22771         involving the old transient parent.
22772         [ From Lance Capser <lmc@cyberhighway.net> ]
22773
22774 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
22775
22776         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
22777         an empty file.
22778
22779 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
22780
22781         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
22782         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
22783
22784 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
22785
22786         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
22787         `$@' is valid only in the build dir, not after we've done 
22788         `cd $srcdir'.  Also use `test -f' instead of less portable
22789         `test -e'.
22790
22791 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
22792
22793         * gtk/gtktext.c (correct_cache_insert): Rewrite
22794          for simplicity, and hopefully correctness.
22795          (Fixes bug #1322, which was a segfault when
22796           on some insertions with the properties around
22797           the insertion set up just wrong.)
22798
22799         * gtk/gtktext.c (gtk_text_adjustment): When we receive
22800          a "changed" signal, clamp the new value to the adjustment
22801          bounds to avoid segfaulting if someone tries to change
22802          the adjustment to a bogus value. (Bug #1795)
22803
22804 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
22805
22806         * gtk/gtkmain.c: Ignore unexpected destroy notifies
22807         for children, for toplevel windows handle them
22808         like delete_event.
22809
22810         * gtk/gtkplug.c: Add an unrealize handler so that
22811         we unref plug->socket_window when we are done
22812         with it.
22813
22814 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
22815
22816         * gtk/gtktext.c (clear_area): Fix stupid signedness
22817          problem that was causing background to sometimes
22818          be misaligned.
22819
22820 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
22821
22822         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
22823         
22824         * gtk/gtkmenu.c (gtk_menu_position): Make
22825          sure we never position menus with negative x, y,
22826          since gtk_widget_set_uposition() can't handle that.
22827
22828         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
22829          Modify the positioning code a bit so that we always
22830          put the top-left corner onscreen. (This is for
22831          UI reasons, gtk_menu_position() now takes care of
22832          gtk_widet_set_uposition() brokeness.)
22833
22834 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
22835
22836         * gtk/Makefile.am: fixed up things for -jx, x > 1.
22837
22838 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
22839
22840         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
22841           RC style that is passed in. The lack of the ref
22842           before was a bug. If people worked around this
22843           bug, this will introduce a slight memory leak
22844           in their code. The code should typically look like:
22845
22846             rc_style = gtk_rc_style_new ();
22847             [...]
22848             gtk_widget_modify_style (widget, rc_style);
22849             gtk_rc_style_unref (rc_style);
22850
22851         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
22852           the style if it was already set.
22853
22854         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
22855           style if it was set before.
22856
22857 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
22858
22859         * gtk/testgtk.c (main): Add a check to see if we
22860           are being run from the correct directory and
22861           to quit nicely if we are not.
22862
22863         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
22864           static.
22865
22866 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
22867
22868         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
22869
22870         * gtk/gtkwindow.c:
22871         queue resizes unconditionally (gtk_widget_queue_resize will figure
22872         what to do if the window is not realized).
22873         (gtk_window_move_resize): only recenter the window
22874         for GTK_WIN_POS_CENTER_ALWAYS.
22875         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
22876         the same way as GTK_WIN_POS_CENTER.
22877
22878 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
22879
22880         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
22881         with (!(info->last_flags & GDK_HINT_POS)) instead of
22882         (!info->last_flags & GDK_HINT_POS).
22883
22884         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
22885         new_height unconditionally, because we use these values even if
22886         !default_size_changed && !hints_changed.
22887         comented the (default_size_changed || hints_changed) case with
22888         respect to resize rejects from the window manager.
22889
22890         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
22891         in the zvt condition hack, since this includes the window hints, set
22892         the hints after the handling_resize case.
22893
22894         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
22895         window is initially shown with to the geometry.
22896
22897 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
22898
22899         * gtk/gtkwindow.c (gtk_window_move_resize):
22900         s/size_changed/default_size_changed/g so i know what's
22901         really going on (frying brain on smaller flame now).
22902
22903 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
22904
22905         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
22906         we have size_changed upon handling_resize. this is a gross
22907         workaround for the broken zvt widget and should be removed in
22908         1.3 again (search for FIXME).
22909         Owen provided an accurate comment for this:
22910
22911         /* We could be here for two reasons
22912          *  1) We coincidentally got a resize while handling
22913          *     another resize.
22914          *  2) Our computation of size_changed was completely
22915          *     screwed up, probably because one of our children
22916          *     is broken. It's probably a zvt widget.
22917          *
22918          * For 1), we could just go ahead and ask for the
22919          * new size right now, but doing that for 2)
22920          * might well be fighting the user (and can even
22921          * trigger a loop). Since we really don't want to
22922          * do that, we requeue a resize in hopes that
22923          * by the time it gets handled, the child has seen
22924          * the light and is willing to go along with the
22925          * new size. (this happens for the zvt widget, since
22926          * the size_allocate() above will have stored the
22927          * requisition corresponding to the new size in the
22928          * zvt widget)
22929          *
22930          * This doesn't buy us anything for 1), but it shouldn't
22931          * hurt us too badly, since it is what would have
22932          * happened if we had gotten the configure event before
22933          * the new size had been set.
22934          */
22935
22936 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
22937
22938         * gtk/gtkrc.c: deal properly with the fact that RC
22939           style lists may include rc styles more than once.
22940
22941         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
22942           unused static function.
22943
22944         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
22945           stack of directories of RC files currently being
22946           parsed and implicitely add them to pixmap path.
22947           
22948           This fixes a bug where the directory would get
22949           appended then overwritten by pixmap_path declarations.
22950
22951           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
22952
22953         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
22954           theme's exit function. (Patch from Peter Wainwright,
22955           bug #1454)
22956
22957         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
22958           Add a destroy() handler to take care of removing
22959           group for menu item. (Fixes bug #1197)
22960
22961         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
22962           in warning message.
22963
22964 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
22965
22966         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
22967         roundtrip to figure window's width and height, since we know that
22968         anyways from widget->allocation.
22969
22970 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
22971
22972         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
22973           the hints after we request the new size.
22974
22975 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
22976
22977         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
22978           GTK_WIDGET_REALIZED() assertion - we can compute the
22979           hints before we are realized.
22980
22981         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
22982           hint changing so that we have a value of hints_changed
22983           when we decide whether to constrain the window size.
22984
22985         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
22986
22987         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
22988         change back to G_MAXINT.
22989
22990 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
22991
22992         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
22993         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
22994         contain uncluttered values.
22995         (gtk_window_compute_hints): simply assert that window is realized
22996         and that geometry_info is valid, since we rely on this anyways.
22997         (gtk_window_constrain_size): major cleanups to the code.
22998         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
22999         for the base size, instead of the minimums. use 32767 as max width
23000         and height (like in gtkwindow.c) instead of G_MAXINT.
23001
23002 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
23003
23004         * cleaned up the GtkContainer.need_resize flag handling mess, we
23005         only need to force resize requests when we were prematurely
23006         realized, or our widget tree was modified when we were temporarily
23007         hidden. handling these cases directly upon showing the window (i.e.
23008         while the GdkWindow is still unmapped) avoids the need to wait for
23009         a configure event response and therefore makes the GUI more snappier
23010         and avoids blank windows during the roundtrip.
23011
23012         * gtk/gtkwidget.c:
23013         (gtk_widget_hide): 
23014         (gtk_widget_show): don't queue resizes on toplevels, they know how
23015         to deal with matters.
23016
23017         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
23018         flag directly for not visible resize containers and spare us unecessary
23019         signal emissions.
23020
23021         * gtk/gtkwindow.c:
23022         (gtk_window_realize): if we need to enforce premature size allocation,
23023         queue a container resize so we are correctly resized later on.
23024         (gtk_window_init):
23025         (gtk_window_size_request):
23026         don't freak around with the ->need_resize flag,
23027         gtk_container_queue_resize() will care about that.
23028         (gtk_window_show):
23029         handle initial resizing issues here, we can handle matters better in
23030         this place, especially since we know that our GdkWindow is still
23031         unmapped.
23032         (gtk_window_move_resize):
23033         don't care about ->need_resize at all.
23034         handle size changes properly that occoured while we waited for a
23035         configure event.
23036
23037 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
23038
23039         * gtk/gtkwidget.c (gtk_widget_set_uposition):
23040         * gtk/gtkwindow.[hc] (gtk_window_reposition):
23041         Move the hint setting code from gtk_widget_set_uposition
23042         to here; set the hints so that we respect any previously
23043         set geometry hints.
23044
23045         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
23046         change the window hints here or move the window here,
23047         let that happen in gtk_window_move_resize().
23048
23049 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
23050
23051         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
23052         to already queued resizes (and therefore redraws) on a widget, check
23053         its anchestry as well.
23054
23055         * gtk/gtkcontainer.c:
23056         (gtk_container_queue_resize): clear resize widgets for resize
23057         containers before aborting prematurely. this is especially important
23058         for toplevels which may need imemdiate processing or their resize
23059         handler to be queued.
23060         (gtk_container_dequeue_resize_handler): added new internal function for
23061         gtkwindow.c.
23062
23063         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
23064         configure event, take possible changes in window position into account
23065         as well.
23066         if we request a new window size, queue up a resize handler that will
23067         last until the configure event response arrives.
23068         combined the ->need_resize case (initial show) with the general size
23069         (hints) changed case and added even more comments.
23070         if !auto_shrink, only revert to the old allocation if the new size
23071         is smaller than the current allocation.
23072
23073 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
23074
23075         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
23076                            gtk_window_set_geometry_hints
23077                            gtk_window_set_default_size):
23078         When hints are set, queue a resize so that the hints will
23079         be eventually reset on the toplevel.
23080
23081         * gtk/gtkwindow.c (gtk_window_show): Use
23082         gtk_window_compute_default_size(). Clear the need_resize flag
23083         on the initail map so that we don't unnecessarily trigger the
23084         resize code.
23085
23086         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
23087         into separate functions. Compare the hints we are setting
23088         with what we set last time so that we can accurately
23089         tell when we need to reset the hints.
23090
23091         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
23092         function to figure out the size from requisition
23093         and default_size.
23094
23095         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
23096         from fvwm to constrain a size to the geometry hints.
23097
23098         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
23099         to compare two sets of geometry hints.
23100
23101         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
23102         from gtk_window_set_hints(), just compute the hints,
23103         don't set them.
23104
23105         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
23106         code from gtk_window_move_resize() to separate function,
23107         rationalize a bit.
23108
23109 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
23110
23111         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
23112         structure into a new private structure.
23113
23114         * gtkrc.c: Split GtkRcStyle into public/private.
23115         In the private part, add a list of pointers to the
23116         RcStyle lists this RcStyle participates in.
23117
23118         * gtkrc.c: When a RcStyle is free, remove all
23119         lists referencing it from the 
23120         realized_style_ht hash, and free those lists.
23121         
23122         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
23123         gtk_rc_init(), since that adds the default styles
23124         to the list of parsed RC files again.
23125
23126         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
23127         
23128 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
23129
23130         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
23131         checks that ensure that a widget's allocation is at least 1 in width
23132         and height. (GNOME note: this doesn't affect old panel code anymore,
23133         because GtkSocket will request width and height of at least 1 since
23134         Fri Jul 23).
23135
23136         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
23137         allocated yet (happens if the user realizes the window prematurely),
23138         size request and allocate it.
23139         (gtk_window_size_allocate): guard against guint underflows.
23140
23141 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
23142
23143         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
23144         in gtk_built_sources, so gtk.defs gets built prior to all other
23145         sources.
23146
23147 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
23148
23149         * gtk/Makefile.am:
23150         invoke indent on gtkmarshal.*. 
23151         rewrote source generation rules, use COPYING as oldest source tag for
23152         a piggyback rule to generate all sources from (don't touch it ;).
23153         major cleanups, strip spaces on build rules for GNU Make.
23154
23155         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
23156         source and target files from commandline arguments. don't invoke indent.
23157
23158 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
23159
23160         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
23161         notebook after switch to avoid drawing problems.
23162         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
23163         
23164         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
23165         show them instead. 
23166         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
23167
23168 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
23169
23170         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
23171         notebook after switch to avoid drawing problems.
23172         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
23173         
23174         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
23175         show them instead. 
23176         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
23177
23178 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
23179
23180         * gtk/gtkwindow.c:
23181         we use window->need_resize from configure_event now, to indicate that
23182         the gtkwindow should keep its allocation (e.g. because the user resized
23183         the window through window manager handles). resize_count is now reliably
23184         used to figure whether we got the allocation we requested from the
23185         window manager.
23186         configure events get queued as resizes now, the real stuff (size
23187         computation and allocation) now only goes on in gtk_window_move_resize().
23188         GtkWindow's requisition now contains its *real* requisition (like all
23189         other widgets), *not* taking usize into account.
23190         geometry_info->last_{width|height} is now updated from set_hints() only
23191         so it always contains the last hints we set for the window manager.
23192         made some event handlers return TRUE instead of FALSE.
23193         the overall code should be much more straight forward now, and the
23194         significant code portions are accompanied by comments now.
23195         (gtk_window_set_hints):
23196         removed requisition argument and made it
23197         fetch the requisition through gtk_widget_get_child_requisition.
23198         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
23199         does that now.
23200         (gtk_window_show):
23201         ensure that the widget is realized before calling 
23202         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
23203         ensure that we got properly size requested and allocated before
23204         realization.
23205         (gtk_window_configure_event):
23206         ignore plain window moves, or reallocate the widget tree through the
23207         resize queue otherwise.
23208         (gtk_window_move_resize):
23209         mostly rewrote this function to figure window manager hints more
23210         reliably, coalesce window moves and resizes to reduce configure events
23211         and do actuall size allocations.
23212
23213 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
23214
23215         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
23216         that have a resize pending, because a redraw is already queued for them.
23217
23218         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
23219         hack to clear resize_widgets.
23220
23221         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
23222         for resize containers prior to size allocation. (this is also a bit
23223         ugly, but avoids side effects for stopped emissions and is thus more
23224         reliable).
23225         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
23226
23227         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
23228         function from gtk_tooltips_expose, as we connect to ::expose_event
23229         *and* ::draw now.
23230
23231 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
23232
23233         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
23234         checks.
23235         (gtk_target_list_unref): Likewise.
23236
23237         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
23238
23239 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
23240
23241         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
23242         guard against division by zero. (Fixes bug #1339)
23243
23244 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
23245
23246         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
23247         Prevent the trivial leak of information of allowing
23248         word motion when the entry is not visible.
23249
23250 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
23251
23252         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
23253         modality to error dialog as well as confirmation dialogs.
23254         (Bug #1803, reported by Rosanna Wing Sze Yuen)
23255
23256 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
23257
23258         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
23259         tree->view_lines.
23260         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
23261
23262         * gtk/Makefile.am (install-data-local): Solaris apparently
23263         has various troubles with ln -f; use rm first instead.
23264         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
23265
23266 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
23267
23268         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
23269         use `cp' followed by `rm' (the `rm' was already there).
23270
23271 July 30, 1999 Elliot Lee <sopwith@redhat.com>
23272         
23273         * configure.in: Fix autoconf warnings about cross compilation by
23274         trying to provide sane defaults for AC_TRY_RUN.
23275         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
23276         put them into $(srcdir) when generated. Also add a dependency of
23277         gtksignal.h on gtkmarshal.h for -j builds. 
23278         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
23279
23280 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
23281
23282         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
23283         GDK_THREADS_{LEAVE,ENTER} pair.
23284         (From Paul Fisher <pnfisher@redhat.com>)
23285
23286 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
23287
23288         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
23289         width and height are always >0 (owen).
23290
23291 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
23292
23293         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
23294         change that assured that a widget's allocated with and height are
23295         always >1, since this breaks *buggy* panel code. unfortunately this
23296         back-breaks the gimp's color selector.
23297
23298         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
23299         allocation is always >0 in width and height, before sending the
23300         configure event; this is a *gross* hack to get the gimp back to work.
23301         
23302         * marked both cases with TODO-1.3
23303
23304 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
23305
23306         * gtk/gtktext.c: Don't display wrap indicators when
23307         text is not editable and word wrap is on.
23308
23309 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
23310
23311         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
23312         option menus here as they are not derived from menu shell, assure that
23313         the option menu has a menu we can add items to.
23314
23315 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
23316
23317         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
23318         width/height to (gint) before calculations and check against < 0 to
23319         avoid guint wraparounds.
23320
23321 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
23322
23323         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
23324         width and height is never zero. sanity check both dimensions against
23325         32767 and issue a warning if the allocation is greater than that.
23326
23327 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
23328
23329         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
23330         to g_main_pending() as well.
23331
23332 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
23333
23334         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
23335         call to g_main_iteration() - since that will regrab
23336         GTK+ lock to process events.
23337
23338 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
23339
23340         * gtk/gtkwindow.c
23341         - Regularize with the rest of GTK+ by making widget->requisition
23342           not reflect the set_usize()
23343         - Always recompute geometry hints, then check if they
23344           changed before sending them to the X server. The
23345           previous checks for changes would fail in a number
23346           of circumstances. 
23347
23348 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
23349
23350         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
23351
23352 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
23353
23354         * gtk/gtkdnd.c:
23355         - Code cleanups
23356         - Instantaneously update on modifier key presses
23357         - Allow cancellation of the drag with Escape.
23358
23359 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
23360
23361         * gtk/testgtk.c (create_handle_box): Set the policy
23362         to auto_shrink - otherwise the appearance is rather
23363         strange when flipping between horizontal and vertical.
23364
23365 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
23366
23367         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
23368         (gtk_window_set_default_size): don't change a value if it's < 0.
23369         queue a resize.
23370
23371 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
23372
23373         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
23374
23375 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
23376
23377         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
23378         add an extra "/" when concating "/" + filename.
23379         (From Matt Grossman <mattg@oz.net>)
23380
23381 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
23382
23383         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
23384         for fg_gc if we set it for drawing pixmap.
23385
23386 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
23387
23388         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
23389         
23390         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
23391         already set, call old engine's destroy function and
23392         unref the old engine.
23393
23394 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
23395
23396         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
23397
23398 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
23399
23400         * gtk/gtkaccelgroup.h: mark certain functions as internal.
23401
23402 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
23403
23404         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
23405         expand behaviour changed.
23406
23407         * gtk/gtklabel.c (gtk_label_set_pattern):
23408         (gtk_label_set_justify):
23409         (gtk_label_set_line_wrap):
23410         don't bother invoking queue_clear, the reallocation does
23411         that for us, always free_words so the upcoming resize will
23412         relayout the label's contents.
23413
23414 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
23415
23416         * applied argument implementation patches from Elena Devdariani
23417         <elena@cogent.ca>.
23418
23419         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
23420         ::space_style, ::relief
23421         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
23422         * gtk/gtkpreview.c: ::expand
23423         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
23424         * gtk/gtknotebook.c: ::homogeneous
23425         * gtk/gtklabel.c: ::wrap
23426         * gtk/gtklist.c: ::selection_mode
23427         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
23428         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
23429         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
23430         * gtk/gtkclist.c: ::sort_type
23431         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
23432         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
23433
23434 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
23435
23436         * gtk/gtkstyle.c: Removed ill-thought-out part of last
23437         comment.
23438
23439 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
23440
23441         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
23442         counting right when we have to attach a new style
23443         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
23444
23445         * gtk/gtkstyle.c: Documented the refcounting
23446         peculularities of gtk_style_attach.
23447
23448 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
23449
23450         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
23451         window types.
23452
23453         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
23454         of GTK_TOPLEVEL for creating the window.
23455
23456 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
23457
23458         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
23459         the last argument (reported by Per Winkvist).
23460         
23461 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
23462
23463         Fixes for invisible XOR lines (Frank Loemker
23464         <floemker@TechFak.Uni-Bielefeld.DE>)
23465         
23466         * gtk/gtkclist.c (gtk_clist_realize): Always use
23467         a non-zero pixel for GDK_XOR.
23468
23469         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
23470         Use GDK_INVERT instead of GDK_XOR.
23471
23472 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
23473
23474         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
23475         signals if h/voffsets differ from adjustment values.
23476         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
23477
23478 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
23479
23480         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
23481         ::selection-done emissions up to the topmost menu shell.
23482
23483 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
23484
23485         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
23486         the user data on the window before destroying it.
23487
23488         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
23489         unrealize handler to take care of destroying 
23490         notebook->panel properly. 
23491         (Bug #1198 - Morten Welinder <terra@diku.dk>)
23492
23493         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
23494         of g_new and g_realloc to stop memory leak. (Actually,
23495         we could just use g_realloc(), but I'm not 100% sure
23496         that is portable).
23497         (Bug #1196 - Morten Welinder <terra@diku.dk>)
23498
23499 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
23500
23501         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
23502
23503         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
23504         for fontsets.
23505
23506         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
23507         with bin/button confusion.
23508
23509 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
23510
23511         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
23512         and show how preselection of radio items is done.
23513
23514 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
23515
23516         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
23517         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
23518         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
23519         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
23520         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
23521         * gtk/gtktable.c (gtk_table_attach): 
23522         * gtk/gtklist.c (gtk_list_insert_items): 
23523         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
23524         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
23525         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
23526         * gtk/gtkbin.c (gtk_bin_add): 
23527         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
23528         * gtk/gtkfixed.c (gtk_fixed_put): 
23529         * gtk/gtklayout.c (gtk_layout_put):
23530         general fixups to container_add logic. always realize child if
23531         child->parent is realized, only map the child and queue a resize
23532         if child and child->parent are both visible.
23533
23534 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
23535
23536         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
23537         instead of gtk_container_foreach to walk and unrealize children, so
23538         composite children get also unrealized.
23539         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
23540         (gtk_widget_map): assert that the widget is visible (basic constrain).
23541         (gtk_widget_real_map): assert that the widget is realized (basic
23542         constrain).
23543
23544 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
23545
23546         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
23547
23548 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
23549
23550         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
23551         file for iso-8859-2 locales.
23552
23553         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
23554
23555 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
23556
23557         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
23558          (Pointed out by andy@rz.uni-karlsruhe.de and others).
23559          Remove some suspicious and useless lines. 
23560
23561 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
23562
23563         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
23564         width,height = 0, 0 to mean - here to edge of window,
23565         instead of -1, -1, since the former is all we support.
23566
23567 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
23568
23569         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
23570         when removing from quit_functions list.
23571
23572 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
23573
23574         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
23575
23576 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
23577
23578         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
23579          When redrawing characters on non-visible entry, use appropriate
23580          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
23581
23582 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
23583
23584         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
23585         from drag coordinates.
23586         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
23587         use drag_dest_cell.
23588
23589         * gtk/gtktree (drag_dest_cell)
23590         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
23591         (Bug #1129)
23592
23593 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
23594
23595         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
23596         translate_* fields.
23597         (gtk_item_factory_finalize): invoke translate_notify independant from
23598         translate_data.
23599         (gtk_item_factory_set_translate_func): likewise.
23600         (gtk_item_factory_destroy): only remove ifactory pointer from those
23601         widgets that belong to us (stupid me).
23602
23603 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
23604
23605         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
23606         rc_style list when lookup succeeeds.
23607
23608 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
23609
23610         * gtk/gtkctree.c (resync_selection): 
23611         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
23612         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
23613         bug.
23614
23615 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
23616
23617         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
23618         Add some missing GDK_THREADS_ENTER()/LEAVE around
23619         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
23620
23621 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
23622
23623         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
23624         rather than emit_by_name.
23625
23626         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
23627         on the widget across multiple signal emissions.
23628         (gtk_editable_delete_text): same here.
23629         (gtk_editable_class_init): set widget_class->activate_signal after
23630         editable_signals[ACTIVATE] has been created.
23631
23632 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
23633
23634         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
23635         position here prematurely -- we might not have the
23636         right ->min_position and ->max_position yet.
23637
23638 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
23639
23640         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
23641         Add error traps so if the other end of the connection
23642         dies, we survive.
23643
23644         * gtk/gtkselection.c (gtk_selection_notify): Clean
23645         up properly when selection property retrieval fails.
23646         
23647         * gtk/gtkselection.c (gtk_selection_request): Correctly
23648         reject SelectionRequest notifies where the handler
23649         returns no data.
23650
23651 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
23652
23653         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
23654         when we've previously highlighted.
23655
23656         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
23657         emit two "drag_leave" signals for Motif drops.
23658
23659         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
23660         back the correct status messages when dropping from
23661         Motif onto a proxy window that is rejecting the
23662         drop.
23663
23664 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
23665
23666         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
23667         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
23668         to compare two argument values. added gtk_arg_to_valueloc() to set a
23669         variable from an arg through its location (pointer).
23670
23671         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
23672         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
23673         as gfloat*, uchars are collected as guchar*, ints are collected as
23674         gint*, etc...
23675
23676 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
23677
23678         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
23679         Include <string.h> instead of <strings.h>.
23680
23681         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
23682         (actually, a lot more duplicate includes occur if
23683          you trace through the sequence of #include's)
23684         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
23685         
23686 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
23687
23688         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
23689         gtk-a-higuti-990322-[0-3]
23690
23691         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
23692         that was causing -DX_LOCALE not to work.
23693
23694         * gtk/gtkrc.c (gtk_rc_init):
23695         X_LOCALE will never have LC_MESSAGES defined
23696
23697 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
23698
23699         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
23700         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
23701
23702         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
23703         left/right as well (gtk-michael-980726-0.patch.gz).
23704
23705         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
23706         for pointer values, use gchar instead of char. fixed uline allocation
23707         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
23708         chunks instead of G_ALLOC_ONLY.
23709         (gtk_label_size_request): always alter requisition as passed and leave
23710         widget->requisition alone.
23711         (gtk_label_set_text): allow NULL strings.
23712         (gtk_label_new): likewise.
23713
23714 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
23715
23716         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
23717
23718 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
23719
23720         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
23721         *and* mapped (i.e. drawable).
23722         (gtk_bin_expose): only send exposes to drawable children.
23723
23724         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
23725         (gtk_box_expose): only send exposes to drawable children.
23726
23727         * gtk/gtkhscale.c (gtk_hscale_draw): 
23728         * gtk/gtkvscale.c (gtk_vscale_draw):
23729         hm, this is an ugly one. we first compute the size of our trough area
23730         here (window relative) and then check intersection with the draw_area
23731         which is parent relative because we're a NO_WINDOW widget, so we need
23732         to offset the trough area by allocation.x and allocation.y before the
23733         check. (this must not be done for the background area though, since
23734         that's already computed parent relative).
23735
23736 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
23737
23738         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
23739         unrealize title buttons.
23740
23741 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
23742
23743         * gtk/gtkclist.c (gtk_clist_column_title_passive)
23744         (gtk_clist_column_title_active): 
23745         only connect/disconnect to GtkWidgetClass::event to block mouse events.
23746
23747         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
23748         zero initialize event, removed superfluous gdk_window_get_pointer call
23749
23750         * gtk/gtklist.c (gtk_list_vertical_timeout)
23751         (gtk_list_horizontal_timeout): removed superfluous
23752         gdk_window_get_pointer call
23753
23754 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
23755
23756         * plugging problems reported by "Bruce Mitchener, Jr."
23757         <bruce@puremagic.com> due to a purify session.
23758
23759         * gtk/gtkstyle.c:
23760         (gtk_style_ref): 
23761         (gtk_style_unref): assert ref_count to be > 0.
23762
23763         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
23764         the requisition.
23765         (gtk_clist_set_shift): likewise.
23766
23767         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
23768         adjustments.
23769
23770         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
23771         event before sending it and set send_event to TRUE (which needs to
23772         be done for *all* synthesized events).
23773         (gtk_list_vertical_timeout): likewise.
23774
23775         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
23776         leaks.
23777
23778         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
23779         to TRUE when synthesizing events.
23780
23781 [ *** end of merges from 1.2 *** ]      
23782         
23783 1999-11-21  Tor Lillqvist  <tml@iki.fi>
23784
23785         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
23786         (or copied from gdkconfig.h.win32 on Win32, sigh).
23787
23788         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
23789
23790         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
23791
23792         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
23793
23794         * gdk/gdkconfig.h.win32: New file.
23795
23796         * gdk/win32/makefile.cygwin: Build just a static archive here.
23797
23798         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
23799         for the DLL from the static archive built above.
23800
23801         * gdk/gdk.def: Moved here from the win32 subdirectory.
23802
23803         * gdk/win32/*: Adapt for the changed private struct organisation.
23804
23805         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
23806
23807 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
23808
23809         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
23810         for wheel mice (buttons 4 and 5).
23811
23812 1999-11-18  Tor Lillqvist  <tml@iki.fi>
23813
23814         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
23815         drawables use just the pixel field in the foreground and
23816         background GdkColor of the GdkGC.
23817
23818         gdk_gc_set_{fore,back}ground() are called in the GIMP with
23819         GdkColors containing uninitialized (red,green,blue) fields, and
23820         just the pixel field filled in, and furthermore in the
23821         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
23822         It thus turns out that we really don't need to have the full
23823         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
23824         it later to have just the pixel values.
23825
23826 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
23827
23828         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
23829
23830 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
23831
23832         * docs/gtkfaq.sgml: threads example from Erik Mouw.
23833         New question on GtkLabel background colors.
23834
23835         * docs/gtk_tut.sgml:
23836           - Correct the example code callback
23837             function definitions.
23838           - Update the gtkdial example code, from Frans van Schaik.
23839           - Update setselection.c to current API.
23840
23841         * examples/Makefile examples/*/*.c: Update to code
23842         listed in tutorial.
23843
23844 1999-11-10  Tor Lillqvist  <tml@iki.fi>
23845
23846         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
23847         subrange table (from the "Developing International Software for
23848         WIndows 95 and Windows NT" book) was missing the Hangul syllable
23849         block... Get the loaded font's charset correctly.
23850
23851         (Note that this, and the other *-win32.c files, still really are
23852         the old ones, the win32 subdirectory is not ready for compilation
23853         yet after the reorg.)
23854
23855 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
23856
23857         * gtk/gtkclist.c: Fix off-by-one bug in parameter
23858         check.
23859
23860 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
23861
23862         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
23863         on results of XQueryDeviceState().
23864
23865 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
23866
23867         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
23868         we need to accesss only ->children. We need an accessor
23869         for the children.
23870
23871         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
23872         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
23873         to get rid of gdkx.h include.
23874         
23875         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
23876         and random references to 'None'.
23877
23878         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
23879         Get rid of unused #include <gdk/gdkx.h>
23880
23881         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
23882         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
23883         gdkconfig.h.
23884
23885 1999-11-08  Tor Lillqvist  <tml@iki.fi>
23886
23887         * gdk/win32/gdkdraw.c
23888         * gdk/win32/gdkfont.c
23889         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
23890         following yesterday's changes. (Unrelated to Owen's reorg.)
23891
23892 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
23893
23894         * gdk/x11/gdkinput-gxi.c: Add missing include,
23895           fix GdkWindowPrivate => GdkDrawablePrivate.
23896
23897         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
23898
23899         * gdk/x11/Makefile.am (xinput_sources): Add missing
23900         backslash to fix building with --with-xinput=none
23901
23902 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
23903
23904         Move all X specific code into the x11/ directory.
23905         Aside from shuffling things around, did the following:
23906
23907        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
23908          gdk_arg_context_* - a simple argument parsing system
23909          in the style of popt.
23910
23911        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
23912          gdk/x11/gdkprivate-x11.h:
23913          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
23914          add ->klass and ->klass_data fields. The klass_data
23915          field points to an auxilliary structure that is
23916          windowing system dependent.
23917
23918        * gdk/gdkfont.c: Make most of the measurement functions
23919          simply wrappers around gdk_text_extents().
23920
23921        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
23922          _gdk_font_strlen() function that hides the weird
23923          behavior in gtk+-1.[02] where a string is interpreted
23924          differently for 8-bit and 16-bit fonts.
23925
23926        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
23927          to store common code for synthesizing double/triple
23928          press events.
23929         
23930        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
23931          Make all the function that modify an existing GC
23932          simply wrappers around gdk_gc_set_values().
23933          
23934        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
23935          for throwing out later.
23936
23937        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
23938          GdkImagePrivate and GdkColormapPrivate to have a
23939          windowing system dependent part (GdkFontPrivateX etc.)
23940          that "derives" from the system-independent part.
23941
23942        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
23943          Got rid of the included-source-files for XInput in
23944          favor of automake conditionals. (Which didn't exist
23945          when XInput support was originally added.)
23946
23947        * gdk/gdkrgb.c: Remove the visual id from the debugging
23948          statements since that is X11 specific; print out
23949          type/depth info instead.
23950          
23951
23952 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
23953
23954         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
23955         loading duplicates of hashed fonts.
23956
23957         * gdk/gdk.c (gdk_keysym_convert_case): rename
23958         gdk_XConvertCase to gdk_keysym_convert_case, allow
23959         results to be NULL in the GTK+ style.
23960
23961         * gdk/gdkcompat.h: Started compatibility header
23962         for renames.
23963
23964 1999-11-07  Tor Lillqvist  <tml@iki.fi>
23965
23966         * gdk/win32/gdkprivate.h: New font private structures, related to
23967         fontsets.
23968
23969         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
23970         gdk_font_list_free(). On X11, will just be wrappers to
23971         XListFonts() and XFreeFontNames(). On Win32, the code previously
23972         in gtkfontsel.c is now here.
23973
23974         New function gdk_font_xlfd_create(). On X11 will get the FONT
23975         property of the font (for GDK_FONT_FONTs), or call
23976         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
23977         builds a XLFD style name from the font information in the LOGFONT
23978         struct(s).
23979
23980         New function gdk_font_xlfd_free(), which correspondingly frees the
23981         string returned by gdk_font_xlfd_create().
23982
23983         Implement fontsets on Win32. Add a function that iterates over a
23984         wide char string and calls a callback function for each substring
23985         of wide chars from the same Unicode subrange (and thus probably
23986         available in the same real font).
23987
23988         Improve the XLFD emulation a bit.
23989
23990         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
23991
23992         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
23993         Beta3, WM_IME_CHAR messages don't seem to contain the composed
23994         multi-byte char as with the Active IMM on Win9x. Oh well, handle
23995         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
23996         ImmGetCompositionStringW() to get the composed Unicode chars.
23997
23998         * gdk/win32/gdkgc.c
23999         * gdk/win32/gdkdraw.c: Changes needed because of the font private
24000         struct changes.
24001
24002         * gdk/win32/gdk.def: Add the new functions.
24003
24004 1999-11-04  Tor Lillqvist  <tml@iki.fi>
24005
24006         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
24007         get the Platform SDK to get <dimm.h>.
24008
24009         * gdk/win32/gdkevents.c: More event handling fixes and
24010         simplification. Never generate motion events with is_hint true. We
24011         used to do that on bogus grounds earlier. Windows sends
24012         WM_MOUSEMOVE messages on button events even if the mouse hasn't
24013         moved, ignore these.
24014
24015         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
24016
24017         * gdk/win32/gdkglobals.c
24018         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
24019         the TrackMouseEvent function, and use it.
24020
24021         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
24022         char before calling WideCharToMultiByte in order to get a string
24023         for the window title.
24024
24025         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
24026
24027         * gdk/win32/gdk.def: Remove obsolete functions.
24028
24029         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
24030         /nodefaultlib and /defaultlib switches.
24031
24032         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
24033
24034 1999-10-31  Tor Lillqvist  <tml@iki.fi>
24035
24036         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
24037         EuroSign).
24038
24039         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
24040         same type as GdkWChar, especially on Win32.
24041
24042         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
24043
24044         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
24045         before passing to Windows GDI for drawing etc. Convert to the
24046         system default codepage before passing to Windows as window
24047         titles.
24048
24049         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
24050         support changing input locale on the fly.
24051
24052         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
24053         on-the-fly changes. Convert incoming characters from the current
24054         codepage to Unicode (and then to a UTF-8 multi-byte string) based
24055         on the current input language. Use keysym<->Unicode mapping tables
24056         and functions borrowed from xterm sources.
24057
24058         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
24059         editions of Win9x, use the ActiveX-based Active IMM (Input Method
24060         Manager) if available. IMEs and the Active IMM are available under
24061         the disguise of Chinese, Korean and Japanese support for IE and
24062         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
24063         support is present in all editions (as long as you install it).
24064
24065         Call DispatchMessage from gdk_events_queue() (and thus
24066         gdk_WindowProc()), instead of duplicating the code in
24067         gdk_WindowProc().
24068
24069         Reworked the grab handling and propagation code, factored out
24070         duplicated code snippets into separate functions. Other cleanups,
24071         too.
24072
24073         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
24074         the <dimm.h> header describing the Active IMM.
24075
24076         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
24077         just do the same as for "single" fonts.
24078
24079         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
24080         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
24081         the new keysyms from gdkkeysyms.h.
24082
24083         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
24084         fontset, so that gtkentry uses wide characters.
24085
24086         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
24087         GTk+'s system directory "gtk+", not "gtk".
24088
24089 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
24090
24091         * docs/gtkfaq.sgml: FAQ update
24092
24093 1999-10-21  Tor Lillqvist  <tml@iki.fi>
24094
24095         * gdk/win32/gdkprivate.h: Add more font private data.
24096
24097         * gdk/win32/gdkfont.c
24098         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
24099         fonts and strings. Now works much better. You still have to
24100         have a correct font selected, though. No fontset emulation yet.
24101
24102 1999-10-19  Tor Lillqvist  <tml@iki.fi>
24103
24104         * gtk/maketypes.awk: Use G_OS_WIN32.
24105
24106         * gtk/gtk.def: Add some missing entry points. Also some non-public
24107         ones, but PyGTK porter claims to need them.
24108
24109         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
24110         built-in type generation.
24111
24112 1999-10-14  Tor Lillqvist  <tml@iki.fi>
24113
24114         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
24115         GDK_FONT_FONT fonts (which is all we have for now, we don't
24116         emulate fontsets). The X11 version uses plain XDrawString in that
24117         case, too. The string passed to gdk_draw_text_wc seems to be in
24118         fact (at least, when used by gtkentry and gtktext) either in a
24119         single-byte charset, or a DBCS. Not Unicode.
24120
24121         This fixes the problem in gtkfontsel, where even if you had
24122         selected a font with a non-Latin1 charset (windows-greek, for
24123         instance), the preview still used Latin-1 glyphs.
24124
24125         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
24126         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
24127         (gdk_font_load): Recognize the demibold etc weights, even if we
24128         don't have the corresponding constants in the headers.
24129         (gdk_font_hash_insert): Use same hash mechanism as in the X11
24130         version. Should save font resources a bit, when we don't have
24131         multiple HFONTs for the same font.
24132
24133         * gdk/win32/gdkprivate.h: Add the names field as in the X11
24134         version.
24135
24136 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
24137
24138         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
24139         X values
24140
24141 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
24142
24143         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
24144         layout support (as mentioned on
24145         http://www.jcinteractive.com/gnome-ui/software/widgets/)
24146
24147 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
24148
24149         * gtk/fnmatch.c
24150         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
24151
24152 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
24153
24154         * configure.in (ALL_LINGUAS): Added Galician (gl)
24155
24156 1999-10-05  Tor Lillqvist  <tml@iki.fi>
24157
24158         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
24159
24160         * gdk/win32/gdkcompat.c: New file, actually provide an
24161         implementation for the deprecated functions. (Just temporarily.)
24162
24163         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
24164
24165         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
24166
24167         * gdk/win32/gdk.def gtk/gtk.def: Updates.
24168
24169 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
24170
24171         * configure.in: Added "uk" to ALL_LINGUAS.
24172         
24173 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
24174
24175         * configure.in: correct checking for BeOS check
24176
24177         * gdk/gdktypes.h
24178         * gtk/fnmatch.c
24179         * gtk/gtkfilesel.c
24180         * gtk/gtkitemfactory.c
24181         * gtk/gtkmain.[ch]
24182         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
24183
24184 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
24185
24186         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
24187         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
24188         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
24189         by Bulgarian). 
24190
24191 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
24192
24193         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
24194         Fix a reference to window_private->destroyed.   
24195
24196         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
24197         (ugly) setting of an internal GdkWindow member to use
24198         a _slightly_ cleaner macro.
24199
24200         * gdk/gdkprivate.h: Split GdkWindowPrivate into
24201         GdkDrawablePrivate and GdkWindowPrivate.
24202         Add extra macros for accessing GDK_DRAWABLE_ components.
24203
24204         * *.[ch]: Massive adjustments for the above, use the
24205         new macros in a lot of places.
24206
24207 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
24208
24209         * gdk/gdktypes.h: Make GdkDrawable the base type,
24210         not GdkWindow.
24211
24212 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
24213
24214         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
24215
24216 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
24217
24218         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
24219
24220 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
24221
24222         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
24223         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
24224
24225         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
24226
24227         * docs/gtk-config.1: Now autogenerated.
24228         * docs/Changes-1.4.txt: started
24229         
24230 1999-10-03  Tor Lillqvist  <tml@iki.fi>
24231
24232         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
24233         to #ifdef also here.
24234
24235         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
24236         Owen did to the X11 backend.
24237
24238         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
24239         ScrollWindowEx when blitting inside a window, it can't be correct
24240         in the general case.
24241
24242         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
24243         WM_GETMINMAXINFO is easier.
24244
24245         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
24246         depth equal to the bitspixel value, not the visual's depth.
24247
24248         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
24249         to 24 even if the bitspixel value is 32.
24250
24251         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
24252         need to check for depth==32 when bpp==32, depth will always be 24.
24253
24254 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
24255
24256         * docs/Changes-1.4.txt: Started
24257         
24258         * gtk/Makefile.am (gdk_headers): Include all the new headers.
24259
24260         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
24261         
24262         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
24263         into C file.
24264         
24265         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
24266         header to gdkinputprivate.h.
24267
24268         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
24269         unused since before 1.2.
24270
24271 1999-09-30  Tor Lillqvist  <tml@iki.fi>
24272
24273         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
24274         expand possible hex escapes in the font family (put there by
24275         logfont_to_xlfd if the font name isn't a legal XLFD font family,
24276         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
24277         On Win32, add hex escapes here, too.
24278
24279 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
24280
24281         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
24282         to #ifdef GDK_WINDOWING_X11.
24283
24284 [ Merges from gtk-1-2 ]
24285
24286 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
24287
24288         * configure.in: fixed "GNU Make" check to pass with new make version
24289         3.77.95.
24290
24291 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
24292
24293         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
24294         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
24295         AM_PATH_GTK() macros don't get confused by the -pre1.
24296
24297 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
24298
24299         * configure.in (REBUILD): Change check for perl5
24300           to check explicitely for v >= 5.002. (5.001
24301           does not work with our scripts.)
24302
24303 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
24304
24305         * configure.in: evaluate $PERL for the perl version check. added
24306         --disable-rebuilds to give the user an option to completely disable
24307         any source autogeneration rules.
24308
24309 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
24310
24311         * configure.in: evaluate $ac_make when checking for GNU Make.
24312
24313 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
24314
24315         * docs/Makefile.am: added generation.txt.
24316
24317         * Makefile.am: require automake 1.4, build README from README.in and
24318         INSTALL from INSTALL.in in dist-hook.
24319         
24320         * README.in:
24321         * INSTALL.in: new files to autogenerate README and INSTALL from.
24322
24323         * configure.in: figure whether we have GNU Make
24324
24325         * docs/generation.txt: minor additions/corrections.
24326
24327 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
24328
24329         * docs/gtkfaq.sgml: FAQ Update
24330
24331 July 30, 1999 Elliot Lee <sopwith@redhat.com>
24332         
24333         * configure.in: Fix autoconf warnings about cross compilation by
24334         trying to provide sane defaults for AC_TRY_RUN.
24335
24336 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
24337
24338         * ltconfig
24339         * ltmain.sh: upgrade to libtool 1.3.3
24340
24341 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
24342
24343         * INSTALL: Indicate that the --with-glib= configure
24344         time flag is unsupported.
24345
24346 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
24347
24348         * docs/generation.txt: Added a file that gives
24349         documenation about the autogeneration process for
24350         various autogenerated files.
24351         
24352 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
24353
24354         * configure.in (LIBS): Look for libgmodule in the
24355         right location.
24356
24357 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
24358
24359         * docs/gtk_tut.sgml: Removed references to
24360         code examples in my directory on gtk.org as
24361         they should all be in the tutorial now.
24362
24363         * docs/gtk_tut.sgml: Added sources for dial-test
24364         and scribble-xinput programs that were previously
24365         missing.
24366
24367 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
24368
24369         * TODO: Added entry about menu keyboard navigation, removed
24370         some finished items.
24371
24372 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
24373
24374         * acinclude.m4: Standardize on func_dgettext
24375         not func_gettext, so that the checks for dgettext
24376         actually are paid attention to.
24377
24378 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
24379
24380         * configure.in (LIBS): Add $INTLLIBS into $LIBS
24381         directly, rather than repeating the checks for
24382         gettext.
24383
24384         * INSTALL: Added information about gettext and
24385         NLS support.
24386
24387         * acinclude.m4 (LIBM): Check for dgettext, not
24388         just gettext. This should hopefully fix things wrt
24389         systems with old versions of GNU gettext installed.
24390
24391 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
24392
24393         * configure.in (LIBS): Look for libgmodule in the
24394         right location.
24395
24396 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
24397
24398         * autogen.sh: add --enable-maintainer-mode
24399
24400         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
24401
24402 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
24403
24404         * docs/gtk-config.1.in:
24405           docs/Makefile.am:
24406           configure.in: gtk-config is now generated.
24407
24408         * docs/gtk-config.1: Removed, now generated.
24409
24410 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
24411
24412         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
24413         handle CreateNotify itself, still put out a debuging message for
24414         --gdk-debug=events. made the ReparentNotify debugging message more
24415         verbose.
24416         wrap xcoords translation for ConfigureEvents into an error trap,
24417         a destroy event may already be pending, and in that case, the
24418         actuall coordinate values are not at all critical.
24419
24420 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
24421
24422         * gdk/gdkcc.c: Stop leaking the color_hash all over
24423         the place. Simplify and improve the logic.
24424
24425 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
24426
24427         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
24428         for prototypes and function implementations consistent (reported
24429         by Tomas Ogren).
24430
24431 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
24432
24433         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
24434         send_event set in debugging output.
24435         (gdk_compress_exposures): default initialize the event so we don't
24436         operate on bogus values (namely send_event).
24437
24438 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
24439
24440         * gdk/gdkwindow.c: When we receive an unexpected
24441         destroy notify on one of our windows, don't just
24442         warn about it, also mark our windows as destroyed.
24443
24444 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
24445
24446         * gdk/gdkfont.c (gdk_font_hash_insert): Add
24447           name => font and name => fontset hashes. The 
24448           name => fontset hash is a _big_ win since we
24449           weren't previously caching fontsets at all and loading
24450           fontsets is expensive. The name => font hash
24451           is less of a win, but it does save us from doing
24452           repeated XQueryFont calls on the same font.
24453
24454         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
24455           list so we can remove font/fontset from hash.
24456
24457 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
24458
24459         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
24460           and slightly confusing test. [ XInternAtom (,,TRUE)
24461           will never return None ].
24462
24463 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
24464
24465         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
24466           gdk/gdkwindow.c (gdk_window_set_hints):
24467
24468         Don't omit setting the properties if flags == 0 -
24469         there may be an existing set of properties there
24470         already. (Very old bug. Would it be better to
24471         delete the property instead?)
24472
24473         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
24474           spelling error in comment.
24475
24476 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
24477
24478         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
24479           to avoid stomping over gdk_error_warnings.
24480
24481         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
24482           as (bits_per_pixel + 7) / 8. This gives the same
24483           result as before for multiples of 8, but actually
24484           a "reasonable" value for 1bit or 4bit displays.
24485
24486 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
24487
24488         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
24489         GNU Make.
24490
24491 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
24492
24493         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
24494         discarding configure events.
24495
24496 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
24497
24498         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
24499         refcount is greater than zero.
24500
24501         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
24502
24503         * gdk/gdkfont.c (gdk_font_unref): Likewise.
24504
24505         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
24506
24507         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
24508
24509 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
24510
24511         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
24512         that format 32 => sizeof(item) == 4. It really is
24513         sizeof(long).
24514
24515 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
24516
24517         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
24518         core dump at all on X IO errors, only core dump
24519         if --enable-debug for X errors.
24520
24521 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
24522
24523         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
24524         unknown window:" message. disabled ConfigureNotify discarding code,
24525         because it led to events being processed out of order.
24526
24527 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
24528
24529         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
24530
24531         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
24532         we export this function, supress error warnings and don't reset the
24533         error code in the first half of this function.
24534
24535         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
24536         code (instead of just -1) so gdk_error_trap_pop() reveals something
24537         actually informative about the error that happened.
24538
24539         * gdk/*.c:
24540         don't rely on gdk_error_code being -1 if an error occoured, but just
24541         gdk_error_code != 0.
24542
24543 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
24544
24545         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
24546         pointer *before* invoking the filter function, so we at least don't
24547         crash if a filter is removed that is currently executed. window filters
24548         *really* need to be made truely reentrant at some point.
24549
24550 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
24551
24552         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
24553         PropertyNotify debug messages.
24554
24555 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
24556         
24557         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
24558         
24559         * gdk/gdkim.c: Fix cut-and-paste errors for 
24560         x/y and PreeditAttributes/StatusAttributes.
24561
24562 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
24563
24564         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
24565         G_MAXINT to 2^16 to alleviate overflow problems in
24566         various window managers.
24567
24568 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
24569
24570         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
24571         for fontsets.
24572
24573 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
24574
24575         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
24576         Initialize size_hints.x and size_hints.y because kwm
24577         brokenly pays attention to them.
24578         (Bug #1181 -  Lars Heete <hel@admin.de>)
24579
24580 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
24581
24582         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
24583         return value of gdk_list_visuals(). 
24584         (Bug #1193 - Morten Welinder <terra@diku.dk>)
24585
24586 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
24587
24588         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
24589         XSetIMValues to (void *) when comparing to NULL, to workaround
24590         the problem of some compilers barfing since older X headers don't
24591         have the prototype for it.
24592
24593 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
24594
24595         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
24596         for pseudocolor where colormap->colors was double
24597         allocated.
24598
24599         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
24600         color value in the hash table with the pixel filled
24601         in so when we do later hash table lookups, the color
24602         value is correct.
24603         
24604 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
24605
24606         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
24607         making the call
24608
24609 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
24610
24611         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
24612         pointed out by Morten Welinder <terra@diku.dk>.
24613
24614 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
24615
24616         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
24617           default filter from the list
24618
24619 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
24620
24621         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
24622           default filter from the list
24623
24624 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
24625
24626         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
24627
24628         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
24629         g_strdup_printf instead of calcing the length separately
24630
24631 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
24632
24633         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
24634         that we don't do in many other places. (Fixing duplicate 
24635         #include of config.h)
24636
24637         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
24638         Otherwise, #ifndef XINPUT_NONE check in the latter
24639         doesn't work. (Bug #546)
24640
24641 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
24642
24643         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
24644         "None" case insensitive.
24645
24646 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
24647
24648         * gdk/gdkselection.c: 
24649         Add error traps so if the other end of the connection
24650         dies, we survive.
24651
24652 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
24653
24654         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
24655         dest_xid field into two fields - one for the window
24656         to send in messages, one to indicate the last looked
24657         up window for caching purposes. This is needed, so
24658         that Leave messages get the correct window.
24659
24660 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
24661
24662         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
24663         Fix warning created by people mucking around
24664         with the gsource API.
24665
24666         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
24667         Change mapping between GIOCondition and GdkInputCondition
24668         to match the way the Linux kernel does it. This should
24669         fix problems where closed pipes were no longer signalling
24670         GDK_INPUT_READ on systems with a native poll().
24671
24672 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
24673
24674         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
24675         explicitly for the string "None" - it is in the XPM
24676         spec and some servers treat unknown colors in odd ways
24677         (like asking the user!)
24678
24679 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
24680
24681         * gdk/gdkevents.c: made "->" into a "." of previous change so
24682         it compiles
24683
24684 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
24685
24686         * gdk/gdkevents.c (gdk_compress_exposures): Set the
24687         window field of the event structure before calling
24688         user filters.
24689
24690 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
24691
24692         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
24693         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
24694
24695 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
24696
24697         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
24698         intermediate text property - prevents major memory
24699         leak when gdk_use_mb.
24700         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
24701
24702 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
24703
24704         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
24705         gtk-a-higuti-990322-[0-3]
24706
24707         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
24708         sizeof(wchar_t) != sizeof (GdkWChar)
24709
24710         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
24711         that was causing -DX_LOCALE not to work.
24712
24713         * gtk/gtkrc.c (gtk_rc_init):
24714         X_LOCALE will never have LC_MESSAGES defined
24715
24716         * gdk/gdk.c (gdk_init_check):
24717         Remove --xim-preedit and --xim-status from argv properly.
24718
24719         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
24720         that the client window is present on the X server
24721         before we pass it to the input method.
24722
24723 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
24724
24725         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
24726         if --display is specified on the command line, than
24727         the drag window will not be created on that display.
24728         
24729 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
24730
24731         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
24732         lookups with only_if_exists == TRUE were inserting
24733         bogus values into the atom cache.
24734
24735 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
24736
24737         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
24738         then reset it to NULL.
24739
24740         * gdk/gdkcolor.c:
24741         (gdk_colors_free): 
24742         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
24743         key for g_hash_table_remove() in both functions, this prevents us
24744         from accessing possibly uninitialized portions of a GdkColor structure
24745         where we are only interested in its pixel value.
24746
24747 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
24748
24749         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
24750         font hash table, if we have a GdkFontPrivate entry for this font
24751         already, simply increment its reference count, provided by Olaf Dietsche
24752         <olaf.dietsche+list.gtk@netcologne.de>.
24753
24754 1999-09-21  Tor Lillqvist  <tml@iki.fi>
24755
24756         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
24757         just to be sure.
24758
24759         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
24760         unused variables, leftovers from the X11 version.
24761
24762         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
24763
24764         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
24765         downcase fields on X11.
24766
24767 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
24768         
24769         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
24770         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
24771
24772 1999-09-17  Tor Lillqvist  <tml@iki.fi>
24773
24774         * gdk/win32/gdk.def: Add gdk_threads_mutex.
24775
24776         * gtk/makefile.msc: Correct path to libintl.
24777
24778         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
24779         use of gint vs. int, and gint vs. gboolean in headers and
24780         definitions. Use GtkType for the *_get_type functions. Note that
24781         these changes preserve binary compatibility.
24782
24783         * gdk/gdk.c
24784         * gdk/win32/gdk.c
24785         * gdk/gdk.h: Fix inconsistencies: gint vs int.
24786
24787         * gtk/gtkmain.c
24788         * gtk/gtkclist.c
24789         * gtk/gtkmenufactory.c
24790         * gtk/gtknotebook.c
24791         * gtk/gtkwidget.c: Fix inconsistencies, also gint
24792         vs. gboolean.
24793
24794         * gtk/gtkcolorsel.[ch]
24795         * gtk/gtkcombo.[ch]
24796         * gtk/gtkdrawingarea.[ch]
24797         * gtk/gtkgamma.[ch]
24798         * gtk/gtkhandlebox.[ch]
24799         * gtk/gtkhpaned.[ch]
24800         * gtk/gtkhruler.[ch]
24801         * gtk/gtkplug.[ch]
24802         * gtk/gtkpreview.[ch]
24803         * gtk/gtkruler.[ch]
24804         * gtk/gtksocket.[ch]
24805         * gtk/gtkstatusbar.[ch]
24806         * gtk/gtktoolbar.[ch]
24807         * gtk/gtkvbbox.[ch]
24808         * gtk/gtkvpaned.[ch]
24809         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
24810         functions.
24811
24812         * gtk/gtkgamma.h: Fix bug, missing () in call of
24813         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
24814
24815 1999-09-14  Tor Lillqvist  <tml@iki.fi>
24816
24817         * gdk/gdkcolor.c (gdk_colormap_new)
24818         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
24819         colormap->colors was allocated twice.
24820
24821         * gdk/win32/gdk.c: Remove some unused stuff.
24822
24823         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
24824         colormap.
24825
24826         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
24827         * gtk/gtklabel.h (gtk_label_get_type)
24828         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
24829         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
24830         in a couple of places, not guint.
24831
24832 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
24833
24834         * configure.in,po/et.po: added Estonian language file
24835
24836 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
24837
24838         * configure.in,po/da.po: added Danish file
24839
24840 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
24841
24842         * docs/gtkfaq.sgml: Minor FAQ Update
24843
24844 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
24845
24846         * docs/gtkfaq.sgml: FAQ update
24847
24848 1999-08-27  Tor Lillqvist  <tml@iki.fi>
24849
24850         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
24851         way to get window contents continually refreshed while resizing. I
24852         didn't like the effects myself, so it's not on by default.
24853
24854         * gdk/win32/gdkprivate.h: New flag variable
24855         gdk_event_func_from_window_proc, FALSE by default.
24856
24857         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
24858         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
24859         are passed --gdk-event-func-from-window-proc.
24860
24861         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
24862         and we have am event_func, call it instead of enqueing the event.
24863
24864 1999-08-23  Tor Lillqvist  <tml@iki.fi>
24865
24866         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
24867         Kelley: Set expose_count in GdkEventExposes correctly.
24868
24869         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
24870         MULTIPLE_WINDOW_CLASSES).
24871
24872         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
24873         for bug in NT, apparently NT *does* draw the end pixel, too, in
24874         LineTo with a one-pixel pen, so we don't have to do it ourselves.
24875
24876 1999-08-21  Tor Lillqvist  <tml@iki.fi>
24877
24878         Improvements by Hans Breuer: 
24879
24880         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
24881
24882         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
24883         CS_?REDRAW flags as they cause lots of (late) redraws when "show
24884         window contents while dragging" is turned on. Allocate at least
24885         one unique class for every GdkWindowType. If support for single
24886         window-specific icons is ever needed (eg. Dialog specific), every
24887         such window should get its own class.
24888
24889 1999-08-19  Tor Lillqvist  <tml@iki.fi>
24890
24891         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
24892         error that caused crashes.
24893
24894 1999-08-17  Tor Lillqvist  <tml@iki.fi>
24895
24896         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
24897         window, use ScrollWindowEx, and call UpdateWindow. This prevents
24898         bugs when for instance part of the window was outside the
24899         display. Thanks to Philippe Colantoni for finding and fixing this.
24900
24901 1999-08-16  Tor Lillqvist  <tml@iki.fi>
24902
24903         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
24904         endpoint calculations which were totally wrong. (A little RTFMing
24905         helps a lot ;-)
24906
24907         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
24908         from a separate directory, not from gettext, because of licensing
24909         issues (we want to use the LGPL version).
24910
24911         * README.win32: Mention the intl from glibc vs from gettext issue.
24912
24913 1999-08-13  Tor Lillqvist  <tml@iki.fi>
24914
24915         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
24916         in the key event handling: Now AltGr chars work again. Also,
24917         now Alt-digits are passed up as well as Control-digits.
24918         Pass keypad plus and minus as normal plus and minus.
24919
24920 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
24921
24922         * docs/gtkfaq.sgml: FAQ Update
24923
24924 1999-07-25  Tor Lillqvist  <tml@iki.fi>
24925
24926         * README.win32
24927         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
24928         the Wintab SDK.
24929
24930         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
24931         OK, but getting closer. Guard against bogus tilt data from Wacom
24932         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
24933         enable easier building without Wintab.
24934
24935         * gdk/win32/gdkinput.h
24936         * gdk/win32/gdkevents.c 
24937         * gdk/win32/gdkwindow.c: Minor changes related related to above.
24938         
24939         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
24940         code. As we have just one visual on Win32, no sense to have it in a
24941         table, and no need for the hash table.
24942
24943         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
24944         better on white background.
24945
24946 1999-07-21  Tor Lillqvist  <tml@iki.fi>
24947
24948         * README.win32: Update gcc build instructions. Mention gettext is
24949         GPL.
24950
24951         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
24952         supported cursor size with GetSystemMetrics.
24953
24954         * gdk/win32/gdkfont.c
24955         * gtk/gtkfontsel.c: Guard against some font weight and charset
24956         symbols being undefined (in mingw32 headers).
24957
24958         * gdk/win32/makefile.cygwin
24959         * gtk/makefile.cygwin
24960         * gtk/gtkthemes.c: No longer need to have differently named
24961         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
24962
24963 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
24964
24965         * docs/gtkfaq.sgml: Long awaited FAQ update.
24966
24967 1999-07-15  Tor Lillqvist  <tml@iki.fi>
24968
24969         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
24970         it. Obscure bit manipulation needed.
24971
24972         * gdk/win32/gdkevents.c: Logging.
24973         
24974         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
24975         style (file name include compiler name) for theme engines.
24976
24977 1999-07-13  Tor Lillqvist  <tml@iki.fi>
24978
24979         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
24980
24981         * gdk/win32/gdkevents.c: Fix long-standing bug in key
24982         events. The key.string wasn't zero-terminated, still we strdup'ed
24983         it in gdk_event_copy(). Synthesize crossing events for button
24984         events before possible propagation.
24985
24986         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
24987
24988         * gdk/win32/makefile.cygwin
24989         * gtk/makefile.cygwin: Use new DLL naming style for the
24990         GCC-compiled ones.
24991
24992         * gdk/win32/makefile.msc
24993         * gtk/makefile.msc: Cosmetics mostly.
24994
24995         * gtk/gtk.def: Add missing entry points.
24996
24997         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
24998
24999 1999-07-09  Tor Lillqvist  <tml@iki.fi>
25000
25001         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
25002         or height is zero. Don't print a warning if Pie or Arc fails, they
25003         always fail (?) for very narrow ellipses.
25004
25005         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
25006         the part or the destination window corresponding to source area
25007         outside of the source drawable's boundary.
25008
25009         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
25010         anything if less than two points.
25011
25012         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
25013         return NULL. Gtk cut-and-paste inside a single program works
25014         better this way. (It always gets the clipboard contents from
25015         Windows, not from its own copy, which is cleared anyway. I can't
25016         say I fully understand what happens... Emulating the X selection
25017         and property stuff is a bit of a mess.)
25018
25019         * gdk/win32/gdkevents.c
25020         * gdk/win32/gdkproperty.c: A bit more verbose logging.
25021
25022         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
25023         that never got deleted). Revamp gdk_region_shrink.
25024
25025         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
25026         after use.
25027
25028         * gtk/gtk.def: Add some missing entry points.
25029
25030         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
25031         component.
25032
25033 1999-07-04  Tor Lillqvist  <tml@iki.fi>
25034
25035         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
25036         Control-digits specially.
25037
25038 1999-07-03  Tor Lillqvist  <tml@iki.fi>
25039
25040         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
25041
25042 1999-06-28  Tor Lillqvist  <tml@iki.fi>
25043
25044         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
25045         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
25046         finding this.)
25047
25048 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
25049
25050         * gtk+.spec.in: Corrected some typos in files section.
25051         
25052 1999-06-15  Tor Lillqvist  <tml@iki.fi>
25053
25054         * README.win32: Mention using GNU gettext.
25055         * config.h.win32: Enable NLS stuff.
25056         * gtk/makefile.msc: Use GNU gettext.
25057         * gdk/win32/gdkdnd.c: Minor header reorg.
25058         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
25059         cosmetics.
25060         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
25061         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
25062
25063 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
25064
25065         * acinclude.m4
25066         * config.guess
25067         * config.status
25068         * ltconfig
25069         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
25070
25071 1999-05-30  Tor Lillqvist  <tml@iki.fi>
25072
25073         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
25074         SafeAdjustWindowRectEx. Don't override all calls to
25075         AdjustWindowRectEx by it, but use it only in two places: When
25076         creating a new top-level window and when moving a top-level
25077         window.
25078
25079         Use screen coordinate rectangle, not client rectangle, in
25080         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
25081         when we try to place a window so that the decoration (mainly,
25082         title bar) isn't visible.
25083
25084         These changes fix the bug that showed up for instance as the
25085         GIMP's saved top-level windows moving right and down (by an amount
25086         equal to the window decoration) for each session. This bug showed
25087         up also in testgtk's "Saved Position".
25088
25089         gdk_window_resize also redone a bit.
25090
25091 1999-05-25  Tor Lillqvist  <tml@iki.fi>
25092
25093         * gtk/testgtkrc: Add (commented out) Windows-style theme
25094         include line.
25095
25096         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
25097
25098 1999-05-18  Tor Lillqvist  <tml@iki.fi>
25099
25100         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
25101         gdkx.h to a gdk subdirectory, so that applications can include
25102         these with <gdk/*.h> without trouble.
25103
25104         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
25105         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
25106         have their bitmap destroyed.
25107
25108         * gdk/win32/gdk.def: Add gdk_root_parent.
25109
25110 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
25111
25112         * configure.in
25113           gtk-config.in
25114           ltconfig
25115           ltmain.sh     
25116           gtk/Makefile.am: changes to compile nicely (with xlib) 
25117           on BeOS
25118
25119 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
25120
25121         * acinclude.m4
25122         * config.guess
25123         * config.sub
25124         * ltconfig
25125         * ltmain.sh: upgrade to libtool 1.3
25126
25127 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
25128
25129         * gtk/gtkclist.c:
25130         * gtk/gtkctree.c: merges from gtk-1-2
25131
25132 1999-04-25  Tor Lillqvist  <tml@iki.fi>
25133
25134         Support added for building using a GNU toolchain on Win32,
25135         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
25136
25137         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
25138         * config.h.win32: Changes for gcc.
25139         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
25140         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
25141         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
25142         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
25143         Protect shl stuff unavaiilable with mingw32 headers.
25144         * gdk/win32/gdkevents.c: Fix typo.
25145         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
25146         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
25147         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
25148         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
25149         the mingw32 headers.
25150         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
25151         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
25152         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
25153         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
25154         Test for NATIVE_WIN32, not _MSC_VER.
25155         * gtk/gtkmain.c: No use warning about developer version on Win32,
25156         there aren't any non-developer versions anyhow.
25157         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
25158         * gtk/makefile.msc: Use pthread from another directory. Minor other
25159         changes. 
25160
25161 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
25162
25163         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
25164           default filter from the list
25165
25166 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
25167
25168         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
25169          when gtk_widget_grab_default() is called for a widget that
25170          is not within a GtkWindow.
25171
25172 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
25173
25174         * docs/gtk_tut.sgml, examples/clist.c: use a
25175           scrolled window in the clist example. Minor
25176           tutorial fixes.
25177
25178 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
25179
25180         * docs/gtk_tut.sgml: Style check from David King
25181           <dking@youvegotmail.net>
25182
25183 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
25184
25185         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
25186         compile with unknown value of GDK_WINDOWING
25187
25188 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
25189
25190         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
25191         after the rule is fired.
25192         (install-exec-local): Install gdkconfig.h only if the contents are
25193         different from the currently installed gdkconfig.h.
25194
25195 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
25196
25197         * gdk/Makefile.am (configexecincludedir): Rename from 
25198         configincludedir so that gdkconfig.h will be installed 
25199         as part of `make install-exec'. 
25200
25201 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
25202
25203         * acinclude.m4
25204         * config.guess
25205         * config.sub
25206         * ltconfig
25207         * ltmain.sh: upgrade to libtool 1.2f
25208
25209         * autogen.sh: libtool is not required to autogen gtk+
25210
25211         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
25212         needed)
25213
25214 1999-03-18  Tor Lillqvist  <tml@iki.fi>
25215
25216         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
25217         declaring gdk variables exported/imported from the DLL. New image
25218         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
25219         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
25220         GDK_DRAG_PROTO_OLE2.
25221
25222         * gdk/gdk.h: Merge in Win32 version: Two new functions,
25223         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
25224         declared only for the Win32 version, but could be in the X11
25225         version as well. (Needed for a Xlib-less gdk_imlib.)
25226         gdk_color_hash should have only one parameter. Declare
25227         gdk_threads_mutex with GDKVAR.
25228         
25229         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
25230         just one parameter.
25231
25232         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
25233         per pixel, not bits.
25234
25235         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
25236         Fetch bpp (which means bits-per-pixel here) from another place on
25237         Win32. Accept also depth==32 (which we might get on Win32) with
25238         bpp==32.
25239
25240         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
25241         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
25242         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
25243         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
25244         in the backend-dependent directory, not in the common gdk
25245         directory.
25246
25247         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
25248         headers.
25249
25250 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
25251
25252         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
25253         want to use the Gtk+ devel version (which is true, and yes - even i am
25254         currently working with the 1.2.x branch). so everyone reading this, you
25255         probably want to issue
25256         cvs checkout -r glib-1-2 glib
25257         and
25258         cvs checkout -r gtk-1-2 gtk+
25259         as your next two comands.
25260
25261 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
25262
25263         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
25264         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
25265
25266         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
25267         file. strongly deprecated the GTK_HAVE_* macros, we provide
25268         GTK_CHECK_VERSION() for people that need to check for certain
25269         Gtk+ versions.
25270
25271         * gtk/gtkcompat.h: removed this from CVS.
25272         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
25273         idea right from the start, it just didn't seem like that back then.
25274
25275 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
25276
25277         * merges from gtk-1-2:
25278
25279 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
25280
25281         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
25282         item factory class has been created.
25283         (gtk_item_factory_parse_rc): likewise.
25284
25285         * gtk/gtkmenu.c:
25286         keep proper references for old_active_menu_item.
25287         (gtk_menu_reparent): unset the usize of the new parent,
25288         so the menu can sanely be size requested and we don't get nasty screen
25289         artefacts upon next reparentation.
25290         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
25291         enter notify. only synthesize enter notifies if the pointer really is
25292         inside the event window.
25293         (gtk_menu_popdown): use gtk_menu_shell_deselect().
25294         (gtk_menu_popup): move the background setting stuff into
25295         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
25296
25297         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
25298         gtk_menu_shell_select_item() to select the new item.
25299         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
25300         do the right thing for deselection as well.
25301
25302 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
25303
25304         * gtk/gtkwidget.[hc]:
25305         (gtk_widget_accelerators_locked): return whether a widget's accelerators
25306         are locked.
25307
25308         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
25309         existing accelerators if the widget's accelerators are locked.
25310
25311 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
25312
25313         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
25314
25315         * gtk/gtkmenu.c: truely forward key press and key release events to
25316         the menu widget from the toplevel or tearoff window. we can't simply
25317         connect to that, we need to stop further processing of the events as
25318         well.
25319
25320 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
25321
25322         * gtk/gtkmenu.c:
25323         (gtk_menu_key_press): pass event->keyval, event->state to
25324         gtk_accelerator_valid, instead of event->keyval twice.
25325         refuse to install single letter accelerators for menus that use
25326         single letter shortcuts.
25327
25328         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
25329         gtk_menu_ensure_uline_accel_group().
25330
25331         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
25332         which will always return an uline accel group, made
25333         gtk_menu_get_uline_accel_group() return NULL if the group isn't
25334         yet created.
25335
25336 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
25337
25338         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
25339
25340         * gtk/gtkclist.c (gtk_clist_column_title_passive):
25341         Leave button sensitive, trap  button_press, button_release,
25342         motion_notify, enter_notify and leave_notify events instead.
25343         (gtk_clist_column_title_active): disconnect event handler.
25344         (gtk_clist_drag_data_get): fixed memory leak. Reported by
25345         Guillaume Laurent <glaurent@worldnet.fr>
25346
25347 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
25348
25349         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
25350         width/height mixups.
25351
25352         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
25353         if needed.
25354
25355 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
25356
25357         * gtk/testgtk.c (create_item_factory): unref the item factory after
25358         window's destruction.
25359
25360         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
25361         count on the menu shell around the menu item's activation, since the
25362         signal emission may cause menu shell destruction.
25363
25364         * gtk/gtkitemfactory.c:
25365         the previous code leaked one accel group per menu. we use
25366         gtk_menu_get_uline_accel_group() now to fix that, and with that
25367         also create the underline accelerator group of the menus only if
25368         required (i.e. an underline accelerator has been specified).
25369         (gtk_item_factory_construct):
25370         (gtk_item_factory_create_item): removed code that would create an
25371         extra accel group for the menu (and leak references).
25372         (gtk_item_factory_create_item): adapted the underline accelerator
25373         installation code to properly feature gtk_menu_get_uline_accel_group().
25374
25375         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
25376         menu->accel_group, this may return NULL if the accelerator group
25377         hasn't been set yet.
25378         added gtk_menu_get_uline_accel_group() to retrive the underline
25379         accelerator group of the menu, this will be created on demand
25380         and proper care is taken about its reference count.
25381
25382         * gtk/gtkitemfactory.h:
25383         * gtk/gtkitemfactory.c:
25384         dumped the approach of keeping a widgets by action list on the
25385         factory since the factory<->widget destroy negotiation didn't work
25386         and would be hard to get going at all. instead we keep a list of
25387         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
25388         persistant throughout a program's life time).
25389         also, i removed the static const gchar *key_* variables, and made
25390         them inline strings (they weren't actually used anyways).
25391         (gtk_item_factory_add_item): update ifactory->items.
25392         (gtk_item_factory_destroy): destroy ifactory->items (and remove
25393         the item factory pointer from the remaining ifactory widgets).
25394         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
25395         list to find the widget.
25396         (gtk_item_factory_get_item): new function that works around
25397         gtk_item_factory_get_widget() limitations, this function will only
25398         return menu items, even for <Branch> entries.
25399
25400 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
25401
25402         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
25403         font hash table, if we have a GdkFontPrivate entry for this font
25404         already, simply increment its reference count, provided by Olaf Dietsche
25405         <olaf.dietsche+list.gtk@netcologne.de>.
25406
25407         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
25408         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
25409
25410 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
25411
25412         * gtk/gtkcontainer.c:
25413         (gtk_container_add_with_args):
25414         (gtk_container_addv):
25415         (gtk_container_add): before adding a child to a conatiner, make sure
25416         it is (default) constructed, this is neccessary because under certain
25417         circumstances the child will get relized and mapped immediatedly, in
25418         which case it has to be constructed already.
25419
25420 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
25421
25422         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
25423         values > 1 as TRUE also.
25424
25425 1999-03-16  Tor Lillqvist  <tml@iki.fi>
25426
25427         * README.win32: New file.
25428                 
25429         * configure.in: Check for lstat.
25430
25431         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
25432         completeness.
25433
25434         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
25435
25436         * gtk/gtk.def: Removed CRs.
25437
25438         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
25439         ..\gdk\win32).
25440
25441         * gdk/win32/makefile.msc: Correct upwards relative paths.
25442         
25443 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
25444
25445         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
25446           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
25447           it was connecting a void function to expose_event and the int
25448           returning function to the draw signal
25449
25450 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
25451
25452         * configure.in:
25453         Use correct path to libgmodule.la when ref'ing uninstalled copy
25454         of glib.  (Already in stable branch, Bug #417)
25455
25456 1999-03-15  Tor Lillqvist  <tml@iki.fi>
25457
25458         Win32 merge and general portability stuff:
25459                 
25460         * acconfig.h,configure.in: Check for <sys/time.h>.
25461
25462         * gdk/win32: New directory (actually, been there for a while).
25463         
25464         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
25465         NATIVE_WIN32, and use these. Always case fold on Win32. No
25466         backslashed escapes on native Win32.
25467
25468         * gtk/{gtk.def,makefile.msc}: New files.
25469
25470         * gtk/Makefile.am: Add above new files.
25471         
25472         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
25473         instead of <strings.h>.
25474
25475         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
25476         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
25477         <unistd.h> appropriately.
25478
25479         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
25480         Use ABS() (from <glib.h>) instead of abs().
25481         
25482         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
25483         of gtk (and thus glib) headers, so that WIN32 will be
25484         defined. With MS C, include <direct.h> for mkdir prototype.
25485
25486         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
25487         some casts, needed by MS C.
25488
25489         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
25490         implemented).
25491
25492         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
25493         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
25494         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
25495
25496         * gtk/gtkmain.h: Mark variables for export/import on Win32.
25497                 
25498         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
25499         the event is not a hint, or its window is not the slider. Needed
25500         on Win32, at least.
25501
25502         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
25503         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
25504         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
25505         a subdirectory of the Windows directory as gtk system
25506         configuration directory.
25507
25508         * gtk/gtkselection.c: No chunks on Win32.
25509
25510         * gtk/gtksocket.c: Not implemented on Win32.
25511
25512         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
25513
25514         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
25515
25516         * gtk/maketypes.awk: Declare variables with a macro that expands to
25517         necessary export/import magic in the case of Win32.
25518                 
25519         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
25520
25521 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
25522
25523         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
25524         since those were meant only for gdki18n.h.  
25525         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
25526         for widechar tests.
25527         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
25528
25529 1999-03-13  Tor Lillqvist  <tml@iki.fi>
25530
25531         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
25532         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
25533
25534         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
25535         installed) to CFLAGS.
25536
25537         * gdk/Makefile.am: Add rules for gdkconfig.h.
25538
25539         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
25540         APIs.
25541
25542         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
25543         gdkx.h anyway when compiling for X11.
25544         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
25545         general): Merge in Win32 version.
25546         
25547         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
25548         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
25549         expansion (if we don't have HAVE_PWD_H), allow for drive
25550         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
25551         included code from Craig Setera's port to Win32 (the one that uses
25552         X11, and the cygwin dll), even if it probably will be abandoned.
25553
25554         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
25555         the user entered one herself.  This way one can complete *.h and
25556         don't get matches on any .help files, for instance.
25557         
25558 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
25559
25560         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
25561         font hash table, if we have a GdkFontPrivate entry for this font
25562         already, simply increment its reference count, provided by Olaf Dietsche
25563         <olaf.dietsche+list.gtk@netcologne.de>.
25564
25565         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
25566         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
25567
25568 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
25569
25570         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
25571         the number of calls to gdk_draw_point() (and thus to X) by
25572         clipping the points by hand.
25573
25574         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
25575         the clip parameter.
25576         (gtk_handle_box_paint): Only paint the handle if the expose area
25577         intersects it.
25578
25579 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
25580
25581         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
25582
25583 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
25584
25585         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
25586         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
25587
25588 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
25589
25590         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
25591          textmode (O_TEXT) for OS/2 version.
25592
25593 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
25594
25595         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
25596         GtkSpinButton, "input" and "output", to make the output more flexible.
25597         The user has to provide a mapping between adjustment->value and the
25598         output string (and vice versa, if the spin button is editable). 
25599         See testgtk for examples.
25600
25601 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
25602
25603         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
25604         new one.
25605         
25606         * configure.in: set gtk+ version to 1.3.0.
25607
25608         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog,