]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-8
Add ability to override the focus chain for a container explicitly
[~andy/gtk] / ChangeLog.pre-2-8
1 2001-03-22  Havoc Pennington  <hp@redhat.com>
2
3         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
4         (gtk_container_unset_focus_chain): Add ability to override the 
5         focus chain for a container explicitly
6
7 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
8
9         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
10         added PROP_MNEMONIC_WIDGET.
11
12         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
13         (gtk_window_remove_mnemonic): 
14         (gtk_window_add_mnemonic): fixed assertions.
15         (gtk_window_activate_mnemonic): constrain modifier checks to those
16         permitted by gtk_accelerator_get_default_mod_mask().
17         got rid of gtk_window_get_default_accel_group().
18
19         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
20         activatable widgets either by focussing or a warning.
21         added a signal accumulator to ::activate_mnemonic which stops the
22         emission once a handler returned TRUE.
23
24 2001-03-22  Havoc Pennington  <hp@pobox.com>
25
26         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
27         the stock item label
28
29         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
30
31         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
32
33         * demos/gtk-demo/*.c: Add mnemonics all over the place
34
35         * gtk/gtklabel.h: mark parse_uline deprecated
36
37 2001-03-21  Alexander Larsson  <alexl@redhat.com>
38
39         * gtk/gtkitemfactory.[ch]:
40         Add support for stock and normal imagemenuitems.
41         
42         * gtk/testgtk.c:
43         Add some tests for mnemonics, stock toolbars, stock
44         and image menuitems in itemfactory and gdk_window_scroll.
45
46 2001-03-21  Alexander Larsson  <alexl@redhat.com>
47
48         * gtk/gtkbutton.[ch]:
49         * gtk/gtkdialog.c:
50         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
51         removed accel_group argument. Renamed gtk_button_new_accel() to
52         gtk_button_new_with_mnemonic() and removed accel_group argument.
53
54         * gtk/gtkcheckbutton.[ch]:
55         New function gtk_check_button_new_with_mnemonic().
56
57         * gtk/gtkentry.c:
58         Override activate_mnemonic and just grab focus.
59
60         * gtk/gtkitemfactory.c:
61         Don't add menu uline accel group, instead use mnemonics support.
62
63         * gtk/gtklabel.[ch]:
64         New support for mnemonics.
65
66         * gtk/gtkmarshal.list:
67         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
68
69         * gtk/gtkmenu.[c]:
70         * gtkmenushell.c:
71         Use mnemonics instead of accel groups for uline
72         support in menu items.
73         Removed gtk_menu_get_uline_accel_group() and
74         gtk_menu_ensure_uline_accel_group().
75
76         * gtk/gtkmenuitem.c:
77         Override activate_mnemonic to handle switching between
78         menu items if there are collisions.
79         
80         * gtk/gtknotebook.c:
81         Connect to activate_mnemonic on the tab_label, so that
82         activating it switches to that notebook page.
83
84         * gtk/gtkwidget.[ch]:
85         Add activate_mnemonic signal. New function
86         gtk_widget_activate_mnemonic() to emit it.
87         Default implementation does activate/grab_focus.
88
89         * gtk/gtkwindow.[ch]:
90         Add support for mnemonics in windows.
91         New functions:
92         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
93         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
94
95         * gtk/testgtk.c:
96         Update to function name changes.
97         
98 2001-03-21  Alexander Larsson  <alexl@redhat.com>
99
100         * gtk/gtkimagemenuitem.[c]:
101         Add gtk_image_menu_item_new_from_stock()
102
103 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@webwynk.net>
104
105         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
106         Fix buglet in meeting.
107
108 2001-03-19  Havoc Pennington  <hp@redhat.com>
109
110         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
111         add a bunch of accessor functions. This is because we have
112         reasonable expectations of extending what fields it contains in
113         the future.
114
115         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
116         changes
117
118         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
119         GtkIconSource   
120
121 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
122
123         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
124         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
125
126         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
127           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
128           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
129           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
130         Change float to double everywhere with the exception of 0<->1.0 alignment
131         and GtkCurve.
132
133 2001-03-19  Tor Lillqvist  <tml@iki.fi>
134
135         * gdk/win32/gdkdrawable-win32.c
136         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
137         output.
138
139         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
140         gdkwin32.h.
141
142 2001-03-18  Tor Lillqvist  <tml@iki.fi>
143
144         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
145         print_event_state, print_event): Use preprocessor macro to make
146         code more compact. Print also GDK_WINDOW_STATE events.
147         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
148         
149         * gtk/gtk.def
150         * gtk/makefile.mingw.in: Update.
151
152         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
153         to catch also Cygwin.
154
155 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
156
157         * gtk/gtkspinbutton.[hc]: added rc-style argument
158         GtkSpinButton::shadow_type.
159         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
160         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
161         rc-style settings.
162
163         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
164
165         * gtk/gtkwidget.c: quark cleanups.
166
167         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
168         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
169         to create_rc_style() (we don't do cloning in standard OO sense).
170         added per rc style properties.
171         
172         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
173         property values and for caching those. some cleanups.
174         
175         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
176         
177         * gtk/gtksettings.[hc]: new file for global rc-file properties
178         (at least currently, should get extended to support X properties
179         and other communication mechanisms).
180         
181         * gtk/gtkwidget.[hc]: added style property support:
182         (gtk_widget_class_install_style_property_parser): install style
183         property pspec with parser function for rc-file values other
184         than LONG, DOUBLE or STRING.
185         (gtk_widget_class_install_style_property): same as above without
186         parser (parsers are going to be needed quite infrequently).
187         (gtk_widget_style_get_property): retrive style property value.
188         (gtk_widget_style_get_valist): same as above with varargs support,
189         has NOCOPY semantics.
190         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
191
192 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
193
194         * demos/gtk-demo/main.c (row_activated_cb): modified to use
195         "row_activated" signal.
196
197         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
198         stupidity.  Lets actually pass in the row with this signal...
199
200 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
201
202         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
203
204         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
205
206         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
207         everything into the ::destroy function, and freed a lot more.
208
209 2001-03-16  Havoc Pennington  <hp@redhat.com>
210
211         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
212         instead of gint16, to avoid overflow issues, since sizes > 16-bit
213         are now allowed.
214
215 2001-03-16  Havoc Pennington  <hp@redhat.com>
216
217         * Applied patch from Nils Barth (bug # 51041) to 
218         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
219         in various places.
220
221 2001-03-15  Havoc Pennington  <hp@redhat.com>
222         
223         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
224         for properties to set on the tag.
225
226         * gtk/testtext.c: fixups to reflect create_tag change
227         
228         * gtk/gtktexttag.c (gtk_text_tag_set_property):
229         background/foreground stipple are objects, not boxed.
230
231         * demos/gtk-demo/textview.c: intellihancing
232
233 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
234
235         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
236         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
237
238 2001-03-16  Alexander Larsson  <alexl@redhat.com>
239
240         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
241         Fix sign error with queued region translations.
242
243 2001-03-15  HideToshi Tajima  <tajima@happy>
244
245         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
246         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
247         * gtk/gtkentry.c (update_im_cursor_location): 
248         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
249         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
250         set_cursor_pos to set_cursor_location in GtkInputContext class
251
252 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
253
254         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
255         the location of the cell relative to its area.
256         * gtk/gtkcell*: modified for above change
257         * gtk/gtktreeview.c: modified for above change.
258
259 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
260
261         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
262          (gtk_tree_view_finalize): actually unref the model.  Thanks to
263         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
264
265 2001-03-14  Havoc Pennington  <hp@redhat.com>
266
267         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
268         
269         * gtk/gtk.h: remove gtkdata.h
270
271         * gtk/Makefile.am: remove gtkdata
272         
273         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
274         not "disconnect" on the adjustments.
275         
276         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
277         GtkData
278
279         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
280         not GtkData
281
282         * configure.in: handle case where X render exists, but Pango lacks
283         Xft support.
284
285 2001-03-15 Alexander Larsson  <alexl@redhat.com>
286
287         * gtk/gtktoolbar.[ch]:
288         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
289         to add stock items to toolbars.
290
291         * gtk/Makefile.am:
292         Remove ../gdk/gdkim.h from gdk_headers.
293
294 2001-03-15  Sven Neumann  <sven@gimp.org>
295
296         * gdk/gdkim.h: removed
297         
298         * gdk/gdkprivate.h
299         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
300
301 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
302
303         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
304         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
305         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
306         set_cursor_pos() virtual method
307
308         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
309         (gtk_im_context_xim_set_cursor_pos): add implementation for
310         set_cursor_pos() method
311
312         * gtk/gtkentry.c (recompute_idle_func): set current cursor
313         position to input methods
314
315 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
316
317         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
318         code a lot.
319
320         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
321         g_mem_chunk.
322         (_gtk_tree_data_list_alloc): use g_mem_chunk.
323         (_gtk_tree_data_list_node_to_value): Fix to switch on
324         G_TYPE_FUNDAMENTAL.
325         (_gtk_tree_data_list_value_to_node): Fix to switch on
326         G_TYPE_FUNDAMENTAL.
327         (_gtk_tree_data_list_node_copy): Fix to switch on
328         G_TYPE_FUNDAMENTAL.
329
330 2001-03-12  Havoc Pennington  <hp@redhat.com>
331
332         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
333         to convert to new property API. Also, change default_width and
334         default_height get_property to return 0 as the flag value for
335         "unset"; -1 is not a valid value for these fields.
336
337 2001-03-12  Havoc Pennington  <hp@redhat.com>
338
339         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
340         enum with registration for icon sizes, instead of strings.
341
342         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
343         gtkwidget.c: Fix to reflect GtkIconSize
344         
345 2001-03-12  Alexander Larsson  <alexl@redhat.com>
346
347         Make GtkFB compile and link.
348         
349         * gdk/linux-fb/gdkdrawable-fb2.c:
350         window->mapped to GDK_WINDOW_IS_MAPPED(). 
351         
352         * gdk/linux-fb/gdkwindow-fb.c:
353         window->mapped to GDK_WINDOW_IS_MAPPED(). 
354         Added gdk_window_shape_combine_region.
355         Added assorted placeholders for unimplemented new GdkWindow API calls.
356
357 2001-03-12  Alexander Larsson  <alexl@redhat.com>
358
359         * gtk/gtkfilesel.c:
360         Add more test when converting filenames from/to utf-8.
361         Don't allow entering text in the filename entry which isn't allowed in
362         a filename. Just beep instead.
363
364 2001-03-12  Alexander Larsson  <alexl@redhat.com>
365
366         * gtk/gtkclist.c:
367         Scroll using gdk_window_scroll(). Don't wait for exposes.
368         Move the column headers in an order that makes them flash less.
369
370 2001-03-10  Hans Breuer  <hans@breuer.org>
371
372         * gdk/gdk.def : updated
373
374         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
375         to offseting the clip_mask at the right place
376
377         * gdk/win32/gdkwindow-win32.c : don't create background brushes
378         for all the gdkClasses, especially not for the input_only case.
379         Otherwise flickering wont be avoidable, because we don't get
380         WM_ERASEBKGND message for these windows.
381
382         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
383         and fixed massive redraw problems apparently triggered by Alexanders 
384         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
385         but it seems to work quite well :-)
386
387         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
388         prototype
389
390 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
391
392         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
393         (gtk_list_store_set_cell): Fix a stupid typo.
394
395 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
396
397         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
398         select_all not work if you're in SINGLE mode (it doesn't make that
399         much sense, anyway.)
400
401         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
402         handle types more sanely.
403         (_gtk_tree_data_list_value_to_node): handle types more sanely.
404         (_gtk_tree_data_list_node_copy): handle types more sanely.
405
406         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
407         GValue better. Converts the type as well.
408
409         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
410         GValue better. Converts the type as well.
411
412 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
413
414         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
415         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
416         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
417         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
418
419         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
420         gdk_im/gdk_ic.
421
422 2001-03-09  Hans Breuer  <hans@breuer.org>
423
424         * gdk/gdk.def : updated
425
426         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
427         for their palette
428
429         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
430         removing
431
432         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
433         removing and implemented Havoc's GdkWindow state functions; 
434         stick/unstick only as no-op, cause I don't know how to emulate 
435         on win32 ...
436
437         * gtk/gtk.def : updated
438
439         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
440
441         * gtk/gtktypeutils.c : #include <string.h>
442
443         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
444
445 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
446
447         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
448         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
449         not a boxed.
450
451 2001-03-09  Alexander Larsson  <alexl@redhat.com>
452
453         * docs/Changes-2.0.txt:
454         Document expose event->region change and that gtk_widget_event
455         doesn't allow passing expose events.
456
457         * gdk/gdkevents.h:
458         Add region to expose event.
459         
460         * gdk/gdkevents.c:
461         Handle event->region in gdk_event_copy() and gdk_event_free().
462
463         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
464         Generate expose_event->region when creating expose events.
465
466         * gdk/x11/gdkevents-x11.c:
467         Generate expose events with regions when translating X events.
468
469         * gtk/gtkcontainer.[ch]:
470         Default expose handler that propagates expose events to NO_WINDOW
471         children. New function gtk_container_propagate_expose()
472
473         * gtk/gtkwidget.[ch]:
474         Moved gtk_widget_event implementation to gtk_widget_event_internal.
475         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
476         expose events. New function gtk_widget_send_expose() to send expose
477         events. New function gtk_widget_region_intersect() to calculate
478         window/region intersections.
479         
480         * gtk/gtkmain.c (gtk_main_do_event):
481         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
482         Use gtk_widget_send_expose() to send expose events.
483         
484         * gtk/gtkbin.c:
485         * gtk/gtkbox.c:
486         * gtk/gtkfixed.c:
487         * gtk/gtkimagemenuitem.c:
488         * gtk/gtklist.c:
489         * gtk/gtkpacker.c:
490         * gtk/gtktable.c:
491         * gtk/gtktree.c:
492         Remove expose handler, using the default container implementation
493         instead.
494         
495         * gtk/gtkbutton.c:
496         * gtk/gtkcheckbutton.c:
497         * gtk/gtkeventbox.c:
498         * gtk/gtkfixed.c:
499         * gtk/gtkhandlebox.c:
500         * gtk/gtklayout.c:
501         * gtk/gtklistitem.c:
502         * gtk/gtkmenu.c:
503         * gtk/gtkmenubar.c:
504         * gtk/gtkmenuitem.c:
505         * gtk/gtknotebook.c:
506         * gtk/gtkoptionmenu.c:
507         * gtk/gtkpaned.c:
508         * gtk/gtkscrolledwindow.c:
509         * gtk/gtktogglebutton.c:
510         * gtk/gtktoolbar.c:
511         * gtk/gtktreeitem.c:
512         * gtk/gtkviewport.c:
513         Chain expose handler to parent class handler. Use
514         gtk_container_propagate_expose() to propagate exposes.
515
516         * gtk/gtkclist.c (check_exposures):
517         * gtk/gtktext.c (process_exposes):
518         Use gtk_widget_send_expose instead of gtk_widget_event.
519
520 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
521
522         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
523
524 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
525
526         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
527         unref the nodes.   Fixes bug #50058.
528
529         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
530         "::ref_iter" to "::ref_node".
531         (gtk_tree_model_unref_node): change "::unref_iter" to
532         "::unref_node". Fixes bug #50064.
533
534 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
535
536         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
537         support for invisible cells.
538          (gtk_tree_view_bin_expose): ditto
539
540 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
541
542         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
543         on gobjects.
544
545         * tests/testtreefocus.c (main): New test file.
546
547         * tests/testtreeview.c: update to latest glib changes.
548
549         * tests/testtreecolumns.c: update to latest glib changes.
550
551 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
552
553         * gtk/testgtk.c: re-enabled event watcher emission hooks.
554
555 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
556
557         * *.c: added accumulator data argument to g_signal_newc()
558         functions.
559
560         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
561         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
562         * gtk/treestoretest.c (make_window):
563         s/g_signal_connect/g_signal_connectc/.
564
565         * gtk/gtktextbuffer.c: completed signal arg fixups,
566         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
567
568 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
569
570         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
571         G_CONST_RETURN.
572
573         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
574         ::hierarchy-changed signal when a widget changes
575         from anchored to unanchored or vice versa.
576         (anchored means 
577          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
578         Use a private flag to keep track of this efficiently.
579
580 2001-03-07  Havoc Pennington  <hp@redhat.com>
581
582         * gtk/testgtk.c (create_spins): uglify so that size request gets
583         tested.
584
585         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
586         request on values for upper/lower, completes #6152
587
588 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
589
590         * Makefile.am: Remove gtk-config-2.0 again.
591         (Grrrr, pkg-config. And stops make loops.)
592
593 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
594
595         * gtk/gtksignal.[hc]: removed old emission hook API.
596         
597         * docs/Changes-2.0.txt: fixed sections.
598         
599         * gtk/gtktextbuffer.c: signal arg fixups.
600
601 2001-03-07  Havoc Pennington  <hp@redhat.com>
602
603         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
604
605         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
606         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
607         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
608         validation and the redraw which is higher priority than the
609         validation.
610
611 2001-03-07  Havoc Pennington  <hp@redhat.com>
612
613         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
614         (gtk_entry_set_property): remove trailer
615
616         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
617         (gtk_entry_get_width_chars): new functions, to set size request to 
618         a given number of characters
619
620         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
621
622         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
623         (gtk_dialog_get_has_separator): new function
624         (run_delete_handler): fix to not emit "response" signal
625         because we already did in the delete event handler installed
626         at dialog creation time.
627         
628         * gtk/gtkdialog.h: add a has_separator property,
629         add GTK_DIALOG_NO_SEPARATOR flag
630
631 2001-03-07  Havoc Pennington  <hp@redhat.com>
632
633         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
634         off decorations for a window.
635
636         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
637         changes
638
639         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
640         to get location of PangoLayout inside the label, closes #51198
641
642         * gtk/testgtk.c (create_bbox): fix up button box usage
643
644         * gtk/testcalendar.c (create_calendar): fix up button box usage
645
646         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
647
648         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
649
650         * gtk/gtkhbbox.h: deprecations
651
652         * gtk/gtkvbbox.h: deprecations
653
654         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
655         emulate deprecated gtk_button_box_get_spacing
656
657         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
658         the "set global default" functions
659         (struct _GtkButtonBox): remove "spacing" field, use the one from 
660         GtkBox base class
661
662         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
663
664         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
665         render the icon, return the missing image icon.
666
667         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
668         image icon if the load fails.   
669
670         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
671         when no image is found; should be the Netscape "missing image"
672         icon eventually but for now is a random image
673
674         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
675         role for the session manager
676
677         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
678
679         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
680         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
681
682         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
683
684 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
685
686         * gtk/*.c: marshaller fixes.
687         
688         * gtk/gtkmarshal.list: extreme cleanup.
689
690         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
691         param spec for now.
692
693         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
694         where appliable.
695
696         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
697         special cased autogenerated boxed types from gtktypebuiltins_ids.c
698         which are not reference counted:
699         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
700         PangoFontDescription, GtkTreeIter and GtkTreePath.
701
702 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
703
704         * gtk/gtktreeselection.h: 
705         * gtk/gtktreemodel.c:
706         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
707         file should be included directly, and gobject/gmarshal.h
708         as well as gtk/gtkmarshal.h even can't be included directly.
709
710         * Makefile.am: grr, install gtk-config-2.0.
711
712         * gtk/testgtk.c:
713         * gtk/simple.c:
714         * gtk/gtkmenu.c:
715         * gtk/gtkitemfactory.c: use g_object_connect() instead of
716         passing "*signal*::*" args to gtk_widget_set().
717         
718         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
719         
720         * gtk/*.c: removed trailer arg from property setters and getters.
721         macro fixups.
722
723 2001-03-07  Alexander Larsson  <alexl@redhat.com>
724
725         * gtk/gtklabel.c (set_markup): Removed warning
726
727 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
728
729         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
730         field to allow you to hide cell renderers.
731
732         * gtk/gtkcellrenderer.c: Add support for invisible cells.
733
734         * gtk/gtktreeview.c: Add support for invisible cells.
735
736 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
737
738         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
739         Add "clicked" signal back to columns.
740
741         * ChangeLog: remove conflict markers.
742
743 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
744
745         * gtk/gtkbutton.c: Add animation of activation by, on 
746         activate, pressing the button, and adding a timeout that 
747         releases the button after 250ms or on key release and
748         emits ::clicked. (#51501)
749
750         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
751         action area, we connect to ::clicked instead of ::activate
752         so the dialog stays up through the animation.
753
754 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
755
756         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
757         check the ignore_enter flag for the menu shell that
758         the item is actually a child of, not for attached
759         submenus. (#51536)
760
761 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
762
763         * gtk/gtkmain.c (gtk_propagate_event): Only do special
764         special key-press grab handling for widgets within
765         GtkWindows. Otherwise, fall through to normal case.
766
767         This prevents key events being sent twice to GtkInvisible
768         widgets, which can cause all sorts of mischief.
769
770 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
771
772         * gtk/gtkmain.c (gtk_propagate_event): When a grab
773         widget is in effect, give the grab widget a first
774         crack at KEY_PRESS/RELEASE events. (#424)
775
776 2001-03-06  James Henstridge  <james@daa.com.au>
777
778         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
779         offset for the window_state_event to point at window_state_event
780         rather than no_expose_event.
781
782 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
783
784         * gtk/gtkimmodule.h: fix busted /* comment */
785
786 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
787
788         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
789         object properties.
790
791 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
792
793         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
794         add object properties.
795
796         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
797         to add object properties.
798
799         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
800         object properties.
801
802         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
803         add object properties.
804
805         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
806         object properties.
807
808 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
809
810         * gtk/gtktreemodel.c: renamed "child_toggled" to
811         "has_child_toggled".
812
813         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
814         handle new signal name.
815
816         * gtk/gtktreestore.c: Updated to handle new signal name.
817         * gtk/gtklisttore.c: Updated to handle new signal name.
818         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
819
820 2001-03-05  Alexander Larsson  <alexl@redhat.com>
821
822         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
823         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
824
825 2001-03-05  Michael Natterer  <mitch@gimp.org>
826
827         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
828         pixbuf-engine coincidentially also failed to make one of it's
829         parent_class pointers static, causing overwriting of GtkLabel's
830         parent_class pointer in pixbuf_style_class_init().
831         (Will commit the fix to the pixbuf-engine too).
832
833 2001-03-05  Alexander Larsson  <alexl@redhat.com>
834
835         * gdk/gdkwindow.h:
836         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
837         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
838         gdk_window_set_icon_list for net wmspec functionality.
839
840         * gdk/x11/gdkwindow-x11.c:
841         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
842         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
843         gdk_window_set_icon_list.
844         Added gdk_wmspec_change_state helper function and used it in the code.
845         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
846
847         * gtk/gtkdialog.c (gtk_dialog_init):
848         Set GDK_WINDOW_TYPE_HINT_DIALOG.
849
850         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
851         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
852
853         * gtk/gtkwindow.c:
854         new function gtk_window_set_type_hint.
855         On realize, set type hint and modal hint.
856
857         * gtk/gtkwindow.h:
858         Added type_hint field and gtk_window_set_type_hint.
859
860 2001-03-05  Alexander Larsson  <alexl@redhat.com>
861
862         * gtk/gtklabel.[ch]:
863         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
864         New function gtk_label_get_accel_keyval () to get the underline accelerator
865         of the label. Setting the label pattern overrides other attributes.
866
867 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
868
869         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
870         Added missing initializers to gtk_rc_style_init().
871
872 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
873
874         * gtk/gtktextview.c: fixed bug #51097 about setting 
875         gtk_text_view_set_border_window_size() if the widget is 
876         already realized.
877
878 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
879
880         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
881
882         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
883         comment. Won't do to have duplicated doc comments between
884         the platform subdirs.
885
886 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
887
888         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
889           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
890
891         Detectable auto-repeat - make a repeating key generate
892         press/press/press/release instead of press/release pairs.
893
894         If we have Xkb and XkbSetDectableAutoRepeat supports
895         that, we do it that way. Otherwise, when we get
896         a release event, we check ahead with XPending to see
897         if the next key is a KeyPress with the same keycode
898         and timestamp. (Not 100% reliable, but pretty close.)
899           
900 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
901         
902         * gtk/gtkmain.c (gtk_propagate_event): Only do special
903         special key-press grab handling for widgets within
904         GtkWindows. Otherwise, fall through to normal case.
905  
906         This prevents key events being sent twice to GtkInvisible
907         widgets, which can cause all sorts of mischief.
908  
909 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
910  
911         * gtk/gtkmain.c (gtk_propagate_event): When a grab
912         widget is in effect, give the grab widget a first
913         crack at KEY_PRESS/RELEASE events. (#424)
914  
915 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
916
917         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
918         to extend the selection. (Roughly based on patch
919         from Jay Cox, #50939)
920
921         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
922         to properly handle previous GDK_BUTTON_PRESS. 
923         (Patch from Jay Cox, #50938)
924
925         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
926         '\0' back along with the deleted text. (#51148)
927
928 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
929
930         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
931         the group when extracting it from the X keyboard event.
932
933         * modules/input/Makefile.am modules/input/imipa.c: 
934         Simple module for entering IPA. (Do we need a 
935         gtk-stupid-input-tricks CVS module?)
936
937 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
938
939         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
940         const.
941
942         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
943
944         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
945         is no focus widget for the dialog currently, grab the focus as well
946         as the default.
947
948         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
949         the action area's children to iterate through, not the
950         dialog's children.
951
952 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
953
954         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
955         Add plug-socket tests. (Won't work worth a darn until I commit
956         the rest of the plug-socket changes, but no reason these
957         can't go into CVS now.)
958
959 2001-03-02  Havoc Pennington  <hp@redhat.com>
960
961         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
962         _gdk_region_get_xrectangles()
963
964         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
965
966         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
967
968         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
969         function, contributed by Ron Steinke    
970
971         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
972         gdk_net_wm_supports
973
974         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
975         New function, contributed by Ron Steinke
976
977         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
978         used to line up the text in the entry when using the entry for
979         editable sheet cell hacks
980
981         * gtk/testgtk.c (create_entry): test the activate_default setting
982         on GtkEntry
983
984         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
985         cause the entry to activate the default button for a dialog when 
986         activated
987         (gtk_entry_get_activates_default): new function
988
989 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
990
991         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
992         Hwang to move call to sync_selection() up a few lines
993         to before the row list is modified, to fix crash when
994         removing rows in the undo_selection list.
995
996         (Test case provided by Daniel Elstner:
997
998         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
999
1000 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
1001
1002         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
1003         of tree->root_tree in parent_set rather than _map(), 
1004         fixing #50892 in a bit better manner.
1005
1006 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
1007
1008         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
1009
1010 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
1011
1012         * gtk/gtkstyle.c : Remove duplicate fwd decl for
1013         gtk_default_draw_shadow.
1014
1015 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
1016
1017         * gdk/gdkimage.c (gdk_image_new): Remove excess 
1018         warning, make warnings more verbose, treat a error
1019         in shmat as permanent, and don't try again.
1020         (#51163, Ed Randall.)
1021
1022 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
1023
1024         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
1025         delay for the first click before starting to scroll.
1026         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
1027
1028         * gtk/gtktext.c: GtkText should have I-beam cursor. 
1029         (based on gtk-enf-990513-1.patch, Eric Fisher.)
1030
1031 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
1032
1033         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
1034         cleanup to remove some references to unused
1035         ->xoffset, ->yoffset.
1036
1037 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
1038
1039         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
1040         mask. (#51039, fix from Martin Maierhofer)
1041
1042 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
1043
1044         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
1045         for unshifted + and shifted = for non-us keyboards.
1046         Make <Control>+ and <Control>- work as well as 
1047         <Control>KP_Plus, <Control>KP_Minus for recursive
1048         open/close.  (#2682, René Seindal)
1049
1050 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
1051
1052         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
1053         the active menu item before deactivating the menu,
1054         so gtk_menu_popdown doesn't change the history. (#50964)
1055         
1056 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
1057
1058         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
1059         draw lines with text_gc rather than black_gc.
1060         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
1061
1062 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
1063
1064         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
1065         Move handling of buttons fully in gtktreeviewcolumn.  This code is
1066         less interrelated then it was, but it still requires the
1067         GtkTreeView to map it.
1068
1069         * test/testtreecolumn.c: Now I can add a column to one view,
1070         remove it, add it to the another view, remove it, then re-add it
1071         to the first.  Nifty.
1072
1073 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
1074
1075         * docs/tutorial/gtk-tut.sgml: Minor corrections
1076
1077 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
1078
1079         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
1080         GtkRowReference.
1081
1082 2001-02-28  Havoc Pennington  <hp@redhat.com>
1083
1084         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
1085         draw_default
1086         (gtk_widget_draw_focus): remove this function; we could instead
1087         make it just gtk_widget_draw(), but in most cases I think the
1088         result would be broken user code, so think it's better to have
1089         that code not compile and get fixed
1090         (gtk_widget_draw_default): ditto
1091
1092         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
1093         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
1094         
1095         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
1096         widgets lose/get the default, instead of calling draw_default
1097         
1098         * docs/Changes-2.0.txt: note about all this
1099
1100         Then fixed every widget in GTK, I won't list all the filenames.
1101
1102 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
1103
1104         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
1105         _gtk_tree_row_reference_deleted.
1106         (inserted_callback): Proxy out to
1107         _gtk_tree_row_reference_inserted.
1108         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
1109         get around signal emission ordering problem.
1110
1111         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
1112         fix to work with SINGLE 
1113         (_gtk_tree_selection_internal_select_node): Major sanitization on
1114         selections.  SINGLE now seems to work.
1115
1116         * tests/Makefile.am: add testtreecolumn.c:
1117
1118         * tests/testtreecolumn.c: New test.  Mostly points out selection
1119         bugs currently, but will test columns later.
1120
1121         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
1122         selection bug.  I hate touching this code -- it's scary.
1123
1124 2001-02-26  Havoc Pennington  <hp@redhat.com>
1125
1126         * gtk/testgtk.c: test the window state stuff
1127
1128         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
1129         window come to the user's attention as if it were just created
1130         (gtk_window_iconify): new function
1131         (gtk_window_deiconify): new function
1132         (gtk_window_stick): new function
1133         (gtk_window_unstick): new function
1134         (gtk_window_maximize): new function
1135         (gtk_window_unmaximize): new function
1136
1137         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
1138
1139         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
1140
1141         * gdk/x11/gdkevents-x11.c: create window state events when
1142         appropriate
1143         (gdk_wmspec_supported): new function
1144
1145         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
1146         iconification before showing the window
1147         (gdk_window_deiconify): new function
1148         (gdk_window_stick): new function
1149         (gdk_window_unstick): new function
1150         (gdk_window_maximize): new function
1151         (gdk_window_unmaximize): new function
1152
1153         * gdk/gdkwindow.c: store the window state in the window; 
1154         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
1155         window->mapped.
1156         (gdk_window_get_state): return the current window state
1157
1158         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
1159         (gdk_event_get_state): handle GDK_WINDOW_STATE
1160         (gdk_synthesize_window_state): function to create the window state
1161         events
1162
1163         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
1164         event, for changes to "window state" such as maximized, sticky, 
1165         etc.
1166         
1167         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
1168         focuses a window
1169
1170         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
1171         finds out if we support a given WM spec hint
1172
1173 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
1174
1175         * docs/faq/gtk-faq.sgml: New question re memory leaks.
1176
1177 2001-02-25  Hans Breuer  <hans@breuer.org>
1178
1179         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
1180         cause we want to loose those prototypes only in the latter case
1181
1182         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
1183         GdkPixmapImplWin32 because it itsn't derived from it. Use the
1184         impl member variable instead
1185
1186         * gtk/gtk.def : updated
1187
1188         * gtk/gtklist.c : 
1189         * gtk/gtkmenus.c : include <string.h> for memset ()
1190
1191         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
1192         for everthing built here, but for gtk-x.x.dll only. This solves
1193         problem of indifferent gtk type definitions
1194
1195 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@webwynk.net>
1196
1197         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
1198
1199 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
1200
1201         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
1202         column that is exposed.
1203
1204         (_gtk_tree_view_update_size): Changed name from set_size, and
1205         changed function to do more work, and not force people calling it
1206         to figure out the size.  Simplifies a lot of code elsewhere.
1207
1208 2001-02-23  Alexander Larsson  <alexl@redhat.com>
1209
1210         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
1211         return solid masks for xpms that have no transparent color.
1212         This makes the ..._create_from_xpm... API backwards
1213         compatible.
1214
1215 2001-02-23  Tor Lillqvist  <tml@iki.fi>
1216
1217         * README.win32: Update. Mention the gtk-1-3-win32-production
1218         branch.
1219
1220         * gdk/win32/bdfcursor.c: New file. A program that generates
1221         xcursors.h. Thanks to Stefan Ondrejicka.
1222
1223         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
1224         compact format.
1225
1226         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
1227
1228         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
1229         function, uses xcursors.h.
1230         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
1231         cursor from inline data instead of using LoadCursor() to generate
1232         it from a resource.
1233
1234         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
1235         event, must check the Windows message for mouse button state, as
1236         the GDK event state might not have been built if it is
1237         undelivered. Remove one goto.
1238
1239         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
1240         SetCursor() if the current cursor as returned by GetCursor() is
1241         the window's previous cursor. The ChildWindowFromPoint() test
1242         apparently didn't work correctly.
1243
1244         * gdk/win32/rc/*.cur: Remove.
1245
1246         * gdk/win32/rc/gdk.rc.in: Remove cursors.
1247
1248         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
1249
1250         * gtk/makefile.{mingw,msc}.in: Updates.
1251
1252 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
1253
1254         * gtk/gtktreemodel.h: add functions for signal emission.
1255
1256         * gtk/gtktreestore.c: move to use above functions instead of
1257         g_signal_emit.
1258
1259         * gtk/gtkliststore.c: ditto
1260
1261 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
1262
1263         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
1264         GObject instead of GtkObject.
1265
1266         * gtk/gtkliststore.c: ditto.
1267
1268         * gtk/gtktreemodelsort.c: ditto.
1269
1270         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
1271         GtkTreeModelIface, instead of in each model.
1272
1273 2001-02-21  Havoc Pennington  <hp@redhat.com>
1274
1275         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
1276         unbreak this function
1277
1278         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
1279         properties
1280
1281         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
1282         properties
1283
1284         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
1285         properties
1286
1287         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
1288         mean unset the max length
1289
1290 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
1291
1292         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
1293         Changed name to be set_cell_data_func to make it clear what
1294         the functino does.  Close bug #51069.
1295
1296 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
1297
1298         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
1299         have memory actually freed.  Keeps box running longer.
1300
1301 2001-02-21  Alexander Larsson  <alexl@redhat.com>
1302         
1303         * gtk/gtkseparatormenuitem.[ch]:
1304         Added new menu separator item. The drawing and size handling
1305         is still done in GtkMenuItem, but the API is a bit more sane.
1306         
1307         * gtk/Makefile.am:
1308         Add gtkseparatormenuitem.[ch].
1309
1310         * gtk/gtk.h:
1311         Add gtkseparatormenuitem.h.
1312         
1313         * gtk/gtkentry.c:
1314         * gtk/gtkmenufactory.c:
1315         * gtk/gtktextview.c:
1316         Use the new API for menu separators.
1317         
1318         * demos/gtk-demo/menus.c (create_menu):
1319         Add some GtkSeparatorMenuItem demo code.
1320
1321 2001-02-20  Havoc Pennington  <hp@redhat.com>
1322
1323         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
1324         Lee Mallabone
1325
1326         * gtk/gtkarrow.c: Convert to new property API, patch from 
1327         Lee Mallabone
1328
1329 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
1330
1331         * tests/testtreeview.c (toggled_callback): fix to reflect change
1332         in GtkTreeModelStore.
1333
1334 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
1335
1336         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
1337         function to create an icon set from a pixbuf.
1338
1339 2001-02-20  Alexander Larsson  <alexl@redhat.com>
1340
1341         * gtk/gtkcellrenderertext.[ch]:
1342         Add a "markup" property.
1343
1344         * gtk/treestoretest.c:
1345         Use the markup property, remove some leftover stuff from
1346         GtkTreeModelMapping.
1347
1348 2001-02-20  Alexander Larsson  <alexl@redhat.com>
1349
1350         * gtk/gtklabel.c (gtk_label_set_selectable):
1351         Queue a redraw if the selectable setting was changed.
1352
1353 2001-02-20  Alexander Larsson  <alexl@redhat.com>
1354
1355         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
1356         Actually copy the whole gc, not just the public parts.
1357         
1358         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
1359         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
1360         labels.
1361
1362 2001-02-19  Havoc Pennington  <hp@pobox.com>
1363
1364         * gdk/gdkwindow.c: docs
1365
1366         * gdk/gdkrgb.c: docs
1367
1368         * gdk/gdkregion-generic.c: docs
1369
1370         * gdk/gdkgc.c (gdk_gc_set_values): docs
1371
1372         * gdk/gdkdraw.c: docs
1373
1374         * gdk/gdkdrawable.h: deprecate drawable get/set data
1375
1376 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
1377
1378         * demos/gtk-demo/dialog.c: Add simple new demo.
1379
1380 2001-02-19  Havoc Pennington  <hp@redhat.com>
1381
1382         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
1383         insert_child_anchor signal, bug #50245
1384
1385         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
1386         from create_child_anchor, so the anchor is passed in
1387
1388         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
1389         (_gtk_widget_segment_new): have the child anchor object passed in, 
1390         instead of creating it.
1391
1392         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
1393         to gtk_text_buffer_get_modified
1394
1395 2001-02-19  Havoc Pennington  <hp@redhat.com>
1396
1397         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
1398         changed GLib without fixing GTK
1399
1400         * gtk/gtkrange.h: Rename all the stupid implementation detail 
1401         functions to have an underscore in front. Most of them should 
1402         probably just go away, but for starters don't export them.
1403         Bug #50482
1404
1405 2001-02-19  Havoc Pennington  <hp@redhat.com>
1406
1407         * gdk/gdkcolor.h: test was backward, so deprecated functions were
1408         excluded by default
1409
1410         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
1411         clean up the old code a bit
1412
1413         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
1414         inconsistent state
1415
1416         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
1417         draw inconsistent state
1418
1419         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
1420         (create_menu): add inconsistent test
1421
1422         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
1423         new function
1424         (gtk_check_menu_item_get_inconsistent): new function
1425         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
1426         state (using etched in for now)
1427
1428         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
1429         draw inconsistent state
1430
1431         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
1432         function, used when the user has selected a range of stuff in
1433         different states
1434         (gtk_toggle_button_get_inconsistent): accessor for that
1435         (gtk_toggle_button_paint): draw inconsistent state (etched in?
1436         don't know what else to do)
1437
1438 2001-02-19  Hans Breuer <hans@breuer.org>
1439
1440         * gtk/gtk.def : updated exported symbols
1441
1442         * gtk/makefile.msc.in : updated
1443
1444         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
1445         a colormap, when invoked from testgtk::entry. I'm not sure where
1446         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
1447         avoids immediate crashing ...
1448
1449         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
1450         any objections ?
1451
1452         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
1453         0 parameter. At least msvc doesn't like macros with var args. 
1454         I simply removed the extra 0, was it a feature or a typo ?
1455
1456         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
1457         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
1458         because the value assignment to the internal struct wasn't working.
1459         I'm not absolutely sure. The problem could have been resolved by
1460         changing the "func" declartion in the struct, but was the pointer
1461         to the function pointer intended ?
1462
1463         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
1464
1465         * gdk/gdk.def : updated exported symbols
1466
1467         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
1468         only use SetDIBitsToDevice if there is a palette at the drawable
1469         and the image is GDK_VISUAL_PSEUDO_COLOR
1470
1471         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
1472
1473         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
1474
1475         * gdk/*/makefile.msc : updated
1476
1477 2001-02-19  Havoc Pennington  <hp@redhat.com>
1478
1479         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
1480         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
1481
1482         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
1483         (gdk_key_repeat_restore): nuke
1484
1485         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
1486         (gdk_init_check): no atexit func
1487
1488         * gdk/gdkrgb.h: mark some stuff deprecated
1489
1490         * gdk/gdkcolor.h: mark some stuff deprecated
1491         
1492         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
1493
1494         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
1495
1496 2001-02-16  Havoc Pennington  <hp@redhat.com>
1497
1498         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
1499         scroll steps.
1500
1501         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
1502         steps, and add Ctrl-arrow shortcuts for paging visually as with
1503         HScale, since Page Up and Page Down move logically.
1504
1505         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
1506         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
1507         
1508         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
1509         steps
1510         (gtk_range_scroll): handle the visual steps
1511
1512         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
1513         scroll steps
1514
1515         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
1516         steps, not the logical ones.
1517
1518         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
1519         (scroll_vertical): handle up/down steps
1520
1521 2001-02-19 Alexander Larsson  <alexl@redhat.com>
1522
1523         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
1524         Copy data and free data with free().
1525
1526         * gdk-pixbuf/gdk-pixbuf.c:
1527         * gdk-pixbuf/io-jpeg.c:
1528         * gdk-pixbuf/io-png.c:
1529         Use g_try_malloc/g_free instead malloc/free.
1530         
1531         * gdk-pixbuf/test-gdk-pixbuf.c:
1532         Must... initialize... gobject...
1533         
1534         * gdk-pixbuf/pixops/timescale.c:
1535         * gtk/gtkcalendar.c:
1536         Use g_malloc instead of malloc.
1537         
1538 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
1539
1540         * gtk/testgtkrc:
1541         Comment out property assignments, these don't work yet.
1542
1543 2001-02-17  Havoc Pennington  <hp@pobox.com>
1544
1545         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
1546         bit.
1547
1548 2001-02-17  Havoc Pennington  <hp@pobox.com>
1549
1550         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
1551         shadowed variables that had broken size request in some cases,
1552         leading to bogus tooltips (#50996)
1553
1554 2001-02-06  Jon K Hellan  <hellan@acm.org>
1555
1556         Implement fast browsing of tooltips, bug #50619
1557         
1558         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
1559         and last_popdown
1560         
1561         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
1562         use_sticky_delay and last_popdown.
1563         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
1564         time of popdown.
1565         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
1566         is NULL.
1567         (gtk_tooltips_recently_shown): New static function.  Return true
1568         if < sticky_delay has elapsed since last popdown.
1569         (gtk_tooltips_event_handler): Display window after sticky_delay
1570         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
1571         since last popdown.
1572         
1573 2001-02-17  Havoc Pennington  <hp@pobox.com>
1574
1575         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
1576         instead of (). #6394
1577
1578         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
1579         G_CONST_RETURN, make it return by reference, #50473
1580         
1581 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
1582
1583         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
1584         generated ENTER_NOTIFY event with 0, otherwise not explicitely
1585         setup fields contain garbage (e.g. subwindow, breaking
1586         gdk_drawable_ref() upon event copy).
1587         (gtk_menu_stop_navigating_submenu_cb): same here.
1588
1589         * gtk/gtklist.c (gtk_list_vertical_timeout): 
1590         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
1591         * gtk/gtkclist.c (vertical_timeout): 
1592         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
1593         default-zero-intialization for unions to memset(,0,), as unions are
1594         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
1595         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
1596
1597         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
1598         g_closure_sink() warning.
1599
1600         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
1601         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
1602         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
1603         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
1604         
1605 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
1606
1607         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
1608         gtk_*_store_get, and moved to GtkTreeModel.
1609
1610         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
1611
1612         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
1613
1614         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
1615
1616         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
1617         set the func.
1618
1619         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
1620         freeze/thaw notify between setting all the properties for a cell.
1621
1622         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
1623
1624 2001-02-15  Havoc Pennington  <hp@redhat.com>
1625
1626         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
1627         the X coordinates so they're with respect to the line, rather than 
1628         with respect to the layout.
1629
1630         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
1631         Mallabone
1632
1633         * gtk/testgtk.c (create_range_controls): add vscale tests, 
1634         and inverted test
1635
1636         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
1637         #50806
1638
1639         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
1640
1641         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
1642         gtk_text_iter_is_end
1643
1644         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
1645         rename gtk_text_buffer_get_end_iter
1646
1647         * gtk/testgtk.c (create_labels): Add test for selectable
1648
1649         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
1650         the selection stuff. This code is kind of broken since it doesn't 
1651         use the theme engine.
1652
1653         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
1654         fix infinite loop and y offset problem
1655         (gdk_draw_layout_line_with_colors): fix foreground color handling
1656
1657         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
1658         that makes the label selectable.
1659         
1660         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
1661         layout when the style is set, since fonts etc. could have changed.      
1662
1663 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
1664
1665         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
1666
1667         * gtk/gtktreemodelsimple.[ch]: removed.
1668
1669 2001-02-16  Alexander Larsson  <alexl@redhat.com>
1670
1671         * gtk/gtktreemodelmapping.[ch]:
1672         New files. Implement GtkTreeModelMapping.
1673         
1674         * gtk/Makefile.am:
1675         Add gtktreemodelmapping.[ch].
1676         
1677         * gtk/gtk.h:
1678         Add gtktreemodelmapping.h
1679
1680         * gtk/treestoretest.c:
1681         Test the GtkTreeModelMapping
1682
1683 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
1684
1685         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
1686         have a demo, we might as well pass in real values.  Thanks to
1687         clahey for pointing this out.
1688
1689 2001-02-14  Havoc Pennington  <hp@pobox.com>
1690
1691         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
1692         "static" to a private function
1693         (gtk_image_menu_item_class_init): remove destroy handler,
1694         add "image" object property
1695
1696 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
1697
1698         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
1699         Add a shortcut if the window and the current clip_region doesn't
1700         overlap. This is needed when there are a lot of windows in a
1701         window. The layout test in testgtk is a good test.
1702
1703         * gdk/linux-fb/gdkwindow-fb.c:
1704         Whitespace fix.
1705
1706 2001-02-13  Sven Neumann  <sven@convergence.de>
1707
1708         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
1709
1710 2001-02-13  Alexander Larsson  <alexl@redhat.com>
1711
1712         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
1713         Don't reference last_cursor if it is null. Fixes crash when rotating
1714         the screen before having moved the mouse.
1715
1716         * gdk/linux-fb/gdkcc-fb.c: Zapp!
1717
1718         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
1719
1720         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
1721         when using 90 or 270 degrees rotation.
1722
1723 2001-02-12  Havoc Pennington  <hp@pobox.com>
1724
1725         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
1726         it always set the foreground, even if we were only using
1727         a stipple.
1728         (gdk_draw_layout_line_with_colors): new function, allow
1729         override colors
1730         (gdk_draw_layout_with_colors): new function, allow override
1731         colors
1732         (gdk_pango_layout_line_get_clip_region): function to get the clip
1733         region for a logical text range
1734         (gdk_pango_layout_get_clip_region): get the clip region for a
1735         logical text range
1736
1737         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
1738         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
1739         the right number of arguments.
1740
1741         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
1742         enhance the function to check that node data corresponds to a 
1743         view still belonging to the tree.
1744
1745         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
1746         GtkTreePath
1747         (gtk_tree_view_inserted): ditto
1748         (gtk_tree_view_child_toggled): ditto
1749
1750         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
1751         simplify this code.
1752
1753         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
1754         a PangoAttrList
1755
1756         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
1757
1758         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
1759
1760         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
1761         size in the size request 
1762         (gtk_menu_bar_size_allocate): consider toggle size here
1763
1764         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
1765         that displays a widget in the toggle slot
1766
1767         * gtk/testgtk.c: test GtkImageMenuItem
1768
1769         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
1770         
1771         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
1772         request and allocation
1773
1774         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
1775
1776         * gtk/gtkcheckmenuitem.c
1777         (gtk_check_menu_item_toggle_size_request): ditto
1778         
1779 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
1780
1781         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
1782         reference.
1783
1784         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
1785         and refuse to initialize GTK+ if they fail.
1786
1787 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
1788
1789         * configure.in: Add check for gtk-doc version.
1790
1791 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
1792
1793         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
1794         where the xpad/ypad was only being used on one side!
1795
1796 2001-02-11  Tor Lillqvist  <tml@iki.fi>
1797
1798         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
1799         function, copied from X11 version.
1800
1801         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
1802         DestroyCursor failures. The reason for the problem (despite the
1803         inconsistent messages from GetLastError()) was that
1804         DestroyCursor() cannot be called while a cursor is set in a
1805         window. Set the new cursor first and then destroy the old one.
1806         Thanks to jpe@archaeopteryx.com.
1807
1808         * gdk/win32/gdkcc-win32.c: Remove.
1809
1810         * gdk/win32/Makefile.am: Remove from here, too.
1811         
1812         * gdk/gdk.def
1813         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
1814
1815         * gtk/gtk.def
1816         * gtk/makefile.mingw.in: Updates.
1817
1818 2001-02-08  Havoc Pennington  <hp@redhat.com>
1819
1820         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
1821         add a widget to a bin that already has a child.
1822
1823         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
1824
1825         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
1826         
1827         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
1828
1829         * gdk/gdk.h: remove gdkcc.h
1830
1831         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
1832
1833         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
1834         GdkPixbuf, since the previous implementation was GdkColorContext
1835         dependent.
1836
1837         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
1838         
1839 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
1840
1841         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
1842         a sane value!
1843
1844 2001-02-08  Havoc Pennington  <hp@redhat.com>
1845
1846         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
1847         lighten them.
1848
1849 2001-02-08  Havoc Pennington  <hp@redhat.com>
1850
1851         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
1852         validation idle
1853
1854         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
1855         cell renderer
1856
1857         * demos/pixbuf-demo.c (timeout): remove deprecated
1858         gtk_widget_draw
1859
1860         * demos/testpixbuf-save.c (main): remove deprecated
1861         gtk_drawing_area_size
1862
1863         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
1864         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
1865         at the start of the allocation.
1866         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
1867         unsetup or NULL model.
1868
1869         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
1870         even/odd/sorted cells in the tree view.
1871
1872         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
1873         bugfixes
1874
1875         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
1876         backgrounds with draw_flat_box using different detail for even/odd
1877         rows.
1878
1879         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
1880         row, so we can draw the alternating colors thing
1881
1882         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
1883         property from a synonym property, notify for the synonym.
1884         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
1885         (gtk_text_tag_get_property): Always return the font, even if
1886         all its fields aren't set
1887
1888         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
1889         store the attr list; it leaves us with no way to change attributes
1890         in _render according to the render flags, and no way to implement
1891         get_property. Instead store all the specific text attributes. 
1892         Separate whether an attribute is enabled from its value. Sync all
1893         properties with GtkTextTag, make them all consistent, etc.
1894
1895         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
1896         renderers can highlight the sort row/column     
1897
1898         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
1899         accessor functions to get values; this has the side effect of
1900         showing up which accessor functions were missing. Added those.
1901
1902         * gtk/gtktreeviewcolumn.h: Replace set_justification with
1903         set_alignment, to be consistent with GtkLabel, GtkMisc
1904
1905         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
1906         arrow.
1907
1908         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
1909
1910         * gtk/gtktreesortable.h: updates in here
1911
1912 2001-02-07  Sven Neumann  <sven@convergence.de>
1913
1914         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
1915         pango dimensions after painting the background. We used to draw
1916         gigantic flat boxes here.
1917
1918 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
1919
1920         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
1921         error introduced with earlier commit) (pointed out by
1922         Ollie Lho)
1923
1924 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
1925
1926         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
1927         which are no longer necessary.
1928
1929 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
1930
1931         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
1932
1933 2001-02-04  Tor Lillqvist  <tml@iki.fi>
1934
1935         * gdk/gdk.def
1936         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
1937         Provide dummy implementations.
1938
1939 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
1940
1941         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
1942
1943         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
1944         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
1945         deprecated this function.
1946
1947         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
1948         argument.
1949
1950 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
1951
1952         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
1953
1954 2001-02-03  Havoc Pennington  <hp@pobox.com>
1955
1956         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
1957         Mikael Hermansson with patch from Mikael (if there was a toggle
1958         start one after the first character in the range, this function
1959         was broken). Bug #50380
1960
1961 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
1962
1963         * configure.in: Remove confusing comment about X11.
1964
1965 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
1966
1967         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
1968         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
1969         
1970 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
1971
1972         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
1973         it breaks things on BSD. If you want to compile GTK+ with
1974         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
1975         when configuring, since GTK+ simply can't be "pure ANSI" 
1976         in the header files it uses. (#8170, Greg Hudson)
1977
1978 2001-02-02  Havoc Pennington  <hp@redhat.com>
1979
1980         * gtk/gtkwindow.c: docs
1981
1982         * gtk/gtkwidget.c: docs
1983         (gtk_widget_set_colormap): add a reference to the colormap
1984         (gtk_widget_get_default_colormap): add a reference to the colormap
1985
1986         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
1987
1988         * gtk/gtktextiter.c: docs
1989
1990         * gtk/gtkmain.c (gtk_propagate_event): docs
1991
1992         * gtk/gtkpaned.c (gtk_paned_get_position): docs
1993         (gtk_paned_set_position): docs
1994
1995         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
1996         sort interface, no implementation yet.
1997
1998         * demos/testpixbuf.c (new_testrgb_window): replace
1999         gtk_drawing_area_size() with gtk_widget_set_usize()
2000
2001         * demos/testpixbuf-drawable.c (main): ditto
2002         
2003         * gtk/testgtk.c: remove use of GtkStatusbarMsg
2004
2005         * gtk/gtktextbuffer.c: docs
2006
2007         * gtk/gtkstock.c: docs
2008
2009         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
2010
2011         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
2012
2013         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
2014         
2015         * gtk/gtkimage.c: add some docs in here
2016         (gtk_image_size_request): change name of
2017         gtk_widget_render_stock_icon
2018         (gtk_image_get_icon_set): don't dup returned string
2019         (gtk_image_get_icon_set): don't dup returned string
2020
2021         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
2022         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
2023         and gtkiconfactory.h functions
2024
2025         * gtk/gtkiconfactory.c: add some docs in here
2026
2027         * gtk/gtkmain.c (gtk_get_default_language): document
2028         (gtk_get_current_event): document
2029         (gtk_get_current_event_state): document
2030         (gtk_get_event_widget): document
2031
2032         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
2033
2034         * gtk/gtkcontainer.c: Add some documentation
2035         (gtk_container_add): give a more explanatory warning on adding an
2036         already-parented widget, this is kind of a FAQ and also a common
2037         typo that's easier to debug with a nice warning 
2038
2039         * gtk/gtkcellrenderertoggle.c
2040         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
2041         adding this, it's useless
2042         (gtk_cell_renderer_toggle_set_active): remove
2043         (gtk_cell_renderer_toggle_get_radio): add
2044
2045         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
2046         the NULL cell renderer, that doesn't make any sense to me. 
2047
2048         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
2049         demo code should never use deprecated features.
2050
2051         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
2052         code should never use deprecated features.
2053
2054         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
2055         gtk_widget_queue_clear_area deprecated
2056
2057         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
2058         deprecated
2059
2060         * gtk/gtklabel.h: mark gtk_label_get() deprecated
2061
2062         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
2063         a GdkImage deprecated, replaced by new consistently-named
2064         functions       
2065
2066         * gtk/gtkmain.h: Mark gtk_exit() deprecated
2067
2068         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
2069
2070         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
2071         deprecated
2072
2073         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
2074         so it won't appear in docs and confuse people.
2075
2076         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
2077
2078         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
2079         macros deprecated. (can't mark the type itself deprecated, since
2080         GtkProgressBar is not deprecated and we need the type decl to use
2081         GtkProgressBar)
2082
2083         * gtk/gtkpixmap.h: Mark deprecated
2084
2085         * gtk/gtkoldeditable.h: Mark deprecated
2086
2087         * gtk/gtklist.h: Mark deprecated
2088
2089         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
2090         for anything anymore.
2091
2092         * gtk/gtkctree.h: Mark deprecated
2093
2094         * gtk/gtkclist.h: Mark deprecated
2095
2096         * gtk/gtkpreview.h: Mark deprecated
2097
2098         * gtk/gtkpacker.h: Mark deprecated
2099
2100         * gtk/gtktipsquery.h: Mark deprecated
2101
2102         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
2103
2104         * gtk/gtkvruler.h: Add comment that it will move out of GTK
2105
2106         * gtk/gtkhruler.h: Add comment that it will move out of GTK
2107
2108         * gtk/gtkruler.h: Add comment that it will move out of GTK
2109
2110         * gtk/gtkgamma.h: Add comment that it will move out of GTK
2111
2112         * gtk/gtkcurve.h: Add comment that it will move out of GTK
2113
2114 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
2115
2116         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
2117         gdk_colormap_sync private since it was never exported
2118         in a header file.
2119
2120         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
2121         colormap->colors[] for StaticGray, StaticColor colormaps.
2122
2123         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
2124         was being used as if it was image->bits_per_pixel.
2125
2126         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
2127         for the image in the GdkImage structure since it isn't
2128         reconstructable, and we need it to handle packed types
2129
2130         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
2131         the assumption that on Win32 image->bits_per_pixel == image->depth,
2132         always.
2133
2134         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
2135
2136         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
2137         warning message if no converter can be found. 
2138
2139 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
2140
2141         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
2142         chars to isupper() / tolower(). (#567)
2143
2144         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
2145         to clear up 64-bit warnings. (#567)
2146
2147 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
2148
2149         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
2150         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
2151
2152         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
2153         since some people set $(libdir) separately. (#1290, David Kaelbling)
2154
2155 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
2156
2157         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
2158         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
2159         MAXPATHLEN, but the code here depends on a fixed value.)
2160         (#4524)
2161
2162 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
2163
2164         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
2165         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
2166
2167 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
2168
2169         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
2170         viewable there is no way that moving the node will cause the 
2171         focus row to become not viewable, so omit check on the visibility
2172         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
2173
2174 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
2175
2176         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
2177         selection before inserting new text.
2178
2179 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
2180
2181         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
2182         Make the sensitivity of the reparented child track that of
2183         the original parent menu item. (#34218, David Hodson)
2184
2185         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
2186         the case where the current item is destroyed properly.
2187
2188         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
2189         some edge cases with child-less menuitems.
2190         
2191 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
2192
2193         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
2194         key pop down window. (#12074, Jon K Hellan)
2195
2196 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
2197
2198         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
2199         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
2200         The solution here isn't perfect - you get an extraneous
2201         emission of "toggle", which could conceivably confuse an app,
2202         but better than the current situation. LXR search seems to
2203         indicate that no apps in GNOME CVS connect to "toggle".
2204
2205 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
2206
2207         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
2208         gtk_public_h_sources to directly here to avoid warning when
2209         building srcdir != builddir. (#9656)
2210
2211 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
2212
2213         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
2214         handlers in gtkrange.c return the proper values (TRUE == handled)
2215         (#10316).
2216
2217         This is just the tip of the iceberg, but gtkrange.c is the
2218         most common place where the propagation is problematical,
2219         and also a place where it is almost certainly safe to change
2220         this in the stable branch.
2221
2222         (You don't want right click popups on a range control or anything...)
2223
2224 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
2225
2226         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
2227         area on focus out, even if a background pixmap isn't set.
2228         (#13941)
2229         
2230 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
2231
2232         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
2233         to deal with setting the shape properly when scrolling arrows are
2234         turned on, but not visible because there is sufficient space.
2235         (#13432)
2236
2237 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
2238
2239         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
2240         items with submenus, destroy the item along with the submenu.
2241         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
2242         properly.
2243
2244         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
2245         later.
2246
2247 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
2248
2249         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
2250         the focus widget sometimes wasn't drawn with the default if there
2251         was no default widget.
2252
2253         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
2254         unreference pixmaps. 
2255
2256         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
2257         for some extra safety.
2258
2259 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
2260
2261         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
2262         the text of a cell to the old pointer value better, by
2263         copying the new text before freeing the old text. Some code
2264         cleanup. (#8079, Karl Nelson)
2265
2266 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
2267
2268         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
2269         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
2270
2271 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
2272
2273         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
2274         item from a menu, check to see if it matches 
2275         menu->old_active_menu_item, and if so, unref and clear
2276         old_active_menu_item (Patch from Pavel Cisler)
2277
2278         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
2279         menu_shell->active_menu_item, if it is the child being
2280         removed. (Patch based on that of Gene Ragan, #50337)
2281
2282 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
2283
2284         * gdk/linux-fb/gdkselection-fb.c: 
2285         * gdk/linux-fb/gdkcolor-fb.c: 
2286         * gdk/linux-fb/gdkdrawable-fb2.c: 
2287         * gdk/linux-fb/gdkfont-fb.c: 
2288         * gdk/linux-fb/gdkim-fb.c: 
2289         * gdk/linux-fb/gdkinput.c: 
2290         * gdk/linux-fb/gdkkeyboard-fb.c: 
2291         * gdk/linux-fb/gdkmain-fb.c: 
2292         * gdk/linux-fb/gdkrender-fb.c: 
2293         A bunch of whitespace cleanup.
2294         
2295 2001-01-30  Havoc Pennington  <hp@pobox.com>
2296
2297         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
2298         #ifdef GTK_ENABLE_BROKEN.
2299
2300         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
2301         GTK_ENABLE_BROKEN just before including the broken headers.
2302         
2303         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
2304         deprecated types registered.
2305
2306         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
2307         we have to test the broken stuff.
2308
2309         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
2310         
2311 2001-01-30  Havoc Pennington  <hp@redhat.com>
2312
2313         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
2314         here where prev pointer was set to the wrong thing
2315
2316         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
2317         (gtk_tree_path_is_descendant): new function
2318
2319         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
2320         cached length
2321         (gtk_list_store_get_iter): don't modify iter if we can't get the
2322         path.
2323
2324         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
2325         
2326         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
2327         GtkTreeDragDest
2328
2329         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
2330         was causing segfault
2331
2332         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
2333         pointer to NULL
2334
2335         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
2336
2337         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
2338         on returning FALSE
2339         (gtk_list_store_iter_children): ditto
2340         (gtk_list_store_iter_nth_child): ditto
2341         (gtk_list_store_iter_nth_child): ditto
2342         (gtk_list_store_iter_parent): ditto
2343
2344         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
2345         on iter->user_data != NULL instead of silently accepting it.
2346         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
2347         we are returning TRUE.
2348         (gtk_tree_store_iter_children): ditto
2349         (gtk_tree_store_iter_nth_child): ditto
2350         (gtk_tree_store_iter_parent): ditto
2351         (gtk_tree_store_insert): remove handling of parent->user_data ==
2352         NULL, replace with parent == NULL       
2353
2354         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
2355         and a comment explaining things
2356
2357         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
2358         interface support to GtkTreeStore.
2359
2360         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
2361         FALSE if no prev, fix
2362
2363         * gtk/gtktreeview.c (set_source_row): use a row reference
2364         (set_dest_row): use a row reference
2365
2366 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
2367
2368         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
2369         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
2370         (gtk_tree_selection_select_iter): The same as above.
2371
2372 2001-01-26  Havoc Pennington  <hp@redhat.com>
2373
2374         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
2375         which holds a handle to a specific row (particular set of values
2376         in the model, i.e. pointer-identity row).
2377
2378         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
2379         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
2380         Still need to use it for the src/dest row saved on the drag context.
2381
2382 2001-01-26  Havoc Pennington  <hp@redhat.com>
2383
2384         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
2385
2386         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
2387         not offset by TREE_VIEW_HEADER_HEIGHT
2388         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
2389         TREE_VIEW_HEADER_HEIGHT
2390
2391         * configure.in (included_loaders): for me, --with-included-loaders
2392         generates the error "the specified loader yes does not exist",
2393         i.e. the arg defaults to "yes", so change test for value ""
2394         to test for value "yes", and include all loaders in that case.
2395
2396         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
2397
2398         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
2399         handle TREE_VIEW_VERTICAL_SEPARATOR
2400         (gtk_tree_view_bin_expose): fix to consider the row offset as
2401         pointing halfway into vertical separator.       
2402         (gtk_tree_view_draw_node_focus_rect): ditto
2403
2404         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
2405         --gtk-debug=updates, which causes gdk_window_set_debug_updates
2406         (TRUE) to be called.
2407
2408         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
2409         debug mode where the invalid region is colored in on invalidate,
2410         so you can see the flicker and know whether your redraw code is 
2411         doing a good job.
2412
2413         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
2414         tree window coordinates (clip rect is in tree window coords)
2415
2416         * gtk/Makefile.am: add gtktreednd.[hc]
2417
2418         * gtk/gtkliststore.c: implement gtktreednd interfaces.
2419
2420         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
2421         drag-and-drop data operations on a model (so we can set up tree
2422         drag-and-drop automatically)
2423
2424         * gtk/testgtk.c: Add a window to change sensitivity in the
2425         GtkLabel test; add a way to change the entry frame in GtkEntry
2426         test
2427
2428         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
2429         (gtk_entry_get_has_frame): new functions to remove the frame
2430         around an entry
2431         (gtk_entry_size_request): shrink requisition if no frame
2432         (gtk_entry_draw_focus): don't draw frame if no frame
2433
2434         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
2435         checks inside a cell renderer
2436         (gtk_default_draw_option): ditto for options
2437
2438         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
2439         children from the alignment, not the button
2440         (gtk_tree_view_column_init): ref/sink the column, to emulate
2441         GObject refcounting.
2442
2443         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
2444         
2445         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
2446         Use theme functions to draw the toggles 
2447
2448         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
2449
2450         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
2451         GdkPangoAttrEmbossed to use in rendering insensitive text
2452
2453         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
2454
2455         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
2456         using new GDK features
2457         
2458 2001-01-24  Alexander Larsson  <alexl@redhat.com>
2459
2460         * gtk/gtkimage.c:
2461         Splitted gtk_image_clear into gtk_image_clear() and
2462         gtk_image_reset(). Call gtk_image_clear() in ::destroy
2463         to avoid leaks.
2464
2465         * gtk/gtklabel.c (set_markup):
2466         Don't leak text.
2467
2468         * gtk/gtktextlayout.c:
2469         Always free display->shaped_objects.
2470
2471         * gtk/testgtk.c (create_clist):
2472         Don't leak custom style.
2473
2474 2001-01-23  Alexander Larsson  <alexl@redhat.com>
2475
2476         * gtk/gtkcolorsel.c (grab_color_at_mouse):
2477         Don't leak image. Simplify using gdk_colormap_query_color().
2478         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
2479
2480         * linux-fb/gdkcolor-fb.c:
2481         Implemented gdk_colormap_query_color.
2482
2483 2001-01-23  Alexander Larsson  <alexl@redhat.com>
2484
2485         * linux-fb/gdkcursor-fb.c:
2486         Don't leak built-in cursors.
2487
2488         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
2489         Don't leak tmp_points.
2490
2491         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
2492         Don't modify desc. Don't leak font if the PangoFont
2493         isn't found.
2494         
2495         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
2496         Free dash_list.
2497
2498         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
2499         Don't leak string.
2500         
2501 2001-01-20  Havoc Pennington  <hp@pobox.com>
2502
2503         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
2504         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
2505         me, matches Pango
2506
2507 2001-01-22  Havoc Pennington  <hp@redhat.com>
2508
2509         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
2510
2511         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
2512
2513         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
2514         Remove, move back to gdk-pixbuf
2515
2516         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
2517         to all the word functions
2518
2519         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
2520         before doing anything on NULL layout or if we don't have the focus
2521
2522         * gtk/testtext.c (fill_example_buffer): "justification"
2523
2524         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
2525         to be called "justification" not "justify"
2526
2527         * demos/gtk-demo/textview.c (create_tags): "justification"
2528         
2529         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
2530
2531 2001-01-22  Alexander Larsson  <alexl@redhat.com>
2532
2533         * gdk/gdkwindow.c (gdk_window_invalidate_region):
2534         Don't leak visible_region. Use visible_region instead of region.
2535         
2536         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
2537         Don't do extra gdk_drawable_ref(). This is not X.
2538         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
2539         gdk_fb_focused_window is ref:ed.
2540         (gdk_fb_window_send_crossing_events): Watch out for destroyed
2541         windows.
2542
2543 2001-01-22  Alexander Larsson  <alexl@redhat.com>
2544
2545         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
2546         Don't leak the PangoFontDescriptor.
2547
2548 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
2549
2550         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
2551         when not realized.
2552         (gtk_tree_view_scroll_to_cell): Make work when not realized.
2553         (gtk_tree_view_realize): add scroll_to support
2554         (gtk_tree_view_finalize): add a finalize method.  Populate.
2555         (gtk_tree_view_insert_column): ref and sink the column.
2556         (gtk_tree_view_append_column): ref and sink the column.
2557         (gtk_tree_view_queue_draw_node): New function to handle redrawing
2558         individual nodes.  Should make the code much more efficient, if
2559         actually used.
2560
2561 2001-01-19  Havoc Pennington  <hp@redhat.com>
2562
2563         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
2564         byte_offset variable was being used to mean both "offset into
2565         layout" and "offset into buffer line" which was no longer true
2566         with addition of preedit string; fix
2567
2568 2001-01-19  Havoc Pennington  <hp@redhat.com>
2569
2570         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
2571
2572         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
2573         function
2574
2575         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
2576         implement
2577
2578         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
2579         scroll_to_cell, matches TextView scroll functions better
2580         (gtk_tree_view_tree_to_widget_coords): new function
2581         (gtk_tree_view_widget_to_tree_coords): new function
2582         (gtk_tree_view_get_visible_rect): new function
2583         (gtk_tree_view_get_path_at_pos): accept negative coordinates
2584         (gtk_tree_view_draw_node_focus_rect): new function moved from
2585         draw_focus, also, use width of bin_window as width of the focus
2586         rect
2587         (gtk_tree_view_expand_row): fix bug where it didn't recognize
2588         already-expanded rows
2589         (gtk_tree_view_get_cell_rect): new function
2590         (gtk_tree_view_get_path_at_pos): return the click position
2591         relative to the passed-in cell
2592         (gtk_tree_view_set_expander_column): new function
2593
2594         * configure.in: remove gtk-config-2.0 chmod
2595
2596         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
2597         and properly handle drags with targets we don't understand
2598         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
2599         scrolling anyway
2600         (gtk_text_view_drag_drop): stop scrolling here though, and set the
2601         mark invisible
2602
2603         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
2604         function
2605         (gtk_drag_dest_get_target_list): new function
2606         (gtk_drag_dest_set_target_list): new function
2607         
2608         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
2609
2610         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
2611         related to drag-and-drop
2612
2613 2001-01-19  Alexander Larsson  <alexl@redhat.com>
2614
2615         * gdk/linux-fb/gdkprivate-fb.h:
2616         Define EMULATE_GDKFONT.
2617         Add extra pango_font stuff to GfkFontPrivate.
2618         
2619         * gdk/linux-fb/gdkdrawable-fb2.c:
2620         * gdk/linux-fb/gdkfont-fb.c:
2621         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
2622         emulation using PangoFont.
2623
2624 2001-01-17  Havoc Pennington  <hp@pobox.com>
2625
2626         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
2627         all the non-deprecated set_foo functions. Added missing object
2628         properties, and added g_object_notify() to setters. 
2629         Wrote docs.
2630         
2631 2001-01-18  Tor Lillqvist  <tml@iki.fi>
2632
2633         * gtk/gtkmain.c
2634         * gtk/gtkrc.c: (Win32) Use the new
2635         g_win32_get_package_installation_(sub)directory() functions.
2636
2637         * config.h.win32.in: New file.
2638         
2639         * config.h.win32: Removed.
2640
2641         * configure.in: Output config.h.win32.
2642
2643         * Makefile.am: Add it to EXTRA_DIST.
2644
2645         * gtk/gtk.def: Update.
2646
2647 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
2648
2649         * gtk/gtklabel.c (gtk_label_size_request): Set the
2650         attributes onto the PangoLayout even if they are newly
2651         created from label->pattern.
2652
2653 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
2654
2655         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
2656
2657         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
2658         structures in functions. Fixes bug where gtk_dataset_*
2659         was accidentally still being used in one place, causing
2660         every dest side event to be treated independently.
2661
2662         * gtk/gtkdnd.c: Remove last vestages of handling
2663         ::draw (fixes warning)
2664         
2665         * gtk/gtkentry.[ch]: Add drag and drop support.
2666
2667         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
2668         new function gtk_check_drag_threshhold() for checking
2669         to check if (dx,dy) has exceeded the threshhold for starting
2670         a drag and use it everywhere.
2671
2672 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
2673
2674         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
2675         add -I{includedir}/gtk-2.0.
2676
2677         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
2678         gdk/gdk-pixbuf.h: Doc fixups.
2679         
2680         * gtk/gtkobject.h: Remove trailing , from enum
2681
2682 2001-01-17 Alexander Larsson <alexl@redhat.com> 
2683
2684         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
2685         Doh! Mixed up x and y.
2686
2687         * gdk/linux-fb/gdkglobals-fb.c:
2688         Removed gdk_fb_pointer_grab_window_events,
2689         added _gdk_fb_pointer_grab_owner_events and
2690         _gdk_fb_keyboard_grab_owner_events.
2691
2692         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
2693         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
2694         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
2695         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
2696         Send crossing events after ungrab finished.
2697         (gdk_keyboard_grab): Set ..._owner_events
2698         (type_masks): Move out of function.
2699         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
2700         gdk_fb_keyboard_event_window): New functions, return the
2701         window an event should be targeted at. Handles grabs and
2702         event propagation. Can return NULL.
2703         (gdk_event_make): Remove event_mask checking. Now always
2704         returns an event.
2705                 
2706         * gdk/linux-fb/gdkkeyboard-fb.c:
2707         * gdk/linux-fb/gdkproperty-fb.c:
2708         * gdk/linux-fb/gdkselection-fb.c:
2709         Use new event_window/gdk_event_make() behaviour.
2710         
2711         * gdk/linux-fb/gdkmouse-fb.c:
2712         Use new event_window/gdk_event_make() behaviour.
2713         Only send motion events if in the same window.
2714         If grabbed, use cursor from window if sibling of grabbed
2715         window, and cursor from grabbed window otherwise.
2716
2717         * gdk/linux-fb/gdkprivate-fb.h:
2718         Update gdk_fb_window_send_crossing_events, gdk_event_make
2719         and grab varaible declarations. Add gdk_fb_*_event_window().
2720
2721         * gdk/linux-fb/gdkwindow-fb.c:
2722         Use new event_window/gdk_event_make() behaviour.
2723         Keep correct track of focus window.
2724         (gdk_window_set_events): Set all specific button motion masks
2725         if GDK_BUTTON_MOTION_MASK set.
2726
2727         * gtk/gtkdnd.c (gtk_drag_update):
2728         Free info->last_event if gdk_drag_motion returned FALSE.
2729
2730 2001-01-16  Tor Lillqvist  <tml@iki.fi>
2731
2732         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
2733         Eliminate redraws when input-only windows are shown or
2734         hidden. Thanks to jpe@archaeopteryx.com.
2735
2736 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
2737
2738         * docs/faq/gtk-faq.sgml: FAQ update:
2739           - Update to bugzilla
2740           - Add GTK+ and security/SUID/SGID
2741           - Add DnD question
2742
2743 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
2744
2745         * gdk/linux-fb/gdkdnd-fb.c:
2746         Some cleanups.
2747         
2748 2001-01-15  Havoc Pennington  <hp@pobox.com>
2749
2750         * tests/testtreeview.c: add test stuff for CellRendererToggle
2751
2752         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
2753         accessor
2754
2755         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
2756         only toggle on button press (would do release like GtkButton, but
2757         we'd need implicit grab code for treeview cells)
2758
2759 2001-01-16  Tor Lillqvist  <tml@iki.fi>
2760
2761         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
2762
2763         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
2764         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
2765
2766         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
2767         to g_{locale,filename}_{to,from}_utf8 to match current API.
2768
2769         * gtk/makefile.msc.in (gtk_OBJECTS)
2770         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
2771
2772         * gtk/gtk.def: Update.
2773
2774 2001-01-15  Tor Lillqvist  <tml@iki.fi>
2775
2776         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
2777         implementaion that more closely mimics the events that an X server
2778         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
2779         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
2780         with nested preview widgets, for instance, more responsive when
2781         you move the mouse quickly into them.
2782         (find_window_for_pointer_event): Make it actually compile.
2783         (gdk_event_translate): Set send_event to the value of
2784         InSendMessage (). This doesn't really mean the same as X11's
2785         send_event flag, but is close enough, says jpe@archaeopteryx.com
2786
2787 2001-01-15  Alexander Larsson  <alexl@redhat.com>
2788
2789         * gdk/linux-fb/gdkdnd-fb.c:
2790         Implemented drag and drop.
2791         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
2792         when it tries to free and then copy the same event (info->last_event).
2793         I am not sure about why this happens, but will continue looking.
2794
2795 2001-01-15  Alexander Larsson  <alexl@redhat.com>
2796
2797         * gdk/linux-fb/gdkwindow-fb.c:
2798         Use gdk_window_invalidate_rect instead of
2799         gdk_window_invalidate_rect_clear to minimise flashing.
2800         When hiding windows you need to clear the root window though.
2801
2802 2001-01-15  Alexander Larsson  <alexl@redhat.com>
2803
2804         * gdk/linux-fb/gdkdrawable-fb2.c:
2805         For optization, add an full_shapes argument to gdk_fb_clip_region.
2806         If this is false, only the cliprects of the shapes are used.
2807
2808         * gdk/linux-fb/gdkprivate-fb.h:
2809         Export gdk_fb_window_peek_shape.
2810         Add full_shapes to gdk_fb_clip_region.
2811
2812         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
2813         When moving a window, don't clear everything under the it, just the
2814         root window. Makes stuff faster and flash less.
2815         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
2816         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
2817         offset of the shape.
2818         
2819
2820 2001-01-12  Havoc Pennington  <hp@redhat.com>
2821
2822         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
2823         current invalid region, fixes redraw bug while scrolling the 
2824         text widget
2825
2826         * gtk/gtktextview.c, gtk/gtktextview.h:
2827         Rearrange the scrolling/validation/etc. code in a major way, 
2828         so it seems to make sense to me. Probably isn't genuinely that
2829         much better, but...
2830
2831         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
2832         notifies
2833
2834         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
2835
2836 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
2837
2838         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
2839         Hide mouse pointer while rotation. Show it afterwards.
2840
2841 2001-01-12  Alexander Larsson  <alexl@redhat.com>
2842
2843         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
2844         windows in consideration when generating clip region.
2845
2846         * gdk/linux-fb/gdkfb.h:
2847         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
2848
2849         * gdk/linux-fb/gdkprivate-fb.h:
2850         Add shape to GdkWindowFBDatat.
2851         exported gdk_fb_window_get_abs_shape().
2852         removed gdk_fb_draw_lines declaration.
2853
2854         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
2855         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
2856         send focus changes when there is a grabbed window.
2857         (gdk_window_get_pointer): Handle shaped windows.
2858         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
2859         (gdk_fb_window_peek_shape): Returns the shape for a window,
2860         handles GDK_FB_USE_CHILD_SHAPE.
2861         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
2862         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
2863         (gdk_window_shape_combine_mask): Implement.
2864
2865         * gtk/gtkwindow-decorate.c:
2866         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
2867         setting the shape of a window makes the window transparent.
2868
2869 2001-01-11  Havoc Pennington  <hp@redhat.com>
2870
2871         * gtk/gtktreemodelsimple.h: Oops, broke some macros
2872
2873 2001-01-10  Havoc Pennington  <hp@redhat.com>
2874
2875         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
2876         add this function, bug 40251
2877
2878         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
2879         of type macro   
2880
2881 2001-01-11  Alexander Larsson  <alexl@redhat.com>
2882
2883         * acconfig.h:
2884         Added ENABLE_SHADOW_FB
2885
2886         * configure.in:
2887         Added --disable-shadowfb
2888
2889         * gdk/linux-fb/gdkcursor-fb.c:
2890         Update shadowfb when updating cursor
2891
2892         * gdk/linux-fb/gdkdrawable-fb2.c:
2893         Added wrappers for shadowfb that calls  the normal drawable
2894         methods, but calls gdk_shadow_fb_update(bounding box) when
2895         GdkWindows are drawed to.
2896         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
2897         which also returns the bounding box.
2898
2899         * gdk/linux-fb/gdkfb.h:
2900         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
2901
2902         * gdk/linux-fb/gdkgeometry-fb.c:
2903         Update shadowfb when scrolling window.
2904
2905         * gdk/linux-fb/gdkglobals-fb.c:
2906         Add _gdk_fb_screen_angle.
2907         
2908         * gdk/linux-fb/gdkkeyboard-fb.c:
2909         Test code for screen rotation. Shift-F2 in the xlate driver
2910         rotates the screen.
2911
2912         * gdk/linux-fb/gdkmain-fb.c:
2913         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
2914
2915         * gdk/linux-fb/gdkmouse-fb.c:
2916         Use fb_width/height instead of modeinfo.xres/yres.
2917
2918         * gdk/linux-fb/gdkprivate-fb.h:
2919         Added fb_men, fb_width, fb_height & fb_stride. When using
2920         shadow fb these can differ from the framebuffer stuff.
2921         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
2922         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
2923         _gdk_fb_screen_angle. Removed CM, RP.
2924
2925         * gdk/linux-fb/gdkrender-fb.c:
2926         Added code for shadowfb handling and screen rotation using
2927         shadowfb.
2928
2929         * gdk/linux-fb/gdkwindow-fb.c:
2930         Use fb_mem, fb_stride, fb_width, fb_height.
2931         Added recompute_rowstride to reset the rowstride of all windows.
2932         Added gdk_fb_recompute_all() which recomputes rootwindow size,
2933         window abs positions and window rowstrides. Usefull when the
2934         rotation has changed.
2935
2936 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
2937
2938         * docs/faq/gtk-faq.sgml: update to make web site updating easier
2939
2940 2001-01-10  Havoc Pennington  <hp@redhat.com>
2941
2942         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
2943         where sibling == iter
2944         (gtk_tree_store_insert_after): handle sibling == iter
2945         (gtk_tree_store_prepend): remove stamp checks
2946         (gtk_tree_store_insert_before): ditto
2947         (gtk_tree_store_append): ditto
2948         (gtk_tree_store_get_path): ditto
2949         (gtk_tree_store_get_value): ditto
2950         (gtk_tree_store_iter_has_child): ditto
2951         (gtk_tree_store_iter_n_children): ditto
2952         (gtk_tree_store_iter_nth_child): ditto
2953         (gtk_tree_store_insert_after): ditto
2954         (gtk_tree_store_is_ancestor): ditto
2955         (gtk_tree_store_iter_depth): ditto
2956         (gtk_tree_store_insert_before): assert that sibling's parent is
2957         the same as the passed-in parent
2958         (gtk_tree_store_insert_after): assert that sibling's parent is
2959         the same as the passed-in parent
2960
2961         
2962         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
2963         function to get the first iterator in a model
2964         
2965         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
2966         conventionally the "root" in this sense is just NULL afaict.
2967
2968         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
2969         where sibling == iter
2970         (gtk_list_store_insert_after): handle case where sibling == iter
2971
2972         * tests/testtreeview.c (run_automated_tests): fairly lame basic
2973         automated tests for ListStore, TreeStore
2974
2975         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
2976         (gtk_list_store_insert): update tail pointer, and fix it to work
2977         (gtk_list_store_insert_before): update tail pointer, and fix it to work
2978         (gtk_list_store_append): use tail to be faster
2979         (gtk_list_store_prepend): fix it, update tail pointer
2980         (gtk_list_store_insert_after): fix it, update tail pointer
2981
2982         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
2983         the list
2984
2985 2001-01-09  Havoc Pennington  <hp@redhat.com>
2986
2987         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
2988         is NULL due to a pending resize
2989
2990         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
2991         column width to values less than 1
2992
2993         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
2994         width to be between min/max width, and still set the width 
2995         even if autosize is turned on, so the tree view can use this 
2996         function in order to autosize.
2997         (gtk_tree_view_column_init): set initial width to 1 not 0
2998
2999         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
3000         setter function to modify column width, so we get notification
3001         (gtk_tree_view_insert_iter_height): ditto
3002         (gtk_tree_view_calc_size): ditto
3003         (gtk_tree_view_check_dirty): ditto
3004
3005         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
3006         properties to change all the interesting attributes of the tree
3007         view column.
3008         (gtk_tree_view_column_set_header_clickable): rename set_clickable
3009         (gtk_tree_view_column_get_clickable): add
3010         (gtk_tree_view_column_set_cell_renderer): don't unset the current
3011         attributes; assume a cell renderer with equivalent object
3012         properties has been swapped in. Do g_object_notify().
3013         (gtk_tree_view_column_set_visible): g_object_notify
3014         (gtk_tree_view_column_get_sizing): rename from get_col_type
3015         (gtk_tree_view_column_set_sizing): g_object_notify
3016         (gtk_tree_view_column_set_width): add g_object_notify
3017         (gtk_tree_view_column_set_min_width): ditto
3018         (gtk_tree_view_column_set_max_width): ditto
3019         (gtk_tree_view_column_set_title): ditto
3020         (gtk_tree_view_column_set_clickable): ditto
3021         (gtk_tree_view_column_set_widget): ditto
3022         (gtk_tree_view_column_set_justification): ditto
3023
3024 2001-01-09  Havoc Pennington  <hp@redhat.com>
3025
3026         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
3027         there are no rows in the model
3028
3029         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
3030         NULL, then return the start of the list
3031
3032         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
3033         if we can't get any rows from an empty model 
3034
3035         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
3036         extraneous * after function pointer typedef usage
3037
3038         * Makefile.am: don't specify full path to cp and rm
3039
3040         * gtk/gtkcellrenderertextpixbuf.c
3041         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
3042         NULL before dereferencing, fixes a segfault that happened from
3043         time to time
3044
3045         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
3046         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
3047         and reindent the function
3048         (gtk_cell_renderer_pixbuf_get_size): indentation
3049
3050         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
3051         we quit it
3052         (gtk_dialog_add_buttons_valist): add g_return_if_fail
3053         (gtk_dialog_set_default_response): New function, to set default
3054         button
3055         (gtk_dialog_set_response_sensitive): New function, to set 
3056         sensitivity of buttons
3057
3058         * gtk/gtkcellrendererpixbuf.c
3059         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
3060         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
3061
3062         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3063         handle any G_TYPE_OBJECT subclass, not just the base class, and 
3064         also boxed types.
3065         (_gtk_tree_data_list_value_to_node): ditto
3066
3067         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
3068         --gtk-debug=tree
3069
3070         * gtk/gtkmain.c: add GTK_DEBUG_TREE
3071
3072         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
3073
3074 2001-01-09  Tor Lillqvist  <tml@iki.fi>
3075
3076         * gdk/win32/gdkevents-win32.c: Implement better mouse
3077         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
3078         (find_window_for_pointer_event): New function.
3079         (gdk_event_translate): Use it when handling mouse events.
3080
3081 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
3082
3083         * configure.in:
3084         Added --with-included-loaders option
3085
3086         * gdk-pixbuf/Makefile.am:
3087         * gdk-pixbuf/gdk-pixbuf-io.c:
3088         Add support for including selected gdk-pixbuf loaders only.
3089
3090         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
3091         gtk_window_set_has_frame):
3092         Added inline documentation.
3093
3094         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
3095         * docs/reference/gdk/tmpl/windows.sgml:
3096         Added inline documentation.
3097
3098 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
3099
3100         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
3101         realizing buttons that have already been realized.
3102
3103 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
3104
3105         * tests/testtreeview.c (main): Show menu items before adding to
3106         option menu.
3107
3108         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
3109         around if we kill them.
3110
3111         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
3112         Return if we pass in a NULL model.
3113
3114 2001-01-08  Havoc Pennington  <hp@redhat.com>
3115
3116         * tests/testtreeview.c: hack on this some
3117
3118         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
3119         gtk_tree_store_set_valist, v is for arrays, valist for varargs
3120         list
3121         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
3122
3123         * gtk/gtkliststore.h: Add varargs set() and get() convenience
3124         functions
3125
3126 2001-01-08  Alexander Larsson  <alexl@redhat.com>
3127
3128         * gtk/gtkwindow-decorate.[hc]:
3129         * gtk/Makefile.am:
3130         New files. Contains an implementation of a minimal WM for
3131         linux-fb.
3132
3133         * gtk/gtkwindow.h:
3134         Add the possibility for GtkWindows to specify a frame. This
3135         is used for the window decoration code, but could concievably
3136         be used for X programs too (xmms style windows).
3137         GtkWindow->frame is the toplevel window if the window is framed.
3138         The signal frame_event gets all events that are targeted to
3139         GtkWindow->frame.
3140         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
3141         
3142         * gtk/gtkwindow.c:
3143         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
3144         Call out to gtkwindow-decorate.c for WM support in linx-fb.
3145
3146 2001-01-08  Alexander Larsson  <alexl@redhat.com>
3147
3148         * docs/README.linux-fb:
3149         Correct filename ~/.pangoft2_aliases
3150
3151         * gdk/gdkwindow.h:
3152         Added new function gdk_window_get_decorations.
3153
3154         * gdk/linux-fb/gdkfb.h:
3155         Removed _gdk_window_get_decorations declaration.
3156         Renamed _gdk_window_set_child_handler to
3157         gdk_fb_window_set_child_handler.
3158
3159         * gdk/linux-fb/gdkwindow-fb.c:
3160         Renamed _gdk_window_set_child_handler to
3161         gdk_fb_window_set_child_handler.
3162
3163         * gdk/x11/gdkwindow-x11.c:
3164         New function gdk_window_get_mwm_hints().
3165         Implemented gdk_window_get_decorations.
3166
3167         * docs/reference/gdk/tmpl/windows.sgml:
3168         * docs/reference/gdk/gdk-sections.txt:
3169         Added gdk_window_get_decorations docs.
3170         
3171 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
3172
3173         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
3174         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
3175         gdk_fb_window_send_crossing_events):
3176         Possibly send focus events when the mouse moves from one
3177         window to another.
3178
3179 2001-01-07  Tor Lillqvist  <tml@iki.fi>
3180
3181         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
3182         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
3183         to match current API.
3184
3185         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
3186         environment variable is set, don't call g_error when on a
3187         palettized (PseudoColor) display. Some people want to use GTK+ 
3188         in 256-colour mode even though works only partially.
3189
3190         * gdk/gdk.def
3191         * gtk/gtk.def
3192         * gtk/makefile.mingw.in: Update.
3193
3194 2001-01-05  Havoc Pennington  <hp@redhat.com>
3195
3196         * tests/testtreeview.c: hack on this a bit
3197
3198         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
3199         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
3200
3201         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
3202         was spelled incorrectly
3203         (GTK_IS_TREE_MODEL_SIMPLE): ditto
3204
3205         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
3206         from gtk_tree_view_set_headers_active   
3207
3208         * gtk/gtktexttag.c:
3209         (gtk_text_tag_get_property): handle PROP_DIRECTION
3210         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
3211         properties, bug 40235
3212
3213         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
3214         forward_to_line_end
3215
3216 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
3217
3218         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
3219         modules/input/gtkimcontextxim.c: Adapt to new prototypes
3220         for unicode,locale,filename conversion functions.
3221
3222 2001-01-05  Havoc Pennington  <hp@redhat.com>
3223
3224         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
3225         broken if called on the first position in the buffer.
3226
3227         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
3228         forward_to_delimiters to be called only if we aren't already at
3229         the delimiters.
3230
3231 2001-01-05  Havoc Pennington  <hp@redhat.com>
3232
3233         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
3234
3235 2001-01-05  Alexander Larsson  <alexl@redhat.com>
3236
3237         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
3238         colormap in here. Sync from X port.
3239         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
3240         Sync from X port.
3241         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
3242         This happens now and then, and i don't think it is a bug.
3243         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
3244         != endpoint.
3245         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
3246         GDK_LINE_SOLID.
3247
3248         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
3249         some of the fields filled in at least.
3250
3251         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
3252         miLineArcD is no more, remove it from the function definition.
3253
3254 2001-01-04  Havoc Pennington  <hp@redhat.com>
3255
3256         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
3257         this
3258
3259         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
3260         user_data instead of tree_node
3261
3262         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
3263         TREE_VIEW_COLUMN_SIZE
3264
3265         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
3266         "size" field to "width" finishes bug 40061
3267
3268         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
3269         for bitfields, bug 40268
3270
3271 2001-01-04  Havoc Pennington  <hp@redhat.com>
3272
3273         Rename some stuff:
3274         
3275         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
3276
3277         s/GtkModelSimple/GtkTreeModelSimple/g;
3278         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
3279         s/gtk_model_simple/gtk_tree_model_simple/g;
3280         s/gtkmodelsimple/gtktreemodelsimple/g;
3281
3282         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
3283
3284         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
3285         s/column_set_col_type/column_set_sizing/g;
3286
3287         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
3288         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
3289
3290         s/GtkCellRendererType/GtkCellRendererState/g;
3291         
3292         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
3293         (gtk_cell_renderer_toggle_class_init): change "state" property to
3294         "active", to match GtkToggleButton
3295         (gtk_cell_renderer_toggle_get_active): new function, bug
3296         40269
3297         (gtk_cell_renderer_toggle_set_active): new function
3298         (gtk_cell_renderer_toggle_set_property): route changes to toggle
3299         state through gtk_cell_renderer_set_active
3300
3301 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
3302
3303         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
3304         temporarily until they work again.  Brought up to date with
3305         changes in the model.
3306         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
3307         model.
3308
3309 2001-01-04  Havoc Pennington  <hp@redhat.com>
3310
3311         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
3312         equal to the line length, then position iterator before paragraph 
3313         separators. Fixes crash reported by Mikael Hermansson when
3314         pressing left arrow from the start of a line.   
3315
3316         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
3317         about byte indexes off the end
3318         (iter_set_from_char_offset): add g_error about char offsets
3319         off the end
3320
3321 2001-01-03  Havoc Pennington  <hp@redhat.com>
3322
3323         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
3324
3325         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
3326         of private functions; remove inclusion of private headers.
3327
3328         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
3329         function, so we don't need private functions in gtktextdisplay.c
3330
3331         * gtk/gtktextiterprivate.h: underscore-ification
3332
3333         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
3334         to instead say "only useful to implement widgets"
3335
3336         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
3337         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
3338         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
3339
3340         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
3341         This function was completely broken
3342
3343         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
3344
3345         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
3346
3347         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
3348
3349         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
3350
3351         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
3352
3353         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
3354
3355         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
3356         gtk_paint_layout
3357
3358         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
3359         gtk_paint_layout
3360
3361         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
3362         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
3363         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
3364         which were not implemented.     
3365
3366         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
3367         insert_pixbuf signal. Rename delete_text to delete_range since it
3368         also deletes pixbufs and child anchors. This almost closes bug
3369         40245 (still need to deal with child anchors)
3370
3371         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
3372         insert_pixbuf, change signal names as appropriate, change types of
3373         signals taking marks/tags to have the specific type, not just
3374         G_TYPE_OBJECT
3375         
3376         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
3377         closes bug 40051
3378
3379         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
3380         unnecessary remove_contents() call
3381         (gtk_option_menu_class_init): add a "changed" signal, closes
3382         bug 40039
3383         (gtk_option_menu_update_contents): emit "changed" if the 
3384         active menu item changes
3385
3386         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
3387         cast to GtkObject, reported by Jonas Borgstrom
3388         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
3389         we can't do stuff with side effects in finalize. Instead, spew a
3390         warning if the loader isn't closed.
3391
3392         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
3393         colormap in here, non-X ports probably need to sync to this change
3394
3395         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
3396         assertion that colormap != NULL, you can set the colormap to NULL
3397         if you like.
3398         
3399         * Makefile.am: remove gtk-config-2.0
3400
3401         * configure.in: Use pkg-config to locate GLib. Remove
3402         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
3403         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
3404         Use pkg-config to locate Pango. Output correct Pango libs to
3405         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
3406
3407         * Makefile.am (pkgconfig_DATA): install only target-specific pc
3408         files
3409         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
3410         X11 pc files
3411
3412         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
3413         unref from here
3414
3415 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
3416
3417         * configure.in:
3418         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
3419
3420 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
3421
3422         * gtk/gtktextlayout.c
3423         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
3424         variable when moving back onto a single line.
3425
3426 2001-01-01  Havoc Pennington  <hp@redhat.com>
3427
3428         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
3429
3430         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
3431
3432         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
3433         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
3434
3435 2001-01-01  Havoc Pennington  <hp@redhat.com>
3436
3437         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
3438
3439         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
3440         GtkTextAttributes
3441
3442         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
3443         #40246
3444         (gtk_text_attributes_copy_values): rename from 
3445         gtk_text_attributes_copy
3446         (gtk_text_attributes_copy): a more standard GTK copy function, 
3447         which returns a new object
3448
3449 2001-01-01  Havoc Pennington  <hp@redhat.com>
3450
3451         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
3452         
3453         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
3454         don't fill in tree_view->priv->selection, kind of an unexpected
3455         side effect
3456
3457         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
3458         gtkintl.h
3459         
3460         * gtk/gtkcellrenderer.c: Remove definition of _ and include
3461         gtkintl.h
3462         (gtk_cell_renderer_get_property): remove calls to g_value_init
3463
3464         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
3465         gtkintl.h
3466
3467         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
3468         and include gtkintl.h
3469         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
3470         property names
3471
3472         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
3473         GtkTreeSelection
3474         (_gtk_tree_selection_new_from_with_view): rename, return
3475         GtkTreeSelection
3476         (_gtk_tree_selection_set_tree_view): rename with uscore
3477         (gtk_tree_selection_get_selected): fill in the "model" out param
3478         first, so it gets filled in even if we return at the top of the 
3479         function
3480         (gtk_tree_selection_real_select_all): add a comment and an else{}
3481         to clarify this a bit
3482         (gtk_tree_selection_real_unselect_all): add the same else{}
3483
3484         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
3485         set_tree_view to have underscore prefixes, move them to the
3486         private header, fix return type of new_with_tree_view
3487         (struct _GtkTreeSelection): mark struct
3488         fields private  
3489
3490         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
3491         GtkTreeModelFlags, not a guint
3492         (gtk_tree_path_prev): return gboolean not gint
3493         (gtk_tree_path_up): return gboolean not gint
3494
3495         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
3496         return GtkTreeModelFlags, not a guint
3497
3498         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
3499         that child model is non-null before unrefing it
3500         (g_value_int_compare_func): make this a qsort compare func, not 
3501         a boolean predicate
3502
3503         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
3504         (add -umn to the end), and mark it unimplemented
3505         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
3506         I don't see what it's for - doesn't the model always sort itself?
3507         (gtk_tree_model_sort_set_compare): this had the wrong signature
3508
3509         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
3510         Fix the docs to say that it destructively replaces existing
3511         attributes (previously said that it added attributes).
3512         (gtk_tree_view_column_set_visible): canonicalize bool before
3513         equality testing. Also, check for realization before
3514         hiding/showing the tree_column->window; if this window could exist
3515         before realization, then it's busted and needs fixing, we can't 
3516         create GDK resources pre-realization. Also, remove
3517         superfluous queue_resize(), since set_size() does that for us.
3518         (gtk_tree_view_column_set_col_type): check realization before 
3519         using tree_column->window
3520
3521         * gtk/gtktreedatalist.c: fix filename in copyright notice
3522
3523 2000-12-31  Havoc Pennington  <hp@pobox.com>
3524
3525         * gtk/gtktextview.c: Rearrange all the
3526         scroll-while-dragging-or-selecting code to be different, not
3527         necessarily better. ;-)
3528         (gtk_text_view_scroll_to_mark): Change this
3529         function to take within_margin as a fraction instead of a pixel
3530         value, and to take alignment arguments (indicating where to align 
3531         the mark inside the visible area)
3532         
3533         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
3534         to GtkObject
3535
3536         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
3537         behavior so that offsets past the end of the line are not 
3538         allowed, and an offset equal to the line length moves the iterator
3539         to the next line
3540         (gtk_text_iter_set_line_index): make parallel change
3541         (gtk_text_iter_get_bytes_in_line): add this function
3542         
3543         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
3544         of byte indexes off the end of the line; byte index at the end of
3545         the line now returns FALSE and doesn't fill in the requested
3546         values, byte index past the end of the line is an error.  Also,
3547         don't allow -1 offset anymore, since its meaning is unclear.
3548
3549         This change exposes some bug in visual cursor motion, where we
3550         end up with a huge invalid byte index; needs fixing. Symptom of 
3551         bug is a crash when you hit up arrow.
3552         
3553         (_gtk_text_line_char_locate): match the change to byte_locate
3554
3555         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
3556         from start of line properly. fixes bug reported by Mikael
3557         Hermansson where backspace would delete all text before the
3558         cursor.
3559
3560 2000-12-30  Tor Lillqvist  <tml@iki.fi>
3561
3562         * gdk/win32/gdkwindow-win32.c
3563         (gdk_window_impl_win32_get_visible_region): New function, as in
3564         the X11 backend.
3565         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
3566         instead of duplicating the same code here.
3567
3568         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
3569         GDK_COLORMAP macro.
3570
3571         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
3572         destroy function.
3573         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
3574         access that.
3575
3576         * gtk/gtk.def: Update.
3577
3578         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
3579
3580 2000-12-30  Havoc Pennington  <hp@pobox.com>
3581
3582         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
3583         colormap on input only windows, to avoid special cases all over
3584         the code for these windows.
3585
3586 2000-12-26  Tor Lillqvist  <tml@iki.fi>
3587
3588         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
3589         we are on a palettized display ("PseudoColor" in X11), as the code
3590         for that doesn't work anyway, and never has.
3591
3592 2000-12-22  Alexander Larsson  <alexl@redhat.com>
3593
3594         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
3595         Don't use isprint() for chars > 255.
3596
3597 2000-12-21  Havoc Pennington  <hp@redhat.com>
3598
3599         * tests/testtreeview.c: more work
3600
3601 2000-12-21  Alexander Larsson  <alexl@redhat.com>
3602
3603         * docs/README.linux-fb:
3604         Update the docs to the new pangoft2 way.
3605
3606 2000-12-21  Alexander Larsson  <alexl@redhat.com>
3607
3608         * configure.in:
3609         For linux-fb get the pangoft2 cflags and libs. This needs a recent
3610         pango version.
3611         Remove modules/linux-fb/Makefile.
3612
3613         * gdk/linux-fb/gdkdrawable-fb2.c:
3614         Render glyphs using freetype.
3615
3616         * gdk/linux-fb/gdkfb.h:
3617         Add new fb-specific functions needed for managing windows.
3618
3619         * gdk/linux-fb/gdkmain-fb.c:
3620         Remove gdk_font_init/fini() calls.
3621
3622         * gdk/linux-fb/gdkpango-fb.c:
3623         Remove old implementation. Use pangoft2 instead.
3624
3625         * gdk/linux-fb/gdkprivate-fb.h:
3626         Remove PangoFBFont and related stuff.
3627
3628         * gdk/linux-fb/gdkwindow-fb.c:
3629         Implement drawable->get_visible_region.
3630         Implement support for _gdk_window_set_child_handler () and
3631         _gdk_window_get_decorations().
3632
3633         * modules/Makefile.am:
3634         Remove linux-fb subdir.
3635
3636         * modules/linux-fb/*:
3637         Removed all.
3638         
3639 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
3640
3641         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
3642         calls, as they are no longer needed.
3643
3644         * gtk/gtktreemodelsort.c: Fix up the comparison code.
3645         
3646         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
3647         figure out how to emit a signal on an interface.
3648
3649 2000-12-20  Havoc Pennington  <hp@redhat.com>
3650
3651         * tests: new directory to contain tests, gtk/test* should move
3652         here sometime (with appropriate on-cvs-server hackery)
3653
3654         * tests/testtreeview.c, tests/Makefile.am: a test
3655         
3656         * configure.in (AC_OUTPUT): add tests/Makefile
3657
3658         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
3659         and "invisible_set" which were missing
3660
3661         * gtk/gtkrbtree.h: some cheesy indentation fix
3662         
3663 2000-12-20  Alexander Larsson  <alexl@redhat.com>
3664
3665         * gtk/gtkinvisible.c (gtk_invisible_realize):
3666         Attach the style to the window so that the style it is not
3667         leaked when unrealizing the window.
3668
3669 2000-12-18  Havoc Pennington  <hp@redhat.com>
3670
3671         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
3672         begin/end user action where appropriate
3673         (gtk_text_view_commit_handler): add begin/end user action
3674
3675         * gtk/gtktextbuffer.c: add begin/end user action signals, and
3676         bracket interactive operations with begin/end user action pair.
3677         
3678         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
3679         "interactive" arg from insert_text and delete_text signals.
3680         Add begin_user_action, end_user_action signals
3681         (gtk_text_buffer_begin_user_action): 
3682         (gtk_text_buffer_end_user_action): New functions to delimit 
3683         a user-visible action
3684
3685         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
3686         signals.
3687         
3688 2000-12-18  Havoc Pennington  <hp@redhat.com>
3689
3690         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
3691         was pretty non-working.
3692
3693         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
3694         by passing the length to g_utf8_validate().
3695
3696 2000-12-16  Havoc Pennington  <hp@pobox.com>
3697
3698         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
3699         Port to GObject, can go back in gdk-pixbuf after setting up 
3700         a gdk-pixbuf-marshal.h header over there.
3701
3702         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
3703         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
3704         args
3705         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
3706         set
3707         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
3708         here, do it when we create the buttons later
3709         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
3710         (gtk_tree_view_map): paranoia checks that column->button is shown 
3711         and unmapped
3712         (gtk_tree_view_size_request): only request visible children.
3713         Move header size calculation in here, for cleanliness, and 
3714         to maintain invariants for child widgets if we eventually 
3715         let users set different children inside the buttons
3716         (gtk_tree_view_map_buttons): factor out code to map buttons,
3717         since it was being called several times
3718         (gtk_tree_view_size_allocate_buttons): move_resize the drag
3719         windows instead of just moving them; their height may change 
3720         if we allow random widgets in there, or the theme changes.
3721         (gtk_tree_view_size_allocate): move button size allocation 
3722         above emitting the scroll signals, to ensure a sane state when we
3723         hit user code
3724         (gtk_tree_view_button_release): remove queue_resize after
3725         tree_view_set_size(), set_size() will handle any resize queuing
3726         that's needed
3727         (gtk_tree_view_focus_in): just queue a draw, don't fool with
3728         draw_focus goo
3729         (gtk_tree_view_focus): use gtk_get_current_event() and
3730         gdk_event_get_state()
3731         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
3732         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
3733         semicolon
3734         (gtk_tree_view_create_button): show the button here
3735         (gtk_tree_view_button_clicked): actually emit the clicked signal
3736         on the column
3737         (_gtk_tree_view_set_size): return right away if the size is
3738         unchanged, as a cheesy optimization
3739         (gtk_tree_view_setup_model): rename set_model_realized to 
3740         setup_model to match the flag that indicates whether we've 
3741         called it
3742         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
3743         exist, because set_scroll_adjustment does that and it shouldn't
3744         matter what order you call these in
3745         (gtk_tree_view_get_vadjustment): ditto
3746         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
3747         for paranoia
3748         (gtk_tree_view_set_headers_visible): call
3749         gtk_tree_view_map_buttons() instead of using cut-and-paste code
3750         (gtk_tree_view_append_column): clarify whether the return value
3751         is the count of columns before or after, and do the increment 
3752         separately from the return statement so you can tell from the code.
3753         (gtk_tree_view_remove_column): ditto
3754         (gtk_tree_view_insert_column): ditto
3755         (gtk_tree_view_get_column): remove g_return_if_fail for columns
3756         outside the existing range, the docs say that outside-range
3757         columns are allowed, so we handle them as documented. (Presumably
3758         this allows a nice loop with column != NULL as test.)
3759         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
3760         mean (left/right/center etc.).
3761         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
3762         (gtk_tree_view_expand_row): add docs
3763         (gtk_tree_view_collapse_row): add docs
3764
3765         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
3766         function to emit the clicked signal on a column
3767         
3768         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
3769         state of an event
3770         (gdk_event_get_time): don't treat GDK_SCROLL 
3771         as a button event, remove default case from switch so gcc 
3772         will whine if we don't explicitly handle all event types
3773
3774         * gtk/gtktreeselection.h: added some FIXME 
3775         
3776         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
3777         "columns" to "n_columns" and "column" to "columns" for clarity
3778
3779 2000-12-16  Havoc Pennington  <hp@pobox.com>
3780         
3781         * gtk/gtktextiter.c: General cleanup of the log attr iteration
3782         stuff. This should make e.g. the delete key work again in the
3783         text widget...
3784         (gtk_text_iter_forward_cursor_positions): handle negative count
3785         (gtk_text_iter_backward_cursor_positions): handle negative count
3786         (gtk_text_iter_forward_word_ends): handle negative count
3787         (gtk_text_iter_backward_word_starts): handle negative count
3788
3789         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
3790         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
3791         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
3792         GObject. No doubt will cause breakage.
3793
3794         * demos/gtk-demo/textview.c: remove hacks around
3795         non-GObject-ification of the text objects
3796
3797         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
3798         the text tag
3799         
3800 2000-12-14  Havoc Pennington  <hp@pobox.com>
3801
3802         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
3803         that we have Xrender
3804
3805 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
3806
3807         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
3808         Add two virtualized functions gdk_drawable_get_clip_region - to
3809         get the clip region when drawing.
3810         
3811         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
3812         use invalidate_region.
3813
3814         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
3815         region.
3816
3817         * acconfig.h configure.in: Check for Xft. For now, assume
3818         that if Xft is found, Pango was compiled with Xft support
3819         as well.
3820
3821         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
3822         gdk_colormap_query_color().
3823         
3824         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
3825         with Xft if appropriate.
3826
3827         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
3828         a pangoxft context if we have XFT and the environment
3829         variable GD_USE_XFT is set.
3830         
3831         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
3832         and also possibly an XftDraw structure.
3833
3834         * gtk/gtkfontsel.c: Handle the case where the font from the
3835         style doesn't match any of the fonts a bit better.
3836         
3837         * gtk/testgtk.c: Add tabs between directional segments for
3838         hebrew/arabic test. (Not really necessary, just a little
3839         prettier.)
3840
3841 2000-12-14  Havoc Pennington  <hp@redhat.com>
3842
3843         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
3844         reading a file
3845
3846 2000-12-14  Havoc Pennington  <hp@redhat.com>
3847
3848         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
3849         unused call to get_last_line()
3850
3851         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
3852         here until boxed is working (and maybe after that - we should
3853         really not gratuitously break old code)
3854
3855         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
3856         specific types for font_desc and tabs args, move them to
3857         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
3858         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
3859
3860         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
3861         use GTK_TYPE_POINTER for signal signatures as a hack-around
3862
3863         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
3864         PangoTabArray
3865
3866         * gtk/gtktextlayout.c (line_display_iter_to_index): 
3867         make static
3868         (line_display_index_to_iter): make static
3869
3870         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
3871         to marshal a string not a boxed
3872
3873         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
3874
3875         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
3876         since the UTF-8 isn't validated yet
3877
3878         * gtk/gtktextsegment.c (char_segment_check_func): don't require
3879         lines to end in '\n'
3880         
3881         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
3882         forward_to_delimiters, and grapheme boundaries
3883         (gtk_text_view_delete_from_cursor): properly handle non-newline
3884         delimiters, and grapheme boundaries
3885
3886         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
3887         to gtk_text_iter_forward_to_delimiters, and make it work properly
3888         if empty lines end with a character other than '\n'
3889
3890         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
3891         position
3892
3893 2000-12-15  Tor Lillqvist  <tml@iki.fi>
3894
3895         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
3896
3897         * gtk/gtk.def
3898         * gdk/gdk.def: Update.
3899
3900         * gdk/win32/gdkmain-win32.c
3901         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
3902         gdkmain-win32.c here.
3903
3904         * gdk/win32/makefile.mingw.in (all): No need to make
3905         gdk-win32res.o here, the makefile one step up will call us to make
3906         it.
3907
3908         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
3909         gdkkeys-win32.
3910
3911         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
3912
3913         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
3914         call to g_source_add().
3915
3916         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
3917         leak. Thanks to Andreas Kemnade.
3918
3919 2000-12-13  Havoc Pennington  <hp@pobox.com>
3920
3921         * gtk/gtktextbtree.h: Remove double _ in front of some functions
3922
3923         * gtk/gtktext*.[hc]: update accordingly
3924         
3925 2000-12-13  Havoc Pennington  <hp@pobox.com>
3926
3927         * gtk/gtktextbtree.h: Put _ in front of every function in this 
3928         header file
3929
3930         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
3931
3932 2000-12-13  Alex Larsson  <alexl@redhat.com>
3933
3934         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
3935         Add support for ps2 intellimouse.
3936
3937         * gdkkeyboard-fb.c:
3938         Move shift-F1 repaint handling to xlate handler only.
3939         
3940         * docs/README.linux-fb:
3941         Add imps2 to docs.
3942         Document the new refresh keys.
3943         
3944 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
3945
3946         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
3947
3948         * gtk/gtkbox.c: change property types from (u)long to (u)int for
3949         ::position and ::padding.
3950
3951         * gtk/gtkcontainer.c: make ::border_width an INT property.
3952
3953         * gtk/gtkpacker.c: make ::position an INT property.
3954
3955         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
3956         guard against NULL h/v scrollbars, since this is used at construction
3957         time.
3958
3959         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
3960         internal gtk_clist_constructor().
3961
3962         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
3963         gtk_ctree_constructor().
3964
3965         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
3966         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
3967
3968         * docs/reference/Makefile.am: fun stuff, disabled docs generation
3969         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
3970
3971         * gtk/gtkwidget.[hc]:
3972         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
3973         and gtk_widget_get().
3974         (gtk_widget_new): use g_object_new_valist().
3975         (gtk_widget_set): use g_object_set_valist().
3976
3977         * gtk/gtkobject.[hc]:
3978         removed gtk_object_arg_get_info(), gtk_object_getv(),
3979         gtk_object_query_args(), gtk_object_newv(),
3980         gtk_object_class_add_signals(),
3981         gtk_object_class_user_signal_new(),
3982         gtk_object_class_user_signal_newv(),
3983         gtk_object_arg_set(), gtk_object_arg_get(),
3984         gtk_object_args_collect(),
3985         gtk_object_default_construct(),
3986         gtk_object_constructed(),
3987         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
3988         removed nsignals, signals and n_args members from GtkObjectClass.
3989         (gtk_object_new): use g_object_new_valist().
3990         (gtk_object_set): use g_object_set_valist().
3991         (gtk_object_get): use g_object_get_valist().
3992         
3993         * gtk/gtkcompat.h: define gtk_object_default_construct().
3994         
3995         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
3996         g_object_new().
3997
3998         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
3999         fucntions, cleaned up method assignments (make sure your structures
4000         are setup properly before calling out). removed all GTK_CONSTRUCTED
4001         hacks ;)
4002
4003 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
4004
4005         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
4006         off-by-one error in checks. (Dave Lambert)
4007
4008 2000-12-12  Alexander Larsson  <alexl@redhat.com>
4009
4010         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
4011         Don't free gdk_fb_keyboard twice.
4012
4013 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
4014
4015         * gtk/testgtk.c:
4016         (create_tooltips): 
4017         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
4018         use GObject swapped_signal:: properties instead.
4019
4020         * gtk/gtkcellrenderertoggle.c: 
4021         * gtk/gtkcellrenderertextpixbuf.c: 
4022         * gtk/gtkcellrenderertext.c: 
4023         * gtk/gtkcellrendererpixbuf.c: 
4024         * gtk/gtkcellrenderer.c:
4025         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
4026         missing warnings for invalid property ids, install properties
4027         with g_object_class_install_property() now.
4028         
4029         * gtk/gtksignal.c:
4030         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
4031         
4032 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
4033         
4034         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
4035         to determine if a window is the focus widget within
4036         its toplevel.
4037
4038         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
4039         to be boolean.
4040
4041         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
4042         of the case where the container CAN_FOCUS to here instead
4043         of having it in each individual move-the-focus place.
4044
4045         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
4046         focusing to be geometric in a much more obvious sense. Arrowing
4047         around is still non-intuitive because it isn't perfect and
4048         because entries, etc, grab the arrow keys, but it at least
4049         usually will do what you expect now.
4050         
4051         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
4052         file.
4053
4054         * gtk/gtknotebook.c: Change tabs to be a single item in
4055         the focus chain. Make movement of focus on tabs with arrow
4056         keys wrap around.
4057         
4058         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
4059         CHECK_FIND_CHILD macro to give informative error messages
4060         instead of silent returns.
4061
4062         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
4063         flag since we handle GdkReturn on the tabs.
4064
4065         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
4066         windows rather than sending expose events directly.
4067
4068         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
4069         definition for GtkNotebookPage into .c file, since it is private.
4070
4071         * gtk/testgtk.c (create_notebook): Add option for 
4072         testing borderless notebook.
4073
4074         * gtk/testgtk.c (page_switch): Removed egregious poking
4075         around in GTK+ internals.
4076
4077         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
4078
4079         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
4080         properly through gtk_clist_focus. Make the title headers a
4081         single item in the tab-focus chain, and make left-right wrap
4082         around.
4083
4084         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
4085         focus method so that wrapping around works properly.
4086
4087         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
4088         that is handled for the widget now. 
4089
4090 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
4091
4092         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
4093         widgets as TOPLEVEL.
4094
4095         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
4096         TOPLEVEL widgets are containers.
4097
4098         * gtk/gtkinvisible.h: Remove useless include.
4099
4100 2000-12-11  Havoc Pennington  <hp@redhat.com>
4101
4102         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
4103         Handle chopping off \r\n and 0x2029 in addition to \n before
4104         passing to PangoLayout
4105
4106         * gtk/gtkimcontextsimple.c
4107         (gtk_im_context_simple_get_preedit_string): 
4108         return an empty string if no match is pending
4109
4110         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
4111         assertion that the returned preedit string was sane
4112
4113         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
4114         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
4115         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
4116
4117 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
4118
4119         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
4120         Fix up finalizer to chain to its parent.
4121
4122 2000-12-11  Alexander Larsson  <alexl@redhat.com>
4123
4124         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
4125         Clearified the difference between the keyboard types. Wrote a note
4126         about the magic sysrq key to get out of raw mode.
4127
4128 2000-12-09  James Henstridge  <james@daa.com.au>
4129
4130         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
4131         member to hold masks for detecting the start of a protocol packet.
4132         (mouse_devs): add packet start masks for ps2 and ms device types.
4133         Left the mask for fidmour blank, as I have no idea what it should
4134         be.
4135         (handle_mouse_io): skip bytes until we get to the start of a
4136         packet.  My Logitech mouse seems to be passing an extra NULL pad
4137         byte, and GPM does a similar thing here.
4138         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
4139         this is the ms mouse driver.
4140         (gdk_fb_mouse_ms_packet): fix up button handling, which was
4141         completely broken except for button1.  It was checking the wrong
4142         bit in the packet for the status of the right mouse button, and
4143         wrongly assuming right == button2 rather than 3.  I fixed that and
4144         also added support for middle button (button2).
4145
4146 2000-12-08  Havoc Pennington  <hp@redhat.com>
4147
4148         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
4149         that cause a segfault on text insertion
4150
4151         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
4152         warning
4153
4154         * gtk/gtktextiter.c (test_log_attrs): use
4155         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
4156
4157         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
4158         Get log attrs for a line, using a cache stored on the buffer
4159         
4160         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
4161         reported by Jeff Franks
4162
4163 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4164
4165         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
4166         /dev/ttyS0 -> /dev/mouse
4167
4168 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4169
4170         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
4171         Added dummy gdk_fontset_load.
4172
4173 2000-12-08  Alexander Larsson  <alexl@redhat.com>
4174
4175         * docs/README.linux-fb:
4176         * docs/Makefile.am:
4177         Initial GtkFB docs.
4178         
4179         * gdk/linux-fb/Makefile.am:
4180         Define GDK_DATA_PREFIX.
4181
4182         * gdk/linux-fb/gdkmain-fb.c:
4183         Fix typo.
4184         Change default display to /dev/fb0.
4185
4186         * gdk/linux-fb/gdkpango-fb.c:
4187         Add $(prefix)/share/fonts/ to font path.
4188         
4189 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4190
4191         * gdk/linux-fb/gdkkeyboard-fb.c:
4192         New file containing the abstracted keyboard driver. Most code
4193         taken from gdkinput-ps2.c
4194
4195         * gdk/linux-fb/gdkinput-ps2.c:
4196         Removed file.
4197         
4198         * gdk/linux-fb/Makefile.am:
4199         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
4200
4201         * gdk/linux-fb/gdkcolor-fb.c:
4202         display->fb was renamed to display->fb_fd.
4203
4204         * gdk/linux-fb/gdkcursor-fb.c:
4205         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4206
4207         * gdk/linux-fb/gdkinput.c:
4208         Moved gdk_input_init here from gdkinput-ps2.c
4209
4210         * gdk/linux-fb/gdkmain-fb.c:
4211         display->fb was renamed to display->fb_fd.
4212         Now the tty and the console is opened here instead
4213         of in the keyboard driver. Also check GDK_VT to see what
4214         tty to open.
4215         Move gdk_beep () here from gdkinput-ps2.c
4216         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4217
4218         * gdk/linux-fb/gdkmouse-fb.c:
4219         Add header.
4220         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4221         Return correct keyboard modifiers.
4222         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
4223
4224         * gdk/linux-fb/gdkprivate-fb.h:
4225         Add tty and vt info to display.
4226         Add orignal modeinfo storage to display
4227         Update global functions
4228
4229         * gdk/linux-fb/gdkwindow-fb.c:
4230         Added gdk_fb_window_find_focus().
4231         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4232
4233 2000-12-07  Havoc Pennington  <hp@pobox.com>
4234
4235         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
4236         function, noticed by Alex
4237
4238 2000-12-06  Elliot Lee  <sopwith@redhat.com>
4239
4240         * configure.in: Detect freetype properly
4241
4242         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
4243         above.
4244
4245 2000-12-06  Alexander Larsson  <alexl@redhat.com>
4246
4247         * gdk/linux-fb/Makefile.am:
4248         Add gdkmouse-fb.c
4249         
4250         * gdk/linux-fb/gdkmouse-fb.c:
4251         New file. Abstracted the mouse drivers a bit.
4252
4253         * gdk/linux-fb/gdkcursor-fb.c:
4254         The cursor hide/show functions was moved here from gdkinput-ps2.c.
4255
4256         * gdk/linux-fb/gdkinput-ps2.c:
4257         Removed old mouse handling code. Moved cursor handling code
4258         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
4259         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
4260         gdk_mouse_get_info.
4261
4262         * gdk/linux-fb/gdkmain-fb.c:
4263         Pass NULL pointers for x,y in gdk_mouse_get_info call.
4264
4265         * gdk/linux-fb/gdkprivate-fb.h:
4266         Removed public gdk_fb_find_common_ancestor, added and renamed
4267         functions for the new mouse handling code.
4268
4269         * gdk/linux-fb/gdkwindow-fb.c:
4270         Moved gdk_fb_window_send_crossing_events here. added global
4271         variable gdk_fb_window_containing_pointer. made
4272         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
4273         renamed to gdk_mouse_get_info.
4274
4275 2000-12-06  Alexander Larsson  <alexl@redhat.com>
4276
4277         * gdk/linux-fb/gdkevents-fb.c:
4278         Update to match latest gmain/gsource changes.
4279
4280         * gdk/linux-fb/gdkinput-ps2.c:
4281         Bogus gdk_keymap_get_entries_for_keycode implementation so that
4282         it links. Will be implemented later.
4283
4284 2000-12-03  Havoc Pennington  <hp@pobox.com>
4285
4286         * gdk/Makefile.am: add gdkkeys.[hc]
4287
4288         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
4289         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
4290
4291         * acconfig.h, configure.in: add checks and command line options
4292         for XKB
4293
4294         * gdk/x11/gdkkeys-x11.c: Implement the above functions
4295         
4296         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
4297         and group in the key event
4298
4299         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
4300         field with the low-level hardware key code, and a group
4301         field with the keyboard group
4302
4303         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
4304         and declare a couple globals used for keymap handling
4305         
4306         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
4307         hold down Shift-Control and type a hex number to get a Unicode 
4308         character corresponding to the hex number
4309         (gtk_im_context_simple_get_preedit_string): Fix cursor position
4310         (return bytes not chars)
4311
4312 2000-12-05  Elliot Lee  <sopwith@redhat.com>
4313
4314         * gdk/gdkcolor.h: Make GdkColor specify element sizes
4315         to avoid waste on 64-bit platforms.
4316
4317 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
4318
4319         * INSTALL: Fix link to PNG home, remove reference
4320         to fribidi.
4321
4322         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
4323         
4324         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
4325         tested.)
4326
4327         * gtk/gtkcheckmenuitem.c: Permanently turn on
4328         always_show_toggle.
4329
4330         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
4331         be NULL. (Vladimir Klebanov, #26545)
4332
4333         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
4334         some signed/unsigned comparison problems. (#6510,
4335         David Kaelbling)
4336
4337         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
4338         return type to boolean (Oskar Liljeblad, #18648)
4339
4340 2000-12-05  Alexander Larsson  <alexl@redhat.com>
4341
4342         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
4343         Remove bogus colormap setting.
4344
4345 2000-12-05  Alexander Larsson  <alexl@redhat.com>
4346
4347         * gdk/linux-fb/gdkcolor-fb.c:
4348         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
4349
4350         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
4351         Must set colormap.
4352         
4353 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
4354
4355         * docs/tutorial/gtk-tut.sgml: DND updates
4356
4357 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
4358
4359         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
4360         Remove old debug g_warning().
4361         (gdk_fb_draw_drawable): The src argument can be either a wrapper
4362         or an implementation, just pass the implementation to draw_drawable_2.
4363         
4364         * gdk/linux-fb/gdkprivate-fb.h:
4365         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
4366
4367         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
4368         clear and invalidate area when window is destroyed.
4369         (send_map_events): Remove old commented out code.
4370
4371 2000-12-05  Alexander Larsson  <alexl@redhat.com>
4372
4373         * gdk/linux-fb/gdkpango-fb.c:
4374         Use italic instead of oblique in font aliases.
4375         
4376         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
4377         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
4378         other unsupported functions.
4379
4380 2000-12-04  Havoc Pennington  <hp@redhat.com>
4381
4382         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
4383
4384         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
4385
4386         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
4387
4388         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
4389         hack to avoid infinite loops (synthetic expose event) - 
4390         Owen has more appropriate fixes in a branch he'll check in later.
4391
4392         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
4393         separator, CR, and CRLF as line ends
4394
4395         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
4396         into lines using pango_find_paragraph_boundary(); other bits of
4397         the widget are still going to be broken if the boundary isn't '\n'
4398         though
4399
4400 2000-12-04  Alexander Larsson  <alexl@redhat.com>
4401
4402         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
4403         multiply.
4404
4405         * gdk/linux-fb/gdkpango-fb.c:
4406         Copied some 26.6 scaling macros from pango to clean up the rounding.
4407         (pango_fb_font_get_glyph_info): Correct sign on x value.
4408
4409         * gdk/linux-fb/gdkprivate-fb.h:
4410         Removed unreferenced external functions.
4411
4412         * modules/linux-fb/Makefile.am: Use ` instead of '.
4413
4414         * modules/linux-fb/basic.c:
4415         Remove dead code. In particular the dummy lang engine which broke all
4416         pango layouts in GtkFB. Don't include tables-big.i anymore.
4417
4418         * modules/linux-fb/tables-big.i:
4419         Upgrade to latest version from pango. Left for reference, basic_ranges
4420         moved to basic.c.
4421         
4422 2000-12-04  Havoc Pennington  <hp@redhat.com>
4423
4424         Fix bugs Alex found:
4425         
4426         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
4427         to "draw"
4428
4429         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
4430
4431         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
4432
4433         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
4434         implementation in here, apparently the expose() implementation was
4435         dead code.
4436
4437 2000-12-04  Alexander Larsson  <alexl@redhat.com>
4438
4439         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
4440         Return positive descent.
4441
4442 2000-12-02  Havoc Pennington  <hp@pobox.com>
4443
4444         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
4445         method and signal
4446         
4447         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
4448         calls gdk_window_process_updates() to push the exposes through
4449         (gtk_widget_class_init): No more draw signal, no
4450         gtk_widget_real_draw()  
4451         
4452         * gtk/gtkbin.c (gtk_bin_draw): remove
4453
4454         * gtk/gtkbox.c (gtk_box_draw): remove
4455
4456         * gtk/gtkbutton.c (gtk_button_draw): remove
4457
4458         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
4459
4460         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
4461
4462         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
4463
4464         * gtk/gtkclist.c (gtk_clist_draw): remove
4465
4466         * gtk/gtkentry.c (gtk_entry_draw): remove
4467
4468         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
4469
4470         * gtk/gtkfixed.c (gtk_fixed_draw): remove
4471
4472         * gtk/gtkframe.c (gtk_frame_draw): remove
4473
4474         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
4475
4476         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
4477
4478         * gtk/gtklayout.c (gtk_layout_draw): remove
4479
4480         * gtk/gtklist.c (gtk_list_draw): remove
4481
4482         * gtk/gtklistitem.c (gtk_list_item_draw): remove
4483
4484         * gtk/gtkmenu.c (gtk_menu_draw): remove
4485
4486         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
4487
4488         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
4489
4490         * gtk/gtknotebook.c (gtk_notebook_draw): remove
4491
4492         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
4493
4494         * gtk/gtkpacker.c (gtk_packer_draw): remove
4495
4496         * gtk/gtkrange.c (gtk_range_draw): remove
4497
4498         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
4499
4500         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
4501
4502         * gtk/gtktable.c (gtk_table_draw): remove
4503
4504         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
4505
4506         * gtk/gtktext.c (gtk_text_draw): remove
4507
4508         * gtk/gtktextview.c (gtk_text_view_draw): remove
4509
4510         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
4511
4512         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
4513
4514         * gtk/gtktree.c (gtk_tree_draw): remove
4515
4516         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
4517
4518         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
4519
4520         * gtk/gtkviewport.c (gtk_viewport_draw): remove
4521
4522         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
4523
4524         * gtk/gtkvscale.c (gtk_vscale_draw): remove
4525
4526         * gtk/gtkwindow.c (gtk_window_draw): remove
4527
4528 2000-20-01  Anders Carlsson  <andersca@gnu.org>
4529
4530         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
4531         a GtkToggleButton is both insensitive and active, it was being
4532         drawn by the GtkButton draw handler which doesn't check the
4533         state. Now it's calling gtk_toggle_button_paint instead.
4534         
4535 2000-12-01  Havoc Pennington  <hp@redhat.com>
4536
4537         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
4538         dangling pointers to the appearance attributes from the 
4539         line display
4540
4541         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
4542         width/height to mean "full width/height of drawable"
4543
4544         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
4545         click to select word/line
4546         
4547         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
4548         when getting log attrs. Get a slice, so that pixmaps and stuff
4549         are properly handled.
4550
4551         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
4552         paste into the selection (replaces selection now, previously
4553         crashed or added to selection). Reveals longstanding btree bug -
4554         select multiple lines, middle-click on the selection, boom. This
4555         isn't related to my changes though.
4556
4557         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
4558         PangoLogAttrs changes
4559         (gtk_entry_move_backward_word): ditto
4560
4561         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
4562         functions return bool whether the iter moved onto a
4563         dereferenceable position.
4564  
4565         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
4566         functions for motion in terms of display lines.
4567
4568         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
4569         get the buffer a mark is inside
4570         
4571 2000-12-01  Alexander Larsson  <alexl@redhat.com>
4572
4573         * gdk/linux-fb/Makefile.am:
4574         * modules/linux-fb/Makefile.am:
4575         Freetype 2 final uses freetype-config
4576
4577         * gdk/linux-fb/gdkpango-fb.c:
4578         Upgrade to use Freetype 2 final.
4579         More flexible support for font aliases, this also fixes a bug with
4580         GtkFontSelector, as the aliases must be visible in the font/family list,
4581         or GtkFontSelector reads uninitialized memory.
4582
4583 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
4584
4585         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
4586         XGetIMValues to properly terminate variable argument list, and do
4587         NULL return check for ic_values and xim_styles.
4588
4589         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
4590         Restore preedit state after XmbResetIC().
4591         
4592         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
4593         XvaCreateNestedList() should take XvaNestedList, but not
4594         XvaNestedList*.
4595
4596         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
4597         preedit_draw_callback, preedit_caret_callback): Match
4598         "preedit-changed" signal name to "preedit_changed" to be
4599         consistent to the spec.
4600
4601         * gtk/gtkimcontextsimple.c (check_table):
4602         Match "preedit-changed" to "preedit_changed" to be consistent
4603         to the spec.
4604
4605 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
4606
4607         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
4608         gc->clip_region == NULL>
4609
4610 2000-11-30  Tor Lillqvist  <tml@iki.fi>
4611
4612         Changes by Hans Breuer:
4613         
4614         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
4615         Dont't use negative width and height as max_hints. This fixes
4616         Owen's recent testgtk changes for win32.
4617
4618         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
4619         gdk_win32_hdc_release): These are exported and may be called with
4620         other drawable types than our GdkDrawableImplWin32 (?).
4621
4622         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
4623         so always #define USE_BACKING_STORE.
4624
4625         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
4626         of printf for debugging output.
4627
4628         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
4629         
4630         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
4631
4632         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
4633         declaration.
4634
4635         * gtk/gtktexttypes.h: Ditto.
4636
4637         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
4638         (GDK_VoidSymbol) also if in case of arg check failure.
4639
4640         * gtk/gtkimcontextsimple.c
4641         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
4642         position to the pointer, but to the variable it points to.
4643
4644         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
4645
4646         * gtk/gtk.def: Updates.
4647
4648 2000-11-29  Elliot Lee  <sopwith@redhat.com>
4649
4650         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
4651         GTK_TYPE_TREE_MODEL.
4652
4653 2000-11-29  Alexander Larsson  <alexl@redhat.com>
4654
4655         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
4656         Set the size of the font from the description.
4657         (gdk_text_width): Gross hack that calculates the width
4658         of text by text_length * size/2. This is necessary because
4659         GtkLabel does some ugly gtk_string_width call to calculate
4660         an good size.
4661         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
4662
4663 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
4664
4665         * docs/tutorial/gtk-tut.sgml: DND updates
4666
4667 2000-11-29  Alexander Larsson  <alexl@redhat.com>
4668
4669         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
4670         If you pass width or height == 0 to gdk_window_clear_area they
4671         should be calculated from the window size.
4672
4673 2000-11-29  Alexander Larsson  <alexl@redhat.com>
4674
4675         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
4676         a grab, but no grab-cursor, use the cursor from the grabbed
4677         window. (gdk_fb_window_send_crossing_events): Send normal
4678         enter/leave notifications if grab and owner_events == TRUE.
4679
4680 2000-11-29  Alexander Larsson  <alexl@redhat.com>
4681
4682         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
4683         Do implicit button grabs, even if the window doesn't
4684         want the event.
4685         (gdk_fb_window_send_crossing_events): If there is a
4686         grab, only the grabbed window gets normal enter/leave
4687         notifications. On ungrab go from grabbed window to current.
4688         Don't send any notification to b when propagating from c -> b.
4689         If setting a grab on window, don't set prev_window.
4690         (handle_mouse_input): Send enter/leave events to the window the
4691         mouse is over, not the grabbed one.
4692         
4693 2000-11-28  Elliot Lee  <sopwith@redhat.com>
4694
4695         * gdk/gdkregion-generic.c: Zap warning.
4696         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
4697         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
4698
4699 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
4700
4701         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
4702         The cursor should be hidden if it is part of either the
4703         source or destination region. Not only if it is in both.
4704         (gdk_window_set_transient_for): Silence warnings.
4705
4706 2000-11-28  Alexander Larsson  <alexl@redhat.com>
4707
4708         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
4709         The default mode in X is Pie Arcs, therefore that is
4710         what Gtk+ uses.
4711
4712 2000-11-28  Alexander Larsson  <alexl@redhat.com>
4713
4714         * gdk/linux-fb/gdkinput-ps2.c:
4715         Implement correct EnterNotify/LeaveNotify:
4716         (gdk_fb_window_send_crossing_events): New function that sends
4717         all GdkCrossingEvents from the last mouse-window to the specified
4718         destination.
4719         (gdk_fb_window_visibility_crossing): Removed function.
4720         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
4721         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
4722         instead of gdk_window_get_pointer() for better readability.
4723
4724         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
4725         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
4726
4727         * gdk/linux-fb/gdkprivate-fb.h:
4728         removed gdk_fb_window_visibility_crossing, added
4729         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
4730
4731         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
4732         New function that finds the least common ancestor of two windows.
4733         (gdk_window_show, gdk_window_hide):
4734         Use gdk_fb_window_send_crossing_events.
4735         (gdk_fb_window_move_resize): Send configure events to toplevel
4736         windows. Use gdk_fb_window_send_crossing_events.
4737
4738 2000-11-27  Havoc Pennington  <hp@redhat.com>
4739
4740         * gtk/gtkprivate.h (enum): Remove a trailing comma
4741
4742 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
4743
4744         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
4745         the "changed" callback of the adjustment.  We need to redraw the
4746         spin button's arrows when the adjustment's range changes.
4747         (adjustment_changed_cb): Draw the arrows.
4748         (gtk_spin_button_value_changed): Draw the arrows.
4749
4750 2000-11-23  Alexander Larsson  <alexl@redhat.com>
4751
4752         * gdk/linux-fb/gdkselection-fb.c:
4753         Initial selection implementation.
4754
4755         * gtk/gtkselection.c:
4756         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
4757         requestor in gtk_selection_request.
4758         
4759         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
4760         Added gdk_selection_property atom.
4761
4762         * gdk/linux-fb/gdkprivate-fb.h:
4763         Export _gdk_selection_window_destroyed.
4764         Removed mask_off_x/y from GdkCursorPrivateFB.
4765         Removed hbearing, added top, left to PangoFBGlyphInfo.
4766
4767         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
4768         Call _gdk_selection_window_destroyed
4769         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
4770         the root window has been created.
4771         (static_dx_hack, static_dy_hack, compare_draw_rects,
4772         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
4773         in region. They are already sorted. Instead just traverse them in
4774         reverse if draw_direction < 0.
4775         
4776         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
4777         Double-clicks must be sent after the normal button_press.
4778         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
4779         
4780         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
4781         Pass _gdk_fb_screen_gc instead of NULL.
4782
4783         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
4784         Initialize gdk_selection_property.
4785         (gdk_event_make): Remove unused code.
4786
4787         * gdk/linux-fb/gdkcursor-fb.c:
4788         Make the pixmap for the cursor the same size as the mask. Also remove
4789         the mask_off_x/y fields in GdkCursorPrivateFB and combine
4790         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
4791         Now the whole cursor is visible.
4792
4793         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
4794         Fix bug where xdest+height instead of ydest+height was used
4795         to calculate if the source and dest overlapped. This fixes the
4796         redraw bug when the main window in testgtk was scrolled when
4797         partially covered by a tall window.
4798         Copy rectangles in region in order depending on draw_direction.
4799         Also moved the draw_direction flipping of start_y and end_y into
4800         the gc functions, as this might not be what all of them want.
4801         (gdk_fb_draw_lines): Support dashed lines.
4802         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
4803         so that the text is positioned correctly (was 1 pixel high).
4804
4805         gdk/linux-fb/gdkgc-fb.c:
4806         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
4807         all lines were drawn a pixel to short. Also checked the default of
4808         the rest of the values, and they're the same as X now.
4809
4810         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
4811         Clean up pixel positioning of the glyphs. Just use bgy->top and
4812         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
4813         to all divisions to get correct rounding behaviour.
4814
4815         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
4816         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
4817         Moved start_y/end_y flip into draw_drawable implementations.
4818         Flip also x rendering when draw_direction < 0.
4819         Remove unneccesary multiply with draw_direction.
4820
4821 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
4822
4823         * docs/tutorial/gtk-tut.sgml:
4824           - get rid of gtk_toggle_button_toggled FUD
4825           - start DND section - needs work - based on:
4826                 http://wolfpack.twu.net/docs/gtkdnd/
4827
4828 2000-11-22  Alexander Larsson  <alexl@redhat.com>
4829
4830         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
4831         Correct calculation of font metrics. Now GtkEntrys have sane
4832         size.
4833
4834 2000-11-22  Alexander Larsson  <alexl@redhat.com>
4835
4836         * gdk/gdktypes.h:
4837         Add new type GdkSpan
4838         
4839         * docs/reference/gdk/gdk-sections.txt,
4840         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
4841         gdk/gdkregion.h:
4842         Implement and document gdk_region_spans_intersect_foreach.
4843
4844         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
4845         Add new file gdkrender-fb.c which contains all core
4846         rendering code.
4847         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
4848         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
4849         (optimized rectangle fillers).
4850
4851         * gdk/linux-fb/gdkdrawable-fb2.c:
4852         Move all rendering code to gdkrender-fb.c.
4853         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
4854         Use the new span intersection functions in gdk_fb_fill_spans.
4855         gdk_fb_draw_rectangle() clips filled rectangles and calls
4856         gc->fill_rectangle with the result.
4857         gdk_fb_fill_spans() gets extra argument "sorted".
4858
4859         * gdk/linux-fb/gdkevents-fb.c:
4860         Remove unused includes and defines.
4861         New function gdk_fb_get_time() to get correct time for events.
4862
4863         * gdk/linux-fb/gdkinput-ps2.c:
4864         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
4865         Make sure to set the time of all events.
4866
4867         * gdk/linux-fb/gdkmain-fb.c:
4868         Use gdk_fb_get_time ().
4869
4870         * gdk/linux-fb/gdkprivate-fb.h:
4871         New virtual GC calls: fill_span & fill_rectangle.
4872         Export gdk_fb_get_time().
4873         gdk_fb_fill_spans() gets extra argument "sorted".
4874
4875         * gdk/linux-fb/mi*.c:
4876         Use GdkSpan instead of GdkRectangle.
4877         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
4878         from XFree 4 source)
4879         
4880 2000-11-22    <jrb@redhat.com>
4881
4882         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
4883         reversing the order in an if statement will do.  Doing so managed
4884         to make the treemodelsort half work.  Other half will follow after
4885         I get the insert function fully fixed.
4886
4887 2000-11-21  Elliot Lee  <sopwith@redhat.com>
4888         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
4889         more than 2 bits. Besides, I need to implement an evil hack. :)
4890
4891 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
4892
4893         * docs/tutorial/gtk-tut.sgml: minor corrections
4894
4895 2000-11-20  Jonathan Blandford <jrb@redhat.com>
4896         * gtk/gtktreemodelsort.h: Add convertion functions to let you
4897           convert to and from relative path's and iters.
4898
4899         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
4900           testing sorting functions a bit better.  Currently broken -- will
4901           fix in morning.
4902
4903 2000-11-20  Havoc Pennington  <hp@redhat.com>
4904
4905         * gtk/gtkwidget.c: Documented a bunch of functions in here
4906         (gtk_widget_realize): Warn if you try to realize
4907         a widget with no parent that isn't a toplevel
4908         (gtk_widget_intersect): return a gboolean
4909
4910 2000-11-20  Havoc Pennington  <hp@redhat.com>
4911
4912         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
4913         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
4914         scrolling to be implemented in GDK to finish. Also, right now
4915         we just size_allocate all children on every layout change,
4916         which is pretty lame. Test commented out of testtext.c, 
4917         until it works better.
4918
4919 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
4920
4921         * gdk/linux-fb/gdkdrawable-fb2.c:
4922         Removed unused arguments from gdk_fb_drawable_get_pixel().
4923
4924         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
4925         Renamed fidur specific mouse packet data in MouseDevice to
4926         generic. Used it in ps2 mouse handling code to avoid blocking
4927         reads.
4928
4929 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
4930
4931         * demos/gtk-demo/main.c: Changed to have the list become
4932         non-italic when the demo window is destroyed through an external
4933         event (like a close button).  Doing so found three bugs in the
4934         widget.
4935
4936         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
4937
4938         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
4939         we actually set the cell.
4940
4941         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
4942
4943         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
4944         free a leaked path.  Thanks memprof.
4945
4946 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
4947
4948         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
4949         off-by-one error when destroying allocated segments
4950         on failure. (Elliot)
4951
4952 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
4953
4954         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
4955         memleaks found by Evan Martin.
4956
4957 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
4958
4959         * Released 1.3.2
4960         
4961         * NEWS: Updates for 1.3.2
4962
4963 2000-11-17  Tor Lillqvist  <tml@iki.fi>
4964
4965         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
4966         but in general for window system specific events.
4967
4968         * gtk/gtk.def
4969         * gtk/makefile.mingw.in
4970         * gtk/makefile.msc.in: Update.
4971         
4972         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
4973
4974 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
4975
4976         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
4977         distribute gtk.immodules.
4978
4979         * gtk/Makefile.am (install-data-local): Don't install the
4980         gtk.immodules file created for the uninstalled modules;
4981         instead run gtk-query-immodules after install
4982
4983 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
4984
4985         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
4986         -rpath to the right install location.
4987
4988         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
4989         -export-dynamic.
4990
4991         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
4992         properly.
4993
4994 2000-11-15  Havoc Pennington  <hp@pobox.com>
4995
4996         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
4997         patch from Mikael Hermansson to temporarily stop blinking while
4998         the user is using the keyboard to type or navigate. 
4999
5000         Also, when blinking, stay on for longer than we stay off. Also,
5001         return from start_cursor_blink if !cursor_visible, to save
5002         checking that flag all over the place before we call
5003         start_cursor_blink.
5004
5005 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
5006
5007         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
5008         only contain a "fontset" line, which is now ignored.
5009
5010         * gtk/gtkentry.c (gtk_entry_button_release): Make 
5011         double-click-to-select-word work.
5012         
5013 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
5014
5015         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
5016         Don't move back one char when we are actually at the end of the 
5017         paragraph.
5018
5019 2000-11-15  Robert Brady  <robert@suse.co.uk>
5020
5021         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
5022         'o' < 'p'.
5023         
5024         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
5025         bind_textdomain_codeset.
5026
5027         (gtk_init_check): Make the warning about translating default:LTR
5028         sterner.
5029         
5030 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
5031
5032         * **/Makefile.am : remove unecessary rules for win32-specific
5033         config-substituted targets. If you want these rules, use
5034         --enable-maintainer-mode (called automatically by autogen.sh).
5035         Stops a lot of unneccessary make-time warnings.
5036
5037         * gtk/gtktext{layout,display}.c: Factor in total width as
5038         well as screen when figuring alignment for word-wrap as well as
5039         no wrap; this is necessary to handle lines that cannot be wrapped
5040         at all.
5041
5042 2000-11-15  Havoc Pennington  <hp@redhat.com>
5043
5044         * gtk/testtext.c: Implement essential color cycling feature
5045
5046 2000-11-15  Havoc Pennington  <hp@redhat.com>
5047
5048         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
5049         when we invalidate the main window.
5050
5051         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
5052         GtkTextView will now invalidate the side windows for us when text
5053         changes.
5054
5055 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
5056
5057         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
5058         unconditionally, since we may need to update the horizontal
5059         scrollbars even if the height didn't change.
5060
5061         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
5062         the extra attrs, since some of them affect size.
5063
5064         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
5065         x_offset correctly.
5066
5067 2000-11-15  Havoc Pennington  <hp@redhat.com>
5068
5069         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
5070         don't move the first line out into the margin, instead move the
5071         whole paragraph in order to make space for the first line within 
5072         the margin
5073
5074 2000-11-15  Havoc Pennington  <hp@redhat.com>
5075
5076         * gtk/gtktextview.c (changed_handler): offset redraw rect by
5077         xoffset in addition to yoffset, so horizontal scrolling doesn't
5078         break redraws
5079
5080 2000-11-15  Havoc Pennington  <hp@redhat.com>
5081
5082         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
5083         from the cursor
5084         (render_layout_line): fix reversed test that caused weird
5085         underlines to get drawn
5086
5087 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
5088
5089         * gdk/linux-fb/gdkprivate-fb.h:
5090         Fix debug macros.
5091         
5092 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
5093
5094         * gdk/linux-fb/gdkprivate-fb.h:
5095         Added virtual functions set_pixel, get_color,
5096         fill_span and draw_drawable to the GC.
5097         Added global _gdk_fb_screen_gc to use instead of
5098         NULL when drawing to the screen.
5099         Added _gdk_fb_gc_calc_state() prototype.
5100
5101         * gdk/linux-fb/gdkgc-fb.c:
5102         Call _gdk_fb_gc_calc_state() on any gc state change.
5103
5104         * gdk/linux-fb/gdkglobals-fb.c:
5105         Add _gdk_fb_screen_gc
5106                 
5107         * gdk/linux-fb/gdkdrawable-fb2.c:
5108         _gdk_fb_gc_calc_state() calculates best functions
5109         for the GC state and depth.
5110         Moved bpp specialized code to separate functions.
5111         Added optimized 24 bpp AA draw_drawable.
5112
5113         * gdk/linux-fb/gdkevents-fb.c:
5114         Silence gcc warning.
5115
5116         * gdk/linux-fb/gdkimage-fb.c:
5117         Use _gdk_fb_screen_gc
5118
5119         * gdk/linux-fb/gdkwindow-fb.c:
5120         Init and use _gdk_fb_screen_gc
5121
5122         * gdk/linux-fb/mitypes.h:
5123         Remove unused types.
5124
5125 2000-11-14  Havoc Pennington  <hp@pobox.com>
5126
5127         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
5128         to pixels
5129
5130 2000-11-14  Havoc Pennington  <hp@pobox.com>
5131
5132         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
5133
5134         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
5135         unknown char, no real reason we were using a variable. 
5136         Remove gtk_text_unknown_char variable. Fix all the text widget
5137         files accordingly.
5138
5139         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
5140         since the Unicode spec seems to prefer that character for our
5141         purposes.
5142
5143 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
5144
5145         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
5146         value of g_getenv() isn't freeable, so g_strdup it.
5147
5148         * modules/input/inuktitut.c: Inuktitut input method.
5149
5150         * modules/input/Makefile.am: Build this.
5151         
5152 2000-11-14  Elliot Lee  <sopwith@redhat.com>
5153
5154         * gtk/Makefile.am: Install gtk.immodules, needed for operation
5155         of gtk programs.
5156
5157 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
5158
5159         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
5160         reversed > that was causing Home to go to end of previous line.
5161
5162         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
5163         modified-keypresses (leave for bindings.)
5164
5165         * modules/input/Makefile.am: Remove useless -export-dynamic
5166         from module LDFLAGS.
5167
5168 2000-11-14  Havoc Pennington  <hp@redhat.com>
5169
5170         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
5171         higher.
5172
5173         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
5174         account. Also, render rise, underline, background, etc. for
5175         pixbufs as well as text. Also, draw underlines one pixel higher.
5176
5177         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
5178         PangoAttribute for the rise, so it gets drawn properly. Also,
5179         add the GtkTextAppearance attribute for pixbuf/widget segments
5180         as well; we should go ahead and have rise, underline, background,
5181         stipple work for those
5182
5183         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
5184         Pango
5185
5186 2000-11-15  Tor Lillqvist  <tml@iki.fi>
5187
5188         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
5189
5190         * gtk/gtk.def: Update.
5191
5192         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
5193         included.
5194         (gtk_rc_get_im_module_file): Use run-time installation directory
5195         on Win32.
5196
5197         * gdk/win32/rc/gdk.rc: Remove.
5198         * gdk/win32/rc/gdk.rc.in: New file.
5199         * gdk/win32/rc/Makefile.am: New file
5200         * gdk/win32/Makefile.am: Corresponding changes.
5201
5202         * gtk/gtk.rc: Remove.
5203         * gtk/gtk-win32.rc.in: New file.
5204         * gtk/Makefile.am: Corresponding changes.
5205
5206         * configure.in: Corresponding changes.
5207
5208         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
5209         has a built gtkcompat.h. Developers using CVS code on Win32 can
5210         hand-edit it from gtkcompat.h.in.
5211
5212         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
5213         gtkcompat.h from gtkcompat.h.win32.
5214
5215 2000-11-14  Havoc Pennington  <hp@redhat.com>
5216
5217         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
5218         to default to GDK_ACTION_MOVE if the drag is within a single
5219         widget. Defaults to GDK_ACTION_COPY between widgets.
5220
5221 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
5222
5223         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
5224
5225         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
5226
5227         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
5228         srcdir != builddir
5229
5230         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
5231
5232         * configure.in (GTK_VERSION): Up to 1.3.2
5233
5234         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
5235         gtkimcontextxim.h
5236
5237         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
5238         missing doc comment.
5239
5240 2000-11-14  Alexander Larsson  <alexl@redhat.com>
5241
5242         * modules/linux-fb/basic.c:
5243         Use the glib iconv wrappers.
5244
5245 2000-11-13  Havoc Pennington  <hp@pobox.com>
5246
5247         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
5248         still more bugs.
5249
5250         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
5251         scroll the GdkWindows before realization.
5252
5253 2000-11-13  Havoc Pennington  <hp@redhat.com>
5254
5255         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
5256         where GC didn't always get updated properly
5257
5258         * demos/gtk-demo/textview.c (create_tags): Use subattributes
5259         of fonts instead of setting the entire font
5260
5261         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
5262         setting entire font
5263
5264         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
5265
5266         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
5267         a bunch of individually-settable font attributes. You can still 
5268         use the "font" and "font_desc" args, they just set all the font
5269         attributes at once.
5270
5271 2000-11-13 Elliot Lee <sopwith@redhat.com>
5272
5273         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
5274
5275 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
5276
5277         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
5278         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
5279
5280         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
5281         work better.
5282
5283 2000-11-13  Havoc Pennington  <hp@redhat.com>
5284
5285         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
5286         the module file.
5287
5288         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
5289         dest->language
5290
5291         * gtk/testtext.c: Test pixels above/below/inside paragraphs
5292         settings
5293
5294         * gtk/gtktextview.c: Implement object args and setters/getters for
5295         all the aspects of the GtkTextAttributes that are not set from
5296         GtkWidget attributes. This is spacing, justification, margins,
5297         etc.
5298
5299         (gtk_text_view_set_arg)
5300         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
5301         args
5302         (gtk_text_view_class_init): Add args for justify, left_margin,
5303         right_margin, indent, and tabs
5304         
5305
5306         * gtk/gtktextlayout.c (set_para_values): fix to display indent
5307         attribute properly
5308
5309         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
5310         replace with indent attribute
5311
5312         * gtk/gtktextlayout.c (set_para_values): multiply indent by
5313         PANGO_SCALE
5314
5315         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
5316         rearranging code to do that
5317         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
5318         i.e. don't subtract the top_margin first, just to keep
5319         all margin-futzing in one place.
5320
5321         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
5322
5323         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
5324         special case of last line, Pango now handles this itself.
5325         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
5326         Y coordinate
5327         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
5328         (find_display_line_above): wasn't moving the byte index as it
5329         iterated over lines, so always returned byte 0. Also, port to use
5330         PangoLayoutIter.
5331         (find_display_line_below): same problem as
5332         find_display_line_above. Also, port to use PangoLayoutIter.
5333
5334 2000-11-13  Alexander Larsson  <alexl@redhat.com>
5335
5336         * gdk/linux-fb/*.[ch]:
5337         Massive reindent to gtk+ standard. My hands hurt.
5338
5339         * gdk/linux-fb/gdkcolor-fb.c:
5340         Move GdkColorPrivateFB from inherited to windowing_data
5341
5342         * gdk/linux-fb/gdkcursor-fb.c:
5343         _gdk_cursor_new_from_pixmap made static
5344
5345         * gdk/linux-fb/gdkdnd-fb.c:
5346         GdkDragContextPrivate moved to windowing_data
5347
5348         * gdk/linux-fb/gdkdrawable-fb2.c:
5349         Removed endian.h, use glib endianness macros instead
5350         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
5351         and GDK_DRAWABLE_IMPL_FBDATA
5352
5353         * gdk/linux-fb/gdkfont-fb.c:
5354         Add empty gdk_font_load(). Needed for linking of Gtk+.
5355
5356         * gdk/linux-fb/gdkimage-fb.c:
5357         Removed endian.h, use glib endianness macros instead
5358         Moved GdkImagePrivateFB to windowing_data
5359         gdk_image_new_bitmap didn't always allocate enough
5360         memory.
5361
5362         * gdk/linux-fb/gdkinput-ps2.c:
5363         Added semi-working support for MS serial mice.
5364
5365         * gdk/linux-fb/gdkprivate-fb.h:
5366         s/GdkWindowPrivate/GdkWindowObject/
5367         Removed GdkWindowPrivate typedef
5368         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
5369         Removed GDK_DRAWABLE_P
5370         Move GdkColorPrivateFB from inherited to windowing_data
5371         Moved GdkImagePrivateFB to windowing_data
5372
5373         * gdk/linux-fb/gdkvisual-fb.c:
5374         Removed some unused debug code.
5375
5376         * gdk/linux-fb/gdkwindow-fb.c:
5377         Use stock cursors instead of including X headers.
5378         s/GdkWindowPrivate/GdkWindowObject/
5379
5380         * gdk/linux-fb/mitypes.h:
5381         Removed unused types.
5382
5383         * modules/linux-fb/basic.c:
5384         Use the pango fribidi wrappers.
5385
5386 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5387
5388         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
5389         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
5390         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
5391         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
5392         GEqualFunc where applicable.
5393         
5394         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
5395         pango_font_description_equal as changed in pango.
5396         
5397         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
5398
5399         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
5400
5401         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
5402
5403         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
5404
5405         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
5406
5407         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
5408
5409         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
5410         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
5411
5412         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
5413         gtk_rc_styles_compare -> gtk_rc_styles_equal.
5414
5415 2000-11-12  Havoc Pennington  <hp@pobox.com>
5416
5417         * demos/gtk-demo/Makefile.am (democodedir): change demo install
5418         dir to datadir/gtk+-2.0/demo
5419
5420         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
5421         sorts of text widget and Pango font bugs. Urgh.
5422
5423         * demos/gtk-demo/Makefile.am (demos): Add textview.c
5424
5425         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
5426         tree that you should double click to see the demo. Fix 
5427         types of variables to reflect changed return values from 
5428         GtkTreeStore and GtkTreeViewColumn constructors.
5429
5430         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
5431         newly-created buffer to prepare for GObject semantics
5432
5433         * gtk/testtext.c: don't leak the buffer with GObject semantics
5434
5435         * gtk/testtextbuffer.c: ditto
5436         
5437 2000-11-12  Havoc Pennington  <hp@pobox.com>
5438
5439         Rename this testgtk to gtk-demo to avoid confusion, and 
5440         install it so people can use it as a supplement to 
5441         the documentation.
5442         
5443         * demos/gtk-demo: Moved from demos/testgtk
5444
5445         * demos/testgtk: Removed
5446
5447         * configure.in: make Makefile in gtk-demo
5448         
5449         * demos/gtk-demo/Makefile.am: Install sample source to 
5450         datadir/gtk-demo (maybe there's a better place?), and 
5451         rename the binary to gtk-demo
5452         
5453         * demos/gtk-demo/main.c (load_file): Load installed sample
5454         source if source isn't found in pwd.
5455
5456 2000-11-09  Havoc Pennington  <hp@pobox.com>
5457
5458         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
5459         argument to set the char displayed when visibility == FALSE
5460         (gtk_entry_create_layout): If !entry->visible, replace 
5461         all chars with the "invisible char"
5462
5463         * gtk/testgtk.c: Test the invisible_char deal
5464         
5465 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
5466
5467         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
5468         can't get a native font in the right encoding.
5469
5470 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
5471
5472         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
5473         respectively.
5474
5475 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
5476
5477         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
5478         Fix warning when moving between paragraphs.
5479
5480         * gtk/gtkentry.[ch]: Change move => move_cursor, 
5481         delete => delete_from_cursor, insert => insert_at_cursor
5482
5483 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
5484
5485         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
5486
5487         * modules/input/imthai-broken.c: A Thai input method for use if
5488         Thai keys are really generating Latin1 keysyms.
5489
5490         * modules/input/Makefile.am: Build these.
5491
5492 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
5493
5494         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
5495         g_filename_{to,from}_utf8 now takes an extra parameter.
5496
5497         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
5498         strftime into UTF-8.
5499
5500         (column_from_x, gtk_calendar_paint_day_names): Support RTL
5501         calendars.
5502
5503         (gtk_calendar_paint_day_names): Draw day names in the right 
5504         place.
5505         
5506 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
5507
5508         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
5509         problem with using result of g_get_charset() backwards -
5510         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
5511
5512         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
5513         negative min_width/height and max_width/height to
5514         mean "requisition"; this allows setting a window
5515         to be user-resizable in only one direction easily.
5516
5517         * gtk/testgtk.c (create_main_window): Remove hard-coded
5518         usize - set a default size in the vertical direction.
5519
5520 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
5521
5522         * gtk/gtkrange.c: Add some missing casts. Support 
5523         2 and 3 button clicks on the arrows to mean 
5524         "move by pages" and "jump to end". (Like gtkspinbutton)
5525
5526 2000-11-12 Hans Breuer <Hans@Breuer.Org>
5527
5528         * gdk/win32/makefile.msc : reflect build module changes
5529
5530         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
5531         from GdkPixmap*, cast implementation member instead.
5532
5533         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
5534         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
5535         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
5536         more Gdi functions return value checking. 
5537         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
5538         GdkImagePrivateWin32 *.
5539
5540         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
5541         menus useable again. Add #pragma message to keep reminded on this issue.
5542         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
5543         windows. This allows to enable backing store on Win32!
5544
5545         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
5546         in drawable is of impl type. Correct specific type checks appropriate.
5547  
5548         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
5549         GDK_WINDOW_DESTROYED before allocating new resources.
5550
5551         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
5552
5553         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
5554         (gdk_window_foreign_new) initialize parent handle.
5555         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
5556
5557         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
5558         Let the GDI invalidate the window on MoveWindow call to fix scrolling
5559         problems (e.g. main buttons in testgtk). 
5560
5561 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
5562
5563         * gtk/gtkentry.c (gtk_entry_key_press): Call 
5564         gtk_widget_activate for GDK_Return.
5565
5566         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
5567         of preedit cursor position.
5568
5569 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
5570
5571         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
5572         static.
5573
5574 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
5575
5576         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
5577         out support for multiple locales; that simple doesn't
5578         work reliably with current Xlib
5579
5580         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
5581         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
5582         Add support for positioning the cursor within the preedit string.
5583
5584 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
5585
5586         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
5587         at XIM input method module.
5588
5589         * gtk/gtktextview.c: Check for bindings after passing
5590         events to im context filter.
5591
5592 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
5593
5594         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
5595         empty attribute lists properly.
5596
5597 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
5598
5599         * gtk/queryimmodules.c (main): Return non-zero exit
5600         status if errors were encountered querying any
5601         modules.
5602
5603         * modules/input/Makefile.am (moduledir): remove
5604         leftover bin program target.
5605
5606         * docs/make-todo: Fix typo in error message.
5607
5608 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
5609
5610         * configure.in: Add modules/input/Makefile
5611
5612 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
5613
5614         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
5615         don't include gtkthemes.h.
5616
5617         * gtk/testgtk.c gtk/testtext.c: Set environment variables
5618         to point
5619
5620         * gtk/Makefile.am: Add new .c and .h files, build 
5621         gtk-query-immodules and use it to create a gtk.immodules
5622         file for use of test programs.
5623
5624         * gtk/gtkpreview.c: remove extra blank line.
5625
5626 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
5627
5628         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
5629         Add the ability to add extra tables beyond the default
5630         one, and also the ability to have compose sequences 
5631         that are prefixes of other compose sequences. 
5632
5633         * gtk/gtkimcontextsimple.c: Export a preedit string which
5634         consists of possible candidates for keystrokes that have
5635         been entered but not yet committed.
5636
5637         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
5638         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
5639
5640         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
5641         Add a function to add input-method switching menu items
5642         to a menu.
5643
5644         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
5645         when switching input methods.
5646
5647         * gtk/gtkimcontextsimple.[ch]: Change the format of
5648         the compose table to allow compose tables of different
5649         lengths / sequence.
5650
5651 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
5652
5653         * gtk/gtkimmodule.[ch]: Support routines for loading
5654         GtkIMContext implementations dynamically at runtime.
5655
5656         * modules/input/imcyrillic-translit.c: A sample input
5657         method (based on GtkIMContextSimple with an extra table),
5658         which demonstrates preedit strings and the module
5659         system for input modules
5660
5661         * gtk/queryimmodules.c: Program to query the available
5662         input modules and write the results into a file.
5663          
5664         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
5665         extra config options "im_module_file" (cache file for
5666         input method modules), and "im_module_path" - path
5667         to look for modules when generating cache file.
5668
5669         This doesn't scale.
5670
5671 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
5672
5673         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
5674         generic code from gtkthemes into a new abstraction
5675         GtkModule which has the logic for implementing
5676         a loadable module which implements a number of 
5677         GObject types.
5678
5679 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
5680
5681         * gtk/gtkeditable.[ch]: Convert GtkEditable from
5682         a class into an interface  
5683         
5684         * gtk/gtkoldeditable.[ch]: Move the old editable
5685         implementation into here, so legacy widgets can
5686         still rely on the implemenation. GtkOldEditable
5687         exports GtkEditable. Make selection handling
5688         code use new text conversion functions (and
5689         handle UTF-8 as a side-effect). Use GtkClipboard
5690         for CLIPBOARD.
5691
5692         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
5693         Adopt to match above changes.
5694
5695         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
5696         avoid GtkOldEditable implementation. Restructure
5697         to reduce number of places that modify state directly.
5698         Move to GtkBindingSet. Display the preedit string.
5699         Queue recomputation of PangoLayout and scroll position
5700         to improve effiency of doing complex changes naively.
5701         Add a menu with cut/copy/paste and input method selection.
5702
5703 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
5704
5705         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
5706         to set preedit string and attributes; display preedit string by
5707         inserting string and attributes at cursor when creating the
5708         GtkTextLineDisplay.
5709
5710         * gtk/gtktextlayout.c: Move all conversions between byte
5711         positions in PangoLayout and GtkTextIter into new functions
5712         line_display_iter_to_index/index_to_iter that properly
5713         handle the preedit string.
5714
5715         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
5716         it to return const char * (eventually will end up
5717         as GCONST char *, most likely.)
5718
5719         * gtk/gtktextview.[ch]: Handle the preedit string, call
5720         gtk_im_context_reset() as necessary, add a menu to switch
5721         input methods.
5722         
5723         * gtk/gtktextlayout.[ch]: Remove useless
5724         gtk_text_layout_get_log_attrs() function.
5725
5726 2000-11-11  Tor Lillqvist  <tml@iki.fi>
5727
5728         * gdk/gdk.def
5729         * gtk/gtk.def: Update.
5730
5731         * gdk/win32/*.c: Add last argument to g_type_register_static()
5732         calls.
5733
5734         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
5735
5736         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
5737         generated by older wheel mouse drivers. Get the correct y
5738         coordinate from WM_MOUSEWHEEL messages.
5739
5740         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
5741         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
5742         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
5743         Debugging functions.
5744
5745         * gdk/win32/gdkprivate-win32.h: Declare them.
5746
5747         * gdk/win32/gdkinput-win32.h: Add declaration for
5748         gdk_input_window_destroy().
5749
5750         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
5751
5752 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
5753
5754         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
5755         function to help handle keeping things in sync.
5756
5757 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
5758
5759         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
5760         BOXED marshallers.
5761
5762         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
5763         (gtk_list_store_class_init): use the new BOXED marshallers.
5764
5765         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
5766         new_with_values to new_with_types.
5767         (gtk_tree_store_get_column_type): add this.
5768         (gtk_tree_store_class_init): use the new BOXED marshallers.
5769
5770         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
5771         mirror some POINTER marshallers.
5772
5773 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
5774
5775         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
5776         allow more interesting iterators.  Also, made the lifecycle of
5777         iterators more explicit.
5778
5779         * gtk/gtktreemodelsort.[ch]: New model for sorting.
5780
5781         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
5782         types.
5783
5784 2000-11-09  Alexander Larsson  <alexl@redhat.com>
5785
5786         * demos/testgtk/menus.c:
5787         Changes to make the new testgtk compile after
5788         gtk_menu_append was removed.
5789
5790         * gdk/linux-fb/gdkdrawable-fb2.c
5791         (gdk_fb_get_depth, gdk_fb_get_visual,
5792         gdk_drawable_impl_fb_class_init): Implement
5793         these drawable functions. Now GtkImages work again.
5794
5795         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
5796
5797         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
5798         
5799         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
5800         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
5801         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
5802         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
5803
5804 2000-11-08  Havoc Pennington  <hp@pobox.com>
5805
5806         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
5807         visible_set args, don't know where these had gone, I thought they
5808         used to be there
5809
5810         * gtk/testtext.c: Add a menu item to apply invisibility tag;
5811         now we can test the feature and see that it's totally broken.
5812
5813 2000-11-08  Havoc Pennington  <hp@pobox.com>
5814
5815         Make DND copy pixbufs and tags when source and target share a 
5816         tag table.
5817         
5818         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
5819         in-process GTK_TEXT_BUFFER_CONTENTS target
5820         (gtk_text_view_drag_data_received): Paste from
5821         GTK_TEXT_BUFFER_CONTENTS if we receive it.
5822
5823 2000-11-08  Alexander Larsson  <alexl@redhat.com>
5824
5825         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
5826         API changes.
5827
5828         * gtk/gtkmenu.c: Add support for scrolling menus.
5829         Remove gtk_menu_append/prepend/insert, these have been moved to
5830         gtkcompat.h as #defines.
5831
5832         * gtk/gtkcompat.h.in:
5833         Add compatibility #defines for gtk_menu_append/prepend/insert
5834
5835         * gtk/gtkmenu.h: Add data needed for scrolling menus.
5836         GtkMenuPositionFunc gets an extra argument push_in.
5837         gtk_menu_append/prepend/insert removed.
5838         
5839         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
5840         positioning behaviour to fit to scrolling menus.
5841
5842         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
5843         into menuitem->submeny. That is wrong, and broke torn
5844         off submenus of torn off menus, since they were unrealized
5845         when the first menu was unrealized.
5846
5847         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
5848         gtk_menu_shell_select_item() since these need to be overridden in
5849         GtkMenu.
5850
5851         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
5852         positioning behaviour to fit to scrolling menus.
5853         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
5854         the current item so that it is prelighted when the menu pops up.
5855         This is a workaround to the fact that the menu doesn't get the
5856         initial enter event (due to grabs).
5857
5858         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
5859         s/gtk_menu_append/gtk_menu_shell_append/
5860
5861         * gtk/gtknotebook.c:
5862         s/gtk_menu_insert/gtk_menu_shell_insert/
5863
5864         * gtk/testgtk.c (create_menu, create_menus):
5865         Create the first menu with 50 items so that menu scrolling
5866         can be tested.
5867         
5868         
5869         Patch from Jonathan Blandford  <jrb@redhat.com>
5870
5871         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
5872         system to handle size requests.  First, we ask what the size of
5873         the toggle is.  Then, when allocating the size, we allocate the
5874         toggle_size first.  This way we can have multiple menu-item
5875         classes w/o needing a seperate class for each.
5876
5877         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
5878         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
5879
5880         * gtk/gtkcheckmenuitem.c
5881         (gtk_check_menu_item_toggle_size_request): New function to handle
5882         the toggle size-request.
5883
5884 2000-11-07  Havoc Pennington  <hp@redhat.com>
5885
5886         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
5887         Half-ass somewhat fix this function, so that scrolling to the
5888         insertion point works. Pango hacking is in the future to really
5889         fix it.
5890
5891         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
5892         length of data, no longer used.
5893
5894         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
5895         method contents in here, get rid of destroy method
5896         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
5897         that were backward. Remove debug spew.
5898         (cut_or_copy): Make the clipboard work with insert_range to
5899         preserve tags and pixbufs, not just the primary selection.
5900
5901 2000-11-07  Havoc Pennington  <hp@redhat.com>
5902
5903         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
5904         to gtk_text_mark_get_visible
5905
5906         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
5907         bug that was generating an invalid iterator
5908
5909         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
5910         ensure_char_offsets() in front of code placing the iter in an
5911         invalid state.
5912
5913         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
5914         make override_location arg const
5915         (paste): Replace the selection if we paste into the 
5916         current selection
5917
5918         * gtk/gtkselection.h: Remove "GtkSelectioData"
5919         (struct _GtkSelectionData): move the definition here.
5920
5921         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
5922         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
5923
5924         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
5925
5926         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
5927         (gtk_text_buffer_insert_range_interactive): implement
5928         (gtk_text_buffer_get_tags): Remove, replaced by
5929         gtk_text_iter_get_tags()
5930
5931         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
5932         limit parameter, to avoid infinite linear scan.
5933         (gtk_text_iter_backward_search): Add search limit
5934         (gtk_text_iter_forward_find_char): Add search limit
5935         (gtk_text_iter_backward_find_char): Add search limit
5936
5937 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
5938
5939         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
5940         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
5941         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
5942         gdk/linux-fb/gdkwindow-fb.c:
5943         use g_object_new() instead of g_type_create_instance() which
5944         is a private function for fundamental type implementations.
5945
5946         * gdk/linux-fb/gdkinput-ps2.c:
5947         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
5948         instead just store the current modifier state. Add a (somewhat broken)
5949         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
5950         Rename exported function gdk_input_ps2_get_mouseinfo to
5951         gdk_input_get_mouseinfo.
5952
5953         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
5954         gdk/linux-fb/gdkwindow-fb.c:
5955         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
5956         
5957
5958 2000-11-02  Havoc Pennington  <hp@redhat.com>
5959
5960         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
5961         use stock buttons. Should be 100% source compatible, appropriate
5962         filesel fields now point to dialog->vbox and dialog->action_area.
5963         On the bizarre side, dialog->action_area and filesel->action_area
5964         are not the same widget.
5965         (gtk_file_selection_init): Put some padding around the selection
5966         entry, so it isn't touching the GtkDialog separator.    
5967
5968         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
5969         use stock buttons, etc. Should also be source compatible.
5970         Set the dialog default title in _init not _new().
5971         
5972         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
5973         Use stock buttons; don't put a button box inside the existing
5974         dialog button box. Don't bother with push/pop colormap anymore.
5975
5976         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
5977         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
5978         for message dialog, and necessary for the font selection and color
5979         selection with help and apply buttons.
5980         
5981         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
5982         to the created button widget. Set GTK_CAN_DEFAULT on the button.
5983         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
5984         between buttons, put less padding around the action area.
5985         (gtk_dialog_run): Exit on unmap rather than on destroy. 
5986         This will also exit the loop if the widget is hidden.
5987         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
5988         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
5989         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
5990         special-case delete event.
5991
5992         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
5993         formatting
5994         
5995 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
5996
5997         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
5998         button to temporarily disable position recording in the
5999         "saved position" test.
6000
6001 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
6002
6003         * gtk/gtkthemes.c: added compat code that temporarily implements
6004         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
6005         going to be revamped by owen's upcoming GtkModule patches, but
6006         untill then people want gtk to build, right? ;)
6007
6008 2000-11-04  Havoc Pennington  <hp@pobox.com>
6009
6010         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
6011         list
6012
6013         * docs/Changes-2.0.txt: Add note about
6014         gtk_container_get_toplevels()
6015
6016         * gtk/gtktextview.h: formatting
6017         
6018         * gtk/gtktextview.c: don't start descriptions with "Returns",
6019         confuses gtk-doc
6020
6021 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
6022
6023         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
6024         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
6025
6026 2000-11-03  Havoc Pennington  <hp@redhat.com>
6027
6028         * gtk/gtktexttagtable.c: Docs
6029         (gtk_text_tag_table_size): return a signed int
6030
6031         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
6032         (gtk_text_tag_event): make the event_object a GObject
6033
6034         * gtk/gtktextview.c: Write API docs for all functions.
6035
6036         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
6037         for gtk_text_view_get_window_type() called on one of the private
6038         windows.
6039
6040         * gtk/gtktextview.c: Instead of accessing text_view->buffer
6041         directly, call get_buffer() which demand-creates a default
6042         buffer. So gtk_text_view_new() can be used to create a view with a
6043         default buffer in it, if you just want an empty text box users can
6044         put data in. Useful for GUI builders also.
6045
6046 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
6047
6048         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
6049         the charset encodign portion MUST be in lowercase.
6050         * gtk/gtkrc.az: added file for Azeri language
6051
6052 2000-11-03  Havoc Pennington  <hp@redhat.com>
6053
6054         Get widgets working on the btree/buffer side. Display of them 
6055         still doesn't work.
6056         
6057         * gtk/gtktextview.c: start implementing child widget stuff
6058
6059         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
6060
6061         * gtk/gtktextlayout.c: handle embedded widgets
6062
6063         * gtk/gtktextdisplay.c: handle embedded widgets
6064
6065         * gtk/gtktextchild.c: Implement all the child anchor goo
6066
6067         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
6068         function
6069
6070         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
6071         (insert_pixbuf_or_widget_segment): abstract out common portions of 
6072         creating a child anchor or a pixbuf segment.
6073         (gtk_text_btree_create_child_anchor): new function
6074         (gtk_text_btree_unregister_child_anchor): new function
6075
6076         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
6077         allocate_child signal on GtkTextLayout
6078
6079         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
6080         values
6081         (gtk_text_iter_get_child_anchor): new function
6082
6083         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
6084         default handler for the changed signal, which calls
6085         gtk_text_buffer_set_modified(), instead of just always emitting
6086         changed then calling set_modified() manually. I guess this is
6087         maybe more flexible. It seems logical.
6088
6089 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
6090
6091         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
6092         now.
6093
6094         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
6095
6096 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
6097
6098         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
6099         been marked static.
6100
6101 2000-11-02  Havoc Pennington  <hp@redhat.com>
6102
6103         * gtk/testgtk.c (create_labels): had a test backward
6104
6105         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
6106         fields, so the dest GC ends up with the correct clip origin, 
6107         etc. Fixes a bug where colored labels didn't redraw 
6108         properly.
6109
6110 2000-11-02  Alexander Larsson  <alexl@redhat.com>
6111
6112         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
6113         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
6114         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
6115         Add last argument to t_type_register_static call.
6116         
6117         * gdk/linux-fb/gdkdrawable-fb2.c:
6118         Add last argument to t_type_register_static call.
6119         export the get_image drawable virtual function.
6120
6121         * gdk/linux-fb/gdkimage-fb.c:
6122         Add last argument to t_type_register_static call.
6123         rename gtk_image_get to _gdk_fb_get_image and
6124         export it for use by gdkdrawable-fb2.
6125
6126         * gdk/linux-fb/gdkprivate-fb.h:
6127         export _gdk_fb_get_image.
6128
6129         * gdk/linux-fb/gdkselection-fb.c:
6130         Add new api call stubs.
6131
6132         * gtk/Makefile.am:
6133         Missing ( in linux-fb part.
6134
6135         * modules/linux-fb/Makefile.am:
6136         Must link with gdk_pixbuf or get unresolved symbol.
6137
6138 2000-11-01  Havoc Pennington  <hp@pobox.com>
6139
6140         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
6141         GTK_TYPE_TEXT_ITER and BOXED marshallers
6142
6143         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
6144
6145         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
6146         
6147         * gtk/gtk-boxed.defs: add GtkTextIter
6148
6149         * gtk/gtkmarshal.list: Add marshallers for text widget that 
6150         properly use OBJECT and BOXED
6151
6152 2000-11-01  Havoc Pennington  <hp@redhat.com>
6153
6154         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
6155
6156         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
6157         before returning it. 
6158         
6159 2000-11-01  Havoc Pennington  <hp@redhat.com>
6160
6161         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
6162         Clip the rectangle to be rendered to the drawable, since
6163         get_from_drawable() requires a region within the drawable
6164
6165 2000-11-01  Havoc Pennington  <hp@redhat.com>
6166
6167         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
6168         from coordinates.
6169
6170 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
6171
6172         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
6173         it isn't NULL.
6174
6175 2000-11-01  Havoc Pennington  <hp@pobox.com>
6176
6177         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
6178         on a label
6179         (gtk_label_finalize): unref the attr list if any.
6180
6181         * gtk/testgtk.c (create_get_image): close test on second click
6182         (make_message_dialog): close dialog if it exists
6183
6184         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
6185
6186         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
6187         gdk-pixbuf
6188
6189         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
6190         from Pango markup format
6191         (gtk_label_set_markup_with_accel): ditto but with accelerator
6192         parsing
6193
6194         * gtk/gtkimage.c (gtk_image_expose): reformatting.
6195
6196         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
6197         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
6198         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
6199         call gdk_window_get_origin().
6200
6201         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
6202         implement GDK_PIXBUF_ALPHA_FULL
6203         
6204 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
6205
6206         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
6207         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
6208         g_signal_handlers_disconnect_matched to block/unblock and disconnect
6209         multiple handlers respectively, instead of only treating the
6210         first handler found (bug reported by owen).
6211
6212 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
6213
6214         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
6215
6216         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
6217
6218         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
6219         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
6220         gtk/gtktreeviewcolumn.h: Fixed inline docs.
6221
6222         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
6223         widget.  Needs writing someday.
6224
6225         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
6226         the docs.
6227
6228 2000-10-30  Havoc Pennington  <hp@redhat.com>
6229
6230         * gtk/gtktextview.h, gtk/gtktextview.c:
6231         Rename delete_at_cursor delete_from_cursor, and 
6232         move to move_cursor.
6233
6234 2000-10-30  Havoc Pennington  <hp@redhat.com>
6235
6236         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
6237         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
6238         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
6239         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
6240         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
6241         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
6242         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
6243         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
6244         gtktexttypes.h, gtktextview.c, gtktextview.h:
6245
6246         Massive reindentation and reformatting. Arg alignment and comments
6247         still need fixing in various places.
6248
6249 2000-10-30  Havoc Pennington  <hp@redhat.com>
6250
6251         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
6252         to be named insert_at_cursor and delete_at_cursor so C++ can
6253         handle them.
6254
6255 2000-10-28  Tor Lillqvist  <tml@iki.fi>
6256
6257         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
6258         to get a double directory separator in case the home directory
6259         ends with one. This would cause trouble especially on Windows,
6260         where the path will be confused with the syntax for an an UNC
6261         (network share) path \\server\share\path.
6262         (gtk_rc_add_initial_default_files): Ditto.
6263
6264 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
6265
6266         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
6267
6268         * gtk/gtktextview.c: Use correct marshallers.
6269
6270 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
6271
6272         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
6273         use new iter stuff, and added all the appropriate signals et al.
6274
6275         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
6276         code is internal to gtk only.
6277
6278 2000-10-28  Tor Lillqvist  <tml@iki.fi>
6279
6280         * gtk/gtk.def
6281         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
6282         glib-genmarshal etc.
6283
6284 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
6285
6286         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
6287         parallel builds.
6288
6289 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
6290
6291         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
6292
6293 2000-10-27  Robert Brady  <robert@suse.co.uk>
6294
6295         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
6296         en_GB (British), ia (Interlingua).
6297
6298 2000-10-26  Havoc Pennington  <hp@redhat.com>
6299
6300         * gtk/gtktextiter.c (my_strrstr): fix constness warning
6301
6302         Fixed output of:
6303         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
6304         
6305         * gtk/gtktextsegment.c (char_segment_new): rename
6306         (_char_segment_new_from_two_strings): rename
6307         (_toggle_segment_new): rename
6308         
6309         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
6310         (make_clipboard_widget): make it static
6311         (text_get_func): static
6312         (text_clear_func): static
6313
6314         * gtk/gtkcolorsel.c (adjustment_changed): make this function
6315         static
6316         (hex_changed): make it static
6317         (hsv_changed): make it static
6318         (opacity_entry_changed): make it static
6319
6320         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
6321         (toggle_segment_check_func): rename with _gtk
6322
6323         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
6324         (_widget_segment_new): rename
6325         (_widget_segment_add): rename
6326         (_widget_segment_remove): rename
6327         (_widget_segment_ref): rename
6328         (_widget_segment_unref): rename
6329
6330         * gtk/gtktextmark.c (_mark_segment_new): Rename
6331         _gtk_mark_segment_new   
6332
6333 2000-10-26  Havoc Pennington  <hp@redhat.com>
6334
6335         * gtk/gtkmarshal.list: add new marshallers used by the text widget
6336         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
6337         types
6338
6339         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
6340         marshaller types
6341
6342         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
6343         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
6344         license on these files.
6345
6346         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
6347         work.
6348
6349         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
6350         runtime random number different for each tree, instead of 
6351         a constant I made up.
6352
6353 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
6354
6355         * gtk/Makefile.am: buncha cleanups, kludged build sources
6356         dependencies with a Makefile: oldest-source-stamp dependancy
6357         for the moment. automake is really fighting us here, with
6358         intentionally not allowing user-defined rules or dependancies
6359         prior to it's -include $(DEP_FILES) statement. sucks rocks!
6360
6361         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
6362         to public headers. tehy have a comment stating that they are
6363         "semi-public" aren't included by gtk.h and if enums popup there,
6364         they can be /*< skip >*/-ed.
6365
6366         * gtk/gtktextlayout.h: 
6367         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
6368         added LGPL... <SIGH>
6369
6370 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
6371
6372         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
6373         GtkTreeIter.  Added iterators everywhere.
6374
6375         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
6376
6377         * gtk/gtktreeviewselection.c: Changed to use the iterators.
6378
6379         * gtk/gtktreestore.c: Changed to use the iterators.
6380
6381         * gtk/gtkliststore.c: Commented out the code.  Will convert to
6382         iterators tomorrow.
6383
6384         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
6385         iterators tomorrow.
6386
6387         * gtk/treestoretest.c: Changed to use iterators.
6388
6389         * demos/testgtk/main.c: Moved to use the new iterator system.
6390
6391 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
6392
6393         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
6394         localization misbehaviour.
6395
6396         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
6397         a useless type without copy/free.
6398
6399         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
6400         of GTK_TYPE_CTREE_NODE.
6401
6402 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
6403
6404         * gtk/gtksignal.c:
6405         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
6406         applicable.
6407
6408         * gtk/gtk-boxed.defs (GtkSelectionData): specify
6409         gtk_selection_data_copy and gtk_selection_data_free
6410         do GtkSelectionData work as params in signals.
6411
6412 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
6413
6414         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
6415         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
6416         couldn't they at least give it a non-standard name?
6417         
6418         * gtk/gtktextlayout.c: arg! yet another implementation of
6419         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
6420
6421         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
6422         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
6423         home. now i know this _is_ a conspiracy.
6424
6425         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
6426         ::state-changed.
6427
6428         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
6429         (gtk_accel_group_create_add): marshaller signature fixups.
6430
6431         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
6432         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
6433
6434         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
6435         anymore.
6436
6437 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
6438
6439         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
6440         due to the signal system changes, it wouldn't build currently. to
6441         be fixed soon.
6442
6443         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
6444
6445         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
6446         so it needs gtk_marshal_VOID__ENUM() instead of
6447         gtk_marshal_NONE__UINT().
6448
6449         * gdk/gdk*.c: adapted type registration functions.
6450
6451         * gtk/gtkbindings.c:
6452         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
6453         gone.
6454
6455         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
6456
6457         * gtk/gtkobject.c:
6458         (gtk_object_destroy):
6459         (gtk_object_shutdown): fixed recursion guards. basically we have to
6460         catch the case where any of GObject.shutdown() or gtk_object_destroy()
6461         is called during ::destroy, and avoid recursion there.
6462
6463         * gtk/gtktypeutils.c:
6464         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
6465         boxed_copy/boxed_free. this needs a more general solution based on a
6466         publically installed code-generator utility.
6467
6468         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
6469         glib's gobject has support for that now.
6470         define GtkSignalMarshaller in terms of GSignalCMarshaller.
6471
6472 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
6473
6474         * gtk/gtksignal.[hc]:
6475         * gtk/gtkmarshal.[hc]:
6476         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
6477         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
6478         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
6479         care of that.
6480
6481         * *.c: marshaller name fixups.
6482
6483         * gtk/gtkmarshal.list: added a comment briefing the format.
6484
6485 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
6486
6487         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
6488         compatibility macros here now. more specifically, most of
6489         the API is preserved (yes, _most_, nonwithstanding the
6490         following exceptions listed, the API is stil lHUGE ;)
6491         things that got removed completely:
6492         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
6493         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
6494         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
6495         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
6496         gtk_signal_remove_emission_hook().
6497         non-functional functions variants:
6498         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
6499         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
6500         not supported anymore.
6501         (gtk_signal_compat_matched): new internal function to aid
6502         implementation of the compatibility macros, it  provides
6503         functionality to block/unblock/disconnect handlers based
6504         on func/data.
6505
6506         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
6507
6508         * *.c: adaptions to new type registration API signatures.
6509
6510 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
6511
6512         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
6513
6514 2000-10-25  Robert Brady  <robert@suse.co.uk>
6515
6516         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
6517         gdk_property_delete): If window == NULL, assume the root window.
6518         (restoring the behaviour that was in 1.2).
6519         
6520         * gtk/testtext.c (save_buffer): Allow creation of new files when
6521         saving.
6522
6523         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
6524         calls to read().
6525
6526 2000-10-25  Tor Lillqvist  <tml@iki.fi>
6527
6528         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
6529
6530         * gdk/win32/gdkdrawable-win32.c
6531         * gdk/win32/gdkimage-win32.c
6532         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
6533         X11 backend.
6534
6535         * gdk/win32/gdkcc-win32.c
6536         * gdk/win32/gdkcolor-win32.c
6537         * gdk/win32/gdkfont-win32.c
6538         * gdk/win32/gdkinput-win32.c
6539         * gdk/win32/gdkmain-win32.c
6540         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
6541
6542 2000-10-24  Havoc Pennington  <hp@redhat.com>
6543
6544         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
6545         it a static function
6546
6547         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
6548         redraw text when a tag is applied to it.
6549
6550         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
6551         (gtk_text_tag_affects_nonsize_appearance): private functions to
6552         see if a tag requires various kinds of redraw/layout to be queued
6553         up.
6554
6555         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
6556
6557         * gtk/testtext.c (fill_example_buffer): Put the cursor 
6558         at the start of the buffer, so search works by default
6559
6560         * gtk/gtktextiter.c (lines_match): init match_start always
6561
6562         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
6563         function, get iter at a line + a byte index
6564
6565         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
6566         to set byte position within a line
6567         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
6568
6569 2000-10-23  Havoc Pennington  <hp@redhat.com>
6570
6571         * gtk/testtext.c: Re-enable the "find" dialog
6572
6573         * gtk/testgtk.c: Add test for gdk_drawable_get_image
6574         
6575         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
6576         the arguments to gdk_draw_drawable were in the wrong order
6577         (gdk_window_paint_init_bg): This function was ignoring the
6578         init_region, instead of clipping to it, so the entire backing
6579         pixmap was cleared on every begin_paint()
6580         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
6581         was in here again, the loop kept using the same GtkWindowPaint
6582         over and over.
6583         (gdk_window_begin_paint_region): Fix a bug where we had two
6584         x_offset instead of x_offset and y_offset
6585
6586         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
6587         before we get the image.
6588         (gdk_draw_drawable): get the composite before we draw the drawable.
6589         (gdk_drawable_real_get_composite_drawable): default
6590         get_composite_drawable implementation that returns the drawable 
6591         itself
6592
6593         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
6594         get_composite_drawable virtual function
6595
6596         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
6597         list-walking bug
6598
6599         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
6600         make this work if the source drawable is a GdkDrawableImplX11
6601         instead of a public drawable type. This is really broken; the
6602         problem is that GdkDrawable needs a virtual method get_xid(), but
6603         of course that doesn't work in practice. Enter RTTI.
6604
6605         Also, improve mismatched depth message.
6606
6607         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
6608         GdkPixmap
6609
6610         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
6611         install _gdk_x11_get_image as our implementation of get_image
6612         
6613         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
6614         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
6615
6616         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
6617         gdk_drawable_get_image
6618
6619         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
6620
6621         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
6622         get_image
6623
6624         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
6625         trailing semicolon after for loop
6626
6627 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
6628
6629         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
6630         where font_desc for widget's context lagged widget's font_desc by
6631         one step.
6632
6633 2000-10-22  Tor Lillqvist  <tml@iki.fi>
6634
6635         * gdk/win32/gdkgc-win32.c
6636         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
6637
6638         * gtk/makefile.mingw.in
6639         * gtk/gtk.def: Updates.
6640
6641         * gtk/testgtk.c: sleep() is called _sleep in MS's C
6642         library.
6643
6644         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
6645
6646         * gtk/makefile.msc: Remove
6647
6648         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
6649
6650         * gtk/Makefile.am: Add it.
6651
6652         * configure.in: Generate it.
6653
6654         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
6655         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
6656         something even if not implemented, to satisfy picky MSVC.
6657
6658         Patches by Hans Breuer:
6659         
6660         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
6661         SetBkMode() and SetTextAlign() before calling
6662         pango_win32_render().
6663
6664         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
6665         Set hcliprgn to NULL after destroying it.
6666         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
6667
6668         * gdk/win32/gdkgeometry-win32.c
6669         (_gdk_windowing_window_queue_antiexpose): More effective
6670         implementation.
6671
6672         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
6673         depth as default, not the visual's.
6674
6675         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
6676         against empty title.
6677
6678         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
6679         IMAGE_PRIVATE_DATA.
6680
6681         * gdk/win32/gdkimage-win32.c: Use it.
6682
6683 2000-10-22  Robert Brady  <robert@suse.co.uk>
6684
6685         * configure.in: Check for bind_textdomain_codeset
6686
6687         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
6688         present, make use of it.
6689
6690         Add a translatable string "default:LTR" which, if translated
6691         to "default:RTL", will cause the default direction to be
6692         Right-to-Left.
6693
6694         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
6695         direction if marked as flippable.
6696
6697         * gtk/gtkhscale.c: Mark widget as flippable.
6698         
6699 2000-10-04  Havoc Pennington  <hp@redhat.com>
6700
6701         * gtk/testgtk.c (create_buttons): create some stock buttons
6702         with the default accel group
6703         (create_image): test some new GtkImage features
6704         (make_message_dialog): test GtkMessageDialog
6705         (create_modal_window): fix someone's bizzarro indentation
6706
6707         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
6708         GTK_WIN_POS_CENTER_ON_PARENT. 
6709         Add "destroy with parent" setting, which means the window goes
6710         away with its transient parent.
6711         (gtk_window_get_default_accel_group): get the default accel group
6712         for the window.
6713         (gtk_window_set_destroy_with_parent): set/unset destroy with
6714         parent flag
6715         (gtk_window_read_rcfiles): invalidate icon set caches
6716         after reloading rcfiles 
6717
6718         * gtk/gtkenums.h (GtkWindowPosition): add
6719         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
6720         on its parent window when the dialog is mapped for the first time.
6721
6722         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
6723         a simple message dialog class
6724         
6725         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
6726         handler to emit response signal, and maybe later it would
6727         honor a hide_on_delete flag - though that isn't there yet.
6728         Set border width on the vbox to 2, so we get some padding.      
6729         Use a button box for the action area.
6730         (gtk_dialog_key_press): synthesize a delete event if Esc
6731         is pressed and the GtkWidget key press handler didn't 
6732         handle the escape key.
6733         (gtk_dialog_new_with_buttons): new function creates a dialog
6734         with some default buttons in it.
6735         (gtk_dialog_add_action_widget): add an activatable widget
6736         as a button in the dialog - you can also add a non-activatable
6737         widget by accessing the action area directly.
6738         (gtk_dialog_add_button): add a simple button - stock ID or 
6739         label - to the action area
6740         (gtk_dialog_response): emit response signal
6741         (gtk_dialog_run): block waiting for the dialog, return 
6742         the response. Override normal delete_event behavior, so that 
6743         delete_event does nothing inside gtk_dialog_run().
6744
6745         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
6746         emitted when an action widget is clicked or the dialog gets
6747         delete_event
6748
6749         * gtk/gtk.h: add gtkmessagedialog.h
6750
6751         * gtk/Makefile.am: add gtkmessagedialog.[hc]
6752
6753 2000-10-18  Havoc Pennington  <hp@redhat.com>
6754
6755         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
6756         where any number of empty lines would get skipped
6757
6758         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
6759         edge.
6760
6761         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
6762         warning about invalid iterators (explain more thoroughly)
6763         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
6764
6765         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
6766         big
6767
6768         * demos/*.c: Add error handling
6769
6770         * gtk/gtktextbuffer.c: don't modify const iterators
6771
6772         * gtk/gdk-pixbuf-loader.c: Add full error handling here
6773
6774         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
6775         on file load
6776
6777         * gtk/gtkiconfactory.c: Update to reflect addition of error
6778         handling to gdk-pixbuf loaders
6779
6780 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
6781
6782         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
6783         move to new modularized testgtk.
6784
6785 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
6786
6787         * gtk/gtktreeview.c: Draw the arrows correctly.
6788
6789         * gtk/gtktreemodel.c: Added user docs.
6790
6791         * gtk/gtk.h: remove gtktreedatalist.h.
6792
6793         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
6794         parent when generating my type.
6795
6796         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
6797         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
6798
6799 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
6800
6801         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
6802         GtkTreeModel from object to interface.
6803
6804 2000-10-16  Havoc Pennington  <hp@redhat.com>
6805
6806         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
6807         compilation
6808
6809 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
6810
6811         * gtk/gtktreeselection.c: Add API documentation to all public
6812         functions.
6813
6814         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
6815         functions.
6816
6817 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
6818
6819         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
6820         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
6821         docs to all public functions.
6822
6823         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
6824         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
6825         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
6826         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
6827         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
6828         issue.
6829
6830 2000-10-14  Robert Brady  <robert@suse.co.uk>
6831
6832         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
6833
6834 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
6835
6836         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
6837         values other then G_TYPE_STRING.
6838         * gtk/gtktreeselection.c: Minor commenting updates.
6839         * gtk/gtktreeview.c: Format updates.
6840
6841 2000-10-09  Tor Lillqvist  <tml@iki.fi>
6842
6843         * README.win32: Update.
6844
6845         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
6846         lines that had been deleted by mistake (?).
6847
6848         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
6849         also the case fg==white and bg==black (but still not randomly
6850         coloured cursors). Thanks to Wolfgang Sourdeau.
6851
6852         * gdk/win32/*.c: Silence gcc -Wall.
6853
6854         * gtk/gtk.def: Add missing entry points.
6855
6856         Fixes by Hans Breuer:
6857
6858         * gdk/makefile.msc
6859         * gdk/win32/makefile.msc: Update.
6860
6861         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
6862         some MSVC thing, presumably), cause breakpoint on failures. Add
6863         GDK_NOR case. Call g_log_set_always_fatal.
6864
6865         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
6866         should be pased by reference.
6867         
6868         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
6869         
6870         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
6871
6872         * gdk/win32/gdkevents-win32.c
6873         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
6874
6875         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
6876         implementation object.
6877
6878         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
6879         not just windows.
6880         
6881         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
6882         Use the wrapper object.
6883         
6884 2000-10-06  Havoc Pennington  <hp@redhat.com>
6885
6886         * Makefile.am (SRC_SUBDIRS): contrib subdir
6887
6888         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
6889         so it can be used in Xlib version
6890
6891         * demos/testpixbuf.c (update_timeout): error checking from 1.0
6892         tree
6893
6894         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
6895         change from 1.0 tree that returns first frame of animation
6896         if the loaded file is an animation.
6897
6898         * contrib: add new directory to hold stuff that comes with GTK+
6899         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
6900         
6901         * configure.in: add contrib/*
6902
6903 2000-10-05  Havoc Pennington  <hp@redhat.com>
6904
6905         * demos/testpixbuf-save.c: add pixbuf save test
6906
6907         * demos/Makefile.am: add testpixbuf-save.c
6908
6909 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
6910
6911         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
6912         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
6913         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
6914         * gtk/gtktreeselection.[ch]: Replaced
6915         "node_selected"/"node_unselected" signal with "selection_changed"
6916         signal.
6917
6918 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
6919
6920         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
6921         tree widget.
6922
6923 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
6924
6925         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
6926         drawing.
6927
6928 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
6929
6930         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
6931         Move list pointer forwards before removing item from
6932         list. (Crash reported by Salmaso Raffaele)
6933
6934         * gdk/gdkwindow.h: Remove spurious trailing ,
6935
6936         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
6937         dependencies on uninstalled libraries, sorry folks.
6938
6939 2000-10-04  Havoc Pennington  <hp@redhat.com>
6940
6941         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
6942         gtk/gtkiconfactory.c: Fix copyrights    
6943
6944         * demos/testpixbuf.c: add inline pixbuf test
6945         
6946 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
6947
6948         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
6949         Add gdk_window_iconify.
6950
6951         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
6952         (gdk_window_set_geometry_hints): Add win_gravity
6953         to geometry structure.
6954
6955         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
6956         Implement _NET_WM_PING.
6957
6958         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
6959         Set _NET_WM_PID on the client leader.
6960
6961         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
6962         Handle UTF-8 better.
6963
6964         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
6965         UTF-8 better, set _NET_WM_NAME as well. Only set
6966         icon name if it hasn't previously been explicitely 
6967         set.
6968
6969 2000-10-03  Havoc Pennington  <hp@redhat.com>
6970
6971         * gtk/testtextbuffer.c: clean up trailing whitespace,
6972         add extensive tests for tag toggle iteration.
6973         
6974         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
6975         distance
6976
6977         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
6978         optimize case where the tag root is on level 1
6979         (gtk_text_line_previous_could_contain_tag): attempt to implement
6980         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
6981         functionality
6982
6983         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
6984         Implement this, though not very efficiently.
6985
6986         * gtk/gtktextiterprivate.h: reformat
6987
6988         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
6989         iterator
6990
6991         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
6992         this to properly revalidate the iterators.
6993
6994         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
6995         properly at the end of the line (and therefore on empty lines)
6996
6997         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
6998         maybe we should return a value...
6999
7000 2000-10-03  Tor Lillqvist  <tml@iki.fi>
7001
7002         * config.h.win32: Guard definition of alloca(). glib.h now handles
7003         that.
7004
7005         * gdk/gdk.def
7006         * gtk/gtk.def: Add new entry points.
7007
7008         Changes just to make GTK+ build without errors on Win32. No hope
7009         of it working in its current state, though...:
7010         
7011         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
7012         some functions from the X11 backend, just to make GTK+ build.
7013
7014         * gdk/makefile.mingw.in
7015         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
7016         number. Add new object files.
7017
7018         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
7019         GetMessageTime to get timestamp (where on X11 uses
7020         gdk_x11_get_server_time()).
7021
7022 2000-10-02  Havoc Pennington  <hp@pobox.com>
7023
7024         * gtk/gtktextview.c: text_window_* weren't static and should have
7025         been.
7026         Start work on child widgets; not yet complete, syncing to 
7027         office computer.
7028
7029         * gtk/gtktextchild.h: change this to contain a public interface,
7030         starting work on child interfaces.
7031         * gtk/gtktextchildprivate.h: move private interfaces here
7032
7033         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
7034
7035         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
7036         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
7037         gtk/gtktextmark.c: copyright notices
7038
7039         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
7040         internal functions      
7041
7042         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
7043         internal function
7044
7045         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
7046         Reformatting    
7047
7048 2000-09-30  Havoc Pennington  <hp@pobox.com>
7049
7050         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
7051         NULL start/end pointers
7052
7053         * gtk/gtktextbuffer.c: Write some docs
7054         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
7055         NULL, so you can just check whether there's a selection.        
7056
7057         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
7058         cleanup_line or segments_changed ourselves, it gets done 
7059         in unlink_segment
7060
7061         * gtk/gtktextmark.h:
7062         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
7063         
7064         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
7065
7066         * gtk/gtktextmark.c: delete some more old Tk cruft
7067
7068         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
7069         mark before removing it, so we can emit MARK_DELETED with a valid
7070         pointer.
7071         (gtk_text_buffer_mark_set): hold ref across signal emission
7072
7073         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
7074         whining about attempts to delete special marks
7075
7076         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
7077         underscore, since it's internal.
7078
7079         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
7080         now implemented in terms of iterators in gtktextiter.h
7081
7082         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
7083         New function, destructively sets contents of buffer. Also 
7084         a convenient way to clear the buffer by setting text to ""
7085
7086         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
7087         multiline string literal
7088
7089         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
7090         text changes.
7091
7092         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
7093         is not dereferenceable
7094         (gtk_text_iter_forward_lines): fix return value
7095
7096 2000-09-29  Havoc Pennington  <hp@redhat.com>
7097
7098         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
7099
7100         * gtk/gtktextview.c: Implement drag thresholding; change functions 
7101         that set border window size to have nicer name
7102         (gtk_text_view_mark_set_handler):  Fix this to have the 
7103         right signature.
7104
7105         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
7106
7107         * gtk/testtext.c: Update with API changes, put line numbers on 
7108         both sides.
7109         
7110         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
7111         with this
7112
7113         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
7114         pixbuf; delete a big block of #if 0 Tk code
7115
7116         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
7117         insert_pixmap with insert_pixbuf
7118
7119 2000-09-29  Martin Baulig  <baulig@suse.de>
7120
7121         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
7122         confusion with the GdkPixbuf of the GNOME 1.x platform.
7123
7124 2000-09-29  Havoc Pennington  <hp@pobox.com>
7125
7126         * gtk/gtktextview.c: Implement the side windows.
7127
7128         * gtk/testtext.c: Implement simple line numbering in the 
7129         left side window; seems to make scrolling sloooow. Oops.
7130         Also, cursor blink is for some reason causing redraws
7131         of the line numbers. Should investigate...
7132
7133 2000-09-28  Havoc Pennington  <hp@redhat.com>
7134
7135         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
7136         scrolling child windows, and draw focus rectangle properly.
7137         
7138         (gtk_text_view_buffer_to_window_coords):
7139         Coordinate transformation to deal with all these freaking windows
7140         and offsets
7141         (gtk_text_view_window_to_buffer_coords): transform the other way
7142
7143         * gtk/testtext.c (create_buffer): Update to match Pango API change
7144
7145         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
7146         anonymous tags
7147         (foreach_unref): don't emit remove signal from finalize, just
7148         set tag's parent to NULL
7149
7150 2000-09-26  Havoc Pennington  <hp@redhat.com>
7151
7152         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
7153         Fix some warnings       
7154
7155 2000-09-26  Havoc Pennington  <hp@redhat.com>
7156
7157         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
7158         headers into the private header list
7159
7160         * Makefile.am (pkgconfig_DATA): install pkg-config files
7161
7162         * configure.in: add pkg-config files
7163
7164         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
7165
7166         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
7167         outstanding icon caches on theme change.
7168
7169         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
7170         important types:
7171
7172         (GtkIconSource): Specification for creating a pixbuf 
7173         appropriate for a direction/state/size triplet from 
7174         a source pixbuf or filename
7175
7176         (GtkIconSet): List of GtkIconSource objects that are used to
7177         create the "same" icon (e.g. an OK button icon), and cache for
7178         rendered icons
7179
7180         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
7181         up the icon set for a given stock ID.  GTK maintains a stack of
7182         GtkIconFactory to search, and applications or libraries can add
7183         additional icon factories on top of the stack
7184         
7185         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
7186         the set of GtkIconSource specified for a given stock ID into 
7187         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
7188         RcStyle, under the specified stock ID.
7189
7190         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
7191         render_icon used to derive a GdkPixbuf from a GtkIconSource.
7192         This allows people to theme how prelight, insensitive, etc. are
7193         done.
7194
7195         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
7196         icon factories for a style, and return the resulting 
7197         icon set if any.
7198
7199         (gtk_style_render_icon): Render an icon using the render_icon 
7200         method in the GtkStyleClass.
7201
7202         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
7203         Use the style for a given widget to look up a stock ID, get the
7204         icon set, and render an icon using the render_icon method 
7205         of the style
7206
7207         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
7208         (contains information about a stock item), the built-in stock item
7209         IDs, and functions to add/lookup stock items.
7210
7211         * gtk/stock-icons/*: Stock icons that come with GTK
7212
7213         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
7214         a button based on a GtkStockItem
7215         (gtk_button_new_accel): Takes a uline string and accel group, and
7216         installs the accelerator.
7217
7218         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
7219         image-display widget.
7220
7221 2000-09-25  Havoc Pennington  <hp@redhat.com>
7222
7223         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
7224
7225         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
7226         Fix a bug when removing node data, we didn't properly 
7227         re-splice the linked list after removing the data.
7228
7229         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
7230         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
7231
7232         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
7233
7234         * gtk/gtktextlayout.c (set_para_values): Set tab array 
7235         for the layout from the GtkTextTag.
7236
7237         * gtk/gtktexttypes.h: delete tab and search cruft, 
7238         remove g_convert() in favor of GLib version
7239
7240         * gtk/gtktexttypes.c: remove tab implementation from here,
7241         move to Pango
7242
7243         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
7244         tab stuff using new PangoTabArray from Pango
7245
7246         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
7247         unused border_width stuff
7248
7249 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
7250
7251         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
7252         glib) and now useless utf_to_latin1() latin1_to_utf()
7253
7254         * gtk/gtktextview.[ch]: Change ::move_insert and
7255         ::delete_text action signals to ::move and ::delete;
7256         create the signals with the right enumeration type,
7257         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
7258         C-v bindings, change Home, End to move to beginning/end
7259         of line, Add C-Home C-End to move to beginning/end
7260         of buffer. Change ::cut_text to ::cut_clipboard, etc;
7261         combine ::scroll_text into ::move; use new GtkSelectionData
7262         functions to simplify DND text handling.
7263         
7264         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
7265         deletion enumerations here, rename enumeration values to 
7266         be consistently plural.
7267
7268         * gtk/gtktextbuffer.c: Use new clipboard interfaces
7269         for cut/copy/paste and primary selection.
7270
7271         * gtk/gtktextbuffer.[ch]: Remove excess time and
7272         'interactive' arguments from cut/copy/paste;
7273         rename cut to cut_clipboard, etc; remove
7274         gtk_text_buffer_get_clipboard_contents().
7275
7276         * gtk/gtktextlayout.[ch]: Add 
7277         gtk_text_layout_move_iter_to_line_end() to move the iter to 
7278         line ends.
7279
7280         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
7281         Functions to set or get a UTF-8 string on the selection
7282         data.
7283
7284         * gtk/gtkclipboard.[ch]: New, simplified selection handling
7285         interfaces.
7286
7287         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
7288         created widgets - one of these is useless if we don't.
7289
7290         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
7291         a public function clear all targets registered for the
7292         widget.
7293
7294         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
7295         Never call gtk_widget_realize() - that was just asking
7296         for bizarre side-effects.
7297
7298         * gtk/gtkselection.c (gtk_selection_owner_set): Call
7299         gdk_selection_owner_set even if the widget is the
7300         same so that we reliably update the timestamp on
7301         the server.
7302
7303         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
7304         gdk_x11_get_server_time() function.
7305         
7306         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
7307         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
7308         Add some tricky filtering on serial numbers for
7309         selection clear events to fix up long-standard
7310         race condition FIXME's in gtkselection.c.
7311
7312         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
7313         routines to convert from utf8 to compound text or
7314         STRING and from a text property to UTF-8.
7315
7316         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
7317         a convenience function gdk_get_current_event_time().
7318
7319         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
7320         and free selection_data->data properly
7321
7322 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
7323
7324         * gtk/gtkthemes.c: Remove some unecessary includes.
7325
7326 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
7327
7328         * gtk/gtktextdisplay.c
7329         * gtk/gtktextlayout.c
7330         * gtk/gtktexttag.c
7331         * gtk/gtktexttag.h
7332         * gtk/testtext.c: Change the overstrike property to strikethrough,
7333         to closer match pango.
7334
7335 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
7336
7337         * gtk/gtktextview.c: Fix up visibility so that focus,
7338         cursor_visible and blink interact properly.  Reenable cursor blink
7339         which had been roughly disabled. Make blink and focus
7340         properly per-view.
7341
7342         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
7343         Add a flag for whether to display insertion cursor and
7344         a function to set the flag.
7345
7346         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
7347         get_line_y() to get_line_yrange(), to be a bit more generally
7348         useful.
7349
7350 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
7351
7352         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
7353           do stop_navigating_submenu, to clear last timeout properly.
7354           Also in gtk_menu_motion_notify move ignore_enter above
7355           the conditional to make it always happen as suggested by Owen
7356
7357 2000-09-07  Tor Lillqvist  <tml@iki.fi>
7358
7359         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
7360
7361         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
7362         w32api headers.
7363
7364         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
7365         declarations.
7366
7367         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
7368         (gdk_win32_get_colormap): A line had been deleted by mistake.
7369
7370         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
7371         (gdk_event_translate): Handle more virtual keycodes to be able to
7372         generate GDK events for Control-comma, Control-period, etc.
7373
7374         * gtk/gtk.def: Add some missing entry points.
7375
7376 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
7377
7378         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
7379         Doc comment fixing. (Mostly non-matching parameter names.)
7380
7381         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
7382         comments a little to avoid looking like a doc comment.
7383
7384         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
7385         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
7386         conversions be changed to GError?)
7387
7388         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
7389         Move private #defines into .c file.
7390
7391         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
7392         order of argument addition, remove duplicates.
7393
7394         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
7395         parent class is FrameClass, not BinClass.
7396
7397         * gtk/gtk.h: Add gtkinvisible, which was missing.
7398         (It's occasionalyl useful for client apps, if seldom.)
7399
7400         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
7401         #define.
7402
7403 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
7404
7405         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
7406         coordinates when creating window, instead of GDK-space
7407         coordinates. (Avoid BadValue on too large windows.)
7408
7409 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
7410
7411         * configure.in (use_mmx_asm): Remove conftest* after use along the
7412         lines of AC_TRY_COMPILE.        
7413         
7414         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
7415         of g_dirname, which is deprecated.
7416         (gtk_rc_parse_any): Removed calls to
7417         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
7418
7419         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
7420         Removed calls to g_hash_table_{freeze,thaw}, as they are
7421         deprecated now.
7422
7423         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
7424         instead of g_basename.
7425         
7426 2000-09-04 Elliot Lee <sopwith@redhat.com>
7427         
7428         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
7429         ANSI warning.
7430
7431 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
7432
7433         * gtk/gtkwidget.h:  Add some documenting comments about 
7434           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
7435           just as owen said on irc.
7436
7437         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
7438           set HAS_DEFAULT.  Only set it if there isn't another window
7439           holding it (a focus window which RECEIVES_DEFAULT) and only unset
7440           it if the widget is not the focused window with RECEIVES_DEFAULT.
7441           This fixes weird double default bugs in dialogs which has things
7442           call gtk_window_set_default at times.
7443
7444 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
7445
7446         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
7447         Nils Barth and David Santiago to improve submenu
7448         navigation. The patch does this by creating a triangular
7449         region from the point where the pointer leaves the
7450         menu to the submenu.  While the pointer is in
7451         that region and a timeout has not expired, events 
7452         that would cause the active submenu to change are
7453         ignored.
7454
7455 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
7456
7457         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
7458         moving a toplevel window immediately after sizing it would
7459         result in it being sized back to the old size since 
7460         impl->width, impl->height aren't updated until we hear
7461         back from the server. There is still a (longstanding) bug
7462         here that gdk_window_get_size() will give the wrong size
7463         until we do hear back.
7464
7465 2000-08-31  Havoc Pennington  <hp@redhat.com>
7466
7467         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
7468         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
7469         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
7470         Rename GtkTextStyleValues to GtkTextAttributes
7471
7472 2000-08-31  Havoc Pennington  <hp@pobox.com>
7473
7474         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
7475         for rapid testing whether an iterator is the end iterator
7476         (gtk_text_btree_new): init end line cache
7477         (gtk_text_line_is_last): use fast cached line to 
7478         see if we're the last line.
7479         (get_last_line): use cached line here too, should 
7480         speed up some random unrelated code.
7481         
7482 2000-08-30  Havoc Pennington  <hp@pobox.com>
7483
7484         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
7485         signals.
7486
7487         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
7488         delete_text signals. This allows the signals to be used for
7489         implementing undo.
7490
7491         * gtk/gtktextbuffer.c: Change signal handler signatures; 
7492         provide "interactive" argument when emitting insert_text or
7493         delete_text signal.
7494         
7495 2000-08-30  Havoc Pennington  <hp@pobox.com>
7496
7497         * gtk/gtktextbuffer.c: Docs
7498
7499 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
7500
7501         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
7502         from switch statements, since Tor removed the enumeration
7503         value.
7504         
7505         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
7506         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
7507
7508 2000-08-29 Elliot Lee <sopwith@redhat.com>
7509         * */*.h: Use G_GNUC_CONST.
7510
7511 2000-08-27  Havoc Pennington  <hp@pobox.com>
7512
7513         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
7514         minor indentation fixes, inserted some FIXME about stuff I
7515         realized was broken while documenting it.
7516         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
7517         GTK convention  
7518
7519 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
7520
7521         * gtk/testgtk.c (create_styles): Fix double free of
7522         font desc.
7523
7524 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
7525
7526         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
7527         
7528         * gtk/testgtk.c (create_styles): Add a test for modifying
7529         the style through gtk_widget_modify_*.
7530
7531         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
7532         a function to get the current modifier style.
7533
7534         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
7535         of the passed in GtkRcStyle instead of ref'ing it.
7536
7537         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
7538
7539 2000-08-20  Tor Lillqvist  <tml@iki.fi>
7540
7541         * gdk/gdkimage.h
7542         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
7543         shared memory image+pixmap GdkImage type, or
7544         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
7545         I am dropping that.
7546
7547         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
7548         actually call gtk_init_abi_check(), passing also
7549         sizeof(GtkWindow). Ditto for gtk_init_check(). 
7550
7551         * gtk/gtk.def
7552         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
7553         New functions, used to check that the GTK+-using code has been
7554         compiled using the correct compiler and switches. In particular,
7555         with gcc one has to use the -fnative-struct switch as GTK+ is
7556         compiled with that.
7557
7558 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
7559
7560         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
7561         ->prev fields when merging lists. (Found simultaneously
7562         by Pawel Salek and Jakub Jelinek)
7563
7564 2000-08-12  Tor Lillqvist  <tml@iki.fi>
7565
7566         * gdk/gdk.def
7567         * gtk/gtk.def: Add missing entries.
7568
7569         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
7570         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
7571
7572         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
7573         function. Dummy implementation at this point.
7574
7575         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
7576         rules. Undefine GTK_COMPILATION when compiling the test programs.
7577         
7578         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
7579
7580 2000-08-11  Tor Lillqvist  <tml@iki.fi>
7581
7582         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
7583         to convert back and forth from UTF-8 and the "system" (or "current
7584         locale") charset when necessary. Indentation/spacing cleanup.
7585
7586 2000-08-10  Havoc Pennington  <hp@redhat.com>
7587
7588         * Makefile.am (snapshot): Change the format of the snapshot
7589         version to match glib
7590
7591         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
7592         from EXTRA_DIST since it doesn't seem to exist
7593
7594 2000-08-10  Tor Lillqvist  <tml@iki.fi>
7595
7596         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
7597         version of the directory name (not the UTF-8 one) when building
7598         the path name to stat().
7599
7600 2000-08-03  Elliot Lee  <sopwith@redhat.com>
7601
7602         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
7603         PANGO_ATTR_SHAPE set.
7604
7605 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
7606
7607         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
7608         Peter Osterlund to simplify the code while keeping the
7609         functionality the same.
7610
7611 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
7612
7613         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
7614         is_viewable() test further inside the function, since removing the 
7615         window from the redraw list without clearing ->update_area
7616         was also very broken.
7617
7618 2000-08-02  Tor Lillqvist  <tml@iki.fi>
7619
7620         * configure.in: Check for <unistd.h>.
7621
7622 2000-08-01  Martin Baulig  <baulig@suse.de>
7623
7624         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
7625         to display the message that this is a development version of GTK+.
7626
7627 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
7628
7629         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
7630         was depending on widget->allocation instead of the width of text_area,
7631         which was incorrect for subclasses like GtkSpinButton.
7632
7633         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
7634         with width == 1 tests that should be width == -1.
7635
7636 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
7637
7638         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
7639         (broken, Elliot, every single window blank on X) custom code with call
7640         to gdk_window_is_viewable() which a) prevents code duplicate and
7641         b) works. 
7642
7643 2000-07-31  Elliot Lee  <sopwith@redhat.com>
7644
7645         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
7646         to get the GDK_PARENT_ROOT() macro to work.
7647         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
7648         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
7649         of, windows that aren't shown.
7650         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
7651         pointer grab stuff.
7652
7653 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
7654
7655         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
7656           s/gtk_main_iteration/g_main_iteration/
7657
7658           Did this already in change:
7659                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
7660           don't know how it got reverted.
7661
7662 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
7663
7664         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
7665         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
7666
7667         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
7668         not gdk_pixbuf.
7669
7670 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
7671
7672         * configure.in,po/{sp,sr}.po: Added Serbian files
7673
7674 2000-07-30  Tor Lillqvist  <tml@iki.fi>
7675
7676         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
7677
7678         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
7679         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
7680         GIOChannel implementation.
7681
7682         * gdk/win32/gdkinput.c
7683         * gdk/win32/gdkpango-win32.c: Update license name here, too.
7684
7685         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
7686         definition to match prototype.
7687
7688         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
7689
7690 2000-07-27  Elliot Lee  <sopwith@redhat.com>
7691
7692         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
7693         function, to allow handling image formats that cannot be detected
7694         by looking at content alone.
7695
7696 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
7697
7698         * docs/tutorial/*.gif *.jpg *.eps
7699           Update these to the same look-n-feel.
7700           Why does including images in DocBook suck so badly?
7701
7702 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
7703
7704         * gtk/gtktable.c: applied patch from Phil Thompson
7705         <phil@river-bank.demon.co.uk> that enables space settings for
7706         the last row/columns as well.
7707
7708 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
7709
7710         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
7711         updates the license headers to the GNU Lesser General Public License,
7712         as well as updating the copyright year to 2000.
7713
7714 2000-07-26  Robert Brady  <rwb197@zepler.org>
7715
7716         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
7717           and po/Makefile, was installing and looking for them under gtk20
7718           and gtk2 respectively.
7719
7720 2000-07-25  Havoc Pennington  <hp@redhat.com>
7721
7722         * gtk/testtext.c: Comment out some stuff that depends on the rest
7723         of my patches.
7724
7725 2000-07-25  Havoc Pennington  <hp@redhat.com>
7726
7727         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
7728         buffer
7729
7730 2000-07-25  Havoc Pennington  <hp@redhat.com>
7731
7732         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
7733         widget changes.
7734
7735         * gtk/gtktextview.h: To be consistent with usage of "line"
7736         throughout the API to mean "newline-terminated thingy", change
7737         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
7738         to MOVEMENT_LINE.
7739
7740         (GtkTextView): Add flags for default editability, and whether to
7741         show the cursor. Add functions to get/set that. Add 
7742
7743         (gtk_text_view_get_iter_location): new function
7744
7745         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
7746         gtktextlayout.h
7747         (g_convert): Add g_convert temporarily, will go in glib in a bit
7748         
7749         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
7750         GtkTextTagTableForeach instead of brokenly using GHFunc.
7751         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
7752
7753         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
7754         moved to public header.
7755
7756         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
7757         "invisible", since "elide" was a bad name.
7758         (gtk_text_tag_get_priority): Added
7759
7760         (GtkTextStyleValues): put this in public header, along with
7761         functions to use it.
7762
7763         * gtk/gtktextmarkprivate.h: Include more headers, since we no
7764         longer include gtktextbtree.h.
7765
7766         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
7767         gtk_text_mark_deleted
7768
7769         * gtk/gtktextlayout.h: Don't include the "really private" headers,
7770         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
7771         to make this possible. Now we only need to install
7772         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
7773         (However the Makefile.am isn't changed yet because of the
7774         logistics of merging gtk-hp-patches piecemeal)
7775
7776         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
7777         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
7778         gtk_text_iter_get_line is now used in the public API for a
7779         different purpose.
7780
7781         * gtk/gtktextiter.h: Clean up function names to be more
7782         consistent. Always call char offset "offset" and byte index
7783         "index". A "line" is always a line number. 
7784
7785         (gtk_text_iter_is_last): new function, more efficient than 
7786         the existing way to check
7787         (gtk_text_iter_is_first): new function, also more efficient
7788
7789         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
7790
7791         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
7792         gtk_text_iter_forward_char, etc.
7793
7794         (gtk_text_iter_forward_to_tag_toggle): Renamed from
7795         forward_find_tag_toggle, since this isn't a linear search
7796
7797         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
7798
7799         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
7800         New functions, search for a buffer substring.
7801
7802         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
7803         interactive and default editable (since we need to store that info
7804         until we receive the selection data).
7805
7806         Remove all the _at_char and at_line etc. versions of functions;
7807         only have iterator versions.
7808
7809         Add _interactive() versions of functions, that consider the
7810         editability of text. (FIXME add interactive flag to the 
7811         insert/delete signals per Darin's suggestion)
7812
7813         (gtk_text_buffer_get_tag_table): new function, demand-creates the
7814         tag table if necessary
7815
7816         Remove declaration of gtk_text_buffer_get_iter_from_string
7817
7818         (_gtk_text_buffer_get_btree): private/internal function, added.
7819         
7820
7821         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
7822         (gtk_text_line_is_last): new function
7823
7824 2000-07-25  Havoc Pennington  <hp@redhat.com>
7825
7826         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
7827         using GtkProgressBar. See Changes-2.0.txt for details.
7828
7829         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
7830         "pulse_step" which are the equivalent of
7831         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
7832         Implement new API.
7833         
7834         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
7835         (use_text_format) to mark whether text set on the progress bar is
7836         a format string. Deprecate entire GtkProgress interface.
7837
7838         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
7839         (gtk_progress_build_string): make this a no-op if use_text_format
7840         is FALSE
7841
7842         * docs/Changes-2.0.txt: Describe progress bar changes.
7843
7844 2000-07-25  Tor Lillqvist  <tml@iki.fi>
7845
7846         * Makefile.am: Include the build directory.
7847
7848         * configure.in: Generate build/Makefile, build/win32/Makefile,
7849         gdk/, gdk/win32/, and gtk/makefile.mingw.
7850
7851         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
7852         Add GETTEXT_PACKAGE.
7853         
7854         * gdk/gdk.def
7855         * gtk/gtk.def: Updates.
7856
7857         * gdk/gdkfont.h
7858         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
7859         need them any longer.
7860
7861         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
7862
7863         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
7864         PANGOWIN32_LIBS and gdk_pixbuf.
7865
7866         * gdk/win32: Compiles, but no doubt doesn't work at all.
7867
7868         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
7869
7870         * gdk/win32/gdkinput.c: New file, temporarily.
7871         
7872         * gdk/win32/gdkinput-win32.h: New file
7873
7874         * gdk/win32/gdkinputprivate.h: Remove.
7875
7876         * gdk/win32/gdkpango-win32.c: New file.
7877
7878         * gtk/makefile.mingw.in: New file
7879
7880         * gtk/makefile.cygwin: Removed
7881         
7882         * gtk/Makefile.am: Update accordingly.
7883
7884         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
7885         made externally visible.
7886
7887         * gtk/gtkmain.c: Use it.
7888         
7889         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
7890         is enough.
7891
7892         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
7893
7894 2000-07-24 Elliot Lee <sopwith@redhat.com>
7895         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
7896         individual backends already.
7897         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
7898         again. Yes, there really is a good reason for this, if you are using the gdkregion
7899         internals, and if you're not, why do you care?
7900         * gdk/gdkwindow.c: Fix inverted condition
7901         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
7902         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
7903         * gtk/gtkrange.c: Redraw trough when moving.
7904         * gtk/gtktypeutils.c: Fix warning by adding const cast.
7905         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
7906
7907 2000-07-23  Tor Lillqvist  <tml@iki.fi>
7908
7909         * configure.in: Check for mkstemp and sigsetjmp. Output
7910         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
7911
7912         More work on GDK for Win32. Still in an intermediate state.
7913
7914         * gdk/makefile.cygwin
7915         * gdk/win32/makefile.cygwin: Removed.
7916         
7917         * gdk/makefile.mingw.in
7918         * gdk/win32/makefile.mingw.in: New files.
7919
7920         * gdk/Makefile.am
7921         * gdk/win32/Makefile.am: Generate and distribute them.
7922
7923         * gdk/win32/gdkwindow-win32.h
7924         * gdk/win32/gdkdrawable-win32.h
7925         * gdk/win32/gdkpixmap-win32.h: New files.
7926
7927         * gdk/win32/gdkcolor-win32.c
7928         * gdk/win32/gdkcursor-win32.c
7929         * gdk/win32/gdkdrawable-win32.c
7930         * gdk/win32/gdkgc-win32.c
7931         * gdk/win32/gdkimage-win32.c
7932         * gdk/win32/gdkprivate-win32.h
7933         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
7934         Rename fields and variables called xcursor, xid, etc (these names
7935         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
7936
7937 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
7938
7939         * gtk/gtkentry.[ch]: Fix some problems with vertical
7940         alignment.
7941
7942         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
7943         char/byte confusion.
7944
7945 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
7946
7947         * gtk/gtktextview.c (changed_handler): Fix bug where
7948         redraw wasn't being done properly when height of
7949         dirty region changed.
7950
7951         * demos/Makefile.am: Remove various references to
7952         -lgmodule
7953
7954 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
7955
7956         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
7957         PangoAttrShape to reserve space for pixmaps, add 
7958         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
7959         in the display functions.
7960         
7961         * gtk/testgtk.c (create_layout): Set some more exotic
7962         scrolled window options
7963
7964         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
7965         Add function to set the shadow type of a window, to allow
7966         putting a shadow around widgets such as GtkLayout or GnomeCanvas
7967         which don't draw their own frame.
7968
7969 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
7970
7971         * docs/tutorial/package-db-tutorial.sh: New file for
7972           packaging DocBook format tutorial
7973
7974 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
7975
7976         * docs/tutorial/gtk-tut.sgml: Minor updates
7977
7978         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
7979
7980 2000-07-19  Tor Lillqvist  <tml@iki.fi>
7981
7982         * gtk/gtksignal.c: Fix C++ comment.
7983
7984         * gtk/gtkimmulticontext.c
7985         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
7986         don't return value from void functions.
7987
7988         * gtk/gtk.def: Add gtk_rc_style_unref.
7989
7990 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
7991
7992         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
7993         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
7994         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
7995         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
7996         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
7997         gtk/gtktypeutils.h: Include files outside of the extern "C"
7998         block. Makes some C++ compiler happy. Reported by Denis Vakatov
7999         <vakatov@peony.nlm.nih.gov>.
8000
8001 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
8002
8003         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
8004           Completes first pass. Hurrah!
8005
8006 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
8007
8008         * docs/tutorial/gtk-tut.sgml: More clean ups.
8009
8010 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
8011
8012         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
8013         paint the background of the text area which was accidentally
8014         removed at some point.
8015
8016         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
8017           
8018          - Move most of the functionality from the theme vtable
8019            into GtkRcStyleClass and GtkStyleClass. The moved
8020            vtable functions were changed a bit in the move to
8021            work better in their new home.
8022
8023          - Get rid of the engine and engine_data fields from
8024            GtkRcStyle and GtkStyle; instead the theme
8025            engine derives theme-specific subclasses of GtkRcStyle
8026            and GtkStyle
8027
8028          - Add extra dlsym() found entry point to themes,
8029            theme_create_rc_style().
8030
8031         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
8032         in gtk_style_real_copy.
8033
8034         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
8035         to register a type associated with an engine. (The engine
8036         won't be unloaded as there is an instance of the type.)
8037
8038
8039 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
8040
8041         * docs/tutorial/gtk-tut.sgml: Clean ups.
8042
8043 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
8044
8045         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
8046           of cleaning up to do.
8047
8048 2000-07-15  Tor Lillqvist  <tml@iki.fi>
8049
8050         * gdk/testgdk.c: New file, quick hack to test backends for
8051         pixel-by-pixel correctness of the most simple graphic operations.
8052
8053 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
8054
8055         * Really release 1.3.1
8056         
8057         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
8058         include structure.
8059
8060 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
8061
8062         * Released 1.3.1
8063
8064 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
8065
8066         * gtk/gtktextlayout.c: use FALSE for size_only most
8067         of the time when calling gtk_text_layout_get_line_display()
8068         to avoid causing double reshapes when a redraw follows
8069         immediately after.
8070
8071 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
8072
8073         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
8074         appropriate region and gdk_window_process_updates() so trough
8075         updating doesn't lag behind the window being scrolled.
8076
8077         * gdk/gdkgc.c: Make parent_class pointer static.
8078          
8079 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
8080
8081         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
8082         include <string.h>.
8083          
8084         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
8085         cut-and-paste error in computing memory offset for 4 channels.
8086
8087 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
8088
8089         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
8090         gtk_rc_append_default_pixmap_path(), since it wasn't
8091         adding an interesting path and we don't have a meaningful
8092         default for this value.
8093
8094 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
8095
8096         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
8097         gtk-config to gtk-config-2.0 move gtk_.m4 to
8098         gtk-2.0.m4
8099
8100         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
8101         gdk/Makefile.am demos/Makefile.am: Change 
8102         library names to libgtk-1.3.la, etc, so that we
8103         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
8104
8105         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
8106         gdk/Makefile.am gdk/x11/Makfile.am
8107         Move include files into /usr/include/gtk-2.0, 
8108         /usr/lib/gtk-2.0/include/
8109          
8110         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
8111         gtk/gtkintl.h: Change package for gettext from 
8112         gtk+ to gtk20. Put hack in autogen.sh to modify
8113         po/Makefile.in.in after gettextize to make this
8114         possible.
8115
8116         * gtk+.spec: Some updates, not tested.
8117
8118         * gdk-pixbuf/Makefile.am: Move loaders into
8119         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
8120
8121         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
8122         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
8123         to THEMENAME/gtk-2.0/. Move engine directory  to
8124         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
8125         
8126 2000-07-12  Tor Lillqvist  <tml@iki.fi>
8127
8128         Win32 changes, still doesn't build though.
8129
8130         * gdk/makefile.cygwin
8131         * gdk/win32/makefile.cygwin
8132         * gtk/makefile.cygwin: Updates.
8133
8134         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
8135         default values for fg and bg pixel as X11 does (0 and 1), not
8136         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
8137         Use 0 for pen width by default (treated as 1 anyway later, but for
8138         apps that might check the value in the GdkGC).
8139         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
8140         interface to gdk_gc_predraw and _postdraw.
8141
8142         * gdk/win32/gdkwin32.h
8143         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
8144
8145         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
8146         extraneous semicolon.
8147
8148         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
8149
8150         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
8151         not the Win32 bitspixel value.
8152
8153         * gdk/win32/gdkcc-win32.c:
8154         * gdk/win32/gdkcolor-win32.c 
8155         * gdk/win32/gdkprivate-win32.h
8156         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
8157         GDK object structure.
8158
8159 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
8160
8161         * docs/tutorial/gtk_tut_12.es.sgml (name): 
8162         * docs/tutorial/gtk_tut_it.sgml (name): 
8163         * docs/tutorial/gtk_tut_fr.sgml (name): 
8164         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
8165         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
8166
8167 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
8168
8169         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
8170           small changes.
8171
8172 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
8173
8174         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
8175         a bug here, never been here and never fixed anything ;(
8176         (don't segfault if tree->root_tree is NULL, which happens prior
8177         to widget realization, but puke instead).
8178
8179 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
8180
8181         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
8182         add the necessary tokens.
8183
8184         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
8185         (gtk_rc_style_to_style): copy thicknesses.
8186         (gtk_rc_init_style): apply thicknesses.
8187         (gtk_rc_parse_style): parse xthickness and ythickness.
8188
8189         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
8190
8191         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
8192         (gdk_window_new): 
8193         (_gdk_windowing_window_init): 
8194         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
8195         (gdk_pixmap_create_from_data): 
8196         (gdk_bitmap_create_from_data): 
8197         (gdk_pixmap_new): 
8198         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
8199         (gdk_image_new): 
8200         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
8201         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
8202         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
8203         (gdk_colormap_get_system): 
8204         (gdk_colormap_new): 
8205         * gdk/gdkwindow.c (gdk_window_init): 
8206         * gtk/gtkstyle.c (gtk_style_new):
8207         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
8208         * gdk/gdkpixmap.c (gdk_pixmap_init): 
8209         * gtk/gtkrc.c (gtk_rc_style_new):
8210         use g_object_new() instead of g_type_create_instance() which
8211         is a private function for fundamental type implementations.
8212
8213 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
8214
8215         * configure.in: Add check for db2html
8216
8217 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
8218
8219         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
8220         hack to set glib_debug_objects based on gtk_debug_flags.
8221
8222 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
8223
8224         * INSTALL.in: Update the Prerequisites section.
8225
8226         * Makefile.am demos/Makefile.am docs/Makefile.am
8227         docs/tutorial/Makefile.am gdk/x11/Makefile.am
8228         gdk/linux-fb/Makefile.am: Dist fixes
8229
8230 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
8231
8232         * NEWS: 10,000 foot view of 1.3.1 changes.
8233
8234 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
8235
8236         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
8237         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
8238         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
8239         gdk/x11/gdkmain-x11.c: 
8240
8241         Patch from George Lebl to add a GdkGrabStatus enumeration to use
8242         as a return value of gdk_*_grab(). Previously, we just
8243         returned the X11 values directly.
8244
8245 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
8246
8247         * gdk/x11/Makefile.am: Patch from George Lebl to 
8248         install all the headers in the right place.
8249
8250 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
8251
8252         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
8253           initial conversion to DocBook.
8254
8255 2000-07-04  Tor Lillqvist  <tml@iki.fi>
8256
8257         * README.win32: Improve a bit.
8258
8259         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
8260         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
8261         Alt+0nnn on the numpad (used to enter characters by numeric code
8262         from current DOS or ANSI codepage) working correctly, as in other
8263         Windows apps.
8264
8265         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
8266         same argument validity tests as in X11 version.
8267         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
8268
8269         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
8270         definitions in case missing from headers.
8271
8272         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
8273         destroy the window-specific cursor.
8274         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
8275         calling GetModuleHandle(NULL).
8276         (gdk_window_set_cursor): Reworked to always copy the passed cursor
8277         with CopyCursor before setting it as the window-specific
8278         cursor. It is OK for the caller to destroy the GdkCursor (and thus
8279         also its Windows cursor) after calling this function. Destroy any
8280         previous window-specific cursor.
8281
8282 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
8283
8284         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
8285         font charset is iso8859-1, not iso-8859-1.
8286
8287 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
8288
8289         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
8290         Use g_get_charset() instead of g_get_codeset().
8291
8292         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
8293         Comment out some strdup'ing functions to keep timj
8294         happy until we finish fighting this out.
8295
8296 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
8297
8298         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
8299         <= width or height.
8300
8301         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
8302         from 1.2 for parent/child states.
8303
8304         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
8305         of typos.
8306
8307         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
8308         event structures, replace with a generic axes field. Replace 
8309         deviceid/sourec with GdkDevice *device.
8310
8311         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
8312         to extract particular axis use value from event. (Also
8313         can be used for normal X/Y.)
8314
8315         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
8316         allow for arbitrary number of axes, namespace everything
8317         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
8318         everywhere.
8319
8320         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
8321         Get rid of the gdk_input_vtable setup if favor of simply
8322         defining the functions in gdkinput-none/gxi/xfree.c in
8323         a similar fashion to the way that the port structure is 
8324         done.
8325
8326         * gtk/gtkdnd.c: Fix fields of synthesized button press event
8327         for new event structures. 
8328
8329         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
8330         new device interfaces.
8331
8332 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
8333
8334         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
8335         set the initial text.
8336
8337         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
8338         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
8339         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
8340         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
8341
8342         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
8343         pango_layout_set_font_description to simplify.
8344
8345 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
8346
8347         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
8348         pango_layout_set_font_description to simplify.
8349
8350 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
8351
8352         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
8353         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
8354         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
8355
8356         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
8357         PANGO_PIXELS() macro.
8358
8359 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
8360
8361         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
8362         that returns a PangoContext owned by the widget and updated to
8363         match future changes in the widget. Also, make 
8364         gtk_widget_create_pango_layout() use this context. If we ever
8365         add a ::changed signal to PangoContext, this will make things
8366         much more convenient. 
8367
8368         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
8369         in the appropriate places instead of destroying the layouts and
8370         creating new ones.
8371
8372         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
8373         in a few strategic places.
8374
8375 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
8376
8377         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
8378         gtk_widget_size_request() on reparented child, if one. Otherwise,
8379         queue_resize() on the child never results in it getting size-requested
8380         at all.
8381
8382         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
8383         in option menus, so that (with luck) people won't copy it into
8384         their apps in the future.
8385
8386         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
8387         to gtk_option_menu_calc_size. This isn't perfect, but should fix
8388         a lot of problems with changing the size of the menu's menu
8389         items after adding it to the option menu.
8390
8391         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
8392
8393         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
8394         the text direction for a widget changes.
8395
8396         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
8397         ::direction_changed to get rid of various hacks.
8398
8399 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
8400
8401         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
8402         name.
8403
8404 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
8405
8406         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
8407         flag to the structure. Do not call XFreePixmap on pixmaps created
8408         by gdk_pixmap_foreign_new().
8409
8410 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
8411
8412         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
8413         value using GdkRGB functionality given GdkColormap and GdkColor.
8414         (name not final, waiting for inspiration.)
8415         
8416         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
8417         set the foreground/background of a GC using the GC's colormap
8418         and GdkRGB. (name not final, waiting for inspiration.)
8419
8420         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
8421         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
8422
8423         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
8424         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
8425         purely a function of the corresponding colormap. Make
8426         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
8427
8428         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
8429         gdk_pixbuf_*create_from_xpm_* in terms of
8430         gdk_pixbuf_new_from_xpm_data(), move into platform independent
8431         code.
8432
8433         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
8434         advantage of the new draw_rgb_32_image_dithalign.
8435
8436         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
8437
8438         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
8439         on each created GC.
8440
8441         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
8442
8443         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
8444         which we initialize from the drawable when the GC is created,
8445         if the drawable has a colormap.
8446
8447         * gdk/x11/gdkgc-x11.c: include string.h for memset.
8448
8449         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
8450
8451         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
8452
8453 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
8454
8455         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
8456         actually returning expose events, make sure to set
8457         the count field properly.
8458
8459         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
8460         accidentally reintroced bug which always cleared
8461         the graphics_exposures value. 
8462
8463 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
8464
8465         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
8466
8467 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
8468
8469         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
8470
8471 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
8472
8473         * docs/faq/gtk-faq.sgml: Start of Section 6.
8474
8475 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
8476
8477         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
8478         
8479         (Fixes problem with drawing childless frames. Pointed out
8480         by and a first patch from Anders)
8481         
8482         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
8483         compute a child_allocation, even if we don't have a child.
8484
8485         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
8486         Always chain to the parent's impl, even if we don't have a child.
8487
8488 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
8489
8490         * gdk/gdkrgb.c: If possible, create only a single shm segment and
8491         use multiple parts of it instead of creating a bunch of separate
8492         segments, since the maximum number of segments per system is not
8493         large. (This might be worth backporting to GTK+-1.2.x if we make a
8494         new release )
8495
8496         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
8497         structure in preparation for per-colormap GdkRGB.
8498
8499         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
8500         to False when we get EINVAL from shmget so that the caller of
8501         gdk_image_new can retry with a smaller segment size.
8502
8503 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
8504
8505         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
8506
8507 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
8508
8509         * configure.in: make the current version number 1.3.1 (binary age 0,
8510         interface age 0).
8511         
8512         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
8513         gtkcompat.h is all we want.
8514
8515         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
8516         GLib primitive types. fixed g_type_register_fundamental() argument
8517         ordering.
8518
8519         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
8520         compiles.
8521
8522         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
8523         object code cleanup, comment trigraph fixes, etc...
8524
8525 2000-06-23  Havoc Pennington  <hp@redhat.com>
8526
8527         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
8528         instead of making up a bogus name for first_para_mark
8529
8530         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
8531         0 as a context ID
8532
8533 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
8534
8535         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
8536
8537 2000-06-21  Havoc Pennington  <hp@pobox.com>
8538
8539         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
8540         we didn't check window->bg_pixmap != GDK_NO_BG.
8541
8542         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
8543         gdk-pixbuf
8544
8545 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
8546
8547         * docs/faq/gtk-faq.sgm: Move file to here.
8548           TODO: Update Makfile.am 
8549
8550 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
8551
8552         * docs/gtk-faq.sgm: Add Section 2
8553
8554 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
8555
8556         * docs/gtk-faq.sgm: New file. Start of DocBook
8557           version of the FAQ.
8558
8559 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
8560
8561         * configure.in (GDK_PIXBUF_MAJOR): Define version
8562         numbers for GDK_PIXBUF_*, as they get substituted
8563         into a header file. Need to consider versioning
8564         for gdk-pixbuf more carefully later.
8565
8566 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
8567
8568         Work with srcdir != builddir.   
8569         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
8570         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
8571         * demos/testpixbuf.c: Likewise.
8572         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
8573         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
8574         <gdk/x11/gdkx.h>.
8575         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
8576         "gdk-pixbuf.h".
8577         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
8578
8579 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
8580
8581         * TODO.xml: Change 1.4 version numbers to 2.0.
8582
8583 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
8584
8585         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
8586         fixups to GTK+ standard.
8587
8588 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
8589
8590         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
8591         gdk-pixbuf.
8592
8593         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
8594         fixups for GObject.
8595
8596         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
8597         gdk-pixbuf with GDK dependencies moved into GDK.
8598         
8599         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
8600         move gdk-pixbuf-loader here until GObject has signals.
8601
8602         * demos/: New directory of demos. Move demos from
8603         gdk-pixbuf here.
8604
8605         * demos/pixbuf-init.c: Small bit of code to check for
8606         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
8607         set GDK_PIXBUF_MODULEDIR appropriately.
8608
8609         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
8610         define which no longer makes sense.
8611
8612 2000-06-21  Havoc Pennington  <hp@redhat.com>
8613
8614         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
8615         gtk_get_default_language
8616
8617         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
8618         new function to get the default language
8619
8620         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
8621         s/gtk_text_view_style_values/gtk_text_style_values/
8622
8623         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
8624         Add a "language" field to tags.
8625
8626         (gtk_text_tag_set_arg): Fix bug in setting
8627         "bg_full_height_set" tag.
8628
8629 2000-06-21  Havoc Pennington  <hp@redhat.com>
8630
8631         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
8632         in the interfaces
8633
8634         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
8635         stuff instead when possible.
8636
8637         * gtk/gtktexttypes.h: Delete some unused constants
8638
8639         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
8640         testtextbuffer.c: use glib instead of custom unicode routines
8641
8642 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
8643
8644         * docs/es/: Removed mistakenly added generated sgml
8645
8646         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
8647         Remove outdated info files.
8648
8649         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
8650         Moved tutorial files into subdir
8651
8652         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
8653         subdir.
8654
8655         * docs/man/gtk_button.pod: Remove. (contents will be
8656         integrated into gtk-reference button page.)
8657
8658         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
8659         docs/faq/Makefile.am: Adjust for new organization
8660
8661 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
8662
8663         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
8664         not $(MKINSTALLDIRS)
8665
8666 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
8667
8668         * gtk/testgtk.c (create_text): Finish the job Elliot started
8669         of removing font setting test for text widget. (Since text widget
8670         and GdkFont are not deprecated, and cause portability problems.)
8671
8672 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
8673
8674         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
8675         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
8676         Remove use of libunicode in favor of new GLib functions.
8677
8678         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
8679         nano-x, framebuffer. The X11 include is just a hack until we get
8680         the necessary functions in gdkcolor.h, so there is no reason to
8681         add other includes of platforms.
8682
8683         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
8684         window bigger than the screen change.
8685
8686         * gtk/testgtk.c: Revert some random changes from Elliot
8687         that had no particular point and were causing testgtkrc
8688         not to function correctly.
8689         
8690         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
8691         because GdkSegment and GdkRegionBox have the same fields,
8692         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
8693         results in clearer code.
8694
8695         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
8696         gdk_input_translate_coordinates): Fix missed GdkObjectification
8697
8698 2000-06-18  Elliot Lee  <sopwith@redhat.com>
8699
8700         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
8701         * gtk/gtk{plug,socket}.h: Missed commits from previous.
8702
8703 2000-06-20  Havoc Pennington  <hp@redhat.com>
8704
8705         * modules/linux-fb/Makefile.am: Make this compile
8706         without framebuffer enabled
8707
8708         * gdk/linux-fb/Makefile.am: Add conditional to not build
8709         framebuffer unless specified in configure
8710
8711         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
8712         the size of the target instead of source if -1 was passed for
8713         width/height
8714
8715         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
8716         width/height confusion.
8717
8718 2000-06-19  Havoc Pennington  <hp@redhat.com>
8719
8720         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
8721         GDK_DRAWABLE_XID. In the future, we probably want to make it
8722         faster with G_DISABLE_CHECKS turned on.
8723
8724 2000-06-14  Havoc Pennington  <hp@redhat.com>
8725
8726         * gdk/Makefile.am: add gdkpixmap.c
8727
8728         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
8729         s/gdk_image_init/_gdk_windowing_image_init
8730
8731         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
8732         ref/unref
8733
8734         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
8735
8736         * gdk/gdkcompat.h: remove GdkWindowType compat, since
8737         GdkWindowType is now non-deprecated; 
8738         change gdk_window_get_type() compat to be
8739         gdk_window_get_window_type().
8740
8741         * gdk/gdkdnd.h: make GdkDragContext a GObject.
8742
8743         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
8744         virtual GObject. Make all functions call into the vtable.
8745         Move gdk_image_put() guts in here. Remove GdkDrawableType
8746         and gdk_drawable_get_type(), these are now GdkWindow-specific.
8747         draw_image, get_depth, get_size, set_colormap, get_colormap,
8748         get_visual added to the vtable.
8749         
8750         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
8751         GObject. Virtualize everything. 
8752         (gdk_gc_new_with_values): remove check for destroyed window,
8753         because now GdkWindow::create_gc will check this.
8754         (gdk_gc_set_values): New function to set GC values, this 
8755         was already implemented but wasn't in the header
8756
8757         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
8758
8759         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
8760         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
8761         remove _gdk_window_class; add _gdk_window_impl_get_type() and
8762         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
8763         _gdk_windowing_window_init, rename gdk_image_init to
8764         _gdk_windowing_image_init.
8765         
8766         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
8767         (gdk_draw_layout): Remove check for destroyed window, 
8768         because all the drawable methods already check it.
8769         
8770         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
8771         Add gdkpixmap.c which contains implementation of GdkDrawable
8772         virtual table (by chaining to a platform-specific implementation
8773         object).
8774         
8775         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
8776         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
8777         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
8778         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
8779         GdkColormapPrivate. 
8780
8781         * gdk/gdktypes.h: #include <glib-object.h>
8782
8783         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
8784         Move most functionality to platform-specific implementation
8785         object. GdkWindow itself now handles the backing store, then
8786         chains to the platform-specific implementation.
8787         (gdk_window_get_window_type): return GdkWindowType of the window.
8788         (gdk_window_peek_children): New routine, returns the children of 
8789         a GdkWindow
8790         (gdk_window_get_children): Was in X11-specific code and did 
8791         XQueryTree. Changed to simply return a copy of window->children; 
8792         so it can go in cross-platform code.
8793         
8794         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
8795
8796         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
8797         GdkColormap; just changed to use the new private data instead
8798         of casting to GdkColormapPrivate.
8799
8800         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
8801         gdk_cursor_new().
8802
8803         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
8804         (private data member in the GObject). 
8805         (xdnd_manager_source_filter): Function had broken 
8806         error handling, fix it (use gdk_error_trap_push).
8807
8808         * gdk/x11/gdkdrawable-x11.c: This file now implements
8809         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
8810         base class is purely for the convenience of the X port,
8811         and not part of the interface to cross-platform GDK.
8812
8813         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
8814         
8815         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
8816         specific to X, and returned by the create_gc virtual method
8817         of GdkDrawableImplX11. 
8818         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
8819         rather than gchar, this was also changed in the GdkGC vtable.
8820         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
8821         mask is 0, return immediately, instead of checking every flag.
8822         This is faster, and keeps us from segfaulting if values is NULL
8823         and the mask contains some nonzero flags.
8824
8825         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
8826         GdkWindow.
8827
8828         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
8829         GdkWindowPrivate is gone.
8830
8831         * gdk/x11/gdkim-x11.c: rename things that got renamed.
8832
8833         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
8834         remove the image_put stuff that got transferred to GdkDrawable.
8835         
8836         * gdk/x11/gdkinput.c: renamings
8837
8838         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
8839
8840         * gdk/x11/gdkpixmap-x11.c: GObject conversion
8841
8842         * gdk/x11/gdkprivate-x11.h: indentation fixes
8843
8844         * gdk/x11/gdkproperty-x11.c: renamings
8845
8846         * gdk/x11/gdkselection-x11.c: renamings
8847
8848         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
8849         implements the platform-specific "impl" object.
8850         Moved gdk_window_get_children to gdk/gdkwindow.c
8851
8852         * gdk/x11/gdkx.h: Remove all the private structs and private datas
8853         that no longer exist. Add declaration of GdkGCX11 object here.
8854         Fix all the macros to still work. 
8855
8856         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
8857         GdkDragContext from the boxed types since they are now GObjects.
8858
8859         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
8860         moved xthickness/ythickness into the instance. GtkStyleClass
8861         functions are now in the standard vtable for GtkStyle, so you have
8862         to create a GObject subclass to write a theme engine.
8863         (gtk_style_copy): fixed a leaked PangoFontDescription
8864         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
8865         can be the standard GObject function.
8866         
8867         * Throughout GTK:
8868         s/style->klass->[xy]thickness/style->[xy]thickness
8869         s/pango_layout_unref/g_object_unref/
8870
8871         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
8872         
8873         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
8874         accessing GDK internals.
8875
8876         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
8877         accessing GDK internals.
8878
8879 2000-06-18  Elliot Lee  <sopwith@redhat.com>
8880
8881         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
8882
8883         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
8884         problem by calculating event position relative to the trough
8885         rather than the slider.
8886         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
8887
8888         * gdk/gdkgc.h: Add GDK_NOR.
8889
8890         * configure.in, Makefile.am: Add modules top level dir
8891         * configure.in: Only use pangox library if building x11 target.
8892         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
8893
8894 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
8895
8896         * gtk/gtkcolorsel.c: Change private class member to be named
8897         private_data throughout the file.
8898
8899         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
8900         private_data to avoid clashing with keyword.
8901
8902 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
8903
8904         * gdk/gdkdnd.h: Add comment to remove warning.
8905
8906 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
8907
8908         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
8909         Byelorussian language; changed the Makefile and file names 
8910         to reflect that.
8911
8912 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
8913
8914         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
8915         rather than gdk_window_hide; this makes things work
8916         correctly if the window is programmatically hidden while
8917         iconified.
8918
8919 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
8920
8921         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
8922         cut and paste typo where wrong pixmap was being
8923         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
8924
8925 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
8926
8927         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
8928         Add helper function to compute format / bytes 
8929         relationship. Use in a couple places to fix up
8930         errors which assume 8 * format.
8931
8932         * gtk/gtkselection.c (gtk_selection_request): Use 32
8933         rather than 8 * sizeof (GdkAtom), to work correctly
8934         on Alpha.
8935
8936 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
8937
8938         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
8939         libgtk.la
8940         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
8941         versions
8942
8943         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
8944         checking macros return NULL since the function has a return value.
8945
8946 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
8947
8948         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
8949         GTK+ from building at all.
8950
8951         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
8952
8953 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
8954
8955         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
8956         gtk/Makefile.am: make it possible to configure gtk for different
8957         targets on the same platform. The library name is now 
8958         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
8959         flag. Only the x11 target compiles right now.
8960         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
8961         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
8962         * gdk/nanox/gdk*generic*: delete generic region code.
8963         * gdk/linux-fb/gdk*generic*: delete generic region code.
8964         * README.nanox: update information.
8965         
8966 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
8967
8968         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
8969         prepend not append. (Pointed out by Brett Hall.)
8970
8971 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
8972
8973         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
8974
8975 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
8976
8977         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
8978         need this later, and this makes sure that the atexit for
8979         glib gets called after that for GDK, so atexits are
8980         properly ordered for object leak checking.
8981
8982         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
8983
8984         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
8985         pango_x_shutdown_display()
8986
8987         * gtk/simple.c (main): Close window on destroy.
8988
8989 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
8990
8991         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
8992         to treat initial creation different from setting with 
8993         regards to the graphics-exposures parameter, so add a parameter
8994         indicating whether this is initial or not.
8995
8996 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
8997
8998         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
8999         to sort of work by adding an extra return_exposes arg
9000         to gdk_event_translate() - it might be better to simply
9001         deprecate the function altogether and force people to rewrite
9002         without it. gdk_window_scroll() handles most of it, and where
9003         gdk_window_scroll() doesn't work, simply redrawing more does.
9004
9005         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
9006         assertion.
9007
9008         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
9009
9010         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
9011         bunch of pretty much useless /* Print debugging info */ comments 
9012         which had drifted away from the code they were commenting.
9013
9014 2000-06-02  Havoc Pennington  <hp@pobox.com>
9015
9016         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
9017         is in working order.
9018         
9019         * gtk/testtext.c: Change to reflect anonymous mark API
9020
9021         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
9022
9023         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
9024         field, which was unused.
9025
9026         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
9027         saves some typing.
9028
9029         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
9030
9031         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
9032         flag on the insertion point and selection bound
9033
9034         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
9035         make mark-manipulation functions take a GtkTextMark* instead of a
9036         mark name.
9037         
9038         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
9039         GtkTextMarkBody; will be used to detect attempts to delete
9040         the permanent marks (insert and selection bound)
9041
9042         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
9043
9044 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
9045
9046         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
9047         flag to on.
9048
9049         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
9050         Honor DOUBLE_BUFFRED_FLAG
9051
9052         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
9053         function to set the DOUBLE_BUFFERED flag.
9054
9055         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
9056         or not exposes done on the widget should be double-buffered.
9057
9058         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
9059         to be what would be expected. (Fixes problem with a
9060         g_return_if_fail() validating a TextDirection enumeration)
9061
9062 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
9063
9064         * gtk/gtkwidget.c: Remove all references to 
9065         offscreen flag which was no longer used.
9066
9067         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
9068
9069         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
9070         for non-null label_widget->parent.
9071
9072         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
9073         which no longer was used.
9074
9075         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
9076
9077         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
9078         for null arguments.
9079
9080         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
9081         check for destroyed windows.
9082
9083 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
9084
9085         * gtk/gtkimmulticontext.c: Add a finalize method and unref
9086         the slave context there.
9087
9088         * gtk/gtkinvisible.[ch]: Make reference counting behavior
9089         identical to GtkWindow.
9090
9091 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
9092
9093         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
9094         pangox to here, so we can write them independent of rendering
9095         system, using GDK primitives.
9096
9097         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
9098         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
9099         since we have a rendering-system independent implementation in
9100         terms of draw_glyphs().
9101         
9102         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
9103         function to render a single line.
9104
9105         * gdk/x11/gdkpango.c: Move the guts of this file mostly
9106         into ../gdkpango.c, which simplifies things, since we
9107         don't have to deal with raw X gc's.
9108
9109 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
9110
9111         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
9112         get the logical attributes for a given GtkTextLine.
9113
9114 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
9115
9116         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
9117         g_locale_get_codeset() to g_get_codeset() change.
9118
9119 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
9120
9121         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
9122         descriptions.
9123
9124         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
9125         the entry.
9126
9127         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
9128         redoing (vastly simplifying) for Pango. Still needs quite
9129         a bit of work. (Size selection is currently poor. List of 
9130         predefined sizes is not a good idea, since all of these
9131         sizes won't necessarily be distinct.)
9132
9133 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
9134
9135         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
9136         CODESET results for LANG=C.
9137
9138 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
9139
9140         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
9141         which takes a stringized pango font description;
9142         ignore the older 'font' and 'fontset' declarations.
9143
9144         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
9145         field with a GdkFont derived via gdk_font_from_description(),
9146         for compatibility. (Should we just remove it entirely?
9147         Probably too much compatibility breakage, but people
9148         should be migrating to the new Pango stuff as quickly
9149         as possible.)
9150
9151 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
9152
9153         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
9154
9155 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
9156
9157         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
9158         redoing; there are some bugs in size allocation right
9159         now, the semi-existant distinction between header / day
9160         fonts was removed, but, with Pango, could actually
9161         be made functional in a nice way.
9162         
9163         * gtk/testcalender: Move calender from examples into this
9164         directory as a test program. (We really need to restrcture
9165         testgtk into a whole directory full of tests for every
9166         widget or functionality group, separated into multiple .c
9167         files.)
9168
9169 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
9170
9171         * gtk/testgtk.c (file_exists): Fix stupid typo that
9172         was keeping RC file from being loaded.
9173
9174         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
9175         RC file font code.
9176
9177 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
9178
9179         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
9180         Add function to load a GdkFont from a PangoFontDescription.
9181
9182 2000-05-29  Tor Lillqvist  <tml@iki.fi>
9183
9184         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
9185         variable should be of type GdkEventPrivate.
9186
9187 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
9188
9189         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
9190         to have any widget for the label, use a GtkLabel widget
9191         to display the text. (Based partially on a patch from
9192         Anders Carlson.)
9193
9194         (Quite a bit of code reorganization - strip 90% of the
9195         guts out of gtkaspectframe and add a single virtual
9196         func to GtkFrameClass - compute_child_allocation.)
9197
9198 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
9199
9200         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
9201         (Removed clist->row_center_offset field because caching
9202         it wasn't saving time or code, added private function
9203         _gtk_clist_create_cell_layout()).
9204
9205 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
9206
9207         * gtk/gtkaccellabel.c: Pangoized.
9208
9209         * gtk/[hv]ruler.c: Pangoized
9210
9211 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
9212
9213         * gtk/gtkfilesel.c (gtk_file_selection_init):
9214         Use gtk_clist_set_column_auto_resize() to remove need
9215         need for manual column width computations.
9216
9217 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
9218
9219         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
9220         ensuring Pango correctness, and considerably simplifying the
9221         code.
9222         
9223         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
9224
9225         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
9226         getting of numbers of lines.
9227
9228         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
9229         to the actual requested width of the lable, not to the wrap
9230         width we set.
9231
9232         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
9233
9234         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
9235           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
9236
9237         * gtk/gtktextview.c: Fix structure inheritance.
9238
9239         * gtk/gtkprogressbar.c: Pangoize.
9240
9241 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
9242
9243         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
9244         in a function.
9245
9246         * gtk/gtktextlayout.c (find_display_line_above): Fixed
9247         bug with computing line tops.
9248
9249         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
9250
9251 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9252
9253         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
9254         and y_offset coordinates to do what we need now. (The offset between
9255         buffer and layout coordinates has been reintroduced, but is a 
9256         bit different than before.)
9257
9258         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
9259         handle the adjustments ourselves, and scroll as necessary using
9260         the new gdk_window_scroll().
9261         
9262         The advantage of this is that when we are incrementally revalidating,
9263         we are essentially rearranging things around the visible portion
9264         of the screen. With the old setup, the visible portion of the
9265         screen was moved around in the layout, so scrolling and redrawing
9266         to track that caused jumping of the display. Since we now
9267         control the scrolling ourselves, we can suppress this and
9268         only redraw when things actually change.
9269
9270 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
9271
9272         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
9273         the region not just redisplay it after-all, since we store the
9274         cursors in the LineDisplay. (Ugly interactions here between
9275         GtkLayout and GtkTextBTree here.)
9276         
9277         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
9278
9279 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
9280
9281         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
9282         Added function to scroll contents of a window while keeping the
9283         window constant. Works by XCopyArea or guffaw-scrolling depending
9284         on the details of how the window is set up. (guffaw-scrolling
9285         still needs to be filled in.)
9286
9287 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
9288
9289         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
9290         move the debugging that was tied to a global variable
9291         to that.
9292
9293         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
9294
9295         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
9296         validated flag, in line data instead of setting height/width to
9297         -1. This allows us to perform operations with partially invalid
9298         buffer (using the old size for invalid lines) and thus to do
9299         incremental vaidation. Keep height/width aggregates up to date
9300         when deleting text and rebalancing the tree.
9301
9302         * gtk/gtktextbtree.[ch]: Add functions validate a line
9303         (gtk_text_btree_validate_line), and to validate up
9304         to a number of pixels (gtk_text_btree_validate).
9305
9306         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
9307         that indicates that something is changed and a revalidation
9308         pass is needed. Change ::need_repaint to ::changed, and
9309         make it take old and new yranges instead of a rectangle.
9310
9311         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
9312         the line_data_destroy() function from 
9313         gtk_text_btree_add_view() to a virtual function in 
9314         GtkTextLayout
9315
9316         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
9317         since we are handling partial repaints in a different fashion
9318         now.
9319
9320         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
9321         of the selection instead of queueing a repaint on the
9322         entire widget.
9323
9324         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
9325         get_selection_bounds() down to btree, make the function
9326         in buffer a wrapper around the btree function.
9327
9328         * gtk/gtktextlayout.[ch]: Add functions to check if the
9329         layout is valid and to recompute either a range of pixels
9330         aroudn a line or a certain total number of pixels.
9331
9332         * gtk/gtktextlayout.[ch]: Cache a single line display;
9333         now that we only redraw the needed portions, the hit rate
9334         for this cache is quite high.
9335         
9336         * gtk/gtktextview.[ch]: Keep track of the first paragraph
9337         on the screen so that when re-laying-out the buffer, we can
9338         keep the same place. This requires connecting to ::value_changed
9339         on the adjustments
9340
9341         * gtk/gtktextview.[ch]: Add idle functions to revalidate
9342         the buffer after we receive an ::invalidated signal.
9343         
9344 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
9345
9346         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
9347         to max of allocation and layout size, not just to the
9348         layout size.
9349
9350         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
9351         Invalidate window so it gets redrawn properly.
9352
9353         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
9354         to mean the entire window.
9355
9356         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
9357         into public header.
9358
9359 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
9360
9361         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
9362         to get the name of a mark.
9363
9364         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
9365         to find the paragraph from a y position.
9366
9367 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
9368
9369         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
9370         nodes have width/height >= 0, not > 0.
9371
9372 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
9373
9374         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
9375         Add a size_only flag, so when we only need the size, we don't create
9376         useless appearance attributes.
9377
9378         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
9379         duplicate setting of font description.
9380
9381         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
9382
9383 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
9384
9385         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
9386         EXTRA_DIST. It does not work well when the file that
9387         everything depends on is not in the tarball.
9388
9389 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
9390
9391         * gtk/testgtk.c: Some hacks and fixes so that it basically
9392         works when not sitting in the GTK+ build tree.
9393
9394 2000-05-03  Havoc Pennington  <hp@redhat.com>
9395
9396         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
9397         Properly determine the ordering of the tag root and the current
9398         line within the tree. Previous algorithm only worked if the tag
9399         root's immediate parent was the common root of both the current
9400         line and the tag root.
9401
9402 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
9403
9404         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
9405         alignment.
9406
9407         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
9408         the widget text directional dynamically.
9409
9410         * gtk/gtktextview.[ch]: Added functions to get and set default
9411         wrap mode.
9412
9413 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
9414
9415         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
9416         in cursor location computation.
9417
9418 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
9419
9420         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
9421         vadjusment values properly when layout gets smaller.
9422
9423         * gtk/gtktextview.c (need_repaint_handler): Areas being
9424         passed in are far completely inaccurate, and sometimes
9425         too small, so, for now, just queue a redraw on the
9426         whole visible region.
9427
9428 2000-04-25  Havoc Pennington  <hp@redhat.com>
9429
9430         * gtk/gtktextbtree.c (summary_destroy): new function to 
9431         destroy tag summary nodes
9432         (gtk_text_line_next_could_contain_tag): this function was 
9433         totally broken if the line passed in wasn't below the tag
9434         root. Fix it.
9435         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
9436         "wildcard" case, we have to do a linear scan. Blah.
9437         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
9438         we have to do the linear scan
9439         (tag_removed_cb): When a tag is removed from the tag table, 
9440         remove the GtkTextTagInfo node from the btree.
9441         (gtk_text_btree_spew): Implement the spew function, for 
9442         our debugging pleasure.
9443
9444 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
9445
9446         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
9447         a problem with referring to the wrong buffer.
9448
9449         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
9450
9451         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
9452         font description to gtk_style_new() - otherwise things
9453         don't work without a .gtkrc file.
9454
9455         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
9456         tags table if we create it ourself, too.
9457
9458         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
9459         it was conflicting with XKB modifiers.
9460
9461         * gtk/gtktextview.[ch]: Add simple support for 
9462         GtkIMContext.
9463
9464 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
9465
9466         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
9467         with deletion from last commit.
9468
9469 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
9470
9471         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
9472         in the context from the current locale.
9473         
9474         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
9475         context, not hardcoded value.
9476
9477         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
9478         not logical.
9479
9480 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
9481
9482         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
9483         attributes - that doesn't handle partial-glyph selection
9484         properly. Instead use new pango_layout_line_get_x_ranges()
9485         functionality to draw the selection.
9486
9487         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
9488         now properly handles out-of-range coordinates.
9489
9490         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
9491
9492         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
9493         public.
9494
9495         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
9496         for paragraphs opposite to the base direction of the widget.
9497
9498         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
9499
9500         * gtk/gtktextlayout.c: Don't split segments on marks, since that
9501         causes Arabic words to reshape as you cursor through.
9502
9503         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
9504         cursor position when moving vertically with the arrow keys and
9505         scrolling with page-up/page-down. (Arrow keys save only the X,
9506         scrolling saves both X and Y.)
9507
9508         This means you can line-up / line-down or page-up / page-down
9509         without losing your place, and also that moving vertically
9510         with the cursor keys keeps the same X position, not the same
9511         character count:
9512
9513         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
9514         arrow keys move by display lines, not paragraphs.
9515
9516 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
9517
9518         * gtk/gtklayout.c: Make sure that the bin window is at least
9519         as big as the allocation. (Should we also make sure that the
9520         bin window is big enough to completely cover widget->window?)
9521
9522         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
9523         function to get the onscreen rectangle.
9524
9525         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
9526         for offsets in window coordinates.
9527
9528 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
9529
9530         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
9531         confusion.
9532
9533         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
9534         from the widget direction.
9535
9536         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
9537         Add a "direction" attribute.
9538
9539         * gtk/gtktextview.c: global s/tkxt/text_view/.
9540
9541         * gtk/testtext.c: Added long block of text in Arabic, to test out
9542         the direction attributes. (Some problems with the shaping system
9543         for arabic become obvious - like the fact the cursor splits words
9544         into unjoined pieces.)
9545
9546 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
9547
9548         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
9549
9550         * gtk/gtktextlayout.c: Fix up alignment.
9551
9552         * gtk/testtext.c: Add some tests for centering, wrapping.
9553
9554 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
9555
9556         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
9557         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
9558         If we wrote GTK+-specific layout-render function this could just replace
9559         the draw_layout() operation in the vtable.
9560
9561         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
9562         pango_layout_get_cursor_pos() and use that function.
9563
9564         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
9565         is a non-static symbol.
9566
9567         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
9568         with gtk_text_btree_find_line_by_y()
9569
9570         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
9571         renderer that handles GtkTextAppearance attributes.
9572
9573         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
9574
9575           - Move the values in the style that don't affect geometry into a
9576             GtkTextAppearance structure.
9577           - Change underline to take a PangoUnderline and "font" a string
9578             representation of a font description
9579           - Add a "font_desc" attribute which takes a FontDescription structure.
9580
9581         * gtk/gtktextlayout.[ch]:
9582
9583           - Get rid of the display-line list per each line. Instead, we
9584             generate, on demand, a GtkTextLineDisplay structure which]
9585             contains a PangoLayout * and other necesary information
9586             (offsets, cursor locations) for displaying a paragraph.
9587           - Get rid of the code to wrap lines, create display chunks,
9588             etc. Instead, we just go through a paragraph and convert
9589             it into the necessary inputs to a PangoLayout.
9590           - Implement a new attribute type, GtkTextAttrAppearance. This
9591             holds a GtkTextAppearance, and is used to pass colors, 
9592             stipple, etc, through from the layout to the display without
9593             having to use lots and lots of individual attributes.
9594           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
9595             in terms of PangoLayout functions.
9596         
9597         * gtk/gtktextview.c: 
9598          
9599           - Handle passing the necessary PangoContext to the layout
9600           - Some fixups in painting to deal with the automatic backing store
9601             and offsetting of GTK+-1.4
9602           - Add a style_set handler so that the default style reacts
9603             properly to theme changes.
9604         
9605         * gtk/gtktext?*.[ch]: Random code-style fixes.
9606
9607         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
9608
9609 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
9610
9611         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
9612         in original form preparatory to Pango-ization and gdkimcontext-ization.
9613
9614 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
9615
9616         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
9617         so that we can derive from gtkimcontext in language bindings properly.
9618
9619 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
9620
9621         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
9622         Add a compose table including (almost) all the compose combinations
9623         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
9624         data in the XIM implementation.
9625
9626         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
9627         Moved functions to convert keyvalues from and to unicode here from
9628         the win32 port and made them public.
9629
9630 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
9631
9632         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
9633
9634 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
9635
9636         * gtk/gtkimcontext.[ch]: Base class for new input context system
9637
9638         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
9639         the real input context implementation to be loaded from modules
9640         and switched on the fly.
9641
9642         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
9643         context that just does direct keysymbol => unicode translation.
9644
9645         * gtk/gtkentry.[ch]: Start switching editing over to using
9646         GtkInputContext. (No handling of preedit yet.)
9647
9648 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
9649
9650         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
9651         many substitutions. (klass should not be subsituted.)
9652
9653 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
9654
9655         * configure.in: Add checks for Pango
9656
9657         * configure.in docs/Makefile.am: Add test for sgml2html
9658         and allow 'make dist' without building html, but print out
9659         warnings in that case. (For making snapshots)
9660
9661         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
9662         Add Pango libraries and C flags
9663
9664         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
9665         Add function (gdk_draw_layout) to draw a pango layout.
9666
9667         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
9668         for getting Pango contexts for GDK.
9669
9670         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
9671
9672         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
9673         editing.
9674
9675         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
9676         keysym => unicode translations. More languages can be added
9677         here, but real input-method support is needed.
9678
9679         * docs/Changes-1.4.txt: Added note about entry behavior.
9680         
9681         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
9682         to set the reading direction for a widget and the global direction.
9683         Add test which allows toggling the global direction. Two private
9684         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
9685
9686         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
9687           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
9688
9689         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
9690
9691         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
9692         underlining now handled by Pango.
9693
9694         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
9695         to RCStyle and Style. (Having both this and the old font name and GdkFont 
9696         is temporary.)
9697
9698         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
9699         convenience functions for creating contexts and layouts for widgets.
9700
9701         * gtk/testgtk.c: Enhance label tests with multilingual labels.
9702
9703 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
9704
9705         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
9706         titles to be active, even if they aren't visible.
9707         (gtk_clist_column_titles_passive):  Ditto.
9708
9709 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
9710
9711         * gtkmenu.c:
9712         * gtkmenu.h:
9713         * gtktypeutils.h: Spelling/grammar fixes in comments.
9714
9715 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
9716
9717         * gdk/nanox/*.h: add missing header files.
9718
9719 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
9720
9721         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
9722         send_event to TRUE.
9723         (gtk_drawing_area_size): queue a resize.
9724
9725 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
9726
9727         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
9728         the handlers, also invalidate them. bug nailed down by Karl Nelson
9729         <kenelson@ece.ucdavis.edu>.
9730
9731 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
9732
9733         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
9734         "(nil)" foundries, patch from Grigorios Magklis.
9735
9736         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
9737         on non-available fonts, based on a patch by Grigorios Magklis
9738         <maglis@cs.rochester.edu>.
9739
9740 2000-05-18  Elliot Lee  <sopwith@redhat.com>
9741
9742         * gdk/x11/gdkregion-generic.c: If a region does not have any
9743         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
9744         instead of GDK_OVERLAP_RECTANGLE_IN.
9745
9746 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
9747
9748         * gtk/gtklayout.c (gtk_layout_map): Remove references to
9749         OFFSCREEN, as it is no longer necessary.
9750
9751 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
9752
9753         * gtk/gtkcolorsel.c: Patch from David Santiago
9754         <mrcooger@cyberverse.com> to change things so that the 
9755         indicator of the active palette entry is done independently,
9756         not via the focus, since it should always be visible.
9757
9758 2000-05-17  Tor Lillqvist  <tml@iki.fi>
9759
9760         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
9761         refcount leaks as in the X11 backend.
9762
9763         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
9764         cosmetics.
9765
9766         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
9767         backend. Add _gdk_windowing_window_destroy().
9768
9769         * gtk/gtkcolorsel.c: Include correct backend-specific header.
9770         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
9771         either, but these probably do exist on nanox?)
9772         
9773         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
9774         which isn't necessarily defined by <math.h>.
9775
9776         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
9777         ancestry past GtkObject.
9778
9779         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
9780         from DLL on Win32.
9781
9782         * gtk/gtk.def: Update corresponding to recent changes.
9783
9784         * gtk/makefile.{cygwin,msc}: Updates.
9785
9786 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
9787
9788         * docs/Changes-1.4.txt: A bit of editing.
9789
9790         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
9791         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
9792         to clear the update area for the window, and clear it
9793         when hiding a window.
9794
9795         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
9796         if window destroyed.
9797
9798         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
9799
9800         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
9801         gdk_window_destroy() to the generic code, since there was a lot of 
9802         window-system-independent logic it in. Add a function:
9803         
9804          _gdk_window_destroy() 
9805
9806         to the internal API to destroy a window without unreferencing it.
9807         Add a function:
9808
9809          _gdk_windowing_window_destroy()
9810
9811         That does the windowing-system-dependent part of destroying 
9812         the window.
9813
9814 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
9815
9816         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
9817
9818 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
9819
9820         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
9821         Make gtk_widget_shape_combine_mask() keep a reference count on
9822         the pixmap since it keeps it around.
9823
9824 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
9825
9826         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
9827         leak.
9828
9829         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
9830         leak with event filters.
9831
9832 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
9833
9834         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
9835         signal handlers with the right data arguments. (Fixes
9836         some warnings when a widget was repeatedly set as a drag
9837         destination.)
9838
9839         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
9840         window so we can avoid avoid setting the DND properties on the
9841         toplevel window repeatedly.
9842
9843 2000-05-13  Tor Lillqvist  <tml@iki.fi>
9844
9845         * gdk/win32/gdkwin32.h: Define more message types missing from
9846         mingw headers.
9847
9848         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
9849         call gdk_window_destroy_notify(). It was never called. This
9850         probably meant that the GdkWindow was never freed. Thanks Owen for
9851         noticing (!).
9852
9853         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
9854         window as destroyed before calling DestroyWindow(). DestroyWindow()
9855         causes a call to the window procedure (gdk_WindowProc), which
9856         calls gdk_event_translate(), which calls
9857         gdk_window_destroy_notify(), which gets confused unless the window
9858         is set as destroyed.
9859
9860         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
9861         this function to indicate it's win32 only. Put inside #ifdef
9862         G_ENABLE_DEBUG.
9863
9864         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
9865         debugging function. (gdk_event_translate:) Add a default branch
9866         that uses the above function to print debug messages with all
9867         Windows messages symbolically.
9868
9869         * gdk/win32/gdkprivate-win32.h: Declare it, and
9870         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
9871
9872 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
9873
9874         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
9875         public header file.
9876
9877 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
9878
9879         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
9880
9881         * gtk/gtktext.c: made the adjustments no-construct args, simply
9882         provide default adjustments.
9883         (gtk_text_destroy): release adjustments.
9884
9885         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
9886         adjustment argument non-construct.
9887
9888         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
9889         instead of in finalize.
9890         (gtk_progress_get_text_from_value): 
9891         (gtk_progress_get_current_text): 
9892         (gtk_progress_set_value): 
9893         (gtk_progress_get_percentage_from_value): 
9894         (gtk_progress_get_current_percentage): 
9895         (gtk_progress_set_percentage): 
9896         (gtk_progress_configure): ensure an adjustment is present.
9897
9898 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
9899
9900         * gtk/gtkcolorsel.[hc]:
9901         * gtk/gtkcolorseldialog.[hc]:
9902         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
9903         their parent implementation, use bit fields for boolean values, don't
9904         create unused widgets, usage of glib types, braces go on their own
9905         lines, function argument alignment, #include directives etc. etc. etc..
9906
9907         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
9908
9909 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
9910
9911         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
9912
9913         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
9914         of NULL.
9915
9916         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
9917         to freed data.
9918         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
9919
9920         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
9921         to NULL when the toplevel is getting destroyed.
9922         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
9923         (gtk_menu_destroy): 
9924         (gtk_menu_init): store the information of whether we have to
9925         readd the initial child ref_count during destruction in a new
9926         GtkMenu field needs_destruction_ref_count.
9927
9928         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
9929         here, those reading: learn from my mistake! ;)
9930         in order for set_?adjustment to support a default adjustemnt if
9931         invoked with an adjustment pointer of NULL, the code read (pseudo):
9932         if (v->adjustment) unref (v->adjustment);
9933         if (!adjustment) adjustment = adjustment_new ();
9934         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
9935         now imagine the first unref to actually free the old adjustment and
9936         adjustment_new() creating a new adjustment from the very same memory
9937         portion. here, the latter comparision will unintendedly fail, and
9938         all hell breaks loose.
9939         (gtk_viewport_set_hadjustment):
9940         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
9941         after unreferencing it.
9942
9943         * gtk/gtkcontainer.[hc]: removed toplevel registration
9944         functions: gtk_container_register_toplevel(),
9945         gtk_container_unregister_toplevel() and
9946         gtk_container_get_toplevels() which had wrong semantics
9947         anyways: it didn't reference and copy the list.
9948
9949         * gtk/gtkwindow.c: we take over the container toplevel registration
9950         bussiness now. windows are registered across multiple destructions,
9951         untill they are finalized. the initial implicit reference count
9952         users are holding on windows is removed with the first destruction
9953         though.
9954         (gtk_window_init): ref & sink and set has_user_ref_count, got
9955         rid of gtk_container_register_toplevel() call. add window to
9956         toplevel_list.
9957         (gtk_window_destroy): unref the window if has_user_ref_count
9958         is still set, got rid of call to
9959         gtk_container_unregister_toplevel().
9960         (gtk_window_finalize): remove window from toplevel list.
9961         (gtk_window_list_toplevels): new function to return a newly
9962         created list with referenced toplevels.
9963         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
9964
9965         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
9966         adjustment a non-construct arg.
9967         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
9968         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
9969         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
9970
9971         * gtk/gtkrange.c: added some realized checks.
9972         (gtk_range_destroy): get rid of the h/v adjustments in the
9973         destroy handler instead of finalize. remove timer.
9974         (gtk_range_get_adjustment): demand create adjustment.
9975
9976         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
9977         we simply create them on demand now and get rid of them in
9978         the destroy handler.
9979         (gtk_viewport_destroy): get rid of the h/v adjustments in the
9980         destroy handler instead of finalize.
9981         (gtk_viewport_get_hadjustment): 
9982         (gtk_viewport_get_vadjustment): 
9983         (gtk_viewport_size_allocate): demand create h/v adjustment
9984         if required.
9985
9986         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
9987         gtk_widget_real_destroy () functionality.
9988         (gtk_widget_real_destroy): reinitialize with a new style, instead
9989         of setting widget->style to NULL.
9990
9991 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
9992
9993         * gtk/gtkcalendar.c:
9994         * gtk/gtkbutton.c: ported _get_type() implementation over to
9995         GType, either to preserve memchunks allocation facilities,
9996         or because Gtk+ 1.0 GtkTypeInfo was still being used.
9997
9998         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
9999         over. prepare for ::destroy to be emitted multiple times.
10000         removed reference tracer magic. chain into GObjectClass.shutdown()
10001         to emit ::destroy signal.
10002
10003         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
10004         fundamental.
10005
10006         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
10007         cludge.
10008
10009         * gtk/gtksocket.c:
10010         * gtk/gtkplug.c:
10011         * gtk/gtklayout.c:
10012         * gtk/gtklabel.c:
10013         * gtk/gtkargcollector.c:
10014         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
10015         not being a fundamental anymore, and to work with the new
10016         type system (nuked fundamental type varargs clutter).
10017
10018         * gtk/*.c: install finalize handlers in the GObjectClass
10019         part of the class structure.
10020         changed direct GTK_OBJECT()->klass accesses to
10021         GTK_*_GET_CLASS().
10022         changed direct object_class->type accesses to GTK_CLASS_TYPE().
10023
10024         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
10025         GType. made most of the GTK_*() type macros and Gtk* typedefs
10026         simple wrappers around macros and types provided by GType.
10027         most notably, a significant portion of the old API vanished:
10028         GTK_TYPE_MAKE(),
10029         GTK_TYPE_SEQNO(),
10030         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
10031         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
10032         GTK_TYPE_ARGS,
10033         GTK_TYPE_CALLBACK,
10034         GTK_TYPE_C_CALLBACK,
10035         GTK_TYPE_FOREIGN,
10036         GtkTypeQuery,
10037         gtk_type_query(),
10038         gtk_type_set_varargs_type(),
10039         gtk_type_get_varargs_type(),
10040         gtk_type_check_object_cast(),
10041         gtk_type_check_class_cast(),
10042         gtk_type_describe_tree(),
10043         gtk_type_describe_heritage(),
10044         gtk_type_free(),
10045         gtk_type_children_types(),
10046         gtk_type_set_chunk_alloc(),
10047         gtk_type_register_enum(),
10048         gtk_type_register_flags(),
10049         gtk_type_parent_class().
10050         replacements, where available are described in ../docs/Changes-1.4.txt.
10051         implemented compatibility functions for the remaining API.
10052
10053         * configure.in: depend on glib 1.3.1, use gobject module.
10054
10055 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
10056
10057         * TODO.xml: Various updates to current status.
10058
10059 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
10060
10061         * gtk.m4: Print out version when test succeeds.
10062
10063 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
10064
10065         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
10066         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
10067         
10068         (Original triangle color selector from Simon Budig
10069         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
10070         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
10071         Santiago <mrcooger@cyberverse.com>)
10072
10073         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
10074         out into a separate widget.
10075
10076         * gtk/testgtk.c: Add some checkbuttons for toggling palette
10077         and opacity controls.
10078
10079 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
10080
10081         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
10082         snuck in prematurely.
10083
10084 2000-05-07  Tor Lillqvist  <tml@iki.fi>
10085
10086         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
10087         had deleted a ! operator by mistake, which caused
10088         GDK_SELECTION_CLEAR events never to be generated, which caused
10089         only the first copy to the clipboard from an gtkeditable to
10090         actually cause a copy to the Windows clipboard.
10091
10092 2000-05-06  Tor Lillqvist  <tml@iki.fi>
10093
10094         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
10095         compilation, too. Current mingw gcc distributions include the
10096         necessary headers. Also the necessary IIDs are now in mingw
10097         headers/libraries, and own definitions unnecessary.
10098
10099         More hacking on OLE2 DND, still doesn't work though, and thus
10100         ifdeffed out.
10101
10102         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
10103         here, too.
10104
10105 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
10106
10107         * gdk/nanox/*: nano-X port work in progress.
10108         * gdk/simple.c: simple test for Gdk.
10109         * README.nanox: notes about the port: read this first!
10110         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
10111         with nano-X.
10112
10113 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
10114
10115         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
10116         gdk_window_clear() into common code, implement in terms of
10117         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
10118         not redirected to the backing rectangle.
10119
10120 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10121
10122         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10123         EXTRA_DIST. It does not work well when the file that
10124         everything depends on is not in the tarball.
10125
10126 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
10127
10128         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
10129         with recursion where process_updates() is called from
10130         an expose handler. (GtkTextView is highly broken in
10131         doing this, but it should work, so it is a nice test
10132         case.)
10133
10134 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10135
10136         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
10137         handle the case where updates are queued during processing of
10138         updates.
10139
10140 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
10141
10142         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
10143         window is on gdk_display - use that instead of segfaulting.
10144
10145 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
10146
10147         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
10148         broken and require an empty arg, give it to them.
10149
10150 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
10151
10152         * gtk/gtklabel.h: indentation fixes.
10153
10154 2000-05-02  Tor Lillqvist  <tml@iki.fi>
10155
10156         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
10157         draw too narrow or too low arcs, they seem to fail, at least with
10158         some display drivers.
10159
10160         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
10161
10162         Large changes to the Win32 backend, partially made necessary by
10163         the changes to the backend-independent internal
10164         structures. Attempts to implement similar backing store stuff as
10165         on X11. The current (CVS) version of the Win32 backend is *not* as
10166         stable as it was before the no-flicker branch was merged. A
10167         zipfile with that version is available from
10168         http://www.gimp.org/win32/. That should be use by "production"
10169         code until this CVS version is usable. (But note, the Win32
10170         backend has never been claimed to be "production quality".)
10171
10172         * README.win32: Add the above comment about versions.
10173
10174         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
10175
10176         * gdk/gdk.def: Update.
10177
10178         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
10179         presumably be replaced by some more better mechanism as 1.4 gets
10180         closer to release shape.
10181
10182         * gdk/makefile.{cygwin,msc}: Update.
10183
10184         * gdk/win32/*.c: Correct inclusions of the backend-specific and
10185         internal headers. Change code according to changes in these. Use
10186         gdk_drawable_*, not gdk_window_* where necessary.
10187
10188         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
10189         our old DND.
10190
10191         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
10192         to interpret single characters as UTF-8. Thanks to Hans Breuer.
10193         Use correct function name in warning messages.
10194
10195         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
10196         GSourceFuncs gdk_event_prepare and gdk_event_check.
10197         (gdk_event_get_graphics_expose): Do implement, use
10198         PeekMessage. Thanks to Hans Breuer.
10199         (event_mask_string): Debugging function to print an GdkEventMask.
10200         (gdk_pointer_grab): Use it.
10201
10202         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
10203         (old) book I used claimed was Hangul actually is CJK Unified
10204         Ideographs Extension A. Also, Hangul Syllables were missing.
10205         Improve logging.
10206
10207         * gdk/win32/gdkgc-win32.c: Largish changes.
10208
10209         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
10210         g_win32_getlocale() from GLib, and not setlocale() to get current
10211         locale name.
10212
10213         * gdk/win32/gdkprivate-win32.h
10214         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
10215         gdkwin32.h, similarily as in the X11 backend.
10216
10217         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
10218         assignment was used instead of equals in if test. Thanks to Hans
10219         Breuer.
10220
10221         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
10222         the X11 version.
10223
10224         * gdk/win32/makefile.{cygwin,msc}
10225         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
10226         path to the Win32 headers that works also with the mingw compiler.
10227
10228         * gtk/gtkstyle.c: Include <string.h>.
10229
10230 2000-04-26  Havoc Pennington  <hp@redhat.com>
10231
10232         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
10233         replacing the broken gtk_label_get ()
10234
10235 2000-04-15  Havoc Pennington  <hp@pobox.com>
10236
10237         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
10238         this keeps scanner scripts from getting confused.
10239
10240         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
10241         data, rather than void
10242
10243 2000-04-15  Tor Lillqvist  <tml@iki.fi>
10244
10245         * gtk/gtkclist.c (gtk_clist_motion)
10246         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
10247         with is_hint FALSE, get x and y from the event. They used to be
10248         used uninitialised. The Win32 backend never sends motion events
10249         marked as hints. This for instance fixes the annoying file and
10250         font selector behaviour in the Win32 version.
10251
10252 2000-04-14  Tor Lillqvist  <tml@iki.fi>
10253
10254         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
10255         gtk_private_n_signals variables, they are used by some software,
10256         sigh.
10257
10258         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
10259         installation directory from the Registry, where the installer
10260         should have put it.
10261
10262 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
10263
10264         * gdk/x11/Makefile.am: Fix problem with installation directory for
10265         gdkx.h
10266
10267         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
10268         <mrcooger@cyberverse.com> so that when selecting menus with the
10269         mouse, the first item will not be selected, but when selecting
10270         with an accelerator, or navigating left-right on a menubar with
10271         the menus popped up, the first item will be selected.
10272
10273 2000-04-05  Dan Damian  <dand@dnttm.ro>
10274
10275         * configure.in: Added "ro" to ALL_LINGUAS.
10276
10277 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
10278
10279         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
10280         indentation.
10281
10282         * Makefile.am (EXTRA_DIST): Fix typo.
10283
10284         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
10285         to catch gdkconfig.h
10286
10287         * gtk/gtkitemfactory.c: Added FIXME.
10288
10289 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
10290
10291         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
10292         s/return_if_fail/return_val_if_fail/g and add a return value.
10293
10294 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
10295
10296         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
10297         merge slipup.
10298
10299         * gdk/gdkinput.h: Fix missing line from merge.
10300
10301 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
10302
10303         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
10304         instead of gdkprivate.h.
10305
10306 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
10307
10308         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
10309         parent class to correctly be GtkDialogClass.
10310
10311 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
10312
10313         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
10314         toplevel windows and their immediate children by their parents,
10315         since the size of toplevel windows is out of our immediate
10316         control and we don't get any real benefit from trying to track
10317         this size for clipping.
10318
10319         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
10320         for input_only windows.
10321
10322         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
10323         to fix some hacks and make sure that we don't try to set the
10324         background of input only windows.
10325
10326 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
10327
10328         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
10329         the _really_ internal stuff, and leave gdkprivate.h for the fake private
10330         stuff that we've traditionally exposed.
10331
10332         * gdk/**.c: Use gdkinternals.h where appropriate.
10333
10334         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
10335         not include gdkprivate-x11.h, move all stuff of conceivable public
10336         interest into gdkx.h; keep all really private stuff in
10337         uninstalled header gdkprivate-x11.h.
10338
10339         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
10340         image->image_put on windows through a new function _gdk_window_draw_image()
10341         to allow us to do backing store for images. (Sort of ugly)
10342
10343         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
10344         contexts locally so that we can offset them properly when drawing 
10345         onto backing pixmaps.
10346
10347         * gdk/gdkinput.h: Reindented
10348
10349         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
10350         pixmap or color for the window, so we can properly initialize
10351         our double-buffer pixmaps, and also so that we temporarily set
10352         a background of None while scrolling.
10353
10354         * gdk/gdkregion.h: Revise region boolean operators to have an
10355         interface that is actually convenient - switch from creating new
10356         regions on every op, to "methods" that modify existing regions
10357         (A = A OP B). 3 argument forms which allow dest == src, would also
10358         be possible, but the current interfaces seem to map nicely
10359         onto what needs to be done. (There is quite a lot of region
10360         code in GDK now.)
10361
10362         * gdk/gdkregion.h: Add constructor from rectangle and a copy
10363         operator.
10364
10365         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
10366         gdkpoly-generic.h: Copy region code from Xlib, switch it over
10367         to 32 bit coordinates, modify it to be mostly GTK+ style
10368         and to have interfaces that match gdkregion.h.
10369
10370         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
10371         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
10372         create a backing pixmap and redirect all drawing to
10373         that backing pixmap until a matching gdk_window_end_paint().
10374
10375         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
10376         Create a special drawable class for GtkWindow's that 
10377         redirects the drawing to the backing pixmap as necessary
10378         and then calls the real operations in _gdk_windowing_window_class.
10379
10380         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
10381         Store invalid region for each window. Generate expose events for invalid
10382         region in an idle. This replaces both the expose compression
10383         and the redrawing queuing in GTK+. It is both more efficient and
10384         simpler than either one individually and far more so then the
10385         combination.
10386
10387         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
10388         Emulate 32 bit coordinates for windows with 16 bit coordinates
10389         by offsetting drawing, guffaw scrolling techniques and
10390         mapping/unmapping child windows as necessary.
10391
10392         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
10393         where, when invalid regions are processed, the region is stored,
10394         and if expose events come in that are detectably duplicate
10395         the processed exposes (by comparison of event serial numbers),
10396         the stored region is subtracted out of those exposes.
10397
10398         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
10399         regions newly exposed when scrolling or resizing windows.
10400         This, combined with forcing processesing of queued invalidated
10401         regions, gives nice flicker-free scrolling.
10402
10403         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
10404         invalidated regions after every scroll.
10405
10406         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
10407         emulation in GDK. Its, for all practical purposes just a
10408         GtkViewport/GtkFixed hybrid now.
10409
10410         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
10411         (16-bit) structures as necessary instead of just casting.
10412
10413         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
10414         in terms of the structures from gdkregion-generic.c, using appropriate
10415         offsets from GDK to X11 coordinates. Cache clip mask and
10416         origin and ts origin locally and only flush to the server
10417         when drawing, to avoid constantly setting and resetting these
10418         values when offsetting GC's for scrolling and backing pixmaps.
10419
10420         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
10421
10422         * gtk/gtkcontainer.c: Call process_all_updates at end
10423         of resizing to reduce flicker. (Avoids having redraw
10424         lag arbitrarily behind resize under some circumstances)
10425
10426         * gtk/gtkentry.c: Remove old backing store code, and simply take
10427         advantage of the new backing store capabilities of GDK.
10428
10429         * gtk/gtkmain.c: Simple implementation of widget backing
10430         store - simply push a paint while handling each expose.
10431         (Should really be configurable widget for widget.)
10432         
10433         * gtk/gtkwidget.c: Remove all the old complicated redraw
10434         code, and simply invalidate the GDK windows from
10435         gdk_window_queue_clear(), etc. (Sigh, so much carefully
10436         debugged complexity ... gone to the winds.)
10437
10438         Remove all the code for suppressing expose events while
10439         resizes are pending; this isn't needed since the invalid
10440         areas won't be processed until after the resizes are
10441         processed, since they are in a lower priority idle.
10442
10443 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
10444
10445         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
10446         and height of dest rectangle for non-intersecting rectangles.
10447
10448 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
10449
10450         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
10451         for GdkRectangle.
10452
10453 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
10454
10455         * gdk/gdk{events,image,private,types,window}.h
10456          gdk/x11/gdkinputprivate.h: Change all coordinates
10457          from int16 to int. Also, Change width and height from
10458          unsigned to signed to avoid all the stupid C 
10459          signedness bugs.
10460
10461 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
10462
10463         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
10464         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
10465         Add some more detailed checking.
10466
10467         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
10468         New function to retrieve the depth of a drawable.
10469
10470         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
10471         field, reorder fields to save memory. 
10472
10473 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
10474
10475         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
10476         of the background image instead of scaling the background down to
10477         a line.
10478
10479         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
10480         which temporarily set slider to wrong size.
10481
10482         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
10483         queue_clear().
10484
10485 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
10486
10487 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
10488
10489         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
10490
10491 2000-03-17  Tor Lillqvist  <tml@iki.fi>
10492
10493         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
10494         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
10495
10496         * gdk/win32/gdkfont-win32.c
10497         * gdk/win32/gdkproperty-win32.c
10498         * gdk/win32/gdkselection-win32.c
10499         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
10500         now declared such.
10501
10502 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
10503
10504         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
10505
10506 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
10507
10508         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
10509         is called without trapping X errors.
10510
10511 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
10512
10513         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
10514         way into the fontset lists.
10515
10516 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
10517
10518         * gtk/gtkthemes.h: add extern "C" scope.
10519
10520 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
10521
10522         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
10523         to make appends to the list constant. (gtk-guy-990901-0.patch)
10524
10525 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
10526
10527         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
10528         for the typename hash table.
10529
10530 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
10531
10532         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
10533         to make sure we never divide by zero. 
10534         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
10535
10536 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
10537
10538         * gtk/gtkfontsel.c: Apply patch from
10539         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
10540         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
10541
10542         Also, some cleanups in atom handling.
10543
10544 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
10545
10546         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
10547         not GtkWidget.
10548
10549 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
10550
10551         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
10552         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
10553         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
10554         more guint wrap-around bugs before going to bed.
10555
10556 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
10557
10558         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
10559         guint wrap arounds in allocation.width.
10560
10561         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
10562         process untill we fit the allocation given.
10563
10564 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
10565
10566         * gtk/gtkwidget.c:
10567         (gtk_widget_unrealize): guard widget access with ref/unref
10568         around signal emission.
10569         (gtk_widget_hide): same here, but also check its destroyed
10570         state before queueing a resize.
10571
10572 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
10573
10574         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
10575         of gtk_default_insensitive_bg as insensitive base color.
10576
10577         * gtk/gtktext.c (gtk_text_style_set): set the background color according
10578         to the widget's state.
10579         (gtk_text_realize): same here.
10580         (gtk_text_state_changed): same here.
10581         (draw_bg_rect): compare background color against base[] from
10582         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
10583
10584 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
10585
10586         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
10587         grabs are active, unless a delete event is send to the toplevel
10588         of the currently grab holding widget.
10589
10590 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
10591
10592         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
10593         debugging g_print's.
10594
10595 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
10596
10597         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
10598         ever make the scrolled-window requisition ever depend on the 
10599         visibility state of the scrollbars for the AUTOMATIC policy. 
10600         This breaks the GTK+ requisition model, and causes loops.
10601
10602 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
10603
10604         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
10605         the default font to avoid problems with XFree86-4.0 where the
10606         default charset is iso10646-1, not iso8859-1.
10607
10608 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
10609
10610         * acinclude.m4
10611         * config.guess
10612         * config.sub
10613         * ltconfig
10614         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
10615
10616         * gtk/Makefile.am: minor cosmetic consistency tweak
10617
10618 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
10619
10620         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
10621         the activate_time to 0, so that we handle a quick
10622         press/release press/release properly and don't suppress
10623         the second release. (Red Hat bug #7545)
10624
10625 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
10626
10627         * gtk/gtkctree.c (row_delete):
10628         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
10629         bugs with destruction notifier, *always* update internal
10630         structures *before* calling user code.
10631
10632 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
10633
10634         A few more fixes for bug #5487, #2051, #2677.
10635         * gtk/gtkclist.c : 
10636         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
10637         not GDK_BUTTON_PRESS.
10638         (resync_selection): resync only if selection_mode is
10639         GTK_SELECTION_EXTENDED
10640         * gtk/gtkctree.c (resync_selection): same here
10641
10642 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
10643
10644         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
10645         gdk_drag_get_selection() and gtk_menu_detach().
10646
10647         [ From Jeroen Ruigrok/Asmodai ]
10648
10649 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
10650
10651         * gtk/gtknotebook.c (gtk_notebook_size_request): 
10652         page->tab_label can be NULL.
10653
10654 2000-01-25  Havoc Pennington  <hp@pobox.com>
10655         
10656         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
10657         arg is boolean
10658
10659         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
10660
10661         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
10662
10663         * gdk/gdkproperty.c (gdk_property_get): return boolean
10664
10665         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
10666
10667         * gdk/gdkim.c (gdk_im_ready): return boolean
10668
10669         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
10670
10671         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
10672         glib clash, should fix glib)
10673
10674         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
10675         (gdk_get_show_events): return gboolean, and canonicalize 
10676         to TRUE/FALSE
10677
10678         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
10679         colormap is private
10680         (gdk_colors_alloc): gboolean whether to be contiguous
10681         (gdk_color_equal): return gboolean since we are a predicate
10682         and not a qsort() (this looks semi-wrong due to glib breakage,
10683         IMO glib should be fixed)
10684         
10685         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
10686         (gdk_get_use_xshm): return gboolean
10687         (gdk_pointer_is_grabbed): return gboolean
10688
10689         * gdk/gdk.h: Change prototypes to match all the above changes,
10690         and re-run egtk-format-protos as required.
10691
10692 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
10693
10694         * gtk/gtkctree.c (resync_selection): 
10695         * gtk/gtkclist.c (resync_selection):
10696
10697         Return immediately if clist->drag_pos < 0. This is a workaround
10698         for the corrupt state that the clist gets into when a
10699         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
10700
10701         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
10702         
10703         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
10704         variable from recent commit.
10705
10706 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
10707
10708         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
10709
10710 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
10711
10712         * gtk/Makefile.am: prefix all autogenerated source that get build in
10713         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
10714         in builddir. since we subsequently cd into srcdir for autogeneration,
10715         the paths have to be stripped from the target file names, thusly we
10716         use $(@F) as target names now.
10717         put a comment about configure.in's --disable-rebuilds option,
10718         which can be used for non-writable source directories, for development
10719         setups though, srcdir has to be *writable*.
10720
10721 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
10722
10723         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
10724           Finish the job of allowing event to be NULL.
10725           (Fixes bug #4283, reported by Chris Blizzard)
10726
10727         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
10728           things so that the cursor appears on screen, properly
10729           take into account INNER_BORDER.
10730           (Fixes bug #4754, reported by Antonio Campos)
10731
10732 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
10733
10734         * gtk/gtknotebook.c (gtk_notebook_map): Don't
10735           show the tab_label unless it itself is visible.
10736
10737           gtk/gtknotebook.c (gtk_notebook_size_request):
10738           Do a better job of making sure that the visibility
10739           of the tab label corresponds to whether it should
10740           be mapped or not.
10741
10742 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
10743
10744         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
10745           Use the requisition, not the allocation, since the
10746           allocation has not necessarily been computed yet.
10747           (Pointed out by Eugene Osintsev)
10748
10749 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
10750
10751         * gtk/gtkstyle.c (gtk_style_new): Dont' set
10752           style/base[GTK_STATE_INSENSITIVE] both to
10753           gtk_default_insensitive_bg!
10754           (Bug #2187, reported by Jonathan Blandford)
10755
10756         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
10757           Add Alt_L, Alt_R to list of invalid accelerators.
10758           (Bug #3736, reported by Vlad Harchev)
10759
10760 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
10761
10762         * gtk/gtkfilesel.c (open_ref_dir): Fix several
10763         bugs which occured after an attempt to open 
10764         invalid home directory left cmpl_state->reference_dir == NULL.
10765
10766          - completion on files in home directory didn't work
10767          - completion on an empty string caused  segfault
10768
10769          (Bug #3678, reported by Steve Ratcliffe)
10770
10771         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
10772         cut and paste error that was causing scales to
10773         be incorrectly positioned.
10774         (Bug #2956,
10775          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
10776
10777 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
10778
10779         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
10780         when checking for dcgettext, if we've found we needed
10781         it for dgettext.
10782 +
10783 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
10784
10785         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
10786         queue_clear on NO_WINDOW widgets during a reparent,
10787         since at that point the window and widget heirarchies
10788         are out of sync. This stops crashing in some cases
10789         (the scrolled window reparent test, for instance), and
10790         _probably_ won't cause drawing errors.
10791
10792         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
10793         test do what it was supposed to do and be robust against
10794         window closings, etc. (Bug #2443)
10795
10796 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
10797
10798         * gtk/gtkentry.c: Fix return values on mouse events.
10799         (Bug #2686, Sky <seb_sky@yahoo.com>)
10800
10801         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
10802         (pointed out by George Lebl)
10803
10804         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
10805         (From Ettore Perazzoli  <ettore@helixcode.com>)
10806  
10807 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
10808
10809         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
10810         clicks between rows or outside calender area correctly.
10811         (Patch from Damon Chaplin)
10812
10813         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
10814         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
10815           Call destroy function when overwriting existing data. 
10816           (Pointed out by Damon Chaplin)
10817
10818 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
10819
10820         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
10821           which was causing problems on various systems with Xmu.
10822           This hasn't been needed for a very long time.
10823           (Fixes #1185 3167)
10824
10825 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
10826
10827         * gdk/gdki18n.h: Include <ctype.h> when defining
10828           gdk_isw* in terms of is* as a fallback.
10829           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
10830
10831 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
10832
10833         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
10834           realize the widget when it is size allocated!
10835           (old, old bug)
10836
10837         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
10838           Removed unused call to gdk_window_get_size() that
10839           showed up when the above was fixed.
10840
10841 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
10842
10843         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
10844           fix up widget->window when the widget is a
10845           NO_WINDOW container widget.
10846
10847 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
10848
10849         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
10850           to account for the fact that feof() does _not_ 
10851           return TRUE on errors, and thus avoid infinite loops
10852           when trying to use gdk_pixmap_create_from_xpm()
10853           on unreadable values.
10854
10855 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
10856
10857         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
10858
10859 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
10860
10861         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
10862           gdk_gc_set_dashes to take gint8 instead of gchar to
10863           make it clearer that it is _not_ a NULL terminated string.
10864
10865         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
10866           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
10867           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
10868           arguments.
10869
10870 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
10871
10872         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
10873         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
10874         background size relative to our allocation, guard against small
10875         allocations, we may have not yet been size allocated.
10876
10877 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
10878
10879         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
10880         not just version == 3. We implement all 3 + most of 4 - 
10881         (we don't support matching text/plain;charset=iso-8859-1
10882         to a dest that expects text/plain). We'll still advertise
10883         3 to be safe, but any client implementing version >= 3
10884         must interoperate with 3.
10885         
10886 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10887
10888         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
10889         background and gc members, add a warning in gtk_tooltips_set_color()
10890         indicating that this function is deprecated.
10891
10892 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
10893
10894         * docs/gtkfaq.sgml: FAQ Update:
10895           - Minor cleanups (Emmanuel, me)
10896           - New questions:
10897                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
10898                 How can I retrieve the text from a GtkMenuItem? (timj)
10899                 How do I validate/limit/filter the input to a GtkEntry? (me)
10900                 Memory does not seem to be released when I free the list
10901                         nodes I've allocated (timj)
10902
10903 2000-03-07  Tor Lillqvist  <tml@iki.fi>
10904
10905         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
10906         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
10907         for which it is no use to call GetLastError onWin9x.
10908         (gdk_other_api_failed) New function, for general error
10909         reporting without calling GetLastError.
10910         (gdk_win32_api_failed) OTOH, this function always calls
10911         GetLastError. (gdk_win32_last_error_string) Remove this function,
10912         GLib has the equivalent now.
10913
10914         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
10915         call them with function name, file name and line number in the
10916         arguments.
10917
10918         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
10919         functions.
10920         
10921         * gtk/gtk.def: Add some missing entry points.
10922
10923         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
10924         gtk_paned_set_gutter_size, which don't exist any longer, as void.
10925         
10926         Fixes by Hans Breuer:
10927
10928         * gdk/makefile.msc: Update for debugging.
10929
10930         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
10931         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
10932         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
10933         in the dash_list.
10934
10935         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
10936         the x11 backend.
10937
10938         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
10939
10940         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
10941
10942 2000-03-04  Tor Lillqvist  <tml@iki.fi>
10943
10944         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
10945         just pixel value of background colour.
10946
10947         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
10948         containing code snippet previously duplicated in a couple of
10949         places.
10950         
10951         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
10952         gdk_colormap_color.
10953
10954         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
10955         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
10956         events for autorepeated Shift, Control and Alt keys. Use
10957         gdk_colormap_color.
10958
10959         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
10960         pointer is inside the window the cursor of which we are setting,
10961         call SetCursor immediately.
10962
10963         * gdk/win32/makefile.cygwin
10964         * gtk/makefile.cygwin: If we don't have the build number stamp
10965         file, use zero.
10966
10967         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
10968         gtk_paned_set_gutter_size as empty.
10969
10970         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
10971         
10972 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
10973
10974         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
10975           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
10976           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
10977           docs/gtk_tut.sgml docs/gtk.texi TODO:
10978
10979           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
10980
10981 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
10982
10983         * gtk/gtkcalendar.c: Implement num_marked_dates,
10984           and don't emit mutiple day_selected signals on
10985           month_prev.
10986
10987 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
10988
10989         * docs/make-todo (lineno): let title and logo be configurable so
10990         that GNOME can use this script too.
10991
10992         * TODO.xml: added logourl and a title
10993
10994 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
10995
10996         * TODO.xml: Added some UI items, and an explanatory
10997         comment at the top of the file.
10998
10999 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
11000
11001         * TODO.xml: some updates, added abunch of new entries.
11002         a note for those fiddeling with this file, when done
11003         with it, invoke:
11004         $ ./docs/make-todo TODO.xml >/dev/null
11005         and correct output errors before comitting changes.
11006
11007 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
11008
11009         * TODO.xml: Added XML-structured TODO file.
11010         * docs/make-todo: python script to turn TODO.xml into
11011           pretty XML output. 
11012
11013 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
11014
11015         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
11016         the function to let it draw the seven dots, instead of the old,
11017         much maligned, method.
11018         (draw_dot): New function to draw a dot.
11019
11020         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
11021         to draw the handle inside the border width as opposed to outside.
11022         Use paint function instead of gdk_draw_point.
11023
11024         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
11025         to draw the handle inside the border width as opposed to outside.
11026         Use paint function instead of gdk_draw_point.
11027
11028         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
11029         Change indenting to be more GTK like.
11030
11031 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
11032
11033         * docs/gtk_tut.sgml: New section on GtkCalendar
11034         * examples/calendar: Update example code
11035
11036 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
11037
11038         * docs/gtkfaq.sgml: FAQ Update
11039
11040 2000-02-19  Anders Carlsson  <andersca@gnu.org>
11041
11042         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
11043         to prevent the scroll event to be propagated upwards.
11044
11045 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
11046
11047         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
11048         OwnerGrabButtonMask from button entries for
11049         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
11050
11051         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
11052         to the event mask (which will result in button/press release
11053         being added to the event mask on Unix) so scrolling works
11054         for layouts in scroll windows.
11055
11056         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
11057
11058         Patch from Anders Carlsson  <andersca@gnu.org> to add
11059         a scroll event.
11060
11061         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
11062         scrolling to the "Test Scrolling" part of testgtk.
11063  
11064         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
11065  
11066         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
11067         it against GDK_SCROLL.
11068  
11069         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
11070         way of mouse wheel scrolling.
11071  
11072         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
11073  
11074         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
11075  
11076         * gtk/gtkmain.c: Removed previous mouse wheel hack.
11077  
11078         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
11079         gdk_event_mask_table.
11080  
11081         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
11082         GdkEventScroll handler.
11083  
11084         * gdk/gdkevents.h: Added GdkEventScroll structure.
11085  
11086 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
11087
11088         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
11089         and Anders Carlsson to change the Paned widgets so that they
11090         can be dragged from anywhere along the length. Also change
11091         the way that this is drawn to make this apparent.
11092
11093         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
11094         from George Lebl to check that option_menu->menu is present
11095         before getting history.
11096
11097 2000-02-14  Tor Lillqvist  <tml@iki.fi>
11098
11099         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
11100         before the assertion for non-NULL segment list.
11101
11102         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
11103         Seems that pattern brushes *must* be 8x8 pixels! At least on my
11104         machine, but it might be display driver dependent. Sigh, so make
11105         sure the stipple is that size. Does Windows suck or what?
11106
11107         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
11108         places.
11109
11110 2000-02-13  Havoc Pennington  <hp@pobox.com>
11111
11112         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
11113         refcount to 1
11114         (gdk_cursor_new): init refcount to 1
11115
11116         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
11117
11118 2000-02-13  Tor Lillqvist  <tml@iki.fi>
11119
11120         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
11121         so that we don't have to do unnecessary settings to the HDC.
11122
11123         * gdk/win32/gdkdrawable-win32.c
11124         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
11125         gdk_gc_predraw.
11126
11127         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
11128         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
11129         GDI paths, call WidenPath to get the outline of the stroken path,
11130         and then fill the outline (with the brush that was built from the
11131         stipple).
11132
11133         * gdk/win32/gdkgc-win32.c: Factor out common code from
11134         _gdk_win32_gc_new and gdk_win32_gc_set_values into
11135         gdk_win32_gc_values_to_win32values. Use correct colour for
11136         SetBkColor() (Until now the code actually used a random colour in
11137         the call to SetBkColor()... but that didn't show up as not many
11138         GDI APIs use the background colour. Pattern (opaque stippled)
11139         brushes do.)
11140
11141         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
11142         gdk_win32_api_failed): New functions for error logging.
11143
11144         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
11145         WIN32_API_FAILED to call them, passing function or file name and
11146         line number.
11147
11148         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
11149
11150         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
11151         GdkColor for foreground and background in GdkGCWin32Data.
11152
11153         * gdk/makefile.cygwin: Link in the resource object separately.
11154
11155         * gdk/win32/rc/gdk.rc
11156         * gtk/gtk.rc (New file)
11157         * gdk/win32/makefile.cygwin
11158         * gtk/makefile.cygwin: Update build number in DLLs automatically,
11159         as in GLib.
11160
11161 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
11162
11163         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
11164         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
11165         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
11166         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
11167         parameters given and cursor->ref_count. coding style fixups.
11168
11169         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
11170         not GtkWidget.
11171         
11172         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
11173         fix up widget macros and add _GET_CLASS() variant.
11174         
11175         * gtk/*.c: some GtkType fixups.
11176
11177 2000-02-09  Tor Lillqvist  <tml@iki.fi>
11178
11179         * gdk/win32/gdkproperty-win32.c
11180         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
11181         were reversed.
11182
11183 2000-02-04  Tor Lillqvist  <tml@iki.fi>
11184
11185         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
11186         g_filename_to_utf8 to convert the font names Windows gives us from
11187         whatever is the default codepage to UTF-8.
11188         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
11189         in the other direction.
11190
11191         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
11192         error in debugging output.
11193
11194 2000-02-02  Tor Lillqvist  <tml@iki.fi>
11195
11196         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
11197         and height parameters to gdk_window_clear_area(). Not minus one.
11198
11199 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
11200
11201         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
11202         checks if the widget passed to gtk_drag_get_data() was not the
11203         dest widget.
11204
11205 2000-02-01  Tor Lillqvist  <tml@iki.fi>
11206
11207         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
11208         g_filename_from_utf8 functions (which were added a moment ago to
11209         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
11210         size buffers.
11211
11212         gtk_file_selection_get_filename returns the filename in the C
11213         runtime encoding. It calls g_filename_from_utf8, but copies the
11214         returned string to a static buffer, which is returned. I think
11215         this is better than returning the result from g_filename_from_utf8
11216         directly, which would mean all apps that use it would have to free
11217         the return value. Or should this function care about this issue at
11218         all? Maybe a new function with clearly defined semantics.
11219
11220         * gtk/gtkfilesel.h: Add comment about
11221         gtk_file_selection_get_filename returning the filename in the C
11222         runtime's encoding.
11223
11224         * README.win32
11225         * gdk/gdk.def
11226         * gdk/makefile.{cygwin,msc}
11227         * gtk/gtk.def: Updates.
11228
11229         * gdk/gdkcursor-win32.c: Initialise refcount.
11230
11231 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
11232
11233         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
11234
11235 2000-01-30  Havoc Pennington  <hp@pobox.com>
11236
11237         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
11238         destroy
11239
11240         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
11241
11242         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
11243         implemented in platform-specific code
11244
11245         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
11246
11247         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
11248         underscore in front
11249
11250         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
11251         put an underscore in front
11252
11253         * gdk/gdkcursor.c: new file, implements
11254         gdk_cursor_ref/gdk_cursor_unref
11255
11256         * gdk/gdkcursor.h: Refcount GdkCursor
11257
11258         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
11259
11260 2000-01-29  Tor Lillqvist  <tml@iki.fi>
11261
11262         * gdk/gdkwindow.h
11263         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
11264
11265 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
11266
11267         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
11268         structures to properly inherit from GtkWidget not GtkBin.
11269
11270 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
11271
11272         * gtk+.spec.in: Added lib/gtk+/include/* to %files
11273         (bug #5178 - Peter Wainright)
11274         
11275         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
11276         so that it will be installed.
11277         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
11278
11279 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
11280
11281         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
11282         for the GtkStyleClass vtable const.
11283
11284         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
11285         take a const string argument like GtkTranslateFunc. This will
11286         require changes in use code.
11287
11288 2000-01-19  Tor Lillqvist  <tml@iki.fi>
11289
11290         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
11291         semantics (to mimic the X11 backend, which just calls XClearArea)
11292         is to check for zero width (and height), and in that case use the
11293         window's width minus x (height minus y). This fixes for instance
11294         some redraw problems with gtkclist, which were easily noticeable
11295         in the gtk file selection widget.
11296
11297         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
11298         windows.
11299
11300 2000-01-13  Tor Lillqvist  <tml@iki.fi>
11301
11302         * configure.in
11303         * gdk/Makefile.am
11304         * gdk/x11/Makefile.am
11305         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
11306         (bug #5177).
11307         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
11308         out later.
11309
11310 2000-01-09  Tor Lillqvist  <tml@iki.fi>
11311
11312         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
11313         WM_MOVE for iconified or invisible windows. This fixes various
11314         problems when minimising windows. Thanks to Bernd Herd.
11315
11316 2000-01-05  Tor Lillqvist  <tml@iki.fi>
11317
11318         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
11319         backend's draw_lines method, not draw_points.
11320
11321 2000-01-02  Tor Lillqvist  <tml@iki.fi>
11322
11323         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
11324         before Owen's reorganisation: Don't have queued_events and
11325         queued_tail statics in this file, but use gdk_queued_events and
11326         gdk_queued_tail. This makes exposure event compression work again.
11327
11328         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
11329         seem to be needed?
11330
11331 1999-12-30  Tor Lillqvist  <tml@iki.fi>
11332
11333         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
11334         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
11335         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
11336         doesn't do anything.
11337
11338         * gdk/gdk.def: Add gdk_xid_table_insert.
11339
11340         * gdk/win32/gdkprivate-win32.h
11341         * gdk/win32/gdkevents-win32.c
11342         * gdk/win32/gdkinput-win32.c
11343         
11344         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
11345         extension_events field in the GdkWindowWin32Data struct. Use only
11346         the extension_events field in GdkWindowPrivate. Previously one was
11347         set, and the other one tested, which broke tablet
11348         functionality. Thanks to Keishi Suenaga for pointing this out.
11349
11350 1999-12-18  Tor Lillqvist  <tml@iki.fi>
11351
11352         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
11353         When handling a single character (text length == 1), don't handle
11354         it as if it was UTF-8.
11355
11356 1999-12-11  Tor Lillqvist  <tml@iki.fi>
11357
11358         * Makefile.am: Distribute README.win32.
11359         
11360         * gdk/Makefile.am
11361         * gdk/win32/Makefile.am: Distribute Win32 files.
11362
11363         * gdk/makefile.msc: New file.
11364
11365         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
11366         after label).
11367
11368         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
11369         gdk_error_code as GDKVAR, as they are referred outside GDK.
11370
11371         * gdk/win32/makefile.msc: Update.
11372
11373         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
11374         tweaks. Check only if at least one of those Unicode subrange bits
11375         we care for is set. If no code page bits are set, guess (wildly)
11376         based on the charset.
11377
11378         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
11379
11380         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
11381         non-NULL.
11382
11383         * gtk/gtkdnd.c
11384         * gtk/gtklayout.c
11385         * gtk/gtkplug.c
11386         * gtk/gtkselection.c
11387         * gtk/gtksocket.c
11388         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
11389         appropriate. There must be a cleaner way to handle this?
11390
11391         * gtk/gtkrc.c: Must include windows.h on Win32.
11392
11393         * gtk/testgtk.c: No need to include gdkx.h.
11394
11395         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
11396
11397 1999-12-07  Tor Lillqvist  <tml@iki.fi>
11398
11399         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
11400         the rbearing is set to the same as the width, but this should be
11401         fixed.
11402
11403 1999-12-06  Tor Lillqvist  <tml@iki.fi>
11404
11405         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
11406         function. If Windows doesn't tell us what Unicode subranges a font
11407         covers, guesstimate based on the codepages it covers. This will
11408         hopefully help those Windows versions or fonts that don't give us
11409         any useful Unicode subrange information with GetTextCharsetInfo.
11410         Call this function in gdk_font_load_internal.
11411
11412         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
11413         minor changes.
11414
11415 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
11416
11417         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
11418         New function, long needed.
11419
11420 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
11421
11422         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
11423         only_if_exists argument of gdk_atom_intern to
11424         bool.
11425
11426 1999-11-25  Tor Lillqvist  <tml@iki.fi>
11427
11428         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
11429         Fix two copy&paste errors.
11430
11431         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
11432         win32 has changed.
11433
11434         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
11435         GdkWin32SingleFont struct.
11436
11437         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
11438         subranges of loaded fonts. Clear font signature first, in case
11439         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
11440         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
11441
11442         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
11443         Unoffset clip region.
11444
11445 1999-11-23  Tor Lillqvist  <tml@iki.fi>
11446
11447         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
11448         event->any.window before calling filter functions.
11449
11450 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
11451
11452         * gtk/gtkgamma.h: Adapt cast macros to standard.
11453
11454 [ Merges from 1.2 ]
11455
11456 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
11457
11458         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
11459         If translation does not include a '/', use entire
11460         translation instead of crashing.
11461
11462 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
11463
11464         * docs/gtk_tut.sgml:
11465         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
11466
11467 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
11468
11469         * gtk/gtkselection.c (gtk_target_list_remove): Use
11470         g_list_remove_link, not g_list_remove.
11471
11472         [ From Geert Bevin <gbevin@thunderstorms.org> ]
11473         
11474 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
11475
11476         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
11477         statement upon unselection (how the heck did that slip in?).
11478
11479 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
11480
11481         * gtk/gtktext.c (gtk_text_freeze): 
11482         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
11483         in frozen state (and aparently crashes). patch provided by Anders
11484         Melchiorsen <and@kampsax.dtu.dk>.
11485
11486 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
11487
11488         * fix insensitive default/focus widget activation,
11489         reported by Matt Goodall <mgg@isotek.co.uk>.
11490
11491         * gtk/gtkwindow.c (gtk_window_key_press_event): 
11492         (gtk_window_activate_default):
11493         (gtk_window_activate_focus):
11494         return handled=FALSE for actiavtion of insensitive default
11495         widgets. return handled=TRUE for activation of insensitive
11496         focus widgets. don't activate in either case.
11497
11498 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
11499
11500         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
11501         and $glib_cflags to match library order and in the
11502         theory that an old version of GLib is more likely to
11503         be in the include directory for X then vice-versa.
11504         (Bug #2776)
11505
11506 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
11507
11508         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
11509         to determine the locale for fontsets, not LC_MESSAGES;
11510         the user may want English messages with a handling
11511         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
11512         will still be broken) (Bug #2891)
11513
11514 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
11515
11516         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
11517
11518 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
11519
11520         * gtk/gtkrc.ko: Changed the Korean default fontset.
11521
11522 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
11523
11524         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
11525         where when scrolling to the left or top double exposes
11526         were done, causing major slowdowns.
11527
11528 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
11529
11530         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
11531         names to lowercase and alphanumeric, before looking
11532         them up.
11533
11534         * gtk/Makefile.am: Install codeset variant gtkrc files
11535         with normalized names.
11536
11537 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
11538
11539         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
11540         popup menus when the menu is already visible, but its parent
11541         is still hidden, (happens after tornoff window got hidden).
11542
11543 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
11544
11545         * gtk/Makefile.am (install-data-local): Fix
11546         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
11547         deleted, causing error messages on install.
11548
11549 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
11550
11551         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
11552         the handle as well, since we now sometimes ignore
11553         exposes on the handle while resizing.
11554
11555 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
11556
11557         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
11558         extra g_free introduced in one of the last one or two 
11559         commits.
11560
11561 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
11562
11563         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
11564         consistent, put each style that a gtkrc.* file creates
11565         in a unique namespace, remove old files before installing.
11566
11567 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
11568
11569         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
11570         gtk_rc_init is called multiple times. (Yes, people who
11571         do that have bugs in their code.)
11572
11573 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
11574
11575         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
11576         Remove it since it's generated by the Makefile anyway
11577
11578 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
11579
11580         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
11581         device->info.axes for core pointer.
11582
11583 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
11584
11585         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
11586         idle_id, to deal with obsolete, broken C libraries.
11587
11588 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
11589
11590         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
11591         allocation->x/y twice!
11592
11593         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
11594         consistent with gtk_vscale_pos_trough().
11595
11596 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
11597
11598         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
11599         be queueing a resize on a toplevel container between
11600         the time we show it and when we map it. So, we need
11601         to test GTK_WIDGET_VISIBLE() for toplevels, and only
11602         use GTK_WIDGET_DRAWABLE() for child windows.
11603
11604 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
11605
11606         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
11607         (fixes bug #2144)
11608
11609 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
11610
11611         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
11612         container DRAWABLE (instead of VISIBLE), so we don't queue
11613         resizes on non-toplevel containers.
11614
11615 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
11616
11617         * gtk/gtkselection.[ch]: Make the data argument
11618         const guchar *.
11619
11620 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
11621
11622         * gtk/gtkwindow.c: Try to behave sensibly if 
11623         the focus widget is the window itself. (Should
11624         we allow this at all?)
11625
11626 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
11627
11628         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
11629         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
11630         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
11631         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
11632         in prototypes and implementations consistent (Tomas Ogren).
11633
11634         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
11635         before the widget is unparented (reported by damon).
11636
11637         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
11638         since we provide unsigned data anyways.
11639
11640 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
11641
11642         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
11643         the call to gtk_tooltips_layout_text() until later.
11644
11645         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
11646         Call gtk_widget_ensure_style() before using the style.
11647
11648 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
11649
11650         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
11651         for old widgets that don't propagate draws to all
11652         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
11653
11654 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
11655
11656         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
11657         for a redraw but just the widget that requested the resize.
11658
11659 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
11660
11661         * gtk/gtkcontainer.c: added new widget level method
11662         gtk_container_set_reallocate_redraws() and a GtkContainer flag
11663         reallocate_redraws : 1 to reflect the setting, exported this through
11664         the argument system as a boolean ::reallocate_redraws.
11665
11666         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
11667         on the widget because the allocation changes, do so as well for
11668         widget->parent if the parent has reallocate_redraws set to TRUE.
11669         with that containers requesting reallocation redraws get automatically
11670         redrawn if their children changed allocation (this unfortunately
11671         affects also other children that didn't change allocation, but we
11672         cannot work around that before 1.3).
11673
11674 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
11675
11676         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
11677         _and_ height are >0 (not _or_).
11678
11679         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
11680         instead of gtk_container_queue_resize(), which is a core gtk internal
11681         function (must have been on crack when i queued that).
11682
11683         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
11684         we can check more reliably if we want to discard expose events.
11685         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
11686         flag.
11687         
11688         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
11689         we simply trust these events. for deciding whether to discard exposes,
11690         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
11691         
11692 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
11693
11694         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
11695         queues of areas that are completely off screen.
11696
11697         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
11698         logic for handleboxes.
11699
11700         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
11701         check on width/height.
11702
11703 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
11704
11705         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
11706         we are fine with using $@ the way we do (if we actually encounter
11707         brokeness with $@ in VPATH builds because of additional path prefixes,
11708         we need to use $(@F) actually).
11709
11710 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
11711
11712         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
11713         short lived bugs, that would allow language bindings to do surgeries
11714         to our guts.
11715
11716 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
11717
11718         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
11719         where comparison was being done against an uninitialized
11720         value causing intermittant results depending on
11721         compiler flags. Also make it clearer that we aren't
11722         ever initializing the child as 0x0 (though this will
11723         be caught in gtk_widget_size_allocate())
11724
11725 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
11726
11727         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
11728         gtk_window_unset_transient_for() call after we do checks
11729         involving the old transient parent.
11730         [ From Lance Capser <lmc@cyberhighway.net> ]
11731
11732 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
11733
11734         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
11735         an empty file.
11736
11737 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
11738
11739         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
11740         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
11741
11742 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
11743
11744         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
11745         `$@' is valid only in the build dir, not after we've done 
11746         `cd $srcdir'.  Also use `test -f' instead of less portable
11747         `test -e'.
11748
11749 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
11750
11751         * gtk/gtktext.c (correct_cache_insert): Rewrite
11752          for simplicity, and hopefully correctness.
11753          (Fixes bug #1322, which was a segfault when
11754           on some insertions with the properties around
11755           the insertion set up just wrong.)
11756
11757         * gtk/gtktext.c (gtk_text_adjustment): When we receive
11758          a "changed" signal, clamp the new value to the adjustment
11759          bounds to avoid segfaulting if someone tries to change
11760          the adjustment to a bogus value. (Bug #1795)
11761
11762 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
11763
11764         * gtk/gtkmain.c: Ignore unexpected destroy notifies
11765         for children, for toplevel windows handle them
11766         like delete_event.
11767
11768         * gtk/gtkplug.c: Add an unrealize handler so that
11769         we unref plug->socket_window when we are done
11770         with it.
11771
11772 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
11773
11774         * gtk/gtktext.c (clear_area): Fix stupid signedness
11775          problem that was causing background to sometimes
11776          be misaligned.
11777
11778 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
11779
11780         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
11781         
11782         * gtk/gtkmenu.c (gtk_menu_position): Make
11783          sure we never position menus with negative x, y,
11784          since gtk_widget_set_uposition() can't handle that.
11785
11786         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
11787          Modify the positioning code a bit so that we always
11788          put the top-left corner onscreen. (This is for
11789          UI reasons, gtk_menu_position() now takes care of
11790          gtk_widet_set_uposition() brokeness.)
11791
11792 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
11793
11794         * gtk/Makefile.am: fixed up things for -jx, x > 1.
11795
11796 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
11797
11798         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
11799           RC style that is passed in. The lack of the ref
11800           before was a bug. If people worked around this
11801           bug, this will introduce a slight memory leak
11802           in their code. The code should typically look like:
11803
11804             rc_style = gtk_rc_style_new ();
11805             [...]
11806             gtk_widget_modify_style (widget, rc_style);
11807             gtk_rc_style_unref (rc_style);
11808
11809         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
11810           the style if it was already set.
11811
11812         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
11813           style if it was set before.
11814
11815 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
11816
11817         * gtk/testgtk.c (main): Add a check to see if we
11818           are being run from the correct directory and
11819           to quit nicely if we are not.
11820
11821         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
11822           static.
11823
11824 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
11825
11826         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
11827
11828         * gtk/gtkwindow.c:
11829         queue resizes unconditionally (gtk_widget_queue_resize will figure
11830         what to do if the window is not realized).
11831         (gtk_window_move_resize): only recenter the window
11832         for GTK_WIN_POS_CENTER_ALWAYS.
11833         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
11834         the same way as GTK_WIN_POS_CENTER.
11835
11836 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
11837
11838         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
11839         with (!(info->last_flags & GDK_HINT_POS)) instead of
11840         (!info->last_flags & GDK_HINT_POS).
11841
11842         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
11843         new_height unconditionally, because we use these values even if
11844         !default_size_changed && !hints_changed.
11845         comented the (default_size_changed || hints_changed) case with
11846         respect to resize rejects from the window manager.
11847
11848         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
11849         in the zvt condition hack, since this includes the window hints, set
11850         the hints after the handling_resize case.
11851
11852         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
11853         window is initially shown with to the geometry.
11854
11855 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
11856
11857         * gtk/gtkwindow.c (gtk_window_move_resize):
11858         s/size_changed/default_size_changed/g so i know what's
11859         really going on (frying brain on smaller flame now).
11860
11861 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
11862
11863         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
11864         we have size_changed upon handling_resize. this is a gross
11865         workaround for the broken zvt widget and should be removed in
11866         1.3 again (search for FIXME).
11867         Owen provided an accurate comment for this:
11868
11869         /* We could be here for two reasons
11870          *  1) We coincidentally got a resize while handling
11871          *     another resize.
11872          *  2) Our computation of size_changed was completely
11873          *     screwed up, probably because one of our children
11874          *     is broken. It's probably a zvt widget.
11875          *
11876          * For 1), we could just go ahead and ask for the
11877          * new size right now, but doing that for 2)
11878          * might well be fighting the user (and can even
11879          * trigger a loop). Since we really don't want to
11880          * do that, we requeue a resize in hopes that
11881          * by the time it gets handled, the child has seen
11882          * the light and is willing to go along with the
11883          * new size. (this happens for the zvt widget, since
11884          * the size_allocate() above will have stored the
11885          * requisition corresponding to the new size in the
11886          * zvt widget)
11887          *
11888          * This doesn't buy us anything for 1), but it shouldn't
11889          * hurt us too badly, since it is what would have
11890          * happened if we had gotten the configure event before
11891          * the new size had been set.
11892          */
11893
11894 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
11895
11896         * gtk/gtkrc.c: deal properly with the fact that RC
11897           style lists may include rc styles more than once.
11898
11899         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
11900           unused static function.
11901
11902         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
11903           stack of directories of RC files currently being
11904           parsed and implicitely add them to pixmap path.
11905           
11906           This fixes a bug where the directory would get
11907           appended then overwritten by pixmap_path declarations.
11908
11909           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
11910
11911         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
11912           theme's exit function. (Patch from Peter Wainwright,
11913           bug #1454)
11914
11915         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
11916           Add a destroy() handler to take care of removing
11917           group for menu item. (Fixes bug #1197)
11918
11919         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
11920           in warning message.
11921
11922 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
11923
11924         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
11925         roundtrip to figure window's width and height, since we know that
11926         anyways from widget->allocation.
11927
11928 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
11929
11930         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
11931           the hints after we request the new size.
11932
11933 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
11934
11935         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
11936           GTK_WIDGET_REALIZED() assertion - we can compute the
11937           hints before we are realized.
11938
11939         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
11940           hint changing so that we have a value of hints_changed
11941           when we decide whether to constrain the window size.
11942
11943         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
11944
11945         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
11946         change back to G_MAXINT.
11947
11948 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
11949
11950         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
11951         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
11952         contain uncluttered values.
11953         (gtk_window_compute_hints): simply assert that window is realized
11954         and that geometry_info is valid, since we rely on this anyways.
11955         (gtk_window_constrain_size): major cleanups to the code.
11956         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
11957         for the base size, instead of the minimums. use 32767 as max width
11958         and height (like in gtkwindow.c) instead of G_MAXINT.
11959
11960 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
11961
11962         * cleaned up the GtkContainer.need_resize flag handling mess, we
11963         only need to force resize requests when we were prematurely
11964         realized, or our widget tree was modified when we were temporarily
11965         hidden. handling these cases directly upon showing the window (i.e.
11966         while the GdkWindow is still unmapped) avoids the need to wait for
11967         a configure event response and therefore makes the GUI more snappier
11968         and avoids blank windows during the roundtrip.
11969
11970         * gtk/gtkwidget.c:
11971         (gtk_widget_hide): 
11972         (gtk_widget_show): don't queue resizes on toplevels, they know how
11973         to deal with matters.
11974
11975         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
11976         flag directly for not visible resize containers and spare us unecessary
11977         signal emissions.
11978
11979         * gtk/gtkwindow.c:
11980         (gtk_window_realize): if we need to enforce premature size allocation,
11981         queue a container resize so we are correctly resized later on.
11982         (gtk_window_init):
11983         (gtk_window_size_request):
11984         don't freak around with the ->need_resize flag,
11985         gtk_container_queue_resize() will care about that.
11986         (gtk_window_show):
11987         handle initial resizing issues here, we can handle matters better in
11988         this place, especially since we know that our GdkWindow is still
11989         unmapped.
11990         (gtk_window_move_resize):
11991         don't care about ->need_resize at all.
11992         handle size changes properly that occoured while we waited for a
11993         configure event.
11994
11995 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
11996
11997         * gtk/gtkwidget.c (gtk_widget_set_uposition):
11998         * gtk/gtkwindow.[hc] (gtk_window_reposition):
11999         Move the hint setting code from gtk_widget_set_uposition
12000         to here; set the hints so that we respect any previously
12001         set geometry hints.
12002
12003         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
12004         change the window hints here or move the window here,
12005         let that happen in gtk_window_move_resize().
12006
12007 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
12008
12009         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
12010         to already queued resizes (and therefore redraws) on a widget, check
12011         its anchestry as well.
12012
12013         * gtk/gtkcontainer.c:
12014         (gtk_container_queue_resize): clear resize widgets for resize
12015         containers before aborting prematurely. this is especially important
12016         for toplevels which may need imemdiate processing or their resize
12017         handler to be queued.
12018         (gtk_container_dequeue_resize_handler): added new internal function for
12019         gtkwindow.c.
12020
12021         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
12022         configure event, take possible changes in window position into account
12023         as well.
12024         if we request a new window size, queue up a resize handler that will
12025         last until the configure event response arrives.
12026         combined the ->need_resize case (initial show) with the general size
12027         (hints) changed case and added even more comments.
12028         if !auto_shrink, only revert to the old allocation if the new size
12029         is smaller than the current allocation.
12030
12031 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
12032
12033         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
12034                            gtk_window_set_geometry_hints
12035                            gtk_window_set_default_size):
12036         When hints are set, queue a resize so that the hints will
12037         be eventually reset on the toplevel.
12038
12039         * gtk/gtkwindow.c (gtk_window_show): Use
12040         gtk_window_compute_default_size(). Clear the need_resize flag
12041         on the initail map so that we don't unnecessarily trigger the
12042         resize code.
12043
12044         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
12045         into separate functions. Compare the hints we are setting
12046         with what we set last time so that we can accurately
12047         tell when we need to reset the hints.
12048
12049         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
12050         function to figure out the size from requisition
12051         and default_size.
12052
12053         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
12054         from fvwm to constrain a size to the geometry hints.
12055
12056         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
12057         to compare two sets of geometry hints.
12058
12059         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
12060         from gtk_window_set_hints(), just compute the hints,
12061         don't set them.
12062
12063         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
12064         code from gtk_window_move_resize() to separate function,
12065         rationalize a bit.
12066
12067 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
12068
12069         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
12070         structure into a new private structure.
12071
12072         * gtkrc.c: Split GtkRcStyle into public/private.
12073         In the private part, add a list of pointers to the
12074         RcStyle lists this RcStyle participates in.
12075
12076         * gtkrc.c: When a RcStyle is free, remove all
12077         lists referencing it from the 
12078         realized_style_ht hash, and free those lists.
12079         
12080         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
12081         gtk_rc_init(), since that adds the default styles
12082         to the list of parsed RC files again.
12083
12084         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
12085         
12086 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
12087
12088         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
12089         checks that ensure that a widget's allocation is at least 1 in width
12090         and height. (GNOME note: this doesn't affect old panel code anymore,
12091         because GtkSocket will request width and height of at least 1 since
12092         Fri Jul 23).
12093
12094         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
12095         allocated yet (happens if the user realizes the window prematurely),
12096         size request and allocate it.
12097         (gtk_window_size_allocate): guard against guint underflows.
12098
12099 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
12100
12101         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
12102         in gtk_built_sources, so gtk.defs gets built prior to all other
12103         sources.
12104
12105 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
12106
12107         * gtk/Makefile.am:
12108         invoke indent on gtkmarshal.*. 
12109         rewrote source generation rules, use COPYING as oldest source tag for
12110         a piggyback rule to generate all sources from (don't touch it ;).
12111         major cleanups, strip spaces on build rules for GNU Make.
12112
12113         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
12114         source and target files from commandline arguments. don't invoke indent.
12115
12116 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
12117
12118         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
12119         notebook after switch to avoid drawing problems.
12120         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
12121         
12122         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
12123         show them instead. 
12124         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
12125
12126 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
12127
12128         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
12129         notebook after switch to avoid drawing problems.
12130         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
12131         
12132         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
12133         show them instead. 
12134         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
12135
12136 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
12137
12138         * gtk/gtkwindow.c:
12139         we use window->need_resize from configure_event now, to indicate that
12140         the gtkwindow should keep its allocation (e.g. because the user resized
12141         the window through window manager handles). resize_count is now reliably
12142         used to figure whether we got the allocation we requested from the
12143         window manager.
12144         configure events get queued as resizes now, the real stuff (size
12145         computation and allocation) now only goes on in gtk_window_move_resize().
12146         GtkWindow's requisition now contains its *real* requisition (like all
12147         other widgets), *not* taking usize into account.
12148         geometry_info->last_{width|height} is now updated from set_hints() only
12149         so it always contains the last hints we set for the window manager.
12150         made some event handlers return TRUE instead of FALSE.
12151         the overall code should be much more straight forward now, and the
12152         significant code portions are accompanied by comments now.
12153         (gtk_window_set_hints):
12154         removed requisition argument and made it
12155         fetch the requisition through gtk_widget_get_child_requisition.
12156         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
12157         does that now.
12158         (gtk_window_show):
12159         ensure that the widget is realized before calling 
12160         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
12161         ensure that we got properly size requested and allocated before
12162         realization.
12163         (gtk_window_configure_event):
12164         ignore plain window moves, or reallocate the widget tree through the
12165         resize queue otherwise.
12166         (gtk_window_move_resize):
12167         mostly rewrote this function to figure window manager hints more
12168         reliably, coalesce window moves and resizes to reduce configure events
12169         and do actuall size allocations.
12170
12171 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
12172
12173         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
12174         that have a resize pending, because a redraw is already queued for them.
12175
12176         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
12177         hack to clear resize_widgets.
12178
12179         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
12180         for resize containers prior to size allocation. (this is also a bit
12181         ugly, but avoids side effects for stopped emissions and is thus more
12182         reliable).
12183         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
12184
12185         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
12186         function from gtk_tooltips_expose, as we connect to ::expose_event
12187         *and* ::draw now.
12188
12189 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
12190
12191         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
12192         checks.
12193         (gtk_target_list_unref): Likewise.
12194
12195         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
12196
12197 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
12198
12199         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
12200         guard against division by zero. (Fixes bug #1339)
12201
12202 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
12203
12204         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
12205         Prevent the trivial leak of information of allowing
12206         word motion when the entry is not visible.
12207
12208 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
12209
12210         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
12211         modality to error dialog as well as confirmation dialogs.
12212         (Bug #1803, reported by Rosanna Wing Sze Yuen)
12213
12214 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
12215
12216         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
12217         tree->view_lines.
12218         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
12219
12220         * gtk/Makefile.am (install-data-local): Solaris apparently
12221         has various troubles with ln -f; use rm first instead.
12222         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
12223
12224 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
12225
12226         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
12227         use `cp' followed by `rm' (the `rm' was already there).
12228
12229 July 30, 1999 Elliot Lee <sopwith@redhat.com>
12230         
12231         * configure.in: Fix autoconf warnings about cross compilation by
12232         trying to provide sane defaults for AC_TRY_RUN.
12233         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
12234         put them into $(srcdir) when generated. Also add a dependency of
12235         gtksignal.h on gtkmarshal.h for -j builds. 
12236         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
12237
12238 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
12239
12240         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
12241         GDK_THREADS_{LEAVE,ENTER} pair.
12242         (From Paul Fisher <pnfisher@redhat.com>)
12243
12244 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
12245
12246         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
12247         width and height are always >0 (owen).
12248
12249 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
12250
12251         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
12252         change that assured that a widget's allocated with and height are
12253         always >1, since this breaks *buggy* panel code. unfortunately this
12254         back-breaks the gimp's color selector.
12255
12256         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
12257         allocation is always >0 in width and height, before sending the
12258         configure event; this is a *gross* hack to get the gimp back to work.
12259         
12260         * marked both cases with TODO-1.3
12261
12262 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
12263
12264         * gtk/gtktext.c: Don't display wrap indicators when
12265         text is not editable and word wrap is on.
12266
12267 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
12268
12269         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
12270         option menus here as they are not derived from menu shell, assure that
12271         the option menu has a menu we can add items to.
12272
12273 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
12274
12275         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
12276         width/height to (gint) before calculations and check against < 0 to
12277         avoid guint wraparounds.
12278
12279 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
12280
12281         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
12282         width and height is never zero. sanity check both dimensions against
12283         32767 and issue a warning if the allocation is greater than that.
12284
12285 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
12286
12287         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
12288         to g_main_pending() as well.
12289
12290 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
12291
12292         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
12293         call to g_main_iteration() - since that will regrab
12294         GTK+ lock to process events.
12295
12296 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
12297
12298         * gtk/gtkwindow.c
12299         - Regularize with the rest of GTK+ by making widget->requisition
12300           not reflect the set_usize()
12301         - Always recompute geometry hints, then check if they
12302           changed before sending them to the X server. The
12303           previous checks for changes would fail in a number
12304           of circumstances. 
12305
12306 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
12307
12308         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
12309
12310 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
12311
12312         * gtk/gtkdnd.c:
12313         - Code cleanups
12314         - Instantaneously update on modifier key presses
12315         - Allow cancellation of the drag with Escape.
12316
12317 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
12318
12319         * gtk/testgtk.c (create_handle_box): Set the policy
12320         to auto_shrink - otherwise the appearance is rather
12321         strange when flipping between horizontal and vertical.
12322
12323 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
12324
12325         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
12326         (gtk_window_set_default_size): don't change a value if it's < 0.
12327         queue a resize.
12328
12329 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
12330
12331         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
12332
12333 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
12334
12335         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
12336         add an extra "/" when concating "/" + filename.
12337         (From Matt Grossman <mattg@oz.net>)
12338
12339 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
12340
12341         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
12342         for fg_gc if we set it for drawing pixmap.
12343
12344 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
12345
12346         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
12347         
12348         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
12349         already set, call old engine's destroy function and
12350         unref the old engine.
12351
12352 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
12353
12354         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
12355
12356 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
12357
12358         * gtk/gtkaccelgroup.h: mark certain functions as internal.
12359
12360 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
12361
12362         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
12363         expand behaviour changed.
12364
12365         * gtk/gtklabel.c (gtk_label_set_pattern):
12366         (gtk_label_set_justify):
12367         (gtk_label_set_line_wrap):
12368         don't bother invoking queue_clear, the reallocation does
12369         that for us, always free_words so the upcoming resize will
12370         relayout the label's contents.
12371
12372 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
12373
12374         * applied argument implementation patches from Elena Devdariani
12375         <elena@cogent.ca>.
12376
12377         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
12378         ::space_style, ::relief
12379         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
12380         * gtk/gtkpreview.c: ::expand
12381         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
12382         * gtk/gtknotebook.c: ::homogeneous
12383         * gtk/gtklabel.c: ::wrap
12384         * gtk/gtklist.c: ::selection_mode
12385         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
12386         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
12387         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
12388         * gtk/gtkclist.c: ::sort_type
12389         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
12390         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
12391
12392 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
12393
12394         * gtk/gtkstyle.c: Removed ill-thought-out part of last
12395         comment.
12396
12397 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
12398
12399         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
12400         counting right when we have to attach a new style
12401         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
12402
12403         * gtk/gtkstyle.c: Documented the refcounting
12404         peculularities of gtk_style_attach.
12405
12406 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
12407
12408         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
12409         window types.
12410
12411         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
12412         of GTK_TOPLEVEL for creating the window.
12413
12414 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
12415
12416         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
12417         the last argument (reported by Per Winkvist).
12418         
12419 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
12420
12421         Fixes for invisible XOR lines (Frank Loemker
12422         <floemker@TechFak.Uni-Bielefeld.DE>)
12423         
12424         * gtk/gtkclist.c (gtk_clist_realize): Always use
12425         a non-zero pixel for GDK_XOR.
12426
12427         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
12428         Use GDK_INVERT instead of GDK_XOR.
12429
12430 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
12431
12432         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
12433         signals if h/voffsets differ from adjustment values.
12434         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
12435
12436 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
12437
12438         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
12439         ::selection-done emissions up to the topmost menu shell.
12440
12441 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
12442
12443         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
12444         the user data on the window before destroying it.
12445
12446         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
12447         unrealize handler to take care of destroying 
12448         notebook->panel properly. 
12449         (Bug #1198 - Morten Welinder <terra@diku.dk>)
12450
12451         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
12452         of g_new and g_realloc to stop memory leak. (Actually,
12453         we could just use g_realloc(), but I'm not 100% sure
12454         that is portable).
12455         (Bug #1196 - Morten Welinder <terra@diku.dk>)
12456
12457 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
12458
12459         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
12460
12461         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
12462         for fontsets.
12463
12464         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
12465         with bin/button confusion.
12466
12467 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
12468
12469         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
12470         and show how preselection of radio items is done.
12471
12472 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
12473
12474         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
12475         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
12476         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
12477         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
12478         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
12479         * gtk/gtktable.c (gtk_table_attach): 
12480         * gtk/gtklist.c (gtk_list_insert_items): 
12481         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
12482         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
12483         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
12484         * gtk/gtkbin.c (gtk_bin_add): 
12485         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
12486         * gtk/gtkfixed.c (gtk_fixed_put): 
12487         * gtk/gtklayout.c (gtk_layout_put):
12488         general fixups to container_add logic. always realize child if
12489         child->parent is realized, only map the child and queue a resize
12490         if child and child->parent are both visible.
12491
12492 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
12493
12494         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
12495         instead of gtk_container_foreach to walk and unrealize children, so
12496         composite children get also unrealized.
12497         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
12498         (gtk_widget_map): assert that the widget is visible (basic constrain).
12499         (gtk_widget_real_map): assert that the widget is realized (basic
12500         constrain).
12501
12502 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
12503
12504         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
12505
12506 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
12507
12508         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
12509         file for iso-8859-2 locales.
12510
12511         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
12512
12513 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
12514
12515         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
12516          (Pointed out by andy@rz.uni-karlsruhe.de and others).
12517          Remove some suspicious and useless lines. 
12518
12519 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
12520
12521         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
12522         width,height = 0, 0 to mean - here to edge of window,
12523         instead of -1, -1, since the former is all we support.
12524
12525 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
12526
12527         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
12528         when removing from quit_functions list.
12529
12530 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
12531
12532         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
12533
12534 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
12535
12536         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
12537          When redrawing characters on non-visible entry, use appropriate
12538          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
12539
12540 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
12541
12542         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
12543         from drag coordinates.
12544         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
12545         use drag_dest_cell.
12546
12547         * gtk/gtktree (drag_dest_cell)
12548         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
12549         (Bug #1129)
12550
12551 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
12552
12553         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
12554         translate_* fields.
12555         (gtk_item_factory_finalize): invoke translate_notify independant from
12556         translate_data.
12557         (gtk_item_factory_set_translate_func): likewise.
12558         (gtk_item_factory_destroy): only remove ifactory pointer from those
12559         widgets that belong to us (stupid me).
12560
12561 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
12562
12563         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
12564         rc_style list when lookup succeeeds.
12565
12566 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
12567
12568         * gtk/gtkctree.c (resync_selection): 
12569         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
12570         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
12571         bug.
12572
12573 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
12574
12575         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
12576         Add some missing GDK_THREADS_ENTER()/LEAVE around
12577         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
12578
12579 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
12580
12581         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
12582         rather than emit_by_name.
12583
12584         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
12585         on the widget across multiple signal emissions.
12586         (gtk_editable_delete_text): same here.
12587         (gtk_editable_class_init): set widget_class->activate_signal after
12588         editable_signals[ACTIVATE] has been created.
12589
12590 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
12591
12592         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
12593         position here prematurely -- we might not have the
12594         right ->min_position and ->max_position yet.
12595
12596 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
12597
12598         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
12599         Add error traps so if the other end of the connection
12600         dies, we survive.
12601
12602         * gtk/gtkselection.c (gtk_selection_notify): Clean
12603         up properly when selection property retrieval fails.
12604         
12605         * gtk/gtkselection.c (gtk_selection_request): Correctly
12606         reject SelectionRequest notifies where the handler
12607         returns no data.
12608
12609 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
12610
12611         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
12612         when we've previously highlighted.
12613
12614         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
12615         emit two "drag_leave" signals for Motif drops.
12616
12617         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
12618         back the correct status messages when dropping from
12619         Motif onto a proxy window that is rejecting the
12620         drop.
12621
12622 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
12623
12624         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
12625         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
12626         to compare two argument values. added gtk_arg_to_valueloc() to set a
12627         variable from an arg through its location (pointer).
12628
12629         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
12630         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
12631         as gfloat*, uchars are collected as guchar*, ints are collected as
12632         gint*, etc...
12633
12634 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
12635
12636         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
12637         Include <string.h> instead of <strings.h>.
12638
12639         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
12640         (actually, a lot more duplicate includes occur if
12641          you trace through the sequence of #include's)
12642         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
12643         
12644 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
12645
12646         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
12647         gtk-a-higuti-990322-[0-3]
12648
12649         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
12650         that was causing -DX_LOCALE not to work.
12651
12652         * gtk/gtkrc.c (gtk_rc_init):
12653         X_LOCALE will never have LC_MESSAGES defined
12654
12655 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
12656
12657         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
12658         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
12659
12660         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
12661         left/right as well (gtk-michael-980726-0.patch.gz).
12662
12663         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
12664         for pointer values, use gchar instead of char. fixed uline allocation
12665         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
12666         chunks instead of G_ALLOC_ONLY.
12667         (gtk_label_size_request): always alter requisition as passed and leave
12668         widget->requisition alone.
12669         (gtk_label_set_text): allow NULL strings.
12670         (gtk_label_new): likewise.
12671
12672 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
12673
12674         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
12675
12676 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
12677
12678         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
12679         *and* mapped (i.e. drawable).
12680         (gtk_bin_expose): only send exposes to drawable children.
12681
12682         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
12683         (gtk_box_expose): only send exposes to drawable children.
12684
12685         * gtk/gtkhscale.c (gtk_hscale_draw): 
12686         * gtk/gtkvscale.c (gtk_vscale_draw):
12687         hm, this is an ugly one. we first compute the size of our trough area
12688         here (window relative) and then check intersection with the draw_area
12689         which is parent relative because we're a NO_WINDOW widget, so we need
12690         to offset the trough area by allocation.x and allocation.y before the
12691         check. (this must not be done for the background area though, since
12692         that's already computed parent relative).
12693
12694 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
12695
12696         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
12697         unrealize title buttons.
12698
12699 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
12700
12701         * gtk/gtkclist.c (gtk_clist_column_title_passive)
12702         (gtk_clist_column_title_active): 
12703         only connect/disconnect to GtkWidgetClass::event to block mouse events.
12704
12705         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
12706         zero initialize event, removed superfluous gdk_window_get_pointer call
12707
12708         * gtk/gtklist.c (gtk_list_vertical_timeout)
12709         (gtk_list_horizontal_timeout): removed superfluous
12710         gdk_window_get_pointer call
12711
12712 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
12713
12714         * plugging problems reported by "Bruce Mitchener, Jr."
12715         <bruce@puremagic.com> due to a purify session.
12716
12717         * gtk/gtkstyle.c:
12718         (gtk_style_ref): 
12719         (gtk_style_unref): assert ref_count to be > 0.
12720
12721         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
12722         the requisition.
12723         (gtk_clist_set_shift): likewise.
12724
12725         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
12726         adjustments.
12727
12728         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
12729         event before sending it and set send_event to TRUE (which needs to
12730         be done for *all* synthesized events).
12731         (gtk_list_vertical_timeout): likewise.
12732
12733         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
12734         leaks.
12735
12736         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
12737         to TRUE when synthesizing events.
12738
12739 [ *** end of merges from 1.2 *** ]      
12740         
12741 1999-11-21  Tor Lillqvist  <tml@iki.fi>
12742
12743         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
12744         (or copied from gdkconfig.h.win32 on Win32, sigh).
12745
12746         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
12747
12748         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
12749
12750         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
12751
12752         * gdk/gdkconfig.h.win32: New file.
12753
12754         * gdk/win32/makefile.cygwin: Build just a static archive here.
12755
12756         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
12757         for the DLL from the static archive built above.
12758
12759         * gdk/gdk.def: Moved here from the win32 subdirectory.
12760
12761         * gdk/win32/*: Adapt for the changed private struct organisation.
12762
12763         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
12764
12765 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
12766
12767         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
12768         for wheel mice (buttons 4 and 5).
12769
12770 1999-11-18  Tor Lillqvist  <tml@iki.fi>
12771
12772         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
12773         drawables use just the pixel field in the foreground and
12774         background GdkColor of the GdkGC.
12775
12776         gdk_gc_set_{fore,back}ground() are called in the GIMP with
12777         GdkColors containing uninitialized (red,green,blue) fields, and
12778         just the pixel field filled in, and furthermore in the
12779         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
12780         It thus turns out that we really don't need to have the full
12781         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
12782         it later to have just the pixel values.
12783
12784 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
12785
12786         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
12787
12788 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
12789
12790         * docs/gtkfaq.sgml: threads example from Erik Mouw.
12791         New question on GtkLabel background colors.
12792
12793         * docs/gtk_tut.sgml:
12794           - Correct the example code callback
12795             function definitions.
12796           - Update the gtkdial example code, from Frans van Schaik.
12797           - Update setselection.c to current API.
12798
12799         * examples/Makefile examples/*/*.c: Update to code
12800         listed in tutorial.
12801
12802 1999-11-10  Tor Lillqvist  <tml@iki.fi>
12803
12804         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
12805         subrange table (from the "Developing International Software for
12806         WIndows 95 and Windows NT" book) was missing the Hangul syllable
12807         block... Get the loaded font's charset correctly.
12808
12809         (Note that this, and the other *-win32.c files, still really are
12810         the old ones, the win32 subdirectory is not ready for compilation
12811         yet after the reorg.)
12812
12813 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
12814
12815         * gtk/gtkclist.c: Fix off-by-one bug in parameter
12816         check.
12817
12818 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
12819
12820         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
12821         on results of XQueryDeviceState().
12822
12823 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
12824
12825         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
12826         we need to accesss only ->children. We need an accessor
12827         for the children.
12828
12829         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
12830         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
12831         to get rid of gdkx.h include.
12832         
12833         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
12834         and random references to 'None'.
12835
12836         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
12837         Get rid of unused #include <gdk/gdkx.h>
12838
12839         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
12840         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
12841         gdkconfig.h.
12842
12843 1999-11-08  Tor Lillqvist  <tml@iki.fi>
12844
12845         * gdk/win32/gdkdraw.c
12846         * gdk/win32/gdkfont.c
12847         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
12848         following yesterday's changes. (Unrelated to Owen's reorg.)
12849
12850 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
12851
12852         * gdk/x11/gdkinput-gxi.c: Add missing include,
12853           fix GdkWindowPrivate => GdkDrawablePrivate.
12854
12855         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
12856
12857         * gdk/x11/Makefile.am (xinput_sources): Add missing
12858         backslash to fix building with --with-xinput=none
12859
12860 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
12861
12862         Move all X specific code into the x11/ directory.
12863         Aside from shuffling things around, did the following:
12864
12865        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
12866          gdk_arg_context_* - a simple argument parsing system
12867          in the style of popt.
12868
12869        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
12870          gdk/x11/gdkprivate-x11.h:
12871          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
12872          add ->klass and ->klass_data fields. The klass_data
12873          field points to an auxilliary structure that is
12874          windowing system dependent.
12875
12876        * gdk/gdkfont.c: Make most of the measurement functions
12877          simply wrappers around gdk_text_extents().
12878
12879        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
12880          _gdk_font_strlen() function that hides the weird
12881          behavior in gtk+-1.[02] where a string is interpreted
12882          differently for 8-bit and 16-bit fonts.
12883
12884        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
12885          to store common code for synthesizing double/triple
12886          press events.
12887         
12888        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
12889          Make all the function that modify an existing GC
12890          simply wrappers around gdk_gc_set_values().
12891          
12892        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
12893          for throwing out later.
12894
12895        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
12896          GdkImagePrivate and GdkColormapPrivate to have a
12897          windowing system dependent part (GdkFontPrivateX etc.)
12898          that "derives" from the system-independent part.
12899
12900        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
12901          Got rid of the included-source-files for XInput in
12902          favor of automake conditionals. (Which didn't exist
12903          when XInput support was originally added.)
12904
12905        * gdk/gdkrgb.c: Remove the visual id from the debugging
12906          statements since that is X11 specific; print out
12907          type/depth info instead.
12908          
12909
12910 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
12911
12912         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
12913         loading duplicates of hashed fonts.
12914
12915         * gdk/gdk.c (gdk_keysym_convert_case): rename
12916         gdk_XConvertCase to gdk_keysym_convert_case, allow
12917         results to be NULL in the GTK+ style.
12918
12919         * gdk/gdkcompat.h: Started compatibility header
12920         for renames.
12921
12922 1999-11-07  Tor Lillqvist  <tml@iki.fi>
12923
12924         * gdk/win32/gdkprivate.h: New font private structures, related to
12925         fontsets.
12926
12927         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
12928         gdk_font_list_free(). On X11, will just be wrappers to
12929         XListFonts() and XFreeFontNames(). On Win32, the code previously
12930         in gtkfontsel.c is now here.
12931
12932         New function gdk_font_xlfd_create(). On X11 will get the FONT
12933         property of the font (for GDK_FONT_FONTs), or call
12934         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
12935         builds a XLFD style name from the font information in the LOGFONT
12936         struct(s).
12937
12938         New function gdk_font_xlfd_free(), which correspondingly frees the
12939         string returned by gdk_font_xlfd_create().
12940
12941         Implement fontsets on Win32. Add a function that iterates over a
12942         wide char string and calls a callback function for each substring
12943         of wide chars from the same Unicode subrange (and thus probably
12944         available in the same real font).
12945
12946         Improve the XLFD emulation a bit.
12947
12948         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
12949
12950         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
12951         Beta3, WM_IME_CHAR messages don't seem to contain the composed
12952         multi-byte char as with the Active IMM on Win9x. Oh well, handle
12953         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
12954         ImmGetCompositionStringW() to get the composed Unicode chars.
12955
12956         * gdk/win32/gdkgc.c
12957         * gdk/win32/gdkdraw.c: Changes needed because of the font private
12958         struct changes.
12959
12960         * gdk/win32/gdk.def: Add the new functions.
12961
12962 1999-11-04  Tor Lillqvist  <tml@iki.fi>
12963
12964         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
12965         get the Platform SDK to get <dimm.h>.
12966
12967         * gdk/win32/gdkevents.c: More event handling fixes and
12968         simplification. Never generate motion events with is_hint true. We
12969         used to do that on bogus grounds earlier. Windows sends
12970         WM_MOUSEMOVE messages on button events even if the mouse hasn't
12971         moved, ignore these.
12972
12973         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
12974
12975         * gdk/win32/gdkglobals.c
12976         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
12977         the TrackMouseEvent function, and use it.
12978
12979         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
12980         char before calling WideCharToMultiByte in order to get a string
12981         for the window title.
12982
12983         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
12984
12985         * gdk/win32/gdk.def: Remove obsolete functions.
12986
12987         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
12988         /nodefaultlib and /defaultlib switches.
12989
12990         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
12991
12992 1999-10-31  Tor Lillqvist  <tml@iki.fi>
12993
12994         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
12995         EuroSign).
12996
12997         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
12998         same type as GdkWChar, especially on Win32.
12999
13000         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
13001
13002         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
13003         before passing to Windows GDI for drawing etc. Convert to the
13004         system default codepage before passing to Windows as window
13005         titles.
13006
13007         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
13008         support changing input locale on the fly.
13009
13010         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
13011         on-the-fly changes. Convert incoming characters from the current
13012         codepage to Unicode (and then to a UTF-8 multi-byte string) based
13013         on the current input language. Use keysym<->Unicode mapping tables
13014         and functions borrowed from xterm sources.
13015
13016         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
13017         editions of Win9x, use the ActiveX-based Active IMM (Input Method
13018         Manager) if available. IMEs and the Active IMM are available under
13019         the disguise of Chinese, Korean and Japanese support for IE and
13020         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
13021         support is present in all editions (as long as you install it).
13022
13023         Call DispatchMessage from gdk_events_queue() (and thus
13024         gdk_WindowProc()), instead of duplicating the code in
13025         gdk_WindowProc().
13026
13027         Reworked the grab handling and propagation code, factored out
13028         duplicated code snippets into separate functions. Other cleanups,
13029         too.
13030
13031         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
13032         the <dimm.h> header describing the Active IMM.
13033
13034         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
13035         just do the same as for "single" fonts.
13036
13037         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
13038         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
13039         the new keysyms from gdkkeysyms.h.
13040
13041         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
13042         fontset, so that gtkentry uses wide characters.
13043
13044         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
13045         GTk+'s system directory "gtk+", not "gtk".
13046
13047 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
13048
13049         * docs/gtkfaq.sgml: FAQ update
13050
13051 1999-10-21  Tor Lillqvist  <tml@iki.fi>
13052
13053         * gdk/win32/gdkprivate.h: Add more font private data.
13054
13055         * gdk/win32/gdkfont.c
13056         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
13057         fonts and strings. Now works much better. You still have to
13058         have a correct font selected, though. No fontset emulation yet.
13059
13060 1999-10-19  Tor Lillqvist  <tml@iki.fi>
13061
13062         * gtk/maketypes.awk: Use G_OS_WIN32.
13063
13064         * gtk/gtk.def: Add some missing entry points. Also some non-public
13065         ones, but PyGTK porter claims to need them.
13066
13067         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
13068         built-in type generation.
13069
13070 1999-10-14  Tor Lillqvist  <tml@iki.fi>
13071
13072         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
13073         GDK_FONT_FONT fonts (which is all we have for now, we don't
13074         emulate fontsets). The X11 version uses plain XDrawString in that
13075         case, too. The string passed to gdk_draw_text_wc seems to be in
13076         fact (at least, when used by gtkentry and gtktext) either in a
13077         single-byte charset, or a DBCS. Not Unicode.
13078
13079         This fixes the problem in gtkfontsel, where even if you had
13080         selected a font with a non-Latin1 charset (windows-greek, for
13081         instance), the preview still used Latin-1 glyphs.
13082
13083         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
13084         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
13085         (gdk_font_load): Recognize the demibold etc weights, even if we
13086         don't have the corresponding constants in the headers.
13087         (gdk_font_hash_insert): Use same hash mechanism as in the X11
13088         version. Should save font resources a bit, when we don't have
13089         multiple HFONTs for the same font.
13090
13091         * gdk/win32/gdkprivate.h: Add the names field as in the X11
13092         version.
13093
13094 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
13095
13096         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
13097         X values
13098
13099 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
13100
13101         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
13102         layout support (as mentioned on
13103         http://www.jcinteractive.com/gnome-ui/software/widgets/)
13104
13105 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
13106
13107         * gtk/fnmatch.c
13108         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
13109
13110 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
13111
13112         * configure.in (ALL_LINGUAS): Added Galician (gl)
13113
13114 1999-10-05  Tor Lillqvist  <tml@iki.fi>
13115
13116         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
13117
13118         * gdk/win32/gdkcompat.c: New file, actually provide an
13119         implementation for the deprecated functions. (Just temporarily.)
13120
13121         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
13122
13123         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
13124
13125         * gdk/win32/gdk.def gtk/gtk.def: Updates.
13126
13127 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
13128
13129         * configure.in: Added "uk" to ALL_LINGUAS.
13130         
13131 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
13132
13133         * configure.in: correct checking for BeOS check
13134
13135         * gdk/gdktypes.h
13136         * gtk/fnmatch.c
13137         * gtk/gtkfilesel.c
13138         * gtk/gtkitemfactory.c
13139         * gtk/gtkmain.[ch]
13140         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
13141
13142 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
13143
13144         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
13145         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
13146         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
13147         by Bulgarian). 
13148
13149 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
13150
13151         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
13152         Fix a reference to window_private->destroyed.   
13153
13154         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
13155         (ugly) setting of an internal GdkWindow member to use
13156         a _slightly_ cleaner macro.
13157
13158         * gdk/gdkprivate.h: Split GdkWindowPrivate into
13159         GdkDrawablePrivate and GdkWindowPrivate.
13160         Add extra macros for accessing GDK_DRAWABLE_ components.
13161
13162         * *.[ch]: Massive adjustments for the above, use the
13163         new macros in a lot of places.
13164
13165 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
13166
13167         * gdk/gdktypes.h: Make GdkDrawable the base type,
13168         not GdkWindow.
13169
13170 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
13171
13172         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
13173
13174 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
13175
13176         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
13177
13178 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
13179
13180         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
13181         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
13182
13183         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
13184
13185         * docs/gtk-config.1: Now autogenerated.
13186         * docs/Changes-1.4.txt: started
13187         
13188 1999-10-03  Tor Lillqvist  <tml@iki.fi>
13189
13190         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
13191         to #ifdef also here.
13192
13193         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
13194         Owen did to the X11 backend.
13195
13196         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
13197         ScrollWindowEx when blitting inside a window, it can't be correct
13198         in the general case.
13199
13200         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
13201         WM_GETMINMAXINFO is easier.
13202
13203         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
13204         depth equal to the bitspixel value, not the visual's depth.
13205
13206         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
13207         to 24 even if the bitspixel value is 32.
13208
13209         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
13210         need to check for depth==32 when bpp==32, depth will always be 24.
13211
13212 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
13213
13214         * docs/Changes-1.4.txt: Started
13215         
13216         * gtk/Makefile.am (gdk_headers): Include all the new headers.
13217
13218         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
13219         
13220         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
13221         into C file.
13222         
13223         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
13224         header to gdkinputprivate.h.
13225
13226         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
13227         unused since before 1.2.
13228
13229 1999-09-30  Tor Lillqvist  <tml@iki.fi>
13230
13231         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
13232         expand possible hex escapes in the font family (put there by
13233         logfont_to_xlfd if the font name isn't a legal XLFD font family,
13234         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
13235         On Win32, add hex escapes here, too.
13236
13237 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
13238
13239         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
13240         to #ifdef GDK_WINDOWING_X11.
13241
13242 [ Merges from gtk-1-2 ]
13243
13244 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
13245
13246         * configure.in: fixed "GNU Make" check to pass with new make version
13247         3.77.95.
13248
13249 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
13250
13251         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
13252         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
13253         AM_PATH_GTK() macros don't get confused by the -pre1.
13254
13255 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13256
13257         * configure.in (REBUILD): Change check for perl5
13258           to check explicitely for v >= 5.002. (5.001
13259           does not work with our scripts.)
13260
13261 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
13262
13263         * configure.in: evaluate $PERL for the perl version check. added
13264         --disable-rebuilds to give the user an option to completely disable
13265         any source autogeneration rules.
13266
13267 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
13268
13269         * configure.in: evaluate $ac_make when checking for GNU Make.
13270
13271 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13272
13273         * docs/Makefile.am: added generation.txt.
13274
13275         * Makefile.am: require automake 1.4, build README from README.in and
13276         INSTALL from INSTALL.in in dist-hook.
13277         
13278         * README.in:
13279         * INSTALL.in: new files to autogenerate README and INSTALL from.
13280
13281         * configure.in: figure whether we have GNU Make
13282
13283         * docs/generation.txt: minor additions/corrections.
13284
13285 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
13286
13287         * docs/gtkfaq.sgml: FAQ Update
13288
13289 July 30, 1999 Elliot Lee <sopwith@redhat.com>
13290         
13291         * configure.in: Fix autoconf warnings about cross compilation by
13292         trying to provide sane defaults for AC_TRY_RUN.
13293
13294 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
13295
13296         * ltconfig
13297         * ltmain.sh: upgrade to libtool 1.3.3
13298
13299 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
13300
13301         * INSTALL: Indicate that the --with-glib= configure
13302         time flag is unsupported.
13303
13304 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
13305
13306         * docs/generation.txt: Added a file that gives
13307         documenation about the autogeneration process for
13308         various autogenerated files.
13309         
13310 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
13311
13312         * configure.in (LIBS): Look for libgmodule in the
13313         right location.
13314
13315 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
13316
13317         * docs/gtk_tut.sgml: Removed references to
13318         code examples in my directory on gtk.org as
13319         they should all be in the tutorial now.
13320
13321         * docs/gtk_tut.sgml: Added sources for dial-test
13322         and scribble-xinput programs that were previously
13323         missing.
13324
13325 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
13326
13327         * TODO: Added entry about menu keyboard navigation, removed
13328         some finished items.
13329
13330 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
13331
13332         * acinclude.m4: Standardize on func_dgettext
13333         not func_gettext, so that the checks for dgettext
13334         actually are paid attention to.
13335
13336 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
13337
13338         * configure.in (LIBS): Add $INTLLIBS into $LIBS
13339         directly, rather than repeating the checks for
13340         gettext.
13341
13342         * INSTALL: Added information about gettext and
13343         NLS support.
13344
13345         * acinclude.m4 (LIBM): Check for dgettext, not
13346         just gettext. This should hopefully fix things wrt
13347         systems with old versions of GNU gettext installed.
13348
13349 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
13350
13351         * configure.in (LIBS): Look for libgmodule in the
13352         right location.
13353
13354 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
13355
13356         * autogen.sh: add --enable-maintainer-mode
13357
13358         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
13359
13360 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
13361
13362         * docs/gtk-config.1.in:
13363           docs/Makefile.am:
13364           configure.in: gtk-config is now generated.
13365
13366         * docs/gtk-config.1: Removed, now generated.
13367
13368 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
13369
13370         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
13371         handle CreateNotify itself, still put out a debuging message for
13372         --gdk-debug=events. made the ReparentNotify debugging message more
13373         verbose.
13374         wrap xcoords translation for ConfigureEvents into an error trap,
13375         a destroy event may already be pending, and in that case, the
13376         actuall coordinate values are not at all critical.
13377
13378 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
13379
13380         * gdk/gdkcc.c: Stop leaking the color_hash all over
13381         the place. Simplify and improve the logic.
13382
13383 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
13384
13385         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
13386         for prototypes and function implementations consistent (reported
13387         by Tomas Ogren).
13388
13389 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
13390
13391         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
13392         send_event set in debugging output.
13393         (gdk_compress_exposures): default initialize the event so we don't
13394         operate on bogus values (namely send_event).
13395
13396 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
13397
13398         * gdk/gdkwindow.c: When we receive an unexpected
13399         destroy notify on one of our windows, don't just
13400         warn about it, also mark our windows as destroyed.
13401
13402 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
13403
13404         * gdk/gdkfont.c (gdk_font_hash_insert): Add
13405           name => font and name => fontset hashes. The 
13406           name => fontset hash is a _big_ win since we
13407           weren't previously caching fontsets at all and loading
13408           fontsets is expensive. The name => font hash
13409           is less of a win, but it does save us from doing
13410           repeated XQueryFont calls on the same font.
13411
13412         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
13413           list so we can remove font/fontset from hash.
13414
13415 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13416
13417         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
13418           and slightly confusing test. [ XInternAtom (,,TRUE)
13419           will never return None ].
13420
13421 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
13422
13423         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
13424           gdk/gdkwindow.c (gdk_window_set_hints):
13425
13426         Don't omit setting the properties if flags == 0 -
13427         there may be an existing set of properties there
13428         already. (Very old bug. Would it be better to
13429         delete the property instead?)
13430
13431         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
13432           spelling error in comment.
13433
13434 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
13435
13436         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
13437           to avoid stomping over gdk_error_warnings.
13438
13439         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
13440           as (bits_per_pixel + 7) / 8. This gives the same
13441           result as before for multiples of 8, but actually
13442           a "reasonable" value for 1bit or 4bit displays.
13443
13444 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13445
13446         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
13447         GNU Make.
13448
13449 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
13450
13451         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
13452         discarding configure events.
13453
13454 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
13455
13456         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
13457         refcount is greater than zero.
13458
13459         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
13460
13461         * gdk/gdkfont.c (gdk_font_unref): Likewise.
13462
13463         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
13464
13465         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
13466
13467 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
13468
13469         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
13470         that format 32 => sizeof(item) == 4. It really is
13471         sizeof(long).
13472
13473 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
13474
13475         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
13476         core dump at all on X IO errors, only core dump
13477         if --enable-debug for X errors.
13478
13479 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
13480
13481         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
13482         unknown window:" message. disabled ConfigureNotify discarding code,
13483         because it led to events being processed out of order.
13484
13485 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
13486
13487         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
13488
13489         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
13490         we export this function, supress error warnings and don't reset the
13491         error code in the first half of this function.
13492
13493         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
13494         code (instead of just -1) so gdk_error_trap_pop() reveals something
13495         actually informative about the error that happened.
13496
13497         * gdk/*.c:
13498         don't rely on gdk_error_code being -1 if an error occoured, but just
13499         gdk_error_code != 0.
13500
13501 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
13502
13503         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
13504         pointer *before* invoking the filter function, so we at least don't
13505         crash if a filter is removed that is currently executed. window filters
13506         *really* need to be made truely reentrant at some point.
13507
13508 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
13509
13510         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
13511         PropertyNotify debug messages.
13512
13513 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
13514         
13515         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
13516         
13517         * gdk/gdkim.c: Fix cut-and-paste errors for 
13518         x/y and PreeditAttributes/StatusAttributes.
13519
13520 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
13521
13522         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
13523         G_MAXINT to 2^16 to alleviate overflow problems in
13524         various window managers.
13525
13526 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
13527
13528         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
13529         for fontsets.
13530
13531 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
13532
13533         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
13534         Initialize size_hints.x and size_hints.y because kwm
13535         brokenly pays attention to them.
13536         (Bug #1181 -  Lars Heete <hel@admin.de>)
13537
13538 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
13539
13540         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
13541         return value of gdk_list_visuals(). 
13542         (Bug #1193 - Morten Welinder <terra@diku.dk>)
13543
13544 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
13545
13546         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
13547         XSetIMValues to (void *) when comparing to NULL, to workaround
13548         the problem of some compilers barfing since older X headers don't
13549         have the prototype for it.
13550
13551 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
13552
13553         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
13554         for pseudocolor where colormap->colors was double
13555         allocated.
13556
13557         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
13558         color value in the hash table with the pixel filled
13559         in so when we do later hash table lookups, the color
13560         value is correct.
13561         
13562 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
13563
13564         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
13565         making the call
13566
13567 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
13568
13569         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
13570         pointed out by Morten Welinder <terra@diku.dk>.
13571
13572 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
13573
13574         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
13575           default filter from the list
13576
13577 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
13578
13579         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
13580           default filter from the list
13581
13582 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
13583
13584         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
13585
13586         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
13587         g_strdup_printf instead of calcing the length separately
13588
13589 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
13590
13591         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
13592         that we don't do in many other places. (Fixing duplicate 
13593         #include of config.h)
13594
13595         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
13596         Otherwise, #ifndef XINPUT_NONE check in the latter
13597         doesn't work. (Bug #546)
13598
13599 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
13600
13601         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
13602         "None" case insensitive.
13603
13604 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
13605
13606         * gdk/gdkselection.c: 
13607         Add error traps so if the other end of the connection
13608         dies, we survive.
13609
13610 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
13611
13612         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
13613         dest_xid field into two fields - one for the window
13614         to send in messages, one to indicate the last looked
13615         up window for caching purposes. This is needed, so
13616         that Leave messages get the correct window.
13617
13618 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
13619
13620         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
13621         Fix warning created by people mucking around
13622         with the gsource API.
13623
13624         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
13625         Change mapping between GIOCondition and GdkInputCondition
13626         to match the way the Linux kernel does it. This should
13627         fix problems where closed pipes were no longer signalling
13628         GDK_INPUT_READ on systems with a native poll().
13629
13630 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
13631
13632         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
13633         explicitly for the string "None" - it is in the XPM
13634         spec and some servers treat unknown colors in odd ways
13635         (like asking the user!)
13636
13637 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
13638
13639         * gdk/gdkevents.c: made "->" into a "." of previous change so
13640         it compiles
13641
13642 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
13643
13644         * gdk/gdkevents.c (gdk_compress_exposures): Set the
13645         window field of the event structure before calling
13646         user filters.
13647
13648 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
13649
13650         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
13651         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
13652
13653 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
13654
13655         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
13656         intermediate text property - prevents major memory
13657         leak when gdk_use_mb.
13658         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
13659
13660 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
13661
13662         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
13663         gtk-a-higuti-990322-[0-3]
13664
13665         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
13666         sizeof(wchar_t) != sizeof (GdkWChar)
13667
13668         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
13669         that was causing -DX_LOCALE not to work.
13670
13671         * gtk/gtkrc.c (gtk_rc_init):
13672         X_LOCALE will never have LC_MESSAGES defined
13673
13674         * gdk/gdk.c (gdk_init_check):
13675         Remove --xim-preedit and --xim-status from argv properly.
13676
13677         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
13678         that the client window is present on the X server
13679         before we pass it to the input method.
13680
13681 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
13682
13683         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
13684         if --display is specified on the command line, than
13685         the drag window will not be created on that display.
13686         
13687 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
13688
13689         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
13690         lookups with only_if_exists == TRUE were inserting
13691         bogus values into the atom cache.
13692
13693 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
13694
13695         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
13696         then reset it to NULL.
13697
13698         * gdk/gdkcolor.c:
13699         (gdk_colors_free): 
13700         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
13701         key for g_hash_table_remove() in both functions, this prevents us
13702         from accessing possibly uninitialized portions of a GdkColor structure
13703         where we are only interested in its pixel value.
13704
13705 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
13706
13707         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
13708         font hash table, if we have a GdkFontPrivate entry for this font
13709         already, simply increment its reference count, provided by Olaf Dietsche
13710         <olaf.dietsche+list.gtk@netcologne.de>.
13711
13712 1999-09-21  Tor Lillqvist  <tml@iki.fi>
13713
13714         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
13715         just to be sure.
13716
13717         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
13718         unused variables, leftovers from the X11 version.
13719
13720         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
13721
13722         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
13723         downcase fields on X11.
13724
13725 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
13726         
13727         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
13728         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
13729
13730 1999-09-17  Tor Lillqvist  <tml@iki.fi>
13731
13732         * gdk/win32/gdk.def: Add gdk_threads_mutex.
13733
13734         * gtk/makefile.msc: Correct path to libintl.
13735
13736         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
13737         use of gint vs. int, and gint vs. gboolean in headers and
13738         definitions. Use GtkType for the *_get_type functions. Note that
13739         these changes preserve binary compatibility.
13740
13741         * gdk/gdk.c
13742         * gdk/win32/gdk.c
13743         * gdk/gdk.h: Fix inconsistencies: gint vs int.
13744
13745         * gtk/gtkmain.c
13746         * gtk/gtkclist.c
13747         * gtk/gtkmenufactory.c
13748         * gtk/gtknotebook.c
13749         * gtk/gtkwidget.c: Fix inconsistencies, also gint
13750         vs. gboolean.
13751
13752         * gtk/gtkcolorsel.[ch]
13753         * gtk/gtkcombo.[ch]
13754         * gtk/gtkdrawingarea.[ch]
13755         * gtk/gtkgamma.[ch]
13756         * gtk/gtkhandlebox.[ch]
13757         * gtk/gtkhpaned.[ch]
13758         * gtk/gtkhruler.[ch]
13759         * gtk/gtkplug.[ch]
13760         * gtk/gtkpreview.[ch]
13761         * gtk/gtkruler.[ch]
13762         * gtk/gtksocket.[ch]
13763         * gtk/gtkstatusbar.[ch]
13764         * gtk/gtktoolbar.[ch]
13765         * gtk/gtkvbbox.[ch]
13766         * gtk/gtkvpaned.[ch]
13767         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
13768         functions.
13769
13770         * gtk/gtkgamma.h: Fix bug, missing () in call of
13771         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
13772
13773 1999-09-14  Tor Lillqvist  <tml@iki.fi>
13774
13775         * gdk/gdkcolor.c (gdk_colormap_new)
13776         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
13777         colormap->colors was allocated twice.
13778
13779         * gdk/win32/gdk.c: Remove some unused stuff.
13780
13781         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
13782         colormap.
13783
13784         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
13785         * gtk/gtklabel.h (gtk_label_get_type)
13786         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
13787         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
13788         in a couple of places, not guint.
13789
13790 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
13791
13792         * configure.in,po/et.po: added Estonian language file
13793
13794 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
13795
13796         * configure.in,po/da.po: added Danish file
13797
13798 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
13799
13800         * docs/gtkfaq.sgml: Minor FAQ Update
13801
13802 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
13803
13804         * docs/gtkfaq.sgml: FAQ update
13805
13806 1999-08-27  Tor Lillqvist  <tml@iki.fi>
13807
13808         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
13809         way to get window contents continually refreshed while resizing. I
13810         didn't like the effects myself, so it's not on by default.
13811
13812         * gdk/win32/gdkprivate.h: New flag variable
13813         gdk_event_func_from_window_proc, FALSE by default.
13814
13815         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
13816         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
13817         are passed --gdk-event-func-from-window-proc.
13818
13819         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
13820         and we have am event_func, call it instead of enqueing the event.
13821
13822 1999-08-23  Tor Lillqvist  <tml@iki.fi>
13823
13824         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
13825         Kelley: Set expose_count in GdkEventExposes correctly.
13826
13827         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
13828         MULTIPLE_WINDOW_CLASSES).
13829
13830         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
13831         for bug in NT, apparently NT *does* draw the end pixel, too, in
13832         LineTo with a one-pixel pen, so we don't have to do it ourselves.
13833
13834 1999-08-21  Tor Lillqvist  <tml@iki.fi>
13835
13836         Improvements by Hans Breuer: 
13837
13838         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
13839
13840         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
13841         CS_?REDRAW flags as they cause lots of (late) redraws when "show
13842         window contents while dragging" is turned on. Allocate at least
13843         one unique class for every GdkWindowType. If support for single
13844         window-specific icons is ever needed (eg. Dialog specific), every
13845         such window should get its own class.
13846
13847 1999-08-19  Tor Lillqvist  <tml@iki.fi>
13848
13849         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
13850         error that caused crashes.
13851
13852 1999-08-17  Tor Lillqvist  <tml@iki.fi>
13853
13854         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
13855         window, use ScrollWindowEx, and call UpdateWindow. This prevents
13856         bugs when for instance part of the window was outside the
13857         display. Thanks to Philippe Colantoni for finding and fixing this.
13858
13859 1999-08-16  Tor Lillqvist  <tml@iki.fi>
13860
13861         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
13862         endpoint calculations which were totally wrong. (A little RTFMing
13863         helps a lot ;-)
13864
13865         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
13866         from a separate directory, not from gettext, because of licensing
13867         issues (we want to use the LGPL version).
13868
13869         * README.win32: Mention the intl from glibc vs from gettext issue.
13870
13871 1999-08-13  Tor Lillqvist  <tml@iki.fi>
13872
13873         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
13874         in the key event handling: Now AltGr chars work again. Also,
13875         now Alt-digits are passed up as well as Control-digits.
13876         Pass keypad plus and minus as normal plus and minus.
13877
13878 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
13879
13880         * docs/gtkfaq.sgml: FAQ Update
13881
13882 1999-07-25  Tor Lillqvist  <tml@iki.fi>
13883
13884         * README.win32
13885         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
13886         the Wintab SDK.
13887
13888         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
13889         OK, but getting closer. Guard against bogus tilt data from Wacom
13890         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
13891         enable easier building without Wintab.
13892
13893         * gdk/win32/gdkinput.h
13894         * gdk/win32/gdkevents.c 
13895         * gdk/win32/gdkwindow.c: Minor changes related related to above.
13896         
13897         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
13898         code. As we have just one visual on Win32, no sense to have it in a
13899         table, and no need for the hash table.
13900
13901         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
13902         better on white background.
13903
13904 1999-07-21  Tor Lillqvist  <tml@iki.fi>
13905
13906         * README.win32: Update gcc build instructions. Mention gettext is
13907         GPL.
13908
13909         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
13910         supported cursor size with GetSystemMetrics.
13911
13912         * gdk/win32/gdkfont.c
13913         * gtk/gtkfontsel.c: Guard against some font weight and charset
13914         symbols being undefined (in mingw32 headers).
13915
13916         * gdk/win32/makefile.cygwin
13917         * gtk/makefile.cygwin
13918         * gtk/gtkthemes.c: No longer need to have differently named
13919         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
13920
13921 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
13922
13923         * docs/gtkfaq.sgml: Long awaited FAQ update.
13924
13925 1999-07-15  Tor Lillqvist  <tml@iki.fi>
13926
13927         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
13928         it. Obscure bit manipulation needed.
13929
13930         * gdk/win32/gdkevents.c: Logging.
13931         
13932         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
13933         style (file name include compiler name) for theme engines.
13934
13935 1999-07-13  Tor Lillqvist  <tml@iki.fi>
13936
13937         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
13938
13939         * gdk/win32/gdkevents.c: Fix long-standing bug in key
13940         events. The key.string wasn't zero-terminated, still we strdup'ed
13941         it in gdk_event_copy(). Synthesize crossing events for button
13942         events before possible propagation.
13943
13944         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
13945
13946         * gdk/win32/makefile.cygwin
13947         * gtk/makefile.cygwin: Use new DLL naming style for the
13948         GCC-compiled ones.
13949
13950         * gdk/win32/makefile.msc
13951         * gtk/makefile.msc: Cosmetics mostly.
13952
13953         * gtk/gtk.def: Add missing entry points.
13954
13955         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
13956
13957 1999-07-09  Tor Lillqvist  <tml@iki.fi>
13958
13959         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
13960         or height is zero. Don't print a warning if Pie or Arc fails, they
13961         always fail (?) for very narrow ellipses.
13962
13963         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
13964         the part or the destination window corresponding to source area
13965         outside of the source drawable's boundary.
13966
13967         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
13968         anything if less than two points.
13969
13970         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
13971         return NULL. Gtk cut-and-paste inside a single program works
13972         better this way. (It always gets the clipboard contents from
13973         Windows, not from its own copy, which is cleared anyway. I can't
13974         say I fully understand what happens... Emulating the X selection
13975         and property stuff is a bit of a mess.)
13976
13977         * gdk/win32/gdkevents.c
13978         * gdk/win32/gdkproperty.c: A bit more verbose logging.
13979
13980         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
13981         that never got deleted). Revamp gdk_region_shrink.
13982
13983         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
13984         after use.
13985
13986         * gtk/gtk.def: Add some missing entry points.
13987
13988         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
13989         component.
13990
13991 1999-07-04  Tor Lillqvist  <tml@iki.fi>
13992
13993         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
13994         Control-digits specially.
13995
13996 1999-07-03  Tor Lillqvist  <tml@iki.fi>
13997
13998         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
13999
14000 1999-06-28  Tor Lillqvist  <tml@iki.fi>
14001
14002         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
14003         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
14004         finding this.)
14005
14006 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
14007
14008         * gtk+.spec.in: Corrected some typos in files section.
14009         
14010 1999-06-15  Tor Lillqvist  <tml@iki.fi>
14011
14012         * README.win32: Mention using GNU gettext.
14013         * config.h.win32: Enable NLS stuff.
14014         * gtk/makefile.msc: Use GNU gettext.
14015         * gdk/win32/gdkdnd.c: Minor header reorg.
14016         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
14017         cosmetics.
14018         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
14019         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
14020
14021 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
14022
14023         * acinclude.m4
14024         * config.guess
14025         * config.status
14026         * ltconfig
14027         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
14028
14029 1999-05-30  Tor Lillqvist  <tml@iki.fi>
14030
14031         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
14032         SafeAdjustWindowRectEx. Don't override all calls to
14033         AdjustWindowRectEx by it, but use it only in two places: When
14034         creating a new top-level window and when moving a top-level
14035         window.
14036
14037         Use screen coordinate rectangle, not client rectangle, in
14038         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
14039         when we try to place a window so that the decoration (mainly,
14040         title bar) isn't visible.
14041
14042         These changes fix the bug that showed up for instance as the
14043         GIMP's saved top-level windows moving right and down (by an amount
14044         equal to the window decoration) for each session. This bug showed
14045         up also in testgtk's "Saved Position".
14046
14047         gdk_window_resize also redone a bit.
14048
14049 1999-05-25  Tor Lillqvist  <tml@iki.fi>
14050
14051         * gtk/testgtkrc: Add (commented out) Windows-style theme
14052         include line.
14053
14054         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
14055
14056 1999-05-18  Tor Lillqvist  <tml@iki.fi>
14057
14058         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
14059         gdkx.h to a gdk subdirectory, so that applications can include
14060         these with <gdk/*.h> without trouble.
14061
14062         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
14063         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
14064         have their bitmap destroyed.
14065
14066         * gdk/win32/gdk.def: Add gdk_root_parent.
14067
14068 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
14069
14070         * configure.in
14071           gtk-config.in
14072           ltconfig
14073           ltmain.sh     
14074           gtk/Makefile.am: changes to compile nicely (with xlib) 
14075           on BeOS
14076
14077 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
14078
14079         * acinclude.m4
14080         * config.guess
14081         * config.sub
14082         * ltconfig
14083         * ltmain.sh: upgrade to libtool 1.3
14084
14085 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
14086
14087         * gtk/gtkclist.c:
14088         * gtk/gtkctree.c: merges from gtk-1-2
14089
14090 1999-04-25  Tor Lillqvist  <tml@iki.fi>
14091
14092         Support added for building using a GNU toolchain on Win32,
14093         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
14094
14095         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
14096         * config.h.win32: Changes for gcc.
14097         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
14098         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
14099         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
14100         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
14101         Protect shl stuff unavaiilable with mingw32 headers.
14102         * gdk/win32/gdkevents.c: Fix typo.
14103         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
14104         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
14105         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
14106         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
14107         the mingw32 headers.
14108         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
14109         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
14110         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
14111         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
14112         Test for NATIVE_WIN32, not _MSC_VER.
14113         * gtk/gtkmain.c: No use warning about developer version on Win32,
14114         there aren't any non-developer versions anyhow.
14115         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
14116         * gtk/makefile.msc: Use pthread from another directory. Minor other
14117         changes. 
14118
14119 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14120
14121         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14122           default filter from the list
14123
14124 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
14125
14126         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
14127          when gtk_widget_grab_default() is called for a widget that
14128          is not within a GtkWindow.
14129
14130 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
14131
14132         * docs/gtk_tut.sgml, examples/clist.c: use a
14133           scrolled window in the clist example. Minor
14134           tutorial fixes.
14135
14136 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
14137
14138         * docs/gtk_tut.sgml: Style check from David King
14139           <dking@youvegotmail.net>
14140
14141 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
14142
14143         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
14144         compile with unknown value of GDK_WINDOWING
14145
14146 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
14147
14148         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
14149         after the rule is fired.
14150         (install-exec-local): Install gdkconfig.h only if the contents are
14151         different from the currently installed gdkconfig.h.
14152
14153 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
14154
14155         * gdk/Makefile.am (configexecincludedir): Rename from 
14156         configincludedir so that gdkconfig.h will be installed 
14157         as part of `make install-exec'. 
14158
14159 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
14160
14161         * acinclude.m4
14162         * config.guess
14163         * config.sub
14164         * ltconfig
14165         * ltmain.sh: upgrade to libtool 1.2f
14166
14167         * autogen.sh: libtool is not required to autogen gtk+
14168
14169         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
14170         needed)
14171
14172 1999-03-18  Tor Lillqvist  <tml@iki.fi>
14173
14174         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
14175         declaring gdk variables exported/imported from the DLL. New image
14176         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
14177         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
14178         GDK_DRAG_PROTO_OLE2.
14179
14180         * gdk/gdk.h: Merge in Win32 version: Two new functions,
14181         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
14182         declared only for the Win32 version, but could be in the X11
14183         version as well. (Needed for a Xlib-less gdk_imlib.)
14184         gdk_color_hash should have only one parameter. Declare
14185         gdk_threads_mutex with GDKVAR.
14186         
14187         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
14188         just one parameter.
14189
14190         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
14191         per pixel, not bits.
14192
14193         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
14194         Fetch bpp (which means bits-per-pixel here) from another place on
14195         Win32. Accept also depth==32 (which we might get on Win32) with
14196         bpp==32.
14197
14198         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
14199         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
14200         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
14201         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
14202         in the backend-dependent directory, not in the common gdk
14203         directory.
14204
14205         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
14206         headers.
14207
14208 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
14209
14210         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
14211         want to use the Gtk+ devel version (which is true, and yes - even i am
14212         currently working with the 1.2.x branch). so everyone reading this, you
14213         probably want to issue
14214         cvs checkout -r glib-1-2 glib
14215         and
14216         cvs checkout -r gtk-1-2 gtk+
14217         as your next two comands.
14218
14219 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
14220
14221         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
14222         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
14223
14224         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
14225         file. strongly deprecated the GTK_HAVE_* macros, we provide
14226         GTK_CHECK_VERSION() for people that need to check for certain
14227         Gtk+ versions.
14228
14229         * gtk/gtkcompat.h: removed this from CVS.
14230         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
14231         idea right from the start, it just didn't seem like that back then.
14232
14233 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
14234
14235         * merges from gtk-1-2:
14236
14237 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
14238
14239         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
14240         item factory class has been created.
14241         (gtk_item_factory_parse_rc): likewise.
14242
14243         * gtk/gtkmenu.c:
14244         keep proper references for old_active_menu_item.
14245         (gtk_menu_reparent): unset the usize of the new parent,
14246         so the menu can sanely be size requested and we don't get nasty screen
14247         artefacts upon next reparentation.
14248         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
14249         enter notify. only synthesize enter notifies if the pointer really is
14250         inside the event window.
14251         (gtk_menu_popdown): use gtk_menu_shell_deselect().
14252         (gtk_menu_popup): move the background setting stuff into
14253         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
14254
14255         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
14256         gtk_menu_shell_select_item() to select the new item.
14257         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
14258         do the right thing for deselection as well.
14259
14260 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
14261
14262         * gtk/gtkwidget.[hc]:
14263         (gtk_widget_accelerators_locked): return whether a widget's accelerators
14264         are locked.
14265
14266         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
14267         existing accelerators if the widget's accelerators are locked.
14268
14269 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
14270
14271         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
14272
14273         * gtk/gtkmenu.c: truely forward key press and key release events to
14274         the menu widget from the toplevel or tearoff window. we can't simply
14275         connect to that, we need to stop further processing of the events as
14276         well.
14277
14278 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
14279
14280         * gtk/gtkmenu.c:
14281         (gtk_menu_key_press): pass event->keyval, event->state to
14282         gtk_accelerator_valid, instead of event->keyval twice.
14283         refuse to install single letter accelerators for menus that use
14284         single letter shortcuts.
14285
14286         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
14287         gtk_menu_ensure_uline_accel_group().
14288
14289         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
14290         which will always return an uline accel group, made
14291         gtk_menu_get_uline_accel_group() return NULL if the group isn't
14292         yet created.
14293
14294 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
14295
14296         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
14297
14298         * gtk/gtkclist.c (gtk_clist_column_title_passive):
14299         Leave button sensitive, trap  button_press, button_release,
14300         motion_notify, enter_notify and leave_notify events instead.
14301         (gtk_clist_column_title_active): disconnect event handler.
14302         (gtk_clist_drag_data_get): fixed memory leak. Reported by
14303         Guillaume Laurent <glaurent@worldnet.fr>
14304
14305 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
14306
14307         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
14308         width/height mixups.
14309
14310         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
14311         if needed.
14312
14313 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
14314
14315         * gtk/testgtk.c (create_item_factory): unref the item factory after
14316         window's destruction.
14317
14318         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
14319         count on the menu shell around the menu item's activation, since the
14320         signal emission may cause menu shell destruction.
14321
14322         * gtk/gtkitemfactory.c:
14323         the previous code leaked one accel group per menu. we use
14324         gtk_menu_get_uline_accel_group() now to fix that, and with that
14325         also create the underline accelerator group of the menus only if
14326         required (i.e. an underline accelerator has been specified).
14327         (gtk_item_factory_construct):
14328         (gtk_item_factory_create_item): removed code that would create an
14329         extra accel group for the menu (and leak references).
14330         (gtk_item_factory_create_item): adapted the underline accelerator
14331         installation code to properly feature gtk_menu_get_uline_accel_group().
14332
14333         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
14334         menu->accel_group, this may return NULL if the accelerator group
14335         hasn't been set yet.
14336         added gtk_menu_get_uline_accel_group() to retrive the underline
14337         accelerator group of the menu, this will be created on demand
14338         and proper care is taken about its reference count.
14339
14340         * gtk/gtkitemfactory.h:
14341         * gtk/gtkitemfactory.c:
14342         dumped the approach of keeping a widgets by action list on the
14343         factory since the factory<->widget destroy negotiation didn't work
14344         and would be hard to get going at all. instead we keep a list of
14345         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
14346         persistant throughout a program's life time).
14347         also, i removed the static const gchar *key_* variables, and made
14348         them inline strings (they weren't actually used anyways).
14349         (gtk_item_factory_add_item): update ifactory->items.
14350         (gtk_item_factory_destroy): destroy ifactory->items (and remove
14351         the item factory pointer from the remaining ifactory widgets).
14352         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
14353         list to find the widget.
14354         (gtk_item_factory_get_item): new function that works around
14355         gtk_item_factory_get_widget() limitations, this function will only
14356         return menu items, even for <Branch> entries.
14357
14358 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
14359
14360         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
14361         font hash table, if we have a GdkFontPrivate entry for this font
14362         already, simply increment its reference count, provided by Olaf Dietsche
14363         <olaf.dietsche+list.gtk@netcologne.de>.
14364
14365         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
14366         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
14367
14368 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
14369
14370         * gtk/gtkcontainer.c:
14371         (gtk_container_add_with_args):
14372         (gtk_container_addv):
14373         (gtk_container_add): before adding a child to a conatiner, make sure
14374         it is (default) constructed, this is neccessary because under certain
14375         circumstances the child will get relized and mapped immediatedly, in
14376         which case it has to be constructed already.
14377
14378 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
14379
14380         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
14381         values > 1 as TRUE also.
14382
14383 1999-03-16  Tor Lillqvist  <tml@iki.fi>
14384
14385         * README.win32: New file.
14386                 
14387         * configure.in: Check for lstat.
14388
14389         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
14390         completeness.
14391
14392         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
14393
14394         * gtk/gtk.def: Removed CRs.
14395
14396         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
14397         ..\gdk\win32).
14398
14399         * gdk/win32/makefile.msc: Correct upwards relative paths.
14400         
14401 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
14402
14403         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
14404           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
14405           it was connecting a void function to expose_event and the int
14406           returning function to the draw signal
14407
14408 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
14409
14410         * configure.in:
14411         Use correct path to libgmodule.la when ref'ing uninstalled copy
14412         of glib.  (Already in stable branch, Bug #417)
14413
14414 1999-03-15  Tor Lillqvist  <tml@iki.fi>
14415
14416         Win32 merge and general portability stuff:
14417                 
14418         * acconfig.h,configure.in: Check for <sys/time.h>.
14419
14420         * gdk/win32: New directory (actually, been there for a while).
14421         
14422         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
14423         NATIVE_WIN32, and use these. Always case fold on Win32. No
14424         backslashed escapes on native Win32.
14425
14426         * gtk/{gtk.def,makefile.msc}: New files.
14427
14428         * gtk/Makefile.am: Add above new files.
14429         
14430         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
14431         instead of <strings.h>.
14432
14433         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
14434         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
14435         <unistd.h> appropriately.
14436
14437         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
14438         Use ABS() (from <glib.h>) instead of abs().
14439         
14440         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
14441         of gtk (and thus glib) headers, so that WIN32 will be
14442         defined. With MS C, include <direct.h> for mkdir prototype.
14443
14444         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
14445         some casts, needed by MS C.
14446
14447         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
14448         implemented).
14449
14450         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
14451         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
14452         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
14453
14454         * gtk/gtkmain.h: Mark variables for export/import on Win32.
14455                 
14456         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
14457         the event is not a hint, or its window is not the slider. Needed
14458         on Win32, at least.
14459
14460         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
14461         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
14462         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
14463         a subdirectory of the Windows directory as gtk system
14464         configuration directory.
14465
14466         * gtk/gtkselection.c: No chunks on Win32.
14467
14468         * gtk/gtksocket.c: Not implemented on Win32.
14469
14470         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
14471
14472         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
14473
14474         * gtk/maketypes.awk: Declare variables with a macro that expands to
14475         necessary export/import magic in the case of Win32.
14476                 
14477         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
14478
14479 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
14480
14481         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
14482         since those were meant only for gdki18n.h.  
14483         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
14484         for widechar tests.
14485         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
14486
14487 1999-03-13  Tor Lillqvist  <tml@iki.fi>
14488
14489         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
14490         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
14491
14492         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
14493         installed) to CFLAGS.
14494
14495         * gdk/Makefile.am: Add rules for gdkconfig.h.
14496
14497         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
14498         APIs.
14499
14500         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
14501         gdkx.h anyway when compiling for X11.
14502         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
14503         general): Merge in Win32 version.
14504         
14505         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
14506         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
14507         expansion (if we don't have HAVE_PWD_H), allow for drive
14508         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
14509         included code from Craig Setera's port to Win32 (the one that uses
14510         X11, and the cygwin dll), even if it probably will be abandoned.
14511
14512         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
14513         the user entered one herself.  This way one can complete *.h and
14514         don't get matches on any .help files, for instance.
14515         
14516 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
14517
14518         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
14519         font hash table, if we have a GdkFontPrivate entry for this font
14520         already, simply increment its reference count, provided by Olaf Dietsche
14521         <olaf.dietsche+list.gtk@netcologne.de>.
14522
14523         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
14524         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
14525
14526 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
14527
14528         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
14529         the number of calls to gdk_draw_point() (and thus to X) by
14530         clipping the points by hand.
14531
14532         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
14533         the clip parameter.
14534         (gtk_handle_box_paint): Only paint the handle if the expose area
14535         intersects it.
14536
14537 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
14538
14539         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
14540
14541 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
14542
14543         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
14544         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
14545
14546 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
14547
14548         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
14549          textmode (O_TEXT) for OS/2 version.
14550
14551 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
14552
14553         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
14554         GtkSpinButton, "input" and "output", to make the output more flexible.
14555         The user has to provide a mapping between adjustment->value and the
14556         output string (and vice versa, if the spin button is editable). 
14557         See testgtk for examples.
14558
14559 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
14560
14561         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
14562         new one.
14563         
14564         * configure.in: set gtk+ version to 1.3.0.